Merge GradientSkia into Gradient

This patch merges GradientSkia.cpp into Gradient now that the platform
graphics abstraction is no longer necessary. This is primarily a
code move with the following exceptions:
1) platformInit() has been removed. The associated code now exists
   in the Gradient constructor.
2) platformDestroy() has been renamed destroyShader().
3) platformGradient() has been renamed "shader" and the callsite
   in PlatformContextSkia has been updated.
4) OVERRIDEs have been added to fill and adjustParametersForTiledDrawing
   so future readers of this code will not be confused as I was.
5) A few style issues have been cleaned up.

BUG=

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

git-svn-id: svn://svn.chromium.org/blink/trunk@148388 bbb929c8-8fbe-4397-9dbb-9b2b20218538
Fix multiple problems with FEComposite in accelerated reference filters.  Allocate backing store via proxy, not via allocPixels().  Make background fall back to previous filter output (src) if unspecified.  Make "out" mean SrcOut compositing mode, not DstOut.  Swap foreground and background in construction of CompositeImageFilter.

Modify the layout tests to cover these cases.

BUG=231489

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

git-svn-id: svn://svn.chromium.org/blink/trunk@148389 bbb929c8-8fbe-4397-9dbb-9b2b20218538
Allow threaded scrolling for image documents

There is no reason why images can't be scrolled in compositor thread.
The restriction was first added by Apple in:
https://bugs.webkit.org/show_bug.cgi?id=84754
Chromium compositor isn't affected by such performance issue.

R=jamesr@chromium.org
BUG=224379

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

git-svn-id: svn://svn.chromium.org/blink/trunk@148391 bbb929c8-8fbe-4397-9dbb-9b2b20218538
Trivial comment change to test Blink commit

BUG=none
TBR=crogers@google.com

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

git-svn-id: svn://svn.chromium.org/blink/trunk@148392 bbb929c8-8fbe-4397-9dbb-9b2b20218538
Switch V8GCController.cpp Vector iterations to be pointer based.

Previously, iterators were operator[]-based, which became more expensive after
http://src.chromium.org/viewvc/blink?view=revision&revision=147827.
For straight iterations across the whole container, it's simpler code to
grab the begin and end pointers and then not call any methods on the Vector
again in the loop.

I've not been able to measure any significant impact on my Linux workstation,
but there's an interesting open Mac performance bug with
https://code.google.com/p/chromium/issues/detail?id=229815, regarding the
CloneNodes test. I noticed that this test causes us to enter V8GCController.cpp
and execute tight 30,000 iteration loops across Vectors. This patch seems like
a reasonable first exploration.

I also had this patch as part of an earlier WebKit invetigation where I noted
+1% across Dromaeo, but it's not clear if this piece was responsible.

R=haraken@chromium.org
BUG=229815

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

git-svn-id: svn://svn.chromium.org/blink/trunk@148393 bbb929c8-8fbe-4397-9dbb-9b2b20218538
Remove HTMLInputElement::isTextFormControlFocusable.

It is used by InputTypes to call
HTMLTextFormControlElement::isFocusable. However HTMLInputElement doesn't
override isFocusable, and we don't have any reason to call isFocusable of the
parent class of HTMLInputElement. InputTypes can call
HTMLInputElement::isFocusable directly.

BUG=none

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

git-svn-id: svn://svn.chromium.org/blink/trunk@148394 bbb929c8-8fbe-4397-9dbb-9b2b20218538
ScrollingCoordinator will only coordinate a subframe if
settings->compositedScrollingForFramesEnabled() is true.
If we attach a coordinated scrollbar regardless, the scrollbar won't get
the correct scrolling parameters in the compositor.
This patch adds the check to avoid attaching scrollbars in such case.

This patch does the minimal impact to fix known bugs with composited
subframe scrollbars for M27. Big refactoring patch coming later.

WARNING: This patch changes scrollbar layer parameters and will cause
text diff in layout tests. Should be merged to M27 and reverted on trunk.

R=
BUG=226990

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

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