Disable image filtering in layout test result zoomer

Draw the zoomed-in layout test result images without filtering to make
it easier to see which parts have changed.

Before: https://drive.google.com/file/d/0ByyxMXB38gLDbWhIYnZPNVRDNXc/edit?usp=sharing

After: https://drive.google.com/file/d/0ByyxMXB38gLDaC1aV0VzZUtGZ28/edit?usp=sharing

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

git-svn-id: svn://svn.chromium.org/blink/trunk@167118 bbb929c8-8fbe-4397-9dbb-9b2b20218538
Oilpan: improve comment on why types need to be moved into WebCore.

Clarify why the explicit move of some type names into WebCore is
needed & label it a FIXME.

BUG=
NOTRY=true

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

git-svn-id: svn://svn.chromium.org/blink/trunk@167119 bbb929c8-8fbe-4397-9dbb-9b2b20218538
Optimize RenderTable::colToEffCol() for tables without colspans

colToEffCol() is very hot in tables with collapsed borders and
it is a very expensive function which iterates through every
column in the table up to the current one. But it only needs to
do this when the table's list of columns contains one whose
colspan exceeds the width of the table, as that is the only
situation in which |ColumnStruct| will still have a span.
(See RenderTableSection:addCell() where the span is
redistributed among other columns in the table during a
second pass of the table.)

Create a fast path for colToEffCol() and effColToCol() that
avoids iterating through every column unless the |m_columns|
vector still has a |ColumnStruct| with a span. The slow
path is extremely rare and probably not
worth optimizing for, as it only applies to tables
where a cell has a colspan that exceeds the total number of
columns provided by other rows in the table.

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

git-svn-id: svn://svn.chromium.org/blink/trunk@167120 bbb929c8-8fbe-4397-9dbb-9b2b20218538
Updated ratified extensions to be advertised without the WEBKIT_ prefix

