Move screenColorProfile from Platform to ImageDecoder

Platform is the wrong place for screenColorprofile, where it was
the only method there that did not know its Widget. ImageDecoder
is the only caller currently, move it there.

No change in behavior, covered by existing layout tests.

BUG=369787

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

git-svn-id: svn://svn.chromium.org/blink/trunk@181978 bbb929c8-8fbe-4397-9dbb-9b2b20218538
Oilpan: handle delayed removal of PromiseTracker promises.

When a PromiseTracker is disabled as part of shutting down, it clears
its ID -> vector(PromiseData) map. However, once the unfulfilled
promises in that cleared map later on have their weak callbacks
invoked, we weren't prepared for the map being empty. Add the required
empty map check.

A further twist for Oilpan is that the ScopedPersistents held on the
PromiseData objects need to be cleared out eagerly to prevent v8
assuming that these objects will leak -- they won't, but will only be
cleared at the next Oilpan GC. Be more eager, and promptly clear out
the references.

R=haraken
BUG=414163

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

git-svn-id: svn://svn.chromium.org/blink/trunk@181979 bbb929c8-8fbe-4397-9dbb-9b2b20218538
Create a dummy resource for PluginPlaceholderElement.js.

This prepares for the landing of
  https://codereview.chromium.org/522783002/

which now requires a three-sided change due to changes in how Blink accesses
private script resources.

Part 2: https://codereview.chromium.org/556793006/

BUG=364716

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

git-svn-id: svn://svn.chromium.org/blink/trunk@181980 bbb929c8-8fbe-4397-9dbb-9b2b20218538
bindings: Fixes custom versions of associateWithWrapper.

Fixes MessageEvent and ImageData's associateWithWrapper.  My first code in
http://crrev.com/542113003 assumed that associateWithWrapper was non-virtual
method, but it was changed to be virtual.  So I had to change the implementation
when and how to call associateWithWrapper from wrap (my first code assumed that
wrap calls the same class's associateWithWrapper because it was not virtual, but
since associateWithWrapper was changed to be virtual during the code review, now
wrap calls most derived class's associateWithWrapper).

BUG=413041,235436

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

git-svn-id: svn://svn.chromium.org/blink/trunk@181983 bbb929c8-8fbe-4397-9dbb-9b2b20218538
DevTools: correctly close all async records when there are no subsequent top level records

BUG=405502

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

git-svn-id: svn://svn.chromium.org/blink/trunk@181984 bbb929c8-8fbe-4397-9dbb-9b2b20218538
Use correct HRTF elevation response for negative elevations.

The computed index for negative elevations was off by one. When the
elevation is -45 deg, the selected response corresponded to the entry
for 90 deg, not 315 deg.

To simplify things, we just use a short table to map the index to the
(positive) elevation angle.

No tests for this, but see crbug.com/411191.
BUG=412442

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

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