Add tests for clipping ASSERT

We disabled clip caching due to bugs, which fixed the asserts in the associated
bug. This CL captures those test cases as LayoutTests so we don't re-introduce
the issue when we enable the clip cache again.

BUG=365474

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

git-svn-id: svn://svn.chromium.org/blink/trunk@172832 bbb929c8-8fbe-4397-9dbb-9b2b20218538
Reland "Recompute overflow after transform changes"

This CL adds a special code path that is very similar to simplifiedLayout.
When the only change on an element is the transform, we can do the minimal
work to recompute the layout overflow without much overhead from layout.

This is done by adding an overflow recalculation phase after style changes,
if a RenderObject doesn't need layout and has moved transformed children,
the special code path will kick in.

BUG=352460

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

git-svn-id: svn://svn.chromium.org/blink/trunk@172833 bbb929c8-8fbe-4397-9dbb-9b2b20218538
Web Animations API: Element.animate should accept a null effect

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

git-svn-id: svn://svn.chromium.org/blink/trunk@172834 bbb929c8-8fbe-4397-9dbb-9b2b20218538
Remove RenderObject::isEmpty()

This method did confusing things, like return false for some RenderObjects
even if they had children. The text autosizer doesn't really need the
special case for RenderListItem or RenderRubyRun and doesn't handle them
differently after this change.

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

git-svn-id: svn://svn.chromium.org/blink/trunk@172835 bbb929c8-8fbe-4397-9dbb-9b2b20218538
[Reland] WebP: Regression test for incremental decoding

Add a test for http://crrev.com/246773006

[Difference from http://crrev.com/255523004: Use hand-created test image].

TBR=tkent@chromium.org 
BUG=364830

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

git-svn-id: svn://svn.chromium.org/blink/trunk@172837 bbb929c8-8fbe-4397-9dbb-9b2b20218538
Avoid n^2 when attaching a <ul> or <ol>

updateListMarkerNumbers() is called during ::attach() which is going from
firstChild -> lastChild, and which calls nextListItem which calls
NodeRenderingTraversal::nextSibling which also walks from firstChild ->
lastChild producing n^2 traversals over the siblings when a new list is
appended.

This patch adds a guard just like in RenderTreeBuilder. It doesn't fix
the case where you append thousands of <li> after the <ul> has already
been displayed, but this is at least a start.

It makes toggling display from none to block on the body on Wikipedia
50% faster, reducing the attach/detach from 140ms to 70ms on my Mac Pro.

In real world tests it reduces the amount of time spent in recalcStyle
on Wikipedia during page load by 6%, making nextListItem fall off the
profile.

I also removed an incorrect comment about enclosingList returning a
ShadowRoot, that's impossible since it uses NodeRenderingTraversal::parent.
It's also not possible for it to be null.

BUG=366985

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

git-svn-id: svn://svn.chromium.org/blink/trunk@172838 bbb929c8-8fbe-4397-9dbb-9b2b20218538
Add win_gpu to the default set of try servers for Blink CLs.

This configuration is successfully handling the experimental load from
the Chromium and Blink commit queues. Expand its testing.

BUG=353864

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

git-svn-id: svn://svn.chromium.org/blink/trunk@172839 bbb929c8-8fbe-4397-9dbb-9b2b20218538
Scroll children should not apply the "comp-scroll" paint phase

This phase was incorrectly being applied to scroll
children and it was interfering with painting.

In particular, RenderLayer::paintLayerContents got
confused with the unexpected phase and did not paint the
negative z-order descendants.

Thank you, Ojan, for the fantastic repro case.

BUG=367277

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

git-svn-id: svn://svn.chromium.org/blink/trunk@172840 bbb929c8-8fbe-4397-9dbb-9b2b20218538
WebVector::initialize{From} should bounds check its size parameter

BUG=366781
R=jschuh@chromium.org

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

git-svn-id: svn://svn.chromium.org/blink/trunk@172843 bbb929c8-8fbe-4397-9dbb-9b2b20218538
Web Animations: Update outdated players as part of the render tree update

In Web Animations, updates to the animation model are live[1] and should be
visible immediately to queries. In Blink, updating of the model is deferred
until necessary. Previously there were hooks in getComputedStyle and following
animation frame callbacks[2]. However these were not sufficient to cover all
forms of effect queries, eg. synchronous layouts. This patch ensures that
animation timing is always brought up to date as part of the render tree
update. This has the additional benefit that the timing update following
animation frame callbacks can be deferred.

[1] http://dev.w3.org/fxtf/web-animations/#script-execution-and-live-updates-to-the-model
[2] https://src.chromium.org/viewvc/blink?view=rev&revision=170169

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

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