(Take 2. Previous patch here: https://codereview.chromium.org/145093003/)
Extensions can still be queried with WEBKIT_, but getSupportedExtensions
will return the unprefixed version.

TBR=kbr@chromium.org
BUG=340531

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

git-svn-id: svn://svn.chromium.org/blink/trunk@167121 bbb929c8-8fbe-4397-9dbb-9b2b20218538
Cleanup ASSERTS that trigger layout and add FIXME for isEditablePosition

isEditablePosition by default triggers layout. Ideally, the default is
no layout occurs, and the caller requests that behavior only if they
need it. In the meantime, there were 3 asserts that triggered layout
that way, which makes Debug behave differently than release. This
patch fixes that and adds some FIXMEs.

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

git-svn-id: svn://svn.chromium.org/blink/trunk@167122 bbb929c8-8fbe-4397-9dbb-9b2b20218538
Request rebaseline for some fast/forms appearance tests.

BUG=332311
TBR=keishi@chromium.org

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

git-svn-id: svn://svn.chromium.org/blink/trunk@167123 bbb929c8-8fbe-4397-9dbb-9b2b20218538
[CSS Shapes] Dynamically created element with image valued shape-outside doesn't update

Corrected the way shape-outside handles the completion of an image load. Move the shape-outside imageChanged() logic from RenderBlock to RenderBox and call markShapeOutsideDependentsForLayout() instead of parent()->setNeedsLayoutAndPrefWidthsRecalc(). The latter did not deal with descendants of the shape element's siblings correctly and it failed when the shape element was inserted dynamically. The markShapeOutsideDependentsForLayout() method can't be called during layout, so the imageChanged() code checks for that. The only scenario where imageChanged() can be called during layout (that I've discovered so far anyway) is when an SVG Image is rendered  with drawImage(). The Shape::createRasterShape() does, and the corresponding imageChanged() notification can be safely ignored.

BUG=339136

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

git-svn-id: svn://svn.chromium.org/blink/trunk@167124 bbb929c8-8fbe-4397-9dbb-9b2b20218538
Rename number_of_servers to number_of_drivers in webkitpy...Port.start_http_server.

R=scottmg@chromium.org
BUG=30536

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

git-svn-id: svn://svn.chromium.org/blink/trunk@167125 bbb929c8-8fbe-4397-9dbb-9b2b20218538
Make HTMLAllCollection named property getter behave more according to spec

Make HTMLAllCollection named property getter behave more according to spec:
http://www.whatwg.org/specs/web-apps/current-work/multipage/common-dom-interfaces.html#htmlallcollection-0

The following changes were made:
1. namedItem() should be marked as named getter in IDL as per the spec.
   This also means we can get rid of the anonymous named getter in our
   IDL.
2. The named getter should be enumerable as per Web IDL, meaning that
   elements id / names should be enumerated. The supported property names
   are spec'd at:
   http://www.whatwg.org/specs/web-apps/current-work/multipage/common-dom-interfaces.html#htmlallcollection-0
   This change is also consistent with IE11. Mozilla does not seem to
   support enumerating document.all?
3. The named property getter returns more types of elements by name (a, area,
   frame, frameset, iframe). Its still returns select and input elements as
   well, even though this is against spec, for backward compatibility.
   This behavior is consistent with IE11 and Firefox 27.

This CL also gets rid of the custom bindings for namedItem() now that the
bindings generator has better support for returning union types.

R=haraken, arv, tkent
BUG=341269
TEST=fast/dom/htmlallcollection-enumerated-properties.html

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

git-svn-id: svn://svn.chromium.org/blink/trunk@167126 bbb929c8-8fbe-4397-9dbb-9b2b20218538
Clear the safepoint marker only after we left the safepoint.

We should not change any GC related parts of the ThreadState while we are inside the safepoint region because GC can be in progress and it can be accesing them. In this case SafePointBarrier will park the current thread until GC is over. It is safe to mutate ThreadState after we successfully left safepoint as this means that there is no GC in progress.

BUG=342856

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

git-svn-id: svn://svn.chromium.org/blink/trunk@167127 bbb929c8-8fbe-4397-9dbb-9b2b20218538
Move CSSPropertyAnimation.{h,cpp} to core/animation/css

This allows the removal of the confusingly-named core/frame/animation directory.

R=dstockwell@chromium.org
BUG=334225

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

git-svn-id: svn://svn.chromium.org/blink/trunk@167128 bbb929c8-8fbe-4397-9dbb-9b2b20218538
Clean up the webkitpy.layout_tests.servers.apache_http code

... in preparation for implementing the win32 port as well. Part of this
clean up removes some escaping that may have been necessary in cygwin python,
but I don't really have any interest in supporting running the layout
tests in that mode (I'm not even sure if it works given the extensive use
of multiprocessing now).

R=scottmg@chromium.org
BUG=30536

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

git-svn-id: svn://svn.chromium.org/blink/trunk@167129 bbb929c8-8fbe-4397-9dbb-9b2b20218538
Primary FontData of FontFallbackList should have space character

This patch makes FontFallbackList::primaryFontData() skips
SegmentedFontData that does not have space character.
FontFallbackList::primarySimpleFontData() expects primaryFontData has
FontData for space character.

This prevents @font-face with unicode-range outside space character
(for example, overrides only an ampersand) from being downloaded
unnecessarily, and used as primary font.

BUG=247920
TEST=fast/css/font-face-unicode-range-load.html

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

git-svn-id: svn://svn.chromium.org/blink/trunk@167130 bbb929c8-8fbe-4397-9dbb-9b2b20218538
Associate DisableCompositingQueryAsserts instances with bugs

BUG=282720
TBR=esprehn@chromium.org
NOTRY=true

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

git-svn-id: svn://svn.chromium.org/blink/trunk@167131 bbb929c8-8fbe-4397-9dbb-9b2b20218538
Remove flaky crash test expectation

This was broken by the first landing of crrev.com/159403002, which was
reverted. The second iteration has fixed this problem.

BUG=343185

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

git-svn-id: svn://svn.chromium.org/blink/trunk@167132 bbb929c8-8fbe-4397-9dbb-9b2b20218538
Fix supercluster logic.

The cluster stack now owns the Cluster objects; we no longer "pre-create" a Cluster before its root has entered layout.  Instead we connect it to a Supercluster object which holds the set of roots that share its fingerprint, and the common multiplier.

The multiplier for the supercluster is based on the deepest common ancestor of the deepest-block-containing-all-text for all its clusters.

BUG=302005

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

git-svn-id: svn://svn.chromium.org/blink/trunk@167133 bbb929c8-8fbe-4397-9dbb-9b2b20218538
Associate more DisableCompositingQueryAsserts instances with bugs

BUG=282720
TBR=esprehn@chromium.org
NOTRY=true

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

git-svn-id: svn://svn.chromium.org/blink/trunk@167134 bbb929c8-8fbe-4397-9dbb-9b2b20218538
Clean up the webkitpy.layout_tests.servers.pywebsocket implementation.

This removes a lot of functionality that is no longer used or needed.

R=scottmg@chromium.org
BUG=30536

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

git-svn-id: svn://svn.chromium.org/blink/trunk@167135 bbb929c8-8fbe-4397-9dbb-9b2b20218538
Remove useless AdjustViewSizeOrNot enum

Only one of the two possible values was ever used.

R=eseidel@chromium.org

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

git-svn-id: svn://svn.chromium.org/blink/trunk@167136 bbb929c8-8fbe-4397-9dbb-9b2b20218538
Don't schedule a style recalc when clearing out placeholder styles

Previously we would schedule a style recalc when clearing out placeholder
styles. However, we're just going to run the style recalc immediately anyway.

In reality, we should remove placeholder styles entirely, but that's tied up in
some plugin complexity.

R=esprehn@chromium.org
BUG=343564

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

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