Clean-up the web-inspector autocompletion file

CSSMetadata.js should really be auto-generated as it is getting
stale super fast as we rename, remove and hack on the CSS engine.

This change started a grid patch but ended up cleaning flex and
'hyphens' usage too.

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

git-svn-id: svn://svn.chromium.org/blink/trunk@158032 bbb929c8-8fbe-4397-9dbb-9b2b20218538
Revamp of CanvasRenderingContext2D draw methods to use computed draw bounds for early exit

Before this change, draw bounds were being computed in draw functions of
CanvasRenderingContext2D for the purpose of tracking invalidation
regions. With this change, the bounds are also used to skip draws that
do not intersect the current clip bounds.  This is somewhat redundant
with the quickReject mechanism that already exists in SkCanvas, except
that it allows for the draw to be terminated earlier in the execution
flow. The overhead that is avoided includes: constructing transient
objects (SkPaint, skia shaders, temporary bitmap copies, etc.),
resolving fonts, decoding images, superfluous compositor layer
invalidations, GraphicsContext state churn, etc.

A simple strokeRect call that is out of bounds will run 3x faster with
this change.  The overhead of performing the bounds check has no
measurable impact on the rendering performance of draws that are not
rejected.

A positive side-effect of this change is that CRC2D now uses the current
clip instead of the entire canvas for bounding invalidation regions,
resulting in more accurate rendering invalidations in many cases.

BUG=275460
TEST=canvas layout tests, tough_canvas_cases telemetry tests, gpu throughput tests
R=jamesr

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

git-svn-id: svn://svn.chromium.org/blink/trunk@158033 bbb929c8-8fbe-4397-9dbb-9b2b20218538
Rebaseline svg/dom/SVGStringList-basics.xhtml

The windows expectation ended up in the xp directory instead of the general
win directory.

TBR=
BUG=

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

git-svn-id: svn://svn.chromium.org/blink/trunk@158034 bbb929c8-8fbe-4397-9dbb-9b2b20218538
Revert 157813 "Fix memory leak in platfrom calc"

Caused several use-after-frees on ClusterFuzz.

> Fix memory leak in platfrom calc
> 
> Platfrom calcs were not being properly deref'd and were never freed
> after being used in a Length object.
> This patch corrects the deref behaviour and avoids the memory leak.
> 
> BUG=291498
> 
> Review URL: https://chromiumcodereview.appspot.com/23967013

TBR=alancutter@chromium.org

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

git-svn-id: svn://svn.chromium.org/blink/trunk@158035 bbb929c8-8fbe-4397-9dbb-9b2b20218538
Fix W3C Test Import script reformatting test HTML

Completely rewrite the test conversion process to minimize reformatting
when adding prefixes, etc. This isn't 100% perfect, there are still
places where it will end up changing the formatting, but it is much
better than before. Most notably, the public interface to the test
converter has changed: now one calls a method instead of creating an
instance of the test converter class. This is because the test converter
class now has state, so one really needs a new instance for each test.

Note that this also lays some simple groundwork for being able to use a
MockHost in the tests.

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

git-svn-id: svn://svn.chromium.org/blink/trunk@158036 bbb929c8-8fbe-4397-9dbb-9b2b20218538
Move FontSelector to StyleEngine.

FontSelector is effectively a font cache for the style engine. Move it where it belongs.

As a side benefit, the lifetime relationships between Document and CSSFontSelector are
somewhat simplified.

BUG=291287
R=abarth, eae, eseidel

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

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