Fix TranslateTransformOperation::dependsOnBoxSize for calc values

This patch fixes TranslateTransformOperation to say it depends on the
box size when it has a calculated component. Note that we don't check
the z component since this is always just a Fixed Length.

TBR=steveblock
BUG=328889

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

git-svn-id: svn://svn.chromium.org/blink/trunk@164048 bbb929c8-8fbe-4397-9dbb-9b2b20218538
Fix for an issue while breaking out of an empty list item in case of nested lists

In case of nested lists, if we break out of the inner list in such a way that
it is split into two inner lists, then break out of the first inner list
(which lands us in outer list) and then try to break out of the outer list,
it fails. Currently, in such scenario we cannot break out of the outer list.

This is caused by appendedSublist() called from enclosingEmptyListItem().
In appendedSublist() we check if the next sibling of the list item(of outer list)
from which we are trying to break out is a list(second inner list), in this case
we will not consider this list item as an empty one. Thus, we cannot break out.

Extending the check in appendedSublist() so as to additionally check if the
list which is the next sibling of list item from which we are trying to break out
is not a descendant of the outer list(to which list item belongs), fixes the issue.
i.e. Change the following check in appendedSubList()
if (isListElement(n))
    return toHTMLElement(n);
            to
if (isListElement(n) && !n->isDescendantOf(enclosingList(listItem)))
    return toHTMLElement(n);

But further analysis seemed to show that the check
if (embeddedSublist(listChildNode) || appendedSublist(listChildNode))
        return 0;

which we do in enclosingEmptyListItem() is not needed. Because in the cases
where the list item from which we are trying to break out has an embeddedSublist
or appendedSublist we would still want to break out of the list. Getting rid of
this check and hence these functions(which are not used anywhere else),
fixes the issue.


BUG=328037
TEST=LayoutTests/editing/inserting/break-out-of-nested-lists.html

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

git-svn-id: svn://svn.chromium.org/blink/trunk@164049 bbb929c8-8fbe-4397-9dbb-9b2b20218538
This patch adds the scaffolding needed for the fasttextautosizer
multiplier calculation. This brings us much closer to good
autosizing behavior: now passing 32 of the existing autosizer tests!

An important part of this patch is adding FTA::prepareForLayout().
This hooks in at FrameView::performPreLayoutTasks and handles
invalidation logic for the clusters (i.e., if the window size
changed or any of the cluster's blocks change, the cluster gets
a recalc).

The "cluster recalc" logic re-computes a cluster's root
and multiplier. This is mostly straightforward but there is a tricky
loop for calculating the lowest common ancestor of the blocks of
a cluster. This will be refactored into a proper Cluster class in
a future patch.

The multiplier calculation itself follows from the existing
TextAutosizer.cpp implementation.

TBR=pdr@chromium.org
BUG=302005

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

git-svn-id: svn://svn.chromium.org/blink/trunk@164050 bbb929c8-8fbe-4397-9dbb-9b2b20218538
Fix an uninitialized memory read of m_hasMediaQueries.

BUG=327672

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

git-svn-id: svn://svn.chromium.org/blink/trunk@164051 bbb929c8-8fbe-4397-9dbb-9b2b20218538
Repaint after layout in the Table code.

Various parts of the RenderTable* code are issuing paints during layout. This CL
wraps those calls so they don't happen when repaintAfterLayout is enabled.

BUG=310398

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

git-svn-id: svn://svn.chromium.org/blink/trunk@164052 bbb929c8-8fbe-4397-9dbb-9b2b20218538
CSS Animations: Compare values for -webkit-clip-path correctly

Values of this property were being compared using pointer equality, which
meant that transitions could be started despite values being otherwise
identical.

BUG=322178

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

git-svn-id: svn://svn.chromium.org/blink/trunk@164053 bbb929c8-8fbe-4397-9dbb-9b2b20218538
IDL compiler: [InitializedByEventConstructor] nullable interface types

There is a bug in the Perl CG, where it calls an attribute getter
and stores the value in |jsValue|, but then fails to use this value
and instead calls the attribute getter *again*.
This turned up because Python doesn't do this.

One-line Perl fix: use the variable instead of the getter once you've stored it.

This affects 2 types of attributes:
nullable interface [InitializedByEventConstructor]
nullable interface [RaisesException|RaisesException=Getter]

The resulting files change:
V8IDBRequest.cpp
V8MediaKeyEvent.cpp
V8MediaStreamEvent.cpp
V8RTCPeerConnection.cpp
V8SourceBuffer.cpp
V8StorageEvent.cpp
V8WebKitSourceBuffer.cpp
V8Window.cpp

BUG=239771
R=haraken

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

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