Move various svg properties out of StyleBuilder::oldApplyProperty

Continue moving the property handlers to the generated system. This
patch moves the svg properties that use any of the Number, SVGLength,
PercentageOrNumber and FragmentIdentifier converters across. This also
changes the checks in the previous CSSValue converters to asserts,
since we in general assume the parser only allows valid values through.

BUG=237400

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

git-svn-id: svn://svn.chromium.org/blink/trunk@161487 bbb929c8-8fbe-4397-9dbb-9b2b20218538
Rewrite Text node attaching to not be N^2

Previously Text node creation used String::append which was N^2.
Now instead we use StringBuilder, batch up all the text from
the network and then split it into Text nodes if necessary
all at once.

This should be a perf win for pages with large text nodes
and slow networks.

BUG=301981

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

git-svn-id: svn://svn.chromium.org/blink/trunk@161488 bbb929c8-8fbe-4397-9dbb-9b2b20218538
Don't clear computedStyle inside resetStyleState

Everywhere we call resetStyleState() we call clearComputedStyle() so we
don't need to clear it inside resetStyleState().

R=ojan@chromium.org,eseidel@chromium.org

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

git-svn-id: svn://svn.chromium.org/blink/trunk@161489 bbb929c8-8fbe-4397-9dbb-9b2b20218538
Rename region line offset methods

Because of the large number of overloads on the line offset methods,
it is very hard to read code using them, which also makes it harder to
move them out of RenderBlock. This patch renames the methods that take
a region as an argument to make it clearer when looking at the code
how they differ from the ones that don't.

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

git-svn-id: svn://svn.chromium.org/blink/trunk@161490 bbb929c8-8fbe-4397-9dbb-9b2b20218538
mac: Prepare for -Wunused-functions.

Mostly involves deleting unused code.

BUG=315884

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

git-svn-id: svn://svn.chromium.org/blink/trunk@161491 bbb929c8-8fbe-4397-9dbb-9b2b20218538
IDL compiler: [ImplementedAs] for methods

BUG=239771
NOTRY=true

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

git-svn-id: svn://svn.chromium.org/blink/trunk@161492 bbb929c8-8fbe-4397-9dbb-9b2b20218538
Move finishJSTest to fire at onload.

This fixes a bunch of cases of having TEST COMPLETE get printed
after shouldBe lines.

-Make the compositing/gestures/gesture-tapHighlight reftests
not needlessly import js-test.js.
-Fix some webgl tests to set jsTestIsAsync.
-Change successfullyParsed to always be a boolean instead of undefined.
-Some tests never fire an onload event, so they now don't print TEST COMPLETE.

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

git-svn-id: svn://svn.chromium.org/blink/trunk@161493 bbb929c8-8fbe-4397-9dbb-9b2b20218538
Don't check all animation/transition properties when comparing RenderStyles

Changes to the timing function, iteration count, delay, duration, direction
and fill mode properties of an animation or transition should never cause an
animation or transition to start. Similarly, when an animation or transition
runs, the values it uses for these properties are snapshotted at the start
of the animation or transition, so it should be unresponsive to changes to
these properties.

This means that we don't need to compare these properties when comparing
RenderStyle objects for the purposes of initiating style recalc.

This patch removes the comparison of these properties from
CSSAnimationData::animationsMatch() and renames the method to
CSSAnimationData::animationsMatchForStyleRecalc(). The only properties that are
still compared are the name, play state, property name and mode, and the isNone
flag. The only (eventual) users of
CSSAnimationData::animationsMatchForStyleRecalc() are
Element::pseudoStyleCacheIsInvalid() and RenderStyle::compare().

This allows TimingFunction::operator==() to be removed.

This patch adds LayoutTests to confirm that changes to the timing properties do
not trigger animations or transitions, or cause them to be updated when already
running. Note that these tests don't directly prove that the timing properties
are not considered when comparing RenderStyles for style recalc, as additional
logic should exist to ignore changes to these properties, even if style recalc
is triggered independently. As a result, both tests pass with the Web
Animations engine, even without this change.

This patch also fixes LayoutTest css3/filters/composited-during-animation.html,
which currently relies on changes to the timing function and duration to start
the animation.

R=shans

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

git-svn-id: svn://svn.chromium.org/blink/trunk@161494 bbb929c8-8fbe-4397-9dbb-9b2b20218538
Add some media layout tests to SmokeTests.

