Length MQs invalidate non zero numbers

According to the specification, certain media queries accept a CSS length as their value (e.g. http://www.w3.org/TR/css3-mediaqueries/#width).
A CSS length (http://www.w3.org/TR/css3-values/#lengths) must have a known unit, unless the value is zero.
This was not properly represented in the MediaQueryExp code, where any number was accepted.
So such media queries (e.g. "(max-width: 1)") were considered valid, but evaluated to false.
This CL fixes that, making such MQs invalid.

BUG=

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

git-svn-id: svn://svn.chromium.org/blink/trunk@168606 bbb929c8-8fbe-4397-9dbb-9b2b20218538
Oilpan: move Touch related objects to the oilpan heap.

In order to do so, make the IDL compiler able to emit code that uses
heap vectors if the types involved are of the garbage collected kind.
(For the most part done by adopting the changes from
 https://codereview.chromium.org/173363002 )

R=
BUG=340522

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

git-svn-id: svn://svn.chromium.org/blink/trunk@168607 bbb929c8-8fbe-4397-9dbb-9b2b20218538
DevTools: Do not save split view size on show mode changes.

BUG=348887
R=dgozman

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

git-svn-id: svn://svn.chromium.org/blink/trunk@168608 bbb929c8-8fbe-4397-9dbb-9b2b20218538
DevTools: Fix live-edit.html test.

The failure happened because live-edit-no-reveal.html live edited the same script and this somehow
interfered with live-edit.html execution.

BUG=282082
TBR=pfeldman

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

git-svn-id: svn://svn.chromium.org/blink/trunk@168609 bbb929c8-8fbe-4397-9dbb-9b2b20218538
Clean up compute_interfaces_info.py

This is the compute_interfaces_info.py side of the post-split cleanup.
This finishes the build factoring.
(Still need to add more caching for speed and some more use
of Jinja for clarity, but mostly done with build.)

Two notable changes:
* We only need to store *inherited* extended attributes, not all extended
　attributes (in auxiliary variable; needed more for event interfaces, gone now).
　This simplifies the inheritance resolution, and reduces duplication.

* Always include the same keys in the info dict, even if the value is empty.
　This simplifies both setting (since no test) and use:
　instead of having "if key in dict and dict[key]..."
　we can just have "if dict[key]".
　It also helps consistency, since we were doing it 2 ways before.

BUG=341748
R=haraken

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

git-svn-id: svn://svn.chromium.org/blink/trunk@168610 bbb929c8-8fbe-4397-9dbb-9b2b20218538
Pre-cache PLY yacc parse table and use optimized mode (45% build time improvement)

PLY yacc parse table creation is (obviously) expensive.
Pre-caching this in a separate build step substantially improves build time.

Improves build time (user time) by 45% on my Linux box:
1m 50s => 59s

BUG=341748
R=haraken

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

git-svn-id: svn://svn.chromium.org/blink/trunk@168611 bbb929c8-8fbe-4397-9dbb-9b2b20218538
Oilpan: Delay frameDetached() so it won't dispatch event inside ~SVGImage

This CL moves frameDetached() call outside of ~SVGImage. Oilpan disallows any heap-allocated object creation inside destructors. SVGImageChromeClient and Page to be deleted are queued to DelayedSVGImageDestructor singleton, and oneshot timer is invoked to call |frameDetached| outside of destructor scope.

TESTS=svg/ (w/ enable_oilpan=1)
BUG=None
NOTRY=true

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

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