Revert 149899 "This change exposes Skia's implementations of Pat..."

> This change exposes Skia's implementations of Path::length(), Path::pointAtLength(),
> and Path::normalAngleAtLength() which results in a significant performance improvement.
> 
> This patch is primarily straightforward though the contour concept differs from Blink:
> Skia's concept of subpaths are 'contours' so this patch uses while loops to iterate
> over each contour. With this change, Path::pathLengthApplierFunction can be removed.
> 
> After this patch PerformanceTests/SVG/SvgCubics.html is 33% faster:
>     Before patch: 26.69ms
>     After patch: 17.62ms
> 
> All text-on-path scenarios should see a similar performance win.
> 
> B=227397
> R=schenney@chromium.org
> 
> Committed: https://src.chromium.org/viewvc/blink?view=rev&revision=149689
> 
> Review URL: https://codereview.chromium.org/14621003

TBR=pdr@chromium.org

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

git-svn-id: svn://svn.chromium.org/blink/trunk@149902 bbb929c8-8fbe-4397-9dbb-9b2b20218538
Delete tests for snapshotted plugins.

We've already deleted the C++ code for this.
Also make a few other minor cleanups to TestExpectations.

Review URL: https://chromiumcodereview.appspot.com/14942007

git-svn-id: svn://svn.chromium.org/blink/trunk@149903 bbb929c8-8fbe-4397-9dbb-9b2b20218538
RefPtr several Frame* iterations

BUG=178264
TEST=N/A

Review URL: https://chromiumcodereview.appspot.com/14735007

git-svn-id: svn://svn.chromium.org/blink/trunk@149904 bbb929c8-8fbe-4397-9dbb-9b2b20218538
Remove dead code in DragClient/EditorClient

Many methods of DragClient and EditorClient have stub
implementations in Blink. Any code calling these stubs
has either been deleted in this change (if it had no effect)
or simplified (if, e.g., the method always returned true).

EditorClientImpl was especially messy, so I've added OVERRIDE
to all its methods to try to keep it from getting messier.

R=esprehn

Review URL: https://chromiumcodereview.appspot.com/14993004

git-svn-id: svn://svn.chromium.org/blink/trunk@149905 bbb929c8-8fbe-4397-9dbb-9b2b20218538
Use OwnPtr instead of deleteAllValues in SVGResourcesCache (Patch by darin@apple.com)

This patch is originally from wkbug.com/115729

BUG=238679

Review URL: https://chromiumcodereview.appspot.com/14935009

git-svn-id: svn://svn.chromium.org/blink/trunk@149906 bbb929c8-8fbe-4397-9dbb-9b2b20218538
Blink gardening: mark a bunch of hidpi tests as timeout on win7 debug

BUG=238858
TEST=
TBR=thakis

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

git-svn-id: svn://svn.chromium.org/blink/trunk@149907 bbb929c8-8fbe-4397-9dbb-9b2b20218538
Fix button baseline calculations for Mac with dynamic changes
    
Also convert a button test to a reftest and add a new button test.
    
The new test is to test baselines, which is useful because in the past I
have relied on button-generated-content to verify baseline behavior.
    
The conversion to a reftest is what found the bug that I fixed in
RenderButton.cpp -- the button would otherwise be positioned wrong
after the dynamic changes.
    
R=ojan@chromium.org
BUG=

Review URL: https://chromiumcodereview.appspot.com/14717002

git-svn-id: svn://svn.chromium.org/blink/trunk@149908 bbb929c8-8fbe-4397-9dbb-9b2b20218538
Move PlatformContextSkia into GraphicsContext and delete

This change moves all of the remaining functionality from PlatformContextSkia to
GraphicsContext, and modifies calling code appropriately. PlatformContextSkia
is removed.

Do not consider this patch to be the final word.

The inlining or non-inlining of several single line methods is arbitrary,
or affected by the way that state enums are defined and the classes/structs
for holding state are declared (PlatformContextSkiaState needs enums
currently in GraphicsContext, so cannot be included in GraphicsContext,
which forces some get/set methods into the cpp file).

There are also methods that directly access the canvas that could be
moved around and rationalized. And the code for maintaining the state
stacks is messy and duplicated (see crbug.com/235470). There also
remain opportunities to change or streamline method argument types.
Finally, there is a lack of clarity on the paintingEnabled/Disabled
behavior (crbug.com/238003).

And almost all of GraphicsContext.h is indented one tab too far right.
Now is a good time to fix that.

Longer term it would also be excellent if we could prevent any code from
accessing the canvas or bitmap directly, the way that various WebKit layers
now do.

R=jamesr@chromium.org, pdr@chromium.org
BUG=235465

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

git-svn-id: svn://svn.chromium.org/blink/trunk@149909 bbb929c8-8fbe-4397-9dbb-9b2b20218538
Fix rebaselining a directory with a reftest in it.

The bug was in the early return. Should have been a continue.
Also, move the code for handling directory rebaselines up into
AbstractParallelRebaselineCommand so that it can be done in parallel.

Needed to write the files in the unittests because now 
AbstractParallelRebaselineCommand will only try to rebaseline
tests that actually exist.

Review URL: https://chromiumcodereview.appspot.com/15017008

git-svn-id: svn://svn.chromium.org/blink/trunk@149910 bbb929c8-8fbe-4397-9dbb-9b2b20218538
Move unit tests for core classes next to the code under test

This moves the unit tests for Decimal, ClipboardChromium, AnimationTranslationUtil and DateTimeFormat
to live next to the source file under test.  These still compile in to webkit_unit_tests.

BUG=238450

Review URL: https://chromiumcodereview.appspot.com/14742003

git-svn-id: svn://svn.chromium.org/blink/trunk@149911 bbb929c8-8fbe-4397-9dbb-9b2b20218538
Percentage widths adds up to more than 100%.

Due to rounding float and inline blocks sized in percentages can add up
to just over 100% and thus overflow or cause wrapping.
Regression from r149449.

R=leviw@chromium.org
BUG=237751
TEST=LayoutTests/fast/sub-pixel/float-percentage-widths.html

Review URL: https://chromiumcodereview.appspot.com/15026009

git-svn-id: svn://svn.chromium.org/blink/trunk@149912 bbb929c8-8fbe-4397-9dbb-9b2b20218538
addTextTrack must set text track client

Users of WebInbandTextTrack objects query it for its client object,
which implements the interface (WebInbandTextTrackClient) containing
the addWebVTTCue method.

The addTextTrack method creates a client object
(InbandTExtTrackPrivateImpl, which inherits from
WebInbandTextTrackClient), and binds the client object to the text
track object (in the client's contructor).

However, the addTextTrack method must also bind the text track object
to the client object (using the text track's setClient method).  It
was not doing this, with the result that when users of the text track
queried it for its client, they would receive a NULL pointer, which
prevented them from adding cues to the text track.

BUG=230708
TEST=None. No user visible functionality has changed.

Review URL: https://chromiumcodereview.appspot.com/15004010

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