BUG=315949
TEST=These tests pass on Nexus 7 v2 and are pretty fast.

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

git-svn-id: svn://svn.chromium.org/blink/trunk@161495 bbb929c8-8fbe-4397-9dbb-9b2b20218538
Fix indentation and formatting for [DoNotCheckSecurity] in code_generator_v8.pm

* Fix confusingly incorrect indentation
* Replace long sequence of appends with heredoc

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

git-svn-id: svn://svn.chromium.org/blink/trunk@161496 bbb929c8-8fbe-4397-9dbb-9b2b20218538
Move generatesLineBoxesForInlineChild to RenderBlockFlow

Line boxes should never be handled by the more generic RenderBlock,
but always by RenderBlockFlows. Pulling this functionality down,
which also uncovered some simplification/type tightening in
RenderListItem.

BUG=302024

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

git-svn-id: svn://svn.chromium.org/blink/trunk@161497 bbb929c8-8fbe-4397-9dbb-9b2b20218538
Get rid of custom constructor for FormData

Get rid of custom constructor for FormData and let the generator produces its
code instead. There does not appear to be any difference between the custom
code and the generated one.

R=haraken
TEST=http/tests/local/formdata

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

git-svn-id: svn://svn.chromium.org/blink/trunk@161498 bbb929c8-8fbe-4397-9dbb-9b2b20218538
Focus changes should be use affectedBy optimization

Previously any time you hide/showed your Chrome window
we would recalcStyle on the entire document (<body> and below).

Similarly whenever you clicked on anything in Chrome
we would recalc style of the entire body (unless the caret
was already somewhere else).  For applications which don't
normally take focus, this meant a zillion extra full-document
style recalcs.

This was especially bad for applications with animation triggered
from click, as those animations would first cause a full document
style recalc before their animation could start.

I don't believe we have any way to count style recalcs in a test
so there is no good way to test this yet.  I could write a
performance microbenchmark, but that would be more like a
regression test since it just tests for the presence of this
optimization.

BUG=315923

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

git-svn-id: svn://svn.chromium.org/blink/trunk@161499 bbb929c8-8fbe-4397-9dbb-9b2b20218538
Build fix for Android

Sometimes _POSIX_THREAD_KEYS_MAX will already be defined

TBR=cevans@chromium.org
BUG=

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

git-svn-id: svn://svn.chromium.org/blink/trunk@161500 bbb929c8-8fbe-4397-9dbb-9b2b20218538
Rename WebKit namespace to blink

This code slipped into the tree during the renaming process.

TBR=eseidel@chromium.org
BUG=295096

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

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

BUG=307721

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

git-svn-id: svn://svn.chromium.org/blink/trunk@161502 bbb929c8-8fbe-4397-9dbb-9b2b20218538
CSS Animations/Transitions: Step immediately when blending lengths that can't be smoothly interpolated

The existing transition engine incorrectly starts transitions between values
that can't be smoothly interpolated. After r159314 this meant that
interpolating a length eg. from '0px' to 'auto' would produce '0px' at the
beginning of the animation. This caused regressions when authors attempted to
read back the computed style immediately.

Modifing the existing transition engine to not start transitions in this case
is non-trivial, so this change modifies blending such that when interpolating
with an undefined, intrinsic or auto value we step immediately. After the
web-animations engine is enabled such transitions will not be started and we
can modify this logic to step at 50%.

BUG=313649

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

git-svn-id: svn://svn.chromium.org/blink/trunk@161503 bbb929c8-8fbe-4397-9dbb-9b2b20218538
Rename one last WebKit -> blink namespace

My Python scripts missed this mention because it's in a script.

R=eseidel@chromium.org
BUG=295096

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

git-svn-id: svn://svn.chromium.org/blink/trunk@161505 bbb929c8-8fbe-4397-9dbb-9b2b20218538
IDL compiler: [NotEnumerable] for methods

BUG=239771
NOTRY=true

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

git-svn-id: svn://svn.chromium.org/blink/trunk@161506 bbb929c8-8fbe-4397-9dbb-9b2b20218538
Remove core/css from core/platform/DEPS

Also, add "mozilla" to the platform/DEPS to make CheckedInt.h happy.

R=schenney@chromium.org

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

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