[ServiceWorker] Support creating a new Response object with a string.

BUG=373120

Review URL: https://codereview.chromium.org/396183002

git-svn-id: svn://svn.chromium.org/blink/trunk@178751 bbb929c8-8fbe-4397-9dbb-9b2b20218538
Handle JS-created files in <input type="file">.

The first associated bug shows a (contorted) series of steps which can
result in a non-user-selected file (created using the Filesystem API)
ending up in a file input element's FileList. The second associated bug
follows the pattern shown by the first bug's reporter, but uses a file
created by the File constructor. This causes a renderer crash.

Also, one day we might have a direct way to set an input's FileList, and
it should handle files created by JavaScript (specifically, by the the
Filesystem API and by the File constructor).

This change adds a flag to File objects that distinguishes between files
that come from a location visible to the user, and files that were
created programatically and are not on user-visible filesystems. The
latter category of files should not be browsed to when used to populate
an <input>.

The flag is used to fix the name displayed by a file upload input
element on Mac.

BUG=360308,367334

Review URL: https://codereview.chromium.org/235373005

git-svn-id: svn://svn.chromium.org/blink/trunk@178752 bbb929c8-8fbe-4397-9dbb-9b2b20218538
Web Animations: Simplify keyframe input handling.

(1) Throw exceptions rather than failing silently for out-of-range offsets.
(2) Always throw exceptions for unsorted offsets, rather than only when
    null offsets are present.
(3) Remove duplicate (and silently-failing) error detection from
    KeyframeEffectModel.

See https://web-animations.etherpad.mozilla.org/ep/pad/view/ro.92487irtSfEow/rev.20441 for minutes where we decided to make this change.

Review URL: https://codereview.chromium.org/407393002

git-svn-id: svn://svn.chromium.org/blink/trunk@178753 bbb929c8-8fbe-4397-9dbb-9b2b20218538