2011-06-04  Laszlo Gombos  <laszlo.1.gombos@nokia.com>

        Reviewed by Andreas Kling.

        [Qt] Enable passing File API tests
        https://bugs.webkit.org/show_bug.cgi?id=62020

        File API has been enabled for QtWebKit in r74115,
        let's also enable the passing related tests.

        * platform/qt/Skipped:

2011-06-04  Alexey Proskuryakov  <ap@apple.com>

        Reviewed by Darin Adler.

        Input value sanitization for text fields is incorrect
        https://bugs.webkit.org/show_bug.cgi?id=62061
        <rdar://problem/9553273>

        * fast/forms/input-value-sanitization-expected.txt:
        * fast/forms/input-value-sanitization.html:
        * fast/forms/paste-multiline-text-input.html:
        * fast/forms/script-tests/input-value-sanitization.js: Removed.

2011-06-04  Jeffrey Pfau  <jpfau@apple.com>

        Reviewed by Beth Dakin.

        Crash in WebCore::RenderMathMLSubSup::baselinePosition()
        https://bugs.webkit.org/show_bug.cgi?id=57897

        Added simple test that hits the relevant code.

        * mathml/msubsup-remove-children-expected.txt: Added.
        * mathml/msubsup-remove-children.xhtml: Added.

2011-06-03  Vangelis Kokkevis  <vangelis@chromium.org>

        Unreviewed. Fixes test expectatations.

        [chromium] Fixing redefinitions of test_expectations entries
        for chrome gpu tests.

        * platform/chromium/test_expectations.txt:

2011-06-03  James Robinson  <jamesr@chromium.org>

        [chromium] Mark GPU-only expectations as GPU.

        * platform/chromium/test_expectations.txt:

2011-06-03  Andrew Scherkus  <scherkus@chromium.org>

        Unreviewed, rebaselining Chromium GPU media pixel results after Chromium commit 87830.

        * platform/chromium-gpu-linux/media/controls-after-reload-expected.png:
        * platform/chromium-gpu-linux/media/controls-strict-expected.png:
        * platform/chromium-gpu-linux/media/controls-styling-expected.png:
        * platform/chromium-gpu-linux/media/controls-without-preload-expected.png:
        * platform/chromium-gpu-linux/media/video-aspect-ratio-expected.png:
        * platform/chromium-gpu-linux/media/video-canvas-alpha-expected.png:
        * platform/chromium-gpu-linux/media/video-display-toggle-expected.png:
        * platform/chromium-gpu-linux/media/video-layer-crash-expected.png:
        * platform/chromium-gpu-linux/media/video-no-audio-expected.png:
        * platform/chromium-gpu-linux/media/video-transformed-expected.png:
        * platform/chromium-gpu-linux/media/video-volume-slider-expected.png:
        * platform/chromium-gpu-linux/media/video-zoom-controls-expected.png:
        * platform/chromium-gpu-mac/media/controls-after-reload-expected.png:
        * platform/chromium-gpu-mac/media/controls-strict-expected.png:
        * platform/chromium-gpu-mac/media/controls-styling-expected.png:
        * platform/chromium-gpu-mac/media/controls-without-preload-expected.png:
        * platform/chromium-gpu-mac/media/video-aspect-ratio-expected.png:
        * platform/chromium-gpu-mac/media/video-display-toggle-expected.png:
        * platform/chromium-gpu-mac/media/video-layer-crash-expected.png:
        * platform/chromium-gpu-mac/media/video-no-audio-expected.png:
        * platform/chromium-gpu-mac/media/video-transformed-expected.png:
        * platform/chromium-gpu-mac/media/video-volume-slider-expected.png:
        * platform/chromium-gpu-mac/media/video-zoom-controls-expected.png:
        * platform/chromium-gpu-win/media/controls-after-reload-expected.png:
        * platform/chromium-gpu-win/media/controls-strict-expected.png:
        * platform/chromium-gpu-win/media/controls-styling-expected.png:
        * platform/chromium-gpu-win/media/controls-without-preload-expected.png:
        * platform/chromium-gpu-win/media/video-aspect-ratio-expected.png:
        * platform/chromium-gpu-win/media/video-canvas-alpha-expected.png:
        * platform/chromium-gpu-win/media/video-display-toggle-expected.png:
        * platform/chromium-gpu-win/media/video-layer-crash-expected.png:
        * platform/chromium-gpu-win/media/video-no-audio-expected.png:
        * platform/chromium-gpu-win/media/video-transformed-expected.png:
        * platform/chromium-gpu-win/media/video-volume-slider-expected.png:
        * platform/chromium-gpu-win/media/video-zoom-controls-expected.png:

2011-06-03  Dirk Pranke  <dpranke@chromium.org>

        Unreviewed, merge in downstream lines from Chromium as part of
        landing the fix for bug 61888.

        * platform/chromium/test_expectations.txt:

2011-06-03  Adam Barth  <abarth@webkit.org>

        Reviewed by Eric Seidel.

        DOMWindow::setLocation doesn't understand that DOMWindow can be inactive
        https://bugs.webkit.org/show_bug.cgi?id=62057

        Test that some esoteric combination of eval, load, and Location don't
        do something goofy.

        * http/tests/security/xss-DENIED-contentWindow-eval-expected.txt: Added.
        * http/tests/security/xss-DENIED-contentWindow-eval.html: Added.

2011-06-03  James Simonsen  <simonjam@chromium.org>

        [Chromium] Unreviewed, baseline for full-screen-placeholder. More flakiness for svg/zoom and navigator.

        * platform/chromium-win/fullscreen/full-screen-placeholder-expected.txt: Added.
        * platform/chromium/test_expectations.txt:

2011-05-31  Martin Robinson  <mrobinson@igalia.com>

        Reviewed by Ryosuke Niwa.

        [GTK] Support smart replace for the pasteboard
        https://bugs.webkit.org/show_bug.cgi?id=61734

        Unskip tests which are now passing and update results for other tests
        which vary depending on smart replace support.

        * platform/gtk/Skipped: Unskip tests which are now passing.
        * platform/gtk/editing/deleting/smart-delete-003-expected.txt:
        * platform/gtk/editing/deleting/smart-delete-004-expected.txt:
        * platform/gtk/editing/pasteboard/4944770-2-expected.txt:
        * platform/gtk/editing/pasteboard/drag-drop-modifies-page-expected.txt:
        * platform/gtk/editing/pasteboard/smart-paste-007-expected.txt:
        * platform/gtk/editing/pasteboard/smart-paste-008-expected.txt:
        * platform/gtk/editing/pasteboard/subframe-dragndrop-1-expected.txt:
        * platform/gtk/fast/lists/drag-into-marker-expected.txt:

2011-06-03  Martin Robinson  <mrobinson@igalia.com>

        Reviewed by Dimitri Glazkov.

        Teach Gtk build about window.internals
        https://bugs.webkit.org/show_bug.cgi?id=61071

        * platform/gtk/Skipped: Unskip the one new window.internals test.

2011-06-03  Laszlo Gombos  <laszlo.1.gombos@nokia.com>

        Reviewed by Antonio Gomes.

        [Qt] Enable ArrayBuffer passing tests as ArrayBuffer is enabled by default
        https://bugs.webkit.org/show_bug.cgi?id=62025

        * platform/qt/Skipped:

2011-06-03  Andrew Scherkus  <scherkus@chromium.org>

        Unreviewed, updating media/video-display-aspect-ratio.html expectations for Chromium.

        * platform/chromium/test_expectations.txt:

2011-06-03  Andrew Scherkus  <scherkus@chromium.org>

        Unreviewed, adding Ogg Theora version of media/content/test-par-16-9.mp4.

        * media/content/test-par-16-9.ogv: Added.

2011-06-03  Dirk Pranke  <dpranke@chromium.org>

        Unreviewed, expectations change. Fix conflict in expectations.

        * platform/chromium/test_expectations.txt:

2011-06-01  Jer Noble  <jer.noble@apple.com>

        Reviewed by Simon Fraser.

        Flash of broken page when exiting full screen at jerryseinfeld.com
        https://bugs.webkit.org/show_bug.cgi?id=61897
        <rdar://problem/9522985>

        * fullscreen/full-screen-placeholder-expected.txt: Added.
        * fullscreen/full-screen-placeholder.html: Added.

2011-06-03  Robert Kroeger  <rjkroege@chromium.org>

        Reviewed by Adam Barth.

        Removed test_expectations failure entry for BUGCR36415 as is fixed
        with patch in https://bugs.webkit.org/show_bug.cgi?id=62016

        * platform/chromium/test_expectations.txt:

2011-06-03  James Simonsen  <simonjam@chromium.org>

        [Chromium] Unreviewed, pixel baselines for selectlist-minsize.html.

        * platform/chromium-linux/fast/forms/selectlist-minsize-expected.png: Added.
        * platform/chromium-linux/fast/forms/selectlist-minsize-expected.txt: Added.
        * platform/chromium-mac/fast/forms/selectlist-minsize-expected.png: Added.
        * platform/chromium-win/fast/forms/selectlist-minsize-expected.png: Added.
        * platform/chromium-win/fast/forms/selectlist-minsize-expected.txt: Added.

2011-06-03  Doreen Jiang  <doreen.jiang@nokia.com>

        Reviewed by Benjamin Poulain.

        [Qt]The minimum size of the select menu list is incorrect for qtwebkit
        https://bugs.webkit.org/show_bug.cgi?id=56752

        The test is to get the render tree of select menu lists with varying widths based on content.
        Some select list based tests are rebaselined because minimum width of RenderMenuList changes
        based on the content with this fix.

        * fast/forms/selectlist-minsize.html: Added.
        * platform/mac/fast/forms/selectlist-minsize-expected.txt: Added.
        * platform/qt/editing/pasteboard/4641033-expected.txt:
        * platform/qt/editing/pasteboard/4944770-1-expected.txt:
        * platform/qt/editing/pasteboard/4944770-2-expected.txt:
        * platform/qt/editing/selection/caret-before-select-expected.txt:
        * platform/qt/fast/forms/003-expected.txt:
        * platform/qt/fast/forms/004-expected.txt:
        * platform/qt/fast/forms/HTMLOptionElement_label06-expected.txt:
        * platform/qt/fast/forms/HTMLOptionElement_label07-expected.txt:
        * platform/qt/fast/forms/basic-selects-expected.txt:
        * platform/qt/fast/forms/menulist-deselect-update-expected.txt:
        * platform/qt/fast/forms/menulist-separator-painting-expected.txt:
        * platform/qt/fast/forms/menulist-style-color-expected.txt:
        * platform/qt/fast/forms/option-script-expected.txt:
        * platform/qt/fast/forms/select-background-none-expected.txt:
        * platform/qt/fast/forms/select-baseline-expected.txt:
        * platform/qt/fast/forms/select-dirty-parent-pref-widths-expected.txt:
        * platform/qt/fast/forms/select-empty-option-height-expected.txt:
        * platform/qt/fast/forms/select-size-expected.txt:
        * platform/qt/fast/forms/select-style-expected.txt:
        * platform/qt/fast/forms/selectlist-minsize-expected.txt: Added.
        * platform/qt/fast/invalid/014-expected.txt:
        * platform/qt/fast/replaced/replaced-breaking-expected.txt:
        * platform/qt/fast/replaced/replaced-breaking-mixture-expected.txt:
        * platform/qt/fast/replaced/three-selects-break-expected.txt:
        * platform/qt/tables/mozilla/bugs/bug29326-expected.txt:
        * platform/qt/tables/mozilla/core/margins-expected.txt:

2011-06-03  Marcus Bulach  <bulach@chromium.org>

        Reviewed by Unreviewed rebaseline.

        [chromium] Rebaseline following r88020
        https://bugs.webkit.org/show_bug.cgi?id=62028

        * platform/chromium/fast/dom/prototype-inheritance-expected.txt:

2011-06-02  Dimitri Glazkov  <dglazkov@chromium.org>

        Reviewed by Darin Adler.

        Prevent event dispatch for events with related target when host is the target.
        https://bugs.webkit.org/show_bug.cgi?id=61979

        * fast/events/shadow-boundary-crossing-expected.txt: Added test.
        * fast/events/shadow-boundary-crossing.html: Added expectations.

2011-06-03  Mario Sanchez Prada  <msanchez@igalia.com>

        Unreviewed, new baselines for GTK after r88007 and r8009.

        * platform/gtk/svg/as-image/img-preserveAspectRatio-support-2-expected.png: Added.
        * platform/gtk/svg/as-image/img-preserveAspectRatio-support-2-expected.txt: Added.
        * platform/gtk/svg/as-object/object-box-sizing-no-width-height-expected.png: Added.
        * platform/gtk/svg/as-object/object-box-sizing-no-width-height-expected.txt: Added.
        * platform/gtk/svg/zoom/page/zoom-svg-through-object-with-auto-size-expected.png: Added.
        * platform/gtk/svg/zoom/page/zoom-svg-through-object-with-auto-size-expected.txt: Added.

2011-06-03  Mario Sanchez Prada  <msanchez@igalia.com>

        Unreviewed, new baselines for GTK after r88011.

        * platform/gtk/fast/frames/flattening/iframe-flattening-out-of-view-and-scroll-expected.png: Added.
        * platform/gtk/fast/frames/flattening/iframe-flattening-out-of-view-and-scroll-expected.txt: Added.
        * platform/gtk/fast/frames/flattening/iframe-flattening-out-of-view-expected.png: Added.
        * platform/gtk/fast/frames/flattening/iframe-flattening-out-of-view-expected.txt: Added.
        * platform/gtk/fast/frames/flattening/iframe-flattening-out-of-view-scroll-and-relayout-expected.png: Added.
        * platform/gtk/fast/frames/flattening/iframe-flattening-out-of-view-scroll-and-relayout-expected.txt: Added.

2011-06-03  Mario Sanchez Prada  <msanchez@igalia.com>

        Unreviewed, tests rebaselines for GTK after r88011.

        * platform/gtk/fast/frames/flattening/iframe-flattening-fixed-height-expected.txt:
        * platform/gtk/fast/frames/flattening/iframe-flattening-fixed-height-expected.png: Added.
        * platform/gtk/fast/frames/flattening/iframe-flattening-fixed-width-and-height-expected.txt:
        * platform/gtk/fast/frames/flattening/iframe-flattening-fixed-width-and-height-expected.png: Added.
        * platform/gtk/fast/frames/flattening/iframe-flattening-fixed-width-expected.txt:
        * platform/gtk/fast/frames/flattening/iframe-flattening-fixed-width-expected.png: Added.
        * platform/gtk/fast/frames/flattening/iframe-flattening-offscreen-expected.txt:
        * platform/gtk/fast/frames/flattening/iframe-flattening-offscreen-expected.png: Added.
        * platform/gtk/fast/frames/flattening/iframe-flattening-simple-expected.txt:
        * platform/gtk/fast/frames/flattening/iframe-flattening-simple-expected.png: Added.

2011-06-03  Rob Buis  <rbuis@rim.com>

        Reviewed by Nikolas Zimmermann.

        Creating <animateMotion> elements via javascript do not execute
        https://bugs.webkit.org/show_bug.cgi?id=34301

        Update test results.

        * fast/dom/Window/window-properties-expected.txt:
        * fast/dom/Window/window-property-descriptors-expected.txt:
        * fast/dom/prototype-inheritance-2-expected.txt:
        * fast/dom/prototype-inheritance-expected.txt:
        * fast/js/global-constructors-expected.txt:
        * svg/custom/global-constructors-expected.txt:

2011-06-03  Marcus Bulach  <bulach@chromium.org>

        Reviewed by Unreviewed rebaseline.

        [chromium] Rebaseline following r88007-88008
        https://bugs.webkit.org/show_bug.cgi?id=62018

        * platform/chromium-linux-x86/svg/as-image/img-preserveAspectRatio-support-2-expected.png: Added.
        * platform/chromium-linux-x86/svg/as-object/object-box-sizing-no-width-height-expected.png: Added.
        * platform/chromium-linux/svg/as-image/img-preserveAspectRatio-support-2-expected.png: Added.
        * platform/chromium-linux/svg/as-object/object-box-sizing-no-width-height-expected.png: Added.
        * platform/chromium-win/svg/as-image/img-preserveAspectRatio-support-2-expected.png: Added.
        * platform/chromium-win/svg/as-image/img-preserveAspectRatio-support-2-expected.txt: Added.
        * platform/chromium-win/svg/as-object/object-box-sizing-no-width-height-expected.png: Added.
        * platform/chromium-win/svg/as-object/object-box-sizing-no-width-height-expected.txt: Added.
        * platform/chromium/test_expectations.txt:

2011-06-03  Yael Aharon  <yael.aharon@nokia.com>

        Reviewed by Kenneth Rohde Christiansen.

        Frame flattening is broken with nested frames
        https://bugs.webkit.org/show_bug.cgi?id=61491

        * fast/frames/flattening/iframe-flattening-out-of-view.html: Added.
        * platform/mac/fast/frames/flattening/iframe-flattening-out-of-view-expected.png: Added.
        * platform/mac/fast/frames/flattening/iframe-flattening-out-of-view-expected.txt: Added.
        * fast/frames/flattening/iframe-flattening-out-of-view-and-scroll.html
        * platform/mac/fast/frames/flattening/iframe-flattening-out-of-view-and-scroll-expected.png: Added.
        * platform/mac/fast/frames/flattening/iframe-flattening-out-of-view-and-scroll-expected.txt: Added.
        * fast/frames/flattening/iframe-flattening-out-of-view-scroll-and-relayout.html
        * platform/mac/fast/frames/flattening/iframe-flattening-out-of-view-scroll-and-relayout-expected.png: Added.
        * platform/mac/fast/frames/flattening/iframe-flattening-out-of-view-scroll-and-relayout-expected.txt: Added.

2011-06-03  Mikhail Naganov  <mnaganov@chromium.org>

        Reviewed by Yury Semikhatsky.

        Web Inspector: [Chromium] cpu-profiler-profiling layout test is flaky on Linux Debug.
        https://bugs.webkit.org/show_bug.cgi?id=61533

        Skip cpu-profiler-profiling in debug, implement a fast headless alternative.

        * inspector/profiler/cpu-profiler-profiling-without-inspector-expected.txt: Added.
        * inspector/profiler/cpu-profiler-profiling-without-inspector.html: Added.
        * platform/chromium/test_expectations.txt:

2011-06-03  Nikolas Zimmermann  <nzimmermann@rim.com>

        Reviewed by Andreas Kling.

        Incorrect embedded document replaced size calculation for box-sizing: border-box
        https://bugs.webkit.org/show_bug.cgi?id=62007

        When using <object style="box-sizing: border-box" data="foo.svg"/> to embed foo.svg
        which has an intrinsic width/height, the embedded document intrinsic size is incorrect.

        * platform/mac/svg/as-image/img-preserveAspectRatio-support-2-expected.png: Added.
        * platform/mac/svg/as-image/img-preserveAspectRatio-support-2-expected.txt: Added.
        * platform/mac/svg/as-object: Added.
        * platform/mac/svg/as-object/object-box-sizing-no-width-height-expected.png: Added.
        * platform/mac/svg/as-object/object-box-sizing-no-width-height-expected.txt: Added.
        * svg/as-image/img-preserveAspectRatio-support-2.html: Added.
        * svg/as-image/resources/circle-default-default.svg: Added.
        * svg/as-object: Added.
        * svg/as-object/object-box-sizing-no-width-height.html: Added.

2011-06-03  Sheriff Bot  <webkit.review.bot@gmail.com>

        Unreviewed, rolling out r88004.
        http://trac.webkit.org/changeset/88004
        https://bugs.webkit.org/show_bug.cgi?id=62008

        This patch broke 4 tests in the GTK bots (Requested by
        msanchez on #webkit).

        * platform/gtk/accessibility/caret-browsing-anchor-followed-expected.txt: Removed.
        * platform/gtk/accessibility/caret-browsing-anchor-followed.html: Removed.

2011-06-03  Nikolas Zimmermann  <nzimmermann@rim.com>

        Reviewed by Andreas Kling.

        Zooming <object style="width/height: auto" data="foo.svg"/> doesn't work as expected
        https://bugs.webkit.org/show_bug.cgi?id=62005

        Zooming an object with auto size, that references a svg with fixed size was broken. The svg size stayed the same.
        Added new tests covering this zooming.

        * platform/mac/svg/zoom/page/zoom-svg-through-object-with-absolute-size-2-expected.png:
        * platform/mac/svg/zoom/page/zoom-svg-through-object-with-absolute-size-2-expected.txt:
        * platform/mac/svg/zoom/page/zoom-svg-through-object-with-absolute-size-expected.png:
        * platform/mac/svg/zoom/page/zoom-svg-through-object-with-absolute-size-expected.txt:
        * platform/mac/svg/zoom/page/zoom-svg-through-object-with-auto-size-expected.png: Added.
        * platform/mac/svg/zoom/page/zoom-svg-through-object-with-auto-size-expected.txt: Added.
        * svg/zoom/page/resources/circle.svg: Added.
        * svg/zoom/page/zoom-svg-through-object-with-auto-size.html: Added.

2011-06-03  Csaba Osztrogonác  <ossy@webkit.org>

        [Qt][WK2] Update platform specific expected file after r87873.

        * platform/qt-wk2/fast/events/overflow-viewport-renderer-deleted-expected.txt: Added.

2011-06-03  Mario Sanchez Prada  <msanchez@igalia.com>

        Reviewed by Martin Robinson.

        Focus and caret position should be updated when same-page links are followed
        https://bugs.webkit.org/show_bug.cgi?id=59737

        New layout test for testing this GTK-specific feature.

        * platform/gtk/accessibility/caret-browsing-anchor-followed-expected.txt: Added.
        * platform/gtk/accessibility/caret-browsing-anchor-followed.html: Added.

2011-06-03  Dominic Cooney  <dominicc@chromium.org>

        Reviewed by Kent Tamura.

        Adds a test that keygen clones have the right shadow pseudoclass.
        https://bugs.webkit.org/show_bug.cgi?id=61984

        * fast/html/clone-keygen-expected.txt: Added.
        * fast/html/clone-keygen.html: Added.
        * platform/win/Skipped: Test needs DRT functionality not in this port.

2011-06-03  Mario Sanchez Prada  <msanchez@igalia.com>

        Unreviewed, skipping test with different results in 32-bit and 64-bit.

        * platform/gtk/Skipped: Skipped test.

2011-06-03  Csaba Osztrogonác  <ossy@webkit.org>

        [Qt] Update platform specific expected files after r87873.

        * platform/qt/fast/events/overflow-viewport-renderer-deleted-expected.txt: Added.
        * platform/qt/plugins/document-open-expected.txt: Added.

2011-06-03  Mario Sanchez Prada  <msanchez@igalia.com>

        Unreviewed. Test rebaseline for GTK after revision 87936.

        * platform/gtk/fast/repaint/repaint-across-writing-mode-boundary-expected.txt:

2011-06-03  Dominic Cooney  <dominicc@chromium.org>

        Reviewed by Kent Tamura.

        Adds a test that range input clones have the right kind of slider.
        https://bugs.webkit.org/show_bug.cgi?id=61982

        * fast/html/clone-range-expected.txt: Added.
        * fast/html/clone-range.html: Added.
        * platform/win/Skipped: Test needs DRT functionality not in this port.

2011-06-03  Laszlo Gombos  <laszlo.1.gombos@nokia.com>

        Reviewed by Csaba Osztrogonác.

        [Qt] Organize the disabled features section in the Skipped list
        https://bugs.webkit.org/show_bug.cgi?id=61994

        Move all the tests for disabled features under the "Disabled
        features" section in the Skipped list. Use the name of the build flags to
        identify the features for better tracking.

        * platform/qt/Skipped:

2011-06-03  Mario Sanchez Prada  <msanchez@igalia.com>

        Unreviewed, unskipping tests, now passing after reverting r87901.

        * platform/gtk/Skipped: Unskipped 3 tests.

2011-06-02  Kent Tamura  <tkent@chromium.org>

        Reviewed by Dimitri Glazkov.

        REGRESSION(r87014): Cloned text <input> doesn't work well.
        https://bugs.webkit.org/show_bug.cgi?id=61909

        * fast/forms/textfield-clone-expected.txt: Added.
        * fast/forms/textfield-clone.html: Added.

2011-06-02  Adam Barth  <abarth@webkit.org>

        Tweaks to which kind of failure we expect.

        * platform/chromium/test_expectations.txt:

2011-06-02  Adam Barth  <abarth@webkit.org>

        This process is converging (hopefully).

        * platform/chromium-mac/fast/backgrounds/svg-as-mask-expected.png: Added.

2011-06-02  Adam Barth  <abarth@webkit.org>

        Some more fallout from http://trac.webkit.org/changeset/87955, this time on Windows.

        * platform/chromium-win-vista/fast/forms/validation-message-appearance-expected.png: Removed.
        * platform/chromium-win/fast/borders/border-radius-huge-assert-expected.png:
        * platform/chromium-win/fast/forms/validation-message-appearance-expected.png:

2011-06-02  Adam Barth  <abarth@webkit.org>

        This test is flaky on Linux.

        * platform/chromium/test_expectations.txt:

2011-06-02  Adam Barth  <abarth@webkit.org>

        The next round of updated baselines after
        http://trac.webkit.org/changeset/87955.  Again, these all look fine to
        visual inspection.

        * platform/chromium-mac-leopard/fast/css/shadow-multiple-expected.png: Added.
        * platform/chromium-mac/fast/backgrounds/background-leakage-expected.png: Added.
        * platform/chromium-mac/fast/backgrounds/background-leakage-transforms-expected.png: Added.
        * platform/chromium-mac/fast/backgrounds/svg-as-background-1-expected.png:
        * platform/chromium-mac/fast/backgrounds/svg-as-mask-expected.png: Removed.
        * platform/chromium-mac/fast/blockflow/border-radius-clipping-vertical-lr-expected.png:
        * platform/chromium-mac/fast/blockflow/border-styles-vertical-lr-expected.png: Added.
        * platform/chromium-mac/fast/blockflow/border-styles-vertical-rl-expected.png: Added.
        * platform/chromium-mac/fast/blockflow/border-vertical-lr-expected.png:
        * platform/chromium-mac/fast/blockflow/box-shadow-horizontal-bt-expected.png:
        * platform/chromium-mac/fast/blockflow/box-shadow-vertical-lr-expected.png:
        * platform/chromium-mac/fast/blockflow/box-shadow-vertical-rl-expected.png:
        * platform/chromium-mac/fast/borders/border-radius-circle-expected.png: Added.
        * platform/chromium-mac/fast/borders/border-radius-different-width-001-expected.png: Added.
        * platform/chromium-mac/fast/borders/border-radius-groove-01-expected.png: Added.
        * platform/chromium-mac/fast/borders/border-radius-groove-02-expected.png: Added.
        * platform/chromium-mac/fast/borders/border-radius-groove-03-expected.png: Added.
        * platform/chromium-mac/fast/borders/border-radius-huge-assert-expected.png: Added.
        * platform/chromium-mac/fast/borders/border-radius-inline-flow-expected.png: Added.
        * platform/chromium-mac/fast/borders/border-radius-inset-outset-expected.png: Added.
        * platform/chromium-mac/fast/borders/border-radius-wide-border-02-expected.png: Added.
        * platform/chromium-mac/fast/borders/border-radius-wide-border-03-expected.png: Added.
        * platform/chromium-mac/fast/borders/border-radius-wide-border-04-expected.png: Added.
        * platform/chromium-mac/fast/borders/border-styles-split-expected.png: Added.
        * platform/chromium-mac/fast/borders/borderRadiusDashed01-expected.png:
        * platform/chromium-mac/fast/borders/borderRadiusDashed04-expected.png:
        * platform/chromium-mac/fast/borders/borderRadiusDashed05-expected.png: Added.
        * platform/chromium-mac/fast/borders/borderRadiusDashed06-expected.png: Added.
        * platform/chromium-mac/fast/borders/borderRadiusDotted02-expected.png: Added.
        * platform/chromium-mac/fast/borders/borderRadiusDotted03-expected.png: Added.
        * platform/chromium-mac/fast/borders/borderRadiusDotted04-expected.png: Added.
        * platform/chromium-mac/fast/borders/borderRadiusDotted05-expected.png: Added.
        * platform/chromium-mac/fast/borders/borderRadiusDotted06-expected.png:
        * platform/chromium-mac/fast/borders/borderRadiusDouble04-expected.png: Added.
        * platform/chromium-mac/fast/borders/borderRadiusDouble05-expected.png: Added.
        * platform/chromium-mac/fast/borders/borderRadiusDouble06-expected.png: Added.
        * platform/chromium-mac/fast/borders/borderRadiusDouble07-expected.png: Added.
        * platform/chromium-mac/fast/borders/borderRadiusDouble08-expected.png: Added.
        * platform/chromium-mac/fast/borders/borderRadiusDouble09-expected.png: Added.
        * platform/chromium-mac/fast/borders/borderRadiusInvalidColor-expected.png: Added.
        * platform/chromium-mac/fast/borders/mixed-border-styles-radius-expected.png: Added.
        * platform/chromium-mac/fast/borders/mixed-border-styles-radius2-expected.png: Added.
        * platform/chromium-mac/fast/borders/webkit-border-radius-expected.png: Added.
        * platform/chromium-mac/fast/box-shadow/basic-shadows-expected.png:
        * platform/chromium-mac/fast/box-shadow/shadow-tiling-artifact-expected.png: Added.
        * platform/chromium-mac/fast/box-shadow/spread-expected.png:
        * platform/chromium-mac/fast/css/border-radius-non-negative-expected.png: Added.
        * platform/chromium-mac/fast/css/box-shadow-and-border-radius-expected.png: Added.
        * platform/chromium-mac/fast/css/shadow-multiple-expected.png: Added.
        * platform/chromium-mac/fast/forms/basic-selects-expected.png: Added.
        * platform/chromium-mac/fast/forms/menulist-clip-expected.png: Added.
        * platform/chromium-mac/fast/forms/menulist-option-wrap-expected.png: Added.
        * platform/chromium-mac/fast/forms/menulist-restrict-line-height-expected.png: Added.
        * platform/chromium-mac/fast/forms/menulist-separator-painting-expected.png: Added.
        * platform/chromium-mac/fast/forms/menulist-style-color-expected.png: Added.
        * platform/chromium-mac/fast/forms/select-background-none-expected.png:
        * platform/chromium-mac/fast/forms/select-baseline-expected.png: Added.
        * platform/chromium-mac/fast/forms/select-empty-option-height-expected.png: Added.
        * platform/chromium-mac/fast/forms/validation-message-appearance-expected.png: Added.
        * platform/chromium-mac/fast/repaint/shadow-multiple-horizontal-expected.png:
        * platform/chromium-mac/fast/repaint/shadow-multiple-strict-horizontal-expected.png:
        * platform/chromium-mac/fast/repaint/shadow-multiple-strict-vertical-expected.png: Added.
        * platform/chromium-mac/fast/repaint/shadow-multiple-vertical-expected.png: Added.
        * platform/chromium-mac/svg/carto.net/button-expected.png: Added.

2011-06-02  Adam Barth  <abarth@webkit.org>

        First round of baseline updates after
        http://trac.webkit.org/changeset/87955 changed some floating point
        calculations for borders.  Visually, these appear to all be fine.

        * platform/chromium-gpu-linux/media/video-zoom-controls-expected.png:
        * platform/chromium-gpu-mac/media/video-zoom-controls-expected.png:
        * platform/chromium-gpu-win/media/video-zoom-controls-expected.png:
        * platform/chromium-linux-x86/fast/backgrounds: Added.
        * platform/chromium-linux-x86/fast/backgrounds/border-radius-split-background-expected.png: Added.
        * platform/chromium-linux-x86/fast/backgrounds/border-radius-split-background-image-expected.png: Added.
        * platform/chromium-linux-x86/fast/borders/border-radius-constraints-expected.png: Added.
        * platform/chromium-linux-x86/fast/borders/border-radius-split-inline-expected.png: Added.
        * platform/chromium-linux-x86/fast/borders/borderRadiusAllStylesAllCorners-expected.png:
        * platform/chromium-linux-x86/fast/borders/borderRadiusArcs01-expected.png:
        * platform/chromium-linux-x86/fast/borders/borderRadiusDashed02-expected.png:
        * platform/chromium-linux-x86/fast/borders/borderRadiusDashed03-expected.png:
        * platform/chromium-linux-x86/fast/borders/borderRadiusDotted01-expected.png:
        * platform/chromium-linux-x86/fast/borders/borderRadiusDouble01-expected.png:
        * platform/chromium-linux-x86/fast/borders/borderRadiusDouble02-expected.png:
        * platform/chromium-linux-x86/fast/borders/borderRadiusDouble03-expected.png:
        * platform/chromium-linux-x86/fast/borders/borderRadiusGroove01-expected.png:
        * platform/chromium-linux-x86/fast/borders/borderRadiusGroove02-expected.png:
        * platform/chromium-linux-x86/fast/borders/borderRadiusInset01-expected.png:
        * platform/chromium-linux-x86/fast/borders/borderRadiusOutset01-expected.png:
        * platform/chromium-linux-x86/fast/borders/borderRadiusRidge01-expected.png:
        * platform/chromium-linux-x86/fast/borders/borderRadiusSolid01-expected.png:
        * platform/chromium-linux-x86/fast/borders/borderRadiusSolid02-expected.png:
        * platform/chromium-linux-x86/fast/borders/borderRadiusSolid03-expected.png:
        * platform/chromium-linux-x86/fast/borders/borderRadiusSolid04-expected.png: Added.
        * platform/chromium-linux-x86/fast/borders/different-color-borders-expected.png: Added.
        * platform/chromium-linux-x86/fast/borders/fieldsetBorderRadius-expected.png: Added.
        * platform/chromium-linux-x86/fast/box-shadow/inset-box-shadows-expected.png: Added.
        * platform/chromium-linux-x86/fast/box-shadow/inset-expected.png: Added.
        * platform/chromium-linux-x86/fast/box-shadow/inset-with-extraordinary-radii-and-border-expected.png:
        * platform/chromium-linux-x86/fast/box-shadow/spread-multiple-inset-expected.png: Added.
        * platform/chromium-linux-x86/fast/clip: Added.
        * platform/chromium-linux-x86/fast/clip/overflow-border-radius-clip-expected.png: Added.
        * platform/chromium-linux-x86/fast/css/nested-rounded-corners-expected.png: Added.
        * platform/chromium-linux-x86/fast/repaint/border-radius-repaint-expected.png:
        * platform/chromium-linux-x86/fast/transforms: Added.
        * platform/chromium-linux-x86/fast/transforms/shadows-expected.png: Added.
        * platform/chromium-linux-x86/media: Added.
        * platform/chromium-linux-x86/media/video-zoom-controls-expected.png: Added.
        * platform/chromium-linux-x86/svg/W3C-SVG-1.1/animate-elem-52-t-expected.png: Added.
        * platform/chromium-linux-x86/svg/W3C-SVG-1.1/shapes-rect-01-t-expected.png: Added.
        * platform/chromium-linux-x86/svg/W3C-SVG-1.1/shapes-rect-02-t-expected.png: Added.
        * platform/chromium-linux-x86/svg/custom/dasharrayOrigin-expected.png: Added.
        * platform/chromium-linux-x86/svg/custom/fractional-rects-expected.png: Added.
        * platform/chromium-linux-x86/svg/custom/gradient-rotated-bbox-expected.png: Added.
        * platform/chromium-linux-x86/svg/custom/rounded-rects-expected.png: Added.
        * platform/chromium-linux-x86/svg/custom/svg-fonts-in-html-expected.png: Added.
        * platform/chromium-linux-x86/svg/hixie/perf/001-expected.png:
        * platform/chromium-linux-x86/svg/hixie/perf/002-expected.png:
        * platform/chromium-linux-x86/svg/wicd/rightsizing-grid-expected.png:
        * platform/chromium-linux-x86/svg/wicd/test-scalable-background-image1-expected.png:
        * platform/chromium-linux/fast/backgrounds/border-radius-split-background-expected.png:
        * platform/chromium-linux/fast/backgrounds/border-radius-split-background-image-expected.png:
        * platform/chromium-linux/fast/backgrounds/gradient-background-leakage-expected.png:
        * platform/chromium-linux/fast/borders/border-radius-constraints-expected.png:
        * platform/chromium-linux/fast/borders/border-radius-split-inline-expected.png:
        * platform/chromium-linux/fast/borders/borderRadiusAllStylesAllCorners-expected.png:
        * platform/chromium-linux/fast/borders/borderRadiusArcs01-expected.png:
        * platform/chromium-linux/fast/borders/borderRadiusDashed02-expected.png:
        * platform/chromium-linux/fast/borders/borderRadiusDashed03-expected.png:
        * platform/chromium-linux/fast/borders/borderRadiusDotted01-expected.png:
        * platform/chromium-linux/fast/borders/borderRadiusDouble01-expected.png:
        * platform/chromium-linux/fast/borders/borderRadiusDouble02-expected.png:
        * platform/chromium-linux/fast/borders/borderRadiusDouble03-expected.png:
        * platform/chromium-linux/fast/borders/borderRadiusGroove01-expected.png:
        * platform/chromium-linux/fast/borders/borderRadiusGroove02-expected.png:
        * platform/chromium-linux/fast/borders/borderRadiusInset01-expected.png:
        * platform/chromium-linux/fast/borders/borderRadiusOutset01-expected.png:
        * platform/chromium-linux/fast/borders/borderRadiusRidge01-expected.png:
        * platform/chromium-linux/fast/borders/borderRadiusSolid01-expected.png:
        * platform/chromium-linux/fast/borders/borderRadiusSolid02-expected.png:
        * platform/chromium-linux/fast/borders/borderRadiusSolid03-expected.png:
        * platform/chromium-linux/fast/borders/borderRadiusSolid04-expected.png:
        * platform/chromium-linux/fast/borders/different-color-borders-expected.png:
        * platform/chromium-linux/fast/borders/fieldsetBorderRadius-expected.png:
        * platform/chromium-linux/fast/box-shadow/inset-box-shadows-expected.png:
        * platform/chromium-linux/fast/box-shadow/inset-expected.png:
        * platform/chromium-linux/fast/box-shadow/inset-with-extraordinary-radii-and-border-expected.png:
        * platform/chromium-linux/fast/box-shadow/spread-multiple-inset-expected.png:
        * platform/chromium-linux/fast/clip/overflow-border-radius-clip-expected.png:
        * platform/chromium-linux/fast/css/nested-rounded-corners-expected.png:
        * platform/chromium-linux/fast/repaint/border-radius-repaint-expected.png:
        * platform/chromium-linux/fast/transforms/shadows-expected.png:
        * platform/chromium-linux/media/video-zoom-controls-expected.png:
        * platform/chromium-linux/svg/W3C-SVG-1.1/animate-elem-52-t-expected.png:
        * platform/chromium-linux/svg/W3C-SVG-1.1/shapes-rect-01-t-expected.png:
        * platform/chromium-linux/svg/W3C-SVG-1.1/shapes-rect-02-t-expected.png:
        * platform/chromium-linux/svg/custom/dasharrayOrigin-expected.png:
        * platform/chromium-linux/svg/custom/fractional-rects-expected.png:
        * platform/chromium-linux/svg/custom/gradient-rotated-bbox-expected.png:
        * platform/chromium-linux/svg/custom/rounded-rects-expected.png:
        * platform/chromium-linux/svg/custom/svg-fonts-in-html-expected.png:
        * platform/chromium-linux/svg/hixie/perf/001-expected.png:
        * platform/chromium-linux/svg/hixie/perf/002-expected.png:
        * platform/chromium-linux/svg/wicd/rightsizing-grid-expected.png:
        * platform/chromium-linux/svg/wicd/test-scalable-background-image1-expected.png:
        * platform/chromium-mac-leopard/fast/borders/border-radius-split-inline-expected.png: Added.
        * platform/chromium-mac-leopard/fast/box-shadow/inset-with-extraordinary-radii-and-border-expected.png: Added.
        * platform/chromium-mac-leopard/fast/repaint/border-radius-repaint-expected.png: Added.
        * platform/chromium-mac-leopard/fast/transforms/shadows-expected.png: Added.
        * platform/chromium-mac-leopard/svg/hixie/perf: Added.
        * platform/chromium-mac-leopard/svg/hixie/perf/001-expected.png: Added.
        * platform/chromium-mac-leopard/svg/hixie/perf/002-expected.png: Added.
        * platform/chromium-mac/fast/backgrounds/border-radius-split-background-expected.png:
        * platform/chromium-mac/fast/backgrounds/border-radius-split-background-image-expected.png:
        * platform/chromium-mac/fast/backgrounds/gradient-background-leakage-expected.png: Added.
        * platform/chromium-mac/fast/borders/border-radius-constraints-expected.png: Added.
        * platform/chromium-mac/fast/borders/border-radius-split-inline-expected.png:
        * platform/chromium-mac/fast/borders/borderRadiusAllStylesAllCorners-expected.png:
        * platform/chromium-mac/fast/borders/borderRadiusArcs01-expected.png: Added.
        * platform/chromium-mac/fast/borders/borderRadiusDashed02-expected.png: Added.
        * platform/chromium-mac/fast/borders/borderRadiusDashed03-expected.png: Added.
        * platform/chromium-mac/fast/borders/borderRadiusDotted01-expected.png: Added.
        * platform/chromium-mac/fast/borders/borderRadiusDouble01-expected.png: Added.
        * platform/chromium-mac/fast/borders/borderRadiusDouble02-expected.png: Added.
        * platform/chromium-mac/fast/borders/borderRadiusDouble03-expected.png: Added.
        * platform/chromium-mac/fast/borders/borderRadiusGroove01-expected.png: Added.
        * platform/chromium-mac/fast/borders/borderRadiusGroove02-expected.png: Added.
        * platform/chromium-mac/fast/borders/borderRadiusInset01-expected.png: Added.
        * platform/chromium-mac/fast/borders/borderRadiusOutset01-expected.png: Added.
        * platform/chromium-mac/fast/borders/borderRadiusRidge01-expected.png: Added.
        * platform/chromium-mac/fast/borders/borderRadiusSolid01-expected.png: Added.
        * platform/chromium-mac/fast/borders/borderRadiusSolid02-expected.png: Added.
        * platform/chromium-mac/fast/borders/borderRadiusSolid03-expected.png: Added.
        * platform/chromium-mac/fast/borders/borderRadiusSolid04-expected.png: Added.
        * platform/chromium-mac/fast/borders/different-color-borders-expected.png: Added.
        * platform/chromium-mac/fast/borders/fieldsetBorderRadius-expected.png: Added.
        * platform/chromium-mac/fast/box-shadow/inset-box-shadows-expected.png:
        * platform/chromium-mac/fast/box-shadow/inset-expected.png: Added.
        * platform/chromium-mac/fast/box-shadow/inset-with-extraordinary-radii-and-border-expected.png: Added.
        * platform/chromium-mac/fast/box-shadow/spread-multiple-inset-expected.png:
        * platform/chromium-mac/fast/clip: Added.
        * platform/chromium-mac/fast/clip/overflow-border-radius-clip-expected.png: Added.
        * platform/chromium-mac/fast/css/nested-rounded-corners-expected.png:
        * platform/chromium-mac/fast/repaint/border-radius-repaint-expected.png: Added.
        * platform/chromium-mac/fast/transforms/shadows-expected.png:
        * platform/chromium-mac/media/video-zoom-controls-expected.png:
        * platform/chromium-mac/svg/W3C-SVG-1.1/animate-elem-52-t-expected.png: Added.
        * platform/chromium-mac/svg/W3C-SVG-1.1/shapes-rect-01-t-expected.png: Added.
        * platform/chromium-mac/svg/W3C-SVG-1.1/shapes-rect-02-t-expected.png: Added.
        * platform/chromium-mac/svg/custom/dasharrayOrigin-expected.png:
        * platform/chromium-mac/svg/custom/fractional-rects-expected.png: Added.
        * platform/chromium-mac/svg/custom/gradient-rotated-bbox-expected.png:
        * platform/chromium-mac/svg/custom/rounded-rects-expected.png: Added.
        * platform/chromium-mac/svg/custom/svg-fonts-in-html-expected.png:
        * platform/chromium-mac/svg/hixie/perf/001-expected.png:
        * platform/chromium-mac/svg/hixie/perf/002-expected.png:
        * platform/chromium-mac/svg/wicd: Added.
        * platform/chromium-mac/svg/wicd/rightsizing-grid-expected.png: Added.
        * platform/chromium-mac/svg/wicd/test-scalable-background-image1-expected.png: Added.
        * platform/chromium-win-vista/svg/W3C-SVG-1.1/animate-elem-52-t-expected.png:
        * platform/chromium-win-vista/svg/wicd/rightsizing-grid-expected.png: Removed.
        * platform/chromium-win-vista/svg/wicd/test-scalable-background-image1-expected.png: Removed.
        * platform/chromium-win-xp/fast/transforms/shadows-expected.png: Removed.
        * platform/chromium-win/fast/backgrounds/border-radius-split-background-expected.png:
        * platform/chromium-win/fast/backgrounds/border-radius-split-background-image-expected.png:
        * platform/chromium-win/fast/backgrounds/gradient-background-leakage-expected.png:
        * platform/chromium-win/fast/borders/border-radius-constraints-expected.png:
        * platform/chromium-win/fast/borders/border-radius-split-inline-expected.png:
        * platform/chromium-win/fast/borders/borderRadiusAllStylesAllCorners-expected.png:
        * platform/chromium-win/fast/borders/borderRadiusArcs01-expected.png:
        * platform/chromium-win/fast/borders/borderRadiusDashed02-expected.png:
        * platform/chromium-win/fast/borders/borderRadiusDashed03-expected.png:
        * platform/chromium-win/fast/borders/borderRadiusDotted01-expected.png:
        * platform/chromium-win/fast/borders/borderRadiusDouble01-expected.png:
        * platform/chromium-win/fast/borders/borderRadiusDouble02-expected.png:
        * platform/chromium-win/fast/borders/borderRadiusDouble03-expected.png:
        * platform/chromium-win/fast/borders/borderRadiusGroove01-expected.png:
        * platform/chromium-win/fast/borders/borderRadiusGroove02-expected.png:
        * platform/chromium-win/fast/borders/borderRadiusInset01-expected.png:
        * platform/chromium-win/fast/borders/borderRadiusOutset01-expected.png:
        * platform/chromium-win/fast/borders/borderRadiusRidge01-expected.png:
        * platform/chromium-win/fast/borders/borderRadiusSolid01-expected.png:
        * platform/chromium-win/fast/borders/borderRadiusSolid02-expected.png:
        * platform/chromium-win/fast/borders/borderRadiusSolid03-expected.png:
        * platform/chromium-win/fast/borders/borderRadiusSolid04-expected.png:
        * platform/chromium-win/fast/borders/different-color-borders-expected.png:
        * platform/chromium-win/fast/borders/fieldsetBorderRadius-expected.png:
        * platform/chromium-win/fast/box-shadow/inset-box-shadows-expected.png:
        * platform/chromium-win/fast/box-shadow/inset-expected.png:
        * platform/chromium-win/fast/box-shadow/inset-with-extraordinary-radii-and-border-expected.png:
        * platform/chromium-win/fast/box-shadow/spread-multiple-inset-expected.png:
        * platform/chromium-win/fast/clip/overflow-border-radius-clip-expected.png:
        * platform/chromium-win/fast/css/nested-rounded-corners-expected.png:
        * platform/chromium-win/fast/repaint/border-radius-repaint-expected.png:
        * platform/chromium-win/fast/transforms/shadows-expected.png:
        * platform/chromium-win/media/video-zoom-controls-expected.png:
        * platform/chromium-win/svg/W3C-SVG-1.1/animate-elem-52-t-expected.png:
        * platform/chromium-win/svg/W3C-SVG-1.1/shapes-rect-01-t-expected.png:
        * platform/chromium-win/svg/W3C-SVG-1.1/shapes-rect-02-t-expected.png:
        * platform/chromium-win/svg/custom/dasharrayOrigin-expected.png:
        * platform/chromium-win/svg/custom/fractional-rects-expected.png:
        * platform/chromium-win/svg/custom/gradient-rotated-bbox-expected.png:
        * platform/chromium-win/svg/custom/rounded-rects-expected.png:
        * platform/chromium-win/svg/custom/svg-fonts-in-html-expected.png:
        * platform/chromium-win/svg/hixie/perf/001-expected.png:
        * platform/chromium-win/svg/hixie/perf/002-expected.png:
        * platform/chromium-win/svg/wicd/rightsizing-grid-expected.png:
        * platform/chromium-win/svg/wicd/test-scalable-background-image1-expected.png: Added.
        * platform/chromium-win/svg/wicd/test-scalable-background-image1-expected.txt: Added.

2011-06-02  Jian Li  <jianli@chromium.org>

        Reviewed by David Levin.

        Update the behavior of multiple reads for FileReader
        https://bugs.webkit.org/show_bug.cgi?id=61793

        Added test cases to cover calling read methods multiple times.

        * fast/files/read-file-async-expected.txt:
        * fast/files/resources/read-file-test-cases.js:
        (ensureInitialized):
        (runNextTest):
        (testMultipleReads):
        (testReuseReaderStep1):
        (testReuseReaderStep2):
        * fast/files/workers/worker-read-file-async-expected.txt:

2011-06-02  Brady Eidson  <beidson@apple.com>

        Reviewed by Oliver Hunt.

        <rdar://problem/9539920> and https://bugs.webkit.org/show_bug.cgi?id=61950
        Repro crash loading certain webarchives after r87566.

        * webarchive/loading/javascript-url-iframe-crash-expected.txt: Added.
        * webarchive/loading/javascript-url-iframe-crash.html: Added.
        * webarchive/loading/resources/javascript-url-iframe-crash.webarchive: Added.

2011-06-02  Tony Chang  <tony@chromium.org>

        [chromium] mark media/audio-delete-while-slider-thumb-clicked.html as passing
        https://bugs.webkit.org/show_bug.cgi?id=61967

        This test is passing now that we get proper click events on the
        slider and we no longer use absolute positions on the slider.  The
        test was updated in r78562 while it was disabled, so the chromium
        results were stale (thus I'm deleting them).

        * platform/chromium-win/media/audio-delete-while-slider-thumb-clicked-expected.txt: Removed.
        * platform/chromium/test_expectations.txt:

2011-06-02  Stephen White  <senorblanco@chromium.org>

        Reviewed by Andreas Kling.

        Fix layout test compositing/images/direct-svg-image.html.
        https://bugs.webkit.org/show_bug.cgi?id=61966
        
        Change this test to get SVG resources from their new, post-r87782
        location (svg/as-image).

        * compositing/images/direct-svg-image.html:

2011-06-02  Dimitri Glazkov  <dglazkov@chromium.org>

        Reviewed by Darin Adler.

        Add build logistics and plumbing for window.internals object.
        https://bugs.webkit.org/show_bug.cgi?id=60313

        * fast/dom/Window/script-tests/window-property-descriptors.js: Added internals object to list of properties to skip.
        * fast/dom/Window/window-properties.html: Ditto.
        * fast/dom/script-tests/prototype-inheritance-2.js: Ditto.
        * fast/dom/script-tests/prototype-inheritance.js: Ditto.
        * fast/harness/internals-object-expected.txt: Added.
        * fast/harness/internals-object.html: Added.
        * platform/gtk/Skipped: Skipped the newly added test until platform supports window.internals.
        * platform/mac-wk2/Skipped: Ditto.
        * platform/qt/Skipped: Ditto.
        * platform/win/Skipped: Ditto.

2011-06-02  Adam Barth  <abarth@webkit.org>

        More housekeep w.r.t. border-radius-clip.html.  These new image results
        look correct.  The "replaced" version is the one with the failure.

        * platform/chromium-linux-x86/fast/overflow/border-radius-clipping-expected.png: Added.
        * platform/chromium-linux/fast/overflow/border-radius-clipping-expected.png:
        * platform/chromium-mac-leopard/fast/overflow/border-radius-clipping-expected.png:
        * platform/chromium-mac/fast/overflow/border-radius-clipping-expected.png: Removed.
        * platform/chromium-win/fast/overflow/border-radius-clipping-expected.png:
        * platform/chromium/test_expectations.txt:

2011-06-02  Adam Barth  <abarth@webkit.org>

        First cut at updating test expectations for Win 7.

        * platform/chromium-win/fast/dom/HTMLAnchorElement/set-href-attribute-hash-expected.txt: Removed.
        * platform/chromium-win/fullscreen/full-screen-zIndex-after-expected.png: Added.
        * platform/chromium-win/http/tests/security/aboutBlank/xss-DENIED-set-opener-expected.txt: Removed.
        * platform/chromium-win/svg/W3C-SVG-1.1-SE/types-dom-05-b-expected.txt: Removed.
        * platform/chromium-win/svg/wicd/test-rightsizing-b-expected.png: Added.
        * platform/chromium-win/svg/wicd/test-rightsizing-b-expected.txt: Added.
        * platform/chromium-win/svg/wicd/test-scalable-background-image2-expected.png: Added.
        * platform/chromium-win/svg/wicd/test-scalable-background-image2-expected.txt: Added.
        * platform/chromium-win/svg/zoom/page/zoom-coords-viewattr-01-b-expected.png:
        * platform/chromium-win/svg/zoom/page/zoom-coords-viewattr-01-b-expected.txt:
        * platform/chromium/test_expectations.txt:

2011-06-02  Adam Barth  <abarth@webkit.org>

        These differ only by the scroll bar.

        * platform/chromium-linux-x86/fast/css: Added.
        * platform/chromium-linux-x86/fast/css/last-of-type-pseudo-class-expected.png: Added.
        * platform/chromium-linux/fast/css/last-of-type-pseudo-class-expected.png:
        * platform/chromium/test_expectations.txt:

2011-06-02  Ryosuke Niwa  <rniwa@webkit.org>

        Reviewed by Eric Seidel.

        REGRESSION: inline style is lost when deleting line break between paragraphs with same style
        https://bugs.webkit.org/show_bug.cgi?id=61899

        Added a regression test to ensure WebKit preserves font family for a paragraph being merged
        to the previous paragraph when deleting a line break between two paragraphs with the same style.

        * editing/deleting/delete-line-break-between-paragraphs-with-same-style-expected.txt: Added.
        * editing/deleting/delete-line-break-between-paragraphs-with-same-style.html: Added.

2011-06-01  Ryosuke Niwa  <rniwa@webkit.org>

        Reviewed by Simon Fraser.

        REGRESSION: Text selection broken for text with line-height applied
        https://bugs.webkit.org/show_bug.cgi?id=54929

        Added a test to ensure WebKit can place caret in text with a line-height smaller than
        the height of the text.

        * editing/selection/hit-test-on-text-with-line-height-expected.txt: Added.
        * editing/selection/hit-test-on-text-with-line-height.html: Added.

2011-06-02  Adam Barth  <abarth@webkit.org>

        This test actually fails as IMAGE not as IMAGE+TEXT.

        * platform/chromium/test_expectations.txt:

2011-06-02  Adam Barth  <abarth@webkit.org>

        New baselines for these tests.  These only differ from the existing baselines by a handful of pixels.

        * platform/chromium-linux-x86/fast/borders/border-radius-huge-assert-expected.png: Added.
        * platform/chromium-linux-x86/fast/borders/borderRadiusAllStylesAllCorners-expected.png: Added.
        * platform/chromium-linux-x86/fast/borders/borderRadiusArcs01-expected.png: Added.
        * platform/chromium-linux-x86/fast/borders/borderRadiusDashed02-expected.png: Added.
        * platform/chromium-linux-x86/fast/borders/borderRadiusDashed03-expected.png: Added.
        * platform/chromium-linux-x86/fast/borders/borderRadiusDotted01-expected.png: Added.
        * platform/chromium-linux-x86/fast/borders/borderRadiusDouble01-expected.png: Added.
        * platform/chromium-linux-x86/fast/borders/borderRadiusDouble02-expected.png: Added.
        * platform/chromium-linux-x86/fast/borders/borderRadiusDouble03-expected.png: Added.
        * platform/chromium-linux-x86/fast/borders/borderRadiusGroove01-expected.png: Added.
        * platform/chromium-linux-x86/fast/borders/borderRadiusGroove02-expected.png: Added.
        * platform/chromium-linux-x86/fast/borders/borderRadiusInset01-expected.png: Added.
        * platform/chromium-linux-x86/fast/borders/borderRadiusInvalidColor-expected.png: Added.
        * platform/chromium-linux-x86/fast/borders/borderRadiusOutset01-expected.png: Added.
        * platform/chromium-linux-x86/fast/borders/borderRadiusRidge01-expected.png: Added.
        * platform/chromium-linux-x86/fast/borders/borderRadiusSolid01-expected.png: Added.
        * platform/chromium-linux-x86/fast/borders/borderRadiusSolid02-expected.png: Added.
        * platform/chromium-linux-x86/fast/borders/borderRadiusSolid03-expected.png: Added.
        * platform/chromium-linux-x86/fast/box-shadow: Added.
        * platform/chromium-linux-x86/fast/box-shadow/inset-with-extraordinary-radii-and-border-expected.png: Added.
        * platform/chromium-linux-x86/fast/overflow: Added.
        * platform/chromium-linux-x86/fast/repaint/border-radius-repaint-expected.png: Added.
        * platform/chromium-linux-x86/fast/replaced: Added.
        * platform/chromium-linux/fast/borders/border-radius-huge-assert-expected.png:
        * platform/chromium-linux/fast/borders/borderRadiusAllStylesAllCorners-expected.png:
        * platform/chromium-linux/fast/borders/borderRadiusArcs01-expected.png:
        * platform/chromium-linux/fast/borders/borderRadiusDashed02-expected.png:
        * platform/chromium-linux/fast/borders/borderRadiusDashed03-expected.png:
        * platform/chromium-linux/fast/borders/borderRadiusDotted01-expected.png:
        * platform/chromium-linux/fast/borders/borderRadiusDouble01-expected.png:
        * platform/chromium-linux/fast/borders/borderRadiusDouble02-expected.png:
        * platform/chromium-linux/fast/borders/borderRadiusDouble03-expected.png:
        * platform/chromium-linux/fast/borders/borderRadiusGroove01-expected.png:
        * platform/chromium-linux/fast/borders/borderRadiusGroove02-expected.png:
        * platform/chromium-linux/fast/borders/borderRadiusInset01-expected.png:
        * platform/chromium-linux/fast/borders/borderRadiusInvalidColor-expected.png:
        * platform/chromium-linux/fast/borders/borderRadiusOutset01-expected.png:
        * platform/chromium-linux/fast/borders/borderRadiusRidge01-expected.png:
        * platform/chromium-linux/fast/borders/borderRadiusSolid01-expected.png:
        * platform/chromium-linux/fast/borders/borderRadiusSolid02-expected.png:
        * platform/chromium-linux/fast/borders/borderRadiusSolid03-expected.png:
        * platform/chromium-linux/fast/box-shadow/inset-with-extraordinary-radii-and-border-expected.png:
        * platform/chromium-linux/fast/repaint/border-radius-repaint-expected.png:
        * platform/chromium-mac-leopard/fast/borders/border-radius-huge-assert-expected.png:
        * platform/chromium-mac-leopard/fast/borders/borderRadiusAllStylesAllCorners-expected.png:
        * platform/chromium-mac-leopard/fast/borders/borderRadiusInvalidColor-expected.png:
        * platform/chromium-mac/fast/borders/borderRadiusAllStylesAllCorners-expected.png:
        * platform/chromium-mac/fast/box-shadow/inset-with-extraordinary-radii-and-border-expected.png: Removed.
        * platform/chromium-win/fast/borders/border-radius-huge-assert-expected.png:
        * platform/chromium-win/fast/borders/borderRadiusAllStylesAllCorners-expected.png:
        * platform/chromium-win/fast/borders/borderRadiusArcs01-expected.png:
        * platform/chromium-win/fast/borders/borderRadiusDashed02-expected.png:
        * platform/chromium-win/fast/borders/borderRadiusDashed03-expected.png:
        * platform/chromium-win/fast/borders/borderRadiusDotted01-expected.png:
        * platform/chromium-win/fast/borders/borderRadiusDouble01-expected.png:
        * platform/chromium-win/fast/borders/borderRadiusDouble02-expected.png:
        * platform/chromium-win/fast/borders/borderRadiusDouble03-expected.png:
        * platform/chromium-win/fast/borders/borderRadiusGroove01-expected.png:
        * platform/chromium-win/fast/borders/borderRadiusGroove02-expected.png:
        * platform/chromium-win/fast/borders/borderRadiusInset01-expected.png:
        * platform/chromium-win/fast/borders/borderRadiusInvalidColor-expected.png:
        * platform/chromium-win/fast/borders/borderRadiusOutset01-expected.png:
        * platform/chromium-win/fast/borders/borderRadiusRidge01-expected.png:
        * platform/chromium-win/fast/borders/borderRadiusSolid01-expected.png:
        * platform/chromium-win/fast/borders/borderRadiusSolid02-expected.png:
        * platform/chromium-win/fast/borders/borderRadiusSolid03-expected.png:
        * platform/chromium-win/fast/repaint/border-radius-repaint-expected.png:
        * platform/chromium/test_expectations.txt:

2011-06-02  Andreas Kling  <kling@webkit.org>

        Reviewed by James Robinson.

        Canvas/V8: Fix setting strokeStyle or fillStyle to a CSS system color.
        https://bugs.webkit.org/show_bug.cgi?id=61944

        * platform/chromium/test_expectations.txt: Unskip canvas/philip/tests/2d.fillStyle.parse.system.html.

2011-06-02  Dimitri Glazkov  <dglazkov@chromium.org>

        Unreviewed, rolling out r87926.
        http://trac.webkit.org/changeset/87926
        https://bugs.webkit.org/show_bug.cgi?id=60313

        Fails to find WebCoreTestSupport.dylib on bots.

        * fast/dom/Window/script-tests/window-property-descriptors.js:
        * fast/dom/Window/window-properties.html:
        * fast/dom/script-tests/prototype-inheritance-2.js:
        * fast/dom/script-tests/prototype-inheritance.js:
        * fast/harness/internals-object-expected.txt: Removed.
        * fast/harness/internals-object.html: Removed.
        * platform/gtk/Skipped:
        * platform/mac-wk2/Skipped:
        * platform/qt/Skipped:
        * platform/win/Skipped:

2011-06-02  Adam Barth  <abarth@webkit.org>

        More examples of SVG tests timing out in debug with Skia.

        * platform/chromium/test_expectations.txt:

2011-06-02  Adrienne Walker  <enne@google.com>

        [chromium] Unreviewed, rebaseline tests after r87822
        https://bugs.webkit.org/show_bug.cgi?id=60821

        * platform/chromium-gpu-mac/platform/chromium/compositing/layout-width-change-expected.png:
        * platform/chromium-gpu-win/platform/chromium/compositing/layout-width-change-expected.png:

2011-05-21  Dimitri Glazkov  <dglazkov@chromium.org>

        Reviewed by Darin Adler.

        Add build logistics and plumbing for window.internals object.
        https://bugs.webkit.org/show_bug.cgi?id=60313

        * fast/dom/Window/script-tests/window-property-descriptors.js: Added internals object to list of properties to skip.
        * fast/dom/Window/window-properties.html: Ditto.
        * fast/dom/script-tests/prototype-inheritance-2.js: Ditto.
        * fast/dom/script-tests/prototype-inheritance.js: Ditto.
        * fast/harness/internals-object-expected.txt: Added.
        * fast/harness/internals-object.html: Added.
        * platform/gtk/Skipped: Skipped the newly added test until platform supports window.internals.
        * platform/mac-wk2/Skipped: Ditto.
        * platform/qt/Skipped: Ditto.
        * platform/win/Skipped: Ditto.

2011-06-02  Dimitri Glazkov  <dglazkov@chromium.org>

        [Win] Start skipping a test that's now using shadowRoot machinery.

        * platform/win/Skipped: Skip fast/events/shadow-boundary-crossing.html, since it now uses shadowRoot accessors.

2011-06-02  John Knottenbelt  <jknotten@chromium.org>

        Unreviewed.

        [Chromium] Adjust test expectations.
        https://bugs.webkit.org/show_bug.cgi?id=61938

        * platform/chromium/test_expectations.txt:

2011-06-02  Adrienne Walker  <enne@google.com>

        [chromium] Unreviewed, rebaseline tests after r87822
        https://bugs.webkit.org/show_bug.cgi?id=60821

        * platform/chromium-gpu-linux/compositing/geometry/fixed-position-expected.png:
        * platform/chromium-gpu-linux/compositing/geometry/horizontal-scroll-composited-expected.png:
        * platform/chromium-gpu-linux/compositing/geometry/vertical-scroll-composited-expected.png:
        * platform/chromium-gpu-linux/compositing/overflow/fixed-position-ancestor-clip-expected.png:
        * platform/chromium-gpu-mac/compositing/geometry/fixed-position-expected.png:
        * platform/chromium-gpu-mac/compositing/geometry/horizontal-scroll-composited-expected.png:
        * platform/chromium-gpu-mac/compositing/geometry/vertical-scroll-composited-expected.png:
        * platform/chromium-gpu-mac/compositing/overflow/fixed-position-ancestor-clip-expected.png:
        * platform/chromium-gpu-win/compositing/geometry/fixed-position-expected.png:
        * platform/chromium-gpu-win/compositing/geometry/horizontal-scroll-composited-expected.png:
        * platform/chromium-gpu-win/compositing/geometry/vertical-scroll-composited-expected.png:
        * platform/chromium-gpu-win/compositing/overflow/fixed-position-ancestor-clip-expected.png:
        * platform/chromium/test_expectations.txt:

2011-06-02  Mario Sanchez Prada  <msanchez@igalia.com>

        Unreviewed, skipping another failing test in GTK after r87901.

        * platform/gtk/Skipped: Skipped test.

2011-06-02  Jessie Berlin  <jberlin@apple.com>

        WebKitTestRunner needs an implementation of eventSender.
        https://bugs.webkit.org/show_bug.cgi?id=42194

        Add editing/pasteboard/copy-standalone-image-crash.html to the mac-wk2 skipped list to get
        the bots green, as it uses eventSender.contextClick().

        * platform/mac-wk2/Skipped:

2011-06-02  John Knottenbelt  <jknotten@chromium.org>

        Unreviewed.

        [Chromium] Rebaseline scaling-font-with-geometric-precision and navigator-detached-no-crash.
        https://bugs.webkit.org/show_bug.cgi?id=61934

        * platform/chromium-linux-x86/svg/text/scaling-font-with-geometric-precision-expected.png:
        * platform/chromium-mac-leopard/svg/text/scaling-font-with-geometric-precision-expected.png: Added.
        * platform/chromium-mac/fast/dom/navigator-detached-no-crash-expected.txt: Added.
        * platform/chromium-win/svg/text/scaling-font-with-geometric-precision-expected.png: Added.
        * platform/chromium-win/svg/text/scaling-font-with-geometric-precision-expected.txt: Added.
        * platform/chromium/test_expectations.txt:

2011-06-02  Jessie Berlin  <jberlin@apple.com>

        WebKitTestRunner needs an implementation of setTextDirection.
        https://bugs.webkit.org/show_bug.cgi?id=61931
        
        Add fast/html/set-text-direction.html to the mac-wk2 skipped list to get the bots green.

        * platform/mac-wk2/Skipped:

2011-06-02  Mario Sanchez Prada  <msanchez@igalia.com>

        Unreviewed, skiping flaky test on GTK 32-bit Debug bot.

        * platform/gtk/Skipped: Skipped test.

2011-06-02  Igor Oliveira  <igor.oliveira@openbossa.org>

        Reviewed by Eric Seidel.

        [Qt] Rebaseline tables/mozilla/bugs/bug196870.html test after r73385
        https://bugs.webkit.org/show_bug.cgi?id=61781

        Rebaseline tables/mozilla/bugs/bug196870.html test after r73385.
        See bug #49220

        * platform/qt/Skipped:
        * platform/qt/tables/mozilla/bugs/bug196870-expected.txt:

2011-06-02  Dimitri Glazkov  <dglazkov@chromium.org>

        Reviewed by Darin Adler.

        Stop event propagation for cases where relatedTarget is both ancestor of the target and at shadow boundary.
        https://bugs.webkit.org/show_bug.cgi?id=61892

        * fast/events/shadow-boundary-crossing.html: Added a test that uses new shadow DOM testing machinery.
        * fast/events/shadow-boundary-crossing-expected.txt: Updated expectations.

2011-06-02  Mario Sanchez Prada  <msanchez@igalia.com>

        Unreviewed, skipping failing tests in GTK after r87901.

        * platform/gtk/Skipped: Skipped 2 tests.

2011-06-02  John Knottenbelt  <jknotten@chromium.org>

        Unreviewed.

        Adjust test expectations, rebaseline windows SVG wicd tests.
        https://bugs.webkit.org/show_bug.cgi?id=61929

        * platform/chromium-win/svg/wicd/rightsizing-grid-expected.png: Added.
        * platform/chromium-win/svg/wicd/rightsizing-grid-expected.txt: Added.
        * platform/chromium-win/svg/wicd/test-rightsizing-a-expected.png: Added.
        * platform/chromium-win/svg/wicd/test-rightsizing-a-expected.txt: Added.
        * platform/chromium/test_expectations.txt:

2011-06-02  John Knottenbelt  <jknotten@chromium.org>

        Unreviewed.

        Rebaseline SVG tests.
        https://bugs.webkit.org/show_bug.cgi?id=61927

        * platform/chromium-mac-leopard/svg/hixie/intrinsic/001-expected.png: Added.
        * platform/chromium-mac-leopard/svg/hixie/intrinsic/002-expected.png: Added.
        * platform/chromium-mac-leopard/svg/hixie/intrinsic/003-expected.png: Added.
        * platform/chromium-win/svg/as-image/svg-as-background-with-viewBox-expected.txt: Added.
        * platform/chromium-win/svg/dynamic-updates/SVGFEConvolveMatrixElement-dom-preserveAlpha-attr-expected.png:
        * platform/chromium-win/svg/dynamic-updates/SVGFEConvolveMatrixElement-svgdom-edgeMode-prop-expected.png:
        * platform/chromium-win/svg/dynamic-updates/SVGFEConvolveMatrixElement-svgdom-preserveAlpha-prop-expected.png:
        * platform/chromium-win/svg/hixie/intrinsic/001-expected.png: Added.
        * platform/chromium-win/svg/hixie/intrinsic/001-expected.txt: Added.
        * platform/chromium-win/svg/hixie/intrinsic/002-expected.png: Added.
        * platform/chromium-win/svg/hixie/intrinsic/002-expected.txt: Added.
        * platform/chromium-win/svg/hixie/intrinsic/003-expected.png: Added.
        * platform/chromium-win/svg/hixie/intrinsic/003-expected.txt: Added.
        * platform/chromium-win/svg/in-html/by-reference-expected.txt:
        * platform/chromium-win/svg/zoom/page/zoom-foreignObject-expected.txt:

2011-06-02  Mario Sanchez Prada  <msanchez@igalia.com>

        Unreviewed, skipped tests crashing on GTK debug bots.

        * platform/gtk/Skipped: Skipped 2 more tests crashing on GTK debug
        bots because of the same reason than before (see WK bug 61924).

2011-06-02  Rob Buis  <rbuis@rim.com>

        Reviewed by Nikolas Zimmermann.

        LayoutTests/svg/animations/animate-path-nested-transforms.html causes assertion in debug mode. 
        https://bugs.webkit.org/show_bug.cgi?id=49045

        Fix mistake in id part of expected values.

        * svg/animations/script-tests/animate-mpath-insert.js:
        (executeTest):
        * svg/animations/script-tests/animate-path-nested-transforms.js:
        (executeTest):

2011-06-02  Kent Tamura  <tkent@chromium.org>

        [Chromium] Update spinbutton expectations.

        * platform/chromium/test_expectations.txt:

2011-06-02  Mario Sanchez Prada  <msanchez@igalia.com>

        Unreviewed, skipped tests crashing on GTK debug bots.

        * platform/gtk/Skipped: Skipped 9 more tests crashing on GTK debug
        bots because of the same reason than before (see WK bug 61924).

2011-06-02  Mario Sanchez Prada  <msanchez@igalia.com>

        Unreviewed, skipped tests crashing on GTK debug bots.

        * platform/gtk/Skipped: Skipped 7 tests crashing, apparently all
        of them crash because of the same reason (see WK bug 61924).

2011-06-02  John Knottenbelt  <jknotten@chromium.org>

        Unreviewed.

        [Chromium] Adjust test expectations.
        https://bugs.webkit.org/show_bug.cgi?id=61922

        * platform/chromium/test_expectations.txt:

2011-06-02  Naiem Shaik  <naiem.shaik@gmail.com>

        Reviewed by Kent Tamura.

        Fixing invalid value being returned for default checkbox and radio state
        https://bugs.webkit.org/show_bug.cgi?id=61674

        As per http://www.w3.org/TR/html5/number-state.html#checkbox-state and
        http://www.w3.org/TR/html5/number-state.html#radio-button-state:
        The value IDL attribute is in mode default/on:
        If the element has a value attribute, it must return that attribute's
        value; otherwise, it must return the string "on".
        Currently default value is empty string;Default value of Radio button
        and checkbox should be "on"
        This works as per spec in IE9,Firefox and Opera

        * fast/forms/checkbox-default-value-expected.txt: Added.
        * fast/forms/checkbox-default-value.html: Added.
        * fast/forms/radio-default-value-expected.txt: Added.
        * fast/forms/radio-default-value.html: Added.

2011-06-02  Mario Sanchez Prada  <msanchez@igalia.com>

        Unreviewed, skipped test timing out for GTK since r87605.

        * platform/gtk/Skipped: Skipped test.

2011-06-02  Mario Sanchez Prada  <msanchez@igalia.com>

        Unreviewed, added missing new baselines for GTK after r87779.

        * platform/gtk/svg/hixie/intrinsic/002-expected.png: Added.
        * platform/gtk/svg/hixie/intrinsic/002-expected.txt: Added.

2011-06-02  Mario Sanchez Prada  <msanchez@igalia.com>

	Unreviewed, new GTK baselines after r87807, r87829, r87840 and r87846.

        * platform/gtk/svg/as-image/svg-as-background-with-relative-size-expected.png: Added.
        * platform/gtk/svg/as-image/svg-as-background-with-relative-size-expected.txt: Added.
        * platform/gtk/svg/as-image/svg-as-background-with-viewBox-expected.png: Added.
        * platform/gtk/svg/as-image/svg-as-background-with-viewBox-expected.txt: Added.
        * platform/gtk/svg/custom/embedding-external-svgs-expected.png: Added.
        * platform/gtk/svg/custom/embedding-external-svgs-expected.txt: Added.
        * platform/gtk/svg/text/scaling-font-with-geometric-precision-expected.png: Added.
        * platform/gtk/svg/text/scaling-font-with-geometric-precision-expected.txt: Added.

2011-06-02  Mario Sanchez Prada  <msanchez@igalia.com>

        Unreviewed, skipped SVG tests randomly failing with 16px diff.

        * platform/gtk/Skipped: Skipped tests.

2011-06-02  Mario Sanchez Prada  <msanchez@igalia.com>

        Update GTK expectations because the position of steppers are moved.

        * platform/gtk/fast/forms/input-appearance-spinbutton-disabled-readonly-expected.txt:
        * platform/gtk/fast/forms/input-appearance-spinbutton-layer-expected.txt:
        * platform/gtk/fast/forms/input-appearance-spinbutton-visibility-expected.txt:

2011-06-02  John Knottenbelt  <jknotten@chromium.org>

        Unreviewed.

        [Chromium] Update baselines for Windows 7 platform.
        https://bugs.webkit.org/show_bug.cgi?id=61916

        * platform/chromium-win/fast/borders/border-antialiasing-expected.png: Added.
        * platform/chromium-win/fast/borders/border-antialiasing-expected.txt: Added.
        * platform/chromium-win/fast/forms/validation-message-appearance-expected.png:
        * platform/chromium-win/fast/forms/validation-message-appearance-expected.txt:
        * platform/chromium-win/fast/gradients/css3-linear-right-angle-gradients-expected.png: Added.
        * platform/chromium-win/fast/gradients/css3-repeating-linear-gradients2-expected.png: Added.
        * platform/chromium-win/fullscreen/full-screen-iframe-zIndex-expected.png: Added.
        * platform/chromium-win/http/tests/misc/object-embedding-svg-delayed-size-negotiation-expected.png: Added.
        * platform/chromium-win/http/tests/misc/object-embedding-svg-delayed-size-negotiation-expected.txt: Added.
        * platform/chromium-win/svg/W3C-SVG-1.1-SE/painting-marker-07-f-expected.png: Added.
        * platform/chromium-win/svg/W3C-SVG-1.1-SE/painting-marker-07-f-expected.txt: Added.
        * platform/chromium-win/svg/as-image/svg-as-background-with-relative-size-expected.png: Added.
        * platform/chromium-win/svg/as-image/svg-as-background-with-relative-size-expected.txt: Added.
        * platform/chromium-win/svg/custom/embedding-external-svgs-expected.png: Added.
        * platform/chromium-win/svg/custom/embedding-external-svgs-expected.txt: Added.
        * platform/chromium-win/svg/custom/invalid-fill-expected.png:
        * platform/chromium-win/svg/custom/invalid-fill-expected.txt:
        * platform/chromium-win/svg/custom/invalid-fill-hex-expected.png:
        * platform/chromium-win/svg/custom/invalid-fill-hex-expected.txt:
        * platform/chromium-win/svg/custom/invalid-stroke-hex-expected.png: Added.
        * platform/chromium-win/svg/custom/invalid-stroke-hex-expected.txt: Added.
        * platform/chromium-win/svg/custom/invalid-uri-stroke-expected.png: Added.
        * platform/chromium-win/svg/custom/invalid-uri-stroke-expected.txt: Added.
        * platform/chromium-win/svg/custom/object-no-size-attributes-expected.txt: Added.
        * platform/chromium-win/svg/custom/object-sizing-expected.png: Added.
        * platform/chromium-win/svg/custom/object-sizing-expected.txt: Added.
        * platform/chromium-win/svg/custom/object-sizing-explicit-width-height-expected.png: Added.
        * platform/chromium-win/svg/custom/object-sizing-explicit-width-height-expected.txt: Added.
        * platform/chromium-win/svg/custom/object-sizing-height-50p-on-target-svg-absolute-expected.png: Added.
        * platform/chromium-win/svg/custom/object-sizing-height-50p-on-target-svg-absolute-expected.txt: Added.
        * platform/chromium-win/svg/custom/object-sizing-height-50p-on-target-svg-expected.png: Added.
        * platform/chromium-win/svg/custom/object-sizing-height-50p-on-target-svg-expected.txt: Added.
        * platform/chromium-win/svg/custom/object-sizing-no-width-height-change-content-box-size-expected.png: Added.
        * platform/chromium-win/svg/custom/object-sizing-no-width-height-expected.png: Added.
        * platform/chromium-win/svg/custom/object-sizing-no-width-height-expected.txt: Added.
        * platform/chromium-win/svg/custom/object-sizing-width-50p-height-50p-on-target-svg-absolute-expected.png: Added.
        * platform/chromium-win/svg/custom/object-sizing-width-50p-height-50p-on-target-svg-absolute-expected.txt: Added.
        * platform/chromium-win/svg/custom/object-sizing-width-50p-height-50p-on-target-svg-expected.png: Added.
        * platform/chromium-win/svg/custom/object-sizing-width-50p-height-50p-on-target-svg-expected.txt: Added.
        * platform/chromium-win/svg/custom/object-sizing-width-50p-height-75p-on-target-svg-absolute-expected.png: Added.
        * platform/chromium-win/svg/custom/object-sizing-width-50p-height-75p-on-target-svg-absolute-expected.txt: Added.
        * platform/chromium-win/svg/custom/object-sizing-width-50p-height-75p-on-target-svg-expected.png: Added.
        * platform/chromium-win/svg/custom/object-sizing-width-50p-height-75p-on-target-svg-expected.txt: Added.
        * platform/chromium-win/svg/custom/object-sizing-width-50p-on-target-svg-absolute-expected.png: Added.
        * platform/chromium-win/svg/custom/object-sizing-width-50p-on-target-svg-absolute-expected.txt: Added.
        * platform/chromium-win/svg/custom/object-sizing-width-50p-on-target-svg-expected.png: Added.
        * platform/chromium-win/svg/custom/object-sizing-width-50p-on-target-svg-expected.txt: Added.
        * platform/chromium-win/svg/custom/object-sizing-width-75p-height-50p-on-target-svg-absolute-expected.png: Added.
        * platform/chromium-win/svg/custom/object-sizing-width-75p-height-50p-on-target-svg-absolute-expected.txt: Added.
        * platform/chromium-win/svg/custom/object-sizing-width-75p-height-50p-on-target-svg-expected.png: Added.
        * platform/chromium-win/svg/custom/object-sizing-width-75p-height-50p-on-target-svg-expected.txt: Added.
        * platform/chromium-win/svg/custom/small-rect-scale-expected.png: Added.
        * platform/chromium-win/svg/dynamic-updates/SVGFEConvolveMatrixElement-dom-bias-attr-expected.png:
        * platform/chromium-win/svg/dynamic-updates/SVGFEConvolveMatrixElement-dom-divisor-attr-expected.png:
        * platform/chromium-win/svg/dynamic-updates/SVGFEConvolveMatrixElement-dom-edgeMode-attr-expected.png:
        * platform/chromium-win/svg/dynamic-updates/SVGFEConvolveMatrixElement-dom-in-attr-expected.png:
        * platform/chromium-win/svg/dynamic-updates/SVGFEConvolveMatrixElement-dom-kernelMatrix-attr-expected.png:
        * platform/chromium-win/svg/dynamic-updates/SVGFEConvolveMatrixElement-dom-kernelUnitLength-attr-expected.png:
        * platform/chromium-win/svg/dynamic-updates/SVGFEConvolveMatrixElement-dom-order-attr-expected.png:
        * platform/chromium-win/svg/dynamic-updates/SVGFEConvolveMatrixElement-dom-targetX-attr-expected.png:
        * platform/chromium-win/svg/dynamic-updates/SVGFEConvolveMatrixElement-svgdom-bias-prop-expected.png:
        * platform/chromium-win/svg/dynamic-updates/SVGFEConvolveMatrixElement-svgdom-divisor-prop-expected.png:
        * platform/chromium-win/svg/dynamic-updates/SVGFEConvolveMatrixElement-svgdom-in-prop-expected.png:
        * platform/chromium-win/svg/dynamic-updates/SVGFEConvolveMatrixElement-svgdom-kernelMatrix-prop-expected.png:
        * platform/chromium-win/svg/dynamic-updates/SVGFEConvolveMatrixElement-svgdom-kernelUnitLength-prop-expected.png:
        * platform/chromium-win/svg/dynamic-updates/SVGFEConvolveMatrixElement-svgdom-order-prop-expected.png:
        * platform/chromium-win/svg/dynamic-updates/SVGFEConvolveMatrixElement-svgdom-targetX-prop-expected.png:
        * platform/chromium-win/svg/dynamic-updates/SVGTextElement-svgdom-lengthAdjust-prop-expected.png:
        * platform/chromium-win/svg/filters/feBlend-invalid-mode-expected.txt: Added.
        * platform/chromium-win/svg/filters/feConvolveFilter-y-bounds-expected.png: Added.

2011-06-02  Mario Sanchez Prada  <msanchez@igalia.com>

        Unreviewed, skipped test with 1px different results in GTK bots.

        * platform/gtk/Skipped: Skipped test.

2011-06-02  Yuta Kitamura  <yutak@chromium.org>

        Reviewed by Kent Tamura.

        WebSocket: Call WebSocketChannel::fail() when WebSocketHandshake has failed
        https://bugs.webkit.org/show_bug.cgi?id=61841

        * http/tests/websocket/tests/bad-handshake-crash-expected.txt:
        Now the error message starts with a capital letter.

2011-06-01  Kent Tamura  <tkent@chromium.org>

        Reviewed by Dimitri Glazkov.

        Remove outer-spin-button
        https://bugs.webkit.org/show_bug.cgi?id=61845

        Update Mac expectations because the position of steppers are moved.

        * platform/chromium/test_expectations.txt:
        * platform/mac/fast/forms/input-appearance-spinbutton-disabled-readonly-expected.png:
        * platform/mac/fast/forms/input-appearance-spinbutton-disabled-readonly-expected.txt:
        * platform/mac/fast/forms/input-appearance-spinbutton-expected.png:
        * platform/mac/fast/forms/input-appearance-spinbutton-expected.txt:
        * platform/mac/fast/forms/input-appearance-spinbutton-layer-expected.png:
        * platform/mac/fast/forms/input-appearance-spinbutton-layer-expected.txt:
        * platform/mac/fast/forms/input-appearance-spinbutton-up-expected.png:
        * platform/mac/fast/forms/input-appearance-spinbutton-up-expected.txt:
        * platform/mac/fast/forms/input-appearance-spinbutton-visibility-expected.png:
        * platform/mac/fast/forms/input-appearance-spinbutton-visibility-expected.txt:

2011-06-01  Adam Barth  <abarth@webkit.org>

        There seems to be something odd about registerProtocolHandler on Mac.
        The "no-crash" seems to "pass" because the test does not crash, where
        as the "register-protocol-handler" test fails, apparently due to the
        API being disabled.

        * platform/chromium/test_expectations.txt:
        * platform/mac-leopard/fast/dom/navigator-detached-no-crash-expected.txt: Removed.
        * platform/mac/fast/dom/navigator-detached-no-crash-expected.txt: Copied from LayoutTests/platform/mac-leopard/fast/dom/navigator-detached-no-crash-expected.txt.
            - This expectation file is misplaced.

2011-06-01  Adam Barth  <abarth@webkit.org>

        Now that this test doesn't time out, we can see that it fails.  That's
        progress, of a sort.

        * platform/chromium/test_expectations.txt:

2011-06-01  Adam Barth  <abarth@webkit.org>

        Move expected result to the correct location.  The script put it in the
        wrong location.

        * platform/chromium-mac/fast/js/property-getters-and-setters-expected.txt: Removed.
        * platform/chromium-win/fast/js/property-getters-and-setters-expected.txt: Removed.
        * platform/chromium/fast/js/property-getters-and-setters-expected.txt: Copied from LayoutTests/platform/chromium-mac/fast/js/property-getters-and-setters-expected.txt.

2011-06-01  Adam Barth  <abarth@webkit.org>

        These test time out on debug, probably because drop shadows are slow in debug skia.

        * platform/chromium/test_expectations.txt:

2011-06-01  Julien Chaffraix  <jchaffraix@codeaurora.org>

        Reviewed by Simon Fraser.

        CSSStyleSheet#insertRule doesn't work well with imported stylesheets
        https://bugs.webkit.org/show_bug.cgi?id=56981

        Test that a combination of insertRule and @import works properly.

        * fast/css/import-and-insert-rule-no-update-expected.txt: Added.
        * fast/css/import-and-insert-rule-no-update.html: Added.
        * fast/css/resources/red.css: Added.
        (div):
        * fast/css/resources/redimport.css: Added.

2011-06-01  Abhishek Arya  <inferno@chromium.org>

        Reviewed by Alexey Proskuryakov.

        Tests setting document.body to non body elements, elements in other
        documents.
        https://bugs.webkit.org/show_bug.cgi?id=60831

        * fast/dom/document-set-body-expected.txt: Added.
        * fast/dom/document-set-body.html: Added.

2011-06-01  Adam Barth  <abarth@webkit.org>

        Add Windows baseline for this new test.

        * platform/chromium-win-vista/svg/text/scaling-font-with-geometric-precision-expected.png: Added.
        * platform/chromium-win-vista/svg/text/scaling-font-with-geometric-precision-expected.txt: Added.

2011-06-01  Adam Barth  <abarth@webkit.org>

        Update image baselines for these drop shadows.  They differ from each
        other only by minor rendering differences in the shadow.

        * platform/chromium-linux-x86/svg/dynamic-updates/SVGFEDropShadowElement-dom-shadow-color-attr-expected.png: Added.
        * platform/chromium-linux-x86/svg/dynamic-updates/SVGFEDropShadowElement-dom-shadow-opacity-attr-expected.png: Added.
        * platform/chromium-linux-x86/svg/dynamic-updates/SVGFEDropShadowElement-svgdom-shadow-color-prop-expected.png: Added.
        * platform/chromium-linux-x86/svg/dynamic-updates/SVGFEDropShadowElement-svgdom-shadow-opacity-prop-expected.png: Added.
        * platform/chromium-linux-x86/svg/filters/feDropShadow-expected.png: Added.
        * platform/chromium-linux/svg/dynamic-updates/SVGFEDropShadowElement-dom-shadow-color-attr-expected.png:
        * platform/chromium-linux/svg/dynamic-updates/SVGFEDropShadowElement-dom-shadow-opacity-attr-expected.png:
        * platform/chromium-linux/svg/dynamic-updates/SVGFEDropShadowElement-svgdom-shadow-color-prop-expected.png:
        * platform/chromium-linux/svg/dynamic-updates/SVGFEDropShadowElement-svgdom-shadow-opacity-prop-expected.png:
        * platform/chromium-linux/svg/filters/feDropShadow-expected.png:
        * platform/chromium-mac-leopard/svg/dynamic-updates/SVGFEDropShadowElement-dom-shadow-color-attr-expected.png:
        * platform/chromium-mac-leopard/svg/dynamic-updates/SVGFEDropShadowElement-dom-shadow-opacity-attr-expected.png:
        * platform/chromium-mac-leopard/svg/dynamic-updates/SVGFEDropShadowElement-svgdom-shadow-color-prop-expected.png:
        * platform/chromium-mac-leopard/svg/dynamic-updates/SVGFEDropShadowElement-svgdom-shadow-opacity-prop-expected.png:
        * platform/chromium-mac-leopard/svg/filters/feDropShadow-expected.png:
        * platform/chromium-mac/svg/dynamic-updates/SVGFEDropShadowElement-dom-shadow-color-attr-expected.png:
        * platform/chromium-mac/svg/dynamic-updates/SVGFEDropShadowElement-dom-shadow-opacity-attr-expected.png:
        * platform/chromium-mac/svg/dynamic-updates/SVGFEDropShadowElement-svgdom-shadow-color-prop-expected.png:
        * platform/chromium-mac/svg/dynamic-updates/SVGFEDropShadowElement-svgdom-shadow-opacity-prop-expected.png:
        * platform/chromium-mac/svg/filters/feDropShadow-expected.png:
        * platform/chromium-win/svg/dynamic-updates/SVGFEDropShadowElement-dom-shadow-color-attr-expected.png:
        * platform/chromium-win/svg/dynamic-updates/SVGFEDropShadowElement-dom-shadow-opacity-attr-expected.png:
        * platform/chromium-win/svg/dynamic-updates/SVGFEDropShadowElement-svgdom-shadow-color-prop-expected.png:
        * platform/chromium-win/svg/dynamic-updates/SVGFEDropShadowElement-svgdom-shadow-opacity-prop-expected.png:
        * platform/chromium-win/svg/filters/feDropShadow-expected.png:
        * platform/chromium/test_expectations.txt:

2011-06-01  Jochen Eisinger  <jochen@chromium.org>

        Reviewed by Adam Barth.

        Add a test for FrameLoaderClient::allowImages
        https://bugs.webkit.org/show_bug.cgi?id=34314

        * platform/chromium/permissionclient/image-permissions-expected.txt: Added.
        * platform/chromium/permissionclient/image-permissions.html: Added.
        * platform/chromium/permissionclient/resources/boston.gif: Added.
        * platform/chromium/permissionclient/resources/image.html: Added.

2011-06-01  Adam Barth  <abarth@webkit.org>

        These tests no longer time out.  Yay!

        * platform/chromium/test_expectations.txt:

2011-06-01  Adam Barth  <abarth@webkit.org>

        Update expected results to match V8 rather than JSC.

        * platform/chromium-mac/fast/js/property-getters-and-setters-expected.txt:

2011-06-01  Noel Gordon  <noel.gordon@gmail.com>

        Reviewed by Tony Chang.

        Test plugin should support event logging on the windows port.
        https://bugs.webkit.org/show_bug.cgi?id=61721

        * platform/chromium-win/plugins/keyboard-events-expected.txt:  New windows result.
        * platform/chromium/test_expectations.txt:  New expectations.
        * plugins/keyboard-events.html:  Add attribute windowPlugin="false" to force the
        Chromium windows port to load the test plugin in windowless mode. The plugin will
        then receive events and can log them to the console as required by this test.
        * plugins/mouse-events.html:  Ditto.

2011-06-01  Adam Barth  <abarth@webkit.org>

        ... and finally Windows.

        * platform/chromium-win-vista/fullscreen/full-screen-zIndex-after-expected.png: Added.

2011-06-01  David Carson  <dacarson@apple.com>

        Reviewed by Antti Koivisto.

        Don't flatten frames that have a zero size.
        https://bugs.webkit.org/show_bug.cgi?id=61831

        This tests creates an iframe that has a width and height of zero
        and ensures that the iframe is not flattened to the size of the
        containing content.

        * fast/frames/flattening/iframe-flattening-fixed-width-and-height-zero-size.html: Added.
        * fast/frames/flattening/iframe-flattening-fixed-width-and-height-zero-size-expected.txt: Added.

2011-06-01  Adam Barth  <abarth@webkit.org>

        Linux image baselines for this new test.  Leviw confirms that this results are correct.

        * platform/chromium-linux-x86/svg/text: Added.
        * platform/chromium-linux-x86/svg/text/scaling-font-with-geometric-precision-expected.png: Added.
        * platform/chromium-linux-x86/svg/text/scaling-font-with-geometric-precision-expected.txt: Added.
        * platform/chromium-linux/svg/text/scaling-font-with-geometric-precision-expected.png: Added.
        * platform/chromium-linux/svg/text/scaling-font-with-geometric-precision-expected.txt: Added.

2011-06-01  Adam Barth  <abarth@webkit.org>

        Image baselines for this new test.

        * platform/chromium-linux-x86/fullscreen/full-screen-zIndex-after-expected.png: Added.
        * platform/chromium-linux/fullscreen/full-screen-zIndex-after-expected.png: Added.
        * platform/chromium-mac/fullscreen/full-screen-zIndex-after-expected.png: Added.

2011-06-01  Adam Barth  <abarth@webkit.org>

        ... and now Windows results.

        * platform/chromium-win-vista/svg/custom/embedding-external-svgs-expected.png: Added.
        * platform/chromium-win-vista/svg/custom/embedding-external-svgs-expected.txt: Added.

2011-06-01  Daniel Cheng  <dcheng@chromium.org>

        Reviewed by Tony Chang.

        [chromium] Use correct file name for dragging out images.
        https://bugs.webkit.org/show_bug.cgi?id=24887

        * fast/events/drag-image-filename-expected.txt: Added.
        * fast/events/drag-image-filename.html: Added.
        * platform/gtk/Skipped:
        * platform/mac/Skipped:
        * platform/qt/Skipped:
        * platform/win/Skipped:

2011-06-01  Levi Weintraub  <leviw@chromium.org>

        Reviewed by Eric Seidel.

        Text is scaled in a stair-step pattern
        https://bugs.webkit.org/show_bug.cgi?id=60317

        Stop scaling the specified font to the actual on-screen value when font-rendering: 
        geometricPrecision is specified, but instead scale the graphics context. This allows
        us to scale text up and down smoothly.

        * platform/mac/svg/text/scaling-font-with-geometric-precision-expected.png: Added.
        * platform/mac/svg/text/scaling-font-with-geometric-precision-expected.txt: Added.
        * svg/text/scaling-font-with-geometric-precision.html: Added.

2011-06-01  Jer Noble  <jer.noble@apple.com>

        Reviewed by Darin Adler.

        Page layout messed up after exiting full screen at Apple trailers page
        https://bugs.webkit.org/show_bug.cgi?id=61755

        * fullscreen/full-screen-zIndex-after-expected.txt: Added.
        * fullscreen/full-screen-zIndex-after.html: Added.
        * platform/mac/fullscreen/full-screen-zIndex-after-expected.png: Added.

2011-06-01  Adam Barth  <abarth@webkit.org>

        Image baselines for this test.  More to follow once the bots catch up.

        * platform/chromium-linux-x86/svg/custom/embedding-external-svgs-expected.png: Added.
        * platform/chromium-linux-x86/svg/custom/embedding-external-svgs-expected.txt: Added.
        * platform/chromium-linux/svg/custom/embedding-external-svgs-expected.png: Added.
        * platform/chromium-linux/svg/custom/embedding-external-svgs-expected.txt: Added.

2011-06-01  Adam Barth  <abarth@webkit.org>

        Image baselines for these platforms.

        * platform/chromium-linux-x86/svg/as-image/svg-as-background-with-relative-size-expected.png: Added.
        * platform/chromium-linux-x86/svg/as-image/svg-as-background-with-relative-size-expected.txt: Added.
        * platform/chromium-linux/svg/as-image/svg-as-background-with-relative-size-expected.png: Added.
        * platform/chromium-linux/svg/as-image/svg-as-background-with-relative-size-expected.txt: Added.
        * platform/chromium-win-vista/svg/as-image/svg-as-background-with-relative-size-expected.png: Added.
        * platform/chromium-win-vista/svg/as-image/svg-as-background-with-relative-size-expected.txt: Added.

2011-06-01  Nikolas Zimmermann  <nzimmermann@rim.com>

        Reviewed by Rob Buis.

        SVG graphics do not actually work in IMG tags or as background-image properties
        https://bugs.webkit.org/show_bug.cgi?id=18228

        Adding the nice testcase from the bug 18228, all issues are fully resolved now.

        * platform/mac/svg/custom/embedding-external-svgs-expected.png: Added.
        * platform/mac/svg/custom/embedding-external-svgs-expected.txt: Added.
        * svg/custom/embedding-external-svgs.xhtml: Added.
        * svg/custom/resources/spinner.svg: Added.

2011-06-01  Adam Barth  <abarth@webkit.org>

        Add new results for this new test.  Our results are different by one
        pixel.  Mac results likely to follow once those bots catch up.

        * platform/chromium-linux-x86/svg/as-image: Added.
        * platform/chromium-linux-x86/svg/as-image/svg-as-background-with-viewBox-expected.txt: Added.
        * platform/chromium-linux/svg/as-image/svg-as-background-with-viewBox-expected.txt: Added.
        * platform/chromium-win-vista/svg/as-image: Added.
        * platform/chromium-win-vista/svg/as-image/svg-as-background-with-viewBox-expected.txt: Added.

2011-06-01  Ryosuke Niwa  <rniwa@webkit.org>

        Skip editing/pasteboard/drag-drop-list.html on GTK after r87778
        since smart paste isn't supported by GTK (tracked by the bug 61661).

        * platform/gtk/Skipped:

2011-06-01  Annie Sullivan  <sullivan@chromium.org>

        Reviewed by Ryosuke Niwa.

        LayoutTests/editing/pasteboard/drag-drop-list fails on webkit2
        https://bugs.webkit.org/show_bug.cgi?id=61871

        Renames editing/pasteboard/4861080.html to drag-drop-list.html, since it was renamed in r87778. 

        * platform/mac-wk2/Skipped:
        * platform/qt-wk2/Skipped:

2011-06-01  Nikolas Zimmermann  <nzimmermann@rim.com>

        Reviewed by Eric Seidel.

        Permanent red background when SVG is used as a background image (DEBUG ONLY)
        https://bugs.webkit.org/show_bug.cgi?id=16518

        The problem seems gone, I can't reproduce it anymore, add Beths test to svg/as-image.

        * platform/mac/svg/as-image/svg-as-background-with-relative-size-expected.png: Added.
        * platform/mac/svg/as-image/svg-as-background-with-relative-size-expected.txt: Added.
        * svg/as-image/resources/svg-as-background-with-relative-size.svg: Added.
        * svg/as-image/svg-as-background-with-relative-size.html: Added.

2011-05-31  Oliver Hunt  <oliver@apple.com>

        Reviewed by Geoffrey Garen.

        Freezing a function and its prototype causes browser to crash.
        https://bugs.webkit.org/show_bug.cgi?id=61758

        Add test to ensure correct behaviour

        * fast/js/preventExtensions-expected.txt:
        * fast/js/script-tests/preventExtensions.js:
        (f):

2011-05-19  Adrienne Walker  <enne@google.com>

        Reviewed by James Robinson.

        [chromium] Don't split long, narrow layers into multiple tiles.
        https://bugs.webkit.org/show_bug.cgi?id=60821

        These tests have imperceptible pixel changes on horizontal scrollbars
        as a result of this patch.  Marking them as failing temporarily so
        that they can be rebaselined.

        * platform/chromium/test_expectations.txt:

2011-06-01  Steve Lacey  <sjl@chromium.org>

        Reviewed by Eric Carlson.

        Remove layout test http/tests/media/video-seekable-stall

        http/tests/media/video-seekable-stall.html fails on the Leopard Commit Queue Machine
        https://bugs.webkit.org/show_bug.cgi?id=35271

        * http/tests/media/video-seekable-stall-expected.txt: Removed.
        * http/tests/media/video-seekable-stall.html: Removed.
        * platform/chromium-linux/http/tests/media/video-seekable-stall-expected.png: Removed.
        * platform/chromium-win/http/tests/media/video-seekable-stall-expected.png: Removed.
        * platform/chromium/test_expectations.txt:
        * platform/gtk/Skipped:
        * platform/mac-snowleopard/Skipped:
        * platform/win/Skipped:

2011-06-01  Mario Sanchez Prada  <msanchez@igalia.com>

        Unreviewed, added new baselines for GTK after r87779.

        * platform/gtk/svg/custom/object-sizing-height-50p-on-target-svg-absolute-expected.png: Added.
        * platform/gtk/svg/custom/object-sizing-height-50p-on-target-svg-absolute-expected.txt: Added.
        * platform/gtk/svg/custom/object-sizing-height-50p-on-target-svg-expected.png: Added.
        * platform/gtk/svg/custom/object-sizing-height-50p-on-target-svg-expected.txt: Added.
        * platform/gtk/svg/custom/object-sizing-width-50p-height-50p-on-target-svg-absolute-expected.png: Added.
        * platform/gtk/svg/custom/object-sizing-width-50p-height-50p-on-target-svg-absolute-expected.txt: Added.
        * platform/gtk/svg/custom/object-sizing-width-50p-height-50p-on-target-svg-expected.png: Added.
        * platform/gtk/svg/custom/object-sizing-width-50p-height-50p-on-target-svg-expected.txt: Added.
        * platform/gtk/svg/custom/object-sizing-width-50p-height-75p-on-target-svg-absolute-expected.png: Added.
        * platform/gtk/svg/custom/object-sizing-width-50p-height-75p-on-target-svg-absolute-expected.txt: Added.
        * platform/gtk/svg/custom/object-sizing-width-50p-height-75p-on-target-svg-expected.png: Added.
        * platform/gtk/svg/custom/object-sizing-width-50p-height-75p-on-target-svg-expected.txt: Added.
        * platform/gtk/svg/custom/object-sizing-width-50p-on-target-svg-absolute-expected.png: Added.
        * platform/gtk/svg/custom/object-sizing-width-50p-on-target-svg-absolute-expected.txt: Added.
        * platform/gtk/svg/custom/object-sizing-width-50p-on-target-svg-expected.png: Added.
        * platform/gtk/svg/custom/object-sizing-width-50p-on-target-svg-expected.txt: Added.
        * platform/gtk/svg/custom/object-sizing-width-75p-height-50p-on-target-svg-absolute-expected.png: Added.
        * platform/gtk/svg/custom/object-sizing-width-75p-height-50p-on-target-svg-absolute-expected.txt: Added.
        * platform/gtk/svg/custom/object-sizing-width-75p-height-50p-on-target-svg-expected.png: Added.
        * platform/gtk/svg/custom/object-sizing-width-75p-height-50p-on-target-svg-expected.txt: Added.
        * platform/gtk/svg/hixie/intrinsic/001-expected.png: Added.
        * platform/gtk/svg/hixie/intrinsic/001-expected.txt: Added.
        * platform/gtk/svg/hixie/intrinsic/003-expected.png: Added.
        * platform/gtk/svg/hixie/intrinsic/003-expected.txt: Added.

2011-06-01  Adam Barth  <abarth@webkit.org>

        Add baselines for these tests.

        * platform/chromium-linux-x86/svg/custom/object-sizing-height-50p-on-target-svg-absolute-expected.png: Added.
        * platform/chromium-linux-x86/svg/custom/object-sizing-height-50p-on-target-svg-absolute-expected.txt: Added.
        * platform/chromium-linux/svg/custom/object-sizing-height-50p-on-target-svg-absolute-expected.png: Added.
        * platform/chromium-linux/svg/custom/object-sizing-height-50p-on-target-svg-absolute-expected.txt: Added.
        * platform/chromium-win-vista/svg/custom/object-sizing-height-50p-on-target-svg-absolute-expected.png: Added.
        * platform/chromium-win-vista/svg/custom/object-sizing-height-50p-on-target-svg-absolute-expected.txt: Added.

2011-06-01  Mario Sanchez Prada  <msanchez@igalia.com>

        Unreviewed, added new baseline for GTK after r87726.

        * platform/gtk/fast/frames/flattening/iframe-flattening-nested-expected.txt: Added.
        * platform/gtk/fast/frames/flattening/iframe-flattening-nested-expected.png: Added.

2011-06-01  Mario Sanchez Prada  <msanchez@igalia.com>

        Unreviewed, added new baselines for GTK after r87721.

        * platform/gtk/svg/custom/invalid-stroke-hex-expected.txt: Added.
        * platform/gtk/svg/custom/invalid-stroke-hex-expected.png: Added.
        * platform/gtk/svg/custom/invalid-uri-stroke-expected.txt: Added.
        * platform/gtk/svg/custom/invalid-uri-stroke-expected.png: Added.

2011-06-01  Mario Sanchez Prada  <msanchez@igalia.com>

        Unreviewed, added new baseline for GTK after r87680.

        * platform/gtk/svg/filters/feConvolveFilter-y-bounds-expected.txt: Added.
        * platform/gtk/svg/filters/feConvolveFilter-y-bounds-expected.png: Added.

2011-06-01  Mario Sanchez Prada  <msanchez@igalia.com>

        Unreviewed, added new baseline for GTK after r87605.

        * platform/gtk/svg/wicd/test-scalable-background-image2-expected.txt: Added.
        * platform/gtk/svg/wicd/test-scalable-background-image2-expected.png: Added.

2011-06-01  Mario Sanchez Prada  <msanchez@igalia.com>

        Unreviewed, added new baselines for GTK after r87526.

        * platform/gtk/http/tests/misc/object-embedding-svg-delayed-size-negotiation-expected.png: Added.
        * platform/gtk/http/tests/misc/object-embedding-svg-delayed-size-negotiation-expected.txt: Added.
        * platform/gtk/svg/custom/object-no-size-attributes-expected.png: Added.
        * platform/gtk/svg/custom/object-no-size-attributes-expected.txt: Added.
        * platform/gtk/svg/custom/object-sizing-expected.png: Added.
        * platform/gtk/svg/custom/object-sizing-expected.txt: Added.
        * platform/gtk/svg/custom/object-sizing-explicit-height-expected.png: Added.
        * platform/gtk/svg/custom/object-sizing-explicit-height-expected.txt: Added.
        * platform/gtk/svg/custom/object-sizing-explicit-width-expected.png: Added.
        * platform/gtk/svg/custom/object-sizing-explicit-width-expected.txt: Added.
        * platform/gtk/svg/custom/object-sizing-explicit-width-height-expected.png: Added.
        * platform/gtk/svg/custom/object-sizing-explicit-width-height-expected.txt: Added.
        * platform/gtk/svg/custom/object-sizing-no-width-height-change-content-box-size-expected.png: Added.
        * platform/gtk/svg/custom/object-sizing-no-width-height-change-content-box-size-expected.txt: Added.
        * platform/gtk/svg/custom/object-sizing-no-width-height-expected.png: Added.
        * platform/gtk/svg/custom/object-sizing-no-width-height-expected.txt: Added.
        * platform/gtk/svg/wicd/rightsizing-grid-expected.png: Added.
        * platform/gtk/svg/wicd/rightsizing-grid-expected.txt: Added.
        * platform/gtk/svg/wicd/test-rightsizing-a-expected.png: Added.
        * platform/gtk/svg/wicd/test-rightsizing-a-expected.txt: Added.
        * platform/gtk/svg/wicd/test-rightsizing-b-expected.png: Added.
        * platform/gtk/svg/wicd/test-rightsizing-b-expected.txt: Added.
        * platform/gtk/svg/zoom/page/zoom-svg-through-object-with-absolute-size-2-expected.png: Added.
        * platform/gtk/svg/zoom/page/zoom-svg-through-object-with-absolute-size-2-expected.txt: Added.
        * platform/gtk/svg/zoom/page/zoom-svg-through-object-with-absolute-size-expected.png: Added.
        * platform/gtk/svg/zoom/page/zoom-svg-through-object-with-absolute-size-expected.txt: Added.
        * platform/gtk/svg/zoom/page/zoom-svg-through-object-with-huge-size-expected.png: Added.
        * platform/gtk/svg/zoom/page/zoom-svg-through-object-with-huge-size-expected.txt: Added.
        * platform/gtk/svg/zoom/page/zoom-svg-through-object-with-override-size-expected.png: Added.
        * platform/gtk/svg/zoom/page/zoom-svg-through-object-with-override-size-expected.txt: Added.
        * platform/gtk/svg/zoom/page/zoom-svg-through-object-with-percentage-size-expected.png: Added.
        * platform/gtk/svg/zoom/page/zoom-svg-through-object-with-percentage-size-expected.txt: Added.
        * platform/gtk/svg/zoom/page/zoom-svg-through-object-with-text-expected.png: Added.
        * platform/gtk/svg/zoom/page/zoom-svg-through-object-with-text-expected.txt: Added.

2011-06-01  Mario Sanchez Prada  <msanchez@igalia.com>

        Unreviewed, added new baseline for GTK after r87387.

        * platform/gtk/fast/borders/border-antialiasing-expected.txt: Added.
        * platform/gtk/fast/borders/border-antialiasing-expected.png: Added.

2011-06-01  Nikolas Zimmermann  <nzimmermann@rim.com>

        Reviewed by Rob Buis.

        SVGs with a viewbox specified do not seem to work as SVGImages
        https://bugs.webkit.org/show_bug.cgi?id=16517

        SVGs with a viewBox work as background image nowadays, add a testcase covering it, originally from Beth Dakin.

        * platform/mac/svg/as-image/svg-as-background-with-viewBox-expected.png: Added.
        * platform/mac/svg/as-image/svg-as-background-with-viewBox-expected.txt: Added.
        * svg/as-image/resources/green-relative-size-rect-with-viewBox.svg: Added.
        * svg/as-image/svg-as-background-with-viewBox.html: Added.

2011-06-01  Shishir Agrawal  <shishir@chromium.org>

        Reviewed by Tony Gentilcore.

        Renaming the Page Visibility attributes as per the modified spec draft.
        https://bugs.webkit.org/show_bug.cgi?id=61825

        Spec draft:
        http://dvcs.w3.org/hg/webperf/raw-file/tip/specs/PageVisibility/Overview.html

        - Event needs to be webkitVisibilityChange from webkitVisibilityStateChange
        - The attribute webkitIsVisible needs to change to webkitHidden

        * fast/events/page-visibility-iframe-delete-test.html:
        * fast/events/page-visibility-iframe-move-test-expected.txt:
        * fast/events/page-visibility-iframe-move-test.html:
        * fast/events/page-visibility-iframe-propagation-test-expected.txt:
        * fast/events/page-visibility-iframe-propagation-test.html:
        * fast/events/page-visibility-transition-test-expected.txt:
        * fast/events/page-visibility-transition-test.html:

2011-06-01  Gabor Loki  <loki@webkit.org>

        Rubber-stamped by Csaba Osztrogonác.

        Skip a flakey test on ARM.

        * platform/qt-arm/Skipped:

2011-06-01  Csaba Osztrogonác  <ossy@webkit.org>

        [WK2] Skip new failing test because of missing SVG animation pause API.

        * platform/mac-wk2/Skipped:

2011-06-01  Mario Sanchez Prada  <msanchez@igalia.com>

        Unreviewed, skipping flaky test on GTK 64-bit bot.

        * platform/gtk/Skipped: Skipped test.

2011-06-01  Csaba Osztrogonác  <ossy@webkit.org>

        [Qt] Unreviewed trivial fix after r87778.

        * platform/qt/Skipped: Rename editing/pasteboard/4861080.html to editing/pasteboard/drag-drop-list.html.

2011-06-01  Gabor Loki  <loki@webkit.org>

        Rubber-stamped by Csaba Osztrogonác.

        [Qt] Skip flakey tests on ARM

        * platform/qt-arm/Skipped:

2011-06-01  John Knottenbelt  <jknotten@chromium.org>

        Unreviewed.

        [Chromium] Add in baselines for new SVG tests following https://bugs.webkit.org/show_bug.cgi?id=15473
        https://bugs.webkit.org/show_bug.cgi?id=61849

        * platform/chromium-linux-x86/svg/custom/object-sizing-height-50p-on-target-svg-expected.png: Added.
        * platform/chromium-linux-x86/svg/custom/object-sizing-height-50p-on-target-svg-expected.txt: Added.
        * platform/chromium-linux-x86/svg/custom/object-sizing-width-50p-height-50p-on-target-svg-absolute-expected.png: Added.
        * platform/chromium-linux-x86/svg/custom/object-sizing-width-50p-height-50p-on-target-svg-absolute-expected.txt: Added.
        * platform/chromium-linux-x86/svg/custom/object-sizing-width-50p-height-50p-on-target-svg-expected.png: Added.
        * platform/chromium-linux-x86/svg/custom/object-sizing-width-50p-height-50p-on-target-svg-expected.txt: Added.
        * platform/chromium-linux-x86/svg/custom/object-sizing-width-50p-height-75p-on-target-svg-absolute-expected.png: Added.
        * platform/chromium-linux-x86/svg/custom/object-sizing-width-50p-height-75p-on-target-svg-absolute-expected.txt: Added.
        * platform/chromium-linux-x86/svg/custom/object-sizing-width-50p-height-75p-on-target-svg-expected.png: Added.
        * platform/chromium-linux-x86/svg/custom/object-sizing-width-50p-height-75p-on-target-svg-expected.txt: Added.
        * platform/chromium-linux-x86/svg/custom/object-sizing-width-50p-on-target-svg-absolute-expected.png: Added.
        * platform/chromium-linux-x86/svg/custom/object-sizing-width-50p-on-target-svg-absolute-expected.txt: Added.
        * platform/chromium-linux-x86/svg/custom/object-sizing-width-50p-on-target-svg-expected.png: Added.
        * platform/chromium-linux-x86/svg/custom/object-sizing-width-50p-on-target-svg-expected.txt: Added.
        * platform/chromium-linux-x86/svg/custom/object-sizing-width-75p-height-50p-on-target-svg-absolute-expected.png: Added.
        * platform/chromium-linux-x86/svg/custom/object-sizing-width-75p-height-50p-on-target-svg-absolute-expected.txt: Added.
        * platform/chromium-linux-x86/svg/custom/object-sizing-width-75p-height-50p-on-target-svg-expected.png: Added.
        * platform/chromium-linux-x86/svg/custom/object-sizing-width-75p-height-50p-on-target-svg-expected.txt: Added.
        * platform/chromium-linux-x86/svg/hixie/intrinsic/001-expected.png: Added.
        * platform/chromium-linux-x86/svg/hixie/intrinsic/001-expected.txt: Added.
        * platform/chromium-linux-x86/svg/hixie/intrinsic/002-expected.png: Added.
        * platform/chromium-linux-x86/svg/hixie/intrinsic/002-expected.txt: Added.
        * platform/chromium-linux-x86/svg/hixie/intrinsic/003-expected.png: Added.
        * platform/chromium-linux-x86/svg/hixie/intrinsic/003-expected.txt: Added.
        * platform/chromium-linux/svg/custom/object-sizing-height-50p-on-target-svg-expected.png: Added.
        * platform/chromium-linux/svg/custom/object-sizing-height-50p-on-target-svg-expected.txt: Added.
        * platform/chromium-linux/svg/custom/object-sizing-width-50p-height-50p-on-target-svg-absolute-expected.png: Added.
        * platform/chromium-linux/svg/custom/object-sizing-width-50p-height-50p-on-target-svg-absolute-expected.txt: Added.
        * platform/chromium-linux/svg/custom/object-sizing-width-50p-height-50p-on-target-svg-expected.png: Added.
        * platform/chromium-linux/svg/custom/object-sizing-width-50p-height-50p-on-target-svg-expected.txt: Added.
        * platform/chromium-linux/svg/custom/object-sizing-width-50p-height-75p-on-target-svg-absolute-expected.png: Added.
        * platform/chromium-linux/svg/custom/object-sizing-width-50p-height-75p-on-target-svg-absolute-expected.txt: Added.
        * platform/chromium-linux/svg/custom/object-sizing-width-50p-height-75p-on-target-svg-expected.png: Added.
        * platform/chromium-linux/svg/custom/object-sizing-width-50p-height-75p-on-target-svg-expected.txt: Added.
        * platform/chromium-linux/svg/custom/object-sizing-width-50p-on-target-svg-absolute-expected.png: Added.
        * platform/chromium-linux/svg/custom/object-sizing-width-50p-on-target-svg-absolute-expected.txt: Added.
        * platform/chromium-linux/svg/custom/object-sizing-width-50p-on-target-svg-expected.png: Added.
        * platform/chromium-linux/svg/custom/object-sizing-width-50p-on-target-svg-expected.txt: Added.
        * platform/chromium-linux/svg/custom/object-sizing-width-75p-height-50p-on-target-svg-absolute-expected.png: Added.
        * platform/chromium-linux/svg/custom/object-sizing-width-75p-height-50p-on-target-svg-absolute-expected.txt: Added.
        * platform/chromium-linux/svg/custom/object-sizing-width-75p-height-50p-on-target-svg-expected.png: Added.
        * platform/chromium-linux/svg/custom/object-sizing-width-75p-height-50p-on-target-svg-expected.txt: Added.
        * platform/chromium-linux/svg/hixie/intrinsic/001-expected.png: Added.
        * platform/chromium-linux/svg/hixie/intrinsic/001-expected.txt: Added.
        * platform/chromium-linux/svg/hixie/intrinsic/002-expected.png: Added.
        * platform/chromium-linux/svg/hixie/intrinsic/002-expected.txt: Added.
        * platform/chromium-linux/svg/hixie/intrinsic/003-expected.png: Added.
        * platform/chromium-linux/svg/hixie/intrinsic/003-expected.txt: Added.
        * platform/chromium-win-vista/svg/custom/object-sizing-height-50p-on-target-svg-expected.png: Added.
        * platform/chromium-win-vista/svg/custom/object-sizing-height-50p-on-target-svg-expected.txt: Added.
        * platform/chromium-win-vista/svg/custom/object-sizing-width-50p-height-50p-on-target-svg-absolute-expected.png: Added.
        * platform/chromium-win-vista/svg/custom/object-sizing-width-50p-height-50p-on-target-svg-absolute-expected.txt: Added.
        * platform/chromium-win-vista/svg/custom/object-sizing-width-50p-height-50p-on-target-svg-expected.png: Added.
        * platform/chromium-win-vista/svg/custom/object-sizing-width-50p-height-50p-on-target-svg-expected.txt: Added.
        * platform/chromium-win-vista/svg/custom/object-sizing-width-50p-height-75p-on-target-svg-absolute-expected.png: Added.
        * platform/chromium-win-vista/svg/custom/object-sizing-width-50p-height-75p-on-target-svg-absolute-expected.txt: Added.
        * platform/chromium-win-vista/svg/custom/object-sizing-width-50p-height-75p-on-target-svg-expected.png: Added.
        * platform/chromium-win-vista/svg/custom/object-sizing-width-50p-height-75p-on-target-svg-expected.txt: Added.
        * platform/chromium-win-vista/svg/custom/object-sizing-width-50p-on-target-svg-absolute-expected.png: Added.
        * platform/chromium-win-vista/svg/custom/object-sizing-width-50p-on-target-svg-absolute-expected.txt: Added.
        * platform/chromium-win-vista/svg/custom/object-sizing-width-50p-on-target-svg-expected.png: Added.
        * platform/chromium-win-vista/svg/custom/object-sizing-width-50p-on-target-svg-expected.txt: Added.
        * platform/chromium-win-vista/svg/custom/object-sizing-width-75p-height-50p-on-target-svg-absolute-expected.png: Added.
        * platform/chromium-win-vista/svg/custom/object-sizing-width-75p-height-50p-on-target-svg-absolute-expected.txt: Added.
        * platform/chromium-win-vista/svg/custom/object-sizing-width-75p-height-50p-on-target-svg-expected.png: Added.
        * platform/chromium-win-vista/svg/custom/object-sizing-width-75p-height-50p-on-target-svg-expected.txt: Added.
        * platform/chromium-win-vista/svg/hixie/intrinsic/001-expected.png: Added.
        * platform/chromium-win-vista/svg/hixie/intrinsic/001-expected.txt: Added.
        * platform/chromium-win-vista/svg/hixie/intrinsic/002-expected.png: Added.
        * platform/chromium-win-vista/svg/hixie/intrinsic/002-expected.txt: Added.
        * platform/chromium-win-vista/svg/hixie/intrinsic/003-expected.png: Added.
        * platform/chromium-win-vista/svg/hixie/intrinsic/003-expected.txt: Added.

2011-06-01  Mario Sanchez Prada  <msanchez@igalia.com>

        Unreviewed. Test rebaselines for GTK after revision 87526.

        * platform/gtk/svg/hixie/text/003-expected.png:
        * platform/gtk/svg/hixie/text/003-expected.txt:
        * platform/gtk/svg/in-html/by-reference-expected.txt:
        * platform/gtk/svg/zoom/page/relative-sized-document-scrollbars-expected.txt:

2011-06-01  Nikolas Zimmermann  <nzimmermann@rim.com>

        Reviewed by Andreas Kling.

        REGRESSION: fast/images/svg-background-crash-on-refresh.html hangs
        https://bugs.webkit.org/show_bug.cgi?id=15483

        The regression seems gone, I can't reproduce it anymore, reenable svg-background-crash-on-refresh.html.
        Convert the test to use dumpAsText() and actually execute the refreshing twice, including forced gc
        to see whether we crash on referesh or not, before it didn't actually reload. If a crash happened,
        it happened somewhen after executing this test, which is probably why it was flakey.

        * platform/mac/svg/as-image/svg-background-crash-on-refresh-expected.png: Removed.
        * platform/mac/svg/as-image/svg-background-crash-on-refresh-expected.txt: Removed.
        * svg/as-image/svg-background-crash-on-refresh-expected.txt: Copied from platform/mac/svg/as-image/svg-background-crash-on-refresh-expected.txt.
        * svg/as-image/svg-background-crash-on-refresh.html: Copied from svg/as-image/svg-background-crash-on-refresh.html-disabled.
        * svg/as-image/svg-background-crash-on-refresh.html-disabled: Removed.

2011-06-01  Mario Sanchez Prada  <msanchez@igalia.com>

        Unreviewed. Test rebaselines for GTK after revision 87721.

        * platform/gtk/svg/custom/invalid-fill-expected.png:
        * platform/gtk/svg/custom/invalid-fill-expected.txt:
        * platform/gtk/svg/custom/invalid-fill-hex-expected.png:
        * platform/gtk/svg/custom/invalid-fill-hex-expected.txt:

2011-06-01  Nikolas Zimmermann  <nzimmermann@rim.com>

        Reviewed by Adam Barth.

        Move fast/images/*svg* to svg/as-image/
        https://bugs.webkit.org/show_bug.cgi?id=61840

        The SVG crowd regulary runs pixel tests, and we'd like to also include the SVG-as-image tests in our daily runs.
        Also it makes more sense to have these tests in a single place, just like eg. svg/in-html (html5+svg).

        * fast/images/animated-svg-as-image.html: Removed.
        * fast/images/drag-svg-as-image-expected.txt: Removed.
        * fast/images/drag-svg-as-image.html: Removed.
        * fast/images/resources/animated-rect-fixed-size.svg: Removed.
        * fast/images/resources/animated-rect-relative-size.svg: Removed.
        * fast/images/resources/butterfly.svg: Removed.
        * fast/images/resources/circle.svg: Removed.
        * fast/images/resources/green-fixed-size-rect.svg: Removed.
        * fast/images/resources/green-relative-size-rect.svg: Removed.
        * fast/images/resources/load-script.html: Removed.
        * fast/images/resources/width-100-percent.svg: Removed.
        * fast/images/svg-as-background.html: Removed.
        * fast/images/svg-as-image.html: Removed.
        * fast/images/svg-as-relative-image.html: Removed.
        * fast/images/svg-as-tiled-background.html: Removed.
        * fast/images/svg-background-crash-on-refresh.html-disabled: Removed.
        * fast/images/svg-background-partial-redraw.html: Removed.
        * fast/images/svg-image-leak-loader-expected.txt: Removed.
        * fast/images/svg-image-leak-loader.html: Removed.
        * fast/images/svg-nested-expected.txt: Removed.
        * fast/images/svg-nested.html: Removed.
        * fast/images/svg-width-100p-as-background.html: Removed.
        * platform/chromium-linux/fast/images/animated-svg-as-image-expected.png: Removed.
        * platform/chromium-linux/fast/images/svg-background-partial-redraw-expected.png: Removed.
        * platform/chromium-linux/svg/as-image: Added.
        * platform/chromium-linux/svg/as-image/animated-svg-as-image-expected.png: Copied from platform/chromium-linux/fast/images/animated-svg-as-image-expected.png.
        * platform/chromium-linux/svg/as-image/svg-background-partial-redraw-expected.png: Copied from platform/chromium-linux/fast/images/svg-background-partial-redraw-expected.png.
        * platform/chromium-mac-leopard/fast/images/svg-background-partial-redraw-expected.png: Removed.
        * platform/chromium-mac-leopard/svg/as-image: Added.
        * platform/chromium-mac-leopard/svg/as-image/svg-background-partial-redraw-expected.png: Copied from platform/chromium-mac-leopard/fast/images/svg-background-partial-redraw-expected.png.
        * platform/chromium-mac/fast/images/svg-background-partial-redraw-expected.png: Removed.
        * platform/chromium-mac/svg/as-image: Added.
        * platform/chromium-mac/svg/as-image/svg-background-partial-redraw-expected.png: Copied from platform/chromium-mac/fast/images/svg-background-partial-redraw-expected.png.
        * platform/chromium-win/fast/images/animated-svg-as-image-expected.png: Removed.
        * platform/chromium-win/fast/images/animated-svg-as-image-expected.txt: Removed.
        * platform/chromium-win/fast/images/svg-as-background-expected.txt: Removed.
        * platform/chromium-win/fast/images/svg-as-tiled-background-expected.txt: Removed.
        * platform/chromium-win/fast/images/svg-background-partial-redraw-expected.png: Removed.
        * platform/chromium-win/fast/images/svg-background-partial-redraw-expected.txt: Removed.
        * platform/chromium-win/fast/images/svg-width-100p-as-background-expected.txt: Removed.
        * platform/chromium-win/svg/as-image: Added.
        * platform/chromium-win/svg/as-image/animated-svg-as-image-expected.png: Copied from platform/chromium-win/fast/images/animated-svg-as-image-expected.png.
        * platform/chromium-win/svg/as-image/animated-svg-as-image-expected.txt: Copied from platform/chromium-win/fast/images/animated-svg-as-image-expected.txt.
        * platform/chromium-win/svg/as-image/svg-as-background-expected.txt: Copied from platform/chromium-win/fast/images/svg-as-background-expected.txt.
        * platform/chromium-win/svg/as-image/svg-as-tiled-background-expected.txt: Copied from platform/chromium-win/fast/images/svg-as-tiled-background-expected.txt.
        * platform/chromium-win/svg/as-image/svg-background-partial-redraw-expected.png: Copied from platform/chromium-win/fast/images/svg-background-partial-redraw-expected.png.
        * platform/chromium-win/svg/as-image/svg-background-partial-redraw-expected.txt: Copied from platform/chromium-win/fast/images/svg-background-partial-redraw-expected.txt.
        * platform/chromium-win/svg/as-image/svg-width-100p-as-background-expected.txt: Copied from platform/chromium-win/fast/images/svg-width-100p-as-background-expected.txt.
        * platform/chromium/test_expectations.txt:
        * platform/gtk/fast/images/animated-svg-as-image-expected.png: Removed.
        * platform/gtk/fast/images/animated-svg-as-image-expected.txt: Removed.
        * platform/gtk/fast/images/svg-as-background-expected.png: Removed.
        * platform/gtk/fast/images/svg-as-background-expected.txt: Removed.
        * platform/gtk/fast/images/svg-as-image-expected.png: Removed.
        * platform/gtk/fast/images/svg-as-image-expected.txt: Removed.
        * platform/gtk/fast/images/svg-as-relative-image-expected.png: Removed.
        * platform/gtk/fast/images/svg-as-relative-image-expected.txt: Removed.
        * platform/gtk/fast/images/svg-as-tiled-background-expected.png: Removed.
        * platform/gtk/fast/images/svg-as-tiled-background-expected.txt: Removed.
        * platform/gtk/fast/images/svg-background-partial-redraw-expected.txt: Removed.
        * platform/gtk/fast/images/svg-width-100p-as-background-expected.png: Removed.
        * platform/gtk/fast/images/svg-width-100p-as-background-expected.txt: Removed.
        * platform/gtk/svg/as-image: Added.
        * platform/gtk/svg/as-image/animated-svg-as-image-expected.png: Copied from platform/gtk/fast/images/animated-svg-as-image-expected.png.
        * platform/gtk/svg/as-image/animated-svg-as-image-expected.txt: Copied from platform/gtk/fast/images/animated-svg-as-image-expected.txt.
        * platform/gtk/svg/as-image/svg-as-background-expected.png: Copied from platform/gtk/fast/images/svg-as-background-expected.png.
        * platform/gtk/svg/as-image/svg-as-background-expected.txt: Copied from platform/gtk/fast/images/svg-as-background-expected.txt.
        * platform/gtk/svg/as-image/svg-as-image-expected.png: Copied from platform/gtk/fast/images/svg-as-image-expected.png.
        * platform/gtk/svg/as-image/svg-as-image-expected.txt: Copied from platform/gtk/fast/images/svg-as-image-expected.txt.
        * platform/gtk/svg/as-image/svg-as-relative-image-expected.png: Copied from platform/gtk/fast/images/svg-as-relative-image-expected.png.
        * platform/gtk/svg/as-image/svg-as-relative-image-expected.txt: Copied from platform/gtk/fast/images/svg-as-relative-image-expected.txt.
        * platform/gtk/svg/as-image/svg-as-tiled-background-expected.png: Copied from platform/gtk/fast/images/svg-as-tiled-background-expected.png.
        * platform/gtk/svg/as-image/svg-as-tiled-background-expected.txt: Copied from platform/gtk/fast/images/svg-as-tiled-background-expected.txt.
        * platform/gtk/svg/as-image/svg-background-partial-redraw-expected.txt: Copied from platform/gtk/fast/images/svg-background-partial-redraw-expected.txt.
        * platform/gtk/svg/as-image/svg-width-100p-as-background-expected.png: Copied from platform/gtk/fast/images/svg-width-100p-as-background-expected.png.
        * platform/gtk/svg/as-image/svg-width-100p-as-background-expected.txt: Copied from platform/gtk/fast/images/svg-width-100p-as-background-expected.txt.
        * platform/mac-leopard/fast/images/animated-svg-as-image-expected.png: Removed.
        * platform/mac-leopard/fast/images/svg-background-partial-redraw-expected.png: Removed.
        * platform/mac-leopard/svg/as-image: Added.
        * platform/mac-leopard/svg/as-image/animated-svg-as-image-expected.png: Copied from platform/mac-leopard/fast/images/animated-svg-as-image-expected.png.
        * platform/mac-leopard/svg/as-image/svg-background-partial-redraw-expected.png: Copied from platform/mac-leopard/fast/images/svg-background-partial-redraw-expected.png.
        * platform/mac/fast/images/animated-svg-as-image-expected.png: Removed.
        * platform/mac/fast/images/animated-svg-as-image-expected.txt: Removed.
        * platform/mac/fast/images/svg-as-background-expected.png: Removed.
        * platform/mac/fast/images/svg-as-background-expected.txt: Removed.
        * platform/mac/fast/images/svg-as-image-expected.png: Removed.
        * platform/mac/fast/images/svg-as-image-expected.txt: Removed.
        * platform/mac/fast/images/svg-as-relative-image-expected.png: Removed.
        * platform/mac/fast/images/svg-as-relative-image-expected.txt: Removed.
        * platform/mac/fast/images/svg-as-tiled-background-expected.png: Removed.
        * platform/mac/fast/images/svg-as-tiled-background-expected.txt: Removed.
        * platform/mac/fast/images/svg-background-crash-on-refresh-expected.png: Removed.
        * platform/mac/fast/images/svg-background-crash-on-refresh-expected.txt: Removed.
        * platform/mac/fast/images/svg-background-partial-redraw-expected.png: Removed.
        * platform/mac/fast/images/svg-background-partial-redraw-expected.txt: Removed.
        * platform/mac/fast/images/svg-width-100p-as-background-expected.png: Removed.
        * platform/mac/fast/images/svg-width-100p-as-background-expected.txt: Removed.
        * platform/mac/svg/as-image: Added.
        * platform/mac/svg/as-image/animated-svg-as-image-expected.png: Copied from platform/mac/fast/images/animated-svg-as-image-expected.png.
        * platform/mac/svg/as-image/animated-svg-as-image-expected.txt: Copied from platform/mac/fast/images/animated-svg-as-image-expected.txt.
        * platform/mac/svg/as-image/svg-as-background-expected.png: Copied from platform/mac/fast/images/svg-as-background-expected.png.
        * platform/mac/svg/as-image/svg-as-background-expected.txt: Copied from platform/mac/fast/images/svg-as-background-expected.txt.
        * platform/mac/svg/as-image/svg-as-image-expected.png: Copied from platform/mac/fast/images/svg-as-image-expected.png.
        * platform/mac/svg/as-image/svg-as-image-expected.txt: Copied from platform/mac/fast/images/svg-as-image-expected.txt.
        * platform/mac/svg/as-image/svg-as-relative-image-expected.png: Copied from platform/mac/fast/images/svg-as-relative-image-expected.png.
        * platform/mac/svg/as-image/svg-as-relative-image-expected.txt: Copied from platform/mac/fast/images/svg-as-relative-image-expected.txt.
        * platform/mac/svg/as-image/svg-as-tiled-background-expected.png: Copied from platform/mac/fast/images/svg-as-tiled-background-expected.png.
        * platform/mac/svg/as-image/svg-as-tiled-background-expected.txt: Copied from platform/mac/fast/images/svg-as-tiled-background-expected.txt.
        * platform/mac/svg/as-image/svg-background-crash-on-refresh-expected.png: Copied from platform/mac/fast/images/svg-background-crash-on-refresh-expected.png.
        * platform/mac/svg/as-image/svg-background-crash-on-refresh-expected.txt: Copied from platform/mac/fast/images/svg-background-crash-on-refresh-expected.txt.
        * platform/mac/svg/as-image/svg-background-partial-redraw-expected.png: Copied from platform/mac/fast/images/svg-background-partial-redraw-expected.png.
        * platform/mac/svg/as-image/svg-background-partial-redraw-expected.txt: Copied from platform/mac/fast/images/svg-background-partial-redraw-expected.txt.
        * platform/mac/svg/as-image/svg-width-100p-as-background-expected.png: Copied from platform/mac/fast/images/svg-width-100p-as-background-expected.png.
        * platform/mac/svg/as-image/svg-width-100p-as-background-expected.txt: Copied from platform/mac/fast/images/svg-width-100p-as-background-expected.txt.
        * platform/qt-mac/Skipped:
        * platform/qt-wk2/Skipped:
        * platform/qt/Skipped:
        * platform/qt/fast/images/animated-svg-as-image-expected.txt: Removed.
        * platform/qt/fast/images/svg-as-background-expected.txt: Removed.
        * platform/qt/fast/images/svg-as-image-expected.txt: Removed.
        * platform/qt/fast/images/svg-as-relative-image-expected.txt: Removed.
        * platform/qt/fast/images/svg-as-tiled-background-expected.txt: Removed.
        * platform/qt/fast/images/svg-background-partial-redraw-expected.png: Removed.
        * platform/qt/fast/images/svg-background-partial-redraw-expected.txt: Removed.
        * platform/qt/fast/images/svg-width-100p-as-background-expected.txt: Removed.
        * platform/qt/svg/as-image: Added.
        * platform/qt/svg/as-image/animated-svg-as-image-expected.txt: Copied from platform/qt/fast/images/animated-svg-as-image-expected.txt.
        * platform/qt/svg/as-image/svg-as-background-expected.txt: Copied from platform/qt/fast/images/svg-as-background-expected.txt.
        * platform/qt/svg/as-image/svg-as-image-expected.txt: Copied from platform/qt/fast/images/svg-as-image-expected.txt.
        * platform/qt/svg/as-image/svg-as-relative-image-expected.txt: Copied from platform/qt/fast/images/svg-as-relative-image-expected.txt.
        * platform/qt/svg/as-image/svg-as-tiled-background-expected.txt: Copied from platform/qt/fast/images/svg-as-tiled-background-expected.txt.
        * platform/qt/svg/as-image/svg-background-partial-redraw-expected.png: Copied from platform/qt/fast/images/svg-background-partial-redraw-expected.png.
        * platform/qt/svg/as-image/svg-background-partial-redraw-expected.txt: Copied from platform/qt/fast/images/svg-background-partial-redraw-expected.txt.
        * platform/qt/svg/as-image/svg-width-100p-as-background-expected.txt: Copied from platform/qt/fast/images/svg-width-100p-as-background-expected.txt.
        * svg/as-image: Added.
        * svg/as-image/animated-svg-as-image.html: Copied from fast/images/animated-svg-as-image.html.
        * svg/as-image/drag-svg-as-image-expected.txt: Copied from fast/images/drag-svg-as-image-expected.txt.
        * svg/as-image/drag-svg-as-image.html: Copied from fast/images/drag-svg-as-image.html.
        * svg/as-image/resources: Added.
        * svg/as-image/resources/animated-rect-fixed-size.svg: Copied from fast/images/resources/animated-rect-fixed-size.svg.
        * svg/as-image/resources/animated-rect-relative-size.svg: Copied from fast/images/resources/animated-rect-relative-size.svg.
        * svg/as-image/resources/butterfly.svg: Copied from fast/images/resources/butterfly.svg.
        * svg/as-image/resources/circle.svg: Copied from fast/images/resources/circle.svg.
        * svg/as-image/resources/green-fixed-size-rect.svg: Copied from fast/images/resources/green-fixed-size-rect.svg.
        * svg/as-image/resources/green-relative-size-rect.svg: Copied from fast/images/resources/green-relative-size-rect.svg.
        * svg/as-image/resources/load-script.html: Copied from fast/images/resources/load-script.html.
        * svg/as-image/resources/width-100-percent.svg: Copied from fast/images/resources/width-100-percent.svg.
        * svg/as-image/svg-as-background.html: Copied from fast/images/svg-as-background.html.
        * svg/as-image/svg-as-image.html: Copied from fast/images/svg-as-image.html.
        * svg/as-image/svg-as-relative-image.html: Copied from fast/images/svg-as-relative-image.html.
        * svg/as-image/svg-as-tiled-background.html: Copied from fast/images/svg-as-tiled-background.html.
        * svg/as-image/svg-background-crash-on-refresh.html-disabled: Copied from fast/images/svg-background-crash-on-refresh.html-disabled.
        * svg/as-image/svg-background-partial-redraw.html: Copied from fast/images/svg-background-partial-redraw.html.
        * svg/as-image/svg-image-leak-loader-expected.txt: Copied from fast/images/svg-image-leak-loader-expected.txt.
        * svg/as-image/svg-image-leak-loader.html: Copied from fast/images/svg-image-leak-loader.html.
        * svg/as-image/svg-nested-expected.txt: Copied from fast/images/svg-nested-expected.txt.
        * svg/as-image/svg-nested.html: Copied from fast/images/svg-nested.html.
        * svg/as-image/svg-width-100p-as-background.html: Copied from fast/images/svg-width-100p-as-background.html.

2011-06-01  Nikolas Zimmermann  <nzimmermann@rim.com>

        Reviewed by Rob Buis.

        SVG fails all 3 of Hixie's CSS intrinsic sizing tests
        https://bugs.webkit.org/show_bug.cgi?id=15473

        Hixies CSS intrinsic sizing tests cover percentage sizes specified on the target SVG document as width/height attributes
        and using width: auto / height: auto on the <object> that hosts the SVG document. Take percentage sizes of the outermost
        SVGs width/height attributes into account when determining the intrinsic size of the <object>.

        Added several other testcases demonstrating several scenarios. All tests work exactly the same in WebKit and Firefox now.
        The *on-target-svg-absolute.xhtml tests look equal to WebKit/FF but Opera fails them, likely a relict of the different
        interpretation of the intrinsic size of a SVG document in SVG Tiny 1.2.

        * platform/mac/svg/custom/object-sizing-height-50p-on-target-svg-absolute-expected.png: Added.
        * platform/mac/svg/custom/object-sizing-height-50p-on-target-svg-absolute-expected.txt: Added.
        * platform/mac/svg/custom/object-sizing-height-50p-on-target-svg-expected.png: Added.
        * platform/mac/svg/custom/object-sizing-height-50p-on-target-svg-expected.txt: Added.
        * platform/mac/svg/custom/object-sizing-width-50p-height-50p-on-target-svg-absolute-expected.png: Added.
        * platform/mac/svg/custom/object-sizing-width-50p-height-50p-on-target-svg-absolute-expected.txt: Added.
        * platform/mac/svg/custom/object-sizing-width-50p-height-50p-on-target-svg-expected.png: Added.
        * platform/mac/svg/custom/object-sizing-width-50p-height-50p-on-target-svg-expected.txt: Added.
        * platform/mac/svg/custom/object-sizing-width-50p-height-75p-on-target-svg-absolute-expected.png: Added.
        * platform/mac/svg/custom/object-sizing-width-50p-height-75p-on-target-svg-absolute-expected.txt: Added.
        * platform/mac/svg/custom/object-sizing-width-50p-height-75p-on-target-svg-expected.png: Added.
        * platform/mac/svg/custom/object-sizing-width-50p-height-75p-on-target-svg-expected.txt: Added.
        * platform/mac/svg/custom/object-sizing-width-50p-on-target-svg-absolute-expected.png: Added.
        * platform/mac/svg/custom/object-sizing-width-50p-on-target-svg-absolute-expected.txt: Added.
        * platform/mac/svg/custom/object-sizing-width-50p-on-target-svg-expected.png: Added.
        * platform/mac/svg/custom/object-sizing-width-50p-on-target-svg-expected.txt: Added.
        * platform/mac/svg/custom/object-sizing-width-75p-height-50p-on-target-svg-absolute-expected.png: Added.
        * platform/mac/svg/custom/object-sizing-width-75p-height-50p-on-target-svg-absolute-expected.txt: Added.
        * platform/mac/svg/custom/object-sizing-width-75p-height-50p-on-target-svg-expected.png: Added.
        * platform/mac/svg/custom/object-sizing-width-75p-height-50p-on-target-svg-expected.txt: Added.
        * platform/mac/svg/hixie/intrinsic: Added.
        * platform/mac/svg/hixie/intrinsic/001-expected.png: Added.
        * platform/mac/svg/hixie/intrinsic/001-expected.txt: Added.
        * platform/mac/svg/hixie/intrinsic/002-expected.png: Added.
        * platform/mac/svg/hixie/intrinsic/002-expected.txt: Added.
        * platform/mac/svg/hixie/intrinsic/003-expected.png: Added.
        * platform/mac/svg/hixie/intrinsic/003-expected.txt: Added.
        * svg/custom/object-sizing-height-50p-on-target-svg-absolute.xhtml: Added.
        * svg/custom/object-sizing-height-50p-on-target-svg.xhtml: Added.
        * svg/custom/object-sizing-width-50p-height-50p-on-target-svg-absolute.xhtml: Added.
        * svg/custom/object-sizing-width-50p-height-50p-on-target-svg.xhtml: Added.
        * svg/custom/object-sizing-width-50p-height-75p-on-target-svg-absolute.xhtml: Added.
        * svg/custom/object-sizing-width-50p-height-75p-on-target-svg.xhtml: Added.
        * svg/custom/object-sizing-width-50p-on-target-svg-absolute.xhtml: Added.
        * svg/custom/object-sizing-width-50p-on-target-svg.xhtml: Added.
        * svg/custom/object-sizing-width-75p-height-50p-on-target-svg-absolute.xhtml: Added.
        * svg/custom/object-sizing-width-75p-height-50p-on-target-svg.xhtml: Added.
        * svg/custom/resources/object-sizing-height-50p.svg: Added.
        * svg/custom/resources/object-sizing-width-50p-height-50p.svg: Added.
        * svg/custom/resources/object-sizing-width-50p-height-75p.svg: Added.
        * svg/custom/resources/object-sizing-width-50p.svg: Added.
        * svg/custom/resources/object-sizing-width-75p-height-50p.svg: Added.
        * svg/hixie/intrinsic: Added.
        * svg/hixie/intrinsic/001.html: Added.
        * svg/hixie/intrinsic/002.html: Added.
        * svg/hixie/intrinsic/003.html: Added.
        * svg/hixie/intrinsic/resources: Added.
        * svg/hixie/intrinsic/resources/001.svg: Added.
        * svg/hixie/intrinsic/resources/002.svg: Added.
        * svg/hixie/intrinsic/resources/003.svg: Added.
        * svg/hixie/intrinsic/resources/test-bl: Added.
        * svg/hixie/intrinsic/resources/test-br: Added.
        * svg/hixie/intrinsic/resources/test-tl: Added.
        * svg/hixie/intrinsic/resources/test-tr: Added.

2011-06-01  Annie Sullivan  <sullivan@chromium.org>

        Reviewed by Ryosuke Niwa.

        Convert editing/pasteboard/4861010 to dump-as-markup
        https://bugs.webkit.org/show_bug.cgi?id=61683

        Renamed test to drag-drop-list.html, cleaned up html, and updated description.

        * editing/pasteboard/4861080.html: Removed.
        * editing/pasteboard/drag-drop-list.html: Copied from LayoutTests/editing/pasteboard/4861080.html.
        * platform/chromium-linux/editing/pasteboard/4861080-expected.png: Removed.
        * platform/chromium-win/editing/pasteboard/4861080-expected.png: Removed.
        * platform/chromium-win/editing/pasteboard/4861080-expected.txt: Removed.
        * platform/gtk/editing/pasteboard/4861080-expected.png: Removed.
        * platform/gtk/editing/pasteboard/4861080-expected.txt: Removed.
        * platform/mac-leopard/editing/pasteboard/4861080-expected.png: Removed.
        * platform/mac/editing/pasteboard/4861080-expected.png: Removed.
        * platform/mac/editing/pasteboard/4861080-expected.txt: Removed.

2011-05-31  Kent Tamura  <tkent@chromium.org>

        Reviewed by Hajime Morita.

        Convert fast/forms/date-input-visible-strings.html to dumpAsText().
        https://bugs.webkit.org/show_bug.cgi?id=61777

        * fast/forms/date-input-visible-strings.html:
        * fast/forms/date-input-visible-strings-expected.txt: Added.
        * platform/chromium-linux/fast/forms/date-input-visible-strings-expected.png: Removed.
        * platform/chromium-mac-leopard/fast/forms/date-input-visible-strings-expected.png: Removed.
        * platform/chromium-win/fast/forms/date-input-visible-strings-expected.png: Removed.
        * platform/chromium-win/fast/forms/date-input-visible-strings-expected.txt: Removed.
        * platform/gtk/fast/forms/date-input-visible-strings-expected.png: Removed.
        * platform/gtk/fast/forms/date-input-visible-strings-expected.txt: Removed.
        * platform/mac/fast/forms/date-input-visible-strings-expected.png: Removed.
        * platform/mac/fast/forms/date-input-visible-strings-expected.txt: Removed.
        * platform/win/fast/forms/date-input-visible-strings-expected.txt: Removed.

2011-05-31  Annie Sullivan  <sullivan@chromium.org>

        Reviewed by Ryosuke Niwa.

        Convert editing/pasteboard/paste-blockquote-into-blockquote-2.html to dump-as-markup
        https://bugs.webkit.org/show_bug.cgi?id=61682

        Convert test to dump-as-markup and clean up HTML. Also update test description.

        * editing/pasteboard/paste-blockquote-into-blockquote-2-expected.txt: Added.
        * editing/pasteboard/paste-blockquote-into-blockquote-2.html:
        * platform/chromium-linux/editing/pasteboard/paste-blockquote-into-blockquote-2-expected.png: Removed.
        * platform/chromium-win/editing/pasteboard/paste-blockquote-into-blockquote-2-expected.png: Removed.
        * platform/chromium-win/editing/pasteboard/paste-blockquote-into-blockquote-2-expected.txt: Removed.
        * platform/gtk/editing/pasteboard/paste-blockquote-into-blockquote-2-expected.txt: Removed.
        * platform/mac-leopard/editing/pasteboard/paste-blockquote-into-blockquote-2-expected.png: Removed.
        * platform/mac/editing/pasteboard/paste-blockquote-into-blockquote-2-expected.png: Removed.
        * platform/mac/editing/pasteboard/paste-blockquote-into-blockquote-2-expected.txt: Removed.
        * platform/qt/editing/pasteboard/paste-blockquote-into-blockquote-2-expected.txt: Removed.

2011-05-31  Kinuko Yasuda  <kinuko@chromium.org>

        Reviewed by Kent Tamura.

        [Chromium] webkitStorageInfo methods (for quota API) should not crash when error callback is not given.
        https://bugs.webkit.org/show_bug.cgi?id=61823

        Added a new test for the fix marked the new test 'skipped' on unsupported platforms.

        * platform/chromium/test_expectations.txt:
        * platform/gtk/Skipped:
        * platform/mac/Skipped:
        * platform/qt/Skipped:
        * platform/win/Skipped:
        * storage/storageinfo-no-callbacks-expected.txt: Added.
        * storage/storageinfo-no-callbacks.html: Added.

2011-05-31  Hironori Bono  <hbono@chromium.org>

        Reviewed by Eric Seidel.

        Send an input event when we change the text direction.
        https://bugs.webkit.org/show_bug.cgi?id=50952

        This adds a new layout test to verify that we can receive input events
        when we change the text direction of a <textarea> element and an <input>
        element.

        * fast/html/set-text-direction-expected.txt: Added.
        * fast/html/set-text-direction.html: Added.
        * platform/gtk/Skipped:
        * platform/mac-leopard/Skipped:
        * platform/mac-tiger/Skipped:
        * platform/qt/Skipped:
        * platform/win/Skipped:

2011-05-27  Adrienne Walker  <enne@google.com>

        Reviewed by James Robinson.

        [chromium] Fix crash from empty reflections with masks
        https://bugs.webkit.org/show_bug.cgi?id=61654

        * compositing/reflections/empty-reflection-with-mask-expected.txt: Added.
        * compositing/reflections/empty-reflection-with-mask.html: Added.

2011-05-31  Berend-Jan Wever  <skylined@chromium.org>

        Reviewed by Adam Barth.

        Add test to make sure an error in requestFileSystem or resolveLocalFileSystemURI
        when no error callback is supplied does not cause a NULL ptr.
        https://bugs.webkit.org/show_bug.cgi?id=49539

        * fast/filesystem/filesystem-no-callback-null-ptr-crash.html: Added.
        * fast/filesystem/filesystem-no-callback-null-ptr-crash-expected.txt: Added.

2011-05-31  Hao Zheng  <zhenghao@chromium.org>

        Reviewed by Tony Chang.

        Flush output buffer of php.
        https://bugs.webkit.org/show_bug.cgi?id=56060

        On Lucid, the output buffer is enabled by default, but it's not
        enabled on Hardy. Fix test http/tests/loading/preload-slow-loading.php
        http://www.php.net/manual/en/function.ob-flush.php

        * http/tests/loading/preload-slow-loading.php:
        * platform/chromium/test_expectations.txt:

2011-05-31  Adam Barth  <abarth@webkit.org>

        Add chromium-mac-leopard image results for these SVG tests.

        * platform/chromium-mac-leopard/svg/custom/invalid-fill-expected.png: Added.
        * platform/chromium-mac-leopard/svg/custom/invalid-fill-hex-expected.png: Added.
        * platform/chromium-mac-leopard/svg/custom/invalid-stroke-hex-expected.png: Added.
        * platform/chromium-mac-leopard/svg/custom/invalid-uri-stroke-expected.png: Added.

2011-05-31  Rob Buis  <rbuis@rim.com>

        RS=Dirk Schulze.

        run-webkit-tests on animate-path-nested-transform.html crashes
        https://bugs.webkit.org/show_bug.cgi?id=61798

        "Fix" the crashing test by choosing safer values.

        * svg/animations/script-tests/animate-path-nested-transforms.js:
        (executeTest):

2011-05-31  Rob Buis  <rbuis@rim.com>

        Reviewed by Dirk Schulze.

        https://bugs.webkit.org/show_bug.cgi?id=34301
        Creating <animateMotion> elements via javascript do not execute

        https://bugs.webkit.org/show_bug.cgi?id=17043
        SVG missing some .idl files

        Verify that adding mpath via javascript works.

        * svg/animations/animate-mpath-insert-expected.txt: Added.
        * svg/animations/animate-mpath-insert.html: Added.
        * svg/animations/script-tests/animate-mpath-insert.js: Added.
        (mpath.setAttributeNS.animateMotion.appendChild.g.appendChild.rootSVGElement.appendChild.passIfCloseEnough):
        (startSample):
        (endSample):
        (executeTest):

2011-05-31  Abhishek Arya  <inferno@chromium.org>

        Reviewed by Dimitri Glazkov.

        Tests that cloning an audio element with media controls does
        not result in crash.
        https://bugs.webkit.org/show_bug.cgi?id=61765

        * media/media-controls-clone-crash-expected.txt: Added.
        * media/media-controls-clone-crash.html: Added.

2011-05-31  Andreas Kling  <kling@webkit.org>

        Unreviewed. Rebaseline Mac after JSC/Canvas bindings changes.

        * platform/mac/canvas/philip/tests/2d.missingargs-expected.txt:

2011-05-31  Abhishek Arya  <inferno@chromium.org>

        Reviewed by Dimitri Glazkov.

        Test that we do not crash when a DOMNodeInsertedIntoDocument event
        is fired while generating a error message block in xml parsing.
        https://bugs.webkit.org/show_bug.cgi?id=61688

        * fast/dom/xml-parser-error-message-crash-expected.txt: Added.
        * fast/dom/xml-parser-error-message-crash.svg: Added.

2011-05-31  Andreas Kling  <kling@webkit.org>

        Reviewed by Antti Koivisto.

        Canvas/JSC: Auto-generate overloads for setShadow()
        https://bugs.webkit.org/show_bug.cgi?id=61786

        Add a test to verify the behavior of setShadow() when called
        with different numbers of arguments.

        * fast/canvas/canvas-overloads-setShadow-expected.txt: Added.
        * fast/canvas/canvas-overloads-setShadow.html: Added.
        * fast/canvas/script-tests/canvas-overloads-setShadow.js: Added.

2011-05-31  Andreas Kling  <kling@webkit.org>

        Reviewed by Antti Koivisto.

        Canvas/JSC: Auto-generate overloads for drawImageFromRect()
        https://bugs.webkit.org/show_bug.cgi?id=61709

        Add a test to verify the behavior of drawImageFromRect() when called
        with different numbers of arguments.

        * fast/canvas/canvas-overloads-drawImageFromRect-expected.txt: Added.
        * fast/canvas/canvas-overloads-drawImageFromRect.html: Added.
        * fast/canvas/script-tests/canvas-overloads-drawImageFromRect.js: Added.

2011-05-31  Andreas Kling  <kling@webkit.org>

        Reviewed by Antti Koivisto.

        Canvas/JSC: Auto-generate overloads for drawImage()
        https://bugs.webkit.org/show_bug.cgi?id=61703

        Add a test to verify the behavior of drawImage() when called with
        different numbers of arguments.

        * fast/canvas/canvas-overloads-drawImage-expected.txt: Added.
        * fast/canvas/canvas-overloads-drawImage.html: Added.
        * fast/canvas/script-tests/canvas-overloads-drawImage.js: Added.

2011-05-31  Andreas Kling  <kling@webkit.org>

        Reviewed by Antti Koivisto.

        Canvas/JSC: Auto-generate overloads for strokeRect()
        https://bugs.webkit.org/show_bug.cgi?id=61641

        Add a test to verify the behavior of strokeRect() when called with
        different numbers of arguments.

        * fast/canvas/canvas-overloads-strokeRect-expected.txt: Added.
        * fast/canvas/canvas-overloads-strokeRect.html: Added.
        * fast/canvas/script-tests/canvas-overloads-strokeRect.js: Added.

2011-05-31  Andreas Kling  <kling@webkit.org>

        Reviewed by Antti Koivisto.

        Canvas/JSC: Auto-generate overloads for setFillColor()
        https://bugs.webkit.org/show_bug.cgi?id=61635

        Add a test to verify the behavior of setFillColor() when called with
        different numbers of arguments.

        * fast/canvas/canvas-overloads-setFillColor-expected.txt: Added.
        * fast/canvas/canvas-overloads-setFillColor.html: Added.
        * fast/canvas/script-tests/canvas-overloads-setFillColor.js: Added.

2011-05-31  Andreas Kling  <kling@webkit.org>

        Reviewed by Antti Koivisto.

        Canvas/JSC: Auto-generate overloads for setStrokeColor()
        https://bugs.webkit.org/show_bug.cgi?id=61629

        Add a test to verify the behavior of setStrokeColor() when called with
        different numbers of arguments.

        * fast/canvas/canvas-overloads-setStrokeColor-expected.txt: Added.
        * fast/canvas/canvas-overloads-setStrokeColor.html: Added.
        * fast/canvas/script-tests/canvas-overloads-setStrokeColor.js: Added.

2011-05-31  Andreas Kling  <kling@webkit.org>

        Reviewed by Antti Koivisto.

        Canvas/JSC: Auto-generate overloads for strokeText()
        https://bugs.webkit.org/show_bug.cgi?id=61626

        Add a test to verify the behavior of strokeText() when called with different
        numbers of arguments. There are two differences to the previous behavior:

        - SyntaxError exceptions are now raised with the message "Not enough arguments."
        - Calling strokeText() with superfluous arguments now lets the call through
          instead of raising a SyntaxError. This matches both Gecko and Presto.

        * fast/canvas/canvas-overloads-strokeText-expected.txt: Added.
        * fast/canvas/canvas-overloads-strokeText.html: Added.
        * fast/canvas/script-tests/canvas-overloads-strokeText.js: Added.

2011-05-31  Andreas Kling  <kling@webkit.org>

        Reviewed by Antti Koivisto.

        Canvas/JSC: Auto-generate overloads for fillText()
        https://bugs.webkit.org/show_bug.cgi?id=61623

        Add a test to verify the behavior of fillText() when called with different
        numbers of arguments. There are two differences to the previous behavior:

        - SyntaxError exceptions are now raised with the message "Not enough arguments."
        - Calling fillText() with superfluous arguments now lets the call through
          instead of raising a SyntaxError. This matches both Gecko and Presto.

        * fast/canvas/canvas-overloads-fillText-expected.txt: Added.
        * fast/canvas/canvas-overloads-fillText.html: Added.
        * fast/canvas/script-tests/canvas-overloads-fillText.js: Added.

2011-05-31  Simon Fraser  <simon.fraser@apple.com>

        Reviewed by Kenneth Rohde Christiansen.

        Frame flattening is broken with nested frames
        https://bugs.webkit.org/show_bug.cgi?id=61491

        * fast/frames/flattening/iframe-flattening-nested.html: Added.
        * fast/frames/flattening/resources/inner-frame.html: Added.
        * fast/frames/flattening/resources/intermediate-frame.html: Added.
        * platform/mac/fast/frames/flattening/iframe-flattening-nested-expected.png: Added.
        * platform/mac/fast/frames/flattening/iframe-flattening-nested-expected.txt: Added.

2011-05-31  Mikhail Naganov  <mnaganov@chromium.org>

        [Chromium] Unreviewed tests results rebaseline after r87721.

        * platform/chromium-linux-x86/svg/custom/invalid-fill-expected.png: Added.
        * platform/chromium-linux-x86/svg/custom/invalid-fill-expected.txt: Copied from LayoutTests/platform/chromium-linux/svg/custom/invalid-fill-expected.txt.
        * platform/chromium-linux-x86/svg/custom/invalid-fill-hex-expected.png: Added.
        * platform/chromium-linux-x86/svg/custom/invalid-stroke-hex-expected.png: Added.
        * platform/chromium-linux-x86/svg/custom/invalid-uri-stroke-expected.png: Added.
        * platform/chromium-linux/svg/custom/invalid-fill-expected.png:
        * platform/chromium-linux/svg/custom/invalid-fill-expected.txt:
        * platform/chromium-linux/svg/custom/invalid-fill-hex-expected.png:
        * platform/chromium-linux/svg/custom/invalid-stroke-hex-expected.png: Added.
        * platform/chromium-linux/svg/custom/invalid-uri-stroke-expected.png: Added.
        * platform/chromium-win-vista/svg/custom/invalid-fill-expected.png: Added.
        * platform/chromium-win-vista/svg/custom/invalid-fill-expected.txt: Copied from LayoutTests/platform/chromium-linux/svg/custom/invalid-fill-expected.txt.
        * platform/chromium-win-vista/svg/custom/invalid-fill-hex-expected.png: Added.
        * platform/chromium-win-vista/svg/custom/invalid-fill-hex-expected.txt: Copied from LayoutTests/platform/chromium-linux/svg/custom/invalid-fill-expected.txt.
        * platform/chromium-win-vista/svg/custom/invalid-stroke-hex-expected.png: Added.
        * platform/chromium-win-vista/svg/custom/invalid-stroke-hex-expected.txt: Added.
        * platform/chromium-win-vista/svg/custom/invalid-uri-stroke-expected.png: Added.
        * platform/chromium-win-vista/svg/custom/invalid-uri-stroke-expected.txt: Added.

2011-05-31  Oliver Varga  <Varga.Oliver@stud.u-szeged.hu>

        Reviewed by Nikolas Zimmermann.

        Invalid color handling is broken for SVG
        https://bugs.webkit.org/show_bug.cgi?id=58531

        Fix invalid color fallback handling. If the fill/stroke attributes computed
        value leads to a an invalid color, inherit the desired color from the parent
        style instead. Matches Opera/FF and SVG 1.1 Second Edition (http://www.w3.org/TR/SVG/).

        * platform/chromium-linux/svg/custom/invalid-fill-expected.txt:
        * platform/chromium-linux/svg/custom/invalid-fill-hex-expected.txt:
        * platform/chromium-linux/svg/custom/invalid-stroke-hex-expected.txt: Added.
        * platform/chromium-linux/svg/custom/invalid-uri-stroke-expected.txt: Added.
        * platform/mac/svg/custom/invalid-fill-expected.png:
        * platform/mac/svg/custom/invalid-fill-expected.txt:
        * platform/mac/svg/custom/invalid-fill-hex-expected.png:
        * platform/mac/svg/custom/invalid-fill-hex-expected.txt:
        * platform/mac/svg/custom/invalid-stroke-hex-expected.png: Added.
        * platform/mac/svg/custom/invalid-stroke-hex-expected.txt: Added.
        * platform/mac/svg/custom/invalid-uri-stroke-expected.png: Added.
        * platform/mac/svg/custom/invalid-uri-stroke-expected.txt: Added.
        * platform/qt/svg/custom/invalid-fill-expected.txt:
        * platform/qt/svg/custom/invalid-fill-hex-expected.txt:
        * platform/qt/svg/custom/invalid-stroke-hex-expected.txt: Added.
        * platform/qt/svg/custom/invalid-uri-stroke-expected.txt: Added.
        * svg/custom/invalid-fill-hex.svg:
        * svg/custom/invalid-fill.svg:
        * svg/custom/invalid-stroke-hex.svg: Added.
        * svg/custom/invalid-uri-stroke.svg: Added.

2011-05-31  Yuta Kitamura  <yutak@chromium.org>

        Reviewed by Kent Tamura.

        WebSocket: Make the output of client-close.html more verbose
        https://bugs.webkit.org/show_bug.cgi?id=61770

        * http/tests/websocket/tests/client-close-expected.txt:
        * http/tests/websocket/tests/client-close.html:
        * http/tests/websocket/tests/client-close_wsh.py:
        Echo back the first two bytes received from the client.

2011-05-31  Zoltan Horvath  <zoltan@webkit.org>

        [Qt][WK2] Ossyize editing/pasteboard/copy-standalone-image-crash.html since eventSender is not implemented.

        * platform/qt-wk2/Skipped:

2011-05-31  Yuta Kitamura  <yutak@chromium.org>

        Unreviewed. Update Chromium test expectation for http/tests/websocket/tests/client-close.html.

        * platform/chromium/test_expectations.txt:

2011-05-30  Gabor Loki  <loki@webkit.org>

        Rubber-stamped by Csaba Osztrogonác.

        [Qt] Skip crashed test after r87691-r87693 on ARM
        https://bugs.webkit.org/show_bug.cgi?id=61764

        * platform/qt-arm/Skipped:

2011-05-30  James Kozianski  <koz@chromium.org>

        Reviewed by Kent Tamura.

        [Chromium] Make isValidProtocol() accept protocols with '+'.
        https://bugs.webkit.org/show_bug.cgi?id=61759

        * platform/chromium/fast/dom/navigator-detached-no-crash-expected.txt: Added.
        * platform/chromium/fast/dom/register-protocol-handler-expected.txt: Added.

2011-05-30  Andrey Petrov  <andrey.petrov@gmail.com>

        Reviewed by Hajime Morita.

        Using jQuery to show/hide IMG elements crashes WebKit
        https://bugs.webkit.org/show_bug.cgi?id=31721

        * editing/pasteboard/copy-standalone-image-crash-expected.txt: Added.
        * editing/pasteboard/copy-standalone-image-crash.html: Added.

2011-05-30  Kent Tamura  <tkent@chromium.org>

        [Mac] Skip a flaky test: svg/zoom/page/zoom-svg-through-object-with-text.xhtml

        * platform/mac/Skipped:

2011-05-30  Martin Robinson  <mrobinson@igalia.com>

        Reviewed by Xan Lopez.

        [GTK] fast/css/font-face-zero-hash-key.html is crashing on the bots
        https://bugs.webkit.org/show_bug.cgi?id=61693

        * platform/gtk/Skipped: Unskip the test which is no longer crashing.

2011-05-30  Gavin Peters  <gavinp@chromium.org>

        Reviewed by Adam Barth.

        prevent HTMLLinkElement from watching multiple CachedResources
        https://bugs.webkit.org/show_bug.cgi?id=61686

        If we modify an existing link element, stop listening to the previous
        cached resource, to prevent double notifications (which crash).

        * fast/dom/HTMLLinkElement/prefetch-too-many-clients-expected.txt: Added.
        * fast/dom/HTMLLinkElement/prefetch-too-many-clients.html: Added.
        * platform/gtk/Skipped:
        * platform/mac/Skipped:
        * platform/qt/Skipped:
        * platform/win/Skipped:

2011-05-30  Sheriff Bot  <webkit.review.bot@gmail.com>

        Unreviewed, rolling out r87683.
        http://trac.webkit.org/changeset/87683
        https://bugs.webkit.org/show_bug.cgi?id=61729

        Breaks inspector tests on Chromium (Requested by apavlov on
        #webkit).

        * http/tests/inspector/inspect-iframe-from-different-domain.html:
        * inspector/elements/elements-delete-inline-style.html:
        * inspector/elements/elements-panel-styles.html:
        * inspector/styles/styles-iframe.html:
        * inspector/styles/styles-update-from-js-expected.txt:
        * inspector/styles/styles-update-from-js.html:
        * inspector/styles/styles-url-linkify.html:

2011-05-30  Gabor Rapcsanyi  <rgabor@webkit.org>

        Rubber-stamped by Csaba Osztrogonác.

        [Qt] Remove passing tests from ARM Skipped list

        * platform/qt-arm/Skipped:
        * platform/qt-arm/fast: Removed.
        * platform/qt-arm/fast/block: Removed.
        * platform/qt-arm/fast/block/float: Removed.
        * platform/qt-arm/fast/block/float/float-not-removed-from-next-sibling-expected.txt: Removed.
        * platform/qt-arm/fast/block/float/float-not-removed-from-next-sibling2-expected.txt: Removed.
        * platform/qt-arm/fast/block/float/float-not-removed-from-next-sibling3-expected.txt: Removed.
        * platform/qt-arm/fast/block/float/float-not-removed-from-next-sibling4-expected.txt: Removed.
        * platform/qt-arm/fast/transforms: Removed.
        * platform/qt-arm/fast/transforms/transform-positioned-ancestor-expected.txt: Removed.
        * platform/qt-arm/transforms: Removed.
        * platform/qt-arm/transforms/2d: Removed.
        * platform/qt-arm/transforms/2d/compound-transforms-vs-containers-expected.txt: Removed.
        * platform/qt-arm/transforms/2d/transform-borderbox-expected.txt: Removed.
        * platform/qt-arm/transforms/2d/transform-origin-borderbox-expected.txt: Removed.
        * platform/qt-arm/transforms/2d/zoom-menulist-expected.txt: Removed.
        * platform/qt-arm/transforms/no_transform_hit_testing-expected.txt: Removed.
        * platform/qt-arm/transforms/svg-vs-css-expected.txt: Removed.

2011-05-27  Alexander Pavlov  <apavlov@chromium.org>

        Reviewed by Yury Semikhatsky.

        Web Inspector: node selection is slow in the Elements panel.
        https://bugs.webkit.org/show_bug.cgi?id=60813

        * http/tests/inspector/inspect-iframe-from-different-domain.html:
        * inspector/elements/elements-delete-inline-style.html:
        * inspector/elements/elements-panel-styles.html:
        * inspector/styles/styles-iframe.html:
        * inspector/styles/styles-update-from-js.html:
        * inspector/styles/styles-update-from-js-expected.txt:
        * inspector/styles/styles-url-linkify.html:

2011-05-30  Mikhail Naganov  <mnaganov@chromium.org>

        Unreviewed.
        [Chromium] Rebaseline tests after r87680.

        * platform/chromium-linux-x86/svg/dynamic-updates/SVGFEConvolveMatrixElement-dom-bias-attr-expected.png: Added.
        * platform/chromium-linux-x86/svg/dynamic-updates/SVGFEConvolveMatrixElement-dom-divisor-attr-expected.png: Added.
        * platform/chromium-linux-x86/svg/dynamic-updates/SVGFEConvolveMatrixElement-dom-edgeMode-attr-expected.png: Added.
        * platform/chromium-linux-x86/svg/dynamic-updates/SVGFEConvolveMatrixElement-dom-in-attr-expected.png: Added.
        * platform/chromium-linux-x86/svg/dynamic-updates/SVGFEConvolveMatrixElement-dom-kernelMatrix-attr-expected.png: Added.
        * platform/chromium-linux-x86/svg/dynamic-updates/SVGFEConvolveMatrixElement-dom-kernelUnitLength-attr-expected.png: Added.
        * platform/chromium-linux-x86/svg/dynamic-updates/SVGFEConvolveMatrixElement-dom-order-attr-expected.png: Added.
        * platform/chromium-linux-x86/svg/dynamic-updates/SVGFEConvolveMatrixElement-dom-preserveAlpha-attr-expected.png: Added.
        * platform/chromium-linux-x86/svg/dynamic-updates/SVGFEConvolveMatrixElement-dom-targetX-attr-expected.png: Added.
        * platform/chromium-linux-x86/svg/dynamic-updates/SVGFEConvolveMatrixElement-svgdom-bias-prop-expected.png: Added.
        * platform/chromium-linux-x86/svg/dynamic-updates/SVGFEConvolveMatrixElement-svgdom-divisor-prop-expected.png: Added.
        * platform/chromium-linux-x86/svg/dynamic-updates/SVGFEConvolveMatrixElement-svgdom-in-prop-expected.png: Added.
        * platform/chromium-linux-x86/svg/dynamic-updates/SVGFEConvolveMatrixElement-svgdom-kernelMatrix-prop-expected.png: Added.
        * platform/chromium-linux-x86/svg/dynamic-updates/SVGFEConvolveMatrixElement-svgdom-kernelUnitLength-prop-expected.png: Added.
        * platform/chromium-linux-x86/svg/dynamic-updates/SVGFEConvolveMatrixElement-svgdom-order-prop-expected.png: Added.
        * platform/chromium-linux-x86/svg/dynamic-updates/SVGFEConvolveMatrixElement-svgdom-preserveAlpha-prop-expected.png: Added.
        * platform/chromium-linux-x86/svg/dynamic-updates/SVGFEConvolveMatrixElement-svgdom-targetX-prop-expected.png: Added.
        * platform/chromium-linux-x86/svg/filters/feConvolveFilter-y-bounds-expected.png: Added.
        * platform/chromium-linux/svg/dynamic-updates/SVGFEConvolveMatrixElement-dom-bias-attr-expected.png:
        * platform/chromium-linux/svg/dynamic-updates/SVGFEConvolveMatrixElement-dom-divisor-attr-expected.png:
        * platform/chromium-linux/svg/dynamic-updates/SVGFEConvolveMatrixElement-dom-edgeMode-attr-expected.png:
        * platform/chromium-linux/svg/dynamic-updates/SVGFEConvolveMatrixElement-dom-in-attr-expected.png:
        * platform/chromium-linux/svg/dynamic-updates/SVGFEConvolveMatrixElement-dom-kernelMatrix-attr-expected.png:
        * platform/chromium-linux/svg/dynamic-updates/SVGFEConvolveMatrixElement-dom-kernelUnitLength-attr-expected.png:
        * platform/chromium-linux/svg/dynamic-updates/SVGFEConvolveMatrixElement-dom-order-attr-expected.png:
        * platform/chromium-linux/svg/dynamic-updates/SVGFEConvolveMatrixElement-dom-preserveAlpha-attr-expected.png:
        * platform/chromium-linux/svg/dynamic-updates/SVGFEConvolveMatrixElement-dom-targetX-attr-expected.png:
        * platform/chromium-linux/svg/dynamic-updates/SVGFEConvolveMatrixElement-svgdom-bias-prop-expected.png:
        * platform/chromium-linux/svg/dynamic-updates/SVGFEConvolveMatrixElement-svgdom-divisor-prop-expected.png:
        * platform/chromium-linux/svg/dynamic-updates/SVGFEConvolveMatrixElement-svgdom-in-prop-expected.png:
        * platform/chromium-linux/svg/dynamic-updates/SVGFEConvolveMatrixElement-svgdom-kernelMatrix-prop-expected.png:
        * platform/chromium-linux/svg/dynamic-updates/SVGFEConvolveMatrixElement-svgdom-kernelUnitLength-prop-expected.png:
        * platform/chromium-linux/svg/dynamic-updates/SVGFEConvolveMatrixElement-svgdom-order-prop-expected.png:
        * platform/chromium-linux/svg/dynamic-updates/SVGFEConvolveMatrixElement-svgdom-preserveAlpha-prop-expected.png:
        * platform/chromium-linux/svg/dynamic-updates/SVGFEConvolveMatrixElement-svgdom-targetX-prop-expected.png:
        * platform/chromium-linux/svg/filters/feConvolveFilter-y-bounds-expected.png: Added.
        * platform/chromium-mac-leopard/svg/W3C-SVG-1.1/filters-conv-01-f-expected.png:
        * platform/chromium-mac-leopard/svg/dynamic-updates/SVGFEConvolveMatrixElement-dom-bias-attr-expected.png:
        * platform/chromium-mac-leopard/svg/dynamic-updates/SVGFEConvolveMatrixElement-dom-divisor-attr-expected.png:
        * platform/chromium-mac-leopard/svg/dynamic-updates/SVGFEConvolveMatrixElement-dom-edgeMode-attr-expected.png:
        * platform/chromium-mac-leopard/svg/dynamic-updates/SVGFEConvolveMatrixElement-dom-in-attr-expected.png:
        * platform/chromium-mac-leopard/svg/dynamic-updates/SVGFEConvolveMatrixElement-dom-kernelMatrix-attr-expected.png:
        * platform/chromium-mac-leopard/svg/dynamic-updates/SVGFEConvolveMatrixElement-dom-kernelUnitLength-attr-expected.png:
        * platform/chromium-mac-leopard/svg/dynamic-updates/SVGFEConvolveMatrixElement-dom-order-attr-expected.png:
        * platform/chromium-mac-leopard/svg/dynamic-updates/SVGFEConvolveMatrixElement-dom-targetX-attr-expected.png:
        * platform/chromium-mac-leopard/svg/dynamic-updates/SVGFEConvolveMatrixElement-svgdom-bias-prop-expected.png:
        * platform/chromium-mac-leopard/svg/dynamic-updates/SVGFEConvolveMatrixElement-svgdom-divisor-prop-expected.png:
        * platform/chromium-mac-leopard/svg/dynamic-updates/SVGFEConvolveMatrixElement-svgdom-in-prop-expected.png:
        * platform/chromium-mac-leopard/svg/dynamic-updates/SVGFEConvolveMatrixElement-svgdom-kernelMatrix-prop-expected.png:
        * platform/chromium-mac-leopard/svg/dynamic-updates/SVGFEConvolveMatrixElement-svgdom-kernelUnitLength-prop-expected.png:
        * platform/chromium-mac-leopard/svg/dynamic-updates/SVGFEConvolveMatrixElement-svgdom-order-prop-expected.png:
        * platform/chromium-mac-leopard/svg/dynamic-updates/SVGFEConvolveMatrixElement-svgdom-targetX-prop-expected.png:
        * platform/chromium-mac/svg/W3C-SVG-1.1/filters-conv-01-f-expected.png: Added.
        * platform/chromium-mac/svg/dynamic-updates/SVGFEConvolveMatrixElement-dom-bias-attr-expected.png:
        * platform/chromium-mac/svg/dynamic-updates/SVGFEConvolveMatrixElement-dom-divisor-attr-expected.png:
        * platform/chromium-mac/svg/dynamic-updates/SVGFEConvolveMatrixElement-dom-edgeMode-attr-expected.png:
        * platform/chromium-mac/svg/dynamic-updates/SVGFEConvolveMatrixElement-dom-in-attr-expected.png:
        * platform/chromium-mac/svg/dynamic-updates/SVGFEConvolveMatrixElement-dom-kernelMatrix-attr-expected.png:
        * platform/chromium-mac/svg/dynamic-updates/SVGFEConvolveMatrixElement-dom-kernelUnitLength-attr-expected.png:
        * platform/chromium-mac/svg/dynamic-updates/SVGFEConvolveMatrixElement-dom-order-attr-expected.png:
        * platform/chromium-mac/svg/dynamic-updates/SVGFEConvolveMatrixElement-dom-targetX-attr-expected.png:
        * platform/chromium-mac/svg/dynamic-updates/SVGFEConvolveMatrixElement-svgdom-bias-prop-expected.png:
        * platform/chromium-mac/svg/dynamic-updates/SVGFEConvolveMatrixElement-svgdom-divisor-prop-expected.png:
        * platform/chromium-mac/svg/dynamic-updates/SVGFEConvolveMatrixElement-svgdom-in-prop-expected.png:
        * platform/chromium-mac/svg/dynamic-updates/SVGFEConvolveMatrixElement-svgdom-kernelMatrix-prop-expected.png:
        * platform/chromium-mac/svg/dynamic-updates/SVGFEConvolveMatrixElement-svgdom-kernelUnitLength-prop-expected.png:
        * platform/chromium-mac/svg/dynamic-updates/SVGFEConvolveMatrixElement-svgdom-order-prop-expected.png:
        * platform/chromium-mac/svg/dynamic-updates/SVGFEConvolveMatrixElement-svgdom-targetX-prop-expected.png:
        * platform/chromium-win-vista/svg/dynamic-updates/SVGFEConvolveMatrixElement-dom-bias-attr-expected.png: Added.
        * platform/chromium-win-vista/svg/dynamic-updates/SVGFEConvolveMatrixElement-dom-divisor-attr-expected.png: Added.
        * platform/chromium-win-vista/svg/dynamic-updates/SVGFEConvolveMatrixElement-dom-edgeMode-attr-expected.png: Added.
        * platform/chromium-win-vista/svg/dynamic-updates/SVGFEConvolveMatrixElement-dom-in-attr-expected.png: Added.
        * platform/chromium-win-vista/svg/dynamic-updates/SVGFEConvolveMatrixElement-dom-kernelMatrix-attr-expected.png: Added.
        * platform/chromium-win-vista/svg/dynamic-updates/SVGFEConvolveMatrixElement-dom-kernelUnitLength-attr-expected.png: Added.
        * platform/chromium-win-vista/svg/dynamic-updates/SVGFEConvolveMatrixElement-dom-order-attr-expected.png: Added.
        * platform/chromium-win-vista/svg/dynamic-updates/SVGFEConvolveMatrixElement-dom-preserveAlpha-attr-expected.png: Added.
        * platform/chromium-win-vista/svg/dynamic-updates/SVGFEConvolveMatrixElement-dom-targetX-attr-expected.png: Added.
        * platform/chromium-win-vista/svg/dynamic-updates/SVGFEConvolveMatrixElement-svgdom-bias-prop-expected.png: Added.
        * platform/chromium-win-vista/svg/dynamic-updates/SVGFEConvolveMatrixElement-svgdom-divisor-prop-expected.png: Added.
        * platform/chromium-win-vista/svg/dynamic-updates/SVGFEConvolveMatrixElement-svgdom-edgeMode-prop-expected.png: Added.
        * platform/chromium-win-vista/svg/dynamic-updates/SVGFEConvolveMatrixElement-svgdom-in-prop-expected.png: Added.
        * platform/chromium-win-vista/svg/dynamic-updates/SVGFEConvolveMatrixElement-svgdom-kernelMatrix-prop-expected.png: Added.
        * platform/chromium-win-vista/svg/dynamic-updates/SVGFEConvolveMatrixElement-svgdom-kernelUnitLength-prop-expected.png: Added.
        * platform/chromium-win-vista/svg/dynamic-updates/SVGFEConvolveMatrixElement-svgdom-order-prop-expected.png: Added.
        * platform/chromium-win-vista/svg/dynamic-updates/SVGFEConvolveMatrixElement-svgdom-preserveAlpha-prop-expected.png: Added.
        * platform/chromium-win-vista/svg/dynamic-updates/SVGFEConvolveMatrixElement-svgdom-targetX-prop-expected.png: Added.
        * platform/chromium-win-vista/svg/filters/feConvolveFilter-y-bounds-expected.png: Added.

2011-05-30  Ryan Sleevi  <rsleevi@chromium.org>

        Reviewed by Darin Adler.

        FEConvolveMatrix::getPixelValue() fails to properly check if y is within bounds, causing it to fail to correctly apply the kernel and edge mode to the first targetY pixels
        https://bugs.webkit.org/show_bug.cgi?id=61603

        * platform/mac/svg/filters/feConvolveFilter-y-bounds-expected.png: Added.
        * platform/mac/svg/filters/feConvolveFilter-y-bounds-expected.txt: Added.
        * svg/filters/feConvolveFilter-y-bounds.svg: Added.

2011-05-30  Sheriff Bot  <webkit.review.bot@gmail.com>

        Unreviewed, rolling out r87618.
        http://trac.webkit.org/changeset/87618
        https://bugs.webkit.org/show_bug.cgi?id=61720

        Causes BrowserFocusTest.FocusOnReload to fail (Requested by
        abarth|gardener on #webkit).

        * fast/dom/HTMLLinkElement/prefetch-too-many-clients-expected.txt: Removed.
        * fast/dom/HTMLLinkElement/prefetch-too-many-clients.html: Removed.
        * platform/gtk/Skipped:
        * platform/mac/Skipped:
        * platform/qt/Skipped:
        * platform/win/Skipped:

2011-05-29  Yuta Kitamura  <yutak@chromium.org>

        Reviewed by Kent Tamura.

        WebSocket closing handshake
        https://bugs.webkit.org/show_bug.cgi?id=35721

        * http/tests/websocket/tests/client-close-expected.txt: Added.
        * http/tests/websocket/tests/client-close.html: Added. Test client-initiated close.
        * http/tests/websocket/tests/client-close_wsh.py: Added.
        * http/tests/websocket/tests/close-before-open-expected.txt: Add a new console message.
        * http/tests/websocket/tests/close-event-expected.txt:
        * http/tests/websocket/tests/close-event.html: Test if closeEvent.wasClean is true.
        * http/tests/websocket/tests/close-unref-websocket-expected.txt: Add a new console message.
        * http/tests/websocket/tests/frame-length-longer-than-buffer_wsh.py:
        We need to stop pywebsocket from starting the closing handshake. Otherwise, pywebsocket
        waits for a close frame to arrive and this test will time out.
        * http/tests/websocket/tests/server-close-expected.txt: Added.
        * http/tests/websocket/tests/server-close.html: Added. Test server-initiated close.
        * http/tests/websocket/tests/server-close_wsh.py: Added.
        * http/tests/websocket/tests/websocket-event-target-expected.txt: Add a new console message.

2011-05-29  Adam Barth  <abarth@webkit.org>

        More IMAGE results.

        * platform/chromium-mac-leopard/svg/wicd/test-scalable-background-image1-expected.png: Added.

2011-05-29  Adam Barth  <abarth@webkit.org>

        Add image baselines for all these beautiful platforms.

        * platform/chromium-linux-x86/fullscreen: Added.
        * platform/chromium-linux-x86/fullscreen/full-screen-iframe-zIndex-expected.png: Added.
        * platform/chromium-linux/fullscreen/full-screen-iframe-zIndex-expected.png: Added.
        * platform/chromium-mac-leopard/fullscreen: Added.
        * platform/chromium-mac-leopard/fullscreen/full-screen-iframe-zIndex-expected.png: Added.
        * platform/chromium-mac/fullscreen: Added.
        * platform/chromium-mac/fullscreen/full-screen-iframe-zIndex-expected.png: Added.
        * platform/chromium-win-vista/fullscreen: Added.
        * platform/chromium-win-vista/fullscreen/full-screen-iframe-zIndex-expected.png: Added.

2011-05-29  Jer Noble  <jer.noble@apple.com>

        Reviewed by Simon Fraser.

        Embedded Vimeo video, when taken fullscreen, is overlapped by content from the enclosing page
        https://bugs.webkit.org/show_bug.cgi?id=61712

        * fullscreen/full-screen-iframe-zIndex-expected.txt: Added.
        * fullscreen/full-screen-iframe-zIndex.html: Added.
        * platform/mac/fullscreen/full-screen-iframe-zIndex-expected.png: Added.

2011-05-29  Adam Barth  <abarth@webkit.org>

        Add expected result.

        * platform/chromium-mac-leopard/svg/wicd/test-scalable-background-image2-expected.png: Added.

2011-05-29  Adam Barth  <abarth@webkit.org>

        Slightly adjust the type of the expected failure.

        * platform/chromium/test_expectations.txt:

2011-05-28  Alexey Proskuryakov  <ap@apple.com>

        Reviewed by Geoff Garen.

        REGRESSION (r85375): Load event is sometimes lost when multiple image elements use the same URL
        https://bugs.webkit.org/show_bug.cgi?id=61692
        <rdar://problem/9488628>

        * fast/dom/gc-image-element-2-expected.txt: Added.
        * fast/dom/gc-image-element-2.html: Added.

2011-05-28  Martin Robinson  <mrobinson@igalia.com>

        Skip a failing test and better classify some existing skipped tests.

        * platform/gtk/Skipped: Update the skipped list.

2011-05-28  Gavin Peters  <gavinp@chromium.org>

        Reviewed by Adam Barth.

        prevent HTMLLinkElement from watching multiple CachedResources
        https://bugs.webkit.org/show_bug.cgi?id=61686

        If we modify an existing link element, stop listening to the previous
        cached resource, to prevent double notifications (which crash).

        * fast/dom/HTMLLinkElement/prefetch-too-many-clients-expected.txt: Added.
        * fast/dom/HTMLLinkElement/prefetch-too-many-clients.html: Added.
        * platform/gtk/Skipped:
        * platform/mac/Skipped:
        * platform/qt/Skipped:
        * platform/win/Skipped:

2011-05-28  Tonis Tiigi  <tonistiigi@gmail.com>

        Reviewed by Pavel Feldman.

        Web Inspector: there is a problem with computed style properties with wrong values
        https://bugs.webkit.org/show_bug.cgi?id=60535

        Adding cases that test invalid properties.

        * inspector/styles/styles-computed-trace-expected.txt:
        * inspector/styles/styles-computed-trace.html:

2011-05-28  Robert Hogan  <robert@webkit.org>

        Reviewed by Antonio Gomes.

        [Qt] fast/events/backspace-nagivates-back fails on Qt bots (Mac and Linux)
        https://bugs.webkit.org/show_bug.cgi?id=60311

        If there is no editable text Qt interprets backspace as a navigation
        command, regardless of platform.

        * platform/qt/fast/events/backspace-navigates-back-expected.txt: Added.

2011-05-28  Mikhail Naganov  <mnaganov@chromium.org>

        [Chromium] Unreviewed. Test expectations update after r87605

        * platform/chromium-linux-x86/svg/wicd/test-scalable-background-image1-expected.png: Added.
        * platform/chromium-linux-x86/svg/wicd/test-scalable-background-image1-expected.txt: Added.
        * platform/chromium-linux-x86/svg/wicd/test-scalable-background-image2-expected.png: Added.
        * platform/chromium-linux-x86/svg/wicd/test-scalable-background-image2-expected.txt: Added.
        * platform/chromium-linux/svg/wicd/test-scalable-background-image1-expected.png: Added.
        * platform/chromium-linux/svg/wicd/test-scalable-background-image1-expected.txt: Added.
        * platform/chromium-linux/svg/wicd/test-scalable-background-image2-expected.png: Added.
        * platform/chromium-linux/svg/wicd/test-scalable-background-image2-expected.txt: Added.
        * platform/chromium-win-vista/svg/wicd/test-scalable-background-image1-expected.png: Added.
        * platform/chromium-win-vista/svg/wicd/test-scalable-background-image1-expected.txt: Added.
        * platform/chromium-win-vista/svg/wicd/test-scalable-background-image2-expected.png: Added.
        * platform/chromium-win-vista/svg/wicd/test-scalable-background-image2-expected.txt: Added.

2011-05-28  Annie Sullivan  <sullivan@chromium.org>

        Reviewed by Ryosuke Niwa.

        editing/style/non-inheritable-styles should be dump-as-markup test
        https://bugs.webkit.org/show_bug.cgi?id=61681

        Converts the test to dump-as-markup and cleans up the HTML a bit.

        * editing/style/non-inheritable-styles-expected.txt: Added.
        * editing/style/non-inheritable-styles.html:
        * platform/chromium-linux/editing/style/non-inheritable-styles-expected.png: Removed.
        * platform/chromium-win/editing/style/non-inheritable-styles-expected.png: Removed.
        * platform/chromium-win/editing/style/non-inheritable-styles-expected.txt: Removed.
        * platform/gtk/editing/style/non-inheritable-styles-expected.png: Removed.
        * platform/gtk/editing/style/non-inheritable-styles-expected.txt: Removed.
        * platform/mac-leopard/editing/style/non-inheritable-styles-expected.png: Removed.
        * platform/mac/editing/style/non-inheritable-styles-expected.png: Removed.
        * platform/mac/editing/style/non-inheritable-styles-expected.txt: Removed.
        * platform/qt/editing/style/non-inheritable-styles-expected.png: Removed.
        * platform/qt/editing/style/non-inheritable-styles-expected.txt: Removed.

2011-05-27  Nikolas Zimmermann  <nzimmermann@rim.com>

        Not reviewed, this just adds a new test.

        WebKit fails WICD SVG background image tests
        https://bugs.webkit.org/show_bug.cgi?id=16481

        Add two WICD SVG background image tests, which pass just fine.

        * svg/wicd/resources/test-scalable-background-image1.css: Added.
        (html):
        (body):
        (p):
        * svg/wicd/resources/test-scalable-background-image1.svg: Added.
        * svg/wicd/resources/test-scalable-background-image2.css: Added.
        (html):
        * svg/wicd/resources/test-scalable-background-image2.svg: Added.
        * svg/wicd/test-scalable-background-image1.xhtml: Added.
        * svg/wicd/test-scalable-background-image2.xhtml: Added.

2011-05-27  Annie Sullivan  <sullivan@chromium.org>

        Reviewed by Ryosuke Niwa.

        editing/inserting/insert-3907422 should be dumpAsText test
        https://bugs.webkit.org/show_bug.cgi?id=61680

        Converted to dumpAsMarkup and cleaned up markup.

        * editing/inserting/insert-3907422-fix-expected.txt: Added.
        * editing/inserting/insert-3907422-fix.html:
        * platform/chromium-linux/editing/inserting/insert-3907422-fix-expected.png: Removed.
        * platform/chromium-mac-leopard/editing/inserting/insert-3907422-fix-expected.png: Removed.
        * platform/chromium-mac/editing/inserting/insert-3907422-fix-expected.png: Removed.
        * platform/chromium-win/editing/inserting/insert-3907422-fix-expected.png: Removed.
        * platform/chromium-win/editing/inserting/insert-3907422-fix-expected.txt: Removed.
        * platform/gtk/editing/inserting/insert-3907422-fix-expected.txt: Removed.
        * platform/mac/editing/inserting/insert-3907422-fix-expected.png: Removed.
        * platform/mac/editing/inserting/insert-3907422-fix-expected.txt: Removed.
        * platform/qt/editing/inserting/insert-3907422-fix-expected.txt: Removed.

2011-05-27  Jochen Eisinger  <jochen@chromium.org>

        Reviewed by Adam Barth.

        Check access policy on all storage operations
        https://bugs.webkit.org/show_bug.cgi?id=61581

        * platform/chromium/permissionclient/storage-permission-expected.txt: Added.
        * platform/chromium/permissionclient/storage-permission.html: Added.

2011-05-27  Adam Klein  <adamk@chromium.org>

        Unreviewed. Hopefully last rebaseline from r87526.

        * platform/chromium-mac-leopard/svg/hixie/text/003-expected.png: Added.

2011-05-27  Adam Klein  <adamk@chromium.org>

        Unreviewed. Even more rebaselines after r87526.

        * platform/chromium-linux-x86/svg/zoom/page/zoom-svg-through-object-with-percentage-size-expected.png: Added.
        * platform/chromium-linux-x86/svg/zoom/page/zoom-svg-through-object-with-percentage-size-expected.txt: Added.
        * platform/chromium-linux/svg/zoom/page/zoom-svg-through-object-with-percentage-size-expected.png: Added.
        * platform/chromium-linux/svg/zoom/page/zoom-svg-through-object-with-percentage-size-expected.txt: Added.
        * platform/chromium-mac-leopard/svg/custom/object-sizing-expected.png: Added.
        * platform/chromium-mac-leopard/svg/wicd/rightsizing-grid-expected.png: Added.
        * platform/chromium-mac-leopard/svg/wicd/test-rightsizing-b-expected.png: Added.
        * platform/chromium-mac-leopard/svg/zoom/page/zoom-coords-viewattr-01-b-expected.png: Removed.
        * platform/chromium-mac-leopard/svg/zoom/page/zoom-coords-viewattr-01-b-expected.txt: Removed.
        * platform/chromium-mac-leopard/svg/zoom/page/zoom-svg-through-object-with-percentage-size-expected.png: Added.
        * platform/chromium-win-vista/svg/zoom/page/zoom-svg-through-object-with-percentage-size-expected.png: Added.
        * platform/chromium-win-vista/svg/zoom/page/zoom-svg-through-object-with-percentage-size-expected.txt: Added.
        * platform/chromium/test_expectations.txt:

2011-05-27  Steve Lacey  <sjl@chromium.org>

        Reviewed by Eric Carlson.

        The behaviour of controls-after-reload was causing
        layoutTestController in DumpRenderTree to misbehave causing a reported
        failure in the test run after it (controls-css-overload).

        Effectively, notifyDone() ended up getting called again after the test
        was being torn down.

        This change removes the unneeded seek at the end of the test (as we
        should have already seeked to 0.

        https://bugs.webkit.org/show_bug.cgi?id=60132

        * media/controls-after-reload.html:
        * platform/chromium/test_expectations.txt:

2011-05-27  Adam Klein  <adamk@chromium.org>

        Unreviewed. More rebaselines after r87526.

        * platform/chromium-linux-x86/svg/in-html/by-reference-expected.txt: Copied from LayoutTests/platform/chromium-linux/svg/in-html/by-reference-expected.txt.
        * platform/chromium-linux/svg/in-html/by-reference-expected.txt:
        * platform/chromium-win-vista/svg/in-html/by-reference-expected.txt: Copied from LayoutTests/platform/chromium-linux/svg/in-html/by-reference-expected.txt.
        * platform/chromium-win-vista/svg/zoom/page/zoom-foreignObject-expected.png: Added.
        * platform/chromium/test_expectations.txt:

2011-05-27  Adrienne Walker  <enne@google.com>

        [chromium] Unreviewed. Adjust baselines for debug-only failing scrollbar test.
        https://bugs.webkit.org/show_bug.cgi?id=61652

        * platform/chromium-gpu-linux/compositing/direct-image-compositing-expected.png:
        * platform/chromium/test_expectations.txt:

2011-05-27  Adam Klein  <adamk@chromium.org>

        Unreviewed. Rebaselines and test expectations updates after r87526.

        * platform/chromium-linux-x86/http/tests/misc/object-embedding-svg-delayed-size-negotiation-expected.png: Added.
        * platform/chromium-linux-x86/http/tests/misc/object-embedding-svg-delayed-size-negotiation-expected.txt: Added.
        * platform/chromium-linux-x86/svg/custom/object-no-size-attributes-expected.txt: Added.
        * platform/chromium-linux-x86/svg/custom/object-sizing-expected.png: Added.
        * platform/chromium-linux-x86/svg/custom/object-sizing-expected.txt: Added.
        * platform/chromium-linux-x86/svg/custom/object-sizing-explicit-height-expected.png: Added.
        * platform/chromium-linux-x86/svg/custom/object-sizing-explicit-height-expected.txt: Added.
        * platform/chromium-linux-x86/svg/custom/object-sizing-explicit-width-expected.png: Added.
        * platform/chromium-linux-x86/svg/custom/object-sizing-explicit-width-expected.txt: Added.
        * platform/chromium-linux-x86/svg/custom/object-sizing-explicit-width-height-expected.png: Added.
        * platform/chromium-linux-x86/svg/custom/object-sizing-explicit-width-height-expected.txt: Added.
        * platform/chromium-linux-x86/svg/custom/object-sizing-no-width-height-change-content-box-size-expected.png: Added.
        * platform/chromium-linux-x86/svg/custom/object-sizing-no-width-height-expected.png: Added.
        * platform/chromium-linux-x86/svg/custom/object-sizing-no-width-height-expected.txt: Added.
        * platform/chromium-linux-x86/svg/wicd/rightsizing-grid-expected.png: Added.
        * platform/chromium-linux-x86/svg/wicd/rightsizing-grid-expected.txt: Added.
        * platform/chromium-linux-x86/svg/wicd/test-rightsizing-a-expected.png: Added.
        * platform/chromium-linux-x86/svg/wicd/test-rightsizing-a-expected.txt: Added.
        * platform/chromium-linux-x86/svg/wicd/test-rightsizing-b-expected.png: Added.
        * platform/chromium-linux-x86/svg/wicd/test-rightsizing-b-expected.txt: Added.
        * platform/chromium-linux-x86/svg/zoom/page/zoom-coords-viewattr-01-b-expected.png: Added.
        * platform/chromium-linux-x86/svg/zoom/page/zoom-coords-viewattr-01-b-expected.txt: Copied from LayoutTests/platform/chromium-linux/svg/zoom/page/zoom-coords-viewattr-01-b-expected.txt.
        * platform/chromium-linux-x86/svg/zoom/page/zoom-foreignObject-expected.txt: Added.
        * platform/chromium-linux/http/tests/misc/object-embedding-svg-delayed-size-negotiation-expected.png: Added.
        * platform/chromium-linux/http/tests/misc/object-embedding-svg-delayed-size-negotiation-expected.txt: Added.
        * platform/chromium-linux/svg/custom/object-no-size-attributes-expected.txt: Added.
        * platform/chromium-linux/svg/custom/object-sizing-expected.png: Added.
        * platform/chromium-linux/svg/custom/object-sizing-expected.txt: Added.
        * platform/chromium-linux/svg/custom/object-sizing-explicit-height-expected.png: Added.
        * platform/chromium-linux/svg/custom/object-sizing-explicit-height-expected.txt: Added.
        * platform/chromium-linux/svg/custom/object-sizing-explicit-width-expected.png: Added.
        * platform/chromium-linux/svg/custom/object-sizing-explicit-width-expected.txt: Added.
        * platform/chromium-linux/svg/custom/object-sizing-explicit-width-height-expected.png: Added.
        * platform/chromium-linux/svg/custom/object-sizing-explicit-width-height-expected.txt: Added.
        * platform/chromium-linux/svg/custom/object-sizing-no-width-height-change-content-box-size-expected.png: Added.
        * platform/chromium-linux/svg/custom/object-sizing-no-width-height-expected.png: Added.
        * platform/chromium-linux/svg/custom/object-sizing-no-width-height-expected.txt: Added.
        * platform/chromium-linux/svg/wicd/rightsizing-grid-expected.png: Added.
        * platform/chromium-linux/svg/wicd/rightsizing-grid-expected.txt: Added.
        * platform/chromium-linux/svg/wicd/test-rightsizing-a-expected.png: Added.
        * platform/chromium-linux/svg/wicd/test-rightsizing-a-expected.txt: Added.
        * platform/chromium-linux/svg/wicd/test-rightsizing-b-expected.png: Added.
        * platform/chromium-linux/svg/wicd/test-rightsizing-b-expected.txt: Added.
        * platform/chromium-linux/svg/zoom/page/zoom-coords-viewattr-01-b-expected.png:
        * platform/chromium-linux/svg/zoom/page/zoom-coords-viewattr-01-b-expected.txt:
        * platform/chromium-linux/svg/zoom/page/zoom-foreignObject-expected.txt: Added.
        * platform/chromium-mac/svg/zoom/page/zoom-coords-viewattr-01-b-expected.png: Added.
        * platform/chromium-mac/svg/zoom/page/zoom-coords-viewattr-01-b-expected.txt: Copied from LayoutTests/platform/chromium-linux/svg/zoom/page/zoom-coords-viewattr-01-b-expected.txt.
        * platform/chromium-win-vista/http/tests/misc/object-embedding-svg-delayed-size-negotiation-expected.png: Added.
        * platform/chromium-win-vista/http/tests/misc/object-embedding-svg-delayed-size-negotiation-expected.txt: Added.
        * platform/chromium-win-vista/svg/custom/object-no-size-attributes-expected.txt: Added.
        * platform/chromium-win-vista/svg/custom/object-sizing-expected.png: Added.
        * platform/chromium-win-vista/svg/custom/object-sizing-expected.txt: Added.
        * platform/chromium-win-vista/svg/custom/object-sizing-explicit-height-expected.png: Added.
        * platform/chromium-win-vista/svg/custom/object-sizing-explicit-height-expected.txt: Added.
        * platform/chromium-win-vista/svg/custom/object-sizing-explicit-width-expected.png: Added.
        * platform/chromium-win-vista/svg/custom/object-sizing-explicit-width-expected.txt: Added.
        * platform/chromium-win-vista/svg/custom/object-sizing-explicit-width-height-expected.png: Added.
        * platform/chromium-win-vista/svg/custom/object-sizing-explicit-width-height-expected.txt: Added.
        * platform/chromium-win-vista/svg/custom/object-sizing-no-width-height-change-content-box-size-expected.png: Added.
        * platform/chromium-win-vista/svg/custom/object-sizing-no-width-height-expected.png: Added.
        * platform/chromium-win-vista/svg/custom/object-sizing-no-width-height-expected.txt: Added.
        * platform/chromium-win-vista/svg/wicd/rightsizing-grid-expected.png: Added.
        * platform/chromium-win-vista/svg/wicd/rightsizing-grid-expected.txt: Added.
        * platform/chromium-win-vista/svg/wicd/test-rightsizing-a-expected.png: Added.
        * platform/chromium-win-vista/svg/wicd/test-rightsizing-a-expected.txt: Added.
        * platform/chromium-win-vista/svg/wicd/test-rightsizing-b-expected.png: Added.
        * platform/chromium-win-vista/svg/wicd/test-rightsizing-b-expected.txt: Added.
        * platform/chromium-win-vista/svg/zoom/page/zoom-coords-viewattr-01-b-expected.png: Added.
        * platform/chromium-win-vista/svg/zoom/page/zoom-coords-viewattr-01-b-expected.txt: Copied from LayoutTests/platform/chromium-linux/svg/zoom/page/zoom-coords-viewattr-01-b-expected.txt.
        * platform/chromium-win-vista/svg/zoom/page/zoom-foreignObject-expected.txt: Added.
        * platform/chromium-win/svg/zoom/page/zoom-foreignObject-expected.png:
        * platform/chromium/test_expectations.txt:

2011-05-27  James Robinson  <jamesr@chromium.org>

        Reviewed by Simon Fraser.

        GraphicsLayers for overflow controls on iframe without clipping layer left out of layer tree
        https://bugs.webkit.org/show_bug.cgi?id=61590

        * compositing/iframes/resizer-expected.txt: Added.
        * compositing/iframes/resizer.html: Added.

2011-05-27  Nikolas Zimmermann  <nzimmermann@rim.com>

        Not reviewed.

        embedded SVG object doesn't scale right
        https://bugs.webkit.org/show_bug.cgi?id=10526

        Fix last failing win/svg test, put result in correct directory.

        * platform/win/svg/custom/object-sizing-explicit-width-height-expected.txt: Copied from platform/win/svg/zoom/page/object-sizing-explicit-width-height-expected.txt.
        * platform/win/svg/zoom/page/object-sizing-explicit-width-height-expected.txt: Removed.

2011-05-27  Ryosuke Niwa  <rniwa@webkit.org>

        Skip smart-paste-001.html through smart-paste-005.html because GTK doesn't support smart replace.
        The feature is tracked by the bug 61661.

        * platform/gtk/Skipped:

2011-05-27  Nikolas Zimmermann  <nzimmermann@rim.com>

        Not reviewed.

        embedded SVG object doesn't scale right
        https://bugs.webkit.org/show_bug.cgi?id=10526

        Rebaseline some qt/win/leopard results.

        * platform/mac-leopard/svg/zoom/page/zoom-coords-viewattr-01-b-expected.txt:
        * platform/mac-leopard/svg/zoom/page/zoom-svg-through-object-with-text-expected.txt: Added.
        * platform/qt/svg/in-html/by-reference-expected.txt:
        * platform/qt/svg/zoom/page/relative-sized-document-scrollbars-expected.txt:
        * platform/win/svg/zoom/page/object-sizing-explicit-width-height-expected.txt: Added.
        * platform/win/svg/zoom/page/zoom-svg-through-object-with-absolute-size-2-expected.txt: Added.
        * platform/win/svg/zoom/page/zoom-svg-through-object-with-absolute-size-expected.txt: Added.
        * platform/win/svg/zoom/page/zoom-svg-through-object-with-huge-size-expected.txt: Added.
        * platform/win/svg/zoom/page/zoom-svg-through-object-with-override-size-expected.txt: Added.
        * platform/win/svg/zoom/page/zoom-svg-through-object-with-percentage-size-expected.txt: Added.
        * platform/win/svg/zoom/page/zoom-svg-through-object-with-text-expected.txt: Added.

2011-05-27  Nat Duca  <nduca@chromium.org>

        Unreviewed, landed by enne@google.com.

        [chromium] Add suppression for media/video-zoom due to 64/32 scrollbar issue
        https://bugs.webkit.org/show_bug.cgi?id=61652

        * platform/chromium/test_expectations.txt:

2011-05-27  Ryosuke Niwa  <rniwa@webkit.org>

        Reviewed by Kent Tamura.

        Convert editing/pasteboard/paste-pre-001.html and paste-pre-002.html to dump-as-markup tests
        https://bugs.webkit.org/show_bug.cgi?id=61610

        Converted paste-pre-001.html and paste-pre-002.html to dump-as-markup tests.

        * editing/pasteboard/paste-pre-001-expected.txt: Added.
        * editing/pasteboard/paste-pre-001.html:
        * editing/pasteboard/paste-pre-002-expected.txt: Added.
        * editing/pasteboard/paste-pre-002.html:
        * platform/chromium-linux/editing/pasteboard/paste-pre-001-expected.png: Removed.
        * platform/chromium-linux/editing/pasteboard/paste-pre-002-expected.png: Removed.
        * platform/chromium-win/editing/pasteboard/paste-pre-001-expected.png: Removed.
        * platform/chromium-win/editing/pasteboard/paste-pre-001-expected.txt:
        * platform/chromium-win/editing/pasteboard/paste-pre-002-expected.png: Removed.
        * platform/chromium-win/editing/pasteboard/paste-pre-002-expected.txt:
        * platform/gtk/editing/pasteboard/paste-pre-001-expected.png: Removed.
        * platform/gtk/editing/pasteboard/paste-pre-001-expected.txt: Removed.
        * platform/gtk/editing/pasteboard/paste-pre-002-expected.png: Removed.
        * platform/gtk/editing/pasteboard/paste-pre-002-expected.txt: Removed.
        * platform/mac-leopard/editing/pasteboard/paste-pre-002-expected.png: Removed.
        * platform/mac/editing/pasteboard/paste-pre-001-expected.png: Removed.
        * platform/mac/editing/pasteboard/paste-pre-001-expected.txt: Removed.
        * platform/mac/editing/pasteboard/paste-pre-002-expected.png: Removed.
        * platform/mac/editing/pasteboard/paste-pre-002-expected.txt: Removed.
        * platform/qt/editing/pasteboard/paste-pre-001-expected.png: Removed.
        * platform/qt/editing/pasteboard/paste-pre-001-expected.txt: Removed.
        * platform/qt/editing/pasteboard/paste-pre-002-expected.png: Removed.
        * platform/qt/editing/pasteboard/paste-pre-002-expected.txt: Removed.

2011-05-27  Nikolas Zimmermann  <nzimmermann@rim.com>

        Reviewed by Rob Buis.

        embedded SVG object doesn't scale right
        https://bugs.webkit.org/show_bug.cgi?id=10526

        <object> tags should treat width/height on a referenced SVG as intrinsic width/height
        https://bugs.webkit.org/show_bug.cgi?id=11976

        Incorrect handling of percentage values for width/height on embedded elements
        https://bugs.webkit.org/show_bug.cgi?id=14793

        WebKit fails some WICD 1.0 core test cases
        https://bugs.webkit.org/show_bug.cgi?id=15836 (partially fixed, all 'rightsizing' tests are fixed)

        CSS 2.1: Support replaced elements with relative intrinsic sizes
        https://bugs.webkit.org/show_bug.cgai?id=15849 (partially fixed)

        SVG embedded as <object> doesn't respect width/height attributes
        https://bugs.webkit.org/show_bug.cgi?id=34972

        Explicit size of object tag ignored
        https://bugs.webkit.org/show_bug.cgi?id=37086

        * http/tests/misc/object-embedding-svg-delayed-size-negotiation.xhtml: Added.
        * http/tests/misc/resources/embedded.svg: Added.
        * http/tests/misc/resources/svg-slow.pl: Added.
        * platform/mac/http/tests/misc/object-embedding-svg-delayed-size-negotiation-expected.png: Added.
        * platform/mac/http/tests/misc/object-embedding-svg-delayed-size-negotiation-expected.txt: Added.
        * platform/mac/svg/custom/object-no-size-attributes-expected.png: Added.
        * platform/mac/svg/custom/object-no-size-attributes-expected.txt: Added.
        * platform/mac/svg/custom/object-sizing-expected.png: Added.
        * platform/mac/svg/custom/object-sizing-expected.txt: Added.
        * platform/mac/svg/custom/object-sizing-explicit-height-expected.png: Added.
        * platform/mac/svg/custom/object-sizing-explicit-height-expected.txt: Added.
        * platform/mac/svg/custom/object-sizing-explicit-width-expected.png: Added.
        * platform/mac/svg/custom/object-sizing-explicit-width-expected.txt: Added.
        * platform/mac/svg/custom/object-sizing-explicit-width-height-expected.png: Added.
        * platform/mac/svg/custom/object-sizing-explicit-width-height-expected.txt: Added.
        * platform/mac/svg/custom/object-sizing-no-width-height-change-content-box-size-expected.png: Added.
        * platform/mac/svg/custom/object-sizing-no-width-height-change-content-box-size-expected.txt: Added.
        * platform/mac/svg/custom/object-sizing-no-width-height-expected.png: Added.
        * platform/mac/svg/custom/object-sizing-no-width-height-expected.txt: Added.
        * platform/mac/svg/hixie/text/003-expected.png:
        * platform/mac/svg/hixie/text/003-expected.txt:
        * platform/mac/svg/in-html/by-reference-expected.txt:
        * platform/mac/svg/wicd: Added.
        * platform/mac/svg/wicd/rightsizing-grid-expected.png: Added.
        * platform/mac/svg/wicd/rightsizing-grid-expected.txt: Added.
        * platform/mac/svg/wicd/test-rightsizing-a-expected.png: Added.
        * platform/mac/svg/wicd/test-rightsizing-a-expected.txt: Added.
        * platform/mac/svg/wicd/test-rightsizing-b-expected.png: Added.
        * platform/mac/svg/wicd/test-rightsizing-b-expected.txt: Added.
        * platform/mac/svg/zoom/page/relative-sized-document-scrollbars-expected.txt:
        * platform/mac/svg/zoom/page/zoom-foreignObject-expected.png:
        * platform/mac/svg/zoom/page/zoom-foreignObject-expected.txt:
        * platform/mac/svg/zoom/page/zoom-svg-through-object-with-absolute-size-2-expected.png: Added.
        * platform/mac/svg/zoom/page/zoom-svg-through-object-with-absolute-size-2-expected.txt: Added.
        * platform/mac/svg/zoom/page/zoom-svg-through-object-with-absolute-size-expected.png: Added.
        * platform/mac/svg/zoom/page/zoom-svg-through-object-with-absolute-size-expected.txt: Added.
        * platform/mac/svg/zoom/page/zoom-svg-through-object-with-huge-size-expected.png: Added.
        * platform/mac/svg/zoom/page/zoom-svg-through-object-with-huge-size-expected.txt: Added.
        * platform/mac/svg/zoom/page/zoom-svg-through-object-with-no-width-height-expected.png: Added.
        * platform/mac/svg/zoom/page/zoom-svg-through-object-with-no-width-height-expected.txt: Added.
        * platform/mac/svg/zoom/page/zoom-svg-through-object-with-override-size-expected.png: Added.
        * platform/mac/svg/zoom/page/zoom-svg-through-object-with-override-size-expected.txt: Added.
        * platform/mac/svg/zoom/page/zoom-svg-through-object-with-percentage-size-expected.png: Added.
        * platform/mac/svg/zoom/page/zoom-svg-through-object-with-percentage-size-expected.txt: Added.
        * platform/mac/svg/zoom/page/zoom-svg-through-object-with-text-expected.png: Added.
        * platform/mac/svg/zoom/page/zoom-svg-through-object-with-text-expected.txt: Added.
        * svg/custom/object-no-size-attributes.xhtml: Added.
        * svg/custom/object-sizing-explicit-height.xhtml: Added.
        * svg/custom/object-sizing-explicit-width-height.xhtml: Added.
        * svg/custom/object-sizing-explicit-width.xhtml: Added.
        * svg/custom/object-sizing-no-width-height-change-content-box-size.xhtml: Added.
        * svg/custom/object-sizing-no-width-height.xhtml: Added.
        * svg/custom/object-sizing.xhtml: Added.
        * svg/custom/resources/embedded.svg: Added.
        * svg/custom/resources/red-circle.svg: Added.
        * svg/in-html/by-reference-expected.png:
        * svg/wicd: Added.
        * svg/wicd/resources: Added.
        * svg/wicd/resources/a.svg: Added.
        * svg/wicd/resources/bcde.svg: Added.
        * svg/wicd/resources/empty1.svg: Added.
        * svg/wicd/resources/empty2.svg: Added.
        * svg/wicd/resources/empty3.svg: Added.
        * svg/wicd/resources/f.svg: Added.
        * svg/wicd/resources/g.svg: Added.
        * svg/wicd/resources/h.svg: Added.
        * svg/wicd/resources/i.svg: Added.
        * svg/wicd/resources/j.svg: Added.
        * svg/wicd/resources/k.svg: Added.
        * svg/wicd/resources/l.svg: Added.
        * svg/wicd/resources/main.css: Added.
        (body,html):
        (body):
        (.buttons):
        (h1):
        (h2):
        (h4):
        (p):
        (table):
        (th):
        (td,th):
        (td a):
        (a):
        (a:hover):
        (a:focus):
        (a:visited):
        (a.index):
        (a.index:hover):
        (a.index:focus):
        (a.index:visited):
        (ul):
        (ol):
        (.red):
        (.navi):
        (.navi a):
        (.navi a:hover):
        (.navi a:visited):
        * svg/wicd/resources/mnop.svg: Added.
        * svg/wicd/resources/q.svg: Added.
        * svg/wicd/resources/r.svg: Added.
        * svg/wicd/resources/s.svg: Added.
        * svg/wicd/resources/t.svg: Added.
        * svg/wicd/resources/test-rightsizing-a.css: Added.
        (html,body):
        (div.all):
        (object.w100):
        (object.h100):
        * svg/wicd/resources/test-rightsizing-b.css: Added.
        (html,body):
        (object):
        * svg/wicd/resources/test-svg-child-object-rightsizing.gif: Added.
        * svg/wicd/resources/test-svg-child-object-rightsizing.png: Added.
        * svg/wicd/resources/test-svg-child-object-rightsizing.svg: Added.
        * svg/wicd/resources/test-svg-child-object-rightsizing1.svg: Added.
        * svg/wicd/rightsizing-grid.xhtml: Added.
        * svg/wicd/test-rightsizing-a.xhtml: Added.
        * svg/wicd/test-rightsizing-b.xhtml: Added.
        * svg/zoom/page/resources: Added.
        * svg/zoom/page/resources/absolute-sized-svg.png: Added.
        * svg/zoom/page/resources/absolute-sized-svg.svg: Added.
        * svg/zoom/page/resources/huge-rect.svg: Added.
        * svg/zoom/page/resources/percentage-sized-svg.png: Added.
        * svg/zoom/page/resources/percentage-sized-svg.svg: Added.
        * svg/zoom/page/resources/text.svg: Added.
        * svg/zoom/page/resources/tux.svg: Added.
        * svg/zoom/page/zoom-svg-through-object-with-absolute-size-2.xhtml: Added.
        * svg/zoom/page/zoom-svg-through-object-with-absolute-size.xhtml: Added.
        * svg/zoom/page/zoom-svg-through-object-with-huge-size.xhtml: Added.
        * svg/zoom/page/zoom-svg-through-object-with-override-size.html: Added.
        * svg/zoom/page/zoom-svg-through-object-with-percentage-size.xhtml: Added.
        * svg/zoom/page/zoom-svg-through-object-with-text.xhtml: Added.

2011-05-25  Martin Robinson  <mrobinson@igalia.com>

        Reviewed by Dirk Schulze.

        [GTK][Cairo] Twitter rendering breaks
        https://bugs.webkit.org/show_bug.cgi?id=60917

        Added a GTK+ specific test that verifies that zero pixel sized
        fonts do not corrupt the Cairo context.

        * platform/gtk/fonts/zero-pixel-sized-fonts-expected.png: Added.
        * platform/gtk/fonts/zero-pixel-sized-fonts-expected.txt: Added.
        * platform/gtk/fonts/zero-pixel-sized-fonts.html: Added.

2011-05-27  Sheriff Bot  <webkit.review.bot@gmail.com>

        Unreviewed, rolling out r87464.
        http://trac.webkit.org/changeset/87464
        https://bugs.webkit.org/show_bug.cgi?id=61643

        client-close/server-close tests are flaky on Chromium Mac and
        Windows (Requested by aklein on #webkit).

        * http/tests/websocket/tests/client-close-expected.txt: Removed.
        * http/tests/websocket/tests/client-close.html: Removed.
        * http/tests/websocket/tests/client-close_wsh.py: Removed.
        * http/tests/websocket/tests/close-before-open-expected.txt:
        * http/tests/websocket/tests/close-event-expected.txt:
        * http/tests/websocket/tests/close-event.html:
        * http/tests/websocket/tests/close-unref-websocket-expected.txt:
        * http/tests/websocket/tests/frame-length-longer-than-buffer_wsh.py:
        * http/tests/websocket/tests/server-close-expected.txt: Removed.
        * http/tests/websocket/tests/server-close.html: Removed.
        * http/tests/websocket/tests/server-close_wsh.py: Removed.
        * http/tests/websocket/tests/websocket-event-target-expected.txt:

2011-05-27  Rob Buis  <rbuis@rim.com>

        Reviewed by Nikolas Zimmermann.

        https://bugs.webkit.org/show_bug.cgi?id=19995
        hixie.ch : anchor Link fails with fragment identifiers inside SVG fragments.

        Remove 003-broken.xml and replace it with a 003.xml that is text-only.

        * platform/mac/svg/hixie/links/003-broken-expected.png: Removed.
        * platform/mac/svg/hixie/links/003-broken-expected.txt: Removed.
        * svg/hixie/links/003-broken.xml: Removed.
        * svg/hixie/links/003-expected.txt: Added.
        * svg/hixie/links/003.xml: Added.

2011-05-27  Yael Aharon  <yael.aharon@nokia.com>

        Unreviewed.

        WebKit2 does not support eventSender.

        * platform/mac-wk2/Skipped:

2011-05-27  Andreas Kling  <kling@webkit.org>

        Reviewed by Benjamin Poulain.

        Update RGBA color serialization to match HTML5.
        https://bugs.webkit.org/show_bug.cgi?id=61449

        Update tests to reflect the new behavior.

        * canvas/philip/tests/2d.fillStyle.get.transparent.html:
        * canvas/philip/tests/2d.shadow.attributes.shadowColor.initial.html:
        * canvas/philip/tests/2d.shadow.attributes.shadowColor.valid.html:
        * editing/style/inline-style-container-expected.txt
        * editing/style/script-tests/inline-style-container.js:
        * fast/canvas/canvas-color-clamping-expected.txt:
        * fast/canvas/canvas-color-serialization-expected.txt:
        * fast/canvas/canvas-currentColor-expected.txt:
        * fast/canvas/script-tests/canvas-color-clamping.js:
        * fast/canvas/script-tests/canvas-color-serialization.js:
        * fast/canvas/script-tests/canvas-currentColor.js:
        * fast/dom/canvasContext2d-element-attribute-js-null-expected.txt:
        * fast/dom/canvasContext2d-element-attribute-js-null.html:

2011-05-27  Yael Aharon  <yael.aharon@nokia.com>

        Unreviewed.

        Skip a test that requires eventSender.beginDragWithFiles.

        * platform/win/Skipped:

2011-05-27  Yael Aharon  <yael.aharon@nokia.com>

        Unreviewed.

        Skip a test that is failing until investigated.

        * platform/gtk/Skipped:

2011-05-27  Hans Wennborg  <hans@chromium.org>

        Reviewed by Tony Gentilcore.

        IndexedDB: Support mutating cursors on top of LevelDB
        https://bugs.webkit.org/show_bug.cgi?id=61615

        New test for adding new entries to an objecet store while running a
        cursor over it.

        * storage/indexeddb/mutating-cursor-expected.txt: Added.
        * storage/indexeddb/mutating-cursor.html: Added.

2011-05-27  Csaba Osztrogonác  <ossy@webkit.org>

        [Qt][Mac] Daily gardening.

        Typo fix, and remove non-existent files from Skipped list.

        * platform/qt-mac/Skipped:

2011-05-27  Csaba Osztrogonác  <ossy@webkit.org>

        [Qt][Mac] Daily gardening.

        * platform/qt-mac/Skipped:
         - plugins/embed-attributes-setting.html was unskipped by r87306, but fails on Qt-Mac.
         - plugins/plugin-initiate-popup-window.html unskipped by r87429, but fails on Qt-Mac.
         - fast/css/disabled-author-styles unskipped by r87311, but fails on Qt-Mac.
        * platform/qt-mac/editing/pasteboard/paste-code-in-pre-expected.txt: Added after r87468.

2011-05-27  Yael Aharon  <yael.aharon@nokia.com>

        Unreviewed.

        Skip test that is failing on the bot, until investigated.

        * platform/chromium/test_expectations.txt:

2011-05-27  Yael Aharon  <yael.aharon@nokia.com>

        Unreviewed.

        Skip new dropzone tests. Qt's DRT does not support drag 'n drop.

        * platform/qt/Skipped:

2011-05-27  Csaba Osztrogonác  <ossy@webkit.org>

        [WK2] Skip new failing tests because of missing SVG animation pause API.

        * platform/mac-wk2/Skipped: Add failing tests.
        * platform/qt-wk2/Skipped: Remove tests, because they fail because of WK2 specific bug, not Qt-WK2 specific.

2011-05-26  Yael Aharon  <yael.aharon@nokia.com>

        Reviewed by Tony Chang.

        webkit should implement the dropzone attribute
        https://bugs.webkit.org/show_bug.cgi?id=58210

        * fast/events/dropzone-001-expected.txt: Added.
        * fast/events/dropzone-001.html: Added.
        * fast/events/dropzone-002-expected.txt: Added.
        * fast/events/dropzone-002.html: Added.
        * fast/events/dropzone-003-expected.txt: Added.
        * fast/events/dropzone-003.html: Added.
        * fast/events/dropzone-004-expected.txt: Added.
        * fast/events/dropzone-004.html: Added.
        * fast/events/resources/dropzone.js: Added.

2011-05-27  Csaba Osztrogonác  <ossy@webkit.org>

        [Qt]http/tests/security/xss-DENIED-xsl-document.xml fails with Qt 4.8
        https://bugs.webkit.org/show_bug.cgi?id=60175

        [Qt]http/tests/xmlhttprequest/xmlhttprequest-missing-file-exception.html fails with Qt 4.8
        https://bugs.webkit.org/show_bug.cgi?id=60176

        * platform/qt-4.8/Skipped: The bug is in Qt 4.8, add Qt bug tracker URL's.

2011-05-27  Zoltan Horvath  <zoltan@webkit.org>

        [Qt][WK2] Make the bot environmentally friendly.

        * platform/qt-wk2/Skipped:

2011-05-27  Ryosuke Niwa  <rniwa@webkit.org>

        Reviewed by Kent Tamura.

        Convert smart-paste-004.html through smart-paste-006.html to dumpAsText tests
        https://bugs.webkit.org/show_bug.cgi?id=61618

        Converted smart-paste-004.html, smart-paste-005.html, and smart-paste-005.html to dumpAsText tests.

        * editing/pasteboard/smart-paste-004-expected.txt: Added.
        * editing/pasteboard/smart-paste-004.html:
        * editing/pasteboard/smart-paste-005-expected.txt: Added.
        * editing/pasteboard/smart-paste-005.html:
        * editing/pasteboard/smart-paste-006-expected.txt: Added.
        * editing/pasteboard/smart-paste-006.html:
        * platform/chromium-linux/editing/pasteboard/smart-paste-004-expected.png: Removed.
        * platform/chromium-linux/editing/pasteboard/smart-paste-004-expected.txt: Removed.
        * platform/chromium-linux/editing/pasteboard/smart-paste-005-expected.png: Removed.
        * platform/chromium-linux/editing/pasteboard/smart-paste-006-expected.png: Removed.
        * platform/chromium-win/editing/pasteboard/smart-paste-004-expected.png: Removed.
        * platform/chromium-win/editing/pasteboard/smart-paste-004-expected.txt: Removed.
        * platform/chromium-win/editing/pasteboard/smart-paste-005-expected.png: Removed.
        * platform/chromium-win/editing/pasteboard/smart-paste-005-expected.txt: Removed.
        * platform/chromium-win/editing/pasteboard/smart-paste-006-expected.png: Removed.
        * platform/chromium-win/editing/pasteboard/smart-paste-006-expected.txt: Removed.
        * platform/gtk/editing/pasteboard/smart-paste-004-expected.png: Removed.
        * platform/gtk/editing/pasteboard/smart-paste-004-expected.txt: Removed.
        * platform/gtk/editing/pasteboard/smart-paste-005-expected.png: Removed.
        * platform/gtk/editing/pasteboard/smart-paste-005-expected.txt: Removed.
        * platform/gtk/editing/pasteboard/smart-paste-006-expected.png: Removed.
        * platform/gtk/editing/pasteboard/smart-paste-006-expected.txt: Removed.
        * platform/mac/editing/pasteboard/smart-paste-004-expected.png: Removed.
        * platform/mac/editing/pasteboard/smart-paste-004-expected.txt: Removed.
        * platform/mac/editing/pasteboard/smart-paste-005-expected.png: Removed.
        * platform/mac/editing/pasteboard/smart-paste-005-expected.txt: Removed.
        * platform/mac/editing/pasteboard/smart-paste-006-expected.png: Removed.
        * platform/mac/editing/pasteboard/smart-paste-006-expected.txt: Removed.
        * platform/qt/editing/pasteboard/smart-paste-004-expected.png: Removed.
        * platform/qt/editing/pasteboard/smart-paste-004-expected.txt: Removed.
        * platform/qt/editing/pasteboard/smart-paste-005-expected.png: Removed.
        * platform/qt/editing/pasteboard/smart-paste-005-expected.txt: Removed.
        * platform/qt/editing/pasteboard/smart-paste-006-expected.png: Removed.
        * platform/qt/editing/pasteboard/smart-paste-006-expected.txt: Removed.

2011-05-27  Ryosuke Niwa  <rniwa@webkit.org>

        Reviewed by Kent Tamura.

        Convert smart-paste-001.html through smart-paste-003.html to dumpAsText tests
        https://bugs.webkit.org/show_bug.cgi?id=61617

        Converted smart-paste-001.html, smart-paste-002.html, and smart-paste-003.html to dumpAsText tests.

        * editing/pasteboard/smart-paste-001-expected.txt: Added.
        * editing/pasteboard/smart-paste-001.html:
        * editing/pasteboard/smart-paste-002-expected.txt: Added.
        * editing/pasteboard/smart-paste-002.html:
        * editing/pasteboard/smart-paste-003-expected.txt: Added.
        * editing/pasteboard/smart-paste-003.html:
        * platform/chromium-linux/editing/pasteboard/smart-paste-001-expected.png: Removed.
        * platform/chromium-linux/editing/pasteboard/smart-paste-002-expected.png: Removed.
        * platform/chromium-linux/editing/pasteboard/smart-paste-003-expected.png: Removed.
        * platform/chromium-linux/editing/pasteboard/smart-paste-003-expected.txt: Removed.
        * platform/chromium-win/editing/pasteboard/smart-paste-001-expected.png: Removed.
        * platform/chromium-win/editing/pasteboard/smart-paste-001-expected.txt: Removed.
        * platform/chromium-win/editing/pasteboard/smart-paste-002-expected.png: Removed.
        * platform/chromium-win/editing/pasteboard/smart-paste-002-expected.txt: Removed.
        * platform/chromium-win/editing/pasteboard/smart-paste-003-expected.png: Removed.
        * platform/chromium-win/editing/pasteboard/smart-paste-003-expected.txt: Removed.
        * platform/gtk/editing/pasteboard/smart-paste-001-expected.png: Removed.
        * platform/gtk/editing/pasteboard/smart-paste-001-expected.txt: Removed.
        * platform/gtk/editing/pasteboard/smart-paste-002-expected.png: Removed.
        * platform/gtk/editing/pasteboard/smart-paste-002-expected.txt: Removed.
        * platform/gtk/editing/pasteboard/smart-paste-003-expected.png: Removed.
        * platform/gtk/editing/pasteboard/smart-paste-003-expected.txt: Removed.
        * platform/mac/editing/pasteboard/smart-paste-001-expected.png: Removed.
        * platform/mac/editing/pasteboard/smart-paste-001-expected.txt: Removed.
        * platform/mac/editing/pasteboard/smart-paste-002-expected.png: Removed.
        * platform/mac/editing/pasteboard/smart-paste-002-expected.txt: Removed.
        * platform/mac/editing/pasteboard/smart-paste-003-expected.png: Removed.
        * platform/mac/editing/pasteboard/smart-paste-003-expected.txt: Removed.
        * platform/qt/editing/pasteboard/smart-paste-001-expected.txt: Removed.
        * platform/qt/editing/pasteboard/smart-paste-002-expected.png: Removed.
        * platform/qt/editing/pasteboard/smart-paste-002-expected.txt: Removed.
        * platform/qt/editing/pasteboard/smart-paste-003-expected.png: Removed.
        * platform/qt/editing/pasteboard/smart-paste-003-expected.txt: Removed.

2011-05-27  Ryosuke Niwa  <rniwa@webkit.org>

        Reviewed by Kent Tamura.

        Convert editing/pasteboard/paste-unrendered-select.html to a dump-as-markup test
        https://bugs.webkit.org/show_bug.cgi?id=61616

        Converted paste-unrendered-select.html to a dump-as-markup test.

        * editing/pasteboard/paste-unrendered-select-expected.txt: Added.
        * editing/pasteboard/paste-unrendered-select.html:
        * platform/chromium-linux/editing/pasteboard/paste-unrendered-select-expected.png: Removed.
        * platform/chromium-win/editing/pasteboard/paste-unrendered-select-expected.png: Removed.
        * platform/chromium-win/editing/pasteboard/paste-unrendered-select-expected.txt: Removed.
        * platform/gtk/editing/pasteboard/paste-unrendered-select-expected.png: Removed.
        * platform/gtk/editing/pasteboard/paste-unrendered-select-expected.txt: Removed.
        * platform/mac-leopard/editing/pasteboard/paste-unrendered-select-expected.png: Removed.
        * platform/mac/editing/pasteboard/paste-unrendered-select-expected.png: Removed.
        * platform/mac/editing/pasteboard/paste-unrendered-select-expected.txt: Removed.
        * platform/qt/editing/pasteboard/paste-unrendered-select-expected.txt: Removed.

2011-05-27  Shishir Agrawal  <shishir@chromium.org>

        Reviewed by Tony Gentilcore.

        Enable Page Visibility API in the chromium port.
        https://bugs.webkit.org/show_bug.cgi?id=61397

        * platform/chromium/test_expectations.txt:

2011-05-27  Ryosuke Niwa  <rniwa@webkit.org>

        Reviewed by Kent Tamura.

        Convert editing/pasteboard/paste-text-002.html and paste-text-003.html to dump-as-markup tests
        https://bugs.webkit.org/show_bug.cgi?id=61614

        Converted paste-text-002.html and paste-text-003.html to dump-as-markup tests.
        Also added some descriptions to the tests.

        * editing/pasteboard/paste-text-002-expected.txt: Added.
        * editing/pasteboard/paste-text-002.html:
        * editing/pasteboard/paste-text-003-expected.txt: Added.
        * editing/pasteboard/paste-text-003.html:
        * platform/chromium-linux/editing/pasteboard/paste-text-002-expected.png: Removed.
        * platform/chromium-linux/editing/pasteboard/paste-text-003-expected.png: Removed.
        * platform/chromium-win/editing/pasteboard/paste-text-002-expected.png: Removed.
        * platform/chromium-win/editing/pasteboard/paste-text-002-expected.txt: Removed.
        * platform/chromium-win/editing/pasteboard/paste-text-003-expected.png: Removed.
        * platform/chromium-win/editing/pasteboard/paste-text-003-expected.txt: Removed.
        * platform/gtk/editing/pasteboard/paste-text-002-expected.txt: Removed.
        * platform/gtk/editing/pasteboard/paste-text-003-expected.txt: Removed.
        * platform/mac/editing/pasteboard/paste-text-002-expected.png: Removed.
        * platform/mac/editing/pasteboard/paste-text-002-expected.txt: Removed.
        * platform/mac/editing/pasteboard/paste-text-003-expected.png: Removed.
        * platform/mac/editing/pasteboard/paste-text-003-expected.txt: Removed.
        * platform/qt/editing/pasteboard/paste-text-002-expected.png: Removed.
        * platform/qt/editing/pasteboard/paste-text-002-expected.txt: Removed.
        * platform/qt/editing/pasteboard/paste-text-003-expected.png: Removed.
        * platform/qt/editing/pasteboard/paste-text-003-expected.txt: Removed.

2011-05-26  MORITA Hajime <morrita@google.com>

        Reviewed by Kent Tamura.

        WebCore::HTMLSummaryElement::isMainSummary crashes
        https://bugs.webkit.org/show_bug.cgi?id=61511

        * fast/html/details-summary-document-child-expected.txt: Added.
        * fast/html/details-summary-document-child.html: Added.

2011-05-26  Ryosuke Niwa  <rniwa@webkit.org>

        Reviewed by Adam Barth.

        Convert editing/pasteboard/paste-blockquote-1.html to a dump-as-markup test
        https://bugs.webkit.org/show_bug.cgi?id=61608

        Converted paste-blockquote-1.html to a dump-as-markup test.

        * editing/pasteboard/paste-blockquote-1-expected.txt: Added.
        * editing/pasteboard/paste-blockquote-1.html:
        * platform/chromium-linux/editing/pasteboard/paste-blockquote-1-expected.png: Removed.
        * platform/chromium-win/editing/pasteboard/paste-blockquote-1-expected.png: Removed.
        * platform/chromium-win/editing/pasteboard/paste-blockquote-1-expected.txt: Removed.
        * platform/gtk/editing/pasteboard/paste-blockquote-1-expected.txt: Removed.
        * platform/mac-leopard/editing/pasteboard/paste-blockquote-1-expected.png: Removed.
        * platform/mac/editing/pasteboard/paste-blockquote-1-expected.png: Removed.
        * platform/mac/editing/pasteboard/paste-blockquote-1-expected.txt: Removed.
        * platform/qt/editing/pasteboard/paste-blockquote-1-expected.txt: Removed.

2011-05-26  Ryosuke Niwa  <rniwa@webkit.org>

        Reviewed by Adam Barth.

        Convert editing/pasteboard/merge-end-*.html to dump-as-markup tests
        https://bugs.webkit.org/show_bug.cgi?id=61607

        * editing/pasteboard/merge-end-1-expected.txt: Added.
        * editing/pasteboard/merge-end-1.html:
        * editing/pasteboard/merge-end-2-expected.txt: Added.
        * editing/pasteboard/merge-end-2.html:
        * editing/pasteboard/merge-end-3-expected.txt: Added.
        * editing/pasteboard/merge-end-3.html:
        * editing/pasteboard/merge-end-4-expected.txt: Added.
        * editing/pasteboard/merge-end-4.html:
        * editing/pasteboard/merge-end-5-expected.txt: Added.
        * editing/pasteboard/merge-end-5.html:
        * platform/chromium-linux/editing/pasteboard/merge-end-1-expected.png: Removed.
        * platform/chromium-linux/editing/pasteboard/merge-end-2-expected.png: Removed.
        * platform/chromium-linux/editing/pasteboard/merge-end-3-expected.png: Removed.
        * platform/chromium-linux/editing/pasteboard/merge-end-4-expected.png: Removed.
        * platform/chromium-linux/editing/pasteboard/merge-end-5-expected.png: Removed.
        * platform/chromium-mac-leopard/editing/pasteboard/merge-end-4-expected.png: Removed.
        * platform/chromium-mac/editing/pasteboard/merge-end-4-expected.png: Removed.
        * platform/chromium-win/editing/pasteboard/merge-end-1-expected.png: Removed.
        * platform/chromium-win/editing/pasteboard/merge-end-1-expected.txt: Removed.
        * platform/chromium-win/editing/pasteboard/merge-end-2-expected.png: Removed.
        * platform/chromium-win/editing/pasteboard/merge-end-2-expected.txt: Removed.
        * platform/chromium-win/editing/pasteboard/merge-end-3-expected.png: Removed.
        * platform/chromium-win/editing/pasteboard/merge-end-3-expected.txt: Removed.
        * platform/chromium-win/editing/pasteboard/merge-end-4-expected.png: Removed.
        * platform/chromium-win/editing/pasteboard/merge-end-4-expected.txt: Removed.
        * platform/chromium-win/editing/pasteboard/merge-end-5-expected.png: Removed.
        * platform/chromium-win/editing/pasteboard/merge-end-5-expected.txt: Removed.
        * platform/gtk/editing/pasteboard/merge-end-1-expected.png: Removed.
        * platform/gtk/editing/pasteboard/merge-end-1-expected.txt: Removed.
        * platform/gtk/editing/pasteboard/merge-end-2-expected.png: Removed.
        * platform/gtk/editing/pasteboard/merge-end-2-expected.txt: Removed.
        * platform/gtk/editing/pasteboard/merge-end-3-expected.png: Removed.
        * platform/gtk/editing/pasteboard/merge-end-3-expected.txt: Removed.
        * platform/gtk/editing/pasteboard/merge-end-4-expected.png: Removed.
        * platform/gtk/editing/pasteboard/merge-end-4-expected.txt: Removed.
        * platform/gtk/editing/pasteboard/merge-end-5-expected.png: Removed.
        * platform/gtk/editing/pasteboard/merge-end-5-expected.txt: Removed.
        * platform/mac-leopard/editing/pasteboard/merge-end-1-expected.png: Removed.
        * platform/mac-leopard/editing/pasteboard/merge-end-2-expected.png: Removed.
        * platform/mac-leopard/editing/pasteboard/merge-end-3-expected.png: Removed.
        * platform/mac-leopard/editing/pasteboard/merge-end-5-expected.png: Removed.
        * platform/mac/editing/pasteboard/merge-end-1-expected.png: Removed.
        * platform/mac/editing/pasteboard/merge-end-1-expected.txt: Removed.
        * platform/mac/editing/pasteboard/merge-end-2-expected.png: Removed.
        * platform/mac/editing/pasteboard/merge-end-2-expected.txt: Removed.
        * platform/mac/editing/pasteboard/merge-end-3-expected.png: Removed.
        * platform/mac/editing/pasteboard/merge-end-3-expected.txt: Removed.
        * platform/mac/editing/pasteboard/merge-end-4-expected.png: Removed.
        * platform/mac/editing/pasteboard/merge-end-4-expected.txt: Removed.
        * platform/mac/editing/pasteboard/merge-end-5-expected.png: Removed.
        * platform/mac/editing/pasteboard/merge-end-5-expected.txt: Removed.
        * platform/qt/editing/pasteboard/merge-end-1-expected.png: Removed.
        * platform/qt/editing/pasteboard/merge-end-1-expected.txt: Removed.
        * platform/qt/editing/pasteboard/merge-end-2-expected.png: Removed.
        * platform/qt/editing/pasteboard/merge-end-2-expected.txt: Removed.
        * platform/qt/editing/pasteboard/merge-end-3-expected.png: Removed.
        * platform/qt/editing/pasteboard/merge-end-3-expected.txt: Removed.
        * platform/qt/editing/pasteboard/merge-end-4-expected.png: Removed.
        * platform/qt/editing/pasteboard/merge-end-4-expected.txt: Removed.
        * platform/qt/editing/pasteboard/merge-end-5-expected.png: Removed.
        * platform/qt/editing/pasteboard/merge-end-5-expected.txt: Removed.

2011-05-26  Ryosuke Niwa  <rniwa@webkit.org>

        Reviewed by Adam Barth.

        Convert editing/pasteboard/interchange-newline-*.html to dump-as-markup tests.
        https://bugs.webkit.org/show_bug.cgi?id=61605

        Converted interchange-newline-1 thorugh 4 to dump-as-markup tests.
        Also revised some test descriptions.

        * editing/pasteboard/interchange-newline-1-expected.txt: Added.
        * editing/pasteboard/interchange-newline-1.html:
        * editing/pasteboard/interchange-newline-2-expected.txt: Added.
        * editing/pasteboard/interchange-newline-2.html:
        * editing/pasteboard/interchange-newline-3-expected.txt: Added.
        * editing/pasteboard/interchange-newline-3.html:
        * editing/pasteboard/interchange-newline-4-expected.txt: Added.
        * editing/pasteboard/interchange-newline-4.html:
        * platform/chromium-linux/editing/pasteboard/interchange-newline-1-expected.png: Removed.
        * platform/chromium-linux/editing/pasteboard/interchange-newline-2-expected.png: Removed.
        * platform/chromium-linux/editing/pasteboard/interchange-newline-3-expected.png: Removed.
        * platform/chromium-linux/editing/pasteboard/interchange-newline-4-expected.png: Removed.
        * platform/chromium-mac-leopard/editing/pasteboard/interchange-newline-1-expected.png: Removed.
        * platform/chromium-mac/editing/pasteboard/interchange-newline-1-expected.png: Removed.
        * platform/chromium-win/editing/pasteboard/interchange-newline-1-expected.png: Removed.
        * platform/chromium-win/editing/pasteboard/interchange-newline-1-expected.txt: Removed.
        * platform/chromium-win/editing/pasteboard/interchange-newline-2-expected.png: Removed.
        * platform/chromium-win/editing/pasteboard/interchange-newline-2-expected.txt: Removed.
        * platform/chromium-win/editing/pasteboard/interchange-newline-3-expected.png: Removed.
        * platform/chromium-win/editing/pasteboard/interchange-newline-3-expected.txt: Removed.
        * platform/chromium-win/editing/pasteboard/interchange-newline-4-expected.png: Removed.
        * platform/chromium-win/editing/pasteboard/interchange-newline-4-expected.txt: Removed.
        * platform/gtk/editing/pasteboard/interchange-newline-1-expected.png: Removed.
        * platform/gtk/editing/pasteboard/interchange-newline-1-expected.txt: Removed.
        * platform/gtk/editing/pasteboard/interchange-newline-2-expected.png: Removed.
        * platform/gtk/editing/pasteboard/interchange-newline-2-expected.txt: Removed.
        * platform/gtk/editing/pasteboard/interchange-newline-3-expected.png: Removed.
        * platform/gtk/editing/pasteboard/interchange-newline-3-expected.txt: Removed.
        * platform/gtk/editing/pasteboard/interchange-newline-4-expected.png: Removed.
        * platform/gtk/editing/pasteboard/interchange-newline-4-expected.txt: Removed.
        * platform/mac-leopard/editing/pasteboard/interchange-newline-1-expected.png: Removed.
        * platform/mac-leopard/editing/pasteboard/interchange-newline-2-expected.png: Removed.
        * platform/mac-leopard/editing/pasteboard/interchange-newline-3-expected.png: Removed.
        * platform/mac-leopard/editing/pasteboard/interchange-newline-4-expected.png: Removed.
        * platform/mac/editing/pasteboard/interchange-newline-1-expected.png: Removed.
        * platform/mac/editing/pasteboard/interchange-newline-1-expected.txt: Removed.
        * platform/mac/editing/pasteboard/interchange-newline-2-expected.png: Removed.
        * platform/mac/editing/pasteboard/interchange-newline-2-expected.txt: Removed.
        * platform/mac/editing/pasteboard/interchange-newline-3-expected.png: Removed.
        * platform/mac/editing/pasteboard/interchange-newline-3-expected.txt: Removed.
        * platform/mac/editing/pasteboard/interchange-newline-4-expected.png: Removed.
        * platform/mac/editing/pasteboard/interchange-newline-4-expected.txt: Removed.
        * platform/qt/editing/pasteboard/interchange-newline-1-expected.png: Removed.
        * platform/qt/editing/pasteboard/interchange-newline-1-expected.txt: Removed.
        * platform/qt/editing/pasteboard/interchange-newline-3-expected.txt: Removed.
        * platform/qt/editing/pasteboard/interchange-newline-4-expected.txt: Removed.

2011-05-26  Shane Stephens  <shanestephens@google.com>

        Reviewed by James Robinson.

        REGRESSION (r81992): layout triggered by position update fails to apply when transform is updated at same time
        https://bugs.webkit.org/show_bug.cgi?id=60689

        * transforms/2d/set-transform-and-top-expected.txt: Added.
        * transforms/2d/set-transform-and-top.html: Added.

2011-05-26  Adam Barth  <abarth@webkit.org>

        Reviewed by Eric Seidel.

        Support cross-origin property for images
        https://bugs.webkit.org/show_bug.cgi?id=61015

        Test various cases involving CORS requests and canvas tainting.

        * http/tests/security/canvas-remote-read-remote-image-allowed-expected.txt: Added.
        * http/tests/security/canvas-remote-read-remote-image-allowed-with-credentials-expected.txt: Added.
        * http/tests/security/canvas-remote-read-remote-image-allowed-with-credentials.html: Added.
        * http/tests/security/canvas-remote-read-remote-image-allowed.html: Added.
        * http/tests/security/canvas-remote-read-remote-image-blocked-no-crossorigin-expected.txt: Added.
        * http/tests/security/canvas-remote-read-remote-image-blocked-no-crossorigin.html: Added.
        * http/tests/security/resources/abe-allow-credentials.php: Added.
        * http/tests/security/resources/abe-allow-star.php: Added.

2011-05-26  Ryosuke Niwa  <rniwa@webkit.org>

        Reviewed by Eric Seidel.

        editing/pasteboard/4700297.html should be renamed and converted to a dump-as-markup test
        https://bugs.webkit.org/show_bug.cgi?id=61595

        Renamed 4700297.html to insert-div-text-into-text.html and converted it into a dump-as-markup test.

        * editing/pasteboard/4700297.html: Removed.
        * editing/pasteboard/insert-div-text-into-text-expected.txt: Added.
        * editing/pasteboard/insert-div-text-into-text.html: Copied from LayoutTests/editing/pasteboard/4700297.html.
        * platform/chromium-linux/editing/pasteboard/4700297-expected.png: Removed.
        * platform/chromium-win/editing/pasteboard/4700297-expected.png: Removed.
        * platform/chromium-win/editing/pasteboard/4700297-expected.txt: Removed.
        * platform/gtk/editing/pasteboard/4700297-expected.png: Removed.
        * platform/gtk/editing/pasteboard/4700297-expected.txt: Removed.
        * platform/mac-leopard/editing/pasteboard/4700297-expected.png: Removed.
        * platform/mac/editing/pasteboard/4700297-expected.png: Removed.
        * platform/mac/editing/pasteboard/4700297-expected.txt: Removed.
        * platform/qt/editing/pasteboard/4700297-expected.png: Removed.
        * platform/qt/editing/pasteboard/4700297-expected.txt: Removed.

2011-05-26  Ryosuke Niwa  <rniwa@webkit.org>

        Reviewed by Hajime Morita.

        editing/pasteboard/5483567.html should be renamed and converted to a dump-as-markup test.
        https://bugs.webkit.org/show_bug.cgi?id=61599

        Renamed 5483567.html to pasting-word-in-div-extra-line.html and converted it to
        a dump-as-markup test.

        * editing/pasteboard/5483567.html: Removed.
        * editing/pasteboard/pasting-word-in-div-extra-line-expected.txt: Added.
        * editing/pasteboard/pasting-word-in-div-extra-line.html: Copied from
        LayoutTests/editing/pasteboard/5483567.html.
        * platform/chromium-linux/editing/pasteboard/5483567-expected.png: Removed.
        * platform/chromium-win/editing/pasteboard/5483567-expected.png: Removed.
        * platform/chromium-win/editing/pasteboard/5483567-expected.txt: Removed.
        * platform/gtk/editing/pasteboard/5483567-expected.txt: Removed.
        * platform/mac-leopard/editing/pasteboard/5483567-expected.png: Removed.
        * platform/mac/editing/pasteboard/5483567-expected.png: Removed.
        * platform/mac/editing/pasteboard/5483567-expected.txt: Removed.
        * platform/qt/editing/pasteboard/5483567-expected.txt: Removed.

2011-05-26  Ryosuke Niwa  <rniwa@webkit.org>

        Reviewed by Eric Seidel.

        editing/pasteboard/5089327.html should be renamed and converted to a dump-as-markup test
        https://bugs.webkit.org/show_bug.cgi?id=61597

        Renamed 5089327.html to paste-into-blockquote-with-document-font-color.html and converted it
        to a dump-as-markup test.

        * editing/pasteboard/5089327.html: Removed.
        * editing/pasteboard/paste-into-blockquote-with-document-font-color-expected.txt: Added.
        * editing/pasteboard/paste-into-blockquote-with-document-font-color.html: Copied from
        LayoutTests/editing/pasteboard/5089327.html.
        * platform/chromium-linux/editing/pasteboard/5089327-expected.png: Removed.
        * platform/chromium-win/editing/pasteboard/5089327-expected.png: Removed.
        * platform/chromium-win/editing/pasteboard/5089327-expected.txt: Removed.
        * platform/gtk/editing/pasteboard/5089327-expected.txt: Removed.
        * platform/mac-leopard/editing/pasteboard/5089327-expected.png: Removed.
        * platform/mac/editing/pasteboard/5089327-expected.png: Removed.
        * platform/mac/editing/pasteboard/5089327-expected.txt: Removed.
        * platform/qt/editing/pasteboard/5089327-expected.txt: Removed.

2011-05-26  Ryosuke Niwa  <rniwa@webkit.org>

        Reviewed by Eric Seidel.

        editing/pasteboard/5027857.html should be renamed and converted to a dump-as-markup test
        https://bugs.webkit.org/show_bug.cgi?id=61602

        Renamed 5027857.html to paste-code-in-pre.html and converted it to a dump-as-markup test.

        * editing/pasteboard/5027857.html: Removed.
        * editing/pasteboard/paste-code-in-pre-expected.txt: Added.
        * editing/pasteboard/paste-code-in-pre.html: Copied from LayoutTests/editing/pasteboard/5027857.html.
        * platform/chromium-linux/editing/pasteboard/5027857-expected.png: Removed.
        * platform/chromium-win/editing/pasteboard/5027857-expected.png: Removed.
        * platform/chromium-win/editing/pasteboard/5027857-expected.txt: Removed.
        * platform/chromium-win/editing/pasteboard/paste-code-in-pre-expected.txt: Added.
        * platform/gtk/editing/pasteboard/5027857-expected.png: Removed.
        * platform/gtk/editing/pasteboard/5027857-expected.txt: Removed.
        * platform/mac-leopard/editing/pasteboard/5027857-expected.png: Removed.
        * platform/mac/editing/pasteboard/5027857-expected.png: Removed.
        * platform/mac/editing/pasteboard/5027857-expected.txt: Removed.
        * platform/qt/editing/pasteboard/5027857-expected.txt: Removed.

2011-05-26  Annie Sullivan  <sullivan@chromium.org>

        Reviewed by Ryosuke Niwa.

        Delete table in contentEditable/designMode produces odd contents
        https://bugs.webkit.org/show_bug.cgi?id=57148

        Add a test for the case given in the bug: deleting an unstyled table
        should not leave behind a style span.

        Rebaseline tests now that border-collapse, -webkit-border-horizontal-spacing,
        and -webkit-border-vertical-spacing style spans are no longer added on
        table and table cell deletion, and no longer applied when copying to the
        clipboard.

        * editing/deleting/5026848-2-expected.txt:
        * editing/deleting/5026848-3-expected.txt:
        * editing/deleting/5032066-expected.txt:
        * editing/deleting/5115601-expected.txt:
        * editing/deleting/5206311-2-expected.txt:
        * editing/deleting/delete-block-table-expected.txt:
        * editing/deleting/delete-last-char-in-table-expected.txt: Added.
        * editing/deleting/delete-last-char-in-table.html: Added. New test for bug.
        * editing/deleting/delete-select-all-001-expected.txt:
        * editing/pasteboard/data-transfer-items-expected.txt:
        * editing/pasteboard/onpaste-text-html-expected.txt:
        * editing/selection/4895428-1-expected.txt:
        * editing/selection/4895428-4-expected.txt:
        * fast/events/ondrop-text-html-expected.txt:

2011-05-26  Ryosuke Niwa  <rniwa@webkit.org>

        Reviewed by Simon Fraser.

        editing/pasteboard/style-from-rules.html is flaky on Mac bots
        https://bugs.webkit.org/show_bug.cgi?id=61586

        Don't attach an event listener to dump markup on paste when ran by DRT
        because we manually dump markup in DRT.

        * editing/pasteboard/style-from-rules.html:

2011-05-26  Yuta Kitamura  <yutak@chromium.org>

        Reviewed by Kent Tamura.

        WebSocket closing handshake
        https://bugs.webkit.org/show_bug.cgi?id=35721

        * http/tests/websocket/tests/client-close-expected.txt: Added.
        * http/tests/websocket/tests/client-close.html: Added. Test client-initiated close.
        * http/tests/websocket/tests/client-close_wsh.py: Added.
        * http/tests/websocket/tests/close-before-open-expected.txt: Add a new console message.
        * http/tests/websocket/tests/close-event-expected.txt:
        * http/tests/websocket/tests/close-event.html: Test if closeEvent.wasClean is true.
        * http/tests/websocket/tests/close-unref-websocket-expected.txt: Add a new console message.
        * http/tests/websocket/tests/frame-length-longer-than-buffer_wsh.py:
        We need to stop pywebsocket from starting the closing handshake. Otherwise, pywebsocket
        waits for a close frame to arrive and this test will time out.
        * http/tests/websocket/tests/server-close-expected.txt: Added.
        * http/tests/websocket/tests/server-close.html: Added. Test server-initiated close.
        * http/tests/websocket/tests/server-close_wsh.py: Added.
        * http/tests/websocket/tests/websocket-event-target-expected.txt: Add a new console message.

2011-05-26  MORITA Hajime  <morrita@google.com>

        Unreviewed expectations update for <details>.

        * platform/chromium-linux-x86/fast/html/details-add-child-1-expected.png: Added.
        * platform/chromium-linux-x86/fast/html/details-add-child-2-expected.png: Added.
        * platform/chromium-linux-x86/fast/html/details-add-details-child-1-expected.png: Added.
        * platform/chromium-linux-x86/fast/html/details-add-details-child-2-expected.png: Added.
        * platform/chromium-linux-x86/fast/html/details-add-summary-child-1-expected.png: Added.
        * platform/chromium-linux-x86/fast/html/details-add-summary-child-2-expected.png: Added.
        * platform/chromium-linux-x86/fast/html/details-nested-1-expected.png: Added.
        * platform/chromium-linux-x86/fast/html/details-nested-2-expected.png: Added.
        * platform/chromium-linux-x86/fast/html/details-remove-child-1-expected.png: Added.
        * platform/chromium-linux-x86/fast/html/details-remove-child-2-expected.png: Added.
        * platform/chromium-linux-x86/fast/html/details-remove-summary-child-1-expected.png: Added.
        * platform/chromium-linux-x86/fast/html/details-remove-summary-child-2-expected.png: Added.
        * platform/chromium-linux-x86/fast/html/details-replace-summary-child-expected.png: Added.
        * platform/chromium-linux-x86/fast/html/details-replace-summary-child-expected.txt: Added.
        * platform/chromium-linux-x86/fast/html/details-replace-text-expected.png: Added.
        * platform/chromium-linux-x86/fast/html/details-replace-text-expected.txt: Added.
        * platform/chromium-linux/fast/html/details-add-child-1-expected.png: Added.
        * platform/chromium-linux/fast/html/details-add-child-2-expected.png: Added.
        * platform/chromium-linux/fast/html/details-add-details-child-1-expected.png: Added.
        * platform/chromium-linux/fast/html/details-add-details-child-2-expected.png: Added.
        * platform/chromium-linux/fast/html/details-add-summary-child-1-expected.png: Added.
        * platform/chromium-linux/fast/html/details-add-summary-child-2-expected.png: Added.
        * platform/chromium-linux/fast/html/details-nested-1-expected.png: Added.
        * platform/chromium-linux/fast/html/details-nested-2-expected.png: Added.
        * platform/chromium-linux/fast/html/details-remove-child-1-expected.png: Added.
        * platform/chromium-linux/fast/html/details-remove-child-2-expected.png: Added.
        * platform/chromium-linux/fast/html/details-remove-summary-child-1-expected.png: Added.
        * platform/chromium-linux/fast/html/details-remove-summary-child-2-expected.png: Added.
        * platform/chromium-linux/fast/html/details-replace-summary-child-expected.png: Added.
        * platform/chromium-linux/fast/html/details-replace-summary-child-expected.txt: Added.
        * platform/chromium-linux/fast/html/details-replace-text-expected.png: Added.
        * platform/chromium-linux/fast/html/details-replace-text-expected.txt: Added.
        * platform/chromium-mac-leopard/fast/html/details-add-child-1-expected.png: Added.
        * platform/chromium-mac-leopard/fast/html/details-add-child-2-expected.png: Added.
        * platform/chromium-mac-leopard/fast/html/details-add-details-child-1-expected.png: Added.
        * platform/chromium-mac-leopard/fast/html/details-add-details-child-2-expected.png: Added.
        * platform/chromium-mac-leopard/fast/html/details-add-summary-child-1-expected.png: Added.
        * platform/chromium-mac-leopard/fast/html/details-add-summary-child-2-expected.png: Added.
        * platform/chromium-mac-leopard/fast/html/details-nested-1-expected.png: Added.
        * platform/chromium-mac-leopard/fast/html/details-nested-2-expected.png: Added.
        * platform/chromium-mac-leopard/fast/html/details-remove-child-1-expected.png: Added.
        * platform/chromium-mac-leopard/fast/html/details-remove-child-2-expected.png: Added.
        * platform/chromium-mac-leopard/fast/html/details-remove-summary-child-1-expected.png: Added.
        * platform/chromium-mac-leopard/fast/html/details-remove-summary-child-2-expected.png: Added.
        * platform/chromium-mac-leopard/fast/html/details-replace-summary-child-expected.png: Added.
        * platform/chromium-mac-leopard/fast/html/details-replace-text-expected.png: Added.
        * platform/chromium-win/fast/html/details-add-child-1-expected.png: Added.
        * platform/chromium-win/fast/html/details-add-child-1-expected.txt: Added.
        * platform/chromium-win/fast/html/details-add-child-2-expected.png: Added.
        * platform/chromium-win/fast/html/details-add-child-2-expected.txt: Added.
        * platform/chromium-win/fast/html/details-add-details-child-1-expected.png: Added.
        * platform/chromium-win/fast/html/details-add-details-child-1-expected.txt: Added.
        * platform/chromium-win/fast/html/details-add-details-child-2-expected.png: Added.
        * platform/chromium-win/fast/html/details-add-details-child-2-expected.txt: Added.
        * platform/chromium-win/fast/html/details-add-summary-1-and-click-expected.txt:
        * platform/chromium-win/fast/html/details-add-summary-1-expected.txt:
        * platform/chromium-win/fast/html/details-add-summary-10-and-click-expected.txt:
        * platform/chromium-win/fast/html/details-add-summary-10-expected.txt:
        * platform/chromium-win/fast/html/details-add-summary-2-and-click-expected.txt:
        * platform/chromium-win/fast/html/details-add-summary-2-expected.txt:
        * platform/chromium-win/fast/html/details-add-summary-3-and-click-expected.txt:
        * platform/chromium-win/fast/html/details-add-summary-3-expected.txt:
        * platform/chromium-win/fast/html/details-add-summary-4-and-click-expected.txt:
        * platform/chromium-win/fast/html/details-add-summary-4-expected.txt:
        * platform/chromium-win/fast/html/details-add-summary-5-and-click-expected.txt:
        * platform/chromium-win/fast/html/details-add-summary-5-expected.txt:
        * platform/chromium-win/fast/html/details-add-summary-6-and-click-expected.txt:
        * platform/chromium-win/fast/html/details-add-summary-6-expected.txt:
        * platform/chromium-win/fast/html/details-add-summary-7-and-click-expected.txt:
        * platform/chromium-win/fast/html/details-add-summary-7-expected.txt:
        * platform/chromium-win/fast/html/details-add-summary-8-and-click-expected.txt:
        * platform/chromium-win/fast/html/details-add-summary-8-expected.txt:
        * platform/chromium-win/fast/html/details-add-summary-9-and-click-expected.txt:
        * platform/chromium-win/fast/html/details-add-summary-9-expected.txt:
        * platform/chromium-win/fast/html/details-add-summary-child-1-expected.png: Added.
        * platform/chromium-win/fast/html/details-add-summary-child-1-expected.txt: Added.
        * platform/chromium-win/fast/html/details-add-summary-child-2-expected.png: Added.
        * platform/chromium-win/fast/html/details-add-summary-child-2-expected.txt: Added.
        * platform/chromium-win/fast/html/details-nested-1-expected.png: Added.
        * platform/chromium-win/fast/html/details-nested-1-expected.txt: Added.
        * platform/chromium-win/fast/html/details-nested-2-expected.png: Added.
        * platform/chromium-win/fast/html/details-nested-2-expected.txt: Added.
        * platform/chromium-win/fast/html/details-no-summary1-expected.txt:
        * platform/chromium-win/fast/html/details-no-summary2-expected.txt:
        * platform/chromium-win/fast/html/details-no-summary3-expected.txt:
        * platform/chromium-win/fast/html/details-no-summary4-expected.txt:
        * platform/chromium-win/fast/html/details-open-javascript-expected.txt:
        * platform/chromium-win/fast/html/details-open1-expected.txt:
        * platform/chromium-win/fast/html/details-open2-expected.txt:
        * platform/chromium-win/fast/html/details-open3-expected.txt:
        * platform/chromium-win/fast/html/details-open4-expected.txt:
        * platform/chromium-win/fast/html/details-open5-expected.txt:
        * platform/chromium-win/fast/html/details-open6-expected.txt:
        * platform/chromium-win/fast/html/details-position-expected.txt:
        * platform/chromium-win/fast/html/details-remove-child-1-expected.png: Added.
        * platform/chromium-win/fast/html/details-remove-child-1-expected.txt: Added.
        * platform/chromium-win/fast/html/details-remove-child-2-expected.png: Added.
        * platform/chromium-win/fast/html/details-remove-child-2-expected.txt: Added.
        * platform/chromium-win/fast/html/details-remove-summary-1-and-click-expected.txt:
        * platform/chromium-win/fast/html/details-remove-summary-1-expected.txt:
        * platform/chromium-win/fast/html/details-remove-summary-2-and-click-expected.txt:
        * platform/chromium-win/fast/html/details-remove-summary-2-expected.txt:
        * platform/chromium-win/fast/html/details-remove-summary-3-and-click-expected.txt:
        * platform/chromium-win/fast/html/details-remove-summary-3-expected.txt:
        * platform/chromium-win/fast/html/details-remove-summary-4-and-click-expected.txt:
        * platform/chromium-win/fast/html/details-remove-summary-4-expected.txt:
        * platform/chromium-win/fast/html/details-remove-summary-5-and-click-expected.txt:
        * platform/chromium-win/fast/html/details-remove-summary-5-expected.txt:
        * platform/chromium-win/fast/html/details-remove-summary-6-and-click-expected.txt:
        * platform/chromium-win/fast/html/details-remove-summary-6-expected.txt:
        * platform/chromium-win/fast/html/details-remove-summary-child-1-expected.png: Added.
        * platform/chromium-win/fast/html/details-remove-summary-child-1-expected.txt: Added.
        * platform/chromium-win/fast/html/details-remove-summary-child-2-expected.png: Added.
        * platform/chromium-win/fast/html/details-remove-summary-child-2-expected.txt: Added.
        * platform/chromium-win/fast/html/details-replace-summary-child-expected.png: Added.
        * platform/chromium-win/fast/html/details-replace-summary-child-expected.txt: Added.
        * platform/chromium-win/fast/html/details-replace-text-expected.png: Added.
        * platform/chromium-win/fast/html/details-replace-text-expected.txt: Added.
        * platform/chromium-win/fast/html/details-writing-mode-expected.txt:
        * platform/chromium/test_expectations.txt:

2011-05-26  James Kozianski  <koz@chromium.org>

        Reviewed by Eric Seidel.

        Implement a whitelist for registerProtocolHandler.

        Described in the thread here
        http://lists.whatwg.org/htdig.cgi/whatwg-whatwg.org/2011-April/031220.html

        https://bugs.webkit.org/show_bug.cgi?id=60322

        * fast/dom/register-protocol-handler.html:

2011-05-26  Adam Klein  <adamk@chromium.org>

        Unreviewed. Remove some passing tests from the test expectations.

        * platform/chromium/test_expectations.txt:

2011-05-26  Qi Zhang  <qi.2.zhang@nokia.com>

        Reviewed by Andreas Kling.

        WebKitTestRunner needs layoutTestController.setAuthorAndUserStylesEnabled
        https://bugs.webkit.org/show_bug.cgi?id=42676

        Implemented layoutTestController.setAuthorAndUserStylesEnabled for WebKitTestRunner.

        * platform/mac-wk2/Skipped:
        * platform/qt-wk2/Skipped:

2011-05-26  Adam Klein  <adamk@chromium.org>

        Unreviewed.  Add Leopard rebaseline.

        * platform/chromium-mac-leopard/fast/gradients/css3-repeating-linear-gradients2-expected.png: Added.

2011-05-26  Sheriff Bot  <webkit.review.bot@gmail.com>

        Unreviewed, rolling out r87368.
        http://trac.webkit.org/changeset/87368
        https://bugs.webkit.org/show_bug.cgi?id=61564

        Wrong approach, will do the wrong thing if the element needs
        simplified normal flow layout but is not positioned (Requested
        by jamesr on #webkit).

        * transforms/2d/set-transform-and-top-expected.txt: Removed.
        * transforms/2d/set-transform-and-top.html: Removed.

2011-05-02  Robert Hogan  <robert@webkit.org>

        Reviewed by Adam Roben.

        [Qt] Allow popup windows from plugins when initiated by a user gesture

        https://bugs.webkit.org/show_bug.cgi?id=41292

        * platform/qt/Skipped: Unskip plugin-initiate-popup-window.html
        * platform/qt/plugins/plugin-initiate-popup-window-expected.txt: Copied from LayoutTests/platform/mac/plugins/plugin-initiate-popup-window-expected.txt.
        * plugins/plugin-initiate-popup-window.html: Plugins are only windowless
                                                     by default on OSX, so make the plugins windowless explicitly.

2011-05-26  Mihai Parparita  <mihaip@chromium.org>

        Reviewed by Adam Barth.

        Support cross-origin XMLHttpRequest in isolated worlds
        https://bugs.webkit.org/show_bug.cgi?id=59843

        Add test for doing a cross-origin XHR in an isolated world via 
        setIsolatedWorldSecurityOrigin and addOriginAccessWhitelistEntry.

        Skipped on JSC ports.

        * http/tests/security/isolatedWorld/cross-origin-xhr-expected.txt: Added.
        * http/tests/security/isolatedWorld/cross-origin-xhr.html: Added.
        * http/tests/security/isolatedWorld/resources/cross-origin-xhr.txt: Added.
        * platform/gtk/Skipped:
        * platform/mac/Skipped:
        * platform/qt/Skipped:
        * platform/win/Skipped:

2011-05-26  Adam Klein  <adamk@chromium.org>

        Unreviewed. Suppress more flaky Linux tests.

        * platform/chromium/test_expectations.txt:

2011-05-26  Adam Klein  <adamk@chromium.org>

        Unreviewed. Suppress flaky timeouts and crashes in a few tests.

        * platform/chromium/test_expectations.txt:

2011-05-26  Adam Klein  <adamk@chromium.org>

        Unreviewed. Remove test expectations for now-passing tests.

        * platform/chromium/test_expectations.txt: Narrow some failures to Win/Linux; remove tests now passing due to rollout.

2011-05-26  Adam Klein  <adamk@chromium.org>

        Unreviewed. Rebaselines for SVG tests added in r87284.

        * platform/chromium-linux-x86/svg/dynamic-updates/SVGTextElement-dom-dx-attr-expected.png: Added.
        * platform/chromium-linux-x86/svg/dynamic-updates/SVGTextElement-dom-dy-attr-expected.png: Added.
        * platform/chromium-linux-x86/svg/dynamic-updates/SVGTextElement-dom-rotate-attr-expected.png: Added.
        * platform/chromium-linux-x86/svg/dynamic-updates/SVGTextElement-dom-x-attr-expected.png: Added.
        * platform/chromium-linux-x86/svg/dynamic-updates/SVGTextElement-dom-y-attr-expected.png: Added.
        * platform/chromium-linux-x86/svg/dynamic-updates/SVGTextElement-svgdom-dx-prop-expected.png: Added.
        * platform/chromium-linux-x86/svg/dynamic-updates/SVGTextElement-svgdom-dy-prop-expected.png: Added.
        * platform/chromium-linux-x86/svg/dynamic-updates/SVGTextElement-svgdom-x-prop-expected.png: Added.
        * platform/chromium-linux-x86/svg/dynamic-updates/SVGTextElement-svgdom-y-prop-expected.png: Added.
        * platform/chromium-linux/svg/dynamic-updates/SVGTextElement-dom-dx-attr-expected.png: Added.
        * platform/chromium-linux/svg/dynamic-updates/SVGTextElement-dom-dy-attr-expected.png: Added.
        * platform/chromium-linux/svg/dynamic-updates/SVGTextElement-dom-rotate-attr-expected.png: Added.
        * platform/chromium-linux/svg/dynamic-updates/SVGTextElement-dom-x-attr-expected.png: Added.
        * platform/chromium-linux/svg/dynamic-updates/SVGTextElement-dom-y-attr-expected.png: Added.
        * platform/chromium-linux/svg/dynamic-updates/SVGTextElement-svgdom-dx-prop-expected.png: Added.
        * platform/chromium-linux/svg/dynamic-updates/SVGTextElement-svgdom-dy-prop-expected.png: Added.
        * platform/chromium-linux/svg/dynamic-updates/SVGTextElement-svgdom-x-prop-expected.png: Added.
        * platform/chromium-linux/svg/dynamic-updates/SVGTextElement-svgdom-y-prop-expected.png: Added.
        * platform/chromium-mac-leopard/svg/dynamic-updates/SVGTextElement-dom-dx-attr-expected.png: Added.
        * platform/chromium-mac-leopard/svg/dynamic-updates/SVGTextElement-dom-dy-attr-expected.png: Added.
        * platform/chromium-mac-leopard/svg/dynamic-updates/SVGTextElement-dom-rotate-attr-expected.png: Added.
        * platform/chromium-mac-leopard/svg/dynamic-updates/SVGTextElement-dom-x-attr-expected.png: Added.
        * platform/chromium-mac-leopard/svg/dynamic-updates/SVGTextElement-dom-y-attr-expected.png: Added.
        * platform/chromium-mac-leopard/svg/dynamic-updates/SVGTextElement-svgdom-dx-prop-expected.png: Added.
        * platform/chromium-mac-leopard/svg/dynamic-updates/SVGTextElement-svgdom-dy-prop-expected.png: Added.
        * platform/chromium-mac-leopard/svg/dynamic-updates/SVGTextElement-svgdom-x-prop-expected.png: Added.
        * platform/chromium-mac-leopard/svg/dynamic-updates/SVGTextElement-svgdom-y-prop-expected.png: Added.
        * platform/chromium-win/svg/dynamic-updates/SVGTextElement-dom-dx-attr-expected.png: Added.
        * platform/chromium-win/svg/dynamic-updates/SVGTextElement-dom-dy-attr-expected.png: Added.
        * platform/chromium-win/svg/dynamic-updates/SVGTextElement-dom-rotate-attr-expected.png: Added.
        * platform/chromium-win/svg/dynamic-updates/SVGTextElement-dom-x-attr-expected.png: Added.
        * platform/chromium-win/svg/dynamic-updates/SVGTextElement-dom-y-attr-expected.png: Added.
        * platform/chromium-win/svg/dynamic-updates/SVGTextElement-svgdom-dx-prop-expected.png: Added.
        * platform/chromium-win/svg/dynamic-updates/SVGTextElement-svgdom-dy-prop-expected.png: Added.
        * platform/chromium-win/svg/dynamic-updates/SVGTextElement-svgdom-x-prop-expected.png: Added.
        * platform/chromium-win/svg/dynamic-updates/SVGTextElement-svgdom-y-prop-expected.png: Added.
        * platform/chromium/test_expectations.txt:

2011-05-26  Ryosuke Niwa  <rniwa@webkit.org>

        GTK & Qt rebaselines for r87400.

        * platform/gtk/editing/pasteboard/5780697-2-expected.txt:
        * platform/qt/editing/pasteboard/5780697-2-expected.txt:

2011-05-26  Andrey Kosyakov  <caseq@chromium.org>

        Unreviewed. Skipping 3 new inspector tests on mac-wk2, see http://webkit.org/b/61437

        * platform/mac-wk2/Skipped:

2011-05-25  Ryosuke Niwa  <rniwa@webkit.org>

        Reviewed by Enrica Casucci.

        WebKit duplicates styles from css rules on copy and paste
        https://bugs.webkit.org/show_bug.cgi?id=61466

        Added a test to ensure Webkit does not leave redundant inline style declarations after paste.
        Also rebaselined several tests that progressed.

        * editing/pasteboard/4922709-expected.txt:
        * editing/pasteboard/5780697-2-expected.txt:
        * editing/pasteboard/paste-text-012-expected.txt:
        * editing/pasteboard/style-from-rules-expected.txt: Added.
        * editing/pasteboard/style-from-rules.html: Added.
        * platform/chromium-win/editing/pasteboard/5780697-2-expected.txt:

2011-05-26  Michael Schneider  <michschn@google.com>

        Reviewed by Pavel Feldman.

        WebInspector: Added tests for timeline data API in a inspector extension.
        https://bugs.webkit.org/show_bug.cgi?id=61098

        * inspector/extensions/extensions-api-expected.txt:
        * inspector/extensions/extensions-events-expected.txt:
        * inspector/extensions/extensions-events.html:
        * inspector/timeline/timeline-test.js:
        (initialize_Timeline.InspectorTest.startTimeline):
        (initialize_Timeline.InspectorTest.stopTimeline):

2011-05-26  Adam Klein  <adamk@chromium.org>

        Unreviewed. Added baselines after r87387.

        * platform/chromium-linux-x86/fast/borders/border-antialiasing-expected.png: Added.
        * platform/chromium-linux-x86/fast/borders/border-antialiasing-expected.txt: Added.
        * platform/chromium-linux/fast/borders/border-antialiasing-expected.png: Added.
        * platform/chromium-linux/fast/borders/border-antialiasing-expected.txt: Added.
        * platform/chromium-mac-leopard/fast/borders/border-antialiasing-expected.png: Added.
        * platform/chromium-win-vista/fast/borders/border-antialiasing-expected.png: Added.
        * platform/chromium-win-vista/fast/borders/border-antialiasing-expected.txt: Added.
        * platform/chromium/test_expectations.txt: Removed override.

2011-05-26  Adam Klein  <adamk@chromium.org>

        Unreviewed. Test expectations update/rebaseline.

        * platform/chromium-linux-x86/fast/gradients/css3-repeating-linear-gradients2-expected.png: Added.
        * platform/chromium-linux/fast/gradients/css3-repeating-linear-gradients2-expected.png: Added.
        * platform/chromium-win-vista/fast/gradients/css3-repeating-linear-gradients2-expected.png: Added.
        * platform/chromium/test_expectations.txt: BUGCR84052, border-antialiasing.html IMAGE+TEXT.

2011-05-26  Andrey Kosyakov  <caseq@chromium.org>

        Reviewed by Yury Semikhatsky.

        Web Inspector: TimelinePanel should not modify input timeline data when processing timeline event
        https://bugs.webkit.org/show_bug.cgi?id=61529

        Do not modify input timeline data when processing timeline event.

        * inspector/timeline/timeline-network-resource-expected.txt:
        * platform/chromium/inspector/timeline/timeline-network-resource-expected.txt

2011-05-26  Tony Chang  <tony@chromium.org>

        Unreviewed, fixing the expected results for a test that had the
        output duplicated.

        * platform/chromium/test_expectations.txt:
        * storage/indexeddb/mozilla/create-objectstore-null-name-expected.txt:

2011-05-26  Rob Buis  <rbuis@rim.com>

        Reviewed by Dirk Schulze.

        Dynamically created <animate> elements do not animate upon document insertion as they should
        https://bugs.webkit.org/show_bug.cgi?id=20028

        Add tests for dynamically inserting <animate>.

        * svg/animations/animate-insert-begin-expected.txt: Added.
        * svg/animations/animate-insert-begin.html: Added.
        * svg/animations/animate-insert-no-begin-expected.txt: Added.
        * svg/animations/animate-insert-no-begin.html: Added.
        * svg/animations/script-tests/animate-insert-begin.js: Added.
        (sample1):
        (sample2):
        (executeTest):
        * svg/animations/script-tests/animate-insert-no-begin.js: Added.
        (sample1):
        (sample2):
        (executeTest):

2011-05-26  Chang Shu  <cshu@webkit.org>

        Unreviewed.

        [Qt] http/tests/websocket/tests/reload-crash.html fails intermittently with time out
        https://bugs.webkit.org/show_bug.cgi?id=50152

        Unskip the test case as it's not reproducible. Will watch the buildbot results.

        * platform/qt/Skipped: Unskip http/tests/websocket/tests/reload-crash.html

2011-05-25  Simon Fraser  <simon.fraser@apple.com>

        Reviewed by Adam Roben.

        Some repeating linear gradients look wrong
        https://bugs.webkit.org/show_bug.cgi?id=61371
        
        Pixel test for repeating linear gradient.

        * fast/gradients/css3-repeating-linear-gradients2-expected.txt: Added.
        * fast/gradients/css3-repeating-linear-gradients2.html: Added.
        * platform/mac/fast/gradients/css3-repeating-linear-gradients2-expected.png: Added.

2011-05-25  Simon Fraser  <simon.fraser@apple.com>

        Reviewed by Dan Bernstein.

        Always antialias table borders when scaling
        https://bugs.webkit.org/show_bug.cgi?id=61502
        
        Pixel tests for the drawing of collapsed table borders, column rules
        and inline outlines when scaled.

        * fast/borders/border-antialiasing.html: Added.
        * platform/mac/fast/borders/border-antialiasing-expected.png: Added.
        * platform/mac/fast/borders/border-antialiasing-expected.txt: Added.

2011-05-26  Csaba Osztrogonác  <ossy@webkit.org>

        [Qt][WK2] Update expected files after r87320.

        * platform/qt-wk2/Skipped:
        * platform/qt-wk2/fast/dom/Window/window-properties-expected.txt: Added.
        * platform/qt-wk2/fast/dom/Window/window-property-descriptors-expected.txt: Added.

2011-05-26  Qi Zhang  <qi.2.zhang@nokia.com>

        Reviewed by Andreas Kling.

        [Qt] Remove test cases related to layoutTestController.dumpBackForwardList from qt-wk2/Skipped
        https://bugs.webkit.org/show_bug.cgi?id=61462

        WebKitTestRunner already support layoutTestController.dumpBackForwardList from r70723.

        * platform/qt-wk2/Skipped:

2011-05-26  Vsevolod Vlasov  <vsevik@chromium.org>

        Reviewed by Yury Semikhatsky.

        Web Inspector: Use different SourceFrame instances for ResourcesPanel and NetworkPanel
        https://bugs.webkit.org/show_bug.cgi?id=59193

        * inspector/debugger/source-frame.html:

2011-05-26  Philippe Normand  <pnormand@igalia.com>

        Unreviewed, skip flaky test on GTK.

        [GTK] http/tests/eventsource/workers/eventsource-simple.html is flaky crash
        https://bugs.webkit.org/show_bug.cgi?id=61523

        * platform/gtk/Skipped:

2011-05-26  Philippe Normand  <pnormand@igalia.com>

        Unreviewed, GTK baselines for new tests.

        * platform/gtk/fast/box-shadow/scaled-box-shadow-expected.txt: Added.
        * platform/gtk/fast/css/box-shadow-and-border-radius-expected.txt: Added.
        * platform/gtk/fast/html/details-add-details-child-2-expected.txt: Added.
        * platform/gtk/fast/html/details-replace-summary-child-expected.txt: Added.
        * platform/gtk/fast/html/details-replace-text-expected.txt: Added.
        * platform/gtk/svg/W3C-SVG-1.1-SE/filters-felem-01-b-expected.txt: Added.
        * platform/gtk/svg/W3C-SVG-1.1-SE/struct-use-14-f-expected.txt: Added.

2011-05-26  Philippe Normand  <pnormand@igalia.com>

        Unreviewed, rollout of r87373 and r87375. Those commits were
        mistaken. I'll properly land the baselines later on.

        * platform/gtk/fast/box-shadow/scaled-box-shadow-actual.txt: Removed.
        * platform/gtk/fast/box-shadow/scaled-box-shadow-diffs.txt: Removed.
        * platform/gtk/fast/box-shadow/scaled-box-shadow-expectted.txt: Removed.
        * platform/gtk/fast/box-shadow/scaled-box-shadow-pretty-diff.html.txt: Removed.
        * platform/gtk/fast/box-shadow/scaled-box-shadow-stderr.txt: Removed.
        * platform/gtk/fast/css/box-shadow-and-border-radius-actual.txt: Removed.
        * platform/gtk/fast/css/box-shadow-and-border-radius-diffs.txt: Removed.
        * platform/gtk/fast/css/box-shadow-and-border-radius-expected.txt: Removed.
        * platform/gtk/fast/css/box-shadow-and-border-radius-pretty-diff.html.txt: Removed.
        * platform/gtk/fast/html/details-add-details-child-2-actual.txt: Removed.
        * platform/gtk/fast/html/details-add-details-child-2-diffs.txt: Removed.
        * platform/gtk/fast/html/details-add-details-child-2-expected.txt: Removed.
        * platform/gtk/fast/html/details-add-details-child-2-pretty-diff.html.txt: Removed.
        * platform/gtk/fast/html/details-replace-summary-child-actual.txt: Removed.
        * platform/gtk/fast/html/details-replace-summary-child-diffs.txt: Removed.
        * platform/gtk/fast/html/details-replace-summary-child-expected.txt: Removed.
        * platform/gtk/fast/html/details-replace-summary-child-pretty-diff.html.txt: Removed.
        * platform/gtk/fast/html/details-replace-text-actual.txt: Removed.
        * platform/gtk/fast/html/details-replace-text-diffs.txt: Removed.
        * platform/gtk/fast/html/details-replace-text-expected.txt: Removed.
        * platform/gtk/fast/html/details-replace-text-pretty-diff.html.txt: Removed.
        * platform/gtk/svg/W3C-SVG-1.1-SE/filters-felem-01-b-actual.txt: Removed.
        * platform/gtk/svg/W3C-SVG-1.1-SE/filters-felem-01-b-diffs.txt: Removed.
        * platform/gtk/svg/W3C-SVG-1.1-SE/filters-felem-01-b-expected.txt: Removed.
        * platform/gtk/svg/W3C-SVG-1.1-SE/filters-felem-01-b-pretty-diff.html.txt: Removed.
        * platform/gtk/svg/W3C-SVG-1.1-SE/struct-use-14-f-actual.txt: Removed.
        * platform/gtk/svg/W3C-SVG-1.1-SE/struct-use-14-f-diffs.txt: Removed.
        * platform/gtk/svg/W3C-SVG-1.1-SE/struct-use-14-f-expected.txt: Removed.
        * platform/gtk/svg/W3C-SVG-1.1-SE/struct-use-14-f-pretty-diff.html.txt: Removed.

2011-05-26  Keishi Hattori  <keishi@webkit.org>

        Reviewed by Kent Tamura.

        Add <input type=color> appearance.
        https://bugs.webkit.org/show_bug.cgi?id=61275

        * fast/forms/color/input-appearance-color.html: Added. Tests appearance of input type=color.
        * platform/chromium/test_expectations.txt: Expect FAIL for fast/forms/color
        * platform/mac/fast/forms/color/input-appearance-color-expected.png: Added.
        * platform/mac/fast/forms/color/input-appearance-color-expected.txt: Added.

2011-05-26  Kent Tamura  <tkent@chromium.org>

        Reviewed by Dimitri Glazkov.

        Fix a bug that <input type="number"> dispatches two blurs when tabbing
        from an invalid number
        https://bugs.webkit.org/show_bug.cgi?id=59071

        * fast/forms/input-number-blur-twice-expected.txt: Added.
        * fast/forms/input-number-blur-twice.html: Added.

2011-05-26  Shane Stephens  <shanestephens@google.com>

        Reviewed by James Robinson.

        REGRESSION (r81992): layout triggered by position update fails to apply when transform is updated at same time
        https://bugs.webkit.org/show_bug.cgi?id=60689

        * transforms/2d/set-transform-and-top-expected.txt: Added.
        * transforms/2d/set-transform-and-top.html: Added.

2011-05-25  Igor Oliveira  <igor.oliveira@openbossa.org>

        Reviewed by Antonio Gomes.

        [Qt] REGRESSION(r87298) Skip drag-not-loaded-image.html failing test
        https://bugs.webkit.org/show_bug.cgi?id=61465

        Skip drag-not-loaded-image.html layout test from Qt. see bug 31332

        * platform/qt/Skipped:

2011-05-25  Steve Lacey  <sjl@chromium.org>

        Reviewed by Eric Carlson.

        Rebaseline media tests after moving media controls to flexbox layout.

        https://bugs.webkit.org/show_bug.cgi?id=61380

        * platform/chromium-mac/fast/layers/video-layer-expected.txt:
        * platform/chromium-mac/media/audio-controls-rendering-expected.txt:
        * platform/chromium-mac/media/audio-repaint-expected.txt:
        * platform/chromium-mac/media/controls-after-reload-expected.txt:
        * platform/chromium-mac/media/controls-strict-expected.txt:
        * platform/chromium-mac/media/controls-styling-expected.txt:
        * platform/chromium-mac/media/controls-without-preload-expected.txt:
        * platform/chromium-mac/media/video-controls-rendering-expected.txt:
        * platform/chromium-mac/media/video-display-toggle-expected.txt:
        * platform/chromium-mac/media/video-empty-source-expected.txt:
        * platform/chromium-mac/media/video-no-audio-expected.txt:
        * platform/chromium-mac/media/video-volume-slider-expected.txt:
        * platform/chromium-win/fast/layers/video-layer-expected.txt:
        * platform/chromium-win/media/audio-controls-rendering-expected.txt:
        * platform/chromium-win/media/audio-repaint-expected.txt:
        * platform/chromium-win/media/controls-after-reload-expected.txt:
        * platform/chromium-win/media/controls-strict-expected.txt:
        * platform/chromium-win/media/controls-styling-expected.txt:
        * platform/chromium-win/media/controls-without-preload-expected.txt:
        * platform/chromium-win/media/video-controls-rendering-expected.txt:
        * platform/chromium-win/media/video-display-toggle-expected.txt:
        * platform/chromium-win/media/video-empty-source-expected.txt:
        * platform/chromium-win/media/video-no-audio-expected.txt:
        * platform/chromium-win/media/video-volume-slider-expected.txt:
        * platform/chromium/test_expectations.txt:

2011-05-24  MORITA Hajime  <morrita@google.com>

        RenderText with empty text is not created inside ShadowContentElement 
        https://bugs.webkit.org/show_bug.cgi?id=61111

        - Added tests that capture the probelem.
        - Updated expectations that were wrong.

        * fast/html/details-replace-summary-child.html: Added.
        * fast/html/details-replace-text.html: Added.
        * platform/gtk/fast/html/details-no-summary4-expected.txt:
        * platform/gtk/fast/html/details-open-javascript-expected.txt:
        * platform/gtk/fast/html/details-open4-expected.txt:
        * platform/mac/fast/html/details-add-details-child-2-expected.txt:
        * platform/mac/fast/html/details-no-summary4-expected.txt:
        * platform/mac/fast/html/details-open-javascript-expected.txt:
        * platform/mac/fast/html/details-open4-expected.txt:
        * platform/mac/fast/html/details-replace-summary-child-expected.png: Added.
        * platform/mac/fast/html/details-replace-summary-child-expected.txt: Added.
        * platform/mac/fast/html/details-replace-text-expected.png: Added.
        * platform/mac/fast/html/details-replace-text-expected.txt: Added.
        * platform/qt/fast/html/details-no-summary4-expected.txt:
        * platform/qt/fast/html/details-open-javascript-expected.txt:
        * platform/qt/fast/html/details-open4-expected.txt:

2011-05-25  Adam Klein  <adamk@chromium.org>

        Unreviewed. Add Win/CRASH expectation for new crashy plugin test,
        reported as http://crbug.com/83994.

        * platform/chromium/test_expectations.txt:

2011-05-25  Adam Klein  <adamk@chromium.org>

        Unreviewed. Temporarily ignore MHTML test failures on Windows
        while we dig into it in http://crbug.com/83833.

        * platform/chromium/test_expectations.txt:

2011-05-25  Qi Zhang  <qi.2.zhang@nokia.com>

        Reviewed by Simon Hausmann.

        WebKitTestRunner needs layoutTestController.setPrivateBrowsingEnabled
        https://bugs.webkit.org/show_bug.cgi?id=42697

        * platform/mac-wk2/Skipped:
        * platform/qt-wk2/Skipped:

2011-05-25  Adam Klein  <adamk@chromium.org>

        Unreviewed. Fix to previous update, mark drag-not-loaded-image crash as DEBUG-only.

        * platform/chromium/test_expectations.txt:

2011-05-25  Jer Noble  <jer.noble@apple.com>

        Unreviewed; Skip failing tests after r87328.

        * platform/mac/Skipped:

2011-05-25  Adam Klein  <adamk@chromium.org>

        Unreviewed. Test expectations update.

        * platform/chromium/test_expectations.txt:

2011-05-25  Adam Klein  <adamk@chromium.org>

        Unreviewed. Rebaseline svg tests after r87310.

        * platform/chromium-linux-x86/svg/W3C-SVG-1.1-SE/filters-felem-01-b-expected.png: Added.
        * platform/chromium-linux-x86/svg/W3C-SVG-1.1-SE/filters-felem-01-b-expected.txt: Added.
        * platform/chromium-linux-x86/svg/W3C-SVG-1.1/filters-felem-01-b-expected.png: Added.
        * platform/chromium-linux/svg/W3C-SVG-1.1-SE/filters-felem-01-b-expected.png: Added.
        * platform/chromium-linux/svg/W3C-SVG-1.1-SE/filters-felem-01-b-expected.txt: Added.
        * platform/chromium-linux/svg/W3C-SVG-1.1/filters-felem-01-b-expected.png:
        * platform/chromium-mac/svg/W3C-SVG-1.1/filters-felem-01-b-expected.png: Removed.
        * platform/chromium-win/svg/W3C-SVG-1.1-SE/filters-felem-01-b-expected.png: Added.
        * platform/chromium-win/svg/W3C-SVG-1.1-SE/filters-felem-01-b-expected.txt: Added.
        * platform/chromium-win/svg/W3C-SVG-1.1/filters-felem-01-b-expected.png:

2011-05-25  Adam Klein  <adamk@chromium.org>

        Unreviewed. Removing test_expectations for non-existent tests.

        * platform/chromium/test_expectations.txt:

2011-05-25  Jer Noble  <jer.noble@apple.com>

        Unreviewed; Update Skipped list for failing tests.

        A new full-screen test requires <video> full screen support, which does not
        exist on mac-leopard.  Follow-up to r87322.

        * platform/mac-leopard/Skipped:

2011-05-25  Adam Klein  <adamk@chromium.org>

        Unreviewed. Test expectations update, followup to r87291.

        The aforementioned change cleared out these files, when the intent
        seems to have been removal to remove them.

        * platform/chromium-mac/ietestcenter/Javascript/15.5.4.20-1-1-expected.txt: Removed.
        * platform/chromium-mac/ietestcenter/Javascript/15.5.4.20-1-2-expected.txt: Removed.
        * platform/chromium-win/ietestcenter/Javascript/15.5.4.20-1-1-expected.txt: Removed.
        * platform/chromium-win/ietestcenter/Javascript/15.5.4.20-1-2-expected.txt: Removed.

2011-05-25  Jon Honeycutt  <jhoneycutt@apple.com>

        REGRESSION (WebKit2): Crash in Flash on USA Today photo gallery
        https://bugs.webkit.org/show_bug.cgi?id=61428
        <rdar://problem/9457006>

        Reviewed by Adam Roben.

        * platform/win/plugins/call-javascript-that-destroys-plugin-expected.txt: Added.
        * platform/win/plugins/call-javascript-that-destroys-plugin.html: Added.

2011-05-25  Andrew Scherkus  <scherkus@chromium.org>

        Reviewed by Eric Carlson.

        Fix media element regression where ended event stopped firing after changing the src attribute.

        https://bugs.webkit.org/show_bug.cgi?id=61336

        * media/media-ended-expected.txt: Added.
        * media/media-ended.html: Added.

2011-05-25  Jer Noble  <jer.noble@apple.com>

        Reviewed by Darin Adler.

        REGRESSION: Fullscreen button on embedded Vimeo videos does nothing
        https://bugs.webkit.org/show_bug.cgi?id=61461

        * fullscreen/full-screen-iframe-legacy-expected.txt: Added.
        * fullscreen/full-screen-iframe-legacy.html: Added.
        * fullscreen/resources/legacy.html: Added.

2011-05-25  Caio Marcelo de Oliveira Filho  <caio.oliveira@openbossa.org>

        Reviewed by Andreas Kling.

        [Qt] Missing update for expected results in LayoutTests after r87315
        https://bugs.webkit.org/show_bug.cgi?id=61467

        We now expose __qt_sender__ as a non-enumarated property in the
        global object. Fix our expectations in relevant tests.

        * platform/qt/fast/dom/Window/window-properties-expected.txt:
        * platform/qt/fast/dom/Window/window-property-descriptors-expected.txt:

2011-05-25  Kulanthaivel Palanichamy  <kulanthaivel@codeaurora.org>

        Reviewed by David Hyatt.

        Selector matching doesn't update when DOM changes ("[data-a=x] #x")
        https://bugs.webkit.org/show_bug.cgi?id=60752
        
        Added test cases for all the attribute selector types (CSS2.1 & CSS3).

        * fast/css/attribute-selector-begin-dynamic-no-elementstyle-expected.txt: Added.
        * fast/css/attribute-selector-begin-dynamic-no-elementstyle.html: Added.
        * fast/css/attribute-selector-contain-dynamic-no-elementstyle-expected.txt: Added.
        * fast/css/attribute-selector-contain-dynamic-no-elementstyle.html: Added.
        * fast/css/attribute-selector-end-dynamic-no-elementstyle-expected.txt: Added.
        * fast/css/attribute-selector-end-dynamic-no-elementstyle.html: Added.
        * fast/css/attribute-selector-exact-dynamic-no-elementstyle-expected.txt: Added.
        * fast/css/attribute-selector-exact-dynamic-no-elementstyle.html: Added.
        * fast/css/attribute-selector-hyphen-dynamic-no-elementstyle-expected.txt: Added.
        * fast/css/attribute-selector-hyphen-dynamic-no-elementstyle.html: Added.
        * fast/css/attribute-selector-list-dynamic-no-elementstyle-expected.txt: Added.
        * fast/css/attribute-selector-list-dynamic-no-elementstyle.html: Added.
        * fast/css/attribute-selector-set-dynamic-no-elementstyle-expected.txt: Added.
        * fast/css/attribute-selector-set-dynamic-no-elementstyle.html: Added.

2011-05-25  Adam Klein  <adamk@chromium.org>

        Unreviewed. Update chromium expectations after r87307.

        * platform/chromium/test_expectations.txt: suppress, WK61470.

2011-05-25  Sheriff Bot  <webkit.review.bot@gmail.com>

        Unreviewed, rolling out r87257.
        http://trac.webkit.org/changeset/87257
        https://bugs.webkit.org/show_bug.cgi?id=61457

        This broke layout tests, see bug 61431. (Requested by
        hwennborg on #webkit).

        * storage/indexeddb/migrate-basics-expected.txt: Removed.
        * storage/indexeddb/migrate-basics.html: Removed.

2011-05-25  Qi Zhang  <qi.2.zhang@nokia.com>

        Reviewed by Andreas Kling.

        [Qt] fast/css/disabled-author-styles.html failed
        https://bugs.webkit.org/show_bug.cgi?id=61438

        Unskip test case and provide expect result files.

        * platform/qt/Skipped:
        * platform/qt/fast/css/disabled-author-styles-expected.png: Added.
        * platform/qt/fast/css/disabled-author-styles-expected.txt: Added.

2011-05-25  Rob Buis  <rbuis@rim.com>

        Reviewed by Eric Seidel.

        WebKit does not handle missing filter elements correctly
        https://bugs.webkit.org/show_bug.cgi?id=12569

        Updated improved pixel test result and add new SVG1.1 SE test and results.

        * platform/mac/svg/W3C-SVG-1.1-SE/filters-felem-01-b-expected.png: Added.
        * platform/mac/svg/W3C-SVG-1.1-SE/filters-felem-01-b-expected.txt: Added.
        * platform/mac/svg/W3C-SVG-1.1/filters-felem-01-b-expected.png:
        * svg/W3C-SVG-1.1-SE/filters-felem-01-b.svg: Added.

2011-05-25  Nate Chapin  <japhet@chromium.org>

        Reviewed by Adam Barth.

        Add new console output for https://bugs.webkit.org/show_bug.cgi?id=59113.

        * http/tests/security/view-source-no-javascript-url-expected.txt:

2011-05-25  Julien Chaffraix  <jchaffraix@codeaurora.org>

        Reviewed by James Robinson.

        http://philip.html5.org/tests/canvas/suite/tests/2d.composite.uncovered.fill.source-in.html fails
        https://bugs.webkit.org/show_bug.cgi?id=39027

        And:

        - Fix LayoutTests/canvas/philip/tests/2d.composite.uncovered.fill.source-out.html
          https://bugs.webkit.org/show_bug.cgi?id=48295

        - Fix LayoutTests/canvas/philip/tests/2d.composite.uncovered.pattern.source-in.html
          https://bugs.webkit.org/show_bug.cgi?id=48304

        - Fix LayoutTests/canvas/philip/tests/2d.composite.uncovered.pattern.source-out.html
        https://bugs.webkit.org/show_bug.cgi?id=48305

        * canvas/philip/tests/2d.composite.uncovered.pattern.source-in-expected.txt:
        * canvas/philip/tests/2d.composite.uncovered.pattern.source-out-expected.txt:
        Those 2 tests need a trailing line that was added as part of this change.

        * fast/canvas/canvas-composite-alpha.html: Updated the test result to match the specification.
        The changes are fairly simple:
          - Clear up the destination rectangle as it should be always transparent now (source is transparent
            outside the source rectangle).
          - Clear the composition rectangle if source or destination is transparent.
          - Fixed the test when run in the browser.
        Validated the changes against FF and Opera (IE 9 cannot render this test).

        * platform/chromium/test_expectations.txt:
        * platform/gtk/Skipped:
        * platform/mac/Skipped:
        * platform/qt/Skipped:
        Re-enable 4 tests.

2011-05-20  Robert Hogan  <robert@webkit.org>

        Reviewed by Geoffrey Garen.

        [Qt/Gtk/Chromium] Fix plugins/embed-attributes-setting.html

        Use the test netscape plugin instead of quicktime.
        Allows the test to pass on Qt/Gtk/Chromium as well as Mac.

        https://bugs.webkit.org/show_bug.cgi?id=61182
        http://code.google.com/p/chromium/issues/detail?id=15797

        * platform/chromium/test_expectations.txt:
        * platform/gtk/Skipped:
        * platform/qt/Skipped:
        * plugins/embed-attributes-setting-expected.txt:
        * plugins/embed-attributes-setting.html:

2011-05-25  Leon Scroggins  <scroggo@google.com>

        Reviewed by Steve Block.

        Update chromium expectations for more canvas fixes.
        https://bugs.webkit.org/show_bug.cgi?id=61433

        * platform/chromium/test_expectations.txt:

2011-05-25  Igor Oliveira  <igor.oliveira@openbossa.org>

        Reviewed by Antonio Gomes.

        [Qt] QtWebKit crashes when dragging not loaded images
        https://bugs.webkit.org/show_bug.cgi?id=61314

        Checks if WebKit crashes when dragging an image not yet loaded.

        * http/tests/misc/drag-not-loaded-image-expected.txt: Added.
        * http/tests/misc/drag-not-loaded-image.html: Added.

2011-05-25  Andrey Kosyakov  <caseq@chromium.org>

        Unreviewed. Skipped 3 new inspector tests that time out on gtk.

        * platform/gtk/Skipped:

2011-05-25  Gabor Loki  <loki@webkit.org>

        Rubber-stamped by Csaba Osztrogonác.

        [Qt] Skip failed tests after r87290 and r87292 on ARM

        * platform/qt-arm/Skipped:

2011-05-25  Anton Muhin  <antonm@chromium.org>

        Unreviewed.

        Update test expectations after 3.3.6.1 v8 roll.

        * platform/chromium-mac/ietestcenter/Javascript/15.5.4.20-1-1-expected.txt:
        * platform/chromium-mac/ietestcenter/Javascript/15.5.4.20-1-2-expected.txt:
        * platform/chromium-win/ietestcenter/Javascript/15.5.4.20-1-1-expected.txt:
        * platform/chromium-win/ietestcenter/Javascript/15.5.4.20-1-2-expected.txt:
        * platform/chromium/ietestcenter: Added.
        * platform/chromium/ietestcenter/Javascript: Added.
        * platform/chromium/ietestcenter/Javascript/15.4.4.14-5-28-expected.txt: Added.
        * platform/chromium/ietestcenter/Javascript/15.4.4.15-5-28-expected.txt: Added.

2011-05-25  Gabor Loki  <loki@webkit.org>

        Rubber-stamped by Csaba Osztrogonác.

        [Qt] Skip a flakey timed out test on ARM

        * platform/qt-arm/Skipped:

2011-05-25  Fumitoshi Ukai  <ukai@chromium.org>

        Unreviewed.

        Update chromium test expectations.

        * platform/chromium/test_expectations.txt: svn/dynamic-updates failing

2011-05-25  Fumitoshi Ukai  <ukai@chromium.org>

        Unreviewed.

        Update chromium test expectations.

        * platform/chromium/test_expectations.txt: mhtml tests pass

2011-05-25  Fumitoshi Ukai  <ukai@chromium.org>

        Unreviewed.

        Update chromium test expectations.

        * platform/chromium/test_expectations.txt:

2011-05-25  Fumitoshi Ukai  <ukai@chromium.org>

        Unreviewed.

        Update chromium test expectations.

        * platform/chromium/test_expectations.txt:

2011-05-25  Felician Marton  <marton.felician.zoltan@stud.u-szeged.hu>

        Reviewed by Csaba Osztrogonác.

        Added dynamic tests for missing properties (and attributes) in TextElement. The corresponding Mac pixel test results also added.
        https://bugs.webkit.org/show_bug.cgi?id=59677

        * platform/mac/svg/dynamic-updates/SVGTextElement-dom-dx-attr-expected.png: Added.
        * platform/mac/svg/dynamic-updates/SVGTextElement-dom-dy-attr-expected.png: Added.
        * platform/mac/svg/dynamic-updates/SVGTextElement-dom-rotate-attr-expected.png: Added.
        * platform/mac/svg/dynamic-updates/SVGTextElement-dom-x-attr-expected.png: Added.
        * platform/mac/svg/dynamic-updates/SVGTextElement-dom-y-attr-expected.png: Added.
        * platform/mac/svg/dynamic-updates/SVGTextElement-svgdom-dx-prop-expected.png: Added.
        * platform/mac/svg/dynamic-updates/SVGTextElement-svgdom-dy-prop-expected.png: Added.
        * platform/mac/svg/dynamic-updates/SVGTextElement-svgdom-x-prop-expected.png: Added.
        * platform/mac/svg/dynamic-updates/SVGTextElement-svgdom-y-prop-expected.png: Added.
        * svg/dynamic-updates/SVGTextElement-dom-dx-attr-expected.txt: Added.
        * svg/dynamic-updates/SVGTextElement-dom-dx-attr.html: Added.
        * svg/dynamic-updates/SVGTextElement-dom-dy-attr-expected.txt: Added.
        * svg/dynamic-updates/SVGTextElement-dom-dy-attr.html: Added.
        * svg/dynamic-updates/SVGTextElement-dom-rotate-attr-expected.txt: Added.
        * svg/dynamic-updates/SVGTextElement-dom-rotate-attr.html: Added.
        * svg/dynamic-updates/SVGTextElement-dom-x-attr-expected.txt: Added.
        * svg/dynamic-updates/SVGTextElement-dom-x-attr.html: Added.
        * svg/dynamic-updates/SVGTextElement-dom-y-attr-expected.txt: Added.
        * svg/dynamic-updates/SVGTextElement-dom-y-attr.html: Added.
        * svg/dynamic-updates/SVGTextElement-svgdom-dx-prop-expected.txt: Added.
        * svg/dynamic-updates/SVGTextElement-svgdom-dx-prop.html: Added.
        * svg/dynamic-updates/SVGTextElement-svgdom-dy-prop-expected.txt: Added.
        * svg/dynamic-updates/SVGTextElement-svgdom-dy-prop.html: Added.
        * svg/dynamic-updates/SVGTextElement-svgdom-x-prop-expected.txt: Added.
        * svg/dynamic-updates/SVGTextElement-svgdom-x-prop.html: Added.
        * svg/dynamic-updates/SVGTextElement-svgdom-y-prop-expected.txt: Added.
        * svg/dynamic-updates/SVGTextElement-svgdom-y-prop.html: Added.
        * svg/dynamic-updates/script-tests/SVGTextElement-dom-dx-attr.js: Added.
        (executeTest):
        * svg/dynamic-updates/script-tests/SVGTextElement-dom-dy-attr.js: Added.
        (executeTest):
        * svg/dynamic-updates/script-tests/SVGTextElement-dom-rotate-attr.js: Added.
        (executeTest):
        * svg/dynamic-updates/script-tests/SVGTextElement-dom-x-attr.js: Added.
        (executeTest):
        * svg/dynamic-updates/script-tests/SVGTextElement-dom-y-attr.js: Added.
        (executeTest):
        * svg/dynamic-updates/script-tests/SVGTextElement-svgdom-dx-prop.js: Added.
        (executeTest):
        * svg/dynamic-updates/script-tests/SVGTextElement-svgdom-dy-prop.js: Added.
        (executeTest):
        * svg/dynamic-updates/script-tests/SVGTextElement-svgdom-x-prop.js: Added.
        (executeTest):
        * svg/dynamic-updates/script-tests/SVGTextElement-svgdom-y-prop.js: Added.
        (executeTest):

2011-05-25  Yuta Kitamura  <yutak@chromium.org>

        Reviewed by Kent Tamura.

        [Chromium] Clean up WebSocket test expectations
        https://bugs.webkit.org/show_bug.cgi?id=61429

        * platform/chromium/test_expectations.txt:
        Remove two test expectations for tests that are no longer failing.

2011-05-25  Yuta Kitamura  <yutak@chromium.org>

        Reviewed by Kent Tamura.

        WebSocket: Use fail() when WebSocketChannel has failed
        https://bugs.webkit.org/show_bug.cgi?id=61353

        * http/tests/websocket/tests/frame-length-overflow-expected.txt:
        Added a new console message.

2011-05-24  Pavel Podivilov  <podivilov@chromium.org>

        Reviewed by Yury Semikhatsky.

        Web Inspector: inspected page crashes when call stack is empty after live edit.
        https://bugs.webkit.org/show_bug.cgi?id=61364

        * inspector/debugger/live-edit-expected.txt:
        * inspector/debugger/live-edit.html:
        * platform/chromium/test_expectations.txt:

2011-05-25  Mads Ager  <ager@chromium.org>

        Reviewed by Adam Barth.

        Update chromium expectations after removal of execScript from V8
        https://bugs.webkit.org/show_bug.cgi?id=61267

        * platform/chromium/fast/dom/prototype-inheritance-expected.txt:

2011-05-23  Yury Semikhatsky  <yurys@chromium.org>

        Reviewed by Adam Barth.

        Chromium DevTools: Tab crashes with "Aw, snap!" on entering "(new Image())." in console
        https://bugs.webkit.org/show_bug.cgi?id=61194

        * inspector/console/console-eval-syntax-error-expected.txt: Added.
        * inspector/console/console-eval-syntax-error.html: Added.
        * platform/chromium/inspector/console/console-eval-syntax-error-expected.txt: Added.

2011-05-24  Keishi Hattori  <keishi@webkit.org>

        Reviewed by Kent Tamura.

        Disable textfield implementation of <input type=color>. Add INPUT_COLOR feature flag. Add input color sanitizer.
        https://bugs.webkit.org/show_bug.cgi?id=61273

        * fast/forms/ValidityState-typeMismatch-color-expected.txt: Removed.
        * fast/forms/ValidityState-typeMismatch-color.html: Removed.
        * fast/forms/color/input-value-sanitization-color-expected.txt: Added.
        * fast/forms/color/input-value-sanitization-color.html: Added. Tests
        sanitization algorithm for input type=color.
        * fast/forms/input-type-change3-expected.txt:
        * fast/forms/input-widths-expected.txt:
        * fast/forms/input-widths.html: Removed type=color because it
        is no loger a text input type.
        * fast/forms/script-tests/ValidityState-patternMismatch-unsupported.js: Changed to range input type.
        * fast/forms/script-tests/ValidityState-typeMismatch-color.js: Removed.
        * fast/forms/script-tests/input-type-change3.js:
        * platform/gtk/Skipped: Skip fast/forms/color.
        * platform/mac/Skipped: Skip fast/forms/color.
        * platform/qt/Skipped: Skip fast/forms/color.
        * platform/win/Skipped: Skip fast/forms/color.

2011-05-24  Csaba Osztrogonác  <ossy@webkit.org>

        [Qt][WK2] Skip new failing test.

        * platform/qt-wk2/Skipped:

2011-05-24  Annie Sullivan  <sullivan@chromium.org>

        Reviewed by Ryosuke Niwa.

        Convert LayoutTests/editing/selection/4895428-1 and -4 to dump-as-markup
        https://bugs.webkit.org/show_bug.cgi?id=61402

        Converts the two html files to dump-as-markup and adds doctype, html, and body tags.

        * editing/selection/4895428-1-expected.txt: Added.
        * editing/selection/4895428-1.html: Converted to dump-as-markup
        * editing/selection/4895428-4-expected.txt: Added.
        * editing/selection/4895428-4.html: Converted to dump-as-markup
        * platform/chromium-linux/editing/selection/4895428-1-expected.png: Removed.
        * platform/chromium-linux/editing/selection/4895428-4-expected.png: Removed.
        * platform/chromium-win/editing/selection/4895428-1-expected.png: Removed.
        * platform/chromium-win/editing/selection/4895428-1-expected.txt: Removed.
        * platform/chromium-win/editing/selection/4895428-4-expected.png: Removed.
        * platform/chromium-win/editing/selection/4895428-4-expected.txt: Removed.
        * platform/gtk/editing/selection/4895428-1-expected.png: Removed.
        * platform/gtk/editing/selection/4895428-1-expected.txt: Removed.
        * platform/gtk/editing/selection/4895428-4-expected.png: Removed.
        * platform/gtk/editing/selection/4895428-4-expected.txt: Removed.
        * platform/mac-leopard/editing/selection/4895428-1-expected.png: Removed.
        * platform/mac-leopard/editing/selection/4895428-4-expected.png: Removed.
        * platform/mac/editing/selection/4895428-1-expected.png: Removed.
        * platform/mac/editing/selection/4895428-1-expected.txt: Removed.
        * platform/mac/editing/selection/4895428-4-expected.png: Removed.
        * platform/mac/editing/selection/4895428-4-expected.txt: Removed.

2011-05-24  Steve Lacey  <sjl@chromium.org>

        Reviewed by Eric Carlson.

        Move chromium media controls timeline back to flexible rather than absolute
        layout.

        https://bugs.webkit.org/show_bug.cgi?id=61379

        * platform/chromium/test_expectations.txt: Added expected failures from this change.

2011-05-24  Kent Tamura  <tkent@chromium.org>

        Reviewed by Hajime Morita.

        Convert fast/forms/input-type-change.html to a dumpAsText() test
        https://bugs.webkit.org/show_bug.cgi?id=61029

        Merge input-type-change2 to input-type-change.html, and convert it to
        a dumpAsText() test.

        * fast/forms/input-type-change-expected.txt:
        * fast/forms/input-type-change.html:
        * fast/forms/input-type-change2.html: Removed.
        * platform/chromium-linux/fast/forms/input-type-change-expected.png: Removed.
        * platform/chromium-linux/fast/forms/input-type-change2-expected.png: Removed.
        * platform/chromium-mac-leopard/fast/forms/input-type-change-expected.png: Removed.
        * platform/chromium-mac/fast/forms/input-type-change-expected.png: Removed.
        * platform/chromium-win/fast/forms/input-type-change-expected.png: Removed.
        * platform/chromium-win/fast/forms/input-type-change-expected.txt: Removed.
        * platform/chromium-win/fast/forms/input-type-change2-expected.png: Removed.
        * platform/chromium-win/fast/forms/input-type-change2-expected.txt: Removed.
        * platform/gtk/fast/forms/input-type-change-expected.png: Removed.
        * platform/gtk/fast/forms/input-type-change-expected.txt: Removed.
        * platform/gtk/fast/forms/input-type-change2-expected.png: Removed.
        * platform/gtk/fast/forms/input-type-change2-expected.txt: Removed.
        * platform/mac-leopard/fast/forms/input-type-change-expected.png: Removed.
        * platform/mac-leopard/fast/forms/input-type-change2-expected.png: Removed.
        * platform/mac/fast/forms/input-type-change-expected.png: Removed.
        * platform/mac/fast/forms/input-type-change-expected.txt:
        * platform/mac/fast/forms/input-type-change-expected.txt: Removed.
        * platform/mac/fast/forms/input-type-change2-expected.png: Removed.
        * platform/mac/fast/forms/input-type-change2-expected.txt: Removed.
        * platform/qt-arm/Skipped: Remove input-type-change2.html.
        * platform/qt-mac/Skipped: ditto.
        * platform/qt/fast/forms/input-type-change-expected.txt: Removed.
        * platform/qt/fast/forms/input-type-change2-expected.txt: Removed.

2011-05-24  Julien Chaffraix  <jchaffraix@codeaurora.org>

        Reviewed by Hajime Morita.

        <legend> element is dropped on the floor
        https://bugs.webkit.org/show_bug.cgi?id=18691

        * html5lib/resources/webkit02.dat: Added a passing
        test for <legend> parsing.

2011-05-24  Annie Sullivan  <sullivan@chromium.org>

        Reviewed by Tony Chang.

        editing/deleting/5032066 should be a dump-as-markup test
        https://bugs.webkit.org/show_bug.cgi?id=61327

        Converts 5032066 to dump-as-markup and adds doctype, html, and body tags.

        * editing/deleting/5032066-expected.txt: Added.
        * editing/deleting/5032066.html:
        * platform/chromium-linux/editing/deleting/5032066-expected.png: Removed.
        * platform/chromium-win/editing/deleting/5032066-expected.png: Removed.
        * platform/chromium-win/editing/deleting/5032066-expected.txt: Removed.
        * platform/gtk/editing/deleting/5032066-expected.txt: Removed.
        * platform/mac-leopard/editing/deleting/5032066-expected.png: Removed.
        * platform/mac/editing/deleting/5032066-expected.png: Removed.
        * platform/mac/editing/deleting/5032066-expected.txt: Removed.
        * platform/qt/editing/deleting/5032066-expected.png: Removed.
        * platform/qt/editing/deleting/5032066-expected.txt: Removed.

2011-05-24  Annie Sullivan  <sullivan@chromium.org>

        Reviewed by Ryosuke Niwa.

        Convert LayoutTests/editing/deleting/5115601.html to dump-as-markup.
        https://bugs.webkit.org/show_bug.cgi?id=61330

        Converted to dump-as-markup and added a little html cleanup.

        * editing/deleting/5115601-expected.txt: Added.
        * editing/deleting/5115601.html: Convert to dump-as-markup.
        * platform/chromium-linux/editing/deleting/5115601-expected.png: Removed.
        * platform/chromium-win/editing/deleting/5115601-expected.png: Removed.
        * platform/chromium-win/editing/deleting/5115601-expected.txt: Removed.
        * platform/gtk/editing/deleting/5115601-expected.txt: Removed.
        * platform/mac-leopard/editing/deleting/5115601-expected.png: Removed.
        * platform/mac/editing/deleting/5115601-expected.png: Removed.
        * platform/mac/editing/deleting/5115601-expected.txt: Removed.
        * platform/qt/editing/deleting/5115601-expected.png: Removed.
        * platform/qt/editing/deleting/5115601-expected.txt: Removed.

2011-05-24  Annie Sullivan  <sullivan@chromium.org>

        Reviewed by Ryosuke Niwa.

        Convert LayoutTests/editing/deleting/5206311-2.html to dump-as-markup
        https://bugs.webkit.org/show_bug.cgi?id=61332

        Used dump-as-markup to improve readability of results.
        Also improved HTML and cleaned up descriptions.

        * editing/deleting/5206311-2-expected.txt: Added.
        * editing/deleting/5206311-2.html: Convert to dump-as-markup.
        * platform/chromium-linux/editing/deleting/5206311-2-expected.png: Removed.
        * platform/chromium-win/editing/deleting/5206311-2-expected.png: Removed.
        * platform/chromium-win/editing/deleting/5206311-2-expected.txt: Removed.
        * platform/gtk/editing/deleting/5206311-2-expected.txt: Removed.
        * platform/mac-leopard/editing/deleting/5206311-2-expected.png: Removed.
        * platform/mac/editing/deleting/5206311-2-expected.png: Removed.
        * platform/mac/editing/deleting/5206311-2-expected.txt: Removed.
        * platform/qt/editing/deleting/5206311-2-expected.png: Removed.
        * platform/qt/editing/deleting/5206311-2-expected.txt: Removed.

2011-05-24  Annie Sullivan  <sullivan@chromium.org>

        Reviewed by Ryosuke Niwa.

        Convert LayoutTests/editing/deleting/delete-block-table.html to dumpAsText test.
        https://bugs.webkit.org/show_bug.cgi?id=61333

        Converts delete-block-table.html to dumpAsText test by changing to use runDumpAsTextEditingTest.

        * editing/deleting/delete-block-table-expected.txt: Added.
        * editing/deleting/delete-block-table.html: Converted to dump-as-markup.
        * platform/chromium-linux/editing/deleting/delete-block-table-expected.png: Removed.
        * platform/chromium-win/editing/deleting/delete-block-table-expected.png: Removed.
        * platform/chromium-win/editing/deleting/delete-block-table-expected.txt: Removed.
        * platform/gtk/editing/deleting/delete-block-table-expected.png: Removed.
        * platform/gtk/editing/deleting/delete-block-table-expected.txt: Removed.
        * platform/mac-leopard/editing/deleting/delete-block-table-expected.png: Removed.
        * platform/mac/editing/deleting/delete-block-table-expected.png: Removed.
        * platform/mac/editing/deleting/delete-block-table-expected.txt: Removed.
        * platform/qt/editing/deleting/delete-block-table-expected.txt: Removed.

2011-05-24  Justin Novosad  <junov@chromium.org>

        Reviewed by Stephen White.

        [Chromium] cleanup test expectations for drawImage that are no longer
        flaky
        https://bugs.webkit.org/show_bug.cgi?id=61389

        * platform/chromium/test_expectations.txt:

2011-05-24  Greg Simon  <gregsimon@chromium.org>

        Reviewed by Dimitri Glazkov.

        Control Indexeddb backends from LayoutTestController
        https://bugs.webkit.org/show_bug.cgi?id=61000

        LayoutTest for migration between SQLite and LevelDB
        in IndxededDB.

        * storage/indexeddb/migrate-basics-expected.txt: Added.
        * storage/indexeddb/migrate-basics.html: Added.

2011-05-24  Fumitoshi Ukai  <ukai@chromium.org>

        Unreviewed.

        Chromium expectations update. (mhtml)

        * platform/chromium/test_expectations.txt:

2011-05-24  Leon Scroggins  <scroggo@google.com>

        Reviewed by Kenneth Russell.

        Update expectations for tests drawing a canvas into another canvas (or itself), which have been fixed in gpu.
        https://bugs.webkit.org/show_bug.cgi?id=61362

        * platform/chromium/test_expectations.txt:

2011-05-24  Ryosuke Niwa  <rniwa@webkit.org>

        Final attempt to fix a test; if this fails, I'm just going to skip it.

        * fast/events/selectstart-by-double-triple-clicks.html:

2011-05-24  Leo Yang  <leo.yang@torchmobile.com.cn>

        Reviewed by Ryosuke Niwa.

        [SVG] Assertion failure by dragging text between input fields inside <foreignObject>s
        https://bugs.webkit.org/show_bug.cgi?id=60692

        Test case to verify dragging and dropping text between input fields
        inside SVG <foreignObject>s. Test passes if no crash occurs in debug mode.

        Drag and drop is not supported in Qt DRT, so skip this case on Qt platform.

        * editing/pasteboard/drag-drop-input-in-svg-expected.txt: Added.
        * editing/pasteboard/drag-drop-input-in-svg.svg: Added.
        * platform/qt/Skipped:

2011-05-24  Ryosuke Niwa  <rniwa@webkit.org>

        Yet another attempt to make Chromium Windows test bots happy.

        * fast/events/selectstart-by-double-triple-clicks.html:

2011-05-24  Ryosuke Niwa  <rniwa@webkit.org>

        Reviewed by Tony Chang.

        [chromium] selectstart-by-drag.html and selectstart-by-double-triple-clicks.html
        fail on Windows and Linux
        https://bugs.webkit.org/show_bug.cgi?id=61377

        selectstart-by-drag.html pass on Chromium Windows and Chromium Linux so don't use
        the failing test expectation on Windows port.

        In selectstart-by-double-triple-clicks.html, /^\s|\s$/ isn't recognized by V8 so
        replace it by /^[ \t]|[ \t]$/.

        * platform/chromium/fast/events/selectstart-by-drag-expected.txt: Copied from
        LayoutTests/fast/events/selectstart-by-drag-expected.txt.
        * fast/events/selectstart-by-double-triple-clicks.html:
        * platform/chromium/test_expectations.txt:

2011-05-24  James Simonsen  <simonjam@chromium.org>

        Reviewed by Eric Seidel.

        ASSERT_NOT_REACHED reached with broken ideograph and system fallback
        https://bugs.webkit.org/show_bug.cgi?id=53528

        * platform/chromium/test_expectations.txt: Remove CRASH from fixed test.

2011-05-24  Ryosuke Niwa  <rniwa@webkit.org>

        Skip fast/events/scroll-in-scaled-page-with-overflow-hidden.html on Mac WebKit2
        since WebKitTestRunner doesn't implement eventSender.mouseScrollBy yet (bug 42194).

        * platform/mac-wk2/Skipped:

2011-05-24  Alexey Proskuryakov  <ap@apple.com>

        Skip platform/mac/editing/input/maxlength.html - textInputController is not implemented.

        * platform/mac-wk2/Skipped:

2011-05-24  Robert Hogan  <robert@webkit.org>

        Reviewed by Ryosuke Niwa.

        [Qt] Fix fast/events/selectstart-by-single-click-with-shift.html
        https://bugs.webkit.org/show_bug.cgi?id=61393

        * platform/qt/Skipped: Unskip fast/events/selectstart-by-single-click-with-shift.html

2011-05-24  Ryosuke Niwa  <rniwa@webkit.org>

        Skip fast/events/selectstart-by-double-triple-clicks.html and selectstart-by-drag.html
        on Mac WebKit 2 per the bug 42194.

        * platform/mac-wk2/Skipped:

2011-05-24  Ryosuke Niwa  <rniwa@webkit.org>

        Skip fast/events/scroll-in-scaled-page-with-overflow-hidden.html added by r87187 on GTK
        because GTK port doesn't implement eventSender.scalePageBy yet (bug 61396).

        * platform/gtk/Skipped:

2011-05-24  Ryosuke Niwa  <rniwa@webkit.org>

        Skip fast/events/scroll-in-scaled-page-with-overflow-hidden.html added by r87187 on Windows
        because Windows port doesn't implement eventSender.scalePageBy yet (bug 59098).

        * platform/win/Skipped:

2011-05-24  Ryosuke Niwa  <rniwa@webkit.org>

        Reviewed by Darin Adler.

        Undo gets broken in contenteditable area when a text field's value is set by script
        https://bugs.webkit.org/show_bug.cgi?id=61340

        Added a test to ensure WebKit does not clear undo stack when setting the value of input or textarea.

        * editing/undo/undo-after-setting-value-expected.txt: Added.
        * editing/undo/undo-after-setting-value.html: Added.

2011-05-24  Adam Klein  <adamk@chromium.org>

        Unreviewed. Updating Chromium test expectations.

        * platform/chromium/test_expectations.txt:

2011-05-24  Kenneth Russell  <kbr@google.com>

        Reviewed by James Robinson.

        Implement Float64Array
        https://bugs.webkit.org/show_bug.cgi?id=39144

        Added unit tests to existing typed array tests in Khronos repository and
        synced layout test with them. Updated other affected layout tests.

        * fast/canvas/webgl/array-unit-tests-expected.txt:
        * fast/canvas/webgl/array-unit-tests.html:
        * fast/dom/Window/script-tests/window-property-descriptors.js:
        * fast/dom/Window/window-properties.html:
        * fast/dom/script-tests/constructed-objects-prototypes.js:
        (constructorPropertiesOnWindow):
        * fast/dom/script-tests/prototype-inheritance-2.js:
        (constructorNamesForWindow):
        * fast/dom/script-tests/prototype-inheritance.js:
        * fast/js/script-tests/global-constructors.js:

2011-05-24  Ryosuke Niwa  <rniwa@webkit.org>

        Skip the tests added by r87096 and remove the failing test expectations on Qt.
        The failures are tracked by the bug 61322.

        * platform/qt/Skipped:
        * platform/qt/fast/events/selectstart-by-double-triple-clicks-expected.txt: Removed.
        * platform/qt/fast/events/selectstart-by-drag-expected.txt: Removed.
        * platform/qt/fast/events/selectstart-by-single-click-with-shift-expected.txt: Removed.

2011-05-24  Jay Civelli  <jcivelli@chromium.org>

        Reviewed by Adam Barth.

        Adding MHTML reading support to WebCore.
        https://bugs.webkit.org/show_bug.cgi?id=7168

        * mhtml/frame_0.html_original: Added.
        * mhtml/frame_1.html_original: Added.
        * mhtml/frame_2.html_original: Added.
        * mhtml/frame_4.html_original: Added.
        * mhtml/multi_frames.html_original: Added.
        * mhtml/multi_frames_ie.mht: Added.
        * mhtml/multi_frames_unmht.mht: Added.
        * mhtml/page_with_css_and_js.html_original: Added.
        * mhtml/page_with_css_and_js_ie.mht: Added.
        * mhtml/page_with_css_and_js_unmht.mht: Added.
        * mhtml/page_with_image.html_original: Added.
        * mhtml/page_with_image_ie.mht: Added.
        * mhtml/page_with_image_unmht.mht: Added.
        * mhtml/resources/red_square.png: Added.
        * mhtml/simple_page.html_original: Added.
        * mhtml/simple_page_ie.mht: Added.
        * mhtml/simple_page_unmht.mht: Added.
        * platform/chromium/mhtml/multi_frames_ie-expected.txt: Added.
        * platform/chromium/mhtml/multi_frames_unmht-expected.txt: Added.
        * platform/chromium/mhtml/page_with_css_and_js_ie-expected.txt: Added.
        * platform/chromium/mhtml/page_with_css_and_js_unmht-expected.txt: Added.
        * platform/chromium/mhtml/page_with_image_ie-expected.txt: Added.
        * platform/chromium/mhtml/page_with_image_unmht-expected.txt: Added.
        * platform/chromium/mhtml/simple_page_ie-expected.txt: Added.
        * platform/chromium/mhtml/simple_page_unmht-expected.txt: Added.

2011-05-24  Sam Weinig  <sam@webkit.org>

        Reviewed by Beth Dakin.

        Can't scroll scaled page that has overflow:hidden on its root
        <rdar://problem/9029189>
        https://bugs.webkit.org/show_bug.cgi?id=61339

        * fast/events/scroll-in-scaled-page-with-overflow-hidden-expected.txt: Added.
        * fast/events/scroll-in-scaled-page-with-overflow-hidden.html: Added.

2011-05-24  Jian Li  <jianli@chromium.org>

        Reviewed by Kenneth Russell.

        Make start parameter of Blob.slice optional.
        https://bugs.webkit.org/show_bug.cgi?id=59628

        * fast/files/blob-slice-test-expected.txt:
        * fast/files/blob-slice-test.html:

2011-05-24  Adam Roben  <aroben@apple.com>

        Test that we don't crash when a JS wrapper for an NPObject is destroyed after its plugin is unloaded

        Test for <http://webkit.org/b/61316> <rdar://problem/9489824> Crash in deallocateNPObject
        when reloading yahoo.com webarchive in WebKit2

        and

        <http://webkit.org/b/61317> <rdar://problem/9489829> Crash in _NPN_DeallocateObject when
        reloading yahoo.com webarchive in WebKit1

        Reviewed by Oliver Hunt.

        * plugins/npobject-js-wrapper-destroyed-after-plugin-unload-expected.txt: Added.
        * plugins/npobject-js-wrapper-destroyed-after-plugin-unload.html: Added.
        (startTest): Gets a JS wrapper for an NPObject from the plugin, allocate a bunch of memory
        so the JS wrapper will be finalized, then destroy the plugin and wait for a little bit
        before calling finishTest.
        (finishTest): Force a GC so the JS wrapper will be destroyed. If we didn't crash, we passed!

2011-05-24  Adam Klein  <adamk@chromium.org>

        Unreviewed, rolling out r87145.
        http://trac.webkit.org/changeset/87145
        https://bugs.webkit.org/show_bug.cgi?id=61194

        Regression in LayoutTests/inspector/debugger/scripts-panel.html on Chromium Win & Linux.

        * inspector/console/console-eval-syntax-error-expected.txt: Removed.
        * inspector/console/console-eval-syntax-error.html: Removed.
        * platform/chromium/inspector/console/console-eval-syntax-error-expected.txt: Removed.

2011-05-24  Matthew Delaney  <mdelaney@apple.com>

        Reviewed by Simon Fraser.

        Clamp coordinates to integers for canvas create/getImageData routines
        https://bugs.webkit.org/show_bug.cgi?id=61135

        * fast/canvas/canvas-getImageData-largeNonintegralDimensions-expected.txt: Added.
        * fast/canvas/canvas-getImageData-largeNonintegralDimensions.html: Added.

2011-05-24  Tony Chang  <tony@chromium.org>

        Reviewed by James Robinson.

        fix render overflow computation for input type=range
        https://bugs.webkit.org/show_bug.cgi?id=61132

        * fast/forms/slider-hit-testing-expected.txt: Added.
        * fast/forms/slider-hit-testing.html: Added.

2011-05-24  Kenneth Russell  <kbr@google.com>

        Unreviewed. Fixed incorrect test expectations I previously checked in.

        * platform/chromium-gpu-mac/compositing/animation/busy-indicator-actual.png: Removed.
        * platform/chromium-gpu-mac/compositing/animation/busy-indicator-expected.png: Added.
        * platform/chromium-gpu-win/compositing/animation/busy-indicator-actual.png: Removed.
        * platform/chromium-gpu-win/compositing/animation/busy-indicator-expected.png: Added.

2011-05-24  Adam Klein  <adamk@chromium.org>

        Unreviewed.  Updated Chromium test expectations.

        * platform/chromium/test_expectations.txt: svg failure on Linux, BUGWK61370.

2011-05-24  Adam Klein  <adamk@chromium.org>

        Unreviewed.

        Chromium test expectations update.
        https://bugs.webkit.org/show_bug.cgi?id=61169

        * platform/chromium/test_expectations.txt: Marked optimize-contrast tests as IMAGE failure, BUGWK61169.

2011-05-24  Qi Zhang  <qi.2.zhang@nokia.com>

        Reviewed by Andreas Kling.

        [Qt] fast/workers/shared-worker-frame-lifecycle.html failed on Qt Bot
        https://bugs.webkit.org/show_bug.cgi?id=34281

        Remove the test case from skip list.

        * platform/qt/Skipped:

2011-05-23  Yury Semikhatsky  <yurys@chromium.org>

        Reviewed by Adam Barth.

        Chromium DevTools: Tab crashes with "Aw, snap!" on entering "(new Image())." in console
        https://bugs.webkit.org/show_bug.cgi?id=61194

        * inspector/console/console-eval-syntax-error-expected.txt: Added.
        * inspector/console/console-eval-syntax-error.html: Added.
        * platform/chromium/inspector/console/console-eval-syntax-error-expected.txt: Added.

2011-05-24  Gabor Loki  <loki@webkit.org>

        Rubber-stamped by Csaba Osztrogonác.

        [Qt] Skip failing new test introduced in r87096

        * platform/qt-arm/Skipped:

2011-05-24  Leon Scroggins  <scroggo@google.com>

        Reviewed by James Robinson.

        Update expectations for shadow tests which are now passing.
        https://bugs.webkit.org/show_bug.cgi?id=61278

        Also remove some expectations for missing tests.

        * platform/chromium/test_expectations.txt:

2011-05-24  Csaba Osztrogonác  <ossy@webkit.org>

        [Qt][Mac] Skip one more failing test.

        * platform/qt-mac/Skipped:

2011-05-24  James Robinson  <jamesr@chromium.org>

        Reviewed by Kenneth Russell.

        [chromium] Properly handle huge initial dimensions for 2d canvas when accelerated 2d canvas is enabled
        https://bugs.webkit.org/show_bug.cgi?id=60077

        Update expectation to reflect that the canvas layer isn't composited.

        * platform/chromium-gpu/compositing/tiling/huge-layer-img-expected.txt:

2011-05-24  Fumitoshi Ukai  <ukai@chromium.org>

        Reviewed by Adam Barth.

        close before open WebSocket doesn't fire close event.
        https://bugs.webkit.org/show_bug.cgi?id=57301

        * http/tests/websocket/tests/close-before-open-expected.txt: Added.
        * http/tests/websocket/tests/close-before-open.html: Added.

2011-05-24  Zoltan Horvath  <zoltan@webkit.org>

        [Qt][WK2] Paint the bot green for ultimate satisfaction of Ossy. 

        * platform/qt-wk2/Skipped:

2011-05-24  Csaba Osztrogonác  <ossy@webkit.org>

        [Qt][Mac] Skip failing tests.

        * platform/qt-mac/Skipped:

2011-05-24  Annie Sullivan  <sullivan@chromium.org>

        Reviewed by Ryosuke Niwa.

        editing/deleting/5026848-2 and editing/deleting/5026848-3 should be dump-as-markup tests
        https://bugs.webkit.org/show_bug.cgi?id=61323

        Convert editing/deleting/5026848-2 and editing/deleting/5026848-3 to dump-as-markup.

        * editing/deleting/5026848-2-expected.txt: Added.
        * editing/deleting/5026848-2.html: Convert to dump-as-markup.
        * editing/deleting/5026848-3-expected.txt: Added.
        * editing/deleting/5026848-3.html: Convert to dump-as-markup.
        * platform/chromium-linux/editing/deleting/5026848-2-expected.png: Removed.
        * platform/chromium-linux/editing/deleting/5026848-3-expected.png: Removed.
        * platform/chromium-win/editing/deleting/5026848-2-expected.png: Removed.
        * platform/chromium-win/editing/deleting/5026848-2-expected.txt: Removed.
        * platform/chromium-win/editing/deleting/5026848-3-expected.png: Removed.
        * platform/chromium-win/editing/deleting/5026848-3-expected.txt: Removed.
        * platform/gtk/editing/deleting/5026848-2-expected.txt: Removed.
        * platform/gtk/editing/deleting/5026848-3-expected.txt: Removed.
        * platform/mac-leopard/editing/deleting/5026848-2-expected.png: Removed.
        * platform/mac-leopard/editing/deleting/5026848-3-expected.png: Removed.
        * platform/mac/editing/deleting/5026848-2-expected.png: Removed.
        * platform/mac/editing/deleting/5026848-2-expected.txt: Removed.
        * platform/mac/editing/deleting/5026848-3-expected.png: Removed.
        * platform/mac/editing/deleting/5026848-3-expected.txt: Removed.
        * platform/qt/editing/deleting/5026848-2-expected.png: Removed.
        * platform/qt/editing/deleting/5026848-2-expected.txt: Removed.
        * platform/qt/editing/deleting/5026848-3-expected.png: Removed.
        * platform/qt/editing/deleting/5026848-3-expected.txt: Removed.

2011-05-23  Gabor Loki  <loki@webkit.org>

        Rubber-stamped by Csaba Osztrogonác.

        [Qt] Skip failing test because of missing anti-aliased fonts on ARM

        * platform/qt-arm/Skipped:

2011-05-23  Fumitoshi Ukai  <ukai@chromium.org>

        Unreviewed.

        Chromium expectations update.
        https://bugs.webkit.org/show_bug.cgi?id=61342

        * platform/chromium/test_expectations.txt:

2011-05-23  Mike Lawther  <mikelawther@chromium.org>

        Reviewed by James Robinson.

        implement image-rendering: optimize-contrast (with a vendor prefix) as defined in CSS3 image values
        https://bugs.webkit.org/show_bug.cgi?id=56627

        * css3/images/optimize-contrast-canvas-expected.checksum: Added.
        * css3/images/optimize-contrast-canvas-expected.png: Added.
        * css3/images/optimize-contrast-canvas-expected.txt: Added.
        * css3/images/optimize-contrast-canvas.html: Added.
        * css3/images/optimize-contrast-image-expected.checksum: Added.
        * css3/images/optimize-contrast-image-expected.png: Added.
        * css3/images/optimize-contrast-image-expected.txt: Added.
        * css3/images/optimize-contrast-image.html: Added.

2011-05-23  Justin Schuh  <jschuh@chromium.org>

        Unreviewed.

        Chromium multiple expectations update.

        * platform/chromium/test_expectations.txt:

2011-05-23  Sheriff Bot  <webkit.review.bot@gmail.com>

        Unreviewed, rolling out r87007.
        http://trac.webkit.org/changeset/87007
        https://bugs.webkit.org/show_bug.cgi?id=61329

        patch unnecessarily breaks HTML5 compatibility (Requested by
        estes on #webkit).

        * fast/replaced/object-with-non-empty-classid-triggers-fallback-expected.txt:
        * fast/replaced/object-with-non-empty-classid-triggers-fallback.html:

2011-05-23  Julien Chaffraix  <jchaffraix@codeaurora.org>

        Reviewed by Darin Adler.

        Test for: Crash from null pointer dereference below WebCore::StorageAreaImpl::setItem()
        https://bugs.webkit.org/show_bug.cgi?id=57140
        <rdar://problem/9191214>

        * fast/storage/storage-detached-iframe-expected.txt: Added.
        * fast/storage/storage-detached-iframe.html: Added.

        * platform/chromium/test_expectations.txt: Marked the test as CRASH
        on Chromium - Linux.

2011-05-23  Chris Fleizach  <cfleizach@apple.com>

        Reviewed by David Kilzer.

        VO doesn't work with HTML5 range (slider) input @step attribute
        https://bugs.webkit.org/show_bug.cgi?id=61298

        * platform/mac/accessibility/range-alter-by-step-expected.txt: Added.
        * platform/mac/accessibility/range-alter-by-step.html: Added.

2011-05-23  Ryosuke Niwa  <rniwa@webkit.org>

        Rebaselines work better if we had the new lines at the end of each file.

        * platform/gtk/fast/events/selectstart-by-double-triple-clicks-expected.txt:
        * platform/gtk/fast/events/selectstart-by-drag-expected.txt:
        * platform/qt/fast/events/selectstart-by-double-triple-clicks-expected.txt:
        * platform/qt/fast/events/selectstart-by-drag-expected.txt:
        * platform/qt/fast/events/selectstart-by-single-click-with-shift-expected.txt:
        * platform/win/fast/events/selectstart-by-drag-expected.txt:

2011-05-23  Ryosuke Niwa  <rniwa@webkit.org>

        Check in failing test expectations after r87096.
        They are tracked by the bugs 61319, 61320, and 61322.

        * platform/gtk/fast/events/selectstart-by-double-triple-clicks-expected.txt: Added.
        * platform/gtk/fast/events/selectstart-by-drag-expected.txt: Added.
        * platform/qt/fast/events/selectstart-by-double-triple-clicks-expected.txt: Added.
        * platform/qt/fast/events/selectstart-by-drag-expected.txt: Added.
        * platform/qt/fast/events/selectstart-by-single-click-with-shift-expected.txt: Added.
        * platform/win/fast/events/selectstart-by-drag-expected.txt: Added.

2011-05-23  Ryosuke Niwa  <rniwa@webkit.org>

        Chromium test fix. On Chromium Windows, a space after a word is selected when you double click on the word.

        * fast/events/selectstart-by-double-triple-clicks.html:

2011-05-23  Ryosuke Niwa  <rniwa@webkit.org>

        Reviewed by Alexey Proskuryakov.

        selectstart is fired for every mouse move
        https://bugs.webkit.org/show_bug.cgi?id=19489

        Added tests to ensure selectstart is dispatches exactly once when selecting text by a mouse drag,
        a mouse click, a double click, or a triple click. Also rebaselined a test that previously logged
        extra selectstart dispatches.

        * fast/events/selectstart-by-double-triple-clicks-expected.txt: Added.
        * fast/events/selectstart-by-double-triple-clicks.html: Added.
        * fast/events/selectstart-by-drag.html:
        * fast/events/selectstart-by-single-click-with-shift-expected.txt: Added.
        * fast/events/selectstart-by-single-click-with-shift.html: Added.

2011-05-22  Robert Hogan  <robert@webkit.org>

        Reviewed by Andreas Kling.

        [Qt] Unskip passing transitions tests
        https://bugs.webkit.org/show_bug.cgi?id=61246

        * platform/qt/Skipped:
        * platform/qt/transitions/move-after-transition-expected.txt: Added.
        * platform/qt/transitions/transition-end-event-rendering-expected.txt: Added.

2011-05-23  Adam Barth  <abarth@webkit.org>

        Reviewed by Eric Seidel.

        Update ImageDecoder::create to match sniffing spec
        https://bugs.webkit.org/show_bug.cgi?id=47683

        This test actually passes before this patch anyway.  I don't think this
        patch is actually observable in any meaningful way.

        * fast/images/busted-oval-does-not-render-expected.txt: Added.
        * fast/images/busted-oval-does-not-render.html: Added.
        * fast/images/resources/busted-oval.png: Added.

2011-05-23  Abhishek Arya  <inferno@chromium.org>

        Reviewed by Simon Fraser.

        Tests that we do not crash when parsing css color for integer or
        percentage values.
        https://bugs.webkit.org/show_bug.cgi?id=61293

        * fast/css/parse-color-int-or-percent-crash-expected.txt: Added.
        * fast/css/parse-color-int-or-percent-crash.html: Added.

2011-05-20  Ryosuke Niwa  <rniwa@webkit.org>

        Reviewed by Enrica Casucci.

        REGRESSION(r84311): WebKit copies too much styles when copying
        https://bugs.webkit.org/show_bug.cgi?id=60914

        Added a test to ensure WebKit does not clone hierarchy to preserve background color.

        Also renamed editing/pasteboard/do-not-copy-body-color.html to do-no-clone-unnecessary-styles.html
        and updated the description to match new behavior. While this test ensures WebKit does not copy
        body's background color when it's not fully selected, this isn't a necessary requirement for us
        not to duplicate borders so new expected result is correct.

        * editing/pasteboard/copy-text-with-backgroundcolor-expected.txt: Some spans became style spans.
        * editing/pasteboard/do-no-clone-unnecessary-styles-2-expected.txt: Added.
        * editing/pasteboard/do-no-clone-unnecessary-styles-2.html: Added.
        * editing/pasteboard/do-no-clone-unnecessary-styles-expected.txt: Renamed from
        LayoutTests/editing/pasteboard/do-not-copy-body-color-expected.txt.
        * editing/pasteboard/do-no-clone-unnecessary-styles.html: Renamed from
        LayoutTests/editing/pasteboard/do-not-copy-body-color.html.

2011-05-23  Ryosuke Niwa  <rniwa@webkit.org>

        Reviewed by Tony Chang.

        Style visibility: hidden on <br/> tags causes input fields to lose focus after deleting all content
        https://bugs.webkit.org/show_bug.cgi?id=45889

        Add a regression test now that the bug has been fixed by r87067.

        * fast/forms/delete-text-with-invisible-br-expected.txt: Added.
        * fast/forms/delete-text-with-invisible-br.html: Added.

2011-05-23  Sheriff Bot  <webkit.review.bot@gmail.com>

        Unreviewed, rolling out r87070.
        http://trac.webkit.org/changeset/87070
        https://bugs.webkit.org/show_bug.cgi?id=61285

        broke resource-parameters.html on win, weird failures on wk2
        (Requested by caseq on #webkit).

        * http/tests/inspector/network/network-size.html:
        * http/tests/inspector/resource-har-conversion-expected.txt:
        * http/tests/inspector/resource-har-conversion.html:
        * http/tests/inspector/resource-har-headers-expected.txt: Removed.
        * http/tests/inspector/resource-har-headers.html: Removed.
        * http/tests/inspector/resource-parameters-expected.txt:
        * http/tests/inspector/resources-test.js:

2011-05-23  Qi Zhang  <qi.2.zhang@nokia.com>

        Reviewed by Darin Adler.

        WebKitTestRunner needs layoutTestController.setJavaScriptCanAccessClipboard
        https://bugs.webkit.org/show_bug.cgi?id=42669

        Unskip test case due to the implementation setJavaScriptCanAccessClipboard in WebKitTestRunner.

        * platform/mac-wk2/Skipped:
        * platform/qt-wk2/Skipped:

2011-05-18  Pavel Podivilov  <podivilov@chromium.org>

        Reviewed by Yury Semikhatsky.

        Web Inspector: source mapping for pretty-printed scripts is sometimes inaccurate after indented comments.
        https://bugs.webkit.org/show_bug.cgi?id=61037

        * http/tests/inspector/inspector-test.js:
        (initialize_InspectorTest):
        * inspector/debugger/resources/obfuscated.js:
        (withComments):
        * inspector/debugger/script-formatter.html:

2011-05-23  Mike West  <mkwst@chromium.org>

        Reviewed by Yury Semikhatsky.

        Web Inspector: Missing fields in HAR
        https://bugs.webkit.org/show_bug.cgi?id=58127

        Setting correct expectations for the following fields newly added to
        the HAR implementation:
        - entry.request.httpVersion
        - entry.request.headersSize
        - entry.request.bodySize
        - entry.response.httpVersion
        - entry.response.headersSize
        - entry.response.bodySize
        - entry.response.content.compression

        * http/tests/inspector/network/network-size.html:
        * http/tests/inspector/resource-har-conversion-expected.txt:
        * http/tests/inspector/resource-har-conversion.html:
        * http/tests/inspector/resource-har-headers-expected.txt: Added.
        * http/tests/inspector/resource-har-headers.html: Added.
        * http/tests/inspector/resource-parameters-expected.txt:
        * http/tests/inspector/resources-test.js:

2011-05-23  Csaba Osztrogonác  <ossy@webkit.org>

        [Qt][WK] Skip a failing test.

        * platform/qt-wk2/Skipped:

2011-05-23  Kent Tamura  <tkent@chromium.org>

        Reviewed by Dimitri Glazkov.

        Change text-based <input> types to the new shadow DOM model
        https://bugs.webkit.org/show_bug.cgi?id=54179

        Update test results because the shadow tree structure of <input> and
        <textarea> is changed.

        * editing/deleting/delete-all-text-in-text-field-assertion-expected.txt:
        * editing/deleting/delete-ligature-001-expected.txt:
        * editing/pasteboard/copy-in-password-field-expected.txt:
        * editing/selection/select-all-textarea-expected.txt:
        * fast/events/5056619-expected.txt:
        * fast/forms/focus-selection-input-expected.txt:
        * fast/forms/focus-selection-textarea-expected.txt:
        * platform/chromium-linux/editing/selection/select-across-readonly-input-1-expected.txt:
        * platform/chromium-linux/editing/selection/select-across-readonly-input-4-expected.txt:
        * platform/chromium-linux/editing/selection/select-across-readonly-input-5-expected.txt:
        * platform/chromium-linux/editing/selection/select-from-textfield-outwards-expected.txt:
        * platform/chromium-linux/fast/forms/input-readonly-autoscroll-expected.txt:
        * platform/chromium-linux/fast/forms/input-text-double-click-expected.txt:
        * platform/chromium-linux/fast/forms/textfield-outline-expected.txt:
        * platform/chromium-linux/fast/forms/validation-message-appearance-expected.txt:
        * platform/chromium-win-vista/fast/forms/validation-message-appearance-expected.txt:
        * platform/chromium-win/editing/inserting/4960120-1-expected.txt:
        * platform/chromium-win/editing/pasteboard/drop-text-without-selection-expected.txt:
        * platform/chromium-win/editing/pasteboard/pasting-tabs-expected.txt:
        * platform/chromium-win/editing/selection/4895428-3-expected.txt:
        * platform/chromium-win/editing/selection/4975120-expected.txt:
        * platform/chromium-win/editing/selection/select-across-readonly-input-1-expected.txt:
        * platform/chromium-win/editing/selection/select-across-readonly-input-4-expected.txt:
        * platform/chromium-win/editing/selection/select-across-readonly-input-5-expected.txt:
        * platform/chromium-win/editing/selection/select-from-textfield-outwards-expected.txt:
        * platform/chromium-win/fast/events/autoscroll-expected.txt:
        * platform/chromium-win/fast/events/context-no-deselect-expected.txt:
        * platform/chromium-win/fast/forms/input-appearance-focus-expected.txt:
        * platform/chromium-win/fast/forms/input-appearance-readonly-expected.txt:
        * platform/chromium-win/fast/forms/input-appearance-selection-expected.txt:
        * platform/chromium-win/fast/forms/input-double-click-selection-gap-bug-expected.txt:
        * platform/chromium-win/fast/forms/input-paste-undo-expected.txt:
        * platform/chromium-win/fast/forms/input-placeholder-visibility-1-expected.txt:
        * platform/chromium-win/fast/forms/input-placeholder-visibility-2-expected.txt:
        * platform/chromium-win/fast/forms/input-placeholder-visibility-3-expected.txt:
        * platform/chromium-win/fast/forms/input-readonly-autoscroll-expected.txt:
        * platform/chromium-win/fast/forms/input-text-click-inside-expected.txt:
        * platform/chromium-win/fast/forms/input-text-double-click-expected.txt:
        * platform/chromium-win/fast/forms/input-text-drag-down-expected.txt:
        * platform/chromium-win/fast/forms/input-text-option-delete-expected.txt:
        * platform/chromium-win/fast/forms/input-text-scroll-left-on-blur-expected.txt:
        * platform/chromium-win/fast/forms/input-text-self-emptying-click-expected.txt:
        * platform/chromium-win/fast/forms/plaintext-mode-2-expected.txt:
        * platform/chromium-win/fast/forms/search-rtl-expected.txt:
        * platform/chromium-win/fast/forms/search-zoomed-expected.txt:
        * platform/chromium-win/fast/forms/tabbing-input-iframe-expected.txt:
        * platform/chromium-win/fast/forms/textarea-placeholder-visibility-1-expected.txt:
        * platform/chromium-win/fast/forms/textarea-placeholder-visibility-2-expected.txt:
        * platform/chromium-win/fast/forms/textarea-scrollbar-expected.txt:
        * platform/chromium-win/fast/forms/textarea-scrolled-type-expected.txt:
        * platform/chromium-win/fast/forms/textfield-focus-ring-expected.txt:
        * platform/chromium-win/fast/forms/textfield-outline-expected.txt:
        * platform/chromium-win/fast/forms/textfield-overflow-expected.txt:
        * platform/chromium-win/fast/forms/validation-message-appearance-expected.txt:
        * platform/chromium-win/fast/frames/take-focus-from-iframe-expected.txt:
        * platform/chromium-win/fast/repaint/renderer-destruction-by-invalidateSelection-crash-expected.txt:
        * platform/chromium-win/fast/transforms/transformed-focused-text-input-expected.txt:
        * platform/chromium/test_expectations.txt:
        * platform/gtk/editing/inserting/4960120-1-expected.txt:
        * platform/gtk/editing/pasteboard/drop-text-without-selection-expected.txt:
        * platform/gtk/editing/pasteboard/pasting-tabs-expected.txt:
        * platform/gtk/editing/selection/4895428-3-expected.txt:
        * platform/gtk/editing/selection/4975120-expected.txt:
        * platform/gtk/editing/selection/select-across-readonly-input-1-expected.txt:
        * platform/gtk/editing/selection/select-across-readonly-input-4-expected.txt:
        * platform/gtk/editing/selection/select-across-readonly-input-5-expected.txt:
        * platform/gtk/editing/selection/select-from-textfield-outwards-expected.txt:
        * platform/gtk/fast/events/autoscroll-expected.txt:
        * platform/gtk/fast/events/context-no-deselect-expected.txt:
        * platform/gtk/fast/forms/input-appearance-focus-expected.txt:
        * platform/gtk/fast/forms/input-appearance-readonly-expected.txt:
        * platform/gtk/fast/forms/input-appearance-selection-expected.txt:
        * platform/gtk/fast/forms/input-double-click-selection-gap-bug-expected.txt:
        * platform/gtk/fast/forms/input-paste-undo-expected.txt:
        * platform/gtk/fast/forms/input-placeholder-visibility-1-expected.txt:
        * platform/gtk/fast/forms/input-placeholder-visibility-2-expected.txt:
        * platform/gtk/fast/forms/input-placeholder-visibility-3-expected.txt:
        * platform/gtk/fast/forms/input-readonly-autoscroll-expected.txt:
        * platform/gtk/fast/forms/input-text-click-inside-expected.txt:
        * platform/gtk/fast/forms/input-text-click-outside-expected.txt:
        * platform/gtk/fast/forms/input-text-double-click-expected.txt:
        * platform/gtk/fast/forms/input-text-drag-down-expected.txt:
        * platform/gtk/fast/forms/input-text-option-delete-expected.txt:
        * platform/gtk/fast/forms/input-text-scroll-left-on-blur-expected.txt:
        * platform/gtk/fast/forms/input-text-self-emptying-click-expected.txt:
        * platform/gtk/fast/forms/plaintext-mode-2-expected.txt:
        * platform/gtk/fast/forms/search-rtl-expected.txt:
        * platform/gtk/fast/forms/search-transformed-expected.txt:
        * platform/gtk/fast/forms/search-zoomed-expected.txt:
        * platform/gtk/fast/forms/tabbing-input-iframe-expected.txt:
        * platform/gtk/fast/forms/textarea-placeholder-visibility-1-expected.txt:
        * platform/gtk/fast/forms/textarea-placeholder-visibility-2-expected.txt:
        * platform/gtk/fast/forms/textarea-scrollbar-expected.txt:
        * platform/gtk/fast/forms/textarea-scrolled-type-expected.txt:
        * platform/gtk/fast/forms/textfield-focus-ring-expected.txt:
        * platform/gtk/fast/forms/textfield-outline-expected.txt:
        * platform/gtk/fast/forms/textfield-overflow-expected.txt:
        * platform/gtk/fast/frames/take-focus-from-iframe-expected.txt:
        * platform/gtk/fast/repaint/renderer-destruction-by-invalidateSelection-crash-expected.txt:
        * platform/gtk/fast/text/textIteratorNilRenderer-expected.txt:
        * platform/gtk/fast/transforms/transformed-focused-text-input-expected.txt:
        * platform/mac-snowleopard/fast/forms/input-placeholder-visibility-1-expected.txt:
        * platform/mac-snowleopard/fast/forms/input-placeholder-visibility-2-expected.txt:
        * platform/mac-snowleopard/fast/forms/input-placeholder-visibility-3-expected.txt:
        * platform/mac-wk2/editing/selection/select-across-readonly-input-1-expected.txt:
        * platform/mac-wk2/editing/selection/select-across-readonly-input-4-expected.txt:
        * platform/mac-wk2/editing/selection/select-across-readonly-input-5-expected.txt:
        * platform/mac/editing/inserting/4960120-1-expected.txt:
        * platform/mac/editing/pasteboard/drop-text-without-selection-expected.txt:
        * platform/mac/editing/pasteboard/pasting-tabs-expected.txt:
        * platform/mac/editing/selection/4895428-3-expected.txt:
        * platform/mac/editing/selection/4975120-expected.txt:
        * platform/mac/editing/selection/select-across-readonly-input-1-expected.txt:
        * platform/mac/editing/selection/select-across-readonly-input-4-expected.txt:
        * platform/mac/editing/selection/select-across-readonly-input-5-expected.txt:
        * platform/mac/editing/selection/select-from-textfield-outwards-expected.txt:
        * platform/mac/fast/events/autoscroll-expected.txt:
        * platform/mac/fast/events/context-no-deselect-expected.txt:
        * platform/mac/fast/forms/input-appearance-focus-expected.txt:
        * platform/mac/fast/forms/input-appearance-readonly-expected.txt:
        * platform/mac/fast/forms/input-appearance-selection-expected.txt:
        * platform/mac/fast/forms/input-appearance-spinbutton-up-expected.txt:
        * platform/mac/fast/forms/input-double-click-selection-gap-bug-expected.txt:
        * platform/mac/fast/forms/input-paste-undo-expected.txt:
        * platform/mac/fast/forms/input-placeholder-visibility-1-expected.txt:
        * platform/mac/fast/forms/input-placeholder-visibility-2-expected.txt:
        * platform/mac/fast/forms/input-placeholder-visibility-3-expected.txt:
        * platform/mac/fast/forms/input-readonly-autoscroll-expected.txt:
        * platform/mac/fast/forms/input-text-click-inside-expected.txt:
        * platform/mac/fast/forms/input-text-double-click-expected.txt:
        * platform/mac/fast/forms/input-text-drag-down-expected.txt:
        * platform/mac/fast/forms/input-text-option-delete-expected.txt:
        * platform/mac/fast/forms/input-text-scroll-left-on-blur-expected.txt:
        * platform/mac/fast/forms/input-text-self-emptying-click-expected.txt:
        * platform/mac/fast/forms/plaintext-mode-2-expected.txt:
        * platform/mac/fast/forms/search-rtl-expected.txt:
        * platform/mac/fast/forms/search-transformed-expected.txt:
        * platform/mac/fast/forms/search-zoomed-expected.txt:
        * platform/mac/fast/forms/tabbing-input-iframe-expected.txt:
        * platform/mac/fast/forms/textarea-placeholder-visibility-1-expected.txt:
        * platform/mac/fast/forms/textarea-placeholder-visibility-2-expected.txt:
        * platform/mac/fast/forms/textarea-scrollbar-expected.txt:
        * platform/mac/fast/forms/textarea-scrolled-type-expected.txt:
        * platform/mac/fast/forms/textfield-focus-ring-expected.txt:
        * platform/mac/fast/forms/textfield-outline-expected.txt:
        * platform/mac/fast/forms/textfield-overflow-expected.txt:
        * platform/mac/fast/forms/validation-message-appearance-expected.txt:
        * platform/mac/fast/frames/take-focus-from-iframe-expected.txt:
        * platform/mac/fast/repaint/renderer-destruction-by-invalidateSelection-crash-expected.txt:
        * platform/mac/fast/transforms/transformed-focused-text-input-expected.txt:
        * platform/qt/editing/inserting/4960120-1-expected.txt:
        * platform/qt/editing/pasteboard/pasting-tabs-expected.txt:
        * platform/qt/editing/selection/4895428-3-expected.txt:
        * platform/qt/editing/selection/4975120-expected.txt:
        * platform/qt/fast/events/context-no-deselect-expected.txt:
        * platform/qt/fast/forms/input-appearance-focus-expected.txt:
        * platform/qt/fast/forms/input-appearance-readonly-expected.txt:
        * platform/qt/fast/forms/input-appearance-selection-expected.txt:
        * platform/qt/fast/forms/input-double-click-selection-gap-bug-expected.txt:
        * platform/qt/fast/forms/input-paste-undo-expected.txt:
        * platform/qt/fast/forms/input-text-click-inside-expected.txt:
        * platform/qt/fast/forms/input-text-double-click-expected.txt:
        * platform/qt/fast/forms/input-text-option-delete-expected.txt:
        * platform/qt/fast/forms/input-text-self-emptying-click-expected.txt:
        * platform/qt/fast/forms/plaintext-mode-2-expected.txt:
        * platform/qt/fast/forms/search-rtl-expected.txt:
        * platform/qt/fast/forms/search-transformed-expected.txt:
        * platform/qt/fast/forms/search-zoomed-expected.txt:
        * platform/qt/fast/forms/textfield-outline-expected.txt:
        * platform/qt/fast/forms/textfield-overflow-expected.txt:
        * platform/qt/fast/frames/take-focus-from-iframe-expected.txt:
        * platform/qt/fast/transforms/transformed-focused-text-input-expected.txt:
        * platform/win/editing/inserting/4960120-1-expected.txt:
        * platform/win/editing/selection/select-from-textfield-outwards-expected.txt:
        * platform/win/fast/forms/input-text-drag-down-expected.txt:
        * platform/win/fast/forms/textarea-scrollbar-expected.txt:
        * platform/win/fast/forms/textarea-scrolled-type-expected.txt:

2011-05-23  Csaba Osztrogonác  <ossy@webkit.org>

        [Qt] Unreviewed, skip new failing tests.

        * platform/qt-arm/Skipped:
        * platform/qt-mac/Skipped:
        * platform/qt-wk2/Skipped:

2011-05-23  Sheriff Bot  <webkit.review.bot@gmail.com>

        Unreviewed, rolling out r87014, r87016, and r87017.
        http://trac.webkit.org/changeset/87014
        http://trac.webkit.org/changeset/87016
        http://trac.webkit.org/changeset/87017
        https://bugs.webkit.org/show_bug.cgi?id=61266

        It made more tests assert (Requested by Ossy on #webkit).

        * editing/deleting/delete-all-text-in-text-field-assertion-expected.txt:
        * editing/deleting/delete-ligature-001-expected.txt:
        * editing/pasteboard/copy-in-password-field-expected.txt:
        * editing/selection/select-all-textarea-expected.txt:
        * fast/events/5056619-expected.txt:
        * fast/forms/focus-selection-input-expected.txt:
        * fast/forms/focus-selection-textarea-expected.txt:
        * platform/chromium-linux/editing/selection/select-across-readonly-input-1-expected.txt:
        * platform/chromium-linux/editing/selection/select-across-readonly-input-4-expected.txt:
        * platform/chromium-linux/editing/selection/select-across-readonly-input-5-expected.txt:
        * platform/chromium-linux/editing/selection/select-from-textfield-outwards-expected.txt:
        * platform/chromium-linux/fast/forms/input-readonly-autoscroll-expected.txt:
        * platform/chromium-linux/fast/forms/input-text-double-click-expected.txt:
        * platform/chromium-linux/fast/forms/textfield-outline-expected.txt:
        * platform/chromium-linux/fast/forms/validation-message-appearance-expected.txt:
        * platform/chromium-win-vista/fast/forms/validation-message-appearance-expected.txt:
        * platform/chromium-win/editing/inserting/4960120-1-expected.txt:
        * platform/chromium-win/editing/pasteboard/drop-text-without-selection-expected.txt:
        * platform/chromium-win/editing/pasteboard/pasting-tabs-expected.txt:
        * platform/chromium-win/editing/selection/4895428-3-expected.txt:
        * platform/chromium-win/editing/selection/4975120-expected.txt:
        * platform/chromium-win/editing/selection/select-across-readonly-input-1-expected.txt:
        * platform/chromium-win/editing/selection/select-across-readonly-input-4-expected.txt:
        * platform/chromium-win/editing/selection/select-across-readonly-input-5-expected.txt:
        * platform/chromium-win/editing/selection/select-from-textfield-outwards-expected.txt:
        * platform/chromium-win/fast/events/autoscroll-expected.txt:
        * platform/chromium-win/fast/events/context-no-deselect-expected.txt:
        * platform/chromium-win/fast/forms/input-appearance-focus-expected.txt:
        * platform/chromium-win/fast/forms/input-appearance-readonly-expected.txt:
        * platform/chromium-win/fast/forms/input-appearance-selection-expected.txt:
        * platform/chromium-win/fast/forms/input-double-click-selection-gap-bug-expected.txt:
        * platform/chromium-win/fast/forms/input-paste-undo-expected.txt:
        * platform/chromium-win/fast/forms/input-placeholder-visibility-1-expected.txt:
        * platform/chromium-win/fast/forms/input-placeholder-visibility-2-expected.txt:
        * platform/chromium-win/fast/forms/input-placeholder-visibility-3-expected.txt:
        * platform/chromium-win/fast/forms/input-readonly-autoscroll-expected.txt:
        * platform/chromium-win/fast/forms/input-text-click-inside-expected.txt:
        * platform/chromium-win/fast/forms/input-text-double-click-expected.txt:
        * platform/chromium-win/fast/forms/input-text-drag-down-expected.txt:
        * platform/chromium-win/fast/forms/input-text-option-delete-expected.txt:
        * platform/chromium-win/fast/forms/input-text-scroll-left-on-blur-expected.txt:
        * platform/chromium-win/fast/forms/input-text-self-emptying-click-expected.txt:
        * platform/chromium-win/fast/forms/plaintext-mode-2-expected.txt:
        * platform/chromium-win/fast/forms/search-rtl-expected.txt:
        * platform/chromium-win/fast/forms/search-zoomed-expected.txt:
        * platform/chromium-win/fast/forms/tabbing-input-iframe-expected.txt:
        * platform/chromium-win/fast/forms/textarea-placeholder-visibility-1-expected.txt:
        * platform/chromium-win/fast/forms/textarea-placeholder-visibility-2-expected.txt:
        * platform/chromium-win/fast/forms/textarea-scrollbar-expected.txt:
        * platform/chromium-win/fast/forms/textarea-scrolled-type-expected.txt:
        * platform/chromium-win/fast/forms/textfield-focus-ring-expected.txt:
        * platform/chromium-win/fast/forms/textfield-outline-expected.txt:
        * platform/chromium-win/fast/forms/textfield-overflow-expected.txt:
        * platform/chromium-win/fast/forms/validation-message-appearance-expected.txt:
        * platform/chromium-win/fast/frames/take-focus-from-iframe-expected.txt:
        * platform/chromium-win/fast/repaint/renderer-destruction-by-invalidateSelection-crash-expected.txt:
        * platform/chromium-win/fast/transforms/transformed-focused-text-input-expected.txt:
        * platform/chromium/test_expectations.txt:
        * platform/gtk/editing/inserting/4960120-1-expected.txt:
        * platform/gtk/editing/pasteboard/drop-text-without-selection-expected.txt:
        * platform/gtk/editing/pasteboard/pasting-tabs-expected.txt:
        * platform/gtk/editing/selection/4895428-3-expected.txt:
        * platform/gtk/editing/selection/4975120-expected.txt:
        * platform/gtk/editing/selection/select-across-readonly-input-1-expected.txt:
        * platform/gtk/editing/selection/select-across-readonly-input-4-expected.txt:
        * platform/gtk/editing/selection/select-across-readonly-input-5-expected.txt:
        * platform/gtk/editing/selection/select-from-textfield-outwards-expected.txt:
        * platform/gtk/fast/events/autoscroll-expected.txt:
        * platform/gtk/fast/events/context-no-deselect-expected.txt:
        * platform/gtk/fast/forms/input-appearance-focus-expected.txt:
        * platform/gtk/fast/forms/input-appearance-readonly-expected.txt:
        * platform/gtk/fast/forms/input-appearance-selection-expected.txt:
        * platform/gtk/fast/forms/input-double-click-selection-gap-bug-expected.txt:
        * platform/gtk/fast/forms/input-paste-undo-expected.txt:
        * platform/gtk/fast/forms/input-placeholder-visibility-1-expected.txt:
        * platform/gtk/fast/forms/input-placeholder-visibility-2-expected.txt:
        * platform/gtk/fast/forms/input-placeholder-visibility-3-expected.txt:
        * platform/gtk/fast/forms/input-readonly-autoscroll-expected.txt:
        * platform/gtk/fast/forms/input-text-click-inside-expected.txt:
        * platform/gtk/fast/forms/input-text-click-outside-expected.txt:
        * platform/gtk/fast/forms/input-text-double-click-expected.txt:
        * platform/gtk/fast/forms/input-text-drag-down-expected.txt:
        * platform/gtk/fast/forms/input-text-option-delete-expected.txt:
        * platform/gtk/fast/forms/input-text-scroll-left-on-blur-expected.txt:
        * platform/gtk/fast/forms/input-text-self-emptying-click-expected.txt:
        * platform/gtk/fast/forms/plaintext-mode-2-expected.txt:
        * platform/gtk/fast/forms/search-rtl-expected.txt:
        * platform/gtk/fast/forms/search-transformed-expected.txt:
        * platform/gtk/fast/forms/search-zoomed-expected.txt:
        * platform/gtk/fast/forms/tabbing-input-iframe-expected.txt:
        * platform/gtk/fast/forms/textarea-placeholder-visibility-1-expected.txt:
        * platform/gtk/fast/forms/textarea-placeholder-visibility-2-expected.txt:
        * platform/gtk/fast/forms/textarea-scrollbar-expected.txt:
        * platform/gtk/fast/forms/textarea-scrolled-type-expected.txt:
        * platform/gtk/fast/forms/textfield-focus-ring-expected.txt:
        * platform/gtk/fast/forms/textfield-outline-expected.txt:
        * platform/gtk/fast/forms/textfield-overflow-expected.txt:
        * platform/gtk/fast/frames/take-focus-from-iframe-expected.txt:
        * platform/gtk/fast/repaint/renderer-destruction-by-invalidateSelection-crash-expected.txt:
        * platform/gtk/fast/text/textIteratorNilRenderer-expected.txt:
        * platform/gtk/fast/transforms/transformed-focused-text-input-expected.txt:
        * platform/mac-snowleopard/fast/forms/input-placeholder-visibility-1-expected.txt:
        * platform/mac-snowleopard/fast/forms/input-placeholder-visibility-2-expected.txt:
        * platform/mac-snowleopard/fast/forms/input-placeholder-visibility-3-expected.txt:
        * platform/mac-wk2/editing/selection/select-across-readonly-input-1-expected.txt:
        * platform/mac-wk2/editing/selection/select-across-readonly-input-4-expected.txt:
        * platform/mac-wk2/editing/selection/select-across-readonly-input-5-expected.txt:
        * platform/mac/editing/inserting/4960120-1-expected.txt:
        * platform/mac/editing/pasteboard/drop-text-without-selection-expected.txt:
        * platform/mac/editing/pasteboard/pasting-tabs-expected.txt:
        * platform/mac/editing/selection/4895428-3-expected.txt:
        * platform/mac/editing/selection/4975120-expected.txt:
        * platform/mac/editing/selection/select-across-readonly-input-1-expected.txt:
        * platform/mac/editing/selection/select-across-readonly-input-4-expected.txt:
        * platform/mac/editing/selection/select-across-readonly-input-5-expected.txt:
        * platform/mac/editing/selection/select-from-textfield-outwards-expected.txt:
        * platform/mac/fast/events/autoscroll-expected.txt:
        * platform/mac/fast/events/context-no-deselect-expected.txt:
        * platform/mac/fast/forms/input-appearance-focus-expected.txt:
        * platform/mac/fast/forms/input-appearance-readonly-expected.txt:
        * platform/mac/fast/forms/input-appearance-selection-expected.txt:
        * platform/mac/fast/forms/input-appearance-spinbutton-up-expected.txt:
        * platform/mac/fast/forms/input-double-click-selection-gap-bug-expected.txt:
        * platform/mac/fast/forms/input-paste-undo-expected.txt:
        * platform/mac/fast/forms/input-placeholder-visibility-1-expected.txt:
        * platform/mac/fast/forms/input-placeholder-visibility-2-expected.txt:
        * platform/mac/fast/forms/input-placeholder-visibility-3-expected.txt:
        * platform/mac/fast/forms/input-readonly-autoscroll-expected.txt:
        * platform/mac/fast/forms/input-text-click-inside-expected.txt:
        * platform/mac/fast/forms/input-text-double-click-expected.txt:
        * platform/mac/fast/forms/input-text-drag-down-expected.txt:
        * platform/mac/fast/forms/input-text-option-delete-expected.txt:
        * platform/mac/fast/forms/input-text-scroll-left-on-blur-expected.txt:
        * platform/mac/fast/forms/input-text-self-emptying-click-expected.txt:
        * platform/mac/fast/forms/plaintext-mode-2-expected.txt:
        * platform/mac/fast/forms/search-rtl-expected.txt:
        * platform/mac/fast/forms/search-transformed-expected.txt:
        * platform/mac/fast/forms/search-zoomed-expected.txt:
        * platform/mac/fast/forms/tabbing-input-iframe-expected.txt:
        * platform/mac/fast/forms/textarea-placeholder-visibility-1-expected.txt:
        * platform/mac/fast/forms/textarea-placeholder-visibility-2-expected.txt:
        * platform/mac/fast/forms/textarea-scrollbar-expected.txt:
        * platform/mac/fast/forms/textarea-scrolled-type-expected.txt:
        * platform/mac/fast/forms/textfield-focus-ring-expected.txt:
        * platform/mac/fast/forms/textfield-outline-expected.txt:
        * platform/mac/fast/forms/textfield-overflow-expected.txt:
        * platform/mac/fast/forms/validation-message-appearance-expected.txt:
        * platform/mac/fast/frames/take-focus-from-iframe-expected.txt:
        * platform/mac/fast/repaint/renderer-destruction-by-invalidateSelection-crash-expected.txt:
        * platform/mac/fast/transforms/transformed-focused-text-input-expected.txt:
        * platform/qt/editing/inserting/4960120-1-expected.txt:
        * platform/qt/editing/pasteboard/pasting-tabs-expected.txt:
        * platform/qt/editing/selection/4895428-3-expected.txt:
        * platform/qt/editing/selection/4975120-expected.txt:
        * platform/qt/fast/events/context-no-deselect-expected.txt:
        * platform/qt/fast/forms/input-appearance-focus-expected.txt:
        * platform/qt/fast/forms/input-appearance-readonly-expected.txt:
        * platform/qt/fast/forms/input-appearance-selection-expected.txt:
        * platform/qt/fast/forms/input-double-click-selection-gap-bug-expected.txt:
        * platform/qt/fast/forms/input-paste-undo-expected.txt:
        * platform/qt/fast/forms/input-text-click-inside-expected.txt:
        * platform/qt/fast/forms/input-text-double-click-expected.txt:
        * platform/qt/fast/forms/input-text-option-delete-expected.txt:
        * platform/qt/fast/forms/input-text-self-emptying-click-expected.txt:
        * platform/qt/fast/forms/plaintext-mode-2-expected.txt:
        * platform/qt/fast/forms/search-rtl-expected.txt:
        * platform/qt/fast/forms/search-transformed-expected.txt:
        * platform/qt/fast/forms/search-zoomed-expected.txt:
        * platform/qt/fast/forms/textfield-outline-expected.txt:
        * platform/qt/fast/forms/textfield-overflow-expected.txt:
        * platform/qt/fast/frames/take-focus-from-iframe-expected.txt:
        * platform/qt/fast/transforms/transformed-focused-text-input-expected.txt:
        * platform/win/editing/inserting/4960120-1-expected.txt:
        * platform/win/editing/selection/select-from-textfield-outwards-expected.txt:
        * platform/win/fast/forms/input-text-drag-down-expected.txt:
        * platform/win/fast/forms/textarea-scrollbar-expected.txt:
        * platform/win/fast/forms/textarea-scrolled-type-expected.txt:

2011-05-22  Fumitoshi Ukai  <ukai@chromium.org>

        Unreviewed.

        Chromium expectations update.

        * platform/chromium/test_expectations.txt: add fast/block/positioning/058.html

2011-05-22  Robert Hogan  <robert@webkit.org>

        Reviewed by Kenneth Rohde Christiansen.

        Fix policyDelegate in Qt DRT
        https://bugs.webkit.org/show_bug.cgi?id=61247

        * platform/qt/Skipped: Unskip fast/encoding/mailto-always-utf-8.html
        * platform/qt/fast/forms/mailto/formenctype-attribute-button-html-expected.txt: Removed.
        * platform/qt/fast/forms/mailto/formenctype-attribute-input-html-expected.txt: Removed.

2011-05-22  Dominic Cooney  <dominicc@chromium.org>

        Reviewed by Dimitri Glazkov.

        When removing a shadow root, also remove it from the render tree.
        https://bugs.webkit.org/show_bug.cgi?id=61245

        * platform/mac/Skipped: Unskip shadow tests.

2011-05-21  Dirk Schulze  <krit@webkit.org>

        Reviewed by Darin Adler.

        REGRESSION(r66731): pointer-events are broken in some cases
        https://bugs.webkit.org/show_bug.cgi?id=45467

        Check that an embedded SVG element doesn't have a pointer, if pointer-events is set to 'none'.

        * svg/custom/pointer-events-on-svg-with-pointer-expected.txt: Added.
        * svg/custom/pointer-events-on-svg-with-pointer.xhtml: Added.
        * svg/custom/pointer-events-on-svg-without-pointer-expected.txt: Added.
        * svg/custom/pointer-events-on-svg-without-pointer.xhtml: Added.

2011-05-21  Dan Bernstein  <mitz@apple.com>

        Reviewed by Darin Adler.

        <rdar://problem/9479926> REGRESSION (r82144): Icon overlaps text in Twitter message dialog
        https://bugs.webkit.org/show_bug.cgi?id=61241

        * fast/block/positioning/start-ignoring-before-expected.png: Added.
        * fast/block/positioning/start-ignoring-before-expected.txt: Added.
        * fast/block/positioning/start-ignoring-before.html: Added.

2011-05-21  Justin Schuh  <jschuh@chromium.org>

        Unreviewed.

        Chromium expectations exception for:
        fast/css/custom-font-xheight.html

        * platform/chromium/test_expectations.txt:

2011-05-21  Justin Schuh  <jschuh@chromium.org>

        Unreviewed

        Chromium expectations updates.

        * platform/chromium-linux/fast/css/box-shadow-and-border-radius-expected.png: Added.
        * platform/chromium-linux/svg/W3C-SVG-1.1-SE/struct-use-14-f-expected.png: Added.
        * platform/chromium-linux/svg/W3C-SVG-1.1-SE/struct-use-14-f-expected.txt: Added.
        * platform/chromium-win/fast/box-shadow/border-radius-big-expected.png:
        * platform/chromium-win/fast/css/box-shadow-and-border-radius-expected.png: Added.
        * platform/chromium-win/svg/W3C-SVG-1.1-SE/struct-use-14-f-expected.png: Added.
        * platform/chromium-win/svg/W3C-SVG-1.1-SE/struct-use-14-f-expected.txt: Added.
        * platform/chromium/test_expectations.txt:

2011-05-21  Jeremy Noble  <jer.noble@apple.com>

        Reviewed by Eric Carlson.

        WebKit2: fix failing fullscreen/full-screen-remove* tests.
        https://bugs.webkit.org/show_bug.cgi?id=61027

        * platform/mac-wk2/Skipped: Unskip most fullscreen/ tests.

2011-05-21  Justin Schuh  <jschuh@chromium.org>

        Unreviewed.

        Chromium SVG expectations update.

        * platform/chromium/test_expectations.txt:

2011-05-21  Gavin Peters  <gavinp@chromium.org>

        Reviewed by Adam Barth.

        Add rel type prerender to distinguish prerender from prefetch
        https://bugs.webkit.org/show_bug.cgi?id=61079

        Chrome right now uses <link rel=prefetch ...> for one of two things,
        to warm the cache in the same way as firefox, or to launch a speculative
        rendering of a web page, for faster "loading" when the user navigates to it.

        This new rel type will let us distinguish the two cases; the rel type prerender
        isn't used on the web today, but the Google Web Search example prerendering application
        is ready to experiment with it.

        * fast/dom/HTMLLinkElement/prerender-expected.txt: Added.
        * fast/dom/HTMLLinkElement/prerender.html: Added.
        * platform/gtk/Skipped:
        * platform/mac/Skipped:
        * platform/qt/Skipped:
        * platform/win/Skipped:

2011-05-21  Kent Tamura  <tkent@chromium.org>

        [GTK] [Chromium] Update test results for r87014.
        https://bugs.webkit.org/show_bug.cgi?id=54179

        * platform/chromium-win-vista/fast/forms/validation-message-appearance-expected.txt:
        * platform/gtk/fast/forms/input-text-click-outside-expected.txt:
        * platform/gtk/fast/text/textIteratorNilRenderer-expected.txt:

2011-05-21  Kent Tamura  <tkent@chromium.org>

        [Qt] Update test results for r87014.

        * platform/qt/fast/events/context-no-deselect-expected.txt:
        * platform/qt/fast/forms/input-text-double-click-expected.txt:
        * platform/qt/fast/forms/textfield-outline-expected.txt:

2011-05-21  Kent Tamura  <tkent@chromium.org>

        Reviewed by Dimitri Glazkov.

        Change text-based <input> types to the new shadow DOM model
        https://bugs.webkit.org/show_bug.cgi?id=54179

        Update test results because the shadow tree structure of <input> and
        <textarea> is changed.

        * editing/deleting/delete-all-text-in-text-field-assertion-expected.txt:
        * editing/deleting/delete-ligature-001-expected.txt:
        * editing/pasteboard/copy-in-password-field-expected.txt:
        * editing/selection/select-all-textarea-expected.txt:
        * fast/events/5056619-expected.txt:
        * fast/forms/focus-selection-input-expected.txt:
        * fast/forms/focus-selection-textarea-expected.txt:
        * platform/chromium-linux/editing/selection/select-across-readonly-input-1-expected.txt:
        * platform/chromium-linux/editing/selection/select-across-readonly-input-4-expected.txt:
        * platform/chromium-linux/editing/selection/select-across-readonly-input-5-expected.txt:
        * platform/chromium-linux/editing/selection/select-from-textfield-outwards-expected.txt:
        * platform/chromium-linux/fast/forms/input-readonly-autoscroll-expected.txt:
        * platform/chromium-linux/fast/forms/input-text-double-click-expected.txt:
        * platform/chromium-linux/fast/forms/textfield-outline-expected.txt:
        * platform/chromium-linux/fast/forms/validation-message-appearance-expected.txt:
        * platform/chromium-win/editing/inserting/4960120-1-expected.txt:
        * platform/chromium-win/editing/pasteboard/drop-text-without-selection-expected.txt:
        * platform/chromium-win/editing/pasteboard/pasting-tabs-expected.txt:
        * platform/chromium-win/editing/selection/4895428-3-expected.txt:
        * platform/chromium-win/editing/selection/4975120-expected.txt:
        * platform/chromium-win/editing/selection/select-across-readonly-input-1-expected.txt:
        * platform/chromium-win/editing/selection/select-across-readonly-input-4-expected.txt:
        * platform/chromium-win/editing/selection/select-across-readonly-input-5-expected.txt:
        * platform/chromium-win/editing/selection/select-from-textfield-outwards-expected.txt:
        * platform/chromium-win/fast/events/autoscroll-expected.txt:
        * platform/chromium-win/fast/events/context-no-deselect-expected.txt:
        * platform/chromium-win/fast/forms/input-appearance-focus-expected.txt:
        * platform/chromium-win/fast/forms/input-appearance-readonly-expected.txt:
        * platform/chromium-win/fast/forms/input-appearance-selection-expected.txt:
        * platform/chromium-win/fast/forms/input-double-click-selection-gap-bug-expected.txt:
        * platform/chromium-win/fast/forms/input-paste-undo-expected.txt:
        * platform/chromium-win/fast/forms/input-placeholder-visibility-1-expected.txt:
        * platform/chromium-win/fast/forms/input-placeholder-visibility-2-expected.txt:
        * platform/chromium-win/fast/forms/input-placeholder-visibility-3-expected.txt:
        * platform/chromium-win/fast/forms/input-readonly-autoscroll-expected.txt:
        * platform/chromium-win/fast/forms/input-text-click-inside-expected.txt:
        * platform/chromium-win/fast/forms/input-text-double-click-expected.txt:
        * platform/chromium-win/fast/forms/input-text-drag-down-expected.txt:
        * platform/chromium-win/fast/forms/input-text-option-delete-expected.txt:
        * platform/chromium-win/fast/forms/input-text-scroll-left-on-blur-expected.txt:
        * platform/chromium-win/fast/forms/input-text-self-emptying-click-expected.txt:
        * platform/chromium-win/fast/forms/plaintext-mode-2-expected.txt:
        * platform/chromium-win/fast/forms/search-rtl-expected.txt:
        * platform/chromium-win/fast/forms/search-zoomed-expected.txt:
        * platform/chromium-win/fast/forms/tabbing-input-iframe-expected.txt:
        * platform/chromium-win/fast/forms/textarea-placeholder-visibility-1-expected.txt:
        * platform/chromium-win/fast/forms/textarea-placeholder-visibility-2-expected.txt:
        * platform/chromium-win/fast/forms/textarea-scrollbar-expected.txt:
        * platform/chromium-win/fast/forms/textarea-scrolled-type-expected.txt:
        * platform/chromium-win/fast/forms/textfield-focus-ring-expected.txt:
        * platform/chromium-win/fast/forms/textfield-outline-expected.txt:
        * platform/chromium-win/fast/forms/textfield-overflow-expected.txt:
        * platform/chromium-win/fast/forms/validation-message-appearance-expected.txt:
        * platform/chromium-win/fast/frames/take-focus-from-iframe-expected.txt:
        * platform/chromium-win/fast/repaint/renderer-destruction-by-invalidateSelection-crash-expected.txt:
        * platform/chromium-win/fast/transforms/transformed-focused-text-input-expected.txt:
        * platform/chromium/test_expectations.txt:
        * platform/gtk/editing/inserting/4960120-1-expected.txt:
        * platform/gtk/editing/pasteboard/drop-text-without-selection-expected.txt:
        * platform/gtk/editing/pasteboard/pasting-tabs-expected.txt:
        * platform/gtk/editing/selection/4895428-3-expected.txt:
        * platform/gtk/editing/selection/4975120-expected.txt:
        * platform/gtk/editing/selection/select-across-readonly-input-1-expected.txt:
        * platform/gtk/editing/selection/select-across-readonly-input-4-expected.txt:
        * platform/gtk/editing/selection/select-across-readonly-input-5-expected.txt:
        * platform/gtk/editing/selection/select-from-textfield-outwards-expected.txt:
        * platform/gtk/fast/events/autoscroll-expected.txt:
        * platform/gtk/fast/events/context-no-deselect-expected.txt:
        * platform/gtk/fast/forms/input-appearance-focus-expected.txt:
        * platform/gtk/fast/forms/input-appearance-readonly-expected.txt:
        * platform/gtk/fast/forms/input-appearance-selection-expected.txt:
        * platform/gtk/fast/forms/input-double-click-selection-gap-bug-expected.txt:
        * platform/gtk/fast/forms/input-paste-undo-expected.txt:
        * platform/gtk/fast/forms/input-placeholder-visibility-1-expected.txt:
        * platform/gtk/fast/forms/input-placeholder-visibility-2-expected.txt:
        * platform/gtk/fast/forms/input-placeholder-visibility-3-expected.txt:
        * platform/gtk/fast/forms/input-readonly-autoscroll-expected.txt:
        * platform/gtk/fast/forms/input-text-click-inside-expected.txt:
        * platform/gtk/fast/forms/input-text-double-click-expected.txt:
        * platform/gtk/fast/forms/input-text-drag-down-expected.txt:
        * platform/gtk/fast/forms/input-text-option-delete-expected.txt:
        * platform/gtk/fast/forms/input-text-scroll-left-on-blur-expected.txt:
        * platform/gtk/fast/forms/input-text-self-emptying-click-expected.txt:
        * platform/gtk/fast/forms/plaintext-mode-2-expected.txt:
        * platform/gtk/fast/forms/search-rtl-expected.txt:
        * platform/gtk/fast/forms/search-transformed-expected.txt:
        * platform/gtk/fast/forms/search-zoomed-expected.txt:
        * platform/gtk/fast/forms/tabbing-input-iframe-expected.txt:
        * platform/gtk/fast/forms/textarea-placeholder-visibility-1-expected.txt:
        * platform/gtk/fast/forms/textarea-placeholder-visibility-2-expected.txt:
        * platform/gtk/fast/forms/textarea-scrollbar-expected.txt:
        * platform/gtk/fast/forms/textarea-scrolled-type-expected.txt:
        * platform/gtk/fast/forms/textfield-focus-ring-expected.txt:
        * platform/gtk/fast/forms/textfield-outline-expected.txt:
        * platform/gtk/fast/forms/textfield-overflow-expected.txt:
        * platform/gtk/fast/frames/take-focus-from-iframe-expected.txt:
        * platform/gtk/fast/repaint/renderer-destruction-by-invalidateSelection-crash-expected.txt:
        * platform/gtk/fast/transforms/transformed-focused-text-input-expected.txt:
        * platform/mac-snowleopard/fast/forms/input-placeholder-visibility-1-expected.txt:
        * platform/mac-snowleopard/fast/forms/input-placeholder-visibility-2-expected.txt:
        * platform/mac-snowleopard/fast/forms/input-placeholder-visibility-3-expected.txt:
        * platform/mac-wk2/editing/selection/select-across-readonly-input-1-expected.txt:
        * platform/mac-wk2/editing/selection/select-across-readonly-input-4-expected.txt:
        * platform/mac-wk2/editing/selection/select-across-readonly-input-5-expected.txt:
        * platform/mac/editing/inserting/4960120-1-expected.txt:
        * platform/mac/editing/pasteboard/drop-text-without-selection-expected.txt:
        * platform/mac/editing/pasteboard/pasting-tabs-expected.txt:
        * platform/mac/editing/selection/4895428-3-expected.txt:
        * platform/mac/editing/selection/4975120-expected.txt:
        * platform/mac/editing/selection/select-across-readonly-input-1-expected.txt:
        * platform/mac/editing/selection/select-across-readonly-input-4-expected.txt:
        * platform/mac/editing/selection/select-across-readonly-input-5-expected.txt:
        * platform/mac/editing/selection/select-from-textfield-outwards-expected.txt:
        * platform/mac/fast/events/autoscroll-expected.txt:
        * platform/mac/fast/events/context-no-deselect-expected.txt:
        * platform/mac/fast/forms/input-appearance-focus-expected.txt:
        * platform/mac/fast/forms/input-appearance-readonly-expected.txt:
        * platform/mac/fast/forms/input-appearance-selection-expected.txt:
        * platform/mac/fast/forms/input-appearance-spinbutton-up-expected.txt:
        * platform/mac/fast/forms/input-double-click-selection-gap-bug-expected.txt:
        * platform/mac/fast/forms/input-paste-undo-expected.txt:
        * platform/mac/fast/forms/input-placeholder-visibility-1-expected.txt:
        * platform/mac/fast/forms/input-placeholder-visibility-2-expected.txt:
        * platform/mac/fast/forms/input-placeholder-visibility-3-expected.txt:
        * platform/mac/fast/forms/input-readonly-autoscroll-expected.txt:
        * platform/mac/fast/forms/input-text-click-inside-expected.txt:
        * platform/mac/fast/forms/input-text-double-click-expected.txt:
        * platform/mac/fast/forms/input-text-drag-down-expected.txt:
        * platform/mac/fast/forms/input-text-option-delete-expected.txt:
        * platform/mac/fast/forms/input-text-scroll-left-on-blur-expected.txt:
        * platform/mac/fast/forms/input-text-self-emptying-click-expected.txt:
        * platform/mac/fast/forms/plaintext-mode-2-expected.txt:
        * platform/mac/fast/forms/search-rtl-expected.txt:
        * platform/mac/fast/forms/search-transformed-expected.txt:
        * platform/mac/fast/forms/search-zoomed-expected.txt:
        * platform/mac/fast/forms/tabbing-input-iframe-expected.txt:
        * platform/mac/fast/forms/textarea-placeholder-visibility-1-expected.txt:
        * platform/mac/fast/forms/textarea-placeholder-visibility-2-expected.txt:
        * platform/mac/fast/forms/textarea-scrollbar-expected.txt:
        * platform/mac/fast/forms/textarea-scrolled-type-expected.txt:
        * platform/mac/fast/forms/textfield-focus-ring-expected.txt:
        * platform/mac/fast/forms/textfield-outline-expected.txt:
        * platform/mac/fast/forms/textfield-overflow-expected.txt:
        * platform/mac/fast/forms/validation-message-appearance-expected.txt:
        * platform/mac/fast/frames/take-focus-from-iframe-expected.txt:
        * platform/mac/fast/repaint/renderer-destruction-by-invalidateSelection-crash-expected.txt:
        * platform/mac/fast/transforms/transformed-focused-text-input-expected.txt:
        * platform/qt/editing/inserting/4960120-1-expected.txt:
        * platform/qt/editing/pasteboard/pasting-tabs-expected.txt:
        * platform/qt/editing/selection/4895428-3-expected.txt:
        * platform/qt/editing/selection/4975120-expected.txt:
        * platform/qt/fast/forms/input-appearance-focus-expected.txt:
        * platform/qt/fast/forms/input-appearance-readonly-expected.txt:
        * platform/qt/fast/forms/input-appearance-selection-expected.txt:
        * platform/qt/fast/forms/input-double-click-selection-gap-bug-expected.txt:
        * platform/qt/fast/forms/input-paste-undo-expected.txt:
        * platform/qt/fast/forms/input-text-click-inside-expected.txt:
        * platform/qt/fast/forms/input-text-option-delete-expected.txt:
        * platform/qt/fast/forms/input-text-self-emptying-click-expected.txt:
        * platform/qt/fast/forms/plaintext-mode-2-expected.txt:
        * platform/qt/fast/forms/search-rtl-expected.txt:
        * platform/qt/fast/forms/search-transformed-expected.txt:
        * platform/qt/fast/forms/search-zoomed-expected.txt:
        * platform/qt/fast/forms/textfield-overflow-expected.txt:
        * platform/qt/fast/frames/take-focus-from-iframe-expected.txt:
        * platform/qt/fast/transforms/transformed-focused-text-input-expected.txt:
        * platform/win/editing/inserting/4960120-1-expected.txt:
        * platform/win/editing/selection/select-from-textfield-outwards-expected.txt:
        * platform/win/fast/forms/input-text-drag-down-expected.txt:
        * platform/win/fast/forms/textarea-scrollbar-expected.txt:
        * platform/win/fast/forms/textarea-scrolled-type-expected.txt:

2011-05-21  Kent Tamura  <tkent@chromium.org>

        [Mac] Add expectation files for box-shadow-and-border-radius.html.

        * platform/mac/fast/css/box-shadow-and-border-radius-expected.png: Added.
        * platform/mac/fast/css/box-shadow-and-border-radius-expected.txt: Added.

2011-05-20  Simon Fraser  <simon.fraser@apple.com>

        Reviewed by Dan Bernstein.

        Allow ShadowBlur to do tiling when the context is scaled
        https://bugs.webkit.org/show_bug.cgi?id=61232

        * fast/box-shadow/scaled-box-shadow.html: Added.
        * platform/mac/fast/box-shadow/scaled-box-shadow-expected.png: Added.
        * platform/mac/fast/box-shadow/scaled-box-shadow-expected.txt: Added.

2011-05-20  Alexey Proskuryakov  <ap@apple.com>

        Reviewed by Kent Tamura.

        Special characters can be inserted in text field having reached maxlength
        https://bugs.webkit.org/show_bug.cgi?id=19479
        <rdar://problem/7828739>

        * platform/mac/editing/input/maxlength-expected.txt: Added.
        * platform/mac/editing/input/maxlength.html: Added.

        * fast/forms/input-number-commit-valid-only-expected.txt:
        * fast/forms/script-tests/input-number-commit-valid-only.js:
        The user can make a number field empty by deleting its content, so there is no reason why
        execCommand shouldn't be able to make it empty.

2011-05-20  Andy Estes  <aestes@apple.com>

        Reviewed by Darin Adler.

        REGRESSION (r70748): WebKit cannot play videos created by Podcast Producer.
        https://bugs.webkit.org/show_bug.cgi?id=61229
        
        Test that an object element with a non-empty classid, a valid MIME
        type and no fallback content is allowed to load.

        * fast/replaced/object-with-non-empty-classid-triggers-fallback-expected.txt:
        * fast/replaced/object-with-non-empty-classid-triggers-fallback.html:

2011-05-20  Kulanthaivel Palanichamy  <kulanthaivel@codeaurora.org>

        Reviewed by Simon Fraser.

        If both border-radius and box-shadow applied, shadow is not fully visible
        https://bugs.webkit.org/show_bug.cgi?id=59577

        * fast/css/box-shadow-and-border-radius.html: Added.
        * platform/qt/fast/css/box-shadow-and-border-radius-expected.png: Added.
        * platform/qt/fast/css/box-shadow-and-border-radius-expected.txt: Added.
        * platform/win/fast/css/box-shadow-and-border-radius-expected.png: Added.
        * platform/win/fast/css/box-shadow-and-border-radius-expected.txt: Added.

2011-05-20  Kenneth Russell  <kbr@google.com>

        Unreviewed. Manually pulled missing layout test result from Mesa bots.

        * platform/chromium-gpu-mac/compositing/animation/busy-indicator-actual.png: Added.
        * platform/chromium-gpu-win/compositing/animation/busy-indicator-actual.png: Added.

2011-05-20  Leon Scroggins  <scroggo@google.com>

        Reviewed by Kenneth Russell.

        gpu canvas alpha tests failing on the chromium canaries
        https://bugs.webkit.org/show_bug.cgi?id=59768

        Remove tests which are now passing from test_expectations.

        * platform/chromium/test_expectations.txt:

2011-05-20  Justin Schuh  <jschuh@chromium.org>

        Unreviewed.

        Chromium expectations exception for:
        svg/W3C-SVG-1.1-SE/struct-use-14-f.svg 

        * platform/chromium/test_expectations.txt:

2011-05-20  Ryosuke Niwa  <rniwa@webkit.org>

        Rebaselines after r86983.

        * platform/chromium-win/editing/pasteboard/smart-paste-003-expected.txt:
        * platform/chromium-win/editing/pasteboard/smart-paste-004-expected.txt:
        * platform/gtk/editing/pasteboard/paste-xml-expected.txt:
        * platform/win/editing/pasteboard/paste-xml-expected.txt:

2011-05-20  Justin Schuh  <jschuh@chromium.org>

        Unreviewed.

        Chromium expectations update.

        * platform/chromium/test_expectations.txt:

2011-05-20  Justin Schuh  <jschuh@chromium.org>

        Unreviewed.

        Chromium expectaions update.

        * platform/chromium/test_expectations.txt:

2011-05-20  Ryosuke Niwa  <rniwa@webkit.org>

        Reviewed by Enrica Casucci.

        Wrap copied contents by one style span instead of two
        https://bugs.webkit.org/show_bug.cgi?id=60988

        Rebaselined tests due to the change in how WebKit preserves style in copy and paste.

        * editing/pasteboard/4930986-2-expected.txt: Whitespace change.
        * editing/pasteboard/5065605-expected.txt: No longer adds redundant inline style declaration.
        * editing/pasteboard/paste-4039777-fix-expected.txt: Progression; Now we hit the list merging logic
        in ReplaceSelectionCommand: isStyleSpan(refNode.get()) && isListElement(refNode->firstChild()).
        * editing/pasteboard/paste-list-001-expected.txt: Ditto.
        * editing/pasteboard/paste-text-011-expected.txt: An extra style span was added.
        * editing/pasteboard/paste-text-012-expected.txt: Ditto.
        * editing/pasteboard/smart-paste-003-trailing-whitespace-expected.txt: No longer adds redundant style span.
        * platform/chromium-win/editing/pasteboard/paste-text-003-expected.txt: No longer adds empty anonymous nodes.
        * platform/chromium-win/editing/pasteboard/paste-text-011-expected.txt: Ditto.
        * platform/gtk/editing/pasteboard/paste-text-003-expected.txt: Ditto.
        * platform/mac/editing/pasteboard/paste-text-003-expected.txt: Ditto.
        * platform/qt/editing/pasteboard/paste-text-003-expected.txt: Ditto.

2011-05-20  Justin Schuh  <jschuh@chromium.org>

        Unreviewed.

        Chromium expectaions update.

        * platform/chromium/test_expectations.txt:

2011-05-20  Simon Fraser  <simon.fraser@apple.com>

        Reviewed by Sam Weinig.

        numberOfActiveAnimations() can include animations from documents in the page cache
        https://bugs.webkit.org/show_bug.cgi?id=53641

        Unskip tests that were broken because of bad numberOfActiveAnimations() behavior.
        
        * platform/mac-wk2/Skipped:

2011-05-20  Dirk Schulze  <krit@webkit.org>

        Unreviewed rebaseline of Qt. One of the two tests doesn't even need a platform specific result anymore.

        SVGPathSegList needs better getTotalLength, getSegmentAtLength path traversal code
        https://bugs.webkit.org/show_bug.cgi?id=12047

        * platform/qt/svg/custom/path-getTotalLength-expected.txt: Removed.
        * platform/qt/svg/custom/path-textPath-simulation-expected.txt:

2011-05-20  Rob Buis  <rbuis@rim.com>

        Reviewed by Dirk Schulze.

        Use test from ietestcenter fails
        https://bugs.webkit.org/show_bug.cgi?id=60844

        * platform/mac/svg/W3C-SVG-1.1-SE/struct-use-14-f-expected.png: Added.
        * platform/mac/svg/W3C-SVG-1.1-SE/struct-use-14-f-expected.txt: Added.
        * svg/W3C-SVG-1.1-SE/struct-use-14-f.svg: Added.

2011-05-20  Simon Fraser  <simon.fraser@apple.com>

        Reviewed by Sam Weinig.

        WebKitTestRunner needs layoutTestController.pauseTransitionAtTimeOnElementWithId
        https://bugs.webkit.org/show_bug.cgi?id=42550
        
        REGRESSION (r84961): transitions/transition-timing-function.html failing on SnowLeopard Intel Release (WebKit2 Tests)
        https://bugs.webkit.org/show_bug.cgi?id=59865
        
        Unskip transition tests that rely on the pause API, and remove a line which refers
        to a test that no longer exists.

        * platform/mac-wk2/Skipped:

2011-05-20  Abhishek Arya  <inferno@chromium.org>

        Reviewed by Kent Tamura.

        Tests that we do not crash when auto-focus triggers a attach.
        https://bugs.webkit.org/show_bug.cgi?id=32882

        * fast/forms/input-element-attach-crash-expected.txt: Added.
        * fast/forms/input-element-attach-crash.html: Added.

2011-05-20  Mark Pilgrim  <pilgrim@chromium.org>

        Reviewed by Tony Chang.

        IndexedDB createObjectStore should throw if name is null
        https://bugs.webkit.org/show_bug.cgi?id=58465

        * storage/indexeddb/mozilla/create-objectstore-null-name-expected.txt: Added.
        * storage/indexeddb/mozilla/create-objectstore-null-name.html: Added.

2011-05-20  Xiaomei Ji  <xji@chromium.org>

        Reviewed by Ryosuke Niwa.

        ctrl-arrow does not work on words separated by multiple spaces.
        https://bugs.webkit.org/show_bug.cgi?id=57543.

        Add more test cases for mutiplespaces.

        * editing/selection/move-by-word-visually-expected.txt:
        * editing/selection/move-by-word-visually.html:

2011-05-20  Andrew Scherkus  <scherkus@chromium.org>

        Unreviewed, checking in baselines for media/media-document-audio-repaint.html for chromium-{mac,linux,win}.

        * platform/chromium-linux/media/media-document-audio-repain-expected.png: Added.
        * platform/chromium-mac/media/media-document-audio-repaint-expected.png: Added.
        * platform/chromium-mac/media/media-document-audio-repaint-expected.txt: Added.
        * platform/chromium-win/media/media-document-audio-repaint-expected.png: Added.
        * platform/chromium-win/media/media-document-audio-repaint-expected.txt: Added.

2011-05-20  Andrew Scherkus  <scherkus@chromium.org>

        Unreviewed, updating media/event-attributes.html as passing for Chromium.

        * platform/chromium/test_expectations.txt:

2011-05-20  Kent Tamura  <tkent@chromium.org>

        [Windows] fast/dom/HTMLFormElement/associated-elements-after-index-assertion-fail1.html failing since r86936
        https://bugs.webkit.org/show_bug.cgi?id=61190

        * platform/win/Skipped: Skip it because the test uses <progress> and
          Windows doesn't have <progress> support.

2011-05-19  Sergey Vorobyev  <sergeyvorobyev@google.com>

        Reviewed by Yury Semikhatsky.

        Web Inspector: Background network events collection - add GUI to Inspector.
        https://bugs.webkit.org/show_bug.cgi?id=58652

        Move reopenFrontend() to inspector-test.js
        Add first test for background events collection.

        * http/tests/inspector/inspector-test.js:
        ():
        * http/tests/inspector/network-test.js: Added.
        (initialize_NetworkTest.InspectorTest.enableBackgroundEventCollection):
        (initialize_NetworkTest.InspectorTest.disableBackgroundEventCollection):
        * http/tests/inspector/network/network-clear-after-disabled-expected.txt: Added.
        * http/tests/inspector/network/network-clear-after-disabled.html: Added.
        * http/tests/inspector/network/network-close-load-open-expected.txt: Added.
        * http/tests/inspector/network/network-close-load-open.html: Added.
        * http/tests/inspector/network/network-open-load-reopen-expected.txt: Added.
        * http/tests/inspector/network/network-open-load-reopen.html: Added.
        * inspector/debugger/open-close-open-expected.txt:
        * inspector/debugger/open-close-open.html:
        * platform/qt/Skipped:

2011-05-20  Csaba Osztrogonác  <ossy@webkit.org>

        [Qt] Skip failing tests.

        * platform/qt-arm/Skipped:

2011-05-20  Csaba Osztrogonác  <ossy@webkit.org>

        [Qt][Mac] Skip one more plugins test after r86938.

        * platform/qt-mac/Skipped:

2011-05-20  Robert Hogan  <robert@webkit.org>

        Rubber-stamped by Csaba Osztrogonác.

        [Qt-mac] Skip two plugins test

        Unskipped in platform/qt/ so need to skip in qt-mac as the build
        does not support plugins (?)

        * platform/qt-mac/Skipped: plugins/get-url-with-javascript-url.html
                                   plugins/windowless_plugin_paint_test.html

2011-05-20  Robert Hogan  <robert@webkit.org>

        Rubber-stamped by Csaba Osztrogonác.

        [Qt] plugins/keyboard-events.html fails after r72717

        https://bugs.webkit.org/show_bug.cgi?id=50050

        keyboard-events.html now passes thanks to the buildbot
        upgrades. It was blocked by a bug in Xvfb on xorg-server
        1.4.2.

       * platform/qt/Skipped:

2011-05-20  Csaba Osztrogonác  <ossy@webkit.org>

        [Qt] Unreviewed. Remove unnecessary Qt specific expected files.

        * platform/qt/editing/execCommand/5062376-expected.txt: Removed.
        * platform/qt/editing/execCommand/insert-list-with-id-expected.txt: Removed.
        * platform/qt/editing/inserting/insert-before-link-1-expected.txt: Removed.
        * platform/qt/editing/pasteboard/4840662-expected.txt: Removed.
        * platform/qt/editing/pasteboard/5245519-expected.txt: Removed.
        * platform/qt/editing/pasteboard/copy-in-password-field-expected.txt: Removed.
        * platform/qt/editing/pasteboard/page-zoom-expected.txt: Removed.
        * platform/qt/editing/undo/redo-style-expected.txt: Removed.
        * platform/qt/fast/css/getComputedStyle/computed-style-expected.txt: Removed.
        * platform/qt/fast/dom/frame-loading-via-document-write-expected.txt: Removed.
        * platform/qt/fast/dom/wrapper-classes-expected.txt: Removed.
        * platform/qt/fast/dynamic/dirty-float-in-clean-line-expected.txt: Removed.
        * platform/qt/fast/dynamic/float-at-line-break-expected.txt: Removed.
        * platform/qt/fast/dynamic/unicode-bidi-expected.txt: Removed.
        * platform/qt/fast/encoding/preload-encoding-expected.txt: Removed.
        * platform/qt/fast/lists/alpha-list-wrap-expected.txt: Removed.
        * platform/qt/fast/lists/decimal-leading-zero-expected.txt: Removed.
        * platform/qt/fast/lists/li-values-expected.txt: Removed.
        * platform/qt/fast/lists/list-style-type-dynamic-change-expected.txt: Removed.
        * platform/qt/fast/repaint/svg-layout-root-style-attr-update-expected.txt: Removed.
        * platform/qt/fast/text/bidi-embedding-pop-and-push-same-2-expected.txt: Removed.
        * platform/qt/fast/text/justify-nbsp-expected.txt: Removed.
        * platform/qt/fast/text/setData-dirty-lines-expected.txt: Removed.
        * platform/qt/fast/text/splitText-dirty-lines-expected.txt: Removed.
        * platform/qt/http/tests/security/cross-frame-access-call-expected.txt: Removed.
        * platform/qt/http/tests/security/cross-frame-access-get-expected.txt: Removed.
        * platform/qt/plugins/document-open-expected.txt: Removed.
        * platform/qt/plugins/resize-from-plugin-expected.txt: Removed.
        * platform/qt/svg/custom/animation-currentColor-expected.txt: Removed.
        * platform/qt/svg/custom/radial-gradient-with-outstanding-focalPoint-expected.txt: Removed.
        * platform/qt/svg/custom/text-zoom-expected.txt: Removed.
        * platform/qt/svg/custom/transformedMaskFails-expected.txt: Removed.

2011-05-20  Sergio Villar Senin  <svillar@igalia.com>

        Unreviewed, new GTK+ test results.

        * platform/gtk/fast/html/details-add-details-child-1-expected.png: Added.
        * platform/gtk/fast/html/details-add-details-child-1-expected.txt: Added.
        * platform/gtk/fast/html/details-nested-1-expected.png: Added.
        * platform/gtk/fast/html/details-nested-1-expected.txt: Added.
        * platform/gtk/fast/html/details-nested-2-expected.png: Added.
        * platform/gtk/fast/html/details-nested-2-expected.txt: Added.
        * platform/gtk/svg/W3C-SVG-1.1-SE/painting-marker-07-f-expected.png: Added.
        * platform/gtk/svg/W3C-SVG-1.1-SE/painting-marker-07-f-expected.txt: Added.
        * platform/gtk/svg/custom/painting-marker-07-f-inherit-expected.png: Added.
        * platform/gtk/svg/custom/painting-marker-07-f-inherit-expected.txt: Added.
        * platform/gtk/svg/custom/small-rect-scale-expected.png: Added.
        * platform/gtk/svg/custom/small-rect-scale-expected.txt: Added.

2011-05-20  Sergio Villar Senin  <svillar@igalia.com>

        Unreviewed, new GTK+ test expectations after r86920.

        * platform/gtk/fast/css/getComputedStyle/computed-style-without-renderer-expected.txt:

2011-05-20  Sheriff Bot  <webkit.review.bot@gmail.com>

        Unreviewed, rolling out r86920.
        http://trac.webkit.org/changeset/86920
        https://bugs.webkit.org/show_bug.cgi?id=61173

        It cause compile error on some buildbot in chromium. e.g.
        http://build.chromium.org/p/chromium.memory/builders/Chromium%20Mac%20Builder%20%28valgrind%29/builds/12336/steps/compile/logs/stdio#error1
        (Requested by ukai_ on #webkit).

        * css3/images/optimize-contrast-canvas-expected.png: Removed.
        * css3/images/optimize-contrast-canvas-expected.txt: Removed.
        * css3/images/optimize-contrast-canvas.html: Removed.
        * css3/images/optimize-contrast-image-expected.png: Removed.
        * css3/images/optimize-contrast-image-expected.txt: Removed.
        * css3/images/optimize-contrast-image.html: Removed.
        * fast/css/getComputedStyle/computed-style-expected.txt:
        * fast/css/getComputedStyle/computed-style-without-renderer-expected.txt:
        * platform/mac/fast/css/getComputedStyle/computed-style-without-renderer-expected.txt:
        * platform/qt/fast/css/getComputedStyle/computed-style-without-renderer-expected.txt:
        * svg/css/getComputedStyle-basic-expected.txt:

2011-05-20  Dirk Schulze  <krit@webkit.org>

        Reviewed by Eric Seidel.

        SVG Large curve path segment OOM crash
        https://bugs.webkit.org/show_bug.cgi?id=42079

        Added a test to verify, that the browser does not crash on calculating the total length on big segments.
        It makes no sense to add the result of getTotalLength(), since they differ a lot bewteen platforms.
        This is caused by the platform graphic libraries. See comment #9 on the bug.

        * svg/custom/path-getTotalLength-on-big-segment-crash-expected.txt: Added.
        * svg/custom/path-getTotalLength-on-big-segment-crash.svg: Added.

2011-05-19  Fumitoshi Ukai  <ukai@chromium.org>

        Unreviewed.

        Chromium expectations update.

        * platform/chromium/test_expectations.txt: add BUGWK61169

2011-05-19  Mike Lawther  <mikelawther@chromium.org>

        Reviewed by Simon Fraser.

        implement image-rendering: optimize-contrast (with a vendor prefix) as defined in CSS3 image values
        https://bugs.webkit.org/show_bug.cgi?id=56627

        * css3/images/optimize-contrast-canvas-expected.checksum: Added.
        * css3/images/optimize-contrast-canvas-expected.png: Added.
        * css3/images/optimize-contrast-canvas-expected.txt: Added.
        * css3/images/optimize-contrast-canvas.html: Added.
        * css3/images/optimize-contrast-image-expected.checksum: Added.
        * css3/images/optimize-contrast-image-expected.png: Added.
        * css3/images/optimize-contrast-image-expected.txt: Added.
        * css3/images/optimize-contrast-image.html: Added.

2011-05-19  Justin Schuh  <jschuh@chromium.org>

        Unreviewed.

        Chromium expectations update.

        * platform/chromium/test_expectations.txt:

2011-05-19  Jeremy Noble  <jer.noble@apple.com>

        Unreviewed; added new test to gtk Skipped list.

        * platform/gtk/Skipped:

2011-05-18  Kenneth Russell  <kbr@google.com>

        Reviewed by James Robinson.

        [chromium] Disable blending in compositor for WebGL layers with alpha=false
        https://bugs.webkit.org/show_bug.cgi?id=61091

        * compositing/webgl/webgl-no-alpha.html: Added.
        * platform/chromium-gpu/compositing/webgl/webgl-no-alpha-expected.png: Added.
        * platform/chromium-gpu/compositing/webgl/webgl-no-alpha-expected.txt: Added.
        * platform/mac-wk2/Skipped:
        * platform/mac/compositing/webgl/webgl-no-alpha-expected.png: Added.
        * platform/mac/compositing/webgl/webgl-no-alpha-expected.txt: Added.

2011-05-18  Jeremy Noble  <jer.noble@apple.com>

        Reviewed by Darin Adler.

        Poster is not shown in Safari for video element with no playable source elements.
        https://bugs.webkit.org/show_bug.cgi?id=61109

        * media/video-src-invalid-poster-expected.txt: Added.
        * media/video-src-invalid-poster.html: Added.

2011-05-19  Andrew Wilson  <atwilson@chromium.org>

        Reviewed by Darin Adler.

        MessagePortArray cloning code needs to verify source before copying
        https://bugs.webkit.org/show_bug.cgi?id=61130

        * fast/events/message-port-multi-expected.txt:
        * fast/events/resources/message-port-multi.js:
        Added test for "passing an array with an item at a really large index" to postMessage().

2011-05-19  Justin Schuh  <jschuh@chromium.org>

        Unreviewed.

        Chromium expectations update.

        * platform/chromium/test_expectations.txt:

2011-05-15  Robert Hogan  <robert@webkit.org>

        Reviewed by Antonio Gomes.

        [Qt][GTK] plugins/get-url-with-javascript-url.html fails
        https://bugs.webkit.org/show_bug.cgi?id=60834
        Fix unix test plugin for plugins/get-url-with-javascript-url.html

        * platform/qt/Skipped:

2011-05-19  Justin Schuh  <jschuh@chromium.org>

        Unreviewed.

        Chromium expectations update.
 
        * platform/chromium/test_expectations.txt:

2011-05-19  Justin Schuh  <jschuh@chromium.org>

        Unreviewed.

        Chromium gradient expectations update.

        * platform/chromium-linux-x86/fast/gradients: Added.
        * platform/chromium-linux-x86/fast/gradients/css3-linear-right-angle-gradients-expected.png: Added.
        * platform/chromium-linux/fast/gradients/css3-linear-right-angle-gradients-expected.png: Added.
        * platform/chromium-mac-leopard/fast/gradients/css3-linear-right-angle-gradients-expected.png: Added.
        * platform/chromium-win-vista/fast/gradients/css3-linear-right-angle-gradients-expected.png: Added.

2011-05-19  Sheriff Bot  <webkit.review.bot@gmail.com>

        Unreviewed, rolling out r86869, r86873, r86875, and r86877.
        http://trac.webkit.org/changeset/86869
        http://trac.webkit.org/changeset/86873
        http://trac.webkit.org/changeset/86875
        http://trac.webkit.org/changeset/86877
        https://bugs.webkit.org/show_bug.cgi?id=61139

        broke builds and debug DRT (Requested by rniwa on #webkit).

        * fast/dom/Window/script-tests/window-property-descriptors.js:
        * fast/dom/Window/window-properties.html:
        * fast/dom/script-tests/prototype-inheritance-2.js:
        * fast/dom/script-tests/prototype-inheritance.js:
        * fast/harness/internals-object-expected.txt: Removed.
        * fast/harness/internals-object.html: Removed.
        * platform/gtk/Skipped:
        * platform/mac-wk2/Skipped:
        * platform/qt/Skipped:
        * platform/win/Skipped:

2011-05-19  Justin Schuh  <jschuh@chromium.org>

        Unreviewed.

        Chromium expectations update.

        * platform/chromium/test_expectations.txt:

2011-05-19  Robert Hogan  <robert@webkit.org>

        Reviewed by Andreas Kling.

        [Qt] Fix plugins/windowless_plugin_paint_test.html
        https://bugs.webkit.org/show_bug.cgi?id=60992

        * platform/qt/Skipped:

2011-05-18  Dimitri Glazkov  <dglazkov@chromium.org>

        Reviewed by Darin Adler.

        Add build logistics and plumbing for window.internals object.
        https://bugs.webkit.org/show_bug.cgi?id=60313

        * fast/dom/Window/script-tests/window-property-descriptors.js: Added internals object to list of properties to skip.
        * fast/dom/Window/window-properties.html: Ditto.
        * fast/dom/script-tests/prototype-inheritance-2.js: Ditto.
        * fast/dom/script-tests/prototype-inheritance.js: Ditto.
        * fast/harness/internals-object-expected.txt: Added.
        * fast/harness/internals-object.html: Added.
        * platform/gtk/Skipped: Skipped the newly added test until platform supports window.internals.
        * platform/mac-wk2/Skipped: Ditto.
        * platform/qt/Skipped: Ditto.
        * platform/win/Skipped: Ditto.

2011-05-19  Ryosuke Niwa  <rniwa@webkit.org>

        Make Mac Leopard bot happy after r81176.

        * platform/mac-leopard/svg/W3C-SVG-1.1-SE/types-dom-05-b-expected.txt:

2011-05-19  Ryosuke Niwa  <rniwa@webkit.org>

        Reviewed by Darin Adler.

        REGRESSION (r83322): Many crashes in Mail.app in WebCore::Node::nodeIndex
        https://bugs.webkit.org/show_bug.cgi?id=61012

        Added a test to ensure WebKit does not crash when inserting a content immediately after
        a styled element inside a Mail blockquote. Regrettably the expected result is incorrect,
        but it matches the behavior of WebKit before r83322.

        * editing/pasteboard/5065605-expected.txt: Reintroduced redundant style spans.
        * editing/pasteboard/paste-text-011-expected.txt: Ditto.
        * platform/chromium-win/editing/pasteboard/paste-text-011-expected.txt: Ditto.
        * editing/pasteboard/paste-after-inline-style-element-expected.txt: Added.
        * editing/pasteboard/paste-after-inline-style-element.html: Added.

2011-05-19  Csaba Osztrogonác  <ossy@webkit.org>

        [Qt] Skip failing test after r86841.

        * platform/qt-arm/Skipped:

2011-05-19  Csaba Osztrogonác  <ossy@webkit.org>

        [Qt] Skip failing tests after r86834.

        * platform/qt-arm/Skipped:

2011-05-19  Philippe Normand  <pnormand@igalia.com>

        Unreviewed, skip 2 failing tests on GTK.

        * platform/gtk/Skipped: Skip http/tests/appcache/interrupted-update.html
        and http/tests/navigation/post-307-response.html

2011-05-19  Zsolt Fehér  <h490267@stud.u-szeged.hu>

        Reviewed by Csaba Osztrogonác.

        [Qt] Implement eventSender.scalePageBy
        https://bugs.webkit.org/show_bug.cgi?id=60015

        * platform/qt/Skipped: Unskip fast/transforms/selection-bounds-in-transformed-view.html.

2011-05-19  Csaba Osztrogonác  <ossy@webkit.org>

        [Qt] Skip failing tests after r86834.

        * platform/qt-mac/Skipped:
        * platform/qt-wk2/Skipped:

2011-05-18  Yury Semikhatsky  <yurys@chromium.org>

        Reviewed by Pavel Feldman.

        InjectedScriptSource.js - "Don't be eval()."
        https://bugs.webkit.org/show_bug.cgi?id=60800

        * inspector/console/console-eval-blocked-expected.txt: Added.
        * inspector/console/console-eval-blocked.html: Added.

2011-05-19  Chang Shu  <cshu@webkit.org>

        Reviewed by Csaba Osztrogonác.

        [Qt] Rebaseline editing/style tests that are working
        https://bugs.webkit.org/show_bug.cgi?id=61075

        Also based on digging of Zsolt Fehér.

        * platform/qt/Skipped:
        * platform/qt/editing/style/5046875-1-expected.png: Added.
        * platform/qt/editing/style/5046875-1-expected.txt:
        * platform/qt/editing/style/5046875-2-expected.png: Added.
        * platform/qt/editing/style/5046875-2-expected.txt:
        * platform/qt/editing/style/5065910-expected.png: Added.
        * platform/qt/editing/style/5065910-expected.txt:
        * platform/qt/editing/style/5084241-expected.png: Added.
        * platform/qt/editing/style/5084241-expected.txt:
        * platform/qt/editing/style/5279521-expected.png: Added.
        * platform/qt/editing/style/5279521-expected.txt:
        * platform/qt/editing/style/block-style-004-expected.png: Added.
        * platform/qt/editing/style/block-style-005-expected.png: Added.
        * platform/qt/editing/style/block-style-006-expected.png: Added.
        * platform/qt/editing/style/create-block-for-style-001-expected.png: Added.
        * platform/qt/editing/style/create-block-for-style-001-expected.txt:
        * platform/qt/editing/style/create-block-for-style-002-expected.png: Added.
        * platform/qt/editing/style/create-block-for-style-002-expected.txt:
        * platform/qt/editing/style/create-block-for-style-003-expected.png: Added.
        * platform/qt/editing/style/create-block-for-style-003-expected.txt:
        * platform/qt/editing/style/create-block-for-style-004-expected.png: Added.
        * platform/qt/editing/style/create-block-for-style-004-expected.txt:
        * platform/qt/editing/style/create-block-for-style-005-expected.png: Added.
        * platform/qt/editing/style/create-block-for-style-005-expected.txt:
        * platform/qt/editing/style/create-block-for-style-006-expected.png: Added.
        * platform/qt/editing/style/create-block-for-style-006-expected.txt:
        * platform/qt/editing/style/create-block-for-style-007-expected.png: Added.
        * platform/qt/editing/style/create-block-for-style-007-expected.txt:
        * platform/qt/editing/style/create-block-for-style-008-expected.png: Added.
        * platform/qt/editing/style/create-block-for-style-008-expected.txt:
        * platform/qt/editing/style/create-block-for-style-009-expected.png: Added.
        * platform/qt/editing/style/create-block-for-style-009-expected.txt:
        * platform/qt/editing/style/create-block-for-style-010-expected.png: Added.
        * platform/qt/editing/style/create-block-for-style-010-expected.txt:
        * platform/qt/editing/style/create-block-for-style-011-expected.png: Added.
        * platform/qt/editing/style/create-block-for-style-011-expected.txt:
        * platform/qt/editing/style/create-block-for-style-012-expected.png: Added.
        * platform/qt/editing/style/create-block-for-style-012-expected.txt:
        * platform/qt/editing/style/create-block-for-style-013-expected.png: Added.
        * platform/qt/editing/style/create-block-for-style-013-expected.txt:
        * platform/qt/editing/style/font-family-with-space-expected.png: Added.
        * platform/qt/editing/style/font-family-with-space-expected.txt:
        * platform/qt/editing/style/fontsize-1-expected.png: Added.
        * platform/qt/editing/style/non-inheritable-styles-expected.png: Added.
        * platform/qt/editing/style/non-inheritable-styles-expected.txt:
        * platform/qt/editing/style/relative-font-size-change-001-expected.png: Added.
        * platform/qt/editing/style/relative-font-size-change-001-expected.txt:
        * platform/qt/editing/style/relative-font-size-change-002-expected.png: Added.
        * platform/qt/editing/style/relative-font-size-change-002-expected.txt:
        * platform/qt/editing/style/relative-font-size-change-003-expected.png: Added.
        * platform/qt/editing/style/relative-font-size-change-003-expected.txt:
        * platform/qt/editing/style/relative-font-size-change-004-expected.png: Added.
        * platform/qt/editing/style/relative-font-size-change-004-expected.txt:
        * platform/qt/editing/style/smoosh-styles-001-expected.png: Added.
        * platform/qt/editing/style/smoosh-styles-001-expected.txt:
        * platform/qt/editing/style/smoosh-styles-003-expected.png: Added.
        * platform/qt/editing/style/smoosh-styles-003-expected.txt:
        * platform/qt/editing/style/style-3690704-fix-expected.png: Added.
        * platform/qt/editing/style/style-3998892-fix-expected.png: Added.
        * platform/qt/editing/style/style-3998892-fix-expected.txt:
        * platform/qt/editing/style/style-boundary-001-expected.png: Added.
        * platform/qt/editing/style/style-boundary-001-expected.txt:
        * platform/qt/editing/style/style-boundary-004-expected.png: Added.
        * platform/qt/editing/style/style-boundary-004-expected.txt:
        * platform/qt/editing/style/table-selection-expected.png: Added.
        * platform/qt/editing/style/table-selection-expected.txt:

2011-05-19  Philippe Normand  <pnormand@igalia.com>

        Unreviewed, skip failing GTK fullscreen test

        https://bugs.webkit.org/show_bug.cgi?id=61118

        * platform/gtk/Skipped: Skip fullscreen/full-screen-keyboard-enabled.html

2011-05-19  Kent Tamura  <tkent@chromium.org>

        Reviewed by Hajime Morita.

        tooLong validity should not be true for a value set by a script
        https://bugs.webkit.org/show_bug.cgi?id=60948

        Update existing tests for the new behavior.

        * fast/forms/ValidityState-tooLong-input-expected.txt:
        * fast/forms/ValidityState-tooLong-textarea-expected.txt:
        * fast/forms/resources/textarea-live-pseudo-selectors.js:
        * fast/forms/script-tests/ValidityState-tooLong-input.js:
        * fast/forms/script-tests/ValidityState-tooLong-textarea.js:

2011-05-19  Yuzo Fujishima  <yuzo@google.com>

        Unreviewed Chromium test expectation change.

        svg/dynamic-updates/SVGFEMorphologyElement-dom-radius-attr.html needs new reference image on Leopard.

        * platform/chromium-mac-leopard/svg/dynamic-updates/SVGFEMorphologyElement-dom-radius-attr-expected.png: Added.

2011-05-19  David Barr  <davidbarr@chromium.org>

        Reviewed by Simon Fraser.

        CSS3: We fail 'border radius sum of radii' test
        https://bugs.webkit.org/show_bug.cgi?id=38788

        * fast/css/border-radius-non-negative-expected.txt: Added.
        * fast/css/border-radius-non-negative.html: Added.
        * platform/mac/fast/css/border-radius-non-negative-expected.png: Added.

2011-05-19  Kenichi Ishibashi  <bashi@chromium.org>

        Reviewed by Kent Tamura.

        [Chromium] IME candidate window appears wrong position in an iframe
        https://bugs.webkit.org/show_bug.cgi?id=61023

        Added a test which ensures the IME candidate position is located
        at suitable position.

        * platform/chromium-mac/editing/input/ime-candidate-window-position-expected.txt: Added.
        * platform/chromium-mac/editing/input/ime-candidate-window-position.html: Added.
        * platform/chromium-mac/editing/resources/ime-candidate-window-position-iframe.html: Added.

2011-05-19  Emil A Eklund  <eae@chromium.org>

        Reviewed by Alexey Proskuryakov.

        REGRESSION (r80808): Multiple <select> - Selection reset to first element from multiple selected ones
        https://bugs.webkit.org/show_bug.cgi?id=60986

        * fast/dom/HTMLSelectElement/change-multiple-preserve-selection-expected.txt:
        * fast/dom/HTMLSelectElement/change-multiple-preserve-selection.html:

2011-05-19  Mihnea Ovidenie  <mihnea@adobe.com>

        Reviewed by Simon Fraser.

        Gradients not horizontal using 270deg with odd div width
        https://bugs.webkit.org/show_bug.cgi?id=60157
        
        When the angle of the linear gradient is 270, the endpoint should
        be computed in the same way as for 0, 90, 180 cases since tan(270)
        is undefined.

        * fast/gradients/css3-linear-right-angle-gradients-expected.txt: Added.
        * fast/gradients/css3-linear-right-angle-gradients.html: Added.
        * platform/mac/fast/gradients/css3-linear-right-angle-gradients-expected.png: Added.

2011-05-19  Yuzo Fujishima  <yuzo@google.com>

        Unreviewed Chromium test expectation change.

        svg/dynamic-updates/SVGFEMorphologyElement-dom-radius-attr.html needs new reference image on Snow Leopard.

        * platform/chromium-mac/svg/dynamic-updates/SVGFEMorphologyElement-dom-radius-attr-expected.png: Added.

2011-05-19  Nikolas Zimmermann  <nzimmermann@rim.com>

        Not reviewed.

        Update mac pixel test baseline, had marginal differences in the filter results and the text selection rectangles since a while.
        The baseline passes again on my 32bit and 64bit machine, using run-webkit-tests --tolerance 0.011 -p svg

        * platform/mac/svg/W3C-SVG-1.1/filters-color-01-b-expected.png:
        * platform/mac/svg/W3C-SVG-1.1/filters-comptran-01-b-expected.png:
        * platform/mac/svg/W3C-SVG-1.1/filters-morph-01-f-expected.png:
        * platform/mac/svg/W3C-SVG-1.1/filters-turb-01-f-expected.png:
        * platform/mac/svg/W3C-SVG-1.1/filters-turb-02-f-expected.png:
        * platform/mac/svg/W3C-SVG-1.1/text-tselect-02-f-expected.png:
        * platform/mac/svg/batik/filters/feTile-expected.png:
        * platform/mac/svg/custom/feComponentTransfer-Discrete-expected.png:
        * platform/mac/svg/custom/feComponentTransfer-Gamma-expected.png:
        * platform/mac/svg/custom/feComponentTransfer-Linear-expected.png:
        * platform/mac/svg/custom/feComponentTransfer-Table-expected.png:
        * platform/mac/svg/custom/foreign-object-skew-expected.png:
        * platform/mac/svg/dynamic-updates/SVGFEConvolveMatrixElement-dom-preserveAlpha-attr-expected.png:
        * platform/mac/svg/dynamic-updates/SVGFEConvolveMatrixElement-dom-targetX-attr-expected.png:
        * platform/mac/svg/dynamic-updates/SVGFEConvolveMatrixElement-dom-targetY-attr-expected.png:
        * platform/mac/svg/dynamic-updates/SVGFEConvolveMatrixElement-svgdom-edgeMode-prop-expected.png:
        * platform/mac/svg/dynamic-updates/SVGFEConvolveMatrixElement-svgdom-preserveAlpha-prop-expected.png:
        * platform/mac/svg/dynamic-updates/SVGFEConvolveMatrixElement-svgdom-targetX-prop-expected.png:
        * platform/mac/svg/dynamic-updates/SVGFEConvolveMatrixElement-svgdom-targetY-prop-expected.png:
        * platform/mac/svg/dynamic-updates/SVGFEImageElement-dom-preserveAspectRatio-attr-expected.png:
        * platform/mac/svg/dynamic-updates/SVGFEImageElement-svgdom-preserveAspectRatio-prop-expected.png:
        * platform/mac/svg/dynamic-updates/SVGFEMorphologyElement-dom-radius-attr-expected.png:
        * platform/mac/svg/dynamic-updates/SVGFETurbulenceElement-dom-baseFrequency-attr-expected.png:
        * platform/mac/svg/dynamic-updates/SVGFETurbulenceElement-dom-stitchTiles-attr-expected.png:
        * platform/mac/svg/dynamic-updates/SVGFETurbulenceElement-svgdom-stitchTiles-prop-expected.png:
        * platform/mac/svg/filters/feTile-expected.png:
        * platform/mac/svg/filters/filterRes-expected.png:
        * platform/mac/svg/filters/filterRes1-expected.png:
        * platform/mac/svg/filters/filterRes3-expected.png:
        * platform/mac/svg/filters/parent-children-with-same-filter-expected.png:
        * platform/mac/svg/filters/subRegion-one-effect-expected.png:
        * platform/mac/svg/filters/subRegion-two-effects-expected.png:
        * platform/mac/svg/text/select-textLength-spacing-stretch-4-expected.png:
        * platform/mac/svg/text/text-align-01-b-expected.png:
        * platform/mac/svg/text/text-align-02-b-expected.png:
        * platform/mac/svg/text/text-align-04-b-expected.png:
        * platform/mac/svg/text/text-align-05-b-expected.png:
        * platform/mac/svg/text/text-align-06-b-expected.png:
        * platform/mac/svg/text/text-altglyph-01-b-expected.png:
        * platform/mac/svg/text/text-deco-01-b-expected.png:
        * platform/mac/svg/text/text-fonts-01-t-expected.png:
        * platform/mac/svg/text/text-fonts-02-t-expected.png:
        * platform/mac/svg/text/text-intro-05-t-expected.png:
        * platform/mac/svg/text/text-path-01-b-expected.png:
        * platform/mac/svg/text/text-text-01-b-expected.png:
        * platform/mac/svg/text/text-text-03-b-expected.png:
        * platform/mac/svg/text/text-text-04-t-expected.png:
        * platform/mac/svg/text/text-text-05-t-expected.png:
        * platform/mac/svg/text/text-text-06-t-expected.png:
        * platform/mac/svg/text/text-text-07-t-expected.png:
        * platform/mac/svg/text/text-text-08-b-expected.png:
        * platform/mac/svg/text/text-tref-01-b-expected.png:
        * platform/mac/svg/text/text-tselect-01-b-expected.png:
        * platform/mac/svg/text/text-tselect-02-f-expected.png:
        * platform/mac/svg/text/text-tspan-01-b-expected.png:
        * platform/mac/svg/text/text-ws-01-t-expected.png:
        * platform/mac/svg/text/text-ws-02-t-expected.png:
        * platform/mac/svg/zoom/text/zoom-foreignObject-expected.png:

2011-05-18  Gabor Loki  <loki@webkit.org>

        Rubber-stamped by Csaba Osztrogonác.

        [Qt] Skip flaky timed out tests on ARM

        * platform/qt-arm/Skipped:

2011-05-18  Ryosuke Niwa  <rniwa@webkit.org>

        Yet another rebaseline after r81176.

        * platform/win/svg/W3C-SVG-1.1-SE/types-dom-05-b-expected.txt:

2011-05-18  Ryosuke Niwa  <rniwa@webkit.org>

        Reviewed by Kent Tamura.

        editing/pasteboard/paste-blockquote-into-blockquote-3.html should be a dump-as-markup test
        https://bugs.webkit.org/show_bug.cgi?id=61102

        Converted the test.

        * editing/pasteboard/paste-blockquote-into-blockquote-3-expected.txt: Added.
        * editing/pasteboard/paste-blockquote-into-blockquote-3.html:
        * platform/chromium-linux/editing/pasteboard/paste-blockquote-into-blockquote-3-expected.png: Removed.
        * platform/chromium-win/editing/pasteboard/paste-blockquote-into-blockquote-3-expected.png: Removed.
        * platform/chromium-win/editing/pasteboard/paste-blockquote-into-blockquote-3-expected.txt: Removed.
        * platform/gtk/editing/pasteboard/paste-blockquote-into-blockquote-3-expected.txt: Removed.
        * platform/mac-leopard/editing/pasteboard/paste-blockquote-into-blockquote-3-expected.png: Removed.
        * platform/mac/editing/pasteboard/paste-blockquote-into-blockquote-3-expected.png: Removed.
        * platform/mac/editing/pasteboard/paste-blockquote-into-blockquote-3-expected.txt: Removed.
        * platform/qt/editing/pasteboard/paste-blockquote-into-blockquote-3-expected.txt: Removed.

2011-05-18  Justin Schuh  <jschuh@chromium.org>

        Unreviewed.

        Chromium test expectations update.

        * platform/chromium/test_expectations.txt:

2011-05-18  Mark Pilgrim  <pilgrim@chromium.org>

        Reviewed by Tony Chang.

        IndexedDB put() should fail adding to object store that uses
        out-of-line keys and has no key generator and the key parameter
        was not provided
        https://bugs.webkit.org/show_bug.cgi?id=58609

        One new test and one fix to an existing test that relied on the old
        broken behavior.

        * storage/indexeddb/mozilla/key-requirements-put-no-key-expected.txt: Added.
        * storage/indexeddb/mozilla/key-requirements-put-no-key.html: Added.
        * storage/indexeddb/objectstore-autoincrement-expected.txt:
        * storage/indexeddb/objectstore-autoincrement.html:

2011-05-18  Siddharth Mathur  <siddharth.mathur@nokia.com>

        Reviewed by Oliver Hunt.

        [Qt] fast/encoding/yentest.html and yentest2.html fail
        https://bugs.webkit.org/show_bug.cgi?id=39852

        * platform/qt/Skipped: Unskip passing tests.

2011-05-18  Justin Schuh  <jschuh@chromium.org>

        Unreviewed.

        Chromium test expectations update for details element (Windows).
        * platform/chromium/test_expectations.txt:

2011-05-18  Justin Schuh  <jschuh@chromium.org>

        Unreviewed.

        Chromium expectations update for SVG tests.

        * platform/chromium-linux-x86/svg/W3C-SVG-1.1-SE: Added.
        * platform/chromium-linux-x86/svg/W3C-SVG-1.1-SE/painting-marker-07-f-expected.png: Added.
        * platform/chromium-linux-x86/svg/W3C-SVG-1.1-SE/painting-marker-07-f-expected.txt: Added.
        * platform/chromium-linux-x86/svg/W3C-SVG-1.1-SE/types-dom-05-b-expected.txt: Added.
        * platform/chromium-linux-x86/svg/dynamic-updates: Added.
        * platform/chromium-linux-x86/svg/dynamic-updates/SVGTextElement-svgdom-lengthAdjust-prop-expected.png: Added.
        * platform/chromium-linux-x86/svg/filters: Added.
        * platform/chromium-linux-x86/svg/filters/feBlend-invalid-mode-expected.txt: Added.
        * platform/chromium-linux/svg/W3C-SVG-1.1-SE/painting-marker-07-f-expected.png: Added.
        * platform/chromium-linux/svg/W3C-SVG-1.1-SE/painting-marker-07-f-expected.txt: Added.
        * platform/chromium-linux/svg/W3C-SVG-1.1-SE/types-dom-05-b-expected.txt:
        * platform/chromium-linux/svg/dynamic-updates/SVGTextElement-svgdom-lengthAdjust-prop-expected.png:
        * platform/chromium-linux/svg/filters/feBlend-invalid-mode-expected.txt: Added.
        * platform/chromium-mac-leopard/svg/W3C-SVG-1.1-SE/types-dom-05-b-expected.txt: Added.
        * platform/chromium-mac-leopard/svg/dynamic-updates/SVGTextElement-svgdom-lengthAdjust-prop-expected.png:
        * platform/chromium-mac/svg/filters/feBlend-invalid-mode-expected.txt: Added.
        * platform/chromium-win-vista/svg/W3C-SVG-1.1-SE: Added.
        * platform/chromium-win-vista/svg/W3C-SVG-1.1-SE/painting-marker-07-f-expected.png: Added.
        * platform/chromium-win-vista/svg/W3C-SVG-1.1-SE/painting-marker-07-f-expected.txt: Added.
        * platform/chromium-win-vista/svg/W3C-SVG-1.1-SE/types-dom-05-b-expected.txt: Added.
        * platform/chromium-win-vista/svg/dynamic-updates: Added.
        * platform/chromium-win-vista/svg/dynamic-updates/SVGTextElement-svgdom-lengthAdjust-prop-expected.png: Added.
        * platform/chromium-win-vista/svg/filters: Added.
        * platform/chromium-win-vista/svg/filters/feBlend-invalid-mode-expected.txt: Added.

2011-05-18  Yi Shen  <yi.4.shen@nokia.com>

        Reviewed by Andreas Kling.

        [Qt] Enterkey to go to Newline does not work in the text area(in HTML form)
        https://bugs.webkit.org/show_bug.cgi?id=33179

        Unskip the fast/events/onsearch-enter.html test.

        * platform/qt/Skipped:

2011-05-18  Rob Buis  <rbuis@rim.com>

        Reviewed by Nikolas Zimmermann.

        Marker test from ietestcenter fails
        https://bugs.webkit.org/show_bug.cgi?id=60721

        Test cases where display=none is set on <marker>, i.e. directly or through ancestor.

        * platform/mac/svg/W3C-SVG-1.1-SE/painting-marker-07-f-expected.png: Added.
        * platform/mac/svg/W3C-SVG-1.1-SE/painting-marker-07-f-expected.txt: Added.
        * platform/mac/svg/W3C-SVG-1.1-SE/types-dom-05-b-expected.txt:
        * platform/mac/svg/custom/painting-marker-07-f-inherit-expected.png: Added.
        * platform/mac/svg/custom/painting-marker-07-f-inherit-expected.txt: Added.
        * svg/W3C-SVG-1.1-SE/painting-marker-07-f.svg: Added.
        * svg/custom/painting-marker-07-f-inherit.svg: Added.

2011-05-18  Alexis Menard  <alexis.menard@openbossa.org>, Simon Hausmann  <simon.hausmann@nokia.com>

        Reviewed by Eric Carlson.

        MediaElements fails to load the data in some cases.
        https://bugs.webkit.org/show_bug.cgi?id=60760

        This test creates an hidden video element and make sure the loading works.

        * http/tests/media/media-can-load-when-hidden-expected.txt: Added.
        * http/tests/media/media-can-load-when-hidden.html: Added.

2011-05-18  Justin Schuh  <jschuh@chromium.org>

        Unreviewed.

        Fixing previous Chromium tests expectations update for details element.

        * platform/chromium/test_expectations.txt:

2011-05-18  Justin Schuh  <jschuh@chromium.org>

        Unreviewed.

        Another Chromium tests expectations update for details element.

        * platform/chromium/test_expectations.txt:

2011-05-18  Justin Schuh  <jschuh@chromium.org>

        Unreviewed.

        Chromium tests expectations update for details element.

        * platform/chromium/test_expectations.txt:

2011-05-18  Erik Arvidsson  <arv@chromium.org>

        Reviewed by Ojan Vafai.

        Expand layout test for testing the coords of a click on a label element
        https://bugs.webkit.org/show_bug.cgi?id=61080

        This expands the existing test to click on a label inside a scrolled element.

        * fast/events/simulated-click-coords-expected.txt:
        * fast/events/simulated-click-coords.html:

2011-05-18  Abhishek Arya  <inferno@chromium.org>

        Reviewed by Beth Dakin.

        Tests that we do not crash when prematurely calling removeChild,
        followed by destroy call on table caption.
        https://bugs.webkit.org/show_bug.cgi?id=61083

        * fast/table/table-captions-child-visible-crash-expected.txt: Added.
        * fast/table/table-captions-child-visible-crash.html: Added.

2011-05-18  Chang Shu  <cshu@webkit.org>

        Reviewed by Csaba Osztrogonác.

        editing/style/apply-through-end-of-document.html is supposed to be dumpAsText
        https://bugs.webkit.org/show_bug.cgi?id=61077

        * editing/style/apply-through-end-of-document-expected.txt:
        * editing/style/apply-through-end-of-document.html:
        * platform/chromium-linux/editing/style/apply-through-end-of-document-expected.png: Removed.
        * platform/chromium-win/editing/style/apply-through-end-of-document-expected.png: Removed.
        * platform/chromium-win/editing/style/apply-through-end-of-document-expected.txt: Removed.
        * platform/gtk/editing/style/apply-through-end-of-document-expected.txt: Removed.
        * platform/mac-leopard/editing/style/apply-through-end-of-document-expected.png: Removed.
        * platform/mac/editing/style/apply-through-end-of-document-expected.png: Removed.

2011-05-18  Erik Arvidsson  <arv@chromium.org>

        Reviewed by Ojan Vafai.

        event.clientX/clientY is 0/0 in a click generated through a label
        https://bugs.webkit.org/show_bug.cgi?id=56606

        This tests that clicking on a label for an input generates a click event on the input
        with the same coordinates as the original click.

        * fast/events/simulated-click-coords-expected.txt: Added.
        * fast/events/simulated-click-coords.html: Added.

2011-05-18  Rob Buis  <rbuis@rim.com>

        Reviewed by Nikolas Zimmermann.

        NULL deref when SVG elements have table styles 
        https://bugs.webkit.org/show_bug.cgi?id=45561

        * svg/custom/display-table-caption-foreignObject-expected.txt: Added.
        * svg/custom/display-table-caption-foreignObject.svg: Added.
        * svg/custom/display-table-caption-inherit-foreignObject-expected.txt: Added.
        * svg/custom/display-table-caption-inherit-foreignObject.xhtml: Added.
        * svg/custom/display-table-caption-inherit-text-expected.txt: Added.
        * svg/custom/display-table-caption-inherit-text.xhtml: Added.
        * svg/custom/display-table-caption-text-expected.txt: Added.
        * svg/custom/display-table-caption-text.svg: Added.

2011-05-18  Adam Roben  <aroben@apple.com>

        Skip a new test that fails due to unimplemented WTR features

        * platform/mac-wk2/Skipped: Added http/tests/loading/nested_bad_objects.php.

2011-05-18  Adam Roben  <aroben@apple.com>

        Remove mac-wk2 expected failure results for a plugins test that I fixed in r86456

        Fixes <http://webkit.org/b/57456> <rdar://problem/9209331>
        plugins/embed-prefers-plugins-for-images.html failing on SnowLeopard Intel Release (WebKit2
        Tests)

        * platform/mac-wk2/plugins/embed-prefers-plugins-for-images-expected.txt: Removed.
        * platform/win-wk2/plugins/embed-prefers-plugins-for-images-expected.txt: Removed. We don't
        need this extra passing result now that mac-wk2's failing result is gone.

2011-05-18  Pavel Feldman  <pfeldman@google.com>

        Reviewed by Yury Semikhatsky.

        Web Inspector: [REGRESSION] Completion while on a breakpoint is not working.
        https://bugs.webkit.org/show_bug.cgi?id=60811

        * inspector/debugger/debugger-completions-on-call-frame-expected.txt: Added.
        * inspector/debugger/debugger-completions-on-call-frame.html: Added.

2011-05-18  Nikolas Zimmermann  <nzimmermann@rim.com>

        Reviewed by Rob Buis.

        All animated SVG enum properties are now ints
        https://bugs.webkit.org/show_bug.cgi?id=10749

        Add tests for all elements using SVGAnimatedEnumeration in the SVG DOM API.

        * platform/mac/svg/dynamic-updates/SVGTextElement-svgdom-lengthAdjust-prop-expected.png: Update result, progression.
        * svg/dom/SVGAnimatedEnumeration-SVGClipPathElement-expected.txt: Added.
        * svg/dom/SVGAnimatedEnumeration-SVGClipPathElement.html: Added.
        * svg/dom/SVGAnimatedEnumeration-SVGComponentTransferFunctionElement-expected.txt: Added.
        * svg/dom/SVGAnimatedEnumeration-SVGComponentTransferFunctionElement.html: Added.
        * svg/dom/SVGAnimatedEnumeration-SVGFEBlendElement-expected.txt: Added.
        * svg/dom/SVGAnimatedEnumeration-SVGFEBlendElement.html: Added.
        * svg/dom/SVGAnimatedEnumeration-SVGFEColorMatrixElement-expected.txt: Added.
        * svg/dom/SVGAnimatedEnumeration-SVGFEColorMatrixElement.html: Added.
        * svg/dom/SVGAnimatedEnumeration-SVGFECompositeElement-expected.txt: Added.
        * svg/dom/SVGAnimatedEnumeration-SVGFECompositeElement.html: Added.
        * svg/dom/SVGAnimatedEnumeration-SVGFEConvolveMatrixElement-expected.txt: Added.
        * svg/dom/SVGAnimatedEnumeration-SVGFEConvolveMatrixElement.html: Added.
        * svg/dom/SVGAnimatedEnumeration-SVGFEDisplacementMapElement-expected.txt: Added.
        * svg/dom/SVGAnimatedEnumeration-SVGFEDisplacementMapElement.html: Added.
        * svg/dom/SVGAnimatedEnumeration-SVGFEMorphologyElement-expected.txt: Added.
        * svg/dom/SVGAnimatedEnumeration-SVGFEMorphologyElement.html: Added.
        * svg/dom/SVGAnimatedEnumeration-SVGFETurbulenceElement-expected.txt: Added.
        * svg/dom/SVGAnimatedEnumeration-SVGFETurbulenceElement.html: Added.
        * svg/dom/SVGAnimatedEnumeration-SVGFilterElement-expected.txt: Added.
        * svg/dom/SVGAnimatedEnumeration-SVGFilterElement.html: Added.
        * svg/dom/SVGAnimatedEnumeration-SVGGradientElement-expected.txt: Added.
        * svg/dom/SVGAnimatedEnumeration-SVGGradientElement.html: Added.
        * svg/dom/SVGAnimatedEnumeration-SVGMarkerElement-expected.txt: Added.
        * svg/dom/SVGAnimatedEnumeration-SVGMarkerElement.html: Added.
        * svg/dom/SVGAnimatedEnumeration-SVGMaskElement-expected.txt: Added.
        * svg/dom/SVGAnimatedEnumeration-SVGMaskElement.html: Added.
        * svg/dom/SVGAnimatedEnumeration-SVGPatternElement-expected.txt: Added.
        * svg/dom/SVGAnimatedEnumeration-SVGPatternElement.html: Added.
        * svg/dom/SVGAnimatedEnumeration-SVGTextContentElement-expected.txt: Added.
        * svg/dom/SVGAnimatedEnumeration-SVGTextContentElement.html: Added.
        * svg/dom/SVGAnimatedEnumeration-SVGTextPathElement-expected.txt: Added.
        * svg/dom/SVGAnimatedEnumeration-SVGTextPathElement.html: Added.
        * svg/dom/SVGAnimatedEnumeration-expected.txt:
        * svg/dom/script-tests/SVGAnimatedEnumeration-SVGClipPathElement.js: Added.
        * svg/dom/script-tests/SVGAnimatedEnumeration-SVGComponentTransferFunctionElement.js: Added.
        * svg/dom/script-tests/SVGAnimatedEnumeration-SVGFEBlendElement.js: Added.
        * svg/dom/script-tests/SVGAnimatedEnumeration-SVGFEColorMatrixElement.js: Added.
        * svg/dom/script-tests/SVGAnimatedEnumeration-SVGFECompositeElement.js: Added.
        * svg/dom/script-tests/SVGAnimatedEnumeration-SVGFEConvolveMatrixElement.js: Added.
        * svg/dom/script-tests/SVGAnimatedEnumeration-SVGFEDisplacementMapElement.js: Added.
        * svg/dom/script-tests/SVGAnimatedEnumeration-SVGFEMorphologyElement.js: Added.
        * svg/dom/script-tests/SVGAnimatedEnumeration-SVGFETurbulenceElement.js: Added.
        * svg/dom/script-tests/SVGAnimatedEnumeration-SVGFilterElement.js: Added.
        * svg/dom/script-tests/SVGAnimatedEnumeration-SVGGradientElement.js: Added.
        * svg/dom/script-tests/SVGAnimatedEnumeration-SVGMarkerElement.js: Added.
        * svg/dom/script-tests/SVGAnimatedEnumeration-SVGMaskElement.js: Added.
        * svg/dom/script-tests/SVGAnimatedEnumeration-SVGPatternElement.js: Added.
        * svg/dom/script-tests/SVGAnimatedEnumeration-SVGTextContentElement.js: Added.
        * svg/dom/script-tests/SVGAnimatedEnumeration-SVGTextPathElement.js: Added.
        * svg/dom/script-tests/SVGAnimatedEnumeration.js:
        * svg/dynamic-updates/SVGTextElement-svgdom-lengthAdjust-prop-expected.txt:
        * svg/dynamic-updates/script-tests/SVGTextElement-svgdom-lengthAdjust-prop.js:
        (executeTest):
        * svg/filters/feBlend-invalid-mode-expected.txt:
        * svg/filters/feComponentTransfer-style-crash-expected.txt:
        * svg/filters/feComponentTransfer-style-crash.xhtml:
        * svg/filters/feDisplacementMap-crash-test-expected.txt:
        * svg/filters/feDisplacementMap-crash-test.xhtml:

2011-05-18  Kinuko Yasuda  <kinuko@chromium.org>

        Reviewed by David Levin.

        Expose webkitStorageInfo.requestQuota() for Quota API if QUOTA flag is enabled
        https://bugs.webkit.org/show_bug.cgi?id=59681

        * platform/chromium/test_expectations.txt:
        * platform/gtk/Skipped:
        * platform/mac/Skipped:
        * platform/qt/Skipped:
        * platform/win/Skipped:
        * storage/script-tests/storageinfo-request-quota.js: Added.
        * storage/storageinfo-request-quota-expected.txt: Added.
        * storage/storageinfo-request-quota.html: Added.

2011-05-18  Csaba Osztrogonác  <ossy@webkit.org>

        [Qt][WK2] Skip two failing tests.

        * platform/qt-wk2/Skipped:

2011-05-18  Zoltan Horvath  <zoltan@webkit.org>

        Remove whitespace from the line of fast/forms/ValidityState-valueMissing-002.html

        * platform/mac-wk2/Skipped:

2011-05-18  Alexander Pavlov  <apavlov@chromium.org>

        Reviewed by Pavel Feldman.

        Web Inspector: model-based CSS editing does not update @import-ed stylesheet resources
        https://bugs.webkit.org/show_bug.cgi?id=60966

        * inspector/styles/resources/styles-new-API-1.css:
        * inspector/styles/resources/styles-new-API-2.css: Copied from LayoutTests/inspector/styles/resources/styles-new-API-1.css.
        (@page):
        (@page :first):
        (#absent-id):
        (@font-face):
        (body):
        * inspector/styles/styles-new-API-expected.txt:

2011-05-18  Zoltan Horvath  <zoltan@webkit.org>

        Reviewed by Csaba Osztrogonác.

        Add fast/forms/ValidityState-valueMissing-002.html to the Skipped list since
        eventSender.keyDown is unimplemented.

        * platform/mac-wk2/Skipped:

2011-05-18  Yuzo Fujishima  <yuzo@google.com>

        Unreviewed Chromium test expectation change.

        Removed duplcate entries added by r86749

        * platform/chromium/test_expectations.txt:

2011-05-18  Yuzo Fujishima  <yuzo@google.com>

        Unreviewed Chromium test expectation change.

        Since Chromium r85744, tests for <details> element pass on Mac and TEXT mismatch on Linux.

        * platform/chromium/test_expectations.txt:

2011-05-18  Abhishek Arya  <inferno@chromium.org>

        Reviewed by Dirk Schulze.

        Tests that we do not crash when trying to access a removed
        smil element in animated elements list.
        https://bugs.webkit.org/show_bug.cgi?id=60980

        * svg/animations/smil-element-not-removed-crash-expected.txt: Added.
        * svg/animations/smil-element-not-removed-crash.html: Added.

2011-05-18  Kent Tamura  <tkent@chromium.org>

        Reviewed by Hajime Morita.

        valueMissing validity for <select> is lame when selecting a value by a key operation
        https://bugs.webkit.org/show_bug.cgi?id=61021

        Add test cases for the bug.

        * fast/forms/ValidityState-valueMissing-002-expected.txt:
        * fast/forms/ValidityState-valueMissing-002.html:

2011-05-18  Kristóf Kosztyó  <Kosztyo.Kristof@stud.u-szeged.hu>

        Reviewed by Csaba Osztrogonác.

        [Qt] Implement layoutTestController.setValueForUser()
        https://bugs.webkit.org/show_bug.cgi?id=60956

        * platform/qt/Skipped: Unskip fast/forms/onchange-setvalueforuser.html

2011-05-16  Jeremy Noble  <jer.noble@apple.com>

        Reviewed by Darin Adler.

        Disable keyboard input (with exceptions) in full-screen mode.
        https://bugs.webkit.org/show_bug.cgi?id=60943

        * fullscreen/full-screen-keyboard-disabled-expected.txt: Added.
        * fullscreen/full-screen-keyboard-disabled.html: Added.
        * fullscreen/full-screen-keyboard-enabled-expected.txt: Added.
        * fullscreen/full-screen-keyboard-enabled.html: Added.

2011-05-17  Jeremy Noble  <jer.noble@apple.com>

        Reviewed by Darin Adler.

        Removing a full-screen element or ancestor from the DOM should trigger exiting full-screen mode.
        https://bugs.webkit.org/show_bug.cgi?id=60997

        Updated the following tests with the new expectation that removing an element from the DOM will trigger
        full screen mode to exit.

        * fullscreen/full-screen-remove-ancestor-expected.txt:
        * fullscreen/full-screen-remove-ancestor.html:
        * fullscreen/full-screen-remove-children-expected.txt:
        * fullscreen/full-screen-remove-children.html:
        * fullscreen/full-screen-remove-expected.txt:
        * fullscreen/full-screen-remove.html:

2011-05-17  Csaba Osztrogonác  <ossy@webkit.org>

        [Qt] Skip failing tests on minor Qt platforms.

        * platform/qt-arm/Skipped:
        * platform/qt-mac/Skipped:
        * platform/qt-wk2/Skipped:

2011-05-17  Yuzo Fujishima  <yuzo@google.com>

        Unreviewed Chromium test expectation change.

        The following tests now pass:
        fast/js/mozilla/eval/exhaustive-fun-normalcaller-direct-strictcode.html
        fast/js/mozilla/eval/exhaustive-fun-strictcaller-direct-normalcode.html
        fast/js/mozilla/eval/exhaustive-fun-strictcaller-direct-strictcode.html

        * platform/chromium/test_expectations.txt:

2011-05-17  Yuzo Fujishima  <yuzo@google.com>

        Unreviewed Chromium test expectation change.

        plugins/windowless_plugin_paint_test.html now passes on Linux, timeouts on Mac.

        * platform/chromium/test_expectations.txt:

2011-05-17  Yuta Kitamura  <yutak@chromium.org>

        Reviewed by Kent Tamura.

        WebSocket: Add CLOSING state
        https://bugs.webkit.org/show_bug.cgi?id=60878

        The value of WebSocket.CLOSED has been changed from 2 to 3, we have to update
        expected results of tests that dump WebSocket.readyState.

        * fast/dom/Window/window-properties-expected.txt:
        * http/tests/websocket/tests/bufferedAmount-after-close-expected.txt:
        * http/tests/websocket/tests/close-on-unload-reference-in-parent-expected.txt:
        * http/tests/websocket/tests/close-on-unload-reference-in-parent.html:
        * http/tests/websocket/tests/handshake-error-expected.txt:
        * http/tests/websocket/tests/script-tests/bufferedAmount-after-close.js:
        (ws.onclose):
        * http/tests/websocket/tests/script-tests/handshake-error.js:
        (ws.onclose):
        * http/tests/websocket/tests/send-after-close-on-unload-expected.txt:
        * http/tests/websocket/tests/send-after-close-on-unload.html:
        * http/tests/websocket/tests/simple-expected.txt:
        * platform/qt/fast/dom/Window/window-properties-expected.txt:

2011-05-17  Yuzo Fujishima  <yuzo@google.com>

        Unreviewed Chromium test expectation change.

        plugins/invalidate_rect.html now passes on Linux.

        * platform/chromium/test_expectations.txt:

2011-05-17  Geoffrey Garen  <ggaren@apple.com>

        Reviewed by Gavin Barraclough.

        Global object initialization is expensive
        https://bugs.webkit.org/show_bug.cgi?id=60933
        
        Added a few more expected failures, now that more code uses static hash
        tables.
        
        The fact that built-ins are not deletable, but should be, is covered by
        https://bugs.webkit.org/show_bug.cgi?id=61014

        * sputnik/Conformance/15_Native_Objects/15.6_Boolean/15.6.2/S15.6.2.1_A4-expected.txt:
        * sputnik/Conformance/15_Native_Objects/15.6_Boolean/15.6.3/15.6.3.1_Boolean.prototype/S15.6.3.1_A1-expected.txt:
        * sputnik/Conformance/15_Native_Objects/15.6_Boolean/15.6.4/S15.6.4_A1-expected.txt:
        * sputnik/Conformance/15_Native_Objects/15.7_Number/15.7.2/S15.7.2.1_A4-expected.txt:
        * sputnik/Conformance/15_Native_Objects/15.7_Number/15.7.3/15.7.3.1_Number.prototype/S15.7.3.1_A2_T1-expected.txt:
        * sputnik/Conformance/15_Native_Objects/15.7_Number/15.7.4/S15.7.4_A1-expected.txt:
        * sputnik/Conformance/15_Native_Objects/15.9_Date/15.9.4/15.9.4.2_Date.parse/S15.9.4.2_A1_T2-expected.txt:
        * sputnik/Conformance/15_Native_Objects/15.9_Date/15.9.4/15.9.4.3_Date.UTC/S15.9.4.3_A1_T2-expected.txt:

2011-05-17  Cris Neckar  <cdn@chromium.org>

        Reviewed by Adam Barth.

        Tests for crash when two nested image objects with invalid data are loaded.
        https://bugs.webkit.org/show_bug.cgi?id=61005

        * http/tests/loading/nested_bad_objects-expected.txt: Added.
        * http/tests/loading/nested_bad_objects.php: Added.

2011-05-17  Adam Barth  <abarth@webkit.org>

        Rubber-stamped by Simon Fraser.

        Remove empty directory.

        * fast/inspector: Removed.

2011-05-17  Ryosuke Niwa  <rniwa@webkit.org>

        Reviewed by Enrica Casucci.

        editing/pasteboard/paste-blockquote-2.html and paste-blockquote-3.html should be dump-as-markup tests
        https://bugs.webkit.org/show_bug.cgi?id=60998

        Converted the tests.

        * editing/pasteboard/paste-blockquote-2-expected.txt: Added.
        * editing/pasteboard/paste-blockquote-2.html:
        * editing/pasteboard/paste-blockquote-3-expected.txt: Added.
        * editing/pasteboard/paste-blockquote-3.html:
        * platform/chromium-linux/editing/pasteboard/paste-blockquote-2-expected.png: Removed.
        * platform/chromium-linux/editing/pasteboard/paste-blockquote-3-expected.png: Removed.
        * platform/chromium-mac-leopard/editing/pasteboard/paste-blockquote-2-expected.png: Removed.
        * platform/chromium-mac-leopard/editing/pasteboard/paste-blockquote-3-expected.png: Removed.
        * platform/chromium-mac/editing/pasteboard/paste-blockquote-2-expected.png: Removed.
        * platform/chromium-mac/editing/pasteboard/paste-blockquote-3-expected.png: Removed.
        * platform/chromium-win/editing/pasteboard/paste-blockquote-2-expected.png: Removed.
        * platform/chromium-win/editing/pasteboard/paste-blockquote-2-expected.txt: Removed.
        * platform/chromium-win/editing/pasteboard/paste-blockquote-3-expected.png: Removed.
        * platform/chromium-win/editing/pasteboard/paste-blockquote-3-expected.txt: Removed.
        * platform/gtk/editing/pasteboard/paste-blockquote-2-expected.txt: Removed.
        * platform/gtk/editing/pasteboard/paste-blockquote-3-expected.txt: Removed.
        * platform/mac-leopard/editing/pasteboard/paste-blockquote-3-expected.png: Removed.
        * platform/mac/editing/pasteboard/paste-blockquote-2-expected.png: Removed.
        * platform/mac/editing/pasteboard/paste-blockquote-2-expected.txt: Removed.
        * platform/mac/editing/pasteboard/paste-blockquote-3-expected.png: Removed.
        * platform/mac/editing/pasteboard/paste-blockquote-3-expected.txt: Removed.
        * platform/qt/editing/pasteboard/paste-blockquote-2-expected.txt: Removed.
        * platform/qt/editing/pasteboard/paste-blockquote-3-expected.txt: Removed.

2011-05-17  Ryosuke Niwa  <rniwa@webkit.org>

        Reviewed by Enrica Casucci.

        editing/pasteboard/paste-text-012.html should be a dump-as-markup test
        https://bugs.webkit.org/show_bug.cgi?id=60996

        Converted the test.

        * editing/pasteboard/paste-text-012-expected.txt: Added.
        * editing/pasteboard/paste-text-012.html:
        * platform/chromium-linux/editing/pasteboard/paste-text-012-expected.png: Removed.
        * platform/chromium-win/editing/pasteboard/paste-text-012-expected.png: Removed.
        * platform/chromium-win/editing/pasteboard/paste-text-012-expected.txt: Removed.
        * platform/gtk/editing/pasteboard/paste-text-012-expected.png: Removed.
        * platform/gtk/editing/pasteboard/paste-text-012-expected.txt: Removed.
        * platform/mac-leopard/editing/pasteboard/paste-text-012-expected.png: Removed.
        * platform/mac/editing/pasteboard/paste-text-012-expected.png: Removed.
        * platform/mac/editing/pasteboard/paste-text-012-expected.txt: Removed.
        * platform/qt/editing/pasteboard/paste-text-012-expected.txt: Removed.

2011-05-17  Robert Hogan  <robert@webkit.org>

        Rubber-stamped by Csaba Osztrogonac.

        [Gtk] plugins/get-url-notify-with-url-that-fails-to-load.html crashes on buildbot

        Skip on qt-mac

        http://bugs.webkit.org/show_bug.cgi?id=60838

        * platform/qt-mac/Skipped:

2011-05-17  Erik Arvidsson  <arv@chromium.org>

        Reviewed by Ryosuke Niwa.

        document.activeElement doesn't point to the focused frame
        https://bugs.webkit.org/show_bug.cgi?id=49509

        This tests that an iframe is the activeElement when focus is inside that frame.

        * fast/dom/HTMLDocument/active-element-frames-expected.txt: Added.
        * fast/dom/HTMLDocument/active-element-frames.html: Added.

2011-05-16  Robert Hogan  <robert@webkit.org>

        Reviewed by Kenneth Rohde Christiansen.

        plugins/invalidate_rect.html fails on linux ports

        https://bugs.webkit.org/show_bug.cgi?id=54051

       * platform/qt/Skipped: Unskip plugins/invalidate_rect.html
       * platform/qt-mac/Skipped: Skip plugins/invalidate_rect.html

2011-05-17  Tony Chang  <tony@chromium.org>

        Land linux 32 bit results.

        * platform/chromium-linux-x86/fast/repaint/moving-shadow-on-container-expected.txt: Added.
        * platform/chromium-linux-x86/svg/W3C-SVG-1.1/paths-data-03-f-expected.png: Added.
        * platform/chromium-linux-x86/svg/W3C-SVG-1.1/paths-data-03-f-expected.txt: Added.
        * platform/chromium-linux-x86/svg/W3C-SVG-1.1/paths-data-12-t-expected.png: Added.
        * platform/chromium-linux-x86/svg/W3C-SVG-1.1/paths-data-12-t-expected.txt: Added.
        * platform/chromium-linux-x86/svg/W3C-SVG-1.1/pservers-grad-13-b-expected.png: Added.
        * platform/chromium-linux-x86/svg/css/composite-shadow-example-expected.txt: Added.
        * platform/chromium-linux-x86/svg/css/composite-shadow-with-opacity-expected.txt: Added.
        * platform/chromium-linux-x86/svg/css/stars-with-shadow-expected.txt: Added.
        * platform/chromium-linux-x86/svg/custom/radial-gradient-with-outstanding-focalPoint-expected.png: Added.
        * platform/chromium-linux-x86/svg/custom/svg-curve-with-relative-cordinates-expected.png: Added.
        * platform/chromium-linux-x86/svg/custom/use-on-symbol-inside-pattern-expected.txt: Added.
        * platform/chromium-linux-x86/svg/hixie/perf/001-expected.png: Added.
        * platform/chromium-linux-x86/svg/hixie/perf/001-expected.txt: Added.
        * platform/chromium-linux-x86/svg/hixie/perf/002-expected.png: Added.
        * platform/chromium-linux-x86/svg/hixie/perf/002-expected.txt: Added.
        * platform/chromium/test_expectations.txt:

2011-05-17  Andrew Wilson  <atwilson@chromium.org>

        Unreviewed chromium test expectations update.

        * platform/chromium/test_expectations.txt:

2011-05-17  Yufeng Shen  <miletus@chromium.org>

        Reviewed by Darin Fisher.

        Make WebKit expose extra touch information
        https://bugs.webkit.org/show_bug.cgi?id=59030

        * fast/events/touch/document-create-touch-expected.txt:
        * fast/events/touch/script-tests/document-create-touch.js:

2011-05-17  Andreas Kling  <kling@webkit.org>

        Reviewed by Kenneth Rohde Christiansen.

        Area element doesn't update region when dynamically altered.
        https://bugs.webkit.org/show_bug.cgi?id=54636

        * fast/images/imagemap-dynamic-area-updates-expected.txt: Added.
        * fast/images/imagemap-dynamic-area-updates.html: Added.
        * fast/images/script-tests/imagemap-dynamic-area-updates.js: Added.
        (setArea):
        (checkForArea):

2011-05-09  Luiz Agostini  <luiz.agostini@openbossa.org>

        Reviewed by Kenneth Rohde Christiansen.

        [Qt] Redirection of HTTP POST (3xx) incorrectly includes original POST data
        https://bugs.webkit.org/show_bug.cgi?id=60440

        These new tests check that no POST content is sent to the new URL after receiving http
        status codes 301, 302 and 303, and checks that the POST content is sent to the new URL
        after receiving a 307 http status code.

        * http/tests/navigation/post-301-response-expected.txt: Added.
        * http/tests/navigation/post-301-response.html: Added.
        * http/tests/navigation/post-302-response-expected.txt: Added.
        * http/tests/navigation/post-302-response.html: Added.
        * http/tests/navigation/post-303-response-expected.txt: Added.
        * http/tests/navigation/post-303-response.html: Added.
        * http/tests/navigation/post-307-response-expected.txt: Added.
        * http/tests/navigation/post-307-response.html: Added.
        * http/tests/navigation/resources/redirected-post-request-contents.php: Added.
        * http/tests/navigation/resources/redirection-response.php: Added.

2011-05-17  Sakamuri Ramakrishna  <ramakrishna.sakamuri@nokia.com>

        Reviewed by Andreas Kling.

        [Qt] 4 of the skipped storage layout tests pass on Qt Linux- skip list to be modified
        https://bugs.webkit.org/show_bug.cgi?id=60715

        * platform/qt/Skipped:

2011-05-17  Anton Muhin  <antonm@chromium.org>

        Unreviewed.

        Improving test expectations.

        * platform/chromium/test_expectations.txt:

2011-05-17  Sam Magnuson  <smagnuson@netflix.com>

        Reviewed by Kenneth Rohde Christiansen.

        [Qt] Node that have both an opacity and a transform animation on them seem not to fire.
        https://bugs.webkit.org/show_bug.cgi?id=40841

        * compositing/animation/busy-indicator-no.png: Added.
        * compositing/animation/busy-indicator.html: Added.
        * compositing/animation/busy-indicator.png: Added.
        * compositing/animation/busy-indicator-expected.txt: Added.

2011-05-17  Andreas Kling  <kling@webkit.org>

        Bot-matching rebaseline after r86675.

        * platform/qt/tables/mozilla/bugs/bug92647-2-expected.txt:

2011-05-17  Igor Oliveira  <igor.oliveira@openbossa.org>

        Reviewed by Andreas Kling.

        [Qt] rebaseline skipped tests after r83871
        https://bugs.webkit.org/show_bug.cgi?id=60961

        Rebaseline tests after r83871 and remove them from Qt Skipped file.

        * platform/qt/Skipped:
        * platform/qt/http/tests/local/file-url-sent-as-referer-expected.txt:
        * platform/qt/http/tests/misc/error404-expected.txt:
        * platform/qt/http/tests/misc/frame-access-during-load-expected.txt:
        * platform/qt/http/tests/misc/generated-content-inside-table-expected.txt:
        * platform/qt/http/tests/misc/iframe404-expected.txt:
        * platform/qt/http/tests/misc/location-replace-crossdomain-expected.txt:
        * platform/qt/http/tests/uri/css-href-expected.txt:
        * platform/qt/tables/layering/paint-test-layering-1-expected.txt:
        * platform/qt/tables/layering/paint-test-layering-2-expected.txt:
        * platform/qt/tables/mozilla/bugs/adforce_imgis_com-expected.txt:
        * platform/qt/tables/mozilla/bugs/bug56201-expected.txt:
        * platform/qt/tables/mozilla/bugs/bug92647-2-expected.txt:
        * platform/qt/tables/mozilla/other/slashlogo-expected.txt:
        * platform/qt/tables/mozilla_expected_failures/bugs/bug23847-expected.txt:
        * platform/qt/transforms/2d/transform-fixed-container-expected.txt:
        * platform/qt/transitions/svg-text-shadow-transition-expected.txt:

2011-05-17  Jessie Berlin  <jberlin@apple.com>

        WebKit2 needs layoutTestController.overridePreference.
        https://bugs.webkit.org/show_bug.cgi?id=42197

        Add fast/images/animated-gif-restored-from-bfcache.html to the mac-wk2 Skipped list to get
        the bots green.

        * platform/mac-wk2/Skipped:

2011-05-17  Sheriff Bot  <webkit.review.bot@gmail.com>

        Unreviewed, rolling out r86660.
        http://trac.webkit.org/changeset/86660
        https://bugs.webkit.org/show_bug.cgi?id=60958

        broke search in console panel (Requested by podivilov on
        #webkit).

        * http/tests/inspector/change-iframe-src.html:
        * http/tests/inspector/console-resource-errors.html:
        * http/tests/inspector/inspector-test.js:
        (initialize_InspectorTest.InspectorTest.evaluateInConsole):
        * http/tests/inspector/network/network-size-chunked.html:
        * http/tests/inspector/network/network-size-sync.html:
        * http/tests/inspector/network/network-size.html:
        * http/tests/inspector/network/network-timing.html:
        * http/tests/inspector/resource-tree/resource-tree-frame-add.html:
        * http/tests/inspector/resource-tree/resource-tree-frame-navigate.html:
        * inspector/console/console-assert.html:
        * inspector/console/console-trace-in-eval.html:
        * inspector/console/console-trace.html:
        * inspector/console/console-uncaught-exception.html:
        * inspector/debugger/debugger-autocontinue-on-syntax-error.html:
        * inspector/styles/styles-iframe.html:
        * inspector/timeline/timeline-network-resource.html:
        * inspector/timeline/timeline-script-tag-1.html:
        * inspector/timeline/timeline-script-tag-2.html:

2011-05-12  Hans Wennborg  <hans@chromium.org>

        Reviewed by Steve Block.

        IndexedDB: Index population should ignore records without key for index
        https://bugs.webkit.org/show_bug.cgi?id=60697

        Test that we can create a new index for which not all current records
        have a key.

        * storage/indexeddb/index-basics-expected.txt:
        * storage/indexeddb/index-basics.html:

2011-05-17  Alexander Pavlov  <apavlov@chromium.org>

        Reviewed by Yury Semikhatsky.

        Web Inspector: Increment/decrement of very big CSS numeric values results in invalid CSS
        https://bugs.webkit.org/show_bug.cgi?id=60890

        * inspector/styles/up-down-numerics-and-colors-expected.txt:
        * inspector/styles/up-down-numerics-and-colors.html:

2011-05-17  Yuzo Fujishima  <yuzo@google.com>

        Unreviewed Chromium test expectation change.

        The following tests are flaky on Linux.
        fast/speech/input-appearance-numberandspeech.html
        fast/speech/input-appearance-searchandspeech.html
        fast/speech/input-appearance-speechbutton.html

        * platform/chromium/test_expectations.txt:

2011-05-17  Yuzo Fujishima  <yuzo@google.com>

        Unreviewed Chromium test expectation change.

        fast/js/mozilla/strict/eval-variable-environment.html now passes.

        * platform/chromium/test_expectations.txt:

2011-05-17  Pavel Podivilov  <podivilov@chromium.org>

        Reviewed by Yury Semikhatsky.

        Web Inspector: merge ConsoleView into ConsolePanel.
        https://bugs.webkit.org/show_bug.cgi?id=54670

        * http/tests/inspector/change-iframe-src.html:
        * http/tests/inspector/console-resource-errors.html:
        * http/tests/inspector/inspector-test.js:
        (initialize_InspectorTest.InspectorTest.evaluateInConsole):
        (initialize_InspectorTest.InspectorTest.waitUntilConsoleMessageAdded):
        * http/tests/inspector/network/network-size-chunked.html:
        * http/tests/inspector/network/network-size-sync.html:
        * http/tests/inspector/network/network-size.html:
        * http/tests/inspector/network/network-timing.html:
        * http/tests/inspector/resource-tree/resource-tree-frame-add.html:
        * http/tests/inspector/resource-tree/resource-tree-frame-navigate.html:
        * inspector/console/console-assert.html:
        * inspector/console/console-trace-in-eval.html:
        * inspector/console/console-trace.html:
        * inspector/console/console-uncaught-exception.html:
        * inspector/debugger/debugger-autocontinue-on-syntax-error.html:
        * inspector/styles/styles-iframe.html:
        * inspector/timeline/timeline-network-resource.html:
        * inspector/timeline/timeline-script-tag-1.html:
        * inspector/timeline/timeline-script-tag-2.html:

2011-05-16  Yuta Kitamura  <yutak@chromium.org>

        Reviewed by Kent Tamura.

        WebSocket: WebSocketHandshake prints a carriage return to console
        https://bugs.webkit.org/show_bug.cgi?id=60880

        * http/tests/websocket/tests/handshake-error-expected.txt:
        Remove a carriage return in the first line.

2011-05-16  Yuzo Fujishima  <yuzo@google.com>

        Unreviewed Chromium test expectation change.

        http/tests/appcache/interrupted-update.html is flaky on win, mac, and linux.

        * platform/chromium/test_expectations.txt:

2011-05-16  Yuzo Fujishima  <yuzo@google.com>

        Unreviewed Chromium test expectation change.

        svg/hixie/perf/00{1,2}.xml now pass on Linux.

        * platform/chromium/test_expectations.txt:

2011-05-16  Sheriff Bot  <webkit.review.bot@gmail.com>

        Unreviewed, rolling out r86648.
        http://trac.webkit.org/changeset/86648
        https://bugs.webkit.org/show_bug.cgi?id=60941

        media/controls-css-overload.html still failing on non-GPU
        tests (Requested by scherkus on #webkit).

        * platform/chromium/test_expectations.txt:

2011-05-16  Naoki Takano  <takano.naoki@gmail.com>

        Reviewed by Kent Tamura.

        HTML5 Number Spinbox displays a 0 in situations where a 0 is not between the min and max.
        https://bugs.webkit.org/show_bug.cgi?id=60871

        * fast/forms/input-stepup-stepdown-from-renderer-expected.txt: Added expected results.
        * fast/forms/script-tests/input-stepup-stepdown-from-renderer.js: Added test patterns when initial values are empty.

2011-05-16  Adam Barth  <abarth@webkit.org>

        Reviewed by Eric Seidel.

        Remove bogus ASSERT in Document::setCompatibilityMode
        https://bugs.webkit.org/show_bug.cgi?id=60935

        This test case triggers the ASSERT.

        * fast/parser/append-child-followed-by-document-write-expected.txt: Added.
        * fast/parser/append-child-followed-by-document-write.html: Added.

2011-05-16  Ian Henderson  <ianh@apple.com>

        Reviewed by Joseph Pecoraro.

        Page::goToItem doesn't work while loading is deferred
        https://bugs.webkit.org/show_bug.cgi?id=60412

        * loader/navigation-while-deferring-loads-expected.txt: Added.
        * loader/navigation-while-deferring-loads.html: Added.
        * platform/gtk/Skipped:
        * platform/qt/Skipped:
        * platform/win/Skipped:

2011-05-16  Andrew Scherkus  <scherkus@chromium.org>

        Unreviewed, updating expectation for media/controls-css-overload.html.

        * platform/chromium/test_expectations.txt:

2011-05-16  Andrew Scherkus  <scherkus@chromium.org>

        Unreviewed, checking in new baselines for media/video-canvas-alpha.html for chromium-gpu-{linux,win}.

        * platform/chromium-gpu-linux/media/video-canvas-alpha-expected.png:
        * platform/chromium-gpu-win/media/video-canvas-alpha-expected.png:
        * platform/chromium/test_expectations.txt:

2011-05-16  Andrew Scherkus  <scherkus@chromium.org>

        Unreviewed, un-skipping a few Chromium layout test expectations.

        * platform/chromium/test_expectations.txt:

2011-05-16  Adam Barth  <abarth@webkit.org>

        Attempt to fix baselines for xss-DENIED-set-opener.html.  This is too hard.

        * platform/chromium-linux/http/tests/security/aboutBlank/xss-DENIED-set-opener-expected.txt:
        * platform/chromium-win-vista/http/tests/security/aboutBlank/xss-DENIED-set-opener-expected.txt:

2011-05-16  Adam Barth  <abarth@webkit.org>

        Attempt to fix baselines for set-href-attribute-hash.html.  This is too hard.

        * platform/chromium-linux/fast/dom/HTMLAnchorElement/set-href-attribute-hash-expected.txt:
        * platform/chromium-win-vista/fast/dom/HTMLAnchorElement/set-href-attribute-hash-expected.txt:

2011-05-16  Andrew Wilson  <atwilson@chromium.org>

        Unreviewed chromium expectations changes to disable crashing tests.

        https://bugs.webkit.org/show_bug.cgi?id=60931

        * platform/chromium/test_expectations.txt:

2011-05-16  Andrew Scherkus  <scherkus@chromium.org>

        Unreviewed, marking media/video-transformed.html as passing on all platforms.

        * platform/chromium/test_expectations.txt:

2011-05-16  Andrew Scherkus  <scherkus@chromium.org>

        Unreviewed, rebaselining media/video-aspect-ratio.html for chromium-gpu-{linux,mac,win}.

        * platform/chromium-gpu-linux/media/video-aspect-ratio-expected.png: Added.
        * platform/chromium-gpu-mac/media/video-aspect-ratio-expected.png: Added.
        * platform/chromium-gpu-win/media/video-aspect-ratio-expected.png: Added.
        * platform/chromium/test_expectations.txt:

2011-05-16  Adam Barth  <abarth@webkit.org>

        Layout test file-URL-with-port-number.html fails on Mac and Linux
        http://code.google.com/p/chromium/issues/detail?id=10342

        The consensus is to not support this behavior unless there is a
        compelling compatibility reason.

        * platform/chromium/test_expectations.txt:

2011-05-16  Ryosuke Niwa  <rniwa@webkit.org>

        Reviewed by Enrica Casucci.

        editing/pasteboard/5075944-2.html and 5075944-3.html should be renamed and converted to dump-as-markup tests
        https://bugs.webkit.org/show_bug.cgi?id=60923

        Renamed pasteboard/5075944-2.html to pasteboard/preserve-underline-color.html and pasteboard/5075944-3.html to
        deleting/deleting-line-break-preserves-underline-color.html. Also converted them to dump-as-markup tests.

        * editing/deleting/deleting-line-break-preserves-underline-color-expected.txt: Added.
        * editing/deleting/deleting-line-break-preserves-underline-color.html: Copied from LayoutTests/editing/pasteboard/5075944-3.html.
        * editing/pasteboard/5075944-2.html: Removed.
        * editing/pasteboard/5075944-3.html: Removed.
        * editing/pasteboard/preserve-underline-color-expected.txt: Added.
        * editing/pasteboard/preserve-underline-color.html: Copied from LayoutTests/editing/pasteboard/5075944-2.html.
        * platform/chromium-linux/editing/pasteboard/5075944-2-expected.png: Removed.
        * platform/chromium-linux/editing/pasteboard/5075944-3-expected.png: Removed.
        * platform/chromium-win/editing/pasteboard/5075944-2-expected.png: Removed.
        * platform/chromium-win/editing/pasteboard/5075944-2-expected.txt: Removed.
        * platform/chromium-win/editing/pasteboard/5075944-3-expected.png: Removed.
        * platform/chromium-win/editing/pasteboard/5075944-3-expected.txt: Removed.
        * platform/gtk/editing/pasteboard/5075944-2-expected.png: Removed.
        * platform/gtk/editing/pasteboard/5075944-2-expected.txt: Removed.
        * platform/gtk/editing/pasteboard/5075944-3-expected.txt: Removed.
        * platform/mac-leopard/editing/pasteboard/5075944-2-expected.png: Removed.
        * platform/mac-leopard/editing/pasteboard/5075944-3-expected.png: Removed.
        * platform/mac/editing/pasteboard/5075944-2-expected.png: Removed.
        * platform/mac/editing/pasteboard/5075944-2-expected.txt: Removed.
        * platform/mac/editing/pasteboard/5075944-3-expected.png: Removed.
        * platform/mac/editing/pasteboard/5075944-3-expected.txt: Removed.
        * platform/qt-arm/Skipped:
        * platform/qt-mac/Skipped:
        * platform/qt/editing/pasteboard/5075944-2-expected.txt: Removed.
        * platform/qt/editing/pasteboard/5075944-3-expected.txt: Removed.

2011-05-16  Adam Barth  <abarth@webkit.org>

        Layout Test fast/dom/HTMLAnchorElement/set-href-attribute-hash.html is failing
        http://code.google.com/p/chromium/issues/detail?id=72428

        This test is passing, not failing.

        * platform/chromium/fast/dom/HTMLAnchorElement: Added.
        * platform/chromium/fast/dom/HTMLAnchorElement/set-href-attribute-hash-expected.txt: Added.
        * platform/chromium/test_expectations.txt:

2011-05-16  Adam Barth  <abarth@webkit.org>

        cross-frame-access-call.html fails after WebKit r74449
        http://code.google.com/p/chromium/issues/detail?id=67767

        These tests aren't really failing.  They just have different results
        because of interactions with the popup blocker.

        * platform/chromium/http/tests/security/aboutBlank: Added.
        * platform/chromium/http/tests/security/aboutBlank/xss-DENIED-set-opener-expected.txt: Added.
        * platform/chromium/http/tests/security/cross-frame-access-call-expected.txt:
        * platform/chromium/test_expectations.txt:

2011-05-16  Andrew Scherkus  <scherkus@chromium.org>

        Unreviewed, rebaselining media/video-zoom.html for chromium-gpu-{linux,mac}.

        * platform/chromium-gpu-linux/media/video-zoom-expected.png:
        * platform/chromium-gpu-mac/media/video-zoom-expected.png:
        * platform/chromium/test_expectations.txt:

2011-05-16  Andrew Scherkus  <scherkus@chromium.org>

        Unreviewed, removing baselines for media/media-document-audio-repaint.html as they're incorrect.

        * platform/chromium-linux/media/media-document-audio-repaint-expected.png: Removed.
        * platform/chromium-mac-leopard/media/media-document-audio-repaint-expected.png: Removed.
        * platform/chromium-mac/media/media-document-audio-repaint-expected.png: Removed.
        * platform/chromium-mac/media/media-document-audio-repaint-expected.txt: Removed.
        * platform/chromium-win/media/media-document-audio-repaint-expected.png: Removed.
        * platform/chromium-win/media/media-document-audio-repaint-expected.txt: Removed.
        * platform/chromium/test_expectations.txt:

2011-05-16  Robert Hogan  <robert@webkit.org>

        Reviewed by Csaba Osztrogonác.

        https://bugs.webkit.org/show_bug.cgi?id=59930

        Add plugins/object-embed-plugin-scripting.html to qt-mac Skipped list

        Note that nearly all plugin tests are currently skipped by qt-mac,
        so something may be missng from the buildbot.

        * platform/qt-mac/Skipped:

2011-05-16  Robert Hogan  <robert@webkit.org>

        Reviewed by Anders Carlsson.

        [Gtk] plugins/get-url-notify-with-url-that-fails-to-load.html crashes on buildbot

        https://bugs.webkit.org/show_bug.cgi?id=60838

        * platform/gtk/Skipped:
        * platform/qt/Skipped:

2011-05-16  Dan Bernstein  <mitz@apple.com>

        Re-added platform-specific result after r86599.

        * platform/mac-leopard/editing/text-iterator/findString-expected.txt: Copied from platform/mac-leopard/editing/text-iterator/findString-expected.txt.

2011-05-16  Ryosuke Niwa  <rniwa@webkit.org>

        Reviewed by Enrica Casucci.

        editing/deleting/5091898.html should be renamed and converted to a dump-as-markup test
        https://bugs.webkit.org/show_bug.cgi?id=60920

        Renamed 5091898.html to delete-line-break-before-underlined-content.html and converted it
        to a dump-as-markup test.

        * editing/deleting/5091898.html: Removed.
        * editing/deleting/delete-line-break-before-underlined-content-expected.txt: Added.
        * editing/deleting/delete-line-break-before-underlined-content.html: Copied from LayoutTests/editing/deleting/5091898.html.
        * platform/chromium-linux/editing/deleting/5091898-expected.png: Removed.
        * platform/chromium-win/editing/deleting/5091898-expected.png: Removed.
        * platform/chromium-win/editing/deleting/5091898-expected.txt: Removed.
        * platform/gtk/editing/deleting/5091898-expected.txt: Removed.
        * platform/mac-leopard/editing/deleting/5091898-expected.png: Removed.
        * platform/mac/editing/deleting/5091898-expected.png: Removed.
        * platform/mac/editing/deleting/5091898-expected.txt: Removed.
        * platform/mac/editing/style/5091898-expected.png: Removed.
        * platform/mac/editing/style/5091898-expected.txt: Removed.
        * platform/qt-arm/Skipped:
        * platform/qt-mac/Skipped:
        * platform/qt/editing/deleting/5091898-expected.png: Removed.
        * platform/qt/editing/deleting/5091898-expected.txt: Removed.

2011-05-16  Tony Chang  <tony@chromium.org>

        Move chromium-linux-x86_64 results into chromium-linux.  We're making
        x86_64 the default configuration for chromium-linux because that's
        what the devs build and use.

2011-05-16  Andrew Scherkus  <scherkus@chromium.org>

        Unreviewed, correcting bug number for a test expectation.

        * platform/chromium/test_expectations.txt:

2011-05-16  Andrew Scherkus  <scherkus@chromium.org>

        Unreviewed, de-duplicating media/video-zoom-controls.html expectations.

        * platform/chromium/test_expectations.txt:

2011-05-16  Dan Bernstein  <mitz@apple.com>

        Reviewed by Darin Adler.

        <rdar://problem/9446653> REGRESSION (r84750): Moving by word stops at apostrophe mid-word
        https://bugs.webkit.org/show_bug.cgi?id=60915

        * editing/text-iterator/findString-expected.txt:
        * editing/text-iterator/findString.html:

2011-05-16  Andrew Wilson  <atwilson@chromium.org>

        Unreviewed, rolling out r86589.
        http://trac.webkit.org/changeset/86589
        https://bugs.webkit.org/show_bug.cgi?id=54670

        Broke chromium inspector tests.

        * http/tests/inspector/inspector-test.js:
        (initialize_InspectorTest.InspectorTest.evaluateInConsole):
        * inspector/console/console-assert.html:
        * inspector/console/console-trace-in-eval.html:
        * inspector/console/console-trace.html:
        * inspector/console/console-uncaught-exception.html:
        * inspector/debugger/debugger-autocontinue-on-syntax-error.html:
        * inspector/styles/styles-iframe.html:
        * inspector/timeline/timeline-network-resource.html:
        * inspector/timeline/timeline-script-tag-1.html:
        * inspector/timeline/timeline-script-tag-2.html:

2011-05-16  Pavel Podivilov  <podivilov@chromium.org>

        Reviewed by Yury Semikhatsky.

        Web Inspector: merge ConsoleView into ConsolePanel.
        https://bugs.webkit.org/show_bug.cgi?id=54670

        * http/tests/inspector/inspector-test.js:
        (initialize_InspectorTest.InspectorTest.evaluateInConsole):
        (initialize_InspectorTest.InspectorTest.waitUntilConsoleMessageAdded):
        * inspector/console/console-assert.html:
        * inspector/console/console-trace-in-eval.html:
        * inspector/console/console-trace.html:
        * inspector/console/console-uncaught-exception.html:
        * inspector/debugger/debugger-autocontinue-on-syntax-error.html:
        * inspector/styles/styles-iframe.html:
        * inspector/timeline/timeline-network-resource.html:
        * inspector/timeline/timeline-script-tag-1.html:
        * inspector/timeline/timeline-script-tag-2.html:

2011-05-16  Balazs Kelemen  <kbalazs@webkit.org>

        Reviewed by Adam Roben.

        [WK2] Remove some passing tests from the mac-wk2 skipped list
        https://bugs.webkit.org/show_bug.cgi?id=60889

        * platform/mac-wk2/Skipped:

2011-05-16  Adam Barth  <abarth@webkit.org>

        Reviewed by Darin Adler.

        Remove disable-javascript-urls CSP directive
        https://bugs.webkit.org/show_bug.cgi?id=60874

        No need to test a feature that doesn't exist.

        * http/tests/security/contentSecurityPolicy/javascript-urls-blocked-expected.txt: Removed.
        * http/tests/security/contentSecurityPolicy/javascript-urls-blocked.html: Removed.

2011-05-16  Leandro Gracia Gil  <leandrogracia@chromium.org>

        Reviewed by Tony Gentilcore.

        Media Stream API: add local stream requests.
        https://bugs.webkit.org/show_bug.cgi?id=60177

        Re-enable the argument-types test as the navigator.getUserMedia options
        are now being parsed and raise the appropriate exceptions.

        * platform/chromium/test_expectations.txt:

2011-05-16  Mark Pilgrim  <pilgrim@chromium.org>

        Reviewed by Tony Chang.

        Port Mozilla's IndexedDB tests: cursors
        https://bugs.webkit.org/show_bug.cgi?id=60804

        This test creates an object store with a few records and exercises
        a variety of cursors going forward, backward, and over key ranges.
        It also updates records from the cursor and checks that the update
        stuck.

        * storage/indexeddb/mozilla/cursors-expected.txt: Added.
        * storage/indexeddb/mozilla/cursors.html: Added.

2011-05-16  Jessie Berlin  <jberlin@apple.com>

        Remove the failing mac-wk2 expected results for online-fallback-layering.html, since it now
        appears to be passing on the SL WK2 bots:
        http://build.webkit.org/results/SnowLeopard%20Intel%20Release%20(WebKit2%20Tests)/r86545%20(11698)/http/tests/appcache/online-fallback-layering-pretty-diff.html

        * platform/mac-wk2/http/tests/appcache/online-fallback-layering-expected.txt: Removed.

2011-05-16  Csaba Osztrogonác  <ossy@webkit.org>

        Unreviewed, skip failing tests.

        * platform/mac-wk2/Skipped: Add fast/forms/focus-with-display-block.html because of missing eventSender.keyDown implementation
        * platform/qt-wk2/Skipped: Add fast/js/array-sort-modifying-tostring.html to make WK2 bot green to be able to catch new regressions

2011-05-16  Pavel Feldman  <pfeldman@google.com>

        Not reviewed: fix inspector dom action test flake.

        * inspector/elements/edit-dom-actions.html:

2011-05-16  Adam Roben  <aroben@apple.com>

        Skip another new test that relies on parts of EventSender that WTR doesn't support

        * platform/mac-wk2/Skipped: Added fast/forms/focus-with-display-block.html.

2011-05-16  Adam Roben  <aroben@apple.com>

        Skip a new test that relies on parts of EventSender that WTR doesn't support

        * platform/mac-wk2/Skipped: Addd
        platform/mac/editing/pasteboard/drag-selections-to-contenteditable.html.

2011-05-16  Adam Roben  <aroben@apple.com>

        Update results for a new Mac dragging test

        This test has been failing since it was added in r86472. I don't know whether the old
        results are wrong or the test is actually showing a bug. <http://webkit.org/b/60882> tracks
        the failure.

        * platform/mac/editing/pasteboard/drag-selections-to-contenteditable-expected.txt:

2011-05-16  Pavel Feldman  <pfeldman@google.com>

        Not reviewed: simplify inspector dom actions test.

        * inspector/elements/edit-dom-actions.html:

2011-05-16  Alexander Pavlov  <apavlov@chromium.org>

        Reviewed by Pavel Feldman.

        Web Inspector: Fix SourceJavaScriptTokenizer keyword parsing
        https://bugs.webkit.org/show_bug.cgi?id=60773

        * inspector/syntax-highlight-javascript-expected.txt:
        * inspector/syntax-highlight-javascript.html:

2011-05-16  Robert Hogan  <robert@webkit.org>

        Reviewed by Yury Semikhatsky.

        [Qt] Fix crash in inspector/console/console-long-eval-crash.html
        https://bugs.webkit.org/show_bug.cgi?id=60858

        * platform/qt/Skipped:

2011-05-16  Gavin Barraclough  <barraclough@apple.com>

        Rubber stamped by Geoff Garen.

        https://bugs.webkit.org/show_bug.cgi?id=60866
        Evaluation order broken for empty alternatives in subpatterns

        Reverted https://bugs.webkit.org/show_bug.cgi?id=51395, and added
        test cases for /(|a)/ and /(a|)/, to test the evaluation order of
        subpattern matches with empty alternatives.

        * fast/regex/parentheses-expected.txt:
        * fast/regex/script-tests/parentheses.js:
        * fast/regex/script-tests/slow.js:
        * fast/regex/slow-expected.txt:

2011-05-16  Alejandro G. Castro  <alex@igalia.com>

        Skipped failing test, the fail already has a bug:

        [Qt][GTK] plugins/get-url-with-javascript-url.html fails
        https://bugs.webkit.org/show_bug.cgi?id=60834

        * platform/gtk/Skipped:

2011-05-15  Gavin Barraclough  <barraclough@apple.com>

        Reviewed by Geoff Garen & Michael Saboff.

        https://bugs.webkit.org/show_bug.cgi?id=60860
        Add layout tests for some regular expressions that used to crash the compiler.

        * fast/regex/parentheses-expected.txt:
        * fast/regex/script-tests/parentheses.js:

2011-05-06  Philippe Normand  <pnormand@igalia.com>

        Reviewed by Martin Robinson.

        media/video-volume-slider.html causes GTK 64 bit debug bot to time out
        https://bugs.webkit.org/show_bug.cgi?id=60055

        * media/video-volume-slider.html: Use the shadow DOM tree to
        locate the mute button and get its coordinates. This test is now
        more port-agnostic.

2011-05-12  Philippe Normand  <pnormand@igalia.com>

        Reviewed by Darin Adler.

        Move mediaControlsButtonCoordinates() out of video-test.js
        https://bugs.webkit.org/show_bug.cgi?id=60693

        Moved the function to a new js file called media-controls.js. Also
        made the function throw an exception if the button is not found
        and handle the exception in the various tests using the function.

        * media/audio-delete-while-step-button-clicked.html:
        * media/media-controls.js: Added.
        (mediaControlsButtonCoordinates):
        * media/video-controls-transformed.html:
        * media/video-controls-visible-audio-only.html:
        * media/video-controls-zoomed.html:
        * media/video-test.js:
        (isInTimeRanges):

2011-05-15  MORITA Hajime  <morrita@google.com>

        Unreviewed an expectation update.

        * platform/gtk/fast/html/details-add-child-2-expected.txt:

2011-05-15  Kenichi Ishibashi  <bashi@chromium.org>

        Reviewed by Kent Tamura.

        <output>, <meter> and <progress> elements with display:block can be focused if you try to tab to it
        https://bugs.webkit.org/show_bug.cgi?id=60602

        Add a test that ensures <output>, <meter> and <progress> are not focused.
        Add tabindex attributes to <progress> elements in progressbar.html so that these elements can be focused.

        * fast/forms/focus-with-display-block-expected.txt: Added.
        * fast/forms/focus-with-display-block.html: Added.
        * platform/mac/accessibility/progressbar.html: Added tabindex attributes to progress elements.

2011-05-12  MORITA Hajime  <morrita@google.com>

        Reviewed by Dimitri Glazkov.

        ShadowContentElement should affect the order of renderer children
        https://bugs.webkit.org/show_bug.cgi?id=59157

        * fast/html/details-add-details-child-1.html: Added.
        * fast/html/details-add-details-child-2.html: Added.
        * fast/html/details-nested-1.html: Added.
        * fast/html/details-nested-2.html: Added.
        * platform/chromium/test_expectations.txt:        
        * platform/gtk/fast/html/details-open2-expected.txt:
        * platform/mac/fast/html/details-add-child-2-expected.txt:
        * platform/mac/fast/html/details-add-details-child-1-expected.png: Added.
        * platform/mac/fast/html/details-add-details-child-1-expected.txt: Copied from LayoutTests/platform/mac/fast/html/details-add-child-2-expected.txt.
        * platform/mac/fast/html/details-add-details-child-2-expected.png: Added.
        * platform/mac/fast/html/details-add-details-child-2-expected.txt: Copied from LayoutTests/platform/mac/fast/html/details-add-child-2-expected.txt.
        * platform/mac/fast/html/details-add-summary-10-and-click-expected.png: Added.
        * platform/mac/fast/html/details-add-summary-10-expected.png: Added.
        * platform/mac/fast/html/details-nested-1-expected.png: Added.
        * platform/mac/fast/html/details-nested-1-expected.txt: Added.
        * platform/mac/fast/html/details-nested-2-expected.png: Added.
        * platform/mac/fast/html/details-nested-2-expected.txt: Added.
        * platform/mac/fast/html/details-open2-expected.txt:
        * platform/qt/fast/html/details-add-child-2-expected.txt:
        * platform/qt/fast/html/details-open2-expected.txt:

2011-05-15  Yuzo Fujishima  <yuzo@google.com>

        Unreviewed Chromium test expectation change.

        * platform/chromium-linux/svg/custom/small-rect-scale-expected.png: Added.
        * platform/chromium-win-vista/svg/custom/small-rect-scale-expected.png: Added.

2011-05-15  Dominic Cooney  <dominicc@chromium.org>

        Unreviewed. Remove expectation of gc-shadow.html flakiness.

        * platform/chromium/test_expectations.txt:

2011-05-15  Rob Buis  <rbuis@rim.com>

        Reviewed by Eric Seidel.

        REGERSSION(r26359-26570): Points in SVG kNN correlation model do not appear in ToT
        https://bugs.webkit.org/show_bug.cgi?id=16614

        Include testcase from the bug to prevent future regression (right now we pass both full testcase
        and this reduction).

        * platform/mac/svg/custom/small-rect-scale-expected.png: Added.
        * platform/mac/svg/custom/small-rect-scale-expected.txt: Added.
        * svg/custom/small-rect-scale.svg: Added.

2011-05-15  Csaba Osztrogonác  <ossy@webkit.org>

        Unreviewed typo fix after r86509.

        * platform/qt/Skipped:

2011-05-15  Ilya Tikhonovsky  <loislo@chromium.org>

        Unreviewed. Just skipping a test.

        * platform/qt/Skipped:
        inspector/console/console-long-eval-crash.html

2011-05-15  Eric Carlson  <eric.carlson@apple.com>

        Unreviewed, just skipping a test.

        New test fails on some of the SnowLeopard bots.

        * platform/mac-snowleopard/Skipped:

2011-05-15  Ilya Tikhonovsky  <loislo@chromium.org>

        Reviewed by Yury Semikhatsky.

        Web Inspector: chromium renderer crash at eval in console.

        https://bugs.webkit.org/show_bug.cgi?id=60616
        Renderer of inspected page is crashing when modal dialog
        has been opened via console eval and page is reloaded.

        * inspector/console/console-long-eval-crash-expected.txt: Added.
        * inspector/console/console-long-eval-crash.html: Added.
        * platform/gtk/Skipped:
        * platform/mac-wk2/Skipped:
        * platform/qt-wk2/Skipped:
        * platform/win/Skipped:

2011-05-15  Eric Carlson  <eric.carlson@apple.com>

        Reviewed by Maciej Stachowiak.

        Use new AVAssetReferenceRestrictions to prevent cross site media references
        https://bugs.webkit.org/show_bug.cgi?id=60791
        <rdar://problem/9374202>

        Add test for cross-domain QuickTime reference movie and test.

        * http/tests/media/resources/cross-site-reference.mov: Added.
        * http/tests/media/video-cross-site-expected.txt: Added.
        * http/tests/media/video-cross-site.html: Added.
        * platform/chromium/test_expectations.txt: Skipped, QuickTime reference movies not supported.
        * platform/gtk/Skipped: Ditto.

2011-05-15  Sheriff Bot  <webkit.review.bot@gmail.com>

        Unreviewed, rolling out r86504.
        http://trac.webkit.org/changeset/86504
        https://bugs.webkit.org/show_bug.cgi?id=60853

        "Broke Qt EventSender in editing/selection tests" (Requested
        by mwenge on #webkit).

        * platform/qt/Skipped:
        * platform/qt/http/tests/plugins/plugin-document-has-focus-expected.txt: Removed.

2011-05-12  Robert Hogan  <robert@webkit.org>

        Reviewed by Benjamin Poulain.

        [Qt] fix http/tests/plugins/plugin-document-has-focus.html

        For some reason the platform-independent expected result has
        no newline at the end of the file. The unix test plugin also
        reports the event from a different line. These are harmless
        differences, so create platform-specific result.

        Note that nearly every platform skips this test at the moment.

        https://bugs.webkit.org/show_bug.cgi?id=60722

        * platform/qt/Skipped:
        * platform/qt/http/tests/plugins/plugin-document-has-focus-expected.txt: Added.

2011-05-14  Abhishek Arya  <inferno@chromium.org>

        Reviewed by Dan Bernstein.

        Tests that we do not crash when trying to parse an invalid font family
        value of 'inherit' or 'initial' in a font face rule.
        https://bugs.webkit.org/show_bug.cgi?id=60837

        * fast/css/invalid-font-family-in-font-face-crash-expected.txt: Added.
        * fast/css/invalid-font-family-in-font-face-crash.html: Added.

2011-05-14  Andrew Wilson  <atwilson@chromium.org>

        Unreviewed chromium expectations change.

        * platform/chromium/test_expectations.txt:

2011-05-14  Anders Carlsson  <andersca@apple.com>

        
        * platform/qt/Skipped:
        Add plugins/get-url-notify-with-url-that-fails-to-load.html to the skipped list.

2011-05-14  Jeremy Noble  <jer.noble@apple.com>

        Reviewed by Darin Adler.

        Exiting full screen causes <video> element inline controls to become visible
        https://bugs.webkit.org/show_bug.cgi?id=60142

        * fullscreen/video-controls-override-expected.txt: Added.
        * fullscreen/video-controls-override.html: Added.

2011-05-14  Anders Carlsson  <andersca@apple.com>

        Reviewed by Kevin Decker.

        NPP_URLNotify is not called if a URL passed to NPN_GetURLNotify fails to load
        https://bugs.webkit.org/show_bug.cgi?id=60823
        <rdar://problem/9430386>

        Add test.

        * platform/gtk/Skipped:
        Add test to Skipped list since it apparently crashes.

        * plugins/get-url-notify-with-url-that-fails-to-load-expected.txt: Added.
        * plugins/get-url-notify-with-url-that-fails-to-load.html: Added.

2011-05-14  Csaba Osztrogonác  <ossy@webkit.org>

        [Qt]fast/events/remove-target-in-mouseup* tests fail
        https://bugs.webkit.org/show_bug.cgi?id=60833

        [Qt][GTK] plugins/get-url-with-javascript-url.html fails
        https://bugs.webkit.org/show_bug.cgi?id=60834

        * platform/qt/Skipped: Add failing tests.

2011-05-14  Sheriff Bot  <webkit.review.bot@gmail.com>

        Unreviewed, rolling out r86476.
        http://trac.webkit.org/changeset/86476
        https://bugs.webkit.org/show_bug.cgi?id=60832

        It made plugins/get-url-notify-with-url-that-fails-to-
        load.html crash on GTK (Requested by Ossy on #webkit).

        * plugins/get-url-notify-with-url-that-fails-to-load-expected.txt: Removed.
        * plugins/get-url-notify-with-url-that-fails-to-load.html: Removed.

2011-05-13  Alexey Proskuryakov  <ap@apple.com>

        Reviewed by Darin Adler.

        HTML5 Application Cache Update Failures on Page Refresh
        https://bugs.webkit.org/show_bug.cgi?id=60598
        <rdar://problem/9418639>

        * http/tests/appcache/interrupted-update-expected.txt: Added.
        * http/tests/appcache/interrupted-update.html: Added.
        * http/tests/appcache/resources/interrupted-update.manifest: Added.

        * http/tests/appcache/main-resource-redirect.html:
        * http/tests/appcache/non-html.xhtml:
        Now that we dispatch an error even when aborting a load due to navigation, error event
        handler was getting called after notifyDone().

2011-05-13  Anders Carlsson  <andersca@apple.com>

        Reviewed by Sam Weinig.

        NPP_URLNotify is not called if a URL passed to NPN_GetURLNotify fails to load
        https://bugs.webkit.org/show_bug.cgi?id=60823
        <rdar://problem/9430386>

        Add test.

        * plugins/get-url-notify-with-url-that-fails-to-load-expected.txt: Added.
        * plugins/get-url-notify-with-url-that-fails-to-load.html: Added.

2011-05-13  Andrew Wilson  <atwilson@chromium.org>

        Disable failing test on chromium. Unreviewed.

        * platform/chromium/test_expectations.txt:

2011-05-13  Daniel Cheng  <dcheng@chromium.org>

        Reviewed by Tony Chang.

        Improve drag start logic
        https://bugs.webkit.org/show_bug.cgi?id=59409

        Add a new test to test drag start edge cases on Mac (because of a non-zero text drag delay)
        as well as rebase an existing test.

        * fast/css/user-drag-none.html: Text nodes are no longer draggable.
        * platform/mac/editing/pasteboard/drag-selections-to-contenteditable-expected.txt: Added.
        * platform/mac/editing/pasteboard/drag-selections-to-contenteditable.html: Added.

2011-05-13  Anders Carlsson  <andersca@apple.com>

        Reviewed by Sam Weinig.

        NPN_GetURL with a javascript: URL doesn't send back the result in the stream
        https://bugs.webkit.org/show_bug.cgi?id=60810

        Add a test that calls NPN_GetURL on a javascript: URL and checks that it gets back the expected result.

        * plugins/get-url-with-javascript-url-expected.txt: Added.
        * plugins/get-url-with-javascript-url.html: Added.

2011-05-13  Mark Pilgrim  <pilgrim@chromium.org>

        Reviewed by Tony Chang.

        Port Mozilla's IndexedDB tests: remove objectstore
        https://bugs.webkit.org/show_bug.cgi?id=60768

        This test creates an objectstore, populates it with 100 records,
        deletes the objectstore, and checks that the objectStoreNames array
        is updated properly at each step.

        * storage/indexeddb/mozilla/remove-objectstore-expected.txt: Added.
        * storage/indexeddb/mozilla/remove-objectstore.html: Added.

2011-05-13  Sheriff Bot  <webkit.review.bot@gmail.com>

        Unreviewed, rolling out r86447.
        http://trac.webkit.org/changeset/86447
        https://bugs.webkit.org/show_bug.cgi?id=60809

        "Broke some uses of EventSender object on Qt" (Requested by
        mwenge on #webkit).

        * platform/qt/Skipped:
        * platform/qt/http/tests/plugins/plugin-document-has-focus-expected.txt: Removed.

2011-05-13  Adam Barth  <abarth@webkit.org>

        Reviewed by Eric Seidel.

        iframe sandbox doesn't properly block popups
        https://bugs.webkit.org/show_bug.cgi?id=60784

        Test that we block popup windows from inside sandbox.

        * http/tests/security/no-popup-from-sandbox-expected.txt: Added.
        * http/tests/security/no-popup-from-sandbox-top-expected.txt: Added.
        * http/tests/security/no-popup-from-sandbox-top.html: Added.
        * http/tests/security/no-popup-from-sandbox.html: Added.

2011-05-13  Ryosuke Niwa  <rniwa@webkit.org>

        Reviewed by Darin Adler.

        click event shouldn't fire when the target is ever removed in mouseup
        https://bugs.webkit.org/show_bug.cgi?id=60600

        Added tests to ensure WebKit does not fire click event when the target node
        is removed in mouseup event.

        * fast/events/remove-target-in-mouseup-deep-expected.txt: Added.
        * fast/events/remove-target-in-mouseup-deep.html: Added.
        * fast/events/remove-target-in-mouseup-expected.txt: Added.
        * fast/events/remove-target-in-mouseup-insertback-expected.txt: Added.
        * fast/events/remove-target-in-mouseup-insertback.html: Added.
        * fast/events/remove-target-in-mouseup-twice-expected.txt: Added.
        * fast/events/remove-target-in-mouseup-twice.html: Added.
        * fast/events/remove-target-in-mouseup.html: Added.

2011-05-13  Adam Barth  <abarth@webkit.org>

        Reviewed by Eric Seidel.

        indexedDB is visible inside iframe sandbox
        https://bugs.webkit.org/show_bug.cgi?id=60785

        * http/tests/security/no-indexeddb-from-sandbox-expected.txt: Added.
        * http/tests/security/no-indexeddb-from-sandbox.html: Added.

2011-05-13  Mark Pilgrim  <pilgrim@chromium.org>

        Reviewed by Tony Chang.

        Port Mozilla's IndexedDB tests: indexes with keys and key ranges
        https://bugs.webkit.org/show_bug.cgi?id=60733

        This megatest creates an object store with several rows of data,
        creates indexes on each key, then iterates each index in a variety
        of ways (keys, key ranges, etc).

        * storage/indexeddb/mozilla/indexes-expected.txt: Added.
        * storage/indexeddb/mozilla/indexes.html: Added.

2011-05-13  Nat Duca  <nduca@chromium.org>

        Reviewed by James Robinson.

        [chromium] compositing tests are failing
        https://bugs.webkit.org/show_bug.cgi?id=60738

        Remove supression for previously failing compositor tests.

        * platform/chromium/test_expectations.txt:

2011-05-13  Andrew Wilson  <atwilson@chromium.org>

        Removed chromium border-fit-lines.html suppression as it seems to pass now. Unreviewed.


        * platform/chromium/test_expectations.txt:

2011-05-13  Andrew Wilson  <atwilson@chromium.org>

        Suppress crasher in chromium. Unreviewed.

        * platform/chromium/test_expectations.txt:

2011-05-13  Abhishek Arya  <inferno@chromium.org>

        Reviewed by Dave Hyatt.

        Tests that we do not crash when trying to access a deleted float.
        https://bugs.webkit.org/show_bug.cgi?id=60780

        * fast/block/float/float-not-removed-crash-expected.txt: Added.
        * fast/block/float/float-not-removed-crash.html: Added.

2011-05-13  Robert Hogan  <robert@webkit.org>

        Reviewed by Benjamin Poulain.

        [Qt] fix http/tests/plugins/plugin-document-has-focus.html

        For some reason the platform-independent expected result has
        no newline at the end of the file. The unix test plugin also
        reports the event from a different line. These are harmless
        differences, so create platform-specific result.

        Note that nearly every platform skips this test at the moment.

        https://bugs.webkit.org/show_bug.cgi?id=60722

        * platform/qt/Skipped:
        * platform/qt/http/tests/plugins/plugin-document-has-focus-expected.txt: Added.

2011-05-05  Pavel Podivilov  <podivilov@chromium.org>

        Reviewed by Yury Semikhatsky.

        Web Inspector: fix source mapping for formatted scripts.
        https://bugs.webkit.org/show_bug.cgi?id=60263

        * inspector/debugger/resources/obfuscated.js:
        (formatted1):
        (formatted2):
        * inspector/debugger/script-formatter.html:

2011-05-13  Adam Roben  <aroben@apple.com>

        Add a test for windowed plugins inside iframes inside scrolled overflow areas

        Part of the test for <http://webkit.org/b/60194> <rdar://problem/9383760> REGRESSION
        (r79167): Windowed plugins in Google Reader don't move when the article list is scrolled

        Reviewed by Dan Bernstein.

        * platform/win/plugins/iframe-inside-overflow-expected.txt: Added.
        * platform/win/plugins/iframe-inside-overflow.html: Added.
        (loaded): Scrolls the div and tells the plugin to start its test (which will cause its
        window rect to be logged).
        * platform/win/plugins/resources/dump-window-rect-iframe.html: Added.

2011-05-02  Robert Hogan  <robert@webkit.org>

        Reviewed by Eric Seidel.

        Make fast/dom/object-embed-plugin-scripting.html compatible with non-Mac ports

        https://bugs.webkit.org/show_bug.cgi?id=59930

        * fast/dom/resources/articles.m4a: Removed.
        * platform/chromium/test_expectations.txt: Unskip object-embed-plugin-scripting.html on Linux
        * platform/qt/Skipped: Unskip object-embed-plugin-scripting.html
        * plugins/object-embed-plugin-scripting-expected.txt: Renamed from LayoutTests/fast/dom/object-embed-plugin-scripting-expected.txt.
        * plugins/object-embed-plugin-scripting.html: Renamed from LayoutTests/fast/dom/object-embed-plugin-scripting.html.
        * plugins/resources/apple.gif: Added.

2011-05-13  Steve VanDeBogart  <vandebo@chromium.org>

        Unreviewed.

        Update expectations for GPU tests that use shadows after fix (Skia rev 1297).
        https://bugs.webkit.org/show_bug.cgi?id=60742

        * platform/chromium/test_expectations.txt:

2011-05-13  Csaba Osztrogonác  <ossy@webkit.org>

        [Qt] Unreviewed fix after r86357, r86374, r86376. Skip failing tests.

        * platform/qt-wk2/Skipped: Add 4 failing tests.


2011-05-13  Csaba Osztrogonác  <ossy@webkit.org>

        [Qt] Unreviewed fix after r86357, r86374, r86376. Skip failing tests.

        * platform/qt-wk2/Skipped:

2011-05-13  Csaba Osztrogonác  <ossy@webkit.org>

        [Qt] Unreviewed fix after r86357, r86374, r86376. Skip failing tests.

        * platform/qt-arm/Skipped:
        * platform/qt-mac/Skipped:

2011-05-12  Anton Muhin  <antonnm@chromium.org>

        Unreviewed.

        Rebaselining tests under r86417.

2011-05-05  Hans Wennborg  <hans@chromium.org>

        Reviewed by Steve Block.

        IndexedDB: Transaction rollback prevented by open SQLite statement
        https://bugs.webkit.org/show_bug.cgi?id=60032

        Add test for veryfing that transaction roll-back works, even with a
        previously opened cursor still around.

        * storage/indexeddb/transaction-rollback-expected.txt: Added.
        * storage/indexeddb/transaction-rollback.html: Added.

2011-05-13  Sergio Villar Senin  <svillar@igalia.com>

        Unreviewed, new GTK+ test expectations after r86352.

        * platform/gtk/svg/custom/stroke-opacity-update-expected.png: Added.
        * platform/gtk/svg/custom/stroke-opacity-update-expected.txt: Added.

2011-05-13  Sergio Villar Senin  <svillar@igalia.com>

        Unreviewed, new GTK+ test expectations.

        * platform/gtk/fast/borders/outline-alpha-block-expected.png:
        * platform/gtk/fast/borders/outline-alpha-block-expected.txt:
        * platform/gtk/fast/borders/outline-alpha-inline-expected.png:
        * platform/gtk/fast/borders/outline-alpha-inline-expected.txt:
        * platform/gtk/svg/custom/fill-opacity-update-expected.png:
        * platform/gtk/svg/custom/fill-opacity-update-expected.txt:

2011-05-13  Alexey Proskuryakov  <ap@apple.com>

        Unreviewed test changes.

        Web Inspector: Show Error Messages for Application Cache Errors
        https://bugs.webkit.org/show_bug.cgi?id=41642

        * http/tests/appcache/404-resource-expected.txt:
        * http/tests/appcache/manifest-redirect-expected.txt:
        * http/tests/appcache/origin-quota-expected.txt:
        * http/tests/appcache/resource-redirect-2-expected.txt:
        * http/tests/appcache/resource-redirect-expected.txt:
        * http/tests/appcache/wrong-content-type-expected.txt:
        * http/tests/appcache/wrong-signature-2-expected.txt:
        * http/tests/appcache/wrong-signature-expected.txt:

2011-05-12  Ben Wells  <benwells@chromium.org>

        Reviewed by Simon Fraser.

        RGBA colors in outlines show overpainting at the corners
        https://bugs.webkit.org/show_bug.cgi?id=58999

        Converted the new tests to be text tests with pixel results
        (using dumpAsText(true)).
        Updated test_expectations comments to be more helpful and accurate and split
        new expectations into two groups for skia / chromium-mac as chromium-mac can be
        rebaselined now.

        * fast/borders/outline-alpha-block-expected.txt: Added.
        * fast/borders/outline-alpha-block.html:
        * fast/borders/outline-alpha-inline-expected.txt: Added.
        * fast/borders/outline-alpha-inline.html:
        * platform/chromium/test_expectations.txt:
        * platform/mac/fast/borders/outline-alpha-block-expected.txt: Removed.
        * platform/mac/fast/borders/outline-alpha-inline-expected.txt: Removed.

2011-05-12  David Grogan  <dgrogan@chromium.org>

        Reviewed by Darin Adler.

        make layout tests in storage/domstorage/events more deterministic
        https://bugs.webkit.org/show_bug.cgi?id=60299

        Instead of counting the number of storage events fired between two
        setTimeout(0) events, specify the number of events to wait for and wait up to
        1 second for them.

        * storage/domstorage/events/resources/eventTestHarness.js:
        (runAfterNStorageEvents):
        (countStorageEvents.onTimeout):
        (countStorageEvents):
        (testStorages.allDone):
        * storage/domstorage/events/script-tests/basic-body-attribute.js:
        (step1):
        (step2):
        (step3):
        (step4):
        (step5):
        * storage/domstorage/events/script-tests/basic-setattribute.js:
        (step1):
        (step2):
        (step3):
        (step4):
        (step5):
        * storage/domstorage/events/script-tests/basic.js:
        (test):
        (step1):
        (step2):
        (step3):
        (step4):
        (step5):
        * storage/domstorage/events/script-tests/case-sensitive.js:
        (test):
        (step1):
        (step2):
        * storage/domstorage/events/script-tests/documentURI.js:
        (test):
        (step1):
        (step2):

2011-05-12  Andrew Wilson  <atwilson@chromium.org>

        Unreviewed expectations tweaks for chromium.

        * platform/chromium/test_expectations.txt:

2011-05-12  Kent Tamura  <tkent@chromium.org>

        [Chromium] Update test expectations for r86224.

        * platform/chromium-linux/fast/forms/validation-message-appearance-expected.png:
        * platform/chromium-linux/fast/forms/validation-message-appearance-expected.txt:
        * platform/chromium-mac-leopard/fast/forms/validation-message-appearance-expected.png:
        * platform/chromium-mac/fast/forms/validation-message-appearance-expected.png: Removed.
        * platform/chromium-win-vista/fast/forms/validation-message-appearance-expected.png: Added.
        * platform/chromium-win-vista/fast/forms/validation-message-appearance-expected.txt: Copied from LayoutTests/platform/chromium-linux/fast/forms/validation-message-appearance-expected.txt.
        * platform/chromium/test_expectations.txt:

2011-05-12  Daniel Bates  <dbates@rim.com>

        Reviewed by Adele Peterson.

        Frame's noResize attribute can not be set by JavaScript
        https://bugs.webkit.org/show_bug.cgi?id=14845

        Tests that frame resizing is allowed and disallowed depending on the value of the noResize property.

        Also, tests to ensure that frame resizing is allowed and disallowed when programmatically
        removing and adding the noresize attribute, respectively.

        * fast/frames/frame-inherit-noresize-from-frameset-expected.txt: Added.
        * fast/frames/frame-inherit-noresize-from-frameset.html: Added. See <https://bugs.webkit.org/show_bug.cgi?id=57604>.
        * fast/frames/frame-programmatic-noresize-expected.txt: Added.
        * fast/frames/frame-programmatic-noresize.html: Added.
        * fast/frames/frame-with-noresize-can-be-resized-after-removal-of-noresize-expected.txt: Added.
        * fast/frames/frame-with-noresize-can-be-resized-after-removal-of-noresize.html: Added.
        * fast/frames/frame-with-noresize-can-be-resized-after-setting-noResize-to-false-expected.txt: Added.
        * fast/frames/frame-with-noresize-can-be-resized-after-setting-noResize-to-false.html: Added.
        * fast/frames/resources/frame-programmatic-resize.js: Added.
        (setTestFrameById):
        (deltaWidth):
        (shouldAllowFrameResize):
        (shouldDisallowFrameResize):
        (shouldDisallowFrameResizeAfterProcessingFrame):
        (shouldAllowFrameResizeAfterProcessingFrame):
        (checkTestFrameWidthEquals):
        (resizeTestFrameBy):
        (log):
        (description):

2011-05-12  Dan Bernstein  <mitz@apple.com>

        Reviewed by Sam Weinig.

        Updated results for <rdar://problem/9427336> WebFindOptionsAtWordStarts still fails with some Japanese words
        https://bugs.webkit.org/show_bug.cgi?id=60730

        * editing/text-iterator/findString-expected.txt:
        * editing/text-iterator/findString.html:

2011-05-12  Daniel Bates  <dbates@rim.com>

        Reviewed by Kenneth Rohde Christiansen.

        [Qt] fast/events/fire-mousedown-while-pressing-mouse-button.html failing
        https://bugs.webkit.org/show_bug.cgi?id=58863

        Remove test case fast/events/fire-mousedown-while-pressing-mouse-button.html
        from the Skipped list since it now passes.

        * platform/qt/Skipped:

2011-05-12  Chang Shu  <cshu@webkit.org>

        Reviewed by Csaba Osztrogonác.

        [Qt] Rebaseline editing/execCommand tests that are working
        https://bugs.webkit.org/show_bug.cgi?id=60717

        Also based on digging of Zsolt Fehér.

        * platform/qt/Skipped:
        * platform/qt/editing/execCommand/4580583-1-expected.png: Added.
        * platform/qt/editing/execCommand/4580583-1-expected.txt:
        * platform/qt/editing/execCommand/4580583-2-expected.png: Added.
        * platform/qt/editing/execCommand/4580583-2-expected.txt:
        * platform/qt/editing/execCommand/4641880-1-expected.png: Added.
        * platform/qt/editing/execCommand/4641880-1-expected.txt:
        * platform/qt/editing/execCommand/4641880-2-expected.png: Added.
        * platform/qt/editing/execCommand/4641880-2-expected.txt:
        * platform/qt/editing/execCommand/4747450-expected.png: Added.
        * platform/qt/editing/execCommand/4747450-expected.txt:
        * platform/qt/editing/execCommand/4786404-1-expected.png: Added.
        * platform/qt/editing/execCommand/4786404-2-expected.png: Added.
        * platform/qt/editing/execCommand/4916402-expected.png: Added.
        * platform/qt/editing/execCommand/4916402-expected.txt:
        * platform/qt/editing/execCommand/4916541-expected.png: Added.
        * platform/qt/editing/execCommand/4916541-expected.txt:
        * platform/qt/editing/execCommand/4924441-expected.png: Added.
        * platform/qt/editing/execCommand/4924441-expected.txt:
        * platform/qt/editing/execCommand/5049671-expected.png: Added.
        * platform/qt/editing/execCommand/5062376-expected.png: Added.
        * platform/qt/editing/execCommand/5062376-expected.txt:
        * platform/qt/editing/execCommand/5080333-1-expected.png: Added.
        * platform/qt/editing/execCommand/5080333-1-expected.txt:
        * platform/qt/editing/execCommand/5080333-2-expected.png: Added.
        * platform/qt/editing/execCommand/5080333-2-expected.txt:
        * platform/qt/editing/execCommand/5136770-expected.png: Added.
        * platform/qt/editing/execCommand/5136770-expected.txt:
        * platform/qt/editing/execCommand/5138441-expected.png: Added.
        * platform/qt/editing/execCommand/5138441-expected.txt:
        * platform/qt/editing/execCommand/5142012-1-expected.png: Added.
        * platform/qt/editing/execCommand/5142012-1-expected.txt:
        * platform/qt/editing/execCommand/5142012-2-expected.png: Added.
        * platform/qt/editing/execCommand/5142012-2-expected.txt:
        * platform/qt/editing/execCommand/5190926-expected.png: Added.
        * platform/qt/editing/execCommand/5190926-expected.txt:
        * platform/qt/editing/execCommand/5481523-expected.png: Added.
        * platform/qt/editing/execCommand/5481523-expected.txt: Added.
        * platform/qt/editing/execCommand/5482023-expected.png: Added.
        * platform/qt/editing/execCommand/5482023-expected.txt: Added.
        * platform/qt/editing/execCommand/5569741-expected.png: Added.
        * platform/qt/editing/execCommand/5569741-expected.txt: Added.
        * platform/qt/editing/execCommand/create-list-with-hr-expected.png: Added.
        * platform/qt/editing/execCommand/create-list-with-hr-expected.txt:
        * platform/qt/editing/execCommand/find-after-replace-expected.png: Added.
        * platform/qt/editing/execCommand/find-after-replace-expected.txt:
        * platform/qt/editing/execCommand/findString-2-expected.png: Added.
        * platform/qt/editing/execCommand/findString-2-expected.txt:
        * platform/qt/editing/execCommand/findString-expected.png: Added.
        * platform/qt/editing/execCommand/findString-expected.txt:
        * platform/qt/editing/execCommand/format-block-with-trailing-br-expected.png: Added.
        * platform/qt/editing/execCommand/format-block-with-trailing-br-expected.txt:
        * platform/qt/editing/execCommand/indent-empty-root-expected.png: Added.
        * platform/qt/editing/execCommand/indent-empty-root-expected.txt:
        * platform/qt/editing/execCommand/indent-list-item-expected.png: Added.
        * platform/qt/editing/execCommand/indent-list-item-expected.txt:
        * platform/qt/editing/execCommand/indent-selection-expected.png: Added.
        * platform/qt/editing/execCommand/indent-selection-expected.txt:
        * platform/qt/editing/execCommand/insert-list-and-stitch-expected.png: Added.
        * platform/qt/editing/execCommand/insert-list-and-stitch-expected.txt:
        * platform/qt/editing/execCommand/insert-list-with-id-expected.png: Added.
        * platform/qt/editing/execCommand/insert-list-with-id-expected.txt:
        * platform/qt/editing/execCommand/insertHorizontalRule-expected.png: Added.
        * platform/qt/editing/execCommand/insertHorizontalRule-expected.txt:
        * platform/qt/editing/execCommand/insertImage-expected.png: Added.
        * platform/qt/editing/execCommand/insertImage-expected.txt:
        * platform/qt/editing/execCommand/nsresponder-indent-expected.png: Added.
        * platform/qt/editing/execCommand/nsresponder-indent-expected.txt: Added.
        * platform/qt/editing/execCommand/nsresponder-outdent-expected.png: Added.
        * platform/qt/editing/execCommand/nsresponder-outdent-expected.txt: Added.
        * platform/qt/editing/execCommand/outdent-blockquote-test1-expected.png: Added.
        * platform/qt/editing/execCommand/outdent-blockquote-test1-expected.txt: Added.
        * platform/qt/editing/execCommand/outdent-blockquote-test2-expected.png: Added.
        * platform/qt/editing/execCommand/outdent-blockquote-test2-expected.txt: Added.
        * platform/qt/editing/execCommand/outdent-blockquote-test3-expected.png: Added.
        * platform/qt/editing/execCommand/outdent-blockquote-test3-expected.txt: Added.
        * platform/qt/editing/execCommand/outdent-blockquote-test4-expected.png: Added.
        * platform/qt/editing/execCommand/outdent-blockquote-test4-expected.txt: Added.
        * platform/qt/editing/execCommand/outdent-selection-expected.png: Added.
        * platform/qt/editing/execCommand/outdent-selection-expected.txt:
        * platform/qt/editing/execCommand/paste-1-expected.png: Added.
        * platform/qt/editing/execCommand/paste-1-expected.txt:
        * platform/qt/editing/execCommand/paste-2-expected.png: Added.
        * platform/qt/editing/execCommand/paste-2-expected.txt:
        * platform/qt/editing/execCommand/print-expected.png: Added.
        * platform/qt/editing/execCommand/print-expected.txt:
        * platform/qt/editing/execCommand/remove-list-from-range-selection-expected.png: Added.
        * platform/qt/editing/execCommand/remove-list-from-range-selection-expected.txt:
        * platform/qt/editing/execCommand/remove-list-item-1-expected.png: Added.
        * platform/qt/editing/execCommand/remove-list-item-1-expected.txt:
        * platform/qt/editing/execCommand/selectAll-expected.png: Added.
        * platform/qt/editing/execCommand/selectAll-expected.txt:

2011-05-12  Chang Shu  <cshu@webkit.org>

        Reviewed by Csaba Osztrogonác.

        [Qt] Rebaseline editing/pasteboard tests that are working
        https://bugs.webkit.org/show_bug.cgi?id=60707

        * platform/qt/Skipped:
        * platform/qt/editing/pasteboard/4076267-2-expected.png: Added.
        * platform/qt/editing/pasteboard/4076267-2-expected.txt: Added.
        * platform/qt/editing/pasteboard/4076267-expected.png: Added.
        * platform/qt/editing/pasteboard/4076267-expected.txt: Added.
        * platform/qt/editing/pasteboard/4806874-expected.png: Added.
        * platform/qt/editing/pasteboard/4806874-expected.txt:
        * platform/qt/editing/pasteboard/5387578-expected.png: Added.
        * platform/qt/editing/pasteboard/5387578-expected.txt:
        * platform/qt/editing/pasteboard/bad-placeholder-expected.png: Added.
        * platform/qt/editing/pasteboard/bad-placeholder-expected.txt:
        * platform/qt/editing/pasteboard/block-wrappers-necessary-expected.png: Added.
        * platform/qt/editing/pasteboard/block-wrappers-necessary-expected.txt:
        * platform/qt/editing/pasteboard/input-field-1-expected.png: Added.
        * platform/qt/editing/pasteboard/input-field-1-expected.txt:
        * platform/qt/editing/pasteboard/nested-blocks-with-text-area-expected.png: Added.
        * platform/qt/editing/pasteboard/nested-blocks-with-text-area-expected.txt:
        * platform/qt/editing/pasteboard/nested-blocks-with-text-field-expected.png: Added.
        * platform/qt/editing/pasteboard/nested-blocks-with-text-field-expected.txt:
        * platform/qt/editing/pasteboard/paste-text-008-expected.png: Added.
        * platform/qt/editing/pasteboard/paste-text-008-expected.txt: Added.
        * platform/qt/editing/pasteboard/smart-paste-008-expected.png: Added.
        * platform/qt/editing/pasteboard/smart-paste-008-expected.txt: Added.

2011-05-12  Andrew Wilson  <atwilson@chromium.org>

        Unreviewed expectations update for Chromium.

        * platform/chromium/test_expectations.txt:

2011-05-12  Andrew Wilson  <atwilson@chromium.org>

        Unreviewed expectations update for Chromium.

        * platform/chromium/test_expectations.txt:

2011-05-12  Andrew Wilson  <atwilson@chromium.org>

        Unreviewed expectations update for Chromium.

        * platform/chromium/test_expectations.txt:

2011-05-12  Andrew Wilson  <atwilson@chromium.org>

        Unreviewed expectations update for Chromium.

        * platform/chromium/test_expectations.txt:

2011-05-12  Andrew Wilson  <atwilson@chromium.org>

        Unreviewed expectations update for chromium.

        * platform/chromium/test_expectations.txt:

2011-05-12  Adam Barth  <abarth@webkit.org>

        Reviewed by Darin Adler.

        REGRESSION (r65868): createContextualFragment does not work with <style>
        https://bugs.webkit.org/show_bug.cgi?id=60155

        These test results match Firefox.

        * fast/parser/style-in-create-contextual-fragment-expected.txt: Added.
        * fast/parser/style-in-create-contextual-fragment-head-expected.txt: Added.
        * fast/parser/style-in-create-contextual-fragment-head.html: Added.
        * fast/parser/style-in-create-contextual-fragment.html: Added.

2011-05-12  David Grogan  <dgrogan@chromium.org>

        Reviewed by Nate Chapin.

        IndexedDB: fix up database-quota.html layout test
        https://bugs.webkit.org/show_bug.cgi?id=60519

        Remove commitAndContinue idiom; translate some missed instances of
        event.code to event.target.errorCode from bug 54331

        * storage/indexeddb/database-quota-expected.txt:
        * storage/indexeddb/database-quota.html:

2011-05-12  Ryosuke Niwa  <rniwa@webkit.org>

        Reviewed by Darin Adler.

        WebKit inserts base, link, meta, style, and title elements into an editable region
        when pasting table cells from Excel
        https://bugs.webkit.org/show_bug.cgi?id=60644

        Added a test to ensure WebKit strips the said elements prior to inserting HTML.

        * editing/pasteboard/paste-head-contents-expected.txt: Added.
        * editing/pasteboard/paste-head-contents.html: Added.

2011-05-08 Abhishek Arya <inferno@chromium.org> and Carol Szabo  <carol@webkit.org>

        Reviewed by David Hyatt.

        Fix reparenting and destruction of counter nodes.
        https://bugs.webkit.org/show_bug.cgi?id=57929

        * fast/css/counters/element-removal-crash-expected.txt: Added.
        * fast/css/counters/element-removal-crash.xhtml: Added.

2011-05-12  Chang Shu  <cshu@webkit.org>

        Reviewed by Darin Adler.

        Rebaseline editing/inserting tests that work
        https://bugs.webkit.org/show_bug.cgi?id=60702

        * platform/qt/Skipped:
        * platform/qt/editing/inserting/4278698-expected.png: Added.
        * platform/qt/editing/inserting/4278698-expected.txt:
        * platform/qt/editing/inserting/editable-html-element-expected.png: Added.
        * platform/qt/editing/inserting/editable-html-element-expected.txt:
        * platform/qt/editing/inserting/editing-empty-divs-expected.png: Added.
        * platform/qt/editing/inserting/editing-empty-divs-expected.txt:
        * platform/qt/editing/inserting/insert-div-023-expected.png: Added.
        * platform/qt/editing/inserting/insert-div-023-expected.txt:
        * platform/qt/editing/inserting/multiple-lines-selected-expected.png: Added.
        * platform/qt/editing/inserting/multiple-lines-selected-expected.txt: Added.

2011-05-12  Rob Buis  <rwlbuis@gmail.com>

        Reviewed by Darin Adler.

        REGRESSION(79985): Changes in fill-opacity should trigger repaint but don't
        https://bugs.webkit.org/show_bug.cgi?id=59941

        Improve test to not need a click. Offer a stroke-opacity variant as well.

        * platform/mac/svg/custom/fill-opacity-update-expected.png:
        * platform/mac/svg/custom/fill-opacity-update-expected.txt:
        * platform/mac/svg/custom/stroke-opacity-update-expected.png: Added.
        * platform/mac/svg/custom/stroke-opacity-update-expected.txt: Added.
        * svg/custom/fill-opacity-update.svg:
        * svg/custom/stroke-opacity-update.svg: Added.

2011-05-12  Simon Fraser  <simon.fraser@apple.com>

        Reviewed by Dan Bernstein.

        Mismatched multiple box-shadows do not transition as expected
        https://bugs.webkit.org/show_bug.cgi?id=60137
        
        New test for animating between mismatched lists of shadows.
        Update the test and result for multiple-shadow-transition.html,
        as this change fixes its behavior.

        * transitions/mismatched-shadow-transitions-expected.txt: Added.
        * transitions/mismatched-shadow-transitions.html: Added.
        * transitions/multiple-shadow-transitions-expected.txt:
        * transitions/multiple-shadow-transitions.html:

2011-05-12  Anton Muhin  <antonnm@chromium.org>

        Unreviewed.

        Chromium expectations.

        * platform/chromium/test_expectations.txt:

2011-05-12  Anton Muhin  <antonnm@chromium.org>

        Unreviewed.

        Chromium expectations.

        * platform/chromium/test_expectations.txt:

2011-05-12  Anton Muhin  <antonnm@chromium.org>

        Unreviewed.

        Fixed typo.

        * platform/chromium/test_expectations.txt:

2011-05-12  Anton Muhin  <antonnm@chromium.org>

        Unreviewed.

        Chromium expectations.

        * platform/chromium/test_expectations.txt:

2011-05-12  Philippe Normand  <pnormand@igalia.com>

        Unreviewed, GTK baselines for new tests.

        * platform/gtk/fast/block/positioning/hiding-inside-relpositioned-inline-expected.png: Added.
        * platform/gtk/fast/block/positioning/hiding-inside-relpositioned-inline-expected.txt: Added.
        * platform/gtk/fast/borders/outline-alpha-block-expected.png: Added.
        * platform/gtk/fast/borders/outline-alpha-block-expected.txt: Added.
        * platform/gtk/fast/borders/outline-alpha-inline-expected.png: Added.
        * platform/gtk/fast/borders/outline-alpha-inline-expected.txt: Added.
        * platform/gtk/fast/inline/nested-top-alignment-expected.png: Added.
        * platform/gtk/fast/inline/nested-top-alignment-expected.txt: Added.
        * platform/gtk/scrollbars/scrollbars-on-positioned-content-expected.png: Added.
        * platform/gtk/scrollbars/scrollbars-on-positioned-content-expected.txt: Added.
        * platform/gtk/svg/custom/fill-opacity-update-expected.png: Added.
        * platform/gtk/svg/custom/fill-opacity-update-expected.txt: Added.

2011-05-12  Anton Muhin  <antonnm@chromium.org>

        Unreviewed.

        Chromium GPU suppressions.

        * platform/chromium/test_expectations.txt:

2011-05-12  Adam Roben  <aroben@apple.com>

        Update Windows results after r86315

        * platform/win/fast/dom/Window/window-property-descriptors-expected.txt:
        * platform/win/fast/dom/prototype-inheritance-expected.txt:
        * platform/win/fast/js/global-constructors-expected.txt:

2011-05-12  Rob Buis  <rwlbuis@gmail.com>

        Reviewed by Eric Seidel.

        REGRESSION(79985): Changes in fill-opacity should trigger repaint but don't
        https://bugs.webkit.org/show_bug.cgi?id=59941

        * svg/custom/fill-opacity-update.svg: Added.

2011-05-10  Yury Semikhatsky  <yurys@chromium.org>

        Reviewed by Pavel Feldman.

        Web Inspector: test that eval can access scoped variables in console
        https://bugs.webkit.org/show_bug.cgi?id=60547

        * inspector/console/console-eval-scoped-expected.txt: Added.
        * inspector/console/console-eval-scoped.html: Added.

2011-05-12  Csaba Osztrogonác  <ossy@webkit.org>

        Add new expected files after r86313.

        * platform/qt-arm/fast/transforms/transform-positioned-ancestor-expected.txt: Added.
        * platform/qt-arm/transforms/2d/transform-borderbox-expected.txt: Added.
        * platform/qt-arm/transforms/2d/transform-origin-borderbox-expected.txt: Added.
        * platform/qt-arm/transforms/2d/zoom-menulist-expected.txt: Added.
        * platform/qt-arm/transforms/no_transform_hit_testing-expected.txt: Added.
        * platform/qt-arm/transforms/svg-vs-css-expected.txt: Added.
        * platform/qt-mac/Skipped: Add plugins/get-targeted-javascript-url.html because of missing plugin.getURLNotify() implementation
        * platform/qt-mac/fast/transforms/transform-positioned-ancestor-expected.txt: Added.
        * platform/qt-mac/transforms/2d/transform-borderbox-expected.txt: Added.
        * platform/qt-mac/transforms/2d/transform-origin-borderbox-expected.txt: Added.
        * platform/qt-mac/transforms/2d/zoom-menulist-expected.txt: Added.
        * platform/qt-mac/transforms/no_transform_hit_testing-expected.txt: Added.
        * platform/qt-mac/transforms/svg-vs-css-expected.txt: Added.

2011-05-12  Philippe Normand  <pnormand@igalia.com>

        Unreviewed, GTK rebaseline after r86307.

        * platform/gtk/fast/dom/HTMLMeterElement/meter-styles-expected.txt:
        * platform/gtk/fast/dom/HTMLMeterElement/meter-styles-expected.png:

2011-05-12  Yuta Kitamura  <yutak@chromium.org>

        Unreviewed. Update Qt test expectations affected in r86320.

        * platform/qt/fast/dom/Window/window-properties-expected.txt:
        * platform/qt/fast/dom/Window/window-property-descriptors-expected.txt:
        * platform/qt/fast/dom/prototype-inheritance-expected.txt:
        * platform/qt/fast/js/global-constructors-expected.txt:

2011-05-12  Yuta Kitamura  <yutak@chromium.org>

        Reviewed by Kent Tamura.

        WebSocket add new event: CloseEvent
        https://bugs.webkit.org/show_bug.cgi?id=35573

        Original patch was written by Fumitoshi Ukai <ukai@chromium.org>.
        I modified the test close-event.html slightly so that it passes on Chromium.
        I also updated a few test results that are affected by this change.

        * fast/dom/Window/window-properties-expected.txt:
        * fast/dom/Window/window-property-descriptors-expected.txt:
        * fast/dom/prototype-inheritance-expected.txt:
        * fast/js/global-constructors-expected.txt:
        * http/tests/websocket/tests/close-event-expected.txt: Added.
        * http/tests/websocket/tests/close-event.html: Added.
        * platform/chromium/fast/dom/prototype-inheritance-expected.txt:

2011-05-12  Ben Wells  <benwells@chromium.org>

        Reviewed by Simon Fraser.

        RGBA colors in outlines show overpainting at the corners
        https://bugs.webkit.org/show_bug.cgi?id=58999

        * fast/borders/outline-alpha-block.html: Added.
        * fast/borders/outline-alpha-inline.html: Added.
        * platform/chromium/test_expectations.txt:
        * platform/mac/fast/borders/outline-alpha-block-expected.png: Added.
        * platform/mac/fast/borders/outline-alpha-block-expected.txt: Added.
        * platform/mac/fast/borders/outline-alpha-inline-expected.png: Added.
        * platform/mac/fast/borders/outline-alpha-inline-expected.txt: Added.
        * platform/mac/fast/box-shadow/box-shadow-radius-expected.png: Rebaselined as this test had rgba outlines.
        * platform/mac/fast/layers/self-painting-outline-expected.png: Rebaselined as this test had rgba outlines.

2011-05-11  Srinivasulu Chereddy  <Srinivasulu.Chereddy@nokia.com>

        Reviewed by Eric Seidel.

        [Qt] Expected results for 6 new CSS3 transforms tests and the updated skipped list
        https://bugs.webkit.org/show_bug.cgi?id=60654

        * platform/qt/Skipped:
        * platform/qt/fast/transforms/transform-positioned-ancestor-expected.png: Added.
        * platform/qt/fast/transforms/transform-positioned-ancestor-expected.txt: Added.
        * platform/qt/transforms/2d/transform-borderbox-expected.png: Added.
        * platform/qt/transforms/2d/transform-borderbox-expected.txt: Added.
        * platform/qt/transforms/2d/transform-origin-borderbox-expected.png: Added.
        * platform/qt/transforms/2d/transform-origin-borderbox-expected.txt: Added.
        * platform/qt/transforms/2d/zoom-menulist-expected.png: Added.
        * platform/qt/transforms/2d/zoom-menulist-expected.txt: Added.
        * platform/qt/transforms/no_transform_hit_testing-expected.png: Added.
        * platform/qt/transforms/no_transform_hit_testing-expected.txt: Added.
        * platform/qt/transforms/svg-vs-css-expected.png: Added.
        * platform/qt/transforms/svg-vs-css-expected.txt: Added.

2011-05-10  MORITA Hajime  <morrita@google.com>

        Reviewed by Kent Tamura.

        Crashes if the document inside iframe is removed during pasting some text into it.
        https://bugs.webkit.org/show_bug.cgi?id=60534

        * editing/pasteboard/paste-removing-iframe-expected.txt: Added.
        * editing/pasteboard/paste-removing-iframe.html: Added.
        * editing/pasteboard/resources/paste-removing-iframe-child.html: Added.

2011-05-11  MORITA Hajime  <morrita@google.com>

        Reviewed by Kent Tamura.

        Some elements in meter-styles.html are hiding its content part with non-content-area.
        https://bugs.webkit.org/show_bug.cgi?id=58149
        
        - Resized the border and padding values
        - Gave "-webkit-appearance: none" to test that is intended to be painted using shadows.

        * fast/dom/HTMLMeterElement/meter-styles.html:
        * platform/mac/fast/dom/HTMLMeterElement/meter-styles-expected.checksum:
        * platform/mac/fast/dom/HTMLMeterElement/meter-styles-expected.png:
        * platform/mac/fast/dom/HTMLMeterElement/meter-styles-expected.txt:

2011-05-11  Kent Tamura  <tkent@chromium.org>

        Reviewed by Dimitri Glazkov.

        input type=email is too strict
        https://bugs.webkit.org/show_bug.cgi?id=55988

        * fast/forms/resources/ValidityState-typeMismatch-email.js:
        * fast/forms/ValidityState-typeMismatch-email-expected.txt:

2011-05-11  Jia Pu  <jpu@apple.com>

        Reviewed by Darin Adler.

        Autocorrection persists after deleting and retyping the same word at same location.
        https://bugs.webkit.org/show_bug.cgi?id=60555
        <rdar://problem/9373915>

        See WebCore/ChangeLog for detail.

        * platform/mac-leopard/Skipped:
        * platform/mac-snowleopard/Skipped:
        * platform/mac/editing/spelling/delete-autocorrected-word-2-expected.png: Added.
        * platform/mac/editing/spelling/delete-autocorrected-word-2-expected.txt: Added.
        * platform/mac/editing/spelling/delete-autocorrected-word-2.html: Added.

2011-05-11  Kent Tamura  <tkent@chromium.org>

        Reviewed by Dimitri Glazkov.

        <input pattern="1|10" value="10"> doesn't work correctly.
        https://bugs.webkit.org/show_bug.cgi?id=60619

        Add test cases and update the result.

        * fast/forms/ValidityState-patternMismatch-expected.txt:
        * fast/forms/ValidityState-patternMismatch.html:

2011-05-11  Abhishek Arya  <inferno@chromium.org>

        Unreviewed.

        More rebaselines after r86261.

        * platform/chromium-mac-leopard/fast/dom/HTMLInputElement/input-slider-update-expected.png: Added.
        * platform/chromium-mac-leopard/fast/forms/slider-padding-expected.png: Added.
        * platform/chromium-mac-leopard/fast/forms/slider-thumb-shared-style-expected.png:
        * platform/chromium-mac-leopard/fast/repaint/slider-thumb-drag-release-expected.png:
        * platform/chromium-mac/fast/dom/HTMLInputElement/input-slider-update-expected.png:
        * platform/chromium-mac/fast/forms/slider-padding-expected.png: Added.
        * platform/chromium/test_expectations.txt:

2011-05-11  Abhishek Arya  <inferno@chromium.org>

        Unreviewed.

        Rebaselines after r86261.

        * platform/chromium-mac/fast/forms/slider-thumb-shared-style-expected.png:
        * platform/chromium-mac/fast/repaint/slider-thumb-drag-release-expected.png:

2011-05-11  Adam Roben  <aroben@apple.com>

        Test what happens when a plugin makes a targeted javascript: request

        Test for <http://webkit.org/b/60568> <rdar://problem/8610657> REGRESSION (WebKit2): Flash
        plugin doesn't appear on a hanes.com page

        Reviewed by Anders Carlsson.

        * plugins/get-targeted-javascript-url-expected.txt: Added.
        * plugins/get-targeted-javascript-url.html: Added.
        (startTest): Tell the plugin to make two targeted javascript: requests. One calls a function
        with a return value, the other calls a function with no return value.
        (finishTest): Check that both functions were called, and that we either didn't get an
        NPP_URLNotify call (like in Mozilla, WebKit1, and WebKit2), or got an NPP_URLNotify call
        with NPRES_DONE (like in Chrome).

2011-05-11  Kenji Imasaki  <imasaki@chromium.org>

        Reviewed by David Levin.

        [Chromium] Remove non-flaky test (video-layer-crash) from
        the test expectation file.
        https://bugs.webkit.org/show_bug.cgi?id=60634

        * platform/chromium/test_expectations.txt:

2011-05-11  Jessie Berlin  <jberlin@apple.com>

        [SnowLeopard WebKit2 Tests] fast/frames/flattening/frameset-flattening-subframesets.html
        flakey.
        https://bugs.webkit.org/show_bug.cgi?id=60648

        Add the test to the mac-wk2 Skipped list to get the bots green.

        * platform/mac-wk2/Skipped:

2011-05-11  Anton Muhin  <antonnm@chromium.org>

        Unreviewed.

        Removing now unnecessary Chromium suppressions.

        * platform/chromium/test_expectations.txt:

2011-05-11  Chang Shu  <cshu@webkit.org>

        Reviewed by Antonio Gomes.

        [Qt] Tab not working in editing/inserting/typing-tab-designmode-forms.html
        https://bugs.webkit.org/show_bug.cgi?id=60477

        Unskip passed tests.

        * platform/qt/Skipped:

2011-05-11  Csaba Osztrogonác  <ossy@webkit.org>

        Unreviewed fix after r86228.

        * platform/qt-mac/Skipped: Add failing editing tets.

2011-05-11  Anton Muhin  <antonnm@chromium.org>

        Unreviewed.

        Chromium suppressions.

        * platform/chromium/test_expectations.txt:

2011-05-11  Csaba Osztrogonác  <ossy@webkit.org>

        Unreviewed update after r86230.

        * platform/qt-arm/transforms/2d/compound-transforms-vs-containers-expected.txt: Added.
        * platform/qt-mac/transforms/2d/compound-transforms-vs-containers-expected.txt: Added.

2011-05-11  Chang Shu  <cshu@webkit.org>

        Reviewed by Csaba Osztrogonác.

        [Qt] Some skipped editing tests actually work and just need rebaseline.
        https://bugs.webkit.org/show_bug.cgi?id=60469

        Unskip some editing tests that actually work.

        * platform/qt/Skipped:

2011-05-11  Julien Chaffraix  <jchaffraix@webkit.org>

        Reviewed by Geoffrey Garen.

        Tests for: XPathResult should keep its node set's JS wrappers alive
        https://bugs.webkit.org/show_bug.cgi?id=34231

        * fast/xpath/xpath-result-eventlistener-crash-expected.txt: Added.
        * fast/xpath/xpath-result-eventlistener-crash.html: Added.
        Test that an event listener registered on an XPATH result snapshots' node does
        not crash. This case was already fixed prior to this change. However it is better
        to keep it as a regression test.

        * fast/xpath/xpath-snapshot-result-should-mark-its-nodeset-expected.txt: Added.
        * fast/xpath/xpath-snapshot-result-should-mark-its-nodeset.html: Added.
        Test that an XPath snapshot result keeps its node wrapper alive.

        * fast/xpath/xpath-iterator-result-should-mark-its-nodeset-expected.txt: Added.
        * fast/xpath/xpath-iterator-result-should-mark-its-nodeset.html: Added.
        Test that an XPath iterator result keeps its node wrapper alive.

        * fast/xpath/xpath-other-nodeset-result-should-mark-its-nodeset-expected.txt: Added.
        * fast/xpath/xpath-other-nodeset-result-should-mark-its-nodeset.html: Added.
        Test that other XPath result that holds nodes keeps their wrapper alive.

2011-05-11  Jessie Berlin  <jberlin@apple.com>

        WebKitTestRunner needs layoutTestController.originsWithLocalStorage.

        Add two more storage tracker tests (added in r86205) to the mac-wk2 Skipped list to get the
        bots green.

        * platform/mac-wk2/Skipped:

2011-05-11  Srinivasulu Chereddy  <srinivasulu.chereddy@nokia.com>

        Reviewed by Csaba Osztrogonác.

        [Qt] Expected results for 2d-transforms new test
        https://bugs.webkit.org/show_bug.cgi?id=60565

        Added expected results for 1 new 2d-transforms test.

        * platform/qt/transforms/2d/compound-transforms-vs-containers-expected.png: Added.
        * platform/qt/transforms/2d/compound-transforms-vs-containers-expected.txt: Added.
        * platform/qt/Skipped: Unskip now passing test.

2011-05-11  Kent Tamura  <tkent@chromium.org>

        The tests added by r86224 don't work on WebKit2/mac.

        * platform/mac-wk2/Skipped:

2011-05-11  Kent Tamura  <tkent@chromium.org>

        Reviewed by Hajime Morita.

        The position of validation message bubble is wrong for non text fields.
        https://bugs.webkit.org/show_bug.cgi?id=60341

        * fast/forms/resources/common.js: Added. Helper functions for fast/forms.
        * fast/forms/validation-message-on-checkbox-expected.txt: Added.
        * fast/forms/validation-message-on-checkbox.html: Added.
        * fast/forms/validation-message-on-listbox-expected.txt: Added.
        * fast/forms/validation-message-on-listbox.html: Added.
        * fast/forms/validation-message-on-menulist-expected.txt: Added.
        * fast/forms/validation-message-on-menulist.html: Added.
        * fast/forms/validation-message-on-radio-expected.txt: Added.
        * fast/forms/validation-message-on-radio.html: Added.
        * fast/forms/validation-message-on-textarea-expected.txt: Added.
        * fast/forms/validation-message-on-textarea.html: Added.
        * platform/chromium/test_expectations.txt:
        * platform/gtk/Skipped:
        * platform/mac/fast/forms/validation-message-appearance-expected.png: Updated.
        * platform/mac/fast/forms/validation-message-appearance-expected.txt: Updated.
        * platform/qt/Skipped:
        * platform/win/Skipped:

2011-05-10  Yury Semikhatsky  <yurys@chromium.org>

        Reviewed by Pavel Feldman.

        Web Inspector: test that browser doesn't crash if alert() arguments conversion throws to an exception
        https://bugs.webkit.org/show_bug.cgi?id=60541

        * inspector/console/alert-toString-exception-expected.txt: Added.
        * inspector/console/alert-toString-exception.html: Added.
        * platform/chromium/inspector/console/alert-toString-exception-expected.txt: Added.

2011-05-10  Abhishek Arya  <inferno@chromium.org>

        Unreviewed.

        Chromium rebaselines.

        * platform/chromium-gpu-linux/media/video-transformed-expected.png:
        * platform/chromium-gpu-mac/media/video-transformed-expected.png:
        * platform/chromium-gpu-win/media/video-transformed-expected.png:

2011-05-10  Anton D'Auria  <adauria@apple.com>

        Reviewed by David Levin.

        StorageTracker should report actual local storage usage on disk
        https://bugs.webkit.org/show_bug.cgi?id=60558

        * storage/domstorage/localstorage/storagetracker/storage-tracker-6-create-expected.txt: Added.
        * storage/domstorage/localstorage/storagetracker/storage-tracker-6-create.html: Added.
        * storage/domstorage/localstorage/storagetracker/storage-tracker-7-usage-expected.txt: Added.
        * storage/domstorage/localstorage/storagetracker/storage-tracker-7-usage.html: Added.

2011-05-10  Anton D'Auria  <adauria@apple.com>

        Reviewed by Alexey Proskuryakov.

        Add ApplicationCache API to get disk usage per origin
        https://bugs.webkit.org/show_bug.cgi?id=57127

        * http/tests/appcache/origin-usage-expected.txt: Added.
        * http/tests/appcache/origin-usage.html: Added.
        * http/tests/appcache/resources/origin-usage-iframe-1.html: Added.
        * http/tests/appcache/resources/origin-usage-iframe-1.manifest: Added.
        * http/tests/appcache/resources/origin-usage-iframe-2.html: Added.
        * http/tests/appcache/resources/origin-usage-iframe-2.manifest: Added.
        * platform/chromium/test_expectations.txt:
        * platform/gtk/Skipped:
        * platform/mac-wk2/Skipped:
        * platform/qt/Skipped:

2011-05-10  Adam Klein  <adamk@chromium.org>

        Reviewed by David Levin.

        LayoutTest demonstrating that filesystem: URLs are not cached in WebKit
        https://bugs.webkit.org/show_bug.cgi?id=58854

        Regression test for http://crbug.com/79539.

        * http/tests/filesystem/no-cache-filesystem-url-expected.txt: Added.
        * http/tests/filesystem/no-cache-filesystem-url.html: Added.

2011-05-05  Jer Noble  <jer.noble@apple.com>

        Reviewed by Maciej Stachowiak.

        Removing the full screen element via parent.innerHTML="" does not result in a webkitfullscreenchange event.
        https://bugs.webkit.org/show_bug.cgi?id=60278

        * fullscreen/full-screen-remove-children-expected.txt: Added.
        * fullscreen/full-screen-remove-children.html: Added.
        * fullscreen/full-screen-test.js: Fixed an exception when running in Safari.

2011-05-10  Kenichi Ishibashi  <bashi@chromium.org>

        Reviewed by Tony Chang.

        REGRESSION(r85013): platform/chromium-linux/fast/text/international/complex-joining-using-gpos.html is failing
        https://bugs.webkit.org/show_bug.cgi?id=60079

        Update the expected results.

        * platform/chromium-linux-x86_64/platform/chromium-linux/fast/text/international/complex-joining-using-gpos-expected.png: Added.
        * platform/chromium-linux-x86_64/platform/chromium-linux/fast/text/international/complex-joining-using-gpos-expected.txt:
        * platform/chromium-linux/fast/text/international/complex-joining-using-gpos-expected.png:
        * platform/chromium-linux/fast/text/international/complex-joining-using-gpos-expected.txt:
        * platform/chromium-linux/fast/text/international/complex-joining-using-gpos.html:
        * platform/chromium-linux/platform/chromium-linux/fast/text/international/complex-joining-using-gpos-expected.png: Removed.
        * platform/chromium/test_expectations.txt:

2011-05-10  Kenji Imasaki  <imasaki@chromium.org>

        Reviewed by David Levin.

        [Chromium] Add rebaselines for video-layer-crash.
        https://bugs.webkit.org/show_bug.cgi?id=60548

        Chromium bug is http://crbug.com/60744. Expected images need to be
        updated because they are incorrect. The cause of this image change
        cannot be easily determined at present because the test has been
        broken for so long.

        * platform/chromium-gpu-linux/media/video-layer-crash-expected.png: Added.
        * platform/chromium-gpu-mac/media/video-layer-crash-expected.png: Added.
        * platform/chromium-gpu-win/media/video-layer-crash-expected.png: Added.
        * platform/chromium-linux/media/video-layer-crash-expected.png:
        * platform/chromium-win/media/video-layer-crash-expected.png:

2011-05-10  Chang Shu  <cshu@webkit.org>

        Reviewed by Darin Adler.

        Convert editing/inserting/typing-tab-designmode-forms.html to dumpAsText
        https://bugs.webkit.org/show_bug.cgi?id=60554

        * editing/inserting/typing-tab-designmode-forms-expected.txt: Added.
        * editing/inserting/typing-tab-designmode-forms.html:
        * platform/chromium-linux/editing/inserting/typing-tab-designmode-forms-expected.png: Removed.
        * platform/chromium-mac-leopard/editing/inserting/typing-tab-designmode-forms-expected.png: Removed.
        * platform/chromium-win/editing/inserting/typing-tab-designmode-forms-expected.png: Removed.
        * platform/chromium-win/editing/inserting/typing-tab-designmode-forms-expected.txt: Removed.
        * platform/gtk/editing/inserting/typing-tab-designmode-forms-expected.png: Removed.
        * platform/gtk/editing/inserting/typing-tab-designmode-forms-expected.txt: Removed.
        * platform/mac-leopard/editing/inserting/typing-tab-designmode-forms-expected.png: Removed.
        * platform/mac/editing/inserting/typing-tab-designmode-forms-expected.png: Removed.
        * platform/mac/editing/inserting/typing-tab-designmode-forms-expected.txt: Removed.

2011-05-10  Abhishek Arya  <inferno@chromium.org>

        Reviewed by Simon Fraser.

        Tests that we do not crash due to wrong result from
        hasOverhangingFloats.
        https://bugs.webkit.org/show_bug.cgi?id=60537

        * fast/block/float/no-overhanging-float-crash-expected.txt: Added.
        * fast/block/float/no-overhanging-float-crash.html: Added.

2011-05-10  Adam Roben  <aroben@apple.com>

        Update some plugin tests to work with WebKit2's asynchronous windowed plugin positioning on Windows

        Fixes <http://webkit.org/b/60442> <rdar://problem/9403200> REGRESSION (r85795):
        platform/win/plugins/window-geometry-initialized-before-set-window.html and
        platform/win/plugins/window-region-is-set-to-clip-rect.html failing on Windows 7 Release
        (WebKit2 Tests)

        Reviewed by Anders Carlsson.

        * platform/win/plugins/window-geometry-initialized-before-set-window-expected.txt: Updated
        for new test output that doesn't claim anything about the window's position.

        * platform/win/plugins/window-region-is-set-to-clip-rect.html: Hide the plugin initially,
        and tell the plugin when the load event has fired.

        * platform/win-wk2/platform/win/plugins/window-geometry-initialized-before-set-window-expected.txt: Removed.
        * platform/win-wk2/platform/win/plugins/window-region-is-set-to-clip-rect-expected.txt: Removed.

2011-05-10  Csaba Osztrogonác  <ossy@webkit.org>

        Unreviewed.

        * platform/qt-arm/Skipped: Add fast/workers/wrapper-map-gc.html, because it crashes intermittently.

2011-05-10  Csaba Osztrogonác  <ossy@webkit.org>

        Unreviewed.

        * platform/qt-arm/Skipped: Add fast/dom/Geolocation/window-close-crash.html.

2011-05-10  Steve Lacey  <sjl@chromium.org>

        Reviewed by Eric Carlson.

        Fix video-play-stall-before-metadata.

        A stalled event won't be sent until no progress has happened for 3
        seconds. Make sure that the connection is still open for at least that long.
        https://bugs.webkit.org/show_bug.cgi?id=60306

        * http/tests/media/video-load-and-stall.cgi:
        * http/tests/media/video-play-stall-before-meta-data.html:
        * platform/chromium/test_expectations.txt:

2011-05-10  Csaba Osztrogonác  <ossy@webkit.org>

        One more unreviewed typo fix after r86148. :(

        * platform/qt-4.8/Skipped:

2011-05-10  Csaba Osztrogonác  <ossy@webkit.org>

        Unreviewed typo fix after r86148.

        * platform/qt-4.8/Skipped:

2011-05-10  Csaba Osztrogonác  <ossy@webkit.org>

        [Qt]http/tests/security/xss-DENIED-xsl-document.xml fails with Qt 4.8
        https://bugs.webkit.org/show_bug.cgi?id=60175

        [Qt]http/tests/xmlhttprequest/xmlhttprequest-missing-file-exception.html fails with Qt 4.8
        https://bugs.webkit.org/show_bug.cgi?id=60176

        * platform/qt-4.8/Skipped:
         - Add http/tests/security/xss-DENIED-xsl-document.xml
         - Add http/tests/xmlhttprequest/xmlhttprequest-missing-file-exception.html

2011-05-10  Andrey Kosyakov  <caseq@chromium.org>

        Reviewed by Sam Weinig.

        Web Inspector: inspector/console/console-shadow-dom-access.html crashes on mac debug
        https://bugs.webkit.org/show_bug.cgi?id=60266

        * platform/mac/Skipped: removed suppression of console-shadow-dom-access.html

2011-05-10  Csaba Osztrogonác  <ossy@webkit.org>

        [WK2] eventSender.keyDown is unimplemented

        Move fast/forms/radio-group-keyboard-change-event.html from qt-wk2/Skipped to
        mac-wk2/Skipped, because it isn't Qt specific bug, but general WK2 specific one.

        * platform/mac-wk2/Skipped:
        * platform/qt-wk2/Skipped:

2011-05-10  Csaba Osztrogonác  <ossy@webkit.org>

        Unreviewed.

        [Qt][Mac] Add platform specific expected result for plugins/plugin-javascript-access.html,
        which is same as the platform independent one, but differs from the general Qt specific.

        * platform/qt-mac/plugins: Added.
        * platform/qt-mac/plugins/plugin-javascript-access-expected.txt: Added.

2011-05-10  Csaba Osztrogonác  <ossy@webkit.org>

        Unreviewed.

        [Qt] fast/events/backspace-nagivates-back fails on Qt bots (Mac and Linux)
        https://bugs.webkit.org/show_bug.cgi?id=60311

        It is a general Qt related bug, so we should add it to qt/Skipped instead of all Skipped list.

        * platform/qt-arm/Skipped: Remove fast/events/backspace-navigates-back.html.
        * platform/qt-linux/Skipped: Remove fast/events/backspace-navigates-back.html.
        * platform/qt-mac/Skipped: Remove fast/events/backspace-navigates-back.html.
        * platform/qt/Skipped: Add fast/events/backspace-navigates-back.html.

2011-05-10  Csaba Osztrogonác  <ossy@webkit.org>

        Unreviewed.

        Move plugins/plugin-javascript-access-expected.txt from qt-linux platform
        to qt, because it should be used by qt-4.8, qt-arm Linux platforms too.

        * platform/qt-linux/plugins: Removed.
        * platform/qt-linux/plugins/plugin-javascript-access-expected.txt: Removed.
        * platform/qt/plugins/plugin-javascript-access-expected.txt: Copied from LayoutTests/platform/qt-linux/plugins/plugin-javascript-access-expected.txt.

2011-05-10  Csaba Osztrogonác  <ossy@webkit.org>

        Reviewed by Kenneth Rohde Christiansen.

        [Qt] Add new qt-4.8 platform for layout testing
        https://bugs.webkit.org/show_bug.cgi?id=60544

        * platform/qt-4.8/Skipped: Added.

2011-05-10  Csaba Osztrogonác  <ossy@webkit.org>

        [Qt][WK2] eventSender.keyDown is unimplemented

        * platform/qt-wk2/Skipped: Add fast/forms/radio-group-keyboard-change-event.html.

2011-05-10  Csaba Osztrogonác  <ossy@webkit.org>

        plugins/embed-prefers-plugins-for-images.html fails on non-Apple platforms.
        https://bugs.webkit.org/show_bug.cgi?id=57137

        * platform/qt-mac/Skipped: Add plugins/embed-prefers-plugins-for-images.html.

2011-05-10  Csaba Osztrogonác  <ossy@webkit.org>

        Unreviewed fix.

        [Qt] DumpRenderTreeQt needs an implementation of unmarkText
        https://bugs.webkit.org/show_bug.cgi?id=60499

        r86124 implemented unmarkText() and it fixed a test,
        which doesn't need Qt specific expected failure anymore.

        * platform/qt/fast/events/ime-composition-events-001-expected.txt: Removed.

2011-05-10  MORITA Hajime  <morrita@google.com>

        Unreviewed flakiness marking (video-controls-rendering.html)
        
        * platform/chromium/test_expectations.txt:

2011-05-09  Martin Robinson  <mrobinson@igalia.com>

        Update the results for a test after r86102. This test was susceptible to
        scrollbar race conditions and r86102 changed timing slightly.

        * platform/gtk/scrollbars/custom-scrollbar-with-incomplete-style-expected.txt:

2011-05-09  Chang Shu  <cshu@webkit.org>

        Reviewed by Kenneth Rohde Christiansen.

        [Qt] DumpRenderTreeQt needs an implementation of unmarkText
        https://bugs.webkit.org/show_bug.cgi?id=60499

        Unskipped passed test.

        * platform/qt/Skipped:

2011-05-09  Kenji Imasaki  <imasaki@chromium.org>

        Reviewed by David Levin.

        [Chromium] Add rebaseline images for video-controls-rendering.
        https://bugs.webkit.org/show_bug.cgi?id=60517

        Chromium bug is http://crbug.com/82033. These rebaselines are necessary
        due to unrelated bug (http://crbug.com/74102). We are checking in bad
        baselines for the time being so that we ensure no other problems occur.
        This test will fail when above bug (http://crbug.com/74102) is fixed.
        At that time, we will checkin correct baselines.

        * platform/chromium-gpu-linux/media/video-controls-rendering -expected.png: Added.
        * platform/chromium-gpu-mac/media/video-controls-rendering-expected.png: Added.
        * platform/chromium-gpu-win/media/video-controls-rendering-expected.png: Added.
        * platform/chromium/test_expectations.txt:

2011-05-08  Jeremy Noble  <jer.noble@apple.com>

        Reviewed by Dan Bernstein.

        Full-screen video disappears behind black screen with scrollbar, followed by crash at jerryseinfeld.com
        https://bugs.webkit.org/show_bug.cgi?id=60449

        * fullscreen/full-screen-remove-sibling-expected.txt: Added.
        * fullscreen/full-screen-remove-sibling.html: Added.

2011-05-09  Adam Barth  <abarth@webkit.org>

        Reviewed by Eric Seidel.

        CSP should block Function constructor
        https://bugs.webkit.org/show_bug.cgi?id=60240

        Test that the function constructor is properly blocked.

        * http/tests/security/contentSecurityPolicy/function-constructor-allowed-expected.txt: Added.
        * http/tests/security/contentSecurityPolicy/function-constructor-allowed.html: Added.
        * http/tests/security/contentSecurityPolicy/function-constructor-blocked-expected.txt: Added.
        * http/tests/security/contentSecurityPolicy/function-constructor-blocked.html: Added.
        * platform/chromium/test_expectations.txt:

2011-05-09  Robert Hogan  <robert@webkit.org>

        Unreviewed, update test expectations.

        Update platform-specific results after r86086

        The unix test NPAPI plugin now supports the png mime type.

        https://bugs.webkit.org/show_bug.cgi?id=57137

        * platform/gtk/plugins/plugin-javascript-access-expected.txt:
        * platform/qt-linux/plugins/plugin-javascript-access-expected.txt:

2011-05-09  Kenji Imasaki  <imasaki@chromium.org>

        Reviewed by David Levin.

        [Chromium] Remove unflaky media-related tests from test expectation.
        https://bugs.webkit.org/show_bug.cgi?id=60500

        Chromium bug is http://crbug.com/81660.
        * platform/chromium/test_expectations.txt:

2011-05-09  Erik Arvidsson  <arv@chromium.org>

        Reviewed by Darin Adler.

        radiogroup: onchange not detected when triggered by keyboard
        https://bugs.webkit.org/show_bug.cgi?id=32013

        * fast/forms/radio-group-keyboard-change-event-expected.txt: Added.
        * fast/forms/radio-group-keyboard-change-event.html: Added.

2011-05-09  Robert Hogan  <robert@webkit.org>

        Reviewed by Adam Roben.

        https://bugs.webkit.org/show_bug.cgi?id=57137

        Unskip plugins/embed-prefers-plugins-for-images.html

        Add image/png mime-type to test netscape plugin on Unix.

        * platform/gtk/Skipped:
        * platform/qt/Skipped:

2011-05-09  Chang Shu  <cshu@webkit.org>

        Unreviewed.

        Expected result for editing/inserting/insert-bg-font.html can be shared
        https://bugs.webkit.org/show_bug.cgi?id=60498

        * editing/inserting/insert-bg-font-expected.txt: Copied from LayoutTests/platform/mac/editing/inserting/insert-bg-font-expected.txt.
        * platform/gtk/editing/inserting/insert-bg-font-expected.txt: Removed.
        * platform/mac/editing/inserting/insert-bg-font-expected.txt: Removed.
        * platform/qt/Skipped:

2011-05-09  Abhishek Arya  <inferno@chromium.org>

        Unreviewed.

        Rebaselines for r86065.

        * platform/chromium-linux/platform/gtk: Added.
        * platform/chromium-linux/platform/gtk/fonts: Added.
        * platform/chromium-linux/platform/gtk/fonts/fontconfig-synthetic-bold-expected.png: Added.
        * platform/chromium-mac-leopard/platform: Added.
        * platform/chromium-mac-leopard/platform/gtk: Added.
        * platform/chromium-mac-leopard/platform/gtk/fonts: Added.
        * platform/chromium-mac-leopard/platform/gtk/fonts/fontconfig-synthetic-bold-expected.png: Added.
        * platform/chromium-mac/platform/gtk: Added.
        * platform/chromium-mac/platform/gtk/fonts: Added.
        * platform/chromium-mac/platform/gtk/fonts/fontconfig-synthetic-bold-expected.png: Added.
        * platform/chromium-mac/platform/gtk/fonts/fontconfig-synthetic-bold-expected.txt: Added.
        * platform/chromium-win/platform/gtk: Added.
        * platform/chromium-win/platform/gtk/fonts: Added.
        * platform/chromium-win/platform/gtk/fonts/fontconfig-synthetic-bold-expected.png: Added.
        * platform/chromium-win/platform/gtk/fonts/fontconfig-synthetic-bold-expected.txt: Added.
        * platform/chromium/test_expectations.txt:

2011-05-09  Chang Shu  <cshu@webkit.org>

        Unreviewed.

        [Qt] editing/inserting/5803706-1.html has the incorrect expected result
        https://bugs.webkit.org/show_bug.cgi?id=60479

        * platform/qt/editing/inserting/5803706-1-expected.txt: Removed.

2011-05-09  Martin Robinson  <mrobinson@igalia.com>

        Add a pixel result for platform/gtk/fonts/fontconfig-synthetic-bold.html.

        * platform/gtk/fonts/fontconfig-synthetic-bold-expected.png: Added.

2011-05-08  Abhishek Arya  <inferno@chromium.org>

        Reviewed by Dave Hyatt.

        Add a crash test for r85964.
        https://bugs.webkit.org/show_bug.cgi?id=59473

        * fast/block/positioning/removing-inside-relpositioned-inline-crash-expected.txt: Added.
        * fast/block/positioning/removing-inside-relpositioned-inline-crash.html: Added.

2011-05-09  Abhishek Arya  <inferno@chromium.org>

        Reviewed by Dave Hyatt.

        Tests that we do not when failing to dirty lines while removing
        a inline.
        https://bugs.webkit.org/show_bug.cgi?id=60448

        * fast/inline/inline-destroy-dirty-lines-crash-expected.txt: Added.
        * fast/inline/inline-destroy-dirty-lines-crash.html: Added.

2011-05-09  Alejandro G. Castro  <alex@igalia.com>

        Unreviewed, skip 2 more flaky svg tests failing by one pixel in
        32-bits Debug, see bug 39022.

        * platform/gtk/Skipped:

2011-05-09  Andreas Kling  <andreas.kling@nokia.com>

        Unreviewed. Re-skip two failing inspector tests on Qt.

        They still fail in the bot's environment for whatever reason.

        * platform/qt/Skipped:

2011-05-09  Leandro Gracia Gil  <leandrogracia@chromium.org>

        Reviewed by Tony Gentilcore.

        Media Stream API: add exception raising to the getUserMedia method.
        https://bugs.webkit.org/show_bug.cgi?id=60387

        Update the expected results for the argument types after the lastest updates
        in the getUserMedia specification. The test has been disabled temporarily
        and will be re-enabled by 60177 since some exceptions are risen after parsing
        the provided options.

        * fast/dom/MediaStream/argument-types-expected.txt:
        * fast/dom/MediaStream/script-tests/argument-types.js:
        (ObjectThrowingException.prototype.toString):
        * platform/chromium/test_expectations.txt:

2011-05-09  Andreas Kling  <andreas.kling@nokia.com>

        Reviewed by Benjamin Poulain.

        [Qt] Minor skiplist cleanup.

        Unskip two inspector tests that aren't failing.
        Added explanation for why http/tests/misc/redirect-to-external-url.html is skipped.

        * platform/qt/Skipped:

2011-05-09  Mahesh Kulkarni  <mahesh.kulkarni@nokia.com>

        Reviewed by Andreas Kling.

        [Qt] fix fast/dom/Geolocation/window-close-crash.html
        https://bugs.webkit.org/show_bug.cgi?id=60458

        Unskipping fast/dom/Geolocation/window-close-crash.html.

        * platform/qt/Skipped:

2011-05-09  Srinivasulu Chereddy  <srinivasulu.chereddy@nokia.com>

        Reviewed by Laszlo Gombos.

        [Qt] one skipped 2d-transforms layout test passes on Qt Linux - skip list to be updated
        https://bugs.webkit.org/show_bug.cgi?id=60399

        * platform/qt/Skipped:

2011-05-09  Shishir Agrawal  <shishir@chromium.org>

        Reviewed by Tony Gentilcore.

        Implement Page Visibility API.
        https://bugs.webkit.org/show_bug.cgi?id=54181

        * fast/events/page-visibility-iframe-delete-test-expected.txt: Added.
        * fast/events/page-visibility-iframe-delete-test.html: Added.
        * fast/events/page-visibility-iframe-move-test-expected.txt: Added.
        * fast/events/page-visibility-iframe-move-test.html: Added.
        * fast/events/page-visibility-iframe-propagation-test-expected.txt: Added.
        * fast/events/page-visibility-iframe-propagation-test.html: Added.
        * fast/events/page-visibility-transition-test-expected.txt: Added.
        * fast/events/page-visibility-transition-test.html: Added.
        * fast/events/resources/page-visibility-iframe-delete-test-frame.html: Added.
        * fast/events/resources/page-visibility-iframe-move-new-page.html: Added.
        * platform/chromium/test_expectations.txt:
        * platform/gtk/Skipped:
        * platform/mac/Skipped:
        * platform/qt/Skipped:
        * platform/win/Skipped:

2011-05-09  Venkat Penukonda  <venkat.2.penukonda@nokia.com>

        Reviewed by Csaba Osztrogonác.

        [Qt]6 of the skipped canvas layout tests pass on Qt Linux
        https://bugs.webkit.org/show_bug.cgi?id=60382

        * platform/qt/Skipped: Removed passing canvas tests

2011-05-08  MORITA Hajime  <morrita@google.com>

        Unreviewed, rolling out r86042.
        http://trac.webkit.org/changeset/86042

        The change contains an incorrect specification.

        * platform/chromium/test_expectations.txt:

2011-05-08  MORITA Hajime  <morrita@google.com>

        Unreviewed marking flaky test (insecure-plugin-in-iframe.html)
        
        * platform/chromium/test_expectations.txt:

2011-05-08  Ryosuke Niwa  <rniwa@webkit.org>

        Reviewed by Kent Tamura.

        selectstart event does not fire when selection is made via select all
        https://bugs.webkit.org/show_bug.cgi?id=60376

        Added tests to ensure selectstart event is fired when a user selects all contents
        and script can prevent such selection change in selectstart's event handler.

        * fast/events/selectstart-on-selectall-expected.txt: Added.
        * fast/events/selectstart-on-selectall.html: Added.
        * fast/events/selectstart-prevent-selectall-expected.txt: Added.
        * fast/events/selectstart-prevent-selectall.html: Added.

2011-05-08  Abhishek Arya  <inferno@chromium.org>

        Unreviewed.

        More rebaselines for r86028.

        * platform/chromium-linux/fast/text/basic/002-expected.png:
        * platform/chromium-win/fast/text/basic/002-expected.png:
        * platform/chromium-win/fast/text/basic/002-expected.txt:

2011-05-08  Kenji Imasaki  <imasaki@chromium.org>

        Reviewed by Eric Seidel.

        [Chromium] add rebaseline for video-volume-slider for GPU.
        https://bugs.webkit.org/show_bug.cgi?id=60427

        These tests are failing due to text.
        http://code.google.com/p/chromium/issues/detail?id=81482

        * platform/chromium-gpu-linux/media/video-volume-slider-expected.png:
        * platform/chromium-gpu-mac/media/video-volume-slider-expected.png:
        * platform/chromium-gpu-win/media/video-volume-slider-expected.png:
        * platform/chromium/test_expectations.txt:

2011-05-08  Abhishek Arya  <inferno@chromium.org>

        Unreviewed.

        More chromium rebaseline for r86028.

        * platform/chromium-linux/css1/box_properties/float_on_text_elements-expected.png:
        * platform/chromium-linux/fast/text/justified-selection-expected.png:
        * platform/chromium-linux/fast/text/justify-ideograph-leading-expansion-expected.png: Added.
        * platform/chromium-linux/fast/text/justify-nbsp-expected.png: Removed.
        * platform/chromium-linux/fast/text/trailing-white-space-2-expected.png:
        * platform/chromium-linux/fast/text/trailing-white-space-expected.png:
        * platform/chromium-mac-leopard/fast/text/justify-nbsp-expected.png: Removed.
        * platform/chromium-mac/fast/text/justify-ideograph-leading-expansion-expected.png: Added.
        * platform/chromium-mac/fast/text/justify-ideograph-leading-expansion-expected.txt:
        * platform/chromium-win-xp/fast/text/justify-ideograph-leading-expansion-expected.png: Added.
        * platform/chromium-win/css1/box_properties/float_on_text_elements-expected.png:
        * platform/chromium-win/css1/box_properties/float_on_text_elements-expected.txt:
        * platform/chromium-win/fast/text/justified-selection-expected.png:
        * platform/chromium-win/fast/text/justified-selection-expected.txt:
        * platform/chromium-win/fast/text/justify-ideograph-leading-expansion-expected.png: Added.
        * platform/chromium-win/fast/text/justify-ideograph-leading-expansion-expected.txt: Added.
        * platform/chromium-win/fast/text/justify-nbsp-expected.png: Added.
        * platform/chromium-win/fast/text/trailing-white-space-2-expected.png:
        * platform/chromium-win/fast/text/trailing-white-space-2-expected.txt:
        * platform/chromium-win/fast/text/trailing-white-space-expected.png:
        * platform/chromium-win/fast/text/trailing-white-space-expected.txt:
        * platform/chromium/test_expectations.txt:

2011-05-08  Abhishek Arya  <inferno@chromium.org>

        Unreviewed.

        Chromium Rebaselines for r86028.

        * platform/chromium-linux/css1/box_properties/clear_float-expected.png:
        * platform/chromium-linux/css2.1/t0905-c5525-fltcont-00-d-g-expected.png:
        * platform/chromium-linux/css2.1/t0905-c5525-fltcont-00-d-g-expected.txt:
        * platform/chromium-linux/css2.1/t0905-c5525-fltwidth-00-c-g-expected.png:
        * platform/chromium-linux/css2.1/t0905-c5525-fltwidth-00-c-g-expected.txt:
        * platform/chromium-linux/css2.1/t1602-c546-txt-align-00-b-expected.png:
        * platform/chromium-linux/fast/multicol/float-avoidance-expected.png:
        * platform/chromium-linux/fast/multicol/vertical-lr/float-avoidance-expected.png:
        * platform/chromium-linux/fast/multicol/vertical-rl/float-avoidance-expected.png:
        * platform/chromium-linux/fast/repaint/line-flow-with-floats-1-expected.png:
        * platform/chromium-linux/fast/repaint/line-flow-with-floats-10-expected.png:
        * platform/chromium-linux/fast/repaint/line-flow-with-floats-2-expected.png:
        * platform/chromium-linux/fast/repaint/line-flow-with-floats-3-expected.png:
        * platform/chromium-linux/fast/repaint/line-flow-with-floats-4-expected.png:
        * platform/chromium-linux/fast/repaint/line-flow-with-floats-5-expected.png:
        * platform/chromium-linux/fast/repaint/line-flow-with-floats-6-expected.png:
        * platform/chromium-linux/fast/repaint/line-flow-with-floats-7-expected.png:
        * platform/chromium-linux/fast/repaint/line-flow-with-floats-8-expected.png:
        * platform/chromium-linux/fast/repaint/line-flow-with-floats-9-expected.png:
        * platform/chromium-linux/fast/text/justified-selection-at-edge-expected.png:
        * platform/chromium-linux/svg/custom/svg-fonts-in-html-expected.png:
        * platform/chromium-linux/tables/mozilla/marvin/x_tbody_align_justify-expected.png:
        * platform/chromium-linux/tables/mozilla/marvin/x_td_align_justify-expected.png:
        * platform/chromium-linux/tables/mozilla/marvin/x_tfoot_align_justify-expected.png:
        * platform/chromium-linux/tables/mozilla/marvin/x_th_align_justify-expected.png:
        * platform/chromium-linux/tables/mozilla/marvin/x_thead_align_justify-expected.png:
        * platform/chromium-linux/tables/mozilla/marvin/x_tr_align_justify-expected.png:
        * platform/chromium-mac-leopard/css1/box_properties/clear_float-expected.png: Added.
        * platform/chromium-mac-leopard/css2.1/t0905-c5525-fltcont-00-d-g-expected.png: Added.
        * platform/chromium-mac-leopard/css2.1/t0905-c5525-fltwidth-00-c-g-expected.png: Added.
        * platform/chromium-mac-leopard/css2.1/t1602-c546-txt-align-00-b-expected.png:
        * platform/chromium-mac-leopard/fast/multicol/float-avoidance-expected.png:
        * platform/chromium-mac-leopard/fast/repaint/line-flow-with-floats-1-expected.png:
        * platform/chromium-mac-leopard/fast/repaint/line-flow-with-floats-10-expected.png:
        * platform/chromium-mac-leopard/fast/repaint/line-flow-with-floats-2-expected.png:
        * platform/chromium-mac-leopard/fast/repaint/line-flow-with-floats-3-expected.png:
        * platform/chromium-mac-leopard/fast/repaint/line-flow-with-floats-4-expected.png:
        * platform/chromium-mac-leopard/fast/repaint/line-flow-with-floats-5-expected.png:
        * platform/chromium-mac-leopard/fast/repaint/line-flow-with-floats-6-expected.png:
        * platform/chromium-mac-leopard/fast/repaint/line-flow-with-floats-7-expected.png:
        * platform/chromium-mac-leopard/fast/repaint/line-flow-with-floats-8-expected.png:
        * platform/chromium-mac-leopard/fast/repaint/line-flow-with-floats-9-expected.png:
        * platform/chromium-mac-leopard/fast/text/justified-selection-at-edge-expected.png:
        * platform/chromium-mac-leopard/tables/mozilla/marvin/x_tbody_align_justify-expected.png:
        * platform/chromium-mac-leopard/tables/mozilla/marvin/x_td_align_justify-expected.png:
        * platform/chromium-mac-leopard/tables/mozilla/marvin/x_tfoot_align_justify-expected.png:
        * platform/chromium-mac-leopard/tables/mozilla/marvin/x_th_align_justify-expected.png:
        * platform/chromium-mac-leopard/tables/mozilla/marvin/x_thead_align_justify-expected.png: Added.
        * platform/chromium-mac-leopard/tables/mozilla/marvin/x_tr_align_justify-expected.png:
        * platform/chromium-mac/fast/repaint/line-flow-with-floats-1-expected.png:
        * platform/chromium-mac/fast/repaint/line-flow-with-floats-10-expected.png:
        * platform/chromium-mac/fast/repaint/line-flow-with-floats-2-expected.png:
        * platform/chromium-mac/fast/repaint/line-flow-with-floats-3-expected.png:
        * platform/chromium-mac/fast/repaint/line-flow-with-floats-4-expected.png:
        * platform/chromium-mac/fast/repaint/line-flow-with-floats-5-expected.png:
        * platform/chromium-mac/fast/repaint/line-flow-with-floats-6-expected.png:
        * platform/chromium-mac/fast/repaint/line-flow-with-floats-7-expected.png:
        * platform/chromium-mac/fast/repaint/line-flow-with-floats-8-expected.png:
        * platform/chromium-mac/fast/repaint/line-flow-with-floats-9-expected.png:
        * platform/chromium-mac/svg/custom/svg-fonts-in-html-expected.png:
        * platform/chromium-win/css1/box_properties/clear_float-expected.png:
        * platform/chromium-win/css1/box_properties/clear_float-expected.txt:
        * platform/chromium-win/css2.1/t0905-c5525-fltcont-00-d-g-expected.png:
        * platform/chromium-win/css2.1/t0905-c5525-fltcont-00-d-g-expected.txt:
        * platform/chromium-win/css2.1/t0905-c5525-fltwidth-00-c-g-expected.png:
        * platform/chromium-win/css2.1/t0905-c5525-fltwidth-00-c-g-expected.txt:
        * platform/chromium-win/css2.1/t1602-c546-txt-align-00-b-expected.png:
        * platform/chromium-win/css2.1/t1602-c546-txt-align-00-b-expected.txt:
        * platform/chromium-win/fast/multicol/float-avoidance-expected.png:
        * platform/chromium-win/fast/multicol/float-avoidance-expected.txt:
        * platform/chromium-win/fast/multicol/vertical-lr/float-avoidance-expected.png:
        * platform/chromium-win/fast/multicol/vertical-lr/float-avoidance-expected.txt:
        * platform/chromium-win/fast/multicol/vertical-rl/float-avoidance-expected.png:
        * platform/chromium-win/fast/multicol/vertical-rl/float-avoidance-expected.txt:
        * platform/chromium-win/fast/repaint/line-flow-with-floats-1-expected.png:
        * platform/chromium-win/fast/repaint/line-flow-with-floats-1-expected.txt:
        * platform/chromium-win/fast/repaint/line-flow-with-floats-10-expected.png:
        * platform/chromium-win/fast/repaint/line-flow-with-floats-10-expected.txt:
        * platform/chromium-win/fast/repaint/line-flow-with-floats-2-expected.png:
        * platform/chromium-win/fast/repaint/line-flow-with-floats-2-expected.txt:
        * platform/chromium-win/fast/repaint/line-flow-with-floats-3-expected.png:
        * platform/chromium-win/fast/repaint/line-flow-with-floats-3-expected.txt:
        * platform/chromium-win/fast/repaint/line-flow-with-floats-4-expected.png:
        * platform/chromium-win/fast/repaint/line-flow-with-floats-4-expected.txt:
        * platform/chromium-win/fast/repaint/line-flow-with-floats-5-expected.png:
        * platform/chromium-win/fast/repaint/line-flow-with-floats-5-expected.txt:
        * platform/chromium-win/fast/repaint/line-flow-with-floats-6-expected.png:
        * platform/chromium-win/fast/repaint/line-flow-with-floats-6-expected.txt:
        * platform/chromium-win/fast/repaint/line-flow-with-floats-7-expected.png:
        * platform/chromium-win/fast/repaint/line-flow-with-floats-7-expected.txt:
        * platform/chromium-win/fast/repaint/line-flow-with-floats-8-expected.png:
        * platform/chromium-win/fast/repaint/line-flow-with-floats-8-expected.txt:
        * platform/chromium-win/fast/repaint/line-flow-with-floats-9-expected.png:
        * platform/chromium-win/fast/repaint/line-flow-with-floats-9-expected.txt:
        * platform/chromium-win/fast/text/justified-selection-at-edge-expected.png:
        * platform/chromium-win/fast/text/justified-selection-at-edge-expected.txt:
        * platform/chromium-win/svg/custom/svg-fonts-in-html-expected.png:
        * platform/chromium-win/svg/custom/svg-fonts-in-html-expected.txt:
        * platform/chromium-win/tables/mozilla/marvin/x_tbody_align_justify-expected.png:
        * platform/chromium-win/tables/mozilla/marvin/x_tbody_align_justify-expected.txt:
        * platform/chromium-win/tables/mozilla/marvin/x_td_align_justify-expected.png:
        * platform/chromium-win/tables/mozilla/marvin/x_td_align_justify-expected.txt:
        * platform/chromium-win/tables/mozilla/marvin/x_tfoot_align_justify-expected.png:
        * platform/chromium-win/tables/mozilla/marvin/x_tfoot_align_justify-expected.txt:
        * platform/chromium-win/tables/mozilla/marvin/x_th_align_justify-expected.png:
        * platform/chromium-win/tables/mozilla/marvin/x_th_align_justify-expected.txt:
        * platform/chromium-win/tables/mozilla/marvin/x_thead_align_justify-expected.png:
        * platform/chromium-win/tables/mozilla/marvin/x_thead_align_justify-expected.txt:
        * platform/chromium-win/tables/mozilla/marvin/x_tr_align_justify-expected.png:
        * platform/chromium-win/tables/mozilla/marvin/x_tr_align_justify-expected.txt:
        * platform/chromium/test_expectations.txt:

2011-05-08  Dan Bernstein  <mitz@apple.com>

        Updated a platform-specific expected result again after r86028.

        * platform/qt/fast/multicol/vertical-lr/float-avoidance-expected.txt:

2011-05-08  Dan Bernstein  <mitz@apple.com>

        Updated some platform-specific expected results after r86028.

        * platform/gtk/css1/box_properties/clear_float-expected.txt:
        * platform/gtk/css1/box_properties/float_on_text_elements-expected.txt:
        * platform/gtk/css2.1/t0905-c5525-fltcont-00-d-g-expected.txt:
        * platform/gtk/css2.1/t0905-c5525-fltwidth-00-c-g-expected.txt:
        * platform/gtk/css2.1/t1602-c546-txt-align-00-b-expected.txt:
        * platform/gtk/fast/multicol/float-avoidance-expected.txt:
        * platform/gtk/fast/multicol/vertical-lr/float-avoidance-expected.txt:
        * platform/gtk/fast/multicol/vertical-rl/float-avoidance-expected.txt:
        * platform/gtk/fast/repaint/line-flow-with-floats-1-expected.txt:
        * platform/gtk/fast/repaint/line-flow-with-floats-10-expected.txt:
        * platform/gtk/fast/repaint/line-flow-with-floats-2-expected.txt:
        * platform/gtk/fast/repaint/line-flow-with-floats-3-expected.txt:
        * platform/gtk/fast/repaint/line-flow-with-floats-4-expected.txt:
        * platform/gtk/fast/repaint/line-flow-with-floats-5-expected.txt:
        * platform/gtk/fast/repaint/line-flow-with-floats-6-expected.txt:
        * platform/gtk/fast/repaint/line-flow-with-floats-7-expected.txt:
        * platform/gtk/fast/repaint/line-flow-with-floats-8-expected.txt:
        * platform/gtk/fast/repaint/line-flow-with-floats-9-expected.txt:
        * platform/gtk/fast/text/justified-selection-at-edge-expected.txt:
        * platform/gtk/fast/text/trailing-white-space-2-expected.txt:
        * platform/gtk/svg/custom/svg-fonts-in-html-expected.txt:
        * platform/gtk/tables/mozilla/marvin/x_tbody_align_justify-expected.txt:
        * platform/gtk/tables/mozilla/marvin/x_td_align_justify-expected.txt:
        * platform/gtk/tables/mozilla/marvin/x_tfoot_align_justify-expected.txt:
        * platform/gtk/tables/mozilla/marvin/x_th_align_justify-expected.txt:
        * platform/gtk/tables/mozilla/marvin/x_thead_align_justify-expected.txt:
        * platform/gtk/tables/mozilla/marvin/x_tr_align_justify-expected.txt:
        * platform/mac-leopard/fast/text/justify-ideograph-leading-expansion-expected.txt:
        * platform/qt/css1/box_properties/clear_float-expected.txt:
        * platform/qt/css1/box_properties/float_elements_in_series-expected.txt:
        * platform/qt/css1/box_properties/float_on_text_elements-expected.txt:
        * platform/qt/css2.1/t0905-c5525-fltcont-00-d-g-expected.txt:
        * platform/qt/css2.1/t0905-c5525-fltwidth-00-c-g-expected.txt:
        * platform/qt/css2.1/t1602-c546-txt-align-00-b-expected.txt:
        * platform/qt/fast/multicol/float-avoidance-expected.txt:
        * platform/qt/fast/multicol/vertical-lr/float-avoidance-expected.txt:
        * platform/qt/fast/multicol/vertical-rl/float-avoidance-expected.txt:
        * platform/qt/fast/text/justified-selection-at-edge-expected.txt:
        * platform/qt/fast/text/justify-nbsp-expected.txt:
        * platform/qt/svg/custom/svg-fonts-in-html-expected.txt:
        * platform/qt/tables/mozilla/marvin/x_tbody_align_justify-expected.txt:
        * platform/qt/tables/mozilla/marvin/x_td_align_justify-expected.txt:
        * platform/qt/tables/mozilla/marvin/x_tfoot_align_justify-expected.txt:
        * platform/qt/tables/mozilla/marvin/x_th_align_justify-expected.txt:
        * platform/qt/tables/mozilla/marvin/x_thead_align_justify-expected.txt:
        * platform/qt/tables/mozilla/marvin/x_tr_align_justify-expected.txt:
        * platform/win/css2.1/t0905-c5525-fltwidth-00-c-g-expected.txt:

2011-05-08  Dan Bernstein  <mitz@apple.com>

        Reviewed by Darin Adler.

        <rdar://problem/9401853> REGRESSION (r78846): Insufficient expansion for justification when there are multiple inline boxes
        https://bugs.webkit.org/show_bug.cgi?id=60432

        * fast/text/justify-nbsp-expected.png:
        * fast/text/justify-nbsp-expected.txt:
        * platform/mac-snowleopard/fast/text/justify-ideograph-leading-expansion-expected.txt:
        * platform/mac/css1/box_properties/clear_float-expected.png:
        * platform/mac/css1/box_properties/clear_float-expected.txt:
        * platform/mac/css1/box_properties/float_on_text_elements-expected.txt:
        * platform/mac/css2.1/t0905-c5525-fltcont-00-d-g-expected.png:
        * platform/mac/css2.1/t0905-c5525-fltcont-00-d-g-expected.txt:
        * platform/mac/css2.1/t0905-c5525-fltwidth-00-c-g-expected.png:
        * platform/mac/css2.1/t0905-c5525-fltwidth-00-c-g-expected.txt:
        * platform/mac/css2.1/t1602-c546-txt-align-00-b-expected.png:
        * platform/mac/css2.1/t1602-c546-txt-align-00-b-expected.txt:
        * platform/mac/fast/multicol/float-avoidance-expected.png:
        * platform/mac/fast/multicol/float-avoidance-expected.txt:
        * platform/mac/fast/multicol/vertical-lr/float-avoidance-expected.png:
        * platform/mac/fast/multicol/vertical-lr/float-avoidance-expected.txt:
        * platform/mac/fast/multicol/vertical-rl/float-avoidance-expected.png:
        * platform/mac/fast/multicol/vertical-rl/float-avoidance-expected.txt:
        * platform/mac/fast/repaint/line-flow-with-floats-1-expected.png:
        * platform/mac/fast/repaint/line-flow-with-floats-1-expected.txt:
        * platform/mac/fast/repaint/line-flow-with-floats-10-expected.png:
        * platform/mac/fast/repaint/line-flow-with-floats-10-expected.txt:
        * platform/mac/fast/repaint/line-flow-with-floats-2-expected.png:
        * platform/mac/fast/repaint/line-flow-with-floats-2-expected.txt:
        * platform/mac/fast/repaint/line-flow-with-floats-3-expected.png:
        * platform/mac/fast/repaint/line-flow-with-floats-3-expected.txt:
        * platform/mac/fast/repaint/line-flow-with-floats-4-expected.png:
        * platform/mac/fast/repaint/line-flow-with-floats-4-expected.txt:
        * platform/mac/fast/repaint/line-flow-with-floats-5-expected.png:
        * platform/mac/fast/repaint/line-flow-with-floats-5-expected.txt:
        * platform/mac/fast/repaint/line-flow-with-floats-6-expected.png:
        * platform/mac/fast/repaint/line-flow-with-floats-6-expected.txt:
        * platform/mac/fast/repaint/line-flow-with-floats-7-expected.png:
        * platform/mac/fast/repaint/line-flow-with-floats-7-expected.txt:
        * platform/mac/fast/repaint/line-flow-with-floats-8-expected.png:
        * platform/mac/fast/repaint/line-flow-with-floats-8-expected.txt:
        * platform/mac/fast/repaint/line-flow-with-floats-9-expected.png:
        * platform/mac/fast/repaint/line-flow-with-floats-9-expected.txt:
        * platform/mac/fast/text/hyphenate-character-expected.png:
        * platform/mac/fast/text/hyphenate-character-expected.txt:
        * platform/mac/fast/text/hyphens-expected.png:
        * platform/mac/fast/text/hyphens-expected.txt:
        * platform/mac/fast/text/justified-selection-at-edge-expected.png:
        * platform/mac/fast/text/justified-selection-at-edge-expected.txt:
        * platform/mac/fast/text/justify-ideograph-leading-expansion-expected.png:
        * platform/mac/svg/custom/svg-fonts-in-html-expected.png:
        * platform/mac/svg/custom/svg-fonts-in-html-expected.txt:
        * platform/mac/tables/mozilla/marvin/x_tbody_align_justify-expected.png:
        * platform/mac/tables/mozilla/marvin/x_tbody_align_justify-expected.txt:
        * platform/mac/tables/mozilla/marvin/x_td_align_justify-expected.png:
        * platform/mac/tables/mozilla/marvin/x_td_align_justify-expected.txt:
        * platform/mac/tables/mozilla/marvin/x_tfoot_align_justify-expected.png:
        * platform/mac/tables/mozilla/marvin/x_tfoot_align_justify-expected.txt:
        * platform/mac/tables/mozilla/marvin/x_th_align_justify-expected.png:
        * platform/mac/tables/mozilla/marvin/x_th_align_justify-expected.txt:
        * platform/mac/tables/mozilla/marvin/x_thead_align_justify-expected.png:
        * platform/mac/tables/mozilla/marvin/x_thead_align_justify-expected.txt:
        * platform/mac/tables/mozilla/marvin/x_tr_align_justify-expected.png:
        * platform/mac/tables/mozilla/marvin/x_tr_align_justify-expected.txt:

2011-05-07  Dan Bernstein  <mitz@apple.com>

        Reviewed by Maciej Stachowiak.

        <rdar://problem/9403055> REGRESSION (r85499): Inline images in iChat overflow their chat bubbles
        https://bugs.webkit.org/show_bug.cgi?id=60443

        * fast/replaced/table-percent-height-positioned-expected.png: Added.
        * fast/replaced/table-percent-height-positioned-expected.txt: Added.
        * fast/replaced/table-percent-height-positioned.html: Added.

2011-05-07  Justin Novosad  <junov@chromium.org>

        Reviewed by Kenneth Russell.

        [Chromium] Cleanup unexpected test passes in the gpu webkit tests
        https://bugs.webkit.org/show_bug.cgi?id=60393

        * platform/chromium/test_expectations.txt:

2011-05-07  Jessie Berlin  <jberlin@apple.com>

        [Windows WebKit2 Release Tests]
        platform/win/plugins/window-geometry-initialized-before-set-window.html and
        platform/win/plugins/window-region-is-set-to-clip-rect.html failing since r85795.
        https://bugs.webkit.org/show_bug.cgi?id=60442

        Add win-wk2 failing expected results to get the bots green.

        * platform/win-wk2/platform/win/plugins/window-geometry-initialized-before-set-window-expected.txt: Added.
        * platform/win-wk2/platform/win/plugins/window-region-is-set-to-clip-rect-expected.txt: Added.

2011-05-07  Jessie Berlin  <jberlin@apple.com>

        WebKitTestRunner needs layoutTestController.setPopupBlockingEnabled

        Add another test (fast/events/popup-blocked-from-mousemove.html) to the mac-wk2 Skipped list
        to get the bots green.

        * platform/mac-wk2/Skipped:

2011-05-07  Joe Mason  <jmason@rim.com>

        Reviewed by Daniel Bates.

        FrameLoader::isProcessingUserGesture is wrong in dispatchWillPerformClientRedirect
        https://bugs.webkit.org/show_bug.cgi?id=52211

        Add willPerformClientRedirect to the user-gesture tests.

        * fast/frames/location-redirect-user-gesture-expected.txt:
        * fast/frames/meta-refresh-user-gesture-expected.txt:

2011-05-07  Jessie Berlin  <jberlin@apple.com>

        [WebKit2] editing/selection/select-across-readonly-input-{1-5}.html failing since
        introduction in r85669.
        https://bugs.webkit.org/show_bug.cgi?id=60272

        Add expected failing text results to get the bots green.

        Note: these tests still need pixel results to be generated both for mac-wk2 and win-wk2.

        * platform/mac-wk2/editing/selection: Added.
        * platform/mac-wk2/editing/selection/select-across-readonly-input-1-expected.txt: Added.
        * platform/mac-wk2/editing/selection/select-across-readonly-input-2-expected.txt: Added.
        * platform/mac-wk2/editing/selection/select-across-readonly-input-3-expected.txt: Added.
        * platform/mac-wk2/editing/selection/select-across-readonly-input-4-expected.txt: Added.
        * platform/mac-wk2/editing/selection/select-across-readonly-input-5-expected.txt: Added.

2011-05-06  Abhishek Arya  <inferno@chromium.org>

        Unreviewed.

        Forgot it since my last svg rebaseline r85981.

        * platform/chromium-win-xp/svg/batik/text/textFeatures-expected.png: Added.

2011-05-06  Abhishek Arya  <inferno@chromium.org>

        Unreviewed.

        Chromium rebaselines for r85990

        * platform/chromium-linux/scrollbars/scrollbars-on-positioned-content-expected.png: Added.
        * platform/chromium-mac-leopard/scrollbars/scrollbars-on-positioned-content-expected.png: Added.
        * platform/chromium-mac/scrollbars/scrollbars-on-positioned-content-expected.png: Added.
        * platform/chromium-win/scrollbars/scrollbars-on-positioned-content-expected.png: Added.
        * platform/chromium-win/scrollbars/scrollbars-on-positioned-content-expected.txt: Added.

2011-05-06  Adam Barth  <abarth@webkit.org>

        Reviewed by Eric Seidel.

        Implement "Report-Only" mode for CSP
        https://bugs.webkit.org/show_bug.cgi?id=60402

        * http/tests/security/contentSecurityPolicy/report-only-expected.txt: Added.
        * http/tests/security/contentSecurityPolicy/report-only.html: Added.

2011-05-06  Kenji Imasaki  <imasaki@chromium.org>

        Reviewed by David Levin.

        [Chromium] Add rebaseline to chromium for video-layer.
        https://bugs.webkit.org/show_bug.cgi?id=60423

        These expected files are produced by the rebaseline tool.
        http://code.google.com/p/chromium/issues/detail?id=81833

        * platform/chromium-linux/fast/layers/video-layer-expected.png:
        * platform/chromium-mac-leopard/fast/layers/video-layer-expected.png:
        * platform/chromium-mac/fast/layers/video-layer-expected.png:
        * platform/chromium-mac/fast/layers/video-layer-expected.txt:
        * platform/chromium-win/fast/layers/video-layer-expected.png:
        * platform/chromium-win/fast/layers/video-layer-expected.txt:
        * platform/chromium/test_expectations.txt:

2011-05-06  Steve Lacey  <sjl@chromium.org>

        Reviewed by David Levin.

        [chromium] Rebaseline needed for media/audio-repaint
        https://bugs.webkit.org/show_bug.cgi?id=60416

        * platform/chromium-linux/media/audio-repaint-expected.png:
        * platform/chromium-mac-leopard/media/audio-repaint-expected.png:
        * platform/chromium-mac-leopard/media/audio-repaint-expected.txt: Removed.
        * platform/chromium-mac/media/audio-repaint-expected.png:
        * platform/chromium-mac/media/audio-repaint-expected.txt:
        * platform/chromium-win/media/audio-repaint-expected.png:
        * platform/chromium-win/media/audio-repaint-expected.txt:
        * platform/chromium/test_expectations.txt:

2011-05-06  Beth Dakin  <bdakin@apple.com>

        Reviewed by Darin Adler.

        https://bugs.webkit.org/show_bug.cgi?id=60421
        Custom scrollbars nested inside an overlay scrollbar overflow region end up 
        painting twice
        -and corresponding-
        <rdar://problem/9389072>

        * platform/mac/scrollbars/scrollbars-on-positioned-content-expected.png: Added.
        * platform/mac/scrollbars/scrollbars-on-positioned-content-expected.txt: Added.
        * scrollbars/scrollbars-on-positioned-content.html: Added.

2011-05-06  Abhishek Arya  <inferno@chromium.org>

        Unreviewed.

        Disable platform/win/plugins/visibility-hidden.html.

        * platform/chromium/test_expectations.txt:

2011-05-06  Abhishek Arya  <inferno@chromium.org>

        Unreviewed.

        Rebaselines for r85926.
        https://bugs.webkit.org/show_bug.cgi?id=60356

        * platform/chromium-linux/svg/W3C-SVG-1.1/filters-color-01-b-expected.png:
        * platform/chromium-linux/svg/W3C-SVG-1.1/filters-comptran-01-b-expected.png:
        * platform/chromium-linux/svg/W3C-SVG-1.1/filters-gauss-01-b-expected.png:
        * platform/chromium-linux/svg/W3C-SVG-1.1/filters-morph-01-f-expected.png:
        * platform/chromium-linux/svg/batik/filters/feTile-expected.png:
        * platform/chromium-linux/svg/batik/filters/filterRegions-expected.png:
        * platform/chromium-linux/svg/custom/feComponentTransfer-Discrete-expected.png:
        * platform/chromium-linux/svg/custom/feComponentTransfer-Gamma-expected.png:
        * platform/chromium-linux/svg/custom/feComponentTransfer-Linear-expected.png:
        * platform/chromium-linux/svg/custom/feComponentTransfer-Table-expected.png:
        * platform/chromium-linux/svg/dynamic-updates/SVGFEImageElement-dom-preserveAspectRatio-attr-expected.png:
        * platform/chromium-linux/svg/dynamic-updates/SVGFEImageElement-svgdom-preserveAspectRatio-prop-expected.png:
        * platform/chromium-linux/svg/filters/filter-on-tspan-expected.png:
        * platform/chromium-linux/svg/filters/filterRes-expected.png: Added.
        * platform/chromium-linux/svg/filters/subRegion-one-effect-expected.png:
        * platform/chromium-linux/svg/filters/subRegion-two-effects-expected.png:
        * platform/chromium-mac-leopard/svg/W3C-SVG-1.1-SE/filters-image-03-f-expected.png:
        * platform/chromium-mac-leopard/svg/W3C-SVG-1.1/filters-color-01-b-expected.png:
        * platform/chromium-mac-leopard/svg/W3C-SVG-1.1/filters-comptran-01-b-expected.png:
        * platform/chromium-mac-leopard/svg/W3C-SVG-1.1/filters-gauss-01-b-expected.png: Added.
        * platform/chromium-mac-leopard/svg/W3C-SVG-1.1/filters-morph-01-f-expected.png:
        * platform/chromium-mac-leopard/svg/batik/filters: Added.
        * platform/chromium-mac-leopard/svg/batik/filters/feTile-expected.png: Added.
        * platform/chromium-mac-leopard/svg/batik/filters/filterRegions-expected.png: Added.
        * platform/chromium-mac-leopard/svg/batik/text/textFeatures-expected.png: Added.
        * platform/chromium-mac-leopard/svg/custom/feComponentTransfer-Discrete-expected.png:
        * platform/chromium-mac-leopard/svg/custom/feComponentTransfer-Gamma-expected.png:
        * platform/chromium-mac-leopard/svg/custom/feComponentTransfer-Linear-expected.png:
        * platform/chromium-mac-leopard/svg/custom/feComponentTransfer-Table-expected.png:
        * platform/chromium-mac-leopard/svg/dynamic-updates/SVGFEImageElement-dom-preserveAspectRatio-attr-expected.png:
        * platform/chromium-mac-leopard/svg/dynamic-updates/SVGFEImageElement-svgdom-preserveAspectRatio-prop-expected.png:
        * platform/chromium-mac-leopard/svg/filters/feGaussianBlur-expected.png: Added.
        * platform/chromium-mac-leopard/svg/filters/feOffset-expected.png:
        * platform/chromium-mac-leopard/svg/filters/feTile-expected.png: Added.
        * platform/chromium-mac-leopard/svg/filters/filter-on-tspan-expected.png: Added.
        * platform/chromium-mac-leopard/svg/filters/filter-rounding-issues-expected.png: Added.
        * platform/chromium-mac-leopard/svg/filters/filterRes-expected.png:
        * platform/chromium-mac/svg/W3C-SVG-1.1-SE/filters-image-03-f-expected.png:
        * platform/chromium-mac/svg/W3C-SVG-1.1/filters-color-01-b-expected.png:
        * platform/chromium-mac/svg/W3C-SVG-1.1/filters-comptran-01-b-expected.png: Added.
        * platform/chromium-mac/svg/W3C-SVG-1.1/filters-gauss-01-b-expected.png: Added.
        * platform/chromium-mac/svg/W3C-SVG-1.1/filters-morph-01-f-expected.png:
        * platform/chromium-mac/svg/batik/filters/feTile-expected.png: Added.
        * platform/chromium-mac/svg/batik/filters/filterRegions-expected.png: Added.
        * platform/chromium-mac/svg/batik/text/textFeatures-expected.png: Added.
        * platform/chromium-mac/svg/custom/feComponentTransfer-Discrete-expected.png:
        * platform/chromium-mac/svg/custom/feComponentTransfer-Gamma-expected.png:
        * platform/chromium-mac/svg/custom/feComponentTransfer-Linear-expected.png:
        * platform/chromium-mac/svg/custom/feComponentTransfer-Table-expected.png:
        * platform/chromium-mac/svg/dynamic-updates/SVGFEImageElement-dom-preserveAspectRatio-attr-expected.png:
        * platform/chromium-mac/svg/dynamic-updates/SVGFEImageElement-svgdom-preserveAspectRatio-prop-expected.png:
        * platform/chromium-mac/svg/filters/feGaussianBlur-expected.png: Added.
        * platform/chromium-mac/svg/filters/feOffset-expected.png: Added.
        * platform/chromium-mac/svg/filters/feTile-expected.png: Added.
        * platform/chromium-mac/svg/filters/filter-on-tspan-expected.png: Added.
        * platform/chromium-mac/svg/filters/filter-rounding-issues-expected.png: Added.
        * platform/chromium-mac/svg/filters/filterRes-expected.png: Added.
        * platform/chromium-mac/svg/filters/filterRes1-expected.png: Added.
        * platform/chromium-mac/svg/filters/filterRes3-expected.png: Added.
        * platform/chromium-mac/svg/filters/parent-children-with-same-filter-expected.png: Added.
        * platform/chromium-mac/svg/filters/subRegion-one-effect-expected.png: Added.
        * platform/chromium-mac/svg/filters/subRegion-two-effects-expected.png: Added.
        * platform/chromium-win-vista/svg/batik/text/textFeatures-expected.png: Added.
        * platform/chromium-win/svg/W3C-SVG-1.1/filters-color-01-b-expected.png:
        * platform/chromium-win/svg/W3C-SVG-1.1/filters-comptran-01-b-expected.png:
        * platform/chromium-win/svg/W3C-SVG-1.1/filters-gauss-01-b-expected.png:
        * platform/chromium-win/svg/W3C-SVG-1.1/filters-morph-01-f-expected.png:
        * platform/chromium-win/svg/batik/filters/feTile-expected.png:
        * platform/chromium-win/svg/batik/filters/filterRegions-expected.png:
        * platform/chromium-win/svg/batik/text/textFeatures-expected.png:
        * platform/chromium-win/svg/custom/feComponentTransfer-Discrete-expected.png:
        * platform/chromium-win/svg/custom/feComponentTransfer-Gamma-expected.png:
        * platform/chromium-win/svg/custom/feComponentTransfer-Linear-expected.png:
        * platform/chromium-win/svg/custom/feComponentTransfer-Table-expected.png:
        * platform/chromium-win/svg/dynamic-updates/SVGFEImageElement-dom-preserveAspectRatio-attr-expected.png:
        * platform/chromium-win/svg/dynamic-updates/SVGFEImageElement-svgdom-preserveAspectRatio-prop-expected.png:
        * platform/chromium-win/svg/filters/feGaussianBlur-expected.png:
        * platform/chromium-win/svg/filters/feOffset-expected.png:
        * platform/chromium-win/svg/filters/feTile-expected.png:
        * platform/chromium-win/svg/filters/filter-on-tspan-expected.png:
        * platform/chromium-win/svg/filters/filter-rounding-issues-expected.png:
        * platform/chromium-win/svg/filters/filterRes-expected.png: Added.
        * platform/chromium-win/svg/filters/filterRes1-expected.png:
        * platform/chromium-win/svg/filters/filterRes3-expected.png:
        * platform/chromium-win/svg/filters/parent-children-with-same-filter-expected.png:
        * platform/chromium-win/svg/filters/subRegion-one-effect-expected.png:
        * platform/chromium-win/svg/filters/subRegion-two-effects-expected.png:
        * platform/chromium/test_expectations.txt:

2011-05-06  Abhishek Arya  <inferno@chromium.org>

        Unreviewed.

        Chromium Rebaselines for r85964, r85971 and r85967.

        * platform/chromium-linux/fast/block/positioning/hiding-inside-relpositioned-inline-expected.png: Added.
        * platform/chromium-linux/fast/forms/date-input-visible-strings-expected.png: Added.
        * platform/chromium-linux/fast/inline/nested-top-alignment-expected.png: Added.
        * platform/chromium-mac-leopard/fast/block/positioning/hiding-inside-relpositioned-inline-expected.png: Added.
        * platform/chromium-mac-leopard/fast/forms/date-input-visible-strings-expected.png: Added.
        * platform/chromium-mac-leopard/fast/inline/nested-top-alignment-expected.png: Added.
        * platform/chromium-win/fast/block/positioning/hiding-inside-relpositioned-inline-expected.png: Added.
        * platform/chromium-win/fast/block/positioning/hiding-inside-relpositioned-inline-expected.txt: Added.
        * platform/chromium-win/fast/forms/date-input-visible-strings-expected.png: Added.
        * platform/chromium-win/fast/forms/date-input-visible-strings-expected.txt: Added.
        * platform/chromium-win/fast/inline/nested-top-alignment-expected.png: Added.
        * platform/chromium-win/fast/inline/nested-top-alignment-expected.txt: Added.
        * platform/chromium/test_expectations.txt:

2011-05-06  Justin Schuh  <jschuh@chromium.org>

        Reviewed by Adam Barth.

        [Chromium] Whitelist input events interpreted as user gestures
        https://bugs.webkit.org/show_bug.cgi?id=60213

        * fast/events/popup-blocked-from-mousemove-expected.txt: Added.
        * fast/events/popup-blocked-from-mousemove.html: Added.

2011-05-06  Abhishek Arya  <inferno@chromium.org>

        Unreviewed.

        Fix error due to duplicate entry.

        * platform/chromium/test_expectations.txt:

2011-05-06  Adam Barth  <abarth@webkit.org>

        Reviewed by Eric Seidel.

        Add disable-javascript-urls CSP directive
        https://bugs.webkit.org/show_bug.cgi?id=60301

        * http/tests/security/contentSecurityPolicy/javascript-urls-blocked-expected.txt: Added.
        * http/tests/security/contentSecurityPolicy/javascript-urls-blocked.html: Added.

2011-05-06  Adam Barth  <abarth@webkit.org>

        Reviewed by Eric Seidel.

        Wire up CSP's eval blocking to V8's new API
        https://bugs.webkit.org/show_bug.cgi?id=60384

        * platform/chromium/http/tests/security/contentSecurityPolicy/eval-blocked-expected.txt: Added.
            - Boo different error messages.
        * platform/chromium/test_expectations.txt:
            - Test progression.

2011-05-06  David Hyatt  <hyatt@apple.com>

        Reviewed by Dan Bernstein.

        https://bugs.webkit.org/show_bug.cgi?id=60398 (<rdar://problem/9307696>)
        REGRESSION (r81684?): cox.com sign in button is missing
        
        Fix a typo in r81684 where the ascent was used in a comparison instead of boxHeight.
        This restores the original behavior before the refactoring messed it up.

        * fast/inline/nested-top-alignment.html: Added.
        * platform/mac/fast/inline/nested-top-alignment-expected.png: Added.
        * platform/mac/fast/inline/nested-top-alignment-expected.txt: Added.

2011-05-06  Adrienne Walker  <enne@google.com>

        [chromium] Unreviewed, rebaseline changes after r85959
        https://bugs.webkit.org/show_bug.cgi?id=59020

        * platform/chromium-gpu-mac/compositing/flat-with-transformed-child-expected.png: Added.
        * platform/chromium-gpu-win/compositing/flat-with-transformed-child-expected.png: Added.
        * platform/chromium/test_expectations.txt:

2011-05-06  Ojan Vafai  <ojan@chromium.org>

        Reviewed by Tony Chang.

        [results.html] label the zoomed pixel containers (expected, actual, diff)
        https://bugs.webkit.org/show_bug.cgi?id=60383

        * fast/harness/results.html:

2011-05-06  Joseph Pecoraro  <joepeck@webkit.org>

        Unreviewed. Add pixel results for mac.

        * platform/mac/fast/forms/date-input-visible-strings-expected.png: Added.

2011-05-06  Steve Lacey  <sjl@chromium.org>

        Reviewed by Eric Carlson.

        Add baselines to chromium for video-source-error that reflect the fact that
        chromium does not support mp4.

        [chromium] Rebaseline needed for video-source-error
        https://bugs.webkit.org/show_bug.cgi?id=60292

        * platform/chromium/media/video-source-error-expected.txt: Added.
        * platform/chromium/test_expectations.txt:

2011-05-06  David Hyatt  <hyatt@apple.com>

        Reviewed by Dan Bernstein.

        https://bugs.webkit.org/show_bug.cgi?id=60390 (<rdar://problem/9364449>)
        REGRESSION (r81992): portions of ticketmaster site render blank

        Make simplified layout skip from a positioned object out to its containing block.  There is no
        need to dirty the intermediate inlines, and in this case it's actively harmful, since the
        block responsible for the layout of the positioned object doesn't get m_posChildNeedsLayout set.

        * fast/block/positioning/hiding-inside-relpositioned-inline.html: Added.
        * platform/mac/fast/block/positioning/hiding-inside-relpositioned-inline-expected.png: Added.
        * platform/mac/fast/block/positioning/hiding-inside-relpositioned-inline-expected.txt: Added.

2011-05-06  Adam Roben  <aroben@apple.com>

        Add a test that shows that windowed plugins with visibility:hidden do not appear on screen

        I could only figure out how to make this a pixel test. Note that the pixel test doesn't pass
        in WebKit2 due to <http://webkit.org/b/58050>, but I verified it works correctly in
        MiniBrowser.

        Test for <http://webkit.org/b/60285> REGRESSION (WebKit2): A white rectangle covers up
        important UI elements when composing a new message at mail.yahoo.com with BrowserPlus!
        plug-in installed

        Reviewed by Anders Carlsson.

        * platform/win/plugins/visibility-hidden-expected.png: Added.
        * platform/win/plugins/visibility-hidden-expected.txt: Added.
        * platform/win/plugins/visibility-hidden.html: Added.

2011-05-04  Adrienne Walker  <enne@google.com>

        Reviewed by James Robinson.

        [chromium] Fix incorrect scissor rect for layers that render into a rendersurface
        https://bugs.webkit.org/show_bug.cgi?id=59020

        * compositing/flat-with-transformed-child-expected.txt: Added.
        * compositing/flat-with-transformed-child.html: Added.
        * platform/chromium-gpu-linux/compositing/flat-with-transformed-child-expected.checksum: Added.
        * platform/chromium-gpu-linux/compositing/flat-with-transformed-child-expected.png: Added.
        * platform/chromium/test_expectations.txt:

2011-05-05  Ojan Vafai  <ojan@chromium.org>

        Reviewed by Mihai Parparita.

        [results.html] zoomed pixel results should not be antialiased
        https://bugs.webkit.org/show_bug.cgi?id=60330

        -Use canvas instead of CSS zoom.
        -Only zoom the part of the image we need to show.
        -Make pixel zooming mostly work in Firefox.
        -Increase the zoom from 3x to 6x.

        * fast/harness/results.html:

2011-05-06  Adrienne Walker  <enne@google.com>

        [chromium] Unreviewed, fix parse errors in test_expectations.

        I will annotate bug 60356 so that this case gets looked at.

        * platform/chromium/test_expectations.txt:

2011-05-06  Csaba Osztrogonác  <ossy@webkit.org>

        Unreviewed expectations update.

        [Qt]fast/events/backspace-navigates-back.html fails
        https://bugs.webkit.org/show_bug.cgi?id=60349

        * platform/mac-wk2/Skipped: Add fast/events/backspace-navigates-back.html because of missing layoutTestController.setEditingBehavior().
        * platform/qt-arm/Skipped: Add fast/events/backspace-navigates-back.html.
        * platform/qt-arm/fast/block/float/float-not-removed-from-next-sibling-expected.txt: Added.
        * platform/qt-arm/fast/block/float/float-not-removed-from-next-sibling2-expected.txt: Added.
        * platform/qt-arm/fast/block/float/float-not-removed-from-next-sibling3-expected.txt: Added.
        * platform/qt-arm/fast/block/float/float-not-removed-from-next-sibling4-expected.txt: Added.
        * platform/qt-mac/Skipped: Add fast/events/backspace-navigates-back.html.

2011-05-06  Philippe Normand  <pnormand@igalia.com>

        Windows DRT needs an implementation of shadowRoot
        https://bugs.webkit.org/show_bug.cgi?id=59081

        Skip media/video-controls-visible-audio-only.html that now
        requires shadowRoot support.

        * platform/win/Skipped:

2011-05-06  Joe Mason  <jmason@rim.com>

        Reviewed by Adam Barth.

        WebSocket urls should always be encoded as UTF-8. Relative urls should not be expanded.
        https://bugs.webkit.org/show_bug.cgi?id=57138

        * http/tests/websocket/tests/url-with-nonascii-query-expected.txt: Added.
        * http/tests/websocket/tests/url-with-nonascii-query.html: Added.
        * http/tests/websocket/tests/url-parsing-expected.txt: Failure message for relative url has changed since it is no longer expanded.

2011-05-06  MORITA Hajime  <morrita@google.com>

        Unreviewed, marking tests whose expectations became obsolete since r85926.

        * platform/chromium/test_expectations.txt:

2011-05-03  Philippe Normand  <pnormand@igalia.com>

        Reviewed by Martin Robinson.

        Layout tests shouldn't have to hard code media controller element locations
        https://bugs.webkit.org/show_bug.cgi?id=28220

        New mediaControlsButtonCoordinates() function to get the middle
        coordinates of a media controls button. This avoids hardcoding
        positions in the tests.

        Also unskipped the affected GTK media tests now passing.

        * media/audio-delete-while-step-button-clicked.html:
        * media/video-controls-transformed.html:
        * media/video-controls-zoomed.html:
        * media/video-test.js:
        (mediaControlsButtonCoordinates):
        * platform/gtk/Skipped:

2011-05-06  MORITA Hajime  <morrita@google.com>

        Unreviewed flakiness marking. (send-form-data-with-sliced-file.html)

        * platform/chromium/test_expectations.txt:

2011-05-06  MORITA Hajime <morrita@google.com>

        Unreviewed flakiness marking. (resource-tree-frame-navigate.html)
        * platform/chromium/test_expectations.txt:

2011-05-06  Csaba Osztrogonác  <ossy@webkit.org>

        Unreviewed expectations update.

        * platform/mac-wk2/Skipped:
         - Add http/tests/navigation/response204.html because of missing layoutTestController.queueLoad()
        * platform/qt-arm/Skipped:
         - Add fast/css/hover-update.html, because it fails intermittently.
         - Add failing http/tests/websocket/tests/frame-lengths.html and http/tests/websocket/tests/simple-stress.html.
        * platform/qt-mac/fast/block/float/float-not-removed-from-next-sibling-expected.txt: Added.
        * platform/qt-mac/fast/block/float/float-not-removed-from-next-sibling2-expected.txt: Added.
        * platform/qt-mac/fast/block/float/float-not-removed-from-next-sibling3-expected.txt: Added.
        * platform/qt-mac/fast/block/float/float-not-removed-from-next-sibling4-expected.txt: Added.
        * platform/qt-wk2/Skipped:
         - Add new but failing test: editing/pasteboard/paste-placeholder-input.html

2011-05-06  Cris Neckar  <cdn@chromium.org>

        Reviewed by Dirk Schulze.

        Change maxEffectRect to a FloatRect.
        https://bugs.webkit.org/show_bug.cgi?id=59551

        * svg/filters/filter-after-transform-crash-expected.txt: Added.
        * svg/filters/filter-after-transform-crash.svg: Added.

2011-05-04  Philippe Normand  <pnormand@igalia.com>

        Reviewed by Dimitri Glazkov.

        Implement LayoutTestController::pseudoShadowId()
        https://bugs.webkit.org/show_bug.cgi?id=60034

        * media/video-controls-transformed.html: Refactored to use the
        pseudoShadowId() LayoutTestController method.

2011-05-06  MORITA Hajime  <morrita@google.com>

        Unreviewed flakiness marking. (test_boolean_expr.html)
        
        * platform/chromium/test_expectations.txt:

2011-05-05  MORITA Hajime  <morrita@google.com>

        Unreviewed flakiness marking.

        * platform/chromium/test_expectations.txt:

2011-05-05  MORITA Hajime <morrita@google.com>

        Unreviewed attempt to error fix on test_expectations.txt.
        
        * platform/chromium/test_expectations.txt:

2011-05-05  MORITA Hajime  <morrita@google.com>

        Unreviewed error fix on test_expectations.txt.

        * platform/chromium/test_expectations.txt:

2011-05-05  MORITA Hajime <morrita@google.com>

        Unreviewed error fix on test_expectations.txt.
        
        * platform/chromium/test_expectations.txt:

2011-05-05  MORITA Hajime  <morrita@google.com>

        Unreviewed addding skip line for full-screen-stacking-context.html.

        * platform/chromium/test_expectations.txt:

2011-05-05  Ojan Vafai  <ojan@chromium.org>

        Now that win has a failing result, chromium-win needs to
        have the passing result. http://trac.webkit.org/changeset/85911

        * platform/chromium/fast/harness/results-expected.txt: Added.

2011-05-05  Ojan Vafai  <ojan@chromium.org>

        Move failing result as it appears to be failing on all Apple Win platforms.

        * platform/win/fast/harness/results-expected.txt: Renamed from LayoutTests/platform/win-7sp0/fast/harness/results-expected.txt.

2011-05-05  Evan Martin  <evan@chromium.org>

        Unreviewed, just skipping a test.

        New test fast/events/backspace-nagivates-back fails on Qt
        https://bugs.webkit.org/show_bug.cgi?id=60311

        Skip this test until Antonoi has time to look at it.

        * platform/qt-linux/Skipped:

2011-05-05  Jer Noble  <jer.noble@apple.com>

        Unreviewed, partial rollout of r85843 and r85824.  r85897 made these expected results unnecessary.

        * platform/chromium-linux/fullscreen/full-screen-stacking-context-expected.txt: Removed.
        * platform/chromium-win/fullscreen/full-screen-stacking-context-expected.txt: Removed.
        * platform/gtk/fullscreen/full-screen-stacking-context-expected.txt: Removed.

2011-05-05  Kenji Imasaki  <imasaki@chromium.org>

        Reviewed by Jian Li.

        [Chromium] Remove non-flaky tests (BUGCR81682, BUGCR80067)
        and skip one unsupported test in test expectation file (BUGCR59399).
        https://bugs.webkit.org/show_bug.cgi?id=60282

        The skipped test is a cliking test that is specific to Mac and we
        (Chrome Video Stack team) decided not to support it.

        * platform/chromium/test_expectations.txt:

2011-05-05  Steve Lacey  <sjl@chromium.org>

        Reviewed by Eric Seidel.

        Rebaseline various media tests after absolute positioning change. This rebaseline also
        fixes outstanding minor pixel diffs.

        [chromium] Rebaseline various media tests after controls absolute positioning changes
        https://bugs.webkit.org/show_bug.cgi?id=60230

        * platform/chromium-gpu-linux/media/video-display-toggle-expected.png:
        * platform/chromium-gpu-linux/media/video-no-audio-expected.png:
        * platform/chromium-gpu-mac/media/video-display-toggle-expected.png:
        * platform/chromium-gpu-mac/media/video-no-audio-expected.png:
        * platform/chromium-gpu-win/media/video-display-toggle-expected.png:
        * platform/chromium-gpu-win/media/video-no-audio-expected.png:
        * platform/chromium-linux/media/audio-controls-rendering-expected.png:
        * platform/chromium-linux/media/media-document-audio-repaint-expected.png:
        * platform/chromium-linux/media/video-controls-rendering-expected.png:
        * platform/chromium-linux/media/video-display-toggle-expected.png:
        * platform/chromium-linux/media/video-empty-source-expected.png:
        * platform/chromium-linux/media/video-no-audio-expected.png:
        * platform/chromium-linux/media/video-volume-slider-expected.png:
        * platform/chromium-mac-leopard/media/audio-controls-rendering-expected.png:
        * platform/chromium-mac-leopard/media/audio-controls-rendering-expected.txt: Removed.
        * platform/chromium-mac-leopard/media/controls-after-reload-expected.txt: Removed.
        * platform/chromium-mac-leopard/media/controls-strict-expected.txt: Removed.
        * platform/chromium-mac-leopard/media/controls-styling-expected.txt: Removed.
        * platform/chromium-mac-leopard/media/media-document-audio-repaint-expected.png:
        * platform/chromium-mac-leopard/media/video-controls-rendering-expected.png:
        * platform/chromium-mac-leopard/media/video-display-toggle-expected.png:
        * platform/chromium-mac-leopard/media/video-empty-source-expected.png:
        * platform/chromium-mac-leopard/media/video-empty-source-expected.txt: Removed.
        * platform/chromium-mac-leopard/media/video-no-audio-expected.png:
        * platform/chromium-mac-leopard/media/video-no-audio-expected.txt: Removed.
        * platform/chromium-mac-leopard/media/video-volume-slider-expected.png:
        * platform/chromium-mac-leopard/media/video-volume-slider-expected.txt: Removed.
        * platform/chromium-mac/media/audio-controls-rendering-expected.png:
        * platform/chromium-mac/media/audio-controls-rendering-expected.txt:
        * platform/chromium-mac/media/controls-after-reload-expected.txt:
        * platform/chromium-mac/media/controls-strict-expected.txt:
        * platform/chromium-mac/media/controls-styling-expected.txt:
        * platform/chromium-mac/media/controls-without-preload-expected.txt:
        * platform/chromium-mac/media/media-document-audio-repaint-expected.png:
        * platform/chromium-mac/media/media-document-audio-repaint-expected.txt:
        * platform/chromium-mac/media/video-controls-rendering-expected.png:
        * platform/chromium-mac/media/video-controls-rendering-expected.txt:
        * platform/chromium-mac/media/video-display-toggle-expected.png:
        * platform/chromium-mac/media/video-display-toggle-expected.txt:
        * platform/chromium-mac/media/video-empty-source-expected.png:
        * platform/chromium-mac/media/video-empty-source-expected.txt:
        * platform/chromium-mac/media/video-no-audio-expected.png:
        * platform/chromium-mac/media/video-no-audio-expected.txt:
        * platform/chromium-mac/media/video-volume-slider-expected.png:
        * platform/chromium-mac/media/video-volume-slider-expected.txt:
        * platform/chromium-win/media/audio-controls-rendering-expected.png:
        * platform/chromium-win/media/audio-controls-rendering-expected.txt:
        * platform/chromium-win/media/controls-after-reload-expected.txt:
        * platform/chromium-win/media/controls-strict-expected.txt:
        * platform/chromium-win/media/controls-styling-expected.txt:
        * platform/chromium-win/media/controls-without-preload-expected.txt:
        * platform/chromium-win/media/media-document-audio-repaint-expected.png:
        * platform/chromium-win/media/media-document-audio-repaint-expected.txt:
        * platform/chromium-win/media/video-controls-rendering-expected.png:
        * platform/chromium-win/media/video-controls-rendering-expected.txt:
        * platform/chromium-win/media/video-display-toggle-expected.png:
        * platform/chromium-win/media/video-display-toggle-expected.txt:
        * platform/chromium-win/media/video-empty-source-expected.png:
        * platform/chromium-win/media/video-empty-source-expected.txt:
        * platform/chromium-win/media/video-no-audio-expected.png:
        * platform/chromium-win/media/video-no-audio-expected.txt:
        * platform/chromium-win/media/video-volume-slider-expected.png:
        * platform/chromium-win/media/video-volume-slider-expected.txt:
        * platform/chromium/test_expectations.txt:

2011-05-05  Jer Noble  <jer.noble@apple.com>

        Reviewed by Tony Chang.

        full-screen-stacking-context-expected.txt should be under platform/mac
        https://bugs.webkit.org/show_bug.cgi?id=60236

        Make the text output of full screen pixel tests platform agnostic.

        * fullscreen/full-screen-stacking-context-expected.txt:
        * fullscreen/full-screen-test.js:
        * fullscreen/full-screen-zIndex-expected.txt:
        * platform/chromium-linux/fullscreen/full-screen-zIndex-expected.txt: Removed.
        * platform/chromium-win/fullscreen/full-screen-zIndex-expected.txt: Removed.
        * platform/gtk/fullscreen/full-screen-zIndex-expected.txt: Removed.

2011-05-05  Justin Novosad  <junov@chromium.org>

        Reviewed by Kenneth Russell.

        [Chromium] Change the --accelerated-2d-canvas flag to mean Ganesh, and stop using --enable-accelerated-drawing for that purpose
        https://bugs.webkit.org/show_bug.cgi?id=60173

        * platform/chromium/test_expectations.txt:
        Adding expected failures for the the switch to Ganesh

2011-05-05  Tony Gentilcore  <tonyg@chromium.org>

        Reviewed by Adam Barth.

        ASSERT(m_state == ParsingState) fires @ www.canalplus.fr
        https://bugs.webkit.org/show_bug.cgi?id=60101

        * fast/parser/close-while-stopping-expected.txt: Added.
        * fast/parser/close-while-stopping.html: Added.

2011-05-03  Evan Martin  <evan@chromium.org>

        Reviewed by Ojan Vafai.

        REGRESSION: backspace should not go back on Linux
        https://bugs.webkit.org/show_bug.cgi?id=59731

        Add a test that verifies that pressing backspace goes back on Mac
        and Windows but does not go back on Linux.

        * fast/events/backspace-navigates-back-expected.txt: Added.
        * fast/events/backspace-navigates-back.html: Added.

2011-05-05  Alpha Lam  <hclam@chromium.org>

        Build fix. Not reviewed.

        Add test expectations.

        * platform/chromium-linux/fast/block/float/float-not-removed-from-next-sibling-expected.png: Added.
        * platform/chromium-linux/fast/block/float/float-not-removed-from-next-sibling2-expected.png: Added.
        * platform/chromium-linux/fast/block/float/float-not-removed-from-next-sibling3-expected.png: Added.
        * platform/chromium-linux/fast/block/float/float-not-removed-from-next-sibling4-expected.png: Added.
        * platform/chromium-win/fast/block/float/float-not-removed-from-next-sibling-expected.png: Added.
        * platform/chromium-win/fast/block/float/float-not-removed-from-next-sibling2-expected.png: Added.
        * platform/chromium-win/fast/block/float/float-not-removed-from-next-sibling3-expected.png: Added.
        * platform/chromium-win/fast/block/float/float-not-removed-from-next-sibling4-expected.png: Added.

2011-05-05  Adam Roben  <aroben@apple.com>

        Update pixel results for draws-gradient.html to have an alpha channel

        These pixel results were generated in r71418, when DRT was changed not to use an alpha
        channel for pixel results. DRT was changed back to using an alpha channel in r71516, but
        these pixel results were never updated. Now that DRT ensures that the alpha channel is
        filled with constant opacity, we can safely update these pixel results without negatively
        affecting their appearance. (The draws-gradient plugin uses ::GradientFill, which fills the
        alpha channel with 0, so the plugin would have shown up as fully transparent in the pixel
        results if DRT didn't modify the alpha channel.)

        Fixes <http://webkit.org/b/60300> draws-gradient.html's pixel results can't be correctly
        generated due to alpha channel weirdness

        Reviewed by Sam Weinig.

        * platform/win/platform/win/plugins/draws-gradient-expected.png: Regenerated. Looks the same
        as before, but with an alpha channel.

2011-05-05  Abhishek Arya  <inferno@chromium.org>

        Unreviewed.

        Minor rebaselines for gtk after my r85876.

        * platform/gtk/fast/block/float/float-not-removed-from-next-sibling-expected.txt: Added.
        * platform/gtk/fast/block/float/float-not-removed-from-next-sibling2-expected.txt: Added.
        * platform/gtk/fast/block/float/float-not-removed-from-next-sibling3-expected.txt: Added.
        * platform/gtk/fast/block/float/float-not-removed-from-next-sibling4-expected.txt: Added.

2011-05-05  Tony Chang  <tony@chromium.org>

        Remove google-chrome-linux results.  We're switching the official
        builders from hardy to lucid and want to clear the old hardy based
        results.

        * platform/google-chrome-linux32/css1: Removed.
        * platform/google-chrome-linux32/css2.1: Removed.
        * platform/google-chrome-linux32/editing: Removed.
        * platform/google-chrome-linux32/fast: Removed.
        * platform/google-chrome-linux32/plugins: Removed.
        * platform/google-chrome-linux32/svg: Removed.
        * platform/google-chrome-linux32/tables: Removed.
        * platform/google-chrome-linux32/transforms: Removed.
        * platform/google-chrome-linux64/fast: Removed.
        * platform/google-chrome-linux64/svg: Removed.

2011-05-05  Abhishek Arya  <inferno@chromium.org>

        Unreviewed.

        Minor rebaselines for qt after my r85876.

        * platform/qt/fast/block/float/float-not-removed-from-next-sibling-expected.txt: Added.
        * platform/qt/fast/block/float/float-not-removed-from-next-sibling2-expected.txt: Added.
        * platform/qt/fast/block/float/float-not-removed-from-next-sibling3-expected.txt: Added.
        * platform/qt/fast/block/float/float-not-removed-from-next-sibling4-expected.txt: Added.

2011-05-05  Dirk Pranke  <dpranke@chromium.org>

        Reviewed by Ojan Vafai.

        Modify the chromium expectations so that you no longer need to
        specify both the operating system and the version. I.e., you
        don't need "MAC LEOPARD", just "LEOPARD".

        * platform/chromium/test_expectations.txt:

2011-05-05  Tony Chang  <tony@chromium.org>

        Reviewed by Adam Barth.

        [chromium] switch from Lucida to free fonts for Hindi and Thai
        https://bugs.webkit.org/show_bug.cgi?id=60287

        Rebase tests that have Thai or Hindi glyphs.  We have different
        results for x86_64 (lucid) and x86 (hardy) because the fonts have
        changed.  Since it's only a handful of tests, seems ok to have
        separate baselines (also, hardy is going away real soon now).

        * platform/chromium-linux-x86_64/fast/text/atsui-multiple-renderers-expected.png: Copied from LayoutTests/platform/chromium-linux/fast/text/atsui-multiple-renderers-expected.png.
        * platform/chromium-linux-x86_64/fast/text/atsui-multiple-renderers-expected.txt: Copied from LayoutTests/platform/chromium-linux/fast/text/atsui-multiple-renderers-expected.txt.
        * platform/chromium-linux-x86_64/fast/text/capitalize-boundaries-expected.png: Added.
        * platform/chromium-linux-x86_64/fast/text/capitalize-boundaries-expected.txt: Added.
        * platform/chromium-linux-x86_64/fast/text/complex-text-opacity-expected.png: Added.
        * platform/chromium-linux-x86_64/fast/text/complex-text-opacity-expected.txt: Copied from LayoutTests/platform/chromium-linux/fast/text/complex-text-opacity-expected.txt.
        * platform/chromium-linux-x86_64/fast/text/international/danda-space-expected.png:
        * platform/chromium-linux-x86_64/fast/text/international/danda-space-expected.txt: Copied from LayoutTests/platform/chromium-linux/fast/text/international/danda-space-expected.txt.
        * platform/chromium-linux-x86_64/fast/text/international/hindi-spacing-expected.png: Added.
        * platform/chromium-linux-x86_64/fast/text/international/hindi-spacing-expected.txt: Added.
        * platform/chromium-linux-x86_64/fast/text/international/thai-baht-space-expected.png: Added.
        * platform/chromium-linux-x86_64/fast/text/international/thai-baht-space-expected.txt: Copied from LayoutTests/platform/chromium-linux/fast/text/international/thai-baht-space-expected.txt.
        * platform/chromium-linux-x86_64/fast/text/international/thai-line-breaks-expected.png: Added.
        * platform/chromium-linux-x86_64/fast/text/international/thai-line-breaks-expected.txt: Added.
        * platform/chromium-linux-x86_64/platform/chromium-linux/fast/text/international/complex-joining-using-gpos-expected.txt: Copied from LayoutTests/platform/chromium-linux/fast/text/international/complex-joining-using-gpos-expected.txt.
        * platform/chromium-linux/fast/text/atsui-multiple-renderers-expected.png:
        * platform/chromium-linux/fast/text/atsui-multiple-renderers-expected.txt:
        * platform/chromium-linux/fast/text/complex-text-opacity-expected.png:
        * platform/chromium-linux/fast/text/complex-text-opacity-expected.txt:
        * platform/chromium-linux/fast/text/international/complex-joining-using-gpos-expected.txt:
        * platform/chromium-linux/fast/text/international/danda-space-expected.png:
        * platform/chromium-linux/fast/text/international/danda-space-expected.txt:
        * platform/chromium-linux/fast/text/international/hindi-spacing-expected.png:
        * platform/chromium-linux/fast/text/international/hindi-spacing-expected.txt:
        * platform/chromium-linux/fast/text/international/thai-baht-space-expected.png:
        * platform/chromium-linux/fast/text/international/thai-baht-space-expected.txt:
        * platform/chromium-linux/fast/text/international/thai-line-breaks-expected.png:
        * platform/chromium-linux/fast/text/international/thai-line-breaks-expected.txt:

2011-05-04  Abhishek Arya  <inferno@chromium.org>

        Reviewed by Dave Hyatt.

        Tests that we do not crash when trying to add overflow from a float not in the
        descendant list and whose renderer is already removed.
        https://bugs.webkit.org/show_bug.cgi?id=56299

        * fast/block/float/float-not-removed-from-next-sibling-crash-expected.txt: Added.
        * fast/block/float/float-not-removed-from-next-sibling-crash.html: Added.
        * fast/block/float/float-not-removed-from-next-sibling.html: Added. Black
        text boxes should be inside the silver float. Failing test will have float
        added to the text div block which will push the text downward.
        * fast/block/float/float-not-removed-from-next-sibling-expected.png: Added.
        * fast/block/float/float-not-removed-from-next-sibling-expected.txt: Added.
        * fast/block/float/float-not-removed-from-next-sibling2.html: Added. Black
        text boxes should be inside the silver float. Failing test will have float
        added to the text div block which will push the text downward.
        * fast/block/float/float-not-removed-from-next-sibling2-expected.png: Added.
        * fast/block/float/float-not-removed-from-next-sibling2-expected.txt: Added.
        * fast/block/float/float-not-removed-from-next-sibling3.html: Added. Distance
        between the silver float and black text boxes should be less than height of
        silver float. Failing test will have float overflow added to the text div
        block which will cause large space between silver float and and black text boxes.
        * fast/block/float/float-not-removed-from-next-sibling3-expected.png: Added.
        * fast/block/float/float-not-removed-from-next-sibling3-expected.txt: Added.
        * fast/block/float/float-not-removed-from-next-sibling4.html: Added. Distance
        between the silver float and black text boxes should be less than height of
        silver float. Failing test will have float overflow added to the text div
        block which will cause large space between silver float and and black text boxes.
        * fast/block/float/float-not-removed-from-next-sibling4-expected.png: Added.
        * fast/block/float/float-not-removed-from-next-sibling4-expected.txt: Added.

2011-05-05  Tony Gentilcore  <tonyg@chromium.org>

        Reviewed by Nate Chapin.

        [Navigation Timing] navigationStart should always be available
        https://bugs.webkit.org/show_bug.cgi?id=59448

        * http/tests/misc/resources/webtiming-cross-origin-and-back2.html:
        * http/tests/misc/resources/webtiming-cross-origin-redirect.html:
        * http/tests/misc/webtiming-origins-expected.txt:

2011-05-05  Chang Shu  <cshu@webkit.org>

        Reviewed by Andreas Kling.

        [Qt][WK2] Support PageGroup in QGraphicsWKView/QWKPage constructors
        https://bugs.webkit.org/show_bug.cgi?id=59638

        Unskip passed tests.

        * platform/qt-wk2/Skipped:

2011-05-05  Andrey Kosyakov  <caseq@chromium.org>

        Unreviewed. Skip inspector/console/console-shadow-dom-access.html (crashes in debug)
        https://bugs.webkit.org/show_bug.cgi?id=60266

        * platform/mac/Skipped:

2011-05-04  Andrey Kosyakov  <caseq@chromium.org>

        Reviewed by Yury Semikhatsky.

        Web Inspector: add test for shadow DOM access in the console API
        https://bugs.webkit.org/show_bug.cgi?id=60192

        * http/tests/inspector/elements-test.js:
        (initialize_ElementTest.InspectorTest.findNode.processChildren):
        (initialize_ElementTest.InspectorTest.nodeWithId):
        (initialize_ElementTest.InspectorTest.selectNode):
        * inspector/console/console-shadow-dom-access-expected.txt: Added.
        * inspector/console/console-shadow-dom-access.html: Added.

2011-05-05  Philippe Normand  <pnormand@igalia.com>

        Unreviewed, GTK baselines for new tests.

        * platform/gtk/editing/inserting/typing-at-end-of-line-expected.png: Added.
        * platform/gtk/editing/inserting/typing-at-end-of-line-expected.txt: Added.
        * platform/gtk/editing/selection/select-across-readonly-input-1-expected.png: Added.
        * platform/gtk/editing/selection/select-across-readonly-input-1-expected.txt: Added.
        * platform/gtk/editing/selection/select-across-readonly-input-2-expected.png: Added.
        * platform/gtk/editing/selection/select-across-readonly-input-2-expected.txt: Added.
        * platform/gtk/editing/selection/select-across-readonly-input-3-expected.png: Added.
        * platform/gtk/editing/selection/select-across-readonly-input-3-expected.txt: Added.
        * platform/gtk/editing/selection/select-across-readonly-input-4-expected.png: Added.
        * platform/gtk/editing/selection/select-across-readonly-input-4-expected.txt: Added.
        * platform/gtk/editing/selection/select-across-readonly-input-5-expected.png: Added.
        * platform/gtk/editing/selection/select-across-readonly-input-5-expected.txt: Added.
        * platform/gtk/fast/forms/input-placeholder-text-indent-expected.png: Added.
        * platform/gtk/fast/forms/input-placeholder-text-indent-expected.txt: Added.

2011-05-05  MORITA Hajime  <morrita@google.com>

        Unreviewed, marking flaky tests.

        * platform/chromium/test_expectations.txt:

2011-05-05  MORITA Hajime <morrita@google.com>

        Unreviewed, rolling out r85817.
        http://trac.webkit.org/changeset/85817

        It looks these lines are mis-skipped.

        * platform/chromium/test_expectations.txt:

2011-05-05  Philippe Normand  <pnormand@igalia.com>

        Unreviewed, GTK baselines for new fullscreen test.

        * platform/gtk/fullscreen/full-screen-stacking-context-expected.png: Added.
        * platform/gtk/fullscreen/full-screen-stacking-context-expected.txt: Added.

2011-05-05  MORITA Hajime <morrita@google.com>

        Unreviewed, fixed a syntax error on expectations file.

        * platform/chromium/test_expectations.txt:

2011-05-05  MORITA Hajime  <morrita@google.com>

        Unreviewed expectations update for MAC GPU flakiness.
        - video-zoom-controls.html: Added IMAGE
        - media/controls-without-preload.html, media/controls-styling.html, media/controls-strict.html, media/controls-after-reload.html
          Added TEXT
        * platform/chromium/test_expectations.txt:

2011-05-04  MORITA Hajime  <morrita@google.com>

        Unreviewed expectations update.

        * platform/chromium/test_expectations.txt:

2011-05-04  MORITA Hajime <morrita@google.com>

        r85835 skipped too much. narrowed skipped target.

        * platform/chromium/test_expectations.txt:

2011-05-04  MORITA Hajime  <morrita@google.com>

        Unreviewed marking failing gpu tests:
        - controls-without-preload.html, controls-after-reload.html, controls-strict.html, controls-styling.html
        
        * platform/chromium/test_expectations.txt:

2011-05-04  Sheriff Bot  <webkit.review.bot@gmail.com>

        Unreviewed, rolling out r85788.
        http://trac.webkit.org/changeset/85788
        https://bugs.webkit.org/show_bug.cgi?id=60250

        svg/text/text-block-child-crash.xhtml asserts (Requested by
        Ossy on #webkit).

        * svg/custom/display-table-caption-foreignObject-expected.txt: Removed.
        * svg/custom/display-table-caption-foreignObject.svg: Removed.
        * svg/custom/display-table-caption-inherit-foreignObject-expected.txt: Removed.
        * svg/custom/display-table-caption-inherit-foreignObject.xhtml: Removed.
        * svg/custom/display-table-caption-inherit-text-expected.txt: Removed.
        * svg/custom/display-table-caption-inherit-text.xhtml: Removed.
        * svg/custom/display-table-caption-text-expected.txt: Removed.
        * svg/custom/display-table-caption-text.svg: Removed.

2011-05-04  MORITA Hajime <morrita@google.com>

        Marking at r85822 was not enough. Re-marked it.

        * platform/chromium/test_expectations.txt:

2011-05-04  MORITA Hajime  <morrita@google.com>

        Unreviewed flaky marking to full-screen-stacking-context.html.

        * platform/chromium/test_expectations.txt:

2011-05-04  James Robinson  <jamesr@chromium.org>

        Reviewed by Kenneth Russell.

        [chromium] REGRESSION(85136): Composited content vanishes when transform-style changes from preserve-3d to flat
        https://bugs.webkit.org/show_bug.cgi?id=60202

        Adds a regression test for composited content changing from transform-style: preserve-3d to flat.

        * compositing/repaint/transform-style-change-expected.png: Added.
        * compositing/repaint/transform-style-change-expected.txt: Added.
        * compositing/repaint/transform-style-change.html: Added.

2011-05-04  MORITA Hajime <morrita@google.com>

        Unreviewed expectations update.

        * platform/chromium-linux/fullscreen/full-screen-stacking-context-expected.txt: Added.
        * platform/chromium-win/fullscreen/full-screen-stacking-context-expected.txt: Added.

2011-05-04  Cris Neckar  <cdn@chromium.org>

        Reviewed by Adam Barth.

        Tests whether a style media specifier inside an svg image will crash.
        https://bugs.webkit.org/show_bug.cgi?id=49902

        * fast/media/media-svg-crash-expected.txt: Added.
        * fast/media/media-svg-crash.html: Added.

2011-05-04  MORITA Hajime  <morrita@google.com>

        Unreviewed skipping text-block-child-crash.xhtml

        * platform/chromium/test_expectations.txt:

2011-05-04  Ojan Vafai  <ojan@chromium.org>

        Commit failing result. It's not clear to me why this test is failing.
        There's nothing platform specific about it, it doesn't depend on the
        system environment and it's not failing on the chromium win7 bot.

        Committing this for now to green the tree.
 
        * platform/win-7sp0/fast/harness/results-expected.txt: Added.

2011-05-04  Joseph Pecoraro  <joepeck@webkit.org>

        Reviewed by Darin Adler.

        Unable to Paste After Deleting Text from Input due to -webkit-user-select
        https://bugs.webkit.org/show_bug.cgi?id=60219

        * editing/pasteboard/paste-placeholder-input-expected.txt: Added.
        * editing/pasteboard/paste-placeholder-input.html: Added.

2011-05-04  MORITA Hajime  <morrita@google.com>

        Unreviewed marking flaky tests.

        * platform/chromium/test_expectations.txt:

2011-05-04  Vangelis Kokkevis  <vangelis@chromium.org>

        Reviewed by Kenneth Russell.

        [chromium] Adding a new layout test for perpendicular layers.
        https://bugs.webkit.org/show_bug.cgi?id=59255

        * platform/chromium-gpu-mac/platform/chromium/compositing/perpendicular-layer-sorting-expected.png: Added.
        * platform/chromium-gpu-mac/platform/chromium/compositing/perpendicular-layer-sorting-expected.txt: Added.
        * platform/chromium/compositing/perpendicular-layer-sorting.html: Added.
        * platform/chromium/test_expectations.txt:

2011-05-03  Jer Noble  <jer.noble@apple.com>

        Reviewed by Antti Koivisto.

        Safari: Video at apple.com cannot play at full screen mode with layout distortion
        https://bugs.webkit.org/show_bug.cgi?id=60140

        * fullscreen/full-screen-stacking-context-expected.txt: Added.
        * fullscreen/full-screen-stacking-context.html: Added.
        * platform/mac/fullscreen/full-screen-stacking-context-expected.png: Added.

2011-05-04  Ojan Vafai  <ojan@chromium.org>

        Reviewed by Eric Seidel.

        [results.html] Hide the entire table if all failures are expected
        https://bugs.webkit.org/show_bug.cgi?id=60225

        If in a port that uses expected results and all failures are expected,
        hide the table as well as the rows when hiding expected failures.

        * fast/harness/resources/results-test.js:
        * fast/harness/results-expected.txt:
        * fast/harness/results.html:

2011-05-04  Mark Pilgrim  <pilgrim@chromium.org>

        Reviewed by Tony Chang.

        Port Mozilla's IndexedDB tests: odd result order
        https://bugs.webkit.org/show_bug.cgi?id=60193

        This test uses setTimeout to check that the result property of
        asynchronous requests persists into the setTimeout callback.

        * storage/indexeddb/mozilla/odd-result-order-expected.txt: Added.
        * storage/indexeddb/mozilla/odd-result-order.html: Added.

2011-05-04  Alpha Lam  <hclam@chromium.org>

        Not reviewed. Build fix.

        Test expectations.

        * platform/chromium-mac-leopard/fast/speech/input-appearance-numberandspeech-expected.png:
        * platform/chromium/test_expectations.txt:

2011-05-04  Ojan Vafai  <ojan@chromium.org>

        Reviewed by Eric Seidel.

        [results.html] put flaky tests into their own table
        https://bugs.webkit.org/show_bug.cgi?id=60214

        * fast/harness/resources/results-test.js:
        * fast/harness/results-expected.txt:
        * fast/harness/results.html:

2011-05-04  Ojan Vafai  <ojan@chromium.org>

        Reviewed by Eric Seidel.

        [results.html] fix apply options on page load
        https://bugs.webkit.org/show_bug.cgi?id=60217

        This broke when we started storing options in localstorage.
        Also fixes regressions exposed by fixing this.

        * fast/harness/resources/results-test.js:
        * fast/harness/results.html:

2011-05-04  Rob Buis  <rbuis@rim.com>

        Reviewed by Darin Adler.

        NULL deref when SVG elements have table styles 
        https://bugs.webkit.org/show_bug.cgi?id=45561

        Test that we do not crash anymore for value table-caption through direct usage
        and indirectly through inherit.

        * svg/custom/display-table-caption-foreignObject-expected.txt: Added.
        * svg/custom/display-table-caption-foreignObject.svg: Added.
        * svg/custom/display-table-caption-inherit-foreignObject-expected.txt: Added.
        * svg/custom/display-table-caption-inherit-foreignObject.xhtml: Added.
        * svg/custom/display-table-caption-inherit-text-expected.txt: Added.
        * svg/custom/display-table-caption-inherit-text.xhtml: Added.
        * svg/custom/display-table-caption-text-expected.txt: Added.
        * svg/custom/display-table-caption-text.svg: Added.

2011-05-04  Luiz Agostini  <luiz.agostini@openbossa.org>

        Unreviewed build fix.

        Skipping test http/tests/navigation/response204.html for Mac, Win and GTK.

        * platform/gtk/Skipped:
        * platform/mac/Skipped:
        * platform/win/Skipped:

2011-05-03  Kenji Imasaki  <imasaki@chromium.org>

        Reviewed by David Levin.

        [Chromium] Update bug numbers in media related test cases.
        https://bugs.webkit.org/show_bug.cgi?id=60078

        * platform/chromium/test_expectations.txt:

2011-05-04  Simon Fraser  <simon.fraser@apple.com>

        Reviewed by Anders Carlsson.

        WebKit2 flashes if entering and exiting compositing rapidly
        https://bugs.webkit.org/show_bug.cgi?id=60198
        
        Testcase that toggles compositing 10 times and should not flash or assert.

        * compositing/toggle-compositing-expected.txt: Added.
        * compositing/toggle-compositing.html: Added.

2011-05-04  Jessie Berlin  <jberlin@apple.com>

        Windows DRT needs an implementation of shadowRoot
        https://bugs.webkit.org/show_bug.cgi?id=59081

        Add another test for the shadow dom to the Windows Skipped list to get the bots green.

        * platform/win/Skipped:

2011-05-04  Ojan Vafai  <ojan@chromium.org>

        Reviewed by Eric Seidel.

        [results.html] Don't show actual failure type column for ports that don't use expectations files
        https://bugs.webkit.org/show_bug.cgi?id=60199

        For the most part, the links shown tell you what type of failure it is.
        The only case where we lose some information here is for a test that
        failed one run, but passed or had a different failure on retry.i
        We should probably put those tests in their own table anyways.

        * fast/harness/resources/results-test.js:
        * fast/harness/results.html:

2011-05-04  Andrey Kosyakov  <caseq@chromium.org>

        Unreviewed. Skipped inspector/elements/shadow-dom.html on win.
        https://bugs.webkit.org/show_bug.cgi?id=60195

        * platform/win/Skipped:

2011-04-01  Luiz Agostini  <luiz.agostini@openbossa.org>

        Reviewed by Kenneth Rohde Christiansen.

        [Qt] Qt WebKit updates view on HTTP 204 response
        https://bugs.webkit.org/show_bug.cgi?id=42529

        Responses which have status code equal to 204 should be ignored.

        * http/tests/navigation/response204-expected.txt: Added.
        * http/tests/navigation/response204.html: Added.
        * http/tests/navigation/resources/response204.pl: Added.

2011-05-03  Geoffrey Garen  <ggaren@apple.com>

        Reviewed by Darin Adler.

        <rdar://problem/9366557> Various crashes due to bad DFG codegen at canalplus.fr

        * fast/js/trivial-functions-expected.txt: Added.
        * fast/js/trivial-functions.html: Added.

2011-05-04  Mark Pilgrim  <pilgrim@chromium.org>

        Reviewed by Tony Chang.

        IndexedDB open (database) should fail if name is null
        https://bugs.webkit.org/show_bug.cgi?id=60022

        * storage/indexeddb/mozilla/open-database-null-name-expected.txt: Added.
        * storage/indexeddb/mozilla/open-database-null-name.html: Added.

2011-05-04  Ojan Vafai  <ojan@chromium.org>

        Improve styling on the toolbar. Make the background opaque.

        * fast/harness/results.html:

2011-05-04  Alpha Lam  <hclam@chromium.org>

        Not reviewed. Build fix.

        Test expectations for Linux.

        * platform/chromium-linux/fast/canvas/webgl/css-webkit-canvas-expected.png: Added.
        * platform/chromium-linux/fast/canvas/webgl/css-webkit-canvas-repaint-expected.png: Added.

2011-05-04  Andrey Kosyakov  <caseq@chromium.org>

        Unreviewed. Another shot at fixing flakiness under win (also renamed a couple of obsolete things).

        * inspector/elements/shadow-dom-expected.txt:
        * inspector/elements/shadow-dom.html:

2011-05-04  Ojan Vafai  <ojan@chromium.org>

        Reviewed by Eric Seidel.

        [results.html] don't show expand buttons for passing tests
        https://bugs.webkit.org/show_bug.cgi?id=60187

        After http://trac.webkit.org/changeset/85636 there's nothing
        to expand for the unexpected passes table.

        * fast/harness/resources/results-test.js:
        * fast/harness/results.html:

2011-05-04  Ojan Vafai  <ojan@chromium.org>

        Reviewed by Eric Seidel.

        [results.html] bucket crashes/timeouts into their own test lists
        https://bugs.webkit.org/show_bug.cgi?id=60181

        Also, don't show the "expected to fail but passed" table for ports
        that don't use an expectation file.

        * fast/harness/resources/results-test.js:
        * fast/harness/results.html:

2011-05-04  Andrey Kosyakov  <caseq@chromium.org>

        Unreviewed. Attempt to resolve flakiness on windows.

        * inspector/elements/shadow-dom.html:

2011-05-04  Andrey Kosyakov  <caseq@chromium.org>

        Reviewed by Yury Semikhatsky.

        Web Inspector: expose shadow DOM in the Elements panel
        https://bugs.webkit.org/show_bug.cgi?id=60160

        * http/tests/inspector/elements-test.js:
        (initialize_ElementTest.InspectorTest.nodeWithId.processChildren):
        (initialize_ElementTest.InspectorTest.nodeWithId.documentRequested):
        (initialize_ElementTest.InspectorTest.nodeWithId):
        * inspector/elements/shadow-dom-expected.txt: Added.
        * inspector/elements/shadow-dom.html: Added.

2011-05-04  Csaba Osztrogonác  <ossy@webkit.org>

        [Qt] Fix crashes in QMetaObject::metacall
        https://bugs.webkit.org/show_bug.cgi?id=53912

        * platform/qt/Skipped: Unskip http/tests/websocket/tests.

2011-05-04  Philippe Normand  <pnormand@igalia.com>

        Unreviewed, skip fast/dom/Geolocation/argument-types.html crashing
        on GTK.

        [GTK] fast/dom/Geolocation/argument-types.html flaky crash on 32-bits Debug
        https://bugs.webkit.org/show_bug.cgi?id=60158

        * platform/gtk/Skipped:

2011-05-04  Mark Pilgrim  <pilgrim@chromium.org>

        Reviewed by Tony Chang.

        Port Mozilla's IndexedDB tests: readyState
        https://bugs.webkit.org/show_bug.cgi?id=60069

        Checks the value of the request.readyState property during and
        after opening a database, setting the version, creating a datastore,
        adding a record, and retrieving a record.

        * storage/indexeddb/mozilla/readyState-expected.txt: Added.
        * storage/indexeddb/mozilla/readyState.html: Added.

2011-05-04  Philippe Normand  <pnormand@igalia.com>

        Unreviewed, GTK rebaseline after r85669.

        * platform/gtk/fast/forms/input-readonly-autoscroll-expected.txt:

2011-05-04  Satish Sampath  <satish@chromium.org>

        Reviewed by Tony Gentilcore.

        Layout the speech input button to the left of outer spin button properly.
        https://bugs.webkit.org/show_bug.cgi?id=59742

        * platform/chromium-mac/fast/speech/input-appearance-numberandspeech-expected.png:
        * platform/chromium-mac/fast/speech/input-appearance-numberandspeech-expected.txt:
        * platform/chromium/test_expectations.txt:

2011-05-03  Yury Semikhatsky  <yurys@chromium.org>

        Reviewed by Pavel Feldman.

        Web Inspector: can't inspect element in an iframe when element originates from non-frame document
        https://bugs.webkit.org/show_bug.cgi?id=60031

        * inspector/elements/elements-inspect-iframe-from-different-domain-expected.txt: Added.
        * inspector/elements/elements-inspect-iframe-from-different-domain.html: Added.

2011-05-03  Dan Bernstein  <mitz@apple.com>

        Updated expected results after updating this test in r85676.

        * platform/mac/fast/text/ligature-subdivision-expected.txt:

2011-05-03  Alpha Lam  <hclam@chromium.org>

        Not reviewed. Build fix.

        Quick suppresion for layout test failures.

        * platform/chromium/test_expectations.txt:

2011-05-03  Dirk Pranke  <dpranke@chromium.org>

        Unreviewed, expectations triage and new baselines.

        * platform/chromium-linux/fast/borders/bidi-012-expected.png: Added.
        * platform/chromium-mac-leopard/fast/borders/bidi-012-expected.png: Added.
        * platform/chromium-mac-leopard/fast/multicol/client-rects-expected.png: Added.
        * platform/chromium-mac/fast/repaint/box-shadow-h-expected.png: Removed.
        * platform/chromium-win/fast/borders/bidi-012-expected.png: Added.
        * platform/chromium-win/fast/borders/bidi-012-expected.txt: Added.
        * platform/chromium/test_expectations.txt:
        * platform/mac/fast/block/float/float-overhangs-root-expected.png:

2011-05-03  Dirk Pranke  <dpranke@chromium.org>

        Unreviewed, expectations triage and new baselines.

        * platform/chromium-linux/fast/box-shadow/inset-expected.png:
        * platform/chromium-linux/fast/css/text-input-with-webkit-border-radius-expected.png:
        * platform/chromium-linux/fast/forms/basic-selects-expected.png:
        * platform/chromium-linux/svg/custom/svg-fonts-in-html-expected.png:
        * platform/chromium-mac-leopard/fast/box-shadow/inset-expected.png: Added.
        * platform/chromium-mac-leopard/fast/forms/basic-selects-expected.png:
        * platform/chromium-mac/fast/box-shadow/inset-expected.png: Removed.
        * platform/chromium-mac/fast/forms/basic-selects-expected.png: Removed.
        * platform/chromium-mac/svg/custom/svg-fonts-in-html-expected.png:
        * platform/chromium-win/fast/box-shadow/inset-expected.png:
        * platform/chromium-win/fast/forms/basic-selects-expected.png:
        * platform/chromium-win/svg/custom/svg-fonts-in-html-expected.png:
        * platform/chromium/test_expectations.txt:

2011-05-03  Dirk Pranke  <dpranke@chromium.org>

        Unreviewed, expectations change and new baselines.

        * platform/chromium-linux/fast/backgrounds/gradient-background-leakage-expected.png: Added.
        * platform/chromium-linux/fast/forms/validation-message-appearance-expected.png:
        * platform/chromium-mac-leopard/fast/forms/validation-message-appearance-expected.png:
        * platform/chromium-mac/fast/forms/validation-message-appearance-expected.png:
        * platform/chromium-win/fast/backgrounds/gradient-background-leakage-expected.png: Added.
        * platform/chromium-win/fast/forms/validation-message-appearance-expected.png:
        * platform/chromium/test_expectations.txt:

2011-05-03  Dirk Pranke  <dpranke@chromium.org>

        Unreviewed, expectations triage.

        * platform/chromium/test_expectations.txt:

2011-05-03  Dirk Pranke  <dpranke@chromium.org>

        Unreviewed, expectations triage.

        * platform/chromium-win-xp/svg/css/text-shadow-multiple-expected.png: Removed.
        * platform/chromium/test_expectations.txt:

2011-05-03  Dirk Pranke  <dpranke@chromium.org>

        Unreviewed, expectations triage.

        * platform/chromium/test_expectations.txt:

2011-05-03  Dirk Pranke  <dpranke@chromium.org>

        Unreviewed, remove obsolete baselines.

        * platform/chromium-win-xp/fast/repaint/shadow-multiple-horizontal-expected.png: Removed.
        * platform/chromium-win-xp/fast/repaint/shadow-multiple-strict-horizontal-expected.png: Removed.
        * platform/chromium-win-xp/fast/repaint/shadow-multiple-strict-vertical-expected.png: Removed.
        * platform/chromium-win-xp/fast/repaint/shadow-multiple-vertical-expected.png: Removed.
        * platform/chromium/test_expectations.txt:

2011-05-03  Dirk Pranke  <dpranke@chromium.org>

        Unreviewed, expectations triaging.

        * platform/chromium/test_expectations.txt:

2011-05-03  Dean Jackson  <dino@apple.com>

        Reviewed by Simon Fraser.

        Interrupted transitions are not correctly removed
        https://bugs.webkit.org/show_bug.cgi?id=60062

        * transitions/3d/interrupted-transition-expected.txt: Added.
        * transitions/3d/interrupted-transition.html: Added.

2011-05-03  Alpha Lam  <hclam@chromium.org>

        Not reviewed. Build fix.

        Adding rebaseline for recent changes for mac.

        * platform/chromium-mac-leopard/editing/selection/select-across-readonly-input-1-expected.png: Added.
        * platform/chromium-mac-leopard/editing/selection/select-across-readonly-input-2-expected.png: Added.
        * platform/chromium-mac-leopard/editing/selection/select-across-readonly-input-3-expected.png: Added.
        * platform/chromium-mac-leopard/editing/selection/select-across-readonly-input-4-expected.png: Added.
        * platform/chromium-mac-leopard/editing/selection/select-across-readonly-input-5-expected.png: Added.

2011-05-03  Enrica Casucci  <enrica@apple.com>

        Reviewed by Ryosuke Niwa.

        Crash in SpellingCorrectionController::respondToChangedSelection.
        https://bugs.webkit.org/show_bug.cgi?id=60071
        <rdar://problem/9358190>

        * editing/selection/undo-crash-expected.txt: Added.
        * editing/selection/undo-crash.html: Added.

2011-05-03  Csaba Osztrogonác  <ossy@webkit.org>

        [Qt][WK2] Incorrect line number dumping
        https://bugs.webkit.org/show_bug.cgi?id=60074

        [Qt][WK2] editing/pasteboard/do-not-copy-body-color.html fails
        https://bugs.webkit.org/show_bug.cgi?id=60076

        * platform/qt-wk2/Skipped: Add a couple of failing tests.

2011-05-03  Tony Chang  <tony@chromium.org>

        Add a bug number for a recent regression to test_expectations.txt.

        * platform/chromium/test_expectations.txt:

2011-05-03  Alpha Lam  <hclam@chromium.org>

        Not reviewed. Build fix.

        Test expectations.

        * platform/chromium-win/editing/selection/select-across-readonly-input-1-expected.png: Added.
        * platform/chromium-win/editing/selection/select-across-readonly-input-1-expected.txt: Added.
        * platform/chromium-win/editing/selection/select-across-readonly-input-2-expected.png: Added.
        * platform/chromium-win/editing/selection/select-across-readonly-input-2-expected.txt: Added.
        * platform/chromium-win/editing/selection/select-across-readonly-input-3-expected.png: Added.
        * platform/chromium-win/editing/selection/select-across-readonly-input-3-expected.txt: Added.
        * platform/chromium-win/editing/selection/select-across-readonly-input-4-expected.png: Added.
        * platform/chromium-win/editing/selection/select-across-readonly-input-4-expected.txt: Added.
        * platform/chromium-win/editing/selection/select-across-readonly-input-5-expected.png: Added.
        * platform/chromium-win/editing/selection/select-across-readonly-input-5-expected.txt: Added.
        * platform/chromium-win/fast/forms/input-readonly-autoscroll-expected.txt:

2011-05-03  Alpha Lam  <hclam@chromium.org>

        Build fix. Not reviewed.

        Test expectation change after r85674.

        * platform/chromium-linux/platform/chromium-linux/fast/text/international/complex-joining-using-gpos-expected.png: Added.

2011-05-03  Alpha Lam  <hclam@chromium.org>

        Build fix. Not reviewed.

        Add test expectations for new tests.

        * platform/chromium-linux/editing/selection/select-across-readonly-input-1-expected.png: Added.
        * platform/chromium-linux/editing/selection/select-across-readonly-input-1-expected.txt: Added.
        * platform/chromium-linux/editing/selection/select-across-readonly-input-2-expected.png: Added.
        * platform/chromium-linux/editing/selection/select-across-readonly-input-2-expected.txt: Added.
        * platform/chromium-linux/editing/selection/select-across-readonly-input-3-expected.png: Added.
        * platform/chromium-linux/editing/selection/select-across-readonly-input-3-expected.txt: Added.
        * platform/chromium-linux/editing/selection/select-across-readonly-input-4-expected.png: Added.
        * platform/chromium-linux/editing/selection/select-across-readonly-input-4-expected.txt: Added.
        * platform/chromium-linux/editing/selection/select-across-readonly-input-5-expected.png: Added.
        * platform/chromium-linux/editing/selection/select-across-readonly-input-5-expected.txt: Added.
        * platform/chromium-linux/fast/forms/input-readonly-autoscroll-expected.txt: Added.

2011-05-03  Dan Bernstein  <mitz@apple.com>

        Rubber-stamped by Darin Adler.

        Account for font metric differences exposed by r85411.
        Fixes <rdar://problem/9377892> REGRESSION (r85403-r85475): platform/mac/fast/text/ligature-subdivision.html failing

        * platform/mac/fast/text/script-tests/ligature-subdivision.js:

2011-05-03  Tony Chang  <tony@chromium.org>

        Update results for fast/harness/results.html.  We shouldn't be
        ignoring these failures :(

        * fast/harness/results-expected.txt:
        * platform/chromium/test_expectations.txt:

2011-05-03  Tony Chang  <tony@chromium.org>

        Update chromium linux test results after r85013.  The vertical
        positioning of the glyphs have improved.

        * platform/chromium-linux/fast/text/atsui-negative-spacing-features-expected.png:
        * platform/chromium-linux/fast/text/atsui-spacing-features-expected.png:
        * platform/chromium-linux/fast/text/international/hebrew-vowels-expected.png:
        * platform/chromium-linux/fast/text/international/thai-baht-space-expected.png:
        * platform/chromium-linux/fast/text/international/thai-line-breaks-expected.png:
        * platform/chromium-linux/svg/W3C-I18N/text-anchor-dirLTR-anchorEnd-expected.png:
        * platform/chromium-linux/svg/W3C-I18N/text-anchor-dirLTR-anchorMiddle-expected.png:
        * platform/chromium-linux/svg/W3C-I18N/text-anchor-dirLTR-anchorStart-expected.png:
        * platform/chromium-linux/svg/W3C-I18N/text-anchor-dirNone-anchorEnd-expected.png:
        * platform/chromium-linux/svg/W3C-I18N/text-anchor-dirNone-anchorMiddle-expected.png:
        * platform/chromium-linux/svg/W3C-I18N/text-anchor-dirNone-anchorStart-expected.png:
        * platform/chromium-linux/svg/W3C-I18N/text-anchor-dirRTL-anchorEnd-expected.png:
        * platform/chromium-linux/svg/W3C-I18N/text-anchor-dirRTL-anchorMiddle-expected.png:
        * platform/chromium-linux/svg/W3C-I18N/text-anchor-dirRTL-anchorStart-expected.png:
        * platform/chromium-linux/svg/W3C-I18N/text-anchor-inherited-dirLTR-anchorEnd-expected.png:
        * platform/chromium-linux/svg/W3C-I18N/text-anchor-inherited-dirLTR-anchorMiddle-expected.png:
        * platform/chromium-linux/svg/W3C-I18N/text-anchor-inherited-dirLTR-anchorStart-expected.png:
        * platform/chromium-linux/svg/W3C-I18N/text-anchor-inherited-dirRTL-anchorEnd-expected.png:
        * platform/chromium-linux/svg/W3C-I18N/text-anchor-inherited-dirRTL-anchorMiddle-expected.png:
        * platform/chromium-linux/svg/W3C-I18N/text-anchor-inherited-dirRTL-anchorStart-expected.png:
        * platform/chromium-linux/svg/W3C-I18N/text-anchor-no-markup-expected.png:
        * platform/chromium-linux/svg/W3C-SVG-1.1-SE/text-intro-05-t-expected.png:
        * platform/chromium-linux/svg/text/text-intro-05-t-expected.png:
        * platform/chromium/test_expectations.txt:

2011-05-03  Igor Oliveira  <igor.oliveira@openbossa.org>

        Reviewed by Csaba Osztrogonác.

        [Qt] REGRESSION(r85648) Skip data-transfer-items.html test because data-transfer-items is not a Qt default build option
        https://bugs.webkit.org/show_bug.cgi?id=60068

        Skip data-transfer-items.html test because data-transfer-items
        is not a Qt default build option

        * platform/qt/Skipped:

2011-05-03  Ryosuke Niwa  <rniwa@webkit.org>

        Reviewed by Darin Adler.

        WebKit allows selection that crosses the shadow boundary of a readonly input element
        https://bugs.webkit.org/show_bug.cgi?id=60000

        Added pixel tests to ensure WebKit doesn't create a selection that spans across
        the shadow DOM boundary of a readonly input element. Also rebaselined a test that
        previously exhibited this behavior.

        * editing/selection/resources/select-across-readonly-input.js: Added.
        (moveMouseToMiddleOfElement):
        * editing/selection/select-across-readonly-input-1.html: Added.
        * editing/selection/select-across-readonly-input-2.html: Added.
        * editing/selection/select-across-readonly-input-3.html: Added.
        * editing/selection/select-across-readonly-input-4.html: Added.
        * editing/selection/select-across-readonly-input-5.html: Added.
        * platform/mac/editing/selection/select-across-readonly-input-1-expected.png: Added.
        * platform/mac/editing/selection/select-across-readonly-input-1-expected.txt: Added.
        * platform/mac/editing/selection/select-across-readonly-input-2-expected.png: Added.
        * platform/mac/editing/selection/select-across-readonly-input-2-expected.txt: Added.
        * platform/mac/editing/selection/select-across-readonly-input-3-expected.png: Added.
        * platform/mac/editing/selection/select-across-readonly-input-3-expected.txt: Added.
        * platform/mac/editing/selection/select-across-readonly-input-4-expected.png: Added.
        * platform/mac/editing/selection/select-across-readonly-input-4-expected.txt: Added.
        * platform/mac/editing/selection/select-across-readonly-input-5-expected.png: Added.
        * platform/mac/editing/selection/select-across-readonly-input-5-expected.txt: Added.
        * platform/mac/fast/forms/input-readonly-autoscroll-expected.txt:

2011-05-03  Alpha Lam  <hclam@chromium.org>

        Not reviewed. Build fix.

        Add expectation to suppress new failure.

        * platform/chromium/test_expectations.txt:

2011-05-03  Csaba Osztrogonác  <ossy@webkit.org>

        [Qt][WK2] Support PageGroup in QGraphicsWKView/QWKPage constructors
        https://bugs.webkit.org/show_bug.cgi?id=59638

        * platform/qt-wk2/Skipped: Add failing tests until fix.

2011-05-03  James Robinson  <jamesr@chromium.org>

        Reviewed by Kenneth Russell.

        [chromium] Resizing a 2d canvas to huge dimensions after compositing crashes with accelerated 2d canvas option enabled
        https://bugs.webkit.org/show_bug.cgi?id=59965

        Adds a test with a canvas rendered once with normal width/height dimensions then resized to very large dimensions.

        * fast/canvas/canvas-resize-after-paint-expected.txt: Added.
        * fast/canvas/canvas-resize-after-paint.html: Added.

2011-05-03  Ojan Vafai  <ojan@chromium.org>

        Reviewed by Tony Chang.

        store results.html options in localstorage
        https://bugs.webkit.org/show_bug.cgi?id=60048

        This makes options persistent per-domain. It's not perfect,
        but it should make it possible to have preferences for how
        people would like the results.html page to render.

        * fast/harness/resources/results-test.js:
        * fast/harness/results.html:

2011-05-03  Igor Oliveira  <igor.oliveira@openbossa.org>

        Reviewed by Eric Seidel.

        [Qt] Implement initial support to DataTransferItems
        https://bugs.webkit.org/show_bug.cgi?id=58448

        Remove data-transfer-items.html from Qt skipped tests and create an expected
        result file for data-transfer-items.html test. The need to create a expected result
        file is because the test presuppose that the type of the first element in
        DataTransferItems list is a html but when Qt selects a data, it first copies a text
        and then it copies the html, so for Qt expected test file the first element is a
        text and the second one is a html.

        * platform/qt/Skipped:
        * platform/qt/editing/pasteboard/data-transfer-items-expected.txt: Added.

2011-05-03  Alpha Lam  <hclam@chromium.org>

        Not reviewed. Build fix.

        new baseline for SVG test.

        * platform/chromium-win-vista/svg/text/text-intro-05-t-expected.txt: Added.

2011-05-03  Alpha Lam  <hclam@chromium.org>

        Not reviewed. Build fix.

        Test expectations fix.

        * platform/chromium-gpu-mac/animations/3d/replace-filling-transform-expected.png: Added.
        * platform/chromium/test_expectations.txt:

2011-05-03  Alpha Lam  <hclam@chromium.org>

        Not reviewed. Build fix.

        New baseline for GPU layout tests.

        * platform/chromium-gpu-mac/animations/3d/matrix-transform-type-animation-expected.png: Added.
        * platform/chromium-gpu-mac/animations/3d/state-at-end-event-transform-expected.png: Added.

2011-05-03  Mario Sanchez Prada  <msanchez@igalia.com>

        Unreviewed, skipping test timing out in the GTK 64-bit bot.

        * platform/gtk/Skipped: Skipped media/video-volume-slider.html.

2011-05-03  Ojan Vafai  <ojan@chromium.org>

        improve styling of options menu in results.html file

        * fast/harness/results.html:

2011-05-03  Alpha Lam  <hclam@chromium.org>

        Not reviewed. Build fix.

        New baseline and add test expectation to suppress failure.

        * platform/chromium-gpu-win/animations/3d/replace-filling-transform-expected.png: Added.
        * platform/chromium/test_expectations.txt:

2011-05-03  Ojan Vafai  <ojan@chromium.org>

        Reviewed by Tony Chang.

        Don't include the test itself in expanded test results
        https://bugs.webkit.org/show_bug.cgi?id=60051

        When loading from local disk, we can't force it to render as
        plain text, which causes the page to actually run. Also,
        the extra clutter of another iframe is probably not worth it.

        If we decide we want this later, we can add it back in as a
        preference that's off by default.

        * fast/harness/results.html:

2011-05-03  Alpha Lam  <hclam@chromium.org>

        Not reviewed. Build fix.

        Test expectation for a slow test to avoid flakiness.

        * platform/chromium/test_expectations.txt:

2011-05-03  Ojan Vafai  <ojan@chromium.org>

        Fix test that broke after adding CSS animations.

        * fast/harness/resources/results-test.js:
        * fast/harness/results-expected.txt:

2011-05-03  Alpha Lam  <hclam@chromium.org>

        Not reviewed. Build fix.

        Adding test expectations for some SVG tests on Windows.

        * platform/chromium-win-vista/svg/text/text-fonts-01-t-expected.png: Removed.
        * platform/chromium-win-vista/svg/text/text-intro-05-t-expected.png: Added.
        * platform/chromium-win-xp/svg/text/text-fonts-01-t-expected.png: Added.
        * platform/chromium-win-xp/svg/text/text-intro-05-t-expected.png: Added.
        * platform/chromium-win/svg/text/text-fonts-01-t-expected.png: Added.
        * platform/chromium-win/svg/text/text-fonts-01-t-expected.txt: Added.
        * platform/chromium-win/svg/text/text-intro-05-t-expected.png:
        * platform/chromium-win/svg/text/text-intro-05-t-expected.txt:
        * platform/chromium/test_expectations.txt:

2011-05-03  Mark Pilgrim  <pilgrim@chromium.org>

        Reviewed by Tony Chang.

        Port Mozilla's IndexedDB tests: cursor update updates indexes
        https://bugs.webkit.org/show_bug.cgi?id=59995

        This test creates an object store, adds both a unique and a non-unique index,
        adds a record, opens a cursor, changes the record, and verifies that both
        indexes correctly updated to reflect the modified record.

        * storage/indexeddb/mozilla/cursor-update-updates-indexes-expected.txt: Added.
        * storage/indexeddb/mozilla/cursor-update-updates-indexes.html: Added.

2011-05-03  James Robinson  <jamesr@chromium.org>

        Remove stale expectations for animations/3d in chromium test_expectations.txt

        * platform/chromium/test_expectations.txt:

2011-05-03  James Robinson  <jamesr@chromium.org>

        Reviewed by Kenneth Russell.

        [chromium] Layout test animations/3d/replace-filling-transform.html failing
        https://bugs.webkit.org/show_bug.cgi?id=59839

        Ignore animations/3d when run in CPU mode as these are compositor tests.

        * platform/chromium/test_expectations.txt:

2011-05-03  Ojan Vafai  <ojan@chromium.org>

        Reviewed by Tony Chang.

        put results.html options in a menu
        https://bugs.webkit.org/show_bug.cgi?id=60042

        There are currently two options. With https://bugs.webkit.org/show_bug.cgi?id=59267
        there will be three. Put them behind a menu to reduce clutter.

        * fast/harness/resources/results-test.js:
        * fast/harness/results.html:

2011-05-03  Ojan Vafai  <ojan@chromium.org>

        Reviewed by Tony Chang.

        make pixel zooming in results.html file less jarring
        https://bugs.webkit.org/show_bug.cgi?id=60038

        -Hide zoomed images when you mouse out of the document or
        mouseover an iframe.
        -Handle the case where the zoomed images overlap the actual images.

        * fast/harness/results.html:

2011-05-03  David Hyatt  <hyatt@apple.com>

        Reviewed by Dan Bernstein.

        https://bugs.webkit.org/show_bug.cgi?id=60040
        <rdar://problem/9261591>

        Links broken at iplanwebsites.com. Make sure that culledInlineAbsoluteQuads still does
        a translation of a 0,0 point to absolute coordinates so that the top left position is
        accurate.

        Added fast/inline/skipped-whitespace-client-rect.html

        * fast/inline/skipped-whitespace-client-rect-expected.txt: Added.
        * fast/inline/skipped-whitespace-client-rect.html: Added.

2011-05-03  Ojan Vafai  <ojan@chromium.org>

        Fix test accidentally modified in http://trac.webkit.org/changeset/85610.

        * fullscreen/full-screen-zIndex.html:

2011-05-02  Ojan Vafai  <ojan@chromium.org>

        Reviewed by Tony Chang.

        add image toggling behavior from old-run-webkit-tests
        https://bugs.webkit.org/show_bug.cgi?id=59978

        Add a checkbox to switch between image toggling (default)
        and just showing results for expected/actual images.

        * fast/harness/resources/results-test.js:
        * fast/harness/results-expected.txt:
        * fast/harness/results.html:

2011-05-03  Satish Sampath  <satish@chromium.org>

        Unreviewed, update test expectations for chromium.

        * platform/chromium-linux/fast/speech/input-appearance-numberandspeech-expected.png:
        * platform/chromium-linux/fast/speech/input-appearance-numberandspeech-expected.txt:
        * platform/chromium-linux/fast/speech/input-appearance-searchandspeech-expected.png:
        * platform/chromium-linux/fast/speech/input-appearance-searchandspeech-expected.txt:
        * platform/chromium-linux/fast/speech/input-appearance-speechbutton-expected.png:
        * platform/chromium-linux/fast/speech/input-appearance-speechbutton-expected.txt:
        * platform/chromium-mac-leopard/fast/speech/input-appearance-speechbutton-expected.txt: Removed.

2011-05-03  Satish Sampath  <satish@chromium.org>

        Reviewed by Tony Gentilcore.

        Rebaseline speech input layout test expectations for chromium.
        https://bugs.webkit.org/show_bug.cgi?id=59742

        * platform/chromium-linux/fast/speech/input-appearance-numberandspeech-expected.png:
        * platform/chromium-linux/fast/speech/input-appearance-numberandspeech-expected.txt:
        * platform/chromium-linux/fast/speech/input-appearance-searchandspeech-expected.png:
        * platform/chromium-linux/fast/speech/input-appearance-searchandspeech-expected.txt:
        * platform/chromium-linux/fast/speech/input-appearance-speechbutton-expected.png:
        * platform/chromium-linux/fast/speech/input-appearance-speechbutton-expected.txt:
        * platform/chromium-mac-leopard/fast/speech/input-appearance-speechbutton-expected.png:
        * platform/chromium-mac/fast/speech/input-appearance-searchandspeech-expected.png:
        * platform/chromium-mac/fast/speech/input-appearance-speechbutton-expected.png:
        * platform/chromium-mac/fast/speech/input-appearance-speechbutton-expected.txt:
        * platform/chromium/test_expectations.txt:

2011-05-03  Yury Semikhatsky  <yurys@chromium.org>

        Unreviewed. Provide Chromium test expectaions for new test.

        * platform/chromium/inspector/console/console-log-document-proto-expected.txt: Added.

2011-05-03  Pavel Feldman  <pfeldman@google.com>

        Not reviewed: rebaseline inspector test.

        * inspector/storage-panel-dom-storage-expected.txt:
        * inspector/storage-panel-dom-storage.html:

2011-05-03  Gabor Rapcsanyi  <rgabor@webkit.org>

        Rubber-stamped by Csaba Osztrogonác.

        [Qt] Add failing tests to ARM specific Skipped list

        * platform/qt-arm/Skipped:

2011-05-03  Yury Semikhatsky  <yurys@chromium.org>

        Reviewed by Pavel Feldman.

        Web Inspector: remove special logic for type of document.__proto__
        https://bugs.webkit.org/show_bug.cgi?id=60014

        * inspector/console/console-log-document-proto-expected.txt: Added.
        * inspector/console/console-log-document-proto.html: Added.
        * inspector/console/console-log-toString-object-expected.txt:
        * inspector/console/console-log-toString-object.html:

2011-05-03  Philippe Normand  <pnormand@igalia.com>

        Unreviewed, unskip now passing test.

        [GTK] media/video-controls-transformed.html fails
        https://bugs.webkit.org/show_bug.cgi?id=50706

        * platform/gtk/Skipped:

2011-05-03  Mario Sanchez Prada  <msanchez@igalia.com>

        Unreviewed, needed rebaseline after revision r85499.

        * platform/gtk/fast/replaced/table-percent-height-expected.txt:

2011-05-02  Simon Fraser  <simon.fraser@apple.com>

        Reviewed by Dan Bernstein.

        Possible crash when removing elements with reflections
        https://bugs.webkit.org/show_bug.cgi?id=60009
        
        Testcase that sometimes crashes if run with MallocScribble enabled.

        * fast/reflections/remove-reflection-crash-expected.txt: Added.
        * fast/reflections/remove-reflection-crash.html: Added.

2011-05-02  Ian Henderson  <ianh@apple.com>

        Reviewed by Dan Bernstein.

        CSS !important not respected by JavaScript
        https://bugs.webkit.org/show_bug.cgi?id=60007

        * fast/css/important-js-override-expected.txt: Added.
        * fast/css/important-js-override.html: Added.

2011-05-02  Alpha Lam  <hclam@chromium.org>

        Not reviewed. Build fix.

        Fix Chromium test expectations.

        * platform/chromium/test_expectations.txt:

2011-05-02  Alpha Lam  <hclam@chromium.org>

        Not reviewed. Build fix.

        New baselines for SVG tests for Chromium Leopard build.

        * platform/chromium-mac-leopard/svg/W3C-SVG-1.1/filters-color-01-b-expected.png: Added.
        * platform/chromium-mac-leopard/svg/W3C-SVG-1.1/filters-specular-01-f-expected.png: Added.
        * platform/chromium-mac-leopard/svg/W3C-SVG-1.1/filters-turb-01-f-expected.png: Added.
        * platform/chromium-mac-leopard/svg/W3C-SVG-1.1/masking-mask-01-b-expected.png: Added.
        * platform/chromium-mac-leopard/svg/dynamic-updates/SVGFEColorMatrixElement-dom-in-attr-expected.png: Added.
        * platform/chromium-mac-leopard/svg/dynamic-updates/SVGFEColorMatrixElement-dom-type-attr-expected.png: Added.
        * platform/chromium-mac-leopard/svg/dynamic-updates/SVGFEColorMatrixElement-dom-values-attr-expected.png: Added.
        * platform/chromium-mac-leopard/svg/dynamic-updates/SVGFEColorMatrixElement-svgdom-in-prop-expected.png: Added.
        * platform/chromium-mac-leopard/svg/dynamic-updates/SVGFESpecularLightingElement-dom-in-attr-expected.png: Added.
        * platform/chromium-mac-leopard/svg/dynamic-updates/SVGFESpecularLightingElement-dom-specularConstant-attr-expected.png: Added.
        * platform/chromium-mac-leopard/svg/dynamic-updates/SVGFESpecularLightingElement-dom-specularExponent-attr-expected.png: Added.
        * platform/chromium-mac-leopard/svg/dynamic-updates/SVGFESpecularLightingElement-dom-suraceScale-attr-expected.png: Added.
        * platform/chromium-mac-leopard/svg/dynamic-updates/SVGFESpecularLightingElement-svgdom-in-prop-expected.png: Added.
        * platform/chromium-mac-leopard/svg/dynamic-updates/SVGFESpecularLightingElement-svgdom-specularConstant-prop-expected.png: Added.
        * platform/chromium-mac-leopard/svg/dynamic-updates/SVGFESpecularLightingElement-svgdom-specularExponent-prop-expected.png: Added.
        * platform/chromium-mac-leopard/svg/dynamic-updates/SVGFESpecularLightingElement-svgdom-suraceScale-prop-expected.png: Added.
        * platform/chromium-mac-leopard/svg/dynamic-updates/SVGFETurbulenceElement-dom-baseFrequency-attr-expected.png: Added.
        * platform/chromium-mac-leopard/svg/dynamic-updates/SVGFETurbulenceElement-dom-numOctaves-attr-expected.png: Added.
        * platform/chromium-mac-leopard/svg/dynamic-updates/SVGFETurbulenceElement-dom-seed-attr-expected.png: Added.
        * platform/chromium-mac-leopard/svg/dynamic-updates/SVGFETurbulenceElement-dom-stitchTiles-attr-expected.png: Added.
        * platform/chromium-mac-leopard/svg/dynamic-updates/SVGFETurbulenceElement-dom-type-attr-expected.png: Added.
        * platform/chromium-mac-leopard/svg/dynamic-updates/SVGFETurbulenceElement-svgdom-numOctaves-prop-expected.png: Added.
        * platform/chromium-mac-leopard/svg/dynamic-updates/SVGFETurbulenceElement-svgdom-seed-prop-expected.png: Added.
        * platform/chromium-mac-leopard/svg/dynamic-updates/SVGFETurbulenceElement-svgdom-stitchTiles-prop-expected.png: Added.
        * platform/chromium-mac-leopard/svg/dynamic-updates/SVGFETurbulenceElement-svgdom-type-prop-expected.png: Added.
        * platform/chromium-mac-leopard/svg/filters/feLighting-crash-expected.png: Added.
        * platform/chromium-mac-leopard/tables/mozilla_expected_failures/other/test4-expected.png: Added.

2011-05-02  Dimitri Glazkov  <dglazkov@chromium.org>

        Unreviewed, rolling out r85578.
        http://trac.webkit.org/changeset/85578
        https://bugs.webkit.org/show_bug.cgi?id=59976

        The test needs more lovin'. Voluntary rollout.

        * media/video-document-click-expected.txt: Removed.
        * media/video-document-click.html: Removed.

2011-05-02  Dimitri Glazkov  <dglazkov@chromium.org>

        Reviewed by Darin Adler.

        Add layout tests for clicking in media documents.
        https://bugs.webkit.org/show_bug.cgi?id=59976

        * media/video-document-click-expected.txt: Added.
        * media/video-document-click.html: Added.

2011-05-02  Mark Pilgrim  <pilgrim@chromium.org>

        Reviewed by Tony Chang.

        Port Mozilla's IndexedDB tests: adding and removing values
        https://bugs.webkit.org/show_bug.cgi?id=59953

        * storage/indexeddb/mozilla/object-store-remove-values-expected.txt: Added.
        * storage/indexeddb/mozilla/object-store-remove-values.html: Added.

2011-05-02  Alpha Lam  <hclam@chromium.org>

        Not reviewed. Build fix.

        Expectation for new test.

        * platform/chromium/test_expectations.txt:

2011-05-02  Alpha Lam  <hclam@chromium.org>

        Not reviewed. Build fix.

        Chromium test expectations.

        * platform/chromium/test_expectations.txt:

2011-05-02  Joseph Pecoraro  <joepeck@webkit.org>

        Reviewed by David Kilzer.

        Respect fixed text-indent on ::-webkit-input-placeholder
        https://bugs.webkit.org/show_bug.cgi?id=59825

        Placeholder text does not appear in the render tree
        dumps, so this is a pixel test for the position of
        the placeholder affected by text-indent.

        * fast/forms/input-placeholder-text-indent.html: Added.
        * platform/mac/fast/forms/input-placeholder-text-indent-expected.png: Added.
        * platform/mac/fast/forms/input-placeholder-text-indent-expected.txt: Added.

2011-05-02  Eric Uhrhane  <ericu@chromium.org>

        Reviewed by Eric Seidel.

        Some FileWriter progress events should be queued
        https://bugs.webkit.org/show_bug.cgi?id=50846

        * fast/filesystem/resources/file-writer-events.js:
        (onWrite): Expect readyState at onwrite to be DONE now, not WRITING.
        * fast/filesystem/resources/file-writer-utils.js:
        Switch to using onwrite, now that it works.

2011-05-02  Mark Pilgrim  <pilgrim@chromium.org>

        Reviewed by Tony Chang.

        Port Mozilla's IndexedDB tests: cursor mutation in object store
        https://bugs.webkit.org/show_bug.cgi?id=59933

        This is a test case *adapted* from a test in Mozilla's IndexedDB
        test suite. The original test checked cursor mutation while iterating
        an index cursor (tracked as bug 59822). This test checks whether the
        cursor mutation is successfully recognized while iterating a straight
        objectstore cursor. Specifically, it deletes a record that's already
        been iterated, then adds a record to the objectstore during iteration,
        then checks that no records were skipped and that the added record is
        eventually found during iteration.

        * storage/indexeddb/mozilla/cursor-mutation-objectstore-only-expected.txt: Added.
        * storage/indexeddb/mozilla/cursor-mutation-objectstore-only.html: Added.

2011-05-02  Csaba Osztrogonác  <ossy@webkit.org>

        Update Qt specific expected result after r85499.

        * platform/qt/fast/replaced/table-percent-height-expected.png:
        * platform/qt/fast/replaced/table-percent-height-expected.txt:

2011-05-02  Alpha Lam  <hclam@chromium.org>

        Not reviewed. Build fix.

        Test expectation for new test.

        * platform/chromium/test_expectations.txt:

2011-05-02  Michael Saboff  <msaboff@apple.com>

        Reviewed by Geoffrey Garen.

        crash in JSC::RegExp::match
        https://bugs.webkit.org/show_bug.cgi?id=58922

        New tests to check for proper clearing and chaining of backtrack
        data labels.

        * fast/regex/parentheses-expected.txt:
        * fast/regex/script-tests/parentheses.js:

2011-05-02  Adrienne Walker  <enne@google.com>

        [chromium] Unreviewed, rebaseline small scrollbar image differences after r85527
        https://bugs.webkit.org/show_bug.cgi?id=58907

        This could be tickling the same bug that is showing up in bug 58587.

        * platform/chromium-gpu-linux/compositing/direct-image-compositing-expected.png:
        * platform/chromium-gpu-linux/compositing/geometry/fixed-in-composited-expected.png:
        * platform/chromium-gpu-linux/compositing/geometry/tall-page-composited-expected.png:
        * platform/chromium-gpu-linux/compositing/masks/masked-ancestor-expected.png:
        * platform/chromium-gpu-linux/compositing/masks/simple-composited-mask-expected.png:
        * platform/chromium-gpu-linux/fast/canvas/image-object-in-canvas-expected.png:
        * platform/chromium-gpu-linux/platform/chromium/compositing/layout-width-change-expected.png:

2011-05-02  Alpha Lam  <hclam@chromium.org>

        Not reviewed. Build fix.

        Fix Chromium test expectations.

        * platform/chromium/test_expectations.txt:

2011-05-02  Alpha Lam  <hclam@chromium.org>

        Not reviewed. Build fix.

        Fix Chromium test expectations.

        * platform/chromium/test_expectations.txt:

2011-05-02  Enrica Casucci  <enrica@apple.com>

        Reviewed by Dan Bernstein.

        Text does not split on white space when typing to the edge of window.
        https://bugs.webkit.org/show_bug.cgi?id=59968
        <rdar://problem/9112683>

        * editing/inserting/typing-at-end-of-line.html: Added.
        * platform/mac/editing/inserting/typing-at-end-of-line-expected.txt: Added.

2011-05-02  Alpha Lam  <hclam@chromium.org>

        Not reviewed. Build fix.

        Test expectations for Chromium Mac port.

        * platform/chromium-mac/svg/dynamic-updates/SVGFETurbulenceElement-dom-baseFrequency-attr-expected.png: Added.
        * platform/chromium/test_expectations.txt:

2011-05-02  Tony Chang  <tony@chromium.org>

        Remove unused files.

        * platform/gtk/fast/text/international/pop-up-button-text-alignment-and-direction-expected.checksum: Removed. This file differs from
            the value in the png file, but I assume that the png is correct (more recently generated).
        * platform/mac/fast/table/dynamic-caption-add-before-child-expected.checksum: Removed.
        * platform/mac/fast/table/dynamic-caption-add-remove-before-child-expected.checksum: Removed.
        * platform/mac/fast/table/multiple-captions-display-expected.checksum: Removed.

2011-05-02  Csaba Osztrogonác  <ossy@webkit.org>

        Update Qt specific expected result after r85499.

        * platform/qt/fast/replaced/table-percent-height-expected.png:
        * platform/qt/fast/replaced/table-percent-height-expected.txt:

2011-05-02  Chang Shu  <cshu@webkit.org>

        Reviewed by Martin Robinson.

        [GTK][Qt] fast/events/keydown-1.html fails
        https://bugs.webkit.org/show_bug.cgi?id=59586

        Replace mac-specific keys with cross-platform keys to make the test
        pass on GTK and Qt platforms.

        * fast/events/keydown-1.html:
        * platform/gtk/Skipped:
        * platform/qt/Skipped:

2011-04-27  Adrienne Walker  <enne@google.com>

        Reviewed by James Robinson.

        Add test for multiple invalidations of the same size.
        https://bugs.webkit.org/show_bug.cgi?id=58907

        This tests a bug in Chromium where canvas state was not being properly
        reset between draw calls and a cached canvas of the same size was
        being used to paint into that retained incorrect state.

        * compositing/repaint/same-size-invalidation-expected.txt: Added.
        * compositing/repaint/same-size-invalidation.html: Added.
        * platform/chromium-gpu/compositing/repaint/same-size-invalidation-expected.png: Added.

2011-05-02  Alpha Lam  <hclam@chromium.org>

        Not reviewed. Build fix.

        Add test expectations for SVG changes.

        * platform/chromium-mac-leopard/editing/selection/3690703-2-expected.png:
        * platform/chromium-mac-leopard/editing/selection/3690703-expected.png:
        * platform/chromium-mac-leopard/editing/selection/3690719-expected.png:
        * platform/chromium-mac-leopard/editing/selection/4975120-expected.png:
        * platform/chromium-mac-leopard/editing/selection/extend-selection-bidi-expected.png:
        * platform/chromium-mac-leopard/editing/style/5046875-1-expected.png:
        * platform/chromium-mac-leopard/fast/forms/input-appearance-focus-expected.png:
        * platform/chromium-mac-leopard/fast/forms/input-appearance-readonly-expected.png:
        * platform/chromium-mac-leopard/fast/forms/input-double-click-selection-gap-bug-expected.png:
        * platform/chromium-mac-leopard/fast/repaint/japanese-rl-selection-repaint-expected.png:
        * platform/chromium-mac-leopard/svg/W3C-SVG-1.1/text-tselect-02-f-expected.png: Added.
        * platform/chromium-mac-leopard/svg/custom/mouse-move-on-svg-container-expected.png:
        * platform/chromium-mac-leopard/svg/custom/mouse-move-on-svg-container-standalone-expected.png:
        * platform/chromium-mac-leopard/svg/text/text-intro-05-t-expected.png:
        * platform/chromium-mac/editing/selection/3690703-2-expected.png: Added.
        * platform/chromium-mac/editing/selection/3690703-expected.png: Added.
        * platform/chromium-mac/editing/selection/3690719-expected.png: Added.
        * platform/chromium-mac/editing/selection/4975120-expected.png: Added.
        * platform/chromium-mac/editing/selection/extend-selection-bidi-expected.png: Added.
        * platform/chromium-mac/editing/style/5046875-1-expected.png: Added.
        * platform/chromium-mac/fast/borders/svg-as-border-image-2-expected.png: Removed.
        * platform/chromium-mac/fast/borders/svg-as-border-image-expected.png: Added.
        * platform/chromium-mac/fast/forms/input-appearance-focus-expected.png: Added.
        * platform/chromium-mac/fast/forms/input-appearance-readonly-expected.png: Added.
        * platform/chromium-mac/fast/forms/input-double-click-selection-gap-bug-expected.png: Added.
        * platform/chromium-mac/fast/repaint/japanese-rl-selection-repaint-expected.png:
        * platform/chromium-mac/svg/W3C-SVG-1.1/filters-color-01-b-expected.png: Added.
        * platform/chromium-mac/svg/W3C-SVG-1.1/filters-specular-01-f-expected.png: Added.
        * platform/chromium-mac/svg/W3C-SVG-1.1/filters-turb-01-f-expected.png: Added.
        * platform/chromium-mac/svg/W3C-SVG-1.1/filters-turb-02-f-expected.png:
        * platform/chromium-mac/svg/W3C-SVG-1.1/masking-mask-01-b-expected.png: Added.
        * platform/chromium-mac/svg/W3C-SVG-1.1/text-tselect-02-f-expected.png: Added.
        * platform/chromium-mac/svg/css/circle-in-mask-with-shadow-expected.png:
        * platform/chromium-mac/svg/custom/mouse-move-on-svg-container-expected.png: Added.
        * platform/chromium-mac/svg/custom/mouse-move-on-svg-container-standalone-expected.png: Added.
        * platform/chromium-mac/svg/dynamic-updates/SVGFEColorMatrixElement-dom-in-attr-expected.png: Added.
        * platform/chromium-mac/svg/dynamic-updates/SVGFEColorMatrixElement-dom-type-attr-expected.png: Added.
        * platform/chromium-mac/svg/dynamic-updates/SVGFEColorMatrixElement-dom-values-attr-expected.png: Added.
        * platform/chromium-mac/svg/dynamic-updates/SVGFEColorMatrixElement-svgdom-in-prop-expected.png: Added.
        * platform/chromium-mac/svg/dynamic-updates/SVGFEConvolveMatrixElement-dom-preserveAlpha-attr-expected.png:
        * platform/chromium-mac/svg/dynamic-updates/SVGFEConvolveMatrixElement-svgdom-preserveAlpha-prop-expected.png:
        * platform/chromium-mac/svg/dynamic-updates/SVGFESpecularLightingElement-dom-in-attr-expected.png: Added.
        * platform/chromium-mac/svg/dynamic-updates/SVGFESpecularLightingElement-dom-specularConstant-attr-expected.png: Added.
        * platform/chromium-mac/svg/dynamic-updates/SVGFESpecularLightingElement-dom-specularExponent-attr-expected.png: Added.
        * platform/chromium-mac/svg/dynamic-updates/SVGFESpecularLightingElement-dom-suraceScale-attr-expected.png: Added.
        * platform/chromium-mac/svg/dynamic-updates/SVGFESpecularLightingElement-inherit-lighting-color-css-prop-expected.png: Added.
        * platform/chromium-mac/svg/dynamic-updates/SVGFESpecularLightingElement-lighting-color-css-prop-expected.png: Added.
        * platform/chromium-mac/svg/dynamic-updates/SVGFESpecularLightingElement-svgdom-in-prop-expected.png: Added.
        * platform/chromium-mac/svg/dynamic-updates/SVGFESpecularLightingElement-svgdom-specularConstant-prop-expected.png: Added.
        * platform/chromium-mac/svg/dynamic-updates/SVGFESpecularLightingElement-svgdom-specularExponent-prop-expected.png: Added.
        * platform/chromium-mac/svg/dynamic-updates/SVGFESpecularLightingElement-svgdom-suraceScale-prop-expected.png: Added.
        * platform/chromium-mac/svg/dynamic-updates/SVGFETurbulenceElement-dom-numOctaves-attr-expected.png: Added.
        * platform/chromium-mac/svg/dynamic-updates/SVGFETurbulenceElement-dom-seed-attr-expected.png: Added.
        * platform/chromium-mac/svg/dynamic-updates/SVGFETurbulenceElement-dom-stitchTiles-attr-expected.png: Added.
        * platform/chromium-mac/svg/dynamic-updates/SVGFETurbulenceElement-dom-type-attr-expected.png: Added.
        * platform/chromium-mac/svg/dynamic-updates/SVGFETurbulenceElement-svgdom-numOctaves-prop-expected.png: Added.
        * platform/chromium-mac/svg/dynamic-updates/SVGFETurbulenceElement-svgdom-seed-prop-expected.png: Added.
        * platform/chromium-mac/svg/dynamic-updates/SVGFETurbulenceElement-svgdom-stitchTiles-prop-expected.png: Added.
        * platform/chromium-mac/svg/dynamic-updates/SVGFETurbulenceElement-svgdom-type-prop-expected.png: Added.
        * platform/chromium-mac/svg/filters/feLighting-crash-expected.png: Added.
        * platform/chromium-mac/svg/text/text-intro-05-t-expected.png:
        * platform/chromium/test_expectations.txt:

2011-05-02  Alpha Lam  <hclam@chromium.org>

        Not reviewed. Build fix.

        Add test expectations to accomodate new tests.

        * platform/chromium/test_expectations.txt:

2011-05-02  Alpha Lam  <hclam@chromium.org>

        Not reviewed. Build fix.

        Adjust test expectations.

        * platform/chromium/test_expectations.txt:

2011-05-02  Mark Pilgrim  <pilgrim@chromium.org>

        Reviewed by Tony Chang.

        Port Mozilla's IndexedDB tests: inline autoincrement key added on put
        https://bugs.webkit.org/show_bug.cgi?id=59936

        * storage/indexeddb/mozilla/object-store-inline-autoincrement-key-added-on-put-expected.txt: Added.
        * storage/indexeddb/mozilla/object-store-inline-autoincrement-key-added-on-put.html: Added.

2011-05-02  Alpha Lam  <hclam@chromium.org>

        Not reviewd. Build fix.

        Adjust test expectations to make build bots happy.

        * platform/chromium/test_expectations.txt:

2011-05-02  Alpha Lam  <hclam@chromium.org>

        Not reviewed. Build fix.

        Rebaseline SVG layout tests and add expectations for new tests.

        * platform/chromium-linux/svg/text/text-fonts-01-t-expected.png:
        * platform/chromium-linux/svg/text/text-text-04-t-expected.png:
        * platform/chromium-mac/svg/text/text-fonts-01-t-expected.png:
        * platform/chromium-mac/svg/text/text-text-04-t-expected.png:
        * platform/chromium-win/fast/text/selection-rect-rounding-expected.png: Added.
        * platform/chromium-win/fast/text/selection-rect-rounding-expected.txt: Added.
        * platform/chromium-win/svg/text/text-text-04-t-expected.png:

2011-05-02  Alpha Lam  <hclam@chromium.org>

        Not reviewed. Build fix.

        Rebaseline SVG layout tests for chromium port.

        * platform/chromium-linux-x86_64/svg/text/text-text-01-b-expected.png:
        * platform/chromium-linux/editing/style/block-style-003-expected.png:
        * platform/chromium-linux/editing/style/create-block-for-style-005-expected.png:
        * platform/chromium-linux/editing/style/create-block-for-style-006-expected.png:
        * platform/chromium-linux/editing/style/create-block-for-style-010-expected.png:
        * platform/chromium-linux/editing/style/create-block-for-style-011-expected.png:
        * platform/chromium-linux/editing/style/create-block-for-style-012-expected.png:
        * platform/chromium-linux/editing/style/table-selection-expected.png:
        * platform/chromium-linux/svg/custom/mouse-move-on-svg-root-expected.png:
        * platform/chromium-linux/svg/custom/mouse-move-on-svg-root-standalone-expected.png:
        * platform/chromium-linux/svg/text/select-textLength-spacing-squeeze-1-expected.png:
        * platform/chromium-linux/svg/text/select-textLength-spacing-squeeze-2-expected.png:
        * platform/chromium-linux/svg/text/select-textLength-spacing-squeeze-3-expected.png:
        * platform/chromium-linux/svg/text/select-textLength-spacing-squeeze-4-expected.png:
        * platform/chromium-linux/svg/text/select-textLength-spacing-stretch-1-expected.png:
        * platform/chromium-linux/svg/text/select-textLength-spacing-stretch-2-expected.png:
        * platform/chromium-linux/svg/text/select-textLength-spacing-stretch-3-expected.png:
        * platform/chromium-linux/svg/text/select-textLength-spacing-stretch-4-expected.png:
        * platform/chromium-linux/svg/text/text-align-01-b-expected.png:
        * platform/chromium-linux/svg/text/text-align-02-b-expected.png:
        * platform/chromium-linux/svg/text/text-align-03-b-expected.png:
        * platform/chromium-linux/svg/text/text-align-04-b-expected.png:
        * platform/chromium-linux/svg/text/text-align-05-b-expected.png:
        * platform/chromium-linux/svg/text/text-align-06-b-expected.png:
        * platform/chromium-linux/svg/text/text-altglyph-01-b-expected.png:
        * platform/chromium-linux/svg/text/text-deco-01-b-expected.png:
        * platform/chromium-linux/svg/text/text-fonts-02-t-expected.png:
        * platform/chromium-linux/svg/text/text-path-01-b-expected.png:
        * platform/chromium-linux/svg/text/text-text-01-b-expected.png:
        * platform/chromium-linux/svg/text/text-text-03-b-expected.png:
        * platform/chromium-linux/svg/text/text-text-05-t-expected.png:
        * platform/chromium-linux/svg/text/text-text-06-t-expected.png:
        * platform/chromium-linux/svg/text/text-text-07-t-expected.png:
        * platform/chromium-linux/svg/text/text-text-08-b-expected.png:
        * platform/chromium-linux/svg/text/text-tref-01-b-expected.png:
        * platform/chromium-linux/svg/text/text-tselect-01-b-expected.png:
        * platform/chromium-linux/svg/text/text-tspan-01-b-expected.png:
        * platform/chromium-linux/svg/text/text-ws-01-t-expected.png:
        * platform/chromium-linux/svg/text/text-ws-02-t-expected.png:
        * platform/chromium-linux/svg/text/textPathBoundsBug-expected.png:
        * platform/chromium-mac-leopard/editing/style/table-selection-expected.png:
        * platform/chromium-mac-leopard/svg/text/text-align-02-b-expected.png:
        * platform/chromium-mac-leopard/svg/text/text-fonts-02-t-expected.png:
        * platform/chromium-mac-leopard/svg/text/text-text-01-b-expected.png:
        * platform/chromium-mac-leopard/svg/text/text-tspan-01-b-expected.png: Removed.
        * platform/chromium-mac/editing/style/block-style-003-expected.png: Added.
        * platform/chromium-mac/editing/style/create-block-for-style-005-expected.png: Added.
        * platform/chromium-mac/editing/style/create-block-for-style-006-expected.png: Added.
        * platform/chromium-mac/editing/style/create-block-for-style-010-expected.png: Added.
        * platform/chromium-mac/editing/style/create-block-for-style-011-expected.png: Added.
        * platform/chromium-mac/editing/style/create-block-for-style-012-expected.png: Added.
        * platform/chromium-mac/editing/style/table-selection-expected.png: Copied from LayoutTests/platform/chromium-mac/svg/text/textPathBoundsBug-expected.png.
        * platform/chromium-mac/svg/text/select-textLength-spacing-squeeze-1-expected.png: Added.
        * platform/chromium-mac/svg/text/select-textLength-spacing-squeeze-2-expected.png: Added.
        * platform/chromium-mac/svg/text/select-textLength-spacing-squeeze-3-expected.png: Added.
        * platform/chromium-mac/svg/text/select-textLength-spacing-squeeze-4-expected.png: Added.
        * platform/chromium-mac/svg/text/select-textLength-spacing-stretch-1-expected.png: Added.
        * platform/chromium-mac/svg/text/select-textLength-spacing-stretch-2-expected.png: Added.
        * platform/chromium-mac/svg/text/select-textLength-spacing-stretch-3-expected.png: Added.
        * platform/chromium-mac/svg/text/select-textLength-spacing-stretch-4-expected.png: Added.
        * platform/chromium-mac/svg/text/text-align-01-b-expected.png:
        * platform/chromium-mac/svg/text/text-align-02-b-expected.png:
        * platform/chromium-mac/svg/text/text-align-03-b-expected.png:
        * platform/chromium-mac/svg/text/text-align-04-b-expected.png:
        * platform/chromium-mac/svg/text/text-align-05-b-expected.png:
        * platform/chromium-mac/svg/text/text-align-06-b-expected.png:
        * platform/chromium-mac/svg/text/text-altglyph-01-b-expected.png:
        * platform/chromium-mac/svg/text/text-deco-01-b-expected.png:
        * platform/chromium-mac/svg/text/text-fonts-02-t-expected.png:
        * platform/chromium-mac/svg/text/text-path-01-b-expected.png:
        * platform/chromium-mac/svg/text/text-text-01-b-expected.png:
        * platform/chromium-mac/svg/text/text-text-03-b-expected.png:
        * platform/chromium-mac/svg/text/text-text-05-t-expected.png:
        * platform/chromium-mac/svg/text/text-text-06-t-expected.png:
        * platform/chromium-mac/svg/text/text-text-07-t-expected.png:
        * platform/chromium-mac/svg/text/text-text-08-b-expected.png:
        * platform/chromium-mac/svg/text/text-tref-01-b-expected.png:
        * platform/chromium-mac/svg/text/text-tselect-01-b-expected.png:
        * platform/chromium-mac/svg/text/text-tselect-02-f-expected.png:
        * platform/chromium-mac/svg/text/text-tspan-01-b-expected.png:
        * platform/chromium-mac/svg/text/text-ws-01-t-expected.png:
        * platform/chromium-mac/svg/text/text-ws-02-t-expected.png:
        * platform/chromium-mac/svg/text/textPathBoundsBug-expected.png:
        * platform/chromium-win/editing/style/block-style-003-expected.png:
        * platform/chromium-win/editing/style/create-block-for-style-005-expected.png:
        * platform/chromium-win/editing/style/create-block-for-style-006-expected.png:
        * platform/chromium-win/editing/style/create-block-for-style-010-expected.png:
        * platform/chromium-win/editing/style/create-block-for-style-011-expected.png:
        * platform/chromium-win/editing/style/create-block-for-style-012-expected.png:
        * platform/chromium-win/editing/style/table-selection-expected.png:
        * platform/chromium-win/svg/custom/mouse-move-on-svg-root-expected.png:
        * platform/chromium-win/svg/custom/mouse-move-on-svg-root-standalone-expected.png:
        * platform/chromium-win/svg/text/select-textLength-spacing-squeeze-1-expected.png:
        * platform/chromium-win/svg/text/select-textLength-spacing-squeeze-2-expected.png:
        * platform/chromium-win/svg/text/select-textLength-spacing-squeeze-3-expected.png:
        * platform/chromium-win/svg/text/select-textLength-spacing-squeeze-4-expected.png:
        * platform/chromium-win/svg/text/select-textLength-spacing-stretch-1-expected.png:
        * platform/chromium-win/svg/text/select-textLength-spacing-stretch-2-expected.png:
        * platform/chromium-win/svg/text/select-textLength-spacing-stretch-3-expected.png:
        * platform/chromium-win/svg/text/select-textLength-spacing-stretch-4-expected.png:
        * platform/chromium-win/svg/text/text-align-01-b-expected.png:
        * platform/chromium-win/svg/text/text-align-02-b-expected.png:
        * platform/chromium-win/svg/text/text-align-03-b-expected.png:
        * platform/chromium-win/svg/text/text-align-04-b-expected.png:
        * platform/chromium-win/svg/text/text-align-05-b-expected.png:
        * platform/chromium-win/svg/text/text-align-06-b-expected.png:
        * platform/chromium-win/svg/text/text-altglyph-01-b-expected.png:
        * platform/chromium-win/svg/text/text-deco-01-b-expected.png:
        * platform/chromium-win/svg/text/text-fonts-02-t-expected.png:
        * platform/chromium-win/svg/text/text-path-01-b-expected.png:
        * platform/chromium-win/svg/text/text-text-01-b-expected.png:
        * platform/chromium-win/svg/text/text-text-03-b-expected.png:
        * platform/chromium-win/svg/text/text-text-05-t-expected.png:
        * platform/chromium-win/svg/text/text-text-06-t-expected.png:
        * platform/chromium-win/svg/text/text-text-07-t-expected.png:
        * platform/chromium-win/svg/text/text-text-08-b-expected.png:
        * platform/chromium-win/svg/text/text-tref-01-b-expected.png:
        * platform/chromium-win/svg/text/text-tselect-01-b-expected.png:
        * platform/chromium-win/svg/text/text-tselect-02-f-expected.png:
        * platform/chromium-win/svg/text/text-tspan-01-b-expected.png:
        * platform/chromium-win/svg/text/text-ws-01-t-expected.png:
        * platform/chromium-win/svg/text/text-ws-02-t-expected.png:
        * platform/chromium-win/svg/text/textPathBoundsBug-expected.png:

2011-05-02  Tony Chang  <tony@chromium.org>

        Reviewed by Kent Tamura.

        convert manual-tests/bugzilla-6821.html to a layout test
        https://bugs.webkit.org/show_bug.cgi?id=59404

        * fast/css/hover-update-expected.txt: Added.
        * fast/css/hover-update.html: Added.

2011-05-02  Abhishek Arya  <inferno@chromium.org>

        Unreviewed.

        Remove passing tests after rebaselines from r85365.

        * platform/chromium/test_expectations.txt:

2011-05-02  Dan Bernstein  <mitz@apple.com>

        Reviewed by Simon Fraser.

        <rdar://problem/7972529> Images with percentage based height/max-height are missing when they are inside blocks inside tables
        https://bugs.webkit.org/show_bug.cgi?id=58006

        * fast/replaced/table-percent-height-expected.txt: Updated.
        * fast/replaced/table-percent-height.html: Added a test case with a replaced object nested in an
        auto-height block inside a table cell.

2011-05-02  Daniel Bates  <dbates@webkit.org>

        Reviewed by Sam Weinig.

        Convert manual test onblur-remove.html to a DRT test; onblur-remove.html fails
        https://bugs.webkit.org/show_bug.cgi?id=59379

        Make onblur-remove.html a DRT test. As of 04/25/2011 this test fails. See bug #59379
        for more details.

        * fast/events/onblur-remove-expected.txt: Added; expected failure results.
        * fast/events/onblur-remove.html: Copied from Source/WebCore/manual-tests/onblur-remove.html.

2011-05-02  Martin Robinson  <mrobinson@igalia.com>

        Reviewed by Eric Seidel.

        [GTK] editing/selection/select-out-of-editable.html failing after r83967
        https://bugs.webkit.org/show_bug.cgi?id=58667

        * platform/gtk/Skipped: Unskip a test which is now passing.

2011-05-02  Jessie Berlin  <jberlin@apple.com>

        REGRESSION (r83928 or before): Some tests failing assertions in MarkStack::internalAppend
        / MarkStack::drain.
        https://bugs.webkit.org/show_bug.cgi?id=58657

        Add inspector/styles/styles-cancel-editing.html to the Windows XP Skipped list because it
        has been crashing under MarkStack::drain on the Windows XP bots.

        * platform/win-xp/Skipped:

2011-05-02  Csaba Osztrogonác  <ossy@webkit.org>

        [Qt] Update an exptected file after r85474.

        * platform/qt/fast/css/preserve-user-specified-zoom-level-on-reload-expected.png:
        * platform/qt/fast/css/preserve-user-specified-zoom-level-on-reload-expected.txt:

2011-05-02  Philippe Normand  <pnormand@igalia.com>

        Reviewed by Eric Carlson.

        [GTK] Media tests relying on video-paint-test.js are still flaky
        https://bugs.webkit.org/show_bug.cgi?id=59934

        Dump the render tree after the video completed the seek. This is
        to avoid flake happening in the control slider not always being at
        beginning of the timeline.

        * media/video-paint-test.js:
        (init.document.addEventListener.):
        (init):

2011-05-02  Zsolt Fehér  <h490267@stud.u-szeged.hu>

        Reviewed by Csaba Osztrogonác.

        DRT sideeffect revealed by r71268
        https://bugs.webkit.org/show_bug.cgi?id=48958

        * platform/qt/Skipped: Unskip svg/custom/text-zoom.xhtml

2011-05-02  Philippe Normand  <pnormand@igalia.com>

        Unreviewed, skip flaky test on GTK.

        * platform/gtk/Skipped: Skip tables/mozilla_expected_failures/bugs/bug85016.html

2011-05-02  Philippe Normand  <pnormand@igalia.com>

        Unreviewed, re-enable websocket tests on GTK. they moved over to a
        real http server and most of the flakiness went away.

        * platform/gtk/Skipped:

2011-05-02  Philippe Normand  <pnormand@igalia.com>

        Unreviewed, GTK baselines for new tests.

        * platform/gtk/fast/backgrounds/gradient-background-leakage-expected.png: Added.
        * platform/gtk/fast/backgrounds/gradient-background-leakage-expected.txt: Added.
        * platform/gtk/fast/block/float/float-overhangs-root-expected.png: Added.
        * platform/gtk/fast/block/float/float-overhangs-root-expected.txt: Added.
        * platform/gtk/fast/block/float/overhanging-tall-block-expected.png: Added.
        * platform/gtk/fast/block/float/overhanging-tall-block-expected.txt: Added.
        * platform/gtk/fast/block/positioning/rtl-fixed-positioning-expected.png: Added.
        * platform/gtk/fast/block/positioning/rtl-fixed-positioning-expected.txt: Added.
        * platform/gtk/fast/block/positioning/vertical-rl/fixed-positioning-expected.png: Added.
        * platform/gtk/fast/block/positioning/vertical-rl/fixed-positioning-expected.txt: Added.
        * platform/gtk/fast/box-shadow/single-pixel-shadow-expected.png: Added.
        * platform/gtk/fast/box-shadow/single-pixel-shadow-expected.txt: Added.
        * platform/gtk/fast/dom/HTMLMeterElement/meter-writing-mode-expected.png: Added.
        * platform/gtk/fast/dom/HTMLMeterElement/meter-writing-mode-expected.txt: Added.
        * platform/gtk/fast/dom/HTMLProgressElement/progress-writing-mode-expected.png: Added.
        * platform/gtk/fast/dom/HTMLProgressElement/progress-writing-mode-expected.txt: Added.
        * platform/gtk/fast/forms/date-input-visible-strings-expected.png: Added.
        * platform/gtk/fast/forms/date-input-visible-strings-expected.txt: Added.
        * platform/gtk/fast/html/details-add-child-1-expected.png: Added.
        * platform/gtk/fast/html/details-add-child-1-expected.txt: Added.
        * platform/gtk/fast/html/details-add-child-2-expected.png: Added.
        * platform/gtk/fast/html/details-add-child-2-expected.txt: Added.
        * platform/gtk/fast/html/details-add-summary-child-1-expected.png: Added.
        * platform/gtk/fast/html/details-add-summary-child-1-expected.txt: Added.
        * platform/gtk/fast/html/details-add-summary-child-2-expected.png: Added.
        * platform/gtk/fast/html/details-add-summary-child-2-expected.txt: Added.
        * platform/gtk/fast/html/details-remove-child-1-expected.png: Added.
        * platform/gtk/fast/html/details-remove-child-1-expected.txt: Added.
        * platform/gtk/fast/html/details-remove-child-2-expected.png: Added.
        * platform/gtk/fast/html/details-remove-child-2-expected.txt: Added.
        * platform/gtk/fast/html/details-remove-summary-child-1-expected.png: Added.
        * platform/gtk/fast/html/details-remove-summary-child-1-expected.txt: Added.
        * platform/gtk/fast/html/details-remove-summary-child-2-expected.png: Added.
        * platform/gtk/fast/html/details-remove-summary-child-2-expected.txt: Added.
        * platform/gtk/fast/table/auto-100-percent-width-expected.png: Added.
        * platform/gtk/fast/table/auto-100-percent-width-expected.txt: Added.
        * platform/gtk/fast/table/dynamic-caption-add-before-child-expected.png: Added.
        * platform/gtk/fast/table/dynamic-caption-add-before-child-expected.txt: Added.
        * platform/gtk/fast/table/dynamic-caption-add-remove-before-child-expected.png: Added.
        * platform/gtk/fast/table/dynamic-caption-add-remove-before-child-expected.txt: Added.
        * platform/gtk/fast/table/multiple-captions-display-expected.png: Added.
        * platform/gtk/fast/table/multiple-captions-display-expected.txt: Added.
        * platform/gtk/fast/text/selection-rect-rounding-expected.png: Added.
        * platform/gtk/fast/text/selection-rect-rounding-expected.txt: Added.
        * platform/gtk/svg/filters/feDropShadow-expected.png: Added.
        * platform/gtk/svg/filters/feDropShadow-expected.txt: Added.

2011-05-02  Philippe Normand  <pnormand@igalia.com>

        Unreviewed, GTK rebaseline after r85355.

        * platform/gtk/fast/table/prepend-in-anonymous-table-expected.txt:
        * platform/gtk/tables/mozilla_expected_failures/other/test4-expected.txt:

2011-05-01  Oliver Hunt  <oliver@apple.com>

        Reviewed by Gavin Barraclough.

        ES5 Strict mode does not allow getter and setter for same propId
        https://bugs.webkit.org/show_bug.cgi?id=57295

        Update for correct results

        * fast/js/mozilla/strict/11.1.5-expected.txt:

2011-05-01  Oliver Hunt  <oliver@apple.com>

        Reviewed by Gavin Barraclough.

        Assigning to function identifier under strict should throw
        https://bugs.webkit.org/show_bug.cgi?id=59289

        Add test case for correct behaviour, and update mozilla test results to reflect
        the correct result.

        * fast/js/basic-strict-mode-expected.txt:
        * fast/js/mozilla/strict/assign-to-callee-name-expected.txt:
        * fast/js/script-tests/basic-strict-mode.js:

2011-05-01  Adam Barth  <abarth@webkit.org>

        Reviewed by Eric Seidel.

        Polish CSP host and port matching
        https://bugs.webkit.org/show_bug.cgi?id=59899

        Test two host wildcard cases.

        * http/tests/security/contentSecurityPolicy/image-full-host-wildcard-allowed-expected.txt: Added.
        * http/tests/security/contentSecurityPolicy/image-full-host-wildcard-allowed.html: Added.
        * http/tests/security/contentSecurityPolicy/image-host-wildcard-allowed-expected.txt: Added.
        * http/tests/security/contentSecurityPolicy/image-host-wildcard-allowed.html: Added.

2011-05-01  Adam Barth  <abarth@webkit.org>

        Reviewed by Eric Seidel.

        CSP default-src is missing
        https://bugs.webkit.org/show_bug.cgi?id=58641

        Test that default-src controls some scripting policy and that
        script-src, if present, overrides default-src.  In principle, we could
        test the interaction of default-src with every other directive, but
        that seems like overkill.

        * http/tests/security/contentSecurityPolicy/default-src-inline-allowed-expected.txt: Added.
        * http/tests/security/contentSecurityPolicy/default-src-inline-allowed.html: Added.
        * http/tests/security/contentSecurityPolicy/default-src-inline-blocked-expected.txt: Added.
        * http/tests/security/contentSecurityPolicy/default-src-inline-blocked.html: Added.
        * http/tests/security/contentSecurityPolicy/script-src-overrides-default-src-expected.txt: Added.
        * http/tests/security/contentSecurityPolicy/script-src-overrides-default-src.html: Added.

2011-05-01  Justin Schuh  <jschuh@chromium.org>

        Reviewed by Adam Barth.

        History::stateObjectAdded should check origin via SecurityOrigin::canRequest
        https://bugs.webkit.org/show_bug.cgi?id=59840

        * fast/loader/stateobjects/pushstate-in-data-url-denied-expected.txt: Added.
        * fast/loader/stateobjects/pushstate-in-data-url-denied.html: Added.
        * fast/loader/stateobjects/replacestate-base-illegal-expected.txt: Removed.
        * fast/loader/stateobjects/replacestate-base-illegal.html: Removed.
        * fast/loader/stateobjects/replacestate-base-legal-expected.txt: Removed.
        * fast/loader/stateobjects/replacestate-base-legal.html: Removed.
        * fast/loader/stateobjects/resources/replacestate-base-pass.html: Removed.
        * http/tests/navigation/replacestate-base-illegal-expected.txt: Copied from LayoutTests/fast/loader/stateobjects/replacestate-base-illegal-expected.txt.
        * http/tests/navigation/replacestate-base-illegal.html: Copied from LayoutTests/fast/loader/stateobjects/replacestate-base-illegal.html.
        * http/tests/navigation/replacestate-base-legal-expected.txt: Copied from LayoutTests/fast/loader/stateobjects/replacestate-base-legal-expected.txt.
        * http/tests/navigation/replacestate-base-legal.html: Copied from LayoutTests/fast/loader/stateobjects/replacestate-base-legal.html.
        * http/tests/navigation/resources/replacestate-base-pass.html: Copied from LayoutTests/fast/loader/stateobjects/resources/replacestate-base-pass.html.

2011-05-01  Emil A Eklund  <eae@chromium.org>

        Reviewed by Eric Seidel.

        getComputedStyle() returns unitless values for some properties that require units
        https://bugs.webkit.org/show_bug.cgi?id=55111

        Add test to verify that getComputedStyle returns length properties with a unit.

        * fast/css/getComputedStyle/getComputedStyle-length-unit-expected.txt: Added.
        * fast/css/getComputedStyle/getComputedStyle-length-unit.html: Added.

2011-05-01  Yael Aharon  <yael.aharon@nokia.com>

        Reviewed by Eric Seidel.

        CSS3 nth-child(n) selector fails
        https://bugs.webkit.org/show_bug.cgi?id=56943

        * fast/css/nth-child-n-expected.txt: Added.
        * fast/css/nth-child-n.html: Added.

2011-05-01  Nikolas Zimmermann  <nzimmermann@rim.com>

        Reviewed by Dirk Schulze.

        LEAK: SVGElement leaks when detaching it in a pending resource state
        https://bugs.webkit.org/show_bug.cgi?id=59072

        Add testcase that used to leak, the leaks bot will assure they won't in future.

        * svg/custom/pending-resource-leak-2-expected.txt: Added.
        * svg/custom/pending-resource-leak-2.svg: Added.
        * svg/custom/pending-resource-leak-3-expected.txt: Added.
        * svg/custom/pending-resource-leak-3.svg: Added.
        * svg/custom/pending-resource-leak-expected.txt: Added.
        * svg/custom/pending-resource-leak.svg: Added.

2011-05-01  Dan Bernstein  <mitz@apple.com>

        Reviewed by Anders Carlsson.

        <rdar://problem/9155067> REGRESSION (float-based line boxes): Gaps and overlaps in selection highlight
        https://bugs.webkit.org/show_bug.cgi?id=56658

        * fast/text/selection-rect-rounding.html: Added.
        * platform/mac/fast/text/selection-rect-rounding-expected.png: Added.
        * platform/mac/fast/text/selection-rect-rounding-expected.txt: Added.

2011-04-30  Justin Schuh  <jschuh@chromium.org>

        Reviewed by Dirk Schulze.

        Make RenderSVGResourceFilter take ownership of filter data when painting
        https://bugs.webkit.org/show_bug.cgi?id=51524

        * svg/custom/filter-on-svgimage-expected.txt: Added.
        * svg/custom/filter-on-svgimage.svg: Added.

2011-04-30  Adam Roben  <aroben@apple.com>

        Skip another test that requires layoutTestController.setAlwaysAcceptCookies on mac-wk2

        <http://webkit.org/b/42778> tracks implementing this feature.

        * platform/mac-wk2/Skipped: Added
        http/tests/xmlhttprequest/cross-origin-cookie-storage.html.

2011-04-30  Adam Roben  <aroben@apple.com>

        Skip another test that requires eventSender.keyDown on mac-wk2

        <http://webkit.org/b/42194> tracks implementing this feature.

        * platform/mac-wk2/Skipped: Added plugins/keyboard-events.html.

2011-04-30  Adam Roben  <aroben@apple.com>

        Skip another test that requires layoutTestController.overridePreference on mac-wk2

        <http://webkit.org/b/42197> tracks implementing this feature.

        * platform/mac-wk2/Skipped: Added fast/canvas/webgl/framebuffer-object-attachment.html.

2011-04-30  Adam Roben  <aroben@apple.com>

        Skip a failing test on mac-wk2

        I can't check in expected failure results because the results are slightly different each
        time.

        <http://webkit.org/b/59865> tracks the failure.

        * platform/mac-wk2/Skipped: Added transitions/transition-timing-function.html.

2011-04-30  Adam Roben  <aroben@apple.com>

        Skip a flaky test on mac-wk2

        <http://webkit.org/b/58990> tracks the failure.

        * platform/mac-wk2/Skipped: Added editing/undo/undo-iframe-location-change.html.

2011-04-30  Adam Roben  <aroben@apple.com>

        Remove mac-wk2 expected failure results for an animation test

        Looks like this started passing in r85340. (I hope it wasn't because animation-api-1.html,
        which is now skipped, was causing this one to fail!)

        Fixes <http://webkit.org/b/56528> <rdar://problem/9147568> REGRESSION (r80846):
        animations/animation-controller-drt-api.html failing in WebKit2

        * platform/mac-wk2/animations/animation-controller-drt-api-expected.txt: Removed.

2011-04-30  Csaba Osztrogonác  <ossy@webkit.org>

        [Qt] Add one more flakey test to the Skipped list.

        * platform/qt-mac/Skipped:

2011-04-29  Csaba Osztrogonác  <ossy@webkit.org>

        Unreviewed. Update Qt specific expected files after r85355.
        https://bugs.webkit.org/show_bug.cgi?id=59833

        * platform/qt/fast/table/prepend-in-anonymous-table-expected.txt:
        * platform/qt/tables/mozilla_expected_failures/other/test4-expected.txt:

2011-04-29  Adam Barth  <abarth@webkit.org>

        Reviewed by Eric Seidel.

        CSP script-src should block eval
        https://bugs.webkit.org/show_bug.cgi?id=59850

        Test that both function-eval and operator-eval are correctly blocked
        and allowed according to the policy.

        * http/tests/security/contentSecurityPolicy/eval-allowed-expected.txt: Added.
        * http/tests/security/contentSecurityPolicy/eval-allowed.html: Added.
        * http/tests/security/contentSecurityPolicy/eval-blocked-expected.txt: Added.
        * http/tests/security/contentSecurityPolicy/eval-blocked.html: Added.

2011-04-29  Joseph Pecoraro  <joepeck@webkit.org>

        Unreviewed. Add windows expected results for a new test.

        * platform/win/fast/forms/date-input-visible-strings-expected.txt: Added.

2011-04-29  Adam Barth  <abarth@webkit.org>

        Reviewed by Eric Seidel.

        style-src should block @style
        https://bugs.webkit.org/show_bug.cgi?id=59293

        Testing makes perfect.

        * http/tests/security/contentSecurityPolicy/inline-style-attribute-allowed-expected.txt: Added.
        * http/tests/security/contentSecurityPolicy/inline-style-attribute-allowed.html: Added.
        * http/tests/security/contentSecurityPolicy/inline-style-attribute-blocked-expected.txt: Added.
        * http/tests/security/contentSecurityPolicy/inline-style-attribute-blocked.html: Added.
        * http/tests/security/contentSecurityPolicy/inline-style-attribute-on-html-expected.txt: Added.
        * http/tests/security/contentSecurityPolicy/inline-style-attribute-on-html.html: Added.

2011-04-29  Joseph Pecoraro  <joepeck@webkit.org>

        Reviewed by Kent Tamura.

        Allow Localized Date Strings for Date Input Fields
        https://bugs.webkit.org/show_bug.cgi?id=59752

        The render tree dump prints out the visible string
        inside the <input> field.

        * fast/forms/date-input-visible-strings.html: Added.
        * platform/mac/fast/forms/date-input-visible-strings-expected.txt: Added.

2011-04-29  Adam Barth  <abarth@webkit.org>

        Reviewed by Eric Seidel.

        style-src should block inline style from <style>
        https://bugs.webkit.org/show_bug.cgi?id=59292

        Testing makes perfect.

        * http/tests/security/contentSecurityPolicy/inline-style-allowed-expected.txt: Added.
        * http/tests/security/contentSecurityPolicy/inline-style-allowed.html: Added.
        * http/tests/security/contentSecurityPolicy/inline-style-blocked-expected.txt: Added.
        * http/tests/security/contentSecurityPolicy/inline-style-blocked.html: Added.

2011-04-29  Sam Weinig  <sam@webkit.org>

        Add tests using layoutTestController.setPrivateBrowsingEnabled to the WebKit2
        skipped list. Covered by https://bugs.webkit.org/show_bug.cgi?id=59857

        * platform/mac-wk2/Skipped:

2011-04-29  Geoffrey Garen  <ggaren@apple.com>

        Reviewed by Alexey Proskuryakov.

        REGRESSION: r83938 abandons GC memory
        https://bugs.webkit.org/show_bug.cgi?id=59604
        
        Test an edge case of an image that has finished loading but has not yet
        fired its load event.

        * fast/dom/gc-image-element-expected.txt: Added.
        * fast/dom/gc-image-element.html: Added.

2011-04-29  Emil Eklund  <eae@chromium.org>

        Reviewed by Tony Chang.

        Setting outerHTML should merge text nodes
        https://bugs.webkit.org/show_bug.cgi?id=52686
        
        Add test for setting Element.outerHTML.

        * fast/dom/set-outer-html-expected.txt: Added.
        * fast/dom/set-outer-html.html: Added.

2011-04-29  Emil A Eklund  <eae@chromium.org>

        Reviewed by Dimitri Glazkov.

        Onchange on text fields has an incoherent behavior
        https://bugs.webkit.org/show_bug.cgi?id=57330

        Add tests for typing and then deleting text from an empty field.

        * fast/events/onchange-text-form-field-expected.txt:
        * fast/events/onchange-text-form-field.html:
        * platform/gtk/fast/events/onchange-text-form-field-expected.txt: Removed.

2011-04-29  Kenneth Russell  <kbr@google.com>

        Unreviewed. Merged in all downstream Chromium test expectations.

        * platform/chromium/test_expectations.txt:

2011-04-29  Abhishek Arya  <inferno@chromium.org>

        Unreviewed.
        
        Chromium rebaselines for r85355.
        https://bugs.webkit.org/show_bug.cgi?id=59833

        * platform/chromium-linux/fast/table/dynamic-caption-add-before-child-expected.png: Added.
        * platform/chromium-linux/fast/table/dynamic-caption-add-remove-before-child-expected.png: Added.
        * platform/chromium-linux/fast/table/multiple-captions-display-expected.png: Added.
        * platform/chromium-mac-leopard/fast/table/dynamic-caption-add-before-child-expected.png: Added.
        * platform/chromium-mac-leopard/fast/table/dynamic-caption-add-remove-before-child-expected.png: Added.
        * platform/chromium-mac-leopard/fast/table/multiple-captions-display-expected.png: Added.
        * platform/chromium-mac/tables/mozilla_expected_failures/other/test4-expected.png:
        * platform/chromium-win/fast/table/dynamic-caption-add-before-child-expected.png: Added.
        * platform/chromium-win/fast/table/dynamic-caption-add-before-child-expected.txt: Added.
        * platform/chromium-win/fast/table/dynamic-caption-add-remove-before-child-expected.png: Added.
        * platform/chromium-win/fast/table/dynamic-caption-add-remove-before-child-expected.txt: Added.
        * platform/chromium-win/fast/table/multiple-captions-display-expected.png: Added.
        * platform/chromium-win/fast/table/multiple-captions-display-expected.txt: Added.
        * platform/chromium-win/fast/table/prepend-in-anonymous-table-expected.txt:
        * platform/chromium-win/tables/mozilla_expected_failures/other/test4-expected.txt:
        * platform/chromium/test_expectations.txt:

2011-04-29  Gavin Barraclough  <barraclough@apple.com>

        Reviewed by Oliver Hunt & Geoff Garen.

        https://bugs.webkit.org/show_bug.cgi?id=59221
        [RegexFuzz] Regression blocking testing

        Add new tests for parenthetical assertions.

        * fast/regex/assertion-expected.txt:
        * fast/regex/script-tests/assertion.js:

2011-04-29  Adam Roben  <aroben@apple.com>

        Ensure PHP's short_open_tag and log_errors settings are turned on

        These are usually on by default, but you can't trust defaults!

        Reviewed by Sam Weinig.

        * http/conf/apache2-debian-httpd.conf:
        * http/conf/apache2-httpd.conf:
        * http/conf/apache2-msys-httpd.conf:
        * http/conf/cygwin-httpd.conf:
        * http/conf/fedora-httpd.conf:
        * http/conf/httpd.conf:
        Added settings to turn on short_open_tag and log_errors.

2011-04-29  Ojan Vafai  <ojan@chromium.org>

        Inlude new expected results accidentally excluded from
        http://trac.webkit.org/changeset/85346.

        * fast/harness/results-expected.txt:

2011-04-21  Abhishek Arya  <inferno@chromium.org>

        Reviewed by Dave Hyatt.

        Tests that we do not crash on
        ASSERT(!m_layoutRoot->container() || !m_layoutRoot->container()->needsLayout())
        when a table has two or more captions.
        https://bugs.webkit.org/show_bug.cgi?id=58249

        * fast/table/dynamic-caption-add-before-child.xhtml: Added. Tests that
        before child caption becomes the first caption.
        * fast/table/dynamic-caption-add-remove-before-child.xhtml: Added. Tests
        that when we remove the before child caption, the original caption becomes
        the first caption and is drawn.
        * fast/table/multiple-captions-crash-expected.txt: Added.
        * fast/table/multiple-captions-crash.xhtml: Added. Tests that we
        do not crash when table has multiple captions and captions (other
        than the first one) have input elements added as their child.
        * fast/table/multiple-captions-crash2-expected.txt: Added.
        * fast/table/multiple-captions-crash2.xhtml: Added. Same as
        multiple-captions-crash.xhtml but this testcase does not have
        enclosing table tags for the captions.
        * fast/table/multiple-captions-display.xhtml: Added. Tests that only
        the first caption and captions with position fixed (display=BLOCK) are
        shown. Other captions are not added to table.
        * platform/mac/fast/table/dynamic-caption-add-before-child-expected.checksum: Added.
        * platform/mac/fast/table/dynamic-caption-add-before-child-expected.png: Added.
        * platform/mac/fast/table/dynamic-caption-add-before-child-expected.txt: Added.
        * platform/mac/fast/table/dynamic-caption-add-remove-before-child-expected.checksum: Added.
        * platform/mac/fast/table/dynamic-caption-add-remove-before-child-expected.png: Added.
        * platform/mac/fast/table/dynamic-caption-add-remove-before-child-expected.txt: Added.
        * platform/mac/fast/table/multiple-captions-display-expected.checksum: Added.
        * platform/mac/fast/table/multiple-captions-display-expected.png: Added.
        * platform/mac/fast/table/multiple-captions-display-expected.txt: Added.
        * platform/mac/fast/table/prepend-in-anonymous-table-expected.png:
        * platform/mac/fast/table/prepend-in-anonymous-table-expected.txt: Rebaseline
        test because we do not allow captions other than the first one.
        * platform/mac/tables/mozilla_expected_failures/other/test4-expected.txt: Rebaseline
        test because we do not allow captions other than the first one.

2011-04-29  Dean Jackson  <dino@apple.com>

        https://bugs.webkit.org/show_bug.cgi?id=59729

        Another followup from adding ENABLE(ANIMATION_API). Fix
        tests that mention webkitGetAnimations().

        * fast/dom/Window/window-properties-expected.txt:
        * platform/qt/fast/dom/Window/window-properties-expected.txt:

2011-04-29  Dean Jackson  <dino@apple.com>

        https://bugs.webkit.org/show_bug.cgi?id=59729

        Followup from adding an ENABLE flag that is disabled by
        default. Adjust broken test results.

        * fast/dom/Window/window-properties-expected.txt:
        * fast/dom/Window/window-property-descriptors-expected.txt:
        * fast/dom/prototype-inheritance-2-expected.txt:
        * fast/dom/prototype-inheritance-expected.txt:
        * fast/js/global-constructors-expected.txt:
        * platform/chromium/fast/dom/prototype-inheritance-expected.txt:
        * platform/qt/fast/dom/Window/window-properties-expected.txt:
        * platform/qt/fast/dom/Window/window-property-descriptors-expected.txt:
        * platform/qt/fast/dom/prototype-inheritance-expected.txt:
        * platform/qt/fast/js/global-constructors-expected.txt:
        * platform/win/fast/dom/Window/window-property-descriptors-expected.txt:
        * platform/win/fast/dom/prototype-inheritance-expected.txt:
        * platform/win/fast/js/global-constructors-expected.txt:

2011-04-29  Ojan Vafai  <ojan@chromium.org>

        Reviewed by Eric Seidel.

        handle flaky failures
        https://bugs.webkit.org/show_bug.cgi?id=59820

        Handle that actual can be a space-separated list of results
        when we do retries. Also, show expected flaky tests that pass
        in the unexpected passes table.

        * fast/harness/resources/results-test.js:
        * fast/harness/results.html:

2011-04-29  Mark Pilgrim  <pilgrim@chromium.org>

        Reviewed by Tony Chang.

        Port Mozilla's IndexedDB tests: index with integer keys
        https://bugs.webkit.org/show_bug.cgi?id=59794

        * storage/indexeddb/mozilla/create-index-with-integer-keys-expected.txt: Added.
        * storage/indexeddb/mozilla/create-index-with-integer-keys.html: Added.

2011-04-29  Dean Jackson  <dino@apple.com>

        Reviewed by Simon Fraser.

        Add ENABLE macro for WebKitAnimation
        https://bugs.webkit.org/show_bug.cgi?id=59729

        Now that the WebKit Animation API is disabled by
        default, skip the existing test.

        * platform/chromium/test_expectations.txt:
        * platform/gtk/Skipped:
        * platform/mac/Skipped:
        * platform/qt/Skipped:
        * platform/win/Skipped:

2011-04-29  Dean Jackson  <dino@apple.com>

        Reviewed by Simon Fraser.

        https://bugs.webkit.org/show_bug.cgi?id=59149
        (Regression) Existing animations are not replaced when filling.

        Add a test that exercises the case where a hardware animation
        is in a filling mode, then is replaced by a new animation.

        * animations/3d/replace-filling-transform-expected.txt: Added.
        * animations/3d/replace-filling-transform.html: Added.
        * animations/3d/replace-filling-transform-expected.png: Added.

2011-04-29  Mark Pilgrim  <pilgrim@chromium.org>

        Reviewed by Tony Chang.

        Port Mozilla's IndexedDB tests: indexes against autoincrementing keys
        https://bugs.webkit.org/show_bug.cgi?id=59722

        * storage/indexeddb/mozilla/autoincrement-indexes-expected.txt: Added.
        * storage/indexeddb/mozilla/autoincrement-indexes.html: Added.

2011-04-29  Csaba Osztrogonác  <ossy@webkit.org>

        Remove WML
        https://bugs.webkit.org/show_bug.cgi?id=59678

        [Qt] Remove WML tests from the Skipped list after r85256.

        * platform/qt/Skipped:

2011-04-28  Abhishek Arya  <inferno@chromium.org>

        Reviewed by Nikolas Zimmermann.

        Tests that we do not crash when inline text is removed and we
        try to access layout attributes containing that inline text.
        https://bugs.webkit.org/show_bug.cgi?id=59161

        * svg/text/inline-text-destroy-attributes-crash-expected.txt: Added.
        * svg/text/inline-text-destroy-attributes-crash.xhtml: Added.

2011-04-29  Csaba Osztrogonác  <ossy@webkit.org>

        [Qt] Add flakey tests to the Skipped list.

        * platform/qt-mac/Skipped:

2011-04-29  Adam Roben  <aroben@apple.com>

        Move some tests that time out in Debug from win-xp/Skipped to win/Skipped

        This will help people who run tests in Debug on Windows 7.

        * platform/win-xp/Skipped: Moved two XHR tests from here...
        * platform/win/Skipped: ...to here.

2011-04-29  Jessie Berlin  <jberlin@apple.com>

        WebKit2 needs layoutTestController.overridePreference.
        https://bugs.webkit.org/show_bug.cgi?id=42197

        Add http/tests/inspector/network/ping.html, which uses overridePreference, to the mac-wk2
        Skipped list to get the bots green.

        * platform/mac-wk2/Skipped:

2011-04-29  Pavel Feldman  <pfeldman@google.com>

        Not reviewed: skip flaky inspector tests on GTK for now.

        * platform/gtk/Skipped:

2011-04-29  Pavel Feldman  <pfeldman@google.com>

        Not reviewed: skip flaky inspector tests for now.

        * platform/mac/Skipped:

2011-04-29  Pavel Feldman  <pfeldman@google.com>

        Reviewed by Yury Semikhatsky.

        Web Inspector: CSS editing breaks when entering "color: rgb(1"
        https://bugs.webkit.org/show_bug.cgi?id=59789

        * inspector/styles/styles-add-invalid-property-expected.txt: Added.
        * inspector/styles/styles-add-invalid-property.html: Added.
        * inspector/styles/styles-cancel-editing-expected.txt: Added.
        * inspector/styles/styles-cancel-editing.html: Added.
        * inspector/styles/styles-commit-editing-expected.txt: Added.
        * inspector/styles/styles-commit-editing.html: Added.

2011-04-29  Pavel Podivilov  <podivilov@chromium.org>

        Reviewed by Pavel Feldman.

        Web Inspector: breakpoints set in original and formatted scripts are messed up after navigation.
        https://bugs.webkit.org/show_bug.cgi?id=59476

        * http/tests/inspector/inspector-test.js:
        (initialize_InspectorTest.InspectorTest.navigate):
        (initialize_InspectorTest.InspectorTest.reloadPage):
        (initialize_InspectorTest.InspectorTest.pageLoaded):
        (initialize_InspectorTest.InspectorTest.runWhenPageLoads):
        ():
        * inspector/debugger/resources/test-navigation.html: Added.
        * inspector/debugger/script-formatter-expected.txt:
        * inspector/debugger/script-formatter.html:

2011-04-28  Pavel Podivilov  <podivilov@chromium.org>

        Reviewed by Yury Semikhatsky.

        Web Inspector: include script end line:column in scriptParsed parameters.
        https://bugs.webkit.org/show_bug.cgi?id=59717

        * inspector/debugger/debugger-scripts-expected.txt:
        * inspector/debugger/debugger-scripts.html:

2011-04-28  Yury Semikhatsky  <yurys@chromium.org>

        Reviewed by Pavel Feldman.

        Web Inspector: [protocol] Evaluate should expose thrown exception value
        https://bugs.webkit.org/show_bug.cgi?id=59000

        * inspector/console/console-dir-expected.txt:
        * inspector/console/console-eval-global-expected.txt:
        * inspector/console/console-format-expected.txt:
        * inspector/extensions/extensions-eval-expected.txt:
        * inspector/protocol/console-agent-expected.txt:
        * inspector/protocol/runtime-agent-expected.txt:

2011-04-29  Sheriff Bot  <webkit.review.bot@gmail.com>

        Unreviewed, rolling out r85315.
        http://trac.webkit.org/changeset/85315
        https://bugs.webkit.org/show_bug.cgi?id=59792

        Broke script-formatter.html test (Requested by podivilov on
        #webkit).

        * http/tests/inspector/inspector-test.js:
        (initialize_InspectorTest.InspectorTest.reloadPage):
        (initialize_InspectorTest.InspectorTest.pageReloaded):
        (initialize_InspectorTest.InspectorTest.runWhenPageLoads):
        ():
        * inspector/debugger/script-formatter-expected.txt:
        * inspector/debugger/script-formatter.html:

2011-04-29  Vsevolod Vlasov  <vsevik@chromium.org>

        Reviewed by Pavel Feldman.

        Web Inspector: Hyperlink Auditing (ping) requests are not shown in network panel
        https://bugs.webkit.org/show_bug.cgi?id=58794

        Added ping requests to network panel.

        * http/tests/inspector/network/ping-expected.txt: Added.
        * http/tests/inspector/network/ping.html: Added.

2011-04-28  Pavel Podivilov  <podivilov@chromium.org>

        Reviewed by Pavel Feldman.

        Web Inspector: breakpoints set in original and formatted scripts are messed up after navigation.
        https://bugs.webkit.org/show_bug.cgi?id=59476

        * http/tests/inspector/inspector-test.js:
        (initialize_InspectorTest.InspectorTest.navigate):
        (initialize_InspectorTest.InspectorTest.reloadPage):
        (initialize_InspectorTest.InspectorTest.pageLoaded):
        (initialize_InspectorTest.InspectorTest.runWhenPageLoads):
        ():
        * inspector/debugger/script-formatter-expected.txt:
        * inspector/debugger/script-formatter.html:

2011-04-28  Adam Roben  <aroben@apple.com>

        Unskip some tests that were failing due to local issues on the bots that have been resolved

        See <http://webkit.org/b/51807> for details.

        * platform/mac-leopard/Skipped:

2011-04-28  Adam Roben  <aroben@apple.com>

        Skip a failing custom font test on Leopard

        <http://webkit.org/b/59780> tracks the failure.

        * platform/mac-leopard/Skipped: Added fast/css/custom-font-xheight.html.

2011-04-28  Adam Roben  <aroben@apple.com>

        Skip a timing-out canvas test on Leopard

        <http://webkit.org/b/59777> tracks the failure.

        * platform/mac-leopard/Skipped: Added fast/canvas/canvas-largedraws.html.

2011-04-28  Simon Fraser  <simon.fraser@apple.com>

        Reviewed by Dan Bernstein.

        Mask placement on composited layer is incorrect sometimes
        https://bugs.webkit.org/show_bug.cgi?id=59775

        * compositing/masks/layer-mask-placement-expected.png: Added.
        * compositing/masks/layer-mask-placement-expected.txt: Added.
        * compositing/masks/layer-mask-placement.html: Added.

2011-04-28  Adam Roben  <aroben@apple.com>

        Move some mac-snowleopard results back up to mac

        * platform/mac-snowleopard/fast/forms/textarea-placeholder-visibility-1-expected.png: Removed.
        * platform/mac-snowleopard/fast/forms/textarea-placeholder-visibility-1-expected.txt: Removed.
        * platform/mac-snowleopard/fast/forms/textarea-placeholder-visibility-2-expected.png: Removed.
        * platform/mac-snowleopard/fast/forms/textarea-placeholder-visibility-2-expected.txt: Removed.
        * platform/mac/fast/forms/textarea-placeholder-visibility-1-expected.png:
        * platform/mac/fast/forms/textarea-placeholder-visibility-1-expected.txt:
        * platform/mac/fast/forms/textarea-placeholder-visibility-2-expected.png:
        * platform/mac/fast/forms/textarea-placeholder-visibility-2-expected.txt:

2011-04-28  Simon Fraser  <simon.fraser@apple.com>

        Reviewed by Dirk Schulze.

        1px box-shadow looks ugly
        https://bugs.webkit.org/show_bug.cgi?id=58100
        and
        ShadowBlur incorrectly handles zero-sized blur radius in one axis
        https://bugs.webkit.org/show_bug.cgi?id=59710
        
        Pixel test for a single-pixel shadow.

        * fast/box-shadow/single-pixel-shadow.html: Added.
        * platform/mac/fast/box-shadow/single-pixel-shadow-expected.png: Added.
        * platform/mac/fast/box-shadow/single-pixel-shadow-expected.txt: Added.
        * platform/mac/svg/dynamic-updates/SVGFEDropShadowElement-dom-shadow-color-attr-expected.png:
        * platform/mac/svg/dynamic-updates/SVGFEDropShadowElement-svgdom-shadow-color-prop-expected.png:
        * platform/mac/svg/filters/feDropShadow-expected.png:

2011-04-28  Adam Roben  <aroben@apple.com>

        Skip all fast/dom/shadow tests on Mac

        They seem to be causing later tests to crash. See <http://webkit.org/b/59571>.

        * platform/mac/Skipped:

2011-04-28  Yael Aharon  <yael.aharon@nokia.com>

        Reviewed by Beth Dakin.

        CSS sibling selector (~) does not work with :target pseudo class
        https://bugs.webkit.org/show_bug.cgi?id=26539

        * fast/css/pseudo-target-indirect-sibling-001-expected.txt: Added.
        * fast/css/pseudo-target-indirect-sibling-001.html: Added.
        * fast/css/pseudo-target-indirect-sibling-002-expected.txt: Added.
        * fast/css/pseudo-target-indirect-sibling-002.html: Added.

2011-04-28  Dirk Pranke  <dpranke@chromium.org>

        Unreviewed, expectations change. More flakiness.

        * platform/chromium/test_expectations.txt:

2011-04-28  Steve Lacey  <sjl@chromium.org>

        Reviewed by Eric Carlson.

        Change chromium media controls to use absolute positioning until bug 59644 is fixed.
        https://bugs.webkit.org/show_bug.cgi?id=59732

        * platform/chromium/test_expectations.txt: Add expectations for affected tests.

2011-04-28  Julien Chaffraix  <jchaffraix@codeaurora.org>

        Reviewed by Darin Adler.

        CSS counters in :before pseudo-elements do not always update
        https://bugs.webkit.org/show_bug.cgi?id=38291

        The previous bug was solved so just landing the test case to ensure that
        we don't regress it.

        * fast/css/counters/counter-before-content-not-incremented-expected.txt: Added.
        * fast/css/counters/counter-before-content-not-incremented.html: Added.

2011-04-28  Dirk Pranke  <dpranke@chromium.org>

        Suppress GPU failures - bug 59768, and
        some fast/repaint/shadow failures that are
        probably just rebaselines.

        * platform/chromium/test_expectations.txt:

2011-04-28  Dirk Pranke  <dpranke@chromium.org>

        Unreviewed, expectations change.

        * platform/chromium/test_expectations.txt:

2011-04-28  Martin Robinson  <mrobinson@igalia.com>

        Reviewed by Dirk Schulze.

        [Cairo] Text underline is not shadowed when text-shadow is enabled
        https://bugs.webkit.org/show_bug.cgi?id=48074

        Updated pixel results for this test. They were previously incorrect
        because text underlines were not shadowed.

        * platform/gtk/fast/text/stroking-decorations-expected.png:

2011-04-28  Dirk Pranke  <dpranke@chromium.org>

        Unreviewed, expectations change.

        * platform/chromium/test_expectations.txt:

2011-04-28  Chang Shu  <cshu@webkit.org>

        Reviewed by Eric Seidel.

        isContentEditable is not working properly with document.designMode
        https://bugs.webkit.org/show_bug.cgi?id=53031

        1. Added test cases for checking isContentEditable with designMode.
        2. Added a new test case for setting contenteditable attribute to "inherit" as the
        original code will cause a crash.
        3. Ryosuke Niwa also helped to fix test cases under editing/style that cause infinite loop.

        * editing/style/iframe-onload-crash-mac.html:
        * editing/style/iframe-onload-crash-unix.html:
        * editing/style/iframe-onload-crash-win.html:
        * fast/dom/HTMLElement/attr-invalid-string-expected.txt:
        * fast/dom/HTMLElement/attr-invalid-string.html:
        * fast/dom/HTMLElement/iscontenteditable-designmodeon-allinherit-expected.txt: Added.
        * fast/dom/HTMLElement/iscontenteditable-designmodeon-allinherit-subframe-expected.txt: Added.
        * fast/dom/HTMLElement/iscontenteditable-designmodeon-allinherit-subframe.html: Added.
        * fast/dom/HTMLElement/iscontenteditable-designmodeon-allinherit.html: Added.
        * fast/dom/HTMLElement/iscontenteditable-designmodeon-ancestor-expected.txt: Added.
        * fast/dom/HTMLElement/iscontenteditable-designmodeon-ancestor.html: Added.
        * fast/dom/HTMLElement/iscontenteditable-designmodeon-expected.txt: Added.
        * fast/dom/HTMLElement/iscontenteditable-designmodeon.html: Added.

2011-04-28  Mike Reed  <reed@google.com>

        Reviewed by Eric Seidel.

        fix shadw behavior for both CSS and Canvas
        https://bugs.webkit.org/show_bug.cgi?id=59700

        * platform/chromium/test_expectations.txt:

2011-04-28  Ojan Vafai  <ojan@chromium.org>

        Reviewed by Darin Adler.

        fast/harness/results.html failing in some configurations
        https://bugs.webkit.org/show_bug.cgi?id=59750

        * fast/harness/resources/results-test.js:

2011-04-28  Dan Bernstein  <mitz@apple.com>

        Reviewed by Simon Fraser.

        <rdar://problem/9291132> Add support for -epub-prefixed properties

        * fast/css/epub-properties-expected.txt: Added.
        * fast/css/epub-properties.html: Added.

2011-04-28  Adam Barth  <abarth@webkit.org>

        Reviewed by Eric Seidel.

        Remove WML
        https://bugs.webkit.org/show_bug.cgi?id=59678

        Remove WML tests.  These tests do not appear to be run on
        build.webkit.org because none of the bots on build.webkit.org enable
        WML.

        * fast/wml: Removed.
        * fast/wml/br-element-in-table.wml: Removed.
        * fast/wml/br-element-in-text.wml: Removed.
        * fast/wml/card-element.wml: Removed.
        * fast/wml/case-sensitivity.wml: Removed.
        * fast/wml/cdata-section.wml: Removed.
        * fast/wml/comment.wml: Removed.
        * fast/wml/do-element-optional-attr.wml: Removed.
        * fast/wml/do-shadow.wml: Removed.
        * fast/wml/do-template.wml: Removed.
        * fast/wml/entity.wml: Removed.
        * fast/wml/err-event-binding-conflict.wml: Removed.
        * fast/wml/err-invalid-location-for-varref.wml: Removed.
        * fast/wml/err-invalid-tablecolumn-number.wml: Removed.
        * fast/wml/err-invalid-variable-name.wml: Removed.
        * fast/wml/err-multi-access.wml: Removed.
        * fast/wml/err-multi-http-equiv-in-meta.wml: Removed.
        * fast/wml/err-multi-name-in-meta.wml: Removed.
        * fast/wml/err-multi-timer.wml: Removed.
        * fast/wml/err-samename-do.wml: Removed.
        * fast/wml/err-unallowed-task-in-anchor.wml: Removed.
        * fast/wml/fieldset.wml: Removed.
        * fast/wml/html-fieldset-crash.html: Removed.
        * fast/wml/img-localsrc.wml: Removed.
        * fast/wml/img-src-localsrc-alt.wml: Removed.
        * fast/wml/img-src.wml: Removed.
        * fast/wml/input.wml: Removed.
        * fast/wml/p-align.wml: Removed.
        * fast/wml/p-mode.wml: Removed.
        * fast/wml/resources: Removed.
        * fast/wml/resources/fail.png: Removed.
        * fast/wml/resources/pass.png: Removed.
        * fast/wml/select.wml: Removed.
        * fast/wml/show-first-card.wml: Removed.
        * fast/wml/table-element-align-attribute-invalid.wml: Removed.
        * fast/wml/table-element-columns-attribute-invalid-number.wml: Removed.
        * fast/wml/table-element-columns-attribute-invalid.wml: Removed.
        * fast/wml/table-element-columns-attribute-missing.wml: Removed.
        * fast/wml/table-element-columns-attribute.wml: Removed.
        * fast/wml/table-element.wml: Removed.
        * fast/wml/task-noop-in-do.wml: Removed.
        * fast/wml/test.wml: Removed.
        * fast/wml/text-emphasis.wml: Removed.
        * fast/wml/validate-dtd.wml: Removed.
        * http/tests/wml: Removed.
        * http/tests/wml/access-target-domain-deny-expected.txt: Removed.
        * http/tests/wml/access-target-domain-deny.html: Removed.
        * http/tests/wml/access-target-expected.txt: Removed.
        * http/tests/wml/access-target-path-deny-expected.txt: Removed.
        * http/tests/wml/access-target-path-deny.html: Removed.
        * http/tests/wml/access-target.html: Removed.
        * http/tests/wml/go-task-get-method-accept-charset-expected.txt: Removed.
        * http/tests/wml/go-task-get-method-accept-charset.html: Removed.
        * http/tests/wml/go-task-get-method-expected.txt: Removed.
        * http/tests/wml/go-task-get-method.html: Removed.
        * http/tests/wml/go-task-post-method-accept-charset-expected.txt: Removed.
        * http/tests/wml/go-task-post-method-accept-charset.html: Removed.
        * http/tests/wml/go-task-post-method-expected.txt: Removed.
        * http/tests/wml/go-task-post-method.html: Removed.
        * http/tests/wml/post-data-to-server-expected.txt: Removed.
        * http/tests/wml/post-data-to-server.html: Removed.
        * http/tests/wml/resources: Removed.
        * http/tests/wml/resources/access-target-domain-deny.wml: Removed.
        * http/tests/wml/resources/access-target-path-deny.wml: Removed.
        * http/tests/wml/resources/access-target.wml: Removed.
        * http/tests/wml/resources/answer-utf8.cgi: Removed.
        * http/tests/wml/resources/answer.cgi: Removed.
        * http/tests/wml/resources/dumpVariables.cgi: Removed.
        * http/tests/wml/resources/locked-deck.wml: Removed.
        * http/tests/wml/resources/unreachable-domain.wml: Removed.
        * http/tests/wml/resources/unreachable-path.wml: Removed.
        * http/tests/wml/script-tests: Removed.
        * http/tests/wml/script-tests/TEMPLATE.html: Removed.
        * http/tests/wml/script-tests/access-target-domain-deny.js: Removed.
        * http/tests/wml/script-tests/access-target-path-deny.js: Removed.
        * http/tests/wml/script-tests/access-target.js: Removed.
        * http/tests/wml/script-tests/go-task-get-method-accept-charset.js: Removed.
        * http/tests/wml/script-tests/go-task-get-method.js: Removed.
        * http/tests/wml/script-tests/go-task-post-method-accept-charset.js: Removed.
        * http/tests/wml/script-tests/go-task-post-method.js: Removed.
        * http/tests/wml/script-tests/post-data-to-server.js: Removed.
        * http/tests/xmlviewer/dumpAsText/wml-expected.txt: Removed.
        * http/tests/xmlviewer/dumpAsText/wml.xml: Removed.
        * platform/mac-leopard/fast/wml: Removed.
        * platform/mac-leopard/fast/wml/html-fieldset-crash-expected.png: Removed.
        * platform/mac/fast/wml: Removed.
        * platform/mac/fast/wml/br-element-in-table-expected.png: Removed.
        * platform/mac/fast/wml/br-element-in-table-expected.txt: Removed.
        * platform/mac/fast/wml/br-element-in-text-expected.png: Removed.
        * platform/mac/fast/wml/br-element-in-text-expected.txt: Removed.
        * platform/mac/fast/wml/card-element-expected.png: Removed.
        * platform/mac/fast/wml/card-element-expected.txt: Removed.
        * platform/mac/fast/wml/case-sensitivity-expected.png: Removed.
        * platform/mac/fast/wml/case-sensitivity-expected.txt: Removed.
        * platform/mac/fast/wml/cdata-section-expected.png: Removed.
        * platform/mac/fast/wml/cdata-section-expected.txt: Removed.
        * platform/mac/fast/wml/comment-expected.png: Removed.
        * platform/mac/fast/wml/comment-expected.txt: Removed.
        * platform/mac/fast/wml/do-element-optional-attr-expected.png: Removed.
        * platform/mac/fast/wml/do-element-optional-attr-expected.txt: Removed.
        * platform/mac/fast/wml/do-shadow-expected.png: Removed.
        * platform/mac/fast/wml/do-shadow-expected.txt: Removed.
        * platform/mac/fast/wml/do-template-expected.png: Removed.
        * platform/mac/fast/wml/do-template-expected.txt: Removed.
        * platform/mac/fast/wml/entity-expected.png: Removed.
        * platform/mac/fast/wml/entity-expected.txt: Removed.
        * platform/mac/fast/wml/err-event-binding-conflict-expected.png: Removed.
        * platform/mac/fast/wml/err-event-binding-conflict-expected.txt: Removed.
        * platform/mac/fast/wml/err-invalid-location-for-varref-expected.png: Removed.
        * platform/mac/fast/wml/err-invalid-location-for-varref-expected.txt: Removed.
        * platform/mac/fast/wml/err-invalid-tablecolumn-number-expected.png: Removed.
        * platform/mac/fast/wml/err-invalid-tablecolumn-number-expected.txt: Removed.
        * platform/mac/fast/wml/err-invalid-variable-name-expected.png: Removed.
        * platform/mac/fast/wml/err-invalid-variable-name-expected.txt: Removed.
        * platform/mac/fast/wml/err-multi-access-expected.png: Removed.
        * platform/mac/fast/wml/err-multi-access-expected.txt: Removed.
        * platform/mac/fast/wml/err-multi-http-equiv-in-meta-expected.png: Removed.
        * platform/mac/fast/wml/err-multi-http-equiv-in-meta-expected.txt: Removed.
        * platform/mac/fast/wml/err-multi-name-in-meta-expected.png: Removed.
        * platform/mac/fast/wml/err-multi-name-in-meta-expected.txt: Removed.
        * platform/mac/fast/wml/err-multi-timer-expected.png: Removed.
        * platform/mac/fast/wml/err-multi-timer-expected.txt: Removed.
        * platform/mac/fast/wml/err-samename-do-expected.png: Removed.
        * platform/mac/fast/wml/err-samename-do-expected.txt: Removed.
        * platform/mac/fast/wml/err-unallowed-task-in-anchor-expected.png: Removed.
        * platform/mac/fast/wml/err-unallowed-task-in-anchor-expected.txt: Removed.
        * platform/mac/fast/wml/fieldset-expected.png: Removed.
        * platform/mac/fast/wml/fieldset-expected.txt: Removed.
        * platform/mac/fast/wml/html-fieldset-crash-expected.png: Removed.
        * platform/mac/fast/wml/html-fieldset-crash-expected.txt: Removed.
        * platform/mac/fast/wml/img-localsrc-expected.png: Removed.
        * platform/mac/fast/wml/img-localsrc-expected.txt: Removed.
        * platform/mac/fast/wml/img-src-expected.png: Removed.
        * platform/mac/fast/wml/img-src-expected.txt: Removed.
        * platform/mac/fast/wml/img-src-localsrc-alt-expected.png: Removed.
        * platform/mac/fast/wml/img-src-localsrc-alt-expected.txt: Removed.
        * platform/mac/fast/wml/input-expected.png: Removed.
        * platform/mac/fast/wml/input-expected.txt: Removed.
        * platform/mac/fast/wml/p-align-expected.png: Removed.
        * platform/mac/fast/wml/p-align-expected.txt: Removed.
        * platform/mac/fast/wml/p-mode-expected.png: Removed.
        * platform/mac/fast/wml/p-mode-expected.txt: Removed.
        * platform/mac/fast/wml/select-expected.png: Removed.
        * platform/mac/fast/wml/select-expected.txt: Removed.
        * platform/mac/fast/wml/show-first-card-expected.png: Removed.
        * platform/mac/fast/wml/show-first-card-expected.txt: Removed.
        * platform/mac/fast/wml/table-element-align-attribute-invalid-expected.png: Removed.
        * platform/mac/fast/wml/table-element-align-attribute-invalid-expected.txt: Removed.
        * platform/mac/fast/wml/table-element-columns-attribute-expected.png: Removed.
        * platform/mac/fast/wml/table-element-columns-attribute-expected.txt: Removed.
        * platform/mac/fast/wml/table-element-columns-attribute-invalid-expected.png: Removed.
        * platform/mac/fast/wml/table-element-columns-attribute-invalid-expected.txt: Removed.
        * platform/mac/fast/wml/table-element-columns-attribute-invalid-number-expected.png: Removed.
        * platform/mac/fast/wml/table-element-columns-attribute-invalid-number-expected.txt: Removed.
        * platform/mac/fast/wml/table-element-columns-attribute-missing-expected.png: Removed.
        * platform/mac/fast/wml/table-element-columns-attribute-missing-expected.txt: Removed.
        * platform/mac/fast/wml/table-element-expected.png: Removed.
        * platform/mac/fast/wml/table-element-expected.txt: Removed.
        * platform/mac/fast/wml/task-noop-in-do-expected.png: Removed.
        * platform/mac/fast/wml/task-noop-in-do-expected.txt: Removed.
        * platform/mac/fast/wml/test-expected.png: Removed.
        * platform/mac/fast/wml/test-expected.txt: Removed.
        * platform/mac/fast/wml/text-emphasis-expected.png: Removed.
        * platform/mac/fast/wml/text-emphasis-expected.txt: Removed.
        * platform/mac/fast/wml/validate-dtd-expected.png: Removed.
        * platform/mac/fast/wml/validate-dtd-expected.txt: Removed.
        * wml: Removed.
        * wml/access-target-deny-expected.txt: Removed.
        * wml/access-target-deny.html: Removed.
        * wml/access-target-expected.txt: Removed.
        * wml/access-target.html: Removed.
        * wml/enter-card-with-events-expected.txt: Removed.
        * wml/enter-card-with-events.html: Removed.
        * wml/enter-first-card-with-events-expected.txt: Removed.
        * wml/enter-first-card-with-events.html: Removed.
        * wml/go-task-get-method-external-deck-expected.txt: Removed.
        * wml/go-task-get-method-external-deck-with-href-expected.txt: Removed.
        * wml/go-task-get-method-external-deck-with-href.html: Removed.
        * wml/go-task-get-method-external-deck.html: Removed.
        * wml/go-task-get-method-same-deck-expected.txt: Removed.
        * wml/go-task-get-method-same-deck.html: Removed.
        * wml/input-format-expected.txt: Removed.
        * wml/input-format.html: Removed.
        * wml/newcontext-same-deck-expected.txt: Removed.
        * wml/newcontext-same-deck.html: Removed.
        * wml/onenterforward-event-expected.txt: Removed.
        * wml/onenterforward-event.html: Removed.
        * wml/onenterforward-inline-event-expected.txt: Removed.
        * wml/onenterforward-inline-event.html: Removed.
        * wml/ontimer-event-expected.txt: Removed.
        * wml/ontimer-event.html: Removed.
        * wml/ontimer-inline-event-expected.txt: Removed.
        * wml/ontimer-inline-event.html: Removed.
        * wml/option-element-onpick-expected.txt: Removed.
        * wml/option-element-onpick-recursion-expected.txt: Removed.
        * wml/option-element-onpick-recursion.html: Removed.
        * wml/option-element-onpick.html: Removed.
        * wml/resources: Removed.
        * wml/resources/WMLTestCase.js: Removed.
        * wml/resources/access-target-deny.wml: Removed.
        * wml/resources/access-target.wml: Removed.
        * wml/resources/enter-card-with-events.wml: Removed.
        * wml/resources/enter-first-card-with-events.wml: Removed.
        * wml/resources/external-deck.wml: Removed.
        * wml/resources/locked-deck.wml: Removed.
        * wml/resources/newcontext-same-deck.wml: Removed.
        * wml/resources/onenterforward-event.wml: Removed.
        * wml/resources/onenterforward-inline-event.wml: Removed.
        * wml/resources/ontimer-event.wml: Removed.
        * wml/resources/ontimer-inline-event.wml: Removed.
        * wml/resources/option-element-onpick-recursion.wml: Removed.
        * wml/resources/test-document.wml: Removed.
        * wml/script-tests: Removed.
        * wml/script-tests/TEMPLATE.html: Removed.
        * wml/script-tests/access-target-deny.js: Removed.
        * wml/script-tests/access-target.js: Removed.
        * wml/script-tests/enter-card-with-events.js: Removed.
        * wml/script-tests/enter-first-card-with-events.js: Removed.
        * wml/script-tests/go-task-get-method-external-deck-with-href.js: Removed.
        * wml/script-tests/go-task-get-method-external-deck.js: Removed.
        * wml/script-tests/go-task-get-method-same-deck.js: Removed.
        * wml/script-tests/input-format.js: Removed.
        * wml/script-tests/newcontext-same-deck.js: Removed.
        * wml/script-tests/onenterforward-event.js: Removed.
        * wml/script-tests/onenterforward-inline-event.js: Removed.
        * wml/script-tests/ontimer-event.js: Removed.
        * wml/script-tests/ontimer-inline-event.js: Removed.
        * wml/script-tests/option-element-onpick-recursion.js: Removed.
        * wml/script-tests/option-element-onpick.js: Removed.
        * wml/script-tests/select-element-variables.js: Removed.
        * wml/script-tests/variable-reference-invalid-character.js: Removed.
        * wml/script-tests/variable-reference-valid.js: Removed.
        * wml/select-element-variables-expected.txt: Removed.
        * wml/select-element-variables.html: Removed.
        * wml/variable-reference-invalid-character-expected.txt: Removed.
        * wml/variable-reference-invalid-character.html: Removed.
        * wml/variable-reference-valid-expected.txt: Removed.
        * wml/variable-reference-valid.html: Removed.

2011-04-28  Ojan Vafai  <ojan@chromium.org>

        Reviewed by Mihai Parparita.

        use a hierarchical data structure to store results json
        https://bugs.webkit.org/show_bug.cgi?id=59736

        * fast/harness/resources/results-test.js:
        * fast/harness/results.html:

2011-04-28  Mark Pilgrim  <pilgrim@chromium.org>

        Reviewed by Tony Chang.

        IndexedDB createIndex should fail if name arg is null
        https://bugs.webkit.org/show_bug.cgi?id=58365

        * storage/indexeddb/mozilla/create-index-null-name-expected.txt: Added.
        * storage/indexeddb/mozilla/create-index-null-name.html: Added.

2011-04-28  Mark Pilgrim  <pilgrim@chromium.org>

        Reviewed by Tony Chang.

        IndexedDB put() should fail if second (key) parameter is null
        https://bugs.webkit.org/show_bug.cgi?id=58613

        Added one test and fixed another that relied on old (broken) behavior
        when passing null in second parameter.

        * storage/indexeddb/mozilla/key-requirements-put-null-key-expected.txt: Added.
        * storage/indexeddb/mozilla/key-requirements-put-null-key.html: Added.
        * storage/indexeddb/objectstore-basics-expected.txt:
        * storage/indexeddb/objectstore-basics.html:

2011-04-28  Mark Pilgrim  <pilgrim@chromium.org>

        Reviewed by Darin Fisher.

        Port Mozilla's IndexedDB tests: versionchange event
        https://bugs.webkit.org/show_bug.cgi?id=58738

        * storage/indexeddb/mozilla: Added.
        * storage/indexeddb/mozilla/versionchange-expected.txt: Added.
        * storage/indexeddb/mozilla/versionchange.html: Added.

2011-04-28  Kenneth Russell  <kbr@google.com>

        Unreviewed test expectations update. Marked flaky and crashing tests.

        * platform/chromium/test_expectations.txt:

2011-04-28  Tony Chang  <tony@chromium.org>

        Fix description in recently added test results.

        * storage/indexeddb/mozilla/key-requirements-expected.txt:

2011-04-28  Dominic Cooney  <dominicc@chromium.org>

        Reviewed by Geoffrey Garen.

        Walk shadow hosts as well as parent nodes when finding opaque roots.
        https://bugs.webkit.org/show_bug.cgi?id=59571

        Remove expectation of failure.

        * platform/mac/fast/dom/shadow/gc-shadow-expected.txt: Removed.

2011-04-28  Dimitri Glazkov  <dglazkov@chromium.org>

        Added the test results, missed in r85209.

        * platform/mac/fast/dom/shadow/gc-shadow-expected.txt: Added.

2011-04-28  Matthew Delaney  <mdelaney@apple.com>

        Reviewed by Brian Weinstein.

        Push canvas tests' expected results down from platform/mac and into platform/mac-snowleopard
        https://bugs.webkit.org/show_bug.cgi?id=59654

        * platform/mac-snowleopard/canvas/philip/tests/2d.gradient.radial.cone.front-expected.txt: Copied from LayoutTests/platform/mac/canvas/philip/tests/2d.gradient.radial.cone.front-expected.txt.
        * platform/mac-snowleopard/canvas/philip/tests/2d.gradient.radial.cone.top-expected.txt: Copied from LayoutTests/platform/mac/canvas/philip/tests/2d.gradient.radial.cone.top-expected.txt.
        * platform/mac-snowleopard/canvas/philip/tests/2d.strokeRect.zero.4-expected.txt: Copied from LayoutTests/platform/mac/canvas/philip/tests/2d.strokeRect.zero.4-expected.txt.
        * platform/mac/canvas/philip/tests/2d.gradient.radial.cone.front-expected.txt: Removed.
        * platform/mac/canvas/philip/tests/2d.gradient.radial.cone.top-expected.txt: Removed.
        * platform/mac/canvas/philip/tests/2d.strokeRect.zero.4-expected.txt: Removed.

2011-04-28  Ojan Vafai  <ojan@chromium.org>

        Reviewed by Tony Chang.

        link to tests at a specific revision in the results.html file
        https://bugs.webkit.org/show_bug.cgi?id=59711

        This matches old-run-webkit-tests.

        * fast/harness/resources/results-test.js:
        * fast/harness/results-expected.txt:
        * fast/harness/results.html:

2011-04-28  Dominic Cooney  <dominicc@chromium.org>

        Reviewed by Dimitri Glazkov.

        Unskip fast/dom/shadow/gc-shadow.html on Mac with expected failure
        https://bugs.webkit.org/show_bug.cgi?id=59647

        * fast/dom/shadow/gc-shadow.html: Actually GC the shadow roots now.
        * fast/dom/shadow/gc-shadow-expected.txt: Updated.
        * platform/mac/Skipped: Unskip gc-shadow.html.
        * platform/mac/fast/dom/shadow/gc-shadow-expected.txt: Added.

2011-04-28  Arno Renevier  <arno@renevier.net>

        Reviewed by Gustavo Noronha Silva.

        [Soup] does not load css stylesheets without content-type
        https://bugs.webkit.org/show_bug.cgi?id=59697

        * platform/gtk/Skipped: Enable now passing tests:
         - http/tests/mime/standard-mode-loads-stylesheet-with-empty-content-type.html
         - http/tests/mime/standard-mode-loads-stylesheet-with-text-css-and-invalid-type.html

2011-04-28  Adam Roben  <aroben@apple.com>

        Update expected results for a hyphenation test

        * platform/mac/fast/text/hyphenate-limit-before-after-expected.txt:

2011-04-28  Sam Weinig  <sam@webkit.org>

        Add failing test to Leopard skipped list.
        Will track using https://bugs.webkit.org/show_bug.cgi?id=51807

        * platform/mac-leopard/Skipped:

2011-04-28  Adam Roben  <aroben@apple.com>

        Skip another crashing shadow DOM test

        <http://webkit.org/b/59708> tracks the failure. Maybe it will eventually be duped to
        <http://webkit.org/b/59571>.

        * platform/mac/Skipped: Added fast/dom/shadow/nodetype.html.

2011-04-28  Leon Scroggins  <scroggo@google.com>

        Reviewed by Steve Block.

        Rebaseline tests which look different due to a change in skia gradient calculations.
        https://bugs.webkit.org/show_bug.cgi?id=59132

        * platform/chromium-linux-x86_64/svg/W3C-SVG-1.1/pservers-grad-13-b-expected.png:
        * platform/chromium-linux-x86_64/svg/custom/radial-gradient-with-outstanding-focalPoint-expected.png:
        * platform/chromium-linux/fast/gradients/background-clipped-expected.png:
        * platform/chromium-linux/fast/gradients/crash-on-zero-radius-expected.png:
        * platform/chromium-linux/fast/gradients/generated-gradients-expected.png:
        * platform/chromium-linux/fast/gradients/radial-centered-expected.png:
        * platform/chromium-linux/fast/gradients/simple-gradients-expected.png:
        * platform/chromium-linux/svg/W3C-SVG-1.1/pservers-grad-13-b-expected.png:
        * platform/chromium-linux/svg/custom/radial-gradient-with-outstanding-focalPoint-expected.png:
        * platform/chromium-win/fast/gradients/background-clipped-expected.png:
        * platform/chromium-win/fast/gradients/crash-on-zero-radius-expected.png:
        * platform/chromium-win/fast/gradients/generated-gradients-expected.png:
        * platform/chromium-win/fast/gradients/radial-centered-expected.png:
        * platform/chromium-win/fast/gradients/simple-gradients-expected.png:
        * platform/chromium-win/svg/W3C-SVG-1.1/pservers-grad-13-b-expected.png:
        * platform/chromium-win/svg/custom/radial-gradient-with-outstanding-focalPoint-expected.png:
        * platform/chromium/test_expectations.txt:

2011-04-28  Pavel Feldman  <pfeldman@google.com>

        Not reviewed: skipping new inspector tests on Mac while I'm looking into it.

        * platform/mac/Skipped:

2011-04-28  Satish Sampath  <satish@chromium.org>

        Reviewed by Tony Gentilcore.

        Speech input button layout issues with padding and border.
        https://bugs.webkit.org/show_bug.cgi?id=59613

        * fast/speech/input-text-speechbutton-expected.txt:
        * fast/speech/input-text-speechbutton.html: Updated to test with padding.

2011-04-28  Chris Fleizach  <cfleizach@apple.com>

        Not reviewed. Add new expected results for GTK platform.

        ARIA role attribute implemented incorrectly; does not support token list with fallbacks
        https://bugs.webkit.org/show_bug.cgi?id=59648

        * platform/gtk/accessibility/aria-fallback-roles-expected.txt: Added.

2011-04-28  Pavel Feldman  <pfeldman@google.com>

        Not reviewed: unflake new inspector tests.

        * http/tests/inspector/resource-tree/resource-tree-reload.html:
        * http/tests/inspector/resource-tree/resource-tree-test.js:
        (initialize_ResourceTreeTest.InspectorTest.dumpResourcesURLMap):

2011-04-28  Jessie Berlin  <jberlin@apple.com>

        accessibility/aria-fallback-roles.html failing on Windows since introduction in r85157.
        https://bugs.webkit.org/show_bug.cgi?id=59701

        Add Windows-specific results to get the bots green.

        * platform/win/accessibility/aria-fallback-roles-expected.txt: Added.

2011-04-28  Pavel Feldman  <pfeldman@google.com>

        Reviewed by Yury Semikhatsky.

        Web Inspector: add ResourceTreeModel tests.
        https://bugs.webkit.org/show_bug.cgi?id=59616

        * http/tests/inspector/resource-tree-model-expected.txt: Removed.
        * http/tests/inspector/resource-tree-model.html: Removed.
        * http/tests/inspector/resource-tree/resource-tree-document-url-expected.txt: Added.
        * http/tests/inspector/resource-tree/resource-tree-document-url.html: Added.
        * http/tests/inspector/resource-tree/resource-tree-frame-navigate-expected.txt: Added.
        * http/tests/inspector/resource-tree/resource-tree-frame-navigate.html: Added.
        * http/tests/inspector/resource-tree/resource-tree-reload-expected.txt: Added.
        * http/tests/inspector/resource-tree/resource-tree-reload.html: Added.
        * http/tests/inspector/resource-tree/resource-tree-test.js: Added.
        (initialize_ResourceTreeTest.InspectorTest.dumpResources):
        (initialize_ResourceTreeTest.InspectorTest.dumpResources.comparator):
        (initialize_ResourceTreeTest.InspectorTest.dumpResourcesURLMap):
        (initialize_ResourceTreeTest.InspectorTest.dumpResourcesTree):
        (initialize_ResourceTreeTest.InspectorTest.runAfterResourcesAreLoaded.callbackWrapper):
        (initialize_ResourceTreeTest.InspectorTest.runAfterResourcesAreLoaded):
        (initialize_ResourceTreeTest.InspectorTest.dumpResourceTreeEverything):
        (initialize_ResourceTreeTest):
        * http/tests/inspector/resource-tree/resources/dummy-iframe.html: Added.
        * http/tests/inspector/resource-tree/resources/resource-tree-frame-navigate-iframe-after.html: Added.
        * http/tests/inspector/resource-tree/resources/resource-tree-frame-navigate-iframe-before.html: Added.
        * http/tests/inspector/resource-tree/resources/resource-tree-reload-iframe.html: Added.
        * http/tests/inspector/resource-tree/resources/script-initial.js: Added.
        (foo):
        * http/tests/inspector/resource-tree/resources/script-navigated.js: Added.
        (foo):
        * http/tests/inspector/resource-tree/resources/styles-initial-2.css: Added.
        (html):
        * http/tests/inspector/resource-tree/resources/styles-initial.css: Added.
        (html):
        * http/tests/inspector/resource-tree/resources/styles-navigated.css: Added.
        (html):
        * platform/win/Skipped:

2011-04-28  Mikhail Naganov  <mnaganov@chromium.org>

        Reviewed by Yury Semikhatsky.

        WebInspector: [Chromium] Implement retaining paths following in detailed heap snapshots.
        https://bugs.webkit.org/show_bug.cgi?id=59592

        * inspector/profiler/detailed-heapshots-test.js:
        (initialize_DetailedHeapshotTest):

2011-04-28  Mikhail Naganov  <mnaganov@chromium.org>

        Reviewed by Yury Semikhatsky.

        Web Inspector: [Chromium] Optimize detailed heap snapshots loading / parsing.
        https://bugs.webkit.org/show_bug.cgi?id=59454

        * inspector/profiler/heap-snapshot-loader-expected.txt: Added.
        * inspector/profiler/heap-snapshot-loader.html: Added.
        * inspector/profiler/heap-snapshot-test.js:
        (initialize_HeapSnapshotTest.InspectorTest.createHeapSnapshotMock):
        (initialize_HeapSnapshotTest):

2011-04-28  Mark Pilgrim  <pilgrim@chromium.org>

        Reviewed by Tony Chang.

        Port Mozilla's IndexedDB tests: readonly and read/write transactions
        https://bugs.webkit.org/show_bug.cgi?id=59465

        * storage/indexeddb/mozilla: Added.
        * storage/indexeddb/mozilla/readonly-transactions-expected.txt: Added.
        * storage/indexeddb/mozilla/readonly-transactions.html: Added.
        * storage/indexeddb/mozilla/readwrite-transactions-expected.txt: Added.
        * storage/indexeddb/mozilla/readwrite-transactions.html: Added.

2011-04-28  Gabor Rapcsanyi  <rgabor@webkit.org>

        Reviewed by Csaba Osztrogonác.

        [Qt] Add ARM specific Skipped list
        https://bugs.webkit.org/show_bug.cgi?id=59680

        * platform/qt-arm/Skipped: Added.

2011-04-27  Csaba Osztrogonác  <ossy@webkit.org>

        Convert LayoutTests/fast/events/mouseout-dead-node.html from pixel test to text-based test
        https://bugs.webkit.org/show_bug.cgi?id=59369

        [Qt] Qt specific expected result is unnecessary after r85163.

        * platform/qt/fast/events/mouseout-dead-node-expected.txt: Removed.

2011-04-27  Naoki Takano  <takano.naoki@gmail.com>

        Reviewed by Ryosuke Niwa.

        Convert LayoutTests/fast/events/mouseout-dead-node.html from pixel test to text-based test
        https://bugs.webkit.org/show_bug.cgi?id=59369

        * fast/events/mouseout-dead-node-expected.txt: Added.
        * fast/events/mouseout-dead-node.html: Change to use dumpAsText.
        * platform/chromium-linux/fast/events/mouseout-dead-node-expected.png: Removed.
        * platform/chromium-win/fast/events/mouseout-dead-node-expected.png: Removed.
        * platform/chromium-win/fast/events/mouseout-dead-node-expected.txt: Removed.
        * platform/gtk/fast/events/mouseout-dead-node-expected.txt: Removed.
        * platform/mac-leopard/fast/events/mouseout-dead-node-expected.png: Removed.
        * platform/mac/fast/events/mouseout-dead-node-expected.png: Removed.
        * platform/mac/fast/events/mouseout-dead-node-expected.txt: Removed.

2011-04-27  Kenneth Russell  <kbr@google.com>

        Chromium test failures after r85142
        https://bugs.webkit.org/show_bug.cgi?id=59673

        Unreviewed. Temporarily suppress test failures.

        * platform/chromium/test_expectations.txt:

2011-04-27  Eric Seidel  <eric@webkit.org>

        Reviewed by Ojan Vafai.

        Log more information when http/tests/xmlhttprequest/basic-auth.html fails
        https://bugs.webkit.org/show_bug.cgi?id=59651

        Very basic, but it's better than nothing.

        * http/tests/xmlhttprequest/basic-auth.html:

2011-04-27  Chris Fleizach  <cfleizach@apple.com>

        Reviewed by Beth Dakin.

        <rdar://problem/9315254> ARIA role attribute implemented incorrectly; does not support token list with fallbacks
        https://bugs.webkit.org/show_bug.cgi?id=59648

        * accessibility/aria-fallback-roles.html: Added.
        * platform/mac/accessibility/aria-fallback-roles-expected.txt: Added.

2011-04-27  Mark Pilgrim  <pilgrim@chromium.org>

        Reviewed by Tony Chang.

        Port Mozilla's IndexedDB tests: creating unique index and updating indexNames
        https://bugs.webkit.org/show_bug.cgi?id=59631

        * storage/indexeddb/mozilla/create-index-unique-expected.txt: Added.
        * storage/indexeddb/mozilla/create-index-unique.html: Added.

2011-04-27  Mark Pilgrim  <pilgrim@chromium.org>

        Reviewed by Tony Chang.

        Should call done() from unexpectedErrorCallback so failing IndexedDB tests don't time out
        https://bugs.webkit.org/show_bug.cgi?id=59569

        * storage/indexeddb/exception-in-event-aborts-expected.txt:
        * storage/indexeddb/exception-in-event-aborts.html:
        * storage/indexeddb/resources/shared.js:
        (unexpectedSuccessCallback):
        (unexpectedErrorCallback):
        (unexpectedAbortCallback):
        (unexpectedCompleteCallback):
        (unexpectedBlockedCallback):

2011-04-27  Mark Pilgrim  <pilgrim@chromium.org>

        Reviewed by Tony Chang.

        Port Mozilla's IndexedDB tests: creating and deleting indexes
        https://bugs.webkit.org/show_bug.cgi?id=59635

        * storage/indexeddb/mozilla/remove-index-expected.txt: Added.
        * storage/indexeddb/mozilla/remove-index.html: Added.

2011-04-27  Mark Pilgrim  <pilgrim@chromium.org>

        Reviewed by Tony Chang.

        Port Mozilla's IndexedDB tests: get() and put() basics
        https://bugs.webkit.org/show_bug.cgi?id=59468

        * storage/indexeddb/mozilla: Added.
        * storage/indexeddb/mozilla/put-get-values-expected.txt: Added.
        * storage/indexeddb/mozilla/put-get-values.html: Added.

2011-04-27  Mark Pilgrim  <pilgrim@chromium.org>

        Reviewed by Tony Chang.

        Port Mozilla's IndexedDB tests: index cursors
        https://bugs.webkit.org/show_bug.cgi?id=59472

        * storage/indexeddb/mozilla: Added.
        * storage/indexeddb/mozilla/object-cursors-expected.txt: Added.
        * storage/indexeddb/mozilla/object-cursors.html: Added.

2011-04-27  Mark Pilgrim  <pilgrim@chromium.org>

        Reviewed by Tony Chang.

        Port Mozilla's IndexedDB tests: event.target.source in success callbacks
        https://bugs.webkit.org/show_bug.cgi?id=59632

        * storage/indexeddb/mozilla/event-source-expected.txt: Added.
        * storage/indexeddb/mozilla/event-source.html: Added.

2011-04-27  Mark Pilgrim  <pilgrim@chromium.org>

        Reviewed by Tony Chang.

        Port Mozilla's IndexedDB tests: event.target.result after add() and put()
        https://bugs.webkit.org/show_bug.cgi?id=59634

        * storage/indexeddb/mozilla/key-requirements-expected.txt: Added.
        * storage/indexeddb/mozilla/key-requirements.html: Added.

2011-04-27  Mark Pilgrim  <pilgrim@chromium.org>

        Reviewed by Tony Chang.

        IndexedDB object store deleting entry should fail if key is null
        https://bugs.webkit.org/show_bug.cgi?id=58614

        * storage/indexeddb/mozilla: Added.
        * storage/indexeddb/mozilla/key-requirements-delete-null-key-expected.txt: Added.
        * storage/indexeddb/mozilla/key-requirements-delete-null-key.html: Added.

2011-04-27  Eric Carlson  <eric.carlson@apple.com>

        Reviewed by Dan Bernstein.

        audio-no-installed-engines.html media test has unnecessary pixel results
        https://bugs.webkit.org/show_bug.cgi?id=59456

        Convert audio-no-installed-engines.html results from pixel to text.

        * media/audio-no-installed-engines-expected.txt: Added.
        * media/audio-no-installed-engines.html:
        * platform/chromium-linux/media/audio-no-installed-engines-expected.png: Removed.
        * platform/chromium-win/media/audio-no-installed-engines-expected.png: Removed.
        * platform/chromium-win/media/audio-no-installed-engines-expected.txt: Removed.
        * platform/gtk/media/audio-no-installed-engines-expected.txt: Removed.
        * platform/mac-leopard/media/audio-no-installed-engines-expected.png: Removed.
        * platform/mac/media/audio-no-installed-engines-expected.png: Removed.
        * platform/mac/media/audio-no-installed-engines-expected.txt: Removed.

2011-04-27  Robert Hogan  <robert@webkit.org>

        Reviewed by Adam Barth.

        Allow shadowing of history object
        https://bugs.webkit.org/show_bug.cgi?id=55965

        * fast/dom/Window/get-set-properties-expected.txt:
        * fast/dom/Window/get-set-properties.html:
        * fast/dom/Window/window-property-shadowing-expected.txt:
        * fast/dom/Window/window-property-shadowing.html:
        * fast/js/var-declarations-shadowing-expected.txt:
        * fast/js/var-declarations-shadowing.html:
        * http/tests/history/cross-origin-replace-history-object-child-expected.txt: Added.
        * http/tests/history/cross-origin-replace-history-object-child.html: Added.
        * http/tests/history/cross-origin-replace-history-object-expected.txt: Added.
        * http/tests/history/cross-origin-replace-history-object.html: Added.
        * http/tests/history/resources/cross-origin-replaces-history-object-child-iframe.html: Added.
        * http/tests/history/resources/cross-origin-replaces-history-object-iframe.html: Added.
        * http/tests/security/cross-frame-access-put-expected.txt: Note that a window property with
          the DoNotCheckDomainSecurityOnGet attribute generates two cross-origin JS warnings. Amended
          expected results to include the additional extra warning for the history object.

2011-04-27  Dirk Pranke  <dpranke@chromium.org>

        Unreviewed, expectations change. Fix some
        Chromium Mac Leopard failures.

        * platform/chromium/test_expectations.txt:

2011-04-27  Dirk Pranke  <dpranke@chromium.org>

        Unreviewed, expectations change. Fix Chromium Mac SL Debug
        expectations, few miscellaneous other expectations.

        * platform/chromium/test_expectations.txt:

2011-04-27  Mark Pilgrim  <pilgrim@chromium.org>

        Reviewed by Tony Chang.

        Port Mozilla's IndexedDB tests: clear()
        https://bugs.webkit.org/show_bug.cgi?id=59498

        * storage/indexeddb/mozilla: Added.
        * storage/indexeddb/mozilla/clear-expected.txt: Added.
        * storage/indexeddb/mozilla/clear.html: Added.

2011-04-27  Mark Pilgrim  <pilgrim@chromium.org>

        Reviewed by Tony Chang.

        Port Mozilla's IndexedDB tests: add twice failure
        https://bugs.webkit.org/show_bug.cgi?id=59492

        * storage/indexeddb/mozilla: Added.
        * storage/indexeddb/mozilla/add-twice-failure-expected.txt: Added.
        * storage/indexeddb/mozilla/add-twice-failure.html: Added.

2011-04-27  Kenneth Russell  <kbr@google.com>

        Unreviewed. Fixed more breakage in test_expectations.txt caused by
        my previous checkin, caught with --lint-test-files thanks to dpranke.

        * platform/chromium/test_expectations.txt:

2011-04-27  Andy Estes  <aestes@apple.com>

        Skip fast/blockflow/broken-ideographic-font.html on Leopard.

        * platform/mac-leopard/Skipped:

2011-04-27  Kenneth Russell  <kbr@google.com>

        Unreviewed, test expectation updates.
          - Marked media/video-controls-transformed.html as failing generally.
          - Fixed malformed bug ID in last update.

        * platform/chromium/test_expectations.txt:

2011-04-27  Kenneth Russell  <kbr@google.com>

        Unreviewed, test expectation updates.
          - Added a couple of flaky tests.
          - Filed bugs for a preexisting and a new failure.
          - Rebaselined fast/lists/003-vertical.html on Mac.

        * platform/chromium-mac/fast/lists/003-vertical-expected.txt:
        * platform/chromium/test_expectations.txt:

2011-04-27  Dirk Pranke  <dpranke@chromium.org>

        Unreviewed, update w/ failing tests and remove a bunch of
        passing mac tests.

        * platform/chromium/test_expectations.txt:

2011-04-27  Mark Pilgrim  <pilgrim@chromium.org>

        Reviewed by Tony Chang.

        Port Mozilla's IndexedDB tests: bad keypath
        https://bugs.webkit.org/show_bug.cgi?id=59497

        * storage/indexeddb/mozilla: Added.
        * storage/indexeddb/mozilla/bad-keypath-expected.txt: Added.
        * storage/indexeddb/mozilla/bad-keypath.html: Added.

2011-04-27  Kenneth Russell  <kbr@google.com>

        [chromium] Rebaseline direct-image-compositing.html after r85011
        https://bugs.webkit.org/show_bug.cgi?id=59624

        Unreviewed. It looks like the previous image result for this
        layout test was checked in from a Debug rather than Release build
        and was affected by bug 58587.

        * platform/chromium-gpu-linux/compositing/direct-image-compositing-expected.png:
        * platform/chromium/test_expectations.txt:

2011-04-27  Dirk Pranke  <dpranke@chromium.org>

        Unreviewed, update w/ failing tests.

        * platform/chromium/test_expectations.txt:

2011-04-27  Mark Rowe  <mrowe@apple.com>

        Rubber-stamped by Geoff Garen.

        Remove some files that are no longer relevant.

        * platform/mac-tiger: Removed.

2011-04-27  Csaba Osztrogonác  <ossy@webkit.org>

        [Qt][Mac] Unreviewed. Add more failing tests to the Skipped list.

        * platform/qt-mac/Skipped:

2011-04-27  Victoria Kirst  <vrk@chromium.org>

        Unreviewed.

        [chromium] Rebaseline and add baselines for a few media layout tests
        and update test_expectations.txt.

        * platform/chromium-gpu-linux/media/controls-after-reload-expected.png: Added.
        * platform/chromium-gpu-linux/media/controls-strict-expected.png: Added.
        * platform/chromium-gpu-linux/media/controls-styling-expected.png: Added.
        * platform/chromium-gpu-linux/media/controls-without-preload-expected.png: Added.
        * platform/chromium-gpu-linux/media/video-transformed-expected.png: Added.
        * platform/chromium-gpu-linux/media/video-zoom-controls-expected.png: Added.
        * platform/chromium-gpu-mac/media/controls-after-reload-expected.png: Added.
        * platform/chromium-gpu-mac/media/controls-strict-expected.png: Added.
        * platform/chromium-gpu-mac/media/controls-styling-expected.png: Added.
        * platform/chromium-gpu-mac/media/controls-without-preload-expected.png: Added.
        * platform/chromium-gpu-mac/media/video-transformed-expected.png: Added.
        * platform/chromium-gpu-mac/media/video-zoom-controls-expected.png:
        * platform/chromium-gpu-win/media/controls-after-reload-expected.png: Added.
        * platform/chromium-gpu-win/media/controls-strict-expected.png: Added.
        * platform/chromium-gpu-win/media/controls-styling-expected.png: Added.
        * platform/chromium-gpu-win/media/controls-without-preload-expected.png: Added.
        * platform/chromium-gpu-win/media/video-transformed-expected.png: Added.
        * platform/chromium-gpu-win/media/video-zoom-controls-expected.png: Added.
        * platform/chromium-linux/media/controls-after-reload-expected.png:
        * platform/chromium-linux/media/controls-strict-expected.png:
        * platform/chromium-linux/media/controls-styling-expected.png:
        * platform/chromium-linux/media/controls-without-preload-expected.png:
        * platform/chromium-linux/media/video-transformed-expected.png:
        * platform/chromium-linux/media/video-zoom-controls-expected.png:
        * platform/chromium-mac-leopard/media/controls-after-reload-expected.png:
        * platform/chromium-mac-leopard/media/controls-strict-expected.png:
        * platform/chromium-mac-leopard/media/controls-styling-expected.png:
        * platform/chromium-mac-leopard/media/controls-without-preload-expected.png:
        * platform/chromium-mac-leopard/media/video-zoom-controls-expected.png:
        * platform/chromium-mac/media/controls-after-reload-expected.png:
        * platform/chromium-mac/media/controls-strict-expected.png:
        * platform/chromium-mac/media/controls-styling-expected.png:
        * platform/chromium-mac/media/controls-without-preload-expected.png:
        * platform/chromium-mac/media/video-zoom-controls-expected.png:
        * platform/chromium-win/media/controls-after-reload-expected.png:
        * platform/chromium-win/media/controls-strict-expected.png:
        * platform/chromium-win/media/controls-styling-expected.png:
        * platform/chromium-win/media/controls-without-preload-expected.png:
        * platform/chromium-win/media/video-transformed-expected.png:
        * platform/chromium-win/media/video-zoom-controls-expected.png:
        * platform/chromium/test_expectations.txt:

2011-04-27  Adrienne Walker  <enne@google.com>

        [chromium] Unreviewed, rollout r85075 (scissor rect changes)
        https://bugs.webkit.org/show_bug.cgi?id=59020

        * compositing/flat-with-transformed-child-expected.txt: Removed.
        * compositing/flat-with-transformed-child.html: Removed.
        * platform/chromium-gpu-linux/compositing/flat-with-transformed-child-expected.checksum: Removed.
        * platform/chromium-gpu-linux/compositing/flat-with-transformed-child-expected.png: Removed.
        * platform/chromium/test_expectations.txt:

2011-04-27  Csaba Osztrogonác  <ossy@webkit.org>

        [Qt][Mac] Unreviewed. Add more failing tests to the Skipped list.

        * platform/qt-mac/Skipped:

2011-04-27  Csaba Osztrogonác  <ossy@webkit.org>

        [Qt][Mac] Unreviewed. Add more failing tests to the Skipped list.

        * platform/qt-mac/Skipped:

2011-04-27  Adrienne Walker  <enne@google.com>

        [chromium] Unreviewed, update flat-with-transformed-child expectations.

        * platform/chromium/test_expectations.txt:

2011-04-27  Enrica Casucci  <enrica@apple.com>

        Reviewed by Darin Adler.

        REGRESSION (r84311): Copy should preserve background color if specified in the body only if the entire content is selected.
        https://bugs.webkit.org/show_bug.cgi?id=59251
        <rdar://problem/9327044>

        * editing/pasteboard/do-not-copy-body-color-expected.txt: Added.
        * editing/pasteboard/do-not-copy-body-color.html: Added.

2011-04-27  Ojan Vafai  <ojan@chromium.org>

        Reviewed by Eric Seidel.

        address aesthetic concerns for results.html format brought up at webkit meeting
        https://bugs.webkit.org/show_bug.cgi?id=59625

        -remove background-color
        -lowercase expected/actual results types to reduce overall width
        -let the test name (first column) wrap

        * fast/harness/resources/results-test.js:
        * fast/harness/results.html:

2011-04-27  Mark Pilgrim  <pilgrim@chromium.org>

        Reviewed by Tony Chang.

        Port Mozilla's IndexedDB tests: objectStoreNames
        https://bugs.webkit.org/show_bug.cgi?id=59484

        * storage/indexeddb/mozilla: Added.
        * storage/indexeddb/mozilla/global-data-expected.txt: Added.
        * storage/indexeddb/mozilla/global-data.html: Added.
        * storage/indexeddb/mozilla/objectstorenames-expected.txt: Added.
        * storage/indexeddb/mozilla/objectstorenames.html: Added.

2011-04-27  Dimitri Glazkov  <dglazkov@chromium.org>

        Skip crashing/failing shadow DOM tests until they are fixed.
        https://bugs.webkit.org/show_bug.cgi?id=59571

        * platform/gtk/Skipped: Added failing tests.
        * platform/mac/Skipped: Ditto.

2011-04-27  Csaba Osztrogonác  <ossy@webkit.org>

        [Qt][Mac] Unreviewed. Add all failing tests to the Skipped list.

        * platform/qt-mac/Skipped:

2011-04-27  Mark Pilgrim  <pilgrim@chromium.org>

        Reviewed by Tony Chang.

        Port Mozilla's IndexedDB tests: createObjectStore basics
        https://bugs.webkit.org/show_bug.cgi?id=59486

        * storage/indexeddb/mozilla: Added.
        * storage/indexeddb/mozilla/create-objectstore-basics-expected.txt: Added.
        * storage/indexeddb/mozilla/create-objectstore-basics.html: Added.

2011-04-16  Dimitri Glazkov  <dglazkov@chromium.org>

        Reviewed by Antti Koivisto.

        Teach sub-selector chains about shadow descendants
        https://bugs.webkit.org/show_bug.cgi?id=58342

        * fast/css/unknown-pseudo-element-matching-expected.txt: Updated expectations.
        * fast/css/unknown-pseudo-element-matching.html: Added new tests.

2011-04-20  Adrienne Walker  <enne@google.com>

        Reviewed by Kenneth Russell.

        [chromium] Fix incorrect scissor rect for layers that render into a rendersurface
        https://bugs.webkit.org/show_bug.cgi?id=59020

        * compositing/flat-with-transformed-child-expected.txt: Added.
        * compositing/flat-with-transformed-child.html: Added.
        * platform/chromium-gpu-linux/compositing/flat-with-transformed-child-expected.checksum: Added.
        * platform/chromium-gpu-linux/compositing/flat-with-transformed-child-expected.png: Added.
        * platform/chromium/test_expectations.txt:

2011-04-27  Martin Robinson  <mrobinson@igalia.com>

        Rebaseline some tests which differ on the bots after r85066.

        * platform/gtk/fast/forms/select-writing-direction-natural-expected.txt:
        * platform/gtk/fast/text/international/bidi-menulist-expected.txt:

2011-04-27  Kenneth Russell  <kbr@google.com>

        Web Inspector: regression in inspector/console/console-dir.html after r85054
        https://bugs.webkit.org/show_bug.cgi?id=59620

        Unreviewed. Missed updating chromium-specific expectations in earlier rebaseline.

        * platform/chromium/inspector/console/console-dir-expected.txt:

2011-04-27  Kenneth Russell  <kbr@google.com>

        [chromium] Rebaseline direct-image-compositing.html after r85011
        https://bugs.webkit.org/show_bug.cgi?id=59624

        * platform/chromium-gpu-win/compositing/direct-image-compositing-expected.txt:

2011-04-27  Dan Bernstein  <mitz@apple.com>

        Reviewed by Anders Carlsson.

        <rdar://problem/9335973> REGRESSION (r84341): Buttons in the Mac App store are rendered incorrectly
        https://bugs.webkit.org/show_bug.cgi?id=59622

        * fast/borders/border-image-trumps-radius-expected.png: Added.
        * fast/borders/border-image-trumps-radius-expected.txt: Added.
        * fast/borders/border-image-trumps-radius.html: Added.

2011-04-27  Martin Robinson  <mrobinson@igalia.com>

        Reviewed by Eric Seidel.

        [GTK] Menulists do not follow text direction when rendering options with right-to-left text
        https://bugs.webkit.org/show_bug.cgi?id=54038

        * platform/gtk/Skipped: Unskip passing test.
        * platform/gtk/fast/text/international/pop-up-button-text-alignment-and-direction-expected.checksum: Added.
        * platform/gtk/fast/text/international/pop-up-button-text-alignment-and-direction-expected.png: Added.
        * platform/gtk/fast/text/international/pop-up-button-text-alignment-and-direction-expected.txt: Added.

2011-02-03  Martin Robinson  <mrobinson@igalia.com>

        Reviewed by Xan Lopez.

        [GTK] editing/pasteboard/copy-standalone-image.html fails
        https://bugs.webkit.org/show_bug.cgi?id=53645

        Unskip the test and add new expected results for it.

        * platform/gtk/Skipped: Unskip this test as it is now passing.
        * platform/gtk/editing/pasteboard/copy-standalone-image-expected.checksum:
        * platform/gtk/editing/pasteboard/copy-standalone-image-expected.png:
        * platform/gtk/editing/pasteboard/copy-standalone-image-expected.txt:

2011-04-27  Kenneth Russell  <kbr@google.com>

        Not reviewed. Rebaseline test to get the tree green.

        Web Inspector: regression in inspector/console/console-dir.html after r85054
        https://bugs.webkit.org/show_bug.cgi?id=59620

        * inspector/console/console-dir-expected.txt:

2011-04-27  Sheriff Bot  <webkit.review.bot@gmail.com>

        Unreviewed, rolling out r84987.
        http://trac.webkit.org/changeset/84987
        https://bugs.webkit.org/show_bug.cgi?id=59618

        Caused crashes on the GTK+ debug bots. (Requested by mrobinson
        on #webkit).

        * platform/gtk/Skipped:

2011-04-27  Levi Weintraub  <leviw@chromium.org>

        new baselines needed after r85011
        https://bugs.webkit.org/show_bug.cgi?id=59581

        * platform/chromium-linux/css2.1/t0905-c414-flt-02-c-expected.txt:
        * platform/chromium-linux/css2.1/t0905-c414-flt-03-c-expected.txt:
        * platform/chromium-linux/css2.1/t0905-c414-flt-04-c-expected.txt:
        * platform/chromium-linux/css2.1/t0905-c5525-fltcont-00-d-g-expected.txt:
        * platform/chromium-linux/css2.1/t0905-c5525-fltwidth-02-c-g-expected.txt:
        * platform/chromium-linux/css2.1/t0905-c5525-fltwidth-03-c-g-expected.txt:
        * platform/chromium-linux/css2.1/t090501-c414-flt-03-b-g-expected.txt:
        * platform/chromium-mac-leopard/fast/repaint/box-shadow-h-expected.png:
        * platform/chromium-mac-leopard/fast/repaint/box-shadow-v-expected.png:
        * platform/chromium-mac/fast/inline/inline-box-background-long-image-expected.png:
        * platform/chromium-mac/fast/repaint/box-shadow-v-expected.png:
        * platform/chromium-win/css2.1/t0905-c414-flt-00-d-expected.txt:
        * platform/chromium-win/css2.1/t0905-c414-flt-01-d-g-expected.txt:
        * platform/chromium-win/css2.1/t0905-c414-flt-02-c-expected.txt:
        * platform/chromium-win/css2.1/t0905-c414-flt-03-c-expected.txt:
        * platform/chromium-win/css2.1/t0905-c414-flt-04-c-expected.txt:
        * platform/chromium-win/css2.1/t0905-c414-flt-wrap-01-d-g-expected.txt:
        * platform/chromium-win/css2.1/t0905-c5525-fltcont-00-d-g-expected.txt:
        * platform/chromium-win/css2.1/t0905-c5525-fltwidth-02-c-g-expected.txt:
        * platform/chromium-win/css2.1/t0905-c5525-fltwidth-03-c-g-expected.txt:
        * platform/chromium-win/css2.1/t090501-c414-flt-02-d-g-expected.txt:
        * platform/chromium-win/css2.1/t090501-c414-flt-03-b-g-expected.txt:
        * platform/chromium-win/fast/backgrounds/background-position-parsing-expected.txt:
        * platform/chromium-win/fast/block/float/029-expected.txt:
        * platform/chromium-win/fast/block/float/031-expected.txt:
        * platform/chromium-win/fast/block/float/clamped-right-float-expected.txt:
        * platform/chromium-win/fast/block/float/float-overhangs-root-expected.png: Added.
        * platform/chromium-win/fast/block/float/nested-clearance-expected.txt:
        * platform/chromium-win/fast/block/margin-collapse/062-expected.txt:
        * platform/chromium-win/fast/block/margin-collapse/063-expected.txt:
        * platform/chromium-win/fast/box-shadow/basic-shadows-expected.txt:
        * platform/chromium-win/fast/css/h1-in-section-elements-expected.txt:
        * platform/chromium-win/fast/forms/basic-textareas-quirks-expected.txt:
        * platform/chromium-win/fast/inline/inline-box-background-expected.txt:
        * platform/chromium-win/fast/inline/inline-box-background-long-image-expected.txt:
        * platform/chromium-win/fast/inline/inline-box-background-repeat-x-expected.txt:
        * platform/chromium-win/fast/inline/inline-box-background-repeat-y-expected.txt:
        * platform/chromium-win/fast/lists/003-expected.txt:
        * platform/chromium-win/fast/lists/003-vertical-expected.txt:
        * platform/chromium-win/fast/media/mq-relative-constraints-08-expected.txt:
        * platform/chromium-win/fast/repaint/box-shadow-h-expected.txt:
        * platform/chromium-win/fast/repaint/box-shadow-v-expected.txt:
        * platform/chromium-win/fast/text/whitespace/012-expected.txt:
        * platform/chromium-win/tables/mozilla/bugs/bug120364-expected.txt:
        * platform/chromium-win/tables/mozilla/bugs/bug45055-2-expected.txt:
        * platform/chromium-win/tables/mozilla/bugs/bug72359-expected.txt:
        * platform/chromium-win/tables/mozilla/marvin/x_table_align_left-expected.txt:
        * platform/chromium-win/tables/mozilla/marvin/x_table_align_right-expected.txt:
        * platform/chromium/test_expectations.txt:

2011-04-27  Darin Adler  <darin@apple.com>

        * platform/chromium-mac/fast/block/positioning/rtl-fixed-positioning-expected.checksum: Removed.
        * platform/chromium-mac/fast/block/positioning/vertical-rl/fixed-positioning-expected.checksum: Removed.
        * platform/chromium-mac/fast/forms/basic-textareas-quirks-actual.checksum: Removed.
        * platform/chromium-mac/fast/forms/select-empty-option-height.checksum: Removed.
        * platform/mac/fast/block/float/float-overhangs-root-expected.checksum: Removed.

2011-04-27  Jessie Berlin  <jberlin@apple.com>

        Update the Windows-XP-specific platform results after r85011 and r85052 to get the bots green.

        * platform/win-xp/fast/text/emphasis-expected.txt:
        * platform/win-xp/fast/text/emphasis-vertical-expected.txt:

2011-04-27  Yury Semikhatsky  <yurys@chromium.org>

        Reviewed by Pavel Feldman.

        Web Inspector: browser crash on evaluation of 'throw undefined'
        https://bugs.webkit.org/show_bug.cgi?id=59611

        * inspector/console/console-eval-throw-undefined-expected.txt: Added.
        * inspector/console/console-eval-throw-undefined.html: Added.

2011-04-27  Csaba Osztrogonác  <ossy@webkit.org>

        [Qt] Migrate to Debian Squeeze
        https://bugs.webkit.org/show_bug.cgi?id=59609

        * platform/qt/Skipped: Add failing tests until fix.
         - fast/workers/storage/use-same-database-in-page-and-workers.html
         - svg/W3C-SVG-1.1/struct-image-06-t.svg
         - http/tests/loading/preload-slow-loading.php
         - http/tests/security/contentSecurityPolicy/media-src-allowed.html
         - http/tests/security/contentSecurityPolicy/media-src-blocked.html

2011-04-27  Jessie Berlin  <jberlin@webkit.org>

        Update the Windows-specific platform results after r85011 to get the bots green.

        * platform/win/fast/borders/bidi-012-expected.txt:
        * platform/win/fast/forms/basic-textareas-quirks-expected.txt:
        * platform/win/fast/inline/inline-box-background-expected.txt:
        * platform/win/fast/inline/inline-box-background-long-image-expected.txt:
        * platform/win/fast/inline/inline-box-background-repeat-x-expected.txt:
        * platform/win/fast/inline/inline-box-background-repeat-y-expected.txt:
        * platform/win/fast/lists/003-vertical-expected.txt:
        * platform/win/fast/text/emphasis-expected.txt:
        * platform/win/fast/text/emphasis-vertical-expected.txt:

2011-04-27  Pavel Feldman  <pfeldman@google.com>

        Not reviewed: rebaselining inspector test.

        * inspector/extensions/extensions-events-expected.txt:

2011-04-27  Martin Robinson  <mrobinson@igalia.com>

        Skip another test on GTK+ because we are still missing frame loader delegate output
        in the DRT.

        * platform/gtk/Skipped: Update skipped list.

2011-04-27  Martin Robinson  <mrobinson@igalia.com>

        Update GTK+ specific expected results after r85011.

        * platform/gtk/css2.1/t0905-c414-flt-00-d-expected.txt:
        * platform/gtk/css2.1/t0905-c414-flt-01-d-g-expected.txt:
        * platform/gtk/css2.1/t0905-c414-flt-02-c-expected.txt:
        * platform/gtk/css2.1/t0905-c414-flt-03-c-expected.txt:
        * platform/gtk/css2.1/t0905-c414-flt-04-c-expected.txt:
        * platform/gtk/css2.1/t0905-c414-flt-wrap-01-d-g-expected.txt:
        * platform/gtk/css2.1/t0905-c5525-fltcont-00-d-g-expected.txt:
        * platform/gtk/css2.1/t0905-c5525-fltwidth-02-c-g-expected.txt:
        * platform/gtk/css2.1/t0905-c5525-fltwidth-03-c-g-expected.txt:
        * platform/gtk/css2.1/t090501-c414-flt-02-d-g-expected.txt:
        * platform/gtk/css2.1/t090501-c414-flt-03-b-g-expected.txt:
        * platform/gtk/fast/backgrounds/background-position-parsing-expected.txt:
        * platform/gtk/fast/backgrounds/repeat/mask-negative-offset-repeat-expected.png: Added.
        * platform/gtk/fast/backgrounds/repeat/mask-negative-offset-repeat-expected.txt:
        * platform/gtk/fast/backgrounds/repeat/negative-offset-repeat-expected.png: Added.
        * platform/gtk/fast/backgrounds/repeat/negative-offset-repeat-expected.txt:
        * platform/gtk/fast/block/float/008-expected.txt:
        * platform/gtk/fast/block/float/029-expected.txt:
        * platform/gtk/fast/block/float/031-expected.txt:
        * platform/gtk/fast/block/float/033-expected.txt:
        * platform/gtk/fast/block/float/035-expected.txt:
        * platform/gtk/fast/block/float/clamped-right-float-expected.txt:
        * platform/gtk/fast/block/float/float-forced-below-other-floats-expected.txt:
        * platform/gtk/fast/block/float/nested-clearance-expected.txt:
        * platform/gtk/fast/block/margin-collapse/062-expected.txt:
        * platform/gtk/fast/block/margin-collapse/063-expected.txt:
        * platform/gtk/fast/blockflow/block-level-images-expected.png:
        * platform/gtk/fast/blockflow/block-level-images-expected.txt:
        * platform/gtk/fast/blockflow/floats-in-block-layout-expected.txt:
        * platform/gtk/fast/borders/bidi-012-expected.png:
        * platform/gtk/fast/borders/bidi-012-expected.txt:
        * platform/gtk/fast/box-shadow/basic-shadows-expected.txt:
        * platform/gtk/fast/css/color-correction-on-background-image-expected.txt:
        * platform/gtk/fast/css/h1-in-section-elements-expected.png:
        * platform/gtk/fast/css/h1-in-section-elements-expected.txt:
        * platform/gtk/fast/forms/basic-textareas-quirks-expected.png:
        * platform/gtk/fast/forms/basic-textareas-quirks-expected.txt:
        * platform/gtk/fast/inline/inline-box-background-expected.txt:
        * platform/gtk/fast/inline/inline-box-background-long-image-expected.txt:
        * platform/gtk/fast/inline/inline-box-background-repeat-x-expected.txt:
        * platform/gtk/fast/inline/inline-box-background-repeat-y-expected.txt:
        * platform/gtk/fast/lists/003-expected.txt:
        * platform/gtk/fast/lists/003-vertical-expected.png: Added.
        * platform/gtk/fast/lists/003-vertical-expected.txt:
        * platform/gtk/fast/media/mq-relative-constraints-08-expected.txt:
        * platform/gtk/fast/repaint/box-shadow-h-expected.txt:
        * platform/gtk/fast/repaint/box-shadow-v-expected.txt:
        * platform/gtk/fast/repaint/subtree-root-clip-expected.txt:
        * platform/gtk/fast/text/emphasis-vertical-expected.txt:
        * platform/gtk/fast/text/whitespace/012-expected.txt:
        * platform/gtk/plugins/resize-from-plugin-expected.txt:
        * platform/gtk/tables/mozilla/bugs/bug120364-expected.txt:
        * platform/gtk/tables/mozilla/bugs/bug45055-2-expected.txt:
        * platform/gtk/tables/mozilla/bugs/bug72359-expected.txt:
        * platform/gtk/tables/mozilla/marvin/x_table_align_left-expected.txt:
        * platform/gtk/tables/mozilla/marvin/x_table_align_right-expected.txt:

2011-04-27  Martin Robinson  <mrobinson@igalia.com>

        Skip a failing test. Add GTK+-specific results for another and organize
        the Skipped file a bit. Remove platform-specific results for a test which
        is now a text dumping test.

        * platform/gtk/Skipped: Organize and skip a new test.
        * platform/gtk/fast/events/keydown-1-expected.png: Removed.
        * platform/gtk/fast/events/keydown-1-expected.txt: Removed.
        * platform/gtk/fast/events/overflow-viewport-renderer-deleted-expected.txt: Added.

2011-04-27  Csaba Osztrogonác  <ossy@webkit.org>

        Root element should establish a new block formatting context
        https://bugs.webkit.org/show_bug.cgi?id=54573

        Update Qt specific expected results after r85011.

        * platform/qt/css2.1/t0905-c414-flt-00-d-expected.png:
        * platform/qt/css2.1/t0905-c414-flt-00-d-expected.txt:
        * platform/qt/css2.1/t0905-c414-flt-01-d-g-expected.png:
        * platform/qt/css2.1/t0905-c414-flt-01-d-g-expected.txt:
        * platform/qt/css2.1/t0905-c414-flt-02-c-expected.png:
        * platform/qt/css2.1/t0905-c414-flt-02-c-expected.txt:
        * platform/qt/css2.1/t0905-c414-flt-03-c-expected.png:
        * platform/qt/css2.1/t0905-c414-flt-03-c-expected.txt:
        * platform/qt/css2.1/t0905-c414-flt-04-c-expected.png:
        * platform/qt/css2.1/t0905-c414-flt-04-c-expected.txt:
        * platform/qt/css2.1/t0905-c5525-fltcont-00-d-g-expected.png:
        * platform/qt/css2.1/t0905-c5525-fltcont-00-d-g-expected.txt:
        * platform/qt/css2.1/t0905-c5525-fltwidth-02-c-g-expected.png:
        * platform/qt/css2.1/t0905-c5525-fltwidth-02-c-g-expected.txt:
        * platform/qt/css2.1/t0905-c5525-fltwidth-03-c-g-expected.png:
        * platform/qt/css2.1/t0905-c5525-fltwidth-03-c-g-expected.txt:
        * platform/qt/css2.1/t090501-c414-flt-02-d-g-expected.png:
        * platform/qt/css2.1/t090501-c414-flt-02-d-g-expected.txt:
        * platform/qt/css2.1/t090501-c414-flt-03-b-g-expected.png:
        * platform/qt/css2.1/t090501-c414-flt-03-b-g-expected.txt:
        * platform/qt/fast/backgrounds/repeat/mask-negative-offset-repeat-expected.png: Added.
        * platform/qt/fast/backgrounds/repeat/mask-negative-offset-repeat-expected.txt:
        * platform/qt/fast/backgrounds/repeat/negative-offset-repeat-expected.png:
        * platform/qt/fast/backgrounds/repeat/negative-offset-repeat-expected.txt:
        * platform/qt/fast/block/float/008-expected.png:
        * platform/qt/fast/block/float/008-expected.txt:
        * platform/qt/fast/block/float/029-expected.txt:
        * platform/qt/fast/block/float/031-expected.txt:
        * platform/qt/fast/block/float/033-expected.png:
        * platform/qt/fast/block/float/033-expected.txt:
        * platform/qt/fast/block/float/035-expected.png:
        * platform/qt/fast/block/float/035-expected.txt:
        * platform/qt/fast/block/float/clamped-right-float-expected.txt:
        * platform/qt/fast/block/float/nested-clearance-expected.txt:
        * platform/qt/fast/block/margin-collapse/062-expected.txt:
        * platform/qt/fast/block/margin-collapse/063-expected.txt:
        * platform/qt/fast/blockflow/block-level-images-expected.png:
        * platform/qt/fast/blockflow/block-level-images-expected.txt:
        * platform/qt/fast/blockflow/floats-in-block-layout-expected.png:
        * platform/qt/fast/blockflow/floats-in-block-layout-expected.txt:
        * platform/qt/fast/borders/bidi-012-expected.txt:
        * platform/qt/fast/box-shadow/basic-shadows-expected.png:
        * platform/qt/fast/box-shadow/basic-shadows-expected.txt:
        * platform/qt/fast/lists/003-vertical-expected.png:
        * platform/qt/fast/lists/003-vertical-expected.txt:
        * platform/qt/fast/media/mq-relative-constraints-08-expected.png: Added.
        * platform/qt/fast/media/mq-relative-constraints-08-expected.txt:
        * platform/qt/fast/text/whitespace/012-expected.png: Added.
        * platform/qt/fast/text/whitespace/012-expected.txt:
        * platform/qt/tables/mozilla/bugs/bug120364-expected.png:
        * platform/qt/tables/mozilla/bugs/bug120364-expected.txt:
        * platform/qt/tables/mozilla/bugs/bug45055-2-expected.png:
        * platform/qt/tables/mozilla/bugs/bug45055-2-expected.txt:
        * platform/qt/tables/mozilla/bugs/bug72359-expected.png:
        * platform/qt/tables/mozilla/bugs/bug72359-expected.txt:
        * platform/qt/tables/mozilla/marvin/x_table_align_left-expected.png:
        * platform/qt/tables/mozilla/marvin/x_table_align_left-expected.txt:
        * platform/qt/tables/mozilla/marvin/x_table_align_right-expected.png:
        * platform/qt/tables/mozilla/marvin/x_table_align_right-expected.txt:

2011-04-26  Csaba Osztrogonác  <ossy@webkit.org>

        [Qt] Improper rendering of <button> tag when it contains a <br>
        https://bugs.webkit.org/show_bug.cgi?id=50521

        Update Qt specific expected files after r85009.

        * platform/qt/fast/replaced/table-percent-height-expected.txt:

2011-04-26  Csaba Osztrogonác  <ossy@webkit.org>

        [Qt] Improper rendering of <button> tag when it contains a <br>
        https://bugs.webkit.org/show_bug.cgi?id=50521

        Update Qt specific expected files after r85009.

        * platform/qt/editing/selection/3690703-2-expected.png:
        * platform/qt/editing/selection/3690703-2-expected.txt:
        * platform/qt/editing/selection/3690703-expected.png:
        * platform/qt/editing/selection/3690703-expected.txt:
        * platform/qt/editing/selection/3690719-expected.png:
        * platform/qt/editing/selection/3690719-expected.txt:
        * platform/qt/editing/selection/5240265-expected.png:
        * platform/qt/editing/selection/5240265-expected.txt:
        * platform/qt/fast/block/float/float-avoidance-expected.png:
        * platform/qt/fast/block/float/float-avoidance-expected.txt:
        * platform/qt/fast/block/positioning/inline-block-relposition-expected.png:
        * platform/qt/fast/block/positioning/inline-block-relposition-expected.txt:
        * platform/qt/fast/css/continuationCrash-expected.png:
        * platform/qt/fast/css/continuationCrash-expected.txt:
        * platform/qt/fast/css/margin-top-bottom-dynamic-expected.png:
        * platform/qt/fast/css/margin-top-bottom-dynamic-expected.txt:
        * platform/qt/fast/dom/HTMLTableColElement/resize-table-using-col-width-expected.png: Added.
        * platform/qt/fast/dom/HTMLTableColElement/resize-table-using-col-width-expected.txt:
        * platform/qt/fast/dynamic/positioned-movement-with-positioned-children-expected.txt:
        * platform/qt/fast/forms/basic-buttons-expected.png: Added.
        * platform/qt/fast/forms/basic-buttons-expected.txt:
        * platform/qt/fast/forms/basic-selects-expected.png:
        * platform/qt/fast/forms/basic-selects-expected.txt:
        * platform/qt/fast/forms/blankbuttons-expected.png: Copied from LayoutTests/platform/qt/tables/mozilla/bugs/bug4429-expected.png.
        * platform/qt/fast/forms/blankbuttons-expected.txt:
        * platform/qt/fast/forms/button-align-expected.png: Added.
        * platform/qt/fast/forms/button-align-expected.txt:
        * platform/qt/fast/forms/button-cannot-be-nested-expected.png: Added.
        * platform/qt/fast/forms/button-cannot-be-nested-expected.txt:
        * platform/qt/fast/forms/button-generated-content-expected.png: Added.
        * platform/qt/fast/forms/button-generated-content-expected.txt:
        * platform/qt/fast/forms/button-inner-block-reuse-expected.png: Added.
        * platform/qt/fast/forms/button-inner-block-reuse-expected.txt:
        * platform/qt/fast/forms/button-line-break-expected.txt:
        * platform/qt/fast/forms/button-positioned-expected.png: Added.
        * platform/qt/fast/forms/button-positioned-expected.txt:
        * platform/qt/fast/forms/button-sizes-expected.png: Added.
        * platform/qt/fast/forms/button-sizes-expected.txt:
        * platform/qt/fast/forms/button-style-color-expected.png: Added.
        * platform/qt/fast/forms/button-style-color-expected.txt:
        * platform/qt/fast/forms/button-table-styles-expected.png: Added.
        * platform/qt/fast/forms/button-table-styles-expected.txt:
        * platform/qt/fast/forms/button-text-transform-expected.png: Added.
        * platform/qt/fast/forms/button-text-transform-expected.txt:
        * platform/qt/fast/forms/control-clip-overflow-expected.png: Added.
        * platform/qt/fast/forms/control-clip-overflow-expected.txt:
        * platform/qt/fast/forms/control-restrict-line-height-expected.png: Added.
        * platform/qt/fast/forms/control-restrict-line-height-expected.txt:
        * platform/qt/fast/forms/formmove3-expected.png: Added.
        * platform/qt/fast/forms/formmove3-expected.txt:
        * platform/qt/fast/forms/input-button-sizes-expected.png:
        * platform/qt/fast/forms/input-button-sizes-expected.txt:
        * platform/qt/fast/forms/select-baseline-expected.png: Added.
        * platform/qt/fast/forms/select-baseline-expected.txt:
        * platform/qt/fast/forms/targeted-frame-submission-expected.png: Added.
        * platform/qt/fast/forms/targeted-frame-submission-expected.txt:
        * platform/qt/fast/replaced/replaced-breaking-expected.png:
        * platform/qt/fast/replaced/replaced-breaking-expected.txt:
        * platform/qt/fast/replaced/width100percent-button-expected.png:
        * platform/qt/fast/replaced/width100percent-button-expected.txt:
        * platform/qt/fast/selectors/064-expected.png:
        * platform/qt/fast/selectors/064-expected.txt:
        * platform/qt/fast/table/append-cells2-expected.png:
        * platform/qt/fast/table/append-cells2-expected.txt:
        * platform/qt/fast/table/remove-td-display-none-expected.png:
        * platform/qt/fast/table/remove-td-display-none-expected.txt:
        * platform/qt/fast/text/textIteratorNilRenderer-expected.png: Added.
        * platform/qt/fast/text/textIteratorNilRenderer-expected.txt:
        * platform/qt/http/tests/navigation/javascriptlink-frames-expected.png:
        * platform/qt/http/tests/navigation/javascriptlink-frames-expected.txt:
        * platform/qt/platform/qt/fast/forms/button-line-break-expected.png: Added.
        * platform/qt/svg/custom/inline-svg-in-xhtml-expected.png:
        * platform/qt/svg/custom/inline-svg-in-xhtml-expected.txt:
        * platform/qt/tables/mozilla/bugs/bug1188-expected.png:
        * platform/qt/tables/mozilla/bugs/bug1188-expected.txt:
        * platform/qt/tables/mozilla/bugs/bug1318-expected.png:
        * platform/qt/tables/mozilla/bugs/bug1318-expected.txt:
        * platform/qt/tables/mozilla/bugs/bug138725-expected.png:
        * platform/qt/tables/mozilla/bugs/bug138725-expected.txt:
        * platform/qt/tables/mozilla/bugs/bug18359-expected.png:
        * platform/qt/tables/mozilla/bugs/bug18359-expected.txt:
        * platform/qt/tables/mozilla/bugs/bug2479-2-expected.png:
        * platform/qt/tables/mozilla/bugs/bug2479-2-expected.txt:
        * platform/qt/tables/mozilla/bugs/bug2479-3-expected.png:
        * platform/qt/tables/mozilla/bugs/bug2479-3-expected.txt:
        * platform/qt/tables/mozilla/bugs/bug2479-4-expected.png:
        * platform/qt/tables/mozilla/bugs/bug2479-4-expected.txt:
        * platform/qt/tables/mozilla/bugs/bug26178-expected.png:
        * platform/qt/tables/mozilla/bugs/bug26178-expected.txt:
        * platform/qt/tables/mozilla/bugs/bug28928-expected.png:
        * platform/qt/tables/mozilla/bugs/bug28928-expected.txt:
        * platform/qt/tables/mozilla/bugs/bug33855-expected.png:
        * platform/qt/tables/mozilla/bugs/bug33855-expected.txt:
        * platform/qt/tables/mozilla/bugs/bug39209-expected.png:
        * platform/qt/tables/mozilla/bugs/bug39209-expected.txt:
        * platform/qt/tables/mozilla/bugs/bug4429-expected.png:
        * platform/qt/tables/mozilla/bugs/bug4429-expected.txt:
        * platform/qt/tables/mozilla/bugs/bug44505-expected.png:
        * platform/qt/tables/mozilla/bugs/bug44505-expected.txt:
        * platform/qt/tables/mozilla/bugs/bug46368-1-expected.png:
        * platform/qt/tables/mozilla/bugs/bug46368-1-expected.txt:
        * platform/qt/tables/mozilla/bugs/bug46368-2-expected.png:
        * platform/qt/tables/mozilla/bugs/bug46368-2-expected.txt:
        * platform/qt/tables/mozilla/bugs/bug51037-expected.png:
        * platform/qt/tables/mozilla/bugs/bug51037-expected.txt:
        * platform/qt/tables/mozilla/bugs/bug51727-expected.png:
        * platform/qt/tables/mozilla/bugs/bug51727-expected.txt:
        * platform/qt/tables/mozilla/bugs/bug52505-expected.png:
        * platform/qt/tables/mozilla/bugs/bug52505-expected.txt:
        * platform/qt/tables/mozilla/bugs/bug52506-expected.png:
        * platform/qt/tables/mozilla/bugs/bug52506-expected.txt:
        * platform/qt/tables/mozilla/bugs/bug60749-expected.png:
        * platform/qt/tables/mozilla/bugs/bug60749-expected.txt:
        * platform/qt/tables/mozilla/bugs/bug68912-expected.png:
        * platform/qt/tables/mozilla/bugs/bug68912-expected.txt:
        * platform/qt/tables/mozilla/bugs/bug7342-expected.png:
        * platform/qt/tables/mozilla/bugs/bug7342-expected.txt:
        * platform/qt/tables/mozilla/collapsing_borders/bug41262-4-expected.png:
        * platform/qt/tables/mozilla/collapsing_borders/bug41262-4-expected.txt:
        * platform/qt/tables/mozilla/dom/tableDom-expected.png:
        * platform/qt/tables/mozilla/dom/tableDom-expected.txt:
        * platform/qt/tables/mozilla/other/move_row-expected.png:
        * platform/qt/tables/mozilla/other/move_row-expected.txt:
        * platform/qt/tables/mozilla_expected_failures/bugs/bug1725-expected.png:
        * platform/qt/tables/mozilla_expected_failures/bugs/bug1725-expected.txt:
        * platform/qt/tables/mozilla_expected_failures/bugs/bug58402-2-expected.png:
        * platform/qt/tables/mozilla_expected_failures/bugs/bug58402-2-expected.txt:
        * platform/qt/tables/mozilla_expected_failures/collapsing_borders/bug41262-5-expected.png:
        * platform/qt/tables/mozilla_expected_failures/collapsing_borders/bug41262-5-expected.txt:
        * platform/qt/tables/mozilla_expected_failures/collapsing_borders/bug41262-6-expected.png:
        * platform/qt/tables/mozilla_expected_failures/collapsing_borders/bug41262-6-expected.txt:

2011-04-26  Dirk Pranke  <dpranke@chromium.org>

        Unreviewed, expectations change.

        And yet more failures resulting from r85011

        * platform/chromium/test_expectations.txt:

2011-04-26  Dirk Pranke  <dpranke@chromium.org>

        Unreviewed, expectations change.

        Suppress more failures resulting from r85011

        * platform/chromium/test_expectations.txt:

2011-04-26  Chang Shu  <cshu@webkit.org>

        Reviewed by Laszlo Gombos.

        WebKitTestRunner needs layoutTestController.addOriginAccessWhitelistEntry
        https://bugs.webkit.org/show_bug.cgi?id=42544

        Unskip passed tests and place failing tests for other reasons to other sections.

        * platform/mac-wk2/Skipped:
        * platform/qt-wk2/Skipped:

2011-04-26  Dirk Pranke  <dpranke@chromium.org>

        Unreviewed, expectations change.

        Suppress failures resulting from r85011 - probably just needs
        new baselines.

        * platform/chromium/test_expectations.txt:

2011-04-26  Pavel Feldman  <pfeldman@chromium.org>

        Not reviewed: restore inspector test disabled in r84913.

        * http/tests/inspector-enabled/dom-storage-open.html: Renamed from LayoutTests/http/tests/inspector-enabled/dom-storage-open.html-disabled.

2011-04-26  Ami Fischman  <fischman@google.com>

        Reviewed by David Levin.

        Fix media/video-controls-transformed.html layouttest to compute the click
        location of the play button instead of hard-coding pixel values that have
        been wrong for a long time.  Start expecting the test to pass in chromium
        (it's currently Skipped on all platforms).
        https://bugs.webkit.org/show_bug.cgi?id=58590

        * media/video-controls-transformed.html:
        * platform/chromium/test_expectations.txt:

2011-04-26  Dirk Pranke  <dpranke@chromium.org>

        Unreviewed, expectations change. Update w/ more flakiness.

        * platform/chromium/test_expectations.txt:

2011-04-26  Kenichi Ishibashi  <bashi@chromium.org>

        Reviewed by Tony Chang.

        [Chromium] Vertical positions are off for some Arabic glyphs on Linux
        https://bugs.webkit.org/show_bug.cgi?id=59182

        Add a test for checking vertical offsets of Arabic script shaping.
        The font which is used in the test was created from scratch.

        * platform/chromium-linux/fast/text/international/arabic-vertical-offset-expected.png: Added.
        * platform/chromium-linux/fast/text/international/arabic-vertical-offset-expected.txt: Added.
        * platform/chromium-linux/fast/text/international/arabic-vertical-offset.html: Added.
        * platform/chromium-linux/fast/text/international/resources/font-for-arabic-offset-test.ttf: Added.

2011-04-26  Tony Chang  <tony@chromium.org>

        Reviewed by Ojan Vafai.

        Fix http/tests/security/cross-frame-access-document-direct.html timeout in chromium
        https://bugs.webkit.org/show_bug.cgi?id=59376

        * http/tests/security/cross-frame-access-document-direct.html: Include a try/catch for invalid access.
        * platform/chromium/http/tests/security/cross-frame-access-document-direct-expected.txt: Added. Chromium includes a console.log
            statement of the invalid access.
        * platform/chromium/test_expectations.txt: Remove passing test.

2011-04-26  Levi Weintraub  <leviw@chromium.org>

        Reviewed by Eric Seidel.

        Root element should establish a new block formatting context
        https://bugs.webkit.org/show_bug.cgi?id=54573

        Always expanding the root render object to enclose overhanging floats.

        * fast/backgrounds/size/contain-and-cover-expected.txt:
        * fast/block/float/float-overhangs-root.html: Added.
        * platform/mac/compositing/direct-image-compositing-expected.txt:
        * platform/mac/css2.1/t0905-c414-flt-00-d-expected.txt:
        * platform/mac/css2.1/t0905-c414-flt-01-d-g-expected.txt:
        * platform/mac/css2.1/t0905-c414-flt-02-c-expected.txt:
        * platform/mac/css2.1/t0905-c414-flt-03-c-expected.txt:
        * platform/mac/css2.1/t0905-c414-flt-04-c-expected.txt:
        * platform/mac/css2.1/t0905-c414-flt-wrap-01-d-g-expected.txt:
        * platform/mac/css2.1/t0905-c5525-fltcont-00-d-g-expected.txt:
        * platform/mac/css2.1/t0905-c5525-fltwidth-02-c-g-expected.txt:
        * platform/mac/css2.1/t0905-c5525-fltwidth-03-c-g-expected.txt:
        * platform/mac/css2.1/t090501-c414-flt-02-d-g-expected.txt:
        * platform/mac/css2.1/t090501-c414-flt-03-b-g-expected.txt:
        * platform/mac/fast/backgrounds/background-position-parsing-expected.txt:
        * platform/mac/fast/backgrounds/repeat/mask-negative-offset-repeat-expected.txt:
        * platform/mac/fast/backgrounds/repeat/negative-offset-repeat-expected.txt:
        * platform/mac/fast/block/float/008-expected.txt:
        * platform/mac/fast/block/float/029-expected.txt:
        * platform/mac/fast/block/float/031-expected.txt:
        * platform/mac/fast/block/float/033-expected.txt:
        * platform/mac/fast/block/float/035-expected.txt:
        * platform/mac/fast/block/float/clamped-right-float-expected.txt:
        * platform/mac/fast/block/float/float-forced-below-other-floats-expected.txt:
        * platform/mac/fast/block/float/float-overhangs-root-expected.checksum: Added.
        * platform/mac/fast/block/float/float-overhangs-root-expected.png: Added.
        * platform/mac/fast/block/float/float-overhangs-root-expected.txt: Added.
        * platform/mac/fast/block/float/nested-clearance-expected.txt:
        * platform/mac/fast/block/margin-collapse/062-expected.txt:
        * platform/mac/fast/block/margin-collapse/063-expected.txt:
        * platform/mac/fast/blockflow/block-level-images-expected.txt:
        * platform/mac/fast/blockflow/floats-in-block-layout-expected.txt:
        * platform/mac/fast/borders/bidi-012-expected.txt:
        * platform/mac/fast/box-shadow/basic-shadows-expected.txt:
        * platform/mac/fast/css/color-correction-on-background-image-expected.txt:
        * platform/mac/fast/css/h1-in-section-elements-expected.txt:
        * platform/mac/fast/forms/basic-textareas-quirks-expected.txt:
        * platform/mac/fast/inline/inline-box-background-expected.txt:
        * platform/mac/fast/inline/inline-box-background-long-image-expected.txt:
        * platform/mac/fast/inline/inline-box-background-repeat-x-expected.txt:
        * platform/mac/fast/inline/inline-box-background-repeat-y-expected.txt:
        * platform/mac/fast/lists/003-expected.txt:
        * platform/mac/fast/lists/003-vertical-expected.txt:
        * platform/mac/fast/media/mq-relative-constraints-08-expected.txt:
        * platform/mac/fast/repaint/box-shadow-h-expected.txt:
        * platform/mac/fast/repaint/box-shadow-v-expected.txt:
        * platform/mac/fast/repaint/subtree-root-clip-expected.txt:
        * platform/mac/fast/text/emphasis-expected.txt:
        * platform/mac/fast/text/emphasis-vertical-expected.txt:
        * platform/mac/fast/text/whitespace/012-expected.txt:
        * platform/mac/tables/mozilla/bugs/bug120364-expected.txt:
        * platform/mac/tables/mozilla/bugs/bug45055-2-expected.txt:
        * platform/mac/tables/mozilla/bugs/bug72359-expected.txt:
        * platform/mac/tables/mozilla/marvin/x_table_align_left-expected.txt:
        * platform/mac/tables/mozilla/marvin/x_table_align_right-expected.txt:

2011-04-26  Dawit Alemayehu  <adawit@kde.org>

        Reviewed by Andreas Kling.

        Added qtwebkit layout test for the button line break fix (Bug 50521).

        [Qt] Improper rendering of <button> tag when it contains a <br>
        https://bugs.webkit.org/show_bug.cgi?id=50521

        * platform/qt/fast/forms/button-line-break-expected.txt: Added.
        * platform/qt/fast/forms/button-line-break.html: Added.

2011-04-26  Chris Fleizach  <cfleizach@apple.com>

        Reviewed by Adele Peterson.

        AX: Add more text marker routines to DRT
        https://bugs.webkit.org/show_bug.cgi?id=58949

        * platform/mac/accessibility/textmarker-string-for-range-expected.txt: Added.
        * platform/mac/accessibility/textmarker-string-for-range.html: Added.

2011-04-26  Dirk Pranke  <dpranke@chromium.org>

        Unreviewed, even more expectations change for flaky tests.

        * platform/chromium/test_expectations.txt:

2011-04-26  Dirk Pranke  <dpranke@chromium.org>

        Unreviewed, expectations change for flaky and passing tests.

        * platform/chromium/test_expectations.txt:

2011-04-26  Dinesh K Garg  <dineshg@codeaurora.org>

        Reviewed by Eric Seidel.

        Test case for: beginElement broken by setAttribute
        https://bugs.webkit.org/show_bug.cgi?id=26019

        * svg/animations/animate-beginElementAt-expected.txt: Added.
        * svg/animations/animate-beginElementAt.svg: Added.
        * svg/animations/animate-dynamic-update-attributeName-expected.txt:
        Nice side effect of the patch, we are now fully passing this test.

2011-04-26  Geoffrey Garen  <ggaren@apple.com>

        Reviewed by Oliver Hunt.

        Fixed a few flaky tests, noticed while working on new-run-webkit-tests.

        * accessibility/image-link.html: Wait until the load event fires before
        traversing the AX tree, since the the tree will be different after our
        subresources load.

        * fast/dom/StyleSheet/detached-style-pi-expected.txt:
        * fast/dom/StyleSheet/detached-style-pi.xhtml: Wait until the load event
        fires before traversing the style tree, since the the tree will be
        different after our subresources load.

        * platform/mac/test_expectations.txt: Expect success for two extra tests,
        since they pass when you have the right fonts.

2011-04-26  Dirk Pranke  <dpranke@chromium.org>

        Unreviewed, expectations change. Remove tests that are passing.

        * platform/chromium/test_expectations.txt:

2011-04-26  Alejandro G. Castro  <alex@igalia.com>

        Remove gtk specific render expectations after the tests were
        converted in text tests (r84873).

        * platform/gtk/animations/animation-drt-api-expected.txt: Removed.
        * platform/gtk/animations/animation-drt-api-multiple-keyframes-expected.txt: Removed.

2011-04-26  Martin Robinson  <mrobinson@igalia.com>

        Reviewed by Xan Lopez.

        [GTK] flaky crash  storage/open-database-set-empty-version.html
        https://bugs.webkit.org/show_bug.cgi?id=58988

        * platform/gtk/Skipped: Unskip test which should no longer be crashing.

2011-04-26  Martin Robinson  <mrobinson@igalia.com>

        Reviewed by Eric Seidel.

        [GTK]  fast/block/float/overhanging-tall-block.html crashes in the bots
        https://bugs.webkit.org/show_bug.cgi?id=58818

        * platform/gtk/Skipped: Unskip a test which is no longer crashing.

2011-04-26  Mario Sanchez Prada  <msanchez@igalia.com>

        Reviewed by Eric Seidel.

        [GTK] accessibility/aria-combobox-expected.txt
        https://bugs.webkit.org/show_bug.cgi?id=59399

        Unskip the test and provide expectations for Mac and GTK.

        * accessibility/aria-combobox.html: Do not check roles to be the
        right ones, print them and leave the check for the expected file.
        * platform/gtk/Skipped: Unskip the test.
        * platform/gtk/accessibility/aria-combobox-expected.txt: New.
        * platform/mac/accessibility/aria-combobox-expected.txt: Updated.

2011-04-26  Mario Sanchez Prada  <msanchez@igalia.com>

        Reviewed by Eric Seidel.

        [GTK] Implement isChecked in DRT
        https://bugs.webkit.org/show_bug.cgi?id=59385

        * platform/gtk/Skipped: Unskip the layout test
        accessibility/aria-checkbox-checked.html.

2011-04-26  Alejandro G. Castro  <alex@igalia.com>

        Skipped insecure-css-in-iframe.html, we are missing
        didRunInsecureContent notification.

        * platform/gtk/Skipped:

2011-04-26  Csaba Osztrogonác  <ossy@webkit.org>

        [Qt] Add platform specific expected results for new passing tests.

        * platform/qt/fast/backgrounds/background-leakage-expected.png: Added.
        * platform/qt/fast/backgrounds/background-leakage-expected.txt: Added.
        * platform/qt/fast/backgrounds/background-leakage-transforms-expected.png: Added.
        * platform/qt/fast/backgrounds/background-leakage-transforms-expected.txt: Added.
        * platform/qt/fast/backgrounds/gradient-background-leakage-expected.png: Added.
        * platform/qt/fast/backgrounds/gradient-background-leakage-expected.txt: Added.
        * platform/qt/fast/block/positioning/rtl-fixed-positioning-expected.png: Added.
        * platform/qt/fast/block/positioning/rtl-fixed-positioning-expected.txt: Added.
        * platform/qt/fast/block/positioning/vertical-rl/fixed-positioning-expected.png: Added.
        * platform/qt/fast/block/positioning/vertical-rl/fixed-positioning-expected.txt: Added.
        * platform/qt/fast/borders/bidi-002-expected.png: Added.
        * platform/qt/fast/borders/bidi-002-expected.txt: Added.
        * platform/qt/fast/borders/bidi-009a-expected.png: Added.
        * platform/qt/fast/borders/bidi-009a-expected.txt: Added.
        * platform/qt/fast/borders/bidi-012-expected.png: Added.
        * platform/qt/fast/borders/bidi-012-expected.txt: Added.
        * platform/qt/fast/borders/border-radius-different-width-001-expected.png: Added.
        * platform/qt/fast/borders/border-radius-different-width-001-expected.txt: Added.
        * platform/qt/fast/borders/border-radius-inset-outset-expected.png: Added.
        * platform/qt/fast/borders/border-radius-inset-outset-expected.txt: Added.
        * platform/qt/fast/borders/mixed-border-styles-expected.png: Added.
        * platform/qt/fast/borders/mixed-border-styles-expected.txt: Added.
        * platform/qt/fast/borders/mixed-border-styles-radius-expected.png: Added.
        * platform/qt/fast/borders/mixed-border-styles-radius-expected.txt: Added.
        * platform/qt/fast/borders/table-borders-expected.png: Added.
        * platform/qt/fast/borders/table-borders-expected.txt: Added.
        * platform/qt/fast/borders/webkit-border-radius-expected.png: Added.
        * platform/qt/fast/borders/webkit-border-radius-expected.txt: Added.
        * platform/qt/fast/dom/HTMLMeterElement/meter-writing-mode-expected.png: Added.
        * platform/qt/fast/dom/HTMLMeterElement/meter-writing-mode-expected.txt: Added.
        * platform/qt/fast/dom/HTMLProgressElement/progress-writing-mode-expected.png: Added.
        * platform/qt/fast/dom/HTMLProgressElement/progress-writing-mode-expected.txt: Added.
        * platform/qt/fast/forms/select-background-none-expected.png: Added.
        * platform/qt/fast/forms/select-background-none-expected.txt: Added.
        * platform/qt/fast/html/details-add-child-1-expected.png: Added.
        * platform/qt/fast/html/details-add-child-1-expected.txt: Added.
        * platform/qt/fast/html/details-add-child-2-expected.png: Added.
        * platform/qt/fast/html/details-add-child-2-expected.txt: Added.
        * platform/qt/fast/html/details-add-summary-child-1-expected.png: Added.
        * platform/qt/fast/html/details-add-summary-child-1-expected.txt: Added.
        * platform/qt/fast/html/details-add-summary-child-2-expected.png: Added.
        * platform/qt/fast/html/details-add-summary-child-2-expected.txt: Added.
        * platform/qt/fast/html/details-remove-child-1-expected.png: Added.
        * platform/qt/fast/html/details-remove-child-1-expected.txt: Added.
        * platform/qt/fast/html/details-remove-child-2-expected.png: Added.
        * platform/qt/fast/html/details-remove-child-2-expected.txt: Added.
        * platform/qt/fast/html/details-remove-summary-child-1-expected.png: Added.
        * platform/qt/fast/html/details-remove-summary-child-1-expected.txt: Added.
        * platform/qt/fast/html/details-remove-summary-child-2-expected.png: Added.
        * platform/qt/fast/html/details-remove-summary-child-2-expected.txt: Added.
        * platform/qt/fast/inline/positioned-object-between-replaced-elements-expected.png: Added.
        * platform/qt/fast/inline/positioned-object-between-replaced-elements-expected.txt: Added.
        * platform/qt/fast/table/auto-100-percent-width-expected.png: Added.
        * platform/qt/fast/table/auto-100-percent-width-expected.txt: Added.
        * platform/qt/fast/text/zero-font-size-expected.png: Added.
        * platform/qt/fast/text/zero-font-size-expected.txt: Added.
        * platform/qt/svg/W3C-SVG-1.1-SE/svgdom-over-01-f-expected.png: Added.
        * platform/qt/svg/W3C-SVG-1.1-SE/svgdom-over-01-f-expected.txt: Added.
        * platform/qt/svg/filters/feDropShadow-expected.png: Added.
        * platform/qt/svg/filters/feDropShadow-expected.txt: Added.

2011-04-26  Antti Koivisto  <antti@apple.com>

        Not reviewed.

        Flaky Test: fast/loader/file-protocol-fragment.html 
        https://bugs.webkit.org/show_bug.cgi?id=59488

        * fast/loader/file-protocol-fragment.html:

2011-04-26  Simon Fraser  <simon.fraser@apple.com>

        Reviewed by Daniel Bates.

        Convert some transition tests to use the pause API, and more cleanup
        https://bugs.webkit.org/show_bug.cgi?id=59490

        * animations/animation-drt-api.html:
        Fail message was the same as the pass message (doh!).

        * platform/chromium-linux/transitions/transition-drt-api-expected.png: Removed.
        * platform/chromium-win/transitions/transition-drt-api-expected.png: Removed.
        * platform/chromium-win/transitions/transition-drt-api-expected.txt: Removed.
        * platform/gtk/transitions/transition-drt-api-expected.txt: Removed.
        * platform/mac/transitions/transition-drt-api-expected.png: Removed.
        * platform/mac/transitions/transition-drt-api-expected.txt: Removed.
        * transitions/transition-drt-api-expected.txt: Added.
        * transitions/transition-drt-api.html:
        Made into a text test.
        * transitions/font-family-during-transition.html:
        Use the pause API.
        * transitions/transition-drt-api-delay.html:
        General cleanup.
        * transitions/bad-transition-shorthand-crash.html:
        Shorten the test.
        * transitions/border-radius-transition.html:
        * transitions/default-timing-function.html:
        * transitions/interrupt-zero-duration.html:
        Remove style attribute
        * transitions/color-transition-premultiplied.html:
        * transitions/transition-timing-function-expected.txt:
        * transitions/transition-timing-function.html:
        Use pause API.
        * transitions/inherit-other-props.html:
        * transitions/transform-op-list-match.html:
        Whitespace.
        * transitions/opacity-transition-zindex.html:
        Add FIXME.
        * transitions/transition-shorthand-delay-expected.txt:
        * transitions/transition-shorthand-delay.html:
        * transitions/zero-duration-with-non-zero-delay-start-expected.txt:
        * transitions/zero-duration-with-non-zero-delay-start.html:
        Use runTransitionTest().

2011-04-26  Maciej Stachowiak  <mjs@apple.com>

        Reviewed by Adam Barth.

        [Windows and Leopard Tests] media/invalid-media-url-crash.html failing since r84762
        https://bugs.webkit.org/show_bug.cgi?id=59324
        
        Use a properly invalid URL, instead of http:aa. This also allows the test to
        be unskipped on SL.

        * media/invalid-media-url-crash.html:
        * platform/mac-snowleopard/Skipped:

2011-04-26  Stephen White  <senorblanco@chromium.org>

        Unreviewed; chromium test expectations update.

        * platform/chromium/test_expectations.txt:
        fast/css/table-border-spacing.html is flaky in Debug.

2011-04-26  Stephen White  <senorblanco@chromium.org>

        Unreviewed; test expectations update.

        * platform/chromium/test_expectations.txt:
        Mark a test that seems to be passing IMAGE CRASH (I don't trust it
        enough yet to remove the CRASH).

2011-04-26  Csaba Osztrogonác  <ossy@webkit.org>

        [Qt] Add Qt specific expected result for new test introduced in r84930.

        * platform/qt/fast/loader/file-protocol-fragment-expected.txt: Added.

2011-04-26  Jessie Berlin  <jberlin@webkit.org>

        editing/text-iterator/findString.html passes on Leopard after r84750, so remove the expected
        failing results to get the bots green.

        * platform/mac-leopard/editing/text-iterator/findString-expected.txt: Removed.

2011-04-26  Jessie Berlin  <jberlin@webkit.org>

        [Windows Tests] media/invalid-media-url-crash.html failing since r84726.
        https://bugs.webkit.org/show_bug.cgi?id=59324

        The test is timing out on all of the Windows bots, so skip it to get them green.

        * platform/win/Skipped:

2011-04-26  Antti Koivisto  <antti@apple.com>

        Not reviewed.

        Add fast/loader/file-protocol-fragment.html to WebKit2 skip list
        (uses layoutTestController.dumpResourceLoadCallbacks).

        * platform/mac-wk2/Skipped:

2011-04-26  Stephen White  <senorblanco@chromium.org>

        Unreviewed; chromium test expectations update.

        * platform/chromium/test_expectations.txt:
        Tracking yet more flaky tests.

2011-04-26  Dmitry Titov  <dimich@chromium.org>

        Reviewed by Darin Adler.

        Convert fast/frames/contentWindow_Frame.html and fast/frames/contentWindow_IFrame.html to 'dumpAsText'
        https://bugs.webkit.org/show_bug.cgi?id=59436

        * fast/frames/contentWindow_Frame-expected.txt: Added.
        * fast/frames/contentWindow_Frame.html:
        * fast/frames/contentWindow_iFrame-expected.txt: Added.
        * fast/frames/contentWindow_iFrame.html:
        * platform/chromium-linux/fast/frames/contentWindow_Frame-expected.png: Removed.
        * platform/chromium-linux/fast/frames/contentWindow_iFrame-expected.png: Removed.
        * platform/chromium-win/fast/frames/contentWindow_Frame-expected.png: Removed.
        * platform/chromium-win/fast/frames/contentWindow_Frame-expected.txt: Removed.
        * platform/chromium-win/fast/frames/contentWindow_iFrame-expected.png: Removed.
        * platform/chromium-win/fast/frames/contentWindow_iFrame-expected.txt: Removed.
        * platform/gtk/fast/frames/contentWindow_Frame-expected.txt: Removed.
        * platform/gtk/fast/frames/contentWindow_iFrame-expected.txt: Removed.
        * platform/mac-leopard/fast/frames/contentWindow_Frame-expected.png: Removed.
        * platform/mac-leopard/fast/frames/contentWindow_iFrame-expected.png: Removed.
        * platform/mac/fast/frames/contentWindow_Frame-expected.png: Removed.
        * platform/mac/fast/frames/contentWindow_Frame-expected.txt: Removed.
        * platform/mac/fast/frames/contentWindow_iFrame-expected.png: Removed.
        * platform/mac/fast/frames/contentWindow_iFrame-expected.txt: Removed.
        * platform/qt/fast/frames/contentWindow_Frame-expected.txt: Removed.
        * platform/qt/fast/frames/contentWindow_iFrame-expected.txt: Removed.

2011-04-26  Stephen White  <senorblanco@chromium.org>

        Unreviewed; chromium test expectations update.

        * platform/chromium/test_expectations.txt:
        Add a few flaky tests.

2011-04-26  Stephen White  <senorblanco@chromium.org>

        Unreviewed; chromium test expectations update.

        * platform/chromium/test_expectations.txt:
        Add failing expectations for new test introduced in r84930.

2011-04-26  Daniel Bates  <dbates@webkit.org>

        Add expected results for GTK and Qt ports for the test panScroll-click-hyperlink.html
        (added in <http://trac.webkit.org/changeset/84922>).

        * platform/gtk/fast/events/panScroll-click-hyperlink-expected.txt: Added; expected
          failure results since this port doesn't build with pan scrolling enabled.
        * platform/qt-win/fast: Added.
        * platform/qt-win/fast/events: Added.
        * platform/qt-win/fast/events/panScroll-click-hyperlink-expected.txt: Added.
        * platform/qt/fast/events/panScroll-click-hyperlink-expected.txt: Added; expected
          failure results since the port for the Linux platform doesn't build with pan scrolling
          enabled.

2011-04-26  Antti Koivisto  <antti@apple.com>

        Reviewed by Adele Peterson.

        Don't strip fragments from file: urls in memory cache
        https://bugs.webkit.org/show_bug.cgi?id=59463

        * fast/loader/file-protocol-fragment-expected.txt: Added.
        * fast/loader/file-protocol-fragment.html: Added.

2011-04-26  Stephen White  <senorblanco@chromium.org>

        Unreviewed; chromium test expectations update.

        * platform/chromium/test_expectations.txt:
        Added expectations for new test
        fast/events/panScroll-click-hyperlink.html.  Added a flaky test.

2011-04-26  Stephen White  <senorblanco@chromium.org>

        Unreviewed; chromium test expectations update.

        * platform/chromium/test_expectations.txt:
        Add some failing and flaky tests.

2011-04-26  Simon Fraser  <simon.fraser@apple.com>

        Reviewed by Adam Roben.

        Fix path to transition-test-helpers.js in a test that is skipped
        on Mac but not Windows.

        * compositing/animation/animated-composited-inside-hidden.html:

2011-04-26  Daniel Bates  <dbates@rim.com>

        Reviewed by Adam Barth.

        Add layout test to ensure we don't regress clicking when exiting pan scrolling
        https://bugs.webkit.org/show_bug.cgi?id=58702

        On ports that build with PAN_SCROLLING enabled (includes all Windows ports at
        the time of writing), ensure that a mouse click is ignored when in pan scroll mode.

        This test is expected to fail on ports either built with PAN_SCROLLING disabled
        or don't support pan scrolling. In particular, this test is expected to fail on
        the Apple Mac and Chromium Mac port.

        * fast/events/panScroll-click-hyperlink.html: Added.
        * platform/mac/fast/events/panScroll-click-hyperlink-expected.txt: Added.
        * platform/win/fast/events/panScroll-click-hyperlink-expected.txt: Added.

2011-04-26  John Knottenbelt  <jknotten@chromium.org>

        Reviewed by Ojan Vafai.

        [Chromium] Adjust expectation for animations/play-state.html
        https://bugs.webkit.org/show_bug.cgi?id=59441

        * platform/chromium/test_expectations.txt:

2011-04-26  Ryosuke Niwa  <rniwa@webkit.org>

        Reviewed by Dan Bernstein.

        [RTL] Arabic/AB - after typing a date, cursors doesn't go back
        https://bugs.webkit.org/show_bug.cgi?id=49111

        Added a test to move left and right within Arabic numerals and Arabic letters.

        We still fail to set the position offset properly when we moving to the left from before B
        to before A in "ABC123" (logical order) in a LTR block where ABC and 123 are Arabic letters
        and numerals respectively. This bug is to be fixed in the followup bugs.

        * editing/selection/move-left-right-expected.txt:
        * editing/selection/move-left-right.html:

2011-04-26  Stephen White  <senorblanco@chromium.org>

        Unreviewed; chromium test_expectations update.

        Updated expectations for newly-failing tests.

        * platform/chromium/test_expectations.txt:

2011-04-26  Stephen White  <senorblanco@chromium.org>

        Unreviewed; chromium test_expectations update.

        Remove duplicate expectations.

        * platform/chromium/test_expectations.txt:

2011-04-26  Pavel Feldman  <pfeldman@google.com>

        Not reviewed: disable failing inspector test while I'm finding a better way to test what it does.

        * http/tests/inspector-enabled/dom-storage-open.html-disabled: Renamed from LayoutTests/http/tests/inspector-enabled/dom-storage-open.html.

2011-04-26  Kristóf Kosztyó  <Kosztyo.Kristof@stud.u-szeged.hu>

        Reviewed by Csaba Osztrogonác.

        [Qt] layoutTestController.overridePreference() is already implemented.

        * platform/qt/Skipped: Unskip now passing tests:
         - fast/events/pageshow-pagehide-on-back-cached.html
         - fast/events/pageshow-pagehide-on-back-cached-with-frames.html

2011-04-26  Kristóf Kosztyó  <Kosztyo.Kristof@stud.u-szeged.hu>

        Reviewed by Csaba Osztrogonác.

        [Qt] Implement LayoutTestController::setAutofilled
        https://bugs.webkit.org/show_bug.cgi?id=59439

        * platform/qt/Skipped:

2011-04-26  Csaba Osztrogonác  <ossy@webkit.org>

        Unreviewed.

        [WK2] editing/pasteboard/paste-before-tab-span.html introdueced in r84885, but
        it doesn't work with WK2 because of missing eventSender.keyDown() implementation.

        * platform/mac-wk2/Skipped: Add editing/pasteboard/paste-before-tab-span.html until fix.

2011-04-26  John Knottenbelt  <jknotten@chromium.org>

        Unreviewed.

        [Chromium] Remove passing tests from test_expectations.txt
        https://bugs.webkit.org/show_bug.cgi?id=59443

        * platform/chromium/test_expectations.txt:

2011-04-26  Leo Yang  <leo.yang@torchmobile.com.cn>

        Reviewed by Nikolas Zimmermann.

        ASSERT failure in SVGUseElement
        https://bugs.webkit.org/show_bug.cgi?id=59313

        Test case to verify webkit doesn't crash when a <use> element
        is pending on resource and the document is not well-formed.
        Test passes if no crash occurs in debug mode.

        * svg/custom/use-crash-in-non-wellformed-document-expected.txt: Added.
        * svg/custom/use-crash-in-non-wellformed-document.svg: Added.

2011-04-26  Chang Shu  <cshu@webkit.org>

        Reviewed by Sam Weinig.

        Convert fast/dom/keydown-1.html to dumpAsText test
        https://bugs.webkit.org/show_bug.cgi?id=59390

        * fast/events/keydown-1-expected.txt: Added.
        * fast/events/keydown-1.html:
        * platform/mac/fast/events/keydown-1-expected.png: Removed.
        * platform/mac/fast/events/keydown-1-expected.txt: Removed.

2011-04-26  Csaba Osztrogonác  <ossy@webkit.org>

        Convert LayoutTests/fast/events/onloadFrameCrash.html from pixel test to text-based test
        https://bugs.webkit.org/show_bug.cgi?id=59362

        We don't need Qt specific expected file after r84817.

        * platform/qt/fast/events/onloadFrameCrash-expected.txt: Removed.

2011-04-25  Levi Weintraub  <leviw@chromium.org>

        Reviewed by Ryosuke Niwa.

        REGRESSION: a character appears after tab span when typing immediately before the tab span
        https://bugs.webkit.org/show_bug.cgi?id=58132

        Correcting the order of operations we use to avoid inserting into invalid positions in
        ReplaceSelectionCommand to avoid inserting into tab-spans.

        * editing/pasteboard/paste-before-tab-span-expected.txt: Added.
        * editing/pasteboard/paste-before-tab-span.html: Added.

2011-04-25  Geoffrey Garen  <ggaren@apple.com>

        Reviewed by Oliver Hunt.

        Custom prototypes on DOM objects don't persist after garbage collection
        https://bugs.webkit.org/show_bug.cgi?id=59412

        * fast/dom/gc-custom-prototype-expected.txt: Added.
        * fast/dom/gc-custom-prototype.html: Added.
        * fast/dom/script-tests/dataset-gc.js:

2011-04-25  Daniel Bates  <dbates@webkit.org>

        Update some call sites that referenced the old location for
        the scripts {animation, transition}-test-helpers.js. These
        scripts were moved in <http://trac.webkit.org/changeset/84872>,
        and <http://trac.webkit.org/changeset/84874>, respectively.

        * compositing/animation/computed-style-during-delay.html:
        * compositing/reflections/animation-inside-reflection.html:
        * compositing/reflections/nested-reflection-animated.html:
        * compositing/reflections/nested-reflection-transition.html:
        * compositing/transitions/scale-transition-no-start.html:
        * compositing/transitions/singular-scale-transition.html:

2011-04-25  Simon Fraser  <simon.fraser@apple.com>

        Reviewed by Dan Bernstein.

        Clean up transition tests
        https://bugs.webkit.org/show_bug.cgi?id=59410
        
        General test cleanup: use the named variables as
        arguments to runTransitionTest() for readability,
        remove unnecessary titles and meta tags, remove
        style and script tag attributes etc. No substantive
        changes.

        * transitions/background-transitions.html:
        * transitions/bad-transition-shorthand-crash.html:
        * transitions/border-radius-transition.html:
        * transitions/cancel-transition.html:
        * transitions/change-values-during-transition.html:
        * transitions/clip-transition.html:
        * transitions/color-transition-all.html:
        * transitions/color-transition-premultiplied.html:
        * transitions/default-timing-function.html:
        * transitions/extra-transition.html:
        * transitions/hang-with-bad-transition-list.html:
        * transitions/inherit-other-props.html:
        * transitions/inherit.html:
        * transitions/interrupt-transform-transition.html:
        * transitions/interrupt-zero-duration.html:
        * transitions/interrupted-accelerated-transition.html:
        * transitions/interrupted-all-transition.html:
        * transitions/mask-transitions.html:
        * transitions/matched-transform-functions.html:
        * transitions/min-max-width-height-transitions.html:
        * transitions/mismatched-shadow-styles.html:
        * transitions/move-after-transition.html:
        * transitions/multiple-background-size-transitions.html:
        * transitions/multiple-background-transitions.html:
        * transitions/multiple-mask-transitions.html:
        * transitions/multiple-shadow-transitions.html:
        * transitions/multiple-text-shadow-transition.html:
        * transitions/negative-delay.html:
        * transitions/opacity-transition-zindex.html:
        * transitions/override-transition-crash.html:
        * transitions/remove-transition-style.html:
        * transitions/repeated-firing-background-color.html:
        * transitions/retargetted-transition.html:
        * transitions/shadow.html:
        * transitions/shorthand-border-transitions.html:
        * transitions/shorthand-transitions.html:
        * transitions/start-transform-transition.html:
        * transitions/steps-timing-function.html:
        * transitions/suspend-transform-transition.html:
        * transitions/svg-text-shadow-transition.html:
        * transitions/text-indent-transition.html:
        * transitions/transform-op-list-match.html:
        * transitions/transform-op-list-no-match.html:
        * transitions/transition-drt-api-delay.html:
        * transitions/transition-drt-api.html:
        * transitions/transition-duration-cleared-in-transitionend-crash.html:
        * transitions/transition-end-event-all-properties.html:
        * transitions/transition-end-event-attributes.html:
        * transitions/transition-end-event-container.html:
        * transitions/transition-end-event-destroy-iframe.html:
        * transitions/transition-end-event-destroy-renderer.html:
        * transitions/transition-end-event-left.html:
        * transitions/transition-end-event-multiple-01.html:
        * transitions/transition-end-event-multiple-02.html:
        * transitions/transition-end-event-multiple-03.html:
        * transitions/transition-end-event-multiple-04.html:
        * transitions/transition-end-event-nested.html:
        * transitions/transition-end-event-rendering.html:
        * transitions/transition-end-event-set-none.html:
        * transitions/transition-end-event-transform.html:
        * transitions/transition-end-event-window.html:
        * transitions/transition-hit-test-transform.html:
        * transitions/transition-hit-test.html:
        * transitions/transition-shorthand-delay.html:
        * transitions/transition-timing-function.html:
        * transitions/zero-duration-in-list.html:
        * transitions/zero-duration-with-non-zero-delay-end.html:
        * transitions/zero-duration-with-non-zero-delay-start.html:
        * transitions/zero-duration-without-units.html:

2011-04-25  Simon Fraser  <simon.fraser@apple.com>

        Reviewed by Daniel Bates.

        Move transition-test-helpers.js to resources/
        https://bugs.webkit.org/show_bug.cgi?id=59397
        
        Move transition-test-helpers.js and fix tests.

        * transitions/background-transitions.html:
        * transitions/border-radius-transition.html:
        * transitions/clip-transition.html:
        * transitions/color-transition-all.html:
        * transitions/color-transition-premultiplied.html:
        * transitions/default-timing-function.html:
        * transitions/font-family-during-transition.html:
        * transitions/mask-transitions.html:
        * transitions/min-max-width-height-transitions.html:
        * transitions/mismatched-shadow-styles.html:
        * transitions/move-after-transition.html:
        * transitions/multiple-background-size-transitions.html:
        * transitions/multiple-background-transitions.html:
        * transitions/multiple-mask-transitions.html:
        * transitions/multiple-shadow-transitions.html:
        * transitions/negative-delay.html:
        * transitions/resources/interrupted-accelerated-transition-final.html:
        * transitions/resources/transition-test-helpers.js:
        (roundNumber):
        (isCloseEnough):
        (isShadow):
        ():
        (expected):
        (callback.delay):
        * transitions/shorthand-border-transitions.html:
        * transitions/shorthand-transitions.html:
        * transitions/steps-timing-function.html:
        * transitions/svg-text-shadow-transition.html:
        * transitions/text-indent-transition.html:
        * transitions/transform-op-list-match.html:
        * transitions/transform-op-list-no-match.html:
        * transitions/transition-drt-api-delay.html:
        * transitions/transition-end-event-rendering.html:
        * transitions/transition-hit-test-transform.html:
        * transitions/transition-shorthand-delay.html:
        * transitions/zero-duration-in-list.html:

2011-04-25  Simon Fraser  <simon.fraser@apple.com>

        Reviewed by Daniel Bates.

        Make a couple of animation tests into text tests
        https://bugs.webkit.org/show_bug.cgi?id=59389

        * animations/animation-drt-api-multiple-keyframes.html:
        * animations/animation-drt-api.html:
        No need for these two to be text tests.
        
        * animations/state-at-end-event.html:
        General cleanup.
        
        * animations/animation-drt-api-expected.txt: Added.
        * animations/animation-drt-api-multiple-keyframes-expected.txt: Added.
        * animations/animation-drt-api-multiple-keyframes.html:
        * animations/animation-drt-api.html:
        * animations/state-at-end-event.html:
        * platform/mac/animations/animation-drt-api-expected.png: Removed.
        * platform/mac/animations/animation-drt-api-expected.txt: Removed.
        * platform/mac/animations/animation-drt-api-multiple-keyframes-expected.png: Removed.
        * platform/mac/animations/animation-drt-api-multiple-keyframes-expected.txt: Removed.

2011-04-25  Simon Fraser  <simon.fraser@apple.com>

        Reviewed by Daniel Bates.

        Move animation-test-helpers.js into resources directory
        https://bugs.webkit.org/show_bug.cgi?id=59365
        
        Move animation-test-helpers.js and fix the tests accordingly.

        * animations/3d/matrix-transform-type-animation.html:
        * animations/3d/transform-perspective.html:
        * animations/animation-direction.html:
        * animations/animation-drt-api-multiple-keyframes.html:
        * animations/animation-drt-api.html:
        * animations/animation-hit-test-transform.html:
        * animations/animation-hit-test.html:
        * animations/big-rotation.html:
        * animations/change-keyframes-name.html:
        * animations/change-keyframes.html:
        * animations/change-one-anim.html:
        * animations/combo-transform-rotate+scale.html:
        * animations/dynamic-stylesheet-loading.html:
        * animations/generic-from-to.html:
        * animations/import.html:
        * animations/keyframe-timing-functions-transform.html:
        * animations/keyframe-timing-functions.html:
        * animations/keyframe-timing-functions2.html:
        * animations/keyframes-comma-separated.html:
        * animations/keyframes-out-of-order.html:
        * animations/keyframes.html:
        * animations/lineheight-animation.html:
        * animations/longhand-timing-function.html:
        * animations/matrix-anim.html:
        * animations/missing-from-to-transforms.html:
        * animations/missing-from-to.html:
        * animations/missing-keyframe-properties-repeating.html:
        * animations/missing-keyframe-properties-timing-function.html:
        * animations/missing-keyframe-properties.html:
        * animations/missing-values-first-keyframe.html:
        * animations/missing-values-last-keyframe.html:
        * animations/multiple-animations.html:
        * animations/multiple-keyframes.html:
        * animations/negative-delay.html:
        * animations/opacity-transform-animation.html:
        * animations/play-state-suspend.html:
        * animations/play-state.html:
        * animations/resources/animation-test-helpers.js:
        (isCloseEnough):
        (matrixStringToArray):
        (checkExpectedValue):
        (endTest):
        (startTest):
        (runAnimationTest.else):
        (runAnimationTest):
        (waitForAnimationToStart):
        * animations/simultaneous-start-left.html:
        * animations/simultaneous-start-transform.html:
        * animations/stop-animation-on-suspend.html:
        * animations/suspend-resume-animation.html:
        * animations/timing-functions.html:
        * animations/transition-and-animation-1.html:
        * animations/transition-and-animation-2.html:
        * animations/transition-and-animation-3.html:
        * animations/unanimated-style.html:
        * animations/width-using-ems.html:

2011-04-25  Sheriff Bot  <webkit.review.bot@gmail.com>

        Unreviewed, rolling out r84864.
        http://trac.webkit.org/changeset/84864
        https://bugs.webkit.org/show_bug.cgi?id=59413

        Expect result of use-crash-in-non-wellformed-document.svg is
        platform dependent (Requested by leoyang on #webkit).

        * svg/custom/use-crash-in-non-wellformed-document-expected.txt: Removed.
        * svg/custom/use-crash-in-non-wellformed-document.svg: Removed.

2011-04-25  Dirk Pranke  <dpranke@chromium.org>

        Unreviewed, expectations change. Remove tests that are no longer
        failing, add missing baselines for Chromium Mac SL.

        * platform/chromium/test_expectations.txt:
        * platform/chromium-mac/fast/block/positioning/rtl-fixed-positioning-expected.png: Added.
        * platform/chromium-mac/fast/block/positioning/rtl-fixed-positioning-expected.txt: Added.
        * platform/chromium-mac/fast/block/positioning/vertical-rl/fixed-positioning-expected.png: Added.

2011-04-25  Mihai Parparita  <mihaip@chromium.org>

        Reviewed by Ojan Vafai.

        Convert fast/events/focusingUnloadedFrame.html to dumpAsText
        https://bugs.webkit.org/show_bug.cgi?id=59371

        * fast/events/focusingUnloadedFrame-expected.txt: Added.
        * fast/events/focusingUnloadedFrame.html:
        * platform/chromium-linux/fast/events/focusingUnloadedFrame-expected.png: Removed.
        * platform/chromium-win/fast/events/focusingUnloadedFrame-expected.png: Removed.
        * platform/chromium-win/fast/events/focusingUnloadedFrame-expected.txt: Removed.
        * platform/gtk/fast/events/focusingUnloadedFrame-expected.png: Removed.
        * platform/gtk/fast/events/focusingUnloadedFrame-expected.txt: Removed.
        * platform/mac-leopard/fast/events/focusingUnloadedFrame-expected.png: Removed.
        * platform/mac/fast/events/focusingUnloadedFrame-expected.png: Removed.
        * platform/mac/fast/events/focusingUnloadedFrame-expected.txt: Removed.

2011-04-25  Leo Yang  <leo.yang@torchmobile.com.cn>

        Reviewed by Nikolas Zimmermann.

        ASSERT failure in SVGUseElement
        https://bugs.webkit.org/show_bug.cgi?id=59313

        Test case to verify webkit doesn't crash when a <use> element
        is pending on resource and the document is not well-formed.
        Test passes if no crash occurs in debug mode.

        * svg/custom/use-crash-in-non-wellformed-document-expected.txt: Added.
        * svg/custom/use-crash-in-non-wellformed-document.svg: Added.

2011-04-25  Mihai Parparita  <mihaip@chromium.org>

        Reviewed by Tony Chang.

        Convert fast/loader/start-load-in-unload.html to dumpAsText
        https://bugs.webkit.org/show_bug.cgi?id=59384

        * fast/loader/start-load-in-unload-expected.txt: Added.
        * fast/loader/start-load-in-unload.html:
        * platform/chromium-linux/fast/loader/start-load-in-unload-expected.png: Removed.
        * platform/chromium-win/fast/loader/start-load-in-unload-expected.png: Removed.
        * platform/chromium-win/fast/loader/start-load-in-unload-expected.txt: Removed.
        * platform/gtk/fast/loader/start-load-in-unload-expected.png: Removed.
        * platform/gtk/fast/loader/start-load-in-unload-expected.txt: Removed.
        * platform/mac-leopard/fast/loader/start-load-in-unload-expected.png: Removed.
        * platform/mac/fast/loader/start-load-in-unload-expected.png: Removed.
        * platform/mac/fast/loader/start-load-in-unload-expected.txt: Removed.
        * platform/qt/fast/loader/start-load-in-unload-expected.txt: Removed.

2011-04-25  Tony Chang  <tony@chromium.org>

        Reviewed by Antonio Gomes.

        replace a setTimeout with a onload event to save 2 seconds in a test
        https://bugs.webkit.org/show_bug.cgi?id=59350

        * http/tests/security/xssAuditor/meta-tag-http-refresh-javascript-url.html:

2011-04-25  Mihai Parparita  <mihaip@chromium.org>

        Reviewed by Ojan Vafai.

        Convert fast/events/event-sender-mouse-moved.html to dumpAsText
        https://bugs.webkit.org/show_bug.cgi?id=59366

        * fast/events/event-sender-mouse-moved-expected.txt: Added.
        * fast/events/event-sender-mouse-moved.html:
        * platform/chromium-linux/fast/events/event-sender-mouse-moved-expected.png: Removed.
        * platform/chromium-win/fast/events/event-sender-mouse-moved-expected.png: Removed.
        * platform/chromium-win/fast/events/event-sender-mouse-moved-expected.txt: Removed.
        * platform/gtk/fast/events/event-sender-mouse-moved-expected.txt: Removed.
        * platform/mac-leopard/fast/events/event-sender-mouse-moved-expected.png: Removed.
        * platform/mac/fast/events/event-sender-mouse-moved-expected.png: Removed.
        * platform/mac/fast/events/event-sender-mouse-moved-expected.txt: Removed.
        * platform/qt/fast/events/event-sender-mouse-moved-expected.txt: Removed.

2011-04-25  Dirk Pranke  <dpranke@chromium.org>

        Unreviewed, expectations change. Remove tests that are no longer
        failing.

        * platform/chromium/test_expectations.txt:

2011-04-25  Dan Bernstein  <mitz@apple.com>

        Reviewed by Sam Weinig.

        Convert a test to dump as text.

        * fast/dom/jsDevicePixelRatio-expected.txt: Added.
        * fast/dom/jsDevicePixelRatio.html:
        * platform/chromium-linux/fast/dom/jsDevicePixelRatio-expected.png: Removed.
        * platform/chromium-win/fast/dom/jsDevicePixelRatio-expected.png: Removed.
        * platform/chromium-win/fast/dom/jsDevicePixelRatio-expected.txt: Removed.
        * platform/gtk/fast/dom/jsDevicePixelRatio-expected.png: Removed.
        * platform/gtk/fast/dom/jsDevicePixelRatio-expected.txt: Removed.
        * platform/mac-leopard/fast/dom/jsDevicePixelRatio-expected.png: Removed.
        * platform/mac/fast/dom/jsDevicePixelRatio-expected.png: Removed.
        * platform/mac/fast/dom/jsDevicePixelRatio-expected.txt: Removed.
        * platform/qt/fast/dom/jsDevicePixelRatio-expected.png: Removed.
        * platform/qt/fast/dom/jsDevicePixelRatio-expected.txt: Removed.

2011-04-25  Philippe Normand  <pnormand@igalia.com>

        Unreviewed, GTK rebaseline and skip a couple of failing tests.

        * platform/gtk/Skipped: skip
        http/tests/security/mixedContent/insecure-css-in-main-frame.html
        and editing/text-iterator/findString.html
        * platform/gtk/fast/dom/HTMLMeterElement/meter-element-expected.txt:

2011-04-25  Dan Bernstein  <mitz@apple.com>

        Move text-only results of a test that was switched to dump as text in r72166
        alongside the test, and remove old expected pixel results.

        * fast/dom/setPrimitiveValue-expected.txt: Added.
        * platform/chromium-linux/fast/dom/setPrimitiveValue-expected.png: Removed.
        * platform/chromium-win/fast/dom/setPrimitiveValue-expected.png: Removed.
        * platform/gtk/fast/dom/setPrimitiveValue-expected.txt: Removed.
        * platform/mac-leopard/fast/dom/setPrimitiveValue-expected.png: Removed.
        * platform/mac/fast/dom/setPrimitiveValue-expected.png: Removed.
        * platform/mac/fast/dom/setPrimitiveValue-expected.txt: Removed.
        * platform/qt/fast/dom/setPrimitiveValue-expected.png: Removed.
        * platform/qt/fast/dom/setPrimitiveValue-expected.txt: Removed.

2011-04-25  Adele Peterson  <adele@apple.com>

        Reviewed by Adam Roben.

        Convert fast/events/label-focus.html to a text only test
        https://bugs.webkit.org/show_bug.cgi?id=59364

        * fast/events/label-focus-expected.txt: Copied from LayoutTests/platform/mac/fast/events/label-focus-expected.txt.
        * fast/events/label-focus.html:
        * platform/chromium-linux/fast/events/label-focus-expected.png: Removed.
        * platform/chromium-win/fast/events/label-focus-expected.png: Removed.
        * platform/chromium-win/fast/events/label-focus-expected.txt: Removed.
        * platform/gtk/fast/events/label-focus-expected.png: Removed.
        * platform/gtk/fast/events/label-focus-expected.txt: Removed.
        * platform/mac-leopard/fast/events/label-focus-expected.png: Removed.
        * platform/mac/fast/events/label-focus-expected.png: Removed.
        * platform/mac/fast/events/label-focus-expected.txt: Removed.
        * platform/qt/fast/events/label-focus-expected.txt: Removed.

2011-04-25  Dan Bernstein  <mitz@apple.com>

        Reviewed by Sam Weinig.

        Changed a test to dump as text.

        * fast/css/affected-by-hover-after-style-change.html:
        * platform/gtk/fast/css/affected-by-hover-after-style-change-expected.png: Removed.
        * platform/gtk/fast/css/affected-by-hover-after-style-change-expected.txt: Removed.
        * platform/mac/fast/css/affected-by-hover-after-style-change-expected.png: Removed.
        * platform/mac/fast/css/affected-by-hover-after-style-change-expected.txt: Removed.
        * platform/qt/fast/css/affected-by-hover-after-style-change-expected.png: Removed.
        * platform/qt/fast/css/affected-by-hover-after-style-change-expected.txt: Removed.

2011-04-25  Daniel Bates  <dbates@webkit.org>

        Reviewed by Sam Weinig.

        Convert LayoutTests/fast/events/onloadFrameCrash.html from pixel test to text-based test
        https://bugs.webkit.org/show_bug.cgi?id=59362

        * fast/events/onloadFrameCrash-expected.txt: Added.
        * fast/events/onloadFrameCrash.html: Modified to dump as text.
        * platform/gtk/fast/events/onloadFrameCrash-expected.png: Removed.
        * platform/gtk/fast/events/onloadFrameCrash-expected.txt: Removed.
        * platform/mac/fast/events/onloadFrameCrash-expected.png: Removed.
        * platform/mac/fast/events/onloadFrameCrash-expected.txt: Removed.

2011-04-25  Dan Bernstein  <mitz@apple.com>

        Reviewed by Adam Roben.

        Changed a test to dump as text.

        * fast/css/zoom-property-parsing-expected.txt: Added.
        * fast/css/zoom-property-parsing.html:
        * platform/chromium-linux/fast/css/zoom-property-parsing-expected.png: Removed.
        * platform/chromium-win/fast/css/zoom-property-parsing-expected.png: Removed.
        * platform/chromium-win/fast/css/zoom-property-parsing-expected.txt: Removed.
        * platform/gtk/fast/css/zoom-property-parsing-expected.png: Removed.
        * platform/gtk/fast/css/zoom-property-parsing-expected.txt: Removed.
        * platform/mac-leopard/fast/css/zoom-property-parsing-expected.png: Removed.
        * platform/mac/fast/css/zoom-property-parsing-expected.png: Removed.
        * platform/mac/fast/css/zoom-property-parsing-expected.txt: Removed.
        * platform/qt/fast/css/zoom-property-parsing-expected.png: Removed.
        * platform/qt/fast/css/zoom-property-parsing-expected.txt: Removed.

2011-04-25  Dirk Pranke  <dpranke@chromium.org>

        Unreviewed, expectations change.

        Missed the Chromium Mac baseline in the previous change.

        * platform/chromium-mac/fast/dom/HTMLAnchorElement/set-href-attribute-host-expected.txt:

2011-04-25  Dirk Pranke  <dpranke@chromium.org>

        Unreviewed, expectations change.

        * platform/chromium-win/fast/dom/HTMLAnchorElement/set-href-attribute-host-expected.txt:

2011-04-25  Csaba Osztrogonác  <ossy@webkit.org>

        [Qt][WK2]fast/dom/shadow/gc-shadow.html fails
        https://bugs.webkit.org/show_bug.cgi?id=59335

        * platform/qt-wk2/Skipped: Add fast/dom/shadow/gc-shadow.html.

2011-04-25  Csaba Osztrogonác  <ossy@webkit.org>

        [Qt] New tests introduced in r84742 fail
        https://bugs.webkit.org/show_bug.cgi?id=59334

        * platform/qt/Skipped:

2011-04-25  Jer Noble  <jer.noble@apple.com>

        Unreviewed; add failing test to mac-wk2/Skipped list.

        * platform/mac-wk2/Skipped:

2011-04-25  Jessie Berlin  <jberlin@webkit.org>

        [Snow Leopard Intel WebKit2 Release Tests] editing/undo/undo-iframe-location-change.html and
        compositing/iframes/invisible-nested-iframe-show.html failing since r84037.
        https://bugs.webkit.org/show_bug.cgi?id=58990

        Add failing expected results for SL WK2 to get the bots green.

        These tests are already Skipped on Windows or have their own expected results.

        * platform/mac-wk2/compositing/iframes/invisible-nested-iframe-show-expected.txt: Added.
        * platform/mac-wk2/editing/undo/undo-iframe-location-change-expected.txt: Added.

2011-04-25  Alexander Pavlov  <apavlov@chromium.org>

        Reviewed by Yury Semikhatsky.

        Web Inspector: CSS is parsed improperly when saved in UTF-8 with a BOM
        https://bugs.webkit.org/show_bug.cgi?id=59322

        * inspector/styles/parse-utf8-bom-expected.txt: Added.
        * inspector/styles/parse-utf8-bom.html: Added.
        * inspector/styles/resources/parse-utf8-bom-main.css: Added.
        (h1):
        (h2):
        * inspector/styles/resources/parse-utf8-bom-reset.css: Added.

2011-04-25  Jessie Berlin  <jberlin@webkit.org>

        Add another HTMLProgressElement test to the Windows Skipped list to get the bots green,
        since Windows does not have an implementation of HTMLProgressElement.

        * platform/win/Skipped:
        Add fast/dom/HTMLProgressElement/progress-writing-mode.html.

2011-04-25  Pavel Feldman  <pfeldman@google.com>

        Reviewed by Yury Semikhatsky.

        Web Inspector: move Frame and Resource Tree management into the Page agent.
        https://bugs.webkit.org/show_bug.cgi?id=59321

        * inspector/report-protocol-errors.html:

2011-04-25  Pavel Feldman  <pfeldman@google.com>

        Reviewed by Yury Semikhatsky.

        Web Inspector: few protocol improvements.
        https://bugs.webkit.org/show_bug.cgi?id=59319

        * http/tests/inspector/inspector-test.js:
        (initialize_InspectorTest.InspectorTest.reloadPage):

2011-04-25  Maciej Stachowiak  <mjs@apple.com>

        Reviewed by Cameron Zwarich.

        Fix tests after URL parsing fix
        https://bugs.webkit.org/show_bug.cgi?id=59317

        * fast/dom/HTMLAnchorElement/script-tests/set-href-attribute-host.js: Update
        expected behavior.
        * fast/dom/HTMLAnchorElement/script-tests/set-href-attribute-protocol.js: Update expected
        behavior.
        * fast/dom/HTMLAnchorElement/set-href-attribute-host-expected.txt: Update expectations.
        * fast/dom/HTMLAnchorElement/set-href-attribute-protocol-expected.txt: Update expectations.
        * fast/loader/url-parse-1-expected.txt: Update expectations.
        * http/tests/loading/cross-origin-XHR-willLoadRequest.html: Replace single slash
        in an http: URL with a double slash - the single slash seemed to be erroneous.

2011-04-24  Dirk Pranke  <dpranke@chromium.org>

        Unreviewed, expectations change.

        Add Chromium baselines for fast/table/auto-100-percent-width.html.
        Mark fast/dom/HTMLMeterElement/meter-element.html and
        http/tests/misc/will-send-request-returns-null-on-redirect.html
        as failing - need triage.

        * platform/chromium-mac/fast/table/auto-100-percent-width-expected.png: Added.
        * platform/chromium-win/fast/table/auto-100-percent-width-expected.png: Added.
        * platform/chromium/test_expectations.txt:

2011-04-24  Adam Barth  <abarth@webkit.org>

        Update Chromium results for standard-url.html (again).

        * platform/chromium-linux/fast/url/standard-url-expected.txt:
        * platform/chromium-mac/fast/url/standard-url-expected.txt:
        * platform/chromium-win/fast/url/standard-url-expected.txt:

2011-04-24  Sheriff Bot  <webkit.review.bot@gmail.com>

        Unreviewed, rolling out r84759.
        http://trac.webkit.org/changeset/84759
        https://bugs.webkit.org/show_bug.cgi?id=59306

        Caused gc-shadow.html to start crashing in V8. (Requested by
        dglazkov|away on #webkit).

        * fast/dom/shadow/append-child-text-expected.txt: Removed.
        * fast/dom/shadow/append-child-text.html: Removed.

2011-04-24  Maciej Stachowiak  <mjs@apple.com>

        Reviewed by George Staikos.

        Handling of URLs like http:/example.com/ is incorrect
        https://bugs.webkit.org/show_bug.cgi?id=59300
        <rdar://problem/9231956>

        Added some new test cases. Also updated results for the
        change. The changes are progressions.

        * fast/url/relative-expected.txt:
        * fast/url/script-tests/segments.js:
        * fast/url/script-tests/standard-url.js:
        * fast/url/segments-expected.txt:
        * fast/url/segments-from-data-url-expected.txt:
        * fast/url/standard-url-expected.txt:

2011-04-24  Adam Barth  <abarth@webkit.org>

        Update Chromium results for standard-url.html

        * platform/chromium-linux/fast/url/standard-url-expected.txt: Added.
        * platform/chromium-mac/fast/url/standard-url-expected.txt:
        * platform/chromium-win/fast/url/standard-url-expected.txt:

2011-04-24  Dominic Cooney  <dominicc@chromium.org>

        Reviewed by Dimitri Glazkov.

        Crash when adding a text node to a shadow root
        https://bugs.webkit.org/show_bug.cgi?id=59304

        * fast/dom/shadow/append-child-text-expected.txt: Added.
        * fast/dom/shadow/append-child-text.html: Added.

2011-04-24  Adam Barth  <abarth@webkit.org>

        Reviewed by Eric Seidel.

        Update Content-Security-Policy syntax to match new version of spec
        https://bugs.webkit.org/show_bug.cgi?id=59291

        Update tests to use the new syntax.

        * http/tests/security/contentSecurityPolicy/eval-scripts-setInterval-allowed.html:
        * http/tests/security/contentSecurityPolicy/eval-scripts-setInterval-blocked.html:
        * http/tests/security/contentSecurityPolicy/eval-scripts-setTimeout-allowed.html:
        * http/tests/security/contentSecurityPolicy/eval-scripts-setTimeout-blocked.html:
        * http/tests/security/contentSecurityPolicy/image-allowed.html:
        * http/tests/security/contentSecurityPolicy/image-blocked.html:
        * http/tests/security/contentSecurityPolicy/inline-script-allowed.html:
        * http/tests/security/contentSecurityPolicy/style-allowed.html:
        * http/tests/security/contentSecurityPolicy/style-blocked.html:
        * http/tests/security/contentSecurityPolicy/xsl-allowed.php:
        * http/tests/security/contentSecurityPolicy/xsl-blocked.php:

2011-04-24  Adam Barth  <abarth@webkit.org>

        Reviewed by Maciej Stachowiak.

        Test canonicalization of scheme:/host
        https://bugs.webkit.org/show_bug.cgi?id=59296

        * fast/url/script-tests/segments.js:
        * fast/url/script-tests/standard-url.js:
        * fast/url/segments-expected.txt:
        * fast/url/standard-url-expected.txt:

2011-04-24  Rik Cabanier  <cabanier@adobe.com>

        Reviewed by Simon Fraser.

        Tables are not rendered correctly
        https://bugs.webkit.org/show_bug.cgi?id=59138

        * fast/table/auto-100-percent-width.html: Added.
        * platform/mac/fast/table/auto-100-percent-width-expected.txt: Added.

2011-04-23  Dan Bernstein  <mitz@apple.com>

        Reviewed by Simon Fraser.

        <rdar://problem/8970549> WebFindOptionsAtWordStarts fails with Japanese words
        https://bugs.webkit.org/show_bug.cgi?id=59288

        * editing/text-iterator/findString-expected.txt:
        * editing/text-iterator/findString.html:

2011-04-23  Dominic Cooney  <dominicc@chromium.org>

        Reviewed by Dimitri Glazkov.

        [V8] Nodes in shadow DOM should not be GCed while their hosts are alive
        https://bugs.webkit.org/show_bug.cgi?id=59284

        * fast/dom/shadow/gc-shadow-expected.txt: Added.
        * fast/dom/shadow/gc-shadow.html: Added.

2011-04-23  MORITA Hajime <morrita@google.com>

        Unreviewed test_expectations.txt update.
        r84745 didn't fix meter-element.html break on chromium.

        * platform/chromium/test_expectations.txt:

2011-04-23  MORITA Hajime  <morrita@google.com>

        Reviewed by Kent Tamura.

        REGRESSION: (non-Mac) <meter>'s bar part isn't rendered for with -webkit-writing-mode: vertical-lr from r82899
        https://bugs.webkit.org/show_bug.cgi?id=59281

        * fast/dom/HTMLMeterElement/meter-writing-mode.html: Added.
        * fast/dom/HTMLProgressElement/progress-writing-mode.html: Added.
        * platform/chromium/test_expectations.txt:
        * platform/mac/fast/dom/HTMLMeterElement/meter-writing-mode-expected.png: Added.
        * platform/mac/fast/dom/HTMLMeterElement/meter-writing-mode-expected.txt: Added.
        * platform/mac/fast/dom/HTMLProgressElement/progress-writing-mode-expected.png: Added.
        * platform/mac/fast/dom/HTMLProgressElement/progress-writing-mode-expected.txt: Added.

2011-04-23  Alexey Proskuryakov  <ap@apple.com>

        Unreviewed.

        REGRESSION (r80812): window.print();window.close() doesn't work in WebKit2
        https://bugs.webkit.org/show_bug.cgi?id=59241
        <rdar://problem/9150861>

        * http/tests/misc/will-send-request-returns-null-on-redirect-expected.txt:
        * http/tests/security/XFrameOptions/x-frame-options-deny-expected.txt:
        * http/tests/security/XFrameOptions/x-frame-options-parent-same-origin-deny-expected.txt:
        Resource load delegates for cancelled loads are now correctly sent before frame load
        delegate's didFinishLoading, so cancellation errors get logged by DumpRenderTree.

2011-04-22  Chris Evans  <cevans@chromium.org>

        Reviewed by Adam Barth.

        Upgrade CSS loads from mixed content warning (displayed) to mixed
        content error (ran)
        https://bugs.webkit.org/show_bug.cgi?id=59056

        * http/tests/security/mixedContent/insecure-css-in-iframe-expected.txt: Update expectation.
        * http/tests/security/mixedContent/insecure-css-in-main-frame-expected.txt: Update expectation.
        * http/tests/security/mixedContent/insecure-css-in-iframe.html: Update expectation.
        * http/tests/security/mixedContent/insecure-css-in-main-frame.html: Update expectation.
        * http/tests/security/mixedContent/resources/frame-with-insecure-css.html: Fix typo.

2011-04-22  Csaba Osztrogonác  <ossy@webkit.org>

        [Qt][WK2] Add some failing tests to the Skipped list because of a WTR sideeffect bug.

        * platform/qt-wk2/Skipped:

2011-04-22  Csaba Osztrogonác  <ossy@webkit.org>

        [Qt] Unskip a bunch of passing tests and update their expected files.
        This patch based on work of Kristóf Kosztyó <Kosztyo.Kristof@stud.u-szeged.hu>

        * platform/qt/Skipped:
        * platform/qt/fast/[...]: Added, updated.
        * platform/qt/scrollbars/[...]: Added, updated.

2011-04-22  Dirk Pranke  <dpranke@chromium.org>

        Unreviewed, expectations change - clean up some flakiness.

        * platform/chromium/test_expectations.txt:

2011-04-22  Ojan Vafai  <ojan@chromium.org>

        Reviewed by Eric Seidel.

        don't white-space:nowrap the results iframes
        https://bugs.webkit.org/show_bug.cgi?id=59259

        * fast/harness/results.html:

2011-04-22  Dirk Pranke  <dpranke@chromium.org>

        Unreviewed, expectations change. Roll in deps bots failures.

        * platform/chromium/test_expectations.txt:

2011-04-22  Chang Shu  <cshu@webkit.org>

        Reviewed by Kenneth Rohde Christiansen.

        WebKitTestRunner needs layoutTestController.setFrameFlatteningEnabled
        https://bugs.webkit.org/show_bug.cgi?id=42536

        Unskip passed tests.

        * platform/mac-wk2/Skipped:
        * platform/qt-wk2/Skipped:

2011-04-22  Xiaomei Ji  <xji@chromium.org>

        [QT] move-by-word-visually.html failed in QT.
        https://bugs.webkit.org/show_bug.cgi?id=59265

        Temporarily skip the test in QT while investigating.

        * platform/qt/Skipped:

2011-04-22  Alejandro G. Castro  <alex@igalia.com>

        Undo rebaseline done in r84677 for this test, it was a flaky
        execution.

        * platform/gtk/media/video-controls-rendering-expected.txt:

2011-04-22  Mahesh Kulkarni  <mahesh.kulkarni@nokia.com>

        Unreviewed: Updated bug ID for geolocation skipped cases

        * platform/mac-wk2/Skipped:
        * platform/qt-wk2/Skipped:

2011-04-22  Martin Robinson  <mrobinson@igalia.com>

        Reviewed by Xan Lopez.

        [GTK] fast/events/overflow-viewport-renderer-deleted.html crashes
        https://bugs.webkit.org/show_bug.cgi?id=58976

        * platform/gtk/Skipped: Unskip a test which is no longer crashing.

2011-04-22  Xiaomei Ji  <xji@chromium.org>

        Reviewed by Ryosuke Niwa.

        move caret by word in visual order returns wrong result when caret itself is at word boundary.
        https://bugs.webkit.org/show_bug.cgi?id=58504.

        Add test case to test moving left/right by word visually on every character position.
        Remove a specific test added before for testing a specific code path since the test case
        is covered now.

        * editing/selection/move-by-word-visually-expected.txt:
        * editing/selection/move-by-word-visually.html:

2011-04-22  Xiaomei Ji  <xji@chromium.org>

        Rebaseline after r84655.

        * platform/chromium-linux/fast/block/positioning/rtl-fixed-positioning-expected.png: Added.
        * platform/chromium-linux/fast/block/positioning/vertical-rl/fixed-positioning-expected.png: Added.
        * platform/chromium-mac-leopard/fast/block/positioning/rtl-fixed-positioning-expected.png: Added.
        * platform/chromium-mac/fast/block/positioning/rtl-fixed-positioning-expected.checksum: Added.
        * platform/chromium-mac/fast/block/positioning/vertical-rl: Added.
        * platform/chromium-mac/fast/block/positioning/vertical-rl/fixed-positioning-expected.checksum: Added.
        * platform/chromium-mac/fast/block/positioning/vertical-rl/fixed-positioning-expected.txt: Added.
        * platform/chromium-win/fast/block/positioning/rtl-fixed-positioning-expected.png: Added.
        * platform/chromium-win/fast/block/positioning/vertical-rl/fixed-positioning-expected.png: Added.
        * platform/chromium-win/fast/block/positioning/vertical-rl/fixed-positioning-expected.txt: Added.

2011-04-22  Xiaomei Ji  <xji@chromium.org>

        Rebase after r84659.

        * platform/chromium-linux/editing/deleting/table-cells-expected.png:
        * platform/chromium-linux/fast/forms/cursor-at-editable-content-boundary-expected.txt: Added.
        * platform/chromium-linux/fast/inline-block/14498-positionForCoordinates-expected.png:
        * platform/chromium-mac-leopard/editing/deleting/table-cells-expected.png:
        * platform/chromium-mac-leopard/fast/inline-block/14498-positionForCoordinates-expected.png:
        * platform/chromium-mac/editing/deleting/table-cells-expected.png: Added.
        * platform/chromium-mac/fast/inline-block/14498-positionForCoordinates-expected.png: Added.
        * platform/chromium-win/editing/deleting/table-cells-expected.png:
        * platform/chromium-win/fast/forms/cursor-at-editable-content-boundary-expected.txt: Added.
        * platform/chromium-win/fast/inline-block/14498-positionForCoordinates-expected.png:

2011-04-22  Eric Seidel  <eric@webkit.org>

        Reviewed by Eric Carlson.

        Flaky Test: media/invalid-media-url-crash.html
        https://bugs.webkit.org/show_bug.cgi?id=51138

        Add one more test to the list of known crashers from rdar://9054715.

        * platform/mac-snowleopard/Skipped:

2011-04-19  Jer Noble  <jer.noble@apple.com>

        Reviewed by Daniel Bates.

        Full Screen from within an <iframe> does not cause <iframe> to resize.
        https://bugs.webkit.org/show_bug.cgi?id=58638

        * fullscreen/full-screen-frameset-expected.txt: Added.
        * fullscreen/full-screen-frameset.html: Added.
        * fullscreen/content/inner.html: Added.
        * fullscreen/full-screen-iframe-allowed-expected.txt: Updated.
        * fullscreen/full-screen-iframe-allowed.html: Add a button with which to trigger
            full screen mode in Safari.
        * fullscreen/full-screen-iframe-not-allowed-expected.txt: Updated.
        * fullscreen/full-screen-iframe-not-allowed.html: Ditto.
        * fullscreen/resources/allowed.html: Added.
        * fullscreen/resources/inner.html: Added.

2011-04-22  Xiaomei Ji  <xji@chromium.org>

        Rebaseline after r84659.

        * platform/mac-wk2/fast/forms: Added.
        * platform/mac-wk2/fast/forms/cursor-at-editable-content-boundary-expected.txt: Added.
        * platform/win/fast/forms/cursor-at-editable-content-boundary-expected.txt: Added.

2011-04-22  Yael Aharon  <yael.aharon@nokia.com>

        Reviewed by Sam Weinig.

        HTMLFormControlElement::labels should allow custom attributes.
        https://bugs.webkit.org/show_bug.cgi?id=59128

        * fast/forms/labels-custom-property-expected.txt: Added.
        * fast/forms/labels-custom-property.html: Added.

2011-04-22  Csaba Osztrogonác  <ossy@webkit.org>

        [Qt] REGRESSION(r84296): platform/qt/fast/history/back-to-unreachable-url-then-forward.html fails
        https://bugs.webkit.org/show_bug.cgi?id=58977

        r84604 fixed the bug, so we can unskip it.

        * platform/qt/Skipped: Unskip platform/qt/fast/history/back-to-unreachable-url-then-forward.html.

2011-04-22  Roland Steiner  <rolandsteiner@chromium.org>

        Unreviewed: Updated Chromium expectations after WK r84606

        * platform/chromium-mac/fast/multicol/span/clone-anonymous-block-non-inline-child-crash-expected.txt:
        * platform/chromium-mac/fast/url/host-expected.txt: Removed.
        * platform/chromium-mac/fast/url/path-expected.txt: Removed.
        * platform/chromium-win/fast/multicol/span/clone-anonymous-block-non-inline-child-crash-expected.txt:
        * platform/chromium-win/fast/url/host-expected.txt: Removed.
        * platform/chromium-win/fast/url/path-expected.txt: Removed.

2011-04-22  Adam Barth  <abarth@webkit.org>

        Reviewed by Eric Seidel.

        CSP frame-src is missing
        https://bugs.webkit.org/show_bug.cgi?id=58643

        Update expected result to show that this test is passing now.

        * http/tests/security/contentSecurityPolicy/frame-src-blocked-expected.txt:

2011-04-22  Levi Weintraub  <leviw@chromium.org>

        Reviewed by Ryosuke Niwa.

        End/Home keys do not work in a contentEditable element
        https://bugs.webkit.org/show_bug.cgi?id=50564

        Fixing modifying selection by lineboundary (home/end) for editable contexts that are
        inline and share a line with non-editable content.

        * editing/selection/modify-by-lineboundary-in-inline-editable-contexts-expected.txt: Added.
        * editing/selection/modify-by-lineboundary-in-inline-editable-contexts.html: Added.
        * editing/selection/script-tests/modify-by-lineboundary-in-inline-editable-contexts.js: Added.
        (testModifyByLine):

2011-04-22  Dimitri Glazkov  <dglazkov@chromium.org>

        [Gtk] Update expectations after r84511.

        * platform/gtk/fast/html/details-add-summary-1-and-click-expected.txt:
        * platform/gtk/fast/html/details-add-summary-1-expected.txt:
        * platform/gtk/fast/html/details-add-summary-10-and-click-expected.txt:
        * platform/gtk/fast/html/details-add-summary-10-expected.txt:
        * platform/gtk/fast/html/details-add-summary-2-and-click-expected.txt:
        * platform/gtk/fast/html/details-add-summary-2-expected.txt:
        * platform/gtk/fast/html/details-add-summary-3-and-click-expected.txt:
        * platform/gtk/fast/html/details-add-summary-3-expected.txt:
        * platform/gtk/fast/html/details-add-summary-4-and-click-expected.txt:
        * platform/gtk/fast/html/details-add-summary-4-expected.txt:
        * platform/gtk/fast/html/details-add-summary-5-and-click-expected.txt:
        * platform/gtk/fast/html/details-add-summary-5-expected.txt:
        * platform/gtk/fast/html/details-add-summary-6-and-click-expected.txt:
        * platform/gtk/fast/html/details-add-summary-6-expected.txt:
        * platform/gtk/fast/html/details-add-summary-7-and-click-expected.txt:
        * platform/gtk/fast/html/details-add-summary-7-expected.txt:
        * platform/gtk/fast/html/details-add-summary-8-and-click-expected.txt:
        * platform/gtk/fast/html/details-add-summary-8-expected.txt:
        * platform/gtk/fast/html/details-add-summary-9-and-click-expected.txt:
        * platform/gtk/fast/html/details-add-summary-9-expected.txt:
        * platform/gtk/fast/html/details-no-summary1-expected.txt:
        * platform/gtk/fast/html/details-no-summary2-expected.txt:
        * platform/gtk/fast/html/details-no-summary3-expected.txt:
        * platform/gtk/fast/html/details-no-summary4-expected.txt:
        * platform/gtk/fast/html/details-open-javascript-expected.txt:
        * platform/gtk/fast/html/details-open1-expected.txt:
        * platform/gtk/fast/html/details-open2-expected.txt:
        * platform/gtk/fast/html/details-open3-expected.txt:
        * platform/gtk/fast/html/details-open4-expected.txt:
        * platform/gtk/fast/html/details-open5-expected.txt:
        * platform/gtk/fast/html/details-open6-expected.txt:
        * platform/gtk/fast/html/details-position-expected.txt:
        * platform/gtk/fast/html/details-remove-summary-1-and-click-expected.txt:
        * platform/gtk/fast/html/details-remove-summary-1-expected.txt:
        * platform/gtk/fast/html/details-remove-summary-2-and-click-expected.txt:
        * platform/gtk/fast/html/details-remove-summary-2-expected.txt:
        * platform/gtk/fast/html/details-remove-summary-3-and-click-expected.txt:
        * platform/gtk/fast/html/details-remove-summary-3-expected.txt:
        * platform/gtk/fast/html/details-remove-summary-4-and-click-expected.txt:
        * platform/gtk/fast/html/details-remove-summary-4-expected.txt:
        * platform/gtk/fast/html/details-remove-summary-5-and-click-expected.txt:
        * platform/gtk/fast/html/details-remove-summary-5-expected.txt:
        * platform/gtk/fast/html/details-remove-summary-6-and-click-expected.txt:
        * platform/gtk/fast/html/details-remove-summary-6-expected.txt:
        * platform/gtk/fast/html/details-writing-mode-expected.txt:
        * platform/gtk/media/video-controls-rendering-expected.txt:

2011-04-22  Tony Chang  <tony@chromium.org>

        Landing new baselines for plugins/embedded-attributes-style.html after
        border changes (r84273).

        https://bugs.webkit.org/show_bug.cgi?id=59068

        * platform/chromium-linux/plugins/embed-attributes-style-expected.png:
        * platform/chromium-win/plugins/embed-attributes-style-expected.png:
        * platform/chromium/test_expectations.txt:

2011-04-22  Csaba Osztrogonác  <ossy@webkit.org>

        [Qt] Update expected files after r84632.

        * platform/qt/fast/html/details-add-summary-1-and-click-expected.txt:
        * platform/qt/fast/html/details-add-summary-1-expected.txt:
        * platform/qt/fast/html/details-add-summary-10-and-click-expected.txt:
        * platform/qt/fast/html/details-add-summary-10-expected.txt:
        * platform/qt/fast/html/details-add-summary-2-and-click-expected.txt:
        * platform/qt/fast/html/details-add-summary-2-expected.txt:
        * platform/qt/fast/html/details-add-summary-3-and-click-expected.txt:
        * platform/qt/fast/html/details-add-summary-3-expected.txt:
        * platform/qt/fast/html/details-add-summary-4-and-click-expected.txt:
        * platform/qt/fast/html/details-add-summary-4-expected.txt:
        * platform/qt/fast/html/details-add-summary-5-and-click-expected.txt:
        * platform/qt/fast/html/details-add-summary-5-expected.txt:
        * platform/qt/fast/html/details-add-summary-6-and-click-expected.txt:
        * platform/qt/fast/html/details-add-summary-6-expected.txt:
        * platform/qt/fast/html/details-add-summary-7-and-click-expected.txt:
        * platform/qt/fast/html/details-add-summary-7-expected.txt:
        * platform/qt/fast/html/details-add-summary-8-and-click-expected.txt:
        * platform/qt/fast/html/details-add-summary-8-expected.txt:
        * platform/qt/fast/html/details-add-summary-9-and-click-expected.txt:
        * platform/qt/fast/html/details-add-summary-9-expected.txt:
        * platform/qt/fast/html/details-no-summary1-expected.txt:
        * platform/qt/fast/html/details-no-summary2-expected.txt:
        * platform/qt/fast/html/details-no-summary3-expected.txt:
        * platform/qt/fast/html/details-no-summary4-expected.txt:
        * platform/qt/fast/html/details-open-javascript-expected.txt:
        * platform/qt/fast/html/details-open1-expected.txt:
        * platform/qt/fast/html/details-open2-expected.txt:
        * platform/qt/fast/html/details-open3-expected.txt:
        * platform/qt/fast/html/details-open4-expected.txt:
        * platform/qt/fast/html/details-open5-expected.txt:
        * platform/qt/fast/html/details-open6-expected.txt:
        * platform/qt/fast/html/details-position-expected.txt:
        * platform/qt/fast/html/details-remove-summary-1-and-click-expected.txt:
        * platform/qt/fast/html/details-remove-summary-1-expected.txt:
        * platform/qt/fast/html/details-remove-summary-2-and-click-expected.txt:
        * platform/qt/fast/html/details-remove-summary-2-expected.txt:
        * platform/qt/fast/html/details-remove-summary-3-and-click-expected.txt:
        * platform/qt/fast/html/details-remove-summary-3-expected.txt:
        * platform/qt/fast/html/details-remove-summary-4-and-click-expected.txt:
        * platform/qt/fast/html/details-remove-summary-4-expected.txt:
        * platform/qt/fast/html/details-remove-summary-5-and-click-expected.txt:
        * platform/qt/fast/html/details-remove-summary-5-expected.txt:
        * platform/qt/fast/html/details-remove-summary-6-and-click-expected.txt:
        * platform/qt/fast/html/details-remove-summary-6-expected.txt:
        * platform/qt/fast/html/details-writing-mode-expected.txt:

2011-04-22  Sam Weinig  <sam@webkit.org>

        Reviewed by Gavin Barraclough and Oliver Hunt.

        Arrays should participate in global object forwarding fun
        https://bugs.webkit.org/show_bug.cgi?id=59215

        - Update results of prototype-inheritance-2 for new array behavior.
        - Remove checks for primitives, since they were incorrect.
        - Force function check to check a function not on a primitive (this
          wasn't happening by itself, since functions normally aren't enumerable
          in the DOM).
        - Add exception to the test to not try and test HTMLProgressElement, since
          it is not available on all platforms. This allows us to remove the windows
          specific results.

        * fast/dom/prototype-inheritance-2-expected.txt:
        * fast/dom/script-tests/prototype-inheritance-2.js:
        (constructorNamesForWindow):
        (crawl):
        * platform/win/fast/dom/prototype-inheritance-2-expected.txt: Removed.

2011-04-21  Geoffrey Garen  <ggaren@apple.com>

        Reviewed by Oliver Hunt.

        Removed a use of markDOMObjectWrapper: Element and Document
        https://bugs.webkit.org/show_bug.cgi?id=59178

        * fast/dom/dataset-gc-expected.txt:
        * fast/dom/script-tests/dataset-gc.js: Changed this test not to be
        specific to __proto__. We have a general bug in the DOM that assignment
        to __proto__ does not persist after garbage collection. While we should
        fix that bug, we don't want existing tests to tickle it, because it makes
        them flaky.

2011-04-22  Simon Fraser  <simon.fraser@apple.com>

        Reviewed by Dan Bernstein.

        Rounded corners don't looks smooth when background-image is a gradient
        https://bugs.webkit.org/show_bug.cgi?id=59213

        Testcase for rounded borders on an element with a gradient background.

        * fast/backgrounds/gradient-background-leakage.html: Added.
        * platform/mac/fast/backgrounds/gradient-background-leakage-expected.png: Added.
        * platform/mac/fast/backgrounds/gradient-background-leakage-expected.txt: Added.

2011-04-22  Mike Reed  <reed@google.com>

        Reviewed by Eric Seidel.

        Update expected images with new shadow code
        [chromium, win] Multiple failures of shadow rendering layout tests
        https://bugs.webkit.org/show_bug.cgi?id=58772

        * platform/chromium-linux/fast/multicol/shadow-breaking-expected.png:
        * platform/chromium-linux/svg/css/composite-shadow-text-expected.png:
        * platform/chromium-win-xp/fast/multicol/shadow-breaking-expected.png: Added.
        * platform/chromium-win-xp/fast/repaint/shadow-multiple-horizontal-expected.png: Added.
        * platform/chromium-win-xp/fast/repaint/shadow-multiple-strict-horizontal-expected.png: Added.
        * platform/chromium-win-xp/fast/repaint/shadow-multiple-strict-vertical-expected.png: Added.
        * platform/chromium-win-xp/fast/repaint/shadow-multiple-vertical-expected.png: Added.
        * platform/chromium-win-xp/fast/text/shadow-translucent-fill-expected.png: Added.
        * platform/chromium-win-xp/fast/transforms: Added.
        * platform/chromium-win-xp/fast/transforms/shadows-expected.png: Added.
        * platform/chromium-win-xp/svg/css: Added.
        * platform/chromium-win-xp/svg/css/group-with-shadow-expected.png: Added.
        * platform/chromium-win-xp/svg/css/text-shadow-multiple-expected.png: Added.
        * platform/chromium-win-xp/transitions: Added.
        * platform/chromium-win-xp/transitions/svg-text-shadow-transition-expected.png: Added.
        * platform/chromium-win/fast/multicol/shadow-breaking-expected.png:
        * platform/chromium-win/svg/css/composite-shadow-text-expected.png:
        * platform/chromium/test_expectations.txt:

2011-04-22  Xiaomei Ji  <xji@chromium.org>

        Reviewed by David Hyatt.

        Local caret rectangle calculation should be relative to its containing block.
        https://bugs.webkit.org/show_bug.cgi?id=49508.

        * fast/forms/cursor-at-editable-content-boundary-expected.txt: Added.
        * fast/forms/cursor-at-editable-content-boundary.html: Added.
        * platform/mac/fast/forms/cursor-at-editable-content-boundary-expected.txt: Added.

2011-04-22  Roland Steiner  <rolandsteiner@chromium.org>

        Unreviewed: update Chromium baselines.

        * platform/chromium-mac-leopard/svg/dynamic-updates/SVGFEDropShadowElement-dom-dx-attr-expected.png: Added.
        * platform/chromium-mac-leopard/svg/dynamic-updates/SVGFEDropShadowElement-dom-dy-attr-expected.png: Added.
        * platform/chromium-mac-leopard/svg/dynamic-updates/SVGFEDropShadowElement-dom-in-attr-expected.png: Added.
        * platform/chromium-mac-leopard/svg/dynamic-updates/SVGFEDropShadowElement-dom-shadow-color-attr-expected.png: Added.
        * platform/chromium-mac-leopard/svg/dynamic-updates/SVGFEDropShadowElement-dom-shadow-opacity-attr-expected.png: Added.
        * platform/chromium-mac-leopard/svg/dynamic-updates/SVGFEDropShadowElement-dom-stdDeviation-attr-expected.png: Added.
        * platform/chromium-mac-leopard/svg/dynamic-updates/SVGFEDropShadowElement-svgdom-dx-prop-expected.png: Added.
        * platform/chromium-mac-leopard/svg/dynamic-updates/SVGFEDropShadowElement-svgdom-dy-prop-expected.png: Added.
        * platform/chromium-mac-leopard/svg/dynamic-updates/SVGFEDropShadowElement-svgdom-in-prop-expected.png: Added.
        * platform/chromium-mac-leopard/svg/dynamic-updates/SVGFEDropShadowElement-svgdom-shadow-color-prop-expected.png: Added.
        * platform/chromium-mac-leopard/svg/dynamic-updates/SVGFEDropShadowElement-svgdom-shadow-opacity-prop-expected.png: Added.
        * platform/chromium-mac-leopard/svg/dynamic-updates/SVGFEDropShadowElement-svgdom-stdDeviation-prop-expected.png: Added.
        * platform/chromium-mac-leopard/svg/filters/feDropShadow-expected.png: Added.

2011-04-22  Tony Chang  <tony@chromium.org>

        Unreviewed, deleting remaining .checksum files.
        More will probably creep in over the next few days-- I'll do
        another pass in a week or so.

2011-04-22  Levi Weintraub  <leviw@chromium.org>

        Reviewed by Darin Fisher.

        REGRESSION: left property broken with position:fixed elements in RTL documents
        https://bugs.webkit.org/show_bug.cgi?id=59204
        http://code.google.com/p/chromium/issues/detail?id=80216

        Test to ensure position:fixed works properly in RTL documents.

        * fast/block/positioning/rtl-fixed-positioning.html: Added.
        * fast/block/positioning/vertical-rl/fixed-positioning.html: Added.
        * platform/mac/fast/block/positioning/rtl-fixed-positioning-expected.checksum: Added.
        * platform/mac/fast/block/positioning/rtl-fixed-positioning-expected.png: Added.
        * platform/mac/fast/block/positioning/rtl-fixed-positioning-expected.txt: Added.
        * platform/mac/fast/block/positioning/vertical-rl/fixed-positioning-expected.checksum: Added.
        * platform/mac/fast/block/positioning/vertical-rl/fixed-positioning-expected.png: Added.
        * platform/mac/fast/block/positioning/vertical-rl/fixed-positioning-expected.txt: Added.

2011-04-22  Roland Steiner  <rolandsteiner@chromium.org>

        Unreviewed: Chromium test expectations update.

        * platform/chromium/test_expectations.txt:

2011-04-22  Tony Chang  <tony@chromium.org>

        Unreviewed, deleting .checksum files in platform/mac.

2011-04-22  Sam Weinig  <sam@webkit.org>

        Fix windows test result.

        * platform/win/fast/dom/prototype-inheritance-2-expected.txt:

2011-04-22  Sam Weinig  <sam@webkit.org>

        Reviewed by Gavin Barraclough.

        Remove remaining uses of deprecated version of toJS
        https://bugs.webkit.org/show_bug.cgi?id=59170

        * fast/dom/prototype-inheritance-2-expected.txt:
        Add new passing results since we now use the correct global object. The remaining
        failures are pure JS objects (Array, Boolean, String, Number, Function).

2011-04-22  Tony Chang  <tony@chromium.org>

        Unreviewed, deleting .checksum files in platform/gtk and platform/qt*.

2011-04-22  Philippe Normand  <pnormand@igalia.com>

        Reviewed by Martin Robinson.

        [GTK] DRT: implement eventSender.scalePageBy
        https://bugs.webkit.org/show_bug.cgi?id=59082

        Unskipped tests that should pass now that
        eventSender.scalePageBy() is supported in GTK.

        * platform/gtk/Skipped:
        * platform/gtk/fast/repaint/scale-page-shrink-expected.checksum: Added.
        * platform/gtk/fast/repaint/scale-page-shrink-expected.png: Added.
        * platform/gtk/fast/repaint/scale-page-shrink-expected.txt: Added.

2011-04-21  MORITA Hajime  <morrita@google.com>

        Reviewed by Dimitri Glazkov.

        Content of <details> should be forwarded through the shadow DOM
        https://bugs.webkit.org/show_bug.cgi?id=59055

        * fast/html/details-add-child-1.html: Added.
        * fast/html/details-add-child-2.html: Added.
        * fast/html/details-remove-child-1.html: Added.
        * fast/html/details-remove-child-2.html: Added.
        * platform/chromium/test_expectations.txt:
        * platform/mac/fast/html/details-add-child-1-expected.checksum: Added.
        * platform/mac/fast/html/details-add-child-1-expected.png: Added.
        * platform/mac/fast/html/details-add-child-1-expected.txt: Added.
        * platform/mac/fast/html/details-add-child-2-expected.checksum: Added.
        * platform/mac/fast/html/details-add-child-2-expected.png: Added.
        * platform/mac/fast/html/details-add-child-2-expected.txt: Added.
        * platform/mac/fast/html/details-add-summary-1-and-click-expected.txt:
        * platform/mac/fast/html/details-add-summary-1-expected.txt:
        * platform/mac/fast/html/details-add-summary-10-and-click-expected.txt:
        * platform/mac/fast/html/details-add-summary-10-expected.txt:
        * platform/mac/fast/html/details-add-summary-2-and-click-expected.txt:
        * platform/mac/fast/html/details-add-summary-2-expected.txt:
        * platform/mac/fast/html/details-add-summary-3-and-click-expected.txt:
        * platform/mac/fast/html/details-add-summary-3-expected.txt:
        * platform/mac/fast/html/details-add-summary-4-and-click-expected.txt:
        * platform/mac/fast/html/details-add-summary-4-expected.txt:
        * platform/mac/fast/html/details-add-summary-5-and-click-expected.txt:
        * platform/mac/fast/html/details-add-summary-5-expected.txt:
        * platform/mac/fast/html/details-add-summary-6-and-click-expected.txt:
        * platform/mac/fast/html/details-add-summary-6-expected.txt:
        * platform/mac/fast/html/details-add-summary-7-and-click-expected.txt:
        * platform/mac/fast/html/details-add-summary-7-expected.txt:
        * platform/mac/fast/html/details-add-summary-8-and-click-expected.txt:
        * platform/mac/fast/html/details-add-summary-8-expected.txt:
        * platform/mac/fast/html/details-add-summary-9-and-click-expected.txt:
        * platform/mac/fast/html/details-add-summary-9-expected.txt:
        * platform/mac/fast/html/details-add-summary-child-1-expected.txt:
        * platform/mac/fast/html/details-add-summary-child-2-expected.txt:
        * platform/mac/fast/html/details-no-summary1-expected.txt:
        * platform/mac/fast/html/details-no-summary2-expected.txt:
        * platform/mac/fast/html/details-no-summary3-expected.txt:
        * platform/mac/fast/html/details-no-summary4-expected.txt:
        * platform/mac/fast/html/details-open-javascript-expected.txt:
        * platform/mac/fast/html/details-open1-expected.txt:
        * platform/mac/fast/html/details-open2-expected.txt:
        * platform/mac/fast/html/details-open3-expected.txt:
        * platform/mac/fast/html/details-open4-expected.txt:
        * platform/mac/fast/html/details-open5-expected.txt:
        * platform/mac/fast/html/details-open6-expected.txt:
        * platform/mac/fast/html/details-position-expected.txt:
        * platform/mac/fast/html/details-remove-child-1-expected.checksum: Added.
        * platform/mac/fast/html/details-remove-child-1-expected.png: Added.
        * platform/mac/fast/html/details-remove-child-1-expected.txt: Added.
        * platform/mac/fast/html/details-remove-child-2-expected.checksum: Added.
        * platform/mac/fast/html/details-remove-child-2-expected.png: Added.
        * platform/mac/fast/html/details-remove-child-2-expected.txt: Added.
        * platform/mac/fast/html/details-remove-summary-1-and-click-expected.txt:
        * platform/mac/fast/html/details-remove-summary-1-expected.txt:
        * platform/mac/fast/html/details-remove-summary-2-and-click-expected.txt:
        * platform/mac/fast/html/details-remove-summary-2-expected.txt:
        * platform/mac/fast/html/details-remove-summary-3-and-click-expected.txt:
        * platform/mac/fast/html/details-remove-summary-3-expected.txt:
        * platform/mac/fast/html/details-remove-summary-4-and-click-expected.txt:
        * platform/mac/fast/html/details-remove-summary-4-expected.txt:
        * platform/mac/fast/html/details-remove-summary-5-and-click-expected.txt:
        * platform/mac/fast/html/details-remove-summary-5-expected.txt:
        * platform/mac/fast/html/details-remove-summary-6-and-click-expected.txt:
        * platform/mac/fast/html/details-remove-summary-6-expected.txt:
        * platform/mac/fast/html/details-remove-summary-child-1-expected.txt:
        * platform/mac/fast/html/details-remove-summary-child-2-expected.txt:
        * platform/mac/fast/html/details-writing-mode-expected.txt:

2011-04-21  Simon Fraser  <simon.fraser@apple.com>

        Reviewed by Dan Bernstein.

        Extra GraphicsContext::save() in InlineTextBox::paintDecoration()
        https://bugs.webkit.org/show_bug.cgi?id=59109

        Testcase that exercises the fixed InlineTextBox::paintDecoration() code.

        * fast/text/multiple-text-shadow-alpha-expected.txt: Added.
        * fast/text/multiple-text-shadow-alpha.html: Added.

2011-04-22  Jessie Berlin  <jberlin@apple.com>

        Windows DRT needs an implementation of shadowRoot.
        https://bugs.webkit.org/show_bug.cgi?id=59081

        Add media/audio-controls-do-not-fade-out.html, which uses layoutTestController.shadowRoot
        to the win Skipped list to get the bots green.

        * platform/win/Skipped:

2011-04-22  Jessie Berlin  <jberlin@apple.com>

        Update the Windows-specific results after r84558.

        * platform/win/fast/dom/prototype-inheritance-2-expected.txt:

2011-04-22  Pavel Podivilov  <podivilov@chromium.org>

        Reviewed by Pavel Feldman.

        Web Inspector: fix de-obfuscation of scripts inlined in html.
        https://bugs.webkit.org/show_bug.cgi?id=58538

        * inspector/debugger/resources/obfuscated.js:
        * inspector/debugger/script-formatter-expected.txt:
        * inspector/debugger/script-formatter.html: Renamed from LayoutTests/inspector/debugger/script-formatter.html-disabled.

2011-04-22  Mikhail Naganov  <mnaganov@chromium.org>

        Reviewed by Pavel Feldman.

        Web Inspector: [Chromium] Refactor code prior to moving detailed heap snapshots into workers.
        https://bugs.webkit.org/show_bug.cgi?id=59189

        * inspector/profiler/detailed-heapshots-comparison-sorting.html:
        * inspector/profiler/detailed-heapshots-test.js:
        (initialize_DetailedHeapshotTest):
        (initialize_DetailedHeapshotTest.):
        * inspector/profiler/heap-snapshot-expected.txt:
        * inspector/profiler/heap-snapshot.html:

2011-04-22  Csaba Osztrogonác  <ossy@webkit.org>

        [WK2] CSP reporting doesn't work
        https://bugs.webkit.org/show_bug.cgi?id=59192

        * platform/mac-wk2/Skipped: Add http/tests/security/contentSecurityPolicy/report-uri-from-child-frame.html.

2011-04-22  Csaba Osztrogonác  <ossy@webkit.org>

        [Qt]fast/url/idna tests fail
        https://bugs.webkit.org/show_bug.cgi?id=59187

        * platform/qt/Skipped: Add fast/url/idna2003.html and fast/url/idna2008.html.
        * platform/qt/fast/url/path-expected.txt: Update after r84606.

2011-04-22  Dan Bernstein  <mitz@apple.com>

        Reviewed by Maciej Stachowiak.

        <rdar://problem/9322486> REGRESSION (r83397): Default controls fade out when playing audio-only media
        https://bugs.webkit.org/show_bug.cgi?id=59180

        * media/audio-controls-do-not-fade-out-expected.txt: Added.
        * media/audio-controls-do-not-fade-out.html: Added.

2011-04-22  Ojan Vafai  <ojan@chromium.org>

        Reviewed by Eric Seidel.

        address maciej's styling feedback for results.html page
        https://bugs.webkit.org/show_bug.cgi?id=59165

        * fast/harness/results.html:

2011-04-21  Chris Weber  <chris@lookout.net>

        Reviewed by Adam Barth.

        Add more test coverage to fast/url
        https://bugs.webkit.org/show_bug.cgi?id=59142

        The PASS/FAIL results for host, path, and port are set to match
        Chromium.  The PASS/FAIL results for idna2003 and idna2008 are set to
        match those specifications.

        * fast/url/host-expected.txt:
        * fast/url/idna2003-expected.txt: Added.
        * fast/url/idna2003.html: Added.
        * fast/url/idna2008-expected.txt: Added.
        * fast/url/idna2008.html: Added.
        * fast/url/path-expected.txt:
        * fast/url/port-expected.txt:
        * fast/url/script-tests/host.js:
        * fast/url/script-tests/idna2003.js: Added.
        * fast/url/script-tests/idna2008.js: Added.
        * fast/url/script-tests/path.js:
        * fast/url/script-tests/port.js:

2011-04-21  Beth Dakin  <bdakin@apple.com>

        Reviewed by Dan Bernstein.

        https://bugs.webkit.org/show_bug.cgi?id=57898
        REGRESSION (r82185): Scroll position not restored on navigation back to a page in
        the page cache
        -and corresponding-
        <rdar://problem/9226652>

        * fast/loader/scroll-position-restored-on-back-non-cached-expected.txt: Added.
        * fast/loader/scroll-position-restored-on-back-non-cached.html: Added.

2011-04-21  Chris Fleizach  <cfleizach@apple.com>

        Reviewed by Beth Dakin.

        WebKit is erroneously modifying the DOM; adding 'aria-selected' to tables
        https://bugs.webkit.org/show_bug.cgi?id=59140

        * accessibility/aria-combobox.html:
        * platform/mac/accessibility/aria-combobox-expected.txt:
        * platform/mac/accessibility/aria-slider-value-change-expected.txt:
        * platform/mac/accessibility/aria-slider-value-change.html:

2011-04-21  Dirk Pranke  <dpranke@chromium.org>

        Unreviewed, expectations change - new baselines needed as
        a result of r84589.

        * platform/chromium/test_expectations.txt:

2011-04-21  Dirk Pranke  <dpranke@chromium.org>

        Unreviewed, expectations change. Triage failure for
        media/video-zoom.html on chromium gpu bots.

        * platform/chromium/test_expectations.txt:

2011-04-21  Dirk Pranke  <dpranke@chromium.org>

        Unreviewed, expectations change. Suppress failures on chromium
        win/linux from bug 59166.

        * platform/chromium/test_expectations.txt:

2011-04-21  Dimitri Glazkov  <dglazkov@chromium.org>

        Reviewed by Adele Peterson.

        REGRESSION (r83386): Typing in WSJ.com search field doesn't clear placeholder text
        https://bugs.webkit.org/show_bug.cgi?id=59053

        * fast/events/shadow-boundary-crossing-expected.txt: Updated expected results.
        * fast/events/shadow-boundary-crossing.html: Added new sub-test.

2011-04-21  Dirk Pranke  <dpranke@chromium.org>

        Unreviwed, expecations change. Pick up chromium-win baselines
        for r84522.

        * platform/chromium-win/svg/dynamic-updates/SVGFEDropShadowElement-dom-dx-attr-expected.png: Added.
        * platform/chromium-win/svg/dynamic-updates/SVGFEDropShadowElement-dom-dy-attr-expected.png: Added.
        * platform/chromium-win/svg/dynamic-updates/SVGFEDropShadowElement-dom-in-attr-expected.png: Added.
        * platform/chromium-win/svg/dynamic-updates/SVGFEDropShadowElement-dom-shadow-color-attr-expected.png: Added.
        * platform/chromium-win/svg/dynamic-updates/SVGFEDropShadowElement-dom-shadow-opacity-attr-expected.png: Added.
        * platform/chromium-win/svg/dynamic-updates/SVGFEDropShadowElement-dom-stdDeviation-attr-expected.png: Added.
        * platform/chromium-win/svg/dynamic-updates/SVGFEDropShadowElement-svgdom-dx-prop-expected.png: Added.
        * platform/chromium-win/svg/dynamic-updates/SVGFEDropShadowElement-svgdom-dy-prop-expected.png: Added.
        * platform/chromium-win/svg/dynamic-updates/SVGFEDropShadowElement-svgdom-in-prop-expected.png: Added.
        * platform/chromium-win/svg/dynamic-updates/SVGFEDropShadowElement-svgdom-shadow-color-prop-expected.png: Added.
        * platform/chromium-win/svg/dynamic-updates/SVGFEDropShadowElement-svgdom-shadow-opacity-prop-expected.png: Added.
        * platform/chromium-win/svg/dynamic-updates/SVGFEDropShadowElement-svgdom-stdDeviation-prop-expected.png: Added.
        * platform/chromium-win/svg/filters/feDropShadow-expected.png: Added.

2011-04-21  Dirk Pranke  <dpranke@chromium.org>

        Unreviewed, expectations change.

        Suppress failures possibly caused by bug 59158 on chromium win/linux:
        fast/canvas/canvas-stroke{Path,Rect}-alpha-shadow.html = TEXT

        * platform/chromium/test_expectations.txt:

2011-04-21  Ojan Vafai  <ojan@chromium.org>

        Reviewed by Tony Chang.

        move json_results.html over to LayoutTests/fast/harness
        https://bugs.webkit.org/show_bug.cgi?id=59154

        * fast/harness/resources/results-test.js:
        * fast/harness/results-expected.txt: Added.
        * fast/harness/results.html: Added.

2011-04-21  Dirk Pranke  <dpranke@chromium.org>

        Update baselines to accomodate the change in r84506. I wonder
        how much having platform/mac in the search path hurts
        chromium-win/-linux.

        * platform/chromium-win/canvas/philip/tests/toDataURL.jpeg.alpha-expected.txt: Added.

2011-04-21  Matthew Delaney  <mdelaney@apple.com>

        Reviewed by Simon Fraser.

        Move canvas test set-colors.html expected results out of platform/mac-leopard and into platform/mac
        This test expected result pertains to all of mac, not just leopard.
        https://bugs.webkit.org/show_bug.cgi?id=59139

        * platform/mac-leopard/fast/canvas/set-colors-expected.txt: Removed.
        * platform/mac/fast/canvas/set-colors-expected.txt: Copied from LayoutTests/platform/mac-leopard/fast/canvas/set-colors-expected.txt.

2011-04-21  Tony Chang  <tony@chromium.org>

        Embed checksums in more png files.  Not sure how these were missed earlier.

        * animations/missing-values-first-keyframe-expected.png:
        * animations/missing-values-last-keyframe-expected.png:
        * animations/opacity-transform-animation-expected.png:
        * animations/suspend-transform-animation-expected.png:
        * compositing/backface-visibility-expected.png:
        * compositing/checkerboard-expected.png:
        * compositing/geometry/ancestor-overflow-change-expected.png:
        * compositing/geometry/tall-page-composited-expected.png:
        * compositing/iframes/composited-iframe-scroll-expected.png:
        * compositing/iframes/iframe-content-flipping-expected.png:
        * compositing/iframes/nested-iframe-scrolling-expected.png:
        * compositing/images/direct-pdf-image-expected.png:
        * compositing/images/direct-svg-image-expected.png:
        * compositing/overflow/zero-size-overflow-expected.png:
        * compositing/reflections/backface-hidden-reflection-expected.png:
        * compositing/reflections/remove-add-reflection-expected.png:
        * compositing/tiling/constrained-layer-size-expected.png:
        * compositing/z-order/negative-z-index-expected.png:
        * transforms/3d/general/cssmatrix-3d-zoom-expected.png:
        * transforms/3d/general/matrix-with-zoom-3d-expected.png:
        * transitions/suspend-transform-transition-expected.png:

2011-04-21  Dirk Pranke  <dpranke@chromium.org>

        Unreviewed, expectations change - update chromium SVG baselines
        after r84522.

        * platform/chromium/fast/dom/prototype-inheritance-expected.txt:

2011-04-21  Dirk Pranke  <dpranke@chromium.org>

        Unreviewed, expectations change - update chromium SVG baselines
        after r84522.

        * platform/chromium-linux/svg/dynamic-updates/SVGFEDropShadowElement-dom-dx-attr-expected.png: Added.
        * platform/chromium-linux/svg/dynamic-updates/SVGFEDropShadowElement-dom-dy-attr-expected.png: Added.
        * platform/chromium-linux/svg/dynamic-updates/SVGFEDropShadowElement-dom-in-attr-expected.png: Added.
        * platform/chromium-linux/svg/dynamic-updates/SVGFEDropShadowElement-dom-shadow-color-attr-expected.png: Added.
        * platform/chromium-linux/svg/dynamic-updates/SVGFEDropShadowElement-dom-shadow-opacity-attr-expected.png: Added.
        * platform/chromium-linux/svg/dynamic-updates/SVGFEDropShadowElement-dom-stdDeviation-attr-expected.png: Added.
        * platform/chromium-linux/svg/dynamic-updates/SVGFEDropShadowElement-svgdom-dx-prop-expected.png: Added.
        * platform/chromium-linux/svg/dynamic-updates/SVGFEDropShadowElement-svgdom-dy-prop-expected.png: Added.
        * platform/chromium-linux/svg/dynamic-updates/SVGFEDropShadowElement-svgdom-in-prop-expected.png: Added.
        * platform/chromium-linux/svg/dynamic-updates/SVGFEDropShadowElement-svgdom-shadow-color-prop-expected.png: Added.
        * platform/chromium-linux/svg/dynamic-updates/SVGFEDropShadowElement-svgdom-shadow-opacity-prop-expected.png: Added.
        * platform/chromium-linux/svg/dynamic-updates/SVGFEDropShadowElement-svgdom-stdDeviation-prop-expected.png: Added.
        * platform/chromium-linux/svg/filters/feDropShadow-expected.png: Added.
        * platform/chromium-mac/svg/dynamic-updates/SVGFEDropShadowElement-dom-shadow-color-attr-expected.png: Added.
        * platform/chromium-mac/svg/dynamic-updates/SVGFEDropShadowElement-dom-shadow-opacity-attr-expected.png: Added.
        * platform/chromium-mac/svg/dynamic-updates/SVGFEDropShadowElement-svgdom-shadow-color-prop-expected.png: Added.
        * platform/chromium-mac/svg/dynamic-updates/SVGFEDropShadowElement-svgdom-shadow-opacity-prop-expected.png: Added.
        * platform/chromium-mac/svg/filters/feDropShadow-expected.png: Added.

2011-04-21  Geoffrey Garen  <ggaren@apple.com>

        Reviewed by Sam Weinig.

        Fixed a failure seen in fast/dom/prototype-inheritance-2.html due to
        wrong global object use.

        * fast/dom/prototype-inheritance-2-expected.txt: Expect success!

2011-04-21  Dirk Pranke  <dpranke@chromium.org>

        Unreviewed, expectations change - flaky tests.

        * platform/chromium/test_expectations.txt:

2011-04-21  Adam Barth  <abarth@webkit.org>

        Update test results to show that we're using ogv.  I would have
        preferred to make this test independent of which video codec we have,
        but I didn't see a way to do that.

        * platform/chromium/http/tests/security/contentSecurityPolicy/media-src-blocked-expected.txt: Added.
        * platform/chromium/media/csp-blocks-video-expected.txt: Added.
        * platform/chromium/test_expectations.txt:

2011-04-21  Tony Chang  <tony@chromium.org>

        Unreviewed, deleting .checksum files in platform/chromium*

2011-04-21  Tony Chang  <tony@chromium.org>

        Unreviewed, embedding checksums in png files not in LayoutTests/platform.

2011-04-21  Dirk Schulze  <krit@webkit.org>

        Uneviewed rebaseline of win.

        SVG feDropShadow implementation of SVG Filters 1.2
        https://bugs.webkit.org/show_bug.cgi?id=52513

        * platform/win/fast/dom/Window/window-property-descriptors-expected.txt:
        * platform/win/fast/dom/prototype-inheritance-2-expected.txt:
        * platform/win/fast/dom/prototype-inheritance-expected.txt:
        * platform/win/fast/js/global-constructors-expected.txt:

2011-04-21  Martin Robinson  <mrobinson@igalia.com>

        [GTK] DRT: implement eventSender.scalePageBy
        https://bugs.webkit.org/show_bug.cgi?id=59082

        Rolling out r84507 since it broke many GTK+ tests.

        * platform/gtk/Skipped:
        * platform/gtk/fast/repaint/scale-page-shrink-expected.checksum: Removed.
        * platform/gtk/fast/repaint/scale-page-shrink-expected.png: Removed.
        * platform/gtk/fast/repaint/scale-page-shrink-expected.txt: Removed.

2011-04-21  Dirk Schulze  <krit@webkit.org>

        Unreviewed rebaseline.

        SVG feDropShadow implementation of SVG Filters 1.2
        https://bugs.webkit.org/show_bug.cgi?id=52513

        * fast/dom/Window/window-properties-expected.txt:
        * fast/dom/Window/window-property-descriptors-expected.txt:
        * fast/dom/prototype-inheritance-2-expected.txt:
        * fast/dom/prototype-inheritance-expected.txt:
        * fast/js/global-constructors-expected.txt:

2011-04-21  Csaba Osztrogonác  <ossy@webkit.org>

        [Qt] Unreviewed. Update expected files after r84522.

        * platform/qt/fast/dom/Window/window-properties-expected.txt:
        * platform/qt/fast/dom/Window/window-property-descriptors-expected.txt:
        * platform/qt/fast/dom/prototype-inheritance-expected.txt:
        * platform/qt/fast/js/global-constructors-expected.txt:

2011-04-21  Roland Steiner  <rolandsteiner@chromium.org>

        Unreviewed: skip tests on Windows.

        fast/dom/shadow/layout-tests-can-access-shadow.html is failing on Windows
        https://bugs.webkit.org/show_bug.cgi?id=59081

        Skip all tests in fast/dom/shadow on Windows.
        (shadowRoot accessor is not implemented on Windows yet)

        * platform/win/Skipped:

2011-04-21  Dirk Pranke  <dpranke@chromium.org>

        Unreviewed, expectations change.

        Roll in downstream failures as of Chromium r82532.

        * platform/chromium/test_expectations.txt:

2011-04-21  Roland Steiner  <rolandsteiner@chromium.org>

        Reviewed by Kent Tamura.

        Bug 59012 - Shadows should be imported along with their host nodes
        https://bugs.webkit.org/show_bug.cgi?id=59012

        Verify that the shadow of a bound element is imported along with the element.

        * fast/dom/shadow/import-shadowroot-expected.txt: Added.
        * fast/dom/shadow/import-shadowroot.html: Added.

2011-04-21  Dirk Schulze  <krit@webkit.org>

        Reviewed by Nikolas Zimmermann.

        SVG feDropShadow implementation of SVG Filters 1.2
        https://bugs.webkit.org/show_bug.cgi?id=52513

        Added dynamic update tests for FEDropShadow as well as a basic pixel test.

        * platform/mac/svg/dynamic-updates/SVGFEDropShadowElement-dom-dx-attr-expected.checksum: Added.
        * platform/mac/svg/dynamic-updates/SVGFEDropShadowElement-dom-dx-attr-expected.png: Added.
        * platform/mac/svg/dynamic-updates/SVGFEDropShadowElement-dom-dy-attr-expected.checksum: Added.
        * platform/mac/svg/dynamic-updates/SVGFEDropShadowElement-dom-dy-attr-expected.png: Added.
        * platform/mac/svg/dynamic-updates/SVGFEDropShadowElement-dom-in-attr-expected.checksum: Added.
        * platform/mac/svg/dynamic-updates/SVGFEDropShadowElement-dom-in-attr-expected.png: Added.
        * platform/mac/svg/dynamic-updates/SVGFEDropShadowElement-dom-shadow-color-attr-expected.checksum: Added.
        * platform/mac/svg/dynamic-updates/SVGFEDropShadowElement-dom-shadow-color-attr-expected.png: Added.
        * platform/mac/svg/dynamic-updates/SVGFEDropShadowElement-dom-shadow-opacity-attr-expected.checksum: Added.
        * platform/mac/svg/dynamic-updates/SVGFEDropShadowElement-dom-shadow-opacity-attr-expected.png: Added.
        * platform/mac/svg/dynamic-updates/SVGFEDropShadowElement-dom-stdDeviation-attr-expected.checksum: Added.
        * platform/mac/svg/dynamic-updates/SVGFEDropShadowElement-dom-stdDeviation-attr-expected.png: Added.
        * platform/mac/svg/dynamic-updates/SVGFEDropShadowElement-svgdom-dx-prop-expected.checksum: Added.
        * platform/mac/svg/dynamic-updates/SVGFEDropShadowElement-svgdom-dx-prop-expected.png: Added.
        * platform/mac/svg/dynamic-updates/SVGFEDropShadowElement-svgdom-dy-prop-expected.checksum: Added.
        * platform/mac/svg/dynamic-updates/SVGFEDropShadowElement-svgdom-dy-prop-expected.png: Added.
        * platform/mac/svg/dynamic-updates/SVGFEDropShadowElement-svgdom-in-prop-expected.checksum: Added.
        * platform/mac/svg/dynamic-updates/SVGFEDropShadowElement-svgdom-in-prop-expected.png: Added.
        * platform/mac/svg/dynamic-updates/SVGFEDropShadowElement-svgdom-shadow-color-prop-expected.checksum: Added.
        * platform/mac/svg/dynamic-updates/SVGFEDropShadowElement-svgdom-shadow-color-prop-expected.png: Added.
        * platform/mac/svg/dynamic-updates/SVGFEDropShadowElement-svgdom-shadow-opacity-prop-expected.checksum: Added.
        * platform/mac/svg/dynamic-updates/SVGFEDropShadowElement-svgdom-shadow-opacity-prop-expected.png: Added.
        * platform/mac/svg/dynamic-updates/SVGFEDropShadowElement-svgdom-stdDeviation-prop-expected.checksum: Added.
        * platform/mac/svg/dynamic-updates/SVGFEDropShadowElement-svgdom-stdDeviation-prop-expected.png: Added.
        * platform/mac/svg/filters/feDropShadow-expected.checksum: Added.
        * platform/mac/svg/filters/feDropShadow-expected.png: Added.
        * platform/mac/svg/filters/feDropShadow-expected.txt: Added.
        * svg/dynamic-updates/SVGFEDropShadowElement-dom-dx-attr-expected.txt: Added.
        * svg/dynamic-updates/SVGFEDropShadowElement-dom-dx-attr.html: Added.
        * svg/dynamic-updates/SVGFEDropShadowElement-dom-dy-attr-expected.txt: Added.
        * svg/dynamic-updates/SVGFEDropShadowElement-dom-dy-attr.html: Added.
        * svg/dynamic-updates/SVGFEDropShadowElement-dom-in-attr-expected.txt: Added.
        * svg/dynamic-updates/SVGFEDropShadowElement-dom-in-attr.html: Added.
        * svg/dynamic-updates/SVGFEDropShadowElement-dom-shadow-color-attr-expected.txt: Added.
        * svg/dynamic-updates/SVGFEDropShadowElement-dom-shadow-color-attr.html: Added.
        * svg/dynamic-updates/SVGFEDropShadowElement-dom-shadow-opacity-attr-expected.txt: Added.
        * svg/dynamic-updates/SVGFEDropShadowElement-dom-shadow-opacity-attr.html: Added.
        * svg/dynamic-updates/SVGFEDropShadowElement-dom-stdDeviation-attr-expected.txt: Added.
        * svg/dynamic-updates/SVGFEDropShadowElement-dom-stdDeviation-attr.html: Added.
        * svg/dynamic-updates/SVGFEDropShadowElement-svgdom-dx-prop-expected.txt: Added.
        * svg/dynamic-updates/SVGFEDropShadowElement-svgdom-dx-prop.html: Added.
        * svg/dynamic-updates/SVGFEDropShadowElement-svgdom-dy-prop-expected.txt: Added.
        * svg/dynamic-updates/SVGFEDropShadowElement-svgdom-dy-prop.html: Added.
        * svg/dynamic-updates/SVGFEDropShadowElement-svgdom-in-prop-expected.txt: Added.
        * svg/dynamic-updates/SVGFEDropShadowElement-svgdom-in-prop.html: Added.
        * svg/dynamic-updates/SVGFEDropShadowElement-svgdom-shadow-color-prop-expected.txt: Added.
        * svg/dynamic-updates/SVGFEDropShadowElement-svgdom-shadow-color-prop.html: Added.
        * svg/dynamic-updates/SVGFEDropShadowElement-svgdom-shadow-opacity-prop-expected.txt: Added.
        * svg/dynamic-updates/SVGFEDropShadowElement-svgdom-shadow-opacity-prop.html: Added.
        * svg/dynamic-updates/SVGFEDropShadowElement-svgdom-stdDeviation-prop-expected.txt: Added.
        * svg/dynamic-updates/SVGFEDropShadowElement-svgdom-stdDeviation-prop.html: Added.
        * svg/dynamic-updates/SVGFETurbulenceElement-svgdom-numOctaves-prop.html:
        * svg/dynamic-updates/SVGFETurbulenceElement-svgdom-seed-prop.html:
        * svg/dynamic-updates/SVGFETurbulenceElement-svgdom-stitchTiles-prop.html:
        * svg/dynamic-updates/SVGFETurbulenceElement-svgdom-type-prop.html:
        * svg/dynamic-updates/script-tests/SVGFEDropShadowElement-dom-dx-attr.js: Added.
        (executeTest):
        * svg/dynamic-updates/script-tests/SVGFEDropShadowElement-dom-dy-attr.js: Added.
        (executeTest):
        * svg/dynamic-updates/script-tests/SVGFEDropShadowElement-dom-in-attr.js: Added.
        (executeTest):
        * svg/dynamic-updates/script-tests/SVGFEDropShadowElement-dom-shadow-color-attr.js: Added.
        (executeTest):
        * svg/dynamic-updates/script-tests/SVGFEDropShadowElement-dom-shadow-opacity-attr.js: Added.
        (executeTest):
        * svg/dynamic-updates/script-tests/SVGFEDropShadowElement-dom-stdDeviation-attr.js: Added.
        (executeTest):
        * svg/dynamic-updates/script-tests/SVGFEDropShadowElement-svgdom-dx-prop.js: Added.
        (executeTest):
        * svg/dynamic-updates/script-tests/SVGFEDropShadowElement-svgdom-dy-prop.js: Added.
        (executeTest):
        * svg/dynamic-updates/script-tests/SVGFEDropShadowElement-svgdom-in-prop.js: Added.
        (executeTest):
        * svg/dynamic-updates/script-tests/SVGFEDropShadowElement-svgdom-shadow-color-prop.js: Added.
        (executeTest):
        * svg/dynamic-updates/script-tests/SVGFEDropShadowElement-svgdom-shadow-opacity-prop.js: Added.
        (executeTest):
        * svg/dynamic-updates/script-tests/SVGFEDropShadowElement-svgdom-stdDeviation-prop.js: Added.
        (executeTest):
        * svg/filters/feDropShadow.svg: Added.

2011-04-21  MORITA Hajime  <morrita@google.com>

        Unreviewed expectations update following r84511.

        * platform/gtk/fast/html/details-open2-expected.txt:
        * platform/qt/fast/html/details-open2-expected.txt:

2011-04-20  Roland Steiner  <rolandsteiner@chromium.org>

        Reviewed by Dimitri Glazkov.

        Bug 58704 - Decide on node type for ShadowRoot
        https://bugs.webkit.org/show_bug.cgi?id=58704

        Test node types of shadow host, shadow root and first shadow child.

        * fast/dom/shadow/nodetype-expected.txt: Added.
        * fast/dom/shadow/nodetype.html: Added.

2011-04-20  Dimitri Glazkov  <dglazkov@chromium.org>

        Reviewed by Kent Tamura.

        REGRESSION (r75543): Styles bleed into new shadow DOM (like slider and video)
        https://bugs.webkit.org/show_bug.cgi?id=52917

        * fast/css/shadow-dom-scope-expected.txt: Added.
        * fast/css/shadow-dom-scope.html: Added.

2011-04-21  Levi Weintraub  <leviw@chromium.org>

        Reviewed by Simon Fraser.

        position fixed element does not render properly when dynamically updated via javascript
        https://bugs.webkit.org/show_bug.cgi?id=54297

        Disabling the LayoutState fast-path for fixed-position content.

        * fast/repaint/fixed-contents-changed-after-scroll.html: Added.
        * fast/repaint/transformed-contents-changed-after-scroll.html: Added.
        * platform/mac/fast/repaint/fixed-contents-changed-after-scroll-expected.checksum: Added.
        * platform/mac/fast/repaint/fixed-contents-changed-after-scroll-expected.png: Added.
        * platform/mac/fast/repaint/fixed-contents-changed-after-scroll-expected.txt: Added.
        * platform/mac/fast/repaint/transformed-contents-changed-after-scroll-expected.checksum: Added.
        * platform/mac/fast/repaint/transformed-contents-changed-after-scroll-expected.png: Added.
        * platform/mac/fast/repaint/transformed-contents-changed-after-scroll-expected.txt: Added.

2011-04-21  Tony Chang  <tony@chromium.org>

        Unreviewed.  Fixed the last set of tests that are missing pngs.
        Created new png baselines on my Leopard machine.

        * platform/chromium-mac-leopard/fast/blockflow/english-bt-text-expected.checksum: Removed.
        * platform/chromium-mac-leopard/fast/blockflow/english-bt-text-expected.png: Added.
        * platform/chromium-mac-leopard/fast/borders/svg-as-border-image-expected.checksum: Removed.
        * platform/chromium-mac-leopard/fast/borders/svg-as-border-image-expected.png: Added.
        * platform/chromium-mac-leopard/fast/css/background-shorthand-invalid-url-expected.checksum: Removed.
        * platform/chromium-mac-leopard/fast/css/background-shorthand-invalid-url-expected.png: Added.
        * platform/chromium-mac-leopard/fast/css/value-list-out-of-bounds-crash-expected.checksum: Removed.
        * platform/chromium-mac-leopard/fast/css/value-list-out-of-bounds-crash-expected.png: Added.
        * platform/chromium-mac-leopard/svg/custom/group-opacity-expected.checksum: Removed.
        * platform/chromium-mac-leopard/svg/custom/group-opacity-expected.png: Added.
        * platform/chromium-mac-leopard/svg/custom/image-with-transform-clip-filter-expected.checksum: Removed.
        * platform/chromium-mac-leopard/svg/custom/image-with-transform-clip-filter-expected.png: Added.
        * platform/chromium-mac/editing/selection/extend-by-word-002-expected.checksum: Removed. Matches platform/mac.
        * platform/chromium/test_expectations.txt:

2011-04-20  MORITA Hajime  <morrita@google.com>

        Reviewed by Dimitri Glazkov.

        Content of <summary> should be forwarded through the shadow DOM
        https://bugs.webkit.org/show_bug.cgi?id=58914

        - Added test cases for dynamic DOM change.
        - Updated expectations details-open2.html because generated RenderTree slightly changed.

        * fast/html/details-add-summary-child-1.html: Added.
        * fast/html/details-add-summary-child-2.html: Added.
        * fast/html/details-remove-summary-child-1.html: Added.
        * fast/html/details-remove-summary-child-2.html: Added.
        * platform/chromium/test_expectations.txt:
        * platform/mac/fast/html/details-add-summary-child-1-expected.checksum: Added.
        * platform/mac/fast/html/details-add-summary-child-1-expected.png: Added.
        * platform/mac/fast/html/details-add-summary-child-1-expected.txt: Added.
        * platform/mac/fast/html/details-add-summary-child-2-expected.checksum: Added.
        * platform/mac/fast/html/details-add-summary-child-2-expected.png: Added.
        * platform/mac/fast/html/details-add-summary-child-2-expected.txt: Added.
        * platform/mac/fast/html/details-open2-expected.txt:
        * platform/mac/fast/html/details-remove-summary-child-1-expected.checksum: Added.
        * platform/mac/fast/html/details-remove-summary-child-1-expected.png: Added.
        * platform/mac/fast/html/details-remove-summary-child-1-expected.txt: Added.
        * platform/mac/fast/html/details-remove-summary-child-2-expected.checksum: Added.
        * platform/mac/fast/html/details-remove-summary-child-2-expected.png: Added.
        * platform/mac/fast/html/details-remove-summary-child-2-expected.txt: Added.

2011-04-20  Matthew Delaney  <mdelaney@apple.com>

        Reviewed by Maciej Stachowiak.

        arc() should add a circle to the path when start and end angles are far enough apart
        https://bugs.webkit.org/show_bug.cgi?id=58934

        * fast/canvas/canvas_arc_largeangles-expected.txt: Added.
        * fast/canvas/canvas_arc_largeangles.html: Added.

2011-04-20  Matthew Delaney  <mdelaney@apple.com>

        Reviewed by Adam Roben.

        Move toDataURL.jpeg.alpha expected result out of /mac-snowleopard and into /mac
        https://bugs.webkit.org/show_bug.cgi?id=59038

        * platform/mac-snowleopard/canvas/philip/tests/toDataURL.jpeg.alpha-expected.txt: Removed.
        * platform/mac/canvas/philip/tests/toDataURL.jpeg.alpha-expected.txt: Copied from LayoutTests/platform/mac-snowleopard/canvas/philip/tests/toDataURL.jpeg.alpha-expected.txt.

2011-04-21  Philippe Normand  <pnormand@igalia.com>

        Reviewed by Martin Robinson.

        [GTK] missing LayoutTestController::callShouldCloseOnWebView()
        https://bugs.webkit.org/show_bug.cgi?id=59086

        * platform/gtk/Skipped: Unskip fast/events/onbeforeunload-focused-iframe.html

2011-04-21  Philippe Normand  <pnormand@igalia.com>

        Reviewed by Martin Robinson.

        [GTK] DRT: implement eventSender.scalePageBy
        https://bugs.webkit.org/show_bug.cgi?id=59082

        Unskipped tests that should pass now that
        eventSender.scalePageBy() is supported in GTK.

        * platform/gtk/Skipped:
        * platform/gtk/fast/repaint/scale-page-shrink-expected.checksum: Added.
        * platform/gtk/fast/repaint/scale-page-shrink-expected.png: Added.
        * platform/gtk/fast/repaint/scale-page-shrink-expected.txt: Added.

2011-04-21  Adam Barth  <abarth@webkit.org>

        Update results to show failure.

        * http/tests/security/contentSecurityPolicy/frame-src-blocked-expected.txt:

2011-04-21  Tony Gentilcore  <tonyg@chromium.org>

        [chromium] inspector/console/console-log-before-inspector-open.html times out on mac
        https://bugs.webkit.org/show_bug.cgi?id=59106

        Seems to have started timing out in 84470-84471 which were expectations
        updates.

        * platform/chromium/test_expectations.txt:

2011-04-21  Adam Barth  <abarth@webkit.org>

        Reviewed by Tony Gentilcore.

        Make test robust to PHP magic quotes
        https://bugs.webkit.org/show_bug.cgi?id=59104

        * http/tests/security/contentSecurityPolicy/report-uri-expected.txt:
        * http/tests/security/contentSecurityPolicy/report-uri-from-child-frame-expected.txt:
        * http/tests/security/contentSecurityPolicy/resources/save-report.php:

2011-04-21  Tony Gentilcore  <tonyg@chromium.org>

        [chromium] Temporarily skip new contentSecurityPolicy tests
        https://bugs.webkit.org/show_bug.cgi?id=59103

        Tests introduced by http://trac.webkit.org/changeset/84478

        * platform/chromium/test_expectations.txt:

2011-04-20  Andrey Kosyakov  <caseq@chromium.org>

        Reviewed by Pavel Feldman.

        Expose console API to the code evaluated by sidebar.setExpression()

        Web Inspector: [Extensions API] console API is not exposed to code evaluated by sidebar.setExpression()
        https://bugs.webkit.org/show_bug.cgi?id=59006

        * inspector/extensions/extensions-expected.txt:
        * inspector/extensions/extensions.html:

2011-04-21  Tony Gentilcore  <tonyg@chromium.org>

        [chromium] Correct expecations for editing/selection/designmode-no-caret.html
        https://bugs.webkit.org/show_bug.cgi?id=59088

        Straighten out bad override in designmode-no-caret.html

        * platform/chromium/test_expectations.txt:

2011-04-21  Adam Roben  <aroben@apple.com>

        Skip some newly-failing tests on Windows

        <http://webkit.org/b/59098> and <http://webkit.org/b/59099> track the failures.

        * platform/win/Skipped: Added fast/transforms/selection-bounds-in-transformed-view.html and
        http/tests/security/contentSecurityPolicy/frame-src-blocked.html.

2011-04-21  Tony Gentilcore  <tonyg@chromium.org>

        BitmapImage::destroyMetadataAndNotify should clear m_checkedForSolidColor
        https://bugs.webkit.org/show_bug.cgi?id=58926

        Remove chromium's crashing expectations.

        * platform/chromium/test_expectations.txt:

2011-04-21  Tony Gentilcore  <tonyg@chromium.org>

        [chromium] Correct expecations for editing/selection/designmode-no-caret.html
        https://bugs.webkit.org/show_bug.cgi?id=59088

        http://trac.webkit.org/changeset/84470 seemed to have caused a conflict. This
        has always been failing on Win Debug.

        * platform/chromium/test_expectations.txt:

2011-04-21  Csaba Osztrogonác  <ossy@webkit.org>

        [Qt][WK2] Unreviewed.

        REGRESSION (WK2): Animated GIF stops when navigating forward, back
        https://bugs.webkit.org/show_bug.cgi?id=59042

        * platform/qt-wk2/Skipped: Add fast/images/animated-gif-restored-from-bfcache.html,
        because WebKit2 since it doesn't implement layoutTestController.overridePreference().

2011-04-21  Philippe Normand  <pnormand@igalia.com>

        Unreviewed, GTK baselines for test added in r84398.

        * platform/gtk/fast/borders/bidi-012-expected.checksum: Added.
        * platform/gtk/fast/borders/bidi-012-expected.png: Added.
        * platform/gtk/fast/borders/bidi-012-expected.txt: Added.

2011-04-21  Philippe Normand  <pnormand@igalia.com>

        Unreviewed, GTK baselines for
        http/tests/security/contentSecurityPolicy tests that don't escape
        the quote character.

        * platform/gtk/http/tests/security/contentSecurityPolicy/report-uri-expected.txt: Added.
        * platform/gtk/http/tests/security/contentSecurityPolicy/report-uri-from-child-frame-expected.txt: Added.

2011-04-21  Csaba Osztrogonác  <ossy@webkit.org>

        [Qt] Missing eventSender.scalePageBy() implementation

        * platform/qt/Skipped: Add fast/transforms/selection-bounds-in-transformed-view.html.

2011-04-21  Adam Barth  <abarth@webkit.org>

        Reviewed by Eric Seidel.

        CSP report-uri is missing
        https://bugs.webkit.org/show_bug.cgi?id=58639

        Test that report-uri sends a report.  Testing approach stolen from the
        ping tests.

        * http/tests/security/contentSecurityPolicy/report-uri-expected.txt: Added.
        * http/tests/security/contentSecurityPolicy/report-uri.html: Added.
        * http/tests/security/contentSecurityPolicy/resources/echo-report.php: Added.
        * http/tests/security/contentSecurityPolicy/resources/go-to-echo-report.js: Added.
        * http/tests/security/contentSecurityPolicy/resources/save-report.php: Added.

2011-04-21  Philippe Normand  <pnormand@igalia.com>

        Unreviewed, skip
        fast/transforms/selection-bounds-in-transformed-view.html on GTK as it
        depends on eventSender.scalePageBy().

        * platform/gtk/Skipped:

2011-04-21  Yuta Kitamura  <yutak@chromium.org>

        Unreviewed, skip fast/dom/shadow/layout-tests-can-access-shadow.html on Windows.

        fast/dom/shadow/layout-tests-can-access-shadow.html is failing on Windows
        https://bugs.webkit.org/show_bug.cgi?id=59081

        * platform/win/Skipped:

2011-04-21  Alexey Proskuryakov  <ap@apple.com>

        Reviewed by Dan Bernstein.

        REGRESSION: Korean encoding alias KSC5601 does not work
        https://bugs.webkit.org/show_bug.cgi?id=59075
        <rdar://problem/9303233>

        * fast/encoding/char-decoding-expected.txt:
        * fast/encoding/char-decoding.html:
        Added tests for KSC_5601 (which worked, but wasn't tested), and KSC5601 (which was broken).

2011-04-20  Dominic Cooney  <dominicc@chromium.org>

        Reviewed by Dimitri Glazkov.

        layoutTestController can create and destroy shadow DOM
        https://bugs.webkit.org/show_bug.cgi?id=59058

        Exercise the new layoutTestController methods.

        * fast/dom/shadow/layout-tests-can-access-shadow-expected.txt: Added.
        * fast/dom/shadow/layout-tests-can-access-shadow.html: Added.

2011-04-20  Dirk Pranke  <dpranke@chromium.org>

        Make video/image-zoom fail on GPU on all ports.

        * platform/chromium/test_expectations.txt:

2011-04-20  Dirk Pranke  <dpranke@chromium.org>

        Unreviewed, expectations change.

        * platform/chromium/test_expectations.txt:

2011-04-20  Dirk Pranke  <dpranke@chromium.org>

        Unreviewed, expectations change.

        Add test failures for r84454, r84457, flakiness on deps bots.

        * platform/chromium/test_expectations.txt:

2011-04-20  Dirk Pranke  <dpranke@chromium.org>

        Unreviewed, expectations change.

        Suppress failures for inspector/debugger/live-edit.html
        and inspector/console/console-object-constructor-name.html

        * platform/chromium/test_expectations.txt:

2011-04-20  Dirk Pranke  <dpranke@chromium.org>

        Unreviewed, expectations change.

        Suppress failures for media/csp-blocks-video.html and
        plugins/embed-attributes-style.html

        * platform/chromium/test_expectations.txt:

2011-04-20  Adam Barth  <abarth@webkit.org>

        Reviewed by Eric Seidel.

        CSP frame-src is missing
        https://bugs.webkit.org/show_bug.cgi?id=58643

        Tests the basic functionality of frame-src.

        * http/tests/security/contentSecurityPolicy/frame-src-allowed-expected.txt: Added.
        * http/tests/security/contentSecurityPolicy/frame-src-allowed.html: Added.
        * http/tests/security/contentSecurityPolicy/frame-src-blocked-expected.txt: Added.
        * http/tests/security/contentSecurityPolicy/frame-src-blocked.html: Added.
        * http/tests/security/contentSecurityPolicy/resources/alert-fail.html: Added.
        * http/tests/security/contentSecurityPolicy/resources/alert-pass.html: Added.

2011-04-20  Dirk Pranke  <dpranke@chromium.org>

        Unreviewed, expectations change.

        * platform/chromium/test_expectations.txt:

2011-04-20  Adam Barth  <abarth@webkit.org>

        Reviewed by Eric Seidel.

        CSP policy violations should log to the console
        https://bugs.webkit.org/show_bug.cgi?id=58646

        Now with console messages.  I had to split a bunch of these tests into
        smaller pieces to avoid race conditions in the new test output.

        * http/tests/security/contentSecurityPolicy/directive-parsing-expected.txt:
        * http/tests/security/contentSecurityPolicy/eval-scripts-setInterval-blocked-expected.txt:
        * http/tests/security/contentSecurityPolicy/eval-scripts-setTimeout-blocked-expected.txt:
        * http/tests/security/contentSecurityPolicy/image-blocked-expected.txt:
        * http/tests/security/contentSecurityPolicy/inline-script-blocked-expected.txt:
        * http/tests/security/contentSecurityPolicy/inline-script-blocked-goofy-expected.txt:
        * http/tests/security/contentSecurityPolicy/inline-script-blocked-goofy.html:
        * http/tests/security/contentSecurityPolicy/inline-script-blocked-javascript-url-expected.txt: Added.
        * http/tests/security/contentSecurityPolicy/inline-script-blocked-javascript-url.html: Copied from LayoutTests/http/tests/security/contentSecurityPolicy/inline-script-blocked-goofy.html.
        * http/tests/security/contentSecurityPolicy/javascript-url-allowed-expected.txt: Copied from LayoutTests/http/tests/security/contentSecurityPolicy/eval-scripts-setTimeout-blocked-expected.txt.
        * http/tests/security/contentSecurityPolicy/javascript-url-allowed.html: Added.
        * http/tests/security/contentSecurityPolicy/javascript-url-blocked-expected.txt: Added.
        * http/tests/security/contentSecurityPolicy/javascript-url-blocked.html: Added.
        * http/tests/security/contentSecurityPolicy/javascript-url-expected.txt: Removed.
        * http/tests/security/contentSecurityPolicy/javascript-url.html: Removed.
        * http/tests/security/contentSecurityPolicy/media-src-blocked-expected.txt:
        * http/tests/security/contentSecurityPolicy/object-src-none-allowed-expected.txt: Added.
        * http/tests/security/contentSecurityPolicy/object-src-none-allowed.html: Copied from LayoutTests/http/tests/security/contentSecurityPolicy/object-src-none.html.
        * http/tests/security/contentSecurityPolicy/object-src-none-blocked-expected.txt: Added.
        * http/tests/security/contentSecurityPolicy/object-src-none-blocked.html: Renamed from LayoutTests/http/tests/security/contentSecurityPolicy/object-src-none.html.
        * http/tests/security/contentSecurityPolicy/object-src-none-expected.txt: Removed.
        * http/tests/security/contentSecurityPolicy/script-src-none-expected.txt:
        * http/tests/security/contentSecurityPolicy/script-src-none-inline-event-expected.txt:
        * http/tests/security/contentSecurityPolicy/script-src-redirect-expected.txt:
        * http/tests/security/contentSecurityPolicy/script-src-self-blocked-01-expected.txt: Added.
        * http/tests/security/contentSecurityPolicy/script-src-self-blocked-01.html: Added.
        * http/tests/security/contentSecurityPolicy/script-src-self-blocked-02-expected.txt: Added.
        * http/tests/security/contentSecurityPolicy/script-src-self-blocked-02.html: Added.
        * http/tests/security/contentSecurityPolicy/script-src-self-blocked-03-expected.txt: Added.
        * http/tests/security/contentSecurityPolicy/script-src-self-blocked-03.html: Added.
        * http/tests/security/contentSecurityPolicy/script-src-self-expected.txt:
        * http/tests/security/contentSecurityPolicy/script-src-self.html:
        * http/tests/security/contentSecurityPolicy/source-list-parsing-expected.txt:
        * http/tests/security/contentSecurityPolicy/style-blocked-expected.txt:
        * http/tests/security/contentSecurityPolicy/xsl-blocked-expected.txt:
        * media/csp-blocks-video-expected.txt:

2011-04-20  Andy Estes  <aestes@apple.com>

        fast/images/animated-gif-restored-from-bfcache.html fails on Windows bots
        https://bugs.webkit.org/show_bug.cgi?id=59062

        * platform/win/Skipped:

2011-04-20  Dan Bernstein  <mitz@apple.com>

        Reviewed by Maciej Stachowiak.

        <rdar://problem/9095366> With a non-1 page scale, scrolling to reveal selection fails
        https://bugs.webkit.org/show_bug.cgi?id=59046

        * fast/transforms/selection-bounds-in-transformed-view-expected.txt: Added.
        * fast/transforms/selection-bounds-in-transformed-view.html: Added.

2011-04-20  Dirk Pranke  <dpranke@chromium.org>

        Unreviewed, expectations change.

        Merge forward more suppressions from the chromium overrides
        file.

        * platform/chromium/test_expectations.txt:

2011-04-20  Andy Estes  <aestes@apple.com>

        Reviewed by Maciej Stachowiak.

        REGRESSION (WK2): Animated GIF stops when navigating forward, back
        https://bugs.webkit.org/show_bug.cgi?id=59042

        * fast/images/animated-gif-restored-from-bfcache-expected.txt: Added.
        * fast/images/animated-gif-restored-from-bfcache.html: Added.
        * fast/images/resources/animated-10color.gif: Added.
        * platform/mac-wk2/Skipped: Sadly, this test for a WebKit2-specific fix
        has to be skipped for now on WebKit2 since it doesn't implement
        layoutTestController.overridePreference().

2011-04-20  Dimitri Glazkov  <dglazkov@chromium.org>

        Reviewed by Kent Tamura.

        REGRESSION(r82376): Clicking on a label, associated with a disabled input element changes state of the element.
        https://bugs.webkit.org/show_bug.cgi?id=59037

        * fast/events/simulated-click-disabled-expected.txt: Added.
        * fast/events/simulated-click-disabled.html: Added.

2011-04-20  Dirk Pranke  <dpranke@chromium.org>

        Pull in more flaky expectations.

        * platform/chromium/test_expectations.txt:

2011-04-20  Dirk Pranke  <dpranke@chromium.org>

        Unreviewed, expectations change. Pull in expectations from
        overrides file.

        * platform/chromium/test_expectations.txt:

2011-04-20  Tony Chang  <tony@chromium.org>

        Update 2 more tests that are missing png files.

        * platform/chromium-mac/fast/borders/borderRadiusDotted06-expected.checksum: Removed.
        * platform/chromium-mac/fast/borders/borderRadiusDotted06-expected.png: Added. png with embedded checksum pulled from the bot.
        * platform/chromium-win/compositing/repaint/become-overlay-composited-layer-expected.checksum: Removed. This file is not used since we don't
            run compositing tests w/CPU rendering and there's a GPU result in chromium-gpu-win.
        * platform/chromium/test_expectations.txt:  Remove these tests.

2011-04-20  Jian Li  <jianli@chromium.org>

        Unreviewed, fixed typo in the failed test added to chromium test
        expectations.

        * platform/chromium/test_expectations.txt:

2011-04-20  Tony Chang  <tony@chromium.org>

        More .checksum file cleanup.

        * fast/css/background-clip-values-expected.checksum: Removed. This is a duplicate of the .checksum
            file in platform/mac.
        * platform/mac-leopard/fast/backgrounds/size/contain-and-cover-expected.checksum: Correct checksum by
            regenerating on my leopard machine.
        * platform/mac-leopard/fast/backgrounds/size/contain-and-cover-expected.png: Added.

2011-04-20  Xiaomei Ji  <xji@chromium.org>

        Reviewed by Ryosuke Niwa.

        Continue (3rd) experiment with moving caret by word in visual order.
        https://bugs.webkit.org/show_bug.cgi?id=58294

        * editing/selection/move-by-word-visually-expected.txt:
        * editing/selection/move-by-word-visually.html:

2011-04-20  Cris Neckar  <cdn@chromium.org>

        Reviewed by Dirk Schulze.

        Tests for crash when copying a filter effect after applying tranforms.
        https://bugs.webkit.org/show_bug.cgi?id=57885

        * svg/filters/svg-transform-blur-crash-expected.txt: Added.
        * svg/filters/svg-transform-blur-crash.xhtml: Added.

2011-04-20  Jian Li  <jianli@chromium.org>

        Reviewed by Kenneth Russell.

        Support DataView in workers
        https://bugs.webkit.org/show_bug.cgi?id=59014

        * fast/canvas/webgl/resources/worker-data-view-test.js: Added.
        * fast/canvas/webgl/worker-data-view-test-expected.txt: Added.
        * fast/canvas/webgl/worker-data-view-test.html: Added.
        * platform/chromium/test_expectations.txt:

2011-04-20  Tony Chang  <tony@chromium.org>

        Cleanup .checksum files that don't have .png files.

        If the test is marked as failing, just delete the .checksum file.
        If the test is marked as passing, put it in test_expectations.txt so
        the bots will generate results.

        * platform/chromium-mac-leopard/fast/borders/border-radius-split-inline-expected.checksum: Removed.
        * platform/chromium-mac-leopard/fast/repaint/positioned-document-element-expected.checksum: Removed.
        * platform/chromium-mac-leopard/fast/text/basic/014-expected.checksum: Removed.
        * platform/chromium-mac/fast/dom/HTMLMeterElement/meter-appearances-capacity-expected.checksum: Removed.
        * platform/chromium-mac/fast/dom/HTMLMeterElement/meter-element-expected.checksum: Removed.
        * platform/chromium-mac/fast/dom/HTMLMeterElement/meter-optimums-expected.checksum: Removed.
        * platform/chromium-mac/fast/dom/HTMLMeterElement/meter-styles-changing-pseudo-expected.checksum: Removed.
        * platform/chromium-mac/fast/dom/HTMLMeterElement/meter-styles-expected.checksum: Removed.
        * platform/chromium-mac/fast/forms/input-appearance-bkcolor-expected.checksum: Removed.
        * platform/chromium-mac/fast/images/imagemap-focus-ring-expected.checksum: Removed.
        * platform/chromium-mac/tables/mozilla/core/misc-expected.checksum: Removed.
        * platform/chromium-win/fast/forms/searchfield-heights-expected.checksum: Removed.
        * platform/chromium/test_expectations.txt:

2011-04-20  Dirk Pranke  <dpranke@chromium.org>

        Unreviewed, fix duplicate expectations.

        * platform/chromium/test_expectations.txt:

2011-04-20  Tony Chang  <tony@chromium.org>

        Unreviewed, embedding checksums in png files in platform/mac.

2011-04-20  Robert Hogan  <robert@webkit.org>

        Reviewed by Antonio Gomes.

        [Qt] DRT sideeffect revealed by r63657 and r75305
        https://bugs.webkit.org/show_bug.cgi?id=42578

        Unskip tests passing since r76958

        The NetworkAccessManager's authentication cache is getting
        cleared now on every page load, so these no longer leak
        credentials between tests.

        * platform/qt/Skipped:

2011-03-07  Victoria Kirst  <vrk@google.com>

        Reviewed by Mihai Parparita.

        Make LayoutTests robust to latency btwn playing event and frame rendering
        https://bugs.webkit.org/show_bug.cgi?id=55918

        * media/controls-after-reload.html:
        * media/controls-without-preload.html:
        * media/video-paint-test.js:
        * platform/chromium/test_expectations.txt:

2011-04-20  Taiju TSUIKI  <tzik@google.com>

        Reviewed by David Levin.

        Add overwrite copy/move tests for FileSystem API
        https://bugs.webkit.org/show_bug.cgi?id=58864

        * fast/filesystem/op-copy-expected.txt:
        * fast/filesystem/op-move-expected.txt:
        * fast/filesystem/resources/op-copy.js:
        * fast/filesystem/resources/op-move.js:

2011-04-20  Tony Chang  <tony@chromium.org>

        Unreviewed, embedding checksums in png files in platform/chromium-linux*.

2011-04-20  Yael Aharon  <yael.aharon@nokia.com>

        Unreviewed.

        Adjust Windows results after r84398.

        * platform/win/fast/borders: Added.
        * platform/win/fast/borders/bidi-012-expected.txt: Added.

2011-04-20  Tony Chang  <tony@chromium.org>

        Unreviewed, embedding checksums in png files in platform/chromium-win*.

2011-04-20  Yael Aharon  <yael.aharon@nokia.com>

        Reviewed by Eric Seidel.

        Replace bidi-004.html with its new version.
        https://bugs.webkit.org/show_bug.cgi?id=58984

        * fast/borders/bidi-004.html: Removed.
        * fast/borders/bidi-012.html: Added.
        * platform/chromium-linux/fast/borders/bidi-004-expected.png: Removed.
        * platform/chromium-mac-leopard/fast/borders/bidi-004-expected.png: Removed.
        * platform/chromium-win/fast/borders/bidi-004-expected.png: Removed.
        * platform/chromium-win/fast/borders/bidi-004-expected.txt: Removed.
        * platform/gtk/fast/borders/bidi-004-expected.checksum: Removed.
        * platform/gtk/fast/borders/bidi-004-expected.png: Removed.
        * platform/gtk/fast/borders/bidi-004-expected.txt: Removed.
        * platform/mac/fast/borders/bidi-004-expected.checksum: Removed.
        * platform/mac/fast/borders/bidi-004-expected.png: Removed.
        * platform/mac/fast/borders/bidi-004-expected.txt: Removed.
        * platform/mac/fast/borders/bidi-012-expected.checksum: Added.
        * platform/mac/fast/borders/bidi-012-expected.png: Added.
        * platform/mac/fast/borders/bidi-012-expected.txt: Added.

2011-04-20  Csaba Osztrogonác  <ossy@webkit.org>

        Unreviewed typo fix.

        * platform/qt-wk2/Skipped:

2011-04-20  Tony Chang  <tony@chromium.org>

        Unreviewed, embedding checksums in png files in platform/google*,
        platform/chromium-gpu*, platform/chromium-mac*.

2011-04-20  Tony Chang  <tony@chromium.org>

        Unreviewed, embedding checksums in png files in platform/mac-*.

2011-04-20  Csaba Osztrogonác  <ossy@webkit.org>

        [Qt][WK2] WebProcess crashes intermittently: "FAIL: TestControllerRunLoop timed out."

        * platform/qt-wk2/Skipped: Add http/tests/security/contentSecurityPolicy/media-src-blocked.html.

2011-04-20  Csaba Osztrogonác  <ossy@webkit.org>

        [Qt][WK2] Skip new failing tests.

        * platform/qt-wk2/Skipped:

2011-04-20  Matthew Delaney  <mdelaney@apple.com>

        Reviewed by Dan Bernstein.

        Update fast/canvas/font-update.html to use dumpAsText.
        https://bugs.webkit.org/show_bug.cgi?id=59003

        * fast/canvas/font-update-expected.txt:
        * fast/canvas/font-update.html: This test is only useful as a pixel test. Dumping the render tree will always show the same thing regardless of what's done on the canvas in the test. However, with new render tree schemes (canvases in layers and such) the render trees will even look different but not actually failing what the test tests.

2011-04-20  Mike Reed  <reed@google.com>

        Reviewed by Steve Block.

        prepare tests for rebaselining
        https://bugs.webkit.org/show_bug.cgi?id=58989

        * platform/chromium/test_expectations.txt:

2011-04-20  Tony Chang  <tony@chromium.org>

        Fixed lint errors in test_expectations.txt.

        * platform/chromium/test_expectations.txt:

2011-04-20  John Knottenbelt  <jknotten@chromium.org>

        Unreviewed.

        [Chromium] Remove crash expectation for http/tests/local/formdata/send-form-data-with-sliced-file.html
        https://bugs.webkit.org/show_bug.cgi?id=59004

        * platform/chromium/test_expectations.txt:

2011-04-20  John Knottenbelt  <jknotten@chromium.org>

        Unreviewed.

        [Chromium] Adjust test expectations.
        https://bugs.webkit.org/show_bug.cgi?id=59002

        * platform/chromium/test_expectations.txt:

2011-04-20  Adam Roben  <aroben@apple.com>

        Add Windows 7 SP1 baselines for some SVG tests that progressed in SP1

        These baselines were previously thought to be WebKit2-specific. However, it turned out that
        the WebKit2 bots had Windows 7 SP1 installed, while the WebKit1 bots just had Windows 7
        installed, and that was the crucial difference. So this patch reclassifies the new baselines
        as being SP1 vs. not-SP1, rather than WK2 vs. WK1. I also added pixel results.

        Fixes <http://webkit.org/b/56617> Several tests fail on Windows 7 SP1 due to font
        differences from Windows 7 "SP0"

        * platform/win-7sp0/svg/W3C-I18N/text-dirLTR-ubOverride-expected.checksum:
        * platform/win-7sp0/svg/W3C-I18N/text-dirLTR-ubOverride-expected.png:
        * platform/win-7sp0/svg/W3C-I18N/text-dirLTR-ubOverride-expected.txt:
        * platform/win-7sp0/svg/W3C-I18N/tspan-dirLTR-ubOverride-in-default-context-expected.checksum:
        * platform/win-7sp0/svg/W3C-I18N/tspan-dirLTR-ubOverride-in-default-context-expected.png:
        * platform/win-7sp0/svg/W3C-I18N/tspan-dirLTR-ubOverride-in-default-context-expected.txt:
        * platform/win-7sp0/svg/W3C-I18N/tspan-dirLTR-ubOverride-in-ltr-context-expected.checksum:
        * platform/win-7sp0/svg/W3C-I18N/tspan-dirLTR-ubOverride-in-ltr-context-expected.png:
        * platform/win-7sp0/svg/W3C-I18N/tspan-dirLTR-ubOverride-in-ltr-context-expected.txt:
        * platform/win-7sp0/svg/W3C-I18N/tspan-dirNone-ubOverride-in-default-context-expected.checksum:
        * platform/win-7sp0/svg/W3C-I18N/tspan-dirNone-ubOverride-in-default-context-expected.png:
        * platform/win-7sp0/svg/W3C-I18N/tspan-dirNone-ubOverride-in-default-context-expected.txt:
        * platform/win-7sp0/svg/W3C-I18N/tspan-dirNone-ubOverride-in-ltr-context-expected.checksum:
        * platform/win-7sp0/svg/W3C-I18N/tspan-dirNone-ubOverride-in-ltr-context-expected.png:
        * platform/win-7sp0/svg/W3C-I18N/tspan-dirNone-ubOverride-in-ltr-context-expected.txt:
        * platform/win-7sp0/svg/text/bidi-text-query-expected.checksum:
        * platform/win-7sp0/svg/text/bidi-text-query-expected.png:
        * platform/win-7sp0/svg/text/bidi-text-query-expected.txt:
        Copied these results from platform/win.

        * platform/win-wk2/svg/W3C-I18N/text-dirLTR-ubOverride-expected.txt:
        * platform/win-wk2/svg/W3C-I18N/tspan-dirLTR-ubOverride-in-default-context-expected.txt:
        * platform/win-wk2/svg/W3C-I18N/tspan-dirLTR-ubOverride-in-ltr-context-expected.txt:
        * platform/win-wk2/svg/W3C-I18N/tspan-dirNone-ubOverride-in-default-context-expected.txt:
        * platform/win-wk2/svg/W3C-I18N/tspan-dirNone-ubOverride-in-ltr-context-expected.txt:
        * platform/win-wk2/svg/text/bidi-text-query-expected.txt:
        Moved these results to platform/win.

        * platform/win/svg/W3C-I18N/text-dirLTR-ubOverride-expected.checksum:
        * platform/win/svg/W3C-I18N/text-dirLTR-ubOverride-expected.png:
        * platform/win/svg/W3C-I18N/text-dirLTR-ubOverride-expected.txt:
        * platform/win/svg/W3C-I18N/tspan-dirLTR-ubOverride-in-default-context-expected.checksum:
        * platform/win/svg/W3C-I18N/tspan-dirLTR-ubOverride-in-default-context-expected.png:
        * platform/win/svg/W3C-I18N/tspan-dirLTR-ubOverride-in-default-context-expected.txt:
        * platform/win/svg/W3C-I18N/tspan-dirLTR-ubOverride-in-ltr-context-expected.checksum:
        * platform/win/svg/W3C-I18N/tspan-dirLTR-ubOverride-in-ltr-context-expected.png:
        * platform/win/svg/W3C-I18N/tspan-dirLTR-ubOverride-in-ltr-context-expected.txt:
        * platform/win/svg/W3C-I18N/tspan-dirNone-ubOverride-in-default-context-expected.checksum:
        * platform/win/svg/W3C-I18N/tspan-dirNone-ubOverride-in-default-context-expected.png:
        * platform/win/svg/W3C-I18N/tspan-dirNone-ubOverride-in-default-context-expected.txt:
        * platform/win/svg/W3C-I18N/tspan-dirNone-ubOverride-in-ltr-context-expected.checksum:
        * platform/win/svg/W3C-I18N/tspan-dirNone-ubOverride-in-ltr-context-expected.png:
        * platform/win/svg/W3C-I18N/tspan-dirNone-ubOverride-in-ltr-context-expected.txt:
        * platform/win/svg/text/bidi-text-query-expected.checksum:
        * platform/win/svg/text/bidi-text-query-expected.png:
        * platform/win/svg/text/bidi-text-query-expected.txt:
        The .txt files came from platform/win-wk2, and the .png/.checksum files were
        newly-generated.

2011-04-20  Martin Robinson  <mrobinson@igalia.com>

        platform/gtk/fast/dom/gc-10-expected.png is corrupt
        https://bugs.webkit.org/show_bug.cgi?id=58940

        Remove expected results for fast/dom/gc-10.html since it is crashing on GTK+.

        * platform/gtk/fast/dom/gc-10-expected.checksum: Removed.
        * platform/gtk/fast/dom/gc-10-expected.png: Removed.
        * platform/gtk/fast/dom/gc-10-expected.txt: Removed.

2011-04-20  John Knottenbelt  <jknotten@chromium.org>

        Unreviewed.

        [Chromium] Mark css2.1/t140201-c533-bgimage-00-a.html as crash on Linux, Win Debug
        https://bugs.webkit.org/show_bug.cgi?id=58995

        Accidentally indicated MAC instead of WIN.

        * platform/chromium/test_expectations.txt:

2011-04-20  John Knottenbelt  <jknotten@chromium.org>

        Unreviewed.

        [Chromium] Mark css2.1/t140201-c533-bgimage-00-a.html as crash on Linux, Win Debug
        https://bugs.webkit.org/show_bug.cgi?id=58995

        * platform/chromium/test_expectations.txt:

2011-04-20  Jessie Berlin  <jberlin@apple.com>

        [Snow Leopard Intel WebKit2 Release Tests] editing/execCommand/convert-style-elements-to-spans.html
        flakey.
        https://bugs.webkit.org/show_bug.cgi?id=58183

        Skip the flakey test in order to get the bots green.

        * platform/mac-wk2/Skipped:

2011-04-20  Leon Scroggins  <scroggo@google.com>

        Reviewed by Kenneth Russell.

        Mark tests as failing for rebaselining.
        https://bugs.webkit.org/show_bug.cgi?id=58839

        We are making a change to the way gradients
        are calculated, so disable tests for now.

        * platform/chromium/test_expectations.txt:

2011-04-20  Philippe Normand  <pnormand@igalia.com>

        Unreviewed, skip GTK crashing test
        storage/open-database-set-empty-version.html.

        * platform/gtk/Skipped:

2011-04-20  Jessie Berlin  <jberlin@apple.com>

        WebKit2 needs layoutTestController.overridePreference
        https://bugs.webkit.org/show_bug.cgi?id=42197

        Add another test that uses layoutTestController.overridePreference
        (fast/loader/scroll-position-restored-on-back.html) to the Skipped list to get the bots
        green.

        * platform/mac-wk2/Skipped:

2011-04-20  John Knottenbelt  <jknotten@chromium.org>

        Unreviewed.

        [Chromium] Rebaseline some border-related tests on Mac
        https://bugs.webkit.org/show_bug.cgi?id=58985

        Most likely related to http://trac.webkit.org/changeset/84341/
        "background color of elements with border-radius shows around outer edge of border at corners"

        * platform/chromium-mac-leopard/fast/forms/menulist-clip-expected.png:
        * platform/chromium-mac-leopard/fast/forms/menulist-narrow-width-expected.png:
        * platform/chromium-mac-leopard/fast/forms/menulist-option-wrap-expected.png:
        * platform/chromium-mac-leopard/fast/forms/menulist-restrict-line-height-expected.png:
        * platform/chromium-mac-leopard/fast/forms/menulist-style-color-expected.png:
        * platform/chromium-mac-leopard/fast/forms/select-baseline-expected.png:
        * platform/chromium-mac/fast/borders/borderRadiusDashed01-expected.checksum: Removed.
        * platform/chromium-mac/fast/borders/borderRadiusDashed01-expected.png:
        * platform/chromium-mac/fast/forms/menulist-clip-expected.png: Removed.
        * platform/chromium-mac/fast/forms/menulist-narrow-width-expected.png: Removed.
        * platform/chromium-mac/fast/forms/menulist-option-wrap-expected.png: Removed.
        * platform/chromium-mac/fast/forms/menulist-restrict-line-height-expected.png: Removed.
        * platform/chromium-mac/fast/forms/menulist-style-color-expected.png: Removed.
        * platform/chromium-mac/fast/forms/select-baseline-expected.png: Removed.
        * platform/chromium-mac/fast/forms/select-empty-option-height-expected.png: Removed.

2011-04-20  Yury Semikhatsky  <yurys@chromium.org>

        Reviewed by Tony Gentilcore.

        http/tests/misc/unloadable-script.html fails if <script> error event doesn't bubble
        https://bugs.webkit.org/show_bug.cgi?id=58981

        * http/tests/misc/unloadable-script.html: canged the test so that it uses <script onerror> instead
        od <body onerror>

2011-04-20  Yury Semikhatsky  <yurys@chromium.org>

        Reviewed by Tony Gentilcore.

        Error event in <script> element shouldn't bubble
        https://bugs.webkit.org/show_bug.cgi?id=51040

        * fast/events/onerror-bubbling-expected.txt:
        * fast/events/onerror-bubbling.html:
        * svg/dom/SVGScriptElement/script-load-and-error-events.svg: error event is dispatched on the
        corresponding SVGScriptElement and shouldn't bubble, so the global error handler should
        never be invoked for script load errors. This behaviour is consistent with HTMLScriptElement element.
        * svg/dom/SVGScriptElement/script-onerror-bubbling-expected.txt: Added.
        * svg/dom/SVGScriptElement/script-onerror-bubbling.svg: Added.

2011-04-20  John Knottenbelt  <jknotten@chromium.org>

        Unreviewed.

        [Chromium] Rebaseline fast/repaint/trailing-floats-root-line-box-overflow fast/canvas/webgl/css-webkit-canvas fast/canvas/webgl/css-webkit-canvas-repaint
        https://bugs.webkit.org/show_bug.cgi?id=58978

        Windows bots are now generating baselines, so include them.
        fast/repaint/trailing-floats-root-line-box-overflow looks like correct output.

        * platform/chromium-mac/fast/repaint/trailing-floats-root-line-box-overflow-expected.png: Added.
        * platform/chromium-win/fast/canvas/webgl/css-webkit-canvas-expected.png: Added.
        * platform/chromium-win/fast/canvas/webgl/css-webkit-canvas-repaint-expected.png: Added.
        * platform/chromium/test_expectations.txt:

2011-04-20  Csaba Osztrogonác  <ossy@webkit.org>

        [Qt] REGRESSION(r84296): platform/qt/fast/history/back-to-unreachable-url-then-forward.html fails
        https://bugs.webkit.org/show_bug.cgi?id=58977

        * platform/qt/Skipped: Add platform/qt/fast/history/back-to-unreachable-url-then-forward.html.

2011-04-20  Philippe Normand  <pnormand@igalia.com>

        Unreviewed, skip failing test on GTK.

        [GTK] fast/events/overflow-viewport-renderer-deleted.html crashes
        https://bugs.webkit.org/show_bug.cgi?id=58976

        * platform/gtk/Skipped:

2011-04-20  Philippe Normand  <pnormand@igalia.com>

        Unreviewed, new GTK baselines for tests added in r84273.
        Also skip a couple of failing tests.

        * platform/gtk/Skipped:
        * platform/gtk/fast/backgrounds/background-leakage-expected.checksum: Added.
        * platform/gtk/fast/backgrounds/background-leakage-expected.png: Added.
        * platform/gtk/fast/backgrounds/background-leakage-expected.txt: Added.
        * platform/gtk/fast/backgrounds/background-leakage-transforms-expected.checksum: Added.
        * platform/gtk/fast/backgrounds/background-leakage-transforms-expected.png: Added.
        * platform/gtk/fast/backgrounds/background-leakage-transforms-expected.txt: Added.
        * platform/gtk/fast/backgrounds/border-radius-split-background-expected.checksum: Added.
        * platform/gtk/fast/backgrounds/border-radius-split-background-expected.png: Added.
        * platform/gtk/fast/backgrounds/border-radius-split-background-expected.txt: Added.
        * platform/gtk/fast/backgrounds/border-radius-split-background-image-expected.checksum: Added.
        * platform/gtk/fast/backgrounds/border-radius-split-background-image-expected.png: Added.
        * platform/gtk/fast/backgrounds/border-radius-split-background-image-expected.txt: Added.
        * platform/gtk/fast/borders/border-radius-different-width-001-expected.checksum: Added.
        * platform/gtk/fast/borders/border-radius-different-width-001-expected.png: Added.
        * platform/gtk/fast/borders/border-radius-different-width-001-expected.txt: Added.
        * platform/gtk/fast/borders/border-radius-inset-outset-expected.checksum: Added.
        * platform/gtk/fast/borders/border-radius-inset-outset-expected.png: Added.
        * platform/gtk/fast/borders/border-radius-inset-outset-expected.txt: Added.
        * platform/gtk/fast/borders/table-borders-expected.checksum: Added.
        * platform/gtk/fast/borders/table-borders-expected.png: Added.
        * platform/gtk/fast/borders/table-borders-expected.txt: Added.
        * platform/gtk/fast/blockflow/border-styles-vertical-lr-expected.txt:
        * platform/gtk/fast/blockflow/border-styles-vertical-rl-expected.txt:
        * platform/gtk/fast/borders/border-styles-split-expected.txt:

2011-04-20  John Knottenbelt  <jknotten@chromium.org>

        Unreviewed.

        [Chromium] Rebaseline overhanging-tall-block
        https://bugs.webkit.org/show_bug.cgi?id=58974

        * platform/chromium-win/fast/block/float/overhanging-tall-block-expected.png: Added.
        * platform/chromium-win/fast/block/float/overhanging-tall-block-expected.txt: Added.
        * platform/chromium/test_expectations.txt:

2011-04-19  Dirk Pranke  <dpranke@chromium.org>

        Unreviewed, expectations change.

        * platform/chromium/test_expectations.txt:

2011-04-19  Jungshik Shin  <jshin@chromium.org>

        Reviewed by Adam Barth

        Add a test to test sequences of IPA tone letters are
        ligated regardless of text-rendering mode (fast codepath or not).
        The test explicitly specifies Arial because it's one of a few fonts
        to have layout table entries to support the ligation of IPA tone
        letters.

        http://bugs.webkit.org/show_bug.cgi?id=39799

        * fast/text/ipa-tone-letters.html: Added.

2011-04-19  Simon Fraser  <simon.fraser@apple.com>

        Reviewed by Dan Bernstein.

        background color of elements with border-radius shows around outer edge of border at corners
        https://bugs.webkit.org/show_bug.cgi?id=21819

        * fast/backgrounds/background-leakage-transforms.html: Added.
        * platform/mac/fast/backgrounds/background-leakage-expected.checksum:
        * platform/mac/fast/backgrounds/background-leakage-expected.png:
        * platform/mac/fast/backgrounds/background-leakage-transforms-expected.checksum: Added.
        * platform/mac/fast/backgrounds/background-leakage-transforms-expected.png: Added.
        * platform/mac/fast/backgrounds/background-leakage-transforms-expected.txt: Added.
        * platform/mac/fast/borders/border-radius-circle-expected.checksum:
        * platform/mac/fast/borders/border-radius-circle-expected.png:
        * platform/mac/fast/borders/border-radius-huge-assert-expected.checksum:
        * platform/mac/fast/borders/border-radius-huge-assert-expected.png:
        * platform/mac/fast/borders/border-radius-wide-border-01-expected.checksum:
        * platform/mac/fast/borders/border-radius-wide-border-01-expected.png:
        * platform/mac/fast/borders/borderRadiusAllStylesAllCorners-expected.checksum:
        * platform/mac/fast/borders/borderRadiusAllStylesAllCorners-expected.png:
        * platform/mac/fast/borders/borderRadiusArcs01-expected.checksum:
        * platform/mac/fast/borders/borderRadiusArcs01-expected.png:
        * platform/mac/fast/borders/borderRadiusDashed01-expected.checksum:
        * platform/mac/fast/borders/borderRadiusDashed01-expected.png:
        * platform/mac/fast/borders/borderRadiusDashed02-expected.checksum:
        * platform/mac/fast/borders/borderRadiusDashed02-expected.png:
        * platform/mac/fast/borders/borderRadiusDashed03-expected.checksum:
        * platform/mac/fast/borders/borderRadiusDashed03-expected.png:
        * platform/mac/fast/borders/borderRadiusDotted01-expected.checksum:
        * platform/mac/fast/borders/borderRadiusDotted01-expected.png:
        * platform/mac/fast/borders/borderRadiusDotted02-expected.checksum:
        * platform/mac/fast/borders/borderRadiusDotted02-expected.png:
        * platform/mac/fast/borders/borderRadiusDotted03-expected.checksum:
        * platform/mac/fast/borders/borderRadiusDotted03-expected.png:
        * platform/mac/fast/borders/borderRadiusDouble01-expected.checksum:
        * platform/mac/fast/borders/borderRadiusDouble01-expected.png:
        * platform/mac/fast/borders/borderRadiusDouble02-expected.checksum:
        * platform/mac/fast/borders/borderRadiusDouble02-expected.png:
        * platform/mac/fast/borders/borderRadiusDouble03-expected.checksum:
        * platform/mac/fast/borders/borderRadiusDouble03-expected.png:
        * platform/mac/fast/borders/borderRadiusGroove01-expected.checksum:
        * platform/mac/fast/borders/borderRadiusGroove01-expected.png:
        * platform/mac/fast/borders/borderRadiusGroove02-expected.checksum:
        * platform/mac/fast/borders/borderRadiusGroove02-expected.png:
        * platform/mac/fast/borders/borderRadiusInset01-expected.checksum:
        * platform/mac/fast/borders/borderRadiusInset01-expected.png:
        * platform/mac/fast/borders/borderRadiusInvalidColor-expected.checksum:
        * platform/mac/fast/borders/borderRadiusInvalidColor-expected.png:
        * platform/mac/fast/borders/borderRadiusOutset01-expected.checksum:
        * platform/mac/fast/borders/borderRadiusOutset01-expected.png:
        * platform/mac/fast/borders/borderRadiusRidge01-expected.checksum:
        * platform/mac/fast/borders/borderRadiusRidge01-expected.png:
        * platform/mac/fast/borders/borderRadiusSolid01-expected.checksum:
        * platform/mac/fast/borders/borderRadiusSolid01-expected.png:
        * platform/mac/fast/borders/borderRadiusSolid02-expected.checksum:
        * platform/mac/fast/borders/borderRadiusSolid02-expected.png:
        * platform/mac/fast/borders/borderRadiusSolid03-expected.checksum:
        * platform/mac/fast/borders/borderRadiusSolid03-expected.png:
        * platform/mac/fast/box-shadow/inset-expected.checksum:
        * platform/mac/fast/box-shadow/inset-expected.png:
        * platform/mac/fast/box-shadow/inset-with-extraordinary-radii-and-border-expected.checksum:
        * platform/mac/fast/box-shadow/inset-with-extraordinary-radii-and-border-expected.png:
        * platform/mac/fast/forms/basic-selects-expected.checksum:
        * platform/mac/fast/forms/basic-selects-expected.png:
        * platform/mac/fast/forms/menulist-clip-expected.checksum:
        * platform/mac/fast/forms/menulist-clip-expected.png:
        * platform/mac/fast/forms/menulist-narrow-width-expected.checksum:
        * platform/mac/fast/forms/menulist-narrow-width-expected.png:
        * platform/mac/fast/forms/menulist-option-wrap-expected.checksum:
        * platform/mac/fast/forms/menulist-option-wrap-expected.png:
        * platform/mac/fast/forms/menulist-restrict-line-height-expected.checksum:
        * platform/mac/fast/forms/menulist-restrict-line-height-expected.png:
        * platform/mac/fast/forms/menulist-separator-painting-expected.checksum:
        * platform/mac/fast/forms/menulist-separator-painting-expected.png:
        * platform/mac/fast/forms/menulist-style-color-expected.checksum:
        * platform/mac/fast/forms/menulist-style-color-expected.png:
        * platform/mac/fast/forms/select-baseline-expected.checksum:
        * platform/mac/fast/forms/select-baseline-expected.png:
        * platform/mac/fast/forms/select-empty-option-height-expected.checksum:
        * platform/mac/fast/forms/select-empty-option-height-expected.png:
        * platform/mac/fast/forms/select-style-expected.checksum:
        * platform/mac/fast/forms/select-style-expected.png:
        * platform/mac/fast/overflow/border-radius-clipping-expected.checksum:
        * platform/mac/fast/overflow/border-radius-clipping-expected.png:
        * platform/mac/fast/repaint/border-radius-repaint-expected.checksum:
        * platform/mac/fast/repaint/border-radius-repaint-expected.png:
        * platform/mac/fast/repaint/control-clip-expected.checksum:
        * platform/mac/fast/repaint/control-clip-expected.png:

2011-04-19  Dirk Pranke  <dpranke@chromium.org>

        Unreviewed, expectations change.

        Add chromium suppressions resulting from r84341 - 84344.

        * platform/chromium/test_expectations.txt:

2011-04-19  Dirk Pranke  <dpranke@chromium.org>

        Unreviewed, expectations change.

        * platform/chromium/test_expectations.txt:

2011-04-19  Dirk Pranke  <dpranke@chromium.org>

        Unreviewed, expectations change.

        * platform/chromium/test_expectations.txt:

2011-04-19  Dirk Pranke  <dpranke@chromium.org>

        Unreviewed, expectations change.

        * platform/chromium/test_expectations.txt:

2011-04-19  Dmitry Titov  <dimich@chromium.org>

        Reviewed by David Levin.

        new-run-webkit-tests: remove formerly flakey tests form test_expectations.
        https://bugs.webkit.org/show_bug.cgi?id=57678

        Tests fixed by http://trac.webkit.org/changeset/83900

        * platform/mac/test_expectations.txt:

2011-04-19  Dirk Pranke  <dpranke@chromium.org>

        Unreviewed, expectations change.

        * platform/chromium/test_expectations.txt:

2011-04-19  Julien Chaffraix  <jchaffraix@codeaurora.org>

        Reviewed by Alexey Proskuryakov.

        https://bugs.webkit.org/show_bug.cgi?id=45425
        HTMLLinkElement.disabled does not forward value to the Stylesheet's disabled attribute on setting

        Test case by Bijan Amirzada <bijana@codeaurora.org>.

        * fast/dom/HTMLLinkElement/disabled-attribute-expected.txt: Added.
        * fast/dom/HTMLLinkElement/disabled-attribute.html: Added.
        Test that the properties are properly forwarded to the stylesheet.

        * fast/dom/boolean-attribute-reflection-expected.txt:
        * fast/dom/script-tests/boolean-attribute-reflection.js: Removed link:disabled as it is
        not reflected anymore.

2011-04-19  Simon Fraser  <simon.fraser@apple.com>

        Rebaseline image results with diffs below the default tolerance,
        after earlier border drawing changes.

        * platform/mac/fast/backgrounds/background-leakage-expected.checksum:
        * platform/mac/fast/backgrounds/background-leakage-expected.png:
        * platform/mac/fast/backgrounds/border-radius-split-background-expected.checksum:
        * platform/mac/fast/backgrounds/border-radius-split-background-expected.png:
        * platform/mac/fast/backgrounds/border-radius-split-background-image-expected.checksum:
        * platform/mac/fast/backgrounds/border-radius-split-background-image-expected.png:
        * platform/mac/fast/blockflow/border-radius-clipping-vertical-lr-expected.checksum:
        * platform/mac/fast/blockflow/border-radius-clipping-vertical-lr-expected.png:
        * platform/mac/fast/blockflow/border-vertical-lr-expected.checksum:
        * platform/mac/fast/blockflow/border-vertical-lr-expected.png:
        * platform/mac/fast/blockflow/box-shadow-horizontal-bt-expected.checksum:
        * platform/mac/fast/blockflow/box-shadow-horizontal-bt-expected.png:
        * platform/mac/fast/blockflow/box-shadow-vertical-lr-expected.checksum:
        * platform/mac/fast/blockflow/box-shadow-vertical-lr-expected.png:
        * platform/mac/fast/blockflow/box-shadow-vertical-rl-expected.checksum:
        * platform/mac/fast/blockflow/box-shadow-vertical-rl-expected.png:
        * platform/mac/fast/box-shadow/basic-shadows-expected.checksum:
        * platform/mac/fast/box-shadow/basic-shadows-expected.png:
        * platform/mac/fast/box-shadow/inset-box-shadows-expected.checksum:
        * platform/mac/fast/box-shadow/inset-box-shadows-expected.png:
        * platform/mac/fast/box-shadow/inset-expected.checksum:
        * platform/mac/fast/box-shadow/inset-expected.png:
        * platform/mac/fast/box-shadow/inset-with-extraordinary-radii-and-border-expected.checksum:
        * platform/mac/fast/box-shadow/inset-with-extraordinary-radii-and-border-expected.png:
        * platform/mac/fast/css/nested-rounded-corners-expected.checksum:
        * platform/mac/fast/css/nested-rounded-corners-expected.png:
        * platform/mac/fast/forms/001-expected.checksum:
        * platform/mac/fast/forms/001-expected.png:
        * platform/mac/fast/forms/basic-selects-expected.checksum:
        * platform/mac/fast/forms/basic-selects-expected.png:
        * platform/mac/fast/forms/menulist-clip-expected.checksum:
        * platform/mac/fast/forms/menulist-clip-expected.png:
        * platform/mac/fast/forms/menulist-narrow-width-expected.checksum:
        * platform/mac/fast/forms/menulist-narrow-width-expected.png:
        * platform/mac/fast/forms/menulist-option-wrap-expected.checksum:
        * platform/mac/fast/forms/menulist-option-wrap-expected.png:
        * platform/mac/fast/forms/menulist-restrict-line-height-expected.checksum:
        * platform/mac/fast/forms/menulist-restrict-line-height-expected.png:
        * platform/mac/fast/forms/menulist-separator-painting-expected.checksum:
        * platform/mac/fast/forms/menulist-separator-painting-expected.png:
        * platform/mac/fast/forms/menulist-style-color-expected.checksum:
        * platform/mac/fast/forms/menulist-style-color-expected.png:
        * platform/mac/fast/forms/select-background-none-expected.checksum:
        * platform/mac/fast/forms/select-background-none-expected.png:
        * platform/mac/fast/forms/select-baseline-expected.checksum:
        * platform/mac/fast/forms/select-baseline-expected.png:
        * platform/mac/fast/forms/select-empty-option-height-expected.checksum:
        * platform/mac/fast/forms/select-empty-option-height-expected.png:
        * platform/mac/fast/forms/select-style-expected.checksum:
        * platform/mac/fast/forms/select-style-expected.png:
        * platform/mac/fast/forms/validation-message-appearance-expected.checksum:
        * platform/mac/fast/forms/validation-message-appearance-expected.png:
        * platform/mac/fast/overflow/border-radius-clipping-expected.checksum:
        * platform/mac/fast/overflow/border-radius-clipping-expected.png:
        * platform/mac/fast/repaint/border-radius-repaint-expected.checksum:
        * platform/mac/fast/repaint/border-radius-repaint-expected.png:
        * platform/mac/fast/repaint/control-clip-expected.checksum:
        * platform/mac/fast/repaint/control-clip-expected.png:
        * platform/mac/fast/repaint/selection-after-remove-expected.checksum:
        * platform/mac/fast/repaint/selection-after-remove-expected.png:

2011-04-19  Chris Rogers  <crogers@google.com>

        Unreviewed.

        Rebaseline some tests and update test_expectations.txt
        https://bugs.webkit.org/show_bug.cgi?id=58954

        * platform/chromium-mac-leopard/fast/overflow/border-radius-clipping-expected.checksum: Removed.
        * platform/chromium-mac-leopard/fast/overflow/border-radius-clipping-expected.png:
        * platform/chromium-mac-leopard/svg/custom/svg-fonts-in-html-expected.checksum: Removed.
        * platform/chromium-mac-leopard/svg/custom/svg-fonts-in-html-expected.png: Removed.
        * platform/chromium-mac/fast/overflow/border-radius-clipping-expected.png: Added.
        * platform/chromium-mac/svg/custom/svg-fonts-in-html-expected.checksum: Removed.
        * platform/chromium-mac/svg/custom/svg-fonts-in-html-expected.png:
        * platform/chromium-win/fast/text/justification-padding-mid-word-expected.txt:
        * platform/chromium/test_expectations.txt:

2011-04-19  James Robinson  <jamesr@chromium.org>

        [win] New test compositing/iframes/invisible-nested-iframe-show.html fails on windows
        https://bugs.webkit.org/show_bug.cgi?id=58951

        Add a failing expectation for this test on windows.

        * platform/win/compositing/iframes/invisible-nested-iframe-show-expected.txt: Added.

2011-04-19  Simon Fraser  <simon.fraser@apple.com>

        Add missing results for fast/borders/table-borders.html, and
        a new test that shows the background color leaking out through the
        border (to facilitate image diffs for an upcoming change).

        * fast/backgrounds/background-leakage.html: Added.
        * platform/mac/compositing/reflections/backface-hidden-reflection-expected.txt: Added.
        * platform/mac/fast/backgrounds/background-leakage-expected.checksum: Added.
        * platform/mac/fast/backgrounds/background-leakage-expected.png: Added.
        * platform/mac/fast/backgrounds/background-leakage-expected.txt: Added.
        * platform/mac/fast/borders/table-borders-expected.checksum: Added.
        * platform/mac/fast/borders/table-borders-expected.png: Added.
        * platform/mac/fast/borders/table-borders-expected.txt: Added.

2011-04-19  Chris Rogers  <crogers@google.com>

        Unreviewed.

        Rebaseline a bunch of border-radius related layout tests for chromium mac
        https://bugs.webkit.org/show_bug.cgi?id=58945

        * platform/chromium-mac-leopard/fast/blockflow/border-vertical-lr-expected.checksum: Removed.
        * platform/chromium-mac-leopard/fast/blockflow/border-vertical-lr-expected.png:
        * platform/chromium-mac-leopard/fast/borders/border-radius-constraints-expected.checksum: Removed.
        * platform/chromium-mac-leopard/fast/borders/border-radius-constraints-expected.png:
        * platform/chromium-mac-leopard/fast/borders/border-radius-huge-assert-expected.png:
        * platform/chromium-mac-leopard/fast/borders/border-radius-inline-flow-expected.checksum: Removed.
        * platform/chromium-mac-leopard/fast/borders/border-radius-inline-flow-expected.png:
        * platform/chromium-mac-leopard/fast/borders/borderRadiusInvalidColor-expected.checksum: Removed.
        * platform/chromium-mac-leopard/fast/borders/borderRadiusInvalidColor-expected.png:
        * platform/chromium-mac-leopard/fast/borders/svg-as-border-image-2-expected.checksum: Removed.
        * platform/chromium-mac-leopard/fast/borders/svg-as-border-image-2-expected.png: Added.
        * platform/chromium-mac-leopard/fast/box-shadow/basic-shadows-expected.png: Added.
        * platform/chromium-mac-leopard/fast/canvas/canvasDrawingIntoSelf-expected.png: Added.
        * platform/chromium-mac-leopard/fast/css/font_property_normal-expected.png: Added.
        * platform/chromium-mac-leopard/fast/forms/basic-selects-expected.checksum: Removed.
        * platform/chromium-mac-leopard/fast/forms/basic-selects-expected.png:
        * platform/chromium-mac-leopard/fast/forms/menulist-clip-expected.checksum: Removed.
        * platform/chromium-mac-leopard/fast/forms/menulist-clip-expected.png:
        * platform/chromium-mac-leopard/fast/forms/menulist-narrow-width-expected.checksum: Removed.
        * platform/chromium-mac-leopard/fast/forms/menulist-narrow-width-expected.png:
        * platform/chromium-mac-leopard/fast/forms/menulist-option-wrap-expected.checksum: Removed.
        * platform/chromium-mac-leopard/fast/forms/menulist-option-wrap-expected.png:
        * platform/chromium-mac-leopard/fast/forms/menulist-restrict-line-height-expected.checksum: Removed.
        * platform/chromium-mac-leopard/fast/forms/menulist-restrict-line-height-expected.png:
        * platform/chromium-mac-leopard/fast/forms/menulist-style-color-expected.checksum: Removed.
        * platform/chromium-mac-leopard/fast/forms/menulist-style-color-expected.png:
        * platform/chromium-mac-leopard/fast/forms/select-baseline-expected.png: Added.
        * platform/chromium-mac/fast/blockflow/border-radius-clipping-vertical-lr-expected.png: Added.
        * platform/chromium-mac/fast/blockflow/border-vertical-lr-expected.checksum: Removed.
        * platform/chromium-mac/fast/blockflow/border-vertical-lr-expected.png:
        * platform/chromium-mac/fast/blockflow/box-shadow-horizontal-bt-expected.png: Added.
        * platform/chromium-mac/fast/blockflow/box-shadow-vertical-lr-expected.png: Added.
        * platform/chromium-mac/fast/blockflow/box-shadow-vertical-rl-expected.png: Added.
        * platform/chromium-mac/fast/borders/border-radius-circle-expected.png: Removed.
        * platform/chromium-mac/fast/borders/border-radius-huge-assert-expected.png: Removed.
        * platform/chromium-mac/fast/borders/borderRadiusDotted06-expected.checksum:
        * platform/chromium-mac/fast/borders/borderRadiusDotted06-expected.png: Removed.
        * platform/chromium-mac/fast/box-shadow/basic-shadows-expected.png: Added.
        * platform/chromium-mac/fast/box-shadow/inset-box-shadows-expected.png: Added.
        * platform/chromium-mac/fast/box-shadow/inset-with-extraordinary-radii-and-border-expected.png:
        * platform/chromium-mac/fast/css/nested-rounded-corners-expected.checksum: Removed.
        * platform/chromium-mac/fast/css/nested-rounded-corners-expected.png:
        * platform/chromium-mac/fast/forms/basic-selects-expected.png: Added.
        * platform/chromium-mac/fast/forms/menulist-clip-expected.png: Added.
        * platform/chromium-mac/fast/forms/menulist-narrow-width-expected.png: Added.
        * platform/chromium-mac/fast/forms/menulist-option-wrap-expected.png: Added.
        * platform/chromium-mac/fast/forms/menulist-restrict-line-height-expected.png: Added.
        * platform/chromium-mac/fast/forms/menulist-separator-painting-expected.checksum: Removed.
        * platform/chromium-mac/fast/forms/menulist-separator-painting-expected.png:
        * platform/chromium-mac/fast/forms/menulist-style-color-expected.png: Added.
        * platform/chromium-mac/fast/forms/select-background-none-expected.png: Added.
        * platform/chromium-mac/fast/forms/select-baseline-expected.png: Added.
        * platform/chromium-mac/fast/forms/select-empty-option-height-expected.png: Added.
        * platform/chromium/test_expectations.txt:

2011-04-19  Chris Rogers  <crogers@google.com>

        Unreviewed.

        Rebase a bunch of border-radius related layout tests
        https://bugs.webkit.org/show_bug.cgi?id=58942

        * platform/chromium-linux/css2.1/t0805-c5517-brdr-s-00-c-expected.checksum: Removed.
        * platform/chromium-linux/css2.1/t0805-c5517-brdr-s-00-c-expected.png:
        * platform/chromium-linux/fast/backgrounds/border-radius-split-background-expected.png: Added.
        * platform/chromium-linux/fast/backgrounds/border-radius-split-background-image-expected.png: Added.
        * platform/chromium-linux/fast/backgrounds/repeat/negative-offset-repeat-transformed-expected.checksum: Removed.
        * platform/chromium-linux/fast/backgrounds/repeat/negative-offset-repeat-transformed-expected.png:
        * platform/chromium-linux/fast/borders/borderRadiusAllStylesAllCorners-expected.png:
        * platform/chromium-linux/fast/box-shadow/inset-expected.png:
        * platform/chromium-linux/fast/forms/validation-message-appearance-expected.checksum: Removed.
        * platform/chromium-linux/fast/forms/validation-message-appearance-expected.png:
        * platform/chromium-mac-leopard/css2.1/t0805-c5517-brdr-s-00-c-expected.png: Added.
        * platform/chromium-mac-leopard/fast/backgrounds/repeat/negative-offset-repeat-transformed-expected.checksum: Removed.
        * platform/chromium-mac-leopard/fast/backgrounds/repeat/negative-offset-repeat-transformed-expected.png:
        * platform/chromium-mac-leopard/fast/borders/borderRadiusAllStylesAllCorners-expected.checksum: Removed.
        * platform/chromium-mac-leopard/fast/borders/borderRadiusAllStylesAllCorners-expected.png:
        * platform/chromium-mac-leopard/fast/box-shadow/inset-expected.png: Removed.
        * platform/chromium-mac-leopard/fast/forms/validation-message-appearance-expected.checksum: Removed.
        * platform/chromium-mac-leopard/fast/forms/validation-message-appearance-expected.png:
        * platform/chromium-mac/css2.1/t0805-c5517-brdr-s-00-c-expected.png: Added.
        * platform/chromium-mac/fast/backgrounds/border-radius-split-background-expected.png: Added.
        * platform/chromium-mac/fast/backgrounds/border-radius-split-background-image-expected.png: Added.
        * platform/chromium-mac/fast/backgrounds/repeat/negative-offset-repeat-transformed-expected.checksum: Removed.
        * platform/chromium-mac/fast/backgrounds/repeat/negative-offset-repeat-transformed-expected.png:
        * platform/chromium-mac/fast/borders/borderRadiusAllStylesAllCorners-expected.checksum: Removed.
        * platform/chromium-mac/fast/borders/borderRadiusAllStylesAllCorners-expected.png:
        * platform/chromium-mac/fast/borders/table-borders-expected.png: Added.
        * platform/chromium-mac/fast/borders/table-borders-expected.txt: Added.
        * platform/chromium-mac/fast/box-shadow/inset-expected.png: Added.
        * platform/chromium-mac/fast/events/overflow-viewport-renderer-deleted-expected.txt: Added.
        * platform/chromium-mac/fast/forms/validation-message-appearance-expected.png: Added.
        * platform/chromium-win-vista/fast/backgrounds/repeat/negative-offset-repeat-transformed-expected.png: Added.
        * platform/chromium-win/css2.1/t0805-c5517-brdr-s-00-c-expected.checksum: Removed.
        * platform/chromium-win/css2.1/t0805-c5517-brdr-s-00-c-expected.png:
        * platform/chromium-win/fast/backgrounds/border-radius-split-background-expected.png: Added.
        * platform/chromium-win/fast/backgrounds/border-radius-split-background-expected.txt: Added.
        * platform/chromium-win/fast/backgrounds/border-radius-split-background-image-expected.png: Added.
        * platform/chromium-win/fast/backgrounds/border-radius-split-background-image-expected.txt: Added.
        * platform/chromium-win/fast/backgrounds/repeat/negative-offset-repeat-transformed-expected.checksum: Removed.
        * platform/chromium-win/fast/backgrounds/repeat/negative-offset-repeat-transformed-expected.png:
        * platform/chromium-win/fast/borders/borderRadiusAllStylesAllCorners-expected.png:
        * platform/chromium-win/fast/borders/table-borders-expected.png: Added.
        * platform/chromium-win/fast/borders/table-borders-expected.txt: Added.
        * platform/chromium-win/fast/box-shadow/inset-expected.png:
        * platform/chromium-win/fast/events/overflow-viewport-renderer-deleted-expected.txt: Added.
        * platform/chromium-win/fast/forms/validation-message-appearance-expected.checksum: Removed.
        * platform/chromium-win/fast/forms/validation-message-appearance-expected.png:
        * platform/chromium/test_expectations.txt:

2011-04-19  Tony Chang  <tony@chromium.org>

        Add checksums to png files in platform win, win-wk2, and win-xp.

2011-04-19  Enrica Casucci  <enrica@apple.com>

        Reviewed by Ryosuke Niwa.

        REGRESSION(r55762): Highlight color can't be copied in gmail.
        https://bugs.webkit.org/show_bug.cgi?id=58925
        <rdar://problem/9253057>

        The following test checks that when we copy a text node surrounded by an element that
        has non transparent background color we preserve the background color as well.

        * editing/pasteboard/copy-text-with-backgroundcolor-expected.txt: Added.
        * editing/pasteboard/copy-text-with-backgroundcolor.html: Added.

2011-04-19  Chris Rogers  <crogers@google.com>

        Unreviewed.

        Update test_expectations.txt
        https://bugs.webkit.org/show_bug.cgi?id=58941

        * platform/chromium/test_expectations.txt:

2011-04-19  Antoine Labour  <piman@chromium.org>

        Reviewed by James Robinson.

        For invisible iframes, propagate compositing to parent instead of setting self
        as root.
        https://bugs.webkit.org/show_bug.cgi?id=58414

        * compositing/iframes/invisible-iframe-expected.checksum: Added.
        * compositing/iframes/invisible-iframe-expected.png: Added.
        * compositing/iframes/invisible-iframe-expected.txt: Added.
        * compositing/iframes/invisible-iframe.html: Added.
        * compositing/iframes/invisible-nested-iframe-expected.checksum: Added.
        * compositing/iframes/invisible-nested-iframe-expected.png: Added.
        * compositing/iframes/invisible-nested-iframe-expected.txt: Added.
        * compositing/iframes/invisible-nested-iframe-hide-expected.txt: Added.
        * compositing/iframes/invisible-nested-iframe-hide.html: Added.
        * compositing/iframes/invisible-nested-iframe-show-expected.txt: Added.
        * compositing/iframes/invisible-nested-iframe-show.html: Added.
        * compositing/iframes/invisible-nested-iframe.html: Added.
        * platform/chromium-gpu/compositing/iframes/invisible-nested-iframe-show-expected.txt: Added.

2011-04-19  Chris Rogers  <crogers@google.com>

        Unreviewed.

        Update test_expectations.txt for tests which need rebaselining
        https://bugs.webkit.org/show_bug.cgi?id=58938

        * platform/chromium/test_expectations.txt:

2011-04-19  Tony Chang  <tony@chromium.org>

        Add checksums to png files in platform/gtk.

2011-04-19  Dan Bernstein  <mitz@apple.com>

        Reviewed by Beth Dakin.

        <rdar://problem/9271848> Crash when the document element is removed

        * fast/events/overflow-viewport-renderer-deleted-expected.txt: Added.
        * fast/events/overflow-viewport-renderer-deleted.html: Added.

2011-04-19  James Robinson  <jamesr@chromium.org>

        Fix lint errors in test_expectations.txt

        * platform/chromium/test_expectations.txt:

2011-04-19  Tony Chang  <tony@chromium.org>

        Add checksums to png files in platform/qt.

2011-04-19  Beth Dakin  <bdakin@apple.com>

        Reviewed by Maciej Stachowiak.

        https://bugs.webkit.org/show_bug.cgi?id=57898
        REGRESSION (r82185): Scroll position not restored on navigation back to a page in
        the page cache
        -and corresponding-
        <rdar://problem/9226652>

        * fast/loader/resources/empty-document-goes-back.html: Added.
        * fast/loader/scroll-position-restored-on-back-expected.txt: Added.
        * fast/loader/scroll-position-restored-on-back.html: Added.

2011-04-19  Ryosuke Niwa  <rniwa@webkit.org>

        Skip the test added by r84264. The bug tracked by
        https://bugs.webkit.org/show_bug.cgi?id=58741

        * platform/qt/Skipped:

2011-04-19  Tony Chang  <tony@chromium.org>

        Skipping plugins/mouse-click-iframe-to-plugin.html on mac/win.

        * platform/mac/Skipped:
        * platform/win/Skipped:

2011-04-19  Chris Rogers  <crogers@google.com>

        Unreviewed.

        Update test_expectations.txt due to border radius bugs in Skia
        https://bugs.webkit.org/show_bug.cgi?id=58920

        * platform/chromium/test_expectations.txt:

2011-04-19  Simon Fraser  <simon.fraser@apple.com>

        Reviewed by David Hyatt.

        Background radius is wrong for split inline
        https://bugs.webkit.org/show_bug.cgi?id=58843

        New tests for split inline with border-radius, with background color and image,
        in both horizontal and vertical text.

        * fast/backgrounds/border-radius-split-background-image.html: Added.
        * fast/backgrounds/border-radius-split-background.html: Added.
        * platform/mac/fast/backgrounds/border-radius-split-background-expected.checksum: Added.
        * platform/mac/fast/backgrounds/border-radius-split-background-expected.png: Added.
        * platform/mac/fast/backgrounds/border-radius-split-background-expected.txt: Added.
        * platform/mac/fast/backgrounds/border-radius-split-background-image-expected.checksum: Added.
        * platform/mac/fast/backgrounds/border-radius-split-background-image-expected.png: Added.
        * platform/mac/fast/backgrounds/border-radius-split-background-image-expected.txt: Added.

2011-04-19  Chris Rogers  <crogers@google.com>

        Unreviewed.

        Update test_expectations.txt with now passing test : media/video-zoom.html
        https://bugs.webkit.org/show_bug.cgi?id=58916

        * platform/chromium/test_expectations.txt:

2011-04-19  Chris Rogers  <crogers@google.com>

        Unreviewed.

        Rebaseline some chromium Snow Leopard tests - update test_expectations.txt
        https://bugs.webkit.org/show_bug.cgi?id=58915

        * platform/chromium-mac/fast/borders/svg-as-border-image-2-expected.png: Added.
        * platform/chromium-mac/fast/css/font-face-default-font-expected.png: Added.
        * platform/chromium-mac/fast/css/font_property_normal-expected.png: Added.
        * platform/chromium-mac/fast/repaint/text-in-relative-positioned-inline-expected.png: Added.
        * platform/chromium-mac/fast/text/international/bidi-neutral-directionality-paragraph-start-expected.png: Added.
        * platform/chromium/test_expectations.txt:

2011-04-19  Ryosuke Niwa  <rniwa@webkit.org>

        Skip the test added by r84270 on WebKit2 since it uses eventSender.

        * platform/mac-wk2/Skipped:

2011-04-19  Tony Chang  <tony@chromium.org>

        Fixing pngs with bad checksum crcs.  There was a 64bit specific bug
        in computing crcs of checksums embedded in png files.  During that
        time, these images were checked in.  Just fixing with the correct
        crcs (the image result itself is unchanged).

        * platform/gtk/fast/block/positioning/complex-positioned-movement-expected.png:
        * platform/gtk/fast/text/decorations-transformed-expected.png:
        * platform/mac/compositing/images/content-image-change-expected.png:
        * platform/mac/editing/inserting/editable-inline-element-expected.png:
        * platform/mac/editing/spelling/autocorrection-at-beginning-of-word-1-expected.png:
        * platform/mac/editing/spelling/autocorrection-at-beginning-of-word-2-expected.png:
        * platform/mac/fast/borders/bidi-002-expected.png:
        * platform/mac/fast/borders/bidi-004-expected.png:
        * platform/mac/fast/borders/bidi-009a-expected.png:
        * platform/mac/fast/box-shadow/inset-expected.png:
        * platform/mac/fast/inline/positioned-object-between-replaced-elements-expected.png:
        * platform/mac/fast/overflow/trailing-float-linebox-expected.png:
        * platform/mac/fullscreen/full-screen-zIndex-expected.png:

2011-04-19  Simon Fraser  <simon.fraser@apple.com>

        Reviewed by Dave Hyatt.

        Fix multiple border rendering issues
        https://bugs.webkit.org/show_bug.cgi?id=58761

        New results for progressions, and some new tests.

        * fast/blockflow/border-styles-vertical-lr.html:
        * fast/blockflow/border-styles-vertical-rl.html:
        * fast/borders/border-styles-split.html:
        Adjusted to fit in the pixel result without scrollbars, and added
        double border test.

        * fast/borders/border-radius-different-width-001.html: Added.
        * fast/borders/border-radius-inset-outset.html: Added.
        * fast/borders/table-borders.html: Added.
        * platform/mac/fast/backgrounds/repeat/negative-offset-repeat-transformed-expected.checksum:
        * platform/mac/fast/backgrounds/repeat/negative-offset-repeat-transformed-expected.png:
        * platform/mac/fast/blockflow/border-styles-vertical-lr-expected.checksum:
        * platform/mac/fast/blockflow/border-styles-vertical-lr-expected.png:
        * platform/mac/fast/blockflow/border-styles-vertical-lr-expected.txt:
        * platform/mac/fast/blockflow/border-styles-vertical-rl-expected.checksum:
        * platform/mac/fast/blockflow/border-styles-vertical-rl-expected.png:
        * platform/mac/fast/blockflow/border-styles-vertical-rl-expected.txt:
        * platform/mac/fast/borders/border-radius-circle-expected.checksum:
        * platform/mac/fast/borders/border-radius-circle-expected.png:
        * platform/mac/fast/borders/border-radius-constraints-expected.checksum:
        * platform/mac/fast/borders/border-radius-constraints-expected.png:
        * platform/mac/fast/borders/border-radius-different-width-001-expected.checksum: Added.
        * platform/mac/fast/borders/border-radius-different-width-001-expected.png: Added.
        * platform/mac/fast/borders/border-radius-different-width-001-expected.txt: Added.
        * platform/mac/fast/borders/border-radius-groove-01-expected.checksum:
        * platform/mac/fast/borders/border-radius-groove-01-expected.png:
        * platform/mac/fast/borders/border-radius-groove-02-expected.png:
        * platform/mac/fast/borders/border-radius-groove-03-expected.checksum:
        * platform/mac/fast/borders/border-radius-groove-03-expected.png:
        * platform/mac/fast/borders/border-radius-huge-assert-expected.checksum:
        * platform/mac/fast/borders/border-radius-huge-assert-expected.png:
        * platform/mac/fast/borders/border-radius-inline-flow-expected.checksum:
        * platform/mac/fast/borders/border-radius-inline-flow-expected.png:
        * platform/mac/fast/borders/border-radius-inset-outset-expected.checksum: Added.
        * platform/mac/fast/borders/border-radius-inset-outset-expected.png: Added.
        * platform/mac/fast/borders/border-radius-inset-outset-expected.txt: Added.
        * platform/mac/fast/borders/border-radius-split-inline-expected.checksum:
        * platform/mac/fast/borders/border-radius-split-inline-expected.png:
        * platform/mac/fast/borders/border-radius-wide-border-02-expected.checksum:
        * platform/mac/fast/borders/border-radius-wide-border-02-expected.png:
        * platform/mac/fast/borders/border-radius-wide-border-03-expected.checksum:
        * platform/mac/fast/borders/border-radius-wide-border-03-expected.png:
        * platform/mac/fast/borders/border-radius-wide-border-04-expected.checksum:
        * platform/mac/fast/borders/border-radius-wide-border-04-expected.png:
        * platform/mac/fast/borders/border-styles-split-expected.checksum:
        * platform/mac/fast/borders/border-styles-split-expected.png:
        * platform/mac/fast/borders/border-styles-split-expected.txt:
        * platform/mac/fast/borders/borderRadiusAllStylesAllCorners-expected.checksum:
        * platform/mac/fast/borders/borderRadiusAllStylesAllCorners-expected.png:
        * platform/mac/fast/borders/borderRadiusDashed05-expected.checksum:
        * platform/mac/fast/borders/borderRadiusDashed05-expected.png:
        * platform/mac/fast/borders/borderRadiusDashed06-expected.checksum:
        * platform/mac/fast/borders/borderRadiusDashed06-expected.png:
        * platform/mac/fast/borders/borderRadiusDotted04-expected.checksum:
        * platform/mac/fast/borders/borderRadiusDotted04-expected.png:
        * platform/mac/fast/borders/borderRadiusDotted05-expected.checksum:
        * platform/mac/fast/borders/borderRadiusDotted06-expected.checksum:
        * platform/mac/fast/borders/borderRadiusDotted06-expected.png:
        * platform/mac/fast/borders/borderRadiusDouble04-expected.checksum:
        * platform/mac/fast/borders/borderRadiusDouble04-expected.png:
        * platform/mac/fast/borders/borderRadiusDouble05-expected.checksum:
        * platform/mac/fast/borders/borderRadiusDouble05-expected.png:
        * platform/mac/fast/borders/borderRadiusDouble06-expected.checksum:
        * platform/mac/fast/borders/borderRadiusDouble06-expected.png:
        * platform/mac/fast/borders/borderRadiusDouble07-expected.checksum:
        * platform/mac/fast/borders/borderRadiusDouble07-expected.png:
        * platform/mac/fast/borders/borderRadiusDouble08-expected.checksum:
        * platform/mac/fast/borders/borderRadiusDouble08-expected.png:
        * platform/mac/fast/borders/borderRadiusDouble09-expected.checksum:
        * platform/mac/fast/borders/borderRadiusDouble09-expected.png:
        * platform/mac/fast/borders/borderRadiusInvalidColor-expected.checksum:
        * platform/mac/fast/borders/borderRadiusInvalidColor-expected.png:
        * platform/mac/fast/borders/borderRadiusSolid01-expected.checksum:
        * platform/mac/fast/borders/borderRadiusSolid01-expected.png:
        * platform/mac/fast/borders/borderRadiusSolid02-expected.checksum:
        * platform/mac/fast/borders/borderRadiusSolid02-expected.png:
        * platform/mac/fast/borders/borderRadiusSolid03-expected.checksum:
        * platform/mac/fast/borders/borderRadiusSolid03-expected.png:
        * platform/mac/fast/borders/borderRadiusSolid04-expected.checksum:
        * platform/mac/fast/borders/borderRadiusSolid04-expected.png:
        * platform/mac/fast/borders/fieldsetBorderRadius-expected.checksum:
        * platform/mac/fast/borders/fieldsetBorderRadius-expected.png:
        * platform/mac/fast/borders/mixed-border-styles-expected.checksum:
        * platform/mac/fast/borders/mixed-border-styles-expected.png:
        * platform/mac/fast/borders/mixed-border-styles-radius-expected.checksum:
        * platform/mac/fast/borders/mixed-border-styles-radius-expected.png:
        * platform/mac/fast/borders/mixed-border-styles-radius2-expected.checksum:
        * platform/mac/fast/borders/mixed-border-styles-radius2-expected.png:
        * platform/mac/fast/borders/webkit-border-radius-expected.checksum:
        * platform/mac/fast/borders/webkit-border-radius-expected.png:
        * platform/mac/fast/box-shadow/inset-box-shadow-radius-expected.checksum:
        * platform/mac/fast/box-shadow/inset-box-shadow-radius-expected.png:
        * platform/mac/fast/multicol/client-rects-expected.checksum:
        * platform/mac/fast/multicol/client-rects-expected.png:
        * platform/mac/fast/transforms/rotated-transform-affects-scrolling-1-expected.checksum:
        * platform/mac/fast/transforms/rotated-transform-affects-scrolling-1-expected.png:
        * platform/mac/fast/transforms/rotated-transform-affects-scrolling-2-expected.checksum:
        * platform/mac/fast/transforms/rotated-transform-affects-scrolling-2-expected.png:

2011-04-19  Stuart Morgan  <stuartmorgan@chromium.org>

        Reviewed by Tony Chang.

        [chromium] Clicking on plugin for first time blocks focus shift
        https://bugs.webkit.org/show_bug.cgi?id=58419

        Added new test for cross-iframe focus changes on plugin clicks.

        * plugins/mouse-click-iframe-to-plugin-expected.txt: Added.
        * plugins/mouse-click-iframe-to-plugin.html: Added.

2011-04-19  Jungshik Shin  <jshin@chromium.org>

        Reviewed by David Levin

        Add a complex-script version of zero-width-characters.html.
        and add U+FEFF to zero-width-characters.html
        Chromium Linux fails the test because U+FEFF is rendered
        with a non-zero width glyph.
        Filed http://bugs.webkit.org/show_bug.cgi?id=58741 and noted
        as such in test_expectation.txt.

        https://bugs.webkit.org/show_bug.cgi?id=48860

        * fast/text/zero-width-characters-complex-script-expected.txt: Added.
        * fast/text/zero-width-characters-complex-script.html: Added.
        * fast/text/zero-width-characters.html:
        * platform/chromium/test_expectations.txt:

2011-04-19  Kristóf Kosztyó  <Kosztyo.Kristof@stud.u-szeged.hu>

        Reviewed by Andreas Kling.

        [Qt] fast/xmlhttprequest/xmlhttprequest-nonexistent-file.html fails (DRT sideeffect)
        https://bugs.webkit.org/show_bug.cgi?id=35086

        * platform/qt/Skipped: unskip fast/xmlhttprequest/xmlhttprequest-nonexistent-file.html

2011-04-19  John Knottenbelt  <jknotten@chromium.org>

        Unreviewed.

        [Chromium] Mark fast/block/float/overhanging-tall-block.html as failing on Windows and Linux.
        https://bugs.webkit.org/show_bug.cgi?id=58901

        * platform/chromium/test_expectations.txt:

2011-04-19  Csaba Osztrogonác  <ossy@webkit.org>

        [Qt] REGRESSION(84176): http/tests/xmlhttprequest/event-listener-gc.html fails
        https://bugs.webkit.org/show_bug.cgi?id=58871

        Unreviewed, rolling out r84176, r84178, r84186, r84212 and r84231.
        http://trac.webkit.org/changeset/84176 (original patch)
        http://trac.webkit.org/changeset/84178 (original patch - part 2)
        http://trac.webkit.org/changeset/84186 (build fix)
        http://trac.webkit.org/changeset/84212
        http://trac.webkit.org/changeset/84231 (skip failing test)

        original bugs:
         - https://bugs.webkit.org/show_bug.cgi?id=58718
         - https://bugs.webkit.org/show_bug.cgi?id=58853

        * platform/qt/Skipped:

2011-04-19  John Knottenbelt  <jknotten@chromium.org>

        Unreviewed.

        [Chromium] New mac snowleopard baseline for fast/overflow/003.xml
        https://bugs.webkit.org/show_bug.cgi?id=58885

        * platform/chromium-mac/fast/overflow/003-expected.png: Added.

2011-04-19  John Knottenbelt  <jknotten@chromium.org>

        Unreviewed.

        [Chromium] Mark fast/css/create_element_align.xhtml as slow.
        https://bugs.webkit.org/show_bug.cgi?id=58884

        * platform/chromium/test_expectations.txt:

2011-04-19  John Knottenbelt  <jknotten@chromium.org>

        Unreviewed.

        [Chromium] Mark fast/events/popup-blocking-timers.html as flaky on Debug Win,Mac,Linux
        https://bugs.webkit.org/show_bug.cgi?id=58882

        Filed chromium bug:
        http://code.google.com/p/chromium/issues/detail?id=79857

        * platform/chromium/test_expectations.txt:

2011-04-19  John Knottenbelt  <jknotten@chromium.org>

        Unreviewed.

        [Chromium] Mark fast/css/only-child-pseudo-class.html as flaky
        https://bugs.webkit.org/show_bug.cgi?id=58881

        Filed chromium bug:
        http://code.google.com/p/chromium/issues/detail?id=79855

        * platform/chromium/test_expectations.txt:

2011-04-19  Balazs Kelemen  <kbalazs@webkit.org>

        Rubber-stamped by Csaba Osztrogonác.

        [Qt][WK2] Skip new eventSender dependent tests.

        * platform/qt-wk2/Skipped:

2011-04-19  John Knottenbelt  <jknotten@chromium.org>

        Unreviewed.

        [Chromium] Mark animations/play-state.html as flaky.
        https://bugs.webkit.org/show_bug.cgi?id=58880

        See also existing chromium bug:
        http://code.google.com/p/chromium/issues/detail?id=76609

        * platform/chromium/test_expectations.txt:

2011-04-19  John Knottenbelt  <jknotten@chromium.org>

        Unreviewed.

        [Chromium] Mark tables/mozilla/bugs/bug28341.html as flaky on Mac
        https://bugs.webkit.org/show_bug.cgi?id=58879

        See also existing chromium bug:
        http://code.google.com/p/chromium/issues/detail?id=32231

        * platform/chromium/test_expectations.txt:

2011-04-19  John Knottenbelt  <jknotten@chromium.org>

        Unreviewed.

        [Chromium] Mark svg/text/font-size-below-point-five.svg as flaky on Linux, Mac
        https://bugs.webkit.org/show_bug.cgi?id=58878

        See also existing chromium bug:
        http://code.google.com/p/chromium/issues/detail?id=74710

        * platform/chromium/test_expectations.txt:

2011-04-19  John Knottenbelt  <jknotten@chromium.org>

        Unreviewed.

        [Chromium] Mark layout test editing/execCommand/delete-empty-container.html as flaky
        https://bugs.webkit.org/show_bug.cgi?id=58877

        Chromium bug filed.
        http://code.google.com/p/chromium/issues/detail?id=79854

        * platform/chromium/test_expectations.txt:

2011-04-19  John Knottenbelt  <jknotten@chromium.org>

        Unreviewed.

        [Chromium] Mark animations/combo-transform-translate+scale.html as flaky
        https://bugs.webkit.org/show_bug.cgi?id=58876

        Chromium bug filed.
        http://code.google.com/p/chromium/issues/detail?id=79853

        * platform/chromium/test_expectations.txt:

2011-04-19  John Knottenbelt  <jknotten@chromium.org>

        Unreviewed.

        [Chromium] Mark fast/table/frame-and-rules.html as flaky
        https://bugs.webkit.org/show_bug.cgi?id=58874

        Chromium bug filed.
        http://code.google.com/p/chromium/issues/detail?id=79851

        * platform/chromium/test_expectations.txt:

2011-04-19  John Knottenbelt  <jknotten@chromium.org>

        Unreviewed.

        [Chromium] Reenable layout test canvas/philip/tests/2d.gradient.interpolate.outside.html
        https://bugs.webkit.org/show_bug.cgi?id=58873

        Fixed in Chromium r81956.
        http://code.google.com/p/chromium/issues/detail?id=79725

        * platform/chromium/test_expectations.txt:

2011-04-19  Csaba Osztrogonác  <ossy@webkit.org>

        [Qt] REGRESSION(84194): http/tests/xmlhttprequest/event-listener-gc.html fails
        https://bugs.webkit.org/show_bug.cgi?id=58871

        * platform/qt/Skipped: Add http/tests/xmlhttprequest/event-listener-gc.html

2011-04-19  Mario Sanchez Prada  <msanchez@igalia.com>

        Unreviewed, rebaselines to fix wrongly added expectations.

        By mistake, I added expectations generated with GTK3 locally
        instead of the expectations generated in the bots using GTK2, so
        we need to add the expectation files as needed.

        * platform/gtk/fast/blockflow/border-styles-vertical-lr-expected.checksum:
        * platform/gtk/fast/blockflow/border-styles-vertical-lr-expected.png:
        * platform/gtk/fast/blockflow/border-styles-vertical-rl-expected.checksum:
        * platform/gtk/fast/blockflow/border-styles-vertical-rl-expected.png:
        * platform/gtk/fast/borders/border-styles-split-expected.checksum:
        * platform/gtk/fast/borders/border-styles-split-expected.png:
        * platform/gtk/fast/borders/mixed-border-styles-radius-expected.checksum:
        * platform/gtk/fast/borders/mixed-border-styles-radius-expected.png:
        * platform/gtk/fast/borders/mixed-border-styles-radius2-expected.checksum:
        * platform/gtk/fast/borders/mixed-border-styles-radius2-expected.png:
        * platform/gtk/fast/borders/webkit-border-radius-expected.checksum:
        * platform/gtk/fast/borders/webkit-border-radius-expected.png:

2011-04-19  Mario Sanchez Prada  <msanchez@igalia.com>

        Unreviewed, added new baselines for the GTK port.

        Added missing baselines to GTK after revisions 83998, 84092 and 84180.

        * platform/gtk/fast/blockflow/border-styles-vertical-lr-expected.checksum: Added.
        * platform/gtk/fast/blockflow/border-styles-vertical-lr-expected.png: Added.
        * platform/gtk/fast/blockflow/border-styles-vertical-lr-expected.txt: Added.
        * platform/gtk/fast/blockflow/border-styles-vertical-rl-expected.checksum: Added.
        * platform/gtk/fast/blockflow/border-styles-vertical-rl-expected.png: Added.
        * platform/gtk/fast/blockflow/border-styles-vertical-rl-expected.txt: Added.
        * platform/gtk/fast/borders/border-styles-split-expected.checksum: Added.
        * platform/gtk/fast/borders/border-styles-split-expected.png: Added.
        * platform/gtk/fast/borders/border-styles-split-expected.txt: Added.
        * platform/gtk/fast/borders/mixed-border-styles-expected.checksum: Added.
        * platform/gtk/fast/borders/mixed-border-styles-expected.png: Added.
        * platform/gtk/fast/borders/mixed-border-styles-expected.txt: Added.
        * platform/gtk/fast/borders/mixed-border-styles-radius-expected.checksum: Added.
        * platform/gtk/fast/borders/mixed-border-styles-radius-expected.png: Added.
        * platform/gtk/fast/borders/mixed-border-styles-radius-expected.txt: Added.
        * platform/gtk/fast/borders/mixed-border-styles-radius2-expected.checksum: Added.
        * platform/gtk/fast/borders/mixed-border-styles-radius2-expected.png: Added.
        * platform/gtk/fast/borders/mixed-border-styles-radius2-expected.txt: Added.
        * platform/gtk/fast/borders/webkit-border-radius-expected.checksum: Added.
        * platform/gtk/fast/borders/webkit-border-radius-expected.png: Added.
        * platform/gtk/fast/borders/webkit-border-radius-expected.txt: Added.

2011-04-18  Taiju TSUIKI  <develop@tzik.jp>

        Reviewed by Darin Fisher.

        Vendor-prefix requestFileSystem in FileSystem API
        https://bugs.webkit.org/show_bug.cgi?id=58517

        Prefix from:
        - window.requestFileSystem to window.webkitRequestFileSystem
        - window.resolveLocalFileSystemURL to window.webkitResolveLocalFileSystemURL
        - window.Flags to window.WebKitFlags
        - WorkerContext.requestFileSystem to WorkerContext.webkitRequestFileSystem
        - WorkerContext.resolveLocalFileSystemURL to WorkerContext.webkitResolveLocalFileSystemURL
        - WorkerContext.Flags to WorkerContext.WebKitFlags

        * fast/dom/script-tests/prototype-inheritance.js:
        * fast/filesystem/flags-passing-expected.txt:
        * fast/filesystem/resources/async-operations.js:
        * fast/filesystem/resources/directory-entry-to-uri.js:
        * fast/filesystem/resources/file-entry-to-uri-sync.js:
        * fast/filesystem/resources/file-entry-to-uri.js:
        * fast/filesystem/resources/file-from-file-entry-sync.js:
        * fast/filesystem/resources/file-from-file-entry.js:
        * fast/filesystem/resources/file-writer-sync-truncate-extend.js:
        * fast/filesystem/resources/file-writer-sync-write-overlapped.js:
        * fast/filesystem/resources/file-writer-utils.js:
        * fast/filesystem/resources/fs-worker-common.js:
        * fast/filesystem/resources/op-tests-helper.js:
        * fast/filesystem/resources/simple-persistent-sync.js:
        * fast/filesystem/resources/simple-persistent.js:
        * fast/filesystem/resources/simple-temporary-sync.js:
        * fast/filesystem/resources/simple-temporary.js:
        * fast/filesystem/resources/sync-operations.js:
        * fast/filesystem/script-tests/filesystem-reference.js:
        * fast/filesystem/script-tests/flags-passing.js:
        * fast/filesystem/script-tests/read-directory.js:
        * http/tests/filesystem/resolve-uri-expected.txt:
        * http/tests/filesystem/script-tests/resolve-uri.js:
        * http/tests/filesystem/workers/resolve-url-expected.txt:
        * http/tests/filesystem/workers/script-tests/resolve-url-sync.js:
        * platform/chromium/fast/dom/prototype-inheritance-expected.txt:

2011-04-18  Daniel Bates  <dbates@rim.com>

        https://bugs.webkit.org/show_bug.cgi?id=58863

        Skip fast/events/fire-mousedown-while-pressing-mouse-button.html which is failing on
        Qt Linux for now. See bug for more details.

        This test was added in changeset 84217 <http://trac.webkit.org/changeset/84217>
        (https://bugs.webkit.org/show_bug.cgi?id=58700).

        * platform/qt/Skipped:

2011-04-18  Zan Dobersek  <zandobersek@gmail.com>

        Reviewed by Martin Robinson.

        Update pixel results for tests that draw the selection rectangle.

        * platform/gtk/editing/selection/4402375-expected.checksum:
        * platform/gtk/editing/selection/4402375-expected.png:
        * platform/gtk/editing/selection/image-before-linebreak-expected.checksum:
        * platform/gtk/editing/selection/image-before-linebreak-expected.png:
        * platform/gtk/editing/selection/replaced-boundaries-1-expected.checksum:
        * platform/gtk/editing/selection/replaced-boundaries-1-expected.png:
        * platform/gtk/editing/selection/replaced-boundaries-2-expected.checksum:
        * platform/gtk/editing/selection/replaced-boundaries-2-expected.png:
        * platform/gtk/editing/selection/replaced-boundaries-3-expected.checksum:
        * platform/gtk/editing/selection/replaced-boundaries-3-expected.png:
        * platform/gtk/editing/selection/transformed-selection-rects-expected.checksum:
        * platform/gtk/editing/selection/transformed-selection-rects-expected.png:
        * platform/gtk/svg/text/foreignObject-text-clipping-bug-expected.checksum:
        * platform/gtk/svg/text/foreignObject-text-clipping-bug-expected.png:
        * platform/gtk/svg/text/selection-doubleclick-expected.checksum:
        * platform/gtk/svg/text/selection-doubleclick-expected.png:
        * platform/gtk/svg/text/selection-tripleclick-expected.checksum:
        * platform/gtk/svg/text/selection-tripleclick-expected.png:
        * platform/gtk/svg/text/text-align-01-b-expected.checksum:
        * platform/gtk/svg/text/text-align-01-b-expected.png:
        * platform/gtk/svg/text/text-align-02-b-expected.checksum:
        * platform/gtk/svg/text/text-align-02-b-expected.png:
        * platform/gtk/svg/text/text-align-03-b-expected.checksum:
        * platform/gtk/svg/text/text-align-03-b-expected.png:
        * platform/gtk/svg/text/text-align-04-b-expected.checksum:
        * platform/gtk/svg/text/text-align-04-b-expected.png:
        * platform/gtk/svg/text/text-align-05-b-expected.checksum:
        * platform/gtk/svg/text/text-align-05-b-expected.png:
        * platform/gtk/svg/text/text-align-06-b-expected.checksum:
        * platform/gtk/svg/text/text-align-06-b-expected.png:
        * platform/gtk/svg/text/text-altglyph-01-b-expected.checksum:
        * platform/gtk/svg/text/text-altglyph-01-b-expected.png:
        * platform/gtk/svg/text/text-deco-01-b-expected.checksum:
        * platform/gtk/svg/text/text-deco-01-b-expected.png:
        * platform/gtk/svg/text/text-fonts-01-t-expected.checksum:
        * platform/gtk/svg/text/text-fonts-01-t-expected.png:
        * platform/gtk/svg/text/text-fonts-02-t-expected.checksum:
        * platform/gtk/svg/text/text-fonts-02-t-expected.png:
        * platform/gtk/svg/text/text-intro-05-t-expected.checksum:
        * platform/gtk/svg/text/text-intro-05-t-expected.png:
        * platform/gtk/svg/text/text-path-01-b-expected.checksum:
        * platform/gtk/svg/text/text-path-01-b-expected.png:
        * platform/gtk/svg/text/text-spacing-01-b-expected.checksum:
        * platform/gtk/svg/text/text-spacing-01-b-expected.png:
        * platform/gtk/svg/text/text-text-01-b-expected.checksum:
        * platform/gtk/svg/text/text-text-01-b-expected.png:
        * platform/gtk/svg/text/text-text-03-b-expected.checksum:
        * platform/gtk/svg/text/text-text-03-b-expected.png:
        * platform/gtk/svg/text/text-text-04-t-expected.checksum:
        * platform/gtk/svg/text/text-text-04-t-expected.png:
        * platform/gtk/svg/text/text-text-05-t-expected.checksum:
        * platform/gtk/svg/text/text-text-05-t-expected.png:
        * platform/gtk/svg/text/text-text-06-t-expected.checksum:
        * platform/gtk/svg/text/text-text-06-t-expected.png:
        * platform/gtk/svg/text/text-text-07-t-expected.checksum:
        * platform/gtk/svg/text/text-text-07-t-expected.png:
        * platform/gtk/svg/text/text-text-08-b-expected.checksum:
        * platform/gtk/svg/text/text-text-08-b-expected.png:
        * platform/gtk/svg/text/text-tref-01-b-expected.checksum:
        * platform/gtk/svg/text/text-tref-01-b-expected.png:
        * platform/gtk/svg/text/text-tselect-01-b-expected.checksum:
        * platform/gtk/svg/text/text-tselect-01-b-expected.png:
        * platform/gtk/svg/text/text-tselect-02-f-expected.checksum:
        * platform/gtk/svg/text/text-tselect-02-f-expected.png:
        * platform/gtk/svg/text/text-tspan-01-b-expected.checksum:
        * platform/gtk/svg/text/text-tspan-01-b-expected.png:
        * platform/gtk/svg/text/text-ws-01-t-expected.checksum:
        * platform/gtk/svg/text/text-ws-01-t-expected.png:
        * platform/gtk/svg/text/text-ws-02-t-expected.checksum:
        * platform/gtk/svg/text/text-ws-02-t-expected.png:
        * platform/gtk/svg/text/textPathBoundsBug-expected.checksum:
        * platform/gtk/svg/text/textPathBoundsBug-expected.png:

2011-04-18  Mike Reed  <reed@google.com>

        Reviewed by Kenneth Russell.

        remove tests from test_expectations.txt, as they now pass
        https://bugs.webkit.org/show_bug.cgi?id=58813

        * platform/chromium/test_expectations.txt:

2011-04-18  Daniel Bates  <dbates@rim.com>

        Reviewed by Adam Roben.

        With PAN_SCROLLING, mousedown events for a mouse button aren't dispatched while
        pressing-and-holding another mouse button
        https://bugs.webkit.org/show_bug.cgi?id=58700

        Test to ensure that a mousedown event is fired when pressing a mouse button A
        while pressing and holding a mouse button B, where A != B.

        * fast/events/fire-mousedown-while-pressing-mouse-button-expected.txt: Added.
        * fast/events/fire-mousedown-while-pressing-mouse-button.html: Added.

2011-04-18  Jessie Berlin  <jberlin@apple.com>

        WebKitTestRunner needs a more-complete implementation of eventSender.
        https://bugs.webkit.org/show_bug.cgi?id=42194

        Skip fullscreen/full-screen-cancel.html (which uses eventSender.keyDown) in the WK2 tests.

        * platform/mac-wk2/Skipped:

2011-04-05  Jer Noble  <jer.noble@apple.com>

        Reviewed by Sam Weinig.

        WebKit2: WKTR should support WebKit2 full screen APIs
        https://bugs.webkit.org/show_bug.cgi?id=56318

        WKTR does not support the eventSender.keyDown() method, so use mouseDown()
        in those cases that keyDown() does not exist.

        * fullscreen/full-screen-test.js:
        (runWithKeyDown.document.addEventListener):
        (runWithKeyDown):

2011-04-18  Evan Martin  <evan@chromium.org>

        Reviewed by Eric Seidel.

        [chromium] expose title direction to webkit client
        https://bugs.webkit.org/show_bug.cgi?id=58823

        New test that checks the directionality of the title for some
        simple pages.

        * fast/dom/title-directionality-expected.txt: Added.
        * fast/dom/title-directionality.html: Added.

2011-04-18  Chang Shu  <cshu@webkit.org>

        Unreviewed.

        Skip failed test due to r84160.

        * platform/win-wk2/Skipped:

2011-04-18  Simon Fraser  <simon.fraser@apple.com>

        Reviewed by Dave Hyatt.

        Add some new tests that exercise border-drawing on split inlines.

        * fast/blockflow/border-styles-vertical-lr.html: Added.
        * fast/blockflow/border-styles-vertical-rl.html: Added.
        * fast/borders/border-styles-split.html: Added.
        * platform/mac/fast/blockflow/border-styles-vertical-lr-expected.checksum: Added.
        * platform/mac/fast/blockflow/border-styles-vertical-lr-expected.png: Added.
        * platform/mac/fast/blockflow/border-styles-vertical-lr-expected.txt: Added.
        * platform/mac/fast/blockflow/border-styles-vertical-rl-expected.checksum: Added.
        * platform/mac/fast/blockflow/border-styles-vertical-rl-expected.png: Added.
        * platform/mac/fast/blockflow/border-styles-vertical-rl-expected.txt: Added.
        * platform/mac/fast/borders/border-styles-split-expected.checksum: Added.
        * platform/mac/fast/borders/border-styles-split-expected.png: Added.
        * platform/mac/fast/borders/border-styles-split-expected.txt: Added.

2011-04-18  Alejandro G. Castro  <alex@igalia.com>

        Skipping overhanging-tall-block.html, it is crashing in the GTK+ bots.

        * platform/gtk/Skipped:

2011-04-18  Andrew Scherkus  <scherkus@chromium.org>

        Reviewed by Eric Seidel.

        Reset fullscreen element reference when leaving fullscreen mode and some other cleanup.

        https://bugs.webkit.org/show_bug.cgi?id=58719

        * fullscreen/full-screen-cancel-expected.txt: Added.
        * fullscreen/full-screen-cancel.html: Added.

2011-04-18  Andreas Kling  <kling@webkit.org>

        Reviewed by Adam Barth.

        [Qt] DRT: Unbreak redirection of http:/ URLs.
        https://bugs.webkit.org/show_bug.cgi?id=58779

        * platform/qt/Skipped: Unskip http/tests/loading/cross-origin-XHR-willLoadRequest.html

2011-04-18  Chris Rogers  <crogers@google.com>

        Unreviewed.

        Update test_expectations.txt
        https://bugs.webkit.org/show_bug.cgi?id=58810

        * platform/chromium/test_expectations.txt:

2011-04-18  Dan Bernstein  <mitz@apple.com>

        Reviewed by Eric Seidel.

        <rdar://problem/9282486> REGRESSION (r81992): Facebook photo tags can get cut off when moving the mouse.
        https://bugs.webkit.org/show_bug.cgi?id=58500

        * fast/repaint/text-in-relative-positioned-inline-expected.checksum: Added.
        * fast/repaint/text-in-relative-positioned-inline-expected.png: Added.
        * fast/repaint/text-in-relative-positioned-inline-expected.txt: Added.
        * fast/repaint/text-in-relative-positioned-inline.html: Added.

2011-04-18  Chang Shu  <cshu@webkit.org>

        Reviewed by Eric Seidel.

        WebKitTestRunner needs layoutTestController.pathToLocalResource
        https://bugs.webkit.org/show_bug.cgi?id=42541

        Unskip passed tests.

        * platform/mac-wk2/Skipped:
        * platform/qt-wk2/Skipped:

2011-04-18  Hao Zheng  <zhenghao@chromium.org>

        Reviewed by Eric Seidel.

        Rebaseline 3 tests under chromium-gpu-linux port.
        https://bugs.webkit.org/show_bug.cgi?id=58627

        * platform/chromium-gpu-linux/fast/media: Added.
        * platform/chromium-gpu-linux/fast/media/mq-transform-02-expected.checksum: Added.
        * platform/chromium-gpu-linux/fast/media/mq-transform-02-expected.png: Added.
        * platform/chromium-gpu-linux/fast/media/mq-transform-02-expected.txt: Added.
        * platform/chromium-gpu-linux/fast/media/mq-transform-03-expected.checksum: Added.
        * platform/chromium-gpu-linux/fast/media/mq-transform-03-expected.png: Added.
        * platform/chromium-gpu-linux/fast/media/mq-transform-03-expected.txt: Added.
        * platform/chromium-gpu-linux/fast/repaint: Added.
        * platform/chromium-gpu-linux/fast/repaint/canvas-putImageData-expected.checksum: Added.
        * platform/chromium-gpu-linux/fast/repaint/canvas-putImageData-expected.png: Added.
        * platform/chromium-gpu-linux/fast/repaint/canvas-putImageData-expected.txt: Added.

2011-04-18  Pavel Feldman  <pfeldman@google.com>

        Reviewed by Yury Semikhatsky.

        Web Inspector: add test for CSS-resource binding.
        https://bugs.webkit.org/show_bug.cgi?id=58786

        * inspector/styles/resources/styles-history.css: Added.
        (body):
        * inspector/styles/styles-history-expecte.txt: Added.
        * inspector/styles/styles-history.html: Added.
        * inspector/styles/styles-source-offsets.html:

2011-04-18  Sheriff Bot  <webkit.review.bot@gmail.com>

        Unreviewed, rolling out r83996.
        http://trac.webkit.org/changeset/83996
        https://bugs.webkit.org/show_bug.cgi?id=58790

        layout test editing/selection/move-by-word-visually.html is
        failing (Requested by jknotten on #webkit).

        * editing/selection/move-by-word-visually-expected.txt:
        * editing/selection/move-by-word-visually.html:

2011-04-18  Sheriff Bot  <webkit.review.bot@gmail.com>

        Unreviewed, rolling out r83803.
        http://trac.webkit.org/changeset/83803
        https://bugs.webkit.org/show_bug.cgi?id=58782

        Caused focus rings to appear in youtube videos (Requested by
        inferno-sec on #webkit).

        * fast/frames/iframe-outline.html: Removed.
        * platform/mac/fast/frames/iframe-outline-expected.checksum: Removed.
        * platform/mac/fast/frames/iframe-outline-expected.png: Removed.
        * platform/mac/fast/frames/iframe-outline-expected.txt: Removed.

2011-04-18  Adam Roben  <aroben@apple.com>

        Skip a flaky test on Windows

        <http://webkit.org/b/58367> tracks the failure.

        * platform/win/Skipped: Added http/tests/inspector/resource-tree-model.html.

2011-04-18  John Knottenbelt  <jknotten@chromium.org>

        Unreviewed.

        [Chromium] Rebaseline for fast/html/details-add-summary-1
        https://bugs.webkit.org/show_bug.cgi?id=58783

    Following changes to after changes to RenderDetailsMarker (r84039).

        * platform/chromium-linux/fast/html/details-add-summary-1-expected.png:
        * platform/chromium-mac-leopard/fast/html/details-add-summary-1-expected.png:
        * platform/chromium-win/fast/html/details-add-summary-1-expected.png:
        * platform/chromium-win/fast/html/details-add-summary-1-expected.txt:

2011-04-18  Dominic Cooney  <dominicc@chromium.org>

        Reviewed by Andreas Kling.

        Add layoutTestController.shadowRoot to Qt DRT.
        https://bugs.webkit.org/show_bug.cgi?id=58759

        * platform/qt/Skipped: unskip fast/dom/HTMLKeygenElement now

2011-04-18  Alexander Pavlov  <apavlov@chromium.org>

        Reviewed by Yury Semikhatsky.

        Web Inspector: Incorrect content area dimensions in Metrics pane for box-sizing: border-box
        https://bugs.webkit.org/show_bug.cgi?id=58551

        * inspector/styles/metrics-box-sizing-expected.txt: Added.
        * inspector/styles/metrics-box-sizing.html: Added.

2011-04-18  Andrey Kosyakov  <caseq@chromium.org>

        Unreviewed. Added chromium baselines for new tests.

        * platform/chromium-linux/fast/text/zero-font-size-expected.png: Added.
        * platform/chromium-mac-leopard/fast/text/zero-font-size-expected.png: Added.
        * platform/chromium-mac-leopard/svg/dynamic-updates/SVGFEDiffuseLightingElement-inherit-lighting-color-css-prop-expected.png: Added.
        * platform/chromium-mac-leopard/svg/dynamic-updates/SVGFEFloodElement-inherit-flood-color-expected.png: Added.
        * platform/chromium-mac-leopard/svg/dynamic-updates/SVGFESpecularLightingElement-inherit-lighting-color-css-prop-expected.png: Added.
        * platform/chromium-mac-leopard/svg/dynamic-updates/SVGFESpecularLightingElement-lighting-color-css-prop-expected.png: Added.
        * platform/chromium-mac/fast/canvas/image-object-in-canvas-expected.png: Added.
        * platform/chromium-mac/fast/forms/select-background-none-expected.checksum: Removed.
        * platform/chromium-mac/fast/forms/select-background-none-expected.png: Removed.
        * platform/chromium-win/fast/forms/select-background-none-expected.png: Added.
        * platform/chromium-win/fast/forms/select-background-none-expected.txt: Added.
        * platform/chromium-win/fast/frames/iframe-outline-expected.png: Added.
        * platform/chromium-win/fast/text/zero-font-size-expected.png: Added.
        * platform/chromium-win/fast/text/zero-font-size-expected.txt: Added.
        * platform/chromium/test_expectations.txt:

2011-04-18  Andrey Kosyakov  <caseq@chromium.org>

        Unreviewed. Added suppressions for shadow texts broken by r83936.

        * platform/chromium/test_expectations.txt:

2011-04-18  John Knottenbelt  <jknotten@chromium.org>

        Unreviewed.

        [Chromium] Update test expectations for canvas/philip/tests/2d.gradient.interpolate.outside.html
        https://bugs.webkit.org/show_bug.cgi?id=58777

    Regression caused by Skia roll: Chromium r81836.

        * platform/chromium/test_expectations.txt:

2011-04-18  John Knottenbelt  <jknotten@chromium.org>

        Unreviewed.

        [Chromium] Rebaseline after changes to RenderDetailsMarker (Linux, Mac) (r84039)
        https://bugs.webkit.org/show_bug.cgi?id=58775

        * platform/chromium-linux/fast/html/details-add-summary-1-and-click-expected.png:
        * platform/chromium-linux/fast/html/details-add-summary-10-and-click-expected.png:
        * platform/chromium-linux/fast/html/details-add-summary-10-expected.png:
        * platform/chromium-linux/fast/html/details-add-summary-2-and-click-expected.png:
        * platform/chromium-linux/fast/html/details-add-summary-2-expected.png:
        * platform/chromium-linux/fast/html/details-add-summary-3-and-click-expected.png:
        * platform/chromium-linux/fast/html/details-add-summary-3-expected.png:
        * platform/chromium-linux/fast/html/details-add-summary-4-and-click-expected.png:
        * platform/chromium-linux/fast/html/details-add-summary-4-expected.png:
        * platform/chromium-linux/fast/html/details-add-summary-5-and-click-expected.png:
        * platform/chromium-linux/fast/html/details-add-summary-5-expected.png:
        * platform/chromium-linux/fast/html/details-add-summary-6-and-click-expected.png:
        * platform/chromium-linux/fast/html/details-add-summary-6-expected.png:
        * platform/chromium-linux/fast/html/details-add-summary-7-and-click-expected.png:
        * platform/chromium-linux/fast/html/details-add-summary-7-expected.png:
        * platform/chromium-linux/fast/html/details-add-summary-8-and-click-expected.png:
        * platform/chromium-linux/fast/html/details-add-summary-8-expected.png:
        * platform/chromium-linux/fast/html/details-add-summary-9-and-click-expected.png:
        * platform/chromium-linux/fast/html/details-add-summary-9-expected.png:
        * platform/chromium-linux/fast/html/details-no-summary1-expected.png:
        * platform/chromium-linux/fast/html/details-no-summary2-expected.png:
        * platform/chromium-linux/fast/html/details-no-summary3-expected.png:
        * platform/chromium-linux/fast/html/details-no-summary4-expected.png:
        * platform/chromium-linux/fast/html/details-open-javascript-expected.png:
        * platform/chromium-linux/fast/html/details-open1-expected.png:
        * platform/chromium-linux/fast/html/details-open2-expected.png:
        * platform/chromium-linux/fast/html/details-open3-expected.png:
        * platform/chromium-linux/fast/html/details-open4-expected.png:
        * platform/chromium-linux/fast/html/details-open5-expected.png:
        * platform/chromium-linux/fast/html/details-open6-expected.png:
        * platform/chromium-linux/fast/html/details-position-expected.png:
        * platform/chromium-linux/fast/html/details-remove-summary-1-and-click-expected.png:
        * platform/chromium-linux/fast/html/details-remove-summary-1-expected.png:
        * platform/chromium-linux/fast/html/details-remove-summary-2-and-click-expected.png:
        * platform/chromium-linux/fast/html/details-remove-summary-2-expected.png:
        * platform/chromium-linux/fast/html/details-remove-summary-3-and-click-expected.png:
        * platform/chromium-linux/fast/html/details-remove-summary-3-expected.png:
        * platform/chromium-linux/fast/html/details-remove-summary-4-and-click-expected.png:
        * platform/chromium-linux/fast/html/details-remove-summary-4-expected.png:
        * platform/chromium-linux/fast/html/details-remove-summary-5-and-click-expected.png:
        * platform/chromium-linux/fast/html/details-remove-summary-5-expected.png:
        * platform/chromium-linux/fast/html/details-remove-summary-6-and-click-expected.png:
        * platform/chromium-linux/fast/html/details-remove-summary-6-expected.png:
        * platform/chromium-linux/fast/html/details-writing-mode-expected.png:
        * platform/chromium-mac-leopard/fast/html/details-add-summary-1-and-click-expected.png:
        * platform/chromium-mac-leopard/fast/html/details-add-summary-10-and-click-expected.png:
        * platform/chromium-mac-leopard/fast/html/details-add-summary-10-expected.png:
        * platform/chromium-mac-leopard/fast/html/details-add-summary-2-and-click-expected.png:
        * platform/chromium-mac-leopard/fast/html/details-add-summary-2-expected.png:
        * platform/chromium-mac-leopard/fast/html/details-add-summary-3-and-click-expected.png:
        * platform/chromium-mac-leopard/fast/html/details-add-summary-3-expected.png:
        * platform/chromium-mac-leopard/fast/html/details-add-summary-4-and-click-expected.png:
        * platform/chromium-mac-leopard/fast/html/details-add-summary-4-expected.png:
        * platform/chromium-mac-leopard/fast/html/details-add-summary-5-and-click-expected.png:
        * platform/chromium-mac-leopard/fast/html/details-add-summary-5-expected.png:
        * platform/chromium-mac-leopard/fast/html/details-add-summary-6-and-click-expected.png:
        * platform/chromium-mac-leopard/fast/html/details-add-summary-6-expected.png:
        * platform/chromium-mac-leopard/fast/html/details-add-summary-7-and-click-expected.png:
        * platform/chromium-mac-leopard/fast/html/details-add-summary-7-expected.png:
        * platform/chromium-mac-leopard/fast/html/details-add-summary-8-and-click-expected.png:
        * platform/chromium-mac-leopard/fast/html/details-add-summary-8-expected.png:
        * platform/chromium-mac-leopard/fast/html/details-add-summary-9-and-click-expected.png:
        * platform/chromium-mac-leopard/fast/html/details-add-summary-9-expected.png:
        * platform/chromium-mac-leopard/fast/html/details-no-summary1-expected.png:
        * platform/chromium-mac-leopard/fast/html/details-no-summary2-expected.png:
        * platform/chromium-mac-leopard/fast/html/details-no-summary3-expected.png:
        * platform/chromium-mac-leopard/fast/html/details-no-summary4-expected.png:
        * platform/chromium-mac-leopard/fast/html/details-open-javascript-expected.png:
        * platform/chromium-mac-leopard/fast/html/details-open1-expected.png:
        * platform/chromium-mac-leopard/fast/html/details-open2-expected.png:
        * platform/chromium-mac-leopard/fast/html/details-open3-expected.png:
        * platform/chromium-mac-leopard/fast/html/details-open4-expected.png:
        * platform/chromium-mac-leopard/fast/html/details-open5-expected.png:
        * platform/chromium-mac-leopard/fast/html/details-open6-expected.png:
        * platform/chromium-mac-leopard/fast/html/details-position-expected.png:
        * platform/chromium-mac-leopard/fast/html/details-remove-summary-1-and-click-expected.png:
        * platform/chromium-mac-leopard/fast/html/details-remove-summary-1-expected.png:
        * platform/chromium-mac-leopard/fast/html/details-remove-summary-2-and-click-expected.png:
        * platform/chromium-mac-leopard/fast/html/details-remove-summary-2-expected.png:
        * platform/chromium-mac-leopard/fast/html/details-remove-summary-3-and-click-expected.png:
        * platform/chromium-mac-leopard/fast/html/details-remove-summary-3-expected.png:
        * platform/chromium-mac-leopard/fast/html/details-remove-summary-4-and-click-expected.png:
        * platform/chromium-mac-leopard/fast/html/details-remove-summary-4-expected.png:
        * platform/chromium-mac-leopard/fast/html/details-remove-summary-5-and-click-expected.png:
        * platform/chromium-mac-leopard/fast/html/details-remove-summary-5-expected.png:
        * platform/chromium-mac-leopard/fast/html/details-remove-summary-6-and-click-expected.png:
        * platform/chromium-mac-leopard/fast/html/details-remove-summary-6-expected.png:
        * platform/chromium-mac-leopard/fast/html/details-writing-mode-expected.png:
        * platform/chromium-mac/fast/html/details-add-summary-10-and-click-expected.png: Copied from LayoutTests/platform/chromium-mac-leopard/fast/html/details-add-summary-5-expected.png.
        * platform/chromium-mac/fast/html/details-add-summary-10-expected.png: Added.

2011-04-18  John Knottenbelt  <jknotten@chromium.org>

        Unreviewed.

        [Chromium] Rebaseline after changes to RenderDetailsMarker (r84039)
        https://bugs.webkit.org/show_bug.cgi?id=58767

        * platform/chromium-win/fast/html/details-add-summary-1-and-click-expected.png:
        * platform/chromium-win/fast/html/details-add-summary-1-and-click-expected.txt:
        * platform/chromium-win/fast/html/details-add-summary-10-and-click-expected.png:
        * platform/chromium-win/fast/html/details-add-summary-10-and-click-expected.txt:
        * platform/chromium-win/fast/html/details-add-summary-10-expected.png:
        * platform/chromium-win/fast/html/details-add-summary-10-expected.txt:
        * platform/chromium-win/fast/html/details-add-summary-2-and-click-expected.png:
        * platform/chromium-win/fast/html/details-add-summary-2-and-click-expected.txt:
        * platform/chromium-win/fast/html/details-add-summary-2-expected.png:
        * platform/chromium-win/fast/html/details-add-summary-2-expected.txt:
        * platform/chromium-win/fast/html/details-add-summary-3-and-click-expected.png:
        * platform/chromium-win/fast/html/details-add-summary-3-and-click-expected.txt:
        * platform/chromium-win/fast/html/details-add-summary-3-expected.png:
        * platform/chromium-win/fast/html/details-add-summary-3-expected.txt:
        * platform/chromium-win/fast/html/details-add-summary-4-and-click-expected.png:
        * platform/chromium-win/fast/html/details-add-summary-4-and-click-expected.txt:
        * platform/chromium-win/fast/html/details-add-summary-4-expected.png:
        * platform/chromium-win/fast/html/details-add-summary-4-expected.txt:
        * platform/chromium-win/fast/html/details-add-summary-5-and-click-expected.png:
        * platform/chromium-win/fast/html/details-add-summary-5-and-click-expected.txt:
        * platform/chromium-win/fast/html/details-add-summary-5-expected.png:
        * platform/chromium-win/fast/html/details-add-summary-5-expected.txt:
        * platform/chromium-win/fast/html/details-add-summary-6-and-click-expected.png:
        * platform/chromium-win/fast/html/details-add-summary-6-and-click-expected.txt:
        * platform/chromium-win/fast/html/details-add-summary-6-expected.png:
        * platform/chromium-win/fast/html/details-add-summary-6-expected.txt:
        * platform/chromium-win/fast/html/details-add-summary-7-and-click-expected.png:
        * platform/chromium-win/fast/html/details-add-summary-7-and-click-expected.txt:
        * platform/chromium-win/fast/html/details-add-summary-7-expected.png:
        * platform/chromium-win/fast/html/details-add-summary-7-expected.txt:
        * platform/chromium-win/fast/html/details-add-summary-8-and-click-expected.png:
        * platform/chromium-win/fast/html/details-add-summary-8-and-click-expected.txt:
        * platform/chromium-win/fast/html/details-add-summary-8-expected.png:
        * platform/chromium-win/fast/html/details-add-summary-8-expected.txt:
        * platform/chromium-win/fast/html/details-add-summary-9-and-click-expected.png:
        * platform/chromium-win/fast/html/details-add-summary-9-and-click-expected.txt:
        * platform/chromium-win/fast/html/details-add-summary-9-expected.png:
        * platform/chromium-win/fast/html/details-add-summary-9-expected.txt:
        * platform/chromium-win/fast/html/details-no-summary1-expected.png:
        * platform/chromium-win/fast/html/details-no-summary1-expected.txt:
        * platform/chromium-win/fast/html/details-no-summary2-expected.png:
        * platform/chromium-win/fast/html/details-no-summary2-expected.txt:
        * platform/chromium-win/fast/html/details-no-summary3-expected.png:
        * platform/chromium-win/fast/html/details-no-summary3-expected.txt:
        * platform/chromium-win/fast/html/details-no-summary4-expected.png:
        * platform/chromium-win/fast/html/details-no-summary4-expected.txt:
        * platform/chromium-win/fast/html/details-open-javascript-expected.png:
        * platform/chromium-win/fast/html/details-open-javascript-expected.txt:
        * platform/chromium-win/fast/html/details-open1-expected.png:
        * platform/chromium-win/fast/html/details-open1-expected.txt:
        * platform/chromium-win/fast/html/details-open2-expected.png:
        * platform/chromium-win/fast/html/details-open2-expected.txt:
        * platform/chromium-win/fast/html/details-open3-expected.png:
        * platform/chromium-win/fast/html/details-open3-expected.txt:
        * platform/chromium-win/fast/html/details-open4-expected.png:
        * platform/chromium-win/fast/html/details-open4-expected.txt:
        * platform/chromium-win/fast/html/details-open5-expected.png:
        * platform/chromium-win/fast/html/details-open5-expected.txt:
        * platform/chromium-win/fast/html/details-open6-expected.png:
        * platform/chromium-win/fast/html/details-open6-expected.txt:
        * platform/chromium-win/fast/html/details-position-expected.png:
        * platform/chromium-win/fast/html/details-position-expected.txt:
        * platform/chromium-win/fast/html/details-remove-summary-1-and-click-expected.png:
        * platform/chromium-win/fast/html/details-remove-summary-1-and-click-expected.txt:
        * platform/chromium-win/fast/html/details-remove-summary-1-expected.png:
        * platform/chromium-win/fast/html/details-remove-summary-1-expected.txt:
        * platform/chromium-win/fast/html/details-remove-summary-2-and-click-expected.png:
        * platform/chromium-win/fast/html/details-remove-summary-2-and-click-expected.txt:
        * platform/chromium-win/fast/html/details-remove-summary-2-expected.png:
        * platform/chromium-win/fast/html/details-remove-summary-2-expected.txt:
        * platform/chromium-win/fast/html/details-remove-summary-3-and-click-expected.png:
        * platform/chromium-win/fast/html/details-remove-summary-3-and-click-expected.txt:
        * platform/chromium-win/fast/html/details-remove-summary-3-expected.png:
        * platform/chromium-win/fast/html/details-remove-summary-3-expected.txt:
        * platform/chromium-win/fast/html/details-remove-summary-4-and-click-expected.png:
        * platform/chromium-win/fast/html/details-remove-summary-4-and-click-expected.txt:
        * platform/chromium-win/fast/html/details-remove-summary-4-expected.png:
        * platform/chromium-win/fast/html/details-remove-summary-4-expected.txt:
        * platform/chromium-win/fast/html/details-remove-summary-5-and-click-expected.png:
        * platform/chromium-win/fast/html/details-remove-summary-5-and-click-expected.txt:
        * platform/chromium-win/fast/html/details-remove-summary-5-expected.png:
        * platform/chromium-win/fast/html/details-remove-summary-5-expected.txt:
        * platform/chromium-win/fast/html/details-remove-summary-6-and-click-expected.png:
        * platform/chromium-win/fast/html/details-remove-summary-6-and-click-expected.txt:
        * platform/chromium-win/fast/html/details-remove-summary-6-expected.png:
        * platform/chromium-win/fast/html/details-remove-summary-6-expected.txt:
        * platform/chromium-win/fast/html/details-writing-mode-expected.png:
        * platform/chromium-win/fast/html/details-writing-mode-expected.txt:
        * platform/chromium/test_expectations.txt:

2011-04-17  Csaba Osztrogonác  <ossy@webkit.org>

        Update Qt specific expected files after r84039.

        * platform/qt/fast/html/details-[...] : Updated.

2011-04-17  Dan Bernstein  <mitz@apple.com>

        Reviewed by Maciej Stachowiak.

        REGRESSION (r84096): <br> moved to the right in fast/block/float/032.html
        https://bugs.webkit.org/show_bug.cgi?id=58736

        Revert to the correct results.

        * platform/chromium-win/fast/block/float/032-expected.txt:
        * platform/gtk/fast/block/float/032-expected.txt:
        * platform/mac/fast/block/float/032-expected.txt:
        * platform/qt/fast/block/float/032-expected.txt:

2011-04-17  Gavin Peters  <gavinp@chromium.org>

        Reviewed by Adam Barth.

        Add support for link rel type "subresource"
        https://bugs.webkit.org/show_bug.cgi?id=57842

        Link rel=prefetch is great for cache warming for resources on
        subsequent pages, but it launches requests at too low a priority
        to use for subresources of the current page.

        During testing, I was dissapointed to see the results for the http
        test below don't give the subresource priority ordering.  This is
        another instance of https://bugs.webkit.org/show_bug.cgi?id=49238
        which I'll be working on next, and thus fix the test.

        * fast/dom/HTMLLinkElement/subresource-expected.txt: Added.
        * fast/dom/HTMLLinkElement/subresource.html: Added.
        * http/tests/misc/link-rel-prefetch-and-subresource-expected.txt: Added.
        * http/tests/misc/link-rel-prefetch-and-subresource.html: Added.
        * platform/gtk/Skipped:
        * platform/mac/Skipped:
        * platform/qt/Skipped:
        * platform/win/Skipped:

2011-04-16  Dan Bernstein  <mitz@apple.com>

        Updated results for fast/block/float/032.html after r84096. Filed http://webkit.org/b/58736 to
        track this change.

        * platform/chromium-win/fast/block/float/032-expected.txt:
        * platform/gtk/fast/block/float/032-expected.txt:
        * platform/mac/fast/block/float/032-expected.txt:
        * platform/qt/fast/block/float/032-expected.txt:

2011-04-16  Balazs Kelemen  <kbalazs@webkit.org>

        Unreviewed.

        [Qt][WK2] Unskip fast/loader/null-request-after-willSendRequest.html since
        it is passing for a long time.

        * platform/qt-wk2/Skipped:

2011-04-16  Dan Bernstein  <mitz@apple.com>

        Reviewed by Simon Fraser.

        <rdar://problem/9190108> Crash when hiding a float

        * fast/block/float/overhanging-tall-block.html: Added.
        * platform/mac/fast/block/float/overhanging-tall-block-expected.checksum: Added.
        * platform/mac/fast/block/float/overhanging-tall-block-expected.png: Added.
        * platform/mac/fast/block/float/overhanging-tall-block-expected.txt: Added.

2011-04-16  Simon Fraser  <simon.fraser@apple.com>

        Fix border drawing tests to drop -webkit prefix on border-radius, and make the tests compatible with Firefox
        https://bugs.webkit.org/show_bug.cgi?id=58734

        Add result for new test.

        * platform/mac/fast/borders/webkit-border-radius-expected.checksum: Added.
        * platform/mac/fast/borders/webkit-border-radius-expected.png: Added.
        * platform/mac/fast/borders/webkit-border-radius-expected.txt: Added.

2011-04-16  Simon Fraser  <simon.fraser@apple.com>

        Reviewed by Sam Weinig.

        Fix border drawing tests to drop -webkit prefix on border-radius, and make the tests compatible with Firefox
        https://bugs.webkit.org/show_bug.cgi?id=58734

        Drop the -webkit prefix on border-radius in the tests, and remove -moz-border-radius,
        since Firefox supports the unprefixed property now. This avoids the problem where
        -moz-border-radius and -webkit-border-radius had different behaviors when given two values.

        Also unprefix box-sizing for WebKit, and add a -moz prefixed version for Firefox.

        Add a test that compares the behavior of -webkit-border-radius and border-radius with
        two values.

        * fast/borders/border-radius-circle.html:
        * fast/borders/border-radius-constraints.html:
        * fast/borders/border-radius-groove-01.html:
        * fast/borders/border-radius-groove-02.html:
        * fast/borders/border-radius-groove-03.html:
        * fast/borders/border-radius-wide-border-01.html:
        * fast/borders/border-radius-wide-border-02.html:
        * fast/borders/border-radius-wide-border-03.html:
        * fast/borders/border-radius-wide-border-04.html:
        * fast/borders/borderRadiusAllStylesAllCorners.html:
        * fast/borders/borderRadiusArcs01.html:
        * fast/borders/borderRadiusDashed01.html:
        * fast/borders/borderRadiusDashed02.html:
        * fast/borders/borderRadiusDashed03.html:
        * fast/borders/borderRadiusDashed04.html:
        * fast/borders/borderRadiusDashed05.html:
        * fast/borders/borderRadiusDashed06.html:
        * fast/borders/borderRadiusDotted01.html:
        * fast/borders/borderRadiusDotted02.html:
        * fast/borders/borderRadiusDotted03.html:
        * fast/borders/borderRadiusDotted04.html:
        * fast/borders/borderRadiusDotted05.html:
        * fast/borders/borderRadiusDotted06.html:
        * fast/borders/borderRadiusDouble02.html:
        * fast/borders/borderRadiusDouble03.html:
        * fast/borders/borderRadiusDouble04.html:
        * fast/borders/borderRadiusDouble05.html:
        * fast/borders/borderRadiusDouble06.html:
        * fast/borders/borderRadiusDouble07.html:
        * fast/borders/borderRadiusDouble08.html:
        * fast/borders/borderRadiusDouble09.html:
        * fast/borders/borderRadiusGroove01.html:
        * fast/borders/borderRadiusGroove02.html:
        * fast/borders/webkit-border-radius.html: Added.
        * platform/mac/fast/borders/border-radius-groove-01-expected.checksum:
        * platform/mac/fast/borders/border-radius-groove-01-expected.png:
        * platform/mac/fast/borders/border-radius-groove-02-expected.png:
        * platform/mac/fast/borders/border-radius-groove-03-expected.checksum:
        * platform/mac/fast/borders/border-radius-groove-03-expected.png:
        * platform/mac/fast/borders/border-radius-inline-flow-expected.png:
        * platform/mac/fast/borders/border-radius-split-inline-expected.png:
        * platform/mac/fast/borders/border-radius-wide-border-01-expected.png:
        * platform/mac/fast/borders/border-radius-wide-border-02-expected.png:
        * platform/mac/fast/borders/border-radius-wide-border-03-expected.checksum:
        * platform/mac/fast/borders/border-radius-wide-border-03-expected.png:
        * platform/mac/fast/borders/border-radius-wide-border-04-expected.checksum:
        * platform/mac/fast/borders/border-radius-wide-border-04-expected.png:
        * platform/mac/fast/borders/borderRadiusDashed01-expected.png:
        * platform/mac/fast/borders/borderRadiusDashed02-expected.png:
        * platform/mac/fast/borders/borderRadiusDashed03-expected.png:
        * platform/mac/fast/borders/borderRadiusDashed04-expected.png:
        * platform/mac/fast/borders/borderRadiusDashed05-expected.png:
        * platform/mac/fast/borders/borderRadiusDashed06-expected.checksum:
        * platform/mac/fast/borders/borderRadiusDashed06-expected.png:
        * platform/mac/fast/borders/borderRadiusDotted01-expected.png:
        * platform/mac/fast/borders/borderRadiusDotted02-expected.png:
        * platform/mac/fast/borders/borderRadiusDotted03-expected.png:
        * platform/mac/fast/borders/borderRadiusDotted04-expected.png:
        * platform/mac/fast/borders/borderRadiusDotted05-expected.png:
        * platform/mac/fast/borders/borderRadiusDotted06-expected.checksum:
        * platform/mac/fast/borders/borderRadiusDotted06-expected.png:
        * platform/mac/fast/borders/borderRadiusDouble01-expected.png:
        * platform/mac/fast/borders/borderRadiusDouble02-expected.png:
        * platform/mac/fast/borders/borderRadiusDouble03-expected.png:
        * platform/mac/fast/borders/borderRadiusDouble04-expected.png:
        * platform/mac/fast/borders/borderRadiusDouble05-expected.checksum:
        * platform/mac/fast/borders/borderRadiusDouble05-expected.png:
        * platform/mac/fast/borders/borderRadiusDouble06-expected.checksum:
        * platform/mac/fast/borders/borderRadiusDouble06-expected.png:
        * platform/mac/fast/borders/borderRadiusDouble07-expected.checksum:
        * platform/mac/fast/borders/borderRadiusDouble07-expected.png:
        * platform/mac/fast/borders/borderRadiusDouble08-expected.checksum:
        * platform/mac/fast/borders/borderRadiusDouble08-expected.png:
        * platform/mac/fast/borders/borderRadiusDouble09-expected.checksum:
        * platform/mac/fast/borders/borderRadiusDouble09-expected.png:
        * platform/mac/fast/borders/borderRadiusGroove01-expected.png:
        * platform/mac/fast/borders/borderRadiusGroove02-expected.png:
        * platform/mac/fast/borders/borderRadiusInset01-expected.png:
        * platform/mac/fast/borders/borderRadiusInvalidColor-expected.png:
        * platform/mac/fast/borders/borderRadiusOutset01-expected.png:
        * platform/mac/fast/borders/borderRadiusRidge01-expected.png:
        * platform/mac/fast/borders/borderRadiusSolid01-expected.png:
        * platform/mac/fast/borders/borderRadiusSolid02-expected.png:
        * platform/mac/fast/borders/borderRadiusSolid03-expected.png:

2011-04-16  Leo Yang  <leoyang.webkit@gmail.com>

        Reviewed by Nikolas Zimmermann.

        ASSERT failure when svg <use> element changes href
        https://bugs.webkit.org/show_bug.cgi?id=58726

        Test case to verify assertion at line 509 of SVGUseElement.cpp.
        Test passes if no crash occurs in debug mode.

        * svg/custom/use-crash-when-href-change-expected.txt: Added.
        * svg/custom/use-crash-when-href-change.svg: Added.

2011-04-16  Abhishek Arya  <inferno@chromium.org>

        Reviewed by Nikolas Zimmermann.

        Tests that we do not crash when adding a list item block child
        as a before child to svg text.
        https://bugs.webkit.org/show_bug.cgi?id=58678

        * svg/text/text-block-child-crash-expected.txt: Added.
        * svg/text/text-block-child-crash.xhtml: Added.

2011-04-16  Sergio Villar Senin  <svillar@igalia.com>

        Unreviewed, new GTK+ test expectations after r84039.

        * platform/gtk/fast/html/details-add-summary-1-and-click-expected.txt:
        * platform/gtk/fast/html/details-add-summary-1-expected.txt:
        * platform/gtk/fast/html/details-add-summary-10-and-click-expected.txt:
        * platform/gtk/fast/html/details-add-summary-10-expected.txt:
        * platform/gtk/fast/html/details-add-summary-2-and-click-expected.txt:
        * platform/gtk/fast/html/details-add-summary-2-expected.txt:
        * platform/gtk/fast/html/details-add-summary-3-and-click-expected.txt:
        * platform/gtk/fast/html/details-add-summary-3-expected.txt:
        * platform/gtk/fast/html/details-add-summary-4-and-click-expected.txt:
        * platform/gtk/fast/html/details-add-summary-4-expected.txt:
        * platform/gtk/fast/html/details-add-summary-5-and-click-expected.txt:
        * platform/gtk/fast/html/details-add-summary-5-expected.txt:
        * platform/gtk/fast/html/details-add-summary-6-and-click-expected.txt:
        * platform/gtk/fast/html/details-add-summary-6-expected.txt:
        * platform/gtk/fast/html/details-add-summary-7-and-click-expected.txt:
        * platform/gtk/fast/html/details-add-summary-7-expected.txt:
        * platform/gtk/fast/html/details-add-summary-8-and-click-expected.txt:
        * platform/gtk/fast/html/details-add-summary-8-expected.txt:
        * platform/gtk/fast/html/details-add-summary-9-and-click-expected.txt:
        * platform/gtk/fast/html/details-add-summary-9-expected.txt:
        * platform/gtk/fast/html/details-no-summary1-expected.txt:
        * platform/gtk/fast/html/details-no-summary2-expected.txt:
        * platform/gtk/fast/html/details-no-summary3-expected.txt:
        * platform/gtk/fast/html/details-no-summary4-expected.txt:
        * platform/gtk/fast/html/details-open-javascript-expected.txt:
        * platform/gtk/fast/html/details-open1-expected.txt:
        * platform/gtk/fast/html/details-open2-expected.txt:
        * platform/gtk/fast/html/details-open3-expected.txt:
        * platform/gtk/fast/html/details-open4-expected.txt:
        * platform/gtk/fast/html/details-open5-expected.txt:
        * platform/gtk/fast/html/details-open6-expected.txt:
        * platform/gtk/fast/html/details-position-expected.txt:
        * platform/gtk/fast/html/details-remove-summary-1-and-click-expected.txt:
        * platform/gtk/fast/html/details-remove-summary-1-expected.txt:
        * platform/gtk/fast/html/details-remove-summary-2-and-click-expected.txt:
        * platform/gtk/fast/html/details-remove-summary-2-expected.txt:
        * platform/gtk/fast/html/details-remove-summary-3-and-click-expected.txt:
        * platform/gtk/fast/html/details-remove-summary-3-expected.txt:
        * platform/gtk/fast/html/details-remove-summary-4-and-click-expected.txt:
        * platform/gtk/fast/html/details-remove-summary-4-expected.txt:
        * platform/gtk/fast/html/details-remove-summary-5-and-click-expected.txt:
        * platform/gtk/fast/html/details-remove-summary-5-expected.txt:
        * platform/gtk/fast/html/details-remove-summary-6-and-click-expected.txt:
        * platform/gtk/fast/html/details-remove-summary-6-expected.txt:
        * platform/gtk/fast/html/details-writing-mode-expected.txt:

2011-04-15  Ilya Tikhonovsky  <loislo@chromium.org>

        Reviewed by Pavel Feldman.

        Web Inspector: The list of Database entries is empty if the page opens a database just before Web Inspector.
        https://bugs.webkit.org/show_bug.cgi?id=57833

        * http/tests/inspector-enabled/database-open.html:

2011-04-15  Adam Barth  <abarth@webkit.org>

        Reviewed by Eric Seidel.

        CSP media-src is missing
        https://bugs.webkit.org/show_bug.cgi?id=58642

        These tests are adapted from the other media loading tests.

        * http/tests/security/contentSecurityPolicy/media-src-allowed-expected.txt: Added.
        * http/tests/security/contentSecurityPolicy/media-src-allowed.html: Added.
        * http/tests/security/contentSecurityPolicy/media-src-blocked-expected.txt: Added.
        * http/tests/security/contentSecurityPolicy/media-src-blocked.html: Added.

2011-04-15  Adam Barth  <abarth@webkit.org>

        Reviewed by Eric Seidel.

        CSP should block string arguments to setTimeout and setInterval unless options eval-script
        https://bugs.webkit.org/show_bug.cgi?id=58610

        Herein lies a four-way testing matrix.

        * http/tests/security/contentSecurityPolicy/eval-scripts-setInterval-allowed-expected.txt: Added.
        * http/tests/security/contentSecurityPolicy/eval-scripts-setInterval-allowed.html: Added.
        * http/tests/security/contentSecurityPolicy/eval-scripts-setInterval-blocked-expected.txt: Added.
        * http/tests/security/contentSecurityPolicy/eval-scripts-setInterval-blocked.html: Added.
        * http/tests/security/contentSecurityPolicy/eval-scripts-setTimeout-allowed-expected.txt: Added.
        * http/tests/security/contentSecurityPolicy/eval-scripts-setTimeout-allowed.html: Added.
        * http/tests/security/contentSecurityPolicy/eval-scripts-setTimeout-blocked-expected.txt: Added.
        * http/tests/security/contentSecurityPolicy/eval-scripts-setTimeout-blocked.html: Added.

2011-04-15  Chang Shu  <cshu@webkit.org>

        Reviewed by Alexey Proskuryakov.

        When a message with url embedded is added to console, the "file:" scheme
        and path should be stripped.
        https://bugs.webkit.org/show_bug.cgi?id=58665

        Unskip passed tests.

        * platform/mac-wk2/Skipped:
        * platform/qt-wk2/Skipped:

2011-04-15  Vsevolod Vlasov  <vsevik@chromium.org>

        Reviewed by Adam Barth.

        Show a console message when X-Frame-Options blocks a load
        https://bugs.webkit.org/show_bug.cgi?id=39087

        Added console message when X-Frame-Options headers block resource loading

        * http/tests/inspector/network/x-frame-options-deny-expected.txt:
        * http/tests/security/XFrameOptions/x-frame-options-deny-expected.txt:
        * http/tests/security/XFrameOptions/x-frame-options-parent-same-origin-deny-expected.txt:

2011-04-15  Luiz Agostini  <luiz.agostini@openbossa.org>

        Rubberstamped by Andreas Kling.

        [Qt] QWebPage MIME type handling inconsistency with other web browsers
        https://bugs.webkit.org/show_bug.cgi?id=46968

        Unskipping http/tests/loading/text-content-type-with-binary-extension.html.

        * platform/qt/Skipped:

2011-04-15  Emil A Eklund  <eae@chromium.org>

        Reviewed by Dimitri Glazkov.

        input field with focus makes appendChild operation ~42x slower
        https://bugs.webkit.org/show_bug.cgi?id=57059

        Add performance test for cloneNode when an input field has focus.

        * perf/clone-with-focus-expected.txt: Added.
        * perf/clone-with-focus.html: Added.

2011-04-15  Charlie Reis  <creis@chromium.org>

        Reviewed by Darin Fisher.

        [Chromium] fast/events/popup-allowed-from-gesture-initiated-form-submit.html causing debug ASSERT
        https://bugs.webkit.org/show_bug.cgi?id=44079

        Remove an assert whose invariant doesn't hold.

        * platform/chromium/test_expectations.txt: Re-enable test.

2011-04-15  Kinuko Yasuda  <kinuko@chromium.org>

        Reviewed by David Levin.

        Expose unified Quota API if QUOTA build flag is enabled
        https://bugs.webkit.org/show_bug.cgi?id=58648

        Added a layout test, also added skipped entries on platforms
        where the QUOTA flag is not enabled.

        * platform/chromium/test_expectations.txt:
        * platform/gtk/Skipped:
        * platform/mac/Skipped:
        * platform/qt/Skipped:
        * platform/win/Skipped:
        * storage/script-tests/TEMPLATE.html: Added.
        * storage/script-tests/storageinfo-query-usage.js: Added.
        * storage/storageinfo-query-usage-expected.txt: Added.
        * storage/storageinfo-query-usage.html: Added.

2011-04-15  Oliver Hunt  <oliver@apple.com>

        GC allocate Structure
        https://bugs.webkit.org/show_bug.cgi?id=58483

        Rolling r83894 r83827 r83810 r83809 r83808 back in with
        a workaround for the gcc bug seen by the gtk bots

        * fast/dom/gc-10.html:

2011-04-15  Andreas Kling  <kling@webkit.org>

        Unreviewed, remove a Qt-specific expectation that's no longer needed.

        * platform/qt/Skipped:
        * platform/qt/fast/loader/onload-policy-ignore-for-frame-expected.txt: Removed.

2011-04-15  MORITA Hajime  <morrita@google.com>

        Reviewed by Dimitri Glazkov.

        RenderDetailsMarker should belong to shadow element.
        https://bugs.webkit.org/show_bug.cgi?id=58591

        * Render tree structure has changed.
        * Changed style rule on details-writing-mode.html to avoid to hit shadow CSS leak bug.

        * fast/html/details-writing-mode.html:
        * platform/chromium/test_expectations.txt:
        * platform/mac/fast/html/details-add-summary-1-and-click-expected.checksum:
        * platform/mac/fast/html/details-add-summary-1-and-click-expected.png:
        * platform/mac/fast/html/details-add-summary-1-and-click-expected.txt:
        * platform/mac/fast/html/details-add-summary-1-expected.checksum:
        * platform/mac/fast/html/details-add-summary-1-expected.png:
        * platform/mac/fast/html/details-add-summary-1-expected.txt:
        * platform/mac/fast/html/details-add-summary-10-and-click-expected.checksum:
        * platform/mac/fast/html/details-add-summary-10-and-click-expected.png:
        * platform/mac/fast/html/details-add-summary-10-and-click-expected.txt:
        * platform/mac/fast/html/details-add-summary-10-expected.checksum:
        * platform/mac/fast/html/details-add-summary-10-expected.png:
        * platform/mac/fast/html/details-add-summary-10-expected.txt:
        * platform/mac/fast/html/details-add-summary-2-and-click-expected.checksum:
        * platform/mac/fast/html/details-add-summary-2-and-click-expected.png:
        * platform/mac/fast/html/details-add-summary-2-and-click-expected.txt:
        * platform/mac/fast/html/details-add-summary-2-expected.checksum:
        * platform/mac/fast/html/details-add-summary-2-expected.png:
        * platform/mac/fast/html/details-add-summary-2-expected.txt:
        * platform/mac/fast/html/details-add-summary-3-and-click-expected.checksum:
        * platform/mac/fast/html/details-add-summary-3-and-click-expected.png:
        * platform/mac/fast/html/details-add-summary-3-and-click-expected.txt:
        * platform/mac/fast/html/details-add-summary-3-expected.checksum:
        * platform/mac/fast/html/details-add-summary-3-expected.png:
        * platform/mac/fast/html/details-add-summary-3-expected.txt:
        * platform/mac/fast/html/details-add-summary-4-and-click-expected.checksum:
        * platform/mac/fast/html/details-add-summary-4-and-click-expected.png:
        * platform/mac/fast/html/details-add-summary-4-and-click-expected.txt:
        * platform/mac/fast/html/details-add-summary-4-expected.checksum:
        * platform/mac/fast/html/details-add-summary-4-expected.png:
        * platform/mac/fast/html/details-add-summary-4-expected.txt:
        * platform/mac/fast/html/details-add-summary-5-and-click-expected.checksum:
        * platform/mac/fast/html/details-add-summary-5-and-click-expected.png:
        * platform/mac/fast/html/details-add-summary-5-and-click-expected.txt:
        * platform/mac/fast/html/details-add-summary-5-expected.checksum:
        * platform/mac/fast/html/details-add-summary-5-expected.png:
        * platform/mac/fast/html/details-add-summary-5-expected.txt:
        * platform/mac/fast/html/details-add-summary-6-and-click-expected.checksum:
        * platform/mac/fast/html/details-add-summary-6-and-click-expected.png:
        * platform/mac/fast/html/details-add-summary-6-and-click-expected.txt:
        * platform/mac/fast/html/details-add-summary-6-expected.checksum:
        * platform/mac/fast/html/details-add-summary-6-expected.png:
        * platform/mac/fast/html/details-add-summary-6-expected.txt:
        * platform/mac/fast/html/details-add-summary-7-and-click-expected.checksum:
        * platform/mac/fast/html/details-add-summary-7-and-click-expected.png:
        * platform/mac/fast/html/details-add-summary-7-and-click-expected.txt:
        * platform/mac/fast/html/details-add-summary-7-expected.checksum:
        * platform/mac/fast/html/details-add-summary-7-expected.png:
        * platform/mac/fast/html/details-add-summary-7-expected.txt:
        * platform/mac/fast/html/details-add-summary-8-and-click-expected.checksum:
        * platform/mac/fast/html/details-add-summary-8-and-click-expected.png:
        * platform/mac/fast/html/details-add-summary-8-and-click-expected.txt:
        * platform/mac/fast/html/details-add-summary-8-expected.checksum:
        * platform/mac/fast/html/details-add-summary-8-expected.png:
        * platform/mac/fast/html/details-add-summary-8-expected.txt:
        * platform/mac/fast/html/details-add-summary-9-and-click-expected.checksum:
        * platform/mac/fast/html/details-add-summary-9-and-click-expected.png:
        * platform/mac/fast/html/details-add-summary-9-and-click-expected.txt:
        * platform/mac/fast/html/details-add-summary-9-expected.checksum:
        * platform/mac/fast/html/details-add-summary-9-expected.png:
        * platform/mac/fast/html/details-add-summary-9-expected.txt:
        * platform/mac/fast/html/details-no-summary1-expected.checksum:
        * platform/mac/fast/html/details-no-summary1-expected.png:
        * platform/mac/fast/html/details-no-summary1-expected.txt:
        * platform/mac/fast/html/details-no-summary2-expected.checksum:
        * platform/mac/fast/html/details-no-summary2-expected.png:
        * platform/mac/fast/html/details-no-summary2-expected.txt:
        * platform/mac/fast/html/details-no-summary3-expected.checksum:
        * platform/mac/fast/html/details-no-summary3-expected.png:
        * platform/mac/fast/html/details-no-summary3-expected.txt:
        * platform/mac/fast/html/details-no-summary4-expected.checksum:
        * platform/mac/fast/html/details-no-summary4-expected.png:
        * platform/mac/fast/html/details-no-summary4-expected.txt:
        * platform/mac/fast/html/details-open-javascript-expected.checksum:
        * platform/mac/fast/html/details-open-javascript-expected.png:
        * platform/mac/fast/html/details-open-javascript-expected.txt:
        * platform/mac/fast/html/details-open1-expected.checksum:
        * platform/mac/fast/html/details-open1-expected.png:
        * platform/mac/fast/html/details-open1-expected.txt:
        * platform/mac/fast/html/details-open2-expected.checksum:
        * platform/mac/fast/html/details-open2-expected.png:
        * platform/mac/fast/html/details-open2-expected.txt:
        * platform/mac/fast/html/details-open3-expected.checksum:
        * platform/mac/fast/html/details-open3-expected.png:
        * platform/mac/fast/html/details-open3-expected.txt:
        * platform/mac/fast/html/details-open4-expected.checksum:
        * platform/mac/fast/html/details-open4-expected.png:
        * platform/mac/fast/html/details-open4-expected.txt:
        * platform/mac/fast/html/details-open5-expected.checksum:
        * platform/mac/fast/html/details-open5-expected.png:
        * platform/mac/fast/html/details-open5-expected.txt:
        * platform/mac/fast/html/details-open6-expected.checksum:
        * platform/mac/fast/html/details-open6-expected.png:
        * platform/mac/fast/html/details-open6-expected.txt:
        * platform/mac/fast/html/details-position-expected.checksum:
        * platform/mac/fast/html/details-position-expected.png:
        * platform/mac/fast/html/details-position-expected.txt:
        * platform/mac/fast/html/details-remove-summary-1-and-click-expected.checksum:
        * platform/mac/fast/html/details-remove-summary-1-and-click-expected.png:
        * platform/mac/fast/html/details-remove-summary-1-and-click-expected.txt:
        * platform/mac/fast/html/details-remove-summary-1-expected.checksum:
        * platform/mac/fast/html/details-remove-summary-1-expected.png:
        * platform/mac/fast/html/details-remove-summary-1-expected.txt:
        * platform/mac/fast/html/details-remove-summary-2-and-click-expected.checksum:
        * platform/mac/fast/html/details-remove-summary-2-and-click-expected.png:
        * platform/mac/fast/html/details-remove-summary-2-and-click-expected.txt:
        * platform/mac/fast/html/details-remove-summary-2-expected.checksum:
        * platform/mac/fast/html/details-remove-summary-2-expected.png:
        * platform/mac/fast/html/details-remove-summary-2-expected.txt:
        * platform/mac/fast/html/details-remove-summary-3-and-click-expected.checksum:
        * platform/mac/fast/html/details-remove-summary-3-and-click-expected.png:
        * platform/mac/fast/html/details-remove-summary-3-and-click-expected.txt:
        * platform/mac/fast/html/details-remove-summary-3-expected.checksum:
        * platform/mac/fast/html/details-remove-summary-3-expected.png:
        * platform/mac/fast/html/details-remove-summary-3-expected.txt:
        * platform/mac/fast/html/details-remove-summary-4-and-click-expected.checksum:
        * platform/mac/fast/html/details-remove-summary-4-and-click-expected.png:
        * platform/mac/fast/html/details-remove-summary-4-and-click-expected.txt:
        * platform/mac/fast/html/details-remove-summary-4-expected.checksum:
        * platform/mac/fast/html/details-remove-summary-4-expected.png:
        * platform/mac/fast/html/details-remove-summary-4-expected.txt:
        * platform/mac/fast/html/details-remove-summary-5-and-click-expected.checksum:
        * platform/mac/fast/html/details-remove-summary-5-and-click-expected.png:
        * platform/mac/fast/html/details-remove-summary-5-and-click-expected.txt:
        * platform/mac/fast/html/details-remove-summary-5-expected.checksum:
        * platform/mac/fast/html/details-remove-summary-5-expected.png:
        * platform/mac/fast/html/details-remove-summary-5-expected.txt:
        * platform/mac/fast/html/details-remove-summary-6-and-click-expected.checksum:
        * platform/mac/fast/html/details-remove-summary-6-and-click-expected.png:
        * platform/mac/fast/html/details-remove-summary-6-and-click-expected.txt:
        * platform/mac/fast/html/details-remove-summary-6-expected.checksum:
        * platform/mac/fast/html/details-remove-summary-6-expected.png:
        * platform/mac/fast/html/details-remove-summary-6-expected.txt:
        * platform/mac/fast/html/details-writing-mode-expected.checksum:
        * platform/mac/fast/html/details-writing-mode-expected.png:
        * platform/mac/fast/html/details-writing-mode-expected.txt:

2011-04-15  Adrienne Walker  <enne@google.com>

        [chromium] Unreviewed, update baselines for compositing changes.
        https://bugs.webkit.org/show_bug.cgi?id=57113

        * platform/chromium-gpu-linux/compositing/geometry/fixed-position-expected.png:
        * platform/chromium-gpu-linux/compositing/geometry/horizontal-scroll-composited-expected.png:
        * platform/chromium-gpu-linux/compositing/geometry/vertical-scroll-composited-expected.png:
        * platform/chromium-gpu-linux/compositing/overflow/fixed-position-ancestor-clip-expected.png:
        * platform/chromium-gpu-linux/platform/chromium/compositing/huge-layer-rotated-expected.png: Added.
        * platform/chromium-gpu-linux/platform/chromium/compositing/layout-width-change-expected.png:
        * platform/chromium-gpu-mac/compositing/geometry/fixed-position-expected.png:
        * platform/chromium-gpu-mac/compositing/geometry/horizontal-scroll-composited-expected.png:
        * platform/chromium-gpu-mac/compositing/geometry/vertical-scroll-composited-expected.png:
        * platform/chromium-gpu-mac/compositing/overflow/fixed-position-ancestor-clip-expected.png:
        * platform/chromium-gpu-mac/compositing/tiling/huge-layer-img-expected.png: Added.
        * platform/chromium-gpu-mac/compositing/tiling/huge-layer-img-expected.txt: Added.
        * platform/chromium-gpu-mac/platform/chromium/compositing/huge-layer-rotated-expected.png:
        * platform/chromium-gpu-mac/platform/chromium/compositing/layout-width-change-expected.png:
        * platform/chromium-gpu-win/compositing/geometry/fixed-position-expected.png:
        * platform/chromium-gpu-win/compositing/geometry/horizontal-scroll-composited-expected.png:
        * platform/chromium-gpu-win/compositing/geometry/vertical-scroll-composited-expected.png:
        * platform/chromium-gpu-win/compositing/overflow/fixed-position-ancestor-clip-expected.png:
        * platform/chromium-gpu-win/compositing/tiling/huge-layer-img-expected.png: Added.
        * platform/chromium-gpu-win/platform/chromium/compositing/huge-layer-rotated-expected.png:
        * platform/chromium-gpu-win/platform/chromium/compositing/layout-width-change-expected.png:
        * platform/chromium/test_expectations.txt:

2011-04-15  Andreas Kling  <kling@webkit.org>

        Skip failing tests after r84010 and r84012.

        * platform/qt/Skipped:

2011-04-15  Brian Weinstein  <bweinstein@apple.com>

        REGRESSION(r81262): plugins/refcount-leaks.html failing on Windows
        https://bugs.webkit.org/show_bug.cgi?id=56478

        Unskip plugins/refcount-leaks.html on Windows because it is now
        passing on release and debug.

        * platform/win/Skipped:

2011-04-15  James Robinson  <jamesr@chromium.org>

        Add chromium linux expectations for direct-image-compositing.html

        * platform/chromium-gpu-linux/compositing/direct-image-compositing-expected.checksum:
        * platform/chromium-gpu-linux/compositing/direct-image-compositing-expected.png:
        * platform/chromium/test_expectations.txt:

2011-04-15  Chris Rogers  <crogers@google.com>

        Unreviewed.

        Update test_expectations.txt with more failing fast/borders tests
        https://bugs.webkit.org/show_bug.cgi?id=58685

        * platform/chromium/test_expectations.txt:

2011-04-15  Andreas Kling  <kling@webkit.org>

        Rolling out accidental part of r84010.

        * fast/forms/button-line-break.html: Removed.

2011-04-15  Andreas Kling  <kling@webkit.org>

        Reviewed by Antonio Gomes.

        [Qt] DRT: Default custom policy delegate decision should be Ignore.

        * platform/qt/Skipped: Unskip now passing tests.

2011-04-15  Andreas Kling  <kling@webkit.org>

        Reviewed by Antonio Gomes.

        [Qt] DRT: Block access to external URLs.

        * platform/qt/Skipped: Unskip now passing tests.

2011-04-15  James Robinson  <jamesr@chromium.org>

        Fix duplicate expectation for compositing/tiling/huge-layer-img.html on chromium mac.

        * platform/chromium/test_expectations.txt:

2011-04-15  Simon Fraser  <simon.fraser@apple.com>

        Reviewed by Beth Dakin.

        Some borders with border-radius do not have rounded inner edges
        https://bugs.webkit.org/show_bug.cgi?id=58457

        Pixel tests for various combinations of border styles and radii.
        Update pixel results for affected tests.


        * fast/borders/mixed-border-styles-radius.html: Added.
        * fast/borders/mixed-border-styles-radius2.html: Added.
        * fast/borders/mixed-border-styles.html: Added.
        * platform/mac/fast/borders/border-radius-constraints-expected.checksum:
        * platform/mac/fast/borders/border-radius-constraints-expected.png:
        * platform/mac/fast/borders/mixed-border-styles-expected.checksum: Added.
        * platform/mac/fast/borders/mixed-border-styles-expected.png: Added.
        * platform/mac/fast/borders/mixed-border-styles-expected.txt: Added.
        * platform/mac/fast/borders/mixed-border-styles-radius-expected.checksum: Added.
        * platform/mac/fast/borders/mixed-border-styles-radius-expected.png: Added.
        * platform/mac/fast/borders/mixed-border-styles-radius-expected.txt: Added.
        * platform/mac/fast/borders/mixed-border-styles-radius2-expected.checksum: Added.
        * platform/mac/fast/borders/mixed-border-styles-radius2-expected.png: Added.
        * platform/mac/fast/borders/mixed-border-styles-radius2-expected.txt: Added.

2011-04-13  Xiaomei Ji  <xji@chromium.org>

        Reviewed by Ryosuke Niwa.

        Continue (3rd) experiment with moving caret by word in visual order.
        https://bugs.webkit.org/show_bug.cgi?id=58294

        * editing/selection/move-by-word-visually-expected.txt:
        * editing/selection/move-by-word-visually.html:

2011-04-15  Simon Fraser  <simon.fraser@apple.com>

        Rebaseline Mac pixel results in fast/ on SnowLeopard.

        * platform/mac/fast/backgrounds/animated-svg-as-background-expected.checksum:
        * platform/mac/fast/backgrounds/animated-svg-as-background-expected.png:
        * platform/mac/fast/backgrounds/animated-svg-as-mask-expected.checksum:
        * platform/mac/fast/backgrounds/animated-svg-as-mask-expected.png:
        * platform/mac/fast/backgrounds/size/backgroundSize17-expected.checksum:
        * platform/mac/fast/backgrounds/size/backgroundSize17-expected.png:
        * platform/mac/fast/backgrounds/size/backgroundSize20-expected.checksum:
        * platform/mac/fast/backgrounds/size/backgroundSize20-expected.png:
        * platform/mac/fast/block/basic/011-expected.checksum:
        * platform/mac/fast/block/basic/011-expected.png:
        * platform/mac/fast/block/float/float-avoidance-expected.checksum:
        * platform/mac/fast/block/float/float-avoidance-expected.png:
        * platform/mac/fast/block/margin-collapse/103-expected.checksum:
        * platform/mac/fast/block/margin-collapse/103-expected.png:
        * platform/mac/fast/block/positioning/auto/005-expected.checksum:
        * platform/mac/fast/block/positioning/auto/005-expected.png:
        * platform/mac/fast/block/positioning/auto/006-expected.checksum:
        * platform/mac/fast/block/positioning/auto/006-expected.png:
        * platform/mac/fast/block/positioning/auto/vertical-lr/005-expected.checksum:
        * platform/mac/fast/block/positioning/auto/vertical-lr/005-expected.png:
        * platform/mac/fast/block/positioning/auto/vertical-lr/006-expected.checksum:
        * platform/mac/fast/block/positioning/auto/vertical-lr/006-expected.png:
        * platform/mac/fast/block/positioning/auto/vertical-rl/005-expected.checksum:
        * platform/mac/fast/block/positioning/auto/vertical-rl/005-expected.png:
        * platform/mac/fast/block/positioning/auto/vertical-rl/006-expected.checksum:
        * platform/mac/fast/block/positioning/auto/vertical-rl/006-expected.png:
        * platform/mac/fast/borders/border-radius-circle-expected.checksum:
        * platform/mac/fast/borders/border-radius-circle-expected.png:
        * platform/mac/fast/borders/border-radius-huge-assert-expected.checksum:
        * platform/mac/fast/borders/border-radius-huge-assert-expected.png:
        * platform/mac/fast/borders/svg-as-border-image-2-expected.checksum:
        * platform/mac/fast/borders/svg-as-border-image-2-expected.png:
        * platform/mac/fast/box-shadow/border-radius-big-expected.checksum:
        * platform/mac/fast/box-shadow/border-radius-big-expected.png:
        * platform/mac/fast/box-shadow/box-shadow-transformed-expected.checksum:
        * platform/mac/fast/box-shadow/box-shadow-transformed-expected.png:
        * platform/mac/fast/box-shadow/inset-with-extraordinary-radii-and-border-expected.checksum:
        * platform/mac/fast/box-shadow/inset-with-extraordinary-radii-and-border-expected.png:
        * platform/mac/fast/box-shadow/spread-expected.checksum:
        * platform/mac/fast/box-shadow/spread-expected.png:
        * platform/mac/fast/box-shadow/spread-multiple-inset-expected.checksum:
        * platform/mac/fast/box-shadow/spread-multiple-inset-expected.png:
        * platform/mac/fast/box-shadow/spread-multiple-normal-expected.checksum:
        * platform/mac/fast/box-shadow/spread-multiple-normal-expected.png:
        * platform/mac/fast/canvas/canvas-incremental-repaint-expected.checksum:
        * platform/mac/fast/canvas/canvas-incremental-repaint-expected.png:
        * platform/mac/fast/canvas/canvasDrawingIntoSelf-expected.checksum:
        * platform/mac/fast/canvas/canvasDrawingIntoSelf-expected.png:
        * platform/mac/fast/canvas/drawImage-expected.checksum:
        * platform/mac/fast/canvas/drawImage-expected.png:
        * platform/mac/fast/canvas/webgl/css-webkit-canvas-expected.checksum:
        * platform/mac/fast/canvas/webgl/css-webkit-canvas-expected.png:
        * platform/mac/fast/canvas/webgl/css-webkit-canvas-repaint-expected.checksum:
        * platform/mac/fast/canvas/webgl/css-webkit-canvas-repaint-expected.png:
        * platform/mac/fast/css/font-face-default-font-expected.checksum:
        * platform/mac/fast/css/font-face-default-font-expected.png:
        * platform/mac/fast/css/font_property_normal-expected.checksum:
        * platform/mac/fast/css/font_property_normal-expected.png:
        * platform/mac/fast/css/line-height-font-order-expected.checksum:
        * platform/mac/fast/css/line-height-font-order-expected.png:
        * platform/mac/fast/forms/001-expected.checksum:
        * platform/mac/fast/forms/001-expected.png:
        * platform/mac/fast/forms/basic-inputs-expected.checksum:
        * platform/mac/fast/forms/basic-inputs-expected.png:
        * platform/mac/fast/forms/box-shadow-override-expected.checksum:
        * platform/mac/fast/forms/box-shadow-override-expected.png:
        * platform/mac/fast/forms/checkbox-radio-onchange-expected.checksum:
        * platform/mac/fast/forms/checkbox-radio-onchange-expected.png:
        * platform/mac/fast/forms/file-input-disabled-expected.checksum:
        * platform/mac/fast/forms/file-input-disabled-expected.png:
        * platform/mac/fast/forms/form-element-geometry-expected.checksum:
        * platform/mac/fast/forms/form-element-geometry-expected.png:
        * platform/mac/fast/forms/formmove-expected.checksum:
        * platform/mac/fast/forms/formmove-expected.png:
        * platform/mac/fast/forms/formmove2-expected.checksum:
        * platform/mac/fast/forms/formmove2-expected.png:
        * platform/mac/fast/forms/indeterminate-expected.checksum:
        * platform/mac/fast/forms/indeterminate-expected.png:
        * platform/mac/fast/forms/input-appearance-height-expected.checksum:
        * platform/mac/fast/forms/input-appearance-height-expected.png:
        * platform/mac/fast/forms/input-value-expected.checksum:
        * platform/mac/fast/forms/input-value-expected.png:
        * platform/mac/fast/forms/minWidthPercent-expected.checksum:
        * platform/mac/fast/forms/minWidthPercent-expected.png:
        * platform/mac/fast/forms/radio-attr-order-expected.checksum:
        * platform/mac/fast/forms/radio-attr-order-expected.png:
        * platform/mac/fast/forms/radio-nested-labels-expected.checksum:
        * platform/mac/fast/forms/radio-nested-labels-expected.png:
        * platform/mac/fast/forms/radio_checked-expected.checksum:
        * platform/mac/fast/forms/radio_checked-expected.png:
        * platform/mac/fast/forms/radio_checked_dynamic-expected.checksum:
        * platform/mac/fast/forms/radio_checked_dynamic-expected.png:
        * platform/mac/fast/images/animated-svg-as-image-expected.checksum:
        * platform/mac/fast/images/animated-svg-as-image-expected.png:
        * platform/mac/fast/images/imagemap-case-expected.checksum:
        * platform/mac/fast/images/imagemap-case-expected.png:
        * platform/mac/fast/images/imagemap-circle-focus-ring-expected.checksum:
        * platform/mac/fast/images/imagemap-circle-focus-ring-expected.png:
        * platform/mac/fast/images/imagemap-focus-ring-zoom-expected.checksum:
        * platform/mac/fast/images/imagemap-focus-ring-zoom-expected.png:
        * platform/mac/fast/images/imagemap-polygon-focus-ring-expected.checksum:
        * platform/mac/fast/images/imagemap-polygon-focus-ring-expected.png:
        * platform/mac/fast/inline/positionedLifetime-expected.checksum:
        * platform/mac/fast/inline/positionedLifetime-expected.png:
        * platform/mac/fast/invalid/019-expected.checksum:
        * platform/mac/fast/invalid/019-expected.png:
        * platform/mac/fast/invalid/missing-address-end-tag-expected.checksum:
        * platform/mac/fast/invalid/missing-address-end-tag-expected.png:
        * platform/mac/fast/invalid/table-inside-stray-table-content-expected.checksum:
        * platform/mac/fast/invalid/table-inside-stray-table-content-expected.png:
        * platform/mac/fast/lists/003-vertical-expected.checksum:
        * platform/mac/fast/lists/003-vertical-expected.png:
        * platform/mac/fast/media/media-query-invalid-value-expected.checksum:
        * platform/mac/fast/media/media-query-invalid-value-expected.png:
        * platform/mac/fast/overflow/003-expected.checksum:
        * platform/mac/fast/overflow/003-expected.png:
        * platform/mac/fast/overflow/overflow-x-y-expected.checksum:
        * platform/mac/fast/overflow/overflow-x-y-expected.png:
        * platform/mac/fast/parser/bad-xml-slash-expected.checksum:
        * platform/mac/fast/parser/bad-xml-slash-expected.png:
        * platform/mac/fast/repaint/box-shadow-h-expected.checksum:
        * platform/mac/fast/repaint/box-shadow-h-expected.png:
        * platform/mac/fast/repaint/control-clip-expected.checksum:
        * platform/mac/fast/repaint/control-clip-expected.png:
        * platform/mac/fast/repaint/list-marker-expected.checksum:
        * platform/mac/fast/repaint/list-marker-expected.png:
        * platform/mac/fast/repaint/shadow-multiple-horizontal-expected.checksum:
        * platform/mac/fast/repaint/shadow-multiple-horizontal-expected.png:
        * platform/mac/fast/repaint/shadow-multiple-strict-horizontal-expected.checksum:
        * platform/mac/fast/repaint/shadow-multiple-strict-horizontal-expected.png:
        * platform/mac/fast/repaint/transform-replaced-shadows-expected.checksum:
        * platform/mac/fast/repaint/transform-replaced-shadows-expected.png:
        * platform/mac/fast/replaced/replaced-breaking-expected.checksum:
        * platform/mac/fast/replaced/replaced-breaking-expected.png:
        * platform/mac/fast/text/emphasis-vertical-expected.checksum:
        * platform/mac/fast/text/emphasis-vertical-expected.png:
        * platform/mac/fast/text/hyphenate-limit-before-after-expected.checksum:
        * platform/mac/fast/text/hyphenate-limit-before-after-expected.png:
        * platform/mac/fast/text/international/bidi-linebreak-001-expected.checksum:
        * platform/mac/fast/text/international/bidi-linebreak-001-expected.png:
        * platform/mac/fast/text/international/bidi-linebreak-002-expected.checksum:
        * platform/mac/fast/text/international/bidi-linebreak-002-expected.png:
        * platform/mac/fast/text/international/bidi-linebreak-003-expected.checksum:
        * platform/mac/fast/text/international/bidi-linebreak-003-expected.png:
        * platform/mac/fast/text/international/bidi-mirror-he-ar-expected.checksum:
        * platform/mac/fast/text/international/bidi-mirror-he-ar-expected.png:
        * platform/mac/fast/text/international/bidi-neutral-directionality-paragraph-start-expected.checksum:
        * platform/mac/fast/text/international/bidi-neutral-directionality-paragraph-start-expected.png:
        * platform/mac/fast/text/international/text-combine-image-test-expected.checksum:
        * platform/mac/fast/text/international/text-combine-image-test-expected.png:
        * platform/mac/fast/text/international/vertical-text-glyph-test-expected.checksum:
        * platform/mac/fast/text/international/vertical-text-glyph-test-expected.png:
        * platform/mac/fast/text/justify-ideograph-leading-expansion-expected.checksum:
        * platform/mac/fast/text/justify-ideograph-leading-expansion-expected.png:
        * platform/mac/fast/text/textIteratorNilRenderer-expected.checksum:
        * platform/mac/fast/text/textIteratorNilRenderer-expected.png:
        * platform/mac/fast/text/whitespace/normal-after-nowrap-breaking-expected.checksum:
        * platform/mac/fast/text/whitespace/normal-after-nowrap-breaking-expected.png:
        * platform/mac/fast/transforms/shadows-expected.checksum:
        * platform/mac/fast/transforms/shadows-expected.png:

2011-04-15  Jessie Berlin  <jberlin@apple.com>

        DRT on Windows doesn't block access to external URLs (https://bugs.webkit.org/show_bug.cgi?id=57334),
        but WKTR does, so add the expected passing results to the win-wk2 directory to override the expected
        failing results in the win directory in order to get the bots green.

        * platform/win-wk2/fast/ruby: Added.
        * platform/win-wk2/fast/ruby/after-block-doesnt-crash-expected.txt: Added.
        * platform/win-wk2/fast/ruby/after-table-doesnt-crash-expected.txt: Added.
        * platform/win-wk2/fast/ruby/before-block-doesnt-crash-expected.txt: Added.
        * platform/win-wk2/fast/ruby/before-table-doesnt-crash-expected.txt: Added.

2011-04-15  Vsevolod Vlasov  <vsevik@chromium.org>

        Reviewed by Pavel Feldman.

        Web Inspector: No console message and headers in inspector when X-Frame-Options header blocks a load
        https://bugs.webkit.org/show_bug.cgi?id=58136

        Passed response info to inspector when X-Frame-Options header blocks resource loading.

        * http/tests/inspector/network/resources/x-frame-options-deny.cgi: Added.
        * http/tests/inspector/network/x-frame-options-deny-expected.txt: Added.
        * http/tests/inspector/network/x-frame-options-deny.html: Added.

2011-04-15  Andrey Adaikin  <aandrey@google.com>

        Reviewed by Pavel Feldman.

        Web Inspector: TextViewer and TextEditorModel must support both \n and \r\n as line separators
        https://bugs.webkit.org/show_bug.cgi?id=58449

        * inspector/editor/text-editor-model-expected.txt: Added.
        * inspector/editor/text-editor-model.html: Added.

2011-04-15  Eric Seidel  <eric@webkit.org>

        Reviewed by Eric Carlson.

        Flaky Test: media/invalid-media-url-crash.html
        https://bugs.webkit.org/show_bug.cgi?id=51138

        Skipping this test on Snow Leopard since it's hitting
        a known MediaToolbox crasher on Snow Leopard.
        If Apple happens to software update SL users we can
        unskip this, until then no need to run this flaky test.

        * platform/mac-snowleopard/Skipped:

2011-04-15  Sergio Villar Senin  <svillar@igalia.com>

        Unreviewed, skipping a test.

        [GTK] editing/selection/select-out-of-editable.html failing after r83967
        https://bugs.webkit.org/show_bug.cgi?id=58667

        * platform/gtk/Skipped: skipping editing/selection/select-out-of-editable.html

2011-04-15  Jessie Berlin  <jberlin@apple.com>

        [Windows Tests] fast/forms/input-text-drag-down.html and
        editing/selection/select-from-textfield-outwards.html failing since r83967.
        https://bugs.webkit.org/show_bug.cgi?id=58664

        Adding Windows-specific expected failing results to get the bots green.

        * platform/win/editing/selection/select-from-textfield-outwards-expected.checksum: Added.
        * platform/win/editing/selection/select-from-textfield-outwards-expected.png: Added.
        * platform/win/editing/selection/select-from-textfield-outwards-expected.txt: Added.
        * platform/win/fast/forms/input-text-drag-down-expected.checksum: Added.
        * platform/win/fast/forms/input-text-drag-down-expected.png: Added.
        * platform/win/fast/forms/input-text-drag-down-expected.txt: Added.

2011-04-15  Sergio Villar Senin  <svillar@igalia.com>

        Unreviewed, added new GTK+ test expectations.

        * platform/gtk/fast/forms/select-background-none-expected.checksum: Added.
        * platform/gtk/fast/forms/select-background-none-expected.png: Added.
        * platform/gtk/fast/forms/select-background-none-expected.txt: Added.
        * platform/gtk/fast/text/zero-font-size-expected.checksum: Added.
        * platform/gtk/fast/text/zero-font-size-expected.png: Added.
        * platform/gtk/fast/text/zero-font-size-expected.txt: Added.

2011-04-15  Adam Roben  <aroben@apple.com>

        Add new eventSender-dependent tests from r83967 to the mac-wks Skipped file

        * platform/mac-wk2/Skipped: Added some new editing/selection tests.

2011-04-15  Alice Boxhall  <aboxhall@chromium.org>

        Reviewed by Ryosuke Niwa.

        Text selection changes unexpectedly when dragging out of the <input>
        https://bugs.webkit.org/show_bug.cgi?id=55552

        Tests that dragging outside of a contenteditable, input or textarea selects to the end of the
        element, rather than jumping back to the beginning.

        * editing/selection/resources/select-out-of-floated-editable.js: Added.
        (log):
        (else.window.onmouseup):
        (getSelectionStart):
        (getSelectionEnd):
        (checkSelection):
        * editing/selection/select-out-of-editable-expected.txt: Added.
        * editing/selection/select-out-of-editable.html: Added.
        * editing/selection/select-out-of-floated-contenteditable-expected.txt: Added.
        * editing/selection/select-out-of-floated-contenteditable.html: Added.
        * editing/selection/select-out-of-floated-input-expected.txt: Added.
        * editing/selection/select-out-of-floated-input.html: Added.
        * editing/selection/select-out-of-floated-textarea-expected.txt: Added.
        * editing/selection/select-out-of-floated-textarea.html: Added.

2011-04-15  Adam Roben  <aroben@apple.com>

        Update Windows results after r83939

        * platform/win/media/media-document-audio-repaint-expected.txt:

2011-04-15  Adam Roben  <aroben@apple.com>

        Skip a sometimes-failing test on Windows

        <http://webkit.org/b/58441> tracks the failure.

        * platform/win/Skipped: Added fast/events/pageshow-pagehide-on-back-cached-with-frames.html.

2011-04-15  Adam Roben  <aroben@apple.com>

        Skip a timing-out test on Windows

        <http://webkit.org/b/58654> tracks the failure.

        * platform/win/Skipped: Added media/video-controls-in-media-document.html.

2011-04-15  Adam Roben  <aroben@apple.com>

        Roll out r83954

        It was causing fast/dom/Window/timer-null-script-execution-context.html to crash on multiple
        bots.

        See <http://webkit.org/b/58610>.

        * http/tests/security/contentSecurityPolicy/eval-scripts-setInterval-allowed-expected.txt: Removed.
        * http/tests/security/contentSecurityPolicy/eval-scripts-setInterval-allowed.html: Removed.
        * http/tests/security/contentSecurityPolicy/eval-scripts-setInterval-blocked-expected.txt: Removed.
        * http/tests/security/contentSecurityPolicy/eval-scripts-setInterval-blocked.html: Removed.
        * http/tests/security/contentSecurityPolicy/eval-scripts-setTimeout-allowed-expected.txt: Removed.
        * http/tests/security/contentSecurityPolicy/eval-scripts-setTimeout-allowed.html: Removed.
        * http/tests/security/contentSecurityPolicy/eval-scripts-setTimeout-blocked-expected.txt: Removed.
        * http/tests/security/contentSecurityPolicy/eval-scripts-setTimeout-blocked.html: Removed.

2011-04-15  Philippe Normand  <pnormand@igalia.com>

        Unreviewed, GTK platform results for
        fast/css/font-face-repeated-url.html

        * fast/css/font-face-repeated-url-expected.txt:
        * platform/gtk/fast/css/font-face-repeated-url-expected.txt: Copied from LayoutTests/fast/css/font-face-repeated-url-expected.txt.

2011-04-15  Andrey Kosyakov  <caseq@chromium.org>

        Unreviewed, rolling out r83949.
        http://trac.webkit.org/changeset/83949
        https://bugs.webkit.org/show_bug.cgi?id=57960

        broke 31 tests in chromium win & linux

        * platform/chromium/test_expectations.txt:

2011-04-15  Philippe Normand  <pnormand@igalia.com>

        Unreviewed, GTK rebaseline of two tests.

        * fast/css/font-face-repeated-url-expected.txt:
        * platform/gtk/media/media-document-audio-repaint-expected.txt:

2011-04-15  Adam Barth  <abarth@webkit.org>

        Reviewed by Eric Seidel.

        CSP should block string arguments to setTimeout and setInterval unless options eval-script
        https://bugs.webkit.org/show_bug.cgi?id=58610

        Herein lies a four-way testing matrix.

        * http/tests/security/contentSecurityPolicy/eval-scripts-setInterval-allowed-expected.txt: Added.
        * http/tests/security/contentSecurityPolicy/eval-scripts-setInterval-allowed.html: Added.
        * http/tests/security/contentSecurityPolicy/eval-scripts-setInterval-blocked-expected.txt: Added.
        * http/tests/security/contentSecurityPolicy/eval-scripts-setInterval-blocked.html: Added.
        * http/tests/security/contentSecurityPolicy/eval-scripts-setTimeout-allowed-expected.txt: Added.
        * http/tests/security/contentSecurityPolicy/eval-scripts-setTimeout-allowed.html: Added.
        * http/tests/security/contentSecurityPolicy/eval-scripts-setTimeout-blocked-expected.txt: Added.
        * http/tests/security/contentSecurityPolicy/eval-scripts-setTimeout-blocked.html: Added.

2011-04-15  Adam Barth  <abarth@webkit.org>

        Reviewed by Eric Seidel.

        Add support for CSP's 'self' source
        https://bugs.webkit.org/show_bug.cgi?id=58604

        * http/tests/security/contentSecurityPolicy/script-src-self-expected.txt: Added.
        * http/tests/security/contentSecurityPolicy/script-src-self.html: Added.

2011-04-14  Justin Novosad  <junov@chromium.org>

        Reviewed by Kenneth Russell.

        [Chromium] Accelerated 2D Canvas is slow to execute putImageData
        https://bugs.webkit.org/show_bug.cgi?id=57960

        * platform/chromium/test_expectations.txt:
        added expected failure for test
        canvas/philip/tests/2d.gradient.interpolate.colouralpha.html
        Logged as chromium issue:
        http://code.google.com/p/chromium/issues/detail?id=79477

2011-04-14  Adrienne Walker  <enne@google.com>

        [chromium] Unreviewed, test expectations for more bug 57113 fallout.

        * platform/chromium/test_expectations.txt:

2011-04-14  Ami Fischman  <fischman@google.com>

        Reviewed by Eric Carlson.

        Rewrote video-controls-in-media-document layouttest to use the shadow
        DOM (possible as of r83397) and avoid the need for pixel-test status.
        https://bugs.webkit.org/show_bug.cgi?id=54634

        * media/video-controls-in-media-document-expected.txt: Added.
        * media/video-controls-in-media-document.html:
        * platform/chromium-mac-leopard/media/video-controls-in-media-document-expected.checksum: Removed.
        * platform/chromium-mac-leopard/media/video-controls-in-media-document-expected.png: Removed.
        * platform/chromium-mac-leopard/media/video-controls-in-media-document-expected.txt: Removed.
        * platform/chromium-win-xp/media/video-controls-in-media-document-expected.checksum: Removed.
        * platform/chromium-win-xp/media/video-controls-in-media-document-expected.png: Removed.
        * platform/chromium/media/video-controls-in-media-document-expected.checksum: Removed.
        * platform/chromium/media/video-controls-in-media-document-expected.png: Removed.
        * platform/chromium/media/video-controls-in-media-document-expected.txt: Removed.
        * platform/chromium/test_expectations.txt:
        * platform/gtk/media/video-controls-in-media-document-expected.txt: Removed.
        * platform/mac/Skipped:
        * platform/win/Skipped:

2011-04-14  Ami Fischman  <fischman@google.com>

        Reviewed by Eric Carlson.

        Update expectation to reflect removal of the -25px bottom margin.
        https://bugs.webkit.org/show_bug.cgi?id=58442

        * media/media-document-audio-repaint-expected.txt:

2011-04-14  James Robinson  <jamesr@chromium.org>

        Guess what? Chicken^W chromium test_expectations.txt update.

        * platform/chromium/test_expectations.txt:

2011-04-14  Andy Estes  <aestes@apple.com>

        Skip a test in WK2 that requires
        layoutTestController.overridePreference().

        * platform/mac-wk2/Skipped:

2011-04-14  Vsevolod Vlasov  <vsevik@chromium.org>

        Reviewed by Pavel Feldman.

        Web Inspector: No headers information in network panel for downloads.
        https://bugs.webkit.org/show_bug.cgi?id=58139

        Passed resource response to inspector for PolicyDownload and PolicyIgnore requests.

        * http/tests/inspector/network/download-expected.txt: Added.
        * http/tests/inspector/network/download.html: Added.
        * http/tests/inspector/network/resources/download.zzz: Added.

2011-04-14  Naoki Takano  <takano.naoki@gmail.com>

        Reviewed by Eric Seidel.

        [Chromium]Change menu list background fallback value to transparent to work background:none for HTML select tag.
        https://bugs.webkit.org/show_bug.cgi?id=57818

        * fast/forms/select-background-none.html: Added.
        * platform/chromium-mac/fast/forms/select-background-none-expected.checksum: Added.
        * platform/chromium-mac/fast/forms/select-background-none-expected.png: Added.
        * platform/chromium-mac/fast/forms/select-background-none-expected.txt: Added.
        * platform/chromium-linux/fast/forms/select-background-none-expected.checksum: Added.
        * platform/chromium-linux/fast/forms/select-background-none-expected.png: Added.
        * platform/chromium-linux/fast/forms/select-background-none-expected.txt: Added.
        * platform/mac/fast/forms/select-background-none-expected.txt: Added.

2011-04-14  Adrienne Walker  <enne@google.com>

        [chromium] Unreviewed, update test expectations for huge-layer-img.

        * platform/chromium/test_expectations.txt:

2011-04-14  Leandro Gracia Gil  <leandrogracia@chromium.org>

        Reviewed by Steve Block.

        [Chromium] Two new tests added by r83287 fail in chromium
        https://bugs.webkit.org/show_bug.cgi?id=58147

        Solved by enabling the Media Stream API in the chromium feature override file.

        * platform/chromium/test_expectations.txt:

2011-04-14  Adrienne Walker  <enne@google.com>

        [chromium] Unreviewed, update test expectations.
        https://bugs.webkit.org/show_bug.cgi?id=58619

        * platform/chromium/test_expectations.txt:

2011-04-14  Dimitri Glazkov  <dglazkov@chromium.org>

        Reviewed by Ojan Vafai.

        Presence of shadow DOM should suppress rendering of ordinary child nodes
        https://bugs.webkit.org/show_bug.cgi?id=58073

        * fast/dom/shadow/no-renderers-for-light-children-expected.txt: Added.
        * fast/dom/shadow/no-renderers-for-light-children.html: Added.

2011-04-14  James Robinson  <jamesr@chromium.org>

        Add correct chromium expectation for compositing/layer-creation/overflow-scroll-overlap

        * platform/chromium-gpu/compositing/layer-creation/overflow-scroll-overlap-expected.txt: Added.
        * platform/chromium/test_expectations.txt:

2011-04-14  James Robinson  <jamesr@chromium.org>

        Update chromium test expectations.

        * platform/chromium-gpu/compositing/layer-creation: Removed.
        * platform/chromium/test_expectations.txt:

2011-04-14  Gavin Barraclough  <barraclough@apple.com>

        Reviewed by Geoffrey Garen.

        Bug 58600 - DFG JIT bugs in ValueToInt, PutByVal

        The bug in PutByVal is that an operand is in JSValueOperand - when this
        locks an integer into a register it will always retag the value without
        checking if the register is already locked. This is a problem where the
        value being stored by a PutByVal is the same as the subscript.
        The subscript is locked into a register first, as a strict integer.
        Locking the value results in the subscript being modified.

        The bug in ValueToInt related to the function of sillentFillAllRegisters.
        The problem is that this method will restore all register values from
        prior to the call, overwriting the result of the call out. Allow a
        register to be passed to specifically be excluded from being preserved.

        * fast/js/array-index-immediate-types-expected.txt:
        * fast/js/script-tests/array-index-immediate-types.js:
        (putSelf):

2011-04-14  Adrienne Walker  <enne@google.com>

        Reviewed by James Robinson.

        [chromium] Tile content and image layers
        https://bugs.webkit.org/show_bug.cgi?id=57113

        Rebaseline a number of image tests where slight filtering differences
        from using tiles caused test failures with exact pixel matching.
        None of these results are perceptually different.

        * platform/chromium-gpu-linux/compositing/color-matching/image-color-matching-expected.checksum:
        * platform/chromium-gpu-linux/compositing/color-matching/image-color-matching-expected.png:
        * platform/chromium-gpu-linux/compositing/text-on-large-layer-expected.checksum:
        * platform/chromium-gpu-linux/compositing/text-on-large-layer-expected.png:
        * platform/chromium-gpu-linux/fast/canvas/canvas-text-alignment-expected.checksum:
        * platform/chromium-gpu-linux/fast/canvas/canvas-text-alignment-expected.png:
        * platform/chromium-gpu-linux/fast/canvas/canvas-text-baseline-expected.checksum:
        * platform/chromium-gpu-linux/fast/canvas/canvas-text-baseline-expected.png:
        * platform/chromium-gpu-mac/compositing/color-matching/image-color-matching-expected.checksum:
        * platform/chromium-gpu-mac/compositing/color-matching/image-color-matching-expected.png:
        * platform/chromium-gpu-mac/compositing/text-on-large-layer-expected.checksum:
        * platform/chromium-gpu-mac/compositing/text-on-large-layer-expected.png:
        * platform/chromium-gpu-win/compositing/color-matching/image-color-matching-expected.checksum:
        * platform/chromium-gpu-win/compositing/color-matching/image-color-matching-expected.png:
        * platform/chromium-gpu-win/compositing/text-on-large-layer-expected.checksum:
        * platform/chromium-gpu-win/compositing/text-on-large-layer-expected.png:
        * platform/chromium-gpu-win/fast/canvas/canvas-text-alignment-expected.checksum:
        * platform/chromium-gpu-win/fast/canvas/canvas-text-alignment-expected.png:
        * platform/chromium-gpu-win/fast/canvas/canvas-text-baseline-expected.checksum:
        * platform/chromium-gpu-win/fast/canvas/canvas-text-baseline-expected.png:
        * platform/chromium/test_expectations.txt:

2011-04-14  James Robinson  <jamesr@chromium.org>

        Reviewed by Darin Fisher.

        [chromium] REGRESSION(83820): Composited scrollbar layers sometimes not positioned when initially creating frame
        https://bugs.webkit.org/show_bug.cgi?id=58575

        Remove expected failure lines for pixel tests that now should pass.

        * platform/chromium/test_expectations.txt:

2011-04-14  Chris Rogers  <crogers@google.com>

        Unreviewed.

        Update preload-slow-loading.php in test_expectations.txt
        https://bugs.webkit.org/show_bug.cgi?id=58597

        * platform/chromium/test_expectations.txt:

2011-04-14  Andy Estes  <aestes@apple.com>

        Add a comment with the bugzilla URL that tracks implementing
        layoutTestController.setPluginsEnabled() in WebKitTestRunner.

        * platform/mac-wk2/Skipped:

2011-04-14  Chris Rogers  <crogers@google.com>

        Unreviewed.

        Rebaseline fast/box-shadow/box-shadow-transformed.html
        and other test_expectations.txt fixup
        https://bugs.webkit.org/show_bug.cgi?id=58585

        * platform/chromium-mac/fast/box-shadow/box-shadow-transformed-expected.checksum: Removed.
        * platform/chromium-mac/fast/box-shadow/box-shadow-transformed-expected.png:
        * platform/chromium/test_expectations.txt:

2011-04-14  Dirk Pranke  <dpranke@chromium.org>

        Unreviewed, expectations change.

        Mark several tests as only failing in Linux debug, add a bug
        number.

        * platform/chromium/test_expectations.txt:

2011-04-14  Dmitry Titov  <dimich@chromium.org>

        Reviewed by David Levin.

        Simplifying Worker termination sequence (removing unnecessary mutex)
        https://bugs.webkit.org/show_bug.cgi?id=57090

        * fast/workers/resources/shared-worker-lifecycle.js:
        (createWorkerFrame): Fixing flaky worker test - removing document.write().

        When document.write() is called directly from inline script as in this test, it appends to the document.
        However, if worker threads from previously run test are still exiting,
        the test defers itself using setTimeout() and in this case document.write() overwrites the whole document
        and makes the test fail.

2011-04-14  Antti Koivisto  <antti@apple.com>

        Reviewed by Oliver Hunt.

        REGRESSION(r74107): Including svg format in @font-face rules makes Web Fonts fail to load
        https://bugs.webkit.org/show_bug.cgi?id=57766
        <rdar://problem/9232183>

        * fast/css/font-face-repeated-url-expected.txt: Added.
        * fast/css/font-face-repeated-url.html: Added.

2011-04-14  James Robinson  <jamesr@chromium.org>

        Update chromium expectations for tests that have subtle 32vs64 bit rendering differences on linux in the GPU path.

        * platform/chromium/test_expectations.txt:

2011-04-14  Andy Estes  <aestes@apple.com>

        Reviewed by Dan Bernstein.

        REGRESSION (r72141): Acid3 rendering is not pixel perfect.
        https://bugs.webkit.org/show_bug.cgi?id=55734

        * fast/text/zero-font-size.html: Added.
        * platform/mac/fast/text/zero-font-size-expected.checksum: Added.
        * platform/mac/fast/text/zero-font-size-expected.png: Added.
        * platform/mac/fast/text/zero-font-size-expected.txt: Added.

2011-04-14  Matthew Delaney  <mdelaney@apple.com>

        Reviewed by Simon Fraser.

        Have canvas drawImageFromRect just redirect to use drawImage
        https://bugs.webkit.org/show_bug.cgi?id=58516

        * fast/canvas/drawImageFromRect_withToDataURLAsSource-expected.txt: Added.
        * fast/canvas/drawImageFromRect_withToDataURLAsSource.html: Added.

2011-04-14  James Robinson  <jamesr@chromium.org>

        Reviewed by Simon Fraser.

        REGRESSION (r83820): Lots of compositing tests failing on Windows 7 Release (Tests)
        https://bugs.webkit.org/show_bug.cgi?id=58535

        Remove unnecessary baselines - the behavior on these tests should
        match the mac port now.

        * platform/win/compositing/geometry/limit-layer-bounds-clipping-ancestor-expected.txt: Removed.
        * platform/win/compositing/geometry/limit-layer-bounds-transformed-overflow-expected.txt: Removed.
        * platform/win/compositing/iframes/become-overlapped-iframe-expected.txt: Removed.
        * platform/win/compositing/iframes/composited-parent-iframe-expected.txt: Removed.
        * platform/win/compositing/iframes/connect-compositing-iframe-delayed-expected.txt: Removed.
        * platform/win/compositing/iframes/connect-compositing-iframe-expected.txt: Removed.
        * platform/win/compositing/iframes/connect-compositing-iframe2-expected.txt: Removed.
        * platform/win/compositing/iframes/connect-compositing-iframe3-expected.txt: Removed.
        * platform/win/compositing/iframes/enter-compositing-iframe-expected.txt: Removed.
        * platform/win/compositing/iframes/iframe-resize-expected.txt: Removed.
        * platform/win/compositing/iframes/iframe-size-from-zero-expected.txt: Removed.
        * platform/win/compositing/iframes/overlapped-iframe-expected.txt: Removed.
        * platform/win/compositing/iframes/scrolling-iframe-expected.txt: Removed.
        * platform/win/compositing/layer-creation/overflow-scroll-overlap-expected.txt: Removed.
        * platform/win/compositing/overflow/content-gains-scrollbars-expected.txt: Removed.
        * platform/win/compositing/overflow/overflow-scrollbar-layers-expected.txt: Removed.
        * platform/win/compositing/overflow/resize-painting-expected.txt: Removed.

2011-04-14  Csaba Osztrogonác  <ossy@webkit.org>

        [Qt] 9 tests have different results on 64 bit and/or in debug mode compared to 32 bit and/or release mode
        [Qt] 6 tests have different results on 64 bit compared to 32 bit
        https://bugs.webkit.org/show_bug.cgi?id=52810
        https://bugs.webkit.org/show_bug.cgi?id=52812

        * platform/qt/Skipped: Add svg/text/text-align-05-b.svg

2011-04-14  Jian Li  <jianli@chromium.org>

        Reviewed by Darin Fisher.

        BlobBuilder should be vendor-prefixed
        https://bugs.webkit.org/show_bug.cgi?id=58518

        * fast/dom/Window/script-tests/window-property-descriptors.js:
        * fast/dom/Window/window-properties.html:
        * fast/dom/Window/window-property-descriptors-expected.txt:
        * fast/dom/prototype-inheritance-2-expected.txt:
        * fast/dom/prototype-inheritance-expected.txt:
        * fast/dom/script-tests/constructed-objects-prototypes.js:
        (constructorPropertiesOnWindow):
        * fast/dom/script-tests/prototype-inheritance-2.js:
        (constructorNamesForWindow):
        * fast/dom/script-tests/prototype-inheritance.js:
        * fast/dom/window-domurl-crash.html:
        * fast/files/blob-slice-overflow.html:
        * fast/files/blob-slice-test.html:
        * fast/files/resources/read-blob-test-cases.js:
        (testReadingTripleSlicedHybridBlob):
        * fast/files/resources/read-common.js:
        (buildBlob):
        * fast/files/workers/inline-worker-via-blob-url.html:
        * fast/filesystem/resources/file-writer-events.js:
        (tenXBlob):
        (startWrite):
        * fast/filesystem/resources/file-writer-gc-blob.js:
        (tenXBlob):
        (startWrite):
        * fast/filesystem/resources/file-writer-sync-truncate-extend.js:
        * fast/filesystem/resources/file-writer-sync-write-overlapped.js:
        * fast/filesystem/resources/file-writer-utils.js:
        * fast/js/global-constructors-expected.txt:
        * fast/js/script-tests/global-constructors.js:
        * http/tests/fileapi/create-blob-url-from-data-url.html:
        * http/tests/local/blob/resources/hybrid-blob-util.js:
        (HybridBlobTestUtil.this.appendAndCreateBlob):
        (HybridBlobTestUtil):
        * http/tests/security/resources/create-filesystem-file.html:
        * platform/chromium/fast/dom/prototype-inheritance-expected.txt:
        * platform/qt/fast/dom/Window/window-property-descriptors-expected.txt:
        * platform/qt/fast/dom/prototype-inheritance-expected.txt:
        * platform/qt/fast/js/global-constructors-expected.txt:
        * platform/win/fast/dom/window-domurl-crash-expected.txt:

2011-04-14  Jian Li  <jianli@chromium.org>

        Unreviewed, fixed tests caused by r83873.

        * fast/filesystem/resources/file-writer-utils.js:
        (verifyByteRangeIsZeroesHelper):
        (verifyByteRangeAsStringHelper):

2011-04-14  Csaba Osztrogonác  <ossy@webkit.org>

        [Qt] fast/transforms/scrollIntoView-transformed.html fails
        https://bugs.webkit.org/show_bug.cgi?id=58559

        * platform/qt/Skipped: Add fast/transforms/scrollIntoView-transformed.html until fix.

2011-04-14  Jian Li  <jianli@chromium.org>

        Reviewed by Darin Fisher.

        Add webkit prefix to Blob.slice method and change its semantics to be
        like Array.slice
        https://bugs.webkit.org/show_bug.cgi?id=58496

        Added a new test to test the new behavior and also update all existing
        tests to use the new name.

        * fast/dom/Window/window-properties.html:
        * fast/files/blob-slice-overflow.html:
        * fast/files/blob-slice-test-expected.txt: Added.
        * fast/files/blob-slice-test.html: Added.
        * fast/files/resources/read-blob-test-cases.js:
        (testReadingSlicedFileBlob):
        (testReadingSlicedTextBlob):
        (testReadingSlicedArrayBufferBlob):
        (testReadingSlicedHybridBlob):
        (testReadingTripleSlicedHybridBlob):
        * fast/filesystem/resources/file-writer-utils.js:
        (verifyByteRangeIsZeroesHelper):
        (verifyByteRangeAsStringHelper):
        * http/tests/local/blob/script-tests/send-hybrid-blob.js:
        ():
        * http/tests/local/blob/script-tests/send-sliced-data-blob.js:
        (runSliceTest):
        * http/tests/local/fileapi/script-tests/send-sliced-dragged-file.js:
        (onStableFileDrop):
        (onUnstableFileDrop):
        * http/tests/local/formdata/resources/send-form-data-common.js:
        (testSendingFormData):

2011-04-14  Csaba Osztrogonác  <ossy@webkit.org>

        [Qt] Height of "Ahem" font differs from all other ports.
        https://bugs.webkit.org/show_bug.cgi?id=57954

        * platform/qt/ [...]: Update expected files.

2011-04-14  Pavel Podivilov  <podivilov@chromium.org>

        Reviewed by Pavel Feldman.

        Web Inspector: re-implement dom breakpoints.
        https://bugs.webkit.org/show_bug.cgi?id=57038

        * inspector/debugger/dom-breakpoints.html:

2011-04-14  Satish Sampath  <satish@chromium.org>

        Reviewed by Kent Tamura.

        Disable speech input for readonly and disabled input fields.
        https://bugs.webkit.org/show_bug.cgi?id=58540

        * fast/speech/input-readonly-and-disabled-expected.txt: Added.
        * fast/speech/input-readonly-and-disabled.html: Added.

2011-04-14  Ilya Tikhonovsky  <loislo@chromium.org>

        Unreviewed. Rollout r83849 and r83857.

        * http/tests/inspector-enabled/database-open.html:

2011-04-14  Dimitri Glazkov  <dglazkov@chromium.org>

        Unreviewed, rolling out r83855.
        http://trac.webkit.org/changeset/83855

        After r83847 has been rolled out, these expectations no longer
        apply.

        * platform/chromium-gpu-linux/media/controls-after-reload-expected.png: Removed.
        * platform/chromium-gpu-linux/media/controls-strict-expected.png: Removed.
        * platform/chromium-gpu-linux/media/controls-styling-expected.png: Removed.
        * platform/chromium-gpu-linux/media/controls-without-preload-expected.png: Removed.
        * platform/chromium-gpu-linux/media/media-document-audio-repaint-expected.png: Removed.
        * platform/chromium-gpu-linux/media/video-controls-rendering-expected.png: Removed.
        * platform/chromium-gpu-linux/media/video-display-toggle-expected.png:
        * platform/chromium-gpu-linux/media/video-no-audio-expected.png:
        * platform/chromium-gpu-linux/media/video-volume-slider-expected.png:
        * platform/chromium-gpu-linux/media/video-zoom-controls-expected.png: Removed.
        * platform/chromium-gpu-mac/media/controls-after-reload-expected.png: Removed.
        * platform/chromium-gpu-mac/media/controls-strict-expected.png: Removed.
        * platform/chromium-gpu-mac/media/controls-styling-expected.png: Removed.
        * platform/chromium-gpu-mac/media/controls-without-preload-expected.png: Removed.
        * platform/chromium-gpu-mac/media/media-document-audio-repaint-expected.png: Removed.
        * platform/chromium-gpu-mac/media/media-document-audio-repaint-expected.txt: Removed.
        * platform/chromium-gpu-mac/media/video-controls-rendering-expected.png: Removed.
        * platform/chromium-gpu-mac/media/video-display-toggle-expected.png:
        * platform/chromium-gpu-mac/media/video-no-audio-expected.png:
        * platform/chromium-gpu-mac/media/video-volume-slider-expected.png:
        * platform/chromium-gpu-mac/media/video-zoom-controls-expected.png:
        * platform/chromium-gpu-win/media/controls-after-reload-expected.png: Removed.
        * platform/chromium-gpu-win/media/controls-strict-expected.png: Removed.
        * platform/chromium-gpu-win/media/controls-styling-expected.png: Removed.
        * platform/chromium-gpu-win/media/controls-without-preload-expected.png: Removed.
        * platform/chromium-gpu-win/media/media-document-audio-repaint-expected.png: Removed.
        * platform/chromium-gpu-win/media/media-document-audio-repaint-expected.txt: Removed.
        * platform/chromium-gpu-win/media/video-controls-rendering-expected.png: Removed.
        * platform/chromium-gpu-win/media/video-display-toggle-expected.png:
        * platform/chromium-gpu-win/media/video-no-audio-expected.png:
        * platform/chromium-gpu-win/media/video-volume-slider-expected.png:
        * platform/chromium-gpu-win/media/video-zoom-controls-expected.png: Removed.
        * platform/chromium-linux/fast/layers/video-layer-expected.png:
        * platform/chromium-linux/media/audio-controls-rendering-expected.png:
        * platform/chromium-linux/media/controls-after-reload-expected.png:
        * platform/chromium-linux/media/controls-strict-expected.png:
        * platform/chromium-linux/media/controls-styling-expected.png:
        * platform/chromium-linux/media/controls-without-preload-expected.png:
        * platform/chromium-linux/media/media-document-audio-repaint-expected.png:
        * platform/chromium-linux/media/video-controls-rendering-expected.png:
        * platform/chromium-linux/media/video-display-toggle-expected.png:
        * platform/chromium-linux/media/video-empty-source-expected.png:
        * platform/chromium-linux/media/video-no-audio-expected.png:
        * platform/chromium-linux/media/video-volume-slider-expected.png:
        * platform/chromium-linux/media/video-zoom-controls-expected.png:
        * platform/chromium-mac/fast/canvas/image-object-in-canvas-expected.png: Removed.
        * platform/chromium-mac/fast/layers/video-layer-expected.checksum: Added.
        * platform/chromium-mac/fast/layers/video-layer-expected.png:
        * platform/chromium-mac/fast/layers/video-layer-expected.txt:
        * platform/chromium-mac/media/audio-controls-rendering-expected.checksum: Added.
        * platform/chromium-mac/media/audio-controls-rendering-expected.png:
        * platform/chromium-mac/media/audio-controls-rendering-expected.txt:
        * platform/chromium-mac/media/controls-after-reload-expected.checksum: Added.
        * platform/chromium-mac/media/controls-after-reload-expected.png:
        * platform/chromium-mac/media/controls-after-reload-expected.txt:
        * platform/chromium-mac/media/controls-strict-expected.checksum: Added.
        * platform/chromium-mac/media/controls-strict-expected.png:
        * platform/chromium-mac/media/controls-strict-expected.txt:
        * platform/chromium-mac/media/controls-styling-expected.checksum: Added.
        * platform/chromium-mac/media/controls-styling-expected.png:
        * platform/chromium-mac/media/controls-styling-expected.txt:
        * platform/chromium-mac/media/controls-without-preload-expected.checksum: Added.
        * platform/chromium-mac/media/controls-without-preload-expected.png:
        * platform/chromium-mac/media/controls-without-preload-expected.txt:
        * platform/chromium-mac/media/media-document-audio-repaint-expected.checksum: Added.
        * platform/chromium-mac/media/media-document-audio-repaint-expected.png:
        * platform/chromium-mac/media/media-document-audio-repaint-expected.txt:
        * platform/chromium-mac/media/video-controls-rendering-expected.checksum: Added.
        * platform/chromium-mac/media/video-controls-rendering-expected.png:
        * platform/chromium-mac/media/video-controls-rendering-expected.txt:
        * platform/chromium-mac/media/video-display-toggle-expected.checksum: Added.
        * platform/chromium-mac/media/video-display-toggle-expected.png:
        * platform/chromium-mac/media/video-display-toggle-expected.txt:
        * platform/chromium-mac/media/video-empty-source-expected.checksum: Added.
        * platform/chromium-mac/media/video-empty-source-expected.png:
        * platform/chromium-mac/media/video-empty-source-expected.txt:
        * platform/chromium-mac/media/video-no-audio-expected.checksum: Added.
        * platform/chromium-mac/media/video-no-audio-expected.png:
        * platform/chromium-mac/media/video-no-audio-expected.txt:
        * platform/chromium-mac/media/video-volume-slider-expected.checksum: Added.
        * platform/chromium-mac/media/video-volume-slider-expected.png:
        * platform/chromium-mac/media/video-volume-slider-expected.txt:
        * platform/chromium-mac/media/video-zoom-controls-expected.png:
        * platform/chromium-mac/media/video-zoom-controls-expected.txt:
        * platform/chromium-win/fast/layers/video-layer-expected.png:
        * platform/chromium-win/fast/layers/video-layer-expected.txt:
        * platform/chromium-win/media/audio-controls-rendering-expected.png:
        * platform/chromium-win/media/audio-controls-rendering-expected.txt:
        * platform/chromium-win/media/controls-after-reload-expected.png:
        * platform/chromium-win/media/controls-after-reload-expected.txt:
        * platform/chromium-win/media/controls-strict-expected.png:
        * platform/chromium-win/media/controls-strict-expected.txt:
        * platform/chromium-win/media/controls-styling-expected.png:
        * platform/chromium-win/media/controls-styling-expected.txt:
        * platform/chromium-win/media/controls-without-preload-expected.png:
        * platform/chromium-win/media/controls-without-preload-expected.txt:
        * platform/chromium-win/media/media-document-audio-repaint-expected.png:
        * platform/chromium-win/media/media-document-audio-repaint-expected.txt:
        * platform/chromium-win/media/video-controls-rendering-expected.png:
        * platform/chromium-win/media/video-controls-rendering-expected.txt:
        * platform/chromium-win/media/video-display-toggle-expected.png:
        * platform/chromium-win/media/video-display-toggle-expected.txt:
        * platform/chromium-win/media/video-empty-source-expected.png:
        * platform/chromium-win/media/video-empty-source-expected.txt:
        * platform/chromium-win/media/video-no-audio-expected.png:
        * platform/chromium-win/media/video-no-audio-expected.txt:
        * platform/chromium-win/media/video-volume-slider-expected.png:
        * platform/chromium-win/media/video-volume-slider-expected.txt:
        * platform/chromium-win/media/video-zoom-controls-expected.png:
        * platform/chromium-win/media/video-zoom-controls-expected.txt:

2011-04-14  Ilya Tikhonovsky  <loislo@chromium.org>

        Unreviewed test fix for r83849.

        It was flaky.

        * http/tests/inspector-enabled/database-open.html:

2011-04-14  Adam Roben  <aroben@apple.com>

        Add new Windows expected results after r83820

        Windows differs from Mac on these tests due to extra scrollbar layers. Presumably this is
        because Mac uses native scrollbars for frames, and thus can't put them into layers.

        <http://webkit.org/b/58535> tracks the difference, but will probably just be closed as
        "works correctly".

        * platform/win/compositing/geometry/limit-layer-bounds-clipping-ancestor-expected.txt: Added.
        * platform/win/compositing/geometry/limit-layer-bounds-transformed-overflow-expected.txt: Added.
        * platform/win/compositing/iframes/become-overlapped-iframe-expected.txt: Added.
        * platform/win/compositing/iframes/composited-parent-iframe-expected.txt: Added.
        * platform/win/compositing/iframes/connect-compositing-iframe-delayed-expected.txt: Added.
        * platform/win/compositing/iframes/connect-compositing-iframe-expected.txt: Added.
        * platform/win/compositing/iframes/connect-compositing-iframe2-expected.txt: Added.
        * platform/win/compositing/iframes/connect-compositing-iframe3-expected.txt: Added.
        * platform/win/compositing/iframes/enter-compositing-iframe-expected.txt: Added.
        * platform/win/compositing/iframes/iframe-resize-expected.txt: Added.
        * platform/win/compositing/iframes/iframe-size-from-zero-expected.txt: Added.
        * platform/win/compositing/iframes/overlapped-iframe-expected.txt: Added.
        * platform/win/compositing/iframes/scrolling-iframe-expected.txt: Added.
        * platform/win/compositing/layer-creation/overflow-scroll-overlap-expected.txt: Added.
        * platform/win/compositing/overflow/content-gains-scrollbars-expected.txt: Added.
        * platform/win/compositing/overflow/overflow-scrollbar-layers-expected.txt: Added.
        * platform/win/compositing/overflow/resize-painting-expected.txt: Added.

2011-04-14  Andrey Kosyakov  <caseq@chromium.org>

        Unreviewed. Updated/added chromium test expectation for media controls tests following CSS change in r83847.

        * platform/chromium-gpu-linux/media/controls-after-reload-expected.png: Added.
        * platform/chromium-gpu-linux/media/controls-strict-expected.png: Added.
        * platform/chromium-gpu-linux/media/controls-styling-expected.png: Added.
        * platform/chromium-gpu-linux/media/controls-without-preload-expected.png: Added.
        * platform/chromium-gpu-linux/media/media-document-audio-repaint-expected.png: Added.
        * platform/chromium-gpu-linux/media/video-controls-rendering-expected.png: Added.
        * platform/chromium-gpu-linux/media/video-display-toggle-expected.png:
        * platform/chromium-gpu-linux/media/video-no-audio-expected.png:
        * platform/chromium-gpu-linux/media/video-volume-slider-expected.png:
        * platform/chromium-gpu-linux/media/video-zoom-controls-expected.png: Added.
        * platform/chromium-gpu-mac/media/controls-after-reload-expected.png: Added.
        * platform/chromium-gpu-mac/media/controls-strict-expected.png: Added.
        * platform/chromium-gpu-mac/media/controls-styling-expected.png: Added.
        * platform/chromium-gpu-mac/media/controls-without-preload-expected.png: Added.
        * platform/chromium-gpu-mac/media/media-document-audio-repaint-expected.png: Added.
        * platform/chromium-gpu-mac/media/media-document-audio-repaint-expected.txt: Added.
        * platform/chromium-gpu-mac/media/video-controls-rendering-expected.png: Added.
        * platform/chromium-gpu-mac/media/video-display-toggle-expected.png:
        * platform/chromium-gpu-mac/media/video-no-audio-expected.png:
        * platform/chromium-gpu-mac/media/video-volume-slider-expected.png:
        * platform/chromium-gpu-mac/media/video-zoom-controls-expected.png:
        * platform/chromium-gpu-win/media/controls-after-reload-expected.png: Added.
        * platform/chromium-gpu-win/media/controls-strict-expected.png: Added.
        * platform/chromium-gpu-win/media/controls-styling-expected.png: Added.
        * platform/chromium-gpu-win/media/controls-without-preload-expected.png: Added.
        * platform/chromium-gpu-win/media/media-document-audio-repaint-expected.png: Added.
        * platform/chromium-gpu-win/media/media-document-audio-repaint-expected.txt: Added.
        * platform/chromium-gpu-win/media/video-controls-rendering-expected.png: Added.
        * platform/chromium-gpu-win/media/video-display-toggle-expected.png:
        * platform/chromium-gpu-win/media/video-no-audio-expected.png:
        * platform/chromium-gpu-win/media/video-volume-slider-expected.png:
        * platform/chromium-gpu-win/media/video-zoom-controls-expected.png: Added.
        * platform/chromium-linux/fast/layers/video-layer-expected.png:
        * platform/chromium-linux/media/audio-controls-rendering-expected.png:
        * platform/chromium-linux/media/controls-after-reload-expected.png:
        * platform/chromium-linux/media/controls-strict-expected.png:
        * platform/chromium-linux/media/controls-styling-expected.png:
        * platform/chromium-linux/media/controls-without-preload-expected.png:
        * platform/chromium-linux/media/media-document-audio-repaint-expected.png:
        * platform/chromium-linux/media/video-controls-rendering-expected.png:
        * platform/chromium-linux/media/video-display-toggle-expected.png:
        * platform/chromium-linux/media/video-empty-source-expected.png:
        * platform/chromium-linux/media/video-no-audio-expected.png:
        * platform/chromium-linux/media/video-volume-slider-expected.png:
        * platform/chromium-linux/media/video-zoom-controls-expected.png:
        * platform/chromium-mac/fast/canvas/image-object-in-canvas-expected.png: Added.
        * platform/chromium-mac/fast/layers/video-layer-expected.checksum: Removed.
        * platform/chromium-mac/fast/layers/video-layer-expected.png:
        * platform/chromium-mac/fast/layers/video-layer-expected.txt:
        * platform/chromium-mac/media/audio-controls-rendering-expected.checksum: Removed.
        * platform/chromium-mac/media/audio-controls-rendering-expected.png:
        * platform/chromium-mac/media/audio-controls-rendering-expected.txt:
        * platform/chromium-mac/media/controls-after-reload-expected.checksum: Removed.
        * platform/chromium-mac/media/controls-after-reload-expected.png:
        * platform/chromium-mac/media/controls-after-reload-expected.txt:
        * platform/chromium-mac/media/controls-strict-expected.checksum: Removed.
        * platform/chromium-mac/media/controls-strict-expected.png:
        * platform/chromium-mac/media/controls-strict-expected.txt:
        * platform/chromium-mac/media/controls-styling-expected.checksum: Removed.
        * platform/chromium-mac/media/controls-styling-expected.png:
        * platform/chromium-mac/media/controls-styling-expected.txt:
        * platform/chromium-mac/media/controls-without-preload-expected.checksum: Removed.
        * platform/chromium-mac/media/controls-without-preload-expected.png:
        * platform/chromium-mac/media/controls-without-preload-expected.txt:
        * platform/chromium-mac/media/media-document-audio-repaint-expected.checksum: Removed.
        * platform/chromium-mac/media/media-document-audio-repaint-expected.png:
        * platform/chromium-mac/media/media-document-audio-repaint-expected.txt:
        * platform/chromium-mac/media/video-controls-rendering-expected.checksum: Removed.
        * platform/chromium-mac/media/video-controls-rendering-expected.png:
        * platform/chromium-mac/media/video-controls-rendering-expected.txt:
        * platform/chromium-mac/media/video-display-toggle-expected.checksum: Removed.
        * platform/chromium-mac/media/video-display-toggle-expected.png:
        * platform/chromium-mac/media/video-display-toggle-expected.txt:
        * platform/chromium-mac/media/video-empty-source-expected.checksum: Removed.
        * platform/chromium-mac/media/video-empty-source-expected.png:
        * platform/chromium-mac/media/video-empty-source-expected.txt:
        * platform/chromium-mac/media/video-no-audio-expected.checksum: Removed.
        * platform/chromium-mac/media/video-no-audio-expected.png:
        * platform/chromium-mac/media/video-no-audio-expected.txt:
        * platform/chromium-mac/media/video-volume-slider-expected.checksum: Removed.
        * platform/chromium-mac/media/video-volume-slider-expected.png:
        * platform/chromium-mac/media/video-volume-slider-expected.txt:
        * platform/chromium-mac/media/video-zoom-controls-expected.png:
        * platform/chromium-mac/media/video-zoom-controls-expected.txt:
        * platform/chromium-win/fast/layers/video-layer-expected.png:
        * platform/chromium-win/fast/layers/video-layer-expected.txt:
        * platform/chromium-win/media/audio-controls-rendering-expected.png:
        * platform/chromium-win/media/audio-controls-rendering-expected.txt:
        * platform/chromium-win/media/controls-after-reload-expected.png:
        * platform/chromium-win/media/controls-after-reload-expected.txt:
        * platform/chromium-win/media/controls-strict-expected.png:
        * platform/chromium-win/media/controls-strict-expected.txt:
        * platform/chromium-win/media/controls-styling-expected.png:
        * platform/chromium-win/media/controls-styling-expected.txt:
        * platform/chromium-win/media/controls-without-preload-expected.png:
        * platform/chromium-win/media/controls-without-preload-expected.txt:
        * platform/chromium-win/media/media-document-audio-repaint-expected.png:
        * platform/chromium-win/media/media-document-audio-repaint-expected.txt:
        * platform/chromium-win/media/video-controls-rendering-expected.png:
        * platform/chromium-win/media/video-controls-rendering-expected.txt:
        * platform/chromium-win/media/video-display-toggle-expected.png:
        * platform/chromium-win/media/video-display-toggle-expected.txt:
        * platform/chromium-win/media/video-empty-source-expected.png:
        * platform/chromium-win/media/video-empty-source-expected.txt:
        * platform/chromium-win/media/video-no-audio-expected.png:
        * platform/chromium-win/media/video-no-audio-expected.txt:
        * platform/chromium-win/media/video-volume-slider-expected.png:
        * platform/chromium-win/media/video-volume-slider-expected.txt:
        * platform/chromium-win/media/video-zoom-controls-expected.png:
        * platform/chromium-win/media/video-zoom-controls-expected.txt:

2011-04-14  Adam Roben  <aroben@apple.com>

        Add Windows results for new tests added in r83787

        Windows differs from the cross-platfom results due to <http://webkit.org/b/57334>.

        * platform/win/fast/ruby/after-block-doesnt-crash-expected.txt: Added.
        * platform/win/fast/ruby/after-table-doesnt-crash-expected.txt: Added.
        * platform/win/fast/ruby/before-block-doesnt-crash-expected.txt: Added.
        * platform/win/fast/ruby/before-table-doesnt-crash-expected.txt: Added.

2011-04-14  Mikhail Naganov  <mnaganov@chromium.org>

        Reviewed by Pavel Feldman.

        Web Inspector: [Chromium] Ready to move detailed heap snapshots storage and processing into workers.
        https://bugs.webkit.org/show_bug.cgi?id=58534

        * inspector/profiler/detailed-heapshots-test.js:
        (initialize_DetailedHeapshotTest.):
        (initialize_DetailedHeapshotTest):
        * inspector/profiler/heap-snapshot-test.js:
        (initialize_HeapSnapshotTest.InspectorTest.createHeapSnapshotMock):
        (initialize_HeapSnapshotTest):

2011-04-14  Andrey Kosyakov  <caseq@chromium.org>

        Unreviewed. Added chromium baselines for SVG tests added in r83821.

        * platform/chromium-linux/svg/dynamic-updates/SVGFEDiffuseLightingElement-inherit-lighting-color-css-prop-expected.png: Added.
        * platform/chromium-linux/svg/dynamic-updates/SVGFEFloodElement-inherit-flood-color-expected.png: Added.
        * platform/chromium-linux/svg/dynamic-updates/SVGFESpecularLightingElement-inherit-lighting-color-css-prop-expected.png: Added.
        * platform/chromium-linux/svg/dynamic-updates/SVGFESpecularLightingElement-lighting-color-css-prop-expected.png: Added.
        * platform/chromium-win/svg/dynamic-updates/SVGFEDiffuseLightingElement-inherit-lighting-color-css-prop-expected.png: Added.
        * platform/chromium-win/svg/dynamic-updates/SVGFEFloodElement-inherit-flood-color-expected.png: Added.
        * platform/chromium-win/svg/dynamic-updates/SVGFESpecularLightingElement-inherit-lighting-color-css-prop-expected.png: Added.
        * platform/chromium-win/svg/dynamic-updates/SVGFESpecularLightingElement-lighting-color-css-prop-expected.png: Added.

2011-04-14  Pavel Feldman  <pfeldman@google.com>

        Reviewed by Yury Semikhatsky.

        Web Inspector: implement incremental CSS free flow editing.
        https://bugs.webkit.org/show_bug.cgi?id=58529

        * inspector/styles/get-set-stylesheet-text.html:

2011-04-14  Herczeg Zoltan  <zherczeg@webkit.org>

        Unreviewed.

        svg/W3C-SVG-1.1-SE/svgdom-over-01-f.svg crashes in Debug build
        https://bugs.webkit.org/show_bug.cgi?id=58525

        Unskip svgdom-over-01-f.svg, since it is now passing.

        * platform/gtk/Skipped:

2011-04-14  Nancy Piedra  <nancy.piedra@nokia.com>

        Reviewed by Benjamin Poulain.

        Added additional test for parsing codecs parameter.
        https://bugs.webkit.org/show_bug.cgi?id=58188

        * media/video-can-play-type-expected.txt:
        * media/video-can-play-type.html:

2011-04-14  Philippe Normand  <pnormand@igalia.com>

        Unreviewed, skip 2 failing tests.

        * platform/gtk/Skipped: Skip
        http/tests/loading/onload-vs-immediate-refresh.pl and
        svg/W3C-SVG-1.1-SE/svgdom-over-01-f.svg

2011-04-14  Csaba Osztrogonác  <ossy@webkit.org>

        [Qt] fast/ruby tests fail
        https://bugs.webkit.org/show_bug.cgi?id=58523

        * platform/qt/Skipped: Add failing tests.

2011-04-14  James Robinson  <jamesr@chromium.org>

        Chromium expectation update.

        * platform/chromium-gpu-mac/compositing/geometry/limit-layer-bounds-clipping-ancestor-expected.txt: Added.
        * platform/chromium-gpu-mac/compositing/iframes/become-overlapped-iframe-expected.txt: Removed.
        * platform/chromium-gpu-win/compositing/overflow/scrollbar-painting-expected.checksum: Removed.
        * platform/chromium-gpu-win/compositing/overflow/scrollbar-painting-expected.png:
        * platform/chromium-gpu/compositing/iframes/become-overlapped-iframe-expected.txt: Renamed from LayoutTests/platform/chromium-gpu-linux/compositing/iframes/become-overlapped-iframe-expected.txt.
        * platform/chromium/test_expectations.txt:

2011-04-14  James Robinson  <jamesr@chromium.org>

        Few more updates for r83820.

        * platform/chromium-gpu/compositing/geometry/limit-layer-bounds-clipping-ancestor-expected.txt: Renamed from LayoutTests/platform/chromium-gpu-win/compositing/geometry/limit-layer-bounds-clipping-ancestor-expected.txt.
        * platform/chromium-gpu/compositing/layer-creation/overflow-scroll-overlap-expected.txt: Renamed from LayoutTests/platform/chromium-gpu/compositing/layer-creation.
        * platform/chromium/test_expectations.txt:

2011-04-14  Victoria Kirst  <vrk@google.com>

        Reviewed by James Robinson.

        [chromium] Failing GPU video tests
        https://bugs.webkit.org/show_bug.cgi?id=57926

        Rebaseline images.

        * platform/chromium-gpu-linux/media/video-display-toggle-expected.checksum: Removed.
        * platform/chromium-gpu-linux/media/video-display-toggle-expected.png:
        * platform/chromium-gpu-linux/media/video-no-audio-expected.checksum: Removed.
        * platform/chromium-gpu-linux/media/video-no-audio-expected.png:
        * platform/chromium-gpu-linux/media/video-volume-slider-expected.checksum: Removed.
        * platform/chromium-gpu-linux/media/video-volume-slider-expected.png:
        * platform/chromium-gpu-mac/media/video-display-toggle-expected.checksum: Removed.
        * platform/chromium-gpu-mac/media/video-display-toggle-expected.png:
        * platform/chromium-gpu-mac/media/video-no-audio-expected.checksum: Removed.
        * platform/chromium-gpu-mac/media/video-no-audio-expected.png:
        * platform/chromium-gpu-mac/media/video-volume-slider-expected.checksum: Removed.
        * platform/chromium-gpu-mac/media/video-volume-slider-expected.png:
        * platform/chromium-gpu-win/media/video-display-toggle-expected.checksum: Removed.
        * platform/chromium-gpu-win/media/video-display-toggle-expected.png:
        * platform/chromium-gpu-win/media/video-no-audio-expected.checksum: Removed.
        * platform/chromium-gpu-win/media/video-no-audio-expected.png:
        * platform/chromium-gpu-win/media/video-volume-slider-expected.checksum: Removed.
        * platform/chromium-gpu-win/media/video-volume-slider-expected.png:
        * platform/chromium/test_expectations.txt:

2011-04-14  Tony Gentilcore  <tonyg@chromium.org>

        Reviewed by Kent Tamura.

        [chromium] http/tests/loading/preload-append-scan.php fails
        https://bugs.webkit.org/show_bug.cgi?id=58352

        On chromium, onload-vs-immediate-refresh always caused the subsequent test to fail
        with an additional didFinishLoadForFrame message. This was because the test
        navigates via a refresh, but did not actually wait for the navigation to complete.

        This patch fixes that by adding a waitUntilDone() and calling notifyDone() after the
        redirect target page loads. Now the log for this test shows both navigations and no
        part of the navigation leaks into the next test.

        Also, since dumpAsText() shows alerts, there was no reason to write vs. alert the
        SUCCESS message.

        * http/tests/loading/onload-vs-immediate-refresh-expected.txt:
        * http/tests/loading/onload-vs-immediate-refresh.pl:
        * platform/chromium/test_expectations.txt:

2011-04-14  James Robinson  <jamesr@chromium.org>

        Update expectations and baselines for r83820.

        * compositing/iframes/overlapped-nested-iframes-expected.txt:
        * platform/chromium-gpu-linux/compositing/geometry/fixed-position-expected.checksum: Removed.
        * platform/chromium-gpu-linux/compositing/geometry/fixed-position-expected.png:
        * platform/chromium-gpu-linux/compositing/geometry/horizontal-scroll-composited-expected.checksum: Removed.
        * platform/chromium-gpu-linux/compositing/geometry/horizontal-scroll-composited-expected.png:
        * platform/chromium-gpu-linux/compositing/geometry/vertical-scroll-composited-expected.checksum: Removed.
        * platform/chromium-gpu-linux/compositing/geometry/vertical-scroll-composited-expected.png:
        * platform/chromium-gpu-linux/compositing/iframes/become-overlapped-iframe-expected.txt: Copied from LayoutTests/platform/chromium-gpu-win/compositing/iframes/iframe-size-from-zero-expected.txt.
        * platform/chromium-gpu-linux/compositing/overflow/fixed-position-ancestor-clip-expected.checksum: Removed.
        * platform/chromium-gpu-linux/compositing/overflow/fixed-position-ancestor-clip-expected.png:
        * platform/chromium-gpu-linux/compositing/overflow/scrollbar-painting-expected.checksum: Removed.
        * platform/chromium-gpu-linux/compositing/overflow/scrollbar-painting-expected.png:
        * platform/chromium-gpu-linux/platform/chromium/compositing/layout-width-change-expected.checksum: Removed.
        * platform/chromium-gpu-linux/platform/chromium/compositing/layout-width-change-expected.png:
        * platform/chromium-gpu-mac/compositing/geometry/fixed-position-expected.checksum: Removed.
        * platform/chromium-gpu-mac/compositing/geometry/fixed-position-expected.png:
        * platform/chromium-gpu-mac/compositing/geometry/horizontal-scroll-composited-expected.checksum: Removed.
        * platform/chromium-gpu-mac/compositing/geometry/horizontal-scroll-composited-expected.png:
        * platform/chromium-gpu-mac/compositing/geometry/vertical-scroll-composited-expected.checksum: Removed.
        * platform/chromium-gpu-mac/compositing/geometry/vertical-scroll-composited-expected.png:
        * platform/chromium-gpu-mac/compositing/iframes/become-overlapped-iframe-expected.txt: Copied from LayoutTests/platform/chromium-gpu-win/compositing/iframes/iframe-size-from-zero-expected.txt.
        * platform/chromium-gpu-mac/compositing/iframes/composited-iframe-alignment-expected.png: Added.
        * platform/chromium-gpu-mac/compositing/overflow/fixed-position-ancestor-clip-expected.checksum: Removed.
        * platform/chromium-gpu-mac/compositing/overflow/fixed-position-ancestor-clip-expected.png:
        * platform/chromium-gpu-mac/compositing/overflow/scrollbar-painting-expected.checksum: Removed.
        * platform/chromium-gpu-mac/compositing/overflow/scrollbar-painting-expected.png:
        * platform/chromium-gpu-mac/platform/chromium/compositing/layout-width-change-expected.checksum: Removed.
        * platform/chromium-gpu-mac/platform/chromium/compositing/layout-width-change-expected.png:
        * platform/chromium-gpu-win/compositing/geometry/fixed-position-expected.checksum: Removed.
        * platform/chromium-gpu-win/compositing/geometry/fixed-position-expected.png:
        * platform/chromium-gpu-win/compositing/geometry/horizontal-scroll-composited-expected.checksum: Removed.
        * platform/chromium-gpu-win/compositing/geometry/horizontal-scroll-composited-expected.png:
        * platform/chromium-gpu-win/compositing/geometry/vertical-scroll-composited-expected.checksum: Removed.
        * platform/chromium-gpu-win/compositing/geometry/vertical-scroll-composited-expected.png:
        * platform/chromium-gpu-win/compositing/iframes/scrolling-iframe-expected.txt: Removed.
        * platform/chromium-gpu-win/compositing/overflow/fixed-position-ancestor-clip-expected.checksum: Removed.
        * platform/chromium-gpu-win/compositing/overflow/fixed-position-ancestor-clip-expected.png:
        * platform/chromium-gpu-win/platform/chromium/compositing/layout-width-change-expected.checksum: Removed.
        * platform/chromium-gpu-win/platform/chromium/compositing/layout-width-change-expected.png:
        * platform/chromium-gpu/compositing/iframes/composited-parent-iframe-expected.txt: Renamed from LayoutTests/platform/chromium-gpu-win/compositing/iframes/composited-parent-iframe-expected.txt.
        * platform/chromium-gpu/compositing/iframes/connect-compositing-iframe-delayed-expected.txt: Renamed from LayoutTests/platform/chromium-gpu-win/compositing/iframes/connect-compositing-iframe-delayed-expected.txt.
        * platform/chromium-gpu/compositing/iframes/connect-compositing-iframe-expected.txt: Renamed from LayoutTests/platform/chromium-gpu-win/compositing/iframes/connect-compositing-iframe-expected.txt.
        * platform/chromium-gpu/compositing/iframes/connect-compositing-iframe2-expected.txt: Renamed from LayoutTests/platform/chromium-gpu-win/compositing/iframes/connect-compositing-iframe2-expected.txt.
        * platform/chromium-gpu/compositing/iframes/connect-compositing-iframe3-expected.txt: Renamed from LayoutTests/platform/chromium-gpu-win/compositing/iframes/connect-compositing-iframe3-expected.txt.
        * platform/chromium-gpu/compositing/iframes/enter-compositing-iframe-expected.txt: Renamed from LayoutTests/platform/chromium-gpu-win/compositing/iframes/enter-compositing-iframe-expected.txt.
        * platform/chromium-gpu/compositing/iframes/iframe-resize-expected.txt: Renamed from LayoutTests/platform/chromium-gpu-win/compositing/iframes/iframe-resize-expected.txt.
        * platform/chromium-gpu/compositing/iframes/iframe-size-from-zero-expected.txt: Renamed from LayoutTests/platform/chromium-gpu-win/compositing/iframes/iframe-size-from-zero-expected.txt.
        * platform/chromium-gpu/compositing/iframes/overlapped-iframe-expected.txt: Renamed from LayoutTests/platform/chromium-gpu-win/compositing/iframes/overlapped-iframe-expected.txt.
        * platform/chromium-gpu/compositing/layer-creation: Renamed from LayoutTests/platform/chromium-gpu-win/compositing/layer-creation/overflow-scroll-overlap-expected.txt.
        * platform/chromium-gpu/compositing/overflow/resize-painting-expected.txt: Renamed from LayoutTests/platform/chromium-gpu-win/compositing/overflow/resize-painting-expected.txt.
        * platform/chromium/test_expectations.txt:

2011-04-14  Renata Hodovan  <reni@webkit.org>

        Reviewed by Nikolas Zimmermann.

        CSS related SVG*Element changes doesn't require relayout
        https://bugs.webkit.org/show_bug.cgi?id=56906

        Testing inherited CSS related SVG property changes by FEFlood, FESpecularLighting and FEDiffuseLighing filters.
        Adding a missing test to check the dynamic update of lighting-color property of FESpecularLighting.
        All the other modifications are covered by the existing dyanmic-update tests.

        * platform/mac/svg/dynamic-updates/SVGFEDiffuseLightingElement-inherit-lighting-color-css-prop-expected.checksum: Added.
        * platform/mac/svg/dynamic-updates/SVGFEDiffuseLightingElement-inherit-lighting-color-css-prop-expected.png: Added.
        * platform/mac/svg/dynamic-updates/SVGFEFloodElement-inherit-flood-color-expected.checksum: Added.
        * platform/mac/svg/dynamic-updates/SVGFEFloodElement-inherit-flood-color-expected.png: Added.
        * platform/mac/svg/dynamic-updates/SVGFESpecularLightingElement-inherit-lighting-color-css-prop-expected.checksum: Added.
        * platform/mac/svg/dynamic-updates/SVGFESpecularLightingElement-inherit-lighting-color-css-prop-expected.png: Added.
        * platform/mac/svg/dynamic-updates/SVGFESpecularLightingElement-lighting-color-css-prop-expected.checksum: Added.
        * platform/mac/svg/dynamic-updates/SVGFESpecularLightingElement-lighting-color-css-prop-expected.png: Added.
        * svg/dynamic-updates/SVGFEDiffuseLightingElement-inherit-lighting-color-css-prop-expected.txt: Added.
        * svg/dynamic-updates/SVGFEDiffuseLightingElement-inherit-lighting-color-css-prop.html: Added.
        * svg/dynamic-updates/SVGFEFloodElement-inherit-flood-color-expected.txt: Added.
        * svg/dynamic-updates/SVGFEFloodElement-inherit-flood-color.html: Added.
        * svg/dynamic-updates/SVGFESpecularLightingElement-inherit-lighting-color-css-prop-expected.txt: Added.
        * svg/dynamic-updates/SVGFESpecularLightingElement-inherit-lighting-color-css-prop.html: Added.
        * svg/dynamic-updates/SVGFESpecularLightingElement-lighting-color-css-prop-expected.txt: Added.
        * svg/dynamic-updates/SVGFESpecularLightingElement-lighting-color-css-prop.html: Added.
        * svg/dynamic-updates/script-tests/SVGFEDiffuseLightingElement-inherit-lighting-color-css-prop.js: Added.
        (executeTest):
        * svg/dynamic-updates/script-tests/SVGFEFloodElement-inherit-flood-color-css-prop.js: Added.
        (executeTest):
        * svg/dynamic-updates/script-tests/SVGFESpecularLightingElement-inherit-lighting-color-css-prop.js: Added.
        (executeTest):
        * svg/dynamic-updates/script-tests/SVGFESpecularLightingElement-lighting-color-css-prop.js: Added.
        (executeTest):

2011-04-13  James Robinson  <jamesr@chromium.org>

        Reviewed by Simon Fraser.

        Allow setting composited backing stores for scrollbars and scroll corners
        https://bugs.webkit.org/show_bug.cgi?id=57202

        Adds some new tests for composited scrollbars, updates test expectations to take into account scrollbar layers.

        * compositing/iframes/become-composited-nested-iframes-expected.txt:
        * compositing/iframes/become-overlapped-iframe-expected.txt:
        * compositing/iframes/composited-parent-iframe-expected.txt:
        * compositing/iframes/connect-compositing-iframe-delayed-expected.txt:
        * compositing/iframes/connect-compositing-iframe-expected.txt:
        * compositing/iframes/connect-compositing-iframe2-expected.txt:
        * compositing/iframes/connect-compositing-iframe3-expected.txt:
        * compositing/iframes/enter-compositing-iframe-expected.txt:
        * compositing/iframes/iframe-resize-expected.txt:
        * compositing/iframes/iframe-size-from-zero-expected.txt:
        * compositing/iframes/overlapped-iframe-expected.txt:
        * compositing/iframes/repaint-after-losing-scrollbars-expected.checksum: Added.
        * compositing/iframes/repaint-after-losing-scrollbars-expected.png: Added.
        * compositing/iframes/repaint-after-losing-scrollbars-expected.txt: Added.
        * compositing/iframes/repaint-after-losing-scrollbars.html: Added.
        * compositing/iframes/resources/repaint-after-losing-scrollbars-iframe.html: Added.
        * compositing/iframes/scrolling-iframe-expected.txt:
        * compositing/overflow/clip-content-under-overflow-controls-expected.checksum: Added.
        * compositing/overflow/clip-content-under-overflow-controls-expected.png: Added.
        * compositing/overflow/clip-content-under-overflow-controls-expected.txt: Added.
        * compositing/overflow/clip-content-under-overflow-controls.html: Added.
        * compositing/overflow/content-gains-scrollbars-expected.txt: Added.
        * compositing/overflow/content-gains-scrollbars.html: Added.
        * compositing/overflow/content-loses-scrollbars-expected.txt: Added.
        * compositing/overflow/content-loses-scrollbars.html: Added.
        * compositing/overflow/overflow-scrollbar-layers-expected.txt: Added.
        * compositing/overflow/overflow-scrollbar-layers.html: Added.
        * compositing/overflow/repaint-after-losing-scrollbars-expected.checksum: Added.
        * compositing/overflow/repaint-after-losing-scrollbars-expected.png: Added.
        * compositing/overflow/repaint-after-losing-scrollbars-expected.txt: Added.
        * compositing/overflow/repaint-after-losing-scrollbars.html: Added.
        * compositing/tiling/huge-layer-img-expected.png:
        * platform/chromium-gpu-linux/compositing/color-matching/image-color-matching-expected.txt: Removed.
        * platform/chromium-gpu-linux/compositing/geometry/abs-position-inside-opacity-expected.txt: Removed.
        * platform/chromium-gpu-linux/compositing/geometry/foreground-layer-expected.png:
        * platform/chromium-gpu-linux/compositing/iframes/composited-iframe-alignment-expected.txt: Removed.
        * platform/chromium-gpu-linux/compositing/masks/direct-image-mask-expected.txt: Removed.
        * platform/chromium-gpu-linux/compositing/overflow/ancestor-overflow-expected.txt: Removed.
        * platform/chromium-gpu-linux/compositing/repaint/composited-document-element-expected.txt: Removed.
        * platform/chromium-gpu-linux/compositing/shadows/shadow-drawing-expected.txt: Removed.
        * platform/chromium-gpu-linux/compositing/text-on-large-layer-expected.txt: Removed.
        * platform/chromium-gpu-win/compositing/geometry/limit-layer-bounds-clipping-ancestor-expected.txt:
        * platform/chromium-gpu-win/compositing/geometry/limit-layer-bounds-transformed-overflow-expected.txt:
        * platform/chromium-gpu-win/compositing/iframes/composited-parent-iframe-expected.txt:
        * platform/chromium-gpu-win/compositing/iframes/connect-compositing-iframe-delayed-expected.txt:
        * platform/chromium-gpu-win/compositing/iframes/connect-compositing-iframe-expected.txt:
        * platform/chromium-gpu-win/compositing/iframes/connect-compositing-iframe2-expected.txt:
        * platform/chromium-gpu-win/compositing/iframes/connect-compositing-iframe3-expected.txt:
        * platform/chromium-gpu-win/compositing/iframes/enter-compositing-iframe-expected.txt:
        * platform/chromium-gpu-win/compositing/iframes/iframe-resize-expected.txt:
        * platform/chromium-gpu-win/compositing/iframes/iframe-size-from-zero-expected.txt:
        * platform/chromium-gpu-win/compositing/iframes/overlapped-iframe-expected.txt:
        * platform/chromium-gpu-win/compositing/iframes/scrolling-iframe-expected.txt: Removed.
        * platform/chromium-gpu-win/compositing/layer-creation/overflow-scroll-overlap-expected.txt: Added.
        * platform/chromium-gpu-win/compositing/overflow/resize-painting-expected.txt:
        * platform/chromium-gpu/compositing/geometry/foreground-layer-expected.txt: Added.
        * platform/chromium-gpu/compositing/iframes/become-composited-nested-iframes-expected.txt: Copied from LayoutTests/compositing/iframes/become-composited-nested-iframes-expected.txt.
        * platform/chromium-gpu/compositing/iframes/become-overlapped-iframe-expected.txt: Copied from LayoutTests/compositing/iframes/become-overlapped-iframe-expected.txt.
        * platform/chromium-gpu/compositing/iframes/overlapped-nested-iframes-expected.txt: Copied from LayoutTests/compositing/iframes/become-composited-nested-iframes-expected.txt.
        * platform/chromium-gpu/compositing/iframes/repaint-after-losing-scrollbars-expected.checksum: Added.
        * platform/chromium-gpu/compositing/iframes/repaint-after-losing-scrollbars-expected.png: Added.
        * platform/chromium-gpu/compositing/iframes/scrolling-iframe-expected.txt: Added.
        * platform/chromium-gpu/compositing/overflow/content-gains-scrollbars-expected.txt: Added.
        * platform/chromium-gpu/compositing/overflow/content-loses-scrollbars-expected.txt: Added.
        * platform/chromium-gpu/compositing/overflow/overflow-scrollbar-layers-expected.txt: Added.
        * platform/chromium-gpu/compositing/overflow/repaint-after-losing-scrollbars-expected.checksum: Added.
        * platform/chromium-gpu/compositing/overflow/repaint-after-losing-scrollbars-expected.png: Copied from LayoutTests/compositing/tiling/huge-layer-img-expected.png.
        * platform/chromium/test_expectations.txt:
        * platform/mac/Skipped:

2011-04-13  Andrey Kosyakov  <caseq@chromium.org>

        Unreviewed. Added chromium expectations for test added in r83803.

        * platform/chromium/iframe-outline-expected.png: Added.

2011-04-13  Abhishek Arya  <inferno@chromium.org>

        Reviewed by James Robinson.

        Tests that iframe outline is drawn.
        https://bugs.webkit.org/show_bug.cgi?id=57439

        * fast/frames/iframe-outline.html: Added.
        * platform/mac/fast/frames/iframe-outline-expected.checksum: Added.
        * platform/mac/fast/frames/iframe-outline-expected.png: Added.
        * platform/mac/fast/frames/iframe-outline-expected.txt: Added.

2011-04-13  Dirk Pranke  <dpranke@chromium.org>

        Unreviewed, expectations change - remove tests that are no longer
        failing.

        * platform/mac/test_expectations.txt:

2011-04-13  Jian Li  <jianli@chromium.org>

        Unreviewed, rebaseline 4 tests added as r83787.

        * platform/chromium-mac/fast/ruby/after-block-doesnt-crash-expected.txt: Added.
        * platform/chromium-mac/fast/ruby/after-table-doesnt-crash-expected.txt: Added.
        * platform/chromium-mac/fast/ruby/before-block-doesnt-crash-expected.txt: Added.
        * platform/chromium-mac/fast/ruby/before-table-doesnt-crash-expected.txt: Added.
        * platform/chromium-win/fast/ruby/after-block-doesnt-crash-expected.txt: Added.
        * platform/chromium-win/fast/ruby/after-table-doesnt-crash-expected.txt: Added.
        * platform/chromium-win/fast/ruby/before-block-doesnt-crash-expected.txt: Added.
        * platform/chromium-win/fast/ruby/before-table-doesnt-crash-expected.txt: Added.

2011-04-13  Roland Steiner  <rolandsteiner@chromium.org>

        Reviewed by David Hyatt.

        Bug 55930 - Incorrect handling of 'display:' property within nested <ruby> tags
        https://bugs.webkit.org/show_bug.cgi?id=55930

        Test that 'display: block' and 'display: table' on generated :before/:after content
        within <ruby> doesn't crash.

        * fast/ruby/after-block-doesnt-crash-expected.txt: Added.
        * fast/ruby/after-block-doesnt-crash.html: Added.
        * fast/ruby/after-table-doesnt-crash-expected.txt: Added.
        * fast/ruby/after-table-doesnt-crash.html: Added.
        * fast/ruby/before-block-doesnt-crash-expected.txt: Added.
        * fast/ruby/before-block-doesnt-crash.html: Added.
        * fast/ruby/before-table-doesnt-crash-expected.txt: Added.
        * fast/ruby/before-table-doesnt-crash.html: Added.

2011-04-13  Matthew Delaney  <mdelaney@apple.com>

        Reviewed by Chris Marrin.

        Update layout test expected result files' locations
        https://bugs.webkit.org/show_bug.cgi?id=58492

        * platform/mac-snowleopard/canvas/philip/tests/2d.line.miter.lineedge-expected.txt: Copied from LayoutTests/platform/mac/canvas/philip/tests/2d.line.miter.lineedge-expected.txt.
        * platform/mac-snowleopard/canvas/philip/tests/2d.shadow.enable.blur-expected.txt: Copied from LayoutTests/platform/mac/canvas/philip/tests/2d.shadow.enable.blur-expected.txt.
        * platform/mac-snowleopard/canvas/philip/tests/2d.shadow.enable.x-expected.txt: Copied from LayoutTests/platform/mac/canvas/philip/tests/2d.shadow.enable.x-expected.txt.
        * platform/mac-snowleopard/canvas/philip/tests/2d.shadow.enable.y-expected.txt: Copied from LayoutTests/platform/mac/canvas/philip/tests/2d.shadow.enable.y-expected.txt.
        * platform/mac/canvas/philip/tests/2d.line.miter.lineedge-expected.txt: Removed.
        * platform/mac/canvas/philip/tests/2d.shadow.enable.blur-expected.txt: Removed.
        * platform/mac/canvas/philip/tests/2d.shadow.enable.x-expected.txt: Removed.
        * platform/mac/canvas/philip/tests/2d.shadow.enable.y-expected.txt: Removed.

2011-04-13  Jian Li  <jianli@chromium.org>

        Unreviewed, more chromium test expectations update.

        * platform/chromium/test_expectations.txt:

2011-04-13  Jessie Berlin  <jberlin@apple.com>

        inspector/debugger/script-formatter.html broken on a bunch of platforms since introduction
        in r83748
        https://bugs.webkit.org/show_bug.cgi?id=58487

        Disable the test until it is fixed to get the bots green.

        * inspector/debugger/script-formatter.html: Removed.
        * inspector/debugger/script-formatter.html-disabled: Copied from inspector/debugger/script-formatter.html.

2011-04-13  Dirk Pranke  <dpranke@chromium.org>

        Unreviewed, expectations change / build fix. The file had
        multiple checksums which confused NRWT.

        * platform/mac/compositing/framesets/composited-frame-alignment-expected.checksum:

2011-04-13  Jian Li  <jianli@chromium.org>

        Unreviewed, update chromium test expectations per change in r83756.

        * platform/chromium/test_expectations.txt:

2011-04-13  Jian Li  <jianli@chromium.org>

        Unreviewed, update chromium test expectations to work around a bug
        in gpu test expectations handling.

        * platform/chromium/test_expectations.txt:

2011-04-13  Jian Li  <jianli@chromium.org>

        Unreviewed, update chromium test expectations.

        Mark compositing/webgl/webgl-reflection.html as failed for all platforms
        in chromium.

        * platform/chromium/test_expectations.txt:

2011-04-12  Chris Marrin  <cmarrin@apple.com>

        Reviewed by Simon Fraser.

        compositing/objects/composited-object-alignment.html causing failures in other tests since its introduction in r83518
        https://bugs.webkit.org/show_bug.cgi?id=58323

        Got rid of unnecessary JS from composited-subframe.html. This was mistakenly left in from previous experiments.
        Also moved pixel results to be platform specific. These are for Mac WebKit and WebKit2. There are color diffs
        between the two platforms, so I will make them all platform specific.

        * compositing/framesets/composited-frame-alignment-expected.checksum: Removed.
        * compositing/framesets/composited-frame-alignment-expected.png: Removed.
        * compositing/objects/composited-object-alignment-expected.checksum: Removed.
        * compositing/objects/composited-object-alignment-expected.png: Removed.
        * compositing/objects/resources/composited-subframe.html:
        * platform/mac-wk2/compositing: Added.
        * platform/mac-wk2/compositing/framesets: Added.
        * platform/mac-wk2/compositing/framesets/composited-frame-alignment-expected.checksum: Added.
        * platform/mac-wk2/compositing/framesets/composited-frame-alignment-expected.png: Added.
        * platform/mac-wk2/compositing/objects: Added.
        * platform/mac-wk2/compositing/objects/composited-object-alignment-expected.checksum: Added.
        * platform/mac-wk2/compositing/objects/composited-object-alignment-expected.png: Added.
        * platform/mac/compositing/framesets: Added.
        * platform/mac/compositing/framesets/composited-frame-alignment-expected.checksum: Added.
        * platform/mac/compositing/framesets/composited-frame-alignment-expected.png: Added.
        * platform/mac/compositing/objects: Added.
        * platform/mac/compositing/objects/composited-object-alignment-expected.checksum: Copied from LayoutTests/compositing/objects/composited-object-alignment-expected.checksum.
        * platform/mac/compositing/objects/composited-object-alignment-expected.png: Copied from LayoutTests/compositing/objects/composited-object-alignment-expected.png.

2011-04-13  Leandro Gracia Gil  <leandrogracia@chromium.org>

        Reviewed by Jian Li.

        Exclude webkitGetUserMedia from the navigator-detached-no-crash test.
        https://bugs.webkit.org/show_bug.cgi?id=58459

        Exclude the MediaStream API methods from the test until the feature
        is supported by most platforms.

        * fast/dom/navigator-detached-no-crash.html:

2011-04-13  Jian Li  <jianli@chromium.org>

        Unreviewed, rebaseline 2 tests for linux64 in chromium.

        * platform/chromium-linux-x86_64/svg/dynamic-updates/SVGTextElement-dom-lengthAdjust-attr-expected.png: Added.
        * platform/chromium-linux-x86_64/svg/dynamic-updates/SVGTextElement-svgdom-lengthAdjust-prop-expected.png: Added.

2011-04-12  Pavel Podivilov  <podivilov@chromium.org>

        Reviewed by Pavel Feldman.

        Web Inspector: fix source mapping for deobfuscated scripts.
        https://bugs.webkit.org/show_bug.cgi?id=58231

        * inspector/debugger/resources/obfuscated.js: Added.
        * inspector/debugger/script-formatter-expected.txt:
        * inspector/debugger/script-formatter.html:

2011-04-13  Philippe Normand  <pnormand@igalia.com>

        Unreviewed, GTK platform results for full-screen-zIndex.html test.

        [GTK] fullscreen/full-screen-zIndex.html fails
        https://bugs.webkit.org/show_bug.cgi?id=58444

        * platform/gtk/Skipped:
        * platform/gtk/fullscreen/full-screen-zIndex-expected.checksum: Added.
        * platform/gtk/fullscreen/full-screen-zIndex-expected.png: Added.
        * platform/gtk/fullscreen/full-screen-zIndex-expected.txt: Added.

2011-04-13  Jessie Berlin  <jberlin@apple.com>

        http/tests/inspector/extensions-resources-redirect.html and
        inspector/extensions/extensions-resources.html sometimes fail on Windows 7 Release (WebKit2
        Tests).
        https://bugs.webkit.org/show_bug.cgi?id=57491

        Add the tests to the win-wk2 Skipped list to get the bots green.

        * platform/win-wk2/Skipped:

2011-04-13  Philippe Normand  <pnormand@igalia.com>

        Unreviewed, skip failing fullscreen test on GTK.

        * platform/gtk/Skipped:

2011-04-13  Jessie Berlin  <jberlin@apple.com>

        [Windows XP Debug Tests] fast/events/pageshow-pagehide-on-back-cached-with-frames.html
        failing since r83699
        https://bugs.webkit.org/show_bug.cgi?id=58441

        Add the Windows-XP specific expected failing results to get the bots green.

        * platform/win-xp/fast/events: Added.
        * platform/win-xp/fast/events/pageshow-pagehide-on-back-cached-with-frames-expected.txt: Added.

2011-04-13  Philippe Normand  <pnormand@igalia.com>

        Unreviewed, GTK rebaseline of an svg test updated in r83710 and
        skip an http test using unimplemented DRT features.

        * platform/gtk/Skipped:
        * platform/gtk/svg/custom/text-dom-01-f-expected.txt:

2011-04-13  Andrey Kosyakov  <caseq@chromium.org>

        Unreviewed. Rebaselined SVG test expectations following mac expectations change in r83710.

        * platform/chromium-linux/svg/W3C-SVG-1.1-SE/svgdom-over-01-f-expected.png: Added.
        * platform/chromium-linux/svg/custom/text-dom-01-f-expected.checksum: Removed.
        * platform/chromium-linux/svg/custom/text-dom-01-f-expected.png:
        * platform/chromium-linux/svg/dynamic-updates/SVGTextElement-dom-lengthAdjust-attr-expected.png: Added.
        * platform/chromium-linux/svg/dynamic-updates/SVGTextElement-dom-textLength-attr-expected.png: Added.
        * platform/chromium-linux/svg/dynamic-updates/SVGTextElement-svgdom-lengthAdjust-prop-expected.png: Added.
        * platform/chromium-linux/svg/dynamic-updates/SVGTextElement-svgdom-textLength-prop-expected.png: Added.
        * platform/chromium-mac-leopard/svg/W3C-SVG-1.1-SE/svgdom-over-01-f-expected.png: Added.
        * platform/chromium-mac-leopard/svg/custom/text-dom-01-f-expected.checksum: Removed.
        * platform/chromium-mac-leopard/svg/custom/text-dom-01-f-expected.png: Removed.
        * platform/chromium-mac-leopard/svg/dynamic-updates/SVGTextElement-dom-lengthAdjust-attr-expected.png: Added.
        * platform/chromium-mac-leopard/svg/dynamic-updates/SVGTextElement-dom-textLength-attr-expected.png: Added.
        * platform/chromium-mac-leopard/svg/dynamic-updates/SVGTextElement-svgdom-lengthAdjust-prop-expected.png: Added.
        * platform/chromium-mac-leopard/svg/dynamic-updates/SVGTextElement-svgdom-textLength-prop-expected.png: Added.
        * platform/chromium-win/svg/W3C-SVG-1.1-SE/svgdom-over-01-f-expected.png: Added.
        * platform/chromium-win/svg/W3C-SVG-1.1-SE/svgdom-over-01-f-expected.txt: Added.
        * platform/chromium-win/svg/custom/text-dom-01-f-expected.checksum: Removed.
        * platform/chromium-win/svg/custom/text-dom-01-f-expected.png:
        * platform/chromium-win/svg/custom/text-dom-01-f-expected.txt:
        * platform/chromium-win/svg/dynamic-updates/SVGTextElement-dom-lengthAdjust-attr-expected.png: Added.
        * platform/chromium-win/svg/dynamic-updates/SVGTextElement-dom-textLength-attr-expected.png: Added.
        * platform/chromium-win/svg/dynamic-updates/SVGTextElement-svgdom-lengthAdjust-prop-expected.png: Added.
        * platform/chromium-win/svg/dynamic-updates/SVGTextElement-svgdom-textLength-prop-expected.png: Added.
        * platform/chromium-win/svg/text/lengthAdjust-text-metrics-expected.txt:

2011-04-13  Tony Gentilcore  <tonyg@chromium.org>

        Reviewed by David Levin.

        [chromium] Regression(r80861): fast/dom/Window/window-lookup-precedence.html started failing on Windows.
        https://bugs.webkit.org/show_bug.cgi?id=56608

        Previously the test unintentionally navigated the iframe when setting
        window.location. Instead, now, we just skip setting window.location.

        * fast/dom/Window/window-lookup-precedence.html:
        * platform/chromium-win/fast/dom/Window/window-lookup-precedence-expected.txt: Moved to chromium.
        * platform/chromium/fast/dom/Window/window-lookup-precedence-expected.txt: Moved from chromium-win.
        * platform/chromium/test_expectations.txt:

2011-04-13  Csaba Osztrogonác  <ossy@webkit.org>

        LayoutTestController.computedStyleIncludingVisitedInfo-based tests don't work in WK2
        http://webkit.org/b/58334

        Make same changes in Qt WK2 Skipped list as r83595 in Mac WK2 Skipped list.

        * platform/qt-wk2/Skipped: Skip a new test due to an identified bug in WKTR and classify
          three other skipped tests with that same bug.

2011-04-13  Mikhail Naganov  <mnaganov@chromium.org>

        Reviewed by Pavel Feldman.

        Web Inspector: [Chromium] Prepare to move detailed heap snapshots storage and processing into workers.
        https://bugs.webkit.org/show_bug.cgi?id=58320

        Introduce a proxy object that emulates worker behavior and change UI code to cope with it.

        * inspector/profiler/detailed-heapshots-test.js:
        (initialize_DetailedHeapshotTest):

2011-04-13  Csaba Osztrogonác  <ossy@webkit.org>

        Update Qt specific expected results after r83710.

        * platform/qt/svg/custom/text-dom-01-f-expected.txt:
        * platform/qt/svg/text/lengthAdjust-text-metrics-expected.txt:

2011-04-13  Alexander Pavlov  <apavlov@chromium.org>

        Reviewed by Pavel Feldman.

        Web Inspector: Web Page Performance auditing fails
        https://bugs.webkit.org/show_bug.cgi?id=58322

        * inspector/audits/audits-panel-functional.html:

2011-04-13  Nikolas Zimmermann  <nzimmermann@rim.com>

        Not reviewed.

        svg/W3C-SVG-1.1-SE/svgdom-over-01-f.svg has different output on Windows
        https://bugs.webkit.org/show_bug.cgi?id=58421

        * platform/win/Skipped: Skip svdgdom-over-01-f.svg test. The test is fine, but its missing a line compared to the mac output.

2011-04-13  Andrey Kosyakov  <caseq@chromium.org>

        Unreviewed.
        Rebaselined expectations following console message format change in V8 bindings.

        * platform/chromium/fast/dom/error-to-string-stack-overflow-expected.txt:
        * platform/chromium/fast/js/recursion-limit-equal-expected.txt:

2011-04-13  Nikolas Zimmermann  <nzimmermann@rim.com>

        Reviewed by Dirk Schulze.

        SVGTextContentElements textLength returns 0
        https://bugs.webkit.org/show_bug.cgi?id=52543

        Add new testcases from SVG 1.1 2nd edition. Correct all existing tests using textLength + SVG DOM Text API,
        as we're not including textLength/lengthAdjust="spacingAndGlyphs" anymore in the SVGTextQuery results.
        This matches Opera and a discussion on www-svg some time ago: http://www.w3.org/2010/05/24-svg-minutes.html.

        * platform/mac/svg/W3C-SVG-1.1-SE/svgdom-over-01-f-expected.checksum: Added.
        * platform/mac/svg/W3C-SVG-1.1-SE/svgdom-over-01-f-expected.png: Added.
        * platform/mac/svg/W3C-SVG-1.1-SE/svgdom-over-01-f-expected.txt: Added.
        * platform/mac/svg/custom/text-dom-01-f-expected.checksum:
        * platform/mac/svg/custom/text-dom-01-f-expected.png:
        * platform/mac/svg/custom/text-dom-01-f-expected.txt:
        * platform/mac/svg/dynamic-updates/SVGTextElement-dom-lengthAdjust-attr-expected.checksum: Added.
        * platform/mac/svg/dynamic-updates/SVGTextElement-dom-lengthAdjust-attr-expected.png: Added.
        * platform/mac/svg/dynamic-updates/SVGTextElement-dom-textLength-attr-expected.checksum: Added.
        * platform/mac/svg/dynamic-updates/SVGTextElement-dom-textLength-attr-expected.png: Added.
        * platform/mac/svg/dynamic-updates/SVGTextElement-svgdom-lengthAdjust-prop-expected.checksum: Added.
        * platform/mac/svg/dynamic-updates/SVGTextElement-svgdom-lengthAdjust-prop-expected.png: Added.
        * platform/mac/svg/dynamic-updates/SVGTextElement-svgdom-textLength-prop-expected.checksum: Added.
        * platform/mac/svg/dynamic-updates/SVGTextElement-svgdom-textLength-prop-expected.png: Added.
        * svg/W3C-SVG-1.1-SE/svgdom-over-01-f.svg: Added.
        * svg/dynamic-updates/SVGTextElement-dom-lengthAdjust-attr-expected.txt: Added.
        * svg/dynamic-updates/SVGTextElement-dom-lengthAdjust-attr.html: Added.
        * svg/dynamic-updates/SVGTextElement-dom-textLength-attr-expected.txt: Added.
        * svg/dynamic-updates/SVGTextElement-dom-textLength-attr.html: Added.
        * svg/dynamic-updates/SVGTextElement-svgdom-lengthAdjust-prop-expected.txt: Added.
        * svg/dynamic-updates/SVGTextElement-svgdom-lengthAdjust-prop.html: Added.
        * svg/dynamic-updates/SVGTextElement-svgdom-textLength-prop-expected.txt: Added.
        * svg/dynamic-updates/SVGTextElement-svgdom-textLength-prop.html: Added.
        * svg/dynamic-updates/script-tests/SVGTextElement-dom-lengthAdjust-attr.js: Added.
        (executeTest):
        * svg/dynamic-updates/script-tests/SVGTextElement-dom-textLength-attr.js: Added.
        (executeTest):
        * svg/dynamic-updates/script-tests/SVGTextElement-svgdom-lengthAdjust-prop.js: Added.
        (executeTest):
        * svg/dynamic-updates/script-tests/SVGTextElement-svgdom-textLength-prop.js: Added.
        (executeTest):
        * svg/text/lengthAdjust-text-metrics-expected.txt:
        * svg/text/resources/SelectionTestCase.js:
        (transformPoint):
        (transformRect):
        (toAbsoluteCoordinates):
        (selectRange):
        * svg/text/script-tests/lengthAdjust-text-metrics.js:
        (transformPoint):
        (transformRect):
        (numberToString):
        (lengthToString):
        (pointToString):
        (rectToString):

2011-04-12  Andrey Kosyakov  <caseq@chromium.org>

        Unreviewed. Adjusted chromium test expectations
         - adding WIN crash for webgl-reflection.html

        * platform/chromium/test_expectations.txt:

2011-04-12  Andrey Kosyakov  <caseq@chromium.org>

        Unreviewed. Adjusted chromium test expectations:
         - missing expectations for child-layer-3d-sorting.html
         - adopt-node-crash.html crash of mac debug gpu

        * platform/chromium/test_expectations.txt:

2011-04-12  Kent Tamura  <tkent@chromium.org>

        Reviewed by Dimitri Glazkov.

        [Chromium] Add WebSettings::setValidationMessageTimerMagnification()
        https://bugs.webkit.org/show_bug.cgi?id=57426

        * platform/chromium/test_expectations.txt:
          Remove validation-message-appearance.html because it becomes non-flaky
          by the DRT change.

2011-04-12  Sergey Glazunov  <serg.glazunov@gmail.com>

        Reviewed by Dimitri Glazkov.

        Element::setAttribute should check the namespace of an id attribute
        https://bugs.webkit.org/show_bug.cgi?id=58359

        * fast/dom/id-attribute-with-namespace-crash-expected.txt: Added.
        * fast/dom/id-attribute-with-namespace-crash.html: Added.

2011-04-12  Andrey Kosyakov  <caseq@chromium.org>

        Unreviewed. Added chromium baselines for new tests.

        * platform/chromium/test_expectations.txt:
        * platform/chromium-linux/fast/borders/bidi-002-expected.png: Added.
        * platform/chromium-linux/fast/borders/bidi-004-expected.png: Added.
        * platform/chromium-linux/fast/borders/bidi-009a-expected.png: Added.
        * platform/chromium-linux/fullscreen/full-screen-zIndex-expected.txt: Added.
        * platform/chromium-mac-leopard/fast/borders/bidi-002-expected.png: Added.
        * platform/chromium-mac-leopard/fast/borders/bidi-004-expected.png: Added.
        * platform/chromium-mac-leopard/fast/borders/bidi-009a-expected.png: Added.
        * platform/chromium-win/fast/borders/bidi-002-expected.png: Added.
        * platform/chromium-win/fast/borders/bidi-002-expected.txt: Added.
        * platform/chromium-win/fast/borders/bidi-004-expected.png: Added.
        * platform/chromium-win/fast/borders/bidi-004-expected.txt: Added.
        * platform/chromium-win/fast/borders/bidi-009a-expected.png: Added.
        * platform/chromium-win/fast/borders/bidi-009a-expected.txt: Added.
        * platform/chromium-win/fast/inline/positioned-object-between-replaced-elements-expected.txt: Added.
        * platform/chromium-win/fullscreen/full-screen-zIndex-expected.txt: Added.

2011-04-12  Vangelis Kokkevis  <vangelis@chromium.org>

        Reviewed by James Robinson.

        [chromium] Adding layout test for:
        https://bugs.webkit.org/show_bug.cgi?id=58397


        * platform/chromium-gpu-mac/platform/chromium/compositing/child-layer-3d-sorting-expected.checksum: Added.
        * platform/chromium-gpu-mac/platform/chromium/compositing/child-layer-3d-sorting-expected.png: Added.
        * platform/chromium-gpu-mac/platform/chromium/compositing/child-layer-3d-sorting-expected.txt: Added.
        * platform/chromium/compositing/child-layer-3d-sorting.html: Added.
        * platform/chromium/test_expectations.txt:

2011-04-12  Kenichi Ishibashi  <bashi@chromium.org>

        Reviewed by Kent Tamura.

        Fix wrong calculation of HTMLFormElement::m_associatedElementsAfterIndex.
        https://bugs.webkit.org/show_bug.cgi?id=58247

        Added tests which ensure calculation of m_associatedElementsAfterIndex
        doesn't get wrong.

        * fast/dom/HTMLFormElement/associated-elements-after-index-assertion-fail1-expected.txt: Added.
        * fast/dom/HTMLFormElement/associated-elements-after-index-assertion-fail1.html: Added.
        * fast/dom/HTMLFormElement/associated-elements-after-index-assertion-fail2-expected.txt: Added.
        * fast/dom/HTMLFormElement/associated-elements-after-index-assertion-fail2.html: Added.

2011-04-12  Jian Li  <jianli@chromium.org>

        Unreviewed, update chromium test expectations.

        Mark array-proto-func-property-getter-except.html and full-screen-zIndex.html
        as filed in chromium.

        * platform/chromium/test_expectations.txt:

2011-04-12  Csaba Osztrogonác  <ossy@webkit.org>

        [Qt] http/tests/misc/favicon-loads-with-icon-loading-override.html fails
        https://bugs.webkit.org/show_bug.cgi?id=58396

        * platform/qt/Skipped: Add http/tests/misc/favicon-loads-with-icon-loading-override.html

2011-04-12  Gavin Barraclough  <barraclough@apple.com>

        Reviewed by Oliver Hunt.

        https://bugs.webkit.org/show_bug.cgi?id=58395
        Exceptions thrown from property getters called from Array prototype functions can be missed

        Added layout test.

        * fast/js/array-proto-func-property-getter-except-expected.txt: Added.
        * fast/js/array-proto-func-property-getter-except.html: Added.
        * fast/js/script-tests/array-proto-func-property-getter-except.js: Added.
        (test.propertyGetter):

2011-04-12  Jer Noble  <jer.noble@apple.com>

        Unreviewed; add two new tests to the mac-wk2 SkippedList.

        Skip fullscreen/video-specified-size.html and fullscreen/full-screen-zIndex.html

        * platform/mac-wk2/Skipped:

2011-04-12  John Abd-El-Malek  <jam@chromium.org>

        Reviewed by Jian Li.

        [chromium] Fix spellcheck regression in context menus
        https://bugs.webkit.org/show_bug.cgi?id=58386

        * platform/chromium/test_expectations.txt:

2011-04-11  Jer Noble  <jer.noble@apple.com>

        Reviewed by Simon Fraser.

        REGRESSION: Vimeo fullscreen video displays incorrectly
        https://bugs.webkit.org/show_bug.cgi?id=58291

        * fullscreen/video-specified-size-expected.txt: Added.
        * fullscreen/video-specified-size.html: Added.
        * fullscreen/full-screen-test.js:
        * fullscreen/full-screen-zIndex-expected.txt: Added.
        * fullscreen/full-screen-zIndex.html: Added.
        * platform/mac/fullscreen/full-screen-zIndex-expected.checksum: Added.
        * platform/mac/fullscreen/full-screen-zIndex-expected.png: Added.

2011-04-12  Yael Aharon  <yael.aharon@nokia.com>

        Unreviewed.

        Unskip t0805-c5519-ibrdr-r-00-a.html, since it is now passing.

        * platform/qt/Skipped:

2011-04-12  Alice Liu  <alice.liu@apple.com>

        Added http/tests/misc/favicon-loads-with-icon-loading-override.html
        to mac-wk2 skipped list because resource load callbacks aren't implemented
        in WebKitTestRunner.

        * platform/mac-wk2/Skipped:

2011-04-12  Yael Aharon  <yael.aharon@nokia.com>

        Unreviewed.

        Update results after r83638.

        * platform/qt/css1/box_properties/padding_right_inline-expected.checksum:
        * platform/qt/css1/box_properties/padding_right_inline-expected.png:
        * platform/qt/css1/box_properties/padding_right_inline-expected.txt:

2011-04-12  Jian Li  <jianli@chromium.org>

        Unreviewed, update chromium test expectations.

        Mark 3 bidi related layout tests as failed in chromium.

        * platform/chromium/test_expectations.txt:

2011-04-12  Jian Li  <jianli@chromium.org>

        Unreviewed, update chromium test expectations.

        Mark 3 layout tests as failed in chromium.

        * platform/chromium/test_expectations.txt:

2011-04-12  Yael Aharon  <yael.aharon@nokia.com>

        Reviewed by Eric Seidel.

        REGRESSION(r82419): extra border in t0805-c5519-ibrdr-r-00-a.html
        https://bugs.webkit.org/show_bug.cgi?id=57459

        * fast/borders/bidi-002.html: Added.
        * fast/borders/bidi-004.html: Added.
        * fast/borders/bidi-009a.html: Added.
        * platform/mac/fast/borders/bidi-002-expected.checksum: Added.
        * platform/mac/fast/borders/bidi-002-expected.png: Added.
        * platform/mac/fast/borders/bidi-002-expected.txt: Added.
        * platform/mac/fast/borders/bidi-004-expected.checksum: Added.
        * platform/mac/fast/borders/bidi-004-expected.png: Added.
        * platform/mac/fast/borders/bidi-004-expected.txt: Added.
        * platform/mac/fast/borders/bidi-009a-expected.checksum: Added.
        * platform/mac/fast/borders/bidi-009a-expected.png: Added.
        * platform/mac/fast/borders/bidi-009a-expected.txt: Added.

2011-04-12  Jessie Berlin  <jberlin@apple.com>

        [Windows XP Debug Tests] http/tests/inspector/resource-tree-model.html failing since introduction in r83584
        https://bugs.webkit.org/show_bug.cgi?id=58367

        Add expected failing results to get the bots green.

        * platform/win-xp/http: Added.
        * platform/win-xp/http/tests: Added.
        * platform/win-xp/http/tests/inspector: Added.
        * platform/win-xp/http/tests/inspector/resource-tree-model-expected.txt: Added.

2011-04-12  David Hyatt  <hyatt@apple.com>

        Reviewed by Dan Bernstein.

        https://bugs.webkit.org/show_bug.cgi?id=58176

        Inline replaced elements following positioned elements on lines are not rendered. Make sure the
        logic for skipping run construction in appendRunsForObject matches the new logic that I added
        to findNextLineBreak. If they don't match up, you risk confusing the run construction code and
        causing it to not make runs for objects that follow the positioned object on the line.

        * fast/inline/positioned-object-between-replaced-elements.html: Added.
        * platform/mac/fast/inline/positioned-object-between-replaced-elements-expected.checksum: Added.
        * platform/mac/fast/inline/positioned-object-between-replaced-elements-expected.png: Added.
        * platform/mac/fast/inline/positioned-object-between-replaced-elements-expected.txt: Added.

2011-04-12  Alice Liu  <alice.liu@apple.com>

        Reviewed by Sam Weinig.

        https://bugs.webkit.org/show_bug.cgi?id=58292
        Provide new setting to allow site icon loading despite disabling automatic image loading in general.

        * http/tests/misc/favicon-loads-with-icon-loading-override-expected.txt: Added.
        * http/tests/misc/favicon-loads-with-icon-loading-override.html: Added.

2011-04-11  Abhishek Arya  <inferno@chromium.org>

        Reviewed by Dave Hyatt.

        Tests that we do not crash when reparenting a runin to a details block.
        https://bugs.webkit.org/show_bug.cgi?id=58228

        * fast/runin/runin-reparent-crash-expected.txt: Added.
        * fast/runin/runin-reparent-crash.html: Added.

2011-04-12  Stephen White  <senorblanco@chromium.org>

        Unreviewed; new chromium layout test baselines.

        New baselines after r83541.  Note that these look worse, but that's
        because we went from greyscale antialiasing to ClearType antialiasing,
        but the layout tests turn off ClearType, so they don't get any AA
        at all.  It looks fine in Chrome.

        * platform/chromium-win/fast/multicol/shadow-breaking-expected.checksum: Removed.
        * platform/chromium-win/fast/multicol/shadow-breaking-expected.png:
        * platform/chromium-win/fast/text/shadow-translucent-fill-expected.checksum: Removed.
        * platform/chromium-win/fast/text/shadow-translucent-fill-expected.png:
        * platform/chromium-win/fast/transforms/shadows-expected.png:
        * platform/chromium-win/svg/css/composite-shadow-text-expected.checksum: Removed.
        * platform/chromium-win/svg/css/composite-shadow-text-expected.png:
        * platform/chromium-win/svg/css/shadow-changes-expected.checksum: Removed.
        * platform/chromium-win/svg/css/shadow-changes-expected.png:
        * platform/chromium-win/svg/css/text-shadow-multiple-expected.checksum: Removed.
        * platform/chromium-win/svg/css/text-shadow-multiple-expected.png:
        * platform/chromium-win/transitions/svg-text-shadow-transition-expected.checksum: Removed.
        * platform/chromium-win/transitions/svg-text-shadow-transition-expected.png:
        * platform/chromium/test_expectations.txt:

2011-04-12  Cris Neckar  <cdn@chromium.org>

        Reviewed by Nikolas Zimmermann.

        Tests for crash when non-svg inline text boxes exist in the list of text boxes.
        https://bugs.webkit.org/show_bug.cgi?id=57933

        * svg/text/svg-rtl-text-crash-expected.txt: Added.
        * svg/text/svg-rtl-text-crash.html: Added.

2011-04-12  Mario Sanchez Prada  <msanchez@igalia.com>

        Reviewed by Chris Fleizach.

        [GTK] Expose menu items and menus as children of a menu bar
        https://bugs.webkit.org/show_bug.cgi?id=56659

        New cross-platform test. Skipped in platforms with no results yet.

        * accessibility/aria-menubar-menuitems.html: Added.
        * platform/gtk/accessibility/aria-menubar-menuitems-expected.txt: Added.
        * platform/mac/Skipped: Skipped the new test.
        * platform/win/Skipped: Ditto.

2011-04-12  Jessie Berlin  <jberlin@apple.com>

        [WebKit2 Release Tests] fast/dom/StyleSheet/detached-stylesheet-without-wrapper.html flakey
        https://bugs.webkit.org/show_bug.cgi?id=58337

        Skip the test to get the bots green.

        * platform/mac-wk2/Skipped:

2011-04-12  Jian Li  <jianli@chromium.org>

        Unreviewed, update chromium test expectations.

        Mark access-zero-sized-canvas as crash on chromium.

        * platform/chromium/test_expectations.txt:

2011-04-12  Ilya Tikhonovsky  <loislo@chromium.org>

        Reviewed by Pavel Feldman.

        Web Inspector: remove unnecessary method InspectorAgent.didEvaluateForTestInFrontend.
        https://bugs.webkit.org/show_bug.cgi?id=58335

        It was the method for Inspector layout tests.
        We can use RuntimeAgent.evaluate instead.

        * http/tests/inspector/inspector-test.js:
        (initialize_InspectorTest.InspectorTest.completeTest):

2011-04-12  Brady Eidson  <beidson@apple.com>

        Rubberstamped by Adam Roben.

        https://bugs.webkit.org/show_bug.cgi?id=58334
        LayoutTestController.computedStyleIncludingVisitedInfo-based tests don't work in WK2

        * platform/mac-wk2/Skipped: Skip a new test due to an identified bug in WKTR and classify
          three other skipped tests with that same bug.

2011-04-12  Andrey Kosyakov  <caseq@chromium.org>

        Unreviewed. Adjusted chromium test expectations (webgl-reflection.html sometimes crashes on chromium mac debug)

        * platform/chromium/test_expectations.txt:

2011-04-12  Jessie Berlin  <jberlin@apple.com>

        [Leopard Intel Debug Tests] fast/events/tabindex-focus-blur-all.html crashing since (83513,
        83521].
        https://bugs.webkit.org/show_bug.cgi?id=58327

        Skip the test on Leopard to get the bots green.

        * platform/mac-leopard/Skipped:

2011-04-12  Adam Roben  <aroben@apple.com>

        Add Windows expected failure results for a new test

        <http://webkit.org/b/58325> tracks the failure.

        * platform/win/fast/loader/stateobjects/state-url-sets-links-visited-expected.txt: Added.

2011-04-12  Adam Roben  <aroben@apple.com>

        Remove no-longer-needed Windows-specific results for an arraybuffer test

        Fixes <http://webkit.org/b/58326> REGRESSION (r83532):
        http/tests/xmlhttprequest/send-array-buffer.html failing on Windows

        * platform/win/http/tests/xmlhttprequest/send-array-buffer-expected.txt: Removed.

2011-04-12  Jessie Berlin  <jberlin@apple.com>

        compositing/objects/composited-object-alignment.html causing failures in other tests since
        it's introduction in r83518
        https://bugs.webkit.org/show_bug.cgi?id=58323

        Disabling the test until it is fixed in order to get the bots green.

        * compositing/objects/composited-object-alignment.html: Removed.
        * compositing/objects/composited-object-alignment.html-disabled: Copied from LayoutTests/compositing/objects/composited-object-alignment.html.

2011-04-11  Pavel Podivilov  <podivilov@chromium.org>

        Reviewed by Pavel Feldman.

        Web Inspector: move shortcut handlers from SourceFrame to TextViewer.
        https://bugs.webkit.org/show_bug.cgi?id=58238

        * inspector/debugger/live-edit.html:

2011-04-12  Pavel Feldman  <pfeldman@google.com>

        Reviewed by Yury Semikhatsky.

        Web Inspector: cookies view is empty even for sites with cookies.
        https://bugs.webkit.org/show_bug.cgi?id=58316

        * http/tests/inspector/resource-tree-model-expected.txt: Added.
        * http/tests/inspector/resource-tree-model.html: Added.

2011-04-12  Ilya Tikhonovsky  <loislo@chromium.org>

        Reviewed by Yury Semikhatsky.

        Web Inspector: InspectorTest.addObject dumps inner array properties as objects.
        https://bugs.webkit.org/show_bug.cgi?id=58310

        * http/tests/inspector/inspector-test.js:
        (initialize_InspectorTest.InspectorTest.addObject):
        (initialize_InspectorTest.InspectorTest.addArray):
        (initialize_InspectorTest.InspectorTest.dump):
        * http/tests/inspector/resource-har-conversion-expected.txt:
        * http/tests/inspector/resource-parameters-expected.txt:
        * inspector/protocol/console-agent-expected.txt:
        * inspector/protocol/runtime-agent-expected.txt:
        * inspector/report-protocol-errors-expected.txt:

2011-04-11  Stephen White  <senorblanco@chromium.org>

        Reviewed by James Robinson.

        [chromium] Accelerated canvas-to-canvas drawImage() is incorrect.
        https://bugs.webkit.org/show_bug.cgi?id=58258

        Add a new test to cover canvas-to-canvas drawImage() after a
        non-accelerated (strokeRect()) call.

        * fast/canvas/canvas-to-canvas-expected.txt: Added.
        * fast/canvas/canvas-to-canvas.html: Added.
        * fast/canvas/script-tests/canvas-to-canvas.js: Added.

2011-04-12  Mikhail Naganov  <mnaganov@chromium.org>

        Reviewed by Pavel Feldman.

        Web Inspector: [Chromium] Add some more tests for detailed heap snapshots UI.
        https://bugs.webkit.org/show_bug.cgi?id=58146

        * inspector/profiler/detailed-heapshots-comparison-expansion-preserved-when-sorting-expected.txt: Added.
        * inspector/profiler/detailed-heapshots-comparison-expansion-preserved-when-sorting.html: Added.
        * inspector/profiler/detailed-heapshots-comparison-show-all-expected.txt: Added.
        * inspector/profiler/detailed-heapshots-comparison-show-all.html: Added.
        * inspector/profiler/detailed-heapshots-comparison-show-next-expected.txt: Added.
        * inspector/profiler/detailed-heapshots-comparison-show-next.html: Added.
        * inspector/profiler/detailed-heapshots-comparison-shown-node-count-preserved-when-sorting-expected.txt: Added.
        * inspector/profiler/detailed-heapshots-comparison-shown-node-count-preserved-when-sorting.html: Copied from LayoutTests/inspector/profiler/detailed-heapshots-summary-expansion-preserved-when-sorting.html.
        * inspector/profiler/detailed-heapshots-comparison-sorting-expected.txt: Added.
        * inspector/profiler/detailed-heapshots-comparison-sorting.html: Added.
        * inspector/profiler/detailed-heapshots-containment-shown-node-count-preserved-when-sorting-expected.txt: Added.
        * inspector/profiler/detailed-heapshots-containment-shown-node-count-preserved-when-sorting.html: Added.
        * inspector/profiler/detailed-heapshots-dominators-expansion-preserved-when-sorting-expected.txt: Added.
        * inspector/profiler/detailed-heapshots-dominators-expansion-preserved-when-sorting.html: Added.
        * inspector/profiler/detailed-heapshots-dominators-show-all-expected.txt: Added.
        * inspector/profiler/detailed-heapshots-dominators-show-all.html: Added.
        * inspector/profiler/detailed-heapshots-dominators-show-next-actual.txt: Added.
        * inspector/profiler/detailed-heapshots-dominators-show-next-expected.txt: Added.
        * inspector/profiler/detailed-heapshots-dominators-show-next.html: Added.
        * inspector/profiler/detailed-heapshots-dominators-shown-node-count-preserved-when-sorting-expected.txt: Added.
        * inspector/profiler/detailed-heapshots-dominators-shown-node-count-preserved-when-sorting.html: Added.
        * inspector/profiler/detailed-heapshots-dominators-sorting-expected.txt: Added.
        * inspector/profiler/detailed-heapshots-dominators-sorting.html: Added.
        * inspector/profiler/detailed-heapshots-summary-expansion-preserved-when-sorting.html:
        * inspector/profiler/detailed-heapshots-summary-shown-node-count-preserved-when-sorting-expected.txt: Added.
        * inspector/profiler/detailed-heapshots-summary-shown-node-count-preserved-when-sorting.html: Copied from LayoutTests/inspector/profiler/detailed-heapshots-summary-expansion-preserved-when-sorting.html.
        * inspector/profiler/detailed-heapshots-test.js:
        (initialize_DetailedHeapshotTest.):
        (initialize_DetailedHeapshotTest):
        * platform/chromium/inspector/profiler/detailed-heapshots-comparison-expansion-preserved-when-sorting-expected.txt: Added.
        * platform/chromium/inspector/profiler/detailed-heapshots-comparison-show-all-expected.txt: Added.
        * platform/chromium/inspector/profiler/detailed-heapshots-comparison-show-next-expected.txt: Added.
        * platform/chromium/inspector/profiler/detailed-heapshots-comparison-shown-node-count-preserved-when-sorting-expected.txt: Added.
        * platform/chromium/inspector/profiler/detailed-heapshots-comparison-sorting-expected.txt: Added.
        * platform/chromium/inspector/profiler/detailed-heapshots-containment-shown-node-count-preserved-when-sorting-expected.txt: Added.
        * platform/chromium/inspector/profiler/detailed-heapshots-dominators-expansion-preserved-when-sorting-expected.txt: Added.
        * platform/chromium/inspector/profiler/detailed-heapshots-dominators-show-all-expected.txt: Added.
        * platform/chromium/inspector/profiler/detailed-heapshots-dominators-show-next-expected.txt: Added.
        * platform/chromium/inspector/profiler/detailed-heapshots-dominators-shown-node-count-preserved-when-sorting-expected.txt: Added.
        * platform/chromium/inspector/profiler/detailed-heapshots-dominators-sorting-expected.txt: Added.
        * platform/chromium/inspector/profiler/detailed-heapshots-summary-shown-node-count-preserved-when-sorting-expected.txt: Added.

2011-04-12  Ilya Tikhonovsky  <loislo@chromium.org>

        Reviewed by Yury Semikhatsky.

        Web Inspector: there was incorrect value of id property of responses for malformed json-rpc 2.0 requests.
        https://bugs.webkit.org/show_bug.cgi?id=58305

        It was 0 if the message is not a json object or it has no id property. But according to spec it must be null.

        * inspector/report-protocol-errors-expected.txt:
        * inspector/report-protocol-errors.html:

2011-04-12  Pavel Podivilov  <podivilov@chromium.org>

        Reviewed by Pavel Feldman.

        Web Inspector: REGRESSION: Most resources in the Network panel show a blank panel when clicked.
        https://bugs.webkit.org/show_bug.cgi?id=58273

        * inspector/debugger/source-frame-expected.txt:
        * inspector/debugger/source-frame.html:

2011-04-12  Pavel Feldman  <pfeldman@google.com>

        Reviewed by Yury Semikhatsky.

        Web Inspector: document console domain, support cross-domain type references.
        https://bugs.webkit.org/show_bug.cgi?id=58240

        * inspector/protocol/console-agent-expected.txt:

2011-04-12  Csaba Osztrogonác  <ossy@webkit.org>

        [Qt] inspector/styles/styles-disable-then-enable.html make inspector/styles/styles-iframe.html fail in debug mode
        https://bugs.webkit.org/show_bug.cgi?id=58313

        * platform/qt/Skipped: Add inspector/styles/styles-disable-then-enable.html.

2011-04-12  Philippe Normand  <pnormand@igalia.com>

        Unreviewed, GTK baselines for 2 new tests.

        * platform/gtk/fast/multicol/huge-column-count-expected.txt: Added.
        * platform/gtk/fast/overflow/trailing-float-linebox-expected.txt: Added.

2011-04-12  Csaba Osztrogonác  <ossy@webkit.org>

        [Qt] 9 tests have different results on 64 bit and/or in debug mode compared to 32 bit and/or release mode
        [Qt] 6 tests have different results on 64 bit compared to 32 bit
        https://bugs.webkit.org/show_bug.cgi?id=52810
        https://bugs.webkit.org/show_bug.cgi?id=52812

        * platform/qt/Skipped: Add one more test.

2011-04-12  Balazs Kelemen  <kbalazs@webkit.org>

        Rubber-stamped by Csaba Osztrogonác.

        Skip a test on WebKit2 that depends on layoutTestController.setGeolocationPermission.

        * platform/mac-wk2/Skipped:
        * platform/qt-wk2/Skipped:

2011-04-12  Philippe Normand  <pnormand@igalia.com>

        Unreviewed, GTK rebaseline of fast/block/float/021.html and
        skipping 2 failing tests.

        * platform/gtk/Skipped:
        * platform/gtk/fast/block/float/021-expected.txt:

2011-04-12  Andrey Kosyakov  <caseq@chromium.org>

        Unreviewed. Adjusted chromium test expectations (negative-z-index.html may crash on win & linux debug)

        * platform/chromium/test_expectations.txt:

2011-04-12  Andrey Kosyakov  <caseq@chromium.org>

        Unreviewed. Adjusted chromium test expectations (webgl-nonpremultiplied-blend.html crashes on Mac OS 10.6 DEBUG)

        * platform/chromium/test_expectations.txt:

2011-04-12  Csaba Osztrogonác  <ossy@webkit.org>

        [Qt] 9 tests have different results on 64 bit and/or in debug mode compared to 32 bit and/or release mode
        [Qt] 6 tests have different results on 64 bit compared to 32 bit
        https://bugs.webkit.org/show_bug.cgi?id=52810
        https://bugs.webkit.org/show_bug.cgi?id=52812

        * platform/qt/Skipped: Add failing tests until fix.

2011-04-12  Csaba Osztrogonác  <ossy@webkit.org>

        [Qt] Add platform specific expected files for new tests introduced in r83514 and r83470.

        * platform/qt/fast/multicol/huge-column-count-expected.checksum: Added.
        * platform/qt/fast/multicol/huge-column-count-expected.png: Added.
        * platform/qt/fast/multicol/huge-column-count-expected.txt: Added.
        * platform/qt/fast/overflow/trailing-float-linebox-expected.checksum: Added.
        * platform/qt/fast/overflow/trailing-float-linebox-expected.png: Added.
        * platform/qt/fast/overflow/trailing-float-linebox-expected.txt: Added.

2011-04-12  Steve Block  <steveblock@google.com>

        Reviewed by Oliver Hunt.

        Callable objects created via JavaScriptCore API cannot be used as Geolocation callbacks
        https://bugs.webkit.org/show_bug.cgi?id=40012

        Covered by fast/dom/Geolocation/argument-types.html
        This is a revert of http://trac.webkit.org/changeset/60522

        * fast/dom/Geolocation/argument-types-expected.txt:
        * fast/dom/Geolocation/script-tests/argument-types.js:

2011-04-12  Andrey Kosyakov  <caseq@chromium.org>

        Unreviewed. Adjusted chrome test exceptations (state-url-sets-links-visited.html fails
        because of https://bugs.webkit.org/show_bug.cgi?id=37297)

        * platform/chromium/test_expectations.txt:

2011-04-11  Vangelis Kokkevis  <vangelis@chromium.org>

        Reviewed by James Robinson.

        Adding a test which verifies that compositing image layers
        update correctly when their contents change.
        https://bugs.webkit.org/show_bug.cgi?id=58181

        * compositing/images/content-image-change-expected.txt: Added.
        * compositing/images/content-image-change.html: Added.
        * platform/chromium/test_expectations.txt:
        * platform/mac/compositing/images/content-image-change-expected.checksum: Added.
        * platform/mac/compositing/images/content-image-change-expected.png: Added.

2011-04-11  Simon Fraser  <simon.fraser@apple.com>

        Reviewed by Dan Bernstein.

        -webkit-box-shadow:inset does not animate transform as an inset shadow
        https://bugs.webkit.org/show_bug.cgi?id=45176

        Testcase for transitions between different shadow styles.

        * transitions/mismatched-shadow-styles-expected.txt: Added.
        * transitions/mismatched-shadow-styles.html: Added.

2011-04-11  Xianzhu Wang  <wangxianzhu@google.com>

        Reviewed by Tony Gentilcore.

        loader/reload-subresource-when-type-changes.html might be flaky
        https://bugs.webkit.org/show_bug.cgi?id=56360

        Onload of the third image might be triggered before that of the second image.
        This might ahppen in environment with slow access (such as NFS, or tests
        accessed through HTTP).

        * loader/reload-subresource-when-type-changes.html:
        * loader/resources/reload-subresource-when-type-changes.js:

2011-04-11  Sam Weinig  <sam@webkit.org>

        Reviewed by Anders Carlsson.

        REGRESSION(r77974): http/tests/security/aboutBlank/security-context-window-open.html is failing
        <rdar://problem/8981346>
        https://bugs.webkit.org/show_bug.cgi?id=54159

        * platform/mac-wk2/Skipped:
        Remove http/tests/security/aboutBlank/security-context-window-open.html from the skipped list.

2011-04-11  Ryosuke Niwa  <rniwa@webkit.org>

        Reviewed by Tony Chang.

        [chromium] Crash in WebViewImpl::caretOrSelectionBounds
        https://bugs.webkit.org/show_bug.cgi?id=58269

        Added a test to ensure WebKit does not crash when selecting over a file input element.
        While the bug was specific to Chromium port, the test will be run on all ports because
        all other ports should not crash either.

        * editing/selection/extend-over-file-input-by-drag-crash-expected.txt: Added.
        * editing/selection/extend-over-file-input-by-drag-crash.html: Added.

2011-04-11  Brady Eidson  <beidson@apple.com>

        Reviewed by Maciej Stachowiak.

        <rdar://problem/9251515> and https://bugs.webkit.org/show_bug.cgi?id=58072
        URLs accessed as a result of pushState/replaceState should count as "visited" and be in the global history

        * fast/loader/stateobjects/state-url-sets-links-visited-expected.txt: Added.
        * fast/loader/stateobjects/state-url-sets-links-visited.html: Added.

2011-04-11  Justin Novosad  <junov@chromium.org>

        Reviewed by Kenneth Russell.

        [Chromium] Text anti-aliasing fails when rendering text with shadow
        https://bugs.webkit.org/show_bug.cgi?id=57584

        * platform/chromium/test_expectations.txt:
        Tempoaray test failures that will need to be rebaselined

2011-04-11  Jian Li  <jianli@chromium.org>

        Unreviewed, update chromium test expectations.

        Mark failed tests in chromium that could be caused by r83514 & r83518.

        * platform/chromium/test_expectations.txt:

2011-04-11  Chris Marrin  <cmarrin@apple.com>

        Rubberstamped by Dan Bernstein.

        xhr.responseType = 'arraybuffer' works on Mac but not on Windows
        https://bugs.webkit.org/show_bug.cgi?id=50334

        Unskipped the XHR ArrayBuffer test for Windows. I also got rid of a couple of bogus expected
        results. These had errors in them for what Windows used to be returning. Now the non-platform
        specific results files are correct for Windows.

        * platform/win/Skipped:
        * platform/win/fast/xmlhttprequest/xmlhttprequest-responsetype-abort-expected.txt: Removed.
        * platform/win/fast/xmlhttprequest/xmlhttprequest-responsetype-arraybuffer-expected.txt: Removed.

2011-02-03  Martin Robinson  <mrobinson@igalia.com>

        Reviewed by Eric Seidel.

        [GTK] The GTK+ DRT needs an implementation of the PlainTextController
        https://bugs.webkit.org/show_bug.cgi?id=53605

        * platform/gtk/Skipped: Unskipped test which is now passing.

2011-04-11  Stephen White  <senorblanco@chromium.org>

        Unreviewed; new chromium baselines.

        New chromium-mac-leopard baseline images for tests affected by r83490.

        * platform/chromium-mac-leopard/svg/custom/foreign-object-skew-expected.png:
        * platform/chromium-mac-leopard/svg/custom/scrolling-embedded-svg-file-image-repaint-problem-expected.checksum: Removed.
        * platform/chromium-mac-leopard/svg/custom/scrolling-embedded-svg-file-image-repaint-problem-expected.png:
        * platform/chromium-mac-leopard/svg/zoom/page/zoom-foreignObject-expected.checksum: Removed.
        * platform/chromium-mac-leopard/svg/zoom/page/zoom-foreignObject-expected.png: Removed.

2011-04-11  Matthew Delaney  <mdelaney@apple.com>

        Reviewed by Dan Bernstein.

        [CG] drawImage with a subimage bleeds pixel data at borders
        https://bugs.webkit.org/show_bug.cgi?id=58267

        * fast/canvas/DrawImageSinglePixelStretch.html: Added test case.
        * fast/canvas/resources/orangePixels.gif: Added.

2011-04-11  Chris Marrin  <cmarrin@apple.com>

        Reviewed by Simon Fraser.

        iframe/compositing propagation should also work for <object> and framesets
        https://bugs.webkit.org/show_bug.cgi?id=39037

        Added pixel tests to for composited framesets and objects.

        * compositing/framesets: Added.
        * compositing/framesets/composited-frame-alignment.html: Added.
        * compositing/framesets/composited-frame-alignment-expected.checksum: Added.
        * compositing/framesets/composited-frame-alignment-expected.png: Added.
        * compositing/framesets/composited-frame-alignment-expected.txt: Added.
        * compositing/framesets/resources: Added.
        * compositing/framesets/resources/composited-subframe.html: Added.
        * compositing/objects: Added.
        * compositing/objects/composited-object-alignment.html: Added.
        * compositing/objects/composited-object-alignment-expected.checksum: Added.
        * compositing/objects/composited-object-alignment-expected.png: Added.
        * compositing/objects/composited-object-alignment-expected.txt: Added.
        * compositing/objects/resources: Added.
        * compositing/objects/resources/composited-subframe.html: Added.

2011-04-11  David Hyatt  <hyatt@apple.com>

        Reviewed by Dan Bernstein.

        https://bugs.webkit.org/show_bug.cgi?id=58261

        Fix for layout regression on marketwatch.com. When I converted TrailingFloatsRootInlineBox over
        to the new overflow model, I messed up the math and passed a bottom value where I should have
        passed a height value. This patch fixes the code to be logically equivalent to the way it
        was prior to my changes.

        * fast/overflow/trailing-float-linebox.html: Added.
        * platform/mac/fast/overflow/trailing-float-linebox-expected.checksum: Added.
        * platform/mac/fast/overflow/trailing-float-linebox-expected.png: Added.
        * platform/mac/fast/overflow/trailing-float-linebox-expected.txt: Added.

2011-04-11  Adrienne Walker  <enne@google.com>

        Unreviewed, rolling out r83500.
        http://trac.webkit.org/changeset/83500
        https://bugs.webkit.org/show_bug.cgi?id=57113

        Regresses huge-layer-rotated test

        * platform/chromium-gpu-linux/compositing/color-matching/image-color-matching-expected.checksum:
        * platform/chromium-gpu-linux/compositing/color-matching/image-color-matching-expected.png:
        * platform/chromium-gpu-linux/compositing/geometry/horizontal-scroll-composited-expected.checksum:
        * platform/chromium-gpu-linux/compositing/geometry/horizontal-scroll-composited-expected.png:
        * platform/chromium-gpu-linux/compositing/geometry/vertical-scroll-composited-expected.checksum:
        * platform/chromium-gpu-linux/compositing/geometry/vertical-scroll-composited-expected.png:
        * platform/chromium-gpu-linux/compositing/text-on-large-layer-expected.checksum:
        * platform/chromium-gpu-linux/compositing/text-on-large-layer-expected.png:
        * platform/chromium-gpu-mac/compositing/color-matching/image-color-matching-expected.checksum:
        * platform/chromium-gpu-mac/compositing/color-matching/image-color-matching-expected.png:
        * platform/chromium-gpu-mac/compositing/geometry/horizontal-scroll-composited-expected.checksum:
        * platform/chromium-gpu-mac/compositing/geometry/horizontal-scroll-composited-expected.png:
        * platform/chromium-gpu-mac/compositing/geometry/vertical-scroll-composited-expected.checksum:
        * platform/chromium-gpu-mac/compositing/geometry/vertical-scroll-composited-expected.png:
        * platform/chromium-gpu-mac/compositing/overflow/overflow-scroll-expected.png:
        * platform/chromium-gpu-mac/compositing/text-on-large-layer-expected.checksum:
        * platform/chromium-gpu-mac/compositing/text-on-large-layer-expected.png:
        * platform/chromium-gpu-win/compositing/color-matching/image-color-matching-expected.checksum:
        * platform/chromium-gpu-win/compositing/color-matching/image-color-matching-expected.png:
        * platform/chromium-gpu-win/compositing/geometry/horizontal-scroll-composited-expected.checksum:
        * platform/chromium-gpu-win/compositing/geometry/horizontal-scroll-composited-expected.png:
        * platform/chromium-gpu-win/compositing/geometry/vertical-scroll-composited-expected.checksum:
        * platform/chromium-gpu-win/compositing/geometry/vertical-scroll-composited-expected.png:
        * platform/chromium-gpu-win/compositing/overflow/overflow-scroll-expected.checksum:
        * platform/chromium-gpu-win/compositing/overflow/overflow-scroll-expected.png:
        * platform/chromium-gpu-win/compositing/text-on-large-layer-expected.checksum:
        * platform/chromium-gpu-win/compositing/text-on-large-layer-expected.png:
        * platform/chromium-gpu/compositing/tiling/huge-layer-img-expected.checksum: Removed.
        * platform/chromium-gpu/compositing/tiling/huge-layer-img-expected.png: Removed.

2011-04-11  Stephen White  <senorblanco@chromium.org>

        Unreviewed; new chromium baselines.

        New chromium-mac baseline images for tests affected by r83490.

        * platform/chromium-mac/fast/lists/003-vertical-expected.checksum: Removed.
        * platform/chromium-mac/fast/lists/003-vertical-expected.png:
        * platform/chromium-mac/fast/text/decorations-transformed-expected.png:
        * platform/chromium-mac/svg/custom/foreign-object-skew-expected.png:
        * platform/chromium-mac/svg/custom/scrolling-embedded-svg-file-image-repaint-problem-expected.checksum: Removed.
        * platform/chromium-mac/svg/custom/scrolling-embedded-svg-file-image-repaint-problem-expected.png:
        * platform/chromium-mac/svg/zoom/page/zoom-foreignObject-expected.checksum: Removed.
        * platform/chromium-mac/svg/zoom/page/zoom-foreignObject-expected.png:
        * platform/chromium-mac/svg/zoom/text/zoom-foreignObject-expected.png:

2011-03-25  Adrienne Walker  <enne@google.com>

        Reviewed by James Robinson.

        [chromium] Tile content and image layers
        https://bugs.webkit.org/show_bug.cgi?id=57113

        Rebaseline a number of image tests where slight filtering differences
        from using tiles caused test failures with exact pixel matching.
        None of these results are perceptually different.

        * platform/chromium-gpu-linux/compositing/color-matching/image-color-matching-expected.checksum:
        * platform/chromium-gpu-linux/compositing/color-matching/image-color-matching-expected.png:
        * platform/chromium-gpu-linux/compositing/geometry/horizontal-scroll-composited-expected.checksum:
        * platform/chromium-gpu-linux/compositing/geometry/horizontal-scroll-composited-expected.png:
        * platform/chromium-gpu-linux/compositing/geometry/vertical-scroll-composited-expected.checksum:
        * platform/chromium-gpu-linux/compositing/geometry/vertical-scroll-composited-expected.png:
        * platform/chromium-gpu-linux/compositing/text-on-large-layer-expected.checksum:
        * platform/chromium-gpu-linux/compositing/text-on-large-layer-expected.png:
        * platform/chromium-gpu-mac/compositing/color-matching/image-color-matching-expected.checksum:
        * platform/chromium-gpu-mac/compositing/color-matching/image-color-matching-expected.png:
        * platform/chromium-gpu-mac/compositing/geometry/horizontal-scroll-composited-expected.checksum:
        * platform/chromium-gpu-mac/compositing/geometry/horizontal-scroll-composited-expected.png:
        * platform/chromium-gpu-mac/compositing/geometry/vertical-scroll-composited-expected.checksum:
        * platform/chromium-gpu-mac/compositing/geometry/vertical-scroll-composited-expected.png:
        * platform/chromium-gpu-mac/compositing/overflow/overflow-scroll-expected.png:
        * platform/chromium-gpu-mac/compositing/text-on-large-layer-expected.checksum:
        * platform/chromium-gpu-mac/compositing/text-on-large-layer-expected.png:
        * platform/chromium-gpu-win/compositing/color-matching/image-color-matching-expected.checksum:
        * platform/chromium-gpu-win/compositing/color-matching/image-color-matching-expected.png:
        * platform/chromium-gpu-win/compositing/geometry/horizontal-scroll-composited-expected.checksum:
        * platform/chromium-gpu-win/compositing/geometry/horizontal-scroll-composited-expected.png:
        * platform/chromium-gpu-win/compositing/geometry/vertical-scroll-composited-expected.checksum:
        * platform/chromium-gpu-win/compositing/geometry/vertical-scroll-composited-expected.png:
        * platform/chromium-gpu-win/compositing/overflow/overflow-scroll-expected.checksum:
        * platform/chromium-gpu-win/compositing/overflow/overflow-scroll-expected.png:
        * platform/chromium-gpu-win/compositing/text-on-large-layer-expected.checksum:
        * platform/chromium-gpu-win/compositing/text-on-large-layer-expected.png:
        * platform/chromium-gpu/compositing/tiling/huge-layer-img-expected.checksum: Added.
        * platform/chromium-gpu/compositing/tiling/huge-layer-img-expected.png: Added.

2011-04-11  Daniel Cheng  <dcheng@chromium.org>

        Reviewed by Dmitry Titov.

        [chromium] Implement image/png support in DataTransferItems
        https://bugs.webkit.org/show_bug.cgi?id=58106

        Add a reftest to verify that the various bits in the pipeline work as expected.

        * editing/pasteboard/data-transfer-items-image-png-expected.html: Added.
        * editing/pasteboard/data-transfer-items-image-png.html: Added.

2011-04-11  Jia Pu  <jpu@apple.com>

        Reviewed by Adele Peterson.

        Shouldn't carry out autocorrection when start typing a new word
        https://bugs.webkit.org/show_bug.cgi?id=58241
        <rdar://problem/9264736>

        See WebCore/ChangeLog for detail.

        * platform/mac-leopard/Skipped:
        * platform/mac-snowleopard/Skipped:
        * platform/mac-tiger/Skipped:
        * platform/mac/editing/spelling/autocorrection-at-beginning-of-word-1-expected.checksum: Added.
        * platform/mac/editing/spelling/autocorrection-at-beginning-of-word-1-expected.png: Added.
        * platform/mac/editing/spelling/autocorrection-at-beginning-of-word-1-expected.txt: Added.
        * platform/mac/editing/spelling/autocorrection-at-beginning-of-word-1.html: Added.
        * platform/mac/editing/spelling/autocorrection-at-beginning-of-word-2-expected.checksum: Added.
        * platform/mac/editing/spelling/autocorrection-at-beginning-of-word-2-expected.png: Added.
        * platform/mac/editing/spelling/autocorrection-at-beginning-of-word-2-expected.txt: Added.
        * platform/mac/editing/spelling/autocorrection-at-beginning-of-word-2.html: Added.

2011-04-11  Ryosuke Niwa  <rniwa@webkit.org>

        Reviewed by Antti Koivisto.

        Text inserted at the collapsed selection between two BRs following a non-wrapping text that forces overflow
        https://bugs.webkit.org/show_bug.cgi?id=47806

        Add a regression test since this bug does not reproduce anymore.
        The test is co-authored by James Robinson and Levi Weintraub.

        * fast/text/text-between-two-brs-in-nowrap-overflow-expected.txt: Added.
        * fast/text/text-between-two-brs-in-nowrap-overflow.html: Added.

2011-04-06  Xiaomei Ji  <xji@chromium.org>

        Reviewed by Ryosuke Niwa.

        Continue experiment with moving caret by word in visual order.
        https://bugs.webkit.org/show_bug.cgi?id=57806

        Return correct result when caret and the word break are inside a box (not at boundaries).
        Added test case to test word break at a random start point
        (not start from a word break).

        * editing/selection/move-by-word-visually-expected.txt:

2011-04-11  Jian Li  <jianli@chromium.org>

        Unreviewed, chromium expectations change.

        Mark huge-column-count.html as missing in chromium.

        * platform/chromium/test_expectations.txt:

2011-04-11  Jessie Berlin  <jberlin@apple.com>

        [Snow Leopard WebKit2 Release Tests] inspector/styles/styles-add-blank-property.html flakey.
        https://bugs.webkit.org/show_bug.cgi?id=57638

        Skip inspector/styles/styles-add-blank-property.html to get the bots green.

        * platform/mac-wk2/Skipped:

2011-04-11  Mario Sanchez Prada  <msanchez@igalia.com>

        Reviewed by Chris Fleizach.

        [GTK] Unskip accessibility/input-slider.html and accessibility/media-element.html
        https://bugs.webkit.org/show_bug.cgi?id=58040

        Unskip passing tests and update expectations.

        * platform/gtk/Skipped: Unskip passing tests.
        * platform/gtk/accessibility/input-slider-expected.txt: Added.
        * platform/gtk/accessibility/input-slider.html: Copied from
        accessibility/input-slider.html and adjusted accordingly.
        * platform/gtk/accessibility/media-element-expected.txt: Added.
        * platform/mac/accessibility/input-slider.html: Moved from
        accessibility/input-slider.html, since it is platform-specific.
        * platform/win/Skipped: Unskipped accessibility/input-slider.html,
        as it's no longer a cross-platform test.

2011-04-11  Dirk Pranke  <dpranke@chromium.org>

        Unreviewed, expectations change.
        https://bugs.webkit.org/show_bug.cgi?id=58193

        Suppress a few remaining Vista SVG failures until they can be
        triaged and/or rebaselined.

        * platform/chromium/test_expectations.txt:

2011-04-11  Simon Fraser  <simon.fraser@apple.com>

        Reviewed by Dan Bernstein.

        Divide by zero in calcColumnWidth
        https://bugs.webkit.org/show_bug.cgi?id=58230

        Testcase for the bug.

        * fast/multicol/huge-column-count.html: Added.
        * platform/mac/fast/multicol/huge-column-count-expected.txt: Added.

2011-04-11  Csaba Osztrogonác  <ossy@webkit.org>

       [Qt][WK2]http/tests/loading/preload-append-scan.php fails
       https://bugs.webkit.org/show_bug.cgi?id=58253

        * platform/qt-wk2/Skipped: Add http/tests/loading/preload-append-scan.php until fix.

2011-04-11  Mario Sanchez Prada  <msanchez@igalia.com>

        Reviewed by Xan Lopez.

        [GTK] Implement AccessibilityUIElement::{row|column}IndexRange in DRT
        https://bugs.webkit.org/show_bug.cgi?id=57854

        Unskipped table-cell-spans.html and updated GTK expectations.

        * platform/gtk/Skipped: Unskipped test.
        * platform/gtk/accessibility/table-cell-spans-expected.txt: Added.

2011-04-11  Mario Sanchez Prada  <msanchez@igalia.com>

        Reviewed by Chris Fleizach.

        [GTK] Implement AccessibilityUIElement::cellForColumnAndRow in DRT
        https://bugs.webkit.org/show_bug.cgi?id=57826

        Skipped aria-tables.html and table-cells.html layout tests.

        Some changes were also made inside the aria-tables.html layout
        test, in order to allow unskipping it in GTK while still keeping
        it working in other platforms, without needing platform specific
        tests, just different expected files.

        * accessibility/aria-tables.html: Changed the layout test so it
        just prints role names instead of comparing their actual values
        with the expected ones in one specific platform (Mac)

        * platform/gtk/Skipped: Unskipped aria-tables.html and table-cells.html.
        * platform/gtk/accessibility/aria-tables-expected.txt: Added new
        expectations for the GTK port.
        * platform/gtk/accessibility/table-cells-expected.txt: Ditto.

        * platform/mac-leopard/Skipped: Skipping aria-tables.html in
        mac-leopard, as I don't know what the expected output would be in
        this case, and since the expected file was invalid anyway.

        * platform/mac/accessibility/aria-tables-expected.txt: Updated to
        check role names, after the changes done in the layout test.

2011-04-11  Jian Li  <jianli@chromium.org>

        Unreviewed, Updated chromium test expectations.

        Mark aria-table-hierarchy.html as failed instead of missing after the
        expected result file is added.

        * platform/chromium/test_expectations.txt:

2011-04-11  Mario Sanchez Prada  <msanchez@igalia.com>

        Reviewed by Chris Fleizach.

        [GTK] ARIA tables not exposing cells as HTML tables do
        https://bugs.webkit.org/show_bug.cgi?id=57463

        Unskipped passing test and added GTK-specific expectations.

        * platform/gtk/Skipped: Unskip accessibility test.
        * platform/gtk/accessibility/aria-table-hierarchy-expected.txt: Added.

2011-04-11  Dimitri Glazkov  <dglazkov@chromium.org>

        [GTK] Update expectations after r83445.

        * platform/gtk/fast/layers/video-layer-expected.txt: Updated.
        * platform/gtk/media/video-empty-source-expected.txt: Updated.
        * platform/gtk/media/video-no-audio-expected.txt: Updated.

2011-04-11  Alexander Pavlov  <apavlov@chromium.org>

        Reviewed by Yury Semikhatsky.

        Web Inspector: Duplicate CSS properties are reported for non-lowercase property names in the Styles sidebar
        https://bugs.webkit.org/show_bug.cgi?id=58226

        * inspector/styles/get-set-stylesheet-text-expected.txt:
        * inspector/styles/get-set-stylesheet-text.html:

2011-04-11  Andreas Kling  <andreas.kling@nokia.com>

        Reviewed by Benjamin Poulain.

        [Qt] dumpResourceResponseMIMETypes shouldn't strip URL query string.

        * platform/qt/Skipped: Unskip http/tests/loading/preload-append-scan.php

2011-04-11  Alejandro G. Castro  <alex@igalia.com>

        Skipped another test that requires dumpResourceResponseMIMETypes.

        * platform/gtk/Skipped:

2011-04-11  Kent Tamura  <tkent@chromium.org>

        [Chromium] Update test expectation.
        - http/tests/loading/preload-append-scan.php is flaky.

        * platform/chromium/test_expectations.txt:

2011-04-11  Philippe Normand  <pnormand@igalia.com>

        Unreviewed, GTK media tests rebaseline after r83397.

        * platform/gtk/fast/layers/video-layer-expected.txt:
        * platform/gtk/media/video-empty-source-expected.txt:
        * platform/gtk/media/video-zoom-controls-expected.txt:

2011-04-11  Kent Tamura  <tkent@chromium.org>

        [Chromium] test expectation update
        - Revert expectations of mask-excessive-malloc.svg and pattern-excessive-malloc.svg.
        - first-of-type-pseudo-class.html is flaky.
        - The merged frame-element-name.html is flaky.
        - ancestor-overflow-change.html is failing on GPU.

        * platform/chromium/test_expectations.txt:

2011-04-10  Kent Tamura  <tkent@chromium.org>

        [Chromium] Update expectations.
        - Remove deprecated entry
        - Add ancestor-overflow-change.html for GPU.

        * platform/chromium/test_expectations.txt:

2011-04-10  Simon Fraser  <simon.fraser@apple.com>

        Reviewed by Maciej Stachowiak.

        Car model dropdowns at audiusa.com lay out incorrectly with compositing enabled
        https://bugs.webkit.org/show_bug.cgi?id=56660

        Test that toggles overflow on an element with a composited descendent.

        * compositing/geometry/ancestor-overflow-change-expected.checksum: Added.
        * compositing/geometry/ancestor-overflow-change-expected.png: Added.
        * compositing/geometry/ancestor-overflow-change-expected.txt: Added.
        * compositing/geometry/ancestor-overflow-change.html: Added.

2011-04-10  Kent Tamura  <tkent@chromium.org>

        [Chromium] Update test expectation.
        svg/W3C-SVG-1.1/masking-intro-01-f.svg is crashing on Mac and Linux too.

        * platform/chromium/test_expectations.txt:

2011-04-10  Kent Tamura  <tkent@chromium.org>

        [Chromium] Update test expectations.
        - absolute-sized-document-no-scrollbars.svg is flaky on Linux
        - font-update.html is failing on Windows GPU and Linux GPU.

        * platform/chromium/test_expectations.txt:

2011-04-10  Mike Lawther  <mikelawther@chromium.org>

        Reviewed by Ojan Vafai.

        flex/bison tokens and grammar for CSS calc
        https://bugs.webkit.org/show_bug.cgi?id=54412

        Only the 'errors' and 'regression' tests pass as intended right now. As of this
        patch, none of the actual calculations are expected to work, since only
        the lexing/grammar stage is present.

        * css3/calc/calc-errors-expected.txt: Added.
        * css3/calc/calc-errors.html: Added.
        * css3/calc/lexer-regression-57581-2-expected.txt: Added.
        * css3/calc/lexer-regression-57581-2.html: Added.
        * css3/calc/lexer-regression-57581-3-expected.txt: Added.
        * css3/calc/lexer-regression-57581-3.html: Added.
        * css3/calc/lexer-regression-57581-expected.txt: Added.
        * css3/calc/lexer-regression-57581.html: Added.
        * css3/calc/minmax-errors-expected.txt: Added.
        * css3/calc/minmax-errors.html: Added.
        * css3/calc/simple-calcs-expected.txt: Added.
        * css3/calc/simple-calcs.html: Added.
        * css3/calc/simple-minmax-expected.txt: Added.
        * css3/calc/simple-minmax.html: Added.

2011-04-10  Kent Tamura  <tkent@chromium.org>

        [Chromium] Update expectations for r83360.

        * platform/chromium-linux/fast/box-shadow/inset-box-shadows-expected.checksum: Removed.
        * platform/chromium-linux/fast/box-shadow/inset-box-shadows-expected.png:
        * platform/chromium-linux/fast/box-shadow/inset-expected.png:
        * platform/chromium-mac-leopard/fast/box-shadow/inset-expected.png: Added.
        * platform/chromium-mac/fast/box-shadow/inset-box-shadows-expected.checksum: Removed.
        * platform/chromium-mac/fast/box-shadow/inset-box-shadows-expected.png: Removed.
        * platform/chromium-mac/fast/box-shadow/inset-expected.checksum: Removed.
        * platform/chromium-mac/fast/box-shadow/inset-expected.png: Removed.
        * platform/chromium-win/fast/box-shadow/inset-box-shadows-expected.checksum: Removed.
        * platform/chromium-win/fast/box-shadow/inset-box-shadows-expected.png:
        * platform/chromium-win/fast/box-shadow/inset-expected.png:

2011-04-10  Kent Tamura  <tkent@chromium.org>

        Unreviewed, rolling out r83353.
        http://trac.webkit.org/changeset/83353
        https://bugs.webkit.org/show_bug.cgi?id=58106

        The new test doesn't pass on all Chromium platforms.

        * editing/pasteboard/data-transfer-items-image-png-expected.html: Removed.
        * editing/pasteboard/data-transfer-items-image-png.html: Removed.

2011-04-10  Daniel Bates  <dbates@rim.com>

        Reviewed by Eric Seidel.

        Add layout test to ensure that window.name returns {"_blank", "_parent", "_self", "_top"}
        for a frame of the same name
        https://bugs.webkit.org/show_bug.cgi?id=58189

        Extracted common code from files LayoutTests/fast/frames/resources/frame-element-name-{left, right}.html
        into LayoutTests/fast/frames/resources/frame-element-name.html so that we can use this logic
        to test frames with arbitrary names.

        * fast/frames/frame-element-name-expected.txt:
        * fast/frames/frame-element-name.html: Modified to use resources/frame-element-name.html; Added
          test cases for "_blank", "_parent", "_self", and "_top".
        * fast/frames/resources/frame-element-name-left.html: Removed; Instead, pass expectedName to
          resources/frame-element-name.html
        * fast/frames/resources/frame-element-name-right.html: Ditto.
        * fast/frames/resources/frame-element-name.html: Added.

2011-04-10  Dimitri Glazkov  <dglazkov@chromium.org>

        Reviewed by Eric Carlson.

        fast/layers/video-layer.html needs expectations update
        https://bugs.webkit.org/show_bug.cgi?id=58203

        * platform/win/fast/layers/video-layer-expected.txt: Updated result after r83397.

2011-04-10  Jessie Berlin  <jberlin@apple.com>

        WebKitTestRunner needs a more-complete implementation of eventSender
        https://bugs.webkit.org/show_bug.cgi?id=42194

        Add another test that depends on eventSender.keyDown (fast/dom/hidden-iframe-no-focus.html
        added in r83356) to the mac-wk2 skipped list to get the bots green.

        * platform/mac-wk2/Skipped:

2011-04-10  Dimitri Glazkov  <dglazkov@chromium.org>

        Reviewed by Anders Carlsson.

        REGRESSION(r83256): Text-decoration bleeds into shadow DOM
        https://bugs.webkit.org/show_bug.cgi?id=58205

        * platform/chromium/test_expectations.txt: Removed the test that starts
            passing after this change.

2011-04-10  Dimitri Glazkov  <dglazkov@chromium.org>

        Temporarily add a failing test, while I am fixing it.

        * platform/chromium/test_expectations.txt: Added.

2011-04-09  Dan Bernstein  <mitz@apple.com>

        Reviewed by Beth Dakin.

        <rdar://problem/9215280> Detached canvas draws with incorrect font

        * fast/canvas/font-update-expected.checksum: Added.
        * fast/canvas/font-update-expected.png: Added.
        * fast/canvas/font-update-expected.txt: Added.
        * fast/canvas/font-update.html: Added.

2011-04-09  Dirk Pranke  <dpranke@chromium.org>

        Unreviewed, expectations change.
        https://bugs.webkit.org/show_bug.cgi?id=58193

        Suppress a whole bunch of Win Vista failures until they can be
        triaged and/or rebaselined.

        * platform/chromium/test_expectations.txt:

2011-04-09  Dirk Pranke  <dpranke@chromium.org>

        Unreviewed, expectations change.
        https://bugs.webkit.org/show_bug.cgi?id=58193

        Suppress a whole bunch of Win 7 failures until they can be
        triaged and/or rebaselined.

        * platform/chromium/test_expectations.txt:

2011-04-02  Dimitri Glazkov  <dglazkov@chromium.org>

        Reviewed by Ojan Vafai.

        Implement proper handling of mouseover/mouseout events in regard to shadow DOM boundaries.
        https://bugs.webkit.org/show_bug.cgi?id=55515

        * fast/events/shadow-boundary-crossing-expected.txt: Updated expectations.
        * fast/events/shadow-boundary-crossing.html: Added new test for mouseover/mouseout handling.

2011-04-09  Dirk Pranke  <dpranke@chromium.org>

        Unreviewed, expectations change.

        new-run-webkit-tests: Mac SL tests failing on the bot
        https://bugs.webkit.org/show_bug.cgi?id=58192

        Mark tests as needing triage/investigation for failing
        on NRWT bot.

        * platform/mac/test_expectations.txt:

2011-04-09  Csaba Osztrogonác  <ossy@webkit.org>

        [Qt][WK2] One more attempt to make Qt-WK2 bot happy.

        * platform/qt-wk2/Skipped:

2011-04-09  Csaba Osztrogonác  <ossy@webkit.org>

        [Qt] Make Qt bots happier. :)

        * platform/qt-wk2/Skipped: Remove non-existent tests.
        * platform/qt/Skipped: Add new tests without Qt specific expected files.

2011-04-09  Csaba Osztrogonác  <ossy@webkit.org>

        [Qt][WK2] Make Qt-WK2 buildbot green on http://webkit.sed.hu

        * platform/qt-wk2/Skipped: Add failing tests.

2011-04-08  Jian Li  <jianli@chromium.org>

        Unreviewed, rolling out r83348.
        http://trac.webkit.org/changeset/83348
        https://bugs.webkit.org/show_bug.cgi?id=49508

        Breaks layout tests in QT, Win7 and Chromium.

        * fast/forms/cursor-at-editable-content-boundary-expected.txt: Removed.
        * fast/forms/cursor-at-editable-content-boundary.html: Removed.

2011-04-08  MORITA Hajime  <morrita@google.com>

        Reviewed by Simon Fraser.

        Negative spread should not make a sharp corner rounded
        https://bugs.webkit.org/show_bug.cgi?id=58162

        Updated the result. This new result matches other browsers behavior.

        * platform/mac/fast/box-shadow/inset-expected.checksum:
        * platform/mac/fast/box-shadow/inset-expected.png:

2011-04-08  Erik Arvidsson  <arv@chromium.org>

        Reviewed by Dimitri Glazkov.

        IFrame is getting the focus even though it is hidden
        https://bugs.webkit.org/show_bug.cgi?id=55861

        * fast/dom/hidden-iframe-no-focus-expected.txt: Added.
        * fast/dom/hidden-iframe-no-focus.html: Added.

2011-04-08  Jeff Timanus  <twiz@chromium.org>

        Reviewed by Kenneth Russell.

        Fall back to software rendering for Canvas2D when requesting a DrawingBuffer larger than supported by the GL environment.
        https://bugs.webkit.org/show_bug.cgi?id=57768

        * platform/chromium/test_expectations.txt:

2011-04-08  Daniel Cheng  <dcheng@chromium.org>

        Reviewed by Dmitry Titov.

        [chromium] Implement image/png support in DataTransferItems
        https://bugs.webkit.org/show_bug.cgi?id=58106

        Add a reftest to verify that the various bits in the pipeline work as expected.

        * editing/pasteboard/data-transfer-items-image-png-expected.html: Added.
        * editing/pasteboard/data-transfer-items-image-png.html: Added.

2011-04-08  Enrica Casucci  <enrica@apple.com>

        Reviewed by Maciej Stachowiak.

        Improve lifetime management of nodes in ReplaceNodeWithSpanCommand.
        https://bugs.webkit.org/show_bug.cgi?id=57595
        <rdar://problem/9222122>

        * editing/style/bold-with-dom-changes-expected.txt: Added.
        * editing/style/bold-with-dom-changes.html: Added.

2011-04-08  Xiaomei Ji  <xji@chromium.org>

        Reviewed by David Hyatt.

        Local caret rectangle calculation should be relative to its containing block.
        https://bugs.webkit.org/show_bug.cgi?id=49508.

        * fast/forms/cursor-at-editable-content-boundary-expected.txt: Added.
        * fast/forms/cursor-at-editable-content-boundary.html: Added.

2011-04-08  David Hyatt  <hyatt@apple.com>

        Reviewed by Simon Fraser.

        https://bugs.webkit.org/show_bug.cgi?id=57971

        Rework visited/unvisited links for before/after content. Propagate the bits earlier so that we don't lose
        them when we throw away the visited style. Don't throw away the visited link style for pseudo elements
        either, so that the styles are consistent.

        * fast/history/visited-generated-content-test-expected.txt: Added.
        * fast/history/visited-generated-content-test.html: Added.

2011-04-08  Ryosuke Niwa  <rniwa@webkit.org>

        Reviewed by Tony Chang.

        dump-as-markup conversion: editing/pasteboard/paste-text-at-tabspan-001.html and paste-text-at-tabspan-002.html
        https://bugs.webkit.org/show_bug.cgi?id=58081

        Converted paste-text-at-tabspan-001.html and paste-text-at-tabspan-002.html to dump-as-markup tests.
        Also explained what to expect in each test.

        * editing/pasteboard/paste-text-at-tabspan-001-expected.txt: Added.
        * editing/pasteboard/paste-text-at-tabspan-001.html:
        * editing/pasteboard/paste-text-at-tabspan-002-expected.txt: Added.
        * editing/pasteboard/paste-text-at-tabspan-002.html:
        * platform/chromium-linux/editing/pasteboard/paste-text-at-tabspan-001-expected.checksum: Removed.
        * platform/chromium-linux/editing/pasteboard/paste-text-at-tabspan-001-expected.png: Removed.
        * platform/chromium-linux/editing/pasteboard/paste-text-at-tabspan-002-expected.checksum: Removed.
        * platform/chromium-linux/editing/pasteboard/paste-text-at-tabspan-002-expected.png: Removed.
        * platform/chromium-win/editing/pasteboard/paste-text-at-tabspan-001-expected.checksum: Removed.
        * platform/chromium-win/editing/pasteboard/paste-text-at-tabspan-001-expected.png: Removed.
        * platform/chromium-win/editing/pasteboard/paste-text-at-tabspan-001-expected.txt: Removed.
        * platform/chromium-win/editing/pasteboard/paste-text-at-tabspan-002-expected.checksum: Removed.
        * platform/chromium-win/editing/pasteboard/paste-text-at-tabspan-002-expected.png: Removed.
        * platform/chromium-win/editing/pasteboard/paste-text-at-tabspan-002-expected.txt: Removed.
        * platform/gtk/editing/pasteboard/paste-text-at-tabspan-001-expected.checksum: Removed.
        * platform/gtk/editing/pasteboard/paste-text-at-tabspan-001-expected.png: Removed.
        * platform/gtk/editing/pasteboard/paste-text-at-tabspan-001-expected.txt: Removed.
        * platform/gtk/editing/pasteboard/paste-text-at-tabspan-002-expected.checksum: Removed.
        * platform/gtk/editing/pasteboard/paste-text-at-tabspan-002-expected.png: Removed.
        * platform/gtk/editing/pasteboard/paste-text-at-tabspan-002-expected.txt: Removed.
        * platform/mac/editing/pasteboard/paste-text-at-tabspan-001-expected.checksum: Removed.
        * platform/mac/editing/pasteboard/paste-text-at-tabspan-001-expected.png: Removed.
        * platform/mac/editing/pasteboard/paste-text-at-tabspan-001-expected.txt: Removed.
        * platform/mac/editing/pasteboard/paste-text-at-tabspan-002-expected.checksum: Removed.
        * platform/mac/editing/pasteboard/paste-text-at-tabspan-002-expected.png: Removed.
        * platform/mac/editing/pasteboard/paste-text-at-tabspan-002-expected.txt: Removed.
        * platform/qt/editing/pasteboard/paste-text-at-tabspan-001-expected.txt: Removed.
        * platform/qt/editing/pasteboard/paste-text-at-tabspan-002-expected.checksum: Removed.
        * platform/qt/editing/pasteboard/paste-text-at-tabspan-002-expected.png: Removed.
        * platform/qt/editing/pasteboard/paste-text-at-tabspan-002-expected.txt: Removed.

2011-04-08  Ryosuke Niwa  <rniwa@webkit.org>

        Rebaselines and text expectation updates after r83322.
        The bug is tracked by https://bugs.webkit.org/show_bug.cgi?id=58158

        * platform/chromium/test_expectations.txt:
        * platform/gtk/editing/pasteboard/paste-xml-expected.txt:
        * platform/win/editing/pasteboard/paste-xml-expected.txt:

2011-04-08  Dominic Cooney  <dominicc@google.com>

        Reviewed by Adam Roben.

        layoutTestController.shadowRoot returns null, not undefined, when
        its argument is invalid.
        https://bugs.webkit.org/show_bug.cgi?id=58121

        Update the test to expect null and not undefined.

        * fast/dom/HTMLKeygenElement/keygen-expected.txt:
        * fast/dom/HTMLKeygenElement/keygen.html:
        * platform/chromium/test_expectations.txt: unskip keygen.html

2011-04-08  Ryosuke Niwa  <rniwa@webkit.org>

        Chromium rebaselines after r83291.

        * platform/chromium/fast/dom/error-to-string-stack-overflow-expected.txt:
        * platform/chromium/fast/js/recursion-limit-equal-expected.txt:

2011-04-08  Antti Koivisto  <antti@apple.com>

        Not reviewed.

        Skip for DRT differences.

        * platform/mac-wk2/Skipped:
        * platform/qt/Skipped:

2011-04-08  Ryosuke Niwa  <rniwa@webkit.org>

        Reviewed by Tony Chang, Darin Adler, and Enrica Casucci.

        REGRESSION(r81887): Crash in SplitElement
        https://bugs.webkit.org/show_bug.cgi?id=57743

        Added a regression test for a crash in ReplaceSelectionCommand.

        * editing/inserting/insert-images-in-pre-x-crash-expected.txt: Added.
        * editing/inserting/insert-images-in-pre-x-crash.html: Added.

2011-04-08  Antti Koivisto  <antti@apple.com>

        Reviewed by Tony Gentilcore.

        Incoming source should be preload scanned when the parser is blocked
        https://bugs.webkit.org/show_bug.cgi?id=58117

        * http/tests/loading/preload-append-scan-expected.txt: Added.
        * http/tests/loading/preload-append-scan.php: Added.
        * http/tests/resources/slow-script.pl: Added.

2011-04-08  Jian Li  <jianli@chromium.org>

        Unreviewed, fixed a typo in chromium test expectation list.

        * platform/chromium/test_expectations.txt:

2011-04-08  Jian Li  <jianli@chromium.org>

        Unreviewed, added one more failed test to test expectation list in chromium.

        * platform/chromium/test_expectations.txt:

2011-04-08  Jian Li  <jianli@chromium.org>

        Unreviewed, added failed tests to test expectation list in chromium.

        * platform/chromium/test_expectations.txt:

2011-04-08  Sheriff Bot  <webkit.review.bot@gmail.com>

        Unreviewed, rolling out r83295.
        http://trac.webkit.org/changeset/83295
        https://bugs.webkit.org/show_bug.cgi?id=58144

        Broke 4 tests in QtWebKit (Requested by tonikitoo on #webkit).

        * platform/qt/Skipped:

2011-04-08  Sergio Villar Senin  <svillar@igalia.com>

        Unreviewed, looks like the test is working fine now.

        [GTK] websocket/tests/bad-sub-protocol-control-chars.html fails on 32-bit Debug bot
        https://bugs.webkit.org/show_bug.cgi?id=46942

        * platform/gtk/Skipped:

2011-04-07  Adam Roben  <aroben@apple.com>

        Test that NPP_SetWindow is passed a null window handle during plugin destruction on non-Mac platforms

        Test for <http://webkit.org/b/47009> WebKit2 needs to call NPP_SetWindow when destroying a
        plugin

        Reviewed by Anders Carlsson.

        * platform/win-wk2/Skipped: Removed a test that no longer crashes thanks to this fix.

        * plugins/npp-set-window-called-during-destruction-expected.txt: Added.
        * plugins/npp-set-window-called-during-destruction.html: Added.

        * platform/mac/plugins/npp-set-window-called-during-destruction-expected.txt: Added. This is
        different from the cross-platform results because we don't expect NPP_SetWindow to be called
        during destruction.

        * platform/win/plugins/npp-set-window-called-during-destruction-expected.txt: Added. This is
        a copy of the cross-platform results, needed to override the Mac-specific results.

2011-04-08  Yi Shen  <yi.4.shen@nokia.com>

        Reviewed by Antonio Gomes.

        [Qt]REGRESSION(r82243): fast/events/onsearch-enter.html fails
        https://bugs.webkit.org/show_bug.cgi?id=57472

        Unskips the fast/events/onsearch-enter.html test.

        * platform/qt/Skipped:

2011-04-07  Pavel Podivilov  <podivilov@chromium.org>

        Reviewed by Pavel Feldman.

        Web Inspector: update breakpoints according to source frame decorations after live edit.
        https://bugs.webkit.org/show_bug.cgi?id=58029

        * inspector/debugger/live-edit-expected.txt:
        * inspector/debugger/live-edit.html:

2011-04-08  Steve Block  <steveblock@google.com>

        Unreviewed build fix.

        Media Stream API: add the getUserMedia method and the Javascript bindings
        https://bugs.webkit.org/show_bug.cgi?id=56586

        Add new tests to skipped lists for platforms where the feature is not
        enabled.

        * platform/gtk/Skipped:
        * platform/mac/Skipped:
        * platform/qt/Skipped:
        * platform/win/Skipped:

2011-04-08  Yury Semikhatsky  <yurys@chromium.org>

        Unreviewed. Update Chromium test expectations to match results after rolling
        v8 revision that reports stack overflow exception to the console.

        * platform/chromium-win/fast/dom/error-to-string-stack-overflow-expected.txt: Removed.
        * platform/chromium-win/fast/js/recursion-limit-equal-expected.txt: Removed.
        * platform/chromium/fast/dom/error-to-string-stack-overflow-expected.txt: Renamed from LayoutTests/platform/chromium-mac/fast/dom/error-to-string-stack-overflow-expected.txt.
        * platform/chromium/fast/js/recursion-limit-equal-expected.txt: Renamed from LayoutTests/platform/chromium-mac/fast/js/recursion-limit-equal-expected.txt.

2011-04-08  Leandro Gracia Gil  <leandrogracia@chromium.org>

        Reviewed by Steve Block.

        Media Stream API: add the getUserMedia method and the Javascript bindings.
        https://bugs.webkit.org/show_bug.cgi?id=56586

        Test the Javascript behaviour of the getUserMedia method with different types of arguments.
        Current specification: http://www.whatwg.org/specs/web-apps/current-work/multipage/dnd.html#video-conferencing-and-peer-to-peer-communication

        * fast/dom/MediaStream/argument-types-expected.txt: Added.
        * fast/dom/MediaStream/argument-types.html: Added.
        * fast/dom/MediaStream/enabled-expected.txt: Added.
        * fast/dom/MediaStream/enabled.html: Added.
        * fast/dom/MediaStream/no-interface-object-expected.txt: Added.
        * fast/dom/MediaStream/no-interface-object.html: Added.
        * fast/dom/MediaStream/script-tests/argument-types.js: Added.
        (shouldNotThrow):
        (test):
        (emptyFunction):
        ():
        (ObjectThrowingException.prototype.valueOf):
        (ObjectThrowingException.prototype.toString):
        * fast/dom/MediaStream/script-tests/enabled.js: Added.
        (hasGetUserMediaProperty):
        * fast/dom/MediaStream/script-tests/no-interface-object.js: Added.
        (test):

2011-04-08  Mikhail Naganov  <mnaganov@chromium.org>

        Reviewed by Pavel Feldman.

        Web Inspector: [Chromium] Add more tests for detailed heap snapshots UI.
        https://bugs.webkit.org/show_bug.cgi?id=58010
        https://bugs.webkit.org/show_bug.cgi?id=58011

        Added tests for "Containment" view. Minor refactorings, bugs fixed.
        Split one large tests into smaller ones to avoid timing out in debug mode.

        * inspector/profiler/detailed-heapshots-containment-expansion-preserved-when-sorting-expected.txt: Added.
        * inspector/profiler/detailed-heapshots-containment-expansion-preserved-when-sorting.html: Added.
        * inspector/profiler/detailed-heapshots-containment-show-all-expected.txt: Added.
        * inspector/profiler/detailed-heapshots-containment-show-all.html: Added.
        * inspector/profiler/detailed-heapshots-containment-show-next-expected.txt: Added.
        * inspector/profiler/detailed-heapshots-containment-show-next.html: Added.
        * inspector/profiler/detailed-heapshots-containment-sorting-expected.txt: Added.
        * inspector/profiler/detailed-heapshots-containment-sorting.html: Added.
        * inspector/profiler/detailed-heapshots-summary-expansion-preserved-when-sorting-expected.txt: Added.
        * inspector/profiler/detailed-heapshots-summary-expansion-preserved-when-sorting.html: Added.
        * inspector/profiler/detailed-heapshots-summary-expected.txt: Removed.
        * inspector/profiler/detailed-heapshots-summary-show-all-expected.txt: Added.
        * inspector/profiler/detailed-heapshots-summary-show-all.html: Added.
        * inspector/profiler/detailed-heapshots-summary-show-next-expected.txt: Added.
        * inspector/profiler/detailed-heapshots-summary-show-next.html: Added.
        * inspector/profiler/detailed-heapshots-summary-sorting-expected.txt: Added.
        * inspector/profiler/detailed-heapshots-summary-sorting.html: Added.
        * inspector/profiler/detailed-heapshots-summary.html: Removed.
        * inspector/profiler/detailed-heapshots-test.js:
        (initialize_DetailedHeapshotTest.InspectorTest.startProfilerTest.detailedHeapProfilesEnabled):
        (initialize_DetailedHeapshotTest.InspectorTest.startProfilerTest):
        (initialize_DetailedHeapshotTest.):
        (initialize_DetailedHeapshotTest):
        * platform/chromium/inspector/profiler/detailed-heapshots-containment-expansion-preserved-when-sorting-expected.txt: Copied from LayoutTests/platform/chromium/inspector/profiler/detailed-heapshots-summary-expected.txt.
        * platform/chromium/inspector/profiler/detailed-heapshots-containment-show-all-expected.txt: Added.
        * platform/chromium/inspector/profiler/detailed-heapshots-containment-show-next-expected.txt: Added.
        * platform/chromium/inspector/profiler/detailed-heapshots-containment-sorting-expected.txt: Added.
        * platform/chromium/inspector/profiler/detailed-heapshots-summary-expansion-preserved-when-sorting-expected.txt: Renamed from LayoutTests/platform/chromium/inspector/profiler/detailed-heapshots-summary-expected.txt.
        * platform/chromium/inspector/profiler/detailed-heapshots-summary-show-all-expected.txt: Added.
        * platform/chromium/inspector/profiler/detailed-heapshots-summary-show-next-expected.txt: Added.
        * platform/chromium/inspector/profiler/detailed-heapshots-summary-sorting-expected.txt: Added.

2011-04-07  Pavel Podivilov  <podivilov@chromium.org>

        Reviewed by Pavel Feldman.

        Web Inspector: add test for script formatter worker.
        https://bugs.webkit.org/show_bug.cgi?id=57447

        * inspector/debugger/script-formatter-expected.txt: Added.
        * inspector/debugger/script-formatter.html: Added.
        * platform/chromium/test_expectations.txt:

2011-04-08  Kent Tamura  <tkent@chromium.org>

        [Chromium] Note some flaky tests.

        * platform/chromium/test_expectations.txt:

2011-04-08  Andrey Kosyakov  <caseq@chromium.org>

        Unreviewed. Adjusted test expectations following r83275.

        * http/tests/inspector/resource-har-conversion-expected.txt:
        * http/tests/inspector/resource-parameters-expected.txt:

2011-04-08  Andrey Kosyakov  <caseq@chromium.org>

        Reviewed by Yury Semikhatsky.

        Web Inspector: HAR compliance fixes
        https://bugs.webkit.org/show_bug.cgi?id=58124

        - Added entire HARLog to test
        - Workaround in test to avoid custom expectations (favicon.ico appears in log on certain platforms

        * http/tests/inspector/resource-har-conversion-expected.txt:
        * http/tests/inspector/resource-har-conversion.html:
        * http/tests/inspector/resources-test.js:
        * platform/mac-wk2/http/tests/inspector/resource-har-conversion-expected.txt: Removed.

2011-04-08  Sergio Villar Senin  <svillar@igalia.com>

        Unreviewed, added new GTK+ test expectations.

        * platform/gtk/fast/block/positioning/complex-positioned-movement-expected.checksum: Added.
        * platform/gtk/fast/block/positioning/complex-positioned-movement-expected.png: Added.
        * platform/gtk/fast/block/positioning/complex-positioned-movement-expected.txt: Added.
        * platform/gtk/fast/text/decorations-transformed-expected.checksum: Added.
        * platform/gtk/fast/text/decorations-transformed-expected.png: Added.
        * platform/gtk/fast/text/decorations-transformed-expected.txt: Added.

2011-04-08  Anton Muhin  <antonm@chromium.org>

        Reviewed by Adam Barth.

        [v8] Change expectations for plugins/netscape-plugin-poperty-access-exception test
        https://bugs.webkit.org/show_bug.cgi?id=54681

        This a patch which should be landed when fix for exception handling in v8 is landed
        (see http://codereview.chromium.org/6397011/)

        * platform/chromium-mac/plugins/netscape-plugin-property-access-exception-expected.txt:
        * platform/chromium-win/plugins/netscape-plugin-property-access-exception-expected.txt:

2011-04-08  Ryosuke Niwa  <rniwa@webkit.org>

        Reviewed by Tony Chang.

        dump-as-markup conversion: editing/pasteboard/5065605.html and display-block-on-spans.html
        https://bugs.webkit.org/show_bug.cgi?id=58074

        Converted 5065605.html and display-block-on-spans.html to dump-as-markup tests.

        * editing/pasteboard/5065605-expected.txt: Added.
        * editing/pasteboard/5065605.html:
        * editing/pasteboard/display-block-on-spans-expected.txt: Added.
        * editing/pasteboard/display-block-on-spans.html:
        * platform/chromium-linux/editing/pasteboard/5065605-expected.checksum: Removed.
        * platform/chromium-linux/editing/pasteboard/5065605-expected.png: Removed.
        * platform/chromium-linux/editing/pasteboard/display-block-on-spans-expected.checksum: Removed.
        * platform/chromium-linux/editing/pasteboard/display-block-on-spans-expected.png: Removed.
        * platform/chromium-win/editing/pasteboard/5065605-expected.checksum: Removed.
        * platform/chromium-win/editing/pasteboard/5065605-expected.png: Removed.
        * platform/chromium-win/editing/pasteboard/5065605-expected.txt: Removed.
        * platform/chromium-win/editing/pasteboard/display-block-on-spans-expected.checksum: Removed.
        * platform/chromium-win/editing/pasteboard/display-block-on-spans-expected.png: Removed.
        * platform/chromium-win/editing/pasteboard/display-block-on-spans-expected.txt: Removed.
        * platform/gtk/editing/pasteboard/5065605-expected.checksum: Removed.
        * platform/gtk/editing/pasteboard/5065605-expected.png: Removed.
        * platform/gtk/editing/pasteboard/5065605-expected.txt: Removed.
        * platform/gtk/editing/pasteboard/display-block-on-spans-expected.checksum: Removed.
        * platform/gtk/editing/pasteboard/display-block-on-spans-expected.png: Removed.
        * platform/gtk/editing/pasteboard/display-block-on-spans-expected.txt: Removed.
        * platform/mac-leopard/editing/pasteboard/5065605-expected.checksum: Removed.
        * platform/mac-leopard/editing/pasteboard/5065605-expected.png: Removed.
        * platform/mac-leopard/editing/pasteboard/display-block-on-spans-expected.checksum: Removed.
        * platform/mac-leopard/editing/pasteboard/display-block-on-spans-expected.png: Removed.
        * platform/mac/editing/pasteboard/5065605-expected.checksum: Removed.
        * platform/mac/editing/pasteboard/5065605-expected.png: Removed.
        * platform/mac/editing/pasteboard/5065605-expected.txt: Removed.
        * platform/mac/editing/pasteboard/display-block-on-spans-expected.checksum: Removed.
        * platform/mac/editing/pasteboard/display-block-on-spans-expected.png: Removed.
        * platform/mac/editing/pasteboard/display-block-on-spans-expected.txt: Removed.
        * platform/qt/editing/pasteboard/5065605-expected.txt: Removed.
        * platform/qt/editing/pasteboard/display-block-on-spans-expected.txt: Removed.

2011-04-08  Csaba Osztrogonác  <ossy@webkit.org>

        [Qt] Add platform specific expected file after r83235.

        * platform/qt/http/tests/security/contentSecurityPolicy: Added.
        * platform/qt/http/tests/security/contentSecurityPolicy/xsl-allowed-expected.txt: Copied from LayoutTests/http/tests/security/contentSecurityPolicy/xsl-allowed-expected.txt.

2011-04-08  Kent Tamura  <tkent@chromium.org>

        [Chromium] Update expectations for r82899 and r83253.

        * platform/chromium-mac-leopard/fast/borders/border-radius-huge-assert-expected.checksum: Removed.
        * platform/chromium-mac-leopard/fast/borders/border-radius-huge-assert-expected.png:
        * platform/chromium-mac-leopard/fast/box-shadow/border-radius-big-expected.png: Added.
        * platform/chromium-mac-leopard/fast/box-shadow/spread-multiple-inset-expected.png:
        * platform/chromium-mac/fast/borders/border-radius-circle-expected.png: Added.
        * platform/chromium-mac/fast/borders/border-radius-huge-assert-expected.png: Added.
        * platform/chromium-mac/fast/box-shadow/border-radius-big-expected.png: Added.
        * platform/chromium-mac/fast/box-shadow/inset-with-extraordinary-radii-and-border-expected.png: Added.
        * platform/chromium-mac/fast/box-shadow/spread-expected.png: Added.
        * platform/chromium-mac/fast/box-shadow/spread-multiple-inset-expected.png: Added.
        * platform/chromium-mac/fast/box-shadow/spread-multiple-normal-expected.png: Added.
        * platform/chromium-win/fast/dom/HTMLMeterElement/meter-appearances-capacity-expected.txt:
        * platform/chromium-win/fast/dom/HTMLMeterElement/meter-appearances-rating-relevancy-expected.txt:
        * platform/chromium-win/fast/dom/HTMLMeterElement/meter-boundary-values-expected.txt:
        * platform/chromium-win/fast/dom/HTMLMeterElement/meter-optimums-expected.txt:
        * platform/chromium-win/fast/dom/HTMLMeterElement/meter-styles-changing-pseudo-expected.txt:
        * platform/chromium/test_expectations.txt:

2011-04-08  Csaba Osztrogonác  <ossy@webkit.org>

        Flaky Test: fast/events/tabindex-focus-blur-all.html
        https://bugs.webkit.org/show_bug.cgi?id=52115

        * platform/qt/Skipped: Add fast/events/tabindex-focus-blur-all.html.

2011-04-07  Ryosuke Niwa  <rniwa@webkit.org>

        Chromium rebaseline after r83246.

        * platform/chromium-win/editing/pasteboard/paste-text-011-expected.txt: Added.
        * platform/chromium/test_expectations.txt:

2011-04-07  Julien Chaffraix  <jchaffraix@codeaurora.org>

        Reviewed by Alexey Proskuryakov.

        EventSource should only accept UTF-8 charset
        https://bugs.webkit.org/show_bug.cgi?id=56942

        * ChangeLog-2011-02-16: Corrected previous commit message. Pointed out by Alexey.

        * http/tests/eventsource/eventsource-bad-mime-type-expected.txt: Updated with the new console message.

        * http/tests/eventsource/eventsource-content-type-charset-expected.txt:
        * http/tests/eventsource/eventsource-content-type-charset.html: Beefed up this test and merged
        the following test into it. The new tests check that we dispatch a console error if the charset is
        wrong.

        * http/tests/eventsource/eventsource-content-type-text-event-stream-foobar-expected.txt: Removed.
        * http/tests/eventsource/eventsource-content-type-text-event-stream-foobar.html: Removed.

        * http/tests/eventsource/resources/response-content-type-charset.php: Return the charset passed
        in the URL. Also added PHP's magic quotes handling as this would make the test fail on Mac.

        * http/tests/eventsource/resources/response-content-type-event-stream-foobar.php: Removed.

2011-04-07  Kent Tamura  <tkent@chromium.org>

        [Chromium] Update expectations for xsl-blocked.php and pate-text-011.html.

        * platform/chromium/http/tests/security/contentSecurityPolicy/xsl-blocked-expected.png: Added.
        * platform/chromium/test_expectations.txt:

2011-04-07  Dominic Cooney  <dominicc@google.com>

        Reviewed by Dimitri Glazkov.

        Let shadow DOM have a list of nodes at the top level of a shadow.
        https://bugs.webkit.org/show_bug.cgi?id=57813

        * fast/dom/HTMLKeygenElement/keygen-expected.txt: shadow DOM changed
        * fast/dom/HTMLKeygenElement/keygen.html: added assertion on shadow

2011-04-07  Maciej Stachowiak  <mjs@apple.com>

        Reviewed by Simon Fraser.

        REGRESSION (r80871): Crash when visiting http://broadband.biglobe.ne.jp/
        https://bugs.webkit.org/show_bug.cgi?id=56297
        <rdar://problem/9131597>

        * fast/css-generated-content/table-row-after-no-crash-expected.txt: Added.
        * fast/css-generated-content/table-row-after-no-crash.html: Added.

2011-04-07  Ryosuke Niwa  <rniwa@webkit.org>

        Reviewed by Darin Adler.

        REGRESSION (r46914, r48764): When typing in Mail, line wrapping frequently occurs in the middle of words
        https://bugs.webkit.org/show_bug.cgi?id=57872

        Added tests to ensure WebKit inserts a paragraph separator properly around tab span.

        * editing/inserting/insert-div-021-expected.txt: No longer duplicates span[id="test"] incorrectly.
        * editing/inserting/insert-paragraph-after-tab-span-and-text-expected.txt: Added.
        * editing/inserting/insert-paragraph-after-tab-span-and-text.html: Added.
        * editing/inserting/insert-paragraph-separator-tab-span-expected.txt: Added.
        * editing/inserting/insert-paragraph-separator-tab-span.html: Added.
        * editing/inserting/insert-paragraph-at-end-of-line-expected.txt: No longer duplicates a[id="anchor"] incorrectly.

2011-04-07  Ryosuke Niwa  <rniwa@webkit.org>

        Reviewed by Eric Seidel.

        dump-as-markup conversion: editing/pasteboard/paste-text-001.html and paste-text-011.html
        https://bugs.webkit.org/show_bug.cgi?id=58078

        Converted the tests.

        * editing/pasteboard/paste-text-001-expected.txt: Added.
        * editing/pasteboard/paste-text-001.html:
        * editing/pasteboard/paste-text-011-expected.txt: Added.
        * editing/pasteboard/paste-text-011.html:
        * platform/chromium-linux/editing/pasteboard/paste-text-001-expected.checksum: Removed.
        * platform/chromium-linux/editing/pasteboard/paste-text-001-expected.png: Removed.
        * platform/chromium-linux/editing/pasteboard/paste-text-011-expected.checksum: Removed.
        * platform/chromium-linux/editing/pasteboard/paste-text-011-expected.png: Removed.
        * platform/chromium-win/editing/pasteboard/paste-text-001-expected.checksum: Removed.
        * platform/chromium-win/editing/pasteboard/paste-text-001-expected.png: Removed.
        * platform/chromium-win/editing/pasteboard/paste-text-001-expected.txt: Removed.
        * platform/chromium-win/editing/pasteboard/paste-text-011-expected.checksum: Removed.
        * platform/chromium-win/editing/pasteboard/paste-text-011-expected.png: Removed.
        * platform/chromium-win/editing/pasteboard/paste-text-011-expected.txt: Removed.
        * platform/gtk/editing/pasteboard/paste-text-001-expected.txt: Removed.
        * platform/gtk/editing/pasteboard/paste-text-011-expected.checksum: Removed.
        * platform/gtk/editing/pasteboard/paste-text-011-expected.png: Removed.
        * platform/gtk/editing/pasteboard/paste-text-011-expected.txt: Removed.
        * platform/mac-leopard/editing/pasteboard/paste-text-011-expected.checksum: Removed.
        * platform/mac-leopard/editing/pasteboard/paste-text-011-expected.png: Removed.
        * platform/mac/editing/pasteboard/paste-text-001-expected.checksum: Removed.
        * platform/mac/editing/pasteboard/paste-text-001-expected.png: Removed.
        * platform/mac/editing/pasteboard/paste-text-001-expected.txt: Removed.
        * platform/mac/editing/pasteboard/paste-text-011-expected.checksum: Removed.
        * platform/mac/editing/pasteboard/paste-text-011-expected.png: Removed.
        * platform/mac/editing/pasteboard/paste-text-011-expected.txt: Removed.
        * platform/qt/editing/pasteboard/paste-text-011-expected.checksum: Removed.
        * platform/qt/editing/pasteboard/paste-text-011-expected.png: Removed.
        * platform/qt/editing/pasteboard/paste-text-011-expected.txt: Removed.

2011-04-07  Kent Tamura  <tkent@chromium.org>

        [Chromium] Update expectations for r83216 and r83235.

        * platform/chromium-linux/svg/custom/foreign-object-skew-expected.png: Added.
        * platform/chromium-linux/svg/custom/foreign-object-skew-expected.txt: Copied from LayoutTests/platform/chromium-win/svg/custom/foreign-object-skew-expected.txt.
        * platform/chromium-mac-leopard/svg/custom/foreign-object-skew-expected.checksum: Removed.
        * platform/chromium-mac-leopard/svg/custom/foreign-object-skew-expected.png:
        * platform/chromium-mac/svg/custom/foreign-object-skew-expected.checksum: Removed.
        * platform/chromium-mac/svg/custom/foreign-object-skew-expected.png:
        * platform/chromium-mac/svg/zoom/text/zoom-foreignObject-expected.png: Copied from LayoutTests/platform/chromium-mac/svg/custom/foreign-object-skew-expected.png.
        * platform/chromium-win-vista/svg/custom/foreign-object-skew-expected.checksum: Removed.
        * platform/chromium-win-vista/svg/custom/foreign-object-skew-expected.png:
        * platform/chromium-win/svg/custom/foreign-object-skew-expected.checksum: Removed.
        * platform/chromium-win/svg/custom/foreign-object-skew-expected.png:
        * platform/chromium-win/svg/custom/foreign-object-skew-expected.txt:
        * platform/chromium/test_expectations.txt:

2011-04-07  Julien Chaffraix  <jchaffraix@webkit.org>

        Reviewed by Eric Seidel.

        Test for Bug 51465 - chrome.dll!WebCore::RenderLayer::currentTransform
        ReadAV@NULL (8968fc97874fa23b6799ff8f09c142e4)

        Forgot to add them to the original patch.

        * fast/css/webkit-empty-transform-preserve3d-crash-expected.txt: Added.
        * fast/css/webkit-empty-transform-preserve3d-crash.html: Added.

2011-04-07  Adrienne Walker  <enne@google.com>

        [chromium] Unreviewed, add baseline pixel images for decorations-transformed.

        * platform/chromium-mac/fast/text/decorations-transformed-expected.png: Added.
        * platform/chromium-win/fast/text/decorations-transformed-expected.png: Added.

2011-04-07  Adam Barth  <abarth@webkit.org>

        Reviewed by Eric Seidel.

        Implement img-src style-src and font-src
        https://bugs.webkit.org/show_bug.cgi?id=58018

        Test a bunch of allow/block tests for these new directives.

        * http/tests/security/contentSecurityPolicy/image-allowed-expected.txt: Added.
        * http/tests/security/contentSecurityPolicy/image-allowed.html: Added.
        * http/tests/security/contentSecurityPolicy/image-blocked-expected.txt: Added.
        * http/tests/security/contentSecurityPolicy/image-blocked.html: Added.
        * http/tests/security/contentSecurityPolicy/resources/blue.css: Added.
        * http/tests/security/contentSecurityPolicy/resources/style.xsl: Added.
        * http/tests/security/contentSecurityPolicy/style-allowed-expected.txt: Added.
        * http/tests/security/contentSecurityPolicy/style-allowed.html: Added.
        * http/tests/security/contentSecurityPolicy/style-blocked-expected.txt: Added.
        * http/tests/security/contentSecurityPolicy/style-blocked.html: Added.
        * http/tests/security/contentSecurityPolicy/xsl-allowed.php: Added.
        * http/tests/security/contentSecurityPolicy/xsl-blocked-expected.txt: Added.
        * http/tests/security/contentSecurityPolicy/xsl-blocked.php: Added.

2011-04-07  Enrica Casucci  <enrica@apple.com>

        Unreviewed. Updated comment in skipped list to
        include the bug that tracks the changes required
        in WebKitTestRunner.

        * platform/win-wk2/Skipped:

2011-04-07  Daniel Bates  <dbates@rim.com>

        Reviewed by Darin Adler.

        Add a layout test to ensure that mousemove is fired from a subframe
        https://bugs.webkit.org/show_bug.cgi?id=58094

        * fast/events/iframe-onmousemove-expected.txt: Added.
        * fast/events/iframe-onmousemove.html: Added.
        * fast/events/resources/iframe-onmousemove.html: Added.

2011-04-07  Csaba Osztrogonác  <ossy@webkit.org>

        [Qt][WK2] Decrease flakiness of test results.

        * platform/qt-wk2/Skipped:
         - Add canvas tests not to break css2.1 tests.
         - Remove passing css2.1 tests.

2011-04-07  Jer Noble  <jer.noble@apple.com>

        Unreviewed; Add failing legacy full screen tests to the gtk/Skipped list.

        * platform/gtk/Skipped:

2011-04-07  David Hyatt  <hyatt@apple.com>

        Reviewed by Dan Bernstein.

        https://bugs.webkit.org/show_bug.cgi?id=57736

        Crash on openstreetmap.org while using the map. Fix a bad interaction between the positioned movement layout
        optimization and the simplified layout optimization that could lead to blocks remaining marked as dirty when
        layout finished. This would eventually lead to an inability to properly determine the correct layout root and
        would cause a deleted root to be used later on.

        Added fast/block/positioning/complex-positioned-movement.html.

        * fast/block/positioning/complex-positioned-movement.html: Added.
        * platform/mac/fast/block/positioning/complex-positioned-movement-expected.checksum: Added.
        * platform/mac/fast/block/positioning/complex-positioned-movement-expected.png: Added.
        * platform/mac/fast/block/positioning/complex-positioned-movement-expected.txt: Added.

2011-04-07  Dan Bernstein  <mitz@apple.com>

        Reviewed by Simon Fraser.

        <rdar://problem/9018212> Underline thickness is not uniform under non-integral scale factor
        https://bugs.webkit.org/show_bug.cgi?id=58083

        * fast/text/decorations-transformed.html: Added.
        * platform/mac/fast/text/decorations-transformed-expected.checksum: Added.
        * platform/mac/fast/text/decorations-transformed-expected.png: Added.
        * platform/mac/fast/text/decorations-transformed-expected.txt: Added.

2011-04-07  Jer Noble  <jer.noble@apple.com>

        Unreviewed; Add the media/media-fullscreen-inline.html test to the mac-snowleopard Skipped list.

        The legacy full screen API now redirects to the new full screen API, breaking the media-fullscreen-inline.html
        test.

        * platform/mac-snowleopard/Skipped:

2011-04-06  Vitaly Repeshko  <vitalyr@chromium.org>

        Reviewed by Nate Chapin.

        [V8] Remove custom DOMImplementation getter on Document.
        https://bugs.webkit.org/show_bug.cgi?id=57991

        * fast/dom/DOMImplementation/implementation-identity-expected.txt: Added.
        * fast/dom/DOMImplementation/implementation-identity.html: Added.

2011-04-07  Steve Lacey  <sjl@chromium.org>

        Reviewed by Eric Carlson.

        Make various video layout tests platform independent by selecting an appropriate media file.

        Various layout tests depend on mp4 files.
        https://bugs.webkit.org/show_bug.cgi?id=57804

        * http/tests/media/remove-while-loading.html:
        * http/tests/media/video-load-and-stall.cgi:
        * http/tests/media/video-play-stall-before-meta-data.html:
        * http/tests/media/video-play-stall-seek.html:
        * http/tests/media/video-play-stall.html:
        * http/tests/media/video-seekable-stall.html:
        * media/media-file.js:
        (mimeTypeForFile):
        (stripExtension):
        * platform/chromium/test_expectations.txt:

2011-04-07  Sergey Glazunov  <serg.glazunov@gmail.com>

        Reviewed by Dimitri Glazkov.

        setHasID() is only called for styled elements
        https://bugs.webkit.org/show_bug.cgi?id=57267

        * fast/dom/non-styled-element-id-crash-expected.txt: Added.
        * fast/dom/non-styled-element-id-crash.html: Added.
        * svg/custom/embedded-svg-disallowed-in-dashboard.xml: Fix the failing test.

2011-04-07  Brian Weinstein  <bweinstein@apple.com>

        Fix a typo in the Skipped list from r83203.

        * platform/win-wk2/Skipped:

2011-04-07  Adam Barth  <abarth@webkit.org>

        Reviewed by Eric Seidel.

        Implement CSP's options directive
        https://bugs.webkit.org/show_bug.cgi?id=58014

        * http/tests/security/contentSecurityPolicy/inline-script-allowed-expected.txt: Added.
        * http/tests/security/contentSecurityPolicy/inline-script-allowed.html: Added.
        * http/tests/security/contentSecurityPolicy/inline-script-blocked-goofy-expected.txt: Added.
        * http/tests/security/contentSecurityPolicy/inline-script-blocked-goofy.html: Added.

2011-04-07  Enrica Casucci  <enrica@apple.com>

        Unreviewed.
        Adding to skipped list for Windows (WK2) the
        tests relative to undo removed from the skipped list
        for Mac where execCommand('undo') is now supported.

        * platform/win-wk2/Skipped:

2011-04-07  Adrienne Walker  <enne@google.com>

        [chromium] Unreviewed, rebaseline progress element tests.

        * platform/chromium-linux/fast/dom/HTMLProgressElement/progress-bar-value-pseudo-element-expected.checksum: Removed.
        * platform/chromium-linux/fast/dom/HTMLProgressElement/progress-bar-value-pseudo-element-expected.png:
        * platform/chromium-mac-leopard/fast/dom/HTMLProgressElement/progress-bar-value-pseudo-element-expected.png: Added.
        * platform/chromium-win/fast/dom/HTMLProgressElement/progress-bar-value-pseudo-element-expected.checksum: Removed.
        * platform/chromium-win/fast/dom/HTMLProgressElement/progress-bar-value-pseudo-element-expected.png:
        * platform/chromium-win/fast/dom/HTMLProgressElement/progress-bar-value-pseudo-element-expected.txt:
        * platform/chromium-win/fast/dom/HTMLProgressElement/progress-element-expected.txt:
        * platform/chromium/test_expectations.txt:

2011-04-07  Jer Noble  <jer.noble@apple.com>

        Unreviewed; rebaseline expected results in platform/mac-wk2.

        * platform/mac-wk2/media/controls-without-preload-expected.txt:

2011-04-07  Chang Shu  <cshu@webkit.org>

        Reviewed by Darin Adler.

        WebKitTestRunner needs layoutTestController.isPageBoxVisible
        https://bugs.webkit.org/show_bug.cgi?id=42695

        Unskip passed tests.

        * platform/mac-wk2/Skipped:
        * platform/qt-wk2/Skipped:

2011-04-07  Enrica Casucci  <enrica@apple.com>

        Reviewed by Oliver Hunt.

        REGRESSION(WebKit2): execCommand('undo') doesn't work (Mac).
        https://bugs.webkit.org/show_bug.cgi?id=58055
        <rdar://problem/8862023>

        * platform/mac-wk2/Skipped: Remove skipped tests related to undo/redo.

2011-04-07  Nancy Piedra  <nancy.piedra@nokia.com>

        Reviewed by Eric Carlson.

        Add tests for parsing codecs parameter in video-can-play-type.html
        https://bugs.webkit.org/show_bug.cgi?id=53275

        * media/video-can-play-type-expected.txt:
        * media/video-can-play-type.html:

2011-04-07  Jessie Berlin  <jberlin@apple.com>

        [WebKit2 Tests] fast/events/select-element.html failing since introduction in r83096
        https://bugs.webkit.org/show_bug.cgi?id=58059

        Adding this test to the mac-wk2 skipped list to get the bots green.

        * platform/mac-wk2/Skipped:

2011-04-07  Adrienne Walker  <enne@google.com>

        [chromium] Unreviewed, now that bug 57975 is fixed, mark test as passing.

        * platform/chromium/test_expectations.txt:

2011-04-07  Brian Weinstein  <bweinstein@apple.com>

        Update Leopard expected results after r83075 to greenify the bots.

        * platform/mac-leopard/fast/blockflow/text-orientation-basic-expected.txt:

2011-04-07  Adrienne Walker  <enne@google.com>

        [chromium] Unreviewed, rebaseline tests changed in r82947.

        * platform/chromium-linux/svg/W3C-SVG-1.1-SE/text-tspan-02-b-expected.png: Added.
        * platform/chromium-linux/svg/text/text-midpoint-split-bug-expected.png: Added.
        * platform/chromium-mac-leopard/svg/W3C-SVG-1.1-SE/text-tspan-02-b-expected.png: Added.
        * platform/chromium-mac/svg/W3C-SVG-1.1-SE/text-tspan-02-b-expected.png: Added.
        * platform/chromium-win/svg/W3C-SVG-1.1-SE/text-tspan-02-b-expected.png: Added.
        * platform/chromium-win/svg/W3C-SVG-1.1-SE/text-tspan-02-b-expected.txt: Added.
        * platform/chromium-win/svg/text/text-midpoint-split-bug-expected.png: Added.
        * platform/chromium-win/svg/text/text-midpoint-split-bug-expected.txt: Added.
        * platform/chromium/test_expectations.txt:

2011-04-07  Vincent Scheib  <scheib@chromium.org>

        Flagging platform/chromium/compositing/huge-layer-rotated.html a bug.

        * platform/chromium/test_expectations.txt:

2011-04-07  Ryosuke Niwa  <rniwa@webkit.org>

        Reviewed by Eric Seidel.

        editing/inserting/6633727.html should be renamed and converted into a dump-as-markup test
        https://bugs.webkit.org/show_bug.cgi?id=58037

        Renamed 6633727.html to insert-paragraph-at-end-of-line.html and converted it to a dump-as-markup test.

        * editing/inserting/6633727-expected.txt: Removed.
        * editing/inserting/6633727.html: Removed.
        * editing/inserting/insert-paragraph-at-end-of-line-expected.txt: Added.
        * editing/inserting/insert-paragraph-at-end-of-line.html: Copied from LayoutTests/editing/inserting/6633727.html.
        * editing/inserting/script-tests/6633727.js: Removed.

2011-04-07  Yury Semikhatsky  <yurys@chromium.org>

        Reviewed by Pavel Feldman.

        Web Inspector: console messages names should adhere to the common naming style
        https://bugs.webkit.org/show_bug.cgi?id=58042

        * inspector/protocol/console-agent-expected.txt:

2011-04-07  Philippe Normand  <pnormand@igalia.com>

        Unreviewed, unskip a fast/xmlhttprequest test passing on GTK.

        * platform/gtk/Skipped:

2011-04-07  Csaba Osztrogonác  <ossy@webkit.org>

        [Qt][WK2] Add always failing tets to the Skipped list.

        * platform/qt-wk2/Skipped:

2011-04-06  Ilya Tikhonovsky  <loislo@chromium.org>

        Reviewed by Yury Semikhatsky.

        Web Inspector: migrate Inspector protocol messages format to JSON-RPC.
        https://bugs.webkit.org/show_bug.cgi?id=57957

        There is not a significant difference between  inspector messages spec and and JSON-RPC 2.0 messages spec.
        Also JSON-RPC has a pretty clear specification for error descriptions which we haven't.
        It was decided that we will use it.

        the list of renames:
        1) type-> /dev/null
        2) domain + '.' + event => method // for events
        3) domain + '.' + command => method // for requests
        4) requestId => id // for responses
        5) arguments => params // for requests
        6) data => params // for events
        7) body => result // for responses

        protocolErrors and error properties will be converted to JSON-RPC error format.
        The order of properties in messages also will be adjusted.
        The only thing that looks unnecessary is jsonrpc property.

        * inspector/protocol/console-agent-expected.txt:
        * inspector/protocol/runtime-agent-expected.txt:
        * inspector/report-API-errors-expected.txt:
        * inspector/report-API-errors.html:
        * inspector/report-protocol-errors-expected.txt:
        * inspector/report-protocol-errors.html:

2011-04-07  Kent Tamura  <tkent@chromium.org>

        [Chromium] Move Leopard-specific images to chromium-mac-leopard, and
        unify text results common in chromium-mac.

        * platform/chromium-mac-leopard/fast/speech/input-appearance-numberandspeech-expected.checksum: Added.
        * platform/chromium-mac-leopard/fast/speech/input-appearance-numberandspeech-expected.png: Added.
        * platform/chromium-mac-leopard/fast/speech/input-appearance-numberandspeech-expected.txt: Removed.
        * platform/chromium-mac-leopard/fast/speech/input-appearance-searchandspeech-expected.checksum: Added.
        * platform/chromium-mac-leopard/fast/speech/input-appearance-searchandspeech-expected.png: Added.
        * platform/chromium-mac/fast/speech/input-appearance-numberandspeech-expected.txt:

2011-04-07  Ryosuke Niwa  <rniwa@webkit.org>

        Reviewed by Eric Seidel.

        REGRESSION (r46914, r48764): When typing in Mail, line wrapping frequently occurs in the middle of words
        https://bugs.webkit.org/show_bug.cgi?id=57872

        Added a test insert a paragraph separator and text around tab spans. WebKit should not apply the tab span's
        style to the paragraph separator or the text.

        * editing/inserting/insert-paragraph-separator-tab-span-expected.txt: Added.
        * editing/inserting/insert-paragraph-separator-tab-span.html: Added.

2011-04-07  Ryosuke Niwa  <rniwa@webkit.org>

        Reviewed by Eric Seidel.

        Convert insert-div-021.html to a dump-as-markup test
        https://bugs.webkit.org/show_bug.cgi?id=58019

        Converted the test.

        * editing/inserting/insert-div-021-expected.txt: Added.
        * editing/inserting/insert-div-021.html:
        * platform/chromium-linux/editing/inserting/insert-div-021-expected.checksum: Removed.
        * platform/chromium-linux/editing/inserting/insert-div-021-expected.png: Removed.
        * platform/chromium-win/editing/inserting/insert-div-021-expected.checksum: Removed.
        * platform/chromium-win/editing/inserting/insert-div-021-expected.png: Removed.
        * platform/chromium-win/editing/inserting/insert-div-021-expected.txt: Removed.
        * platform/gtk/editing/inserting/insert-div-021-expected.checksum: Removed.
        * platform/gtk/editing/inserting/insert-div-021-expected.png: Removed.
        * platform/gtk/editing/inserting/insert-div-021-expected.txt: Removed.
        * platform/mac/editing/inserting/insert-div-021-expected.checksum: Removed.
        * platform/mac/editing/inserting/insert-div-021-expected.png: Removed.
        * platform/mac/editing/inserting/insert-div-021-expected.txt: Removed.
        * platform/qt/editing/inserting/insert-div-021-expected.txt: Removed.

2011-04-07  Adam Barth  <abarth@webkit.org>

        Reviewed by Eric Seidel.

        script-src should block inline script
        https://bugs.webkit.org/show_bug.cgi?id=58012

        Test that script-src blocks inline script.  This test uses a different
        approach than the existing tests for variety.

        * http/tests/security/contentSecurityPolicy/inline-script-blocked-expected.txt: Added.
        * http/tests/security/contentSecurityPolicy/inline-script-blocked.html: Added.
        * http/tests/security/contentSecurityPolicy/resources/document-write-alert-fail.js: Added.
        * http/tests/security/contentSecurityPolicy/resources/dump-as-text.js: Added.

2011-04-07  Kent Tamura  <tkent@chromium.org>

        [Chromium] Update Linux x86-64 results for the Skia rounding rect change.

        * platform/chromium-linux-x86_64/fast/borders/borderRadiusGroove01-expected.checksum: Removed.
        * platform/chromium-linux-x86_64/fast/borders/borderRadiusGroove01-expected.png:
        * platform/chromium-linux-x86_64/fast/borders/borderRadiusGroove02-expected.checksum: Removed.
        * platform/chromium-linux-x86_64/fast/borders/borderRadiusGroove02-expected.png:
        * platform/chromium-linux-x86_64/fast/borders/borderRadiusRidge01-expected.checksum: Removed.
        * platform/chromium-linux-x86_64/fast/borders/borderRadiusRidge01-expected.png:

2011-04-07  Kent Tamura  <tkent@chromium.org>

        Skip platform/mac/fast/forms/input-appearance-spinbutton-up.html on Mac WebKit2.
        https://bugs.webkit.org/show_bug.cgi?id=56298

        * platform/mac-wk2/Skipped:

2011-04-07  Kent Tamura  <tkent@chromium.org>

        Update spinbutton test results for r83145.

        * platform/chromium-linux/fast/forms/input-appearance-spinbutton-disabled-readonly-expected.txt:
        * platform/chromium-linux/fast/forms/input-appearance-spinbutton-layer-expected.txt: Removed.
        * platform/chromium-linux/fast/forms/input-appearance-spinbutton-visibility-expected.txt: Removed.
        * platform/chromium-linux/fast/speech/input-appearance-numberandspeech-expected.txt:
        * platform/chromium-mac-leopard/fast/speech/input-appearance-numberandspeech-expected.txt: Added.
        * platform/chromium-win/fast/forms/input-appearance-spinbutton-disabled-readonly-expected.txt:
        * platform/chromium-win/fast/forms/input-appearance-spinbutton-layer-expected.png: Added.
        * platform/chromium-win/fast/forms/input-appearance-spinbutton-visibility-expected.txt:
        * platform/chromium-win/fast/speech/input-appearance-numberandspeech-expected.txt:
        * platform/chromium/test_expectations.txt:
        * platform/win/Skipped:

2011-04-07  Philippe Normand  <pnormand@igalia.com>

        Unreviewed, GTK rebaseline after r83145. Also skip
        fast/forms/input-number-large-padding.html which fails. See bug
        58020.

        * platform/gtk/Skipped:
        * platform/gtk/fast/forms/input-appearance-spinbutton-disabled-readonly-expected.txt:
        * platform/gtk/fast/forms/input-appearance-spinbutton-layer-expected.txt:
        * platform/gtk/fast/forms/input-appearance-spinbutton-visibility-expected.txt:

2011-04-07  Philippe Normand  <pnormand@igalia.com>

        Unreviewed, GTK baselines for 4 new tests.

        * platform/gtk/fast/history/visited-link-background-color-expected.checksum: Added.
        * platform/gtk/fast/history/visited-link-background-color-expected.png: Added.
        * platform/gtk/fast/history/visited-link-background-color-expected.txt: Added.
        * platform/gtk/fast/images/imagemap-focus-ring-zero-outline-width-expected.checksum: Added.
        * platform/gtk/fast/images/imagemap-focus-ring-zero-outline-width-expected.png: Added.
        * platform/gtk/fast/images/imagemap-focus-ring-zero-outline-width-expected.txt: Added.
        * platform/gtk/svg/W3C-SVG-1.1-SE/text-tspan-02-b-expected.checksum: Added.
        * platform/gtk/svg/W3C-SVG-1.1-SE/text-tspan-02-b-expected.png: Added.
        * platform/gtk/svg/W3C-SVG-1.1-SE/text-tspan-02-b-expected.txt: Added.
        * platform/gtk/svg/text/text-midpoint-split-bug-expected.checksum: Added.
        * platform/gtk/svg/text/text-midpoint-split-bug-expected.png: Added.
        * platform/gtk/svg/text/text-midpoint-split-bug-expected.txt: Added.

2011-04-07  Philippe Normand  <pnormand@igalia.com>

        Unreviewed, GTK rebaseline after r83075.

        * platform/gtk/fast/blockflow/text-orientation-basic-expected.txt:
        * platform/gtk/fast/text/capitalize-empty-generated-string-expected.txt:

2011-04-07  Kent Tamura  <tkent@chromium.org>

        [Chromium] Fix a duplicated entry.

        * platform/chromium/test_expectations.txt:

2011-04-07  Kent Tamura  <tkent@chromium.org>

        Reviewed by Dimitri Glazkov.

        Spinbuttons become unclickable if right padding is large.
        https://bugs.webkit.org/show_bug.cgi?id=56298

        Add a test, and skip on platforms which has no inner-spin-button implementation.

        * fast/forms/input-number-large-padding-expected.txt: Added.
        * fast/forms/input-number-large-padding.html: Added.
        * platform/chromium/test_expectations.txt:
        * platform/mac/Skipped:
        * platform/mac/fast/forms/input-appearance-spinbutton-disabled-readonly-expected.txt:
        * platform/mac/fast/forms/input-appearance-spinbutton-expected.txt:
        * platform/mac/fast/forms/input-appearance-spinbutton-layer-expected.txt:
        * platform/mac/fast/forms/input-appearance-spinbutton-up-expected.txt:
        * platform/mac/fast/forms/input-appearance-spinbutton-visibility-expected.txt:
        * platform/qt/Skipped:

2011-04-06  Kent Tamura  <tkent@chromium.org>

        Fixed an error in the previous commit.

        * platform/chromium/test_expectations.txt:

2011-04-06  Kent Tamura  <tkent@chromium.org>

        [Chromium] Update text expectation.
        fast/repaint/scale-page-shrink.html is expected to fail because of no
        eventSender.scalePageBy().

        * platform/chromium/test_expectations.txt:

2011-04-06  Kent Tamura  <tkent@chromium.org>

        [Chromium] Update test expectation.
        xhr-breakpoints.html and detailed-heapshots-summary.html are flaky.

        * platform/chromium/test_expectations.txt:

2011-04-06  Adam Barth  <abarth@webkit.org>

        Reviewed by Eric Seidel.

        CSP object-src should block plugin loads
        https://bugs.webkit.org/show_bug.cgi?id=57283

        * http/tests/security/contentSecurityPolicy/object-src-none-expected.txt: Added.
        * http/tests/security/contentSecurityPolicy/object-src-none.html: Added.
        * http/tests/security/contentSecurityPolicy/resources/echo-object-data.pl: Added.

2011-04-06  Beth Dakin  <bdakin@apple.com>

        Reviewed by Dan Bernstein.

        https://bugs.webkit.org/show_bug.cgi?id=58009
        Frame::scalePage() results in visual artifacts with scale factors less than 1
        -and corresponding-
        <rdar://problem/8683230>

        * fast/repaint/scale-page-shrink.html: Added.
        * platform/gtk/Skipped:
        * platform/mac/fast/repaint/scale-page-shrink-expected.checksum: Added.
        * platform/mac/fast/repaint/scale-page-shrink-expected.png: Added.
        * platform/mac/fast/repaint/scale-page-shrink-expected.txt: Added.
        * platform/qt/Skipped:
        * platform/win/Skipped:

2011-04-06  Chang Shu  <cshu@webkit.org>

        Reviewed by Darin Adler.

        WebKitTestRunner needs layoutTestController.pageSizeAndMarginsInPixels
        https://bugs.webkit.org/show_bug.cgi?id=57984

        Unskip passed tests.

        * platform/mac-wk2/Skipped:

2011-04-06  Benjamin Poulain  <benjamin.poulain@nokia.com>

        Reviewed by Kenneth Rohde Christiansen.

        [Qt] LayoutTestController needs to implement numberOfPendingGeolocationPermissionRequests
        https://bugs.webkit.org/show_bug.cgi?id=56086

        * platform/qt/Skipped: Remove the skipped test which required numberOfPendingGeolocationPermissionRequests.

2011-04-06  Kent Tamura  <tkent@chromium.org>

        [Chromium] Update expectations for Geeza Pro and so on.

        * platform/chromium/test_expectations.txt:

2011-04-06  Jer Noble  <jer.noble@apple.com>

        Reviewed by Eric Carlson.

        MediaPlayerPrivateAVFoundation does not change rate due to setRate().
        https://bugs.webkit.org/show_bug.cgi?id=57919

        * media/video-set-rate-from-pause-expected.txt: Added.
        * media/video-set-rate-from-pause.html: Added.

2011-04-06  Dan Bernstein  <mitz@apple.com>

        Correct results for the Geeza Pro metrics change.

        * platform/mac/fast/dom/52776-expected.checksum:
        * platform/mac/fast/dom/52776-expected.png:
        * platform/mac/fast/dom/52776-expected.txt:
        * platform/mac/fast/text/complex-text-opacity-expected.checksum:
        * platform/mac/fast/text/complex-text-opacity-expected.png:
        * platform/mac/fast/text/complex-text-opacity-expected.txt:
        * platform/mac/fast/text/international/Geeza-Pro-vertical-metrics-adjustment-expected.txt:
        * platform/mac/fast/text/international/bidi-AN-after-L-expected.checksum:
        * platform/mac/fast/text/international/bidi-AN-after-L-expected.png:
        * platform/mac/fast/text/international/bidi-AN-after-L-expected.txt:
        * platform/mac/fast/text/international/bidi-AN-after-empty-run-expected.checksum:
        * platform/mac/fast/text/international/bidi-AN-after-empty-run-expected.png:
        * platform/mac/fast/text/international/bidi-AN-after-empty-run-expected.txt:
        * platform/mac/fast/text/international/bidi-CS-after-AN-expected.checksum:
        * platform/mac/fast/text/international/bidi-CS-after-AN-expected.png:
        * platform/mac/fast/text/international/bidi-CS-after-AN-expected.txt:
        * platform/mac/fast/text/international/bidi-mirror-he-ar-expected.checksum:
        * platform/mac/fast/text/international/bidi-mirror-he-ar-expected.png:
        * platform/mac/fast/text/international/bidi-mirror-he-ar-expected.txt:
        * platform/mac/fast/text/international/bidi-neutral-run-expected.checksum:
        * platform/mac/fast/text/international/bidi-neutral-run-expected.png:
        * platform/mac/fast/text/international/bidi-neutral-run-expected.txt:
        * platform/mac/platform/mac/fast/text/international/Geeza-Pro-vertical-metrics-adjustment-expected.checksum:
        * platform/mac/platform/mac/fast/text/international/Geeza-Pro-vertical-metrics-adjustment-expected.png:

2011-04-06  Adrienne Walker  <enne@google.com>

        Unreviewed, update Chromium expectations for failing test from r83075.

        * platform/chromium/test_expectations.txt:

2011-04-06  Dan Bernstein  <mitz@apple.com>

        Reviewed by Darin Adler.

        <rdar://problem/9084761> REGRESSION (r73993): Default Arabic line spacing has gotten very loose when the specified font is not Arabic
        https://bugs.webkit.org/show_bug.cgi?id=58002

        * platform/mac/fast/dom/52776-expected.checksum:
        * platform/mac/fast/dom/52776-expected.png:
        * platform/mac/fast/dom/52776-expected.txt:
        * platform/mac/fast/text/complex-text-opacity-expected.txt:
        * platform/mac/fast/text/international/Geeza-Pro-vertical-metrics-adjustment-expected.txt:
        * platform/mac/fast/text/international/bidi-AN-after-L-expected.checksum:
        * platform/mac/fast/text/international/bidi-AN-after-L-expected.png:
        * platform/mac/fast/text/international/bidi-AN-after-L-expected.txt:
        * platform/mac/fast/text/international/bidi-AN-after-empty-run-expected.checksum:
        * platform/mac/fast/text/international/bidi-AN-after-empty-run-expected.png:
        * platform/mac/fast/text/international/bidi-AN-after-empty-run-expected.txt:
        * platform/mac/fast/text/international/bidi-CS-after-AN-expected.txt:
        * platform/mac/fast/text/international/bidi-mirror-he-ar-expected.txt:
        * platform/mac/fast/text/international/bidi-neutral-run-expected.checksum:
        * platform/mac/fast/text/international/bidi-neutral-run-expected.png:
        * platform/mac/fast/text/international/bidi-neutral-run-expected.txt:
        * platform/mac/platform/mac/fast/text/international/Geeza-Pro-vertical-metrics-adjustment-expected.checksum:
        * platform/mac/platform/mac/fast/text/international/Geeza-Pro-vertical-metrics-adjustment-expected.png:

2011-04-06  Adrienne Walker  <enne@google.com>

        Unreviewed, update expectations for Chromium visited link test.
        https://bugs.webkit.org/show_bug.cgi?id=58000

        Apparently, this just hasn't been working for a while.

        * platform/chromium/test_expectations.txt:

2011-04-06  Adrienne Walker  <enne@google.com>

        Unreviewed, rebaseline more Chromium mac tests after r83075.

        * platform/chromium-mac/fast/repaint/shadow-multiple-horizontal-expected.png: Added.
        * platform/chromium-mac/fast/repaint/shadow-multiple-strict-horizontal-expected.png: Added.

2011-04-06  Adrienne Walker  <enne@google.com>

        Unreviewed, try to green Chromium mac tree by marking failing tests as more generally failing.

        * platform/chromium/test_expectations.txt:

2011-04-06  David Dorwin  <ddorwin@chromium.org>

        Reviewed by David Levin.

        Enable fullscreen layout tests for Chromium
        https://bugs.webkit.org/show_bug.cgi?id=55726

        Remove test_expectations override for fullscreen tests.

        * platform/chromium/test_expectations.txt:

2011-04-06  Adrienne Walker  <enne@google.com>

        Unreviewed, rebaseline Chromium Mac tests after r83075.

        * platform/chromium-mac-leopard/fast/multicol/nested-columns-expected.checksum: Removed.
        * platform/chromium-mac-leopard/fast/multicol/nested-columns-expected.png:
        * platform/chromium-mac/fast/multicol/nested-columns-expected.png: Removed.
        * platform/chromium-mac/fast/multicol/vertical-lr/nested-columns-expected.checksum: Removed.
        * platform/chromium-mac/fast/multicol/vertical-lr/nested-columns-expected.png: Removed.
        * platform/chromium-mac/fast/multicol/vertical-rl/nested-columns-expected.checksum: Removed.
        * platform/chromium-mac/fast/multicol/vertical-rl/nested-columns-expected.png: Removed.

2011-04-06  Vincent Scheib  <scheib@chromium.org>

        Fixed GPU expectations for r80867

        * platform/chromium-gpu-mac/platform/chromium/compositing/huge-layer-rotated-expected.png: Added.
        * platform/chromium-gpu-win/platform/chromium/compositing/huge-layer-rotated-expected.png: Added.
        * platform/chromium/test_expectations.txt:

2011-04-06  Csaba Osztrogonác  <ossy@webkit.org>

        [Qt] media tests are flakey
        https://bugs.webkit.org/show_bug.cgi?id=57983

        * platform/qt/Skipped: Disable all media tests until fix.

2011-04-06  Sheriff Bot  <webkit.review.bot@gmail.com>

        Unreviewed, rolling out r83039.
        http://trac.webkit.org/changeset/83039
        https://bugs.webkit.org/show_bug.cgi?id=57978

        introduced a new regression in conjunction to
        ReplaceSelectionCommand (Requested by rniwa on #webkit).

        * editing/inserting/insert-paragraph-separator-tab-span-expected.txt: Removed.
        * editing/inserting/insert-paragraph-separator-tab-span.html: Removed.

2011-04-06  Naoki Takano  <takano.naoki@gmail.com>

        Reviewed by David Levin.

        Webkit ignores PgUp/PgDown/Home/End in SELECT tag objects
        https://bugs.webkit.org/show_bug.cgi?id=27658

        * fast/events/select-element-expected.txt: Added to check PgUp/PgDown/Home/End keys are working correctly in SELECT tag.
        * fast/events/select-element.html: Added for expectation.

2011-04-06  Adrienne Walker  <enne@google.com>

        Unreviewed, rebaseline Chromium Win tests after r83075.

        * platform/chromium-win/fast/multicol/nested-columns-expected.checksum: Removed.
        * platform/chromium-win/fast/multicol/nested-columns-expected.png:
        * platform/chromium-win/fast/multicol/vertical-lr/nested-columns-expected.checksum: Removed.
        * platform/chromium-win/fast/multicol/vertical-lr/nested-columns-expected.png:
        * platform/chromium-win/fast/multicol/vertical-rl/nested-columns-expected.checksum: Removed.
        * platform/chromium-win/fast/multicol/vertical-rl/nested-columns-expected.png:
        * platform/chromium-win/fast/text/capitalize-empty-generated-string-expected.txt:

2011-04-06  Csaba Osztrogonác  <ossy@webkit.org>

        [Qt] Update platform specific expected results after r83075.

        * platform/qt/editing/pasteboard/paste-text-011-expected.checksum:
        * platform/qt/editing/pasteboard/paste-text-011-expected.png:
        * platform/qt/editing/pasteboard/paste-text-011-expected.txt:
        * platform/qt/fast/css-generated-content/014-expected.checksum:
        * platform/qt/fast/css-generated-content/014-expected.png:
        * platform/qt/fast/css-generated-content/014-expected.txt:
        * platform/qt/fast/css/word-space-extra-expected.checksum:
        * platform/qt/fast/css/word-space-extra-expected.png:
        * platform/qt/fast/css/word-space-extra-expected.txt:
        * platform/qt/tables/mozilla/bugs/bug16252-expected.txt:
        * platform/qt/tables/mozilla/bugs/bug2123-expected.checksum:
        * platform/qt/tables/mozilla/bugs/bug2123-expected.png:
        * platform/qt/tables/mozilla/bugs/bug2123-expected.txt:
        * platform/qt/tables/mozilla/bugs/bug43854-1-expected.checksum:
        * platform/qt/tables/mozilla/bugs/bug43854-1-expected.png:
        * platform/qt/tables/mozilla/bugs/bug43854-1-expected.txt:
        * platform/qt/tables/mozilla/bugs/bug4523-expected.checksum:
        * platform/qt/tables/mozilla/bugs/bug4523-expected.png:
        * platform/qt/tables/mozilla/bugs/bug4523-expected.txt:
        * platform/qt/tables/mozilla/bugs/bug57828-2-expected.checksum:
        * platform/qt/tables/mozilla/bugs/bug57828-2-expected.png:
        * platform/qt/tables/mozilla/bugs/bug57828-2-expected.txt:
        * platform/qt/tables/mozilla/core/bloomberg-expected.checksum:
        * platform/qt/tables/mozilla/core/bloomberg-expected.png:
        * platform/qt/tables/mozilla/core/bloomberg-expected.txt:
        * platform/qt/tables/mozilla/marvin/backgr_index-expected.txt:

2011-04-06  Adrienne Walker  <enne@google.com>

        Unreviewed, mark Chromium expectations for line-clamp.html to be a known regression.
        https://bugs.webkit.org/show_bug.cgi?id=57975

        * platform/chromium/test_expectations.txt:

2011-04-06  David Hyatt  <hyatt@apple.com>

        Reviewed by Dan Bernstein.

        https://bugs.webkit.org/show_bug.cgi?id=41445

        Visited links painting with black background. Make sure that if the visited style has
        the initial background color (transparent) set that we just use the unvisited color.

        Added fast/history/visited-link-background-color.html
        * fast/history/visited-link-background-color.html: Added.
        * platform/mac/fast/history/visited-link-background-color-expected.checksum: Added.
        * platform/mac/fast/history/visited-link-background-color-expected.png: Added.
        * platform/mac/fast/history/visited-link-background-color-expected.txt: Added.

2011-04-06  Adrienne Walker  <enne@google.com>

       Unreviewed, update Chromium expectations for set-unloaded-frame-location.html as a flaky crasher.

        * platform/chromium/test_expectations.txt:

2011-04-06  Adrienne Walker  <enne@google.com>

       Unreviewed, rebaseline Chromium linux tests after r83075.

        * platform/chromium-linux/fast/multicol/nested-columns-expected.checksum: Removed.
        * platform/chromium-linux/fast/multicol/nested-columns-expected.png:
        * platform/chromium-linux/fast/multicol/vertical-lr/nested-columns-expected.checksum: Removed.
        * platform/chromium-linux/fast/multicol/vertical-lr/nested-columns-expected.png:
        * platform/chromium-linux/fast/multicol/vertical-rl/nested-columns-expected.checksum: Removed.
        * platform/chromium-linux/fast/multicol/vertical-rl/nested-columns-expected.png:
        * platform/chromium-linux/fast/text/capitalize-empty-generated-string-expected.txt: Added.

2011-04-06  Alexis Menard  <alexis.menard@openbossa.org>

        Reviewed by Andreas Kling.

        Skip tests not passing in the Qt bot.

        * platform/qt/Skipped:

2011-04-06  Zan Dobersek  <zandobersek@gmail.com>

        Reviewed by Eric Seidel.

        [Gtk] plugins/set-status.html fails
        https://bugs.webkit.org/show_bug.cgi?id=57844

        Unskip a newly-passing test.

        * platform/gtk/Skipped:

2011-04-06  David Hyatt  <hyatt@apple.com>

        Reviewed by Dan Bernstein.

        https://bugs.webkit.org/show_bug.cgi?id=57916

        Implement an optimization to the line box tree to cull out most of the intermediate
        line boxes that can occur between the root line box and the leaves of the tree (images
        and text).

        RenderInlines now have a boolean member, m_alwaysCreateLineBoxes,
        that starts off as false. Only if it gets flipped to true will there be any line boxes
        created for that RenderInline.

        * platform/mac/fast/blockflow/text-orientation-basic-expected.txt:
        * platform/mac/fast/text/capitalize-empty-generated-string-expected.txt:

2011-04-06  MORITA Hajime  <morrita@google.com>

        Unreviewed expectations udpate for gtk port that follows r83065.

        * platform/gtk/fast/dom/HTMLProgressElement/progress-bar-value-pseudo-element-expected.txt:
        * platform/gtk/fast/dom/HTMLProgressElement/progress-element-expected.txt:

2011-04-06  Adrienne Walker  <enne@google.com>

       Unreviewed, modify Chromium test expectations from r83065.  They need
       rebaselines, but in the meantime they should fail more generally so as
       not to trip the bots.

        * platform/chromium/test_expectations.txt:

2011-04-06  Alexis Menard  <alexis.menard@openbossa.org>

        Reviewed by Benjamin Poulain.

        [Qt] Unskip some media LayoutTests.
        https://bugs.webkit.org/show_bug.cgi?id=57855

        Unskip some media tests for Qt.

        * platform/qt/Skipped:

2011-04-06  Chang Shu  <cshu@webkit.org>

        Reviewed by Darin Adler.

        WebKitTestRunner needs layoutTestController.pageNumberForElementById
        https://bugs.webkit.org/show_bug.cgi?id=42329

        Unskip passed tests.

        * platform/mac-wk2/Skipped:
        * platform/qt-wk2/Skipped:

2011-04-06  Steve Lacey  <sjl@chromium.org>

        Reviewed by Eric Carlson.

        fast/layer/video_layer.html has the same text output for all chromium mac platforms.

        [chromium] Fix fast/layers/video_layer.html expectations
        https://bugs.webkit.org/show_bug.cgi?id=57386

        * platform/chromium-mac-leopard/fast/layers/video-layer-expected.txt: Removed.
        * platform/chromium-mac/fast/layers/video-layer-expected.txt:
        * platform/chromium/test_expectations.txt:

2011-04-06  MORITA Hajime  <morrita@google.com>

        Reviewed by Dimitri Glazkov.

        [Refactoring] <progress> should not have manual layout code.
        https://bugs.webkit.org/show_bug.cgi?id=57801

        Updated progress-bar-value-pseudo-element.html to have wider coverage and
        follow pseudo class change.

        * fast/dom/HTMLProgressElement/progress-bar-value-pseudo-element.html:
        * platform/chromium/test_expectations.txt:
        * platform/mac/fast/dom/HTMLProgressElement/progress-bar-value-pseudo-element-expected.checksum:
        * platform/mac/fast/dom/HTMLProgressElement/progress-bar-value-pseudo-element-expected.png:
        * platform/mac/fast/dom/HTMLProgressElement/progress-bar-value-pseudo-element-expected.txt:

2011-04-06  Adrienne Walker  <enne@google.com>

       Unreviewed, add Chromium snow leopard baseline for meter-boundary-values

        * platform/chromium-mac/fast/dom/HTMLMeterElement/meter-boundary-values-expected.png: Added.

2011-04-06  Sheriff Bot  <webkit.review.bot@gmail.com>

        Unreviewed, rolling out r83045.
        http://trac.webkit.org/changeset/83045
        https://bugs.webkit.org/show_bug.cgi?id=57953

        Broke win layout tests (Requested by podivilov on #webkit).

        * inspector/debugger/script-formatter-expected.txt: Removed.
        * inspector/debugger/script-formatter.html: Removed.
        * platform/chromium/test_expectations.txt:

2011-04-06  Andras Becsi  <abecsi@webkit.org>

        Reviewed by Darin Adler.

        Invalid color #{predefined colorName} is accepted by the CSS parser.
        https://bugs.webkit.org/show_bug.cgi?id=15360

        * editing/execCommand/16049.html: Correct testcase which relies on parsing an invalid color value as valid.
        * fast/css/invalid-predefined-color-expected.txt: Added.
        * fast/css/invalid-predefined-color.html: Added.
        * fast/css/script-tests/invalid-predefined-color.js: Added.

2011-03-30  Pavel Podivilov  <podivilov@chromium.org>

        Reviewed by Pavel Feldman.

        Web Inspector: add test for script formatter worker.
        https://bugs.webkit.org/show_bug.cgi?id=57447

        * inspector/debugger/script-formatter-expected.txt: Added.
        * inspector/debugger/script-formatter.html: Added.
        * platform/chromium/test_expectations.txt:

2011-04-06  Ryosuke Niwa  <rniwa@webkit.org>

        Reviewed by Eric Seidel.

        REGRESSION (r46914, r48764): When typing in Mail, line wrapping frequently occurs in the middle of words
        https://bugs.webkit.org/show_bug.cgi?id=57872

        Added a test insert a paragraph separator and text around tab spans. WebKit should not apply the tab span's
        style to the paragraph separator or the text.

        * editing/inserting/insert-paragraph-separator-tab-span-expected.txt: Added.
        * editing/inserting/insert-paragraph-separator-tab-span.html: Added.

2011-04-05  Alexander Pavlov  <apavlov@chromium.org>

        Reviewed by Pavel Feldman.

        Web Inspector: Range insertNode function does not update content in the inspector
        https://bugs.webkit.org/show_bug.cgi?id=57829

        * inspector/elements/modify-chardata-expected.txt:
        * inspector/elements/modify-chardata.html:

2011-04-06  Nikolas Zimmermann  <nzimmermann@rim.com>

        Reviewed by Dirk Schulze.

        getComputedTextLength always returns 0 with tspan elements
        https://bugs.webkit.org/show_bug.cgi?id=19814

        Add a testcase showing that getComputedTextLength for <tspan> works fine.

        * svg/text/tspan-getComputedTextLength-expected.txt: Added.
        * svg/text/tspan-getComputedTextLength.svg: Added.

2011-04-05  Andrey Kosyakov  <caseq@chromium.org>

        Reviewed by Yury Semikhatsky.

        Web Inspector: [Extensions API] remove inspectedPage.* events
        https://bugs.webkit.org/show_bug.cgi?id=57763

        - Removed webInspector.inspectedPage.* events
        - moved onNavigated to webInspector.resources

        * http/tests/inspector/extensions-test.js:
        (initialize_ExtensionsTest.runWhenPageLoads):
        * http/tests/inspector/inspector-test.js:
        (initialize_InspectorTest.InspectorTest.runWhenPageLoads.chainedCallback):
        (initialize_InspectorTest.InspectorTest.runWhenPageLoads):
        * inspector/extensions/extensions-api-expected.txt:
        * inspector/extensions/extensions-events-expected.txt:
        * inspector/extensions/extensions-events.html:

2011-04-05  Mikhail Naganov  <mnaganov@chromium.org>

        Reviewed by Pavel Feldman.

        Web Inspector: [Chromium] Add layout test for Summary view of detailed heap snapshots.
        https://bugs.webkit.org/show_bug.cgi?id=57856

        * http/tests/inspector/inspector-test.js:
        (initialize_InspectorTest.):
        (initialize_InspectorTest):
        * inspector/profiler/detailed-heapshots-summary-expected.txt: Added.
        * inspector/profiler/detailed-heapshots-summary.html: Added.
        * inspector/profiler/detailed-heapshots-test.js: Added.
        * platform/chromium/inspector/profiler/detailed-heapshots-summary-expected.txt: Added.

2011-04-06  Ojan Vafai  <ojan@chromium.org>

        http://trac.webkit.org/changeset/83024 incorrectly removed the mac-leopard results.
        Instead, it should have moved the results from chromium-mac to chromium-mac-leopard.

        * platform/chromium-mac-leopard/fast/box-shadow/spread-multiple-inset-expected.png: Added.
        * platform/chromium-mac-leopard/fast/html/details-add-summary-1-and-click-expected.png: Added.
        * platform/chromium-mac-leopard/fast/html/details-add-summary-1-expected.png: Added.
        * platform/chromium-mac-leopard/fast/html/details-add-summary-10-and-click-expected.png: Added.
        * platform/chromium-mac-leopard/fast/html/details-add-summary-10-expected.png: Added.
        * platform/chromium-mac-leopard/fast/html/details-add-summary-2-and-click-expected.png: Added.
        * platform/chromium-mac-leopard/fast/html/details-add-summary-2-expected.png: Added.
        * platform/chromium-mac-leopard/fast/html/details-add-summary-3-and-click-expected.png: Added.
        * platform/chromium-mac-leopard/fast/html/details-add-summary-3-expected.png: Added.
        * platform/chromium-mac-leopard/fast/html/details-add-summary-4-and-click-expected.png: Added.
        * platform/chromium-mac-leopard/fast/html/details-add-summary-4-expected.png: Added.
        * platform/chromium-mac-leopard/fast/html/details-add-summary-5-and-click-expected.png: Added.
        * platform/chromium-mac-leopard/fast/html/details-add-summary-5-expected.png: Added.
        * platform/chromium-mac-leopard/fast/html/details-add-summary-6-and-click-expected.png: Added.
        * platform/chromium-mac-leopard/fast/html/details-add-summary-6-expected.png: Added.
        * platform/chromium-mac-leopard/fast/html/details-add-summary-7-and-click-expected.png: Added.
        * platform/chromium-mac-leopard/fast/html/details-add-summary-7-expected.png: Added.
        * platform/chromium-mac-leopard/fast/html/details-add-summary-8-and-click-expected.png: Added.
        * platform/chromium-mac-leopard/fast/html/details-add-summary-8-expected.png: Added.
        * platform/chromium-mac-leopard/fast/html/details-add-summary-9-and-click-expected.png: Added.
        * platform/chromium-mac-leopard/fast/html/details-add-summary-9-expected.png: Added.
        * platform/chromium-mac-leopard/fast/html/details-no-summary1-expected.png: Added.
        * platform/chromium-mac-leopard/fast/html/details-no-summary2-expected.png: Added.
        * platform/chromium-mac-leopard/fast/html/details-no-summary3-expected.png: Added.
        * platform/chromium-mac-leopard/fast/html/details-no-summary4-expected.png: Added.
        * platform/chromium-mac-leopard/fast/html/details-open-javascript-expected.png: Added.
        * platform/chromium-mac-leopard/fast/html/details-open1-expected.png: Added.
        * platform/chromium-mac-leopard/fast/html/details-open2-expected.png: Added.
        * platform/chromium-mac-leopard/fast/html/details-open3-expected.png: Added.
        * platform/chromium-mac-leopard/fast/html/details-open4-expected.png: Added.
        * platform/chromium-mac-leopard/fast/html/details-open5-expected.png: Added.
        * platform/chromium-mac-leopard/fast/html/details-open6-expected.png: Added.
        * platform/chromium-mac-leopard/fast/html/details-position-expected.png: Added.
        * platform/chromium-mac-leopard/fast/html/details-remove-summary-1-and-click-expected.png: Added.
        * platform/chromium-mac-leopard/fast/html/details-remove-summary-1-expected.png: Added.
        * platform/chromium-mac-leopard/fast/html/details-remove-summary-2-and-click-expected.png: Added.
        * platform/chromium-mac-leopard/fast/html/details-remove-summary-2-expected.png: Added.
        * platform/chromium-mac-leopard/fast/html/details-remove-summary-3-and-click-expected.png: Added.
        * platform/chromium-mac-leopard/fast/html/details-remove-summary-3-expected.png: Added.
        * platform/chromium-mac-leopard/fast/html/details-remove-summary-4-and-click-expected.png: Added.
        * platform/chromium-mac-leopard/fast/html/details-remove-summary-4-expected.png: Added.
        * platform/chromium-mac-leopard/fast/html/details-remove-summary-5-and-click-expected.png: Added.
        * platform/chromium-mac-leopard/fast/html/details-remove-summary-5-expected.png: Added.
        * platform/chromium-mac-leopard/fast/html/details-remove-summary-6-and-click-expected.png: Added.
        * platform/chromium-mac-leopard/fast/html/details-remove-summary-6-expected.png: Added.
        * platform/chromium-mac-leopard/fast/html/details-writing-mode-expected.png: Added.
        * platform/chromium-mac-leopard/fast/inline-block/inline-block-vertical-align-expected.png: Added.
        * platform/chromium-mac-leopard/fast/multicol/layers-in-multicol-expected.png: Added.
        * platform/chromium-mac-leopard/fast/ruby/ruby-beforeafter-expected.png: Added.
        * platform/chromium-mac-leopard/fast/ruby/ruby-length-expected.png: Added.
        * platform/chromium-mac-leopard/fast/ruby/ruby-run-break-expected.png: Added.
        * platform/chromium-mac-leopard/fast/ruby/ruby-runs-expected.png: Added.
        * platform/chromium-mac-leopard/fast/ruby/ruby-runs-spans-expected.png: Added.
        * platform/chromium-mac-leopard/fast/ruby/ruby-trailing-expected.png: Added.
        * platform/chromium-mac-leopard/fast/ruby/rubyDOM-insert-rt-expected.png: Added.
        * platform/chromium-mac-leopard/fast/ruby/rubyDOM-insert-text1-expected.png: Added.
        * platform/chromium-mac-leopard/fast/ruby/rubyDOM-insert-text2-expected.png: Added.
        * platform/chromium-mac-leopard/fast/ruby/rubyDOM-insert-text3-expected.png: Added.
        * platform/chromium-mac-leopard/fast/ruby/rubyDOM-remove-rt1-expected.png: Added.
        * platform/chromium-mac-leopard/fast/ruby/rubyDOM-remove-rt2-expected.png: Added.
        * platform/chromium-mac-leopard/fast/ruby/rubyDOM-remove-text1-expected.png: Added.

2011-04-06  Nikolas Zimmermann  <nzimmermann@rim.com>

        Not reviewed.

        Add missing pixel test result.

        * platform/mac/svg/custom/use-in-symbol-with-offset-expected.checksum: Added.
        * platform/mac/svg/custom/use-in-symbol-with-offset-expected.png: Added.

2011-04-06  James Kozianski  <koz@chromium.org>

        [chromium] Add expectations for failing GPU tests.
        https://bugs.webkit.org/show_bug.cgi?id=57926

        * platform/chromium/test_expectations.txt:

2011-04-06  Naoki Takano  <takano.naoki@gmail.com>

        Reviewed by Ryosuke Niwa.

        REGRESSION(r81328): Null pointer crash in canAppendNewLineFeed when selection isn't inside an editable element
        https://bugs.webkit.org/show_bug.cgi?id=57755

        * editing/execCommand/insert-line-break-onload-expected.txt: Added.
        * editing/execCommand/insert-line-break-onload.html: Added to check calling InsertLineBreak without any crash.

2011-04-05  James Kozianski  <koz@chromium.org>

        [chromium] Rebaseline images after r82969

        Rebaseline for missed linux test in r83019.

        * platform/chromium-linux/fast/css/text-input-with-webkit-border-radius-expected.checksum: Removed.
        * platform/chromium-linux/fast/css/text-input-with-webkit-border-radius-expected.png:

2011-04-05  Shane Stephens  <shanestephens@google.com>

        Reviewed by Ojan Vafai.

        [Chromium] Greening the Mac 10.5 and 10.6 trees.
        https://bugs.webkit.org/show_bug.cgi?id=57924

        Rebaselines a bunch of tests with differences due to text anti-aliasing.
        (Prepared using rebaseline script)

        * platform/chromium-mac/fast/box-shadow/spread-multiple-inset-expected.checksum: Removed.
        * platform/chromium-mac/fast/box-shadow/spread-multiple-inset-expected.png: Removed.
        * platform/chromium-mac/fast/dom/HTMLMeterElement/meter-boundary-values-expected.png: Added.
        * platform/chromium-mac/fast/html/details-add-summary-1-and-click-expected.png: Removed.
        * platform/chromium-mac/fast/html/details-add-summary-1-expected.png: Removed.
        * platform/chromium-mac/fast/html/details-add-summary-10-and-click-expected.png: Removed.
        * platform/chromium-mac/fast/html/details-add-summary-10-expected.png: Removed.
        * platform/chromium-mac/fast/html/details-add-summary-2-and-click-expected.png: Removed.
        * platform/chromium-mac/fast/html/details-add-summary-2-expected.png: Removed.
        * platform/chromium-mac/fast/html/details-add-summary-3-and-click-expected.png: Removed.
        * platform/chromium-mac/fast/html/details-add-summary-3-expected.png: Removed.
        * platform/chromium-mac/fast/html/details-add-summary-4-and-click-expected.png: Removed.
        * platform/chromium-mac/fast/html/details-add-summary-4-expected.png: Removed.
        * platform/chromium-mac/fast/html/details-add-summary-5-and-click-expected.png: Removed.
        * platform/chromium-mac/fast/html/details-add-summary-5-expected.png: Removed.
        * platform/chromium-mac/fast/html/details-add-summary-6-and-click-expected.png: Removed.
        * platform/chromium-mac/fast/html/details-add-summary-6-expected.png: Removed.
        * platform/chromium-mac/fast/html/details-add-summary-7-and-click-expected.png: Removed.
        * platform/chromium-mac/fast/html/details-add-summary-7-expected.png: Removed.
        * platform/chromium-mac/fast/html/details-add-summary-8-and-click-expected.png: Removed.
        * platform/chromium-mac/fast/html/details-add-summary-8-expected.png: Removed.
        * platform/chromium-mac/fast/html/details-add-summary-9-and-click-expected.png: Removed.
        * platform/chromium-mac/fast/html/details-add-summary-9-expected.png: Removed.
        * platform/chromium-mac/fast/html/details-no-summary1-expected.png: Removed.
        * platform/chromium-mac/fast/html/details-no-summary2-expected.png: Removed.
        * platform/chromium-mac/fast/html/details-no-summary3-expected.png: Removed.
        * platform/chromium-mac/fast/html/details-no-summary4-expected.png: Removed.
        * platform/chromium-mac/fast/html/details-open-javascript-expected.png: Removed.
        * platform/chromium-mac/fast/html/details-open1-expected.png: Removed.
        * platform/chromium-mac/fast/html/details-open2-expected.png: Removed.
        * platform/chromium-mac/fast/html/details-open3-expected.png: Removed.
        * platform/chromium-mac/fast/html/details-open4-expected.png: Removed.
        * platform/chromium-mac/fast/html/details-open5-expected.png: Removed.
        * platform/chromium-mac/fast/html/details-open6-expected.png: Removed.
        * platform/chromium-mac/fast/html/details-position-expected.png: Removed.
        * platform/chromium-mac/fast/html/details-remove-summary-1-and-click-expected.png: Removed.
        * platform/chromium-mac/fast/html/details-remove-summary-1-expected.png: Removed.
        * platform/chromium-mac/fast/html/details-remove-summary-2-and-click-expected.png: Removed.
        * platform/chromium-mac/fast/html/details-remove-summary-2-expected.png: Removed.
        * platform/chromium-mac/fast/html/details-remove-summary-3-and-click-expected.png: Removed.
        * platform/chromium-mac/fast/html/details-remove-summary-3-expected.png: Removed.
        * platform/chromium-mac/fast/html/details-remove-summary-4-and-click-expected.png: Removed.
        * platform/chromium-mac/fast/html/details-remove-summary-4-expected.png: Removed.
        * platform/chromium-mac/fast/html/details-remove-summary-5-and-click-expected.png: Removed.
        * platform/chromium-mac/fast/html/details-remove-summary-5-expected.png: Removed.
        * platform/chromium-mac/fast/html/details-remove-summary-6-and-click-expected.png: Removed.
        * platform/chromium-mac/fast/html/details-remove-summary-6-expected.png: Removed.
        * platform/chromium-mac/fast/html/details-writing-mode-expected.png: Removed.
        * platform/chromium-mac/fast/inline-block/inline-block-vertical-align-expected.checksum: Removed.
        * platform/chromium-mac/fast/inline-block/inline-block-vertical-align-expected.png: Removed.
        * platform/chromium-mac/fast/multicol/layers-in-multicol-expected.checksum: Removed.
        * platform/chromium-mac/fast/multicol/layers-in-multicol-expected.png: Removed.
        * platform/chromium-mac/fast/multicol/nested-columns-expected.checksum: Removed.
        * platform/chromium-mac/fast/multicol/nested-columns-expected.png:
        * platform/chromium-mac/fast/repaint/list-marker-expected.checksum: Removed.
        * platform/chromium-mac/fast/repaint/list-marker-expected.png:
        * platform/chromium-mac/fast/ruby/ruby-beforeafter-expected.png: Removed.
        * platform/chromium-mac/fast/ruby/ruby-length-expected.png: Removed.
        * platform/chromium-mac/fast/ruby/ruby-run-break-expected.png: Removed.
        * platform/chromium-mac/fast/ruby/ruby-runs-expected.png: Removed.
        * platform/chromium-mac/fast/ruby/ruby-runs-spans-expected.png: Removed.
        * platform/chromium-mac/fast/ruby/ruby-trailing-expected.png: Removed.
        * platform/chromium-mac/fast/ruby/rubyDOM-insert-rt-expected.png: Removed.
        * platform/chromium-mac/fast/ruby/rubyDOM-insert-text1-expected.png: Removed.
        * platform/chromium-mac/fast/ruby/rubyDOM-insert-text2-expected.png: Removed.
        * platform/chromium-mac/fast/ruby/rubyDOM-insert-text3-expected.png: Removed.
        * platform/chromium-mac/fast/ruby/rubyDOM-remove-rt1-expected.png: Removed.
        * platform/chromium-mac/fast/ruby/rubyDOM-remove-rt2-expected.png: Removed.
        * platform/chromium-mac/fast/ruby/rubyDOM-remove-text1-expected.png: Removed.
        * platform/chromium/test_expectations.txt:
        * platform/mac/fast/css/background-clip-values-expected.checksum: Added.
        * platform/mac/fast/css/background-clip-values-expected.png: Added.
        * platform/mac/fast/css/bidi-override-in-anonymous-block-expected.checksum: Added.
        * platform/mac/fast/css/bidi-override-in-anonymous-block-expected.png: Added.
        * platform/mac/fast/gradients/gradient-after-transparent-border-expected.checksum: Added.
        * platform/mac/fast/gradients/gradient-after-transparent-border-expected.png: Added.
        * platform/mac/fast/images/gray-scale-jpeg-with-color-profile-expected.checksum: Added.
        * platform/mac/fast/images/gray-scale-jpeg-with-color-profile-expected.png: Added.
        * platform/mac/media/controls-without-preload-expected.checksum: Added.
        * platform/mac/media/controls-without-preload-expected.png: Added.

2011-04-05  James Kozianski  <koz@chromium.org>

        Rebaseline images after r82969
        https://bugs.webkit.org/show_bug.cgi?id=57917

        Rebaseline for r82969, which causes slight changes in rounded corner rendering.

        * platform/chromium-linux/fast/blockflow/border-radius-clipping-vertical-lr-expected.checksum: Removed.
        * platform/chromium-linux/fast/blockflow/border-radius-clipping-vertical-lr-expected.png:
        * platform/chromium-linux/fast/blockflow/box-shadow-horizontal-bt-expected.checksum: Removed.
        * platform/chromium-linux/fast/blockflow/box-shadow-horizontal-bt-expected.png:
        * platform/chromium-linux/fast/blockflow/box-shadow-vertical-lr-expected.checksum: Removed.
        * platform/chromium-linux/fast/blockflow/box-shadow-vertical-lr-expected.png:
        * platform/chromium-linux/fast/blockflow/box-shadow-vertical-rl-expected.checksum: Removed.
        * platform/chromium-linux/fast/blockflow/box-shadow-vertical-rl-expected.png:
        * platform/chromium-linux/fast/borders/border-radius-huge-assert-expected.checksum: Removed.
        * platform/chromium-linux/fast/borders/border-radius-huge-assert-expected.png:
        * platform/chromium-linux/fast/borders/borderRadiusAllStylesAllCorners-expected.checksum: Removed.
        * platform/chromium-linux/fast/borders/borderRadiusAllStylesAllCorners-expected.png:
        * platform/chromium-linux/fast/borders/borderRadiusArcs01-expected.checksum: Removed.
        * platform/chromium-linux/fast/borders/borderRadiusArcs01-expected.png:
        * platform/chromium-linux/fast/borders/borderRadiusDashed01-expected.checksum: Removed.
        * platform/chromium-linux/fast/borders/borderRadiusDashed01-expected.png:
        * platform/chromium-linux/fast/borders/borderRadiusDashed02-expected.checksum: Removed.
        * platform/chromium-linux/fast/borders/borderRadiusDashed02-expected.png:
        * platform/chromium-linux/fast/borders/borderRadiusDashed03-expected.checksum: Removed.
        * platform/chromium-linux/fast/borders/borderRadiusDashed03-expected.png:
        * platform/chromium-linux/fast/borders/borderRadiusDotted01-expected.checksum: Removed.
        * platform/chromium-linux/fast/borders/borderRadiusDotted01-expected.png:
        * platform/chromium-linux/fast/borders/borderRadiusDotted02-expected.checksum: Removed.
        * platform/chromium-linux/fast/borders/borderRadiusDotted02-expected.png:
        * platform/chromium-linux/fast/borders/borderRadiusDotted03-expected.checksum: Removed.
        * platform/chromium-linux/fast/borders/borderRadiusDotted03-expected.png:
        * platform/chromium-linux/fast/borders/borderRadiusDouble01-expected.checksum: Removed.
        * platform/chromium-linux/fast/borders/borderRadiusDouble01-expected.png:
        * platform/chromium-linux/fast/borders/borderRadiusDouble02-expected.checksum: Removed.
        * platform/chromium-linux/fast/borders/borderRadiusDouble02-expected.png:
        * platform/chromium-linux/fast/borders/borderRadiusDouble03-expected.checksum: Removed.
        * platform/chromium-linux/fast/borders/borderRadiusDouble03-expected.png:
        * platform/chromium-linux/fast/borders/borderRadiusGroove01-expected.checksum: Removed.
        * platform/chromium-linux/fast/borders/borderRadiusGroove01-expected.png:
        * platform/chromium-linux/fast/borders/borderRadiusGroove02-expected.checksum: Removed.
        * platform/chromium-linux/fast/borders/borderRadiusGroove02-expected.png:
        * platform/chromium-linux/fast/borders/borderRadiusInset01-expected.checksum: Removed.
        * platform/chromium-linux/fast/borders/borderRadiusInset01-expected.png:
        * platform/chromium-linux/fast/borders/borderRadiusInvalidColor-expected.checksum: Removed.
        * platform/chromium-linux/fast/borders/borderRadiusInvalidColor-expected.png:
        * platform/chromium-linux/fast/borders/borderRadiusOutset01-expected.checksum: Removed.
        * platform/chromium-linux/fast/borders/borderRadiusOutset01-expected.png:
        * platform/chromium-linux/fast/borders/borderRadiusRidge01-expected.checksum: Removed.
        * platform/chromium-linux/fast/borders/borderRadiusRidge01-expected.png:
        * platform/chromium-linux/fast/borders/borderRadiusSolid01-expected.checksum: Removed.
        * platform/chromium-linux/fast/borders/borderRadiusSolid01-expected.png:
        * platform/chromium-linux/fast/borders/borderRadiusSolid02-expected.checksum: Removed.
        * platform/chromium-linux/fast/borders/borderRadiusSolid02-expected.png:
        * platform/chromium-linux/fast/borders/borderRadiusSolid03-expected.checksum: Removed.
        * platform/chromium-linux/fast/borders/borderRadiusSolid03-expected.png:
        * platform/chromium-linux/fast/box-shadow/border-radius-big-expected.checksum: Removed.
        * platform/chromium-linux/fast/box-shadow/border-radius-big-expected.png:
        * platform/chromium-linux/fast/box-shadow/inset-expected.checksum: Removed.
        * platform/chromium-linux/fast/box-shadow/inset-expected.png:
        * platform/chromium-linux/fast/box-shadow/inset-with-extraordinary-radii-and-border-expected.checksum: Removed.
        * platform/chromium-linux/fast/box-shadow/inset-with-extraordinary-radii-and-border-expected.png:
        * platform/chromium-linux/fast/box-shadow/spread-expected.checksum: Removed.
        * platform/chromium-linux/fast/box-shadow/spread-expected.png:
        * platform/chromium-linux/fast/box-shadow/spread-multiple-inset-expected.checksum: Removed.
        * platform/chromium-linux/fast/box-shadow/spread-multiple-inset-expected.png:
        * platform/chromium-linux/fast/box-shadow/spread-multiple-normal-expected.checksum: Removed.
        * platform/chromium-linux/fast/box-shadow/spread-multiple-normal-expected.png:
        * platform/chromium-linux/fast/forms/basic-selects-expected.checksum: Removed.
        * platform/chromium-linux/fast/forms/basic-selects-expected.png:
        * platform/chromium-linux/fast/layers/video-layer-expected.checksum: Removed.
        * platform/chromium-linux/fast/layers/video-layer-expected.png:
        * platform/chromium-linux/fast/overflow/border-radius-clipping-expected.checksum: Removed.
        * platform/chromium-linux/fast/overflow/border-radius-clipping-expected.png:
        * platform/chromium-linux/fast/repaint/border-radius-repaint-expected.checksum: Removed.
        * platform/chromium-linux/fast/repaint/border-radius-repaint-expected.png:
        * platform/chromium-linux/fast/replaced/border-radius-clip-expected.checksum: Removed.
        * platform/chromium-linux/fast/replaced/border-radius-clip-expected.png:
        * platform/chromium-linux/fast/transforms/shadows-expected.checksum: Removed.
        * platform/chromium-linux/fast/transforms/shadows-expected.png:
        * platform/chromium-linux/media/audio-controls-rendering-expected.checksum: Removed.
        * platform/chromium-linux/media/audio-controls-rendering-expected.png:
        * platform/chromium-linux/media/controls-after-reload-expected.checksum: Removed.
        * platform/chromium-linux/media/controls-after-reload-expected.png:
        * platform/chromium-linux/media/controls-strict-expected.checksum: Removed.
        * platform/chromium-linux/media/controls-strict-expected.png:
        * platform/chromium-linux/media/controls-styling-expected.checksum: Removed.
        * platform/chromium-linux/media/controls-styling-expected.png:
        * platform/chromium-linux/media/controls-without-preload-expected.checksum: Removed.
        * platform/chromium-linux/media/controls-without-preload-expected.png:
        * platform/chromium-linux/media/media-document-audio-repaint-expected.checksum: Removed.
        * platform/chromium-linux/media/media-document-audio-repaint-expected.png:
        * platform/chromium-linux/media/video-controls-rendering-expected.checksum: Removed.
        * platform/chromium-linux/media/video-controls-rendering-expected.png:
        * platform/chromium-linux/media/video-display-toggle-expected.checksum: Removed.
        * platform/chromium-linux/media/video-display-toggle-expected.png:
        * platform/chromium-linux/media/video-empty-source-expected.checksum: Removed.
        * platform/chromium-linux/media/video-empty-source-expected.png:
        * platform/chromium-linux/media/video-no-audio-expected.checksum: Removed.
        * platform/chromium-linux/media/video-no-audio-expected.png:
        * platform/chromium-linux/media/video-volume-slider-expected.checksum: Removed.
        * platform/chromium-linux/media/video-volume-slider-expected.png:
        * platform/chromium-linux/media/video-zoom-controls-expected.checksum: Removed.
        * platform/chromium-linux/media/video-zoom-controls-expected.png:
        * platform/chromium-linux/svg/custom/svg-fonts-in-html-expected.checksum: Removed.
        * platform/chromium-linux/svg/custom/svg-fonts-in-html-expected.png:
        * platform/chromium-win-xp/media/controls-after-reload-expected.checksum: Removed.
        * platform/chromium-win-xp/media/controls-after-reload-expected.png: Removed.
        * platform/chromium-win-xp/media/controls-strict-expected.checksum: Removed.
        * platform/chromium-win-xp/media/controls-strict-expected.png: Removed.
        * platform/chromium-win-xp/media/controls-styling-expected.checksum: Removed.
        * platform/chromium-win-xp/media/controls-styling-expected.png: Removed.
        * platform/chromium-win-xp/media/controls-without-preload-expected.checksum: Removed.
        * platform/chromium-win-xp/media/controls-without-preload-expected.png: Removed.
        * platform/chromium-win-xp/media/video-controls-rendering-expected.checksum: Removed.
        * platform/chromium-win-xp/media/video-controls-rendering-expected.png: Removed.
        * platform/chromium-win-xp/media/video-zoom-controls-expected.checksum: Removed.
        * platform/chromium-win-xp/media/video-zoom-controls-expected.png: Removed.
        * platform/chromium-win/fast/blockflow/border-radius-clipping-vertical-lr-expected.checksum: Removed.
        * platform/chromium-win/fast/blockflow/border-radius-clipping-vertical-lr-expected.png:
        * platform/chromium-win/fast/blockflow/box-shadow-horizontal-bt-expected.checksum: Removed.
        * platform/chromium-win/fast/blockflow/box-shadow-horizontal-bt-expected.png:
        * platform/chromium-win/fast/blockflow/box-shadow-vertical-lr-expected.checksum: Removed.
        * platform/chromium-win/fast/blockflow/box-shadow-vertical-lr-expected.png:
        * platform/chromium-win/fast/blockflow/box-shadow-vertical-rl-expected.checksum: Removed.
        * platform/chromium-win/fast/blockflow/box-shadow-vertical-rl-expected.png:
        * platform/chromium-win/fast/borders/border-radius-huge-assert-expected.checksum: Removed.
        * platform/chromium-win/fast/borders/border-radius-huge-assert-expected.png:
        * platform/chromium-win/fast/borders/borderRadiusAllStylesAllCorners-expected.checksum: Removed.
        * platform/chromium-win/fast/borders/borderRadiusAllStylesAllCorners-expected.png:
        * platform/chromium-win/fast/borders/borderRadiusArcs01-expected.checksum: Removed.
        * platform/chromium-win/fast/borders/borderRadiusArcs01-expected.png:
        * platform/chromium-win/fast/borders/borderRadiusDashed01-expected.checksum: Removed.
        * platform/chromium-win/fast/borders/borderRadiusDashed01-expected.png:
        * platform/chromium-win/fast/borders/borderRadiusDashed02-expected.checksum: Removed.
        * platform/chromium-win/fast/borders/borderRadiusDashed02-expected.png:
        * platform/chromium-win/fast/borders/borderRadiusDashed03-expected.checksum: Removed.
        * platform/chromium-win/fast/borders/borderRadiusDashed03-expected.png:
        * platform/chromium-win/fast/borders/borderRadiusDotted01-expected.checksum: Removed.
        * platform/chromium-win/fast/borders/borderRadiusDotted01-expected.png:
        * platform/chromium-win/fast/borders/borderRadiusDotted02-expected.checksum: Removed.
        * platform/chromium-win/fast/borders/borderRadiusDotted02-expected.png:
        * platform/chromium-win/fast/borders/borderRadiusDotted03-expected.checksum: Removed.
        * platform/chromium-win/fast/borders/borderRadiusDotted03-expected.png:
        * platform/chromium-win/fast/borders/borderRadiusDouble01-expected.checksum: Removed.
        * platform/chromium-win/fast/borders/borderRadiusDouble01-expected.png:
        * platform/chromium-win/fast/borders/borderRadiusDouble02-expected.checksum: Removed.
        * platform/chromium-win/fast/borders/borderRadiusDouble02-expected.png:
        * platform/chromium-win/fast/borders/borderRadiusDouble03-expected.checksum: Removed.
        * platform/chromium-win/fast/borders/borderRadiusDouble03-expected.png:
        * platform/chromium-win/fast/borders/borderRadiusGroove01-expected.checksum: Removed.
        * platform/chromium-win/fast/borders/borderRadiusGroove01-expected.png:
        * platform/chromium-win/fast/borders/borderRadiusGroove02-expected.checksum: Removed.
        * platform/chromium-win/fast/borders/borderRadiusGroove02-expected.png:
        * platform/chromium-win/fast/borders/borderRadiusInset01-expected.checksum: Removed.
        * platform/chromium-win/fast/borders/borderRadiusInset01-expected.png:
        * platform/chromium-win/fast/borders/borderRadiusInvalidColor-expected.checksum: Removed.
        * platform/chromium-win/fast/borders/borderRadiusInvalidColor-expected.png:
        * platform/chromium-win/fast/borders/borderRadiusOutset01-expected.checksum: Removed.
        * platform/chromium-win/fast/borders/borderRadiusOutset01-expected.png:
        * platform/chromium-win/fast/borders/borderRadiusRidge01-expected.checksum: Removed.
        * platform/chromium-win/fast/borders/borderRadiusRidge01-expected.png:
        * platform/chromium-win/fast/borders/borderRadiusSolid01-expected.checksum: Removed.
        * platform/chromium-win/fast/borders/borderRadiusSolid01-expected.png:
        * platform/chromium-win/fast/borders/borderRadiusSolid02-expected.checksum: Removed.
        * platform/chromium-win/fast/borders/borderRadiusSolid02-expected.png:
        * platform/chromium-win/fast/borders/borderRadiusSolid03-expected.checksum: Removed.
        * platform/chromium-win/fast/borders/borderRadiusSolid03-expected.png:
        * platform/chromium-win/fast/box-shadow/border-radius-big-expected.checksum: Removed.
        * platform/chromium-win/fast/box-shadow/border-radius-big-expected.png:
        * platform/chromium-win/fast/box-shadow/inset-expected.checksum: Removed.
        * platform/chromium-win/fast/box-shadow/inset-expected.png:
        * platform/chromium-win/fast/box-shadow/inset-with-extraordinary-radii-and-border-expected.checksum: Removed.
        * platform/chromium-win/fast/box-shadow/inset-with-extraordinary-radii-and-border-expected.png:
        * platform/chromium-win/fast/box-shadow/spread-expected.checksum: Removed.
        * platform/chromium-win/fast/box-shadow/spread-expected.png:
        * platform/chromium-win/fast/box-shadow/spread-multiple-inset-expected.checksum: Removed.
        * platform/chromium-win/fast/box-shadow/spread-multiple-inset-expected.png:
        * platform/chromium-win/fast/box-shadow/spread-multiple-normal-expected.checksum: Removed.
        * platform/chromium-win/fast/box-shadow/spread-multiple-normal-expected.png:
        * platform/chromium-win/fast/forms/basic-selects-expected.checksum: Removed.
        * platform/chromium-win/fast/forms/basic-selects-expected.png:
        * platform/chromium-win/fast/layers/video-layer-expected.checksum: Removed.
        * platform/chromium-win/fast/layers/video-layer-expected.png:
        * platform/chromium-win/fast/overflow/border-radius-clipping-expected.checksum: Removed.
        * platform/chromium-win/fast/overflow/border-radius-clipping-expected.png:
        * platform/chromium-win/fast/repaint/border-radius-repaint-expected.checksum: Removed.
        * platform/chromium-win/fast/repaint/border-radius-repaint-expected.png:
        * platform/chromium-win/fast/replaced/border-radius-clip-expected.checksum: Removed.
        * platform/chromium-win/fast/replaced/border-radius-clip-expected.png:
        * platform/chromium-win/fast/transforms/shadows-expected.checksum: Removed.
        * platform/chromium-win/fast/transforms/shadows-expected.png:
        * platform/chromium-win/media/audio-controls-rendering-expected.checksum: Removed.
        * platform/chromium-win/media/audio-controls-rendering-expected.png:
        * platform/chromium-win/media/controls-after-reload-expected.checksum: Removed.
        * platform/chromium-win/media/controls-after-reload-expected.png:
        * platform/chromium-win/media/controls-strict-expected.checksum: Removed.
        * platform/chromium-win/media/controls-strict-expected.png:
        * platform/chromium-win/media/controls-styling-expected.checksum: Removed.
        * platform/chromium-win/media/controls-styling-expected.png:
        * platform/chromium-win/media/controls-without-preload-expected.checksum: Removed.
        * platform/chromium-win/media/controls-without-preload-expected.png:
        * platform/chromium-win/media/media-document-audio-repaint-expected.checksum: Removed.
        * platform/chromium-win/media/media-document-audio-repaint-expected.png:
        * platform/chromium-win/media/video-controls-rendering-expected.checksum: Removed.
        * platform/chromium-win/media/video-controls-rendering-expected.png:
        * platform/chromium-win/media/video-display-toggle-expected.checksum: Removed.
        * platform/chromium-win/media/video-display-toggle-expected.png:
        * platform/chromium-win/media/video-empty-source-expected.checksum: Removed.
        * platform/chromium-win/media/video-empty-source-expected.png:
        * platform/chromium-win/media/video-no-audio-expected.checksum: Removed.
        * platform/chromium-win/media/video-no-audio-expected.png:
        * platform/chromium-win/media/video-volume-slider-expected.checksum: Removed.
        * platform/chromium-win/media/video-volume-slider-expected.png:
        * platform/chromium-win/media/video-zoom-controls-expected.checksum: Removed.
        * platform/chromium-win/media/video-zoom-controls-expected.png:
        * platform/chromium-win/svg/custom/svg-fonts-in-html-expected.checksum: Removed.
        * platform/chromium-win/svg/custom/svg-fonts-in-html-expected.png:

2011-04-05  Kent Tamura  <tkent@chromium.org>

        [Chromium] Update expectation images for a Skia rounded rectangle change (r83002).
        https://bugs.webkit.org/show_bug.cgi?id=57907

        * platform/chromium-linux/fast/blockflow/border-radius-clipping-vertical-lr-expected.checksum: Removed.
        * platform/chromium-linux/fast/blockflow/border-radius-clipping-vertical-lr-expected.png:
        * platform/chromium-linux/fast/blockflow/box-shadow-horizontal-bt-expected.checksum: Removed.
        * platform/chromium-linux/fast/blockflow/box-shadow-horizontal-bt-expected.png:
        * platform/chromium-linux/fast/blockflow/box-shadow-vertical-lr-expected.checksum: Removed.
        * platform/chromium-linux/fast/blockflow/box-shadow-vertical-lr-expected.png:
        * platform/chromium-linux/fast/blockflow/box-shadow-vertical-rl-expected.checksum: Removed.
        * platform/chromium-linux/fast/blockflow/box-shadow-vertical-rl-expected.png:
        * platform/chromium-linux/fast/borders/border-radius-huge-assert-expected.checksum: Removed.
        * platform/chromium-linux/fast/borders/border-radius-huge-assert-expected.png:
        * platform/chromium-linux/fast/borders/borderRadiusAllStylesAllCorners-expected.checksum: Removed.
        * platform/chromium-linux/fast/borders/borderRadiusAllStylesAllCorners-expected.png:
        * platform/chromium-linux/fast/borders/borderRadiusArcs01-expected.checksum: Removed.
        * platform/chromium-linux/fast/borders/borderRadiusArcs01-expected.png:
        * platform/chromium-linux/fast/borders/borderRadiusDashed01-expected.checksum: Removed.
        * platform/chromium-linux/fast/borders/borderRadiusDashed01-expected.png:
        * platform/chromium-linux/fast/borders/borderRadiusDashed02-expected.checksum: Removed.
        * platform/chromium-linux/fast/borders/borderRadiusDashed02-expected.png:
        * platform/chromium-linux/fast/borders/borderRadiusDashed03-expected.checksum: Removed.
        * platform/chromium-linux/fast/borders/borderRadiusDashed03-expected.png:
        * platform/chromium-linux/fast/borders/borderRadiusDotted01-expected.checksum: Removed.
        * platform/chromium-linux/fast/borders/borderRadiusDotted01-expected.png:
        * platform/chromium-linux/fast/borders/borderRadiusDotted02-expected.checksum: Removed.
        * platform/chromium-linux/fast/borders/borderRadiusDotted02-expected.png:
        * platform/chromium-linux/fast/borders/borderRadiusDotted03-expected.checksum: Removed.
        * platform/chromium-linux/fast/borders/borderRadiusDotted03-expected.png:
        * platform/chromium-linux/fast/borders/borderRadiusDouble01-expected.checksum: Removed.
        * platform/chromium-linux/fast/borders/borderRadiusDouble01-expected.png:
        * platform/chromium-linux/fast/borders/borderRadiusDouble02-expected.checksum: Removed.
        * platform/chromium-linux/fast/borders/borderRadiusDouble02-expected.png:
        * platform/chromium-linux/fast/borders/borderRadiusDouble03-expected.checksum: Removed.
        * platform/chromium-linux/fast/borders/borderRadiusDouble03-expected.png:
        * platform/chromium-linux/fast/borders/borderRadiusGroove01-expected.checksum: Removed.
        * platform/chromium-linux/fast/borders/borderRadiusGroove01-expected.png:
        * platform/chromium-linux/fast/borders/borderRadiusGroove02-expected.checksum: Removed.
        * platform/chromium-linux/fast/borders/borderRadiusGroove02-expected.png:
        * platform/chromium-linux/fast/borders/borderRadiusInset01-expected.checksum: Removed.
        * platform/chromium-linux/fast/borders/borderRadiusInset01-expected.png:
        * platform/chromium-linux/fast/borders/borderRadiusInvalidColor-expected.checksum: Removed.
        * platform/chromium-linux/fast/borders/borderRadiusInvalidColor-expected.png:
        * platform/chromium-linux/fast/borders/borderRadiusOutset01-expected.checksum: Removed.
        * platform/chromium-linux/fast/borders/borderRadiusOutset01-expected.png:
        * platform/chromium-linux/fast/borders/borderRadiusRidge01-expected.checksum: Removed.
        * platform/chromium-linux/fast/borders/borderRadiusRidge01-expected.png:
        * platform/chromium-linux/fast/borders/borderRadiusSolid01-expected.checksum: Removed.
        * platform/chromium-linux/fast/borders/borderRadiusSolid01-expected.png:
        * platform/chromium-linux/fast/borders/borderRadiusSolid02-expected.checksum: Removed.
        * platform/chromium-linux/fast/borders/borderRadiusSolid02-expected.png:
        * platform/chromium-linux/fast/borders/borderRadiusSolid03-expected.checksum: Removed.
        * platform/chromium-linux/fast/borders/borderRadiusSolid03-expected.png:
        * platform/chromium-linux/fast/box-shadow/border-radius-big-expected.checksum: Removed.
        * platform/chromium-linux/fast/box-shadow/border-radius-big-expected.png:
        * platform/chromium-linux/fast/box-shadow/inset-expected.checksum: Removed.
        * platform/chromium-linux/fast/box-shadow/inset-expected.png:
        * platform/chromium-linux/fast/box-shadow/inset-with-extraordinary-radii-and-border-expected.checksum: Removed.
        * platform/chromium-linux/fast/box-shadow/inset-with-extraordinary-radii-and-border-expected.png:
        * platform/chromium-linux/fast/box-shadow/spread-expected.checksum: Removed.
        * platform/chromium-linux/fast/box-shadow/spread-expected.png:
        * platform/chromium-linux/fast/box-shadow/spread-multiple-inset-expected.checksum: Removed.
        * platform/chromium-linux/fast/box-shadow/spread-multiple-inset-expected.png:
        * platform/chromium-linux/fast/box-shadow/spread-multiple-normal-expected.checksum: Removed.
        * platform/chromium-linux/fast/box-shadow/spread-multiple-normal-expected.png:
        * platform/chromium-linux/fast/forms/basic-selects-expected.checksum: Removed.
        * platform/chromium-linux/fast/forms/basic-selects-expected.png:
        * platform/chromium-linux/fast/overflow/border-radius-clipping-expected.checksum: Removed.
        * platform/chromium-linux/fast/overflow/border-radius-clipping-expected.png:
        * platform/chromium-linux/fast/repaint/border-radius-repaint-expected.checksum: Removed.
        * platform/chromium-linux/fast/repaint/border-radius-repaint-expected.png:
        * platform/chromium-linux/fast/replaced/border-radius-clip-expected.checksum: Removed.
        * platform/chromium-linux/fast/replaced/border-radius-clip-expected.png:
        * platform/chromium-linux/fast/transforms/shadows-expected.checksum: Removed.
        * platform/chromium-linux/fast/transforms/shadows-expected.png:
        * platform/chromium-linux/svg/custom/svg-fonts-in-html-expected.checksum: Removed.
        * platform/chromium-linux/svg/custom/svg-fonts-in-html-expected.png:
        * platform/chromium-win/fast/blockflow/border-radius-clipping-vertical-lr-expected.checksum: Removed.
        * platform/chromium-win/fast/blockflow/border-radius-clipping-vertical-lr-expected.png:
        * platform/chromium-win/fast/blockflow/box-shadow-horizontal-bt-expected.checksum: Removed.
        * platform/chromium-win/fast/blockflow/box-shadow-horizontal-bt-expected.png:
        * platform/chromium-win/fast/blockflow/box-shadow-vertical-lr-expected.checksum: Removed.
        * platform/chromium-win/fast/blockflow/box-shadow-vertical-lr-expected.png:
        * platform/chromium-win/fast/blockflow/box-shadow-vertical-rl-expected.checksum: Removed.
        * platform/chromium-win/fast/blockflow/box-shadow-vertical-rl-expected.png:
        * platform/chromium-win/fast/borders/border-radius-huge-assert-expected.checksum: Removed.
        * platform/chromium-win/fast/borders/border-radius-huge-assert-expected.png:
        * platform/chromium-win/fast/borders/borderRadiusAllStylesAllCorners-expected.checksum: Removed.
        * platform/chromium-win/fast/borders/borderRadiusAllStylesAllCorners-expected.png:
        * platform/chromium-win/fast/borders/borderRadiusArcs01-expected.checksum: Removed.
        * platform/chromium-win/fast/borders/borderRadiusArcs01-expected.png:
        * platform/chromium-win/fast/borders/borderRadiusDashed01-expected.checksum: Removed.
        * platform/chromium-win/fast/borders/borderRadiusDashed01-expected.png:
        * platform/chromium-win/fast/borders/borderRadiusDashed02-expected.checksum: Removed.
        * platform/chromium-win/fast/borders/borderRadiusDashed02-expected.png:
        * platform/chromium-win/fast/borders/borderRadiusDashed03-expected.checksum: Removed.
        * platform/chromium-win/fast/borders/borderRadiusDashed03-expected.png:
        * platform/chromium-win/fast/borders/borderRadiusDotted01-expected.checksum: Removed.
        * platform/chromium-win/fast/borders/borderRadiusDotted01-expected.png:
        * platform/chromium-win/fast/borders/borderRadiusDotted02-expected.checksum: Removed.
        * platform/chromium-win/fast/borders/borderRadiusDotted02-expected.png:
        * platform/chromium-win/fast/borders/borderRadiusDotted03-expected.checksum: Removed.
        * platform/chromium-win/fast/borders/borderRadiusDotted03-expected.png:
        * platform/chromium-win/fast/borders/borderRadiusDouble01-expected.checksum: Removed.
        * platform/chromium-win/fast/borders/borderRadiusDouble01-expected.png:
        * platform/chromium-win/fast/borders/borderRadiusDouble02-expected.checksum: Removed.
        * platform/chromium-win/fast/borders/borderRadiusDouble02-expected.png:
        * platform/chromium-win/fast/borders/borderRadiusDouble03-expected.checksum: Removed.
        * platform/chromium-win/fast/borders/borderRadiusDouble03-expected.png:
        * platform/chromium-win/fast/borders/borderRadiusGroove01-expected.checksum: Removed.
        * platform/chromium-win/fast/borders/borderRadiusGroove01-expected.png:
        * platform/chromium-win/fast/borders/borderRadiusGroove02-expected.checksum: Removed.
        * platform/chromium-win/fast/borders/borderRadiusGroove02-expected.png:
        * platform/chromium-win/fast/borders/borderRadiusInset01-expected.checksum: Removed.
        * platform/chromium-win/fast/borders/borderRadiusInset01-expected.png:
        * platform/chromium-win/fast/borders/borderRadiusInvalidColor-expected.checksum: Removed.
        * platform/chromium-win/fast/borders/borderRadiusInvalidColor-expected.png:
        * platform/chromium-win/fast/borders/borderRadiusOutset01-expected.checksum: Removed.
        * platform/chromium-win/fast/borders/borderRadiusOutset01-expected.png:
        * platform/chromium-win/fast/borders/borderRadiusRidge01-expected.checksum: Removed.
        * platform/chromium-win/fast/borders/borderRadiusRidge01-expected.png:
        * platform/chromium-win/fast/borders/borderRadiusSolid01-expected.checksum: Removed.
        * platform/chromium-win/fast/borders/borderRadiusSolid01-expected.png:
        * platform/chromium-win/fast/borders/borderRadiusSolid02-expected.checksum: Removed.
        * platform/chromium-win/fast/borders/borderRadiusSolid02-expected.png:
        * platform/chromium-win/fast/borders/borderRadiusSolid03-expected.checksum: Removed.
        * platform/chromium-win/fast/borders/borderRadiusSolid03-expected.png:
        * platform/chromium-win/fast/box-shadow/border-radius-big-expected.checksum: Removed.
        * platform/chromium-win/fast/box-shadow/border-radius-big-expected.png:
        * platform/chromium-win/fast/box-shadow/inset-expected.checksum: Removed.
        * platform/chromium-win/fast/box-shadow/inset-expected.png:
        * platform/chromium-win/fast/box-shadow/inset-with-extraordinary-radii-and-border-expected.checksum: Removed.
        * platform/chromium-win/fast/box-shadow/inset-with-extraordinary-radii-and-border-expected.png:
        * platform/chromium-win/fast/box-shadow/spread-expected.checksum: Removed.
        * platform/chromium-win/fast/box-shadow/spread-expected.png:
        * platform/chromium-win/fast/box-shadow/spread-multiple-inset-expected.checksum: Removed.
        * platform/chromium-win/fast/box-shadow/spread-multiple-inset-expected.png:
        * platform/chromium-win/fast/box-shadow/spread-multiple-normal-expected.checksum: Removed.
        * platform/chromium-win/fast/box-shadow/spread-multiple-normal-expected.png:
        * platform/chromium-win/fast/forms/basic-selects-expected.checksum: Removed.
        * platform/chromium-win/fast/forms/basic-selects-expected.png:
        * platform/chromium-win/fast/overflow/border-radius-clipping-expected.checksum: Removed.
        * platform/chromium-win/fast/overflow/border-radius-clipping-expected.png:
        * platform/chromium-win/fast/repaint/border-radius-repaint-expected.checksum: Removed.
        * platform/chromium-win/fast/repaint/border-radius-repaint-expected.png:
        * platform/chromium-win/fast/replaced/border-radius-clip-expected.checksum: Removed.
        * platform/chromium-win/fast/replaced/border-radius-clip-expected.png:
        * platform/chromium-win/fast/transforms/shadows-expected.checksum: Removed.
        * platform/chromium-win/fast/transforms/shadows-expected.png:
        * platform/chromium-win/svg/custom/svg-fonts-in-html-expected.checksum: Removed.
        * platform/chromium-win/svg/custom/svg-fonts-in-html-expected.png:

2011-04-05  Chang Shu  <cshu@webkit.org>

        Reviewed by Darin Adler.

        WebKitTestRunner needs layoutTestController.numberOfPages
        https://bugs.webkit.org/show_bug.cgi?id=42694

        Unskip passed tests.

        * platform/mac-wk2/Skipped:
        * platform/qt-wk2/Skipped:

2011-04-05  Adrienne Walker  <enne@google.com>

       Unreviewed, temporarily mark two tests as more generally failing.

        * platform/chromium/test_expectations.txt:

2011-04-05  Jessie Berlin  <jberlin@apple.com>

        3 tests fail on apple-macpro-6 (due to different JS MIME type) but not any other Leopard
        slaves.
        https://bugs.webkit.org/show_bug.cgi?id=56564

        Skip fast/preloader/scan-body-from-head-script.html on Leopard to get the bots green.

        * platform/mac-leopard/Skipped:

2011-04-04  Vitaly Repeshko  <vitalyr@chromium.org>

        Reviewed by Adam Barth.

        [V8] Keep dirty primitive CSS values alive.
        https://bugs.webkit.org/show_bug.cgi?id=57810

        * platform/chromium/test_expectations.txt: Mark
        fast/dom/StyleSheet/gc-inline-style-cssvalues.html as passing.

2011-04-05  Brian Weinstein  <bweinstein@apple.com>

        [Windows]  fast/blockflow/Kusa-Makura-background-canvas.html failing since introduction in r82903
        https://bugs.webkit.org/show_bug.cgi?id=57880

        Update Windows expected results (with pixel tests) to greenify the bots.

        * platform/win/fast/blockflow/Kusa-Makura-background-canvas-expected.checksum:
        * platform/win/fast/blockflow/Kusa-Makura-background-canvas-expected.png:
        * platform/win/fast/blockflow/Kusa-Makura-background-canvas-expected.txt:

2011-04-05  Jessie Berlin  <jberlin@apple.com>

        [Windows Tests] fast/dom/Window/window-property-descriptors.html failing since r82925.
        https://bugs.webkit.org/show_bug.cgi?id=57881

        Update the Windows-specific results to get the bots green.

        * platform/win/fast/dom/Window/window-property-descriptors-expected.txt:
        onformchange and onforminput were removed in r82925.

2011-04-05  Tony Chang  <tony@chromium.org>

        Unreviewed, removing the chromium-win results causes this test to
        start passing on chromium win and linux.

        * platform/chromium-win/fast/images/svg-as-tiled-background-expected.checksum: Removed.
        * platform/chromium-win/fast/images/svg-as-tiled-background-expected.png: Removed.
        * platform/chromium/test_expectations.txt:

2011-04-05  David Levin  <levin@chromium.org>

        Reviewed by Jian Li.

        [chromium] send-sliced-dragged-file.html started to crash on chromium bots
        https://bugs.webkit.org/show_bug.cgi?id=57539

        * platform/chromium/test_expectations.txt: Removed passing test
          as it has been fixed in the chromium network stack as of chromium r80114
          and it was introduced in r79905 so no need to change the chromium deps
          since it is before the regression.

2011-04-05  Adrienne Walker  <enne@google.com>

       Unreviewed, mark unexpectedly passing Linux Chromium tests as such.

        * platform/chromium/test_expectations.txt:

2011-04-05  Adrienne Walker  <enne@google.com>

       Unreviewed, mark some unexpectedly passing Chromium tests as such.

        * platform/chromium/test_expectations.txt:

2011-04-05  Adrienne Walker  <enne@google.com>

       Unreviewed, temporarily suppress Chromium failures for tests in r82947.

        * platform/chromium/test_expectations.txt:

2011-04-05  Nikolas Zimmermann  <nzimmermann@rim.com>

        Reviewed by Dirk Schulze.

        Regression: Invalid write in SVGTextLayoutEngine
        https://bugs.webkit.org/show_bug.cgi?id=57721

        * svg/text/font-size-null-assertion-expected.txt: Added.
        * svg/text/font-size-null-assertion.svg: Added.

2011-04-05  Nikolas Zimmermann  <nzimmermann@rim.com>

        Reviewed by Adam Roben & Dirk Schulze.

        text-tspan-02-b.svg from SVG 1.1 2nd edition fails
        https://bugs.webkit.org/show_bug.cgi?id=57831

        Add text-tspan-02-b.svg from SVG 1.1 2nd edition, which was buggy.
        Add reduced testcase, which exposes a bug with midpoint splitting, which is now fixed.

        * platform/mac/svg/W3C-SVG-1.1-SE/text-tspan-02-b-expected.checksum: Added.
        * platform/mac/svg/W3C-SVG-1.1-SE/text-tspan-02-b-expected.png: Added.
        * platform/mac/svg/W3C-SVG-1.1-SE/text-tspan-02-b-expected.txt: Added.
        * platform/mac/svg/text/text-midpoint-split-bug-expected.checksum: Added.
        * platform/mac/svg/text/text-midpoint-split-bug-expected.png: Added.
        * platform/mac/svg/text/text-midpoint-split-bug-expected.txt: Added.
        * svg/W3C-SVG-1.1-SE/text-tspan-02-b.svg: Added.
        * svg/text/text-midpoint-split-bug.svg: Added.

2011-04-05  Csaba Osztrogonác  <ossy@webkit.org>

        Remove onformchange and onforminput events/event handlers
        https://bugs.webkit.org/show_bug.cgi?id=55755
        <rdar://problem/9087969>

        Unreviewed. Update Qt specific expected results after r82925.

        * platform/qt/fast/dom/Window/window-properties-expected.txt:
        * platform/qt/fast/dom/Window/window-property-descriptors-expected.txt:

2011-04-05  Chang Shu  <cshu@webkit.org>

        Unreviewed.

        Unskip passed tests after bugs 57572, 57568, 42540, 42692 have been resolved.

        * platform/qt-wk2/Skipped:

2011-04-05  Pavel Podivilov  <podivilov@chromium.org>

        Unreviewed, add chromium-linux expectation for fast/ruby/overhang-vertical.html (the test changed in r82903).

        * platform/chromium-linux/fast/ruby/overhang-vertical-expected.png: Added.

2011-04-05  Pavel Podivilov  <podivilov@chromium.org>

        Unreviewed, revert bad rebaseline of english-lr-text-expected.html in r82918.

        * platform/chromium-linux/fast/blockflow/english-lr-text-expected.checksum: Added.
        * platform/chromium-win/fast/blockflow/english-lr-text-expected.checksum: Added.
        * platform/chromium-win/fast/blockflow/english-lr-text-expected.png:

2011-04-05  Alexey Proskuryakov  <ap@apple.com>

        Reviewed by Darin Adler.

        Remove onformchange and onforminput events/event handlers
        https://bugs.webkit.org/show_bug.cgi?id=55755
        <rdar://problem/9087969>

        * fast/dom/Window/window-properties-expected.txt:
        * fast/dom/Window/window-property-descriptors-expected.txt:
        * fast/forms/formchange-event-expected.txt: Removed.
        * fast/forms/formchange-event.html: Removed.
        * fast/forms/forminput-event-expected.txt: Removed.
        * fast/forms/forminput-event.html: Removed.
        * fast/forms/script-tests/formchange-event.js: Removed.
        * fast/forms/script-tests/forminput-event.js: Removed.

2011-04-05  Pavel Podivilov  <podivilov@chromium.org>

        Unreviewed, rebaseline Kusa-Makura-background-canvas.html on chromium-mac after r82903.

        * platform/chromium-mac-leopard/fast/blockflow/Kusa-Makura-background-canvas-expected.checksum: Removed.
        * platform/chromium-mac-leopard/fast/blockflow/Kusa-Makura-background-canvas-expected.png:
        * platform/chromium-mac/fast/blockflow/Kusa-Makura-background-canvas-expected.checksum: Removed.
        * platform/chromium-mac/fast/blockflow/Kusa-Makura-background-canvas-expected.png:

2011-04-05  Pavel Podivilov  <podivilov@chromium.org>

        Unreviewed, remove unnecessary checksum files for fast/ruby tests.

        * platform/chromium-linux/fast/blockflow/english-lr-text-expected.checksum: Removed.
        * platform/chromium-linux/fast/ruby/ruby-beforeafter-expected.checksum: Removed.
        * platform/chromium-linux/fast/ruby/ruby-length-expected.checksum: Removed.
        * platform/chromium-linux/fast/ruby/ruby-run-break-expected.checksum: Removed.
        * platform/chromium-linux/fast/ruby/ruby-runs-expected.checksum: Removed.
        * platform/chromium-linux/fast/ruby/ruby-runs-spans-expected.checksum: Removed.
        * platform/chromium-linux/fast/ruby/ruby-trailing-expected.checksum: Removed.
        * platform/chromium-linux/fast/ruby/rubyDOM-insert-rt-expected.checksum: Removed.
        * platform/chromium-linux/fast/ruby/rubyDOM-insert-text1-expected.checksum: Removed.
        * platform/chromium-linux/fast/ruby/rubyDOM-insert-text2-expected.checksum: Removed.
        * platform/chromium-linux/fast/ruby/rubyDOM-insert-text3-expected.checksum: Removed.
        * platform/chromium-linux/fast/ruby/rubyDOM-remove-rt1-expected.checksum: Removed.
        * platform/chromium-linux/fast/ruby/rubyDOM-remove-rt2-expected.checksum: Removed.
        * platform/chromium-linux/fast/ruby/rubyDOM-remove-text1-expected.checksum: Removed.
        * platform/chromium/test_expectations.txt:

2011-04-05  Csaba Osztrogonác  <ossy@webkit.org>

       [Qt] fast/ruby/overhang* tests fail
       https://bugs.webkit.org/show_bug.cgi?id=57824

        * platform/qt/Skipped:Add fast/ruby/overhang-horizontal.html and fast/ruby/overhang-vertical.html.

2011-04-05  Pavel Podivilov  <podivilov@chromium.org>

        Unreviewed, update fast/ruby/* chromium expectations after r82903.

        * platform/chromium-linux/fast/ruby/ruby-beforeafter-expected.png:
        * platform/chromium-linux/fast/ruby/ruby-length-expected.png:
        * platform/chromium-linux/fast/ruby/ruby-run-break-expected.png:
        * platform/chromium-linux/fast/ruby/ruby-runs-expected.png:
        * platform/chromium-linux/fast/ruby/ruby-runs-spans-expected.png:
        * platform/chromium-linux/fast/ruby/ruby-trailing-expected.png:
        * platform/chromium-linux/fast/ruby/rubyDOM-insert-rt-expected.png:
        * platform/chromium-linux/fast/ruby/rubyDOM-insert-text1-expected.png:
        * platform/chromium-linux/fast/ruby/rubyDOM-insert-text2-expected.png:
        * platform/chromium-linux/fast/ruby/rubyDOM-insert-text3-expected.png:
        * platform/chromium-linux/fast/ruby/rubyDOM-remove-rt1-expected.png:
        * platform/chromium-linux/fast/ruby/rubyDOM-remove-rt2-expected.png:
        * platform/chromium-linux/fast/ruby/rubyDOM-remove-text1-expected.png:
        * platform/chromium-mac/fast/ruby/ruby-beforeafter-expected.png: Added.
        * platform/chromium-mac/fast/ruby/ruby-length-expected.png: Added.
        * platform/chromium-mac/fast/ruby/ruby-run-break-expected.png: Added.
        * platform/chromium-mac/fast/ruby/ruby-runs-expected.png: Added.
        * platform/chromium-mac/fast/ruby/ruby-runs-spans-expected.png: Added.
        * platform/chromium-mac/fast/ruby/ruby-trailing-expected.png: Added.
        * platform/chromium-mac/fast/ruby/rubyDOM-insert-rt-expected.png: Added.
        * platform/chromium-mac/fast/ruby/rubyDOM-insert-text1-expected.png: Added.
        * platform/chromium-mac/fast/ruby/rubyDOM-insert-text2-expected.png: Added.
        * platform/chromium-mac/fast/ruby/rubyDOM-insert-text3-expected.png: Added.
        * platform/chromium-mac/fast/ruby/rubyDOM-remove-rt1-expected.png: Added.
        * platform/chromium-mac/fast/ruby/rubyDOM-remove-rt2-expected.png: Added.
        * platform/chromium-mac/fast/ruby/rubyDOM-remove-text1-expected.png: Added.
        * platform/chromium-win/fast/blockflow/english-lr-text-expected.checksum: Removed.
        * platform/chromium-win/fast/blockflow/english-lr-text-expected.png:
        * platform/chromium-win/fast/ruby/overhang-horizontal-expected.png: Added.
        * platform/chromium-win/fast/ruby/overhang-vertical-expected.png: Added.
        * platform/chromium-win/fast/ruby/ruby-beforeafter-expected.checksum: Removed.
        * platform/chromium-win/fast/ruby/ruby-beforeafter-expected.png:
        * platform/chromium-win/fast/ruby/ruby-beforeafter-expected.txt:
        * platform/chromium-win/fast/ruby/ruby-length-expected.checksum: Removed.
        * platform/chromium-win/fast/ruby/ruby-length-expected.png:
        * platform/chromium-win/fast/ruby/ruby-length-expected.txt:
        * platform/chromium-win/fast/ruby/ruby-run-break-expected.checksum: Removed.
        * platform/chromium-win/fast/ruby/ruby-run-break-expected.png:
        * platform/chromium-win/fast/ruby/ruby-run-break-expected.txt:
        * platform/chromium-win/fast/ruby/ruby-runs-expected.checksum: Removed.
        * platform/chromium-win/fast/ruby/ruby-runs-expected.png:
        * platform/chromium-win/fast/ruby/ruby-runs-expected.txt:
        * platform/chromium-win/fast/ruby/ruby-runs-spans-expected.checksum: Removed.
        * platform/chromium-win/fast/ruby/ruby-runs-spans-expected.png:
        * platform/chromium-win/fast/ruby/ruby-runs-spans-expected.txt:
        * platform/chromium-win/fast/ruby/ruby-trailing-expected.checksum: Removed.
        * platform/chromium-win/fast/ruby/ruby-trailing-expected.png:
        * platform/chromium-win/fast/ruby/ruby-trailing-expected.txt:
        * platform/chromium-win/fast/ruby/rubyDOM-insert-rt-expected.checksum: Removed.
        * platform/chromium-win/fast/ruby/rubyDOM-insert-rt-expected.png:
        * platform/chromium-win/fast/ruby/rubyDOM-insert-rt-expected.txt:
        * platform/chromium-win/fast/ruby/rubyDOM-insert-text1-expected.checksum: Removed.
        * platform/chromium-win/fast/ruby/rubyDOM-insert-text1-expected.png:
        * platform/chromium-win/fast/ruby/rubyDOM-insert-text1-expected.txt:
        * platform/chromium-win/fast/ruby/rubyDOM-insert-text2-expected.checksum: Removed.
        * platform/chromium-win/fast/ruby/rubyDOM-insert-text2-expected.png:
        * platform/chromium-win/fast/ruby/rubyDOM-insert-text2-expected.txt:
        * platform/chromium-win/fast/ruby/rubyDOM-insert-text3-expected.checksum: Removed.
        * platform/chromium-win/fast/ruby/rubyDOM-insert-text3-expected.png:
        * platform/chromium-win/fast/ruby/rubyDOM-insert-text3-expected.txt:
        * platform/chromium-win/fast/ruby/rubyDOM-remove-rt1-expected.checksum: Removed.
        * platform/chromium-win/fast/ruby/rubyDOM-remove-rt1-expected.png:
        * platform/chromium-win/fast/ruby/rubyDOM-remove-rt1-expected.txt:
        * platform/chromium-win/fast/ruby/rubyDOM-remove-rt2-expected.checksum: Removed.
        * platform/chromium-win/fast/ruby/rubyDOM-remove-rt2-expected.png:
        * platform/chromium-win/fast/ruby/rubyDOM-remove-rt2-expected.txt:
        * platform/chromium-win/fast/ruby/rubyDOM-remove-text1-expected.checksum: Removed.
        * platform/chromium-win/fast/ruby/rubyDOM-remove-text1-expected.png:
        * platform/chromium-win/fast/ruby/rubyDOM-remove-text1-expected.txt:

2011-04-05  James Simonsen  <simonjam@chromium.org>

        Reviewed by Adam Barth.

        Stop preload scanning CSS when it&apos;s impossible to have another @import.
        https://bugs.webkit.org/show_bug.cgi?id=57664

        * fast/preloader/style-expected.txt:
        * fast/preloader/style.html: Updated to test invalid @import statements.

2011-04-05  Kent Tamura  <tkent@chromium.org>

        Update a test affected by the behavior change of r82908.
        https://bugs.webkit.org/show_bug.cgi?id=57636

        * fast/forms/ValidityState-tooLong-textarea-expected.txt:
        * fast/forms/script-tests/ValidityState-tooLong-textarea.js:

2011-04-05  Philippe Normand  <pnormand@igalia.com>

        Unreviewed, GTK rebaseline after r82903.

        * platform/gtk/fast/blockflow/Kusa-Makura-background-canvas-expected.txt:
        * platform/gtk/fast/ruby/ruby-beforeafter-expected.txt:
        * platform/gtk/fast/ruby/ruby-length-expected.txt:
        * platform/gtk/fast/ruby/ruby-run-break-expected.txt:
        * platform/gtk/fast/ruby/ruby-runs-expected.txt:
        * platform/gtk/fast/ruby/ruby-runs-spans-expected.txt:
        * platform/gtk/fast/ruby/ruby-trailing-expected.txt:
        * platform/gtk/fast/ruby/rubyDOM-insert-rt-expected.txt:
        * platform/gtk/fast/ruby/rubyDOM-insert-text1-expected.txt:
        * platform/gtk/fast/ruby/rubyDOM-insert-text2-expected.txt:
        * platform/gtk/fast/ruby/rubyDOM-insert-text3-expected.txt:
        * platform/gtk/fast/ruby/rubyDOM-remove-rt1-expected.txt:
        * platform/gtk/fast/ruby/rubyDOM-remove-rt2-expected.txt:
        * platform/gtk/fast/ruby/rubyDOM-remove-text1-expected.txt:

2011-04-05  Nancy Piedra  <nancy.piedra@nokia.com>

        Reviewed by Alexey Proskuryakov.

        Improper use of &quot in video-can-play-type layout test
        https://bugs.webkit.org/show_bug.cgi?id=57728

        * media/video-can-play-type.html:

2011-04-05  Kent Tamura  <tkent@chromium.org>

        Reviewed by Dimitri Glazkov.

        Setting defaultValue on a textarea with a modified value still clobbers the value
        https://bugs.webkit.org/show_bug.cgi?id=57636

        * fast/forms/textarea-set-defaultvalue-after-value-expected.txt: Added.
        * fast/forms/textarea-set-defaultvalue-after-value.html: Added.

2011-04-04  Dan Bernstein  <mitz@apple.com>

        Reviewed by Simon Fraser.

        <rdar://problem/7709452> Implement Default Ruby Overhang Behavior
        https://bugs.webkit.org/show_bug.cgi?id=49334

        * fast/ruby/overhang-horizontal-expected.checksum: Added.
        * fast/ruby/overhang-horizontal-expected.png: Added.
        * fast/ruby/overhang-horizontal-expected.txt: Added.
        * fast/ruby/overhang-horizontal.html: Added.
        * fast/ruby/overhang-vertical-expected.checksum: Added.
        * fast/ruby/overhang-vertical-expected.png: Added.
        * fast/ruby/overhang-vertical-expected.txt: Added.
        * fast/ruby/overhang-vertical.html: Added.
        * platform/mac/fast/blockflow/Kusa-Makura-background-canvas-expected.checksum:
        * platform/mac/fast/blockflow/Kusa-Makura-background-canvas-expected.png:
        * platform/mac/fast/blockflow/Kusa-Makura-background-canvas-expected.txt:
        * platform/mac/fast/blockflow/english-lr-text-expected.checksum:
        * platform/mac/fast/blockflow/english-lr-text-expected.png:
        * platform/mac/fast/ruby/ruby-beforeafter-expected.checksum:
        * platform/mac/fast/ruby/ruby-beforeafter-expected.png:
        * platform/mac/fast/ruby/ruby-beforeafter-expected.txt:
        * platform/mac/fast/ruby/ruby-length-expected.checksum:
        * platform/mac/fast/ruby/ruby-length-expected.png:
        * platform/mac/fast/ruby/ruby-length-expected.txt:
        * platform/mac/fast/ruby/ruby-run-break-expected.checksum:
        * platform/mac/fast/ruby/ruby-run-break-expected.png:
        * platform/mac/fast/ruby/ruby-run-break-expected.txt:
        * platform/mac/fast/ruby/ruby-runs-expected.checksum:
        * platform/mac/fast/ruby/ruby-runs-expected.png:
        * platform/mac/fast/ruby/ruby-runs-expected.txt:
        * platform/mac/fast/ruby/ruby-runs-spans-expected.checksum:
        * platform/mac/fast/ruby/ruby-runs-spans-expected.png:
        * platform/mac/fast/ruby/ruby-runs-spans-expected.txt:
        * platform/mac/fast/ruby/ruby-trailing-expected.checksum:
        * platform/mac/fast/ruby/ruby-trailing-expected.png:
        * platform/mac/fast/ruby/ruby-trailing-expected.txt:
        * platform/mac/fast/ruby/rubyDOM-insert-rt-expected.checksum:
        * platform/mac/fast/ruby/rubyDOM-insert-rt-expected.png:
        * platform/mac/fast/ruby/rubyDOM-insert-rt-expected.txt:
        * platform/mac/fast/ruby/rubyDOM-insert-text1-expected.checksum:
        * platform/mac/fast/ruby/rubyDOM-insert-text1-expected.png:
        * platform/mac/fast/ruby/rubyDOM-insert-text1-expected.txt:
        * platform/mac/fast/ruby/rubyDOM-insert-text2-expected.checksum:
        * platform/mac/fast/ruby/rubyDOM-insert-text2-expected.png:
        * platform/mac/fast/ruby/rubyDOM-insert-text2-expected.txt:
        * platform/mac/fast/ruby/rubyDOM-insert-text3-expected.checksum:
        * platform/mac/fast/ruby/rubyDOM-insert-text3-expected.png:
        * platform/mac/fast/ruby/rubyDOM-insert-text3-expected.txt:
        * platform/mac/fast/ruby/rubyDOM-remove-rt1-expected.checksum:
        * platform/mac/fast/ruby/rubyDOM-remove-rt1-expected.png:
        * platform/mac/fast/ruby/rubyDOM-remove-rt1-expected.txt:
        * platform/mac/fast/ruby/rubyDOM-remove-rt2-expected.checksum:
        * platform/mac/fast/ruby/rubyDOM-remove-rt2-expected.png:
        * platform/mac/fast/ruby/rubyDOM-remove-rt2-expected.txt:
        * platform/mac/fast/ruby/rubyDOM-remove-text1-expected.checksum:
        * platform/mac/fast/ruby/rubyDOM-remove-text1-expected.png:
        * platform/mac/fast/ruby/rubyDOM-remove-text1-expected.txt:

2011-04-04  Adrienne Walker  <enne@google.com>

        Unreviewed, Chromium expectations update for tests broken after r82899.

        * platform/chromium/test_expectations.txt:

2011-04-04 MORITA Hajime  <morrita@google.com>

        Unreviewed expectations update following r82899.

        * platform/gtk/fast/dom/HTMLMeterElement/meter-appearances-capacity-expected.txt:
        * platform/gtk/fast/dom/HTMLMeterElement/meter-appearances-rating-relevancy-expected.txt:
        * platform/gtk/fast/dom/HTMLMeterElement/meter-boundary-values-expected.txt:
        * platform/gtk/fast/dom/HTMLMeterElement/meter-element-expected.txt:
        * platform/gtk/fast/dom/HTMLMeterElement/meter-optimums-expected.txt:
        * platform/gtk/fast/dom/HTMLMeterElement/meter-styles-changing-pseudo-expected.txt:
        * platform/gtk/fast/dom/HTMLMeterElement/meter-styles-expected.txt:

2011-04-04  MORITA Hajime  <morrita@google.com>

        Reviewed by Kent Tamura.

        Convert <meter> shadow DOM to a DOM-based shadow.
        https://bugs.webkit.org/show_bug.cgi?id=50661

        Updated expectations due to shadow structure chagne.
        Also updated meter-styles.html pixel result because the render tree is now laid out
        as normal flexboxes and its layout result is actually different,
        especially if there are non-zero borders on shadow elements.

        * fast/dom/HTMLMeterElement/meter-styles.html:
        * platform/mac/fast/dom/HTMLMeterElement/meter-styles-changing-pseudo-expected.txt:
        * platform/mac/fast/dom/HTMLMeterElement/meter-styles-expected.checksum:
        * platform/mac/fast/dom/HTMLMeterElement/meter-styles-expected.png:
        * platform/mac/fast/dom/HTMLMeterElement/meter-styles-expected.txt:

2011-04-04  Adrienne Walker  <enne@google.com>

        Unreviewed, rolling out r82879.
        http://trac.webkit.org/changeset/82879

        Trying to fix 10.6 layout test expectations broke 10.5

        * platform/chromium-mac/fast/box-shadow/spread-multiple-inset-expected.checksum: Added.
        * platform/chromium-mac/fast/box-shadow/spread-multiple-inset-expected.png: Added.
        * platform/chromium-mac/fast/dom/HTMLMeterElement/meter-boundary-values-expected.png: Removed.
        * platform/chromium-mac/fast/html/details-add-summary-1-and-click-expected.png: Added.
        * platform/chromium-mac/fast/html/details-add-summary-1-expected.png: Added.
        * platform/chromium-mac/fast/html/details-add-summary-10-and-click-expected.png: Added.
        * platform/chromium-mac/fast/html/details-add-summary-10-expected.png: Added.
        * platform/chromium-mac/fast/html/details-add-summary-2-and-click-expected.png: Added.
        * platform/chromium-mac/fast/html/details-add-summary-2-expected.png: Added.
        * platform/chromium-mac/fast/html/details-add-summary-3-and-click-expected.png: Added.
        * platform/chromium-mac/fast/html/details-add-summary-3-expected.png: Added.
        * platform/chromium-mac/fast/html/details-add-summary-4-and-click-expected.png: Added.
        * platform/chromium-mac/fast/html/details-add-summary-4-expected.png: Added.
        * platform/chromium-mac/fast/html/details-add-summary-5-and-click-expected.png: Added.
        * platform/chromium-mac/fast/html/details-add-summary-5-expected.png: Added.
        * platform/chromium-mac/fast/html/details-add-summary-6-and-click-expected.png: Added.
        * platform/chromium-mac/fast/html/details-add-summary-6-expected.png: Added.
        * platform/chromium-mac/fast/html/details-add-summary-7-and-click-expected.png: Added.
        * platform/chromium-mac/fast/html/details-add-summary-7-expected.png: Added.
        * platform/chromium-mac/fast/html/details-add-summary-8-and-click-expected.png: Added.
        * platform/chromium-mac/fast/html/details-add-summary-8-expected.png: Added.
        * platform/chromium-mac/fast/html/details-add-summary-9-and-click-expected.png: Added.
        * platform/chromium-mac/fast/html/details-add-summary-9-expected.png: Added.
        * platform/chromium-mac/fast/html/details-no-summary1-expected.png: Added.
        * platform/chromium-mac/fast/html/details-no-summary2-expected.png: Added.
        * platform/chromium-mac/fast/html/details-no-summary3-expected.png: Added.
        * platform/chromium-mac/fast/html/details-no-summary4-expected.png: Added.
        * platform/chromium-mac/fast/html/details-open-javascript-expected.png: Added.
        * platform/chromium-mac/fast/html/details-open1-expected.png: Added.
        * platform/chromium-mac/fast/html/details-open2-expected.png: Added.
        * platform/chromium-mac/fast/html/details-open3-expected.png: Added.
        * platform/chromium-mac/fast/html/details-open4-expected.png: Added.
        * platform/chromium-mac/fast/html/details-open5-expected.png: Added.
        * platform/chromium-mac/fast/html/details-open6-expected.png: Added.
        * platform/chromium-mac/fast/html/details-position-expected.png: Added.
        * platform/chromium-mac/fast/html/details-remove-summary-1-and-click-expected.png: Added.
        * platform/chromium-mac/fast/html/details-remove-summary-1-expected.png: Added.
        * platform/chromium-mac/fast/html/details-remove-summary-2-and-click-expected.png: Added.
        * platform/chromium-mac/fast/html/details-remove-summary-2-expected.png: Added.
        * platform/chromium-mac/fast/html/details-remove-summary-3-and-click-expected.png: Added.
        * platform/chromium-mac/fast/html/details-remove-summary-3-expected.png: Added.
        * platform/chromium-mac/fast/html/details-remove-summary-4-and-click-expected.png: Added.
        * platform/chromium-mac/fast/html/details-remove-summary-4-expected.png: Added.
        * platform/chromium-mac/fast/html/details-remove-summary-5-and-click-expected.png: Added.
        * platform/chromium-mac/fast/html/details-remove-summary-5-expected.png: Added.
        * platform/chromium-mac/fast/html/details-remove-summary-6-and-click-expected.png: Added.
        * platform/chromium-mac/fast/html/details-remove-summary-6-expected.png: Added.
        * platform/chromium-mac/fast/html/details-writing-mode-expected.png: Added.
        * platform/chromium-mac/fast/inline-block/inline-block-vertical-align-expected.checksum: Added.
        * platform/chromium-mac/fast/inline-block/inline-block-vertical-align-expected.png: Added.
        * platform/chromium-mac/fast/multicol/layers-in-multicol-expected.checksum: Added.
        * platform/chromium-mac/fast/multicol/layers-in-multicol-expected.png: Added.
        * platform/chromium-mac/fast/multicol/nested-columns-expected.checksum: Added.
        * platform/chromium-mac/fast/multicol/nested-columns-expected.png:
        * platform/chromium-mac/fast/repaint/list-marker-expected.checksum: Added.
        * platform/chromium-mac/fast/repaint/list-marker-expected.png:

2011-04-04  Adrienne Walker  <enne@google.com>

        Unreviewed, rolling out r82880.
        http://trac.webkit.org/changeset/82880
        https://bugs.webkit.org/show_bug.cgi?id=50661

        Meter elements not rendered in Chromium Linux layout tests.

        * fast/dom/HTMLMeterElement/meter-styles.html:
        * platform/mac/fast/dom/HTMLMeterElement/meter-styles-changing-pseudo-expected.txt:
        * platform/mac/fast/dom/HTMLMeterElement/meter-styles-expected.checksum:
        * platform/mac/fast/dom/HTMLMeterElement/meter-styles-expected.png:
        * platform/mac/fast/dom/HTMLMeterElement/meter-styles-expected.txt:

2011-04-04  Dirk Pranke  <dpranke@chromium.org>

        Unreviewed, expectations change.

        Adjust the list of flaky tests based on NRWT on webkit mac using
        a 35 second timeout by default.

        * platform/mac/test_expectations.txt:

2011-04-04  Chang Shu  <cshu@webkit.org>

        Reviewed by Ryosuke Niwa.

        setContentEditable with true/false/inherit string is not working properly
        https://bugs.webkit.org/show_bug.cgi?id=52058

        Updated expected results after this patch fixes the set contenteditable issue.

        * fast/dom/HTMLElement/set-false-expected.txt:
        * fast/dom/HTMLElement/set-false.html:
        * fast/dom/HTMLElement/set-inherit-parent-false-expected.txt:
        * fast/dom/HTMLElement/set-inherit-parent-true-expected.txt:
        * fast/dom/HTMLElement/set-true-expected.txt:
        * fast/dom/HTMLElement/set-value-caseinsensitive-expected.txt:

2011-04-04  MORITA Hajime  <morrita@google.com>

        Reviewed by Dimitri Glazkov.

        Convert <meter> shadow DOM to a DOM-based shadow.
        https://bugs.webkit.org/show_bug.cgi?id=50661

        Updated expectations due to shadow structure chagne.
        Also updated meter-styles.html pixel result because the render tree is now laid out
        as normal flexboxes and its layout result is actually different,
        especially if there are non-zero borders on shadow elements.

        * fast/dom/HTMLMeterElement/meter-styles.html:
        * platform/mac/fast/dom/HTMLMeterElement/meter-styles-changing-pseudo-expected.txt:
        * platform/mac/fast/dom/HTMLMeterElement/meter-styles-expected.checksum:
        * platform/mac/fast/dom/HTMLMeterElement/meter-styles-expected.png:
        * platform/mac/fast/dom/HTMLMeterElement/meter-styles-expected.txt:

2011-04-04  Adrienne Walker  <enne@google.com>

        Unreviewed, update Chromium Snow Leopard image baselines.

        These were all minor font-related image differences.

        * platform/chromium-mac/fast/box-shadow/spread-multiple-inset-expected.checksum: Removed.
        * platform/chromium-mac/fast/box-shadow/spread-multiple-inset-expected.png: Removed.
        * platform/chromium-mac/fast/dom/HTMLMeterElement/meter-boundary-values-expected.png: Added.
        * platform/chromium-mac/fast/html/details-add-summary-1-and-click-expected.png: Removed.
        * platform/chromium-mac/fast/html/details-add-summary-1-expected.png: Removed.
        * platform/chromium-mac/fast/html/details-add-summary-10-and-click-expected.png: Removed.
        * platform/chromium-mac/fast/html/details-add-summary-10-expected.png: Removed.
        * platform/chromium-mac/fast/html/details-add-summary-2-and-click-expected.png: Removed.
        * platform/chromium-mac/fast/html/details-add-summary-2-expected.png: Removed.
        * platform/chromium-mac/fast/html/details-add-summary-3-and-click-expected.png: Removed.
        * platform/chromium-mac/fast/html/details-add-summary-3-expected.png: Removed.
        * platform/chromium-mac/fast/html/details-add-summary-4-and-click-expected.png: Removed.
        * platform/chromium-mac/fast/html/details-add-summary-4-expected.png: Removed.
        * platform/chromium-mac/fast/html/details-add-summary-5-and-click-expected.png: Removed.
        * platform/chromium-mac/fast/html/details-add-summary-5-expected.png: Removed.
        * platform/chromium-mac/fast/html/details-add-summary-6-and-click-expected.png: Removed.
        * platform/chromium-mac/fast/html/details-add-summary-6-expected.png: Removed.
        * platform/chromium-mac/fast/html/details-add-summary-7-and-click-expected.png: Removed.
        * platform/chromium-mac/fast/html/details-add-summary-7-expected.png: Removed.
        * platform/chromium-mac/fast/html/details-add-summary-8-and-click-expected.png: Removed.
        * platform/chromium-mac/fast/html/details-add-summary-8-expected.png: Removed.
        * platform/chromium-mac/fast/html/details-add-summary-9-and-click-expected.png: Removed.
        * platform/chromium-mac/fast/html/details-add-summary-9-expected.png: Removed.
        * platform/chromium-mac/fast/html/details-no-summary1-expected.png: Removed.
        * platform/chromium-mac/fast/html/details-no-summary2-expected.png: Removed.
        * platform/chromium-mac/fast/html/details-no-summary3-expected.png: Removed.
        * platform/chromium-mac/fast/html/details-no-summary4-expected.png: Removed.
        * platform/chromium-mac/fast/html/details-open-javascript-expected.png: Removed.
        * platform/chromium-mac/fast/html/details-open1-expected.png: Removed.
        * platform/chromium-mac/fast/html/details-open2-expected.png: Removed.
        * platform/chromium-mac/fast/html/details-open3-expected.png: Removed.
        * platform/chromium-mac/fast/html/details-open4-expected.png: Removed.
        * platform/chromium-mac/fast/html/details-open5-expected.png: Removed.
        * platform/chromium-mac/fast/html/details-open6-expected.png: Removed.
        * platform/chromium-mac/fast/html/details-position-expected.png: Removed.
        * platform/chromium-mac/fast/html/details-remove-summary-1-and-click-expected.png: Removed.
        * platform/chromium-mac/fast/html/details-remove-summary-1-expected.png: Removed.
        * platform/chromium-mac/fast/html/details-remove-summary-2-and-click-expected.png: Removed.
        * platform/chromium-mac/fast/html/details-remove-summary-2-expected.png: Removed.
        * platform/chromium-mac/fast/html/details-remove-summary-3-and-click-expected.png: Removed.
        * platform/chromium-mac/fast/html/details-remove-summary-3-expected.png: Removed.
        * platform/chromium-mac/fast/html/details-remove-summary-4-and-click-expected.png: Removed.
        * platform/chromium-mac/fast/html/details-remove-summary-4-expected.png: Removed.
        * platform/chromium-mac/fast/html/details-remove-summary-5-and-click-expected.png: Removed.
        * platform/chromium-mac/fast/html/details-remove-summary-5-expected.png: Removed.
        * platform/chromium-mac/fast/html/details-remove-summary-6-and-click-expected.png: Removed.
        * platform/chromium-mac/fast/html/details-remove-summary-6-expected.png: Removed.
        * platform/chromium-mac/fast/html/details-writing-mode-expected.png: Removed.
        * platform/chromium-mac/fast/inline-block/inline-block-vertical-align-expected.checksum: Removed.
        * platform/chromium-mac/fast/inline-block/inline-block-vertical-align-expected.png: Removed.
        * platform/chromium-mac/fast/multicol/layers-in-multicol-expected.checksum: Removed.
        * platform/chromium-mac/fast/multicol/layers-in-multicol-expected.png: Removed.
        * platform/chromium-mac/fast/multicol/nested-columns-expected.checksum: Removed.
        * platform/chromium-mac/fast/multicol/nested-columns-expected.png:
        * platform/chromium-mac/fast/repaint/list-marker-expected.checksum: Removed.
        * platform/chromium-mac/fast/repaint/list-marker-expected.png:

2011-04-04  Adrienne Walker  <enne@google.com>

        Unreviewed, mark revoke-blob-url.html as CRASH for Chromium on Win.

        * platform/chromium/test_expectations.txt:

2011-04-04  Chang Shu  <cshu@webkit.org>

        Reviewed by Darin Adler.

        WebKitTestRunner needs layoutTestController.setAllowFileAccessFromFileURLs
        https://bugs.webkit.org/show_bug.cgi?id=57572

        Unskip passed tests.

        * platform/mac-wk2/Skipped:

2011-04-04  Pavel Feldman  <pfeldman@google.com>

        Reviewed by Yury Semikhatsky.

        Web Inspector: add support for the enumerated types in the protocol.
        https://bugs.webkit.org/show_bug.cgi?id=57761

        * inspector/debugger/debugger-autocontinue-on-syntax-error.html:
        * inspector/debugger/debugger-pause-on-exception.html:

2011-04-04  Yong Li  <yoli@rim.com>

        Reviewed by Antonio Gomes.

        https://bugs.webkit.org/show_bug.cgi?id=55969
        Add a test that verifies history scroll position is restored
        when WebKit goes forward from an unreachable URL error page.
        (Error page handling is only supported by Qt DRT.)

        * platform/qt/fast/history/back-to-unreachable-url-then-forward-expected.txt: Added.
        * platform/qt/fast/history/back-to-unreachable-url-then-forward.html: Added.
        * platform/qt/fast/history/resources/check-scroll-position.html: Added.

2011-04-04  Jessie Berlin  <jberlin@apple.com>

        Remove a test from the win-wk2 skipped list that does not exist.

        fast/js/navigator-mimeTypes-length.html was changed and moved to plugins in r71651.

        * platform/win-wk2/Skipped:

2011-04-04  Jessie Berlin  <jberlin@apple.com>

        [Windows 7 WebKit2 Release Tests] 6 tests failing since being removed from the mac-wk2
        skipped list in r82625.
        https://bugs.webkit.org/show_bug.cgi?id=57705

        Unreviewed, addd win-wk2 expected results for the tests in order to get the bots green.

        * platform/win-wk2/editing: Added.
        * platform/win-wk2/editing/selection: Added.
        * platform/win-wk2/editing/selection/after-line-break-expected.txt: Added.
        * platform/win-wk2/editing/selection/caret-ltr-right-expected.checksum: Added.
        * platform/win-wk2/editing/selection/caret-ltr-right-expected.png: Added.
        * platform/win-wk2/editing/selection/caret-ltr-right-expected.txt: Added.
        * platform/win-wk2/editing/selection/caret-rtl-2-left-expected.checksum: Added.
        * platform/win-wk2/editing/selection/caret-rtl-2-left-expected.png: Added.
        * platform/win-wk2/editing/selection/caret-rtl-2-left-expected.txt: Added.
        * platform/win-wk2/editing/selection/drag-text-delay-expected.txt: Added.
        * platform/win-wk2/fast/repaint: Added.
        * platform/win-wk2/fast/repaint/japanese-rl-selection-clear-expected.txt: Added.
        Apparently the pixel results are similar enough to the win expected pixel results that no
        special pixel results need to be added for win-wk2.
        * platform/win-wk2/plugins/resize-from-plugin-expected.txt: Added.

2011-04-04  Pavel Podivilov  <podivilov@chromium.org>

        Unreviewed, mark filesystem-reference.html as CRASH PASS on chromium.

        * platform/chromium/test_expectations.txt:

2011-04-04  Pavel Podivilov  <podivilov@chromium.org>

        Unreviewed, remove gradientLimit.svg and 2d.text.draw.align.end.ltr.html from test expectations.

        * platform/chromium/test_expectations.txt:

2011-04-04  Martin Robinson  <mrobinson@igalia.com>

        Reviewed by Xan Lopez.

        [GTK] http/tests/plugins/post-url-file.html fails on GTK+
        https://bugs.webkit.org/show_bug.cgi?id=55826

        * http/tests/plugins/resources/dump-post.pl: Instead of just printing out the "keywords" parameter,
        print out the POSTDATA parameter as well. Printing "keywords" did not seem to work on the version of
        Apache/Perl/CGI that existed on my machine. According to the Perl CGI module documentation
        using 'POSTDATA' is the correct way to print the entire POSTDATA for more recent versions of the
        module.
        * platform/gtk/Skipped: Unskip the test which is now passing.

2011-04-04  Andrey Kosyakov  <caseq@chromium.org>

        Reviewed by Yury Semikhatsky.

        Web Inspector: [Extensions API] add notifications on panels shown/hidden
        https://bugs.webkit.org/show_bug.cgi?id=57752

        * http/tests/inspector/extensions-test.js:
        (initialize_ExtensionsTest.showPanel):
        * http/tests/inspector/resources/extension-main.js:
        (showPanel):
        * inspector/extensions/extensions-api-expected.txt:
        * inspector/extensions/extensions-events-expected.txt:
        * inspector/extensions/extensions-events.html:
        * inspector/extensions/extensions-expected.txt:

2011-04-04  Pavel Podivilov  <podivilov@chromium.org>

        Unreviewed, mark xhr-breakpoints as CRASH PASS on chromium win debug.

        * platform/chromium/test_expectations.txt:

2011-04-04  Pavel Podivilov  <podivilov@chromium.org>

        Unreviewed, udpate chromium-linux test expectations after r82786.

        * platform/chromium-linux/fast/table/colspanMinWidth-vertical-expected.checksum: Removed.
        * platform/chromium-linux/fast/table/colspanMinWidth-vertical-expected.png:

2011-04-04  Pavel Podivilov  <podivilov@chromium.org>

        Unreviewed, add chromium-linux expectation for the new test added in r82781.

        * platform/chromium-linux/fast/images/imagemap-focus-ring-zero-outline-width-expected.png: Added.

2011-04-04  Pavel Podivilov  <podivilov@chromium.org>

        Unreviewed, rebaseline chromium-linux test expectations after r82783.

        * platform/chromium-linux/fast/html/details-add-summary-1-and-click-expected.png: Added.
        * platform/chromium-linux/fast/html/details-add-summary-1-expected.png: Added.
        * platform/chromium-linux/fast/html/details-add-summary-10-and-click-expected.png: Added.
        * platform/chromium-linux/fast/html/details-add-summary-10-expected.png: Added.
        * platform/chromium-linux/fast/html/details-add-summary-2-and-click-expected.png: Added.
        * platform/chromium-linux/fast/html/details-add-summary-2-expected.png: Added.
        * platform/chromium-linux/fast/html/details-add-summary-3-and-click-expected.png: Added.
        * platform/chromium-linux/fast/html/details-add-summary-3-expected.png: Added.
        * platform/chromium-linux/fast/html/details-add-summary-4-and-click-expected.png: Added.
        * platform/chromium-linux/fast/html/details-add-summary-4-expected.png: Added.
        * platform/chromium-linux/fast/html/details-add-summary-5-and-click-expected.png: Added.
        * platform/chromium-linux/fast/html/details-add-summary-5-expected.png: Added.
        * platform/chromium-linux/fast/html/details-add-summary-6-and-click-expected.png: Added.
        * platform/chromium-linux/fast/html/details-add-summary-6-expected.png: Added.
        * platform/chromium-linux/fast/html/details-add-summary-7-and-click-expected.png: Added.
        * platform/chromium-linux/fast/html/details-add-summary-7-expected.png: Added.
        * platform/chromium-linux/fast/html/details-add-summary-8-and-click-expected.png: Added.
        * platform/chromium-linux/fast/html/details-add-summary-8-expected.png: Added.
        * platform/chromium-linux/fast/html/details-add-summary-9-and-click-expected.png: Added.
        * platform/chromium-linux/fast/html/details-add-summary-9-expected.png: Added.
        * platform/chromium-linux/fast/html/details-no-summary1-expected.png: Added.
        * platform/chromium-linux/fast/html/details-no-summary2-expected.png: Added.
        * platform/chromium-linux/fast/html/details-no-summary3-expected.png: Added.
        * platform/chromium-linux/fast/html/details-no-summary4-expected.png: Added.
        * platform/chromium-linux/fast/html/details-open-javascript-expected.png: Added.
        * platform/chromium-linux/fast/html/details-open1-expected.png: Added.
        * platform/chromium-linux/fast/html/details-open2-expected.png: Added.
        * platform/chromium-linux/fast/html/details-open3-expected.png: Added.
        * platform/chromium-linux/fast/html/details-open4-expected.png: Added.
        * platform/chromium-linux/fast/html/details-open5-expected.png: Added.
        * platform/chromium-linux/fast/html/details-open6-expected.png: Added.
        * platform/chromium-linux/fast/html/details-position-expected.png: Added.
        * platform/chromium-linux/fast/html/details-remove-summary-1-and-click-expected.png: Added.
        * platform/chromium-linux/fast/html/details-remove-summary-1-expected.png: Added.
        * platform/chromium-linux/fast/html/details-remove-summary-2-and-click-expected.png: Added.
        * platform/chromium-linux/fast/html/details-remove-summary-2-expected.png: Added.
        * platform/chromium-linux/fast/html/details-remove-summary-3-and-click-expected.png: Added.
        * platform/chromium-linux/fast/html/details-remove-summary-3-expected.png: Added.
        * platform/chromium-linux/fast/html/details-remove-summary-4-and-click-expected.png: Added.
        * platform/chromium-linux/fast/html/details-remove-summary-4-expected.png: Added.
        * platform/chromium-linux/fast/html/details-remove-summary-5-and-click-expected.png: Added.
        * platform/chromium-linux/fast/html/details-remove-summary-5-expected.png: Added.
        * platform/chromium-linux/fast/html/details-remove-summary-6-and-click-expected.png: Added.
        * platform/chromium-linux/fast/html/details-remove-summary-6-expected.png: Added.
        * platform/chromium-linux/fast/html/details-writing-mode-expected.png: Added.

2011-04-04  Pavel Podivilov  <podivilov@chromium.org>

        Unreviewed, add chromium expectations for the new test added in r82781.

        * platform/chromium-mac-leopard/fast/images/imagemap-focus-ring-zero-outline-width-expected.png: Added.
        * platform/chromium-win/fast/images/imagemap-focus-ring-zero-outline-width-expected.png: Added.
        * platform/chromium-win/fast/images/imagemap-focus-ring-zero-outline-width-expected.txt: Added.

2011-04-04  Mario Sanchez Prada  <msanchez@igalia.com>

        Unreviewed. Unskipped test and added GTK-specific new baseline.

        * platform/gtk/Skipped: Skipped passing test.
        * platform/gtk/accessibility/aria-roles-expected.txt: Added.

2011-04-04  Pavel Podivilov  <podivilov@chromium.org>

        Unreviewed, remove chromium expectations added by mistake in r82815.

        * platform/chromium-linux-x86_64/fast/table/colspanMinWidth-vertical-expected.png: Removed.
        * platform/chromium-win-vista/fast/table/colspanMinWidth-vertical-expected.checksum: Removed.

2011-04-04  Pavel Podivilov  <podivilov@chromium.org>

        Unreviewed, delete duplicate baselines added in r82812.

        * platform/chromium-linux/fast/html/details-add-summary-1-and-click-expected.checksum: Removed.
        * platform/chromium-linux/fast/html/details-add-summary-1-and-click-expected.png: Removed.
        * platform/chromium-linux/fast/html/details-add-summary-1-expected.checksum: Removed.
        * platform/chromium-linux/fast/html/details-add-summary-1-expected.png: Removed.
        * platform/chromium-linux/fast/html/details-add-summary-10-and-click-expected.checksum: Removed.
        * platform/chromium-linux/fast/html/details-add-summary-10-and-click-expected.png: Removed.
        * platform/chromium-linux/fast/html/details-add-summary-10-expected.checksum: Removed.
        * platform/chromium-linux/fast/html/details-add-summary-10-expected.png: Removed.
        * platform/chromium-linux/fast/html/details-add-summary-2-and-click-expected.checksum: Removed.
        * platform/chromium-linux/fast/html/details-add-summary-2-and-click-expected.png: Removed.
        * platform/chromium-linux/fast/html/details-add-summary-2-expected.checksum: Removed.
        * platform/chromium-linux/fast/html/details-add-summary-2-expected.png: Removed.
        * platform/chromium-linux/fast/html/details-add-summary-3-and-click-expected.checksum: Removed.
        * platform/chromium-linux/fast/html/details-add-summary-3-and-click-expected.png: Removed.
        * platform/chromium-linux/fast/html/details-add-summary-3-expected.checksum: Removed.
        * platform/chromium-linux/fast/html/details-add-summary-3-expected.png: Removed.
        * platform/chromium-linux/fast/html/details-add-summary-4-and-click-expected.checksum: Removed.
        * platform/chromium-linux/fast/html/details-add-summary-4-and-click-expected.png: Removed.
        * platform/chromium-linux/fast/html/details-add-summary-4-expected.checksum: Removed.
        * platform/chromium-linux/fast/html/details-add-summary-4-expected.png: Removed.
        * platform/chromium-linux/fast/html/details-add-summary-5-and-click-expected.checksum: Removed.
        * platform/chromium-linux/fast/html/details-add-summary-5-and-click-expected.png: Removed.
        * platform/chromium-linux/fast/html/details-add-summary-5-expected.checksum: Removed.
        * platform/chromium-linux/fast/html/details-add-summary-5-expected.png: Removed.
        * platform/chromium-linux/fast/html/details-add-summary-6-and-click-expected.checksum: Removed.
        * platform/chromium-linux/fast/html/details-add-summary-6-and-click-expected.png: Removed.
        * platform/chromium-linux/fast/html/details-add-summary-6-expected.checksum: Removed.
        * platform/chromium-linux/fast/html/details-add-summary-6-expected.png: Removed.
        * platform/chromium-linux/fast/html/details-add-summary-7-and-click-expected.checksum: Removed.
        * platform/chromium-linux/fast/html/details-add-summary-7-and-click-expected.png: Removed.
        * platform/chromium-linux/fast/html/details-add-summary-7-expected.checksum: Removed.
        * platform/chromium-linux/fast/html/details-add-summary-7-expected.png: Removed.
        * platform/chromium-linux/fast/html/details-add-summary-8-and-click-expected.checksum: Removed.
        * platform/chromium-linux/fast/html/details-add-summary-8-and-click-expected.png: Removed.
        * platform/chromium-linux/fast/html/details-add-summary-8-expected.checksum: Removed.
        * platform/chromium-linux/fast/html/details-add-summary-8-expected.png: Removed.
        * platform/chromium-linux/fast/html/details-add-summary-9-and-click-expected.checksum: Removed.
        * platform/chromium-linux/fast/html/details-add-summary-9-and-click-expected.png: Removed.
        * platform/chromium-linux/fast/html/details-add-summary-9-expected.checksum: Removed.
        * platform/chromium-linux/fast/html/details-add-summary-9-expected.png: Removed.
        * platform/chromium-linux/fast/html/details-no-summary1-expected.checksum: Removed.
        * platform/chromium-linux/fast/html/details-no-summary1-expected.png: Removed.
        * platform/chromium-linux/fast/html/details-no-summary2-expected.checksum: Removed.
        * platform/chromium-linux/fast/html/details-no-summary2-expected.png: Removed.
        * platform/chromium-linux/fast/html/details-no-summary3-expected.checksum: Removed.
        * platform/chromium-linux/fast/html/details-no-summary3-expected.png: Removed.
        * platform/chromium-linux/fast/html/details-no-summary4-expected.checksum: Removed.
        * platform/chromium-linux/fast/html/details-no-summary4-expected.png: Removed.
        * platform/chromium-linux/fast/html/details-open-javascript-expected.checksum: Removed.
        * platform/chromium-linux/fast/html/details-open-javascript-expected.png: Removed.
        * platform/chromium-linux/fast/html/details-open1-expected.checksum: Removed.
        * platform/chromium-linux/fast/html/details-open1-expected.png: Removed.
        * platform/chromium-linux/fast/html/details-open2-expected.checksum: Removed.
        * platform/chromium-linux/fast/html/details-open2-expected.png: Removed.
        * platform/chromium-linux/fast/html/details-open3-expected.checksum: Removed.
        * platform/chromium-linux/fast/html/details-open3-expected.png: Removed.
        * platform/chromium-linux/fast/html/details-open4-expected.checksum: Removed.
        * platform/chromium-linux/fast/html/details-open4-expected.png: Removed.
        * platform/chromium-linux/fast/html/details-open5-expected.checksum: Removed.
        * platform/chromium-linux/fast/html/details-open5-expected.png: Removed.
        * platform/chromium-linux/fast/html/details-open6-expected.checksum: Removed.
        * platform/chromium-linux/fast/html/details-open6-expected.png: Removed.
        * platform/chromium-linux/fast/html/details-position-expected.checksum: Removed.
        * platform/chromium-linux/fast/html/details-position-expected.png: Removed.
        * platform/chromium-linux/fast/html/details-remove-summary-1-and-click-expected.checksum: Removed.
        * platform/chromium-linux/fast/html/details-remove-summary-1-and-click-expected.png: Removed.
        * platform/chromium-linux/fast/html/details-remove-summary-1-expected.checksum: Removed.
        * platform/chromium-linux/fast/html/details-remove-summary-1-expected.png: Removed.
        * platform/chromium-linux/fast/html/details-remove-summary-2-and-click-expected.checksum: Removed.
        * platform/chromium-linux/fast/html/details-remove-summary-2-and-click-expected.png: Removed.
        * platform/chromium-linux/fast/html/details-remove-summary-2-expected.checksum: Removed.
        * platform/chromium-linux/fast/html/details-remove-summary-2-expected.png: Removed.
        * platform/chromium-linux/fast/html/details-remove-summary-3-and-click-expected.checksum: Removed.
        * platform/chromium-linux/fast/html/details-remove-summary-3-and-click-expected.png: Removed.
        * platform/chromium-linux/fast/html/details-remove-summary-3-expected.checksum: Removed.
        * platform/chromium-linux/fast/html/details-remove-summary-3-expected.png: Removed.
        * platform/chromium-linux/fast/html/details-remove-summary-4-and-click-expected.checksum: Removed.
        * platform/chromium-linux/fast/html/details-remove-summary-4-and-click-expected.png: Removed.
        * platform/chromium-linux/fast/html/details-remove-summary-4-expected.checksum: Removed.
        * platform/chromium-linux/fast/html/details-remove-summary-4-expected.png: Removed.
        * platform/chromium-linux/fast/html/details-remove-summary-5-and-click-expected.checksum: Removed.
        * platform/chromium-linux/fast/html/details-remove-summary-5-and-click-expected.png: Removed.
        * platform/chromium-linux/fast/html/details-remove-summary-5-expected.checksum: Removed.
        * platform/chromium-linux/fast/html/details-remove-summary-5-expected.png: Removed.
        * platform/chromium-linux/fast/html/details-remove-summary-6-and-click-expected.checksum: Removed.
        * platform/chromium-linux/fast/html/details-remove-summary-6-and-click-expected.png: Removed.
        * platform/chromium-linux/fast/html/details-remove-summary-6-expected.checksum: Removed.
        * platform/chromium-linux/fast/html/details-remove-summary-6-expected.png: Removed.
        * platform/chromium-linux/fast/html/details-writing-mode-expected.checksum: Removed.
        * platform/chromium-linux/fast/html/details-writing-mode-expected.png: Removed.

2011-04-04  Pavel Podivilov  <podivilov@chromium.org>

        Unreviewed, fix bad rebaseline in r82812.

        * platform/chromium-linux-x86_64/fast/html/details-add-summary-1-and-click-expected.png: Removed.
        * platform/chromium-linux-x86_64/fast/html/details-add-summary-1-expected.png: Removed.
        * platform/chromium-linux-x86_64/fast/html/details-add-summary-10-and-click-expected.png: Removed.
        * platform/chromium-linux-x86_64/fast/html/details-add-summary-10-expected.png: Removed.
        * platform/chromium-linux-x86_64/fast/html/details-add-summary-2-and-click-expected.png: Removed.
        * platform/chromium-linux-x86_64/fast/html/details-add-summary-2-expected.png: Removed.
        * platform/chromium-linux-x86_64/fast/html/details-add-summary-3-and-click-expected.png: Removed.
        * platform/chromium-linux-x86_64/fast/html/details-add-summary-3-expected.png: Removed.
        * platform/chromium-linux-x86_64/fast/html/details-add-summary-4-and-click-expected.png: Removed.
        * platform/chromium-linux-x86_64/fast/html/details-add-summary-4-expected.png: Removed.
        * platform/chromium-linux-x86_64/fast/html/details-add-summary-5-and-click-expected.png: Removed.
        * platform/chromium-linux-x86_64/fast/html/details-add-summary-5-expected.png: Removed.
        * platform/chromium-linux-x86_64/fast/html/details-add-summary-6-and-click-expected.png: Removed.
        * platform/chromium-linux-x86_64/fast/html/details-add-summary-6-expected.png: Removed.
        * platform/chromium-linux-x86_64/fast/html/details-add-summary-7-and-click-expected.png: Removed.
        * platform/chromium-linux-x86_64/fast/html/details-add-summary-7-expected.png: Removed.
        * platform/chromium-linux-x86_64/fast/html/details-add-summary-8-and-click-expected.png: Removed.
        * platform/chromium-linux-x86_64/fast/html/details-add-summary-8-expected.png: Removed.
        * platform/chromium-linux-x86_64/fast/html/details-add-summary-9-and-click-expected.png: Removed.
        * platform/chromium-linux-x86_64/fast/html/details-add-summary-9-expected.png: Removed.
        * platform/chromium-linux-x86_64/fast/html/details-no-summary1-expected.png: Removed.
        * platform/chromium-linux-x86_64/fast/html/details-no-summary2-expected.png: Removed.
        * platform/chromium-linux-x86_64/fast/html/details-no-summary3-expected.png: Removed.
        * platform/chromium-linux-x86_64/fast/html/details-no-summary4-expected.png: Removed.
        * platform/chromium-linux-x86_64/fast/html/details-open-javascript-expected.png: Removed.
        * platform/chromium-linux-x86_64/fast/html/details-open1-expected.png: Removed.
        * platform/chromium-linux-x86_64/fast/html/details-open2-expected.png: Removed.
        * platform/chromium-linux-x86_64/fast/html/details-open3-expected.png: Removed.
        * platform/chromium-linux-x86_64/fast/html/details-open4-expected.png: Removed.
        * platform/chromium-linux-x86_64/fast/html/details-open5-expected.png: Removed.
        * platform/chromium-linux-x86_64/fast/html/details-open6-expected.png: Removed.
        * platform/chromium-linux-x86_64/fast/html/details-position-expected.png: Removed.
        * platform/chromium-linux-x86_64/fast/html/details-remove-summary-1-and-click-expected.png: Removed.
        * platform/chromium-linux-x86_64/fast/html/details-remove-summary-1-expected.png: Removed.
        * platform/chromium-linux-x86_64/fast/html/details-remove-summary-2-and-click-expected.png: Removed.
        * platform/chromium-linux-x86_64/fast/html/details-remove-summary-2-expected.png: Removed.
        * platform/chromium-linux-x86_64/fast/html/details-remove-summary-3-and-click-expected.png: Removed.
        * platform/chromium-linux-x86_64/fast/html/details-remove-summary-3-expected.png: Removed.
        * platform/chromium-linux-x86_64/fast/html/details-remove-summary-4-and-click-expected.png: Removed.
        * platform/chromium-linux-x86_64/fast/html/details-remove-summary-4-expected.png: Removed.
        * platform/chromium-linux-x86_64/fast/html/details-remove-summary-5-and-click-expected.png: Removed.
        * platform/chromium-linux-x86_64/fast/html/details-remove-summary-5-expected.png: Removed.
        * platform/chromium-linux-x86_64/fast/html/details-remove-summary-6-and-click-expected.png: Removed.
        * platform/chromium-linux-x86_64/fast/html/details-remove-summary-6-expected.png: Removed.
        * platform/chromium-linux-x86_64/fast/html/details-writing-mode-expected.png: Removed.
        * platform/chromium-linux/fast/html/details-add-summary-1-and-click-expected.png:
        * platform/chromium-linux/fast/html/details-add-summary-1-expected.png:
        * platform/chromium-linux/fast/html/details-add-summary-10-and-click-expected.png:
        * platform/chromium-linux/fast/html/details-add-summary-10-expected.png:
        * platform/chromium-linux/fast/html/details-add-summary-2-and-click-expected.png:
        * platform/chromium-linux/fast/html/details-add-summary-2-expected.png:
        * platform/chromium-linux/fast/html/details-add-summary-3-and-click-expected.png:
        * platform/chromium-linux/fast/html/details-add-summary-3-expected.png:
        * platform/chromium-linux/fast/html/details-add-summary-4-and-click-expected.png:
        * platform/chromium-linux/fast/html/details-add-summary-4-expected.png:
        * platform/chromium-linux/fast/html/details-add-summary-5-and-click-expected.png:
        * platform/chromium-linux/fast/html/details-add-summary-5-expected.png:
        * platform/chromium-linux/fast/html/details-add-summary-6-and-click-expected.png:
        * platform/chromium-linux/fast/html/details-add-summary-6-expected.png:
        * platform/chromium-linux/fast/html/details-add-summary-7-and-click-expected.png:
        * platform/chromium-linux/fast/html/details-add-summary-7-expected.png:
        * platform/chromium-linux/fast/html/details-add-summary-8-and-click-expected.png:
        * platform/chromium-linux/fast/html/details-add-summary-8-expected.png:
        * platform/chromium-linux/fast/html/details-add-summary-9-and-click-expected.png:
        * platform/chromium-linux/fast/html/details-add-summary-9-expected.png:
        * platform/chromium-linux/fast/html/details-no-summary1-expected.png:
        * platform/chromium-linux/fast/html/details-no-summary2-expected.png:
        * platform/chromium-linux/fast/html/details-no-summary3-expected.png:
        * platform/chromium-linux/fast/html/details-no-summary4-expected.png:
        * platform/chromium-linux/fast/html/details-open-javascript-expected.png:
        * platform/chromium-linux/fast/html/details-open1-expected.png:
        * platform/chromium-linux/fast/html/details-open2-expected.png:
        * platform/chromium-linux/fast/html/details-open3-expected.png:
        * platform/chromium-linux/fast/html/details-open4-expected.png:
        * platform/chromium-linux/fast/html/details-open5-expected.png:
        * platform/chromium-linux/fast/html/details-open6-expected.png:
        * platform/chromium-linux/fast/html/details-position-expected.png:
        * platform/chromium-linux/fast/html/details-remove-summary-1-and-click-expected.png:
        * platform/chromium-linux/fast/html/details-remove-summary-1-expected.png:
        * platform/chromium-linux/fast/html/details-remove-summary-2-and-click-expected.png:
        * platform/chromium-linux/fast/html/details-remove-summary-2-expected.png:
        * platform/chromium-linux/fast/html/details-remove-summary-3-and-click-expected.png:
        * platform/chromium-linux/fast/html/details-remove-summary-3-expected.png:
        * platform/chromium-linux/fast/html/details-remove-summary-4-and-click-expected.png:
        * platform/chromium-linux/fast/html/details-remove-summary-4-expected.png:
        * platform/chromium-linux/fast/html/details-remove-summary-5-and-click-expected.png:
        * platform/chromium-linux/fast/html/details-remove-summary-5-expected.png:
        * platform/chromium-linux/fast/html/details-remove-summary-6-and-click-expected.png:
        * platform/chromium-linux/fast/html/details-remove-summary-6-expected.png:
        * platform/chromium-linux/fast/html/details-writing-mode-expected.png:
        * platform/chromium-mac/fast/html/details-add-summary-1-and-click-expected.png: Renamed from LayoutTests/platform/chromium-mac-leopard/fast/html/details-add-summary-1-and-click-expected.png.
        * platform/chromium-mac/fast/html/details-add-summary-1-expected.png: Renamed from LayoutTests/platform/chromium-mac-leopard/fast/html/details-add-summary-1-expected.png.
        * platform/chromium-mac/fast/html/details-add-summary-10-and-click-expected.png: Renamed from LayoutTests/platform/chromium-mac-leopard/fast/html/details-add-summary-10-and-click-expected.png.
        * platform/chromium-mac/fast/html/details-add-summary-10-expected.png: Renamed from LayoutTests/platform/chromium-mac-leopard/fast/html/details-add-summary-10-expected.png.
        * platform/chromium-mac/fast/html/details-add-summary-2-and-click-expected.png: Renamed from LayoutTests/platform/chromium-mac-leopard/fast/html/details-add-summary-2-and-click-expected.png.
        * platform/chromium-mac/fast/html/details-add-summary-2-expected.png: Renamed from LayoutTests/platform/chromium-mac-leopard/fast/html/details-add-summary-2-expected.png.
        * platform/chromium-mac/fast/html/details-add-summary-3-and-click-expected.png: Renamed from LayoutTests/platform/chromium-mac-leopard/fast/html/details-add-summary-3-and-click-expected.png.
        * platform/chromium-mac/fast/html/details-add-summary-3-expected.png: Renamed from LayoutTests/platform/chromium-mac-leopard/fast/html/details-add-summary-3-expected.png.
        * platform/chromium-mac/fast/html/details-add-summary-4-and-click-expected.png: Renamed from LayoutTests/platform/chromium-mac-leopard/fast/html/details-add-summary-4-and-click-expected.png.
        * platform/chromium-mac/fast/html/details-add-summary-4-expected.png: Renamed from LayoutTests/platform/chromium-mac-leopard/fast/html/details-add-summary-4-expected.png.
        * platform/chromium-mac/fast/html/details-add-summary-5-and-click-expected.png: Renamed from LayoutTests/platform/chromium-mac-leopard/fast/html/details-add-summary-5-and-click-expected.png.
        * platform/chromium-mac/fast/html/details-add-summary-5-expected.png: Renamed from LayoutTests/platform/chromium-mac-leopard/fast/html/details-add-summary-5-expected.png.
        * platform/chromium-mac/fast/html/details-add-summary-6-and-click-expected.png: Renamed from LayoutTests/platform/chromium-mac-leopard/fast/html/details-add-summary-6-and-click-expected.png.
        * platform/chromium-mac/fast/html/details-add-summary-6-expected.png: Renamed from LayoutTests/platform/chromium-mac-leopard/fast/html/details-add-summary-6-expected.png.
        * platform/chromium-mac/fast/html/details-add-summary-7-and-click-expected.png: Renamed from LayoutTests/platform/chromium-mac-leopard/fast/html/details-add-summary-7-and-click-expected.png.
        * platform/chromium-mac/fast/html/details-add-summary-7-expected.png: Renamed from LayoutTests/platform/chromium-mac-leopard/fast/html/details-add-summary-7-expected.png.
        * platform/chromium-mac/fast/html/details-add-summary-8-and-click-expected.png: Renamed from LayoutTests/platform/chromium-mac-leopard/fast/html/details-add-summary-8-and-click-expected.png.
        * platform/chromium-mac/fast/html/details-add-summary-8-expected.png: Renamed from LayoutTests/platform/chromium-mac-leopard/fast/html/details-add-summary-8-expected.png.
        * platform/chromium-mac/fast/html/details-add-summary-9-and-click-expected.png: Renamed from LayoutTests/platform/chromium-mac-leopard/fast/html/details-add-summary-9-and-click-expected.png.
        * platform/chromium-mac/fast/html/details-add-summary-9-expected.png: Renamed from LayoutTests/platform/chromium-mac-leopard/fast/html/details-add-summary-9-expected.png.
        * platform/chromium-mac/fast/html/details-no-summary1-expected.png: Renamed from LayoutTests/platform/chromium-mac-leopard/fast/html/details-no-summary1-expected.png.
        * platform/chromium-mac/fast/html/details-no-summary2-expected.png: Renamed from LayoutTests/platform/chromium-mac-leopard/fast/html/details-no-summary2-expected.png.
        * platform/chromium-mac/fast/html/details-no-summary3-expected.png: Renamed from LayoutTests/platform/chromium-mac-leopard/fast/html/details-no-summary3-expected.png.
        * platform/chromium-mac/fast/html/details-no-summary4-expected.png: Renamed from LayoutTests/platform/chromium-mac-leopard/fast/html/details-no-summary4-expected.png.
        * platform/chromium-mac/fast/html/details-open-javascript-expected.png: Renamed from LayoutTests/platform/chromium-mac-leopard/fast/html/details-open-javascript-expected.png.
        * platform/chromium-mac/fast/html/details-open1-expected.png: Renamed from LayoutTests/platform/chromium-mac-leopard/fast/html/details-open1-expected.png.
        * platform/chromium-mac/fast/html/details-open2-expected.png: Renamed from LayoutTests/platform/chromium-mac-leopard/fast/html/details-open2-expected.png.
        * platform/chromium-mac/fast/html/details-open3-expected.png: Renamed from LayoutTests/platform/chromium-mac-leopard/fast/html/details-open3-expected.png.
        * platform/chromium-mac/fast/html/details-open4-expected.png: Renamed from LayoutTests/platform/chromium-mac-leopard/fast/html/details-open4-expected.png.
        * platform/chromium-mac/fast/html/details-open5-expected.png: Renamed from LayoutTests/platform/chromium-mac-leopard/fast/html/details-open5-expected.png.
        * platform/chromium-mac/fast/html/details-open6-expected.png: Renamed from LayoutTests/platform/chromium-mac-leopard/fast/html/details-open6-expected.png.
        * platform/chromium-mac/fast/html/details-position-expected.png: Renamed from LayoutTests/platform/chromium-mac-leopard/fast/html/details-position-expected.png.
        * platform/chromium-mac/fast/html/details-remove-summary-1-and-click-expected.png: Renamed from LayoutTests/platform/chromium-mac-leopard/fast/html/details-remove-summary-1-and-click-expected.png.
        * platform/chromium-mac/fast/html/details-remove-summary-1-expected.png: Renamed from LayoutTests/platform/chromium-mac-leopard/fast/html/details-remove-summary-1-expected.png.
        * platform/chromium-mac/fast/html/details-remove-summary-2-and-click-expected.png: Renamed from LayoutTests/platform/chromium-mac-leopard/fast/html/details-remove-summary-2-and-click-expected.png.
        * platform/chromium-mac/fast/html/details-remove-summary-2-expected.png: Renamed from LayoutTests/platform/chromium-mac-leopard/fast/html/details-remove-summary-2-expected.png.
        * platform/chromium-mac/fast/html/details-remove-summary-3-and-click-expected.png: Renamed from LayoutTests/platform/chromium-mac-leopard/fast/html/details-remove-summary-3-and-click-expected.png.
        * platform/chromium-mac/fast/html/details-remove-summary-3-expected.png: Renamed from LayoutTests/platform/chromium-mac-leopard/fast/html/details-remove-summary-3-expected.png.
        * platform/chromium-mac/fast/html/details-remove-summary-4-and-click-expected.png: Renamed from LayoutTests/platform/chromium-mac-leopard/fast/html/details-remove-summary-4-and-click-expected.png.
        * platform/chromium-mac/fast/html/details-remove-summary-4-expected.png: Renamed from LayoutTests/platform/chromium-mac-leopard/fast/html/details-remove-summary-4-expected.png.
        * platform/chromium-mac/fast/html/details-remove-summary-5-and-click-expected.png: Renamed from LayoutTests/platform/chromium-mac-leopard/fast/html/details-remove-summary-5-and-click-expected.png.
        * platform/chromium-mac/fast/html/details-remove-summary-5-expected.png: Renamed from LayoutTests/platform/chromium-mac-leopard/fast/html/details-remove-summary-5-expected.png.
        * platform/chromium-mac/fast/html/details-remove-summary-6-and-click-expected.png: Renamed from LayoutTests/platform/chromium-mac-leopard/fast/html/details-remove-summary-6-and-click-expected.png.
        * platform/chromium-mac/fast/html/details-remove-summary-6-expected.png: Renamed from LayoutTests/platform/chromium-mac-leopard/fast/html/details-remove-summary-6-expected.png.
        * platform/chromium-mac/fast/html/details-writing-mode-expected.png: Renamed from LayoutTests/platform/chromium-mac-leopard/fast/html/details-writing-mode-expected.png.
        * platform/chromium-win-vista/fast/html/details-add-summary-1-and-click-expected.checksum: Removed.
        * platform/chromium-win-vista/fast/html/details-add-summary-1-expected.checksum: Removed.
        * platform/chromium-win-vista/fast/html/details-add-summary-10-and-click-expected.checksum: Removed.
        * platform/chromium-win-vista/fast/html/details-add-summary-10-expected.checksum: Removed.
        * platform/chromium-win-vista/fast/html/details-add-summary-2-and-click-expected.checksum: Removed.
        * platform/chromium-win-vista/fast/html/details-add-summary-2-expected.checksum: Removed.
        * platform/chromium-win-vista/fast/html/details-add-summary-3-and-click-expected.checksum: Removed.
        * platform/chromium-win-vista/fast/html/details-add-summary-3-expected.checksum: Removed.
        * platform/chromium-win-vista/fast/html/details-add-summary-4-and-click-expected.checksum: Removed.
        * platform/chromium-win-vista/fast/html/details-add-summary-4-expected.checksum: Removed.
        * platform/chromium-win-vista/fast/html/details-add-summary-5-and-click-expected.checksum: Removed.
        * platform/chromium-win-vista/fast/html/details-add-summary-5-expected.checksum: Removed.
        * platform/chromium-win-vista/fast/html/details-add-summary-6-and-click-expected.checksum: Removed.
        * platform/chromium-win-vista/fast/html/details-add-summary-6-expected.checksum: Removed.
        * platform/chromium-win-vista/fast/html/details-add-summary-7-and-click-expected.checksum: Removed.
        * platform/chromium-win-vista/fast/html/details-add-summary-7-expected.checksum: Removed.
        * platform/chromium-win-vista/fast/html/details-add-summary-8-and-click-expected.checksum: Removed.
        * platform/chromium-win-vista/fast/html/details-add-summary-8-expected.checksum: Removed.
        * platform/chromium-win-vista/fast/html/details-add-summary-9-and-click-expected.checksum: Removed.
        * platform/chromium-win-vista/fast/html/details-add-summary-9-expected.checksum: Removed.
        * platform/chromium-win-vista/fast/html/details-no-summary1-expected.checksum: Removed.
        * platform/chromium-win-vista/fast/html/details-no-summary2-expected.checksum: Removed.
        * platform/chromium-win-vista/fast/html/details-no-summary3-expected.checksum: Removed.
        * platform/chromium-win-vista/fast/html/details-no-summary4-expected.checksum: Removed.
        * platform/chromium-win-vista/fast/html/details-open-javascript-expected.checksum: Removed.
        * platform/chromium-win-vista/fast/html/details-open1-expected.checksum: Removed.
        * platform/chromium-win-vista/fast/html/details-open2-expected.checksum: Removed.
        * platform/chromium-win-vista/fast/html/details-open3-expected.checksum: Removed.
        * platform/chromium-win-vista/fast/html/details-open4-expected.checksum: Removed.
        * platform/chromium-win-vista/fast/html/details-open5-expected.checksum: Removed.
        * platform/chromium-win-vista/fast/html/details-open6-expected.checksum: Removed.
        * platform/chromium-win-vista/fast/html/details-position-expected.checksum: Removed.
        * platform/chromium-win-vista/fast/html/details-remove-summary-1-and-click-expected.checksum: Removed.
        * platform/chromium-win-vista/fast/html/details-remove-summary-1-expected.checksum: Removed.
        * platform/chromium-win-vista/fast/html/details-remove-summary-2-and-click-expected.checksum: Removed.
        * platform/chromium-win-vista/fast/html/details-remove-summary-2-expected.checksum: Removed.
        * platform/chromium-win-vista/fast/html/details-remove-summary-3-and-click-expected.checksum: Removed.
        * platform/chromium-win-vista/fast/html/details-remove-summary-3-expected.checksum: Removed.
        * platform/chromium-win-vista/fast/html/details-remove-summary-4-and-click-expected.checksum: Removed.
        * platform/chromium-win-vista/fast/html/details-remove-summary-4-expected.checksum: Removed.
        * platform/chromium-win-vista/fast/html/details-remove-summary-5-and-click-expected.checksum: Removed.
        * platform/chromium-win-vista/fast/html/details-remove-summary-5-expected.checksum: Removed.
        * platform/chromium-win-vista/fast/html/details-remove-summary-6-and-click-expected.checksum: Removed.
        * platform/chromium-win-vista/fast/html/details-remove-summary-6-expected.checksum: Removed.
        * platform/chromium-win-vista/fast/html/details-writing-mode-expected.checksum: Removed.

2011-04-04  Pavel Podivilov  <podivilov@chromium.org>

        Unreviewed, udpate chromium test expectations after r82786.

        * platform/chromium-linux-x86_64/fast/table/colspanMinWidth-vertical-expected.png: Added.
        * platform/chromium-win-vista/fast/table/colspanMinWidth-vertical-expected.checksum: Added.
        * platform/chromium-win/fast/table/colspanMinWidth-vertical-expected.checksum: Removed.
        * platform/chromium-win/fast/table/colspanMinWidth-vertical-expected.png:
        * platform/chromium-win/fast/table/colspanMinWidth-vertical-expected.txt:

2011-04-04  Andrey Kosyakov  <caseq@chromium.org>

        Unreviewed. Followup to an incomplete commit in r82806.

        * inspector/extensions/extensions.html:

2011-04-04  Pavel Podivilov  <podivilov@chromium.org>

        Unreviewed, add chromium test expectations for tests added in r82780.

        * platform/chromium-mac/fast/dom/Element/scale-page-bounding-client-rect-expected.txt: Added.
        * platform/chromium-mac/fast/dom/Element/scale-page-client-rects-expected.txt: Added.
        * platform/chromium-mac/fast/dom/Range/scale-page-bounding-client-rect-expected.txt: Added.
        * platform/chromium-mac/fast/dom/Range/scale-page-client-rects-expected.txt: Added.
        * platform/chromium-win/fast/dom/Element/scale-page-bounding-client-rect-expected.txt: Added.
        * platform/chromium-win/fast/dom/Element/scale-page-client-rects-expected.txt: Added.
        * platform/chromium-win/fast/dom/Range/scale-page-bounding-client-rect-expected.txt: Added.
        * platform/chromium-win/fast/dom/Range/scale-page-client-rects-expected.txt: Added.

2011-04-04  Pavel Podivilov  <podivilov@chromium.org>

        Unreviewed, rebaseline chromium tests after r82783.

        * platform/chromium-linux-x86_64/fast/html/details-add-summary-1-and-click-expected.png: Copied from LayoutTests/platform/chromium-win/fast/html/details-add-summary-4-and-click-expected.png.
        * platform/chromium-linux-x86_64/fast/html/details-add-summary-1-expected.png: Copied from LayoutTests/platform/chromium-win/fast/html/details-remove-summary-5-expected.png.
        * platform/chromium-linux-x86_64/fast/html/details-add-summary-10-and-click-expected.png: Copied from LayoutTests/platform/chromium-win/fast/html/details-open1-expected.png.
        * platform/chromium-linux-x86_64/fast/html/details-add-summary-10-expected.png: Added.
        * platform/chromium-linux-x86_64/fast/html/details-add-summary-2-and-click-expected.png: Added.
        * platform/chromium-linux-x86_64/fast/html/details-add-summary-2-expected.png: Copied from LayoutTests/platform/chromium-win/fast/html/details-remove-summary-5-expected.png.
        * platform/chromium-linux-x86_64/fast/html/details-add-summary-3-and-click-expected.png: Added.
        * platform/chromium-linux-x86_64/fast/html/details-add-summary-3-expected.png: Copied from LayoutTests/platform/chromium-win/fast/html/details-open6-expected.png.
        * platform/chromium-linux-x86_64/fast/html/details-add-summary-4-and-click-expected.png: Added.
        * platform/chromium-linux-x86_64/fast/html/details-add-summary-4-expected.png: Copied from LayoutTests/platform/chromium-win/fast/html/details-add-summary-1-and-click-expected.png.
        * platform/chromium-linux-x86_64/fast/html/details-add-summary-5-and-click-expected.png: Added.
        * platform/chromium-linux-x86_64/fast/html/details-add-summary-5-expected.png: Copied from LayoutTests/platform/chromium-win/fast/html/details-remove-summary-5-expected.png.
        * platform/chromium-linux-x86_64/fast/html/details-add-summary-6-and-click-expected.png: Copied from LayoutTests/platform/chromium-win/fast/html/details-open1-expected.png.
        * platform/chromium-linux-x86_64/fast/html/details-add-summary-6-expected.png: Copied from LayoutTests/platform/chromium-win/fast/html/details-remove-summary-5-expected.png.
        * platform/chromium-linux-x86_64/fast/html/details-add-summary-7-and-click-expected.png: Copied from LayoutTests/platform/chromium-win/fast/html/details-open1-expected.png.
        * platform/chromium-linux-x86_64/fast/html/details-add-summary-7-expected.png: Added.
        * platform/chromium-linux-x86_64/fast/html/details-add-summary-8-and-click-expected.png: Copied from LayoutTests/platform/chromium-win/fast/html/details-remove-summary-5-and-click-expected.png.
        * platform/chromium-linux-x86_64/fast/html/details-add-summary-8-expected.png: Added.
        * platform/chromium-linux-x86_64/fast/html/details-add-summary-9-and-click-expected.png: Copied from LayoutTests/platform/chromium-win/fast/html/details-add-summary-9-and-click-expected.png.
        * platform/chromium-linux-x86_64/fast/html/details-add-summary-9-expected.png: Added.
        * platform/chromium-linux-x86_64/fast/html/details-no-summary1-expected.png: Copied from LayoutTests/platform/chromium-win/fast/html/details-remove-summary-3-and-click-expected.png.
        * platform/chromium-linux-x86_64/fast/html/details-no-summary2-expected.png: Copied from LayoutTests/platform/chromium-win/fast/html/details-add-summary-1-and-click-expected.png.
        * platform/chromium-linux-x86_64/fast/html/details-no-summary3-expected.png: Copied from LayoutTests/platform/chromium-win/fast/html/details-remove-summary-3-and-click-expected.png.
        * platform/chromium-linux-x86_64/fast/html/details-no-summary4-expected.png: Copied from LayoutTests/platform/chromium-win/fast/html/details-remove-summary-1-and-click-expected.png.
        * platform/chromium-linux-x86_64/fast/html/details-open-javascript-expected.png: Added.
        * platform/chromium-linux-x86_64/fast/html/details-open1-expected.png: Copied from LayoutTests/platform/chromium-win/fast/html/details-add-summary-1-and-click-expected.png.
        * platform/chromium-linux-x86_64/fast/html/details-open2-expected.png: Copied from LayoutTests/platform/chromium-win/fast/html/details-open1-expected.png.
        * platform/chromium-linux-x86_64/fast/html/details-open3-expected.png: Copied from LayoutTests/platform/chromium-win/fast/html/details-add-summary-1-and-click-expected.png.
        * platform/chromium-linux-x86_64/fast/html/details-open4-expected.png: Copied from LayoutTests/platform/chromium-win/fast/html/details-open1-expected.png.
        * platform/chromium-linux-x86_64/fast/html/details-open5-expected.png: Copied from LayoutTests/platform/chromium-win/fast/html/details-add-summary-1-and-click-expected.png.
        * platform/chromium-linux-x86_64/fast/html/details-open6-expected.png: Copied from LayoutTests/platform/chromium-win/fast/html/details-add-summary-8-and-click-expected.png.
        * platform/chromium-linux-x86_64/fast/html/details-position-expected.png: Added.
        * platform/chromium-linux-x86_64/fast/html/details-remove-summary-1-and-click-expected.png: Copied from LayoutTests/platform/chromium-win/fast/html/details-add-summary-4-and-click-expected.png.
        * platform/chromium-linux-x86_64/fast/html/details-remove-summary-1-expected.png: Copied from LayoutTests/platform/chromium-win/fast/html/details-remove-summary-3-and-click-expected.png.
        * platform/chromium-linux-x86_64/fast/html/details-remove-summary-2-and-click-expected.png: Copied from LayoutTests/platform/chromium-win/fast/html/details-add-summary-9-and-click-expected.png.
        * platform/chromium-linux-x86_64/fast/html/details-remove-summary-2-expected.png: Copied from LayoutTests/platform/chromium-win/fast/html/details-open1-expected.png.
        * platform/chromium-linux-x86_64/fast/html/details-remove-summary-3-and-click-expected.png: Copied from LayoutTests/platform/chromium-win/fast/html/details-add-summary-6-expected.png.
        * platform/chromium-linux-x86_64/fast/html/details-remove-summary-3-expected.png: Copied from LayoutTests/platform/chromium-win/fast/html/details-remove-summary-5-and-click-expected.png.
        * platform/chromium-linux-x86_64/fast/html/details-remove-summary-4-and-click-expected.png: Copied from LayoutTests/platform/chromium-win/fast/html/details-remove-summary-2-and-click-expected.png.
        * platform/chromium-linux-x86_64/fast/html/details-remove-summary-4-expected.png: Copied from LayoutTests/platform/chromium-win/fast/html/details-add-summary-1-and-click-expected.png.
        * platform/chromium-linux-x86_64/fast/html/details-remove-summary-5-and-click-expected.png: Copied from LayoutTests/platform/chromium-win/fast/html/details-open1-expected.png.
        * platform/chromium-linux-x86_64/fast/html/details-remove-summary-5-expected.png: Copied from LayoutTests/platform/chromium-win/fast/html/details-remove-summary-5-and-click-expected.png.
        * platform/chromium-linux-x86_64/fast/html/details-remove-summary-6-and-click-expected.png: Copied from LayoutTests/platform/chromium-win/fast/html/details-remove-summary-4-and-click-expected.png.
        * platform/chromium-linux-x86_64/fast/html/details-remove-summary-6-expected.png: Copied from LayoutTests/platform/chromium-win/fast/html/details-open3-expected.png.
        * platform/chromium-linux-x86_64/fast/html/details-writing-mode-expected.png: Added.
        * platform/chromium-mac-leopard/fast/html/details-add-summary-1-and-click-expected.png: Added.
        * platform/chromium-mac-leopard/fast/html/details-add-summary-1-expected.png: Added.
        * platform/chromium-mac-leopard/fast/html/details-add-summary-10-and-click-expected.png: Added.
        * platform/chromium-mac-leopard/fast/html/details-add-summary-10-expected.png: Added.
        * platform/chromium-mac-leopard/fast/html/details-add-summary-2-and-click-expected.png: Added.
        * platform/chromium-mac-leopard/fast/html/details-add-summary-2-expected.png: Added.
        * platform/chromium-mac-leopard/fast/html/details-add-summary-3-and-click-expected.png: Added.
        * platform/chromium-mac-leopard/fast/html/details-add-summary-3-expected.png: Added.
        * platform/chromium-mac-leopard/fast/html/details-add-summary-4-and-click-expected.png: Added.
        * platform/chromium-mac-leopard/fast/html/details-add-summary-4-expected.png: Added.
        * platform/chromium-mac-leopard/fast/html/details-add-summary-5-and-click-expected.png: Added.
        * platform/chromium-mac-leopard/fast/html/details-add-summary-5-expected.png: Added.
        * platform/chromium-mac-leopard/fast/html/details-add-summary-6-and-click-expected.png: Added.
        * platform/chromium-mac-leopard/fast/html/details-add-summary-6-expected.png: Added.
        * platform/chromium-mac-leopard/fast/html/details-add-summary-7-and-click-expected.png: Added.
        * platform/chromium-mac-leopard/fast/html/details-add-summary-7-expected.png: Added.
        * platform/chromium-mac-leopard/fast/html/details-add-summary-8-and-click-expected.png: Added.
        * platform/chromium-mac-leopard/fast/html/details-add-summary-8-expected.png: Added.
        * platform/chromium-mac-leopard/fast/html/details-add-summary-9-and-click-expected.png: Added.
        * platform/chromium-mac-leopard/fast/html/details-add-summary-9-expected.png: Added.
        * platform/chromium-mac-leopard/fast/html/details-no-summary1-expected.png: Added.
        * platform/chromium-mac-leopard/fast/html/details-no-summary2-expected.png: Added.
        * platform/chromium-mac-leopard/fast/html/details-no-summary3-expected.png: Added.
        * platform/chromium-mac-leopard/fast/html/details-no-summary4-expected.png: Added.
        * platform/chromium-mac-leopard/fast/html/details-open-javascript-expected.png: Added.
        * platform/chromium-mac-leopard/fast/html/details-open1-expected.png: Added.
        * platform/chromium-mac-leopard/fast/html/details-open2-expected.png: Added.
        * platform/chromium-mac-leopard/fast/html/details-open3-expected.png: Added.
        * platform/chromium-mac-leopard/fast/html/details-open4-expected.png: Added.
        * platform/chromium-mac-leopard/fast/html/details-open5-expected.png: Added.
        * platform/chromium-mac-leopard/fast/html/details-open6-expected.png: Added.
        * platform/chromium-mac-leopard/fast/html/details-position-expected.png: Added.
        * platform/chromium-mac-leopard/fast/html/details-remove-summary-1-and-click-expected.png: Added.
        * platform/chromium-mac-leopard/fast/html/details-remove-summary-1-expected.png: Added.
        * platform/chromium-mac-leopard/fast/html/details-remove-summary-2-and-click-expected.png: Added.
        * platform/chromium-mac-leopard/fast/html/details-remove-summary-2-expected.png: Added.
        * platform/chromium-mac-leopard/fast/html/details-remove-summary-3-and-click-expected.png: Added.
        * platform/chromium-mac-leopard/fast/html/details-remove-summary-3-expected.png: Added.
        * platform/chromium-mac-leopard/fast/html/details-remove-summary-4-and-click-expected.png: Added.
        * platform/chromium-mac-leopard/fast/html/details-remove-summary-4-expected.png: Added.
        * platform/chromium-mac-leopard/fast/html/details-remove-summary-5-and-click-expected.png: Added.
        * platform/chromium-mac-leopard/fast/html/details-remove-summary-5-expected.png: Added.
        * platform/chromium-mac-leopard/fast/html/details-remove-summary-6-and-click-expected.png: Added.
        * platform/chromium-mac-leopard/fast/html/details-remove-summary-6-expected.png: Added.
        * platform/chromium-mac-leopard/fast/html/details-writing-mode-expected.png: Added.
        * platform/chromium-win-vista/fast/html/details-add-summary-1-and-click-expected.checksum: Added.
        * platform/chromium-win-vista/fast/html/details-add-summary-1-expected.checksum: Added.
        * platform/chromium-win-vista/fast/html/details-add-summary-10-and-click-expected.checksum: Added.
        * platform/chromium-win-vista/fast/html/details-add-summary-10-expected.checksum: Added.
        * platform/chromium-win-vista/fast/html/details-add-summary-2-and-click-expected.checksum: Added.
        * platform/chromium-win-vista/fast/html/details-add-summary-2-expected.checksum: Added.
        * platform/chromium-win-vista/fast/html/details-add-summary-3-and-click-expected.checksum: Added.
        * platform/chromium-win-vista/fast/html/details-add-summary-3-expected.checksum: Added.
        * platform/chromium-win-vista/fast/html/details-add-summary-4-and-click-expected.checksum: Added.
        * platform/chromium-win-vista/fast/html/details-add-summary-4-expected.checksum: Added.
        * platform/chromium-win-vista/fast/html/details-add-summary-5-and-click-expected.checksum: Added.
        * platform/chromium-win-vista/fast/html/details-add-summary-5-expected.checksum: Added.
        * platform/chromium-win-vista/fast/html/details-add-summary-6-and-click-expected.checksum: Added.
        * platform/chromium-win-vista/fast/html/details-add-summary-6-expected.checksum: Added.
        * platform/chromium-win-vista/fast/html/details-add-summary-7-and-click-expected.checksum: Added.
        * platform/chromium-win-vista/fast/html/details-add-summary-7-expected.checksum: Added.
        * platform/chromium-win-vista/fast/html/details-add-summary-8-and-click-expected.checksum: Added.
        * platform/chromium-win-vista/fast/html/details-add-summary-8-expected.checksum: Added.
        * platform/chromium-win-vista/fast/html/details-add-summary-9-and-click-expected.checksum: Added.
        * platform/chromium-win-vista/fast/html/details-add-summary-9-expected.checksum: Added.
        * platform/chromium-win-vista/fast/html/details-no-summary1-expected.checksum: Added.
        * platform/chromium-win-vista/fast/html/details-no-summary2-expected.checksum: Added.
        * platform/chromium-win-vista/fast/html/details-no-summary3-expected.checksum: Added.
        * platform/chromium-win-vista/fast/html/details-no-summary4-expected.checksum: Added.
        * platform/chromium-win-vista/fast/html/details-open-javascript-expected.checksum: Added.
        * platform/chromium-win-vista/fast/html/details-open1-expected.checksum: Added.
        * platform/chromium-win-vista/fast/html/details-open2-expected.checksum: Added.
        * platform/chromium-win-vista/fast/html/details-open3-expected.checksum: Added.
        * platform/chromium-win-vista/fast/html/details-open4-expected.checksum: Added.
        * platform/chromium-win-vista/fast/html/details-open5-expected.checksum: Added.
        * platform/chromium-win-vista/fast/html/details-open6-expected.checksum: Added.
        * platform/chromium-win-vista/fast/html/details-position-expected.checksum: Added.
        * platform/chromium-win-vista/fast/html/details-remove-summary-1-and-click-expected.checksum: Added.
        * platform/chromium-win-vista/fast/html/details-remove-summary-1-expected.checksum: Added.
        * platform/chromium-win-vista/fast/html/details-remove-summary-2-and-click-expected.checksum: Added.
        * platform/chromium-win-vista/fast/html/details-remove-summary-2-expected.checksum: Added.
        * platform/chromium-win-vista/fast/html/details-remove-summary-3-and-click-expected.checksum: Added.
        * platform/chromium-win-vista/fast/html/details-remove-summary-3-expected.checksum: Added.
        * platform/chromium-win-vista/fast/html/details-remove-summary-4-and-click-expected.checksum: Added.
        * platform/chromium-win-vista/fast/html/details-remove-summary-4-expected.checksum: Added.
        * platform/chromium-win-vista/fast/html/details-remove-summary-5-and-click-expected.checksum: Added.
        * platform/chromium-win-vista/fast/html/details-remove-summary-5-expected.checksum: Added.
        * platform/chromium-win-vista/fast/html/details-remove-summary-6-and-click-expected.checksum: Added.
        * platform/chromium-win-vista/fast/html/details-remove-summary-6-expected.checksum: Added.
        * platform/chromium-win-vista/fast/html/details-writing-mode-expected.checksum: Added.
        * platform/chromium-win/fast/html/details-add-summary-1-and-click-expected.checksum: Removed.
        * platform/chromium-win/fast/html/details-add-summary-1-and-click-expected.png:
        * platform/chromium-win/fast/html/details-add-summary-1-and-click-expected.txt:
        * platform/chromium-win/fast/html/details-add-summary-1-expected.checksum: Removed.
        * platform/chromium-win/fast/html/details-add-summary-1-expected.png:
        * platform/chromium-win/fast/html/details-add-summary-1-expected.txt:
        * platform/chromium-win/fast/html/details-add-summary-10-and-click-expected.checksum: Removed.
        * platform/chromium-win/fast/html/details-add-summary-10-and-click-expected.png:
        * platform/chromium-win/fast/html/details-add-summary-10-and-click-expected.txt:
        * platform/chromium-win/fast/html/details-add-summary-10-expected.checksum: Removed.
        * platform/chromium-win/fast/html/details-add-summary-10-expected.png:
        * platform/chromium-win/fast/html/details-add-summary-10-expected.txt:
        * platform/chromium-win/fast/html/details-add-summary-2-and-click-expected.checksum: Removed.
        * platform/chromium-win/fast/html/details-add-summary-2-and-click-expected.png:
        * platform/chromium-win/fast/html/details-add-summary-2-and-click-expected.txt:
        * platform/chromium-win/fast/html/details-add-summary-2-expected.checksum: Removed.
        * platform/chromium-win/fast/html/details-add-summary-2-expected.png:
        * platform/chromium-win/fast/html/details-add-summary-2-expected.txt:
        * platform/chromium-win/fast/html/details-add-summary-3-and-click-expected.checksum: Removed.
        * platform/chromium-win/fast/html/details-add-summary-3-and-click-expected.png:
        * platform/chromium-win/fast/html/details-add-summary-3-and-click-expected.txt:
        * platform/chromium-win/fast/html/details-add-summary-3-expected.checksum: Removed.
        * platform/chromium-win/fast/html/details-add-summary-3-expected.png:
        * platform/chromium-win/fast/html/details-add-summary-3-expected.txt:
        * platform/chromium-win/fast/html/details-add-summary-4-and-click-expected.checksum: Removed.
        * platform/chromium-win/fast/html/details-add-summary-4-and-click-expected.png:
        * platform/chromium-win/fast/html/details-add-summary-4-and-click-expected.txt:
        * platform/chromium-win/fast/html/details-add-summary-4-expected.checksum: Removed.
        * platform/chromium-win/fast/html/details-add-summary-4-expected.png:
        * platform/chromium-win/fast/html/details-add-summary-4-expected.txt:
        * platform/chromium-win/fast/html/details-add-summary-5-and-click-expected.checksum: Removed.
        * platform/chromium-win/fast/html/details-add-summary-5-and-click-expected.png:
        * platform/chromium-win/fast/html/details-add-summary-5-and-click-expected.txt:
        * platform/chromium-win/fast/html/details-add-summary-5-expected.checksum: Removed.
        * platform/chromium-win/fast/html/details-add-summary-5-expected.png:
        * platform/chromium-win/fast/html/details-add-summary-5-expected.txt:
        * platform/chromium-win/fast/html/details-add-summary-6-and-click-expected.checksum: Removed.
        * platform/chromium-win/fast/html/details-add-summary-6-and-click-expected.png:
        * platform/chromium-win/fast/html/details-add-summary-6-and-click-expected.txt:
        * platform/chromium-win/fast/html/details-add-summary-6-expected.checksum: Removed.
        * platform/chromium-win/fast/html/details-add-summary-6-expected.png:
        * platform/chromium-win/fast/html/details-add-summary-6-expected.txt:
        * platform/chromium-win/fast/html/details-add-summary-7-and-click-expected.checksum: Removed.
        * platform/chromium-win/fast/html/details-add-summary-7-and-click-expected.png:
        * platform/chromium-win/fast/html/details-add-summary-7-and-click-expected.txt:
        * platform/chromium-win/fast/html/details-add-summary-7-expected.checksum: Removed.
        * platform/chromium-win/fast/html/details-add-summary-7-expected.png:
        * platform/chromium-win/fast/html/details-add-summary-7-expected.txt:
        * platform/chromium-win/fast/html/details-add-summary-8-and-click-expected.checksum: Removed.
        * platform/chromium-win/fast/html/details-add-summary-8-and-click-expected.png:
        * platform/chromium-win/fast/html/details-add-summary-8-and-click-expected.txt:
        * platform/chromium-win/fast/html/details-add-summary-8-expected.checksum: Removed.
        * platform/chromium-win/fast/html/details-add-summary-8-expected.png:
        * platform/chromium-win/fast/html/details-add-summary-8-expected.txt:
        * platform/chromium-win/fast/html/details-add-summary-9-and-click-expected.checksum: Removed.
        * platform/chromium-win/fast/html/details-add-summary-9-and-click-expected.png:
        * platform/chromium-win/fast/html/details-add-summary-9-and-click-expected.txt:
        * platform/chromium-win/fast/html/details-add-summary-9-expected.checksum: Removed.
        * platform/chromium-win/fast/html/details-add-summary-9-expected.png:
        * platform/chromium-win/fast/html/details-add-summary-9-expected.txt:
        * platform/chromium-win/fast/html/details-no-summary1-expected.checksum: Removed.
        * platform/chromium-win/fast/html/details-no-summary1-expected.png:
        * platform/chromium-win/fast/html/details-no-summary1-expected.txt:
        * platform/chromium-win/fast/html/details-no-summary2-expected.checksum: Removed.
        * platform/chromium-win/fast/html/details-no-summary2-expected.png:
        * platform/chromium-win/fast/html/details-no-summary2-expected.txt:
        * platform/chromium-win/fast/html/details-no-summary3-expected.checksum: Removed.
        * platform/chromium-win/fast/html/details-no-summary3-expected.png:
        * platform/chromium-win/fast/html/details-no-summary3-expected.txt:
        * platform/chromium-win/fast/html/details-no-summary4-expected.checksum: Removed.
        * platform/chromium-win/fast/html/details-no-summary4-expected.png:
        * platform/chromium-win/fast/html/details-no-summary4-expected.txt:
        * platform/chromium-win/fast/html/details-open-javascript-expected.checksum: Removed.
        * platform/chromium-win/fast/html/details-open-javascript-expected.png:
        * platform/chromium-win/fast/html/details-open-javascript-expected.txt:
        * platform/chromium-win/fast/html/details-open1-expected.checksum: Removed.
        * platform/chromium-win/fast/html/details-open1-expected.png:
        * platform/chromium-win/fast/html/details-open1-expected.txt:
        * platform/chromium-win/fast/html/details-open2-expected.checksum: Removed.
        * platform/chromium-win/fast/html/details-open2-expected.png:
        * platform/chromium-win/fast/html/details-open2-expected.txt:
        * platform/chromium-win/fast/html/details-open3-expected.checksum: Removed.
        * platform/chromium-win/fast/html/details-open3-expected.png:
        * platform/chromium-win/fast/html/details-open3-expected.txt:
        * platform/chromium-win/fast/html/details-open4-expected.checksum: Removed.
        * platform/chromium-win/fast/html/details-open4-expected.png:
        * platform/chromium-win/fast/html/details-open4-expected.txt:
        * platform/chromium-win/fast/html/details-open5-expected.checksum: Removed.
        * platform/chromium-win/fast/html/details-open5-expected.png:
        * platform/chromium-win/fast/html/details-open5-expected.txt:
        * platform/chromium-win/fast/html/details-open6-expected.checksum: Removed.
        * platform/chromium-win/fast/html/details-open6-expected.png:
        * platform/chromium-win/fast/html/details-open6-expected.txt:
        * platform/chromium-win/fast/html/details-position-expected.checksum: Removed.
        * platform/chromium-win/fast/html/details-position-expected.png:
        * platform/chromium-win/fast/html/details-position-expected.txt:
        * platform/chromium-win/fast/html/details-remove-summary-1-and-click-expected.checksum: Removed.
        * platform/chromium-win/fast/html/details-remove-summary-1-and-click-expected.png:
        * platform/chromium-win/fast/html/details-remove-summary-1-and-click-expected.txt:
        * platform/chromium-win/fast/html/details-remove-summary-1-expected.checksum: Removed.
        * platform/chromium-win/fast/html/details-remove-summary-1-expected.png:
        * platform/chromium-win/fast/html/details-remove-summary-1-expected.txt:
        * platform/chromium-win/fast/html/details-remove-summary-2-and-click-expected.checksum: Removed.
        * platform/chromium-win/fast/html/details-remove-summary-2-and-click-expected.png:
        * platform/chromium-win/fast/html/details-remove-summary-2-and-click-expected.txt:
        * platform/chromium-win/fast/html/details-remove-summary-2-expected.checksum: Removed.
        * platform/chromium-win/fast/html/details-remove-summary-2-expected.png:
        * platform/chromium-win/fast/html/details-remove-summary-2-expected.txt:
        * platform/chromium-win/fast/html/details-remove-summary-3-and-click-expected.checksum: Removed.
        * platform/chromium-win/fast/html/details-remove-summary-3-and-click-expected.png:
        * platform/chromium-win/fast/html/details-remove-summary-3-and-click-expected.txt:
        * platform/chromium-win/fast/html/details-remove-summary-3-expected.checksum: Removed.
        * platform/chromium-win/fast/html/details-remove-summary-3-expected.png:
        * platform/chromium-win/fast/html/details-remove-summary-3-expected.txt:
        * platform/chromium-win/fast/html/details-remove-summary-4-and-click-expected.checksum: Removed.
        * platform/chromium-win/fast/html/details-remove-summary-4-and-click-expected.png:
        * platform/chromium-win/fast/html/details-remove-summary-4-and-click-expected.txt:
        * platform/chromium-win/fast/html/details-remove-summary-4-expected.checksum: Removed.
        * platform/chromium-win/fast/html/details-remove-summary-4-expected.png:
        * platform/chromium-win/fast/html/details-remove-summary-4-expected.txt:
        * platform/chromium-win/fast/html/details-remove-summary-5-and-click-expected.checksum: Removed.
        * platform/chromium-win/fast/html/details-remove-summary-5-and-click-expected.png:
        * platform/chromium-win/fast/html/details-remove-summary-5-and-click-expected.txt:
        * platform/chromium-win/fast/html/details-remove-summary-5-expected.checksum: Removed.
        * platform/chromium-win/fast/html/details-remove-summary-5-expected.png:
        * platform/chromium-win/fast/html/details-remove-summary-5-expected.txt:
        * platform/chromium-win/fast/html/details-remove-summary-6-and-click-expected.checksum: Removed.
        * platform/chromium-win/fast/html/details-remove-summary-6-and-click-expected.png:
        * platform/chromium-win/fast/html/details-remove-summary-6-and-click-expected.txt:
        * platform/chromium-win/fast/html/details-remove-summary-6-expected.checksum: Removed.
        * platform/chromium-win/fast/html/details-remove-summary-6-expected.png:
        * platform/chromium-win/fast/html/details-remove-summary-6-expected.txt:
        * platform/chromium-win/fast/html/details-writing-mode-expected.checksum: Removed.
        * platform/chromium-win/fast/html/details-writing-mode-expected.png:
        * platform/chromium-win/fast/html/details-writing-mode-expected.txt:
        * platform/chromium/test_expectations.txt:

2011-04-04  Andrey Kosyakov  <caseq@chromium.org>

        Reviewed by Yury Semikhatsky.

        Web Inspector: [Extensions API] Merge WatchExpressionSidebarPane into ExtensionSidebarPane
        https://bugs.webkit.org/show_bug.cgi?id=57622

        Merged WatchExpressionSidebarPane into ExtensionSidebarPane, added setPage(url).
        Fixed wrong getter in schema (scripts -> elements)

        * inspector/extensions/extensions-api-expected.txt:
        * inspector/extensions/extensions-expected.txt:
        * inspector/extensions/extensions.html:

2011-04-04  Ilya Tikhonovsky  <loislo@chromium.org>

        Reviewed by Pavel Feldman.

        Web Inspector: introduce support of 'optional' flag for command arguments.
        https://bugs.webkit.org/show_bug.cgi?id=57698

        * inspector/protocol/runtime-agent-expected.txt:
        * inspector/protocol/runtime-agent.html:
        * inspector/report-API-errors-expected.txt:
        * inspector/report-API-errors.html:
        * inspector/report-protocol-errors-expected.txt:

2011-04-01  Ilya Tikhonovsky  <loislo@chromium.org>

        Reviewed by Pavel Feldman.

        Web Inspector: introduce support of 'optional' flag for command arguments.
        https://bugs.webkit.org/show_bug.cgi?id=57698

        * inspector/report-API-errors-expected.txt:
        * inspector/report-protocol-errors-expected.txt:

2011-04-03  Kent Tamura  <tkent@chromium.org>

        Reviewed by Eric Seidel.

        Adding a test of value sanitization for <input type=text>
        https://bugs.webkit.org/show_bug.cgi?id=57737

        * fast/forms/input-value-sanitization-expected.txt:
        * fast/forms/script-tests/input-value-sanitization.js: Add tests for type=text.

2011-04-03  Dan Bernstein  <mitz@apple.com>

        Try to make this test more robust.

        * fast/blockflow/broken-ideographic-font.html: Ensure that the font has been loaded before
        letting the test finish.

2011-03-21  Ryosuke Niwa  <rniwa@webkit.org>

        Reviewed by Eric Seidel.

        editing commands shouldn't run when there's no body
        https://bugs.webkit.org/show_bug.cgi?id=56771

        Added tests to ensure WebKit does not crash when attempted to execute editing commands
        in an empty document. Also added a test to ensure WebKit does not crash when InsertImage
        is executed with selection endpoints being document. WebKit should ignore such attempts
        and should not crash.

        * editing/editability/empty-document-delete-expected.txt: Added.
        * editing/editability/empty-document-delete.html: Added.
        * editing/editability/empty-document-justify-right-expected.txt: Added.
        * editing/editability/empty-document-justify-right.html: Added.
        * editing/editability/empty-document-stylewithcss-expected.txt: Added.
        * editing/editability/empty-document-stylewithcss.html: Added.
        * editing/execCommand/insert-image-with-selecting-document-expected.txt: Added.
        * editing/execCommand/insert-image-with-selecting-document.html: Added.

2011-04-02  Dan Bernstein  <mitz@apple.com>

        Updated results showing a progression after r82787. The current time display
        is now correctly collapsed because the timeline container is not wide enough.

        * platform/gtk/media/video-zoom-controls-expected.txt:

2011-04-02  Dan Bernstein  <mitz@apple.com>

        Updated platform-specific results after r82787.

        * platform/gtk/fast/table/colspanMinWidth-vertical-expected.txt:

2011-04-02  Dan Bernstein  <mitz@apple.com>

        Reviewed by Dave Hyatt.

        Remove an unnecessary extra computeLogicalWidth() from line layout
        https://bugs.webkit.org/show_bug.cgi?id=57711

        These updated expected results show progressions in MathML tests.
        fast/table/colspanMinWidth-vertical results changed to show that text controls
        still do not handle vertical writing modes correctly.

        * platform/mac/fast/table/colspanMinWidth-vertical-expected.checksum:
        * platform/mac/fast/table/colspanMinWidth-vertical-expected.png:
        * platform/mac/fast/table/colspanMinWidth-vertical-expected.txt:
        * platform/mac/mathml/presentation/fractions-expected.checksum:
        * platform/mac/mathml/presentation/fractions-expected.png:
        * platform/mac/mathml/presentation/fractions-expected.txt:
        * platform/mac/mathml/presentation/fractions-vertical-alignment-expected.checksum:
        * platform/mac/mathml/presentation/fractions-vertical-alignment-expected.png:
        * platform/mac/mathml/presentation/fractions-vertical-alignment-expected.txt:
        * platform/mac/mathml/presentation/roots-expected.checksum:
        * platform/mac/mathml/presentation/roots-expected.png:
        * platform/mac/mathml/presentation/roots-expected.txt:
        * platform/mac/mathml/presentation/row-alignment-expected.checksum:
        * platform/mac/mathml/presentation/row-alignment-expected.png:
        * platform/mac/mathml/presentation/row-alignment-expected.txt:
        * platform/mac/mathml/presentation/subsup-expected.checksum:
        * platform/mac/mathml/presentation/subsup-expected.png:
        * platform/mac/mathml/presentation/subsup-expected.txt:

2011-04-02  Dan Bernstein  <mitz@apple.com>

        Updated platform-specific results after r82873.

        * platform/gtk/fast/html/details-add-summary-1-and-click-expected.txt:
        * platform/gtk/fast/html/details-add-summary-1-expected.txt:
        * platform/gtk/fast/html/details-add-summary-10-and-click-expected.txt:
        * platform/gtk/fast/html/details-add-summary-10-expected.txt:
        * platform/gtk/fast/html/details-add-summary-2-and-click-expected.txt:
        * platform/gtk/fast/html/details-add-summary-2-expected.txt:
        * platform/gtk/fast/html/details-add-summary-3-and-click-expected.txt:
        * platform/gtk/fast/html/details-add-summary-3-expected.txt:
        * platform/gtk/fast/html/details-add-summary-4-and-click-expected.txt:
        * platform/gtk/fast/html/details-add-summary-4-expected.txt:
        * platform/gtk/fast/html/details-add-summary-5-and-click-expected.txt:
        * platform/gtk/fast/html/details-add-summary-5-expected.txt:
        * platform/gtk/fast/html/details-add-summary-6-and-click-expected.txt:
        * platform/gtk/fast/html/details-add-summary-6-expected.txt:
        * platform/gtk/fast/html/details-add-summary-7-and-click-expected.txt:
        * platform/gtk/fast/html/details-add-summary-7-expected.txt:
        * platform/gtk/fast/html/details-add-summary-8-and-click-expected.txt:
        * platform/gtk/fast/html/details-add-summary-8-expected.txt:
        * platform/gtk/fast/html/details-add-summary-9-and-click-expected.txt:
        * platform/gtk/fast/html/details-add-summary-9-expected.txt:
        * platform/gtk/fast/html/details-no-summary1-expected.txt:
        * platform/gtk/fast/html/details-no-summary2-expected.txt:
        * platform/gtk/fast/html/details-no-summary3-expected.txt:
        * platform/gtk/fast/html/details-no-summary4-expected.txt:
        * platform/gtk/fast/html/details-open-javascript-expected.txt:
        * platform/gtk/fast/html/details-open1-expected.txt:
        * platform/gtk/fast/html/details-open2-expected.txt:
        * platform/gtk/fast/html/details-open3-expected.txt:
        * platform/gtk/fast/html/details-open4-expected.txt:
        * platform/gtk/fast/html/details-open5-expected.txt:
        * platform/gtk/fast/html/details-open6-expected.txt:
        * platform/gtk/fast/html/details-position-expected.txt:
        * platform/gtk/fast/html/details-remove-summary-1-and-click-expected.txt:
        * platform/gtk/fast/html/details-remove-summary-1-expected.txt:
        * platform/gtk/fast/html/details-remove-summary-2-and-click-expected.txt:
        * platform/gtk/fast/html/details-remove-summary-2-expected.txt:
        * platform/gtk/fast/html/details-remove-summary-3-and-click-expected.txt:
        * platform/gtk/fast/html/details-remove-summary-3-expected.txt:
        * platform/gtk/fast/html/details-remove-summary-4-and-click-expected.txt:
        * platform/gtk/fast/html/details-remove-summary-4-expected.txt:
        * platform/gtk/fast/html/details-remove-summary-5-and-click-expected.txt:
        * platform/gtk/fast/html/details-remove-summary-5-expected.txt:
        * platform/gtk/fast/html/details-remove-summary-6-and-click-expected.txt:
        * platform/gtk/fast/html/details-remove-summary-6-expected.txt:
        * platform/gtk/fast/html/details-writing-mode-expected.txt:
        * platform/qt/fast/html/details-add-summary-1-and-click-expected.txt:
        * platform/qt/fast/html/details-add-summary-1-expected.txt:
        * platform/qt/fast/html/details-add-summary-10-and-click-expected.txt:
        * platform/qt/fast/html/details-add-summary-10-expected.txt:
        * platform/qt/fast/html/details-add-summary-2-and-click-expected.txt:
        * platform/qt/fast/html/details-add-summary-2-expected.txt:
        * platform/qt/fast/html/details-add-summary-3-and-click-expected.txt:
        * platform/qt/fast/html/details-add-summary-3-expected.txt:
        * platform/qt/fast/html/details-add-summary-4-and-click-expected.txt:
        * platform/qt/fast/html/details-add-summary-4-expected.txt:
        * platform/qt/fast/html/details-add-summary-5-and-click-expected.txt:
        * platform/qt/fast/html/details-add-summary-5-expected.txt:
        * platform/qt/fast/html/details-add-summary-6-and-click-expected.txt:
        * platform/qt/fast/html/details-add-summary-6-expected.txt:
        * platform/qt/fast/html/details-add-summary-7-and-click-expected.txt:
        * platform/qt/fast/html/details-add-summary-7-expected.txt:
        * platform/qt/fast/html/details-add-summary-8-and-click-expected.txt:
        * platform/qt/fast/html/details-add-summary-8-expected.txt:
        * platform/qt/fast/html/details-add-summary-9-and-click-expected.txt:
        * platform/qt/fast/html/details-add-summary-9-expected.txt:
        * platform/qt/fast/html/details-no-summary1-expected.txt:
        * platform/qt/fast/html/details-no-summary2-expected.txt:
        * platform/qt/fast/html/details-no-summary3-expected.txt:
        * platform/qt/fast/html/details-no-summary4-expected.txt:
        * platform/qt/fast/html/details-open-javascript-expected.txt:
        * platform/qt/fast/html/details-open1-expected.txt:
        * platform/qt/fast/html/details-open2-expected.txt:
        * platform/qt/fast/html/details-open3-expected.txt:
        * platform/qt/fast/html/details-open4-expected.txt:
        * platform/qt/fast/html/details-open5-expected.txt:
        * platform/qt/fast/html/details-open6-expected.txt:
        * platform/qt/fast/html/details-position-expected.txt:
        * platform/qt/fast/html/details-remove-summary-1-and-click-expected.txt:
        * platform/qt/fast/html/details-remove-summary-1-expected.txt:
        * platform/qt/fast/html/details-remove-summary-2-and-click-expected.txt:
        * platform/qt/fast/html/details-remove-summary-2-expected.txt:
        * platform/qt/fast/html/details-remove-summary-3-and-click-expected.txt:
        * platform/qt/fast/html/details-remove-summary-3-expected.txt:
        * platform/qt/fast/html/details-remove-summary-4-and-click-expected.txt:
        * platform/qt/fast/html/details-remove-summary-4-expected.txt:
        * platform/qt/fast/html/details-remove-summary-5-and-click-expected.txt:
        * platform/qt/fast/html/details-remove-summary-5-expected.txt:
        * platform/qt/fast/html/details-remove-summary-6-and-click-expected.txt:
        * platform/qt/fast/html/details-remove-summary-6-expected.txt:
        * platform/qt/fast/html/details-writing-mode-expected.txt:

2011-04-02  Dan Bernstein  <mitz@apple.com>

        Reviewed by Beth Dakin.

        <details> marker loses its margin
        https://bugs.webkit.org/show_bug.cgi?id=57713

        * platform/mac/fast/html/details-add-summary-1-and-click-expected.checksum:
        * platform/mac/fast/html/details-add-summary-1-and-click-expected.png:
        * platform/mac/fast/html/details-add-summary-1-and-click-expected.txt:
        * platform/mac/fast/html/details-add-summary-1-expected.checksum:
        * platform/mac/fast/html/details-add-summary-1-expected.png:
        * platform/mac/fast/html/details-add-summary-1-expected.txt:
        * platform/mac/fast/html/details-add-summary-10-and-click-expected.checksum:
        * platform/mac/fast/html/details-add-summary-10-and-click-expected.png:
        * platform/mac/fast/html/details-add-summary-10-and-click-expected.txt:
        * platform/mac/fast/html/details-add-summary-10-expected.checksum:
        * platform/mac/fast/html/details-add-summary-10-expected.png:
        * platform/mac/fast/html/details-add-summary-10-expected.txt:
        * platform/mac/fast/html/details-add-summary-2-and-click-expected.checksum:
        * platform/mac/fast/html/details-add-summary-2-and-click-expected.png:
        * platform/mac/fast/html/details-add-summary-2-and-click-expected.txt:
        * platform/mac/fast/html/details-add-summary-2-expected.checksum:
        * platform/mac/fast/html/details-add-summary-2-expected.png:
        * platform/mac/fast/html/details-add-summary-2-expected.txt:
        * platform/mac/fast/html/details-add-summary-3-and-click-expected.checksum:
        * platform/mac/fast/html/details-add-summary-3-and-click-expected.png:
        * platform/mac/fast/html/details-add-summary-3-and-click-expected.txt:
        * platform/mac/fast/html/details-add-summary-3-expected.checksum:
        * platform/mac/fast/html/details-add-summary-3-expected.png:
        * platform/mac/fast/html/details-add-summary-3-expected.txt:
        * platform/mac/fast/html/details-add-summary-4-and-click-expected.checksum:
        * platform/mac/fast/html/details-add-summary-4-and-click-expected.png:
        * platform/mac/fast/html/details-add-summary-4-and-click-expected.txt:
        * platform/mac/fast/html/details-add-summary-4-expected.checksum:
        * platform/mac/fast/html/details-add-summary-4-expected.png:
        * platform/mac/fast/html/details-add-summary-4-expected.txt:
        * platform/mac/fast/html/details-add-summary-5-and-click-expected.checksum:
        * platform/mac/fast/html/details-add-summary-5-and-click-expected.png:
        * platform/mac/fast/html/details-add-summary-5-and-click-expected.txt:
        * platform/mac/fast/html/details-add-summary-5-expected.checksum:
        * platform/mac/fast/html/details-add-summary-5-expected.png:
        * platform/mac/fast/html/details-add-summary-5-expected.txt:
        * platform/mac/fast/html/details-add-summary-6-and-click-expected.checksum:
        * platform/mac/fast/html/details-add-summary-6-and-click-expected.png:
        * platform/mac/fast/html/details-add-summary-6-and-click-expected.txt:
        * platform/mac/fast/html/details-add-summary-6-expected.checksum:
        * platform/mac/fast/html/details-add-summary-6-expected.png:
        * platform/mac/fast/html/details-add-summary-6-expected.txt:
        * platform/mac/fast/html/details-add-summary-7-and-click-expected.checksum:
        * platform/mac/fast/html/details-add-summary-7-and-click-expected.png:
        * platform/mac/fast/html/details-add-summary-7-and-click-expected.txt:
        * platform/mac/fast/html/details-add-summary-7-expected.checksum:
        * platform/mac/fast/html/details-add-summary-7-expected.png:
        * platform/mac/fast/html/details-add-summary-7-expected.txt:
        * platform/mac/fast/html/details-add-summary-8-and-click-expected.checksum:
        * platform/mac/fast/html/details-add-summary-8-and-click-expected.png:
        * platform/mac/fast/html/details-add-summary-8-and-click-expected.txt:
        * platform/mac/fast/html/details-add-summary-8-expected.checksum:
        * platform/mac/fast/html/details-add-summary-8-expected.png:
        * platform/mac/fast/html/details-add-summary-8-expected.txt:
        * platform/mac/fast/html/details-add-summary-9-and-click-expected.checksum:
        * platform/mac/fast/html/details-add-summary-9-and-click-expected.png:
        * platform/mac/fast/html/details-add-summary-9-and-click-expected.txt:
        * platform/mac/fast/html/details-add-summary-9-expected.checksum:
        * platform/mac/fast/html/details-add-summary-9-expected.png:
        * platform/mac/fast/html/details-add-summary-9-expected.txt:
        * platform/mac/fast/html/details-no-summary1-expected.checksum:
        * platform/mac/fast/html/details-no-summary1-expected.png:
        * platform/mac/fast/html/details-no-summary1-expected.txt:
        * platform/mac/fast/html/details-no-summary2-expected.checksum:
        * platform/mac/fast/html/details-no-summary2-expected.png:
        * platform/mac/fast/html/details-no-summary2-expected.txt:
        * platform/mac/fast/html/details-no-summary3-expected.checksum:
        * platform/mac/fast/html/details-no-summary3-expected.png:
        * platform/mac/fast/html/details-no-summary3-expected.txt:
        * platform/mac/fast/html/details-no-summary4-expected.checksum:
        * platform/mac/fast/html/details-no-summary4-expected.png:
        * platform/mac/fast/html/details-no-summary4-expected.txt:
        * platform/mac/fast/html/details-open-javascript-expected.checksum:
        * platform/mac/fast/html/details-open-javascript-expected.png:
        * platform/mac/fast/html/details-open-javascript-expected.txt:
        * platform/mac/fast/html/details-open1-expected.checksum:
        * platform/mac/fast/html/details-open1-expected.png:
        * platform/mac/fast/html/details-open1-expected.txt:
        * platform/mac/fast/html/details-open2-expected.checksum:
        * platform/mac/fast/html/details-open2-expected.png:
        * platform/mac/fast/html/details-open2-expected.txt:
        * platform/mac/fast/html/details-open3-expected.checksum:
        * platform/mac/fast/html/details-open3-expected.png:
        * platform/mac/fast/html/details-open3-expected.txt:
        * platform/mac/fast/html/details-open4-expected.checksum:
        * platform/mac/fast/html/details-open4-expected.png:
        * platform/mac/fast/html/details-open4-expected.txt:
        * platform/mac/fast/html/details-open5-expected.checksum:
        * platform/mac/fast/html/details-open5-expected.png:
        * platform/mac/fast/html/details-open5-expected.txt:
        * platform/mac/fast/html/details-open6-expected.checksum:
        * platform/mac/fast/html/details-open6-expected.png:
        * platform/mac/fast/html/details-open6-expected.txt:
        * platform/mac/fast/html/details-position-expected.checksum:
        * platform/mac/fast/html/details-position-expected.png:
        * platform/mac/fast/html/details-position-expected.txt:
        * platform/mac/fast/html/details-remove-summary-1-and-click-expected.checksum:
        * platform/mac/fast/html/details-remove-summary-1-and-click-expected.png:
        * platform/mac/fast/html/details-remove-summary-1-and-click-expected.txt:
        * platform/mac/fast/html/details-remove-summary-1-expected.checksum:
        * platform/mac/fast/html/details-remove-summary-1-expected.png:
        * platform/mac/fast/html/details-remove-summary-1-expected.txt:
        * platform/mac/fast/html/details-remove-summary-2-and-click-expected.checksum:
        * platform/mac/fast/html/details-remove-summary-2-and-click-expected.png:
        * platform/mac/fast/html/details-remove-summary-2-and-click-expected.txt:
        * platform/mac/fast/html/details-remove-summary-2-expected.checksum:
        * platform/mac/fast/html/details-remove-summary-2-expected.png:
        * platform/mac/fast/html/details-remove-summary-2-expected.txt:
        * platform/mac/fast/html/details-remove-summary-3-and-click-expected.checksum:
        * platform/mac/fast/html/details-remove-summary-3-and-click-expected.png:
        * platform/mac/fast/html/details-remove-summary-3-and-click-expected.txt:
        * platform/mac/fast/html/details-remove-summary-3-expected.checksum:
        * platform/mac/fast/html/details-remove-summary-3-expected.png:
        * platform/mac/fast/html/details-remove-summary-3-expected.txt:
        * platform/mac/fast/html/details-remove-summary-4-and-click-expected.checksum:
        * platform/mac/fast/html/details-remove-summary-4-and-click-expected.png:
        * platform/mac/fast/html/details-remove-summary-4-and-click-expected.txt:
        * platform/mac/fast/html/details-remove-summary-4-expected.checksum:
        * platform/mac/fast/html/details-remove-summary-4-expected.png:
        * platform/mac/fast/html/details-remove-summary-4-expected.txt:
        * platform/mac/fast/html/details-remove-summary-5-and-click-expected.checksum:
        * platform/mac/fast/html/details-remove-summary-5-and-click-expected.png:
        * platform/mac/fast/html/details-remove-summary-5-and-click-expected.txt:
        * platform/mac/fast/html/details-remove-summary-5-expected.checksum:
        * platform/mac/fast/html/details-remove-summary-5-expected.png:
        * platform/mac/fast/html/details-remove-summary-5-expected.txt:
        * platform/mac/fast/html/details-remove-summary-6-and-click-expected.checksum:
        * platform/mac/fast/html/details-remove-summary-6-and-click-expected.png:
        * platform/mac/fast/html/details-remove-summary-6-and-click-expected.txt:
        * platform/mac/fast/html/details-remove-summary-6-expected.checksum:
        * platform/mac/fast/html/details-remove-summary-6-expected.png:
        * platform/mac/fast/html/details-remove-summary-6-expected.txt:
        * platform/mac/fast/html/details-writing-mode-expected.checksum:
        * platform/mac/fast/html/details-writing-mode-expected.png:
        * platform/mac/fast/html/details-writing-mode-expected.txt:

2011-04-02  Andy Estes  <aestes@apple.com>

        Reviewed by Oliver Hunt.

        REGRESSION (r69237): Black border around map elements while using an image map on Mac platform
        https://bugs.webkit.org/show_bug.cgi?id=52518

        * fast/images/imagemap-focus-ring-zero-outline-width.html: Added.
        * platform/mac/fast/images/imagemap-focus-ring-zero-outline-width-expected.checksum: Added.
        * platform/mac/fast/images/imagemap-focus-ring-zero-outline-width-expected.png: Added.
        * platform/mac/fast/images/imagemap-focus-ring-zero-outline-width-expected.txt: Added.

2011-04-01  Beth Dakin  <bdakin@apple.com>

        Reviewed by Sam Weinig.

        https://bugs.webkit.org/show_bug.cgi?id=57605
        Frame::pageScaleFactor() should not affect getBoundingClientRect() or
        getClientRects()
        -and corresponding-
        <rdar://problem/9194541>

        * fast/dom/Element/scale-page-bounding-client-rect-expected.txt: Added.
        * fast/dom/Element/scale-page-bounding-client-rect.html: Added.
        * fast/dom/Element/scale-page-client-rects-expected.txt: Added.
        * fast/dom/Element/scale-page-client-rects.html: Added.
        * fast/dom/Range/scale-page-bounding-client-rect-expected.txt: Added.
        * fast/dom/Range/scale-page-bounding-client-rect.html: Added.
        * fast/dom/Range/scale-page-client-rects-expected.txt: Added.
        * fast/dom/Range/scale-page-client-rects.html: Added.
        * platform/gtk/Skipped:
        * platform/qt/Skipped:
        * platform/win/Skipped:

2011-04-02  Dan Bernstein  <mitz@apple.com>

        Reverted r82775 due to changes in <details> test results, which are
        likely progressions.

        * platform/mac/fast/table/colspanMinWidth-vertical-expected.checksum:
        * platform/mac/fast/table/colspanMinWidth-vertical-expected.png:
        * platform/mac/fast/table/colspanMinWidth-vertical-expected.txt:
        * platform/mac/mathml/presentation/fractions-expected.checksum:
        * platform/mac/mathml/presentation/fractions-expected.png:
        * platform/mac/mathml/presentation/fractions-expected.txt:
        * platform/mac/mathml/presentation/fractions-vertical-alignment-expected.checksum:
        * platform/mac/mathml/presentation/fractions-vertical-alignment-expected.png:
        * platform/mac/mathml/presentation/fractions-vertical-alignment-expected.txt:
        * platform/mac/mathml/presentation/roots-expected.checksum:
        * platform/mac/mathml/presentation/roots-expected.png:
        * platform/mac/mathml/presentation/roots-expected.txt:
        * platform/mac/mathml/presentation/row-alignment-expected.checksum:
        * platform/mac/mathml/presentation/row-alignment-expected.png:
        * platform/mac/mathml/presentation/row-alignment-expected.txt:
        * platform/mac/mathml/presentation/subsup-expected.checksum:
        * platform/mac/mathml/presentation/subsup-expected.png:
        * platform/mac/mathml/presentation/subsup-expected.txt:

2011-04-02  Dan Bernstein  <mitz@apple.com>

        Reviewed by Dave Hyatt.

        Remove an unnecessary extra computeLogicalWidth() from line layout
        https://bugs.webkit.org/show_bug.cgi?id=57711

        These updated expected results show progressions in MathML tests.
        fast/table/colspanMinWidth-vertical results changed to show that text controls
        still do not handle vertical writing modes correctly.

        * platform/mac/fast/table/colspanMinWidth-vertical-expected.checksum:
        * platform/mac/fast/table/colspanMinWidth-vertical-expected.png:
        * platform/mac/fast/table/colspanMinWidth-vertical-expected.txt:
        * platform/mac/mathml/presentation/fractions-expected.checksum:
        * platform/mac/mathml/presentation/fractions-expected.png:
        * platform/mac/mathml/presentation/fractions-expected.txt:
        * platform/mac/mathml/presentation/fractions-vertical-alignment-expected.checksum:
        * platform/mac/mathml/presentation/fractions-vertical-alignment-expected.png:
        * platform/mac/mathml/presentation/fractions-vertical-alignment-expected.txt:
        * platform/mac/mathml/presentation/roots-expected.checksum:
        * platform/mac/mathml/presentation/roots-expected.png:
        * platform/mac/mathml/presentation/roots-expected.txt:
        * platform/mac/mathml/presentation/row-alignment-expected.checksum:
        * platform/mac/mathml/presentation/row-alignment-expected.png:
        * platform/mac/mathml/presentation/row-alignment-expected.txt:
        * platform/mac/mathml/presentation/subsup-expected.checksum:
        * platform/mac/mathml/presentation/subsup-expected.png:
        * platform/mac/mathml/presentation/subsup-expected.txt:

2011-04-02  Dominic Cooney  <dominicc@google.com>

        Reviewed by Martin Robinson.

        Add layoutTestController.shadowRoot to GTK DumpRenderTree.
        https://bugs.webkit.org/show_bug.cgi?id=57551

        * platform/gtk/Skipped: unskip test that accesses shadowRoot

2011-04-01  Anantanarayanan G Iyengar  <ananta@chromium.org>

        Reviewed by Eric Seidel.

        https://bugs.webkit.org/show_bug.cgi?id=57693
        Skipped the windowless_plugin_paint_test.html layout test on Webkit Windows.

        * platform/win/Skipped:

2011-04-01  Dimitri Glazkov  <dglazkov@chromium.org>

        Skip the test landed in r82758, since WebKitTestRunner doesn't implement
        displayInvalidatedRegion.

        * platform/mac-wk2/Skipped: Skipped the test.

2011-04-01  Adam Barth  <abarth@webkit.org>

        This test fails by timing out.

        * platform/chromium/test_expectations.txt:

2011-04-01  Dirk Pranke  <dpranke@chromium.org>

        Unreviewed, expectations change.

        Skipping fast/workers/dedicated-worker-lifecycle instead of
        treating it as SLOW. It appears to be downright flaky.

        https://bugs.webkit.org/show_bug.cgi?id=57678

        * platform/mac/test_expectations.txt:

2011-04-01  Dirk Pranke  <dpranke@chromium.org>

        Unreviewed, expectations change.

        Suppress some flaky bidi- and editing-related test failures on
        SL Mac NRWT runs. See:

        https://bugs.webkit.org/show_bug.cgi?id=57688

        * platform/mac/test_expectations.txt:

2011-04-01  Anantanarayanan G Iyengar  <ananta@chromium.org>

        Reviewed by Adam Barth.

        https://bugs.webkit.org/show_bug.cgi?id=45855
        Windowless plugins added dynamically to the DOM should receive paint events.
        This is done by ensuring that the plugin widget is marked for painting when
        it is added. Added a layout test which verifies that a dynamically added plugin
        receives a paint event. This test has to be skipped on chromium mac/linux and
        on gtk and qt as it relies on support for the displayInvalidatedRegion function
        in the LayoutTestController

        * platform/chromium/test_expectations.txt:
        * platform/gtk/Skipped:
        * platform/qt/Skipped:
        * plugins/windowless_plugin_paint_test-expected.txt: Added.
        * plugins/windowless_plugin_paint_test.html: Added.

2011-04-01  Sheriff Bot  <webkit.review.bot@gmail.com>

        Unreviewed, rolling out r82721.
        http://trac.webkit.org/changeset/82721
        https://bugs.webkit.org/show_bug.cgi?id=57687

        This patch introduced assertion failures on the GTK+ bots.
        (Requested by mrobinson on #webkit).

        * platform/gtk/Skipped:

2011-04-01  Sheriff Bot  <webkit.review.bot@gmail.com>

        Unreviewed, rolling out r82712, r82729, and r82746.
        http://trac.webkit.org/changeset/82712
        http://trac.webkit.org/changeset/82729
        http://trac.webkit.org/changeset/82746
        https://bugs.webkit.org/show_bug.cgi?id=57682

        fast/frames/frame-programmatic-noresize.html is failing on
        Windows bots. Will look into this offline. (Requested by dydx
        on #webkit).

        * fast/frames/frame-inherit-noresize-from-frameset-expected.txt: Removed.
        * fast/frames/frame-inherit-noresize-from-frameset.html: Removed.
        * fast/frames/frame-programmatic-noresize-expected.txt: Removed.
        * fast/frames/frame-programmatic-noresize.html: Removed.
        * fast/frames/frame-with-noresize-can-be-resized-after-removal-of-noresize-expected.txt: Removed.
        * fast/frames/frame-with-noresize-can-be-resized-after-removal-of-noresize.html: Removed.
        * fast/frames/frame-with-noresize-can-be-resized-after-setting-noResize-to-false-expected.txt: Removed.
        * fast/frames/frame-with-noresize-can-be-resized-after-setting-noResize-to-false.html: Removed.
        * fast/frames/resources/frame-programmatic-resize.js: Removed.
        * platform/chromium/test_expectations.txt:

2011-04-01  Adam Barth  <abarth@webkit.org>

        Mark failing test as failing.

        * platform/chromium/test_expectations.txt:

2011-04-01  Martin Robinson  <mrobinson@igalia.com>

        Unreviewed, rolling out r82708.
        http://trac.webkit.org/changeset/82708
        https://bugs.webkit.org/show_bug.cgi?id=53644

        This tests fails consistently when run along with other tests

        * platform/gtk/Skipped:
        * platform/gtk/editing/deleting/5408255-expected.checksum:
        * platform/gtk/editing/deleting/5408255-expected.png:
        * platform/gtk/editing/deleting/5408255-expected.txt:

2011-04-01  Dirk Pranke  <dpranke@chromium.org>

        Unreviewed, expectations change.

        Update mac new-run-webkit-tests expectations with SLOW tests.

        * platform/mac/test_expectations.txt:

2011-04-01  Adam Barth  <abarth@webkit.org>

        Skip platform/mac/plugins/convert-point.html because it relies on code
        that only exists in the test plugin for Apple's Mac port.  We generally
        ignore most of the tests in platform/mac, although we do run them to
        detect crashes.  In this case, however, the test does crash, but it
        crashes in the test plug-in, which doesn't matter to us.

        * platform/chromium/test_expectations.txt:

2011-04-01  Adam Barth  <abarth@webkit.org>

        Reviewed by Daniel Bates.

        Test assigning false to noResize instead of undefined
        https://bugs.webkit.org/show_bug.cgi?id=57668

        Apparently the V8 bindings have a bug when assigning undefined to a
        boolean attribute.  I've filed
        https://bugs.webkit.org/show_bug.cgi?id=57669 about that issue, which
        I'll address in another patch (obviously with a test).  In the
        meantime, this patch changes this test to test "false" instead of
        "undefined".

        * fast/frames/frame-programmatic-noresize-expected.txt:
        * fast/frames/frame-programmatic-noresize.html:

2011-04-01  Anders Carlsson  <andersca@apple.com>

        Reviewed by Sam Weinig.

        Shockwave plug-in doesn't accept mouse events
        https://bugs.webkit.org/show_bug.cgi?id=57653
        <rdar://problem/8483273>

        Add test.

        * platform/mac/plugins/convert-point-expected.txt: Added.
        * platform/mac/plugins/convert-point.html: Added.

2011-04-01  Dominic Cooney  <dominicc@google.com>

        Reviewed by Martin Robinson.

        Add layoutTestController.shadowRoot to GTK DumpRenderTree.
        https://bugs.webkit.org/show_bug.cgi?id=57551

        * platform/gtk/Skipped: unskip test that accesses shadowRoot

2011-04-01  Darin Adler  <darin@apple.com>

        Removed some more executable bits from files that don't need them.
        These often creep in when someone is working on Windows, which uses
        executable bits differently from Unix systems.

        * editing/execCommand/align-in-span.html: Removed property svn:executable.
        * editing/selection/extend-byline-withfloat.html: Removed property svn:executable.
        * fast/canvas/webgl/data-view-test.html: Removed property svn:executable.
        * fast/canvas/webgl/resources/gray-ramp-default-gamma.png: Removed property svn:executable.
        * fast/canvas/webgl/resources/gray-ramp-gamma0.1.png: Removed property svn:executable.
        * fast/canvas/webgl/resources/gray-ramp-gamma1.0.png: Removed property svn:executable.
        * fast/canvas/webgl/resources/gray-ramp-gamma2.0.png: Removed property svn:executable.
        * fast/canvas/webgl/resources/gray-ramp-gamma4.0.png: Removed property svn:executable.
        * fast/canvas/webgl/resources/gray-ramp-gamma9.0.png: Removed property svn:executable.
        * fast/canvas/webgl/resources/gray-ramp.png: Removed property svn:executable.
        * fast/canvas/webgl/resources/zero-alpha.png: Removed property svn:executable.
        * fast/css/inline-element-line-break.html: Removed property svn:executable.
        * fast/css/pseudo-element-line-break.html: Removed property svn:executable.
        * fast/dom/HTMLScriptElement/async-inline-script-expected.txt: Removed property svn:executable.
        * fast/dom/HTMLScriptElement/async-onbeforeload-expected.txt: Removed property svn:executable.
        * fast/dom/HTMLScriptElement/async-write-expected.txt: Removed property svn:executable.
        * fast/dom/HTMLScriptElement/defer-inline-script-expected.txt: Removed property svn:executable.
        * fast/events/before-unload-remove-and-add-subframe.html: Removed property svn:executable.
        * fast/events/change-frame-focus.html: Removed property svn:executable.
        * fast/files/resources/binary-file: Removed property svn:executable.
        * fast/frames/iframe-reparenting.html: Removed property svn:executable.
        * fast/frames/resources/iframe-reparenting-frame1.html: Removed property svn:executable.
        * fast/frames/resources/iframe-reparenting-frame2.html: Removed property svn:executable.
        * fast/frames/resources/iframe-reparenting-iframe-content.html: Removed property svn:executable.
        * fast/harness/resources/cached-page-1.html: Removed property svn:executable.
        * fast/harness/resources/cached-page-2.html: Removed property svn:executable.
        * fast/harness/use-page-cache.html: Removed property svn:executable.
        * fast/history/same-document-iframes-changing-fragment-expected.txt: Removed property svn:executable.
        * fast/history/same-document-iframes-changing-fragment.html: Removed property svn:executable.
        * fast/history/same-document-iframes-changing-pushstate-expected.txt: Removed property svn:executable.
        * fast/history/same-document-iframes-changing-pushstate.html: Removed property svn:executable.
        * fast/images/resources/cmyk-jpeg.jpg: Removed property svn:executable.
        * fast/inline/inline-position-top-align.html: Removed property svn:executable.
        * fast/inline/resources/gradient.png: Removed property svn:executable.
        * fast/js/script-tests/toInt32UInt32.js: Removed property svn:executable.
        * fast/lists/resources/dump-list.js: Removed property svn:executable.
        * fast/lists/w3-css3-list-styles-alphabetic-expected.txt: Removed property svn:executable.
        * fast/lists/w3-css3-list-styles-alphabetic.html: Removed property svn:executable.
        * fast/lists/w3-css3-list-styles-numeric-expected.txt: Removed property svn:executable.
        * fast/lists/w3-css3-list-styles-numeric.html: Removed property svn:executable.
        * fast/parser/remove-misnested-iframe-in-beforeload-expected.txt: Removed property svn:executable.
        * fast/parser/remove-misnested-iframe-parent-in-beforeload-expected.txt: Removed property svn:executable.
        * fast/parser/x-frame-options-detached-document-crash-expected.txt: Removed property svn:executable.
        * fast/regex/script-tests/ecma-regex-examples.js: Removed property svn:executable.
        * fast/repaint/canvas-putImageData-expected.txt: Removed property svn:executable.
        * fast/repaint/canvas-putImageData.html: Removed property svn:executable.
        * http/tests/history/redirect-302.html: Removed property svn:executable.
        * http/tests/history/redirect-303.html: Removed property svn:executable.
        * http/tests/history/redirect-307.html: Removed property svn:executable.
        * http/tests/inspector/console-test.js: Removed property svn:executable.
        * http/tests/inspector/console-xhr-logging.html: Removed property svn:executable.
        * http/tests/inspector/elements-test.js: Removed property svn:executable.
        * http/tests/inspector/extensions-resources-redirect.html: Removed property svn:executable.
        * http/tests/inspector/extensions-resources-test.js: Removed property svn:executable.
        * http/tests/inspector/network-preflight-options.html: Removed property svn:executable.
        * http/tests/inspector/network/network-size-chunked.html: Removed property svn:executable.
        * http/tests/inspector/resource-parameters.html: Removed property svn:executable.
        * http/tests/inspector/resources-test.js: Removed property svn:executable.
        * http/tests/inspector/resources/iframe-from-different-domain-data.html: Removed property svn:executable.
        * http/tests/inspector/resources/resource-form-data-receiver-iframe.html: Removed property svn:executable.
        * http/tests/misc/async-and-defer-script-expected.txt: Removed property svn:executable.
        * http/tests/misc/script-async-expected.txt: Removed property svn:executable.
        * http/tests/security/cross-origin-script-window-onerror-redirected.html: Removed property svn:executable.
        * http/tests/security/cross-origin-script-window-onerror.html: Removed property svn:executable.
        * http/tests/security/resources/cross-origin-script.txt: Removed property svn:executable.
        * inspector/audits/audits-test.js: Removed property svn:executable.
        * inspector/audits/resources/abe.png: Removed property svn:executable.
        * inspector/audits/resources/audits-script1.js: Removed property svn:executable.
        * inspector/audits/resources/audits-script2.js: Removed property svn:executable.
        * inspector/audits/resources/audits-style1.css: Removed property svn:executable.
        * inspector/console/console-assert.html: Removed property svn:executable.
        * inspector/console/console-dir.html: Removed property svn:executable.
        * inspector/console/console-dirxml.html: Removed property svn:executable.
        * inspector/console/console-format.html: Removed property svn:executable.
        * inspector/console/console-log-syntax-error.html: Removed property svn:executable.
        * inspector/console/console-nested-group.html: Removed property svn:executable.
        * inspector/console/console-substituted.html: Removed property svn:executable.
        * inspector/console/console-tests.html: Removed property svn:executable.
        * inspector/console/console-trace-in-eval.html: Removed property svn:executable.
        * inspector/console/console-trace.html: Removed property svn:executable.
        * inspector/console/console-uncaught-exception-in-eval.html: Removed property svn:executable.
        * inspector/console/console-uncaught-exception.html: Removed property svn:executable.
        * inspector/cookie-parser.html: Removed property svn:executable.
        * inspector/debugger/debugger-cyclic-ref.html: Removed property svn:executable.
        * inspector/debugger/debugger-expand-scope.html: Removed property svn:executable.
        * inspector/elements/elements-delete-inline-style-expected.txt: Removed property svn:executable.
        * inspector/elements/elements-delete-inline-style.html: Removed property svn:executable.
        * inspector/elements/elements-panel-search.html: Removed property svn:executable.
        * inspector/elements/elements-panel-structure.html: Removed property svn:executable.
        * inspector/evaluate-in-page.html: Removed property svn:executable.
        * inspector/extensions/extensions-audits-api.html: Removed property svn:executable.
        * inspector/extensions/extensions-audits.html: Removed property svn:executable.
        * inspector/extensions/extensions-eval.html: Removed property svn:executable.
        * inspector/extensions/extensions-events.html: Removed property svn:executable.
        * inspector/extensions/extensions-resources.html: Removed property svn:executable.
        * inspector/extensions/resources/abe.png: Removed property svn:executable.
        * inspector/extensions/resources/audits-style1.css: Removed property svn:executable.
        * inspector/styles/resources/styles-iframe-data.html: Removed property svn:executable.
        * inspector/styles/resources/styles-new-API-1.css: Removed property svn:executable.
        * inspector/styles/resources/styles-url-linkify-iframe.html: Removed property svn:executable.
        * inspector/styles/resources/styles-url-linkify.css: Removed property svn:executable.
        * inspector/styles/styles-disable-then-change-expected.txt: Removed property svn:executable.
        * inspector/styles/styles-disable-then-change.html: Removed property svn:executable.
        * inspector/styles/styles-iframe.html: Removed property svn:executable.
        * inspector/styles/styles-source-lines.html: Removed property svn:executable.
        * inspector/styles/styles-update-from-js-expected.txt: Removed property svn:executable.
        * inspector/styles/styles-update-from-js.html: Removed property svn:executable.
        * inspector/styles/styles-url-linkify.html: Removed property svn:executable.
        * inspector/utilities.html: Removed property svn:executable.
        * platform/chromium-linux/editing/deleting/delete-br-013-expected.checksum: Removed property svn:executable.
        * platform/chromium-linux/editing/pasteboard/paste-blockquote-after-blockquote-expected.checksum: Removed property svn:executable.
        * platform/chromium-linux/editing/selection/range-between-block-and-inline-expected.checksum: Removed property svn:executable.
        * platform/chromium-linux/editing/selection/range-between-block-and-inline-expected.png: Removed property svn:executable.
        * platform/chromium-linux/editing/selection/range-between-block-and-inline-expected.txt: Removed property svn:executable.
        * platform/chromium-linux/fast/clip/overflow-border-radius-clip-expected.checksum: Removed property svn:executable.
        * platform/chromium-linux/fast/css/font-face-in-shadow-DOM-expected.png: Removed property svn:executable.
        * platform/chromium-linux/fast/repaint/block-no-inflow-children-expected.checksum: Removed property svn:executable.
        * platform/chromium-mac-leopard/css1/box_properties/float_elements_in_series-expected.checksum: Removed property svn:executable.
        * platform/chromium-mac-leopard/css1/box_properties/float_elements_in_series-expected.png: Removed property svn:executable.
        * platform/chromium-mac-leopard/css1/text_properties/text_align-expected.checksum: Removed property svn:executable.
        * platform/chromium-mac-leopard/css1/text_properties/text_align-expected.png: Removed property svn:executable.
        * platform/chromium-mac-leopard/css2.1/t0805-c5518-brdr-t-01-e-expected.checksum: Removed property svn:executable.
        * platform/chromium-mac-leopard/css2.1/t0805-c5518-brdr-t-01-e-expected.png: Removed property svn:executable.
        * platform/chromium-mac-leopard/css2.1/t1202-counter-03-b-expected.checksum: Removed property svn:executable.
        * platform/chromium-mac-leopard/css2.1/t1202-counter-03-b-expected.png: Removed property svn:executable.
        * platform/chromium-mac-leopard/css2.1/t1202-counter-04-b-expected.checksum: Removed property svn:executable.
        * platform/chromium-mac-leopard/css2.1/t1202-counter-04-b-expected.png: Removed property svn:executable.
        * platform/chromium-mac-leopard/css2.1/t1202-counter-04-b-expected.txt: Removed property svn:executable.
        * platform/chromium-mac-leopard/css2.1/t1202-counters-03-b-expected.checksum: Removed property svn:executable.
        * platform/chromium-mac-leopard/css2.1/t1202-counters-03-b-expected.png: Removed property svn:executable.
        * platform/chromium-mac-leopard/css2.1/t1202-counters-04-b-expected.checksum: Removed property svn:executable.
        * platform/chromium-mac-leopard/css2.1/t1202-counters-04-b-expected.png: Removed property svn:executable.
        * platform/chromium-mac-leopard/css2.1/t1202-counters-04-b-expected.txt: Removed property svn:executable.
        * platform/chromium-mac-leopard/css2.1/t1602-c43-center-00-d-ag-expected.checksum: Removed property svn:executable.
        * platform/chromium-mac-leopard/css2.1/t1602-c43-center-00-d-ag-expected.png: Removed property svn:executable.
        * platform/chromium-mac-leopard/css2.1/t1602-c546-txt-align-00-b-expected.checksum: Removed property svn:executable.
        * platform/chromium-mac-leopard/css2.1/t1602-c546-txt-align-00-b-expected.png: Removed property svn:executable.
        * platform/chromium-mac-leopard/editing/selection/4397952-expected.checksum: Removed property svn:executable.
        * platform/chromium-mac-leopard/editing/selection/4397952-expected.png: Removed property svn:executable.
        * platform/chromium-mac-leopard/editing/selection/extend-selection-bidi-expected.checksum: Removed property svn:executable.
        * platform/chromium-mac-leopard/editing/selection/extend-selection-bidi-expected.png: Removed property svn:executable.
        * platform/chromium-mac-leopard/fast/blockflow/border-vertical-lr-expected.txt: Removed property svn:executable.
        * platform/chromium-mac-leopard/fast/css/beforeSelectorOnCodeElement-expected.checksum: Removed property svn:executable.
        * platform/chromium-mac-leopard/fast/css/beforeSelectorOnCodeElement-expected.png: Removed property svn:executable.
        * platform/chromium-mac-leopard/fast/css/font-face-default-font-expected.checksum: Removed property svn:executable.
        * platform/chromium-mac-leopard/fast/css/font-face-default-font-expected.png: Removed property svn:executable.
        * platform/chromium-mac-leopard/fast/css/rtl-ordering-expected.checksum: Removed property svn:executable.
        * platform/chromium-mac-leopard/fast/css/rtl-ordering-expected.png: Removed property svn:executable.
        * platform/chromium-mac-leopard/fast/css/text-input-with-webkit-border-radius-expected.checksum: Removed property svn:executable.
        * platform/chromium-mac-leopard/fast/css/text-input-with-webkit-border-radius-expected.png: Removed property svn:executable.
        * platform/chromium-mac-leopard/fast/css/text-overflow-ellipsis-bidi-expected.checksum: Removed property svn:executable.
        * platform/chromium-mac-leopard/fast/css/text-overflow-ellipsis-bidi-expected.png: Removed property svn:executable.
        * platform/chromium-mac-leopard/fast/css/text-security-expected.checksum: Removed property svn:executable.
        * platform/chromium-mac-leopard/fast/css/text-security-expected.png: Removed property svn:executable.
        * platform/chromium-mac-leopard/fast/dom/HTMLTableColElement/resize-table-using-col-width-expected.checksum: Removed property svn:executable.
        * platform/chromium-mac-leopard/fast/dom/HTMLTableColElement/resize-table-using-col-width-expected.png: Removed property svn:executable.
        * platform/chromium-mac-leopard/fast/dynamic/008-expected.checksum: Removed property svn:executable.
        * platform/chromium-mac-leopard/fast/dynamic/008-expected.png: Removed property svn:executable.
        * platform/chromium-mac-leopard/fast/events/context-no-deselect-expected.checksum: Removed property svn:executable.
        * platform/chromium-mac-leopard/fast/events/context-no-deselect-expected.png: Removed property svn:executable.
        * platform/chromium-mac-leopard/fast/forms/basic-buttons-expected.checksum: Removed property svn:executable.
        * platform/chromium-mac-leopard/fast/forms/basic-buttons-expected.png: Removed property svn:executable.
        * platform/chromium-mac-leopard/fast/forms/basic-selects-expected.checksum: Removed property svn:executable.
        * platform/chromium-mac-leopard/fast/forms/basic-selects-expected.png: Removed property svn:executable.
        * platform/chromium-mac-leopard/fast/forms/basic-selects-expected.txt: Removed property svn:executable.
        * platform/chromium-mac-leopard/fast/forms/button-sizes-expected.checksum: Removed property svn:executable.
        * platform/chromium-mac-leopard/fast/forms/button-sizes-expected.png: Removed property svn:executable.
        * platform/chromium-mac-leopard/fast/forms/file-input-direction-expected.checksum: Removed property svn:executable.
        * platform/chromium-mac-leopard/fast/forms/file-input-direction-expected.png: Removed property svn:executable.
        * platform/chromium-mac-leopard/fast/forms/file-input-direction-expected.txt: Removed property svn:executable.
        * platform/chromium-mac-leopard/fast/forms/input-appearance-bkcolor-expected.checksum: Removed property svn:executable.
        * platform/chromium-mac-leopard/fast/forms/input-appearance-bkcolor-expected.png: Removed property svn:executable.
        * platform/chromium-mac-leopard/fast/forms/input-button-sizes-expected.checksum: Removed property svn:executable.
        * platform/chromium-mac-leopard/fast/forms/input-button-sizes-expected.png: Removed property svn:executable.
        * platform/chromium-mac-leopard/fast/forms/input-file-re-render-expected.checksum: Removed property svn:executable.
        * platform/chromium-mac-leopard/fast/forms/input-file-re-render-expected.png: Removed property svn:executable.
        * platform/chromium-mac-leopard/fast/forms/menulist-option-wrap-expected.checksum: Removed property svn:executable.
        * platform/chromium-mac-leopard/fast/forms/menulist-option-wrap-expected.png: Removed property svn:executable.
        * platform/chromium-mac-leopard/fast/forms/menulist-restrict-line-height-expected.checksum: Removed property svn:executable.
        * platform/chromium-mac-leopard/fast/forms/menulist-restrict-line-height-expected.png: Removed property svn:executable.
        * platform/chromium-mac-leopard/fast/forms/menulist-style-color-expected.checksum: Removed property svn:executable.
        * platform/chromium-mac-leopard/fast/forms/menulist-style-color-expected.png: Removed property svn:executable.
        * platform/chromium-mac-leopard/fast/forms/placeholder-position-expected.checksum: Removed property svn:executable.
        * platform/chromium-mac-leopard/fast/forms/placeholder-position-expected.png: Removed property svn:executable.
        * platform/chromium-mac-leopard/fast/forms/search-transformed-expected.checksum: Removed property svn:executable.
        * platform/chromium-mac-leopard/fast/forms/search-transformed-expected.png: Removed property svn:executable.
        * platform/chromium-mac-leopard/fast/forms/select-visual-hebrew-expected.checksum: Removed property svn:executable.
        * platform/chromium-mac-leopard/fast/forms/select-visual-hebrew-expected.png: Removed property svn:executable.
        * platform/chromium-mac-leopard/fast/forms/visual-hebrew-text-field-expected.checksum: Removed property svn:executable.
        * platform/chromium-mac-leopard/fast/forms/visual-hebrew-text-field-expected.png: Removed property svn:executable.
        * platform/chromium-mac-leopard/fast/html/keygen-expected.checksum: Removed property svn:executable.
        * platform/chromium-mac-leopard/fast/html/keygen-expected.png: Removed property svn:executable.
        * platform/chromium-mac-leopard/fast/inline/inline-box-background-long-image-expected.checksum: Removed property svn:executable.
        * platform/chromium-mac-leopard/fast/inline/inline-box-background-long-image-expected.png: Removed property svn:executable.
        * platform/chromium-mac-leopard/fast/lists/dynamic-marker-crash-expected.checksum: Removed property svn:executable.
        * platform/chromium-mac-leopard/fast/lists/dynamic-marker-crash-expected.png: Removed property svn:executable.
        * platform/chromium-mac-leopard/fast/multicol/float-avoidance-expected.checksum: Removed property svn:executable.
        * platform/chromium-mac-leopard/fast/multicol/float-avoidance-expected.png: Removed property svn:executable.
        * platform/chromium-mac-leopard/fast/overflow/scroll-nested-positioned-layer-in-overflow-expected.checksum: Removed property svn:executable.
        * platform/chromium-mac-leopard/fast/overflow/scroll-nested-positioned-layer-in-overflow-expected.png: Removed property svn:executable.
        * platform/chromium-mac-leopard/fast/repaint/line-flow-with-floats-1-expected.checksum: Removed property svn:executable.
        * platform/chromium-mac-leopard/fast/repaint/line-flow-with-floats-1-expected.png: Removed property svn:executable.
        * platform/chromium-mac-leopard/fast/repaint/line-flow-with-floats-10-expected.checksum: Removed property svn:executable.
        * platform/chromium-mac-leopard/fast/repaint/line-flow-with-floats-10-expected.png: Removed property svn:executable.
        * platform/chromium-mac-leopard/fast/repaint/line-flow-with-floats-2-expected.checksum: Removed property svn:executable.
        * platform/chromium-mac-leopard/fast/repaint/line-flow-with-floats-2-expected.png: Removed property svn:executable.
        * platform/chromium-mac-leopard/fast/repaint/line-flow-with-floats-3-expected.checksum: Removed property svn:executable.
        * platform/chromium-mac-leopard/fast/repaint/line-flow-with-floats-3-expected.png: Removed property svn:executable.
        * platform/chromium-mac-leopard/fast/repaint/line-flow-with-floats-4-expected.checksum: Removed property svn:executable.
        * platform/chromium-mac-leopard/fast/repaint/line-flow-with-floats-4-expected.png: Removed property svn:executable.
        * platform/chromium-mac-leopard/fast/repaint/line-flow-with-floats-5-expected.checksum: Removed property svn:executable.
        * platform/chromium-mac-leopard/fast/repaint/line-flow-with-floats-5-expected.png: Removed property svn:executable.
        * platform/chromium-mac-leopard/fast/repaint/line-flow-with-floats-6-expected.checksum: Removed property svn:executable.
        * platform/chromium-mac-leopard/fast/repaint/line-flow-with-floats-6-expected.png: Removed property svn:executable.
        * platform/chromium-mac-leopard/fast/repaint/line-flow-with-floats-7-expected.checksum: Removed property svn:executable.
        * platform/chromium-mac-leopard/fast/repaint/line-flow-with-floats-7-expected.png: Removed property svn:executable.
        * platform/chromium-mac-leopard/fast/repaint/line-flow-with-floats-8-expected.checksum: Removed property svn:executable.
        * platform/chromium-mac-leopard/fast/repaint/line-flow-with-floats-8-expected.png: Removed property svn:executable.
        * platform/chromium-mac-leopard/fast/repaint/line-flow-with-floats-9-expected.checksum: Removed property svn:executable.
        * platform/chromium-mac-leopard/fast/repaint/line-flow-with-floats-9-expected.png: Removed property svn:executable.
        * platform/chromium-mac-leopard/fast/replaced/width100percent-textarea-expected.checksum: Removed property svn:executable.
        * platform/chromium-mac-leopard/fast/replaced/width100percent-textarea-expected.png: Removed property svn:executable.
        * platform/chromium-mac-leopard/fast/text/bidi-embedding-pop-and-push-same-expected.checksum: Removed property svn:executable.
        * platform/chromium-mac-leopard/fast/text/bidi-embedding-pop-and-push-same-expected.png: Removed property svn:executable.
        * platform/chromium-mac-leopard/fast/text/in-rendered-text-rtl-expected.checksum: Removed property svn:executable.
        * platform/chromium-mac-leopard/fast/text/in-rendered-text-rtl-expected.png: Removed property svn:executable.
        * platform/chromium-mac-leopard/fast/text/international/bidi-AN-after-L-expected.checksum: Removed property svn:executable.
        * platform/chromium-mac-leopard/fast/text/international/bidi-AN-after-L-expected.png: Removed property svn:executable.
        * platform/chromium-mac-leopard/fast/text/international/bidi-AN-after-L-expected.txt: Removed property svn:executable.
        * platform/chromium-mac-leopard/fast/text/international/bidi-L2-run-reordering-expected.checksum: Removed property svn:executable.
        * platform/chromium-mac-leopard/fast/text/international/bidi-L2-run-reordering-expected.png: Removed property svn:executable.
        * platform/chromium-mac-leopard/fast/text/international/bidi-LDB-2-CSS-expected.checksum: Removed property svn:executable.
        * platform/chromium-mac-leopard/fast/text/international/bidi-LDB-2-CSS-expected.png: Removed property svn:executable.
        * platform/chromium-mac-leopard/fast/text/international/bidi-LDB-2-HTML-expected.checksum: Removed property svn:executable.
        * platform/chromium-mac-leopard/fast/text/international/bidi-LDB-2-HTML-expected.png: Removed property svn:executable.
        * platform/chromium-mac-leopard/fast/text/international/bidi-LDB-2-formatting-characters-expected.checksum: Removed property svn:executable.
        * platform/chromium-mac-leopard/fast/text/international/bidi-LDB-2-formatting-characters-expected.png: Removed property svn:executable.
        * platform/chromium-mac-leopard/fast/text/international/bidi-european-terminators-expected.checksum: Removed property svn:executable.
        * platform/chromium-mac-leopard/fast/text/international/bidi-european-terminators-expected.png: Removed property svn:executable.
        * platform/chromium-mac-leopard/fast/text/international/bidi-ignored-for-first-child-inline-expected.checksum: Removed property svn:executable.
        * platform/chromium-mac-leopard/fast/text/international/bidi-ignored-for-first-child-inline-expected.png: Removed property svn:executable.
        * platform/chromium-mac-leopard/fast/text/international/bidi-innertext-expected.checksum: Removed property svn:executable.
        * platform/chromium-mac-leopard/fast/text/international/bidi-innertext-expected.png: Removed property svn:executable.
        * platform/chromium-mac-leopard/fast/text/international/bidi-layout-across-linebreak-expected.checksum: Removed property svn:executable.
        * platform/chromium-mac-leopard/fast/text/international/bidi-layout-across-linebreak-expected.png: Removed property svn:executable.
        * platform/chromium-mac-leopard/fast/text/international/bidi-linebreak-001-expected.checksum: Removed property svn:executable.
        * platform/chromium-mac-leopard/fast/text/international/bidi-linebreak-001-expected.png: Removed property svn:executable.
        * platform/chromium-mac-leopard/fast/text/international/bidi-linebreak-002-expected.checksum: Removed property svn:executable.
        * platform/chromium-mac-leopard/fast/text/international/bidi-linebreak-002-expected.png: Removed property svn:executable.
        * platform/chromium-mac-leopard/fast/text/international/bidi-linebreak-003-expected.checksum: Removed property svn:executable.
        * platform/chromium-mac-leopard/fast/text/international/bidi-linebreak-003-expected.png: Removed property svn:executable.
        * platform/chromium-mac-leopard/fast/text/international/bidi-listbox-atsui-expected.checksum: Removed property svn:executable.
        * platform/chromium-mac-leopard/fast/text/international/bidi-listbox-atsui-expected.png: Removed property svn:executable.
        * platform/chromium-mac-leopard/fast/text/international/bidi-listbox-expected.checksum: Removed property svn:executable.
        * platform/chromium-mac-leopard/fast/text/international/bidi-listbox-expected.png: Removed property svn:executable.
        * platform/chromium-mac-leopard/fast/text/international/bidi-mirror-he-ar-expected.checksum: Removed property svn:executable.
        * platform/chromium-mac-leopard/fast/text/international/bidi-mirror-he-ar-expected.png: Removed property svn:executable.
        * platform/chromium-mac-leopard/fast/text/international/bidi-mirror-he-ar-expected.txt: Removed property svn:executable.
        * platform/chromium-mac-leopard/fast/text/international/bidi-neutral-run-expected.checksum: Removed property svn:executable.
        * platform/chromium-mac-leopard/fast/text/international/bidi-neutral-run-expected.png: Removed property svn:executable.
        * platform/chromium-mac-leopard/fast/text/international/bidi-neutral-run-expected.txt: Removed property svn:executable.
        * platform/chromium-mac-leopard/fast/text/international/bidi-override-expected.checksum: Removed property svn:executable.
        * platform/chromium-mac-leopard/fast/text/international/bidi-override-expected.png: Removed property svn:executable.
        * platform/chromium-mac-leopard/fast/text/international/hebrew-vowels-expected.checksum: Removed property svn:executable.
        * platform/chromium-mac-leopard/fast/text/international/hebrew-vowels-expected.png: Removed property svn:executable.
        * platform/chromium-mac-leopard/fast/text/international/hindi-spacing-expected.checksum: Removed property svn:executable.
        * platform/chromium-mac-leopard/fast/text/international/hindi-spacing-expected.png: Removed property svn:executable.
        * platform/chromium-mac-leopard/fast/text/international/pop-up-button-text-alignment-and-direction-expected.checksum: Removed property svn:executable.
        * platform/chromium-mac-leopard/fast/text/international/pop-up-button-text-alignment-and-direction-expected.png: Removed property svn:executable.
        * platform/chromium-mac-leopard/fast/text/international/rtl-caret-expected.checksum: Removed property svn:executable.
        * platform/chromium-mac-leopard/fast/text/international/rtl-caret-expected.png: Removed property svn:executable.
        * platform/chromium-mac-leopard/fast/text/international/rtl-white-space-pre-wrap-expected.checksum: Removed property svn:executable.
        * platform/chromium-mac-leopard/fast/text/international/rtl-white-space-pre-wrap-expected.png: Removed property svn:executable.
        * platform/chromium-mac-leopard/fast/text/international/text-combine-image-test-expected.checksum: Removed property svn:executable.
        * platform/chromium-mac-leopard/fast/text/international/text-combine-image-test-expected.png: Removed property svn:executable.
        * platform/chromium-mac-leopard/fast/text/international/text-combine-image-test-expected.txt: Removed property svn:executable.
        * platform/chromium-mac-leopard/fast/text/justified-selection-at-edge-expected.checksum: Removed property svn:executable.
        * platform/chromium-mac-leopard/fast/text/justified-selection-at-edge-expected.png: Removed property svn:executable.
        * platform/chromium-mac-leopard/fast/text/justify-ideograph-simple-expected.checksum: Removed property svn:executable.
        * platform/chromium-mac-leopard/fast/text/justify-ideograph-simple-expected.png: Removed property svn:executable.
        * platform/chromium-mac-leopard/fast/text/justify-ideograph-vertical-expected.checksum: Removed property svn:executable.
        * platform/chromium-mac-leopard/fast/text/justify-ideograph-vertical-expected.png: Removed property svn:executable.
        * platform/chromium-mac-leopard/fast/text/justify-nbsp-expected.checksum: Removed property svn:executable.
        * platform/chromium-mac-leopard/fast/text/justify-nbsp-expected.png: Removed property svn:executable.
        * platform/chromium-mac-leopard/fonts/sans-serif-expected.checksum: Removed property svn:executable.
        * platform/chromium-mac-leopard/fonts/sans-serif-expected.png: Removed property svn:executable.
        * platform/chromium-mac-leopard/svg/custom/animate-path-discrete-expected.checksum: Removed property svn:executable.
        * platform/chromium-mac-leopard/svg/custom/animate-path-discrete-expected.png: Removed property svn:executable.
        * platform/chromium-mac-leopard/svg/custom/inline-svg-in-xhtml-expected.checksum: Removed property svn:executable.
        * platform/chromium-mac-leopard/svg/custom/inline-svg-in-xhtml-expected.png: Removed property svn:executable.
        * platform/chromium-mac-leopard/svg/custom/scrolling-embedded-svg-file-image-repaint-problem-expected.checksum: Removed property svn:executable.
        * platform/chromium-mac-leopard/svg/custom/scrolling-embedded-svg-file-image-repaint-problem-expected.png: Removed property svn:executable.
        * platform/chromium-mac-leopard/svg/custom/svg-fonts-in-html-expected.checksum: Removed property svn:executable.
        * platform/chromium-mac-leopard/svg/custom/svg-fonts-in-html-expected.png: Removed property svn:executable.
        * platform/chromium-mac-leopard/svg/custom/text-dom-01-f-expected.checksum: Removed property svn:executable.
        * platform/chromium-mac-leopard/svg/custom/text-dom-01-f-expected.png: Removed property svn:executable.
        * platform/chromium-mac-leopard/svg/hixie/mixed/003-expected.checksum: Removed property svn:executable.
        * platform/chromium-mac-leopard/svg/hixie/mixed/003-expected.png: Removed property svn:executable.
        * platform/chromium-mac-leopard/tables/mozilla/bugs/bug113424-expected.checksum: Removed property svn:executable.
        * platform/chromium-mac-leopard/tables/mozilla/bugs/bug113424-expected.png: Removed property svn:executable.
        * platform/chromium-mac-leopard/tables/mozilla/bugs/bug1188-expected.checksum: Removed property svn:executable.
        * platform/chromium-mac-leopard/tables/mozilla/bugs/bug1188-expected.png: Removed property svn:executable.
        * platform/chromium-mac-leopard/tables/mozilla/bugs/bug2479-2-expected.checksum: Removed property svn:executable.
        * platform/chromium-mac-leopard/tables/mozilla/bugs/bug2479-2-expected.png: Removed property svn:executable.
        * platform/chromium-mac-leopard/tables/mozilla/core/bloomberg-expected.checksum: Removed property svn:executable.
        * platform/chromium-mac-leopard/tables/mozilla/core/bloomberg-expected.png: Removed property svn:executable.
        * platform/chromium-mac-leopard/tables/mozilla/core/misc-expected.checksum: Removed property svn:executable.
        * platform/chromium-mac-leopard/tables/mozilla/core/misc-expected.png: Removed property svn:executable.
        * platform/chromium-mac-leopard/tables/mozilla/marvin/x_tbody_align_justify-expected.checksum: Removed property svn:executable.
        * platform/chromium-mac-leopard/tables/mozilla/marvin/x_tbody_align_justify-expected.png: Removed property svn:executable.
        * platform/chromium-mac-leopard/tables/mozilla/marvin/x_td_align_justify-expected.checksum: Removed property svn:executable.
        * platform/chromium-mac-leopard/tables/mozilla/marvin/x_td_align_justify-expected.png: Removed property svn:executable.
        * platform/chromium-mac-leopard/tables/mozilla/marvin/x_tfoot_align_justify-expected.checksum: Removed property svn:executable.
        * platform/chromium-mac-leopard/tables/mozilla/marvin/x_tfoot_align_justify-expected.png: Removed property svn:executable.
        * platform/chromium-mac-leopard/tables/mozilla/marvin/x_th_align_justify-expected.checksum: Removed property svn:executable.
        * platform/chromium-mac-leopard/tables/mozilla/marvin/x_th_align_justify-expected.png: Removed property svn:executable.
        * platform/chromium-mac-leopard/tables/mozilla/marvin/x_tr_align_justify-expected.checksum: Removed property svn:executable.
        * platform/chromium-mac-leopard/tables/mozilla/marvin/x_tr_align_justify-expected.png: Removed property svn:executable.
        * platform/chromium-mac/fast/repaint/block-no-inflow-children-expected.checksum: Removed property svn:executable.
        * platform/chromium-mac/http/tests/xmlhttprequest/xmlhttprequest-missing-file-exception-expected.txt: Removed property svn:executable.
        * platform/chromium-win/editing/deleting/delete-br-013-expected.checksum: Removed property svn:executable.
        * platform/chromium-win/editing/pasteboard/paste-blockquote-after-blockquote-expected.checksum: Removed property svn:executable.
        * platform/chromium-win/editing/pasteboard/paste-blockquote-into-blockquote-3-expected.checksum: Removed property svn:executable.
        * platform/chromium-win/editing/selection/range-between-block-and-inline-expected.checksum: Removed property svn:executable.
        * platform/chromium-win/editing/selection/range-between-block-and-inline-expected.png: Removed property svn:executable.
        * platform/chromium-win/editing/selection/range-between-block-and-inline-expected.txt: Removed property svn:executable.
        * platform/chromium-win/fast/borders/fieldsetBorderRadius-expected.checksum: Removed property svn:executable.
        * platform/chromium-win/fast/repaint/block-no-inflow-children-expected.checksum: Removed property svn:executable.
        * platform/chromium-win/fast/repaint/block-no-inflow-children-expected.txt: Removed property svn:executable.
        * platform/chromium-win/fast/repaint/canvas-putImageData-expected.checksum: Removed property svn:executable.
        * platform/chromium-win/fast/repaint/canvas-putImageData-expected.png: Removed property svn:executable.
        * platform/chromium-win/platform/mac/fast/forms/input-list-button-size-expected.checksum: Removed property svn:executable.
        * platform/chromium-win/platform/qt/fast/events/event-sender-keydown-frame-expected.checksum: Removed property svn:executable.
        * platform/chromium-win/plugins/plugin-initiate-popup-window-expected.txt: Removed property svn:executable.
        * platform/chromium/compositing/layout-width-change.html: Removed property svn:executable.
        * platform/chromium/html5lib/runner-expected.txt: Removed property svn:executable.
        * platform/chromium/inspector/console/console-eval-global-expected.txt: Removed property svn:executable.
        * platform/chromium/inspector/console/console-object-constructor-name-expected.txt: Removed property svn:executable.
        * platform/chromium/inspector/console/console-trace-in-eval-expected.txt: Removed property svn:executable.
        * platform/chromium/inspector/console/console-uncaught-exception-expected.txt: Removed property svn:executable.
        * platform/chromium/inspector/console/console-uncaught-exception-in-eval-expected.txt: Removed property svn:executable.
        * platform/chromium/inspector/debugger/debugger-autocontinue-on-syntax-error-expected.txt: Removed property svn:executable.
        * platform/chromium/inspector/debugger/debugger-expand-scope-expected.txt: Removed property svn:executable.
        * platform/chromium/test_expectations.txt: Removed property svn:executable.
        * platform/mac-leopard/css2.1/t0905-c5525-fltcont-00-d-g-expected.checksum: Removed property svn:executable.
        * platform/mac-leopard/css2.1/t0905-c5525-fltcont-00-d-g-expected.png: Removed property svn:executable.
        * platform/mac-leopard/editing/selection/caret-rtl-2-expected.checksum: Removed property svn:executable.
        * platform/mac-leopard/editing/selection/caret-rtl-2-expected.png: Removed property svn:executable.
        * platform/mac-leopard/editing/selection/caret-rtl-2-left-expected.checksum: Removed property svn:executable.
        * platform/mac-leopard/editing/selection/caret-rtl-2-left-expected.png: Removed property svn:executable.
        * platform/mac-leopard/editing/selection/caret-rtl-expected.checksum: Removed property svn:executable.
        * platform/mac-leopard/editing/selection/caret-rtl-expected.png: Removed property svn:executable.
        * platform/mac-leopard/editing/selection/caret-rtl-right-expected.checksum: Removed property svn:executable.
        * platform/mac-leopard/editing/selection/caret-rtl-right-expected.png: Removed property svn:executable.
        * platform/mac-leopard/fast/forms/text-style-color-expected.checksum: Removed property svn:executable.
        * platform/mac-leopard/fast/forms/text-style-color-expected.png: Removed property svn:executable.
        * platform/mac-leopard/fast/inline/inline-box-background-expected.checksum: Removed property svn:executable.
        * platform/mac-leopard/fast/inline/inline-box-background-expected.png: Removed property svn:executable.
        * platform/mac-leopard/fast/inline/inline-box-background-repeat-x-expected.checksum: Removed property svn:executable.
        * platform/mac-leopard/fast/inline/inline-box-background-repeat-x-expected.png: Removed property svn:executable.
        * platform/mac-leopard/fast/inline/inline-box-background-repeat-y-expected.checksum: Removed property svn:executable.
        * platform/mac-leopard/fast/inline/inline-box-background-repeat-y-expected.png: Removed property svn:executable.
        * platform/mac-leopard/fast/multicol/shadow-breaking-expected.checksum: Removed property svn:executable.
        * platform/mac-leopard/fast/multicol/shadow-breaking-expected.png: Removed property svn:executable.
        * platform/mac-leopard/fast/text/atsui-negative-spacing-features-expected.checksum: Removed property svn:executable.
        * platform/mac-leopard/fast/text/atsui-negative-spacing-features-expected.png: Removed property svn:executable.
        * platform/mac-leopard/fast/text/atsui-spacing-features-expected.checksum: Removed property svn:executable.
        * platform/mac-leopard/fast/text/atsui-spacing-features-expected.png: Removed property svn:executable.
        * platform/mac/fast/css/focus-ring-outline-color-expected.checksum: Removed property svn:executable.
        * platform/mac/fast/css/focus-ring-outline-color-expected.png: Removed property svn:executable.
        * platform/mac/fast/css/focus-ring-outline-color-expected.txt: Removed property svn:executable.
        * platform/mac/fast/css/focus-ring-outline-offset-expected.checksum: Removed property svn:executable.
        * platform/mac/fast/css/focus-ring-outline-offset-expected.png: Removed property svn:executable.
        * platform/mac/fast/css/focus-ring-outline-offset-expected.txt: Removed property svn:executable.
        * platform/mac/fast/css/focus-ring-outline-width-expected.checksum: Removed property svn:executable.
        * platform/mac/fast/css/focus-ring-outline-width-expected.png: Removed property svn:executable.
        * platform/mac/fast/css/focus-ring-outline-width-expected.txt: Removed property svn:executable.
        * platform/win-xp/fast/text/international/bidi-control-chars-treated-as-ZWS-expected.txt: Removed property svn:executable.
        * platform/win-xp/transforms/2d/hindi-rotated-expected.checksum: Removed property svn:executable.
        * platform/win-xp/transforms/2d/hindi-rotated-expected.png: Removed property svn:executable.
        * platform/win-xp/transforms/2d/hindi-rotated-expected.txt: Removed property svn:executable.
        * platform/win/accessibility/text-role-expected.txt: Removed property svn:executable.
        * platform/win/accessibility/text-role.html: Removed property svn:executable.
        * platform/win/fast/events/panScroll-nested-divs.html: Removed property svn:executable.
        * svg/custom/animate-use-crash.xhtml: Removed property svn:executable.
        * svg/filters/feColorMatrix-offset.svg: Removed property svn:executable.
        * transforms/2d/hindi-rotated.html: Removed property svn:executable.

2011-04-01  Daniel Bates  <dbates@rim.com>

        Reviewed by Darin Adler.

        Frame's noResize attribute can not be set by JavaScript
        https://bugs.webkit.org/show_bug.cgi?id=14845

        Tests that frame resizing is allowed and disallowed depending on the value of the noResize property.

        Also, tests to ensure that frame resizing is allowed and disallowed when programmatically
        removing and adding the noresize attribute, respectively.

        * fast/frames/frame-inherit-noresize-from-frameset-expected.txt: Added.
        * fast/frames/frame-inherit-noresize-from-frameset.html: Added. See <https://bugs.webkit.org/show_bug.cgi?id=57604>.
        * fast/frames/frame-programmatic-noresize-expected.txt: Added.
        * fast/frames/frame-programmatic-noresize.html: Added.
        * fast/frames/frame-with-noresize-can-be-resized-after-removal-of-noresize-expected.txt: Added.
        * fast/frames/frame-with-noresize-can-be-resized-after-removal-of-noresize.html: Added.
        * fast/frames/frame-with-noresize-can-be-resized-after-setting-noResize-to-false-expected.txt: Added.
        * fast/frames/frame-with-noresize-can-be-resized-after-setting-noResize-to-false.html: Added.
        * fast/frames/resources/frame-programmatic-resize.js: Added.
        (setTestFrameById):
        (deltaWidth):
        (shouldAllowFrameResize):
        (shouldDisallowFrameResize):
        (shouldDisallowFrameResizeAfterProcessingFrame):
        (shouldAllowFrameResizeAfterProcessingFrame):
        (checkTestFrameWidthEquals):
        (resizeTestFrameBy):
        (log):
        (description):

2011-04-01  Chang Shu  <cshu@webkit.org>

        Reviewed by Darin Adler.

        WebKitTestRunner needs layoutTestController.setDatabaseQuota
        https://bugs.webkit.org/show_bug.cgi?id=57568

        Update tests.

        * platform/mac-wk2/Skipped:

2011-04-01  Martin Robinson  <mrobinson@igalia.com>

        [GTK] editing/deleting/5408255.html results are incorrect
        https://bugs.webkit.org/show_bug.cgi?id=53644

        Unskip this test and update the results, it appears to be passing now without any issue.

        * platform/gtk/Skipped: Unskip a test.
        * platform/gtk/editing/deleting/5408255-expected.checksum:
        * platform/gtk/editing/deleting/5408255-expected.png:
        * platform/gtk/editing/deleting/5408255-expected.txt:

2011-04-01  Adam Barth  <abarth@webkit.org>

        Update expected results to document more passes.

        * platform/chromium/test_expectations.txt:

2011-04-01  MORITA Hajime  <morrita@google.com>

        Unreviewed expectations update which follows r82693.

        * platform/gtk/fast/dom/HTMLMeterElement/meter-boundary-values-expected.txt:
        * platform/gtk/fast/dom/HTMLMeterElement/meter-element-expected.txt:
        * platform/gtk/fast/dom/HTMLMeterElement/meter-optimums-expected.txt:
        * platform/gtk/fast/dom/HTMLMeterElement/meter-styles-changing-pseudo-expected.txt:
        * platform/gtk/fast/dom/HTMLMeterElement/meter-styles-expected.txt:

2011-04-01  Darin Adler  <darin@apple.com>

        * http/tests/local/formdata/form-data-with-unknown-file-extension-expected.txt: Removed property svn:executable.
        * http/tests/local/formdata/form-data-with-unknown-file-extension.html: Removed property svn:executable.

2011-04-01  Pavel Podivilov  <podivilov@chromium.org>

        Unreviewed, rebaseline chromium expectations for HTMLMeterElement tests updated in r82686.

        * platform/chromium-linux/fast/dom/HTMLMeterElement/meter-styles-changing-pseudo-expected.checksum:
        * platform/chromium-linux/fast/dom/HTMLMeterElement/meter-styles-changing-pseudo-expected.png:
        * platform/chromium-linux/fast/dom/HTMLMeterElement/meter-styles-expected.checksum:
        * platform/chromium-linux/fast/dom/HTMLMeterElement/meter-styles-expected.png:
        * platform/chromium-win/fast/dom/HTMLMeterElement/meter-appearances-capacity-expected.txt:
        * platform/chromium-win/fast/dom/HTMLMeterElement/meter-appearances-rating-relevancy-expected.txt:
        * platform/chromium-win/fast/dom/HTMLMeterElement/meter-boundary-values-expected.txt:
        * platform/chromium-win/fast/dom/HTMLMeterElement/meter-element-expected.checksum:
        * platform/chromium-win/fast/dom/HTMLMeterElement/meter-element-expected.png:
        * platform/chromium-win/fast/dom/HTMLMeterElement/meter-element-expected.txt: Added.
        * platform/chromium-win/fast/dom/HTMLMeterElement/meter-optimums-expected.txt:
        * platform/chromium-win/fast/dom/HTMLMeterElement/meter-styles-changing-pseudo-expected.checksum:
        * platform/chromium-win/fast/dom/HTMLMeterElement/meter-styles-changing-pseudo-expected.png:
        * platform/chromium-win/fast/dom/HTMLMeterElement/meter-styles-changing-pseudo-expected.txt:
        * platform/chromium-win/fast/dom/HTMLMeterElement/meter-styles-expected.checksum:
        * platform/chromium-win/fast/dom/HTMLMeterElement/meter-styles-expected.png:
        * platform/chromium-win/fast/dom/HTMLMeterElement/meter-styles-expected.txt:

2011-04-01 MORITA Hajime  <morrita@google.com>

        Unreviewed unskipping. This will make some tests fail on GTK port, whoese
        results should be updated using layout-test-results.zip compiled by the buildbot.

        * platform/gtk/Skipped:

2011-04-01  MORITA Hajime  <morrita@google.com>

        Unreviewed expectation/skip update that follows r82686.

        - Updated expectataions for gtk port.
        - Skipped some win tests whose expectations are need to be updated but
          the result isn't available from build.webit.org.

        * platform/gtk/fast/dom/HTMLMeterElement/meter-appearances-capacity-expected.txt:
        * platform/gtk/fast/dom/HTMLMeterElement/meter-appearances-rating-relevancy-expected.txt:
        * platform/win/Skipped:

2011-03-31  Abhishek Arya  <inferno@chromium.org>

        Reviewed by Andreas Kling.

        Tests that we do not crash when trying to paint a removed
        svg marker element.
        https://bugs.webkit.org/show_bug.cgi?id=57492

        * svg/dom/path-marker-removed-crash-expected.txt: Added.
        * svg/dom/path-marker-removed-crash.svg: Added.

2011-04-01  Rob Buis  <rwlbuis@gmail.com>

        Reviewed by Nikolas Zimmermann.

        Test for:
        https://bugs.webkit.org/show_bug.cgi?id=55750
        SVG <image> referenced by <use> is displayed incorrectly

        * svg/custom/image-base-uri-expected.txt: Added.
        * svg/custom/image-base-uri.svg: Added.

2011-04-01  MORITA Hajime  <morrita@google.com>

        Reviewed by Dimitri Glazkov.

        Reviewed by Dimitri Glazkov.

        <meter> can only support horizontal indicator
        https://bugs.webkit.org/show_bug.cgi?id=56001

        - Simpflied some test cases which had vertical indicators.
        - Updated expectations due to shadow structure change
        - Skipped tetsts which need expectations update.

        * fast/dom/HTMLMeterElement/meter-element.html:
        * fast/dom/HTMLMeterElement/meter-styles-changing-pseudo.html:
        * fast/dom/HTMLMeterElement/meter-styles.html:
        * platform/gtk/Skipped:
        * platform/mac/fast/dom/HTMLMeterElement/meter-appearances-capacity-expected.txt:
        * platform/mac/fast/dom/HTMLMeterElement/meter-appearances-rating-relevancy-expected.txt:
        * platform/mac/fast/dom/HTMLMeterElement/meter-boundary-values-expected.checksum:
        * platform/mac/fast/dom/HTMLMeterElement/meter-boundary-values-expected.png:
        * platform/mac/fast/dom/HTMLMeterElement/meter-boundary-values-expected.txt:
        * platform/mac/fast/dom/HTMLMeterElement/meter-element-expected.checksum:
        * platform/mac/fast/dom/HTMLMeterElement/meter-element-expected.png:
        * platform/mac/fast/dom/HTMLMeterElement/meter-element-expected.txt:
        * platform/mac/fast/dom/HTMLMeterElement/meter-optimums-expected.txt:
        * platform/mac/fast/dom/HTMLMeterElement/meter-styles-changing-pseudo-expected.checksum:
        * platform/mac/fast/dom/HTMLMeterElement/meter-styles-changing-pseudo-expected.png:
        * platform/mac/fast/dom/HTMLMeterElement/meter-styles-changing-pseudo-expected.txt:
        * platform/mac/fast/dom/HTMLMeterElement/meter-styles-expected.checksum:
        * platform/mac/fast/dom/HTMLMeterElement/meter-styles-expected.png:
        * platform/mac/fast/dom/HTMLMeterElement/meter-styles-expected.txt:
        * platform/qt/Skipped:
        * platform/win/Skipped:

2011-04-01  Adam Roben  <aroben@apple.com>

        Disable inspector/debugger/debug-inlined-scripts.html

        It is flaky. The flakiness is tracked by <http://webkit.org/b/56584>.

        * inspector/debugger/debug-inlined-scripts.html-disabled: Renamed from LayoutTests/inspector/debugger/debug-inlined-scripts.html.

        * platform/mac-wk2/Skipped: Removed the now-disabled test.

2011-04-01  Pavel Feldman  <pfeldman@google.com>

        Reviewed by Yury Semikhatsky.

        Web Inspector: event should have "data" attribute, not "body"
        https://bugs.webkit.org/show_bug.cgi?id=57628

        * inspector/protocol/console-agent-expected.txt:

2011-04-01  Pavel Podivilov  <podivilov@chromium.org>

        Reviewed by Yury Semikhatsky.

        Web Inspector: checkboxes are broken in xhr breakpoints sidebar pane.
        https://bugs.webkit.org/show_bug.cgi?id=57610

        * inspector/debugger/xhr-breakpoints-expected.txt:
        * inspector/debugger/xhr-breakpoints.html:

2011-04-01  Alexander Pavlov  <apavlov@chromium.org>

        Reviewed by Yury Semikhatsky.

        Web Inspector: up/down keys are not treating hex numbers properly while editing styles.
        https://bugs.webkit.org/show_bug.cgi?id=40522

        * http/tests/inspector/inspector-test.js:
        (initialize_InspectorTest.InspectorTest.createKeyEvent): Added arguments for key modifiers.
        * inspector/styles/up-down-numerics-and-colors-expected.txt: Added.
        * inspector/styles/up-down-numerics-and-colors.html: Added.

2011-04-01  Sheriff Bot  <webkit.review.bot@gmail.com>

        Unreviewed, rolling out r82667.
        http://trac.webkit.org/changeset/82667
        https://bugs.webkit.org/show_bug.cgi?id=57612

        Breaks Leopard layout tests (Requested by podivilov on
        #webkit).

        * inspector/debugger/script-formatter-expected.txt: Removed.
        * inspector/debugger/script-formatter.html: Removed.
        * platform/chromium/test_expectations.txt:

2011-03-30  Pavel Podivilov  <podivilov@chromium.org>

        Reviewed by Pavel Feldman.

        Web Inspector: add test for script formatter worker.
        https://bugs.webkit.org/show_bug.cgi?id=57447

        * inspector/debugger/script-formatter-expected.txt: Added.
        * inspector/debugger/script-formatter.html: Added.
        * platform/chromium/test_expectations.txt:

2011-03-31  Yury Semikhatsky  <yurys@chromium.org>

        Reviewed by Pavel Feldman.

        Web Inspector: inspected page crashes on attempt to log object with broken .toString
        https://bugs.webkit.org/show_bug.cgi?id=57557

        * inspector/console/console-log-toString-object-expected.txt: Added.
        * inspector/console/console-log-toString-object.html: Added.

2011-03-31  Andrey Kosyakov  <caseq@chromium.org>

        Reviewed by Pavel Feldman.

        Web Inspector: provide front-end wrappers for DOMAgent.querySelector[All]() that take care of fetching the document
        https://bugs.webkit.org/show_bug.cgi?id=57466

        * inspector/elements/dom-agent-query-selector.html: removed documentWide parameter to querySelectorAll

2011-03-31  Adam Barth  <abarth@webkit.org>

        Add two more preloader tests to the WebKit2 Skipped list.

        * platform/mac-wk2/Skipped:

2011-03-31  Adam Barth  <abarth@webkit.org>

        Rebaseline my own test on Linux!  The great JavaScript MIME type war
        claims another victim.

        * platform/chromium-linux/fast/preloader/scan-body-from-head-script-expected.txt: Added.

2011-03-31  Adam Barth  <abarth@webkit.org>

        Reviewed by Tony Gentilcore.

        fast/preloader/scan-body-from-head.html is flaky
        https://bugs.webkit.org/show_bug.cgi?id=57594

        This test was flaky because the script and the import load would race.
        By breaking down this test into two pieces, we can still see that the
        parse-blocking loads happen before the non-blocking load (the img) but
        we don't suffer flakiness.

        * fast/preloader/scan-body-from-head-expected.txt: Removed.
        * fast/preloader/scan-body-from-head-import-expected.txt: Added.
        * fast/preloader/scan-body-from-head-import.html: Added.
        * fast/preloader/scan-body-from-head-script-expected.txt: Added.
        * fast/preloader/scan-body-from-head-script.html: Added.
        * fast/preloader/scan-body-from-head.html-disabled: Removed.

2011-03-31  Sheriff Bot  <webkit.review.bot@gmail.com>

        Unreviewed, rolling out r82652.
        http://trac.webkit.org/changeset/82652
        https://bugs.webkit.org/show_bug.cgi?id=57603

        Test still fails (Requested by abarth|gardener on #webkit).

        * plugins/windowless_plugin_paint_test-expected.txt: Removed.
        * plugins/windowless_plugin_paint_test.html: Removed.

2011-03-31  Naoki Takano  <takano.naoki@gmail.com>

        Reviewed by Kent Tamura.

        REGRESSION (r64712): Safari removes the first blank line in a textarea
        https://bugs.webkit.org/show_bug.cgi?id=56434

        * fast/forms/textarea-newline-expected.txt: Added.
        * fast/forms/textarea-newline.html: Added to check the only first blank line in a textarea is correctly removed.

2011-03-31  Antti Koivisto  <antti@apple.com>

        Not reviewed.

        Skipping

        fast/preloader/document-write.html
        fast/preloader/document-write-2.html

        due to Javascript MIME type mismatch.

        * platform/mac-leopard/Skipped:

2011-03-31  Adam Barth  <abarth@webkit.org>

        Attempt to fix the chromium-mac-leopard baselines for these tests.  For
        some reason, the automatic tools were unable to fix these, so I created
        them manually.

        * platform/chromium-mac-leopard/fast/multicol/nested-columns-expected.checksum:
        * platform/chromium-mac-leopard/fast/multicol/nested-columns-expected.png:
        * platform/chromium-mac-leopard/fast/repaint/list-marker-expected.checksum:
        * platform/chromium-mac-leopard/fast/repaint/list-marker-expected.png:

2011-03-31  Anantanarayanan G Iyengar  <ananta@chromium.org>

        Reviewed by Adam Barth.

        https://bugs.webkit.org/show_bug.cgi?id=45855
        Windowless plugins added dynamically to the DOM should receive paint events.
        This is done by ensuring that the plugin widget is marked for painting when
        it is added.

        * plugins/windowless_plugin_paint_test-expected.txt: Added.
        * plugins/windowless_plugin_paint_test.html: Added.

2011-03-31  Chang Shu  <cshu@webkit.org>

        Reviewed by Darin Adler.

        WebKitTestRunner needs layoutTestController.clearAllDatabases
        https://bugs.webkit.org/show_bug.cgi?id=42540

        Remove passed tests.

        * platform/mac-wk2/Skipped:

2011-03-31  Adam Barth  <abarth@webkit.org>

        Note another flaky test.

        * platform/chromium/test_expectations.txt:

2011-03-31  Andy Estes  <aestes@apple.com>

        Reviewed by Alexey Proskuryakov.

        REGRESSION: Java applet fails to load when <object> has a classid attribute
        https://bugs.webkit.org/show_bug.cgi?id=52703

        Test various ways that a Java applet can be embedded using the object element.

        * java/embedding-java-with-object-expected.txt: Added.
        * java/embedding-java-with-object.html: Added.
        * platform/mac-wk2/Skipped: WK2 doesn't implement
        layoutTestController.overridePreference.

2011-03-31  Adam Barth  <abarth@webkit.org>

        Fix name of test.

        * platform/chromium/test_expectations.txt:

2011-03-31  Adam Barth  <abarth@webkit.org>

        Update chromium-win expectations for these baseline changes from
        Mr. Hyatt.

        * platform/chromium-win/fast/inline-block/inline-block-vertical-align-expected.checksum:
        * platform/chromium-win/fast/inline-block/inline-block-vertical-align-expected.png:
        * platform/chromium-win/fast/inline-block/inline-block-vertical-align-expected.txt:
        * platform/chromium-win/fast/multicol/layers-in-multicol-expected.checksum:
        * platform/chromium-win/fast/multicol/layers-in-multicol-expected.png:
        * platform/chromium-win/fast/multicol/layers-in-multicol-expected.txt:
        * platform/chromium-win/fast/multicol/nested-columns-expected.checksum:
        * platform/chromium-win/fast/multicol/nested-columns-expected.png:
        * platform/chromium-win/fast/multicol/vertical-lr/nested-columns-expected.checksum:
        * platform/chromium-win/fast/multicol/vertical-lr/nested-columns-expected.png:
        * platform/chromium-win/fast/multicol/vertical-rl/nested-columns-expected.checksum:
        * platform/chromium-win/fast/multicol/vertical-rl/nested-columns-expected.png:

2011-03-31  Adam Barth  <abarth@webkit.org>

        Disable this test because it's very flaky on all platforms.  See
        https://bugs.webkit.org/show_bug.cgi?id=57594 for making the test
        non-flaky.

        * fast/preloader/scan-body-from-head.html: Removed.
        * fast/preloader/scan-body-from-head.html-disabled: Copied from LayoutTests/fast/preloader/scan-body-from-head.html.

2011-03-31  Victoria Kirst  <vrk@google.com>

        Reviewed by Eric Carlson.

        [chromium] Implement preload=none, setPreload hooks to media player
        https://bugs.webkit.org/show_bug.cgi?id=56983

        Reenabling video-preload.html layout test for chromium.

        * platform/chromium/test_expectations.txt:

2011-03-31  Adam Barth  <abarth@webkit.org>

        Add setSerializeHTTPLoads supressions.

        * platform/chromium/test_expectations.txt:

2011-03-31  Antti Koivisto  <antti@apple.com>

        Not reviewed.

        - Skip on platforms that don't have setSerializeHTTPLoads, make it a requirement.
        - Update results after typo fix.

        * fast/preloader/document-write-2-expected.txt:
        * fast/preloader/document-write-2.html:
        * fast/preloader/document-write-expected.txt:
        * fast/preloader/document-write.html:
        * platform/gtk/Skipped:
        * platform/mac-wk2/Skipped:
        * platform/qt/Skipped:
        * platform/win/Skipped:

2011-03-31  Sheriff Bot  <webkit.review.bot@gmail.com>

        Unreviewed, rolling out r81849.
        http://trac.webkit.org/changeset/81849
        https://bugs.webkit.org/show_bug.cgi?id=57588

        CSS Parsing broke with -webkit-calc and introduced crashes
        (Requested by inferno-sec on #webkit).

        * css3/calc/calc-errors-expected.txt: Removed.
        * css3/calc/calc-errors.html: Removed.
        * css3/calc/minmax-errors-expected.txt: Removed.
        * css3/calc/minmax-errors.html: Removed.
        * css3/calc/simple-calcs-expected.txt: Removed.
        * css3/calc/simple-calcs.html: Removed.
        * css3/calc/simple-minmax-expected.txt: Removed.
        * css3/calc/simple-minmax.html: Removed.

2011-03-31  Antti Koivisto  <antti@apple.com>

        Reviewed by Oliver Hunt.

        https://bugs.webkit.org/show_bug.cgi?id=57574
        Preload scanner fails to pick up resources from document.write() output

        * fast/preloader/document-write-2-expected.txt: Added.
        * fast/preloader/document-write-2.html: Added.
        * fast/preloader/document-write-expected.txt: Added.
        * fast/preloader/document-write.html: Added.
        * fast/preloader/resources/document-write-plaintext.js: Added.

2011-03-31  Chang Shu  <cshu@webkit.org>

        Reviewed by Darin Adler.

        WebKitTestRunner needs layoutTestController.setAllowUniversalAccessFromFileURLs
        https://bugs.webkit.org/show_bug.cgi?id=42692

        Unskip passed tests.

        * platform/mac-wk2/Skipped:

2011-03-31  Tony Gentilcore  <tonyg@chromium.org>

        Reviewed by Antti Koivisto.

        PreloadScanner doesn&apos;t find image while executing script in head
        https://bugs.webkit.org/show_bug.cgi?id=45072

        * fast/loader/willSendRequest-null-for-preload.html: Need to call
        setWilSendRequestReturnsNull() prior to invoking the preload scanner
        while blocked on empty-script.js.
        * fast/preloader/scan-body-from-head-expected.txt: Added.
        * fast/preloader/scan-body-from-head.html: Added. Notice that in the
        loaded resource output, the script and style are requested before the
        image even though the image is first in the DOM. This means it was
        queued up to wait for renderering rather than loaded immediately.

2011-03-31  Sheriff Bot  <webkit.review.bot@gmail.com>

        Unreviewed, rolling out r82616.
        http://trac.webkit.org/changeset/82616
        https://bugs.webkit.org/show_bug.cgi?id=57585

        New test does not pass on Gtk, chromium-mac, chromium-linux
        and possibly elsewhere (Requested by abarth|gardener on
        #webkit).

        * plugins/windowless_plugin_paint_test-expected.txt: Removed.
        * plugins/windowless_plugin_paint_test.html: Removed.

2011-03-31  Darin Adler  <darin@apple.com>

        Reviewed by Sam Weinig.

        Implement mouseDown, mouseUp, and mouseMoveTo in WebKitTestRunner
        https://bugs.webkit.org/show_bug.cgi?id=57573

        * platform/mac-wk2/Skipped: Removed now-passing tests. Resorted
        the section under eventSender, and expanded directories to list
        the individual tests in that section.

2011-03-31  Adam Barth  <abarth@webkit.org>

        Update Chromium expected results for Hyatt's change.  I haven't
        verified these with Hyatt, but they seem reasonable.

        * platform/chromium-linux/fast/inline-block/inline-block-vertical-align-expected.checksum:
        * platform/chromium-linux/fast/inline-block/inline-block-vertical-align-expected.png:
        * platform/chromium-linux/fast/inline-block/inline-block-vertical-align-expected.txt: Added.
        * platform/chromium-linux/fast/multicol/layers-in-multicol-expected.checksum:
        * platform/chromium-linux/fast/multicol/layers-in-multicol-expected.png:
        * platform/chromium-linux/fast/multicol/layers-in-multicol-expected.txt: Added.
        * platform/chromium-linux/fast/multicol/nested-columns-expected.checksum:
        * platform/chromium-linux/fast/multicol/nested-columns-expected.png:
        * platform/chromium-linux/fast/multicol/vertical-lr/nested-columns-expected.checksum:
        * platform/chromium-linux/fast/multicol/vertical-lr/nested-columns-expected.png:
        * platform/chromium-linux/fast/multicol/vertical-rl/nested-columns-expected.checksum:
        * platform/chromium-linux/fast/multicol/vertical-rl/nested-columns-expected.png:
        * platform/chromium-mac/fast/inline-block/inline-block-vertical-align-expected.checksum: Added.
        * platform/chromium-mac/fast/inline-block/inline-block-vertical-align-expected.png: Added.
        * platform/chromium-mac/fast/multicol/layers-in-multicol-expected.checksum: Added.
        * platform/chromium-mac/fast/multicol/layers-in-multicol-expected.png: Added.
        * platform/chromium-mac/fast/multicol/nested-columns-expected.checksum: Added.
        * platform/chromium-mac/fast/multicol/nested-columns-expected.png: Added.
        * platform/chromium-mac/fast/multicol/vertical-lr: Added.
        * platform/chromium-mac/fast/multicol/vertical-lr/nested-columns-expected.checksum: Added.
        * platform/chromium-mac/fast/multicol/vertical-lr/nested-columns-expected.png: Added.
        * platform/chromium-mac/fast/multicol/vertical-rl/nested-columns-expected.checksum: Added.
        * platform/chromium-mac/fast/multicol/vertical-rl/nested-columns-expected.png: Added.
        * platform/chromium-mac/fast/repaint/list-marker-expected.checksum: Added.
        * platform/chromium-mac/fast/repaint/list-marker-expected.png: Added.

2011-03-31  Adam Barth  <abarth@webkit.org>

        One more results update.  This change is just 1px off from the result
        Hyatt landed.

        * platform/gtk/fast/text/emphasis-avoid-ruby-expected.txt:

2011-03-31  Adam Barth  <abarth@webkit.org>

        Hyatt says these are also progressions.

        * platform/gtk/fast/inline-block/inline-block-vertical-align-expected.txt:
        * platform/gtk/fast/multicol/layers-in-multicol-expected.txt:

2011-03-31  Adam Barth  <abarth@webkit.org>

        Hyatt says this is a progression.

        * platform/qt/fast/multicol/layers-in-multicol-expected.txt:

2011-03-31  Anantanarayanan G Iyengar  <ananta@chromium.org>

        Reviewed by James Robinson.

        https://bugs.webkit.org/show_bug.cgi?id=45855
        Windowless plugins added dynamically to the DOM should receive paint events.
        This is done by ensuring that the plugin widget is marked for painting when
        it is added.

        * plugins/windowless_plugin_paint_test-expected.txt: Added.
        * plugins/windowless_plugin_paint_test.html: Added.

2011-03-31  Adam Barth  <abarth@webkit.org>

        Copy expectation from downstream.

        * platform/chromium/test_expectations.txt:

2011-03-31  David Hyatt  <hyatt@apple.com>

        Reviewed by Simon Fraser.

        https://bugs.webkit.org/show_bug.cgi?id=57565

        Optimize overflow computations on lines to avoid allocating RenderOverflows in nearly all cases and to avoid even having
        to check the line for overflow in the first place.

        Updated results for tests that progressed.

        * fast/text/emphasis-avoid-ruby-expected.txt:
        * platform/mac/fast/inline-block/inline-block-vertical-align-expected.checksum:
        * platform/mac/fast/inline-block/inline-block-vertical-align-expected.png:
        * platform/mac/fast/inline-block/inline-block-vertical-align-expected.txt:
        * platform/mac/fast/multicol/layers-in-multicol-expected.checksum:
        * platform/mac/fast/multicol/layers-in-multicol-expected.png:
        * platform/mac/fast/multicol/layers-in-multicol-expected.txt:

2011-03-31  Pavel Feldman  <pfeldman@chromium.org>

        Reviewed by Yury Semikhatsky.

        Web Inspector: disable properties abbreviation.
        https://bugs.webkit.org/show_bug.cgi?id=57525

        * inspector/console/console-dir-global.html:
        * inspector/protocol/runtime-agent-expected.txt:
        * inspector/protocol/runtime-agent.html:

2011-03-31  Alexis Menard  <alexis.menard@openbossa.org>

        Reviewed by Benjamin Poulain.

        [Qt] Activate 10 tests for media elements.
        https://bugs.webkit.org/show_bug.cgi?id=57553

        Skip that one for now. The bots need to be updated.

        * platform/qt/Skipped:

2011-03-31  Vsevolod Vlasov  <vsevik@chromium.org>

        Reviewed by Pavel Feldman.

        XML viewer is not shown when frame has non-null opener
        https://bugs.webkit.org/show_bug.cgi?id=56384

        Enabled test for extensions hooks in xml viewer.

        * http/tests/xmlviewer/extensions-api-expected.txt: Added.
        * http/tests/xmlviewer/extensions-api.html: Added.
        * http/tests/xmlviewer/resources/sample.xml: Added.
        * platform/qt/Skipped:
        * xmlviewer/extensions-api-expected.txt: Removed.
        * xmlviewer/extensions-api.html_disabled: Removed.

2011-03-31  Sheriff Bot  <webkit.review.bot@gmail.com>

        Unreviewed, rolling out r82589.
        http://trac.webkit.org/changeset/82589
        https://bugs.webkit.org/show_bug.cgi?id=57564

        This patch requires many more updated results than it contains
        (Requested by abarth|gardener on #webkit).

        * fast/dom/HTMLMeterElement/meter-element.html:
        * fast/dom/HTMLMeterElement/meter-styles-changing-pseudo.html:
        * fast/dom/HTMLMeterElement/meter-styles.html:
        * platform/mac/fast/dom/HTMLMeterElement/meter-appearances-capacity-expected.txt:
        * platform/mac/fast/dom/HTMLMeterElement/meter-appearances-rating-relevancy-expected.txt:
        * platform/mac/fast/dom/HTMLMeterElement/meter-boundary-values-expected.checksum:
        * platform/mac/fast/dom/HTMLMeterElement/meter-boundary-values-expected.png:
        * platform/mac/fast/dom/HTMLMeterElement/meter-boundary-values-expected.txt:
        * platform/mac/fast/dom/HTMLMeterElement/meter-element-expected.checksum:
        * platform/mac/fast/dom/HTMLMeterElement/meter-element-expected.png:
        * platform/mac/fast/dom/HTMLMeterElement/meter-element-expected.txt:
        * platform/mac/fast/dom/HTMLMeterElement/meter-optimums-expected.txt:
        * platform/mac/fast/dom/HTMLMeterElement/meter-styles-changing-pseudo-expected.checksum:
        * platform/mac/fast/dom/HTMLMeterElement/meter-styles-changing-pseudo-expected.png:
        * platform/mac/fast/dom/HTMLMeterElement/meter-styles-changing-pseudo-expected.txt:
        * platform/mac/fast/dom/HTMLMeterElement/meter-styles-expected.checksum:
        * platform/mac/fast/dom/HTMLMeterElement/meter-styles-expected.png:
        * platform/mac/fast/dom/HTMLMeterElement/meter-styles-expected.txt:

2011-03-31  Alexis Menard  <alexis.menard@openbossa.org>

        Reviewed by Benjamin Poulain.

        [Qt] Activate 10 tests for media elements.
        https://bugs.webkit.org/show_bug.cgi?id=57553

        Reactivate some media tests for Qt so we improve our coverage.

        * platform/qt/Skipped:

2011-03-31  Tom Sepez  <tsepez@chromium.org>

        Reviewed by Eric Seidel.

        Test that script inside an SVG can delete a range containing
        itself when invoked on top of script manipulating it.
        https://bugs.webkit.org/show_bug.cgi?id=57265

        * svg/dom/range-delete-expected.txt: Added.
        * svg/dom/range-delete.html: Added.

2011-03-31  Satish Sampath  <satish@chromium.org>

        Reviewed by Steve Block.

        While drawing a speech input button, validate that the node is really a speech input button.
        https://bugs.webkit.org/show_bug.cgi?id=57469

        * fast/speech/speech-style-on-non-speech-elements-expected.txt: Added.
        * fast/speech/speech-style-on-non-speech-elements.html: Added.

2011-03-31  Sergio Villar Senin  <svillar@igalia.com>

        Reviewed by Martin Robinson.

        [GTK] implement LayoutTestController::setWillSendRequestReturnsNull
        https://bugs.webkit.org/show_bug.cgi?id=57362

        * platform/gtk/Skipped: unskipped
        fast/loader/onload-willSendRequest-null-for-frame.html.

2011-03-30  Pavel Podivilov  <podivilov@chromium.org>

        Reviewed by Pavel Feldman.

        Web Inspector: remove unnecessary newBody output parameter from editScriptSource protocol method.
        https://bugs.webkit.org/show_bug.cgi?id=57444

        * http/tests/inspector/debugger-test.js:
        (initialize_DebuggerTest):
        * inspector/debugger/live-edit-expected.txt:
        * inspector/debugger/live-edit.html:
        * inspector/debugger/resources/edit-me-when-paused.js: Added.
        (f2):
        (f1):

2011-03-30  MORITA Hajime  <morrita@google.com>

        Reviewed by Dimitri Glazkov.

        <meter> can only support horizontal indicator
        https://bugs.webkit.org/show_bug.cgi?id=56001

        - Simpflied some test cases which had vertical indicators.
        - Updated expectations due to shadow structure change

        * fast/dom/HTMLMeterElement/meter-element.html:
        * fast/dom/HTMLMeterElement/meter-styles-changing-pseudo.html:
        * fast/dom/HTMLMeterElement/meter-styles.html:
        * platform/mac/fast/dom/HTMLMeterElement/meter-appearances-capacity-expected.txt:
        * platform/mac/fast/dom/HTMLMeterElement/meter-appearances-rating-relevancy-expected.txt:
        * platform/mac/fast/dom/HTMLMeterElement/meter-boundary-values-expected.checksum:
        * platform/mac/fast/dom/HTMLMeterElement/meter-boundary-values-expected.png:
        * platform/mac/fast/dom/HTMLMeterElement/meter-boundary-values-expected.txt:
        * platform/mac/fast/dom/HTMLMeterElement/meter-element-expected.checksum:
        * platform/mac/fast/dom/HTMLMeterElement/meter-element-expected.png:
        * platform/mac/fast/dom/HTMLMeterElement/meter-element-expected.txt:
        * platform/mac/fast/dom/HTMLMeterElement/meter-optimums-expected.txt:
        * platform/mac/fast/dom/HTMLMeterElement/meter-styles-changing-pseudo-expected.checksum:
        * platform/mac/fast/dom/HTMLMeterElement/meter-styles-changing-pseudo-expected.png:
        * platform/mac/fast/dom/HTMLMeterElement/meter-styles-changing-pseudo-expected.txt:
        * platform/mac/fast/dom/HTMLMeterElement/meter-styles-expected.checksum:
        * platform/mac/fast/dom/HTMLMeterElement/meter-styles-expected.png:
        * platform/mac/fast/dom/HTMLMeterElement/meter-styles-expected.txt:

2011-03-30  Xiaomei Ji  <xji@chromium.org>

        Reviewed by Ryosuke Niwa.

        Experiment with moving caret by word in visual order.
        https://bugs.webkit.org/show_bug.cgi?id=57336

        * editing/selection/move-by-word-visually-expected.txt: Added.
        * editing/selection/move-by-word-visually.html: Added.

2011-03-31  Pavel Podivilov  <podivilov@chromium.org>

        Unreviewed, update chromium test expectations.

        * platform/chromium/test_expectations.txt:

2011-03-31  Alexander Pavlov  <apavlov@chromium.org>

        Reviewed by Yury Semikhatsky.

        Web Inspector: CSS domain - make a "range" object, get rid of "properties" object for Style objects
        https://bugs.webkit.org/show_bug.cgi?id=57538

        * http/tests/inspector/elements-test.js:
        (initialize_ElementTest.InspectorTest.rangeText):
        (initialize_ElementTest):
        * inspector/styles/get-set-stylesheet-text.html:
        * inspector/styles/styles-new-API.html:
        * inspector/styles/styles-source-offsets.html:

2011-03-31  Pavel Podivilov  <podivilov@chromium.org>

        Unreviewed, fix expectation files names after r82573.

        * platform/chromium-gpu-linux/compositing/geometry/clipping-foreground-actual.checksum: Removed.
        * platform/chromium-gpu-linux/compositing/geometry/clipping-foreground-expected.png: Renamed from LayoutTests/platform/chromium-gpu-linux/compositing/geometry/clipping-foreground-actual.png.
        * platform/chromium-gpu-linux/compositing/iframes/composited-iframe-alignment-actual.checksum: Removed.
        * platform/chromium-gpu-linux/compositing/iframes/composited-iframe-alignment-expected.png: Renamed from LayoutTests/platform/chromium-gpu-linux/compositing/iframes/composited-iframe-alignment-actual.png.

2011-03-31  Pavel Podivilov  <podivilov@chromium.org>

        Unreviewed, mark two canvas tests as TIMEOUT on chromium-gpu

        * platform/chromium/test_expectations.txt:

2011-03-31  Philippe Normand  <pnormand@igalia.com>

        Unreviewed, GTK rebaseline of a bidi svg test.

        * platform/gtk/svg/text/bidi-embedded-direction-expected.txt:

2011-03-31  Pavel Podivilov  <podivilov@chromium.org>

        Unreviewed, update chromium-gpu-linux compositing expectations.

        * platform/chromium-gpu-linux/compositing/geometry/clipping-foreground-actual.checksum: Added.
        * platform/chromium-gpu-linux/compositing/geometry/clipping-foreground-actual.png: Added.
        * platform/chromium-gpu-linux/compositing/iframes/composited-iframe-alignment-actual.checksum: Added.
        * platform/chromium-gpu-linux/compositing/iframes/composited-iframe-alignment-actual.png: Added.
        * platform/chromium/test_expectations.txt:

2011-03-31  Philippe Normand  <pnormand@igalia.com>

        Unreviewed, GTK rebaseline of 2 tests.

        * platform/gtk/fast/borders/rtl-border-04-expected.txt:
        * platform/gtk/fast/borders/rtl-border-05-expected.txt:

2011-03-31  Sheriff Bot  <webkit.review.bot@gmail.com>

        Unreviewed, rolling out r82565.
        http://trac.webkit.org/changeset/82565
        https://bugs.webkit.org/show_bug.cgi?id=57541

        Caused assertion failures. (Requested by bbandix on #webkit).

        * platform/mac/svg/dynamic-updates/SVGFEDiffuseLightingElement-inherit-lighting-color-css-prop-expected.checksum: Removed.
        * platform/mac/svg/dynamic-updates/SVGFEDiffuseLightingElement-inherit-lighting-color-css-prop-expected.png: Removed.
        * platform/mac/svg/dynamic-updates/SVGFEFloodElement-inherit-flood-color-expected.checksum: Removed.
        * platform/mac/svg/dynamic-updates/SVGFEFloodElement-inherit-flood-color-expected.png: Removed.
        * platform/mac/svg/dynamic-updates/SVGFESpecularLightingElement-inherit-lighting-color-css-prop-expected.checksum: Removed.
        * platform/mac/svg/dynamic-updates/SVGFESpecularLightingElement-inherit-lighting-color-css-prop-expected.png: Removed.
        * platform/mac/svg/dynamic-updates/SVGFESpecularLightingElement-lighting-color-css-prop-expected.checksum: Removed.
        * platform/mac/svg/dynamic-updates/SVGFESpecularLightingElement-lighting-color-css-prop-expected.png: Removed.
        * svg/dynamic-updates/SVGFEDiffuseLightingElement-inherit-lighting-color-css-prop-expected.txt: Removed.
        * svg/dynamic-updates/SVGFEDiffuseLightingElement-inherit-lighting-color-css-prop.html: Removed.
        * svg/dynamic-updates/SVGFEFloodElement-inherit-flood-color-expected.txt: Removed.
        * svg/dynamic-updates/SVGFEFloodElement-inherit-flood-color.html: Removed.
        * svg/dynamic-updates/SVGFESpecularLightingElement-inherit-lighting-color-css-prop-expected.txt: Removed.
        * svg/dynamic-updates/SVGFESpecularLightingElement-inherit-lighting-color-css-prop.html: Removed.
        * svg/dynamic-updates/SVGFESpecularLightingElement-lighting-color-css-prop-expected.txt: Removed.
        * svg/dynamic-updates/SVGFESpecularLightingElement-lighting-color-css-prop.html: Removed.
        * svg/dynamic-updates/script-tests/SVGFEDiffuseLightingElement-inherit-lighting-color-css-prop.js: Removed.
        * svg/dynamic-updates/script-tests/SVGFEFloodElement-inherit-flood-color-css-prop.js: Removed.
        * svg/dynamic-updates/script-tests/SVGFESpecularLightingElement-inherit-lighting-color-css-prop.js: Removed.
        * svg/dynamic-updates/script-tests/SVGFESpecularLightingElement-lighting-color-css-prop.js: Removed.

2011-03-31  Pavel Podivilov  <podivilov@chromium.org>

        Unreviewed, fix error in chromium test expectations.

        * platform/chromium/test_expectations.txt:

2011-03-31  Philippe Normand  <pnormand@igalia.com>

        Unreviewed, GTK baselines for tests added in r82303, r82419,
        r82400 and r82411.

        * platform/gtk/fast/block/float/float-forced-below-other-floats-expected.checksum: Added.
        * platform/gtk/fast/block/float/float-forced-below-other-floats-expected.png: Added.
        * platform/gtk/fast/block/float/float-forced-below-other-floats-expected.txt: Added.
        * platform/gtk/fast/borders/border-radius-inline-flow-expected.checksum: Added.
        * platform/gtk/fast/borders/border-radius-inline-flow-expected.png: Added.
        * platform/gtk/fast/borders/rtl-border-01-expected.checksum: Added.
        * platform/gtk/fast/borders/rtl-border-01-expected.png: Added.
        * platform/gtk/fast/borders/rtl-border-01-expected.txt: Added.
        * platform/gtk/fast/borders/rtl-border-02-expected.checksum: Added.
        * platform/gtk/fast/borders/rtl-border-02-expected.png: Added.
        * platform/gtk/fast/borders/rtl-border-02-expected.txt: Added.
        * platform/gtk/fast/borders/rtl-border-03-expected.checksum: Added.
        * platform/gtk/fast/borders/rtl-border-03-expected.png: Added.
        * platform/gtk/fast/borders/rtl-border-03-expected.txt: Added.
        * platform/gtk/fast/borders/rtl-border-04-expected.checksum: Added.
        * platform/gtk/fast/borders/rtl-border-04-expected.png: Added.
        * platform/gtk/fast/borders/rtl-border-04-expected.txt: Added.
        * platform/gtk/fast/borders/rtl-border-05-expected.checksum: Added.
        * platform/gtk/fast/borders/rtl-border-05-expected.png: Added.
        * platform/gtk/fast/borders/rtl-border-05-expected.txt: Added.
        * platform/gtk/fast/css/h1-in-section-elements-expected.checksum: Added.
        * platform/gtk/fast/css/h1-in-section-elements-expected.png: Added.
        * platform/gtk/fast/css/h1-in-section-elements-expected.txt: Added.
        * platform/gtk/svg/text/bidi-embedded-direction-expected.checksum: Added.
        * platform/gtk/svg/text/bidi-embedded-direction-expected.png: Added.
        * platform/gtk/svg/text/bidi-embedded-direction-expected.txt: Added.

2011-03-31  Pavel Feldman  <pfeldman@chromium.org>

        Not reviewed: follow up to XMLViewer change with expectations update.

        * fast/css/dumpAsText/xml-stylesheet-pi-not-in-prolog-expected.txt:
        * svg/hixie/error/dumpAsText/005-expected.txt:

2011-03-31  Renata Hodovan  <reni@webkit.org>

        Reviewed by Dirk Schulze.

        CSS related SVG*Element changes doesn't require relayout
        https://bugs.webkit.org/show_bug.cgi?id=56906

        Testing inherited CSS related SVG property changes by FEFlood, FESpecularLighting and FEDiffuseLighing filters.
        Adding a missing test to check the dynamic update of lighting-color property of FESpecularLighting.
        All the other modifications are covered by the existing dyanmic-update tests.

        * platform/mac/svg/dynamic-updates/SVGFEDiffuseLightingElement-inherit-lighting-color-css-prop-expected.checksum: Added.
        * platform/mac/svg/dynamic-updates/SVGFEDiffuseLightingElement-inherit-lighting-color-css-prop-expected.png: Added.
        * platform/mac/svg/dynamic-updates/SVGFEFloodElement-inherit-flood-color-expected.checksum: Added.
        * platform/mac/svg/dynamic-updates/SVGFEFloodElement-inherit-flood-color-expected.png: Added.
        * platform/mac/svg/dynamic-updates/SVGFESpecularLightingElement-inherit-lighting-color-css-prop-expected.checksum: Added.
        * platform/mac/svg/dynamic-updates/SVGFESpecularLightingElement-inherit-lighting-color-css-prop-expected.png: Added.
        * platform/mac/svg/dynamic-updates/SVGFESpecularLightingElement-lighting-color-css-prop-expected.checksum: Added.
        * platform/mac/svg/dynamic-updates/SVGFESpecularLightingElement-lighting-color-css-prop-expected.png: Added.
        * svg/dynamic-updates/SVGFEDiffuseLightingElement-inherit-lighting-color-css-prop-expected.txt: Added.
        * svg/dynamic-updates/SVGFEDiffuseLightingElement-inherit-lighting-color-css-prop.html: Added.
        * svg/dynamic-updates/SVGFEFloodElement-inherit-flood-color-expected.txt: Added.
        * svg/dynamic-updates/SVGFEFloodElement-inherit-flood-color.html: Added.
        * svg/dynamic-updates/SVGFESpecularLightingElement-inherit-lighting-color-css-prop-expected.txt: Added.
        * svg/dynamic-updates/SVGFESpecularLightingElement-inherit-lighting-color-css-prop.html: Added.
        * svg/dynamic-updates/SVGFESpecularLightingElement-lighting-color-css-prop-expected.txt: Added.
        * svg/dynamic-updates/SVGFESpecularLightingElement-lighting-color-css-prop.html: Added.
        * svg/dynamic-updates/script-tests/SVGFEDiffuseLightingElement-inherit-lighting-color-css-prop.js: Added.
        (executeTest):
        * svg/dynamic-updates/script-tests/SVGFEFloodElement-inherit-flood-color-css-prop.js: Added.
        (executeTest):
        * svg/dynamic-updates/script-tests/SVGFESpecularLightingElement-inherit-lighting-color-css-prop.js: Added.
        (executeTest):
        * svg/dynamic-updates/script-tests/SVGFESpecularLightingElement-lighting-color-css-prop.js: Added.
        (executeTest):

2011-03-31  Pavel Podivilov  <podivilov@chromium.org>

         Unreviewed, remove stale chromium-gpu canvas expectations (see r82521).

        * platform/chromium-gpu-linux/fast/canvas/canvas-text-alignment-expected.txt: Removed.
        * platform/chromium-gpu-linux/fast/canvas/canvas-text-baseline-expected.txt: Removed.
        * platform/chromium-gpu-win/fast/canvas/canvas-text-alignment-expected.txt: Removed.
        * platform/chromium-gpu-win/fast/canvas/canvas-text-baseline-expected.txt: Removed.
        * platform/chromium-gpu-win/fast/canvas/gradient-add-second-start-end-stop-expected.txt: Removed.

2011-03-31  Pavel Podivilov  <podivilov@chromium.org>

        Unreviewed, mark send-sliced-dragged-file.html as crash pass in chromium.

        * platform/chromium/test_expectations.txt:

2011-03-29  Vsevolod Vlasov  <vsevik@chromium.org>

        Reviewed by Pavel Feldman.

        XML Viewer: declared namespaces are not rendered.
        https://bugs.webkit.org/show_bug.cgi?id=56262

        XML viewer rewritten on javascript.

        * http/tests/xmlviewer/dumpAsText/wml-expected.txt:
        * http/tests/xmlviewer/dumpAsText/xlink-expected.txt:
        * http/tests/xmlviewer/dumpAsText/xmlviewer-expected.txt:
        * http/tests/xmlviewer/dumpAsText/xul-expected.txt:
        * platform/chromium-linux/http/tests/xmlviewer/dumpAsText/wml-expected.txt: Removed.
        * platform/chromium/http/tests/xmlviewer/dumpAsText/mathml-expected.txt:

2011-03-31  Pavel Podivilov  <podivilov@chromium.org>

        Unreviewed, remove stale chromium-gpu canvas expectations (see r82521).

        * platform/chromium-gpu-linux/fast/canvas/arc360-expected.txt: Removed.
        * platform/chromium-gpu-linux/fast/canvas/canvas-before-css-expected.txt: Removed.
        * platform/chromium-gpu-linux/fast/canvas/canvas-composite-expected.txt: Removed.
        * platform/chromium-gpu-linux/fast/canvas/canvas-resize-reset-expected.txt: Removed.
        * platform/chromium-gpu-linux/fast/canvas/canvas-transforms-during-path-expected.txt: Removed.
        * platform/chromium-gpu-linux/fast/canvas/canvasDrawingIntoSelf-expected.txt: Removed.
        * platform/chromium-gpu-linux/fast/canvas/drawImage-expected.txt: Removed.
        * platform/chromium-gpu-linux/fast/canvas/drawImage-with-globalAlpha-expected.txt: Removed.
        * platform/chromium-gpu-linux/fast/canvas/fill-stroke-clip-reset-path-expected.txt: Removed.
        * platform/chromium-gpu-linux/fast/canvas/fillrect-gradient-zero-stops-expected.txt: Removed.
        * platform/chromium-gpu-linux/fast/canvas/fillrect_gradient-expected.txt: Removed.
        * platform/chromium-gpu-linux/fast/canvas/image-object-in-canvas-expected.txt: Removed.
        * platform/chromium-gpu-linux/fast/canvas/image-pattern-rotate-expected.txt: Removed.
        * platform/chromium-gpu-linux/fast/canvas/patternfill-repeat-expected.txt: Removed.
        * platform/chromium-gpu-linux/fast/canvas/quadraticCurveTo-expected.txt: Removed.
        * platform/chromium-gpu-linux/fast/canvas/shadow-offset-1-expected.txt: Removed.
        * platform/chromium-gpu-linux/fast/canvas/shadow-offset-2-expected.txt: Removed.
        * platform/chromium-gpu-linux/fast/canvas/shadow-offset-3-expected.txt: Removed.
        * platform/chromium-gpu-linux/fast/canvas/shadow-offset-4-expected.txt: Removed.
        * platform/chromium-gpu-linux/fast/canvas/shadow-offset-5-expected.txt: Removed.
        * platform/chromium-gpu-linux/fast/canvas/shadow-offset-6-expected.txt: Removed.
        * platform/chromium-gpu-linux/fast/canvas/shadow-offset-7-expected.txt: Removed.
        * platform/chromium-gpu-linux/fast/canvas/toDataURL-alpha-expected.txt: Removed.
        * platform/chromium-gpu-linux/fast/canvas/zero-size-fill-rect-expected.txt: Removed.
        * platform/chromium-gpu-win/fast/canvas/arc360-expected.txt: Removed.
        * platform/chromium-gpu-win/fast/canvas/canvas-before-css-expected.txt: Removed.
        * platform/chromium-gpu-win/fast/canvas/canvas-composite-expected.txt: Removed.
        * platform/chromium-gpu-win/fast/canvas/canvas-empty-image-pattern-expected.txt: Removed.
        * platform/chromium-gpu-win/fast/canvas/canvas-resize-reset-expected.txt: Removed.
        * platform/chromium-gpu-win/fast/canvas/canvas-transform-identity-expected.txt: Removed.
        * platform/chromium-gpu-win/fast/canvas/canvas-transform-infinity-expected.txt: Removed.
        * platform/chromium-gpu-win/fast/canvas/canvas-transform-multiply-expected.txt: Removed.
        * platform/chromium-gpu-win/fast/canvas/canvas-transform-nan-expected.txt: Removed.
        * platform/chromium-gpu-win/fast/canvas/canvas-transform-non-invertible-expected.txt: Removed.
        * platform/chromium-gpu-win/fast/canvas/canvas-transform-skewed-expected.txt: Removed.
        * platform/chromium-gpu-win/fast/canvas/canvas-transforms-during-path-expected.txt: Removed.
        * platform/chromium-gpu-win/fast/canvas/canvasDrawingIntoSelf-expected.txt: Removed.
        * platform/chromium-gpu-win/fast/canvas/drawImage-expected.txt: Removed.
        * platform/chromium-gpu-win/fast/canvas/drawImage-with-globalAlpha-expected.txt: Removed.
        * platform/chromium-gpu-win/fast/canvas/fill-stroke-clip-reset-path-expected.txt: Removed.
        * platform/chromium-gpu-win/fast/canvas/fillrect-gradient-zero-stops-expected.txt: Removed.
        * platform/chromium-gpu-win/fast/canvas/fillrect_gradient-expected.txt: Removed.
        * platform/chromium-gpu-win/fast/canvas/image-object-in-canvas-expected.txt: Removed.
        * platform/chromium-gpu-win/fast/canvas/image-pattern-rotate-expected.txt: Removed.
        * platform/chromium-gpu-win/fast/canvas/patternfill-repeat-expected.txt: Removed.
        * platform/chromium-gpu-win/fast/canvas/quadraticCurveTo-expected.txt: Removed.
        * platform/chromium-gpu-win/fast/canvas/shadow-offset-1-expected.txt: Removed.
        * platform/chromium-gpu-win/fast/canvas/shadow-offset-2-expected.txt: Removed.
        * platform/chromium-gpu-win/fast/canvas/shadow-offset-3-expected.txt: Removed.
        * platform/chromium-gpu-win/fast/canvas/shadow-offset-4-expected.txt: Removed.
        * platform/chromium-gpu-win/fast/canvas/shadow-offset-5-expected.txt: Removed.
        * platform/chromium-gpu-win/fast/canvas/shadow-offset-6-expected.txt: Removed.
        * platform/chromium-gpu-win/fast/canvas/shadow-offset-7-expected.txt: Removed.
        * platform/chromium-gpu-win/fast/canvas/toDataURL-alpha-expected.txt: Removed.
        * platform/chromium-gpu-win/fast/canvas/zero-size-fill-rect-expected.txt: Removed.

2011-03-31  Philippe Normand  <pnormand@igalia.com>

        Unreviewed, remove GTK-specific fast/canvas baselines after r82521.

        * platform/gtk/fast/canvas/arc360-expected.txt: Removed.
        * platform/gtk/fast/canvas/canvas-before-css-expected.txt: Removed.
        * platform/gtk/fast/canvas/canvas-composite-expected.txt: Removed.
        * platform/gtk/fast/canvas/canvas-incremental-repaint-2-expected.txt: Removed.
        * platform/gtk/fast/canvas/canvas-incremental-repaint-expected.txt: Removed.
        * platform/gtk/fast/canvas/canvas-resize-reset-expected.txt: Removed.
        * platform/gtk/fast/canvas/canvas-text-alignment-expected.txt: Removed.
        * platform/gtk/fast/canvas/canvas-text-baseline-expected.txt: Removed.
        * platform/gtk/fast/canvas/canvas-transforms-during-path-expected.txt: Removed.
        * platform/gtk/fast/canvas/canvasDrawingIntoSelf-expected.txt: Removed.
        * platform/gtk/fast/canvas/drawImage-expected.txt: Removed.
        * platform/gtk/fast/canvas/drawImage-with-globalAlpha-expected.txt: Removed.
        * platform/gtk/fast/canvas/fill-stroke-clip-reset-path-expected.txt: Removed.
        * platform/gtk/fast/canvas/fillrect-gradient-zero-stops-expected.txt: Removed.
        * platform/gtk/fast/canvas/fillrect_gradient-expected.txt: Removed.
        * platform/gtk/fast/canvas/gradient-add-second-start-end-stop-expected.txt: Removed.
        * platform/gtk/fast/canvas/image-object-in-canvas-expected.txt: Removed.
        * platform/gtk/fast/canvas/image-pattern-rotate-expected.txt: Removed.
        * platform/gtk/fast/canvas/quadraticCurveTo-expected.txt: Removed.
        * platform/gtk/fast/canvas/setWidthResetAfterForcedRender-expected.txt: Removed.
        * platform/gtk/fast/canvas/shadow-offset-1-expected.txt: Removed.
        * platform/gtk/fast/canvas/shadow-offset-2-expected.txt: Removed.
        * platform/gtk/fast/canvas/shadow-offset-3-expected.txt: Removed.
        * platform/gtk/fast/canvas/shadow-offset-4-expected.txt: Removed.
        * platform/gtk/fast/canvas/shadow-offset-5-expected.txt: Removed.
        * platform/gtk/fast/canvas/shadow-offset-6-expected.txt: Removed.
        * platform/gtk/fast/canvas/shadow-offset-7-expected.txt: Removed.
        * platform/gtk/fast/canvas/toDataURL-alpha-expected.txt: Removed.
        * platform/gtk/fast/canvas/zero-size-fill-rect-expected.txt: Removed.

2011-03-31  Pavel Podivilov  <podivilov@chromium.org>

        Unreviewed, rebaseline chromium box-shadow tests after r82520.

        * platform/chromium-linux/fast/box-shadow/inset-box-shadows-expected.checksum:
        * platform/chromium-linux/fast/box-shadow/inset-box-shadows-expected.png:
        * platform/chromium-linux/fast/box-shadow/inset-expected.checksum:
        * platform/chromium-linux/fast/box-shadow/inset-expected.png:
        * platform/chromium-linux/fast/box-shadow/spread-expected.checksum:
        * platform/chromium-linux/fast/box-shadow/spread-expected.png:
        * platform/chromium-linux/fast/box-shadow/spread-multiple-inset-expected.checksum: Added.
        * platform/chromium-linux/fast/box-shadow/spread-multiple-inset-expected.png: Added.
        * platform/chromium-linux/fast/box-shadow/spread-multiple-normal-expected.checksum:
        * platform/chromium-linux/fast/box-shadow/spread-multiple-normal-expected.png:
        * platform/chromium-mac/fast/box-shadow/inset-box-shadows-expected.checksum: Added.
        * platform/chromium-mac/fast/box-shadow/inset-box-shadows-expected.png: Added.
        * platform/chromium-mac/fast/box-shadow/inset-expected.checksum: Added.
        * platform/chromium-mac/fast/box-shadow/inset-expected.png: Added.
        * platform/chromium-mac/fast/box-shadow/spread-multiple-inset-expected.checksum: Added.
        * platform/chromium-mac/fast/box-shadow/spread-multiple-inset-expected.png: Added.
        * platform/chromium-win/fast/box-shadow/inset-box-shadows-expected.checksum:
        * platform/chromium-win/fast/box-shadow/inset-box-shadows-expected.png:
        * platform/chromium-win/fast/box-shadow/inset-expected.checksum:
        * platform/chromium-win/fast/box-shadow/inset-expected.png:
        * platform/chromium-win/fast/box-shadow/spread-expected.checksum:
        * platform/chromium-win/fast/box-shadow/spread-expected.png:
        * platform/chromium-win/fast/box-shadow/spread-multiple-inset-expected.checksum: Added.
        * platform/chromium-win/fast/box-shadow/spread-multiple-inset-expected.png: Added.
        * platform/chromium-win/fast/box-shadow/spread-multiple-normal-expected.checksum:
        * platform/chromium-win/fast/box-shadow/spread-multiple-normal-expected.png:

2011-03-31  Pavel Podivilov  <podivilov@chromium.org>

        Unreviewed, update chromium expectations after r82521.

        * platform/chromium-win/fast/canvas/arc360-expected.txt: Removed.
        * platform/chromium-win/fast/canvas/canvas-before-css-expected.txt: Removed.
        * platform/chromium-win/fast/canvas/canvas-composite-expected.txt: Removed.
        * platform/chromium-win/fast/canvas/canvas-empty-image-pattern-expected.txt: Removed.
        * platform/chromium-win/fast/canvas/canvas-resize-reset-expected.txt: Removed.
        * platform/chromium-win/fast/canvas/canvas-transform-identity-expected.txt: Removed.
        * platform/chromium-win/fast/canvas/canvas-transform-infinity-expected.txt: Removed.
        * platform/chromium-win/fast/canvas/canvas-transform-multiply-expected.txt: Removed.
        * platform/chromium-win/fast/canvas/canvas-transform-nan-expected.txt: Removed.
        * platform/chromium-win/fast/canvas/canvas-transform-non-invertible-expected.txt: Removed.
        * platform/chromium-win/fast/canvas/canvas-transform-skewed-expected.txt: Removed.
        * platform/chromium-win/fast/canvas/canvas-transforms-during-path-expected.txt: Removed.
        * platform/chromium-win/fast/canvas/canvasDrawingIntoSelf-expected.txt: Removed.
        * platform/chromium-win/fast/canvas/drawImage-expected.txt: Removed.
        * platform/chromium-win/fast/canvas/drawImage-with-globalAlpha-expected.txt: Removed.
        * platform/chromium-win/fast/canvas/fill-stroke-clip-reset-path-expected.txt: Removed.
        * platform/chromium-win/fast/canvas/fillrect-gradient-zero-stops-expected.txt: Removed.
        * platform/chromium-win/fast/canvas/fillrect_gradient-expected.txt: Removed.
        * platform/chromium-win/fast/canvas/image-object-in-canvas-expected.txt: Removed.
        * platform/chromium-win/fast/canvas/image-pattern-rotate-expected.txt: Removed.
        * platform/chromium-win/fast/canvas/patternfill-repeat-expected.txt: Removed.
        * platform/chromium-win/fast/canvas/quadraticCurveTo-expected.txt: Removed.
        * platform/chromium-win/fast/canvas/setWidthResetAfterForcedRender-expected.txt: Removed.
        * platform/chromium-win/fast/canvas/shadow-offset-1-expected.txt: Removed.
        * platform/chromium-win/fast/canvas/shadow-offset-2-expected.txt: Removed.
        * platform/chromium-win/fast/canvas/shadow-offset-3-expected.txt: Removed.
        * platform/chromium-win/fast/canvas/shadow-offset-4-expected.txt: Removed.
        * platform/chromium-win/fast/canvas/shadow-offset-5-expected.txt: Removed.
        * platform/chromium-win/fast/canvas/shadow-offset-6-expected.txt: Removed.
        * platform/chromium-win/fast/canvas/shadow-offset-7-expected.txt: Removed.
        * platform/chromium-win/fast/canvas/toDataURL-alpha-expected.txt: Removed.
        * platform/chromium-win/fast/canvas/zero-size-fill-rect-expected.txt: Removed.

2011-03-31  Benjamin Kalman  <kalman@chromium.org>

        Reviewed by Ojan Vafai.

        DeleteSelectionCommand::removeNode tries to insert block placeholder in non-editable table cell positions
        https://bugs.webkit.org/show_bug.cgi?id=57079

        Add regression test.

        * editing/execCommand/delete-table-with-empty-contents-expected.txt: Added.
        * editing/execCommand/delete-table-with-empty-contents.html: Added.

2011-03-30  Sam Weinig  <sam@webkit.org>

        Adding fast/dom/HTMLKeygenElement/keygen.html to mac-wk2 Skipped list
        since it requires layoutTestController.shadowRoot, which is unimplemented.

        * platform/mac-wk2/Skipped:

2011-03-30  Dominic Cooney  <dominicc@google.com>

        Reviewed by Alexey Proskuryakov.

        Remove actual test output from test tree.
        https://bugs.webkit.org/show_bug.cgi?id=57503

        * platform/chromium-linux/websocket/tests/bad-sub-protocol-actual.txt: Removed.
        * platform/chromium-linux/websocket/tests/url-parsing-actual.txt: Removed.

2011-03-30  Yuta Kitamura  <yutak@chromium.org>

        Unreviewed, remove Chromium test expectations for two bugs that are known to be fixed.

        * platform/chromium/test_expectations.txt:

2011-03-30  Csaba Osztrogonác  <ossy@webkit.org>

        Remove unnecessary Qt specific fast/canvas expected files after r82521.

        * platform/qt/fast/canvas/arc360-expected.txt: Removed.
        * platform/qt/fast/canvas/canvas-before-css-expected.txt: Removed.
        * platform/qt/fast/canvas/canvas-composite-expected.txt: Removed.
        * platform/qt/fast/canvas/canvas-empty-image-pattern-expected.txt: Removed.
        * platform/qt/fast/canvas/canvas-incremental-repaint-2-expected.txt: Removed.
        * platform/qt/fast/canvas/canvas-resize-reset-expected.txt: Removed.
        * platform/qt/fast/canvas/canvas-text-alignment-expected.txt: Removed.
        * platform/qt/fast/canvas/canvas-text-baseline-expected.txt: Removed.
        * platform/qt/fast/canvas/canvas-transform-identity-expected.txt: Removed.
        * platform/qt/fast/canvas/canvas-transform-infinity-expected.txt: Removed.
        * platform/qt/fast/canvas/canvas-transform-multiply-expected.txt: Removed.
        * platform/qt/fast/canvas/canvas-transform-nan-expected.txt: Removed.
        * platform/qt/fast/canvas/canvas-transform-non-invertible-expected.txt: Removed.
        * platform/qt/fast/canvas/canvas-transform-skewed-expected.txt: Removed.
        * platform/qt/fast/canvas/canvas-transforms-during-path-expected.txt: Removed.
        * platform/qt/fast/canvas/canvasDrawingIntoSelf-expected.txt: Removed.
        * platform/qt/fast/canvas/drawImage-expected.txt: Removed.
        * platform/qt/fast/canvas/drawImage-with-globalAlpha-expected.txt: Removed.
        * platform/qt/fast/canvas/fill-stroke-clip-reset-path-expected.txt: Removed.
        * platform/qt/fast/canvas/fillrect-gradient-zero-stops-expected.txt: Removed.
        * platform/qt/fast/canvas/fillrect_gradient-expected.txt: Removed.
        * platform/qt/fast/canvas/gradient-add-second-start-end-stop-expected.txt: Removed.
        * platform/qt/fast/canvas/image-object-in-canvas-expected.txt: Removed.
        * platform/qt/fast/canvas/image-pattern-rotate-expected.txt: Removed.
        * platform/qt/fast/canvas/patternfill-repeat-expected.txt: Removed.
        * platform/qt/fast/canvas/quadraticCurveTo-expected.txt: Removed.
        * platform/qt/fast/canvas/setWidthResetAfterForcedRender-expected.txt: Removed.
        * platform/qt/fast/canvas/shadow-offset-1-expected.txt: Removed.
        * platform/qt/fast/canvas/shadow-offset-2-expected.txt: Removed.
        * platform/qt/fast/canvas/shadow-offset-3-expected.txt: Removed.
        * platform/qt/fast/canvas/shadow-offset-4-expected.txt: Removed.
        * platform/qt/fast/canvas/shadow-offset-5-expected.txt: Removed.
        * platform/qt/fast/canvas/shadow-offset-6-expected.txt: Removed.
        * platform/qt/fast/canvas/shadow-offset-7-expected.txt: Removed.
        * platform/qt/fast/canvas/toDataURL-alpha-expected.txt: Removed.
        * platform/qt/fast/canvas/zero-size-fill-rect-expected.txt: Removed.

2011-03-30  Dominic Cooney  <dominicc@google.com>

        Reviewed by Dimitri Glazkov.

        Adds layoutTestController.shadowRoot accessor to Mac DRT.
        https://bugs.webkit.org/show_bug.cgi?id=57415

        Updates the keygen test to exercise new DRT functionality; skips
        on other ports for now.

        * fast/dom/HTMLKeygenElement/keygen-expected.txt:
        * fast/dom/HTMLKeygenElement/keygen.html:
        * platform/chromium/test_expectations.txt:
        * platform/gtk/Skipped:
        * platform/qt/Skipped:
        * platform/win/Skipped:

2011-03-30  Kent Tamura  <tkent@chromium.org>

        Reviewed by Dimitri Glazkov.

        Simplify HTMLFormElement::validateInteractively() for asynchronous scroll event
        https://bugs.webkit.org/show_bug.cgi?id=57424

        Remove interactive-validation-lost-focusable.html because it has no
        sense since r75555.

        * fast/forms/interactive-validation-lost-focusable-expected.txt: Removed.
        * fast/forms/interactive-validation-lost-focusable.html: Removed.
        * platform/chromium/test_expectations.txt:
        * platform/gtk/Skipped:
        * platform/mac/Skipped:
        * platform/qt/Skipped:
        * platform/win/Skipped:

2011-03-30  Kent Tamura  <tkent@chromium.org>

        Reviewed by Darin Adler.

        REGRESSION (r74895): Crash if input.type = 'file' twice
        https://bugs.webkit.org/show_bug.cgi?id=57343

        * fast/forms/input-type-change3-expected.txt:
        * fast/forms/script-tests/input-type-change3.js: Add a new test.

2011-03-30  Jia Pu  <jpu@apple.com>

        Reviewed by Darin Adler.

        Autocorrection panel isn't positioned correctly in Safari (mac) when the zooming is not 1x.
        https://bugs.webkit.org/show_bug.cgi?id=57353
        <rdar://problem/9163983>

        Updated following test in response to recent change in AppKit spell checker.

        * platform/mac/editing/spelling/delete-autocorrected-word-1-expected.txt:
        * platform/mac/editing/spelling/delete-autocorrected-word-1.html:

2011-03-30  Dan Bernstein  <mitz@apple.com>

        Reviewed by Darin Adler.

        <rdar://problem/9199518> Crash when focusing a styled editable element

        * editing/deleting/delete-button-background-image-none-expected.txt: Added.
        * editing/deleting/delete-button-background-image-none.html: Added.

2011-03-30  Mihai Parparita  <mihaip@chromium.org>

        Fix expected svg/ failures for Chromium Snow Leopard.

        * platform/chromium-mac-leopard/svg/W3C-SVG-1.1/animate-elem-36-t-expected.checksum: Copied from LayoutTests/platform/chromium-mac/svg/W3C-SVG-1.1/animate-elem-36-t-expected.checksum.
        * platform/chromium-mac-leopard/svg/W3C-SVG-1.1/animate-elem-36-t-expected.png: Copied from LayoutTests/platform/chromium-mac/svg/W3C-SVG-1.1/animate-elem-36-t-expected.png.
        * platform/chromium-mac-leopard/svg/custom/dynamic-svg-document-creation-expected.checksum: Added.
        * platform/chromium-mac-leopard/svg/custom/dynamic-svg-document-creation-expected.png: Added.
        * platform/chromium-mac-leopard/svg/custom/feComponentTransfer-Discrete-expected.checksum: Added.
        * platform/chromium-mac-leopard/svg/custom/feComponentTransfer-Discrete-expected.png: Added.
        * platform/chromium-mac-leopard/svg/custom/feComponentTransfer-Gamma-expected.checksum: Added.
        * platform/chromium-mac-leopard/svg/custom/feComponentTransfer-Gamma-expected.png: Added.
        * platform/chromium-mac-leopard/svg/custom/feComponentTransfer-Linear-expected.checksum: Added.
        * platform/chromium-mac-leopard/svg/custom/feComponentTransfer-Linear-expected.png: Added.
        * platform/chromium-mac-leopard/svg/custom/feComponentTransfer-Table-expected.checksum: Added.
        * platform/chromium-mac-leopard/svg/custom/feComponentTransfer-Table-expected.png: Added.
        * platform/chromium-mac-leopard/svg/custom/foreign-object-skew-expected.checksum: Added.
        * platform/chromium-mac-leopard/svg/custom/foreign-object-skew-expected.png: Added.
        * platform/chromium-mac-leopard/svg/custom/glyph-transformation-with-hkern-expected.checksum: Added.
        * platform/chromium-mac-leopard/svg/custom/glyph-transformation-with-hkern-expected.png: Added.
        * platform/chromium-mac-leopard/svg/custom/gradient-rotated-bbox-expected.checksum: Added.
        * platform/chromium-mac-leopard/svg/custom/gradient-rotated-bbox-expected.png: Added.
        * platform/chromium-mac-leopard/svg/custom/grayscale-gradient-mask-expected.checksum: Added.
        * platform/chromium-mac-leopard/svg/custom/grayscale-gradient-mask-expected.png: Added.
        * platform/chromium-mac-leopard/svg/custom/js-late-gradient-creation-expected.checksum: Added.
        * platform/chromium-mac-leopard/svg/custom/js-late-gradient-creation-expected.png: Added.
        * platform/chromium-mac-leopard/svg/custom/js-late-pattern-and-object-creation-expected.checksum: Added.
        * platform/chromium-mac-leopard/svg/custom/js-late-pattern-and-object-creation-expected.png: Added.
        * platform/chromium-mac-leopard/svg/custom/js-late-pattern-creation-expected.checksum: Added.
        * platform/chromium-mac-leopard/svg/custom/js-late-pattern-creation-expected.png: Added.
        * platform/chromium-mac-leopard/svg/custom/non-scaling-stroke-expected.checksum: Added.
        * platform/chromium-mac-leopard/svg/custom/non-scaling-stroke-expected.png: Added.
        * platform/chromium-mac-leopard/svg/custom/pattern-skew-transformed-expected.checksum: Added.
        * platform/chromium-mac-leopard/svg/custom/pattern-skew-transformed-expected.png: Added.
        * platform/chromium-mac-leopard/svg/custom/pattern-with-transformation-expected.checksum: Added.
        * platform/chromium-mac-leopard/svg/custom/pattern-with-transformation-expected.png: Added.
        * platform/chromium-mac-leopard/svg/custom/preserve-aspect-ratio-syntax-expected.checksum: Added.
        * platform/chromium-mac-leopard/svg/custom/preserve-aspect-ratio-syntax-expected.png: Added.
        * platform/chromium-mac-leopard/svg/custom/radial-gradient-with-outstanding-focalPoint-expected.checksum: Added.
        * platform/chromium-mac-leopard/svg/custom/radial-gradient-with-outstanding-focalPoint-expected.png: Added.
        * platform/chromium-mac-leopard/svg/custom/resource-invalidate-on-target-update-expected.checksum: Added.
        * platform/chromium-mac-leopard/svg/custom/resource-invalidate-on-target-update-expected.png: Added.
        * platform/chromium-mac-leopard/svg/custom/shapes-supporting-markers-expected.checksum: Added.
        * platform/chromium-mac-leopard/svg/custom/shapes-supporting-markers-expected.png: Added.
        * platform/chromium-mac-leopard/svg/custom/svg-curve-with-relative-cordinates-expected.checksum: Copied from LayoutTests/platform/chromium-mac/svg/custom/svg-curve-with-relative-cordinates-expected.checksum.
        * platform/chromium-mac-leopard/svg/custom/svg-curve-with-relative-cordinates-expected.png: Copied from LayoutTests/platform/chromium-mac/svg/custom/svg-curve-with-relative-cordinates-expected.png.
        * platform/chromium-mac-leopard/svg/custom/svg-fonts-with-no-element-reference-expected.checksum: Added.
        * platform/chromium-mac-leopard/svg/custom/svg-fonts-with-no-element-reference-expected.png: Added.
        * platform/chromium-mac-leopard/svg/custom/use-on-clip-path-with-transformation-expected.checksum: Added.
        * platform/chromium-mac-leopard/svg/custom/use-on-clip-path-with-transformation-expected.png: Added.
        * platform/chromium-mac-leopard/svg/custom/viewbox-syntax-expected.checksum: Added.
        * platform/chromium-mac-leopard/svg/custom/viewbox-syntax-expected.png: Added.
        * platform/chromium-mac-leopard/svg/dynamic-updates/SVGFEBlendElement-dom-in-attr-expected.checksum: Copied from LayoutTests/platform/chromium-mac/svg/dynamic-updates/SVGFEBlendElement-dom-in-attr-expected.checksum.
        * platform/chromium-mac-leopard/svg/dynamic-updates/SVGFEBlendElement-dom-in-attr-expected.png: Copied from LayoutTests/platform/chromium-mac/svg/dynamic-updates/SVGFEBlendElement-dom-in-attr-expected.png.
        * platform/chromium-mac-leopard/svg/dynamic-updates/SVGFEBlendElement-dom-in2-attr-expected.checksum: Copied from LayoutTests/platform/chromium-mac/svg/dynamic-updates/SVGFEBlendElement-dom-in2-attr-expected.checksum.
        * platform/chromium-mac-leopard/svg/dynamic-updates/SVGFEBlendElement-dom-in2-attr-expected.png: Copied from LayoutTests/platform/chromium-mac/svg/dynamic-updates/SVGFEBlendElement-dom-in2-attr-expected.png.
        * platform/chromium-mac-leopard/svg/dynamic-updates/SVGFEBlendElement-dom-mode-attr-expected.checksum: Copied from LayoutTests/platform/chromium-mac/svg/dynamic-updates/SVGFEBlendElement-dom-mode-attr-expected.checksum.
        * platform/chromium-mac-leopard/svg/dynamic-updates/SVGFEBlendElement-dom-mode-attr-expected.png: Copied from LayoutTests/platform/chromium-mac/svg/dynamic-updates/SVGFEBlendElement-dom-mode-attr-expected.png.
        * platform/chromium-mac-leopard/svg/dynamic-updates/SVGFEBlendElement-svgdom-in-prop-expected.checksum: Copied from LayoutTests/platform/chromium-mac/svg/dynamic-updates/SVGFEBlendElement-svgdom-in-prop-expected.checksum.
        * platform/chromium-mac-leopard/svg/dynamic-updates/SVGFEBlendElement-svgdom-in-prop-expected.png: Copied from LayoutTests/platform/chromium-mac/svg/dynamic-updates/SVGFEBlendElement-svgdom-in-prop-expected.png.
        * platform/chromium-mac-leopard/svg/dynamic-updates/SVGFEBlendElement-svgdom-in2-prop-expected.checksum: Copied from LayoutTests/platform/chromium-mac/svg/dynamic-updates/SVGFEBlendElement-svgdom-in2-prop-expected.checksum.
        * platform/chromium-mac-leopard/svg/dynamic-updates/SVGFEBlendElement-svgdom-in2-prop-expected.png: Copied from LayoutTests/platform/chromium-mac/svg/dynamic-updates/SVGFEBlendElement-svgdom-in2-prop-expected.png.
        * platform/chromium-mac-leopard/svg/dynamic-updates/SVGFEBlendElement-svgdom-mode-prop-expected.checksum: Copied from LayoutTests/platform/chromium-mac/svg/dynamic-updates/SVGFEBlendElement-svgdom-mode-prop-expected.checksum.
        * platform/chromium-mac-leopard/svg/dynamic-updates/SVGFEBlendElement-svgdom-mode-prop-expected.png: Copied from LayoutTests/platform/chromium-mac/svg/dynamic-updates/SVGFEBlendElement-svgdom-mode-prop-expected.png.
        * platform/chromium-mac-leopard/svg/filters/feDisplacementMap-expected.checksum: Copied from LayoutTests/platform/chromium-mac/svg/filters/feDisplacementMap-expected.checksum.
        * platform/chromium-mac-leopard/svg/filters/feDisplacementMap-expected.png: Copied from LayoutTests/platform/chromium-mac/svg/filters/feDisplacementMap-expected.png.
        * platform/chromium-mac-leopard/svg/hixie/mixed/006-expected.checksum: Copied from LayoutTests/platform/chromium-mac/svg/hixie/mixed/006-expected.checksum.
        * platform/chromium-mac-leopard/svg/hixie/mixed/006-expected.png: Copied from LayoutTests/platform/chromium-mac/svg/hixie/mixed/006-expected.png.
        * platform/chromium-mac-leopard/svg/hixie/mixed/008-expected.checksum: Copied from LayoutTests/platform/chromium-mac/svg/hixie/mixed/008-expected.checksum.
        * platform/chromium-mac-leopard/svg/hixie/mixed/008-expected.png: Copied from LayoutTests/platform/chromium-mac/svg/hixie/mixed/008-expected.png.
        * platform/chromium-mac-leopard/svg/hixie/mixed/011-expected.checksum: Copied from LayoutTests/platform/chromium-mac/svg/hixie/mixed/011-expected.checksum.
        * platform/chromium-mac-leopard/svg/hixie/mixed/011-expected.png: Copied from LayoutTests/platform/chromium-mac/svg/hixie/mixed/011-expected.png.
        * platform/chromium-mac-leopard/svg/text/text-intro-05-t-expected.checksum: Copied from LayoutTests/platform/chromium-mac/svg/text/text-intro-05-t-expected.checksum.
        * platform/chromium-mac-leopard/svg/text/text-intro-05-t-expected.png: Copied from LayoutTests/platform/chromium-mac/svg/text/text-intro-05-t-expected.png.
        * platform/chromium-mac-leopard/svg/zoom/page/zoom-foreignObject-expected.checksum: Added.
        * platform/chromium-mac-leopard/svg/zoom/page/zoom-foreignObject-expected.png: Added.
        * platform/chromium-mac/svg/W3C-SVG-1.1/animate-elem-36-t-expected.checksum:
        * platform/chromium-mac/svg/W3C-SVG-1.1/animate-elem-36-t-expected.png:
        * platform/chromium-mac/svg/custom/dynamic-svg-document-creation-expected.checksum: Added.
        * platform/chromium-mac/svg/custom/dynamic-svg-document-creation-expected.png: Added.
        * platform/chromium-mac/svg/custom/feComponentTransfer-Discrete-expected.checksum: Added.
        * platform/chromium-mac/svg/custom/feComponentTransfer-Discrete-expected.png: Added.
        * platform/chromium-mac/svg/custom/feComponentTransfer-Gamma-expected.checksum: Added.
        * platform/chromium-mac/svg/custom/feComponentTransfer-Gamma-expected.png: Added.
        * platform/chromium-mac/svg/custom/feComponentTransfer-Linear-expected.checksum: Added.
        * platform/chromium-mac/svg/custom/feComponentTransfer-Linear-expected.png: Added.
        * platform/chromium-mac/svg/custom/feComponentTransfer-Table-expected.checksum: Added.
        * platform/chromium-mac/svg/custom/feComponentTransfer-Table-expected.png: Added.
        * platform/chromium-mac/svg/custom/foreign-object-skew-expected.checksum: Added.
        * platform/chromium-mac/svg/custom/foreign-object-skew-expected.png: Added.
        * platform/chromium-mac/svg/custom/glyph-transformation-with-hkern-expected.checksum: Added.
        * platform/chromium-mac/svg/custom/glyph-transformation-with-hkern-expected.png: Added.
        * platform/chromium-mac/svg/custom/gradient-rotated-bbox-expected.checksum: Added.
        * platform/chromium-mac/svg/custom/gradient-rotated-bbox-expected.png: Added.
        * platform/chromium-mac/svg/custom/grayscale-gradient-mask-expected.checksum: Added.
        * platform/chromium-mac/svg/custom/grayscale-gradient-mask-expected.png: Added.
        * platform/chromium-mac/svg/custom/inline-svg-in-xhtml-expected.checksum:
        * platform/chromium-mac/svg/custom/inline-svg-in-xhtml-expected.png:
        * platform/chromium-mac/svg/custom/js-late-gradient-and-object-creation-expected.checksum: Added.
        * platform/chromium-mac/svg/custom/js-late-gradient-and-object-creation-expected.png: Added.
        * platform/chromium-mac/svg/custom/js-late-gradient-creation-expected.checksum: Added.
        * platform/chromium-mac/svg/custom/js-late-gradient-creation-expected.png: Added.
        * platform/chromium-mac/svg/custom/js-late-pattern-and-object-creation-expected.checksum: Added.
        * platform/chromium-mac/svg/custom/js-late-pattern-and-object-creation-expected.png: Added.
        * platform/chromium-mac/svg/custom/js-late-pattern-creation-expected.checksum: Added.
        * platform/chromium-mac/svg/custom/js-late-pattern-creation-expected.png: Added.
        * platform/chromium-mac/svg/custom/non-scaling-stroke-expected.checksum: Added.
        * platform/chromium-mac/svg/custom/non-scaling-stroke-expected.png: Added.
        * platform/chromium-mac/svg/custom/pattern-skew-transformed-expected.checksum: Added.
        * platform/chromium-mac/svg/custom/pattern-skew-transformed-expected.png: Copied from LayoutTests/platform/chromium-mac/svg/filters/feDisplacementMap-expected.png.
        * platform/chromium-mac/svg/custom/pattern-with-transformation-expected.checksum: Added.
        * platform/chromium-mac/svg/custom/pattern-with-transformation-expected.png: Added.
        * platform/chromium-mac/svg/custom/preserve-aspect-ratio-syntax-expected.checksum: Added.
        * platform/chromium-mac/svg/custom/preserve-aspect-ratio-syntax-expected.png: Added.
        * platform/chromium-mac/svg/custom/radial-gradient-with-outstanding-focalPoint-expected.checksum: Added.
        * platform/chromium-mac/svg/custom/radial-gradient-with-outstanding-focalPoint-expected.png: Added.
        * platform/chromium-mac/svg/custom/resource-invalidate-on-target-update-expected.checksum: Added.
        * platform/chromium-mac/svg/custom/resource-invalidate-on-target-update-expected.png: Added.
        * platform/chromium-mac/svg/custom/scrolling-embedded-svg-file-image-repaint-problem-expected.checksum:
        * platform/chromium-mac/svg/custom/scrolling-embedded-svg-file-image-repaint-problem-expected.png:
        * platform/chromium-mac/svg/custom/shapes-supporting-markers-expected.checksum: Added.
        * platform/chromium-mac/svg/custom/shapes-supporting-markers-expected.png: Added.
        * platform/chromium-mac/svg/custom/svg-curve-with-relative-cordinates-expected.checksum:
        * platform/chromium-mac/svg/custom/svg-curve-with-relative-cordinates-expected.png:
        * platform/chromium-mac/svg/custom/svg-fonts-in-html-expected.checksum:
        * platform/chromium-mac/svg/custom/svg-fonts-in-html-expected.png:
        * platform/chromium-mac/svg/custom/svg-fonts-with-no-element-reference-expected.checksum: Added.
        * platform/chromium-mac/svg/custom/svg-fonts-with-no-element-reference-expected.png: Added.
        * platform/chromium-mac/svg/custom/text-rotated-gradient-expected.checksum: Added.
        * platform/chromium-mac/svg/custom/text-rotated-gradient-expected.png: Added.
        * platform/chromium-mac/svg/custom/use-detach-expected.checksum: Added.
        * platform/chromium-mac/svg/custom/use-detach-expected.png: Added.
        * platform/chromium-mac/svg/custom/use-on-clip-path-with-transformation-expected.checksum: Added.
        * platform/chromium-mac/svg/custom/use-on-clip-path-with-transformation-expected.png: Copied from LayoutTests/platform/chromium-mac/svg/filters/feDisplacementMap-expected.png.
        * platform/chromium-mac/svg/custom/viewbox-syntax-expected.checksum: Added.
        * platform/chromium-mac/svg/custom/viewbox-syntax-expected.png: Added.
        * platform/chromium-mac/svg/dynamic-updates/SVGFEBlendElement-dom-in-attr-expected.checksum:
        * platform/chromium-mac/svg/dynamic-updates/SVGFEBlendElement-dom-in-attr-expected.png:
        * platform/chromium-mac/svg/dynamic-updates/SVGFEBlendElement-dom-in2-attr-expected.checksum:
        * platform/chromium-mac/svg/dynamic-updates/SVGFEBlendElement-dom-in2-attr-expected.png:
        * platform/chromium-mac/svg/dynamic-updates/SVGFEBlendElement-dom-mode-attr-expected.checksum:
        * platform/chromium-mac/svg/dynamic-updates/SVGFEBlendElement-dom-mode-attr-expected.png:
        * platform/chromium-mac/svg/dynamic-updates/SVGFEBlendElement-svgdom-in-prop-expected.checksum:
        * platform/chromium-mac/svg/dynamic-updates/SVGFEBlendElement-svgdom-in-prop-expected.png:
        * platform/chromium-mac/svg/dynamic-updates/SVGFEBlendElement-svgdom-in2-prop-expected.checksum:
        * platform/chromium-mac/svg/dynamic-updates/SVGFEBlendElement-svgdom-in2-prop-expected.png:
        * platform/chromium-mac/svg/dynamic-updates/SVGFEBlendElement-svgdom-mode-prop-expected.checksum:
        * platform/chromium-mac/svg/dynamic-updates/SVGFEBlendElement-svgdom-mode-prop-expected.png:
        * platform/chromium-mac/svg/filters/feDisplacementMap-expected.checksum:
        * platform/chromium-mac/svg/filters/feDisplacementMap-expected.png:
        * platform/chromium-mac/svg/hixie/mixed/003-expected.checksum:
        * platform/chromium-mac/svg/hixie/mixed/003-expected.png:
        * platform/chromium-mac/svg/hixie/mixed/006-expected.checksum:
        * platform/chromium-mac/svg/hixie/mixed/006-expected.png:
        * platform/chromium-mac/svg/hixie/mixed/008-expected.checksum:
        * platform/chromium-mac/svg/hixie/mixed/008-expected.png:
        * platform/chromium-mac/svg/hixie/mixed/011-expected.checksum:
        * platform/chromium-mac/svg/hixie/mixed/011-expected.png:
        * platform/chromium-mac/svg/text/text-intro-05-t-expected.checksum:
        * platform/chromium-mac/svg/text/text-intro-05-t-expected.png:
        * platform/chromium-mac/svg/zoom/page/zoom-foreignObject-expected.checksum: Added.
        * platform/chromium-mac/svg/zoom/page/zoom-foreignObject-expected.png: Added.
        * platform/chromium-mac/svg/zoom/page/zoom-mask-with-percentages-expected.checksum: Added.
        * platform/chromium-mac/svg/zoom/page/zoom-mask-with-percentages-expected.png: Added.
        * platform/chromium/test_expectations.txt:

2011-03-30  Matthew Delaney  <mdelaney@apple.com>

        Reviewed by Chris Marrin.

        Update fast/canvas tests to avoid dumping the render tree when possible
        https://bugs.webkit.org/show_bug.cgi?id=57493

        * fast/canvas/<various tests>: Added new expectations.
        * platform/mac/fast/canvas/<various tests>: Removed old expectations with Render Tree printouts.

2011-03-30  MORITA Hajime  <morrita@google.com>

        box-shadow radii stays the same regardless of any spread set
        https://bugs.webkit.org/show_bug.cgi?id=49726

        - Added test for multiple inset shadows.
        - Updated wrong expectations which are fixed by this change.
        - Moved some expectation file location to platform/mac because they don't match
          against non-mac platform results due to the difference between graphics backends.

        * fast/box-shadow/spread-multiple-inset-expected.txt: Added.
        * fast/box-shadow/spread-multiple-inset.html: Added.
        * fast/box-shadow/spread-multiple-normal-expected.checksum: Removed.
        * fast/box-shadow/spread-multiple-normal-expected.png: Removed.
        * fast/box-shadow/spread-multiple-normal.html: Changed to avoid overlapping boxes.
        * platform/mac/fast/box-shadow/spread-expected.checksum:
        * platform/mac/fast/box-shadow/spread-expected.png:
        * platform/mac/fast/box-shadow/spread-multiple-inset-expected.checksum: Added.
        * platform/mac/fast/box-shadow/spread-multiple-inset-expected.png: Added.
        * platform/mac/fast/box-shadow/spread-multiple-normal-expected.checksum: Added.
        * platform/mac/fast/box-shadow/spread-multiple-normal-expected.png: Added.

2011-03-25  Matthew Delaney  <mdelaney@apple.com>

        Reviewed by Simon Fraser.

        Use Accelerate vImage vectorized (un)premultiplyImageData functions for ImageBufferCG.cpp
        https://bugs.webkit.org/show_bug.cgi?id=53134

        * fast/canvas/canvas-getImageData-expected.txt: Resetting expected results for this test due to test change.
        * fast/canvas/canvas-getImageData.html: Removed the section of this test that incorrectly assumes the
          rounding behavior of initial inputed data.
        * fast/canvas/getPutImageDataPairTest-expected.txt: Added.
        * fast/canvas/getPutImageDataPairTest.html: A new test to make sure that a batch of paired putImageData(getImageData)
          calls doesn't accumulate any error per the spec.
        * fast/canvas/script-tests/rgba-parsing.js: Removed the pixel spew section at the bottom since because 1) it is only
          helpful for knowing when our rounding behavior changes and 2) the behavior is implementation dependent with no easy
          in the layouttests to distinguish between 10.6.6 and 10.6.7.
        * fast/canvas/rgba-parsing-expected.txt: Updated the expected results off of the the test change.

2011-03-30  Jessie Berlin  <jberlin@apple.com>

        http/tests/uri/username-with-no-hostname.html is flaky due to preload scanner
        https://bugs.webkit.org/show_bug.cgi?id=57496

        Unreviewed, this test has been flakey on a bunch of platforms, so disable it to keep the
        bots green.

        * http/tests/uri/username-with-no-hostname.html: Removed.
        * http/tests/uri/username-with-no-hostname.html-disabled: Copied from http/tests/uri/username-with-no-hostname.html.

2011-03-30  Martin Robinson  <mrobinson@igalia.com>

        Skip a test which requires missing resource load callback dumps on GTK+.
        Better clump another failing test.

        * platform/gtk/Skipped: Update the skipped list.

2011-03-30  Abhishek Arya  <inferno@chromium.org>

        Reviewed by Simon Fraser.

        Tests that we do not crash when removing inline style
        from a node that is not a html element.
        https://bugs.webkit.org/show_bug.cgi?id=57348

        * editing/execCommand/remove-format-non-html-element-crash-expected.txt: Added.
        * editing/execCommand/remove-format-non-html-element-crash.html: Added.

2011-03-30  Erik Arvidsson  <arv@chromium.org>

        Reviewed by Alexey Proskuryakov.

        Missing DOM bindings for a ping
        https://bugs.webkit.org/show_bug.cgi?id=51955

        * fast/dom/ping-attribute-dom-binding-expected.txt: Added.
        * fast/dom/ping-attribute-dom-binding.html: Added.

2011-03-30  Mihai Parparita  <mihaip@chromium.org>

        Fix remaining unexpected Chromium Snow Leopard image failures.

        Current Leopard baselines in chromium-mac/ are moved to
        chromium-mac-leopard/.

        * platform/chromium-mac-leopard/fast/forms/input-align-image-expected.checksum: Copied from LayoutTests/platform/chromium-mac/fast/forms/input-align-image-expected.checksum.
        * platform/chromium-mac-leopard/fast/forms/input-align-image-expected.png: Copied from LayoutTests/platform/chromium-mac/fast/forms/input-align-image-expected.png.
        * platform/chromium-mac-leopard/fast/forms/input-type-change-expected.checksum: Copied from LayoutTests/platform/chromium-mac/fast/forms/input-type-change-expected.checksum.
        * platform/chromium-mac-leopard/fast/forms/input-type-change-expected.png: Copied from LayoutTests/platform/chromium-mac/fast/forms/input-type-change-expected.png.
        * platform/chromium-mac-leopard/fast/forms/listbox-bidi-align-expected.checksum: Copied from LayoutTests/platform/chromium-mac/fast/forms/listbox-bidi-align-expected.checksum.
        * platform/chromium-mac-leopard/fast/forms/listbox-bidi-align-expected.png: Copied from LayoutTests/platform/chromium-mac/fast/forms/listbox-bidi-align-expected.png.
        * platform/chromium-mac-leopard/fast/text/drawBidiText-expected.checksum: Copied from LayoutTests/platform/chromium-mac/fast/text/drawBidiText-expected.checksum.
        * platform/chromium-mac-leopard/fast/text/drawBidiText-expected.png: Copied from LayoutTests/platform/chromium-mac/fast/text/drawBidiText-expected.png.
        * platform/chromium-mac-leopard/media/video-transformed-expected.checksum: Copied from LayoutTests/platform/chromium-mac/media/video-transformed-expected.checksum.
        * platform/chromium-mac-leopard/media/video-transformed-expected.png: Copied from LayoutTests/platform/chromium-mac/media/video-transformed-expected.png.
        * platform/chromium-mac-leopard/scrollbars/listbox-scrollbar-combinations-expected.checksum: Copied from LayoutTests/platform/chromium-mac/scrollbars/listbox-scrollbar-combinations-expected.checksum.
        * platform/chromium-mac-leopard/scrollbars/listbox-scrollbar-combinations-expected.png: Copied from LayoutTests/platform/chromium-mac/scrollbars/listbox-scrollbar-combinations-expected.png.
        * platform/chromium-mac-leopard/scrollbars/overflow-scrollbar-combinations-expected.checksum: Copied from LayoutTests/platform/chromium-mac/scrollbars/overflow-scrollbar-combinations-expected.checksum.
        * platform/chromium-mac-leopard/scrollbars/overflow-scrollbar-combinations-expected.png: Copied from LayoutTests/platform/chromium-mac/scrollbars/overflow-scrollbar-combinations-expected.png.
        * platform/chromium-mac-leopard/svg/text/foreignObject-text-clipping-bug-expected.checksum: Copied from LayoutTests/platform/chromium-mac/svg/text/foreignObject-text-clipping-bug-expected.checksum.
        * platform/chromium-mac-leopard/svg/text/foreignObject-text-clipping-bug-expected.png: Copied from LayoutTests/platform/chromium-mac/svg/text/foreignObject-text-clipping-bug-expected.png.
        * platform/chromium-mac-leopard/tables/mozilla/core/col_widths_auto_autoFix-expected.checksum: Copied from LayoutTests/platform/chromium-mac/tables/mozilla/core/col_widths_auto_autoFix-expected.checksum.
        * platform/chromium-mac-leopard/tables/mozilla/core/col_widths_auto_autoFix-expected.png: Copied from LayoutTests/platform/chromium-mac/tables/mozilla/core/col_widths_auto_autoFix-expected.png.
        * platform/chromium-mac-leopard/tables/mozilla_expected_failures/bugs/bug6933-expected.checksum: Copied from LayoutTests/platform/chromium-mac/tables/mozilla_expected_failures/bugs/bug6933-expected.checksum.
        * platform/chromium-mac-leopard/tables/mozilla_expected_failures/bugs/bug6933-expected.png: Copied from LayoutTests/platform/chromium-mac/tables/mozilla_expected_failures/bugs/bug6933-expected.png.
        * platform/chromium-mac/editing/deleting/table-cells-expected.checksum: Removed.
        * platform/chromium-mac/fast/forms/input-align-image-expected.checksum:
        * platform/chromium-mac/fast/forms/input-align-image-expected.png:
        * platform/chromium-mac/fast/forms/input-type-change-expected.checksum:
        * platform/chromium-mac/fast/forms/input-type-change-expected.png:
        * platform/chromium-mac/fast/forms/listbox-bidi-align-expected.checksum:
        * platform/chromium-mac/fast/forms/listbox-bidi-align-expected.png:
        * platform/chromium-mac/fast/text/drawBidiText-expected.checksum:
        * platform/chromium-mac/fast/text/drawBidiText-expected.png:
        * platform/chromium-mac/media/video-transformed-expected.checksum:
        * platform/chromium-mac/media/video-transformed-expected.png:
        * platform/chromium-mac/scrollbars/listbox-scrollbar-combinations-expected.checksum:
        * platform/chromium-mac/scrollbars/listbox-scrollbar-combinations-expected.png:
        * platform/chromium-mac/scrollbars/overflow-scrollbar-combinations-expected.checksum:
        * platform/chromium-mac/scrollbars/overflow-scrollbar-combinations-expected.png:
        * platform/chromium-mac/svg/text/foreignObject-text-clipping-bug-expected.checksum:
        * platform/chromium-mac/svg/text/foreignObject-text-clipping-bug-expected.png:
        * platform/chromium-mac/tables/mozilla/core/col_widths_auto_autoFix-expected.checksum:
        * platform/chromium-mac/tables/mozilla/core/col_widths_auto_autoFix-expected.png:
        * platform/chromium-mac/tables/mozilla_expected_failures/bugs/bug6933-expected.checksum:
        * platform/chromium-mac/tables/mozilla_expected_failures/bugs/bug6933-expected.png:

2011-03-30  Mihai Parparita  <mihaip@chromium.org>

        Put expected PNG for fast/multicol/max-height-columns-block.html in the
        right directory (fix after r82480).

        * platform/chromium-mac-leopard/fast/multicol/max-height-columns-block-expected.png: Renamed from LayoutTests/platform/chromium-mac-leopard/fast/max-height-columns-block-expected.png.

2011-03-30  Mihai Parparita  <mihaip@chromium.org>

        Fix more tests for Chromium Snow Leopard.

        Most are due to mismatched checksum files (like r82480), some also
        needed updated chromium-mac baselines.

        * platform/chromium-mac-leopard/css2.1/t0804-c5510-padn-00-b-ag-expected.png: Renamed from LayoutTests/platform/chromium-mac/css2.1/t0804-c5510-padn-00-b-ag-expected.png.
        * platform/chromium-mac-leopard/css2.1/t0905-c414-flt-wrap-01-d-g-expected.png: Copied from LayoutTests/platform/chromium-mac/css2.1/t0905-c414-flt-wrap-01-d-g-expected.png.
        * platform/chromium-mac-leopard/editing/inserting/4875189-2-expected.png: Renamed from LayoutTests/platform/chromium-mac/editing/inserting/4875189-2-expected.png.
        * platform/chromium-mac-leopard/editing/pasteboard/5387578-expected.png: Renamed from LayoutTests/platform/chromium-mac/editing/pasteboard/5387578-expected.png.
        * platform/chromium-mac-leopard/editing/pasteboard/paste-table-cells-expected.png: Renamed from LayoutTests/platform/chromium-mac/editing/pasteboard/paste-table-cells-expected.png.
        * platform/chromium-mac-leopard/fast/backgrounds/repeat/negative-offset-repeat-expected.png: Copied from LayoutTests/platform/chromium-mac/fast/backgrounds/repeat/negative-offset-repeat-expected.png.
        * platform/chromium-mac-leopard/fast/block/float/014-expected.png: Copied from LayoutTests/platform/chromium-mac/fast/block/float/014-expected.png.
        * platform/chromium-mac-leopard/fast/block/float/clear-element-too-wide-for-containing-block-expected.png: Renamed from LayoutTests/platform/chromium-mac/fast/block/float/clear-element-too-wide-for-containing-block-expected.png.
        * platform/chromium-mac-leopard/fast/borders/border-radius-inline-flow-expected.png: Renamed from LayoutTests/platform/chromium-mac/fast/borders/border-radius-inline-flow-expected.png.
        * platform/chromium-mac-leopard/fast/canvas/canvas-zoom-expected.png: Renamed from LayoutTests/platform/chromium-mac/fast/canvas/canvas-zoom-expected.png.
        * platform/chromium-mac-leopard/fast/canvas/image-pattern-rotate-expected.png: Copied from LayoutTests/platform/chromium-mac/fast/canvas/image-pattern-rotate-expected.png.
        * platform/chromium-mac-leopard/fast/dom/HTMLMeterElement/meter-boundary-values-expected.png: Renamed from LayoutTests/platform/chromium-mac/fast/dom/HTMLMeterElement/meter-boundary-values-expected.png.
        * platform/chromium-mac-leopard/fast/forms/textfield-focus-ring-expected.png: Renamed from LayoutTests/platform/chromium-mac/fast/forms/textfield-focus-ring-expected.png.
        * platform/chromium-mac-leopard/fast/images/pixel-crack-image-background-webkit-transform-scale-expected.png: Copied from LayoutTests/platform/chromium-mac/fast/images/pixel-crack-image-background-webkit-transform-scale-expected.png.
        * platform/chromium-mac-leopard/fast/inline-block/14498-positionForCoordinates-expected.png: Renamed from LayoutTests/platform/chromium-mac/fast/inline-block/14498-positionForCoordinates-expected.png.
        * platform/chromium-mac-leopard/fast/inline/inline-focus-ring-expected.png: Renamed from LayoutTests/platform/chromium-mac/fast/inline/inline-focus-ring-expected.png.
        * platform/chromium-mac-leopard/fast/replaced/absolute-image-sizing-expected.png: Copied from LayoutTests/platform/chromium-mac/fast/replaced/absolute-image-sizing-expected.png.
        * platform/chromium-mac-leopard/fast/replaced/image-onload-expected.png: Copied from LayoutTests/platform/chromium-mac/fast/replaced/image-onload-expected.png.
        * platform/chromium-mac-leopard/fast/replaced/image-sizing-expected.png: Copied from LayoutTests/platform/chromium-mac/fast/replaced/image-sizing-expected.png.
        * platform/chromium-mac-leopard/fast/text/basic/002-expected.png: Renamed from LayoutTests/platform/chromium-mac/fast/text/basic/002-expected.png.
        * platform/chromium-mac-leopard/fast/text/word-break-soft-hyphen-expected.png: Renamed from LayoutTests/platform/chromium-mac/fast/text/word-break-soft-hyphen-expected.png.
        * platform/chromium-mac-leopard/svg/W3C-SVG-1.1/filters-conv-01-f-expected.png: Renamed from LayoutTests/platform/chromium-mac/svg/W3C-SVG-1.1/filters-conv-01-f-expected.png.
        * platform/chromium-mac-leopard/svg/custom/focus-ring-expected.png: Copied from LayoutTests/platform/chromium-mac/svg/custom/focus-ring-expected.png.
        * platform/chromium-mac-leopard/svg/filters/filterRes-expected.png: Renamed from LayoutTests/platform/chromium-mac/svg/filters/filterRes-expected.png.
        * platform/chromium-mac/css2.1/t0804-c5510-padn-00-b-ag-expected.checksum: Removed.
        * platform/chromium-mac/css2.1/t0905-c414-flt-wrap-01-d-g-expected.checksum:
        * platform/chromium-mac/css2.1/t0905-c414-flt-wrap-01-d-g-expected.png:
        * platform/chromium-mac/editing/inserting/4875189-2-expected.checksum: Removed.
        * platform/chromium-mac/editing/pasteboard/5387578-expected.checksum: Removed.
        * platform/chromium-mac/editing/pasteboard/paste-table-cells-expected.checksum: Removed.
        * platform/chromium-mac/fast/backgrounds/repeat/negative-offset-repeat-expected.checksum:
        * platform/chromium-mac/fast/backgrounds/repeat/negative-offset-repeat-expected.png:
        * platform/chromium-mac/fast/block/float/014-expected.checksum:
        * platform/chromium-mac/fast/block/float/014-expected.png:
        * platform/chromium-mac/fast/block/float/clear-element-too-wide-for-containing-block-expected.checksum: Removed.
        * platform/chromium-mac/fast/borders/border-radius-inline-flow-expected.checksum: Removed.
        * platform/chromium-mac/fast/canvas/canvas-zoom-expected.checksum: Removed.
        * platform/chromium-mac/fast/canvas/image-pattern-rotate-expected.checksum:
        * platform/chromium-mac/fast/canvas/image-pattern-rotate-expected.png:
        * platform/chromium-mac/fast/dom/HTMLMeterElement/meter-boundary-values-expected.checksum: Removed.
        * platform/chromium-mac/fast/forms/textfield-focus-ring-expected.checksum: Removed.
        * platform/chromium-mac/fast/images/pixel-crack-image-background-webkit-transform-scale-expected.checksum:
        * platform/chromium-mac/fast/images/pixel-crack-image-background-webkit-transform-scale-expected.png:
        * platform/chromium-mac/fast/inline-block/14498-positionForCoordinates-expected.checksum: Removed.
        * platform/chromium-mac/fast/inline/inline-focus-ring-expected.checksum: Removed.
        * platform/chromium-mac/fast/replaced/absolute-image-sizing-expected.checksum:
        * platform/chromium-mac/fast/replaced/absolute-image-sizing-expected.png:
        * platform/chromium-mac/fast/replaced/image-onload-expected.checksum:
        * platform/chromium-mac/fast/replaced/image-onload-expected.png:
        * platform/chromium-mac/fast/replaced/image-sizing-expected.checksum:
        * platform/chromium-mac/fast/replaced/image-sizing-expected.png:
        * platform/chromium-mac/fast/text/basic/002-expected.checksum: Removed.
        * platform/chromium-mac/fast/text/word-break-soft-hyphen-expected.checksum: Removed.
        * platform/chromium-mac/svg/W3C-SVG-1.1/filters-conv-01-f-expected.checksum: Removed.
        * platform/chromium-mac/svg/custom/focus-ring-expected.checksum:
        * platform/chromium-mac/svg/custom/focus-ring-expected.png:
        * platform/chromium-mac/svg/filters/filterRes-expected.checksum: Removed.

2011-03-30  Robert Hogan  <robert@webkit.org>

        Reviewed by Antonio Gomes.

        [Qt] Fix LoadHTMLStringItem::invoke() after r75966

        Unskip http/tests/navigation/go-back-to-error-page.html

        https://bugs.webkit.org/show_bug.cgi?id=52614

        * platform/qt/Skipped:

2011-03-30  Mihai Parparita  <mihaip@chromium.org>

        Fix editing/deleting for Chromium Snow Leopard.

        Same mismatched checksum story as r82480.

        * platform/chromium-mac-leopard/editing/deleting/4845371-expected.png: Renamed from LayoutTests/platform/chromium-mac/editing/deleting/4845371-expected.png.
        * platform/chromium-mac-leopard/editing/deleting/5126166-expected.png: Renamed from LayoutTests/platform/chromium-mac/editing/deleting/5126166-expected.png.
        * platform/chromium-mac-leopard/editing/deleting/5483370-expected.png: Renamed from LayoutTests/platform/chromium-mac/editing/deleting/5483370-expected.png.
        * platform/chromium-mac/editing/deleting/4845371-expected.checksum: Removed.
        * platform/chromium-mac/editing/deleting/5126166-expected.checksum: Removed.
        * platform/chromium-mac/editing/deleting/5483370-expected.checksum: Removed.

2011-03-30  Mihai Parparita  <mihaip@chromium.org>

        Fix svg/dynamic-updates/SVGFEConvolveMatrixElement* for Chromium Snow Leopard.

        There were lone .checksum files in chromium-mac-leopard/ (similar to
        r82480), now they should have corresponding .pngs too.

        * platform/chromium-mac-leopard/svg/dynamic-updates/SVGFEConvolveMatrixElement-dom-bias-attr-expected.png: Copied from LayoutTests/platform/chromium-mac/svg/dynamic-updates/SVGFEConvolveMatrixElement-dom-bias-attr-expected.png.
        * platform/chromium-mac-leopard/svg/dynamic-updates/SVGFEConvolveMatrixElement-dom-divisor-attr-expected.png: Copied from LayoutTests/platform/chromium-mac/svg/dynamic-updates/SVGFEConvolveMatrixElement-dom-divisor-attr-expected.png.
        * platform/chromium-mac-leopard/svg/dynamic-updates/SVGFEConvolveMatrixElement-dom-edgeMode-attr-expected.png: Copied from LayoutTests/platform/chromium-mac/svg/dynamic-updates/SVGFEConvolveMatrixElement-dom-edgeMode-attr-expected.png.
        * platform/chromium-mac-leopard/svg/dynamic-updates/SVGFEConvolveMatrixElement-dom-in-attr-expected.png: Copied from LayoutTests/platform/chromium-mac/svg/dynamic-updates/SVGFEConvolveMatrixElement-dom-in-attr-expected.png.
        * platform/chromium-mac-leopard/svg/dynamic-updates/SVGFEConvolveMatrixElement-dom-kernelMatrix-attr-expected.png: Copied from LayoutTests/platform/chromium-mac/svg/dynamic-updates/SVGFEConvolveMatrixElement-dom-kernelMatrix-attr-expected.png.
        * platform/chromium-mac-leopard/svg/dynamic-updates/SVGFEConvolveMatrixElement-dom-kernelUnitLength-attr-expected.png: Copied from LayoutTests/platform/chromium-mac/svg/dynamic-updates/SVGFEConvolveMatrixElement-dom-kernelUnitLength-attr-expected.png.
        * platform/chromium-mac-leopard/svg/dynamic-updates/SVGFEConvolveMatrixElement-dom-order-attr-expected.png: Copied from LayoutTests/platform/chromium-mac/svg/dynamic-updates/SVGFEConvolveMatrixElement-dom-order-attr-expected.png.
        * platform/chromium-mac-leopard/svg/dynamic-updates/SVGFEConvolveMatrixElement-dom-preserveAlpha-attr-expected.png: Copied from LayoutTests/platform/chromium-mac/svg/dynamic-updates/SVGFEConvolveMatrixElement-dom-preserveAlpha-attr-expected.png.
        * platform/chromium-mac-leopard/svg/dynamic-updates/SVGFEConvolveMatrixElement-dom-targetX-attr-expected.png: Copied from LayoutTests/platform/chromium-mac/svg/dynamic-updates/SVGFEConvolveMatrixElement-dom-targetX-attr-expected.png.
        * platform/chromium-mac-leopard/svg/dynamic-updates/SVGFEConvolveMatrixElement-dom-targetY-attr-expected.png: Copied from LayoutTests/platform/chromium-mac/svg/dynamic-updates/SVGFEConvolveMatrixElement-dom-targetY-attr-expected.png.
        * platform/chromium-mac/svg/dynamic-updates/SVGFEConvolveMatrixElement-dom-bias-attr-expected.checksum:
        * platform/chromium-mac/svg/dynamic-updates/SVGFEConvolveMatrixElement-dom-bias-attr-expected.png:
        * platform/chromium-mac/svg/dynamic-updates/SVGFEConvolveMatrixElement-dom-divisor-attr-expected.checksum:
        * platform/chromium-mac/svg/dynamic-updates/SVGFEConvolveMatrixElement-dom-divisor-attr-expected.png:
        * platform/chromium-mac/svg/dynamic-updates/SVGFEConvolveMatrixElement-dom-edgeMode-attr-expected.checksum:
        * platform/chromium-mac/svg/dynamic-updates/SVGFEConvolveMatrixElement-dom-edgeMode-attr-expected.png:
        * platform/chromium-mac/svg/dynamic-updates/SVGFEConvolveMatrixElement-dom-in-attr-expected.checksum:
        * platform/chromium-mac/svg/dynamic-updates/SVGFEConvolveMatrixElement-dom-in-attr-expected.png:
        * platform/chromium-mac/svg/dynamic-updates/SVGFEConvolveMatrixElement-dom-kernelMatrix-attr-expected.checksum:
        * platform/chromium-mac/svg/dynamic-updates/SVGFEConvolveMatrixElement-dom-kernelMatrix-attr-expected.png:
        * platform/chromium-mac/svg/dynamic-updates/SVGFEConvolveMatrixElement-dom-kernelUnitLength-attr-expected.checksum:
        * platform/chromium-mac/svg/dynamic-updates/SVGFEConvolveMatrixElement-dom-kernelUnitLength-attr-expected.png:
        * platform/chromium-mac/svg/dynamic-updates/SVGFEConvolveMatrixElement-dom-order-attr-expected.checksum:
        * platform/chromium-mac/svg/dynamic-updates/SVGFEConvolveMatrixElement-dom-order-attr-expected.png:
        * platform/chromium-mac/svg/dynamic-updates/SVGFEConvolveMatrixElement-dom-preserveAlpha-attr-expected.checksum:
        * platform/chromium-mac/svg/dynamic-updates/SVGFEConvolveMatrixElement-dom-preserveAlpha-attr-expected.png:
        * platform/chromium-mac/svg/dynamic-updates/SVGFEConvolveMatrixElement-dom-targetX-attr-expected.checksum:
        * platform/chromium-mac/svg/dynamic-updates/SVGFEConvolveMatrixElement-dom-targetX-attr-expected.png:
        * platform/chromium-mac/svg/dynamic-updates/SVGFEConvolveMatrixElement-dom-targetY-attr-expected.checksum:
        * platform/chromium-mac/svg/dynamic-updates/SVGFEConvolveMatrixElement-dom-targetY-attr-expected.png:

2011-03-30  Martin Robinson  <mrobinson@igalia.com>

        Update some GTK+ results after r82411.

        * platform/gtk/svg/text/bidi-reorder-value-lists-expected.checksum:
        * platform/gtk/svg/text/bidi-reorder-value-lists-expected.png:
        * platform/gtk/svg/text/bidi-reorder-value-lists-expected.txt:
        * platform/gtk/svg/text/font-size-below-point-five-expected.txt:

2011-03-30  Sheriff Bot  <webkit.review.bot@gmail.com>

        Unreviewed, rolling out r82463.
        http://trac.webkit.org/changeset/82463
        https://bugs.webkit.org/show_bug.cgi?id=57482

        Assertion failure in Node::rendererIsEditable on multiple
        editing tests (Requested by aroben|meeting on #webkit).

        * css3/unicode-bidi-plaintext-parse-expected.txt: Removed.
        * css3/unicode-bidi-plaintext-parse.html: Removed.

2011-03-30  Mihai Parparita  <mihaip@chromium.org>

        Fix fast/multicol for Chromium Snow Leopard.

        We somehow ended up with only .checksum files in chromium-mac-leopard/
        (due to r67681 and then moved by r73376). The checksums in chromium-mac/
        were identical, so I deleted those and moved the corresponding .png
        to chromium-mac-leopard/, to live alongside its checksum.

        The mac/ baselines are correct for Snow Leopard, so we don't actually
        need any updates to get the tests to pass.

        * platform/chromium-mac-leopard/fast/max-height-columns-block-expected.png: Renamed from LayoutTests/platform/chromium-mac/fast/multicol/max-height-columns-block-expected.png.
        * platform/chromium-mac-leopard/fast/multicol/margin-collapse-expected.png: Renamed from LayoutTests/platform/chromium-mac/fast/multicol/margin-collapse-expected.png.
        * platform/chromium-mac-leopard/fast/multicol/positioned-split-expected.png: Renamed from LayoutTests/platform/chromium-mac/fast/multicol/positioned-split-expected.png.
        * platform/chromium-mac-leopard/fast/multicol/single-line-expected.png: Renamed from LayoutTests/platform/chromium-mac/fast/multicol/single-line-expected.png.
        * platform/chromium-mac-leopard/fast/multicol/table-margin-collapse-expected.png: Renamed from LayoutTests/platform/chromium-mac/fast/multicol/table-margin-collapse-expected.png.
        * platform/chromium-mac-leopard/fast/multicol/unsplittable-inline-block-expected.png: Renamed from LayoutTests/platform/chromium-mac/fast/multicol/unsplittable-inline-block-expected.png.
        * platform/chromium-mac/fast/multicol/margin-collapse-expected.checksum: Removed.
        * platform/chromium-mac/fast/multicol/max-height-columns-block-expected.checksum: Removed.
        * platform/chromium-mac/fast/multicol/positioned-split-expected.checksum: Removed.
        * platform/chromium-mac/fast/multicol/single-line-expected.checksum: Removed.
        * platform/chromium-mac/fast/multicol/table-margin-collapse-expected.checksum: Removed.
        * platform/chromium-mac/fast/multicol/unsplittable-inline-block-expected.checksum: Removed.

2011-03-30  Adam Barth  <abarth@webkit.org>

        Remove platform/chromium-mac-snowleopard
        https://bugs.webkit.org/show_bug.cgi?id=57486

        Remove empty directories.

        * platform/chromium-mac-snowleopard: Removed.

2011-03-30  Csaba Osztrogonác  <ossy@webkit.org>

        [Qt] Add 3 failing tests to the Skipped list because of different bugs.
        Additionally update Qt specific results after r82280 and unskip them.

        * platform/qt/Skipped:
         - Add css2.1/t0805-c5519-ibrdr-r-00-a.html (https://bugs.webkit.org/show_bug.cgi?id=57459)
         - Add media/video-playbackrate.html (https://bugs.webkit.org/show_bug.cgi?id=57476)
         - Add fast/events/onsearch-enter.html (https://bugs.webkit.org/show_bug.cgi?id=57472)
         - Unskip passing tests

        * platform/qt/editing/pasteboard/paste-text-011-expected.checksum: Added.
        * platform/qt/editing/pasteboard/paste-text-011-expected.png: Added.
        * platform/qt/editing/pasteboard/paste-text-011-expected.txt:
        * platform/qt/fast/css-generated-content/014-expected.checksum:
        * platform/qt/fast/css-generated-content/014-expected.png:
        * platform/qt/fast/css-generated-content/014-expected.txt:
        * platform/qt/fast/css/word-space-extra-expected.checksum:
        * platform/qt/fast/css/word-space-extra-expected.png:
        * platform/qt/fast/css/word-space-extra-expected.txt:
        * platform/qt/tables/mozilla/bugs/bug16252-expected.txt:
        * platform/qt/tables/mozilla/bugs/bug2123-expected.checksum:
        * platform/qt/tables/mozilla/bugs/bug2123-expected.png:
        * platform/qt/tables/mozilla/bugs/bug2123-expected.txt:
        * platform/qt/tables/mozilla/bugs/bug43854-1-expected.checksum:
        * platform/qt/tables/mozilla/bugs/bug43854-1-expected.png:
        * platform/qt/tables/mozilla/bugs/bug43854-1-expected.txt:
        * platform/qt/tables/mozilla/bugs/bug4523-expected.checksum:
        * platform/qt/tables/mozilla/bugs/bug4523-expected.png:
        * platform/qt/tables/mozilla/bugs/bug4523-expected.txt:
        * platform/qt/tables/mozilla/bugs/bug57828-2-expected.checksum:
        * platform/qt/tables/mozilla/bugs/bug57828-2-expected.png:
        * platform/qt/tables/mozilla/bugs/bug57828-2-expected.txt:
        * platform/qt/tables/mozilla/core/bloomberg-expected.checksum:
        * platform/qt/tables/mozilla/core/bloomberg-expected.png:
        * platform/qt/tables/mozilla/core/bloomberg-expected.txt:
        * platform/qt/tables/mozilla/marvin/backgr_index-expected.checksum:
        * platform/qt/tables/mozilla/marvin/backgr_index-expected.png:
        * platform/qt/tables/mozilla/marvin/backgr_index-expected.txt:

2011-03-30  Adam Barth  <abarth@webkit.org>

        Move results from chromium-mac-snowleopard to chromium-mac.  We
        shouldn't have any results in chromium-mac-snowleopard until we start
        worrying about Lion.

        This patch overwrites fast/transforms/shadows in chromium-mac, which
        doesn't seem to be visible to any platform, as I understand things.

        * platform/chromium-mac-snowleopard/css1/box_properties/clear-expected.checksum: Removed.
        * platform/chromium-mac-snowleopard/css1/box_properties/clear-expected.png: Removed.
        * platform/chromium-mac-snowleopard/css1/box_properties/float-expected.checksum: Removed.
        * platform/chromium-mac-snowleopard/css1/box_properties/float-expected.png: Removed.
        * platform/chromium-mac-snowleopard/css1/text_properties/vertical_align-expected.checksum: Removed.
        * platform/chromium-mac-snowleopard/css1/text_properties/vertical_align-expected.png: Removed.
        * platform/chromium-mac-snowleopard/css2.1/t0803-c5501-imrgn-t-00-b-ag-expected.checksum: Removed.
        * platform/chromium-mac-snowleopard/css2.1/t0803-c5501-imrgn-t-00-b-ag-expected.png: Removed.
        * platform/chromium-mac-snowleopard/css2.1/t0803-c5502-mrgn-r-00-c-ag-expected.checksum: Removed.
        * platform/chromium-mac-snowleopard/css2.1/t0803-c5502-mrgn-r-00-c-ag-expected.png: Removed.
        * platform/chromium-mac-snowleopard/css2.1/t0803-c5503-imrgn-b-00-b-a-expected.checksum: Removed.
        * platform/chromium-mac-snowleopard/css2.1/t0803-c5503-imrgn-b-00-b-a-expected.png: Removed.
        * platform/chromium-mac-snowleopard/css2.1/t0803-c5504-mrgn-l-00-c-ag-expected.checksum: Removed.
        * platform/chromium-mac-snowleopard/css2.1/t0803-c5504-mrgn-l-00-c-ag-expected.png: Removed.
        * platform/chromium-mac-snowleopard/css2.1/t0803-c5505-mrgn-00-b-ag-expected.checksum: Removed.
        * platform/chromium-mac-snowleopard/css2.1/t0803-c5505-mrgn-00-b-ag-expected.png: Removed.
        * platform/chromium-mac-snowleopard/css2.1/t0905-c414-flt-01-d-g-expected.checksum: Removed.
        * platform/chromium-mac-snowleopard/css2.1/t0905-c414-flt-01-d-g-expected.png: Removed.
        * platform/chromium-mac-snowleopard/css2.1/t100304-c43-rpl-bbx-00-d-g-expected.checksum: Removed.
        * platform/chromium-mac-snowleopard/css2.1/t100304-c43-rpl-bbx-00-d-g-expected.png: Removed.
        * platform/chromium-mac-snowleopard/css2.1/t1008-c44-ln-box-00-d-ag-expected.checksum: Removed.
        * platform/chromium-mac-snowleopard/css2.1/t1008-c44-ln-box-00-d-ag-expected.png: Removed.
        * platform/chromium-mac-snowleopard/css2.1/t1008-c44-ln-box-03-d-ag-expected.checksum: Removed.
        * platform/chromium-mac-snowleopard/css2.1/t1008-c44-ln-box-03-d-ag-expected.png: Removed.
        * platform/chromium-mac-snowleopard/css2.1/t100801-c544-valgn-02-d-agi-expected.checksum: Removed.
        * platform/chromium-mac-snowleopard/css2.1/t100801-c544-valgn-02-d-agi-expected.png: Removed.
        * platform/chromium-mac-snowleopard/css2.1/t100801-c544-valgn-04-d-agi-expected.checksum: Removed.
        * platform/chromium-mac-snowleopard/css2.1/t100801-c544-valgn-04-d-agi-expected.png: Removed.
        * platform/chromium-mac-snowleopard/fast/block/positioning/047-expected.checksum: Removed.
        * platform/chromium-mac-snowleopard/fast/block/positioning/047-expected.png: Removed.
        * platform/chromium-mac-snowleopard/fast/css/resize-corner-tracking-transformed-expected.checksum: Removed.
        * platform/chromium-mac-snowleopard/fast/css/resize-corner-tracking-transformed-expected.png: Removed.
        * platform/chromium-mac-snowleopard/fast/forms/searchfield-heights-expected.checksum: Removed.
        * platform/chromium-mac-snowleopard/fast/forms/searchfield-heights-expected.png: Removed.
        * platform/chromium-mac-snowleopard/fast/forms/slider-thumb-shared-style-expected.checksum: Removed.
        * platform/chromium-mac-snowleopard/fast/forms/slider-thumb-shared-style-expected.png: Removed.
        * platform/chromium-mac-snowleopard/fast/gradients/background-clipped-expected.checksum: Removed.
        * platform/chromium-mac-snowleopard/fast/gradients/background-clipped-expected.png: Removed.
        * platform/chromium-mac-snowleopard/fast/replaced/selection-rect-transform-expected.checksum: Removed.
        * platform/chromium-mac-snowleopard/fast/replaced/selection-rect-transform-expected.png: Removed.
        * platform/chromium-mac-snowleopard/fast/text/whitespace/tab-character-basics-expected.checksum: Removed.
        * platform/chromium-mac-snowleopard/fast/text/whitespace/tab-character-basics-expected.png: Removed.
        * platform/chromium-mac-snowleopard/fast/transforms/diamond-expected.checksum: Removed.
        * platform/chromium-mac-snowleopard/fast/transforms/diamond-expected.png: Removed.
        * platform/chromium-mac-snowleopard/fast/transforms/shadows-expected.checksum: Removed.
        * platform/chromium-mac-snowleopard/fast/transforms/shadows-expected.png: Removed.
        * platform/chromium-mac-snowleopard/fast/transforms/transformed-caret-expected.checksum: Removed.
        * platform/chromium-mac-snowleopard/fast/transforms/transformed-caret-expected.png: Removed.
        * platform/chromium-mac-snowleopard/svg/text/bidi-embedded-direction-expected.checksum: Removed.
        * platform/chromium-mac-snowleopard/svg/text/bidi-embedded-direction-expected.png: Removed.
        * platform/chromium-mac-snowleopard/svg/text/bidi-embedded-direction-expected.txt: Removed.
        * platform/chromium-mac/css1/box_properties/clear-expected.checksum: Copied from LayoutTests/platform/chromium-mac-snowleopard/css1/box_properties/clear-expected.checksum.
        * platform/chromium-mac/css1/box_properties/clear-expected.png: Copied from LayoutTests/platform/chromium-mac-snowleopard/css1/box_properties/clear-expected.png.
        * platform/chromium-mac/css1/box_properties/float-expected.checksum: Copied from LayoutTests/platform/chromium-mac-snowleopard/css1/box_properties/float-expected.checksum.
        * platform/chromium-mac/css1/box_properties/float-expected.png: Copied from LayoutTests/platform/chromium-mac-snowleopard/css1/box_properties/float-expected.png.
        * platform/chromium-mac/css1/text_properties/vertical_align-expected.checksum: Copied from LayoutTests/platform/chromium-mac-snowleopard/css1/text_properties/vertical_align-expected.checksum.
        * platform/chromium-mac/css1/text_properties/vertical_align-expected.png: Copied from LayoutTests/platform/chromium-mac-snowleopard/css1/text_properties/vertical_align-expected.png.
        * platform/chromium-mac/css2.1/t0803-c5501-imrgn-t-00-b-ag-expected.checksum: Copied from LayoutTests/platform/chromium-mac-snowleopard/css2.1/t0803-c5501-imrgn-t-00-b-ag-expected.checksum.
        * platform/chromium-mac/css2.1/t0803-c5501-imrgn-t-00-b-ag-expected.png: Copied from LayoutTests/platform/chromium-mac-snowleopard/css2.1/t0803-c5501-imrgn-t-00-b-ag-expected.png.
        * platform/chromium-mac/css2.1/t0803-c5502-mrgn-r-00-c-ag-expected.checksum: Copied from LayoutTests/platform/chromium-mac-snowleopard/css2.1/t0803-c5502-mrgn-r-00-c-ag-expected.checksum.
        * platform/chromium-mac/css2.1/t0803-c5502-mrgn-r-00-c-ag-expected.png: Copied from LayoutTests/platform/chromium-mac-snowleopard/css2.1/t0803-c5502-mrgn-r-00-c-ag-expected.png.
        * platform/chromium-mac/css2.1/t0803-c5503-imrgn-b-00-b-a-expected.checksum: Copied from LayoutTests/platform/chromium-mac-snowleopard/css2.1/t0803-c5503-imrgn-b-00-b-a-expected.checksum.
        * platform/chromium-mac/css2.1/t0803-c5503-imrgn-b-00-b-a-expected.png: Copied from LayoutTests/platform/chromium-mac-snowleopard/css2.1/t0803-c5503-imrgn-b-00-b-a-expected.png.
        * platform/chromium-mac/css2.1/t0803-c5504-mrgn-l-00-c-ag-expected.checksum: Copied from LayoutTests/platform/chromium-mac-snowleopard/css2.1/t0803-c5504-mrgn-l-00-c-ag-expected.checksum.
        * platform/chromium-mac/css2.1/t0803-c5504-mrgn-l-00-c-ag-expected.png: Copied from LayoutTests/platform/chromium-mac-snowleopard/css2.1/t0803-c5504-mrgn-l-00-c-ag-expected.png.
        * platform/chromium-mac/css2.1/t0803-c5505-mrgn-00-b-ag-expected.checksum: Copied from LayoutTests/platform/chromium-mac-snowleopard/css2.1/t0803-c5505-mrgn-00-b-ag-expected.checksum.
        * platform/chromium-mac/css2.1/t0803-c5505-mrgn-00-b-ag-expected.png: Copied from LayoutTests/platform/chromium-mac-snowleopard/css2.1/t0803-c5505-mrgn-00-b-ag-expected.png.
        * platform/chromium-mac/css2.1/t0905-c414-flt-01-d-g-expected.checksum: Replaced with LayoutTests/platform/chromium-mac-snowleopard/css2.1/t0905-c414-flt-01-d-g-expected.checksum.
        * platform/chromium-mac/css2.1/t0905-c414-flt-01-d-g-expected.png: Copied from LayoutTests/platform/chromium-mac-snowleopard/css2.1/t0905-c414-flt-01-d-g-expected.png.
        * platform/chromium-mac/css2.1/t100304-c43-rpl-bbx-00-d-g-expected.checksum: Copied from LayoutTests/platform/chromium-mac-snowleopard/css2.1/t100304-c43-rpl-bbx-00-d-g-expected.checksum.
        * platform/chromium-mac/css2.1/t100304-c43-rpl-bbx-00-d-g-expected.png: Copied from LayoutTests/platform/chromium-mac-snowleopard/css2.1/t100304-c43-rpl-bbx-00-d-g-expected.png.
        * platform/chromium-mac/css2.1/t1008-c44-ln-box-00-d-ag-expected.checksum: Copied from LayoutTests/platform/chromium-mac-snowleopard/css2.1/t1008-c44-ln-box-00-d-ag-expected.checksum.
        * platform/chromium-mac/css2.1/t1008-c44-ln-box-00-d-ag-expected.png: Copied from LayoutTests/platform/chromium-mac-snowleopard/css2.1/t1008-c44-ln-box-00-d-ag-expected.png.
        * platform/chromium-mac/css2.1/t1008-c44-ln-box-03-d-ag-expected.checksum: Copied from LayoutTests/platform/chromium-mac-snowleopard/css2.1/t1008-c44-ln-box-03-d-ag-expected.checksum.
        * platform/chromium-mac/css2.1/t1008-c44-ln-box-03-d-ag-expected.png: Copied from LayoutTests/platform/chromium-mac-snowleopard/css2.1/t1008-c44-ln-box-03-d-ag-expected.png.
        * platform/chromium-mac/css2.1/t100801-c544-valgn-02-d-agi-expected.checksum: Replaced with LayoutTests/platform/chromium-mac-snowleopard/css2.1/t100801-c544-valgn-02-d-agi-expected.checksum.
        * platform/chromium-mac/css2.1/t100801-c544-valgn-02-d-agi-expected.png: Copied from LayoutTests/platform/chromium-mac-snowleopard/css2.1/t100801-c544-valgn-02-d-agi-expected.png.
        * platform/chromium-mac/css2.1/t100801-c544-valgn-04-d-agi-expected.checksum: Replaced with LayoutTests/platform/chromium-mac-snowleopard/css2.1/t100801-c544-valgn-04-d-agi-expected.checksum.
        * platform/chromium-mac/css2.1/t100801-c544-valgn-04-d-agi-expected.png: Copied from LayoutTests/platform/chromium-mac-snowleopard/css2.1/t100801-c544-valgn-04-d-agi-expected.png.
        * platform/chromium-mac/fast/block/positioning/047-expected.checksum: Copied from LayoutTests/platform/chromium-mac-snowleopard/fast/block/positioning/047-expected.checksum.
        * platform/chromium-mac/fast/block/positioning/047-expected.png: Copied from LayoutTests/platform/chromium-mac-snowleopard/fast/block/positioning/047-expected.png.
        * platform/chromium-mac/fast/css/resize-corner-tracking-transformed-expected.checksum: Copied from LayoutTests/platform/chromium-mac-snowleopard/fast/css/resize-corner-tracking-transformed-expected.checksum.
        * platform/chromium-mac/fast/css/resize-corner-tracking-transformed-expected.png: Copied from LayoutTests/platform/chromium-mac-snowleopard/fast/css/resize-corner-tracking-transformed-expected.png.
        * platform/chromium-mac/fast/forms/searchfield-heights-expected.checksum: Copied from LayoutTests/platform/chromium-mac-snowleopard/fast/forms/searchfield-heights-expected.checksum.
        * platform/chromium-mac/fast/forms/searchfield-heights-expected.png: Copied from LayoutTests/platform/chromium-mac-snowleopard/fast/forms/searchfield-heights-expected.png.
        * platform/chromium-mac/fast/forms/slider-thumb-shared-style-expected.checksum: Copied from LayoutTests/platform/chromium-mac-snowleopard/fast/forms/slider-thumb-shared-style-expected.checksum.
        * platform/chromium-mac/fast/forms/slider-thumb-shared-style-expected.png: Copied from LayoutTests/platform/chromium-mac-snowleopard/fast/forms/slider-thumb-shared-style-expected.png.
        * platform/chromium-mac/fast/gradients/background-clipped-expected.checksum: Copied from LayoutTests/platform/chromium-mac-snowleopard/fast/gradients/background-clipped-expected.checksum.
        * platform/chromium-mac/fast/gradients/background-clipped-expected.png: Copied from LayoutTests/platform/chromium-mac-snowleopard/fast/gradients/background-clipped-expected.png.
        * platform/chromium-mac/fast/replaced/selection-rect-transform-expected.checksum: Copied from LayoutTests/platform/chromium-mac-snowleopard/fast/replaced/selection-rect-transform-expected.checksum.
        * platform/chromium-mac/fast/replaced/selection-rect-transform-expected.png: Copied from LayoutTests/platform/chromium-mac-snowleopard/fast/replaced/selection-rect-transform-expected.png.
        * platform/chromium-mac/fast/text/whitespace/tab-character-basics-expected.checksum: Copied from LayoutTests/platform/chromium-mac-snowleopard/fast/text/whitespace/tab-character-basics-expected.checksum.
        * platform/chromium-mac/fast/text/whitespace/tab-character-basics-expected.png: Copied from LayoutTests/platform/chromium-mac-snowleopard/fast/text/whitespace/tab-character-basics-expected.png.
        * platform/chromium-mac/fast/transforms/diamond-expected.checksum: Copied from LayoutTests/platform/chromium-mac-snowleopard/fast/transforms/diamond-expected.checksum.
        * platform/chromium-mac/fast/transforms/diamond-expected.png: Copied from LayoutTests/platform/chromium-mac-snowleopard/fast/transforms/diamond-expected.png.
        * platform/chromium-mac/fast/transforms/shadows-expected.checksum: Replaced with LayoutTests/platform/chromium-mac-snowleopard/fast/transforms/shadows-expected.checksum.
        * platform/chromium-mac/fast/transforms/shadows-expected.png: Replaced with LayoutTests/platform/chromium-mac-snowleopard/fast/transforms/shadows-expected.png.
        * platform/chromium-mac/fast/transforms/transformed-caret-expected.checksum: Copied from LayoutTests/platform/chromium-mac-snowleopard/fast/transforms/transformed-caret-expected.checksum.
        * platform/chromium-mac/fast/transforms/transformed-caret-expected.png: Copied from LayoutTests/platform/chromium-mac-snowleopard/fast/transforms/transformed-caret-expected.png.
        * platform/chromium-mac/svg/text/bidi-embedded-direction-expected.checksum: Copied from LayoutTests/platform/chromium-mac-snowleopard/svg/text/bidi-embedded-direction-expected.checksum.
        * platform/chromium-mac/svg/text/bidi-embedded-direction-expected.png: Copied from LayoutTests/platform/chromium-mac-snowleopard/svg/text/bidi-embedded-direction-expected.png.
        * platform/chromium-mac/svg/text/bidi-embedded-direction-expected.txt: Copied from LayoutTests/platform/chromium-mac-snowleopard/svg/text/bidi-embedded-direction-expected.txt.

2011-03-30  Adam Barth  <abarth@webkit.org>

        Note that this test is flaky.

        * platform/chromium/test_expectations.txt:

2011-03-30  Adam Barth  <abarth@webkit.org>

        Remove empty directories in platform/mac-snowleopard, as requested by
        Mark Rowe.

        * platform/mac-snowleopard/css2.1: Removed.
        * platform/mac-snowleopard/editing: Removed.
        * platform/mac-snowleopard/editing/deleting: Removed.
        * platform/mac-snowleopard/editing/inserting: Removed.
        * platform/mac-snowleopard/editing/pasteboard: Removed.
        * platform/mac-snowleopard/fast/backgrounds: Removed.
        * platform/mac-snowleopard/fast/backgrounds/repeat: Removed.
        * platform/mac-snowleopard/fast/block: Removed.
        * platform/mac-snowleopard/fast/block/float: Removed.
        * platform/mac-snowleopard/fast/borders: Removed.
        * platform/mac-snowleopard/fast/canvas: Removed.
        * platform/mac-snowleopard/fast/css: Removed.
        * platform/mac-snowleopard/fast/dom: Removed.
        * platform/mac-snowleopard/fast/dom/HTMLMeterElement: Removed.
        * platform/mac-snowleopard/fast/images: Removed.
        * platform/mac-snowleopard/fast/inline: Removed.
        * platform/mac-snowleopard/fast/inline-block: Removed.
        * platform/mac-snowleopard/fast/multicol: Removed.
        * platform/mac-snowleopard/fast/replaced: Removed.
        * platform/mac-snowleopard/fast/text/basic: Removed.
        * platform/mac-snowleopard/media: Removed.
        * platform/mac-snowleopard/plugins: Removed.
        * platform/mac-snowleopard/scrollbars: Removed.
        * platform/mac-snowleopard/svg/W3C-SVG-1.1: Removed.
        * platform/mac-snowleopard/svg/custom: Removed.
        * platform/mac-snowleopard/svg/dynamic-updates: Removed.
        * platform/mac-snowleopard/svg/filters: Removed.
        * platform/mac-snowleopard/svg/text: Removed.
        * platform/mac-snowleopard/tables: Removed.
        * platform/mac-snowleopard/tables/mozilla: Removed.
        * platform/mac-snowleopard/tables/mozilla/core: Removed.
        * platform/mac-snowleopard/tables/mozilla_expected_failures: Removed.
        * platform/mac-snowleopard/tables/mozilla_expected_failures/bugs: Removed.

2011-03-30  Andras Becsi  <abecsi@webkit.org>

        Reviewed by Darin Adler.

        CSS: Slow parsing of rgb() with percent values
        https://bugs.webkit.org/show_bug.cgi?id=16708

        Implement fast-path parsing for percentage color values.

        Gain ~30% speedup on  http://canvex.lazyilluminati.com/misc/3d.html

        Relanding with rounding fix after it was rolled out in r82315.

        * fast/canvas/rgba-parsing-expected.txt: Add new test cases.
        * fast/canvas/script-tests/rgba-parsing.js: Ditto.

2011-03-30  Ofri Wolfus  <ofri@dhcp-172-28-40-178.tlv.corp.google.com>

        Reviewed by Eric Seidel.

        Add support for parsing unicode-bidi: -webkit-plaintext.
        https://bugs.webkit.org/show_bug.cgi?id=57457

        * css3/unicode-bidi-plaintext-parse-expected.txt: Added.
        * css3/unicode-bidi-plaintext-parse.html: Added.

2011-03-30  Mario Sanchez Prada  <msanchez@igalia.com>

        Reviewed by Chris Fleizach.

        AX: GTK: ARIA role is not respected on <p> <label> <div> and <form>
        https://bugs.webkit.org/show_bug.cgi?id=47636

        Added new layout test to check that roles are correct in GTK.

        * platform/gtk/accessibility/aria-roles-unignored-expected.txt: Added.
        * platform/gtk/accessibility/aria-roles-unignored.html: Added.

2011-03-30  Jessie Berlin  <jberlin@apple.com>

        [Leopard Intel Release Tests] fast/text/justify-ideograph-leading-expansion.html failing
        since r82026.
        https://bugs.webkit.org/show_bug.cgi?id=57461

        The Leopard results match the other Mac results, but when it started inheriting from the
        Snow Leopard specific results it started failing.

        Copy the mac results to the mac-leopard results to get the bots green.

        * platform/mac-leopard/fast/text/justify-ideograph-leading-expansion-expected.checksum: Added.
        * platform/mac-leopard/fast/text/justify-ideograph-leading-expansion-expected.png: Added.
        * platform/mac-leopard/fast/text/justify-ideograph-leading-expansion-expected.txt: Added.

2011-03-30  Sergio Villar Senin  <svillar@igalia.com>

        Unreviewed, rebaseline GTK+ test expectations.

        * platform/gtk/css2.1/t090501-c414-flt-ln-02-d-expected.checksum:
        * platform/gtk/css2.1/t090501-c414-flt-ln-02-d-expected.png:
        * platform/gtk/css2.1/t090501-c414-flt-ln-02-d-expected.txt:

2011-03-30  Levi Weintraub  <leviw@chromium.org>

        Unreviewed.

        Adding editing/selection/click-below-rtl-text.html to mac-wk2 since it requires eventSender.

        * platform/mac-wk2/Skipped:

2011-03-30  Andrey Kosyakov  <caseq@chromium.org>

        Reviewed by Pavel Feldman.

        Web Inspector: audit run never completes, fails in DOMAgent.js
        https://bugs.webkit.org/show_bug.cgi?id=57349

        * inspector/audits/audits-panel-functional.html: do not select Elements panel before running Audits, this hides bug 57349

2011-03-30  Jessie Berlin  <jberlin@apple.com>

        [Leopard Intel Release Tests] editing/spelling/grammar.html failing since introduction in
        r82159.
        https://bugs.webkit.org/show_bug.cgi?id=57460

        Unreviewed, commit the failing expected results in order to get the bots green.

        * platform/mac-leopard/editing/spelling/grammar-expected.txt: Added.

2011-03-30  Jessie Berlin  <jberlin@apple.com>

        [Leopard Intel Release Tests] svg/text/bidi-embedded-direction.svg failing since
        introduction in r82411.
        https://bugs.webkit.org/show_bug.cgi?id=57458

        Unreviewed, add the platform-specific failing results to get the bots green.

        NOTE: The platform-specific failing pixel test results still need to be added.

        * platform/mac-leopard/svg/text/bidi-embedded-direction-expected.txt: Added.

2011-03-30  Csaba Osztrogonác  <ossy@webkit.org>

        [Qt] Update expected files.

        * platform/qt/css1/box_properties/padding_right_inline-expected.checksum: Added.
        * platform/qt/css1/box_properties/padding_right_inline-expected.png: Added.
        * platform/qt/css1/box_properties/padding_right_inline-expected.txt:
        * platform/qt/css2.1/t090501-c414-flt-ln-00-d-expected.checksum:
        * platform/qt/css2.1/t090501-c414-flt-ln-00-d-expected.png:
        * platform/qt/css2.1/t090501-c414-flt-ln-00-d-expected.txt:
        * platform/qt/css2.1/t090501-c414-flt-ln-01-d-g-expected.checksum:
        * platform/qt/css2.1/t090501-c414-flt-ln-01-d-g-expected.png:
        * platform/qt/css2.1/t090501-c414-flt-ln-01-d-g-expected.txt:
        * platform/qt/css2.1/t090501-c414-flt-ln-02-d-expected.checksum:
        * platform/qt/css2.1/t090501-c414-flt-ln-02-d-expected.png:
        * platform/qt/css2.1/t090501-c414-flt-ln-02-d-expected.txt:
        * platform/qt/css2.1/t090501-c414-flt-ln-03-d-expected.checksum:
        * platform/qt/css2.1/t090501-c414-flt-ln-03-d-expected.png:
        * platform/qt/css2.1/t090501-c414-flt-ln-03-d-expected.txt:

2011-03-30  Levi Weintraub  <leviw@chromium.org>

        Reviewed by Ryosuke Niwa.

        Clicking below last line of right-to-left editable text that puts caret in the wrong place
        https://bugs.webkit.org/show_bug.cgi?id=38087

        Doing the right thing when clicking below the last line box in RTL editable content.

        * editing/selection/click-below-rtl-text-expected.txt: Added.
        * editing/selection/click-below-rtl-text.html: Added.

2011-03-30  Yuta Kitamura  <yutak@chromium.org>

        Unreviewed, update Chromium test expectation for fast/text/emphasis-combined-text.html.

        * platform/chromium/test_expectations.txt:

2011-03-30  Adam Roben  <aroben@apple.com>

        Add a new test to the mac-wk2 Skipped file

        <http://webkit.org/b/57455> tracks the failure.

        * platform/mac-wk2/Skipped: Added fast/forms/validation-message-appearance.html.

2011-03-30  Adam Roben  <aroben@apple.com>

        Add mac-wk2 expected failure results for plugins/embed-prefers-plugins-for-images.html

        The failure is tracked by <http://webkit.org/b/57456>.

        * platform/mac-wk2/plugins/embed-prefers-plugins-for-images-expected.txt: Added.
        * platform/win-wk2/plugins/embed-prefers-plugins-for-images-expected.txt: Added. (Since
        win-wk2 falls back to mac-wk2, but the test passes on Windows, I had to copy passing results
        here to override the mac-wk2 results.)

2011-03-30  Adam Roben  <aroben@apple.com>

        Update the mac-wk2 Skipped file for recently-added tests

        See the file itself for the relevant bugs.

        * platform/mac-wk2/Skipped:

2011-03-30  Adam Roben  <aroben@apple.com>

        Fix two svg/text tests that have been failing on Windows since r82411

        Fixes <http://webkit.org/b/57448> REGRESSION (r82411): Two svg/text tests failing on Windows

        Reviewed by Eric Seidel.

        * svg/text/bidi-reorder-value-lists.svg: Pull in Mac-compatible-font-fallback.css so that
        this test will give the same results on Mac and Windows.

        * platform/win/svg/text/bidi-reorder-value-lists-expected.checksum: Removed.
        * platform/win/svg/text/bidi-reorder-value-lists-expected.png: Removed.
        * platform/win/svg/text/bidi-reorder-value-lists-expected.txt: Removed.
        We now match Mac!

        * platform/win/svg/text/font-size-below-point-five-expected.txt: Make the same change here
        that was made to the Mac results in r82411. (The remaining differences between Windows and
        Mac are just due to different rounding.)

2011-03-25  Pavel Podivilov  <podivilov@chromium.org>

        Reviewed by Pavel Feldman.

        Web Inspector: add test for bug 56747 (scripts panel is broken when frontend is reopened).
        https://bugs.webkit.org/show_bug.cgi?id=56841

        * http/tests/inspector-enabled/open-close-open-expected.txt: Removed.
        * http/tests/inspector-enabled/open-close-open.html: Removed.
        * inspector/debugger/open-close-open-expected.txt: Added.
        * inspector/debugger/open-close-open.html: Added.
        * platform/gtk/Skipped:
        * platform/mac-wk2/Skipped:
        * platform/qt/Skipped:

2011-03-30  Yuta Kitamura  <yutak@chromium.org>

        Unreviewed, add and update Chromium test results.

        * platform/chromium-linux/css2.1/t090501-c414-flt-ln-00-d-expected.checksum:
        * platform/chromium-linux/css2.1/t090501-c414-flt-ln-00-d-expected.png:
        * platform/chromium-linux/css2.1/t090501-c414-flt-ln-02-d-expected.checksum:
        * platform/chromium-linux/css2.1/t090501-c414-flt-ln-02-d-expected.png:
        * platform/chromium-linux/fast/borders/rtl-border-01-expected.checksum: Added.
        * platform/chromium-linux/fast/borders/rtl-border-01-expected.png: Added.
        * platform/chromium-linux/fast/borders/rtl-border-02-expected.checksum: Added.
        * platform/chromium-linux/fast/borders/rtl-border-02-expected.png: Added.
        * platform/chromium-linux/fast/borders/rtl-border-03-expected.checksum: Added.
        * platform/chromium-linux/fast/borders/rtl-border-03-expected.png: Added.
        * platform/chromium-linux/fast/borders/rtl-border-04-expected.checksum: Added.
        * platform/chromium-linux/fast/borders/rtl-border-04-expected.png: Added.
        * platform/chromium-linux/fast/borders/rtl-border-05-expected.checksum: Added.
        * platform/chromium-linux/fast/borders/rtl-border-05-expected.png: Added.
        * platform/chromium-mac-leopard/css2.1/t090501-c414-flt-ln-02-d-expected.checksum: Added.
        * platform/chromium-mac-leopard/css2.1/t090501-c414-flt-ln-02-d-expected.png: Added.
        * platform/chromium-mac-leopard/fast/borders/rtl-border-01-expected.checksum: Added.
        * platform/chromium-mac-leopard/fast/borders/rtl-border-01-expected.png: Added.
        * platform/chromium-mac-leopard/fast/borders/rtl-border-02-expected.checksum: Added.
        * platform/chromium-mac-leopard/fast/borders/rtl-border-02-expected.png: Added.
        * platform/chromium-mac-leopard/fast/borders/rtl-border-03-expected.checksum: Added.
        * platform/chromium-mac-leopard/fast/borders/rtl-border-03-expected.png: Added.
        * platform/chromium-mac-leopard/fast/borders/rtl-border-04-expected.checksum: Added.
        * platform/chromium-mac-leopard/fast/borders/rtl-border-04-expected.png: Added.
        * platform/chromium-mac-leopard/fast/borders/rtl-border-05-expected.checksum: Added.
        * platform/chromium-mac-leopard/fast/borders/rtl-border-05-expected.png: Added.
        * platform/chromium-win/css2.1/t090501-c414-flt-ln-00-d-expected.checksum:
        * platform/chromium-win/css2.1/t090501-c414-flt-ln-00-d-expected.png:
        * platform/chromium-win/css2.1/t090501-c414-flt-ln-00-d-expected.txt:
        * platform/chromium-win/css2.1/t090501-c414-flt-ln-02-d-expected.checksum:
        * platform/chromium-win/css2.1/t090501-c414-flt-ln-02-d-expected.png:
        * platform/chromium-win/css2.1/t090501-c414-flt-ln-02-d-expected.txt:
        * platform/chromium-win/fast/borders/rtl-border-01-expected.checksum: Added.
        * platform/chromium-win/fast/borders/rtl-border-01-expected.png: Added.
        * platform/chromium-win/fast/borders/rtl-border-01-expected.txt: Added.
        * platform/chromium-win/fast/borders/rtl-border-02-expected.checksum: Added.
        * platform/chromium-win/fast/borders/rtl-border-02-expected.png: Added.
        * platform/chromium-win/fast/borders/rtl-border-02-expected.txt: Added.
        * platform/chromium-win/fast/borders/rtl-border-03-expected.checksum: Added.
        * platform/chromium-win/fast/borders/rtl-border-03-expected.png: Added.
        * platform/chromium-win/fast/borders/rtl-border-03-expected.txt: Added.
        * platform/chromium-win/fast/borders/rtl-border-04-expected.checksum: Added.
        * platform/chromium-win/fast/borders/rtl-border-04-expected.png: Added.
        * platform/chromium-win/fast/borders/rtl-border-04-expected.txt: Added.
        * platform/chromium-win/fast/borders/rtl-border-05-expected.checksum: Added.
        * platform/chromium-win/fast/borders/rtl-border-05-expected.png: Added.
        * platform/chromium-win/fast/borders/rtl-border-05-expected.txt: Added.
        * platform/chromium/test_expectations.txt:

2011-03-30  Alexander Pavlov  <apavlov@chromium.org>

        Reviewed by Pavel Feldman.

        Web Inspector: Make the getStylesForNode result "styleAttributes" value an array rather than a map
        https://bugs.webkit.org/show_bug.cgi?id=57440

        * inspector/styles/styles-new-API.html:

2011-03-30  Adam Roben  <aroben@apple.com>

        Make font fallback on Windows in new Hebrew-containing tests added in r82419 match Mac

        Fixes <http://webkit.org/b/57445> fast/borders/rtl-border-0{4,5}.html failing on Windows
        since they were added

        Reviewed by Eric Seidel.

        * fast/borders/rtl-border-04.html:
        * fast/borders/rtl-border-05.html:
        Pull in the magic Mac-compatible-font-fallback.css file, which will cause the Hebrew text in
        these tests to be rendered using Lucida Grande on Windows, just like on Mac.

2011-03-30  Yuta Kitamura  <yutak@chromium.org>

        Unreviewed, rolling out r82396.
        http://trac.webkit.org/changeset/82396

        Revert Adam's rebaselines (part 6). They broke Chromium
        Leopard bots.

        * platform/chromium-mac-snowleopard/css2.1/t0804-c5510-padn-00-b-ag-expected.checksum: Removed.
        * platform/chromium-mac-snowleopard/css2.1/t0804-c5510-padn-00-b-ag-expected.png: Removed.
        * platform/chromium-mac-snowleopard/css2.1/t0905-c414-flt-wrap-01-d-g-expected.checksum: Removed.
        * platform/chromium-mac-snowleopard/css2.1/t0905-c414-flt-wrap-01-d-g-expected.png: Removed.
        * platform/chromium-mac-snowleopard/editing/deleting/4845371-expected.checksum: Removed.
        * platform/chromium-mac-snowleopard/editing/deleting/4845371-expected.png: Removed.
        * platform/chromium-mac-snowleopard/editing/deleting/5126166-expected.checksum: Removed.
        * platform/chromium-mac-snowleopard/editing/deleting/5126166-expected.png: Removed.
        * platform/chromium-mac-snowleopard/editing/deleting/5483370-expected.checksum: Removed.
        * platform/chromium-mac-snowleopard/editing/deleting/5483370-expected.png: Removed.
        * platform/chromium-mac-snowleopard/editing/deleting/table-cells-expected.checksum: Removed.
        * platform/chromium-mac-snowleopard/editing/deleting/table-cells-expected.png: Removed.
        * platform/chromium-mac-snowleopard/editing/inserting/4875189-2-expected.checksum: Removed.
        * platform/chromium-mac-snowleopard/editing/inserting/4875189-2-expected.png: Removed.
        * platform/chromium-mac-snowleopard/editing/pasteboard/5387578-expected.checksum: Removed.
        * platform/chromium-mac-snowleopard/editing/pasteboard/5387578-expected.png: Removed.
        * platform/chromium-mac-snowleopard/editing/pasteboard/paste-table-cells-expected.checksum: Removed.
        * platform/chromium-mac-snowleopard/editing/pasteboard/paste-table-cells-expected.png: Removed.
        * platform/chromium-mac-snowleopard/fast/backgrounds/repeat/negative-offset-repeat-expected.checksum: Removed.
        * platform/chromium-mac-snowleopard/fast/backgrounds/repeat/negative-offset-repeat-expected.png: Removed.
        * platform/chromium-mac-snowleopard/fast/block/float/014-expected.checksum: Removed.
        * platform/chromium-mac-snowleopard/fast/block/float/014-expected.png: Removed.
        * platform/chromium-mac-snowleopard/fast/block/float/clear-element-too-wide-for-containing-block-expected.checksum: Removed.
        * platform/chromium-mac-snowleopard/fast/block/float/clear-element-too-wide-for-containing-block-expected.png: Removed.
        * platform/chromium-mac-snowleopard/fast/borders/border-radius-inline-flow-expected.checksum: Removed.
        * platform/chromium-mac-snowleopard/fast/borders/border-radius-inline-flow-expected.png: Removed.
        * platform/chromium-mac-snowleopard/fast/canvas/canvas-zoom-expected.checksum: Removed.
        * platform/chromium-mac-snowleopard/fast/canvas/canvas-zoom-expected.png: Removed.
        * platform/chromium-mac-snowleopard/fast/canvas/image-pattern-rotate-expected.checksum: Removed.
        * platform/chromium-mac-snowleopard/fast/canvas/image-pattern-rotate-expected.png: Removed.
        * platform/chromium-mac-snowleopard/fast/dom/HTMLMeterElement/meter-boundary-values-expected.checksum: Removed.
        * platform/chromium-mac-snowleopard/fast/dom/HTMLMeterElement/meter-boundary-values-expected.png: Removed.
        * platform/chromium-mac-snowleopard/fast/forms/input-align-image-expected.checksum: Removed.
        * platform/chromium-mac-snowleopard/fast/forms/input-align-image-expected.png: Removed.
        * platform/chromium-mac-snowleopard/fast/forms/input-type-change-expected.checksum: Removed.
        * platform/chromium-mac-snowleopard/fast/forms/input-type-change-expected.png: Removed.
        * platform/chromium-mac-snowleopard/fast/forms/listbox-bidi-align-expected.checksum: Removed.
        * platform/chromium-mac-snowleopard/fast/forms/listbox-bidi-align-expected.png: Removed.
        * platform/chromium-mac-snowleopard/fast/forms/textfield-focus-ring-expected.checksum: Removed.
        * platform/chromium-mac-snowleopard/fast/forms/textfield-focus-ring-expected.png: Removed.
        * platform/chromium-mac-snowleopard/fast/images/pixel-crack-image-background-webkit-transform-scale-expected.checksum: Removed.
        * platform/chromium-mac-snowleopard/fast/images/pixel-crack-image-background-webkit-transform-scale-expected.png: Removed.
        * platform/chromium-mac-snowleopard/fast/inline-block/14498-positionForCoordinates-expected.checksum: Removed.
        * platform/chromium-mac-snowleopard/fast/inline-block/14498-positionForCoordinates-expected.png: Removed.
        * platform/chromium-mac-snowleopard/fast/inline/inline-focus-ring-expected.checksum: Removed.
        * platform/chromium-mac-snowleopard/fast/inline/inline-focus-ring-expected.png: Removed.
        * platform/chromium-mac-snowleopard/fast/multicol/margin-collapse-expected.checksum: Removed.
        * platform/chromium-mac-snowleopard/fast/multicol/margin-collapse-expected.png: Removed.
        * platform/chromium-mac-snowleopard/fast/multicol/max-height-columns-block-expected.checksum: Removed.
        * platform/chromium-mac-snowleopard/fast/multicol/max-height-columns-block-expected.png: Removed.
        * platform/chromium-mac-snowleopard/fast/multicol/positioned-split-expected.checksum: Removed.
        * platform/chromium-mac-snowleopard/fast/multicol/positioned-split-expected.png: Removed.
        * platform/chromium-mac-snowleopard/fast/multicol/single-line-expected.checksum: Removed.
        * platform/chromium-mac-snowleopard/fast/multicol/single-line-expected.png: Removed.
        * platform/chromium-mac-snowleopard/fast/multicol/table-margin-collapse-expected.checksum: Removed.
        * platform/chromium-mac-snowleopard/fast/multicol/table-margin-collapse-expected.png: Removed.
        * platform/chromium-mac-snowleopard/fast/multicol/unsplittable-inline-block-expected.checksum: Removed.
        * platform/chromium-mac-snowleopard/fast/multicol/unsplittable-inline-block-expected.png: Removed.
        * platform/chromium-mac-snowleopard/fast/replaced/absolute-image-sizing-expected.checksum: Removed.
        * platform/chromium-mac-snowleopard/fast/replaced/absolute-image-sizing-expected.png: Removed.
        * platform/chromium-mac-snowleopard/fast/replaced/image-onload-expected.checksum: Removed.
        * platform/chromium-mac-snowleopard/fast/replaced/image-onload-expected.png: Removed.
        * platform/chromium-mac-snowleopard/fast/replaced/image-sizing-expected.checksum: Removed.
        * platform/chromium-mac-snowleopard/fast/replaced/image-sizing-expected.png: Removed.
        * platform/chromium-mac-snowleopard/fast/text/basic/002-expected.checksum: Removed.
        * platform/chromium-mac-snowleopard/fast/text/basic/002-expected.png: Removed.
        * platform/chromium-mac-snowleopard/fast/text/drawBidiText-expected.checksum: Removed.
        * platform/chromium-mac-snowleopard/fast/text/drawBidiText-expected.png: Removed.
        * platform/chromium-mac-snowleopard/fast/text/word-break-soft-hyphen-expected.checksum: Removed.
        * platform/chromium-mac-snowleopard/fast/text/word-break-soft-hyphen-expected.png: Removed.
        * platform/chromium-mac-snowleopard/media/video-transformed-expected.checksum: Removed.
        * platform/chromium-mac-snowleopard/media/video-transformed-expected.png: Removed.
        * platform/chromium-mac-snowleopard/scrollbars/listbox-scrollbar-combinations-expected.checksum: Removed.
        * platform/chromium-mac-snowleopard/scrollbars/listbox-scrollbar-combinations-expected.png: Removed.
        * platform/chromium-mac-snowleopard/scrollbars/overflow-scrollbar-combinations-expected.checksum: Removed.
        * platform/chromium-mac-snowleopard/scrollbars/overflow-scrollbar-combinations-expected.png: Removed.
        * platform/chromium-mac-snowleopard/svg/W3C-SVG-1.1/filters-conv-01-f-expected.checksum: Removed.
        * platform/chromium-mac-snowleopard/svg/W3C-SVG-1.1/filters-conv-01-f-expected.png: Removed.
        * platform/chromium-mac-snowleopard/svg/custom/focus-ring-expected.checksum: Removed.
        * platform/chromium-mac-snowleopard/svg/custom/focus-ring-expected.png: Removed.
        * platform/chromium-mac-snowleopard/svg/dynamic-updates/SVGFEConvolveMatrixElement-dom-bias-attr-expected.checksum: Removed.
        * platform/chromium-mac-snowleopard/svg/dynamic-updates/SVGFEConvolveMatrixElement-dom-bias-attr-expected.png: Removed.
        * platform/chromium-mac-snowleopard/svg/dynamic-updates/SVGFEConvolveMatrixElement-dom-divisor-attr-expected.checksum: Removed.
        * platform/chromium-mac-snowleopard/svg/dynamic-updates/SVGFEConvolveMatrixElement-dom-divisor-attr-expected.png: Removed.
        * platform/chromium-mac-snowleopard/svg/dynamic-updates/SVGFEConvolveMatrixElement-dom-edgeMode-attr-expected.checksum: Removed.
        * platform/chromium-mac-snowleopard/svg/dynamic-updates/SVGFEConvolveMatrixElement-dom-edgeMode-attr-expected.png: Removed.
        * platform/chromium-mac-snowleopard/svg/dynamic-updates/SVGFEConvolveMatrixElement-dom-in-attr-expected.checksum: Removed.
        * platform/chromium-mac-snowleopard/svg/dynamic-updates/SVGFEConvolveMatrixElement-dom-in-attr-expected.png: Removed.
        * platform/chromium-mac-snowleopard/svg/dynamic-updates/SVGFEConvolveMatrixElement-dom-kernelMatrix-attr-expected.checksum: Removed.
        * platform/chromium-mac-snowleopard/svg/dynamic-updates/SVGFEConvolveMatrixElement-dom-kernelMatrix-attr-expected.png: Removed.
        * platform/chromium-mac-snowleopard/svg/dynamic-updates/SVGFEConvolveMatrixElement-dom-kernelUnitLength-attr-expected.checksum: Removed.
        * platform/chromium-mac-snowleopard/svg/dynamic-updates/SVGFEConvolveMatrixElement-dom-kernelUnitLength-attr-expected.png: Removed.
        * platform/chromium-mac-snowleopard/svg/dynamic-updates/SVGFEConvolveMatrixElement-dom-order-attr-expected.checksum: Removed.
        * platform/chromium-mac-snowleopard/svg/dynamic-updates/SVGFEConvolveMatrixElement-dom-order-attr-expected.png: Removed.
        * platform/chromium-mac-snowleopard/svg/dynamic-updates/SVGFEConvolveMatrixElement-dom-preserveAlpha-attr-expected.checksum: Removed.
        * platform/chromium-mac-snowleopard/svg/dynamic-updates/SVGFEConvolveMatrixElement-dom-preserveAlpha-attr-expected.png: Removed.
        * platform/chromium-mac-snowleopard/svg/dynamic-updates/SVGFEConvolveMatrixElement-dom-targetX-attr-expected.checksum: Removed.
        * platform/chromium-mac-snowleopard/svg/dynamic-updates/SVGFEConvolveMatrixElement-dom-targetX-attr-expected.png: Removed.
        * platform/chromium-mac-snowleopard/svg/dynamic-updates/SVGFEConvolveMatrixElement-dom-targetY-attr-expected.checksum: Removed.
        * platform/chromium-mac-snowleopard/svg/dynamic-updates/SVGFEConvolveMatrixElement-dom-targetY-attr-expected.png: Removed.
        * platform/chromium-mac-snowleopard/svg/filters/filterRes-expected.checksum: Removed.
        * platform/chromium-mac-snowleopard/svg/filters/filterRes-expected.png: Removed.
        * platform/chromium-mac-snowleopard/svg/text/foreignObject-text-clipping-bug-expected.checksum: Removed.
        * platform/chromium-mac-snowleopard/svg/text/foreignObject-text-clipping-bug-expected.png: Removed.
        * platform/chromium-mac-snowleopard/tables/mozilla/core/col_widths_auto_autoFix-expected.checksum: Removed.
        * platform/chromium-mac-snowleopard/tables/mozilla/core/col_widths_auto_autoFix-expected.png: Removed.
        * platform/chromium-mac-snowleopard/tables/mozilla_expected_failures/bugs/bug6933-expected.checksum: Removed.
        * platform/chromium-mac-snowleopard/tables/mozilla_expected_failures/bugs/bug6933-expected.png: Removed.

2011-03-30  Yuta Kitamura  <yutak@chromium.org>

        Unreviewed, rolling out r82397.
        http://trac.webkit.org/changeset/82397

        Revert Adam's rebaselines (part 5). They broke Chromium
        Leopard bots.

        * platform/chromium/test_expectations.txt:

2011-03-30  Yuta Kitamura  <yutak@chromium.org>

        Unreviewed, rolling out r82404.
        http://trac.webkit.org/changeset/82404

        Revert Adam's rebaselines (part 4). They broke Chromium
        Leopard bots.

        * platform/chromium-mac-snowleopard/animations/3d/matrix-transform-type-animation-expected.checksum: Removed.
        * platform/chromium-mac-snowleopard/animations/3d/matrix-transform-type-animation-expected.png: Removed.
        * platform/chromium-mac-snowleopard/animations/3d/state-at-end-event-transform-expected.checksum: Removed.
        * platform/chromium-mac-snowleopard/animations/3d/state-at-end-event-transform-expected.png: Removed.
        * platform/chromium-mac-snowleopard/fast/backgrounds/svg-as-background-6-expected.checksum: Removed.
        * platform/chromium-mac-snowleopard/fast/backgrounds/svg-as-background-6-expected.png: Removed.
        * platform/chromium-mac-snowleopard/fast/canvas/arc360-expected.checksum: Removed.
        * platform/chromium-mac-snowleopard/fast/canvas/arc360-expected.png: Removed.
        * platform/chromium-mac-snowleopard/fast/canvas/canvasDrawingIntoSelf-expected.checksum: Removed.
        * platform/chromium-mac-snowleopard/fast/canvas/canvasDrawingIntoSelf-expected.png: Removed.
        * platform/chromium-mac-snowleopard/fast/canvas/drawImage-expected.checksum: Removed.
        * platform/chromium-mac-snowleopard/fast/canvas/drawImage-expected.png: Removed.
        * platform/chromium-mac-snowleopard/fast/canvas/image-object-in-canvas-expected.checksum: Removed.
        * platform/chromium-mac-snowleopard/fast/canvas/image-object-in-canvas-expected.png: Removed.
        * platform/chromium-mac-snowleopard/fast/css/transform-default-parameter-expected.checksum: Removed.
        * platform/chromium-mac-snowleopard/fast/css/transform-default-parameter-expected.png: Removed.
        * platform/chromium-mac-snowleopard/fast/dom/HTMLInputElement/input-slider-update-expected.checksum: Removed.
        * platform/chromium-mac-snowleopard/fast/dom/HTMLInputElement/input-slider-update-expected.png: Removed.
        * platform/chromium-mac-snowleopard/fast/dom/blur-contenteditable-expected.checksum: Removed.
        * platform/chromium-mac-snowleopard/fast/dom/blur-contenteditable-expected.png: Removed.
        * platform/chromium-mac-snowleopard/fast/dom/scroll-reveal-left-overflow-expected.checksum: Removed.
        * platform/chromium-mac-snowleopard/fast/dom/scroll-reveal-left-overflow-expected.png: Removed.
        * platform/chromium-mac-snowleopard/fast/forms/basic-buttons-expected.checksum: Removed.
        * platform/chromium-mac-snowleopard/fast/forms/basic-buttons-expected.png: Removed.
        * platform/chromium-mac-snowleopard/fast/forms/button-sizes-expected.checksum: Removed.
        * platform/chromium-mac-snowleopard/fast/forms/button-sizes-expected.png: Removed.
        * platform/chromium-mac-snowleopard/fast/forms/input-appearance-bkcolor-expected.checksum: Removed.
        * platform/chromium-mac-snowleopard/fast/forms/input-appearance-bkcolor-expected.png: Removed.
        * platform/chromium-mac-snowleopard/fast/forms/input-file-re-render-expected.checksum: Removed.
        * platform/chromium-mac-snowleopard/fast/forms/input-file-re-render-expected.png: Removed.
        * platform/chromium-mac-snowleopard/fast/forms/preserveFormDuringResidualStyle-expected.checksum: Removed.
        * platform/chromium-mac-snowleopard/fast/forms/preserveFormDuringResidualStyle-expected.png: Removed.
        * platform/chromium-mac-snowleopard/fast/forms/search-transformed-expected.checksum: Removed.
        * platform/chromium-mac-snowleopard/fast/forms/search-transformed-expected.png: Removed.
        * platform/chromium-mac-snowleopard/fast/forms/slider-padding-expected.checksum: Removed.
        * platform/chromium-mac-snowleopard/fast/forms/slider-padding-expected.png: Removed.
        * platform/chromium-mac-snowleopard/fast/inline/inline-box-background-long-image-expected.checksum: Removed.
        * platform/chromium-mac-snowleopard/fast/inline/inline-box-background-long-image-expected.png: Removed.
        * platform/chromium-mac-snowleopard/fast/replaced/width100percent-textarea-expected.checksum: Removed.
        * platform/chromium-mac-snowleopard/fast/replaced/width100percent-textarea-expected.png: Removed.
        * platform/chromium-mac-snowleopard/fast/speech/input-appearance-numberandspeech-expected.checksum: Removed.
        * platform/chromium-mac-snowleopard/fast/speech/input-appearance-numberandspeech-expected.png: Removed.
        * platform/chromium-mac-snowleopard/fast/speech/input-appearance-searchandspeech-expected.checksum: Removed.
        * platform/chromium-mac-snowleopard/fast/speech/input-appearance-searchandspeech-expected.png: Removed.
        * platform/chromium-mac-snowleopard/fast/text/international/pop-up-button-text-alignment-and-direction-expected.checksum: Removed.
        * platform/chromium-mac-snowleopard/fast/text/international/pop-up-button-text-alignment-and-direction-expected.png: Removed.
        * platform/chromium-mac-snowleopard/fast/text/international/text-combine-image-test-expected.checksum: Removed.
        * platform/chromium-mac-snowleopard/fast/text/international/text-combine-image-test-expected.png: Removed.
        * platform/chromium-mac-snowleopard/fast/text/justify-nbsp-expected.checksum: Removed.
        * platform/chromium-mac-snowleopard/fast/text/justify-nbsp-expected.png: Removed.
        * platform/chromium-mac-snowleopard/fonts/monospace-expected.checksum: Removed.
        * platform/chromium-mac-snowleopard/fonts/monospace-expected.png: Removed.
        * platform/chromium-mac-snowleopard/http/tests/misc/acid3-expected.checksum: Removed.
        * platform/chromium-mac-snowleopard/http/tests/misc/acid3-expected.png: Removed.
        * platform/chromium-mac-snowleopard/tables/mozilla/core/bloomberg-expected.checksum: Removed.
        * platform/chromium-mac-snowleopard/tables/mozilla/core/bloomberg-expected.png: Removed.
        * platform/chromium-mac-snowleopard/tables/mozilla/core/misc-expected.checksum: Removed.
        * platform/chromium-mac-snowleopard/tables/mozilla/core/misc-expected.png: Removed.
        * platform/chromium-mac-snowleopard/tables/mozilla/core/row_span-expected.checksum: Removed.
        * platform/chromium-mac-snowleopard/tables/mozilla/core/row_span-expected.png: Removed.
        * platform/chromium-mac-snowleopard/tables/mozilla/other/cell_widths-expected.checksum: Removed.
        * platform/chromium-mac-snowleopard/tables/mozilla/other/cell_widths-expected.png: Removed.
        * platform/chromium-mac-snowleopard/tables/mozilla_expected_failures/bugs/bug85016-expected.checksum: Removed.
        * platform/chromium-mac-snowleopard/tables/mozilla_expected_failures/bugs/bug85016-expected.png: Removed.
        * platform/chromium-mac-snowleopard/tables/mozilla_expected_failures/other/test4-expected.checksum: Removed.
        * platform/chromium-mac-snowleopard/tables/mozilla_expected_failures/other/test4-expected.png: Removed.
        * platform/chromium-mac-snowleopard/transforms/no_transform_hit_testing-expected.checksum: Removed.
        * platform/chromium-mac-snowleopard/transforms/no_transform_hit_testing-expected.png: Removed.
        * platform/chromium-mac-snowleopard/transforms/svg-vs-css-expected.checksum: Removed.
        * platform/chromium-mac-snowleopard/transforms/svg-vs-css-expected.png: Removed.
        * platform/chromium-mac-snowleopard/transitions/move-after-transition-expected.checksum: Removed.
        * platform/chromium-mac-snowleopard/transitions/move-after-transition-expected.png: Removed.

2011-03-30  Yuta Kitamura  <yutak@chromium.org>

        Unreviewed, rolling out r82405.
        http://trac.webkit.org/changeset/82405

        Revert Adam's rebaselines (part 3). They broke Chromium
        Leopard bots.

        * platform/chromium/test_expectations.txt:

2011-03-30  Yuta Kitamura  <yutak@chromium.org>

        Unreviewed, rolling out r82413.
        http://trac.webkit.org/changeset/82413

        Revert Adam's rebaselines (part 2). They broke Chromium
        Leopard bots.

        * platform/chromium-mac-snowleopard/fast/backgrounds/svg-as-background-5-expected.checksum: Removed.
        * platform/chromium-mac-snowleopard/fast/backgrounds/svg-as-background-5-expected.png: Removed.
        * platform/chromium-mac-snowleopard/svg/W3C-SVG-1.1/animate-elem-36-t-expected.checksum: Removed.
        * platform/chromium-mac-snowleopard/svg/W3C-SVG-1.1/animate-elem-36-t-expected.png: Removed.
        * platform/chromium-mac-snowleopard/svg/custom/animate-path-discrete-expected.checksum: Removed.
        * platform/chromium-mac-snowleopard/svg/custom/animate-path-discrete-expected.png: Removed.
        * platform/chromium-mac-snowleopard/svg/custom/dynamic-svg-document-creation-expected.checksum: Removed.
        * platform/chromium-mac-snowleopard/svg/custom/dynamic-svg-document-creation-expected.png: Removed.
        * platform/chromium-mac-snowleopard/svg/custom/feComponentTransfer-Discrete-expected.checksum: Removed.
        * platform/chromium-mac-snowleopard/svg/custom/feComponentTransfer-Discrete-expected.png: Removed.
        * platform/chromium-mac-snowleopard/svg/custom/feComponentTransfer-Gamma-expected.checksum: Removed.
        * platform/chromium-mac-snowleopard/svg/custom/feComponentTransfer-Gamma-expected.png: Removed.
        * platform/chromium-mac-snowleopard/svg/custom/feComponentTransfer-Linear-expected.checksum: Removed.
        * platform/chromium-mac-snowleopard/svg/custom/feComponentTransfer-Linear-expected.png: Removed.
        * platform/chromium-mac-snowleopard/svg/custom/feComponentTransfer-Table-expected.checksum: Removed.
        * platform/chromium-mac-snowleopard/svg/custom/feComponentTransfer-Table-expected.png: Removed.
        * platform/chromium-mac-snowleopard/svg/custom/foreign-object-skew-expected.checksum: Removed.
        * platform/chromium-mac-snowleopard/svg/custom/foreign-object-skew-expected.png: Removed.
        * platform/chromium-mac-snowleopard/svg/custom/glyph-transformation-with-hkern-expected.checksum: Removed.
        * platform/chromium-mac-snowleopard/svg/custom/glyph-transformation-with-hkern-expected.png: Removed.
        * platform/chromium-mac-snowleopard/svg/custom/gradient-rotated-bbox-expected.checksum: Removed.
        * platform/chromium-mac-snowleopard/svg/custom/gradient-rotated-bbox-expected.png: Removed.
        * platform/chromium-mac-snowleopard/svg/custom/grayscale-gradient-mask-expected.checksum: Removed.
        * platform/chromium-mac-snowleopard/svg/custom/grayscale-gradient-mask-expected.png: Removed.
        * platform/chromium-mac-snowleopard/svg/custom/inline-svg-in-xhtml-expected.checksum: Removed.
        * platform/chromium-mac-snowleopard/svg/custom/inline-svg-in-xhtml-expected.png: Removed.
        * platform/chromium-mac-snowleopard/svg/custom/js-late-gradient-and-object-creation-expected.checksum: Removed.
        * platform/chromium-mac-snowleopard/svg/custom/js-late-gradient-and-object-creation-expected.png: Removed.
        * platform/chromium-mac-snowleopard/svg/custom/js-late-gradient-creation-expected.checksum: Removed.
        * platform/chromium-mac-snowleopard/svg/custom/js-late-gradient-creation-expected.png: Removed.
        * platform/chromium-mac-snowleopard/svg/custom/js-late-pattern-and-object-creation-expected.checksum: Removed.
        * platform/chromium-mac-snowleopard/svg/custom/js-late-pattern-and-object-creation-expected.png: Removed.
        * platform/chromium-mac-snowleopard/svg/custom/js-late-pattern-creation-expected.checksum: Removed.
        * platform/chromium-mac-snowleopard/svg/custom/js-late-pattern-creation-expected.png: Removed.
        * platform/chromium-mac-snowleopard/svg/custom/non-scaling-stroke-expected.checksum: Removed.
        * platform/chromium-mac-snowleopard/svg/custom/non-scaling-stroke-expected.png: Removed.
        * platform/chromium-mac-snowleopard/svg/custom/pattern-skew-transformed-expected.checksum: Removed.
        * platform/chromium-mac-snowleopard/svg/custom/pattern-skew-transformed-expected.png: Removed.
        * platform/chromium-mac-snowleopard/svg/custom/pattern-with-transformation-expected.checksum: Removed.
        * platform/chromium-mac-snowleopard/svg/custom/pattern-with-transformation-expected.png: Removed.
        * platform/chromium-mac-snowleopard/svg/custom/preserve-aspect-ratio-syntax-expected.checksum: Removed.
        * platform/chromium-mac-snowleopard/svg/custom/preserve-aspect-ratio-syntax-expected.png: Removed.
        * platform/chromium-mac-snowleopard/svg/custom/radial-gradient-with-outstanding-focalPoint-expected.checksum: Removed.
        * platform/chromium-mac-snowleopard/svg/custom/radial-gradient-with-outstanding-focalPoint-expected.png: Removed.
        * platform/chromium-mac-snowleopard/svg/custom/resource-invalidate-on-target-update-expected.checksum: Removed.
        * platform/chromium-mac-snowleopard/svg/custom/resource-invalidate-on-target-update-expected.png: Removed.
        * platform/chromium-mac-snowleopard/svg/custom/scrolling-embedded-svg-file-image-repaint-problem-expected.checksum: Removed.
        * platform/chromium-mac-snowleopard/svg/custom/scrolling-embedded-svg-file-image-repaint-problem-expected.png: Removed.
        * platform/chromium-mac-snowleopard/svg/custom/shapes-supporting-markers-expected.checksum: Removed.
        * platform/chromium-mac-snowleopard/svg/custom/shapes-supporting-markers-expected.png: Removed.
        * platform/chromium-mac-snowleopard/svg/custom/svg-curve-with-relative-cordinates-expected.checksum: Removed.
        * platform/chromium-mac-snowleopard/svg/custom/svg-curve-with-relative-cordinates-expected.png: Removed.
        * platform/chromium-mac-snowleopard/svg/custom/svg-fonts-in-html-expected.checksum: Removed.
        * platform/chromium-mac-snowleopard/svg/custom/svg-fonts-in-html-expected.png: Removed.
        * platform/chromium-mac-snowleopard/svg/custom/svg-fonts-with-no-element-reference-expected.checksum: Removed.
        * platform/chromium-mac-snowleopard/svg/custom/svg-fonts-with-no-element-reference-expected.png: Removed.
        * platform/chromium-mac-snowleopard/svg/custom/text-rotated-gradient-expected.checksum: Removed.
        * platform/chromium-mac-snowleopard/svg/custom/text-rotated-gradient-expected.png: Removed.
        * platform/chromium-mac-snowleopard/svg/custom/use-detach-expected.checksum: Removed.
        * platform/chromium-mac-snowleopard/svg/custom/use-detach-expected.png: Removed.
        * platform/chromium-mac-snowleopard/svg/custom/use-on-clip-path-with-transformation-expected.checksum: Removed.
        * platform/chromium-mac-snowleopard/svg/custom/use-on-clip-path-with-transformation-expected.png: Removed.
        * platform/chromium-mac-snowleopard/svg/custom/viewbox-syntax-expected.checksum: Removed.
        * platform/chromium-mac-snowleopard/svg/custom/viewbox-syntax-expected.png: Removed.
        * platform/chromium-mac-snowleopard/svg/dynamic-updates/SVGFEBlendElement-dom-in-attr-expected.checksum: Removed.
        * platform/chromium-mac-snowleopard/svg/dynamic-updates/SVGFEBlendElement-dom-in-attr-expected.png: Removed.
        * platform/chromium-mac-snowleopard/svg/dynamic-updates/SVGFEBlendElement-dom-in2-attr-expected.checksum: Removed.
        * platform/chromium-mac-snowleopard/svg/dynamic-updates/SVGFEBlendElement-dom-in2-attr-expected.png: Removed.
        * platform/chromium-mac-snowleopard/svg/dynamic-updates/SVGFEBlendElement-dom-mode-attr-expected.checksum: Removed.
        * platform/chromium-mac-snowleopard/svg/dynamic-updates/SVGFEBlendElement-dom-mode-attr-expected.png: Removed.
        * platform/chromium-mac-snowleopard/svg/dynamic-updates/SVGFEBlendElement-svgdom-in-prop-expected.checksum: Removed.
        * platform/chromium-mac-snowleopard/svg/dynamic-updates/SVGFEBlendElement-svgdom-in-prop-expected.png: Removed.
        * platform/chromium-mac-snowleopard/svg/dynamic-updates/SVGFEBlendElement-svgdom-in2-prop-expected.checksum: Removed.
        * platform/chromium-mac-snowleopard/svg/dynamic-updates/SVGFEBlendElement-svgdom-in2-prop-expected.png: Removed.
        * platform/chromium-mac-snowleopard/svg/dynamic-updates/SVGFEBlendElement-svgdom-mode-prop-expected.checksum: Removed.
        * platform/chromium-mac-snowleopard/svg/dynamic-updates/SVGFEBlendElement-svgdom-mode-prop-expected.png: Removed.
        * platform/chromium-mac-snowleopard/svg/hixie/mixed/003-expected.checksum: Removed.
        * platform/chromium-mac-snowleopard/svg/hixie/mixed/003-expected.png: Removed.
        * platform/chromium-mac-snowleopard/svg/hixie/mixed/006-expected.checksum: Removed.
        * platform/chromium-mac-snowleopard/svg/hixie/mixed/006-expected.png: Removed.
        * platform/chromium-mac-snowleopard/svg/hixie/mixed/008-expected.checksum: Removed.
        * platform/chromium-mac-snowleopard/svg/hixie/mixed/008-expected.png: Removed.
        * platform/chromium-mac-snowleopard/svg/hixie/mixed/011-expected.checksum: Removed.
        * platform/chromium-mac-snowleopard/svg/hixie/mixed/011-expected.png: Removed.
        * platform/chromium-mac-snowleopard/svg/text/text-intro-05-t-expected.checksum: Removed.
        * platform/chromium-mac-snowleopard/svg/text/text-intro-05-t-expected.png: Removed.
        * platform/chromium-mac-snowleopard/svg/zoom/page/zoom-foreignObject-expected.checksum: Removed.
        * platform/chromium-mac-snowleopard/svg/zoom/page/zoom-foreignObject-expected.png: Removed.
        * platform/chromium-mac-snowleopard/svg/zoom/page/zoom-mask-with-percentages-expected.checksum: Removed.
        * platform/chromium-mac-snowleopard/svg/zoom/page/zoom-mask-with-percentages-expected.png: Removed.

2011-03-30  Yuta Kitamura  <yutak@chromium.org>

        Unreviewed, rolling out r82414.
        http://trac.webkit.org/changeset/82414

        Revert Adam's rebaselines (part 1). They broke Chromium
        Leopard bots.

        * platform/chromium/test_expectations.txt:

2011-03-29  Levi Weintraub  <leviw@chromium.org>

        Reviewed by Eric Seidel.

        RTL:  Directionality always reset on hard line break
        https://bugs.webkit.org/show_bug.cgi?id=23124

        Testing that hard line breaks are being treated as paragraph separators but only
        clearing directional state from Unicode control characters, not DOM nodes.
        Also adding expected pixel results for bidi-override-in-anonymous-block as we're
        passing more of the test with this patch.

        * fast/text/international/bidi-br-as-paragraph-separator.html: Added.
        * platform/mac/fast/css/bidi-override-in-anonymous-block-expected.checksum: Added.
        * platform/mac/fast/css/bidi-override-in-anonymous-block-expected.png: Added.
        * platform/mac/fast/text/international/bidi-br-as-paragraph-separator-expected.checksum: Added.
        * platform/mac/fast/text/international/bidi-br-as-paragraph-separator-expected.png: Added.
        * platform/mac/fast/text/international/bidi-br-as-paragraph-separator-expected.txt: Added.

2011-03-30  Levi Weintraub  <leviw@chromium.org>

        Reviewed by Ryosuke Niwa.

        BreakBlockQuoteCommand assumes all li tags have list item renderers
        https://bugs.webkit.org/show_bug.cgi?id=57253

        Checking that the renderers of li nodes are actually RenderListItems
        before treating them as such.

        * editing/execCommand/crash-breaking-blockquote-with-list.html: Added.
        * editing/execCommand/crash-breaking-blockquote-with-list-expected.txt: Added.

2011-03-30  Yael Aharon  <yael.aharon@nokia.com>

        Reviewed by Eric Seidel.

        Left/Right borders/padding/margins are not always added correctly when rendering multiline inline boxes with bidi elements
        https://bugs.webkit.org/show_bug.cgi?id=9272

        * fast/borders/rtl-border-01.html: Added.
        * fast/borders/rtl-border-02.html: Added.
        * fast/borders/rtl-border-03.html: Added.
        * fast/borders/rtl-border-04.html: Added.
        * fast/borders/rtl-border-05.html: Added.
        * platform/mac/css2.1/t090501-c414-flt-ln-02-d-expected.checksum:
        * platform/mac/css2.1/t090501-c414-flt-ln-02-d-expected.png:
        * platform/mac/css2.1/t090501-c414-flt-ln-02-d-expected.txt:
        * platform/mac/fast/borders/rtl-border-01-expected.checksum: Added.
        * platform/mac/fast/borders/rtl-border-01-expected.png: Added.
        * platform/mac/fast/borders/rtl-border-01-expected.txt: Added.
        * platform/mac/fast/borders/rtl-border-02-expected.checksum: Added.
        * platform/mac/fast/borders/rtl-border-02-expected.png: Added.
        * platform/mac/fast/borders/rtl-border-02-expected.txt: Added.
        * platform/mac/fast/borders/rtl-border-03-expected.checksum: Added.
        * platform/mac/fast/borders/rtl-border-03-expected.png: Added.
        * platform/mac/fast/borders/rtl-border-03-expected.txt: Added.
        * platform/mac/fast/borders/rtl-border-04-expected.checksum: Added.
        * platform/mac/fast/borders/rtl-border-04-expected.png: Added.
        * platform/mac/fast/borders/rtl-border-04-expected.txt: Added.
        * platform/mac/fast/borders/rtl-border-05-expected.checksum: Added.
        * platform/mac/fast/borders/rtl-border-05-expected.png: Added.
        * platform/mac/fast/borders/rtl-border-05-expected.txt: Added.

2011-03-30  Yuta Kitamura  <yutak@chromium.org>

        Unreviewed, add/update new Chromium test results.

        * platform/chromium-linux/svg/text/bidi-embedded-direction-expected.checksum: Added.
        * platform/chromium-linux/svg/text/bidi-embedded-direction-expected.png: Added.
        * platform/chromium-linux/svg/text/bidi-reorder-value-lists-expected.checksum:
        * platform/chromium-linux/svg/text/bidi-reorder-value-lists-expected.png:
        * platform/chromium-mac-leopard/svg/text/bidi-embedded-direction-expected.checksum: Added.
        * platform/chromium-mac-leopard/svg/text/bidi-embedded-direction-expected.png: Added.
        * platform/chromium-mac-leopard/svg/text/bidi-embedded-direction-expected.txt: Added.
        * platform/chromium-mac-snowleopard/svg/text/bidi-embedded-direction-expected.checksum: Added.
        * platform/chromium-mac-snowleopard/svg/text/bidi-embedded-direction-expected.png: Added.
        * platform/chromium-mac-snowleopard/svg/text/bidi-embedded-direction-expected.txt: Added.
        * platform/chromium-win/svg/text/bidi-embedded-direction-expected.checksum: Added.
        * platform/chromium-win/svg/text/bidi-embedded-direction-expected.png: Added.
        * platform/chromium-win/svg/text/bidi-embedded-direction-expected.txt: Added.
        * platform/chromium-win/svg/text/bidi-reorder-value-lists-expected.checksum:
        * platform/chromium-win/svg/text/bidi-reorder-value-lists-expected.png:
        * platform/chromium-win/svg/text/bidi-reorder-value-lists-expected.txt:
        * platform/chromium-win/svg/text/font-size-below-point-five-expected.txt:
        * platform/chromium/test_expectations.txt:

2011-03-30  Yuta Kitamura  <yutak@chromium.org>

        Unreviewed, update Chromium test expectations.

        * platform/chromium/test_expectations.txt:

2011-03-30  Yuta Kitamura  <yutak@chromium.org>

        Reviewed by Kent Tamura.

        [Chromium] DumpRenderTree: Implement LayoutTestController::setPluginsEnabled
        https://bugs.webkit.org/show_bug.cgi?id=57430

        * platform/chromium/test_expectations.txt: Revert the expectation changes caused by r82399.

2011-03-30  Adam Barth  <abarth@webkit.org>

        Add failing Snow Leopard test back to the list of failing tests.

        * platform/chromium/test_expectations.txt:

2011-03-30  Adam Barth  <abarth@webkit.org>

        Moar Chromium Snow Leopard baselines!

        * platform/chromium-mac-snowleopard/fast/backgrounds/svg-as-background-5-expected.checksum: Added.
        * platform/chromium-mac-snowleopard/fast/backgrounds/svg-as-background-5-expected.png: Added.
        * platform/chromium-mac-snowleopard/svg/W3C-SVG-1.1/animate-elem-36-t-expected.checksum: Added.
        * platform/chromium-mac-snowleopard/svg/W3C-SVG-1.1/animate-elem-36-t-expected.png: Added.
        * platform/chromium-mac-snowleopard/svg/custom/animate-path-discrete-expected.checksum: Added.
        * platform/chromium-mac-snowleopard/svg/custom/animate-path-discrete-expected.png: Added.
        * platform/chromium-mac-snowleopard/svg/custom/dynamic-svg-document-creation-expected.checksum: Added.
        * platform/chromium-mac-snowleopard/svg/custom/dynamic-svg-document-creation-expected.png: Added.
        * platform/chromium-mac-snowleopard/svg/custom/feComponentTransfer-Discrete-expected.checksum: Added.
        * platform/chromium-mac-snowleopard/svg/custom/feComponentTransfer-Discrete-expected.png: Added.
        * platform/chromium-mac-snowleopard/svg/custom/feComponentTransfer-Gamma-expected.checksum: Added.
        * platform/chromium-mac-snowleopard/svg/custom/feComponentTransfer-Gamma-expected.png: Added.
        * platform/chromium-mac-snowleopard/svg/custom/feComponentTransfer-Linear-expected.checksum: Added.
        * platform/chromium-mac-snowleopard/svg/custom/feComponentTransfer-Linear-expected.png: Added.
        * platform/chromium-mac-snowleopard/svg/custom/feComponentTransfer-Table-expected.checksum: Added.
        * platform/chromium-mac-snowleopard/svg/custom/feComponentTransfer-Table-expected.png: Added.
        * platform/chromium-mac-snowleopard/svg/custom/foreign-object-skew-expected.checksum: Added.
        * platform/chromium-mac-snowleopard/svg/custom/foreign-object-skew-expected.png: Added.
        * platform/chromium-mac-snowleopard/svg/custom/glyph-transformation-with-hkern-expected.checksum: Added.
        * platform/chromium-mac-snowleopard/svg/custom/glyph-transformation-with-hkern-expected.png: Added.
        * platform/chromium-mac-snowleopard/svg/custom/gradient-rotated-bbox-expected.checksum: Added.
        * platform/chromium-mac-snowleopard/svg/custom/gradient-rotated-bbox-expected.png: Added.
        * platform/chromium-mac-snowleopard/svg/custom/grayscale-gradient-mask-expected.checksum: Added.
        * platform/chromium-mac-snowleopard/svg/custom/grayscale-gradient-mask-expected.png: Added.
        * platform/chromium-mac-snowleopard/svg/custom/inline-svg-in-xhtml-expected.checksum: Added.
        * platform/chromium-mac-snowleopard/svg/custom/inline-svg-in-xhtml-expected.png: Added.
        * platform/chromium-mac-snowleopard/svg/custom/js-late-gradient-and-object-creation-expected.checksum: Added.
        * platform/chromium-mac-snowleopard/svg/custom/js-late-gradient-and-object-creation-expected.png: Added.
        * platform/chromium-mac-snowleopard/svg/custom/js-late-gradient-creation-expected.checksum: Added.
        * platform/chromium-mac-snowleopard/svg/custom/js-late-gradient-creation-expected.png: Added.
        * platform/chromium-mac-snowleopard/svg/custom/js-late-pattern-and-object-creation-expected.checksum: Added.
        * platform/chromium-mac-snowleopard/svg/custom/js-late-pattern-and-object-creation-expected.png: Added.
        * platform/chromium-mac-snowleopard/svg/custom/js-late-pattern-creation-expected.checksum: Added.
        * platform/chromium-mac-snowleopard/svg/custom/js-late-pattern-creation-expected.png: Added.
        * platform/chromium-mac-snowleopard/svg/custom/non-scaling-stroke-expected.checksum: Added.
        * platform/chromium-mac-snowleopard/svg/custom/non-scaling-stroke-expected.png: Added.
        * platform/chromium-mac-snowleopard/svg/custom/pattern-skew-transformed-expected.checksum: Added.
        * platform/chromium-mac-snowleopard/svg/custom/pattern-skew-transformed-expected.png: Added.
        * platform/chromium-mac-snowleopard/svg/custom/pattern-with-transformation-expected.checksum: Added.
        * platform/chromium-mac-snowleopard/svg/custom/pattern-with-transformation-expected.png: Added.
        * platform/chromium-mac-snowleopard/svg/custom/preserve-aspect-ratio-syntax-expected.checksum: Added.
        * platform/chromium-mac-snowleopard/svg/custom/preserve-aspect-ratio-syntax-expected.png: Added.
        * platform/chromium-mac-snowleopard/svg/custom/radial-gradient-with-outstanding-focalPoint-expected.checksum: Added.
        * platform/chromium-mac-snowleopard/svg/custom/radial-gradient-with-outstanding-focalPoint-expected.png: Added.
        * platform/chromium-mac-snowleopard/svg/custom/resource-invalidate-on-target-update-expected.checksum: Added.
        * platform/chromium-mac-snowleopard/svg/custom/resource-invalidate-on-target-update-expected.png: Added.
        * platform/chromium-mac-snowleopard/svg/custom/scrolling-embedded-svg-file-image-repaint-problem-expected.checksum: Added.
        * platform/chromium-mac-snowleopard/svg/custom/scrolling-embedded-svg-file-image-repaint-problem-expected.png: Added.
        * platform/chromium-mac-snowleopard/svg/custom/shapes-supporting-markers-expected.checksum: Added.
        * platform/chromium-mac-snowleopard/svg/custom/shapes-supporting-markers-expected.png: Added.
        * platform/chromium-mac-snowleopard/svg/custom/svg-curve-with-relative-cordinates-expected.checksum: Added.
        * platform/chromium-mac-snowleopard/svg/custom/svg-curve-with-relative-cordinates-expected.png: Added.
        * platform/chromium-mac-snowleopard/svg/custom/svg-fonts-in-html-expected.checksum: Added.
        * platform/chromium-mac-snowleopard/svg/custom/svg-fonts-in-html-expected.png: Added.
        * platform/chromium-mac-snowleopard/svg/custom/svg-fonts-with-no-element-reference-expected.checksum: Added.
        * platform/chromium-mac-snowleopard/svg/custom/svg-fonts-with-no-element-reference-expected.png: Added.
        * platform/chromium-mac-snowleopard/svg/custom/text-rotated-gradient-expected.checksum: Added.
        * platform/chromium-mac-snowleopard/svg/custom/text-rotated-gradient-expected.png: Added.
        * platform/chromium-mac-snowleopard/svg/custom/use-detach-expected.checksum: Added.
        * platform/chromium-mac-snowleopard/svg/custom/use-detach-expected.png: Added.
        * platform/chromium-mac-snowleopard/svg/custom/use-on-clip-path-with-transformation-expected.checksum: Added.
        * platform/chromium-mac-snowleopard/svg/custom/use-on-clip-path-with-transformation-expected.png: Added.
        * platform/chromium-mac-snowleopard/svg/custom/viewbox-syntax-expected.checksum: Added.
        * platform/chromium-mac-snowleopard/svg/custom/viewbox-syntax-expected.png: Added.
        * platform/chromium-mac-snowleopard/svg/dynamic-updates/SVGFEBlendElement-dom-in-attr-expected.checksum: Added.
        * platform/chromium-mac-snowleopard/svg/dynamic-updates/SVGFEBlendElement-dom-in-attr-expected.png: Added.
        * platform/chromium-mac-snowleopard/svg/dynamic-updates/SVGFEBlendElement-dom-in2-attr-expected.checksum: Added.
        * platform/chromium-mac-snowleopard/svg/dynamic-updates/SVGFEBlendElement-dom-in2-attr-expected.png: Added.
        * platform/chromium-mac-snowleopard/svg/dynamic-updates/SVGFEBlendElement-dom-mode-attr-expected.checksum: Added.
        * platform/chromium-mac-snowleopard/svg/dynamic-updates/SVGFEBlendElement-dom-mode-attr-expected.png: Added.
        * platform/chromium-mac-snowleopard/svg/dynamic-updates/SVGFEBlendElement-svgdom-in-prop-expected.checksum: Added.
        * platform/chromium-mac-snowleopard/svg/dynamic-updates/SVGFEBlendElement-svgdom-in-prop-expected.png: Added.
        * platform/chromium-mac-snowleopard/svg/dynamic-updates/SVGFEBlendElement-svgdom-in2-prop-expected.checksum: Added.
        * platform/chromium-mac-snowleopard/svg/dynamic-updates/SVGFEBlendElement-svgdom-in2-prop-expected.png: Added.
        * platform/chromium-mac-snowleopard/svg/dynamic-updates/SVGFEBlendElement-svgdom-mode-prop-expected.checksum: Added.
        * platform/chromium-mac-snowleopard/svg/dynamic-updates/SVGFEBlendElement-svgdom-mode-prop-expected.png: Added.
        * platform/chromium-mac-snowleopard/svg/hixie/mixed/003-expected.checksum: Added.
        * platform/chromium-mac-snowleopard/svg/hixie/mixed/003-expected.png: Added.
        * platform/chromium-mac-snowleopard/svg/hixie/mixed/006-expected.checksum: Added.
        * platform/chromium-mac-snowleopard/svg/hixie/mixed/006-expected.png: Added.
        * platform/chromium-mac-snowleopard/svg/hixie/mixed/008-expected.checksum: Added.
        * platform/chromium-mac-snowleopard/svg/hixie/mixed/008-expected.png: Added.
        * platform/chromium-mac-snowleopard/svg/hixie/mixed/011-expected.checksum: Added.
        * platform/chromium-mac-snowleopard/svg/hixie/mixed/011-expected.png: Added.
        * platform/chromium-mac-snowleopard/svg/text/text-intro-05-t-expected.checksum: Added.
        * platform/chromium-mac-snowleopard/svg/text/text-intro-05-t-expected.png: Added.
        * platform/chromium-mac-snowleopard/svg/zoom/page/zoom-foreignObject-expected.checksum: Added.
        * platform/chromium-mac-snowleopard/svg/zoom/page/zoom-foreignObject-expected.png: Added.
        * platform/chromium-mac-snowleopard/svg/zoom/page/zoom-mask-with-percentages-expected.checksum: Added.
        * platform/chromium-mac-snowleopard/svg/zoom/page/zoom-mask-with-percentages-expected.png: Added.

2011-03-30  Kent Tamura  <tkent@chromium.org>

        [Chromium] Add Chromium expectations for h1-in-section-elements.html

        * platform/chromium-linux/fast/css/h1-in-section-elements-expected.checksum: Added.
        * platform/chromium-linux/fast/css/h1-in-section-elements-expected.png: Added.
        * platform/chromium-mac-leopard/fast/css/h1-in-section-elements-expected.checksum: Added.
        * platform/chromium-mac-leopard/fast/css/h1-in-section-elements-expected.png: Added.
        * platform/chromium-win/fast/css/h1-in-section-elements-expected.checksum: Added.
        * platform/chromium-win/fast/css/h1-in-section-elements-expected.png: Added.
        * platform/chromium-win/fast/css/h1-in-section-elements-expected.txt: Added.
        * platform/chromium/test_expectations.txt:

2011-03-29  Nikolas Zimmermann  <nzimmermann@rim.com>

        Reviewed by Eric Seidel.

        REGRESSION (r68976): Incorrect bidi rendering in SVG text
        https://bugs.webkit.org/show_bug.cgi?id=53980

        Add testcase from bug 53980, assuring that BiDi works as well, when using the Unicode directional formatting characters.

        * platform/mac/svg/text/bidi-embedded-direction-expected.checksum: Added.
        * platform/mac/svg/text/bidi-embedded-direction-expected.png: Added.
        * platform/mac/svg/text/bidi-embedded-direction-expected.txt: Added.
        * platform/mac/svg/text/bidi-reorder-value-lists-expected.checksum:
        * platform/mac/svg/text/bidi-reorder-value-lists-expected.png:
        * platform/mac/svg/text/bidi-reorder-value-lists-expected.txt:
        * platform/mac/svg/text/font-size-below-point-five-expected.txt: Update result, as text runs aren't created anymore for empty text.
        * svg/text/bidi-embedded-direction.svg: Added.
        * svg/text/bidi-reorder-value-lists.svg: Extend testcase, to cover more reordering cases.

2011-03-30  Yuta Kitamura  <yutak@chromium.org>

        Unreviewed, remove duplicate Chromium test expectations.

        * platform/chromium/test_expectations.txt:

2011-03-30  Yuta Kitamura  <yutak@chromium.org>

        Unreviewed, add Chromium test expectation for fast/images/move-image-to-new-document.html.

        * platform/chromium/test_expectations.txt:

2011-03-30  Kent Tamura  <tkent@chromium.org>

        [Chromium] Mark h1-in-section-elements.html FAIL until Chromium bots get results.

        * platform/chromium/test_expectations.txt:

2011-03-30  Adam Barth  <abarth@webkit.org>

        Remove a bunch of IMAGE only Snow Leopard Chromium failures from the
        expectations file.  This will trigger our rebaselining machinery to
        make it possible to rebaseline these tests efficiently and accurately,
        which I intend to do shortly.

        * platform/chromium/test_expectations.txt:

2011-03-30  Adam Barth  <abarth@webkit.org>

        Moar chromium-mac-snowleopard results.  These all appear to be correct.

        * platform/chromium-mac-snowleopard/animations: Added.
        * platform/chromium-mac-snowleopard/animations/3d: Added.
        * platform/chromium-mac-snowleopard/animations/3d/matrix-transform-type-animation-expected.checksum: Added.
        * platform/chromium-mac-snowleopard/animations/3d/matrix-transform-type-animation-expected.png: Added.
        * platform/chromium-mac-snowleopard/animations/3d/state-at-end-event-transform-expected.checksum: Added.
        * platform/chromium-mac-snowleopard/animations/3d/state-at-end-event-transform-expected.png: Added.
        * platform/chromium-mac-snowleopard/fast/backgrounds/svg-as-background-6-expected.checksum: Added.
        * platform/chromium-mac-snowleopard/fast/backgrounds/svg-as-background-6-expected.png: Added.
        * platform/chromium-mac-snowleopard/fast/canvas/arc360-expected.checksum: Added.
        * platform/chromium-mac-snowleopard/fast/canvas/arc360-expected.png: Added.
        * platform/chromium-mac-snowleopard/fast/canvas/canvasDrawingIntoSelf-expected.checksum: Added.
        * platform/chromium-mac-snowleopard/fast/canvas/canvasDrawingIntoSelf-expected.png: Added.
        * platform/chromium-mac-snowleopard/fast/canvas/drawImage-expected.checksum: Added.
        * platform/chromium-mac-snowleopard/fast/canvas/drawImage-expected.png: Added.
        * platform/chromium-mac-snowleopard/fast/canvas/image-object-in-canvas-expected.checksum: Added.
        * platform/chromium-mac-snowleopard/fast/canvas/image-object-in-canvas-expected.png: Added.
        * platform/chromium-mac-snowleopard/fast/css/transform-default-parameter-expected.checksum: Added.
        * platform/chromium-mac-snowleopard/fast/css/transform-default-parameter-expected.png: Added.
        * platform/chromium-mac-snowleopard/fast/dom/HTMLInputElement/input-slider-update-expected.checksum: Added.
        * platform/chromium-mac-snowleopard/fast/dom/HTMLInputElement/input-slider-update-expected.png: Added.
        * platform/chromium-mac-snowleopard/fast/dom/blur-contenteditable-expected.checksum: Added.
        * platform/chromium-mac-snowleopard/fast/dom/blur-contenteditable-expected.png: Added.
        * platform/chromium-mac-snowleopard/fast/dom/scroll-reveal-left-overflow-expected.checksum: Added.
        * platform/chromium-mac-snowleopard/fast/dom/scroll-reveal-left-overflow-expected.png: Added.
        * platform/chromium-mac-snowleopard/fast/forms/basic-buttons-expected.checksum: Added.
        * platform/chromium-mac-snowleopard/fast/forms/basic-buttons-expected.png: Added.
        * platform/chromium-mac-snowleopard/fast/forms/button-sizes-expected.checksum: Added.
        * platform/chromium-mac-snowleopard/fast/forms/button-sizes-expected.png: Added.
        * platform/chromium-mac-snowleopard/fast/forms/input-appearance-bkcolor-expected.checksum: Added.
        * platform/chromium-mac-snowleopard/fast/forms/input-appearance-bkcolor-expected.png: Added.
        * platform/chromium-mac-snowleopard/fast/forms/input-file-re-render-expected.checksum: Added.
        * platform/chromium-mac-snowleopard/fast/forms/input-file-re-render-expected.png: Added.
        * platform/chromium-mac-snowleopard/fast/forms/preserveFormDuringResidualStyle-expected.checksum: Added.
        * platform/chromium-mac-snowleopard/fast/forms/preserveFormDuringResidualStyle-expected.png: Added.
        * platform/chromium-mac-snowleopard/fast/forms/search-transformed-expected.checksum: Added.
        * platform/chromium-mac-snowleopard/fast/forms/search-transformed-expected.png: Added.
        * platform/chromium-mac-snowleopard/fast/forms/slider-padding-expected.checksum: Added.
        * platform/chromium-mac-snowleopard/fast/forms/slider-padding-expected.png: Added.
        * platform/chromium-mac-snowleopard/fast/inline/inline-box-background-long-image-expected.checksum: Added.
        * platform/chromium-mac-snowleopard/fast/inline/inline-box-background-long-image-expected.png: Added.
        * platform/chromium-mac-snowleopard/fast/replaced/width100percent-textarea-expected.checksum: Added.
        * platform/chromium-mac-snowleopard/fast/replaced/width100percent-textarea-expected.png: Added.
        * platform/chromium-mac-snowleopard/fast/speech/input-appearance-numberandspeech-expected.checksum: Added.
        * platform/chromium-mac-snowleopard/fast/speech/input-appearance-numberandspeech-expected.png: Added.
        * platform/chromium-mac-snowleopard/fast/speech/input-appearance-searchandspeech-expected.checksum: Added.
        * platform/chromium-mac-snowleopard/fast/speech/input-appearance-searchandspeech-expected.png: Added.
        * platform/chromium-mac-snowleopard/fast/text/international/pop-up-button-text-alignment-and-direction-expected.checksum: Added.
        * platform/chromium-mac-snowleopard/fast/text/international/pop-up-button-text-alignment-and-direction-expected.png: Added.
        * platform/chromium-mac-snowleopard/fast/text/international/text-combine-image-test-expected.checksum: Added.
        * platform/chromium-mac-snowleopard/fast/text/international/text-combine-image-test-expected.png: Added.
        * platform/chromium-mac-snowleopard/fast/text/justify-nbsp-expected.checksum: Added.
        * platform/chromium-mac-snowleopard/fast/text/justify-nbsp-expected.png: Added.
        * platform/chromium-mac-snowleopard/fonts/monospace-expected.checksum: Added.
        * platform/chromium-mac-snowleopard/fonts/monospace-expected.png: Added.
        * platform/chromium-mac-snowleopard/http: Added.
        * platform/chromium-mac-snowleopard/http/tests: Added.
        * platform/chromium-mac-snowleopard/http/tests/misc: Added.
        * platform/chromium-mac-snowleopard/http/tests/misc/acid3-expected.checksum: Added.
        * platform/chromium-mac-snowleopard/http/tests/misc/acid3-expected.png: Added.
        * platform/chromium-mac-snowleopard/tables/mozilla/core/bloomberg-expected.checksum: Added.
        * platform/chromium-mac-snowleopard/tables/mozilla/core/bloomberg-expected.png: Added.
        * platform/chromium-mac-snowleopard/tables/mozilla/core/misc-expected.checksum: Added.
        * platform/chromium-mac-snowleopard/tables/mozilla/core/misc-expected.png: Added.
        * platform/chromium-mac-snowleopard/tables/mozilla/core/row_span-expected.checksum: Added.
        * platform/chromium-mac-snowleopard/tables/mozilla/core/row_span-expected.png: Added.
        * platform/chromium-mac-snowleopard/tables/mozilla/other/cell_widths-expected.checksum: Added.
        * platform/chromium-mac-snowleopard/tables/mozilla/other/cell_widths-expected.png: Added.
        * platform/chromium-mac-snowleopard/tables/mozilla_expected_failures/bugs/bug85016-expected.checksum: Added.
        * platform/chromium-mac-snowleopard/tables/mozilla_expected_failures/bugs/bug85016-expected.png: Added.
        * platform/chromium-mac-snowleopard/tables/mozilla_expected_failures/other: Added.
        * platform/chromium-mac-snowleopard/tables/mozilla_expected_failures/other/test4-expected.checksum: Added.
        * platform/chromium-mac-snowleopard/tables/mozilla_expected_failures/other/test4-expected.png: Added.
        * platform/chromium-mac-snowleopard/transforms: Added.
        * platform/chromium-mac-snowleopard/transforms/no_transform_hit_testing-expected.checksum: Added.
        * platform/chromium-mac-snowleopard/transforms/no_transform_hit_testing-expected.png: Added.
        * platform/chromium-mac-snowleopard/transforms/svg-vs-css-expected.checksum: Added.
        * platform/chromium-mac-snowleopard/transforms/svg-vs-css-expected.png: Added.
        * platform/chromium-mac-snowleopard/transitions: Added.
        * platform/chromium-mac-snowleopard/transitions/move-after-transition-expected.checksum: Added.
        * platform/chromium-mac-snowleopard/transitions/move-after-transition-expected.png: Added.

2011-03-30  Adam Barth  <abarth@webkit.org>

        Reviewed by Dan Bernstein.

        Update Mac Leopard baselines after r82056
        https://bugs.webkit.org/show_bug.cgi?id=57428

        These expected results differ from old ones just by a pixel or two.
        I suspect they're caused by text metrics differences, but I haven't
        confirmed visually.

        * platform/mac-leopard/fast/ruby/base-shorter-than-text-expected.txt:
        * platform/mac-leopard/fast/text/emphasis-combined-text-expected.txt:
        * platform/mac-leopard/fast/text/international/text-combine-image-test-expected.txt:

2011-03-30  Kent Tamura  <tkent@chromium.org>

        Reviewed by Ojan Vafai.

        H1 element should have different default style if it is in HTML5 sectioning elements.
        https://bugs.webkit.org/show_bug.cgi?id=52693

        * fast/css/h1-in-section-elements.html: Added.
        * platform/mac/fast/css/h1-in-section-elements-expected.checksum: Added.
        * platform/mac/fast/css/h1-in-section-elements-expected.png: Added.
        * platform/mac/fast/css/h1-in-section-elements-expected.txt: Added.

2011-03-29  Andy Estes  <aestes@apple.com>

        Reviewed by Dan Bernstein.

        [Snow Leopard WebKit2 Release Tests] fast/images/move-image-to-new-document.html timing out since r82087
        https://bugs.webkit.org/show_bug.cgi?id=57347

        * fast/images/script-tests/move-image-to-new-document.js: Disable
        plug-ins so that the embed portion of the test gets the expected image
        loading behavior on bots with QuickTime installed.
        * platform/mac-wk2/Skipped: Skip the test in WebKit2 since it doesn't
        implement setPluginsEnabled().

2011-03-29  Adam Barth  <abarth@webkit.org>

        Remove a bunch of IMAGE only Snow Leopard Chromium failures from the
        expectations file.  This will trigger our rebaselining machinery to
        make it possible to rebaseline these tests efficiently and accurately,
        which I intend to do shortly.

        * platform/chromium/test_expectations.txt:

2011-03-29  Adam Barth  <abarth@webkit.org>

        Re-land these expected results in the correct directory.

        * platform/chromium-mac-snowleopard/css2.1/t0804-c5510-padn-00-b-ag-expected.checksum: Added.
        * platform/chromium-mac-snowleopard/css2.1/t0804-c5510-padn-00-b-ag-expected.png: Added.
        * platform/chromium-mac-snowleopard/css2.1/t0905-c414-flt-wrap-01-d-g-expected.checksum: Added.
        * platform/chromium-mac-snowleopard/css2.1/t0905-c414-flt-wrap-01-d-g-expected.png: Added.
        * platform/chromium-mac-snowleopard/editing/deleting/4845371-expected.checksum: Added.
        * platform/chromium-mac-snowleopard/editing/deleting/4845371-expected.png: Added.
        * platform/chromium-mac-snowleopard/editing/deleting/5126166-expected.checksum: Added.
        * platform/chromium-mac-snowleopard/editing/deleting/5126166-expected.png: Added.
        * platform/chromium-mac-snowleopard/editing/deleting/5483370-expected.checksum: Added.
        * platform/chromium-mac-snowleopard/editing/deleting/5483370-expected.png: Added.
        * platform/chromium-mac-snowleopard/editing/deleting/table-cells-expected.checksum: Added.
        * platform/chromium-mac-snowleopard/editing/deleting/table-cells-expected.png: Added.
        * platform/chromium-mac-snowleopard/editing/inserting/4875189-2-expected.checksum: Added.
        * platform/chromium-mac-snowleopard/editing/inserting/4875189-2-expected.png: Added.
        * platform/chromium-mac-snowleopard/editing/pasteboard/5387578-expected.checksum: Added.
        * platform/chromium-mac-snowleopard/editing/pasteboard/5387578-expected.png: Added.
        * platform/chromium-mac-snowleopard/editing/pasteboard/paste-table-cells-expected.checksum: Added.
        * platform/chromium-mac-snowleopard/editing/pasteboard/paste-table-cells-expected.png: Added.
        * platform/chromium-mac-snowleopard/fast/backgrounds: Added.
        * platform/chromium-mac-snowleopard/fast/backgrounds/repeat: Added.
        * platform/chromium-mac-snowleopard/fast/backgrounds/repeat/negative-offset-repeat-expected.checksum: Added.
        * platform/chromium-mac-snowleopard/fast/backgrounds/repeat/negative-offset-repeat-expected.png: Added.
        * platform/chromium-mac-snowleopard/fast/block/float: Added.
        * platform/chromium-mac-snowleopard/fast/block/float/014-expected.checksum: Added.
        * platform/chromium-mac-snowleopard/fast/block/float/014-expected.png: Added.
        * platform/chromium-mac-snowleopard/fast/block/float/clear-element-too-wide-for-containing-block-expected.checksum: Added.
        * platform/chromium-mac-snowleopard/fast/block/float/clear-element-too-wide-for-containing-block-expected.png: Added.
        * platform/chromium-mac-snowleopard/fast/borders: Added.
        * platform/chromium-mac-snowleopard/fast/borders/border-radius-inline-flow-expected.checksum: Added.
        * platform/chromium-mac-snowleopard/fast/borders/border-radius-inline-flow-expected.png: Added.
        * platform/chromium-mac-snowleopard/fast/canvas: Added.
        * platform/chromium-mac-snowleopard/fast/canvas/canvas-zoom-expected.checksum: Added.
        * platform/chromium-mac-snowleopard/fast/canvas/canvas-zoom-expected.png: Added.
        * platform/chromium-mac-snowleopard/fast/canvas/image-pattern-rotate-expected.checksum: Added.
        * platform/chromium-mac-snowleopard/fast/canvas/image-pattern-rotate-expected.png: Added.
        * platform/chromium-mac-snowleopard/fast/dom/HTMLMeterElement: Added.
        * platform/chromium-mac-snowleopard/fast/dom/HTMLMeterElement/meter-boundary-values-expected.checksum: Added.
        * platform/chromium-mac-snowleopard/fast/dom/HTMLMeterElement/meter-boundary-values-expected.png: Added.
        * platform/chromium-mac-snowleopard/fast/forms/input-align-image-expected.checksum: Added.
        * platform/chromium-mac-snowleopard/fast/forms/input-align-image-expected.png: Added.
        * platform/chromium-mac-snowleopard/fast/forms/input-type-change-expected.checksum: Added.
        * platform/chromium-mac-snowleopard/fast/forms/input-type-change-expected.png: Added.
        * platform/chromium-mac-snowleopard/fast/forms/listbox-bidi-align-expected.checksum: Added.
        * platform/chromium-mac-snowleopard/fast/forms/listbox-bidi-align-expected.png: Added.
        * platform/chromium-mac-snowleopard/fast/forms/textfield-focus-ring-expected.checksum: Added.
        * platform/chromium-mac-snowleopard/fast/forms/textfield-focus-ring-expected.png: Added.
        * platform/chromium-mac-snowleopard/fast/images: Added.
        * platform/chromium-mac-snowleopard/fast/images/pixel-crack-image-background-webkit-transform-scale-expected.checksum: Added.
        * platform/chromium-mac-snowleopard/fast/images/pixel-crack-image-background-webkit-transform-scale-expected.png: Added.
        * platform/chromium-mac-snowleopard/fast/inline-block: Added.
        * platform/chromium-mac-snowleopard/fast/inline-block/14498-positionForCoordinates-expected.checksum: Added.
        * platform/chromium-mac-snowleopard/fast/inline-block/14498-positionForCoordinates-expected.png: Added.
        * platform/chromium-mac-snowleopard/fast/inline/inline-focus-ring-expected.checksum: Added.
        * platform/chromium-mac-snowleopard/fast/inline/inline-focus-ring-expected.png: Added.
        * platform/chromium-mac-snowleopard/fast/multicol/margin-collapse-expected.checksum: Added.
        * platform/chromium-mac-snowleopard/fast/multicol/margin-collapse-expected.png: Added.
        * platform/chromium-mac-snowleopard/fast/multicol/max-height-columns-block-expected.checksum: Added.
        * platform/chromium-mac-snowleopard/fast/multicol/max-height-columns-block-expected.png: Added.
        * platform/chromium-mac-snowleopard/fast/multicol/positioned-split-expected.checksum: Added.
        * platform/chromium-mac-snowleopard/fast/multicol/positioned-split-expected.png: Added.
        * platform/chromium-mac-snowleopard/fast/multicol/single-line-expected.checksum: Added.
        * platform/chromium-mac-snowleopard/fast/multicol/single-line-expected.png: Added.
        * platform/chromium-mac-snowleopard/fast/multicol/table-margin-collapse-expected.checksum: Added.
        * platform/chromium-mac-snowleopard/fast/multicol/table-margin-collapse-expected.png: Added.
        * platform/chromium-mac-snowleopard/fast/multicol/unsplittable-inline-block-expected.checksum: Added.
        * platform/chromium-mac-snowleopard/fast/multicol/unsplittable-inline-block-expected.png: Added.
        * platform/chromium-mac-snowleopard/fast/replaced/absolute-image-sizing-expected.checksum: Added.
        * platform/chromium-mac-snowleopard/fast/replaced/absolute-image-sizing-expected.png: Added.
        * platform/chromium-mac-snowleopard/fast/replaced/image-onload-expected.checksum: Added.
        * platform/chromium-mac-snowleopard/fast/replaced/image-onload-expected.png: Added.
        * platform/chromium-mac-snowleopard/fast/replaced/image-sizing-expected.checksum: Added.
        * platform/chromium-mac-snowleopard/fast/replaced/image-sizing-expected.png: Added.
        * platform/chromium-mac-snowleopard/fast/text/basic: Added.
        * platform/chromium-mac-snowleopard/fast/text/basic/002-expected.checksum: Added.
        * platform/chromium-mac-snowleopard/fast/text/basic/002-expected.png: Added.
        * platform/chromium-mac-snowleopard/fast/text/drawBidiText-expected.checksum: Added.
        * platform/chromium-mac-snowleopard/fast/text/drawBidiText-expected.png: Added.
        * platform/chromium-mac-snowleopard/fast/text/word-break-soft-hyphen-expected.checksum: Added.
        * platform/chromium-mac-snowleopard/fast/text/word-break-soft-hyphen-expected.png: Added.
        * platform/chromium-mac-snowleopard/media/video-transformed-expected.checksum: Added.
        * platform/chromium-mac-snowleopard/media/video-transformed-expected.png: Added.
        * platform/chromium-mac-snowleopard/scrollbars: Added.
        * platform/chromium-mac-snowleopard/scrollbars/listbox-scrollbar-combinations-expected.checksum: Added.
        * platform/chromium-mac-snowleopard/scrollbars/listbox-scrollbar-combinations-expected.png: Added.
        * platform/chromium-mac-snowleopard/scrollbars/overflow-scrollbar-combinations-expected.checksum: Added.
        * platform/chromium-mac-snowleopard/scrollbars/overflow-scrollbar-combinations-expected.png: Added.
        * platform/chromium-mac-snowleopard/svg/W3C-SVG-1.1: Added.
        * platform/chromium-mac-snowleopard/svg/W3C-SVG-1.1/filters-conv-01-f-expected.checksum: Added.
        * platform/chromium-mac-snowleopard/svg/W3C-SVG-1.1/filters-conv-01-f-expected.png: Added.
        * platform/chromium-mac-snowleopard/svg/custom/focus-ring-expected.checksum: Added.
        * platform/chromium-mac-snowleopard/svg/custom/focus-ring-expected.png: Added.
        * platform/chromium-mac-snowleopard/svg/dynamic-updates: Added.
        * platform/chromium-mac-snowleopard/svg/dynamic-updates/SVGFEConvolveMatrixElement-dom-bias-attr-expected.checksum: Added.
        * platform/chromium-mac-snowleopard/svg/dynamic-updates/SVGFEConvolveMatrixElement-dom-bias-attr-expected.png: Added.
        * platform/chromium-mac-snowleopard/svg/dynamic-updates/SVGFEConvolveMatrixElement-dom-divisor-attr-expected.checksum: Added.
        * platform/chromium-mac-snowleopard/svg/dynamic-updates/SVGFEConvolveMatrixElement-dom-divisor-attr-expected.png: Added.
        * platform/chromium-mac-snowleopard/svg/dynamic-updates/SVGFEConvolveMatrixElement-dom-edgeMode-attr-expected.checksum: Added.
        * platform/chromium-mac-snowleopard/svg/dynamic-updates/SVGFEConvolveMatrixElement-dom-edgeMode-attr-expected.png: Added.
        * platform/chromium-mac-snowleopard/svg/dynamic-updates/SVGFEConvolveMatrixElement-dom-in-attr-expected.checksum: Added.
        * platform/chromium-mac-snowleopard/svg/dynamic-updates/SVGFEConvolveMatrixElement-dom-in-attr-expected.png: Added.
        * platform/chromium-mac-snowleopard/svg/dynamic-updates/SVGFEConvolveMatrixElement-dom-kernelMatrix-attr-expected.checksum: Added.
        * platform/chromium-mac-snowleopard/svg/dynamic-updates/SVGFEConvolveMatrixElement-dom-kernelMatrix-attr-expected.png: Added.
        * platform/chromium-mac-snowleopard/svg/dynamic-updates/SVGFEConvolveMatrixElement-dom-kernelUnitLength-attr-expected.checksum: Added.
        * platform/chromium-mac-snowleopard/svg/dynamic-updates/SVGFEConvolveMatrixElement-dom-kernelUnitLength-attr-expected.png: Added.
        * platform/chromium-mac-snowleopard/svg/dynamic-updates/SVGFEConvolveMatrixElement-dom-order-attr-expected.checksum: Added.
        * platform/chromium-mac-snowleopard/svg/dynamic-updates/SVGFEConvolveMatrixElement-dom-order-attr-expected.png: Added.
        * platform/chromium-mac-snowleopard/svg/dynamic-updates/SVGFEConvolveMatrixElement-dom-preserveAlpha-attr-expected.checksum: Added.
        * platform/chromium-mac-snowleopard/svg/dynamic-updates/SVGFEConvolveMatrixElement-dom-preserveAlpha-attr-expected.png: Added.
        * platform/chromium-mac-snowleopard/svg/dynamic-updates/SVGFEConvolveMatrixElement-dom-targetX-attr-expected.checksum: Added.
        * platform/chromium-mac-snowleopard/svg/dynamic-updates/SVGFEConvolveMatrixElement-dom-targetX-attr-expected.png: Added.
        * platform/chromium-mac-snowleopard/svg/dynamic-updates/SVGFEConvolveMatrixElement-dom-targetY-attr-expected.checksum: Added.
        * platform/chromium-mac-snowleopard/svg/dynamic-updates/SVGFEConvolveMatrixElement-dom-targetY-attr-expected.png: Added.
        * platform/chromium-mac-snowleopard/svg/filters: Added.
        * platform/chromium-mac-snowleopard/svg/filters/filterRes-expected.checksum: Added.
        * platform/chromium-mac-snowleopard/svg/filters/filterRes-expected.png: Added.
        * platform/chromium-mac-snowleopard/svg/text: Added.
        * platform/chromium-mac-snowleopard/svg/text/foreignObject-text-clipping-bug-expected.checksum: Added.
        * platform/chromium-mac-snowleopard/svg/text/foreignObject-text-clipping-bug-expected.png: Added.
        * platform/chromium-mac-snowleopard/tables/mozilla/core/col_widths_auto_autoFix-expected.checksum: Added.
        * platform/chromium-mac-snowleopard/tables/mozilla/core/col_widths_auto_autoFix-expected.png: Added.
        * platform/chromium-mac-snowleopard/tables/mozilla_expected_failures/bugs/bug6933-expected.checksum: Added.
        * platform/chromium-mac-snowleopard/tables/mozilla_expected_failures/bugs/bug6933-expected.png: Added.

2011-03-29  Adam Barth  <abarth@webkit.org>

        Revert previous change.  These should have gone into the Chromium Snow
        Leopard folder.  (Thanks to mrowe for pointing out my error.)

        * platform/mac-snowleopard/css2.1/t0804-c5510-padn-00-b-ag-expected.checksum: Removed.
        * platform/mac-snowleopard/css2.1/t0804-c5510-padn-00-b-ag-expected.png: Removed.
        * platform/mac-snowleopard/css2.1/t0905-c414-flt-wrap-01-d-g-expected.checksum: Removed.
        * platform/mac-snowleopard/css2.1/t0905-c414-flt-wrap-01-d-g-expected.png: Removed.
        * platform/mac-snowleopard/editing/deleting/4845371-expected.checksum: Removed.
        * platform/mac-snowleopard/editing/deleting/4845371-expected.png: Removed.
        * platform/mac-snowleopard/editing/deleting/5126166-expected.checksum: Removed.
        * platform/mac-snowleopard/editing/deleting/5126166-expected.png: Removed.
        * platform/mac-snowleopard/editing/deleting/5483370-expected.checksum: Removed.
        * platform/mac-snowleopard/editing/deleting/5483370-expected.png: Removed.
        * platform/mac-snowleopard/editing/deleting/table-cells-expected.checksum: Removed.
        * platform/mac-snowleopard/editing/deleting/table-cells-expected.png: Removed.
        * platform/mac-snowleopard/editing/inserting/4875189-2-expected.checksum: Removed.
        * platform/mac-snowleopard/editing/inserting/4875189-2-expected.png: Removed.
        * platform/mac-snowleopard/editing/pasteboard/5387578-expected.checksum: Removed.
        * platform/mac-snowleopard/editing/pasteboard/5387578-expected.png: Removed.
        * platform/mac-snowleopard/editing/pasteboard/paste-table-cells-expected.checksum: Removed.
        * platform/mac-snowleopard/editing/pasteboard/paste-table-cells-expected.png: Removed.
        * platform/mac-snowleopard/fast/backgrounds/repeat/negative-offset-repeat-expected.checksum: Removed.
        * platform/mac-snowleopard/fast/backgrounds/repeat/negative-offset-repeat-expected.png: Removed.
        * platform/mac-snowleopard/fast/block/float/014-expected.checksum: Removed.
        * platform/mac-snowleopard/fast/block/float/014-expected.png: Removed.
        * platform/mac-snowleopard/fast/block/float/clear-element-too-wide-for-containing-block-expected.checksum: Removed.
        * platform/mac-snowleopard/fast/block/float/clear-element-too-wide-for-containing-block-expected.png: Removed.
        * platform/mac-snowleopard/fast/borders/border-radius-inline-flow-expected.checksum: Removed.
        * platform/mac-snowleopard/fast/borders/border-radius-inline-flow-expected.png: Removed.
        * platform/mac-snowleopard/fast/canvas/canvas-zoom-expected.checksum: Removed.
        * platform/mac-snowleopard/fast/canvas/canvas-zoom-expected.png: Removed.
        * platform/mac-snowleopard/fast/canvas/image-pattern-rotate-expected.checksum: Removed.
        * platform/mac-snowleopard/fast/canvas/image-pattern-rotate-expected.png: Removed.
        * platform/mac-snowleopard/fast/dom/HTMLMeterElement/meter-boundary-values-expected.checksum: Removed.
        * platform/mac-snowleopard/fast/dom/HTMLMeterElement/meter-boundary-values-expected.png: Removed.
        * platform/mac-snowleopard/fast/forms/input-align-image-expected.checksum: Removed.
        * platform/mac-snowleopard/fast/forms/input-align-image-expected.png: Removed.
        * platform/mac-snowleopard/fast/forms/input-type-change-expected.checksum: Removed.
        * platform/mac-snowleopard/fast/forms/input-type-change-expected.png: Removed.
        * platform/mac-snowleopard/fast/forms/listbox-bidi-align-expected.checksum: Removed.
        * platform/mac-snowleopard/fast/forms/listbox-bidi-align-expected.png: Removed.
        * platform/mac-snowleopard/fast/forms/textfield-focus-ring-expected.checksum: Removed.
        * platform/mac-snowleopard/fast/forms/textfield-focus-ring-expected.png: Removed.
        * platform/mac-snowleopard/fast/images/pixel-crack-image-background-webkit-transform-scale-expected.checksum: Removed.
        * platform/mac-snowleopard/fast/images/pixel-crack-image-background-webkit-transform-scale-expected.png: Removed.
        * platform/mac-snowleopard/fast/inline-block/14498-positionForCoordinates-expected.checksum: Removed.
        * platform/mac-snowleopard/fast/inline-block/14498-positionForCoordinates-expected.png: Removed.
        * platform/mac-snowleopard/fast/inline/inline-focus-ring-expected.checksum: Removed.
        * platform/mac-snowleopard/fast/inline/inline-focus-ring-expected.png: Removed.
        * platform/mac-snowleopard/fast/multicol/margin-collapse-expected.checksum: Removed.
        * platform/mac-snowleopard/fast/multicol/margin-collapse-expected.png: Removed.
        * platform/mac-snowleopard/fast/multicol/max-height-columns-block-expected.checksum: Removed.
        * platform/mac-snowleopard/fast/multicol/max-height-columns-block-expected.png: Removed.
        * platform/mac-snowleopard/fast/multicol/positioned-split-expected.checksum: Removed.
        * platform/mac-snowleopard/fast/multicol/positioned-split-expected.png: Removed.
        * platform/mac-snowleopard/fast/multicol/single-line-expected.checksum: Removed.
        * platform/mac-snowleopard/fast/multicol/single-line-expected.png: Removed.
        * platform/mac-snowleopard/fast/multicol/table-margin-collapse-expected.checksum: Removed.
        * platform/mac-snowleopard/fast/multicol/table-margin-collapse-expected.png: Removed.
        * platform/mac-snowleopard/fast/multicol/unsplittable-inline-block-expected.checksum: Removed.
        * platform/mac-snowleopard/fast/multicol/unsplittable-inline-block-expected.png: Removed.
        * platform/mac-snowleopard/fast/replaced/absolute-image-sizing-expected.checksum: Removed.
        * platform/mac-snowleopard/fast/replaced/absolute-image-sizing-expected.png: Removed.
        * platform/mac-snowleopard/fast/replaced/image-onload-expected.checksum: Removed.
        * platform/mac-snowleopard/fast/replaced/image-onload-expected.png: Removed.
        * platform/mac-snowleopard/fast/replaced/image-sizing-expected.checksum: Removed.
        * platform/mac-snowleopard/fast/replaced/image-sizing-expected.png: Removed.
        * platform/mac-snowleopard/fast/text/basic/002-expected.checksum: Removed.
        * platform/mac-snowleopard/fast/text/basic/002-expected.png: Removed.
        * platform/mac-snowleopard/fast/text/drawBidiText-expected.checksum: Removed.
        * platform/mac-snowleopard/fast/text/drawBidiText-expected.png: Removed.
        * platform/mac-snowleopard/fast/text/word-break-soft-hyphen-expected.checksum: Removed.
        * platform/mac-snowleopard/fast/text/word-break-soft-hyphen-expected.png: Removed.
        * platform/mac-snowleopard/media/video-transformed-expected.checksum: Removed.
        * platform/mac-snowleopard/media/video-transformed-expected.png: Removed.
        * platform/mac-snowleopard/scrollbars/listbox-scrollbar-combinations-expected.checksum: Removed.
        * platform/mac-snowleopard/scrollbars/listbox-scrollbar-combinations-expected.png: Removed.
        * platform/mac-snowleopard/scrollbars/overflow-scrollbar-combinations-expected.checksum: Removed.
        * platform/mac-snowleopard/scrollbars/overflow-scrollbar-combinations-expected.png: Removed.
        * platform/mac-snowleopard/svg/W3C-SVG-1.1/filters-conv-01-f-expected.checksum: Removed.
        * platform/mac-snowleopard/svg/W3C-SVG-1.1/filters-conv-01-f-expected.png: Removed.
        * platform/mac-snowleopard/svg/custom/focus-ring-expected.checksum: Removed.
        * platform/mac-snowleopard/svg/custom/focus-ring-expected.png: Removed.
        * platform/mac-snowleopard/svg/dynamic-updates/SVGFEConvolveMatrixElement-dom-bias-attr-expected.checksum: Removed.
        * platform/mac-snowleopard/svg/dynamic-updates/SVGFEConvolveMatrixElement-dom-bias-attr-expected.png: Removed.
        * platform/mac-snowleopard/svg/dynamic-updates/SVGFEConvolveMatrixElement-dom-divisor-attr-expected.checksum: Removed.
        * platform/mac-snowleopard/svg/dynamic-updates/SVGFEConvolveMatrixElement-dom-divisor-attr-expected.png: Removed.
        * platform/mac-snowleopard/svg/dynamic-updates/SVGFEConvolveMatrixElement-dom-edgeMode-attr-expected.checksum: Removed.
        * platform/mac-snowleopard/svg/dynamic-updates/SVGFEConvolveMatrixElement-dom-edgeMode-attr-expected.png: Removed.
        * platform/mac-snowleopard/svg/dynamic-updates/SVGFEConvolveMatrixElement-dom-in-attr-expected.checksum: Removed.
        * platform/mac-snowleopard/svg/dynamic-updates/SVGFEConvolveMatrixElement-dom-in-attr-expected.png: Removed.
        * platform/mac-snowleopard/svg/dynamic-updates/SVGFEConvolveMatrixElement-dom-kernelMatrix-attr-expected.checksum: Removed.
        * platform/mac-snowleopard/svg/dynamic-updates/SVGFEConvolveMatrixElement-dom-kernelMatrix-attr-expected.png: Removed.
        * platform/mac-snowleopard/svg/dynamic-updates/SVGFEConvolveMatrixElement-dom-kernelUnitLength-attr-expected.checksum: Removed.
        * platform/mac-snowleopard/svg/dynamic-updates/SVGFEConvolveMatrixElement-dom-kernelUnitLength-attr-expected.png: Removed.
        * platform/mac-snowleopard/svg/dynamic-updates/SVGFEConvolveMatrixElement-dom-order-attr-expected.checksum: Removed.
        * platform/mac-snowleopard/svg/dynamic-updates/SVGFEConvolveMatrixElement-dom-order-attr-expected.png: Removed.
        * platform/mac-snowleopard/svg/dynamic-updates/SVGFEConvolveMatrixElement-dom-preserveAlpha-attr-expected.checksum: Removed.
        * platform/mac-snowleopard/svg/dynamic-updates/SVGFEConvolveMatrixElement-dom-preserveAlpha-attr-expected.png: Removed.
        * platform/mac-snowleopard/svg/dynamic-updates/SVGFEConvolveMatrixElement-dom-targetX-attr-expected.checksum: Removed.
        * platform/mac-snowleopard/svg/dynamic-updates/SVGFEConvolveMatrixElement-dom-targetX-attr-expected.png: Removed.
        * platform/mac-snowleopard/svg/dynamic-updates/SVGFEConvolveMatrixElement-dom-targetY-attr-expected.checksum: Removed.
        * platform/mac-snowleopard/svg/dynamic-updates/SVGFEConvolveMatrixElement-dom-targetY-attr-expected.png: Removed.
        * platform/mac-snowleopard/svg/filters/filterRes-expected.checksum: Removed.
        * platform/mac-snowleopard/svg/filters/filterRes-expected.png: Removed.
        * platform/mac-snowleopard/svg/text/foreignObject-text-clipping-bug-expected.checksum: Removed.
        * platform/mac-snowleopard/svg/text/foreignObject-text-clipping-bug-expected.png: Removed.
        * platform/mac-snowleopard/tables/mozilla/core/col_widths_auto_autoFix-expected.checksum: Removed.
        * platform/mac-snowleopard/tables/mozilla/core/col_widths_auto_autoFix-expected.png: Removed.
        * platform/mac-snowleopard/tables/mozilla_expected_failures/bugs/bug6933-expected.checksum: Removed.
        * platform/mac-snowleopard/tables/mozilla_expected_failures/bugs/bug6933-expected.png: Removed.

2011-03-29  Adam Barth  <abarth@webkit.org>

        Update Snow Leopard baselines.

        * platform/mac-snowleopard/css2.1: Added.
        * platform/mac-snowleopard/css2.1/t0804-c5510-padn-00-b-ag-expected.checksum: Added.
        * platform/mac-snowleopard/css2.1/t0804-c5510-padn-00-b-ag-expected.png: Added.
        * platform/mac-snowleopard/css2.1/t0905-c414-flt-wrap-01-d-g-expected.checksum: Added.
        * platform/mac-snowleopard/css2.1/t0905-c414-flt-wrap-01-d-g-expected.png: Added.
        * platform/mac-snowleopard/editing: Added.
        * platform/mac-snowleopard/editing/deleting: Added.
        * platform/mac-snowleopard/editing/deleting/4845371-expected.checksum: Added.
        * platform/mac-snowleopard/editing/deleting/4845371-expected.png: Added.
        * platform/mac-snowleopard/editing/deleting/5126166-expected.checksum: Added.
        * platform/mac-snowleopard/editing/deleting/5126166-expected.png: Added.
        * platform/mac-snowleopard/editing/deleting/5483370-expected.checksum: Added.
        * platform/mac-snowleopard/editing/deleting/5483370-expected.png: Added.
        * platform/mac-snowleopard/editing/deleting/table-cells-expected.checksum: Added.
        * platform/mac-snowleopard/editing/deleting/table-cells-expected.png: Added.
        * platform/mac-snowleopard/editing/inserting: Added.
        * platform/mac-snowleopard/editing/inserting/4875189-2-expected.checksum: Added.
        * platform/mac-snowleopard/editing/inserting/4875189-2-expected.png: Added.
        * platform/mac-snowleopard/editing/pasteboard: Added.
        * platform/mac-snowleopard/editing/pasteboard/5387578-expected.checksum: Added.
        * platform/mac-snowleopard/editing/pasteboard/5387578-expected.png: Added.
        * platform/mac-snowleopard/editing/pasteboard/paste-table-cells-expected.checksum: Added.
        * platform/mac-snowleopard/editing/pasteboard/paste-table-cells-expected.png: Added.
        * platform/mac-snowleopard/fast/backgrounds: Added.
        * platform/mac-snowleopard/fast/backgrounds/repeat: Added.
        * platform/mac-snowleopard/fast/backgrounds/repeat/negative-offset-repeat-expected.checksum: Added.
        * platform/mac-snowleopard/fast/backgrounds/repeat/negative-offset-repeat-expected.png: Added.
        * platform/mac-snowleopard/fast/block: Added.
        * platform/mac-snowleopard/fast/block/float: Added.
        * platform/mac-snowleopard/fast/block/float/014-expected.checksum: Added.
        * platform/mac-snowleopard/fast/block/float/014-expected.png: Added.
        * platform/mac-snowleopard/fast/block/float/clear-element-too-wide-for-containing-block-expected.checksum: Added.
        * platform/mac-snowleopard/fast/block/float/clear-element-too-wide-for-containing-block-expected.png: Added.
        * platform/mac-snowleopard/fast/borders: Added.
        * platform/mac-snowleopard/fast/borders/border-radius-inline-flow-expected.checksum: Added.
        * platform/mac-snowleopard/fast/borders/border-radius-inline-flow-expected.png: Added.
        * platform/mac-snowleopard/fast/canvas: Added.
        * platform/mac-snowleopard/fast/canvas/canvas-zoom-expected.checksum: Added.
        * platform/mac-snowleopard/fast/canvas/canvas-zoom-expected.png: Added.
        * platform/mac-snowleopard/fast/canvas/image-pattern-rotate-expected.checksum: Added.
        * platform/mac-snowleopard/fast/canvas/image-pattern-rotate-expected.png: Added.
        * platform/mac-snowleopard/fast/dom: Added.
        * platform/mac-snowleopard/fast/dom/HTMLMeterElement: Added.
        * platform/mac-snowleopard/fast/dom/HTMLMeterElement/meter-boundary-values-expected.checksum: Added.
        * platform/mac-snowleopard/fast/dom/HTMLMeterElement/meter-boundary-values-expected.png: Added.
        * platform/mac-snowleopard/fast/forms/input-align-image-expected.checksum: Added.
        * platform/mac-snowleopard/fast/forms/input-align-image-expected.png: Added.
        * platform/mac-snowleopard/fast/forms/input-type-change-expected.checksum: Added.
        * platform/mac-snowleopard/fast/forms/input-type-change-expected.png: Added.
        * platform/mac-snowleopard/fast/forms/listbox-bidi-align-expected.checksum: Added.
        * platform/mac-snowleopard/fast/forms/listbox-bidi-align-expected.png: Added.
        * platform/mac-snowleopard/fast/forms/textfield-focus-ring-expected.checksum: Added.
        * platform/mac-snowleopard/fast/forms/textfield-focus-ring-expected.png: Added.
        * platform/mac-snowleopard/fast/images: Added.
        * platform/mac-snowleopard/fast/images/pixel-crack-image-background-webkit-transform-scale-expected.checksum: Added.
        * platform/mac-snowleopard/fast/images/pixel-crack-image-background-webkit-transform-scale-expected.png: Added.
        * platform/mac-snowleopard/fast/inline: Added.
        * platform/mac-snowleopard/fast/inline-block: Added.
        * platform/mac-snowleopard/fast/inline-block/14498-positionForCoordinates-expected.checksum: Added.
        * platform/mac-snowleopard/fast/inline-block/14498-positionForCoordinates-expected.png: Added.
        * platform/mac-snowleopard/fast/inline/inline-focus-ring-expected.checksum: Added.
        * platform/mac-snowleopard/fast/inline/inline-focus-ring-expected.png: Added.
        * platform/mac-snowleopard/fast/multicol: Added.
        * platform/mac-snowleopard/fast/multicol/margin-collapse-expected.checksum: Added.
        * platform/mac-snowleopard/fast/multicol/margin-collapse-expected.png: Added.
        * platform/mac-snowleopard/fast/multicol/max-height-columns-block-expected.checksum: Added.
        * platform/mac-snowleopard/fast/multicol/max-height-columns-block-expected.png: Added.
        * platform/mac-snowleopard/fast/multicol/positioned-split-expected.checksum: Added.
        * platform/mac-snowleopard/fast/multicol/positioned-split-expected.png: Added.
        * platform/mac-snowleopard/fast/multicol/single-line-expected.checksum: Added.
        * platform/mac-snowleopard/fast/multicol/single-line-expected.png: Added.
        * platform/mac-snowleopard/fast/multicol/table-margin-collapse-expected.checksum: Added.
        * platform/mac-snowleopard/fast/multicol/table-margin-collapse-expected.png: Added.
        * platform/mac-snowleopard/fast/multicol/unsplittable-inline-block-expected.checksum: Added.
        * platform/mac-snowleopard/fast/multicol/unsplittable-inline-block-expected.png: Added.
        * platform/mac-snowleopard/fast/replaced: Added.
        * platform/mac-snowleopard/fast/replaced/absolute-image-sizing-expected.checksum: Added.
        * platform/mac-snowleopard/fast/replaced/absolute-image-sizing-expected.png: Added.
        * platform/mac-snowleopard/fast/replaced/image-onload-expected.checksum: Added.
        * platform/mac-snowleopard/fast/replaced/image-onload-expected.png: Added.
        * platform/mac-snowleopard/fast/replaced/image-sizing-expected.checksum: Added.
        * platform/mac-snowleopard/fast/replaced/image-sizing-expected.png: Added.
        * platform/mac-snowleopard/fast/text/basic: Added.
        * platform/mac-snowleopard/fast/text/basic/002-expected.checksum: Added.
        * platform/mac-snowleopard/fast/text/basic/002-expected.png: Added.
        * platform/mac-snowleopard/fast/text/drawBidiText-expected.checksum: Added.
        * platform/mac-snowleopard/fast/text/drawBidiText-expected.png: Added.
        * platform/mac-snowleopard/fast/text/word-break-soft-hyphen-expected.checksum: Added.
        * platform/mac-snowleopard/fast/text/word-break-soft-hyphen-expected.png: Added.
        * platform/mac-snowleopard/media: Added.
        * platform/mac-snowleopard/media/video-transformed-expected.checksum: Added.
        * platform/mac-snowleopard/media/video-transformed-expected.png: Added.
        * platform/mac-snowleopard/scrollbars: Added.
        * platform/mac-snowleopard/scrollbars/listbox-scrollbar-combinations-expected.checksum: Added.
        * platform/mac-snowleopard/scrollbars/listbox-scrollbar-combinations-expected.png: Added.
        * platform/mac-snowleopard/scrollbars/overflow-scrollbar-combinations-expected.checksum: Added.
        * platform/mac-snowleopard/scrollbars/overflow-scrollbar-combinations-expected.png: Added.
        * platform/mac-snowleopard/svg/W3C-SVG-1.1: Added.
        * platform/mac-snowleopard/svg/W3C-SVG-1.1/filters-conv-01-f-expected.checksum: Added.
        * platform/mac-snowleopard/svg/W3C-SVG-1.1/filters-conv-01-f-expected.png: Added.
        * platform/mac-snowleopard/svg/custom: Added.
        * platform/mac-snowleopard/svg/custom/focus-ring-expected.checksum: Added.
        * platform/mac-snowleopard/svg/custom/focus-ring-expected.png: Added.
        * platform/mac-snowleopard/svg/dynamic-updates: Added.
        * platform/mac-snowleopard/svg/dynamic-updates/SVGFEConvolveMatrixElement-dom-bias-attr-expected.checksum: Added.
        * platform/mac-snowleopard/svg/dynamic-updates/SVGFEConvolveMatrixElement-dom-bias-attr-expected.png: Added.
        * platform/mac-snowleopard/svg/dynamic-updates/SVGFEConvolveMatrixElement-dom-divisor-attr-expected.checksum: Added.
        * platform/mac-snowleopard/svg/dynamic-updates/SVGFEConvolveMatrixElement-dom-divisor-attr-expected.png: Added.
        * platform/mac-snowleopard/svg/dynamic-updates/SVGFEConvolveMatrixElement-dom-edgeMode-attr-expected.checksum: Added.
        * platform/mac-snowleopard/svg/dynamic-updates/SVGFEConvolveMatrixElement-dom-edgeMode-attr-expected.png: Added.
        * platform/mac-snowleopard/svg/dynamic-updates/SVGFEConvolveMatrixElement-dom-in-attr-expected.checksum: Added.
        * platform/mac-snowleopard/svg/dynamic-updates/SVGFEConvolveMatrixElement-dom-in-attr-expected.png: Added.
        * platform/mac-snowleopard/svg/dynamic-updates/SVGFEConvolveMatrixElement-dom-kernelMatrix-attr-expected.checksum: Added.
        * platform/mac-snowleopard/svg/dynamic-updates/SVGFEConvolveMatrixElement-dom-kernelMatrix-attr-expected.png: Added.
        * platform/mac-snowleopard/svg/dynamic-updates/SVGFEConvolveMatrixElement-dom-kernelUnitLength-attr-expected.checksum: Added.
        * platform/mac-snowleopard/svg/dynamic-updates/SVGFEConvolveMatrixElement-dom-kernelUnitLength-attr-expected.png: Added.
        * platform/mac-snowleopard/svg/dynamic-updates/SVGFEConvolveMatrixElement-dom-order-attr-expected.checksum: Added.
        * platform/mac-snowleopard/svg/dynamic-updates/SVGFEConvolveMatrixElement-dom-order-attr-expected.png: Added.
        * platform/mac-snowleopard/svg/dynamic-updates/SVGFEConvolveMatrixElement-dom-preserveAlpha-attr-expected.checksum: Added.
        * platform/mac-snowleopard/svg/dynamic-updates/SVGFEConvolveMatrixElement-dom-preserveAlpha-attr-expected.png: Added.
        * platform/mac-snowleopard/svg/dynamic-updates/SVGFEConvolveMatrixElement-dom-targetX-attr-expected.checksum: Added.
        * platform/mac-snowleopard/svg/dynamic-updates/SVGFEConvolveMatrixElement-dom-targetX-attr-expected.png: Added.
        * platform/mac-snowleopard/svg/dynamic-updates/SVGFEConvolveMatrixElement-dom-targetY-attr-expected.checksum: Added.
        * platform/mac-snowleopard/svg/dynamic-updates/SVGFEConvolveMatrixElement-dom-targetY-attr-expected.png: Added.
        * platform/mac-snowleopard/svg/filters: Added.
        * platform/mac-snowleopard/svg/filters/filterRes-expected.checksum: Added.
        * platform/mac-snowleopard/svg/filters/filterRes-expected.png: Added.
        * platform/mac-snowleopard/svg/text: Added.
        * platform/mac-snowleopard/svg/text/foreignObject-text-clipping-bug-expected.checksum: Added.
        * platform/mac-snowleopard/svg/text/foreignObject-text-clipping-bug-expected.png: Added.
        * platform/mac-snowleopard/tables: Added.
        * platform/mac-snowleopard/tables/mozilla: Added.
        * platform/mac-snowleopard/tables/mozilla/core: Added.
        * platform/mac-snowleopard/tables/mozilla/core/col_widths_auto_autoFix-expected.checksum: Added.
        * platform/mac-snowleopard/tables/mozilla/core/col_widths_auto_autoFix-expected.png: Added.
        * platform/mac-snowleopard/tables/mozilla_expected_failures: Added.
        * platform/mac-snowleopard/tables/mozilla_expected_failures/bugs: Added.
        * platform/mac-snowleopard/tables/mozilla_expected_failures/bugs/bug6933-expected.checksum: Added.
        * platform/mac-snowleopard/tables/mozilla_expected_failures/bugs/bug6933-expected.png: Added.

2011-03-29  Kent Tamura  <tkent@chromium.org>

        [Chromium] Add expectations for a test added in r82386.

        * platform/chromium-linux/fast/forms/validation-message-appearance-expected.checksum: Added.
        * platform/chromium-linux/fast/forms/validation-message-appearance-expected.png: Added.
        * platform/chromium-linux/fast/forms/validation-message-appearance-expected.txt: Added.
        * platform/chromium-mac-leopard/fast/forms/validation-message-appearance-expected.checksum: Added.
        * platform/chromium-mac-leopard/fast/forms/validation-message-appearance-expected.png: Added.
        * platform/chromium-win/fast/forms/validation-message-appearance-expected.checksum: Added.
        * platform/chromium-win/fast/forms/validation-message-appearance-expected.png: Added.
        * platform/chromium-win/fast/forms/validation-message-appearance-expected.txt: Added.

2011-03-29  Kent Tamura  <tkent@chromium.org>

        Reviewed by Dimitri Glazkov.

        Make validation message bubble testable
        https://bugs.webkit.org/show_bug.cgi?id=57290

        Add a new test for validation message bubble, and skip it on non-Mac platforms.

        * fast/forms/validation-message-appearance.html: Added.
        * platform/chromium/test_expectations.txt:
        * platform/gtk/Skipped:
        * platform/mac/fast/forms/validation-message-appearance-expected.checksum: Added.
        * platform/mac/fast/forms/validation-message-appearance-expected.png: Added.
        * platform/mac/fast/forms/validation-message-appearance-expected.txt: Added.
        * platform/qt/Skipped:
        * platform/win/Skipped:

2011-03-29  Adam Barth  <abarth@webkit.org>

        Document that we're now passing these tests.

        * platform/chromium/test_expectations.txt:

2011-03-29  Adam Barth  <abarth@webkit.org>

        Add missing PNGs.  These PNGs match the checksums.

        * platform/chromium-mac/svg/zoom/page/zoom-hixie-mixed-008-expected.png: Added.
        * platform/chromium-mac/tables/mozilla/bugs/bug1271-expected.png: Added.

2011-03-29  Tony Gentilcore  <tonyg@chromium.org>

        Reviewed by Adam Barth.

        Teach the preload scanner about &lt;input type=image&gt;
        https://bugs.webkit.org/show_bug.cgi?id=57404

        * fast/preloader/input-expected.txt: Added.
        * fast/preloader/input.html: Added.

2011-03-29  Kent Tamura  <tkent@chromium.org>

        Reviewed by Dimitri Glazkov.

        [Mac] Enable interactive-validation tests on Mac DRT
        https://bugs.webkit.org/show_bug.cgi?id=57308

        * fast/forms/interactive-validation-prevented-expected.txt: Fix a wrong expectation.
        * platform/chromium/test_expectations.txt:
          Update expectation of interactive-validation-prevented.html.
        * platform/mac/Skipped: Unskip interactive-validation except
          interactive-validation-lost-focusable.html, which doesn't pass for now.

2011-03-29  Martin Robinson  <mrobinson@igalia.com>

        [GTK] [DRT] GtkScrolledWindow adds three pixels of padding between the WebView and the scrollbar
        https://bugs.webkit.org/show_bug.cgi?id=57067

        Update the last set of GTK+ results after r82343.

        * platform/gtk: Update the last set of GTK+ results.

2011-03-29  Adam Barth  <abarth@webkit.org>

        Revert previous change now that the roll is in.

        * platform/chromium/test_expectations.txt:

2011-03-29  Adam Barth  <abarth@webkit.org>

        These tests are actually fine, I just can't figure out how to make the
        bot happy.  I'm going to try rolling and then continue beating my head
        against the bot.

        * platform/chromium/test_expectations.txt:

2011-03-29  Adam Barth  <abarth@webkit.org>

        Attempt to fix Chromium Mac Canary.  It's unclear whether removing
        these files will help, but it's worth a try.

        * platform/chromium-mac-leopard/media/video-transformed-expected.checksum: Removed.
        * platform/chromium-mac-leopard/svg/zoom/page/zoom-hixie-mixed-008-expected.checksum: Removed.
        * platform/chromium-mac-snowleopard/fast/forms/listbox-bidi-align-expected.checksum: Removed.
        * platform/chromium-mac-snowleopard/fast/forms/listbox-bidi-align-expected.png: Removed.
        * platform/chromium-mac-snowleopard/fast/text/drawBidiText-expected.checksum: Removed.
        * platform/chromium-mac-snowleopard/fast/text/drawBidiText-expected.png: Removed.
        * platform/chromium-mac-snowleopard/media/video-transformed-expected.checksum: Removed.
        * platform/chromium-mac-snowleopard/media/video-transformed-expected.png: Removed.
        * platform/chromium-mac/fast/forms/preserveFormDuringResidualStyle-expected.png: Added.

2011-03-29  Martin Robinson  <mrobinson@igalia.com>

        [GTK] [DRT] GtkScrolledWindow adds three pixels of padding between the WebView and the scrollbar
        https://bugs.webkit.org/show_bug.cgi?id=57067

        Update the GTK+ results in the tables directory after r82343.

        * platform/gtk/tables: Update the results in this directory.

2011-03-29  Martin Robinson  <mrobinson@igalia.com>

        [GTK] [DRT] GtkScrolledWindow adds three pixels of padding between the WebView and the scrollbar
        https://bugs.webkit.org/show_bug.cgi?id=57067

        Update CSS and editing GTK+ results after r82343.

        * platform/gtk/css1:
        * platform/gtk/css2.1:
        * platform/gtk/editing:

2011-03-29  Adam Barth  <abarth@webkit.org>

        Remove more-specific instances of a general rule.

        * platform/chromium/test_expectations.txt:

2011-03-29  Martin Robinson  <mrobinson@igalia.com>

        [GTK] [DRT] GtkScrolledWindow adds three pixels of padding between the WebView and the scrollbar
        https://bugs.webkit.org/show_bug.cgi?id=57067

        Update the GTK+ results in the svg directory after r82343.

        * platform/gtk/svg: Update the results in this directory.

2011-03-29  Justin Schuh  <jschuh@chromium.org>

        Reviewed by Maciej Stachowiak.

        SVGComponentTransferFunctionElement should validate type
        https://bugs.webkit.org/show_bug.cgi?id=56960

        * svg/filters/feComponentTransfer-style-crash-expected.txt: Added.
        * svg/filters/feComponentTransfer-style-crash.xhtml: Added.

2011-03-29  Martin Robinson  <mrobinson@igalia.com>

        [GTK] [DRT] GtkScrolledWindow adds three pixels of padding between the WebView and the scrollbar
        https://bugs.webkit.org/show_bug.cgi?id=57067

        Update the last set of fast GTK+ results after r82343.

        * platform/gtk/fast: Update the last set of results in this directory.

2011-03-29  Martin Robinson  <mrobinson@igalia.com>

        [GTK] [DRT] GtkScrolledWindow adds three pixels of padding between the WebView and the scrollbar
        https://bugs.webkit.org/show_bug.cgi?id=57067

        Update more GTK+ results after r82343.

        * platform/gtk/fast: Update many more results in this directory.

2011-03-29  Martin Robinson  <mrobinson@igalia.com>

        [GTK] [DRT] GtkScrolledWindow adds three pixels of padding between the WebView and the scrollbar
        https://bugs.webkit.org/show_bug.cgi?id=57067

        Update GTK+ results after r82343.

        * platform/gtk/fast: Update many results in this directory.

2011-03-29  Csaba Osztrogonác  <ossy@webkit.org>

        [Qt] Add new failing tests to the Skipped list until tomorrow.

        * platform/qt/Skipped:

2011-03-29  Gavin Peters  <gavinp@chromium.org>

        Reviewed by Tony Gentilcore.

        Add beforeload to icon and prefetch link rel types
        https://bugs.webkit.org/show_bug.cgi?id=56424

        Unfortunately, there's lots of skipped tests, and a chrome failure
        expectation here, in a strange disjoint set.  On the chromium
        port, favicon loads don't occur in DRT, so the favicon changes are
        expected to fail.  On the ports without prefetching, we expect the
        prefetching test to fail.

        * fast/dom/HTMLLinkElement/prefetch-beforeload-expected.txt: Added.
        * fast/dom/HTMLLinkElement/prefetch-beforeload.html: Added.
        * http/tests/misc/link-rel-icon-beforeload-expected.txt: Added.
        * http/tests/misc/link-rel-icon-beforeload.html: Added.
        * platform/chromium/test_expectations.txt:
        * platform/gtk/Skipped:
        * platform/mac/Skipped:
        * platform/qt/Skipped:
        * platform/win/Skipped:
        * webarchive/test-link-rel-icon-beforeload-expected.webarchive: Added.
        * webarchive/test-link-rel-icon-beforeload.html: Added.

2011-03-29  Adam Barth  <abarth@webkit.org>

        Moar pixel expectations.

        * platform/chromium-mac/css2.1/t0804-c5510-padn-00-b-ag-expected.checksum: Added.
        * platform/chromium-mac/css2.1/t0804-c5510-padn-00-b-ag-expected.png: Added.
        * platform/chromium-mac/css2.1/t0905-c414-flt-wrap-01-d-g-expected.checksum:
        * platform/chromium-mac/css2.1/t0905-c414-flt-wrap-01-d-g-expected.png:
        * platform/chromium-mac/editing/deleting/4845371-expected.checksum: Added.
        * platform/chromium-mac/editing/deleting/4845371-expected.png: Added.
        * platform/chromium-mac/editing/deleting/5126166-expected.checksum: Added.
        * platform/chromium-mac/editing/deleting/5126166-expected.png: Added.
        * platform/chromium-mac/editing/deleting/5483370-expected.checksum: Added.
        * platform/chromium-mac/editing/deleting/5483370-expected.png: Added.
        * platform/chromium-mac/editing/deleting/table-cells-expected.checksum: Added.
        * platform/chromium-mac/editing/deleting/table-cells-expected.png: Added.
        * platform/chromium-mac/editing/inserting/4875189-2-expected.checksum: Added.
        * platform/chromium-mac/editing/inserting/4875189-2-expected.png: Added.
        * platform/chromium-mac/editing/pasteboard/5387578-expected.checksum: Added.
        * platform/chromium-mac/editing/pasteboard/5387578-expected.png: Added.
        * platform/chromium-mac/editing/pasteboard/paste-table-cells-expected.checksum: Added.
        * platform/chromium-mac/editing/pasteboard/paste-table-cells-expected.png: Added.
        * platform/chromium-mac/fast/backgrounds/repeat/negative-offset-repeat-expected.checksum:
        * platform/chromium-mac/fast/backgrounds/repeat/negative-offset-repeat-expected.png:
        * platform/chromium-mac/fast/block/float/014-expected.checksum:
        * platform/chromium-mac/fast/block/float/014-expected.png:
        * platform/chromium-mac/fast/block/float/clear-element-too-wide-for-containing-block-expected.checksum: Added.
        * platform/chromium-mac/fast/block/float/clear-element-too-wide-for-containing-block-expected.png: Added.
        * platform/chromium-mac/fast/blockflow/background-vertical-rl-expected.png: Added.
        * platform/chromium-mac/fast/borders/border-radius-inline-flow-expected.checksum: Added.
        * platform/chromium-mac/fast/borders/border-radius-inline-flow-expected.png: Added.
        * platform/chromium-mac/fast/canvas/canvas-zoom-expected.checksum: Added.
        * platform/chromium-mac/fast/canvas/canvas-zoom-expected.png: Added.
        * platform/chromium-mac/fast/canvas/image-pattern-rotate-expected.checksum:
        * platform/chromium-mac/fast/canvas/image-pattern-rotate-expected.png:
        * platform/chromium-mac/fast/dom/HTMLMeterElement/meter-boundary-values-expected.checksum: Added.
        * platform/chromium-mac/fast/dom/HTMLMeterElement/meter-boundary-values-expected.png: Added.
        * platform/chromium-mac/fast/forms/input-align-image-expected.png: Added.
        * platform/chromium-mac/fast/forms/input-type-change-expected.png: Added.
        * platform/chromium-mac/fast/forms/textfield-focus-ring-expected.checksum: Added.
        * platform/chromium-mac/fast/forms/textfield-focus-ring-expected.png: Added.
        * platform/chromium-mac/fast/images/icon-decoding-expected.png: Added.
        * platform/chromium-mac/fast/images/pixel-crack-image-background-webkit-transform-scale-expected.checksum:
        * platform/chromium-mac/fast/images/pixel-crack-image-background-webkit-transform-scale-expected.png:
        * platform/chromium-mac/fast/inline-block: Added.
        * platform/chromium-mac/fast/inline-block/14498-positionForCoordinates-expected.checksum: Added.
        * platform/chromium-mac/fast/inline-block/14498-positionForCoordinates-expected.png: Added.
        * platform/chromium-mac/fast/inline/inline-focus-ring-expected.checksum: Added.
        * platform/chromium-mac/fast/inline/inline-focus-ring-expected.png: Added.
        * platform/chromium/test_expectations.txt:

2011-03-29  Adam Barth  <abarth@webkit.org>

        Previously, I forgot to update the rendertree expectations.

        * platform/mac/fast/block/float/float-forced-below-other-floats-expected.txt:

2011-03-29  Emil A Eklund  <eae@chromium.org>

        Reviewed by Dimitri Glazkov.

        DatasetDOMStringMap::item and ::contains copies attribute name string
        https://bugs.webkit.org/show_bug.cgi?id=55645

        * fast/dom/script-tests/dataset-expected.txt:
        * fast/dom/script-tests/dataset.js:
            Added extra test cases for getting fields by property name.

2011-03-29  Adam Barth  <abarth@webkit.org>

        Update expected results now that we don't have a scrollbar to worry about.

        * platform/mac/fast/block/float/float-forced-below-other-floats-expected.checksum:
        * platform/mac/fast/block/float/float-forced-below-other-floats-expected.png:

2011-03-29  Adam Barth  <abarth@webkit.org>

        Update expectations.

        * platform/chromium-mac/fast/multicol/margin-collapse-expected.checksum: Added.
        * platform/chromium-mac/fast/multicol/margin-collapse-expected.png: Added.
        * platform/chromium-mac/fast/multicol/max-height-columns-block-expected.checksum: Added.
        * platform/chromium-mac/fast/multicol/max-height-columns-block-expected.png: Added.
        * platform/chromium-mac/fast/multicol/positioned-split-expected.checksum: Added.
        * platform/chromium-mac/fast/multicol/positioned-split-expected.png: Added.
        * platform/chromium-mac/fast/multicol/single-line-expected.checksum: Added.
        * platform/chromium-mac/fast/multicol/single-line-expected.png: Added.
        * platform/chromium-mac/fast/multicol/table-margin-collapse-expected.checksum: Added.
        * platform/chromium-mac/fast/multicol/table-margin-collapse-expected.png: Added.
        * platform/chromium-mac/fast/multicol/unsplittable-inline-block-expected.checksum: Added.
        * platform/chromium-mac/fast/multicol/unsplittable-inline-block-expected.png: Added.
        * platform/chromium-mac/fast/replaced/absolute-image-sizing-expected.checksum:
        * platform/chromium-mac/fast/replaced/absolute-image-sizing-expected.png:
        * platform/chromium-mac/fast/replaced/image-onload-expected.checksum:
        * platform/chromium-mac/fast/replaced/image-onload-expected.png:
        * platform/chromium-mac/fast/replaced/image-sizing-expected.checksum:
        * platform/chromium-mac/fast/replaced/image-sizing-expected.png:
        * platform/chromium-mac/fast/replaced/image-tag-expected.png: Added.
        * platform/chromium-mac/fast/text/basic/002-expected.checksum: Added.
        * platform/chromium-mac/fast/text/basic/002-expected.png: Added.
        * platform/chromium-mac/fast/text/word-break-soft-hyphen-expected.checksum: Added.
        * platform/chromium-mac/fast/text/word-break-soft-hyphen-expected.png: Added.
        * platform/chromium-mac/media/video-transformed-expected.checksum: Added.
        * platform/chromium-mac/media/video-transformed-expected.png: Added.
        * platform/chromium-mac/scrollbars/listbox-scrollbar-combinations-expected.png: Added.
        * platform/chromium-mac/scrollbars/overflow-scrollbar-combinations-expected.png: Added.
        * platform/chromium-mac/svg/W3C-SVG-1.1/filters-conv-01-f-expected.checksum: Added.
        * platform/chromium-mac/svg/W3C-SVG-1.1/filters-conv-01-f-expected.png: Added.
        * platform/chromium-mac/svg/W3C-SVG-1.1/struct-image-01-t-expected.png: Added.
        * platform/chromium-mac/svg/custom/focus-ring-expected.checksum:
        * platform/chromium-mac/svg/custom/focus-ring-expected.png:
        * platform/chromium-mac/svg/custom/use-in-symbol-with-offset-expected.checksum: Added.
        * platform/chromium-mac/svg/custom/use-in-symbol-with-offset-expected.png: Added.
        * platform/chromium-mac/svg/dynamic-updates/SVGFEConvolveMatrixElement-dom-bias-attr-expected.checksum:
        * platform/chromium-mac/svg/dynamic-updates/SVGFEConvolveMatrixElement-dom-bias-attr-expected.png:
        * platform/chromium-mac/svg/dynamic-updates/SVGFEConvolveMatrixElement-dom-divisor-attr-expected.checksum:
        * platform/chromium-mac/svg/dynamic-updates/SVGFEConvolveMatrixElement-dom-divisor-attr-expected.png:
        * platform/chromium-mac/svg/dynamic-updates/SVGFEConvolveMatrixElement-dom-edgeMode-attr-expected.checksum:
        * platform/chromium-mac/svg/dynamic-updates/SVGFEConvolveMatrixElement-dom-edgeMode-attr-expected.png:
        * platform/chromium-mac/svg/dynamic-updates/SVGFEConvolveMatrixElement-dom-in-attr-expected.checksum:
        * platform/chromium-mac/svg/dynamic-updates/SVGFEConvolveMatrixElement-dom-in-attr-expected.png:
        * platform/chromium-mac/svg/dynamic-updates/SVGFEConvolveMatrixElement-dom-kernelMatrix-attr-expected.checksum:
        * platform/chromium-mac/svg/dynamic-updates/SVGFEConvolveMatrixElement-dom-kernelMatrix-attr-expected.png:
        * platform/chromium-mac/svg/dynamic-updates/SVGFEConvolveMatrixElement-dom-kernelUnitLength-attr-expected.checksum:
        * platform/chromium-mac/svg/dynamic-updates/SVGFEConvolveMatrixElement-dom-kernelUnitLength-attr-expected.png:
        * platform/chromium-mac/svg/dynamic-updates/SVGFEConvolveMatrixElement-dom-order-attr-expected.checksum:
        * platform/chromium-mac/svg/dynamic-updates/SVGFEConvolveMatrixElement-dom-order-attr-expected.png:
        * platform/chromium-mac/svg/dynamic-updates/SVGFEConvolveMatrixElement-dom-preserveAlpha-attr-expected.checksum:
        * platform/chromium-mac/svg/dynamic-updates/SVGFEConvolveMatrixElement-dom-preserveAlpha-attr-expected.png:
        * platform/chromium-mac/svg/dynamic-updates/SVGFEConvolveMatrixElement-dom-targetX-attr-expected.checksum:
        * platform/chromium-mac/svg/dynamic-updates/SVGFEConvolveMatrixElement-dom-targetX-attr-expected.png:
        * platform/chromium-mac/svg/dynamic-updates/SVGFEConvolveMatrixElement-dom-targetY-attr-expected.checksum:
        * platform/chromium-mac/svg/dynamic-updates/SVGFEConvolveMatrixElement-dom-targetY-attr-expected.png:
        * platform/chromium-mac/svg/filters/filterRes-expected.checksum: Added.
        * platform/chromium-mac/svg/filters/filterRes-expected.png: Added.
        * platform/chromium-mac/svg/filters/filteredImage-expected.png: Added.
        * platform/chromium-mac/svg/text/foreignObject-text-clipping-bug-expected.png: Added.
        * platform/chromium-mac/svg/zoom/page/zoom-hixie-mixed-008-expected.checksum: Added.
        * platform/chromium-mac/tables/mozilla/bugs/bug120107-expected.png: Added.
        * platform/chromium-mac/tables/mozilla/bugs/bug12908-2-expected.png: Added.
        * platform/chromium-mac/tables/mozilla/bugs/bug13169-expected.png: Added.
        * platform/chromium-mac/tables/mozilla/bugs/bug196870-expected.png: Added.
        * platform/chromium-mac/tables/mozilla/bugs/bug50695-2-expected.png: Added.
        * platform/chromium-mac/tables/mozilla/core/col_widths_auto_autoFix-expected.png: Added.
        * platform/chromium-mac/tables/mozilla_expected_failures/bugs/bug6933-expected.png: Added.
        * platform/chromium/test_expectations.txt:

2011-03-29  Adam Barth  <abarth@webkit.org>

        Green means pass, AFAICT.

        * platform/chromium-mac/fast/media/media-query-invalid-value-expected.png: Added.
        * platform/chromium-win/fast/media/media-query-invalid-value-expected.png: Added.

2011-03-29  Adam Barth  <abarth@webkit.org>

        Update image result due to different text metrics.

        * platform/chromium-win/printing/return-from-printing-mode-expected.png: Added.

2011-03-29  Sheriff Bot  <webkit.review.bot@gmail.com>

        Unreviewed, rolling out r82317.
        http://trac.webkit.org/changeset/82317
        https://bugs.webkit.org/show_bug.cgi?id=57387

        We do not need these baselines anymore (Requested by
        abarth|gardener on #webkit).

        * platform/chromium-linux/fast/block/float/float-forced-below-other-floats-expected.checksum: Removed.
        * platform/chromium-linux/fast/block/float/float-forced-below-other-floats-expected.png: Removed.

2011-03-29  Adam Barth  <abarth@webkit.org>

        Set overflow: hidden so we don't need to have scrollbars in the
        results.  I've tested that this still shows what looks like the
        intended behavior difference before and after the test.

        * fast/block/float/float-forced-below-other-floats.html:

2011-03-29  Adam Barth  <abarth@webkit.org>

        Scrollbars are different on different platforms.  Including scrollbars
        in tests that don't need them is sadness.

        * platform/chromium-linux/fast/block/float/float-forced-below-other-floats-expected.checksum: Added.
        * platform/chromium-linux/fast/block/float/float-forced-below-other-floats-expected.png: Added.

2011-03-29  Csaba Osztrogonác  <ossy@webkit.org>

        Unreviewed rollout r82282, part of r82288, r82298.

        * fast/canvas/rgba-parsing-expected.txt:
        * fast/canvas/script-tests/rgba-parsing.js:
        * platform/chromium-mac/fast/canvas/rgba-parsing-expected.txt: Removed.
        * platform/chromium-win/fast/canvas/rgba-parsing-expected.txt: Removed.

2011-03-29  Jian Li  <jianli@chromium.org>

        Reviewed by Adam Barth.

        Inline worker powered by blob URL does not work with files URL even if
        allowFileAccessFromFileURLs is enabled
        https://bugs.webkit.org/show_bug.cgi?id=56063

        * fast/files/workers/inline-worker-via-blob-url-expected.txt: Added.
        * fast/files/workers/inline-worker-via-blob-url.html: Added.

2011-03-29  Sheriff Bot  <webkit.review.bot@gmail.com>

        Unreviewed, rolling out r82295 and r82300.
        http://trac.webkit.org/changeset/82295
        http://trac.webkit.org/changeset/82300
        https://bugs.webkit.org/show_bug.cgi?id=57380

        This patch breaks compile on Chromium (Requested by
        abarth|gardener on #webkit).

        * platform/gtk/accessibility/aria-roles-unignored-expected.txt: Removed.
        * platform/gtk/accessibility/aria-roles-unignored.html: Removed.

2011-03-29  David Hyatt  <hyatt@apple.com>

        Reviewed by Simon Fraser.

        <rdar://problem/9194927> REGRESSION (r81691): Page at www.mondaynote.com lays out incorrectly

        Back out the optimization that stopped when it hit the first float. This was an incorrect optimization
        and can't be done without more work.

        Added fast/block/float/float-below-other-floats.html

        * fast/block/float/float-forced-below-other-floats.html: Added.
        * platform/mac/fast/block/float/float-forced-below-other-floats-expected.checksum: Added.
        * platform/mac/fast/block/float/float-forced-below-other-floats-expected.png: Added.
        * platform/mac/fast/block/float/float-forced-below-other-floats-expected.txt: Added.

2011-03-29  Adam Roben  <aroben@apple.com>

        Add passing results for a test that passes in WebKit2 but not WebKit1

        The WebKit1 failure is tracked by <http://webkit.org/b/57334>.

        * platform/win-wk2/http/tests/uri/username-with-no-hostname-expected.txt: Added.

2011-03-29  Adam Barth  <abarth@webkit.org>

        Looks like a rounding issue.

        * platform/chromium-mac/fast/canvas/rgba-parsing-expected.txt: Added.
        * platform/chromium-win/fast/canvas/rgba-parsing-expected.txt: Added.

2011-03-29  Mario Sanchez Prada  <msanchez@igalia.com>

        Reviewed by Martin Robinson.

        [Gtk] Consistent crash from Google/ARIA combobox click
        https://bugs.webkit.org/show_bug.cgi?id=55883

        Added new layout test to check this doesn't crash anymore in GTK.

        * platform/gtk/accessibility/aria-options-and-menuitems-crash-expected.txt: Added.
        * platform/gtk/accessibility/aria-options-and-menuitems-crash.html: Added.

2011-03-29  Mario Sanchez Prada  <msanchez@igalia.com>

        Reviewed by Chris Fleizach.

        AX: GTK: ARIA role is not respected on <p> <label> <div> and <form>
        https://bugs.webkit.org/show_bug.cgi?id=47636

        Added new layout test to check that roles are correct in GTK.

        * platform/gtk/accessibility/aria-roles-unignored-expected.txt: Added.
        * platform/gtk/accessibility/aria-roles-unignored.html: Added.

2011-03-29  Jessie Berlin  <jberlin@apple.com>

        [Snow Leopard WebKit2 Release Tests] fast/images/move-image-to-new-document.html timing out
        since r82087.
        https://bugs.webkit.org/show_bug.cgi?id=57347

        Unreviewed, add fast/images/move-image-to-new-document.html to the skipped list in order to
        get the bots green.

        * platform/mac-wk2/Skipped:

2011-03-29  Philippe Normand  <pnormand@igalia.com>

        Unreviewed, GTK rebaseline of fast/forms/listbox-bidi-align.html.

        * platform/gtk/fast/forms/listbox-bidi-align-expected.txt:

2011-03-29  Andras Becsi  <abecsi@webkit.org>

        Reviewed by Darin Adler.

        CSS: Slow parsing of rgb() with percent values
        https://bugs.webkit.org/show_bug.cgi?id=16708

        Implement fast-path parsing for percentage color values.

        Gain ~30% speedup on http://canvex.lazyilluminati.com/misc/3d.html.

        * fast/canvas/script-tests/rgba-parsing.js: Add cases to test the consistency.

2011-03-29  Ilya Tikhonovsky  <loislo@chromium.org>

        Reviewed by Pavel Feldman.

        Web Inspector: extract InspectorPageAgent from InspectorAgent.
        https://bugs.webkit.org/show_bug.cgi?id=57327

        There are page related methods and inspector related methods in InspectorAgent.
        It would be nice to extract page specific methods for future usage the rest of methods in workers debugger.

        * http/tests/inspector/inspector-test.js:
        (initialize_InspectorTest.InspectorTest.reloadPage):

2011-03-29  Philippe Normand  <pnormand@igalia.com>

        Unreviewed, skip failing test on GTK.

        * platform/gtk/Skipped: Skip
        fast/loader/onload-willSendRequest-null-for-frame.html.

2011-03-29  Philippe Normand  <pnormand@igalia.com>

        Unreviewed, GTK baselines for fast/forms/listbox-bidi-align.html,
        added in r82200.

        * platform/gtk/fast/forms/listbox-bidi-align-expected.checksum: Added.
        * platform/gtk/fast/forms/listbox-bidi-align-expected.png: Added.
        * platform/gtk/fast/forms/listbox-bidi-align-expected.txt: Added.

2011-03-29  Eric Carlson  <eric.carlson@apple.com>

        Reviewed by Dan Bernstein.

        playbackRate should not be set to defaultPlaybackRate in play()
        https://bugs.webkit.org/show_bug.cgi?id=55943

        * media/event-attributes-expected.txt:
        * media/video-playbackrate-expected.txt: Added.
        * media/video-playbackrate.html: Added.

2011-03-29  Adam Barth  <abarth@webkit.org>

        I need to spend some more quality time with the rebaselining tool to
        figure out how to make it update these (or I can update them manually
        when I catch up).

        * platform/chromium/test_expectations.txt:

2011-03-29  Adam Barth  <abarth@webkit.org>

        The text renders slightly differently on Snow Leopard.

        * platform/chromium-mac-snowleopard/fast/forms/listbox-bidi-align-expected.checksum: Added.
        * platform/chromium-mac-snowleopard/fast/forms/listbox-bidi-align-expected.png: Added.
        * platform/chromium-mac-snowleopard/fast/text/drawBidiText-expected.checksum: Added.
        * platform/chromium-mac-snowleopard/fast/text/drawBidiText-expected.png: Added.

2011-03-29  Philippe Normand  <pnormand@igalia.com>

        Reviewed by Martin Robinson.

        [GTK] http/tests/uri/username-with-no-hostname.html fails
        https://bugs.webkit.org/show_bug.cgi?id=57325

        * platform/gtk/Skipped: Unskip fixed test.

2011-03-29  Adam Barth  <abarth@webkit.org>

        This test is flaky on Mac too.

        * platform/chromium/test_expectations.txt:

2011-03-29  Adam Barth  <abarth@webkit.org>

        Add missing expectation (looks like a pass).

        * platform/chromium/svg: Added.
        * platform/chromium/svg/custom: Added.
        * platform/chromium/svg/custom/use-in-symbol-with-offset-expected.checksum: Added.
        * platform/chromium/svg/custom/use-in-symbol-with-offset-expected.png: Added.

2011-03-29  Sergio Villar Senin  <svillar@igalia.com>

        Unreviewed, skipping a test failing on GTK+ bots.

        [GTK] fast/text/justify-ideograph-leading-expansion.html fails on bots
        https://bugs.webkit.org/show_bug.cgi?id=57346

        * platform/gtk/Skipped:

2011-03-29  Jessie Berlin  <jberlin@apple.com>

        webkit2 does not pass tests that require the window to be focused.
        https://bugs.webkit.org/show_bug.cgi?id=56988

        Unreviewed, update the WK2 expected results for pseudo-any.html after r82183.

        * platform/mac-wk2/fast/css/pseudo-any-expected.txt:
        * platform/win-wk2/fast/css/pseudo-any-expected.txt:

2011-03-29  Jessie Berlin  <jberlin@apple.com>

        Add another test that depends on EventSender to the mac-wk2 Skipped file.

        * platform/mac-wk2/Skipped:
        Add fast/events/mouse-relative-position.html.

2011-03-29  Adam Roben  <aroben@apple.com>

        Add Windows expected semi-failure results after r82189

        The test is passing, but we're failing to print out an error message so we don't match the
        expected results. Printing the error message is tracked by <http://webkit.org/b/57334>.

        * platform/win/http/tests/uri/username-with-no-hostname-expected.txt: Added.

2011-03-29  Alexander Pavlov  <apavlov@chromium.org>

        Reviewed by Pavel Feldman.

        Web Inspector: Fix handling of the CSSAgent.setStyleSheetText() results in CSSStyleModel.js
        https://bugs.webkit.org/show_bug.cgi?id=56310

        * inspector/styles/get-set-stylesheet-text-expected.txt: Added.
        * inspector/styles/get-set-stylesheet-text.html: Added.
        * inspector/styles/resources/get-set-stylesheet-text.css: Added.
        (body):
        (/* comment before selector */body.main1/* comment after selector */):
        (body.main2):
        * inspector/styles/styles-add-blank-property.html: Tentatively fix flakiness by waiting for pending dispatches to finish
        * inspector/styles/styles-new-API.html:

2011-03-29  Jeremy Moskovich  <jeremy@chromium.org>

        Reviewed by Eric Seidel.

        Implement text-align:match-parent as -webkit-match-parent.
        https://bugs.webkit.org/show_bug.cgi?id=50951

        Add tests to verify that the implementation works as expected.

        * fast/css/text-align-webkit-match-parent-expected.txt: Added.
        * fast/css/text-align-webkit-match-parent-parse-expected.txt: Added.
        * fast/css/text-align-webkit-match-parent-parse.html: Added.
        * fast/css/text-align-webkit-match-parent.html: Added.

2011-03-29  Adam Roben  <aroben@apple.com>

        Add Windows results for new test added in r82200

        Windows differs from Mac due to a different scrollbar width within the listbox.

        * platform/win/fast/forms/listbox-bidi-align-expected.checksum: Added.
        * platform/win/fast/forms/listbox-bidi-align-expected.png: Added.
        * platform/win/fast/forms/listbox-bidi-align-expected.txt: Added.

2011-03-29  Leo Yang  <leo.yang@torchmobile.com.cn>

        Reviewed by Nikolas Zimmermann.

        Incorrect offset of svg <use> element which is in <symbol> element
        https://bugs.webkit.org/show_bug.cgi?id=57318

        Test case to verify offset of svg <use> element in <symbol> element
        is set correctly.

        * platform/qt/svg/custom/use-in-symbol-with-offset-expected.checksum: Added.
        * platform/qt/svg/custom/use-in-symbol-with-offset-expected.png: Added.
        * svg/custom/use-in-symbol-with-offset-expected.txt: Added.
        * svg/custom/use-in-symbol-with-offset.svg: Added.

2011-03-29  Pavel Feldman  <pfeldman@chromium.org>

        Reviewed by Yury Semikhatsky.

        Web Inspector: document Timeline domain, make timeline event types of type string.
        https://bugs.webkit.org/show_bug.cgi?id=57299

        * inspector/timeline/timeline-enum-stability-expected.txt:
        * inspector/timeline/timeline-event-dispatch-expected.txt:
        * inspector/timeline/timeline-layout-expected.txt:
        * inspector/timeline/timeline-mark-timeline-expected.txt:
        * inspector/timeline/timeline-network-resource-expected.txt:
        * inspector/timeline/timeline-paint-expected.txt:
        * inspector/timeline/timeline-parse-html-expected.txt:
        * inspector/timeline/timeline-recalculate-styles-expected.txt:
        * inspector/timeline/timeline-script-tag-1-expected.txt:
        * inspector/timeline/timeline-script-tag-2-expected.txt:
        * inspector/timeline/timeline-test.js:
        (initialize_Timeline.InspectorTest.startTimeline):
        * platform/chromium/inspector/timeline/timeline-event-dispatch-expected.txt:
        * platform/chromium/inspector/timeline/timeline-mark-timeline-expected.txt:
        * platform/chromium/inspector/timeline/timeline-network-resource-expected.txt:
        * platform/chromium/inspector/timeline/timeline-paint-expected.txt:
        * platform/chromium/inspector/timeline/timeline-parse-html-expected.txt:

2011-03-29  Andrey Adaikin  <aandrey@google.com>

        Reviewed by Pavel Feldman.

        Web Inspector: Fixing live edits tests on chromium.
        https://bugs.webkit.org/show_bug.cgi?id=57316

        * inspector/debugger/live-edit.html:

2011-03-29  Philippe Normand  <pnormand@igalia.com>

        Unreviewed, skip crashing svg test on GTK.

        * platform/gtk/Skipped: Skip svg/text/text-deco-01-b.svg

2011-03-29  Pavel Podivilov  <podivilov@chromium.org>

        Reviewed by Yury Semikhatsky.

        Web Inspector: fix call frames positions in formatted scripts.
        https://bugs.webkit.org/show_bug.cgi?id=57036

        * inspector/debugger/debugger-eval-while-paused.html:

2011-03-29  Emil A Eklund  <eae@chromium.org>

        Reviewed by Darin Adler.

        Fix for execCommand("Delete") with an empty selection.
        https://bugs.webkit.org/show_bug.cgi?id=56652

        Add test for deleting an empty selection from an empty container.

        * editing/execCommand/delete-empty-container-expected.txt: Added.
        * editing/execCommand/delete-empty-container.html: Added.

2011-03-29  Mikhail Naganov  <mnaganov@chromium.org>

        Reviewed by Pavel Feldman.

        Web Inspector: [Chromium] Refactor HeapSnapshot-related code to
        make sure we don't return big amounts of data to forms.
        https://bugs.webkit.org/show_bug.cgi?id=57227

        * inspector/profiler/heap-snapshot.html:

2011-03-29  Yuta Kitamura  <yutak@chromium.org>

        Unreviewed, updating Chromium test expectations.

        * platform/chromium/test_expectations.txt:

2011-03-29  Emil A Eklund  <eae@chromium.org>

        Reviewed by Dimitri Glazkov.

        Relative mouse coordinates recalculated for target
        https://bugs.webkit.org/show_bug.cgi?id=57130

        Add mouse event performance test.

        * fast/events/mouse-relative-position-expected.txt: Added.
        * fast/events/mouse-relative-position.html: Added.
        * perf/mouse-event-expected.txt: Added.
        * perf/mouse-event.html: Added.

2011-03-29  Philippe Normand  <pnormand@igalia.com>

        Unreviewed, skip failing http/tests/uri test on GTK.

        * platform/gtk/Skipped:

2011-03-29  Emil A Eklund  <eae@chromium.org>

        Reviewed by Darin Adler.

        getComputedStyle counterIncrement crash @ WebCore::counterToCSSValue
        https://bugs.webkit.org/show_bug.cgi?id=57266

        Add test for getComputedStyle(...).counterIncrement without a counter.

        * fast/css/getComputedStyle/counterIncrement-without-counter-expected.txt: Added.
        * fast/css/getComputedStyle/counterIncrement-without-counter.html: Added.

2011-03-29  Gavin Peters  <gavinp@chromium.org>

        Reviewed by Tony Gentilcore.

        Implement onerror events for <link rel=prefetch>
        https://bugs.webkit.org/show_bug.cgi?id=57182

        * fast/dom/HTMLLinkElement/prefetch-onerror-expected.txt: Added.
        * fast/dom/HTMLLinkElement/prefetch-onerror.html: Added.
        * platform/gtk/Skipped:
        * platform/mac/Skipped:
        * platform/qt/Skipped:
        * platform/win/Skipped:

2011-03-29  Csaba Osztrogonác  <ossy@webkit.org>

        http/tests/uri/username-with-no-hostname.html fails after r82151
        https://bugs.webkit.org/show_bug.cgi?id=57306

        * platform/qt/Skipped: Add http/tests/uri/username-with-no-hostname.html until fix.

2011-03-29  Eric Seidel  <eric@webkit.org>

        Reviewed by Ryosuke Niwa.

        Add support for parsing unicode-bidi: -webkit-isolate
        https://bugs.webkit.org/show_bug.cgi?id=57181

        * css3/unicode-bidi-insolate-parse-expected.txt: Added.
        * css3/unicode-bidi-insolate-parse.html: Added.

2011-03-29  Philippe Normand  <pnormand@igalia.com>

        Unreviewed, GTK rebaseline for r82144.

        * platform/gtk/fast/block/positioning/052-expected.checksum:
        * platform/gtk/fast/block/positioning/052-expected.png:
        * platform/gtk/fast/block/positioning/052-expected.txt:
        * platform/gtk/fast/forms/input-appearance-preventDefault-expected.checksum:
        * platform/gtk/fast/forms/input-appearance-preventDefault-expected.png:
        * platform/gtk/fast/forms/input-appearance-preventDefault-expected.txt:

2011-03-29  Adam Barth  <abarth@webkit.org>

        Add GPU expectations for compositing tests (these appear to all be passes).

        * platform/chromium-gpu-mac/compositing/geometry/clipped-video-controller-expected.checksum:
        * platform/chromium-gpu-mac/compositing/geometry/clipped-video-controller-expected.png:
        * platform/chromium-gpu-mac/compositing/geometry/video-fixed-scrolling-expected.checksum:
        * platform/chromium-gpu-mac/compositing/geometry/video-fixed-scrolling-expected.png:
        * platform/chromium-gpu-mac/compositing/geometry/video-opacity-overlay-expected.checksum:
        * platform/chromium-gpu-mac/compositing/geometry/video-opacity-overlay-expected.png:
        * platform/chromium-gpu-mac/compositing/layers-inside-overflow-scroll-expected.checksum:
        * platform/chromium-gpu-mac/compositing/layers-inside-overflow-scroll-expected.png:
        * platform/chromium-gpu-mac/compositing/overflow/overflow-compositing-descendant-expected.checksum:
        * platform/chromium-gpu-mac/compositing/overflow/overflow-compositing-descendant-expected.png:
        * platform/chromium-gpu-mac/compositing/overflow/scroll-ancestor-update-expected.checksum:
        * platform/chromium-gpu-mac/compositing/overflow/scroll-ancestor-update-expected.png:
        * platform/chromium-gpu-mac/compositing/reflections/load-video-in-reflection-expected.checksum:
        * platform/chromium-gpu-mac/compositing/reflections/load-video-in-reflection-expected.png:
        * platform/chromium-gpu-mac/compositing/self-painting-layers-expected.checksum:
        * platform/chromium-gpu-mac/compositing/self-painting-layers-expected.png:
        * platform/chromium-gpu-mac/media/video-display-toggle-expected.checksum:
        * platform/chromium-gpu-mac/media/video-display-toggle-expected.png:
        * platform/chromium-gpu-mac/media/video-no-audio-expected.checksum:
        * platform/chromium-gpu-mac/media/video-no-audio-expected.png:
        * platform/chromium-gpu-mac/media/video-volume-slider-expected.checksum:
        * platform/chromium-gpu-mac/media/video-volume-slider-expected.png:

2011-03-29  Adam Barth  <abarth@webkit.org>

        Update IMAGE results to show test progression (yay!).

        * platform/chromium-linux/fast/text/drawBidiText-expected.checksum:
        * platform/chromium-linux/fast/text/drawBidiText-expected.png:
        * platform/chromium-mac/fast/text/drawBidiText-expected.checksum: Added.
        * platform/chromium-mac/fast/text/drawBidiText-expected.png: Added.
        * platform/chromium-win-xp/fast/text/drawBidiText-expected.checksum: Added.
        * platform/chromium-win-xp/fast/text/drawBidiText-expected.png: Added.
        * platform/chromium-win/fast/text/drawBidiText-expected.checksum:
        * platform/chromium-win/fast/text/drawBidiText-expected.png:

2011-03-29  Adam Barth  <abarth@webkit.org>

        Add Windows baselines.

        * platform/chromium-win/fast/forms/listbox-bidi-align-expected.checksum: Added.
        * platform/chromium-win/fast/forms/listbox-bidi-align-expected.png: Added.
        * platform/chromium-win/fast/forms/listbox-bidi-align-expected.txt: Added.

2011-03-29  Adam Barth  <abarth@webkit.org>

        Add platform-specific baselines for listbox-bidi-align.

        * platform/chromium-linux/fast/forms/listbox-bidi-align-expected.checksum: Added.
        * platform/chromium-linux/fast/forms/listbox-bidi-align-expected.png: Added.
        * platform/chromium-linux/fast/forms/listbox-bidi-align-expected.txt: Added.
        * platform/chromium-mac/fast/forms/listbox-bidi-align-expected.checksum: Added.
        * platform/chromium-mac/fast/forms/listbox-bidi-align-expected.png: Added.

2011-03-29  Adam Klein  <adamk@chromium.org>

        Reviewed by Darin Adler.

        removeAllInDirectory() layout test helper method can call successCallback twice
        https://bugs.webkit.org/show_bug.cgi?id=57136

        Fixed to only call successCallback once, thereby avoiding
        flakiness in tests which use this function
        (see http://crbug.com/77442).

        * fast/filesystem/resources/fs-test-util.js:
        (removeAllInDirectory):
        * http/tests/filesystem/resources/fs-test-util.js:
        (removeAllInDirectory):

2011-03-29  Yuta Kitamura  <yutak@chromium.org>

        Unreviewed, add Chromium test expectation for http/tests/uri/username-with-no-hostname.html.

        * platform/chromium/test_expectations.txt:

2011-03-28  Yuta Kitamura  <yutak@chromium.org>

        Unreviewed, fix Chromium test results and expectations.

        * platform/chromium-mac-leopard/fast/block/positioning/047-expected.checksum: Added.
        * platform/chromium-mac-leopard/fast/block/positioning/047-expected.png: Added.
        * platform/chromium-mac/fast/text/justify-ideograph-leading-expansion-expected.txt: Added.
        * platform/chromium/test_expectations.txt:

2011-03-28  Ofri Wolfus  <ofri@google.com>

        Reviewed by Eric Seidel.

        RTL: Select elements with a size attribute are always left aligned.
        https://bugs.webkit.org/show_bug.cgi?id=50928

        Added support for alignment in RenderListBox.

        * fast/forms/listbox-bidi-align.html: Added.
        * platform/mac/fast/forms/listbox-bidi-align-expected.checksum: Added.
        * platform/mac/fast/forms/listbox-bidi-align-expected.png: Added.
        * platform/mac/fast/forms/listbox-bidi-align-expected.txt: Added.
        * platform/mac/fast/text/drawBidiText-expected.checksum: Updated.
        * platform/mac/fast/text/drawBidiText-expected.png: Updated.

2011-03-28  Yuta Kitamura  <yutak@chromium.org>

        Unreviewed. Clean up Chromium test expectations for plugins/embed-prefers-plugins-for-images.html.

        * platform/chromium/test_expectations.txt:

2011-03-28  Maciej Stachowiak  <mjs@apple.com>

        Fix test results that were accidentally committed with a wrong
        result due to a temporary wrong code change.

        * http/tests/uri/username-with-no-hostname-expected.txt:

2011-03-28  Andy Estes  <aestes@apple.com>

        plugins/embed-prefers-plugins-for-images.html fails on non-Apple platforms.
        https://bugs.webkit.org/show_bug.cgi?id=57137

        * platform/chromium/test_expectations.txt: Skip the test.
        * platform/gtk/Skipped: Ditto.
        * platform/qt/Skipped: Ditto.

2011-03-28  Andy Estes  <aestes@apple.com>

        Make embed-prefers-plugins-for-images.html pass on all Apple platforms.
        https://bugs.webkit.org/show_bug.cgi?id=57137

        * platform/mac-leopard/plugins/embed-prefers-plugins-for-images-expected.txt: Removed.
        * platform/mac-snowleopard/plugins/embed-prefers-plugins-for-images-expected.txt: Removed.
        * platform/mac-wk2/plugins/embed-prefers-plugins-for-images-expected.txt: Removed.
        * platform/win/Skipped:
        * plugins/embed-prefers-plugins-for-images-expected.txt:
        * plugins/embed-prefers-plugins-for-images.html:

2011-03-28  Ojan Vafai  <ojan@chromium.org>

        Reviewed by Antti Koivisto.

        fix style sharing with :any and sibling selectors
        https://bugs.webkit.org/show_bug.cgi?id=57211

        Also tests sibling selector style sharing in general since
        no existing tests seem to cover that codepath.

        * fast/css/sibling-selectors-expected.txt: Added.
        * fast/css/sibling-selectors.html: Added.

2011-03-27  Ojan Vafai  <ojan@chromium.org>

        Reviewed by Antti Koivisto.

        fix :-webkit-any(:last-child)
        https://bugs.webkit.org/show_bug.cgi?id=57207

        * fast/css/pseudo-any.html:

2011-03-27  Ojan Vafai  <ojan@chromium.org>

        Reviewed by Antti Koivisto.

        fix :-webkit-any(:last-child)
        https://bugs.webkit.org/show_bug.cgi?id=57207

        * fast/css/pseudo-any.html:

2011-03-28  Andy Estes  <aestes@apple.com>

        Check in failing results for embed-prefers-plugins-for-images-expected.txt in Mac WK2 mode.
        https://bugs.webkit.org/show_bug.cgi?id=57137

        * platform/mac-wk2/plugins: Added.
        * platform/mac-wk2/plugins/embed-prefers-plugins-for-images-expected.txt: Added.

2011-03-28  Maciej Stachowiak  <mjs@apple.com>

        Reviewed by Darin Adler.

        REGRESSION(r82152): fast/dom/HTMLAnchorElement/set-href-attribute-pathname.html
        https://bugs.webkit.org/show_bug.cgi?id=57291

        * http/tests/uri/username-with-no-hostname.html: Adjusted test to be more tolerant
        of exactly how the image load fails.

2011-03-28  Matthew Delaney  <mdelaney@apple.com>

        Reviewed by Adele Peterson.

        Updating small batch of gradient expected results files
        https://bugs.webkit.org/show_bug.cgi?id=57117

        * platform/mac-snowleopard/canvas/philip/tests/2d.gradient.radial.inside2-expected.txt: Added.
        * platform/mac-snowleopard/canvas/philip/tests/2d.gradient.radial.inside3-expected.txt: Added.
        * platform/mac-snowleopard/canvas/philip/tests/2d.gradient.radial.outside1-expected.txt: Added.
        * platform/mac/canvas/philip/tests/2d.gradient.radial.inside2-expected.txt: Removed.
        * platform/mac/canvas/philip/tests/2d.gradient.radial.inside3-expected.txt: Removed.
        * platform/mac/canvas/philip/tests/2d.gradient.radial.outside1-expected.txt: Removed.

2011-03-28  Jessie Berlin  <jberlin@apple.com>

        REGRESSION: http/tests/inspector/console-resource-errors.html failing on WebKit2.
        https://bugs.webkit.org/show_bug.cgi?id=56539

        Unreviewed, remove the platform-specific failing results to get the bots green.
        The test appears to be working in WebKit after r82106 and r82017.

        * platform/mac-wk2/http/tests/inspector/console-resource-errors-expected.txt: Removed.

2011-03-28  Vincent Scheib  <scheib@chromium.org>

        Chromium test expectation for r82159

        * platform/chromium/test_expectations.txt:

2011-03-28  Jessie Berlin  <jberlin@apple.com>

        Add another test that depends on EventSender to the mac-wk2 Skipped file.

        * platform/mac-wk2/Skipped:
        Add fast/events/onchange-text-form-field.html.

2011-03-28  Oliver Hunt  <oliver@apple.com>

        Reviewed by Geoffrey Garen.

        instanceof Array test fails when using iframes
        https://bugs.webkit.org/show_bug.cgi?id=17250

        Add test cases for correct behaviour

        * fast/js/js-constructors-use-correct-global-expected.txt: Added.
        * fast/js/js-constructors-use-correct-global.html: Added.
        * fast/js/resources/js-constructors-use-correct-global.js: Added.

2011-03-28  Vincent Scheib  <scheib@chromium.org>

        Chromium rebaseline for r82144.

        * platform/chromium-linux/fast/block/positioning/058-expected.checksum:
        * platform/chromium-linux/fast/block/positioning/058-expected.png:
        * platform/chromium-win/fast/block/positioning/052-expected.txt:
        * platform/chromium-win/fast/block/positioning/058-expected.checksum:
        * platform/chromium-win/fast/block/positioning/058-expected.png:
        * platform/chromium-win/fast/block/positioning/058-expected.txt:
        * platform/chromium/test_expectations.txt:

2011-03-28  Jer Noble  <jer.noble@apple.com>

        Reviewed by Darin Adler.

        MediaPlayerPrivateAVFoundation should report that it supportsFullScreen()
        https://bugs.webkit.org/show_bug.cgi?id=57249

        * platform/mac/media/controls-strict-expected.txt:
        * platform/mac/media/video-controls-rendering-expected.txt:
        * platform/mac/media/video-display-toggle-expected.txt:
        * platform/mac/media/video-no-audio-expected.txt:
        * platform/mac/media/video-zoom-controls-expected.txt:

2011-03-28  Jer Noble  <jer.noble@apple.com>

        Reviewed by Darin Adler.

        AVFoundation can indeed support full screen.

        MediaPlayerPrivateAVFoundation should report that it supportsFullScreen()
        https://bugs.webkit.org/show_bug.cgi?id=57249

        * platform/mac/media/controls-strict-expected.txt:
        * platform/mac/media/video-controls-rendering-expected.txt:
        * platform/mac/media/video-display-toggle-expected.txt:
        * platform/mac/media/video-no-audio-expected.txt:
        * platform/mac/media/video-zoom-controls-expected.txt:

2011-03-28  Andy Estes  <aestes@apple.com>

        Check in failing results for embed-prefers-plugins-for-images.html on Leopard.
        https://bugs.webkit.org/show_bug.cgi?id=57137

        * platform/mac-leopard/plugins/embed-prefers-plugins-for-images-expected.txt: Added.

2011-03-28  Adele Peterson  <adele@apple.com>

        Reviewed by Eric Seidel.

        Test for <rdar://problem/9112694> REGRESSION (r79411): "Check grammar with spelling" context menu doesn't check as you type
        https://bugs.webkit.org/show_bug.cgi?id=57173

        * editing/spelling/grammar-expected.txt: Added.
        * editing/spelling/grammar.html: Added.
        * platform/gtk/Skipped:
        * platform/mac-wk2/Skipped:
        * platform/qt/Skipped:
        * platform/win/Skipped:

2011-03-28  Dan Bernstein  <mitz@apple.com>

        Reviewed by Darin Adler.

        <rdar://problem/8895977> REGRESSION: multicol crashes with positioned elements
        https://bugs.webkit.org/show_bug.cgi?id=48983

        * fast/multicol/paginated-layer-crash-expected.txt: Added.
        * fast/multicol/paginated-layer-crash.html: Added.

2011-03-28  Vincent Scheib  <scheib@chromium.org>

        Chromium rebaseline for r82123.

        * platform/chromium-mac/fast/repaint/overflow-flipped-writing-mode-block-expected.checksum: Added.
        * platform/chromium-mac/fast/repaint/overflow-flipped-writing-mode-block-expected.png: Added.
        * platform/chromium-mac/fast/repaint/overflow-flipped-writing-mode-table-expected.checksum: Added.
        * platform/chromium-mac/fast/repaint/overflow-flipped-writing-mode-table-expected.png: Added.
        * platform/chromium-win/fast/repaint/overflow-flipped-writing-mode-block-expected.checksum: Added.
        * platform/chromium-win/fast/repaint/overflow-flipped-writing-mode-block-expected.png: Added.
        * platform/chromium-win/fast/repaint/overflow-flipped-writing-mode-table-expected.checksum: Added.
        * platform/chromium-win/fast/repaint/overflow-flipped-writing-mode-table-expected.png: Added.

2011-03-28  Maciej Stachowiak  <mjs@apple.com>

        Reviewed by Darin Adler' .

        URLSs with non-empty username but empty hostname are allowed to load
        https://bugs.webkit.org/show_bug.cgi?id=57220

        * http/tests/uri/username-with-no-hostname-expected.txt: Added.
        * http/tests/uri/username-with-no-hostname.html: Added.

2011-03-28  Adam Barth  <abarth@webkit.org>

        Reviewed by Eric Seidel.

        script-src should block inline event handlers
        https://bugs.webkit.org/show_bug.cgi?id=57212

        * http/tests/security/contentSecurityPolicy/resources/event-handler.pl: Added.
        * http/tests/security/contentSecurityPolicy/script-src-none-inline-event-expected.txt: Added.
        * http/tests/security/contentSecurityPolicy/script-src-none-inline-event.html: Added.

2011-03-28  David Hyatt  <hyatt@apple.com>

        Reviewed by Simon Fraser and Darin Adler.

        https://bugs.webkit.org/show_bug.cgi?id=57221, memory corruption/crashes when positioned objects
        occur at the end of a line.

        The old code and new code for dealing with a trailing space object midpoint manipulated a raw
        array instead of the Vector. Otherwise this corruption would have been caught prior to check-in.

        I have patched the code to only go through the Vector and to make it handle the case that led to
        the corruption. Trailing positioned objects can occur both prior to and following the trailing space
        object's midpoint, so we have to be prepared to deal with both cases.

        This is already tested by fast/block/positioning/052.html, and that test now properly progresses
        like the other positioning tests did.

        * platform/mac/fast/block/positioning/052-expected.txt:

2011-03-28  Sergio Villar Senin  <svillar@igalia.com>

        Unreviewed, added new GTK+ test expectations.

        * platform/gtk/fast/block/positioning/static-inline-position-dynamic-expected.checksum: Added.
        * platform/gtk/fast/block/positioning/static-inline-position-dynamic-expected.png: Added.
        * platform/gtk/fast/block/positioning/static-inline-position-dynamic-expected.txt: Added.
        * platform/gtk/fast/block/positioning/trailing-space-test-expected.checksum: Added.
        * platform/gtk/fast/block/positioning/trailing-space-test-expected.png: Added.
        * platform/gtk/fast/block/positioning/trailing-space-test-expected.txt: Added.
        * platform/gtk/fast/blockflow/fallback-orientation-expected.checksum: Added.
        * platform/gtk/fast/blockflow/fallback-orientation-expected.png: Added.
        * platform/gtk/fast/blockflow/fallback-orientation-expected.txt: Added.
        * platform/gtk/fast/text/justify-ideograph-leading-expansion-expected.checksum: Added.
        * platform/gtk/fast/text/justify-ideograph-leading-expansion-expected.png: Added.
        * platform/gtk/fast/text/justify-ideograph-leading-expansion-expected.txt: Added.
        * platform/gtk/svg/text/text-path-middle-align-expected.checksum: Added.
        * platform/gtk/svg/text/text-path-middle-align-expected.png: Added.
        * platform/gtk/svg/text/text-path-middle-align-expected.txt: Added.

2011-03-28  Jessie Berlin  <jberlin@apple.com>

        Rubber-stamped by Adam Roben.

        [Windows 7 Release Tests] editing/spelling/spelling-backspace-between-lines.html fails.
        https://bugs.webkit.org/show_bug.cgi?id=57243

        * platform/win/Skipped:
        Remove the two tests that were removed in r71392.
        Also, remove spelling-backspace-between-lines.html because it is not flakey and the
        layoutTestController method is implemented on Windows, it just fails with this test.

        * platform/win/editing/spelling/spelling-backspace-between-lines-expected.txt: Added.

2011-03-28  Jessie Berlin  <jberlin@apple.com>

        [Windows 7 Release Tests] fast/blockflow/fallback-orientation.html failing since
        introduction in r82056.
        https://bugs.webkit.org/show_bug.cgi?id=57238

        Unreviewed, add expected failing results, since vertical text is not yet implemented on
        Windows, to get the bots green.

        * platform/win/fast/blockflow/fallback-orientation-expected.checksum: Added.
        * platform/win/fast/blockflow/fallback-orientation-expected.png: Added.
        * platform/win/fast/blockflow/fallback-orientation-expected.txt: Added.

2011-03-28  Sergio Villar Senin  <svillar@igalia.com>

        Reviewed by Martin Robinson.

        [GTK] Fullscreen tests failing after r82084
        https://bugs.webkit.org/show_bug.cgi?id=57219

        Unskipped some fullscreen tests passing now.

        * platform/gtk/Skipped:

2011-03-28  Dan Bernstein  <mitz@apple.com>

        Reviewed by Maciej Stachowiak.

        <rdar://problem/9003382> Incomplete repaint of overflow in flipped lines writing modes
        https://bugs.webkit.org/show_bug.cgi?id=57197

        * fast/repaint/overflow-flipped-writing-mode-block-expected.checksum: Added.
        * fast/repaint/overflow-flipped-writing-mode-block-expected.png: Added.
        * fast/repaint/overflow-flipped-writing-mode-block-expected.txt: Added.
        * fast/repaint/overflow-flipped-writing-mode-block.html: Added.
        * fast/repaint/overflow-flipped-writing-mode-table-expected.checksum: Added.
        * fast/repaint/overflow-flipped-writing-mode-table-expected.png: Added.
        * fast/repaint/overflow-flipped-writing-mode-table-expected.txt: Added.
        * fast/repaint/overflow-flipped-writing-mode-table.html: Added.

2011-03-28  Sergio Villar Senin  <svillar@igalia.com>

        Unreviewed, rebaseline GTK+ test results.

        * platform/gtk/svg/W3C-SVG-1.1/animate-elem-08-t-expected.checksum:
        * platform/gtk/svg/W3C-SVG-1.1/animate-elem-08-t-expected.png:
        * platform/gtk/svg/W3C-SVG-1.1/animate-elem-08-t-expected.txt:

2011-03-28  Jessie Berlin  <jberlin@apple.com>

        http/tests/navigation/changing-frame-hierarchy-in-onload.html flakey on Snow Leopard
        https://bugs.webkit.org/show_bug.cgi?id=57236

        Unreviewed, skip the flakey test in order to get the bots green.

        * platform/mac-snowleopard/Skipped:

2011-03-28  Sergio Villar Senin  <svillar@igalia.com>

        Unreviewed, update pixel test expectations after r82105.

        * platform/gtk/fast/css/text-align-expected.checksum:
        * platform/gtk/fast/css/text-align-expected.png:

2011-03-28  Ryosuke Niwa  <rniwa@webkit.org>

        [Chromium] [Mac Leopard] Update test expectations after r82105.

        * platform/chromium-linux/fast/css/text-align-expected.checksum:
        * platform/chromium-linux/fast/css/text-align-expected.png:
        * platform/chromium-win/fast/css/text-align-expected.checksum:
        * platform/chromium-win/fast/css/text-align-expected.png:
        * platform/chromium-win/fast/css/text-align-expected.txt:
        * platform/mac-leopard/fast/css/text-align-expected.checksum:
        * platform/mac-leopard/fast/css/text-align-expected.png:

2011-03-28  Ryosuke Niwa  <rniwa@webkit.org>

        [GTK] Update test expectations after r82105.

        * platform/gtk/fast/css/text-align-expected.txt:

2011-03-28  Csaba Osztrogonác  <ossy@webkit.org>

        [Qt] Update expectations after r82105.

        * platform/qt/fast/css/text-align-expected.checksum:
        * platform/qt/fast/css/text-align-expected.png:
        * platform/qt/fast/css/text-align-expected.txt:

2011-03-27  Pavel Feldman  <pfeldman@chromium.org>

        Reviewed by Yury Semikhatsky.

        Web Inspector: refactor ResourceTreeModel to remove poor dependencies.
        https://bugs.webkit.org/show_bug.cgi?id=57186

        * http/tests/inspector/console-resource-errors-expected.txt:
        * http/tests/inspector/console-resource-errors.html:
        * http/tests/inspector/resources/console-resource-errors-iframe.html: Added.
        * inspector/report-protocol-errors.html:
        * inspector/storage-panel-dom-storage.html:

2011-03-27  Ryosuke Niwa  <rniwa@webkit.org>

        Reviewed by Eric Seidel.

        WebKit's behavior for text-align inherit differs from other browsers
        https://bugs.webkit.org/show_bug.cgi?id=56377

        Added test more cases to text-align, which already has some tests for text-align: start and text-align: end.

        * fast/css/text-align-expected.txt:
        * fast/css/text-align.html:
        * platform/mac/fast/css/text-align-expected.checksum:
        * platform/mac/fast/css/text-align-expected.png:

2011-03-28  Yuta Kitamura  <yutak@chromium.org>

        Unreviewed. Yet another test result fix for fast/blockflow/fallback-orientation-expected.html.

        * platform/chromium-win/fast/blockflow/fallback-orientation-expected.txt: Renamed from LayoutTests/platform/chromium-win-xp/fast/blockflow/fallback-orientation-expected.txt.

2011-03-28  Yuta Kitamura  <yutak@chromium.org>

        Unreviewed, add Chromium test expectation for inspector/debugger/debugger-activation-crash.html.

        * platform/chromium/test_expectations.txt:

2011-03-28  Yuta Kitamura  <yutak@chromium.org>

        Unreviewed, move Chromium test results into the right directory (move WinXP
        baseline into chromium-win-xp).

        * platform/chromium-win-xp/fast/blockflow/fallback-orientation-expected.checksum: Renamed from LayoutTests/platform/chromium-win/fast/blockflow/fallback-orientation-expected.checksum.
        * platform/chromium-win-xp/fast/blockflow/fallback-orientation-expected.png: Renamed from LayoutTests/platform/chromium-win/fast/blockflow/fallback-orientation-expected.png.
        * platform/chromium-win-xp/fast/blockflow/fallback-orientation-expected.txt: Renamed from LayoutTests/platform/chromium-win/fast/blockflow/fallback-orientation-expected.txt.

2011-03-28  Yuta Kitamura  <yutak@chromium.org>

        Unreviewed, add new Chromium test results and expectation.

        * platform/chromium-mac-snowleopard/fast/block/positioning/047-expected.checksum: Added.
        * platform/chromium-mac-snowleopard/fast/block/positioning/047-expected.png: Added.
        * platform/chromium/test_expectations.txt:

2011-03-26  Mario Sanchez Prada  <msanchez@igalia.com>

        Reviewed by Martin Robinson.

        [GTK] Expose the AtkValue interface for WAI-ARIA sliders
        https://bugs.webkit.org/show_bug.cgi?id=56655

        New test to check WAI-ARIA sliders required attributes.

        * platform/gtk/accessibility/aria-slider-required-attributes-expected.txt: Added.
        * platform/gtk/accessibility/aria-slider-required-attributes.html: Added.

2011-03-28  Sergio Villar Senin  <svillar@igalia.com>

        [GTK] Fullscreen tests failing after r82084
        https://bugs.webkit.org/show_bug.cgi?id=57219

        Skipping some fullscreen tests failing since r82084

        * platform/gtk/Skipped:

2011-03-28  Maciej Stachowiak  <mjs@apple.com>

        Reviewed by Dan Bernstein.

        Assigning location.path to something that doesn't start with / mangles the authority
        https://bugs.webkit.org/show_bug.cgi?id=57209
        <rdar://problem/9195132>

        * http/tests/uri/assign-path-with-leading-slash-expected.txt: Added.
        * http/tests/uri/assign-path-with-leading-slash.html: Added.
        * http/tests/uri/assign-path-without-leading-slash-expected.txt: Added.
        * http/tests/uri/assign-path-without-leading-slash.html: Added.
        * http/tests/uri/resources/assign-path-landing.html: Added.

2011-03-28  Yuta Kitamura  <yutak@chromium.org>

        Unreviewed, add Chromium test expectation for fast/text/justify-ideograph-leading-expansion.html.

        * platform/chromium/test_expectations.txt:

2011-03-28  Yuta Kitamura  <yutak@chromium.org>

        Unreviewed, update Chromium test results for plugins/plugin-javascript-access.html.

        * platform/chromium-linux/plugins/plugin-javascript-access-expected.txt:
        * platform/chromium-win/plugins/plugin-javascript-access-expected.txt:
        * platform/chromium/test_expectations.txt:

2011-03-27  Fumitoshi Ukai  <ukai@chromium.org>

        Reviewed by Alexey Proskuryakov.

        Don't call WebSocket::didClose() more than once.
        https://bugs.webkit.org/show_bug.cgi?id=57081

        If WebSocket close() is called, and connection is established, then
        it will call didClose() that resets m_channel to 0.
        After that, when connection is closed, WebSocketChannel will call
        didClose for the WebSocket instance.

        * http/tests/websocket/tests/close-unref-websocket-expected.txt: Added.
        * http/tests/websocket/tests/close-unref-websocket.html: Added.
        * http/tests/websocket/tests/hanging-handshake_wsh.py: Added.

2011-03-27  Yuta Kitamura  <yutak@chromium.org>

        Unreviewed, add Chromium test results for fast/blockflow/fallback-orientation.html.

        * platform/chromium-mac-leopard/fast/blockflow/fallback-orientation-expected.checksum: Added.
        * platform/chromium-mac-leopard/fast/blockflow/fallback-orientation-expected.png: Added.
        * platform/chromium-win-vista/fast/blockflow/fallback-orientation-expected.checksum: Added.
        * platform/chromium-win-vista/fast/blockflow/fallback-orientation-expected.png: Added.

2011-03-27  Adam Barth  <abarth@webkit.org>

        Reviewed by Eric Seidel.

        Fix script-src redirect handling
        https://bugs.webkit.org/show_bug.cgi?id=57196

        Test both allow => disallow and disallow => allow redirect cases.
        Previously, we had incorrect expectations for one of the redirect
        cases.  Also, I've updated the policy syntax to match the default-src
        syntax.

        * http/tests/security/contentSecurityPolicy/script-src-redirect-expected.txt:
        * http/tests/security/contentSecurityPolicy/script-src-redirect.html:

2011-03-27  Yuta Kitamura  <yutak@chromium.org>

        Unreviewed, add new Chromium test result and expectations.

        * platform/chromium-linux/svg/W3C-SVG-1.1/animate-elem-08-t-expected.checksum:
        * platform/chromium-linux/svg/W3C-SVG-1.1/animate-elem-08-t-expected.png:
        * platform/chromium-win/svg/W3C-SVG-1.1/animate-elem-08-t-expected.checksum:
        * platform/chromium-win/svg/W3C-SVG-1.1/animate-elem-08-t-expected.png:
        * platform/chromium-win/svg/W3C-SVG-1.1/animate-elem-08-t-expected.txt:
        * platform/chromium/test_expectations.txt:

2011-03-27  Rob Buis  <rwlbuis@gmail.com>

        Unreviewed, update improve test result.

        * platform/mac-leopard/svg/W3C-SVG-1.1/animate-elem-08-t-expected.checksum:
        * platform/mac-leopard/svg/W3C-SVG-1.1/animate-elem-08-t-expected.png:
        * platform/mac/svg/W3C-SVG-1.1/animate-elem-08-t-expected.checksum:
        * platform/mac/svg/W3C-SVG-1.1/animate-elem-08-t-expected.png:
        * platform/mac/svg/W3C-SVG-1.1/animate-elem-08-t-expected.txt:

2011-03-27  Yuta Kitamura  <yutak@chromium.org>

        Unreviewed, update Chromium test expectations.

        * platform/chromium/test_expectations.txt:

2011-03-27  Yuta Kitamura  <yutak@chromium.org>

        Unreviewed, add new Chromium test results.

        * platform/chromium-linux/svg/text/text-path-middle-align-expected.checksum: Added.
        * platform/chromium-linux/svg/text/text-path-middle-align-expected.png: Added.
        * platform/chromium-win/fast/blockflow/fallback-orientation-expected.checksum: Added.
        * platform/chromium-win/fast/blockflow/fallback-orientation-expected.png: Added.
        * platform/chromium-win/fast/blockflow/fallback-orientation-expected.txt: Added.
        * platform/chromium-win/svg/text/text-path-middle-align-expected.checksum: Added.
        * platform/chromium-win/svg/text/text-path-middle-align-expected.png: Added.
        * platform/chromium-win/svg/text/text-path-middle-align-expected.txt: Added.

2011-03-27  Yuta Kitamura  <yutak@chromium.org>

        Unreviewed, fix Chromium text expectation.

        * platform/chromium/test_expectations.txt:

2011-03-27  Rob Buis  <rwlbuis@gmail.com>

        Reviewed by Nikolas Zimmermann.

        Text on path positioning at zero startOffset
        https://bugs.webkit.org/show_bug.cgi?id=56245

        * platform/mac/svg/text/text-path-middle-align-expected.checksum: Added.
        * platform/mac/svg/text/text-path-middle-align-expected.png: Added.
        * platform/mac/svg/text/text-path-middle-align-expected.txt: Added.
        * svg/text/text-path-middle-align.svg: Added.

2011-03-26  Dan Bernstein  <mitz@apple.com>

        Reviewed by Maciej Stachowiak.

        <rdar://problem/9180716> REGRESSION (r80582): Angle bracket rendered upright in vertical mode
        https://bugs.webkit.org/show_bug.cgi?id=57169

        * fast/blockflow/fallback-orientation.html: Added.
        * platform/mac/fast/blockflow/fallback-orientation-expected.checksum: Added.
        * platform/mac/fast/blockflow/fallback-orientation-expected.png: Added.
        * platform/mac/fast/blockflow/fallback-orientation-expected.txt: Added.

2011-03-26  Maciej Stachowiak  <mjs@apple.com>

        Reviewed by Darin Adler.

        Follow-up fix for crash with giant inline stylesheets - actually don't crash, and add test
        https://bugs.webkit.org/show_bug.cgi?id=56150

        * fast/css/giant-stylesheet-crash-expected.txt: Added.
        * fast/css/giant-stylesheet-crash.html: Added.

2011-03-26  Martin Robinson  <mrobinson@igalia.com>

        [GTK] layoutTestController.overridePreference("WebKitDefaultFontSize"...) does not take into account screen DPI
        https://bugs.webkit.org/show_bug.cgi?id=57160

        Skip failing test. This bug was uncovered by r82033.

        * platform/gtk/Skipped:

2011-03-26  Martin Robinson  <mrobinson@igalia.com>

        Remove a test from the GTK+ skipped list that no longer exists.

        * platform/gtk/Skipped: Update the skipped list.

2011-03-26  Martin Robinson  <mrobinson@igalia.com>

        Rebaseline a few more GTK+ tests after r82033.

        * platform/gtk/fast/forms/input-appearance-spinbutton-disabled-readonly-expected.checksum:
        * platform/gtk/fast/forms/input-appearance-spinbutton-disabled-readonly-expected.png:
        * platform/gtk/fast/forms/input-appearance-spinbutton-disabled-readonly-expected.txt:
        * platform/gtk/fast/forms/input-appearance-spinbutton-layer-expected.checksum:
        * platform/gtk/fast/forms/input-appearance-spinbutton-layer-expected.png:
        * platform/gtk/fast/forms/input-appearance-spinbutton-layer-expected.txt:
        * platform/gtk/fast/forms/input-appearance-spinbutton-visibility-expected.checksum:
        * platform/gtk/fast/forms/input-appearance-spinbutton-visibility-expected.png:
        * platform/gtk/fast/forms/input-appearance-spinbutton-visibility-expected.txt:

2011-03-26  Martin Robinson  <mrobinson@igalia.com>

        Reviewed by Xan Lopez.

        [GTK] Force DumpRenderTree to use 96 DPI
        https://bugs.webkit.org/show_bug.cgi?id=56866

        Update GTK+ test results which now have differ.

        * platform/gtk/editing/pasteboard/4641033-expected.checksum:
        * platform/gtk/editing/pasteboard/4641033-expected.png:
        * platform/gtk/editing/pasteboard/4641033-expected.txt:
        * platform/gtk/editing/pasteboard/4944770-1-expected.checksum:
        * platform/gtk/editing/pasteboard/4944770-1-expected.png:
        * platform/gtk/editing/pasteboard/4944770-1-expected.txt:
        * platform/gtk/editing/pasteboard/4944770-2-expected.checksum:
        * platform/gtk/editing/pasteboard/4944770-2-expected.png:
        * platform/gtk/editing/pasteboard/4944770-2-expected.txt:
        * platform/gtk/editing/selection/caret-before-select-expected.checksum:
        * platform/gtk/editing/selection/caret-before-select-expected.png:
        * platform/gtk/editing/selection/caret-before-select-expected.txt:
        * platform/gtk/editing/selection/replaced-boundaries-3-expected.checksum:
        * platform/gtk/editing/selection/replaced-boundaries-3-expected.png:
        * platform/gtk/editing/selection/replaced-boundaries-3-expected.txt:
        * platform/gtk/editing/selection/select-box-expected.checksum:
        * platform/gtk/editing/selection/select-box-expected.png:
        * platform/gtk/editing/selection/select-box-expected.txt:
        * platform/gtk/editing/selection/select-element-paragraph-boundary-expected.checksum:
        * platform/gtk/editing/selection/select-element-paragraph-boundary-expected.png:
        * platform/gtk/editing/selection/select-element-paragraph-boundary-expected.txt:
        * platform/gtk/fast/block/float/float-avoidance-expected.checksum:
        * platform/gtk/fast/block/float/float-avoidance-expected.png:
        * platform/gtk/fast/block/margin-collapse/103-expected.checksum:
        * platform/gtk/fast/block/margin-collapse/103-expected.png:
        * platform/gtk/fast/forms/001-expected.checksum:
        * platform/gtk/fast/forms/001-expected.png:
        * platform/gtk/fast/forms/001-expected.txt:
        * platform/gtk/fast/forms/003-expected.checksum:
        * platform/gtk/fast/forms/003-expected.png:
        * platform/gtk/fast/forms/003-expected.txt:
        * platform/gtk/fast/forms/004-expected.checksum:
        * platform/gtk/fast/forms/004-expected.png:
        * platform/gtk/fast/forms/004-expected.txt:
        * platform/gtk/fast/forms/HTMLOptionElement_label01-expected.checksum:
        * platform/gtk/fast/forms/HTMLOptionElement_label01-expected.png:
        * platform/gtk/fast/forms/HTMLOptionElement_label01-expected.txt:
        * platform/gtk/fast/forms/HTMLOptionElement_label02-expected.checksum:
        * platform/gtk/fast/forms/HTMLOptionElement_label02-expected.png:
        * platform/gtk/fast/forms/HTMLOptionElement_label02-expected.txt:
        * platform/gtk/fast/forms/HTMLOptionElement_label03-expected.checksum:
        * platform/gtk/fast/forms/HTMLOptionElement_label03-expected.png:
        * platform/gtk/fast/forms/HTMLOptionElement_label03-expected.txt:
        * platform/gtk/fast/forms/HTMLOptionElement_label04-expected.checksum:
        * platform/gtk/fast/forms/HTMLOptionElement_label04-expected.png:
        * platform/gtk/fast/forms/HTMLOptionElement_label04-expected.txt:
        * platform/gtk/fast/forms/HTMLOptionElement_label06-expected.checksum:
        * platform/gtk/fast/forms/HTMLOptionElement_label06-expected.png:
        * platform/gtk/fast/forms/HTMLOptionElement_label06-expected.txt:
        * platform/gtk/fast/forms/HTMLOptionElement_label07-expected.checksum:
        * platform/gtk/fast/forms/HTMLOptionElement_label07-expected.png:
        * platform/gtk/fast/forms/HTMLOptionElement_label07-expected.txt:
        * platform/gtk/fast/forms/basic-selects-expected.checksum:
        * platform/gtk/fast/forms/basic-selects-expected.png:
        * platform/gtk/fast/forms/basic-selects-expected.txt:
        * platform/gtk/fast/forms/control-clip-overflow-expected.checksum:
        * platform/gtk/fast/forms/control-clip-overflow-expected.png:
        * platform/gtk/fast/forms/control-restrict-line-height-expected.checksum:
        * platform/gtk/fast/forms/control-restrict-line-height-expected.png:
        * platform/gtk/fast/forms/control-restrict-line-height-expected.txt:
        * platform/gtk/fast/forms/disabled-select-change-index-expected.checksum:
        * platform/gtk/fast/forms/disabled-select-change-index-expected.png:
        * platform/gtk/fast/forms/disabled-select-change-index-expected.txt:
        * platform/gtk/fast/forms/form-element-geometry-expected.checksum:
        * platform/gtk/fast/forms/form-element-geometry-expected.png:
        * platform/gtk/fast/forms/form-element-geometry-expected.txt:
        * platform/gtk/fast/forms/menulist-deselect-update-expected.checksum:
        * platform/gtk/fast/forms/menulist-deselect-update-expected.png:
        * platform/gtk/fast/forms/menulist-deselect-update-expected.txt:
        * platform/gtk/fast/forms/menulist-narrow-width-expected.checksum:
        * platform/gtk/fast/forms/menulist-narrow-width-expected.png:
        * platform/gtk/fast/forms/menulist-narrow-width-expected.txt:
        * platform/gtk/fast/forms/menulist-no-overflow-expected.checksum:
        * platform/gtk/fast/forms/menulist-no-overflow-expected.png:
        * platform/gtk/fast/forms/menulist-no-overflow-expected.txt:
        * platform/gtk/fast/forms/menulist-restrict-line-height-expected.checksum:
        * platform/gtk/fast/forms/menulist-restrict-line-height-expected.png:
        * platform/gtk/fast/forms/menulist-restrict-line-height-expected.txt:
        * platform/gtk/fast/forms/menulist-separator-painting-expected.checksum:
        * platform/gtk/fast/forms/menulist-separator-painting-expected.png:
        * platform/gtk/fast/forms/menulist-separator-painting-expected.txt:
        * platform/gtk/fast/forms/menulist-style-color-expected.checksum:
        * platform/gtk/fast/forms/menulist-style-color-expected.png:
        * platform/gtk/fast/forms/menulist-style-color-expected.txt:
        * platform/gtk/fast/forms/menulist-width-change-expected.checksum:
        * platform/gtk/fast/forms/menulist-width-change-expected.png:
        * platform/gtk/fast/forms/menulist-width-change-expected.txt:
        * platform/gtk/fast/forms/option-script-expected.checksum:
        * platform/gtk/fast/forms/option-script-expected.png:
        * platform/gtk/fast/forms/option-script-expected.txt:
        * platform/gtk/fast/forms/option-strip-whitespace-expected.checksum:
        * platform/gtk/fast/forms/option-strip-whitespace-expected.png:
        * platform/gtk/fast/forms/option-strip-whitespace-expected.txt:
        * platform/gtk/fast/forms/option-text-clip-expected.checksum:
        * platform/gtk/fast/forms/option-text-clip-expected.png:
        * platform/gtk/fast/forms/select-align-expected.checksum:
        * platform/gtk/fast/forms/select-align-expected.png:
        * platform/gtk/fast/forms/select-baseline-expected.checksum:
        * platform/gtk/fast/forms/select-baseline-expected.png:
        * platform/gtk/fast/forms/select-baseline-expected.txt:
        * platform/gtk/fast/forms/select-change-listbox-to-popup-expected.checksum:
        * platform/gtk/fast/forms/select-change-listbox-to-popup-expected.png:
        * platform/gtk/fast/forms/select-change-listbox-to-popup-expected.txt:
        * platform/gtk/fast/forms/select-dirty-parent-pref-widths-expected.checksum:
        * platform/gtk/fast/forms/select-dirty-parent-pref-widths-expected.png:
        * platform/gtk/fast/forms/select-dirty-parent-pref-widths-expected.txt:
        * platform/gtk/fast/forms/select-disabled-appearance-expected.checksum:
        * platform/gtk/fast/forms/select-disabled-appearance-expected.png:
        * platform/gtk/fast/forms/select-disabled-appearance-expected.txt:
        * platform/gtk/fast/forms/select-initial-position-expected.checksum:
        * platform/gtk/fast/forms/select-initial-position-expected.png:
        * platform/gtk/fast/forms/select-initial-position-expected.txt:
        * platform/gtk/fast/forms/select-selected-expected.checksum:
        * platform/gtk/fast/forms/select-selected-expected.png:
        * platform/gtk/fast/forms/select-selected-expected.txt:
        * platform/gtk/fast/forms/select-size-expected.checksum:
        * platform/gtk/fast/forms/select-size-expected.png:
        * platform/gtk/fast/forms/select-size-expected.txt:
        * platform/gtk/fast/forms/select-style-expected.checksum:
        * platform/gtk/fast/forms/select-style-expected.png:
        * platform/gtk/fast/forms/select-style-expected.txt:
        * platform/gtk/fast/forms/select-visual-hebrew-expected.checksum:
        * platform/gtk/fast/forms/select-visual-hebrew-expected.png:
        * platform/gtk/fast/forms/select-visual-hebrew-expected.txt:
        * platform/gtk/fast/forms/select-writing-direction-natural-expected.checksum:
        * platform/gtk/fast/forms/select-writing-direction-natural-expected.png:
        * platform/gtk/fast/forms/select-writing-direction-natural-expected.txt:
        * platform/gtk/fast/forms/stuff-on-my-optgroup-expected.checksum:
        * platform/gtk/fast/forms/stuff-on-my-optgroup-expected.png:
        * platform/gtk/fast/forms/stuff-on-my-optgroup-expected.txt:
        * platform/gtk/fast/html/keygen-expected.checksum:
        * platform/gtk/fast/html/keygen-expected.png:
        * platform/gtk/fast/html/keygen-expected.txt:
        * platform/gtk/fast/invalid/014-expected.checksum:
        * platform/gtk/fast/invalid/014-expected.png:
        * platform/gtk/fast/invalid/014-expected.txt:
        * platform/gtk/fast/invalid/residual-style-expected.txt:
        * platform/gtk/fast/parser/document-write-option-expected.checksum:
        * platform/gtk/fast/parser/document-write-option-expected.png:
        * platform/gtk/fast/parser/document-write-option-expected.txt:
        * platform/gtk/fast/replaced/replaced-breaking-expected.checksum:
        * platform/gtk/fast/replaced/replaced-breaking-expected.png:
        * platform/gtk/fast/replaced/replaced-breaking-expected.txt:
        * platform/gtk/fast/replaced/replaced-breaking-mixture-expected.checksum:
        * platform/gtk/fast/replaced/replaced-breaking-mixture-expected.png:
        * platform/gtk/fast/replaced/replaced-breaking-mixture-expected.txt:
        * platform/gtk/fast/replaced/three-selects-break-expected.checksum:
        * platform/gtk/fast/replaced/three-selects-break-expected.png:
        * platform/gtk/fast/replaced/three-selects-break-expected.txt:
        * platform/gtk/fast/replaced/width100percent-menulist-expected.checksum:
        * platform/gtk/fast/replaced/width100percent-menulist-expected.png:
        * platform/gtk/fast/replaced/width100percent-menulist-expected.txt:
        * platform/gtk/fast/text/international/bidi-menulist-expected.checksum:
        * platform/gtk/fast/text/international/bidi-menulist-expected.png:
        * platform/gtk/fast/text/international/bidi-menulist-expected.txt:
        * platform/gtk/fast/text/international/pop-up-button-text-alignment-and-direction-expected.checksum:
        * platform/gtk/fast/text/international/pop-up-button-text-alignment-and-direction-expected.png:
        * platform/gtk/fast/text/international/pop-up-button-text-alignment-and-direction-expected.txt:
        * platform/gtk/http/tests/navigation/javascriptlink-frames-expected.txt:
        * platform/gtk/tables/mozilla/bugs/bug1188-expected.checksum:
        * platform/gtk/tables/mozilla/bugs/bug1188-expected.png:
        * platform/gtk/tables/mozilla/bugs/bug1188-expected.txt:
        * platform/gtk/tables/mozilla/bugs/bug18359-expected.checksum:
        * platform/gtk/tables/mozilla/bugs/bug18359-expected.png:
        * platform/gtk/tables/mozilla/bugs/bug18359-expected.txt:
        * platform/gtk/tables/mozilla/bugs/bug2479-3-expected.checksum:
        * platform/gtk/tables/mozilla/bugs/bug2479-3-expected.png:
        * platform/gtk/tables/mozilla/bugs/bug2479-3-expected.txt:
        * platform/gtk/tables/mozilla/bugs/bug2479-4-expected.txt:
        * platform/gtk/tables/mozilla/bugs/bug29326-expected.checksum:
        * platform/gtk/tables/mozilla/bugs/bug29326-expected.png:
        * platform/gtk/tables/mozilla/bugs/bug29326-expected.txt:
        * platform/gtk/tables/mozilla/bugs/bug33855-expected.checksum:
        * platform/gtk/tables/mozilla/bugs/bug33855-expected.png:
        * platform/gtk/tables/mozilla/bugs/bug33855-expected.txt:
        * platform/gtk/tables/mozilla/bugs/bug4382-expected.checksum:
        * platform/gtk/tables/mozilla/bugs/bug4382-expected.png:
        * platform/gtk/tables/mozilla/bugs/bug4382-expected.txt:
        * platform/gtk/tables/mozilla/bugs/bug96334-expected.checksum:
        * platform/gtk/tables/mozilla/bugs/bug96334-expected.png:
        * platform/gtk/tables/mozilla/bugs/bug96334-expected.txt:
        * platform/gtk/tables/mozilla/core/margins-expected.checksum:
        * platform/gtk/tables/mozilla/core/margins-expected.png:
        * platform/gtk/tables/mozilla/core/margins-expected.txt:
        * platform/gtk/tables/mozilla/dom/tableDom-expected.checksum:
        * platform/gtk/tables/mozilla/dom/tableDom-expected.png:
        * platform/gtk/tables/mozilla/dom/tableDom-expected.txt:
        * platform/gtk/tables/mozilla_expected_failures/bugs/bug2479-5-expected.checksum:
        * platform/gtk/tables/mozilla_expected_failures/bugs/bug2479-5-expected.png:
        * platform/gtk/tables/mozilla_expected_failures/bugs/bug2479-5-expected.txt:
        * platform/gtk/transforms/2d/zoom-menulist-expected.checksum:
        * platform/gtk/transforms/2d/zoom-menulist-expected.png:
        * platform/gtk/transforms/2d/zoom-menulist-expected.txt:

2011-03-26  Martin Robinson  <mrobinson@igalia.com>

        Rebaseline many GTK+ tests after r81994.

        * platform/gtk/fast/block/positioning/056-expected.txt:
        * platform/gtk/fast/block/positioning/auto/005-expected.checksum:
        * platform/gtk/fast/block/positioning/auto/005-expected.png:
        * platform/gtk/fast/block/positioning/auto/005-expected.txt:
        * platform/gtk/fast/block/positioning/auto/006-expected.checksum:
        * platform/gtk/fast/block/positioning/auto/006-expected.png:
        * platform/gtk/fast/block/positioning/auto/006-expected.txt:
        * platform/gtk/fast/block/positioning/auto/vertical-lr/005-expected.checksum:
        * platform/gtk/fast/block/positioning/auto/vertical-lr/005-expected.png:
        * platform/gtk/fast/block/positioning/auto/vertical-lr/005-expected.txt:
        * platform/gtk/fast/block/positioning/auto/vertical-lr/006-expected.checksum:
        * platform/gtk/fast/block/positioning/auto/vertical-lr/006-expected.png:
        * platform/gtk/fast/block/positioning/auto/vertical-lr/006-expected.txt:
        * platform/gtk/fast/block/positioning/auto/vertical-rl/005-expected.checksum:
        * platform/gtk/fast/block/positioning/auto/vertical-rl/005-expected.png:
        * platform/gtk/fast/block/positioning/auto/vertical-rl/005-expected.txt:
        * platform/gtk/fast/block/positioning/auto/vertical-rl/006-expected.checksum:
        * platform/gtk/fast/block/positioning/auto/vertical-rl/006-expected.png:
        * platform/gtk/fast/block/positioning/auto/vertical-rl/006-expected.txt:
        * platform/gtk/fast/block/positioning/fixed-positioning-scrollbar-bug-expected.txt:
        * platform/gtk/fast/block/positioning/inline-block-relposition-expected.checksum:
        * platform/gtk/fast/block/positioning/inline-block-relposition-expected.png:
        * platform/gtk/fast/block/positioning/inline-block-relposition-expected.txt:
        * platform/gtk/fast/block/positioning/relative-overflow-block-expected.txt:
        * platform/gtk/fast/clip/001-expected.txt:
        * platform/gtk/fast/clip/004-expected.txt:
        * platform/gtk/fast/clip/006-expected.txt:
        * platform/gtk/fast/clip/007-expected.txt:
        * platform/gtk/fast/clip/008-expected.txt:
        * platform/gtk/fast/clip/009-expected.txt:
        * platform/gtk/fast/clip/010-expected.txt:
        * platform/gtk/fast/clip/011-expected.txt:
        * platform/gtk/fast/clip/012-expected.txt:
        * platform/gtk/fast/clip/013-expected.txt:
        * platform/gtk/fast/clip/014-expected.txt:
        * platform/gtk/fast/clip/nestedTransparencyClip-expected.txt:
        * platform/gtk/fast/clip/outline-overflowClip-expected.txt:
        * platform/gtk/fast/forms/input-appearance-preventDefault-expected.txt:
        * platform/gtk/fast/invalid/014-expected.txt:
        * platform/gtk/fast/layers/layer-visibility-expected.txt:
        * platform/gtk/fast/repaint/layout-state-scrolloffset-expected.txt:
        * platform/gtk/fast/repaint/layout-state-scrolloffset2-expected.txt:
        * platform/gtk/fast/repaint/layout-state-scrolloffset3-expected.txt:
        * platform/gtk/tables/mozilla/bugs/bug51140-expected.txt:

2011-03-26  Csaba Osztrogonác  <ossy@webkit.org>

        Update Qt specific expected results after r81992.

        * platform/qt/fast/repaint/layout-state-scrolloffset-expected.checksum:
        * platform/qt/fast/repaint/layout-state-scrolloffset-expected.png:
        * platform/qt/fast/repaint/layout-state-scrolloffset-expected.txt:
        * platform/qt/fast/repaint/layout-state-scrolloffset2-expected.checksum:
        * platform/qt/fast/repaint/layout-state-scrolloffset2-expected.png:
        * platform/qt/fast/repaint/layout-state-scrolloffset2-expected.txt:
        * platform/qt/fast/repaint/layout-state-scrolloffset3-expected.checksum:
        * platform/qt/fast/repaint/layout-state-scrolloffset3-expected.png:
        * platform/qt/fast/repaint/layout-state-scrolloffset3-expected.txt:
        * platform/qt/tables/mozilla/bugs/bug51140-expected.txt:

2011-03-26  Adam Barth  <abarth@webkit.org>

        Reviewed by Eric Seidel.

        Teach Content Security Policy how to parse source-list
        https://bugs.webkit.org/show_bug.cgi?id=54799

        Test a variety of source-list parsing cases.  There's a bunch more
        cases we could be testing.  We'll add more over time.

        * http/tests/security/contentSecurityPolicy/source-list-parsing-expected.txt: Added.
        * http/tests/security/contentSecurityPolicy/source-list-parsing.html: Added.

2011-03-26  Dan Bernstein  <mitz@apple.com>

        Added platform-specific expected results for a new test.

        * platform/mac-snowleopard/fast/text/justify-ideograph-leading-expansion-expected.txt: Added.
        * platform/win/fast/text/justify-ideograph-leading-expansion-expected.txt: Added.

2011-03-25  Vincent Scheib  <scheib@chromium.org>

        Chromium test_expectations: bug added for tests impacted by r81992

        * platform/chromium/test_expectations.txt:

2011-03-25  Andy Estes  <aestes@apple.com>

        plugins/embed-prefers-plugins-for-images.html only passing on SnowLeopard.
        https://bugs.webkit.org/show_bug.cgi?id=57137

        Check in failing results for this test (except for on SnowLeopard) until
        the failure can be diagnosed.

        * platform/mac-snowleopard/plugins: Added.
        * platform/mac-snowleopard/plugins/embed-prefers-plugins-for-images-expected.txt: Added.
        * plugins/embed-prefers-plugins-for-images-expected.txt:

2011-03-25  Andy Estes  <aestes@apple.com>

        LayoutTestController.setPluginsEnabled() isn't implemented in WebKit2,
        and that is now required for fast/images/embed-image.html.

        * platform/mac-wk2/Skipped: Skip fast/images/embed-image.html

2011-03-25  Andy Estes  <aestes@apple.com>

        Skip fast/images/embed-image.html on Windows XP
        https://bugs.webkit.org/show_bug.cgi?id=57135

        It would appear that the Windows XP bot is loading a plug-in despite
        the test calling layoutTestController.setPluginsEnabled(false).

        * platform/win-xp/Skipped: Skip fast/images/embed-image.html

2011-03-25  Andy Estes  <aestes@apple.com>

        Re-work a test to not be flaky.

        * plugins/embed-prefers-plugins-for-images.html:

2011-03-25  Dan Bernstein  <mitz@apple.com>

        Reviewed by Darin Adler.

        <rdar://problem/9134330> Missing expansion before ideograph at the beginning or end of a text run
        https://bugs.webkit.org/show_bug.cgi?id=57106

        * fast/text/justify-ideograph-leading-expansion.html: Added.
        * platform/mac/fast/text/justify-ideograph-leading-expansion-expected.checksum: Added.
        * platform/mac/fast/text/justify-ideograph-leading-expansion-expected.png: Added.
        * platform/mac/fast/text/justify-ideograph-leading-expansion-expected.txt: Added.

2011-03-25  Andy Estes  <aestes@apple.com>

        plugins/embed-prefers-plugins-for-images.html fails on Windows.
        https://bugs.webkit.org/show_bug.cgi?id=57132

        * platform/win/Skipped: Skip plugins/embed-prefers-plugins-for-images.html

2011-03-25  Oliver Hunt  <oliver@apple.com>

        Reviewed by Darin Adler.

        Allow defineOwnProperty to work on DOMObjects
        https://bugs.webkit.org/show_bug.cgi?id=57129

        Now we disallow the cross origin accesses, rather than just disallowing
        the defineOwnProperty at all.

        * http/tests/security/xss-DENIED-defineProperty-expected.txt:

2011-03-25  Andy Estes  <aestes@apple.com>

        Reviewed by Adele Peterson.

        REGRESSION (r70748): latest nightly builds kills AC_QuickTime.js
        https://bugs.webkit.org/show_bug.cgi?id=49016

        * fast/images/embed-image.html: Disable plug-ins to continue testing
        native image rendering with embed.
        * plugins/embed-prefers-plugins-for-images-expected.txt: Added.
        * plugins/embed-prefers-plugins-for-images.html: Added.
        * plugins/plugin-javascript-access-expected.txt: Updated to include the
        new MIME type registered by TestNetscapePlugIn.

2011-03-25  Vincent Scheib  <scheib@chromium.org>

        fast/forms/input-file-directory-upload.html timing out.
        http://crbug.com/77468

        * platform/chromium/test_expectations.txt:

2011-03-25  Vincent Scheib  <scheib@chromium.org>

        Attempting SLOW to resolve fast/forms/input-file-directory-upload.html

        * platform/chromium/test_expectations.txt:

2011-03-25  Martin Robinson  <mrobinson@igalia.com>

        Add a GTK+ specific baseline for a text test that seems to have whitespace difference,
        probably due to font sizes resulting in newlines.

        * platform/gtk/fast/events/onchange-text-form-field-expected.txt: Added.

2011-03-24  David Hyatt  <hyatt@apple.com>

        Reviewed by Dan Bernstein.

        Add a simplified normal flow layout path optimization for overflow recomputation
        and for positioned objects inside relative positioned containers.

        Currently there is an optimized code path for positioned objects, but as soon as
        we encounter a normal flow object in the containing block chain, we lose the
        optimization.

        This patch adds a new type of style difference called SimplifiedLayout that is
        returned when only overflow needs to be recomputed. Whenever a transform changes,
        this is the hint returned now instead of a full layout.

        In addition, when positioned objects need layout and start marking up the
        containing block chain, we now propagate the fact that the layout is simplified
        all the way up to the root, even when we encounter normal flow containing
        blocks.

        The layoutOnlyPositionedObjects function has been renamed to simplifiedLayout()
        and is now used for all of these cases (in addition to what it handled before).

        The simplified layout optimization (even in ToT) did not work correctly when
        static distances needed to be recomputed. In order to make static distance
        computations work with simplified layout, positioned objects now always compute
        their static offsets, even if they explicitly specify left/top.  That way normal
        flow layout never has to re-run when the positioned object moves.  This makes
        movement of a positioned object along a single non-auto axis much faster when the
        other axis is auto. Because this code kicked in more often for absolutely positioned
        objects whose original display was inline, I went ahead and fixed the trailing space
        issue with those objects.  This causes a bunch of layout tests to progress.

        Added fast/block/positioning/static-inline-position-dynamic.html and trailing-space-test.html.

        * animations/dynamic-stylesheet-loading-expected.txt:
        * animations/keyframe-timing-functions-expected.txt:
        * fast/block/positioning/static-inline-position-dynamic.html: Added.
        * fast/block/positioning/trailing-space-test.html: Added.
        * fast/dynamic/ancestor-to-absolute-expected.txt:
        * fast/forms/input-appearance-elementFromPoint-expected.txt:
        * fast/forms/input-hit-test-border-expected.txt:
        * platform/mac/fast/block/positioning/002-expected.png:
        * platform/mac/fast/block/positioning/003-expected.png:
        * platform/mac/fast/block/positioning/004-expected.png:
        * platform/mac/fast/block/positioning/005-expected.png:
        * platform/mac/fast/block/positioning/006-expected.png:
        * platform/mac/fast/block/positioning/007-expected.png:
        * platform/mac/fast/block/positioning/008-expected.png:
        * platform/mac/fast/block/positioning/009-expected.png:
        * platform/mac/fast/block/positioning/010-expected.png:
        * platform/mac/fast/block/positioning/011-expected.png:
        * platform/mac/fast/block/positioning/012-expected.png:
        * platform/mac/fast/block/positioning/013-expected.png:
        * platform/mac/fast/block/positioning/014-expected.png:
        * platform/mac/fast/block/positioning/015-expected.png:
        * platform/mac/fast/block/positioning/016-expected.png:
        * platform/mac/fast/block/positioning/017-expected.png:
        * platform/mac/fast/block/positioning/018-expected.png:
        * platform/mac/fast/block/positioning/019-expected.png:
        * platform/mac/fast/block/positioning/020-expected.png:
        * platform/mac/fast/block/positioning/021-expected.png:
        * platform/mac/fast/block/positioning/022-expected.png:
        * platform/mac/fast/block/positioning/023-expected.png:
        * platform/mac/fast/block/positioning/024-expected.png:
        * platform/mac/fast/block/positioning/025-expected.png:
        * platform/mac/fast/block/positioning/026-expected.png:
        * platform/mac/fast/block/positioning/027-expected.png:
        * platform/mac/fast/block/positioning/028-expected.png:
        * platform/mac/fast/block/positioning/029-expected.png:
        * platform/mac/fast/block/positioning/030-expected.png:
        * platform/mac/fast/block/positioning/031-expected.png:
        * platform/mac/fast/block/positioning/032-expected.png:
        * platform/mac/fast/block/positioning/033-expected.png:
        * platform/mac/fast/block/positioning/034-expected.png:
        * platform/mac/fast/block/positioning/035-expected.png:
        * platform/mac/fast/block/positioning/036-expected.png:
        * platform/mac/fast/block/positioning/037-expected.png:
        * platform/mac/fast/block/positioning/038-expected.png:
        * platform/mac/fast/block/positioning/039-expected.png:
        * platform/mac/fast/block/positioning/040-expected.png:
        * platform/mac/fast/block/positioning/041-expected.png:
        * platform/mac/fast/block/positioning/042-expected.png:
        * platform/mac/fast/block/positioning/043-expected.png:
        * platform/mac/fast/block/positioning/044-expected.png:
        * platform/mac/fast/block/positioning/045-expected.png:
        * platform/mac/fast/block/positioning/046-expected.png:
        * platform/mac/fast/block/positioning/047-expected.checksum:
        * platform/mac/fast/block/positioning/047-expected.png:
        * platform/mac/fast/block/positioning/048-expected.png:
        * platform/mac/fast/block/positioning/049-expected.png:
        * platform/mac/fast/block/positioning/050-expected.png:
        * platform/mac/fast/block/positioning/056-expected.txt:
        * platform/mac/fast/block/positioning/061-expected.png:
        * platform/mac/fast/block/positioning/062-expected.png:
        * platform/mac/fast/block/positioning/auto/005-expected.txt:
        * platform/mac/fast/block/positioning/auto/006-expected.txt:
        * platform/mac/fast/block/positioning/auto/007-expected.png:
        * platform/mac/fast/block/positioning/auto/vertical-lr/005-expected.txt:
        * platform/mac/fast/block/positioning/auto/vertical-lr/006-expected.txt:
        * platform/mac/fast/block/positioning/auto/vertical-lr/007-expected.checksum:
        * platform/mac/fast/block/positioning/auto/vertical-lr/007-expected.png:
        * platform/mac/fast/block/positioning/auto/vertical-rl/005-expected.txt:
        * platform/mac/fast/block/positioning/auto/vertical-rl/006-expected.txt:
        * platform/mac/fast/block/positioning/auto/vertical-rl/007-expected.checksum:
        * platform/mac/fast/block/positioning/auto/vertical-rl/007-expected.png:
        * platform/mac/fast/block/positioning/fixed-positioning-scrollbar-bug-expected.txt:
        * platform/mac/fast/block/positioning/inline-block-relposition-expected.checksum:
        * platform/mac/fast/block/positioning/inline-block-relposition-expected.png:
        * platform/mac/fast/block/positioning/inline-block-relposition-expected.txt:
        * platform/mac/fast/block/positioning/move-with-auto-width-expected.png:
        * platform/mac/fast/block/positioning/negative-rel-position-expected.png:
        * platform/mac/fast/block/positioning/relative-overconstrained-expected.png:
        * platform/mac/fast/block/positioning/relative-overflow-block-expected.txt:
        * platform/mac/fast/block/positioning/static-inline-position-dynamic-expected.checksum: Added.
        * platform/mac/fast/block/positioning/static-inline-position-dynamic-expected.png: Added.
        * platform/mac/fast/block/positioning/static-inline-position-dynamic-expected.txt: Added.
        * platform/mac/fast/block/positioning/trailing-space-test-expected.checksum: Added.
        * platform/mac/fast/block/positioning/trailing-space-test-expected.png: Added.
        * platform/mac/fast/block/positioning/trailing-space-test-expected.txt: Added.
        * platform/mac/fast/clip/001-expected.txt:
        * platform/mac/fast/clip/004-expected.txt:
        * platform/mac/fast/clip/006-expected.txt:
        * platform/mac/fast/clip/007-expected.txt:
        * platform/mac/fast/clip/008-expected.txt:
        * platform/mac/fast/clip/009-expected.txt:
        * platform/mac/fast/clip/010-expected.txt:
        * platform/mac/fast/clip/011-expected.txt:
        * platform/mac/fast/clip/012-expected.txt:
        * platform/mac/fast/clip/013-expected.txt:
        * platform/mac/fast/clip/014-expected.txt:
        * platform/mac/fast/clip/nestedTransparencyClip-expected.txt:
        * platform/mac/fast/clip/outline-overflowClip-expected.txt:
        * platform/mac/fast/forms/input-appearance-preventDefault-expected.txt:
        * platform/mac/fast/invalid/014-expected.txt:
        * platform/mac/fast/layers/layer-visibility-expected.txt:
        * platform/mac/fast/repaint/layout-state-scrolloffset-expected.txt:
        * platform/mac/fast/repaint/layout-state-scrolloffset2-expected.txt:
        * platform/mac/fast/repaint/layout-state-scrolloffset3-expected.txt:
        * platform/mac/tables/mozilla/bugs/bug51140-expected.txt:

2011-03-25  Geoffrey Garen  <ggaren@apple.com>

        Reviewed by Oliver Hunt.

        Crash when paused at a breakpoint caused by inaccurate Activation records.
        https://bugs.webkit.org/show_bug.cgi?id=57120

        * inspector/debugger/debugger-activation-crash2-expected.txt: Added.
        * inspector/debugger/debugger-activation-crash2.html: Added.

2011-03-25  Geoffrey Garen  <ggaren@apple.com>

        Reviewed by Oliver Hunt.

        Crash in debugger beneath MarkStack::drain @ me.com, ibm.com
        https://bugs.webkit.org/show_bug.cgi?id=57080
        <rdar://problem/8525907>

        * inspector/debugger/debugger-activation-crash-expected.txt: Added.
        * inspector/debugger/debugger-activation-crash.html: Added.

2011-03-25  Dimitri Glazkov  <dglazkov@chromium.org>

        Skip the test added in r81970 on WebKit2, because its harness doesn't
        yet support printing hooks.

        * platform/mac-wk2/Skipped: Added printing/page-count-layout-overflow.html.

2011-03-25  Emil A Eklund  <eae@chromium.org>

        Reviewed by Dimitri Glazkov.

        Text field "onchange" event is triggered if actual value unchanged
        https://bugs.webkit.org/show_bug.cgi?id=36314

        Add tests for text field change events.

        * fast/events/onchange-text-form-field-expected.txt: Added.
        * fast/events/onchange-text-form-field.html: Added.

2011-03-25  Jessie Berlin  <jberlin@apple.com>

        Websockets tests sometimes time out on apple-windows-5
        https://bugs.webkit.org/show_bug.cgi?id=55579

        Unreviewed, skipping all the websocket tests on Windows to get the bots green.

        * platform/win/Skipped:

2011-03-25  Dimitri Glazkov  <dglazkov@chromium.org>

        Reviewed by Adele Peterson.

        REGRESSION(r77257): Only first page of a document is printed
        https://bugs.webkit.org/show_bug.cgi?id=56958

        * printing/page-count-layout-overflow-expected.txt: Added.
        * printing/page-count-layout-overflow.html: Added.

2011-03-25  Maciej Stachowiak  <mjs@apple.com>

        Reviewed by Antti Koivisto.

        Crash when a wbr element is inserted inside mroot
        https://bugs.webkit.org/show_bug.cgi?id=56352

        * mathml/wbr-in-mroot-crash-expected.txt: Added.
        * mathml/wbr-in-mroot-crash.html: Added.

2011-03-25  Vsevolod Vlasov  <vsevik@chromium.org>

        Reviewed by Pavel Feldman.

        XML Viewer: extensions can't render original XML
        https://bugs.webkit.org/show_bug.cgi?id=56263

        Added source xml to transformed document, renamed onload function.

        * fast/css/dumpAsText/xml-stylesheet-pi-not-in-prolog-expected.txt:
        * fast/encoding/dumpAsText/utf-16-no-bom-expected.txt:
        * http/tests/xmlviewer/dumpAsText/wml-expected.txt:
        * http/tests/xmlviewer/dumpAsText/xlink-expected.txt:
        * http/tests/xmlviewer/dumpAsText/xmlviewer-charset-cp1251-expected.txt:
        * http/tests/xmlviewer/dumpAsText/xmlviewer-charset-utf8-expected.txt:
        * http/tests/xmlviewer/dumpAsText/xmlviewer-expected.txt:
        * http/tests/xmlviewer/dumpAsText/xul-expected.txt:
        * platform/chromium-linux/http/tests/xmlviewer/dumpAsText/wml-expected.txt:
        * platform/chromium/http/tests/xmlviewer/dumpAsText/mathml-expected.txt:
        * svg/hixie/error/dumpAsText/004-expected.txt:
        * svg/hixie/error/dumpAsText/005-expected.txt:
        * xmlviewer/extensions-api-expected.txt: Added.
        * xmlviewer/extensions-api.html_disabled: Added.
        * xmlviewer/resources/sample.xml: Added.

2011-03-25  Adam Roben  <aroben@apple.com>

        Remove no-longer-necessary Windows results

        r81925 made Windows match Mac on this test. New Windows results were checked in, but they
        were generated using the wrong fonts. Since we match Mac now, we don't need Windows-specific
        results at all.

        * platform/win/fast/css/percentage-non-integer-expected.checksum: Removed.
        * platform/win/fast/css/percentage-non-integer-expected.png: Removed.
        * platform/win/fast/css/percentage-non-integer-expected.txt: Removed.

2011-03-25  Sheriff Bot  <webkit.review.bot@gmail.com>

        Unreviewed, rolling out r81953.
        http://trac.webkit.org/changeset/81953
        https://bugs.webkit.org/show_bug.cgi?id=57096

        "inspector test breakage: part 2/2" (Requested by apavlov on
        #webkit).

        * inspector/styles/get-set-stylesheet-text-expected.txt: Removed.
        * inspector/styles/get-set-stylesheet-text.html: Removed.
        * inspector/styles/styles-new-API.html:

2011-03-25  Sheriff Bot  <webkit.review.bot@gmail.com>

        Unreviewed, rolling out r81954.
        http://trac.webkit.org/changeset/81954
        https://bugs.webkit.org/show_bug.cgi?id=57094

        "inspector test breakage: part 1/2" (Requested by apavlov on
        #webkit).

        * inspector/styles/resources/get-set-stylesheet-text.css: Removed.

2011-03-25  Alexander Pavlov  <apavlov@chromium.org>

        Unreviewed, build fix. Add file missing from r81953

        * inspector/styles/resources/get-set-stylesheet-text.css: Added.
        (body):
        (/* comment before selector */body.main1/* comment after selector */):
        (body.main2):

2011-03-15  Alexander Pavlov  <apavlov@chromium.org>

        Reviewed by Pavel Feldman.

        Web Inspector: Fix handling of the CSSAgent.setStyleSheetText() results in CSSStyleModel.js
        https://bugs.webkit.org/show_bug.cgi?id=56310

        * inspector/styles/get-set-stylesheet-text-expected.txt: Added.
        * inspector/styles/get-set-stylesheet-text.html: Added.
        * inspector/styles/resources/get-set-stylesheet-text.css: Added.
        (body):
        (/* comment before selector */body.main1/* comment after selector */):
        (body.main2):
        * inspector/styles/styles-new-API.html:

2011-03-25  Sergio Villar Senin  <svillar@igalia.com>

        Rebaseline GTK+ tests results after r81887

        * platform/gtk/editing/pasteboard/5065605-expected.txt:
        * platform/gtk/editing/pasteboard/display-block-on-spans-expected.txt:
        * platform/gtk/editing/pasteboard/paste-text-011-expected.txt:
        * platform/gtk/editing/pasteboard/paste-text-at-tabspan-001-expected.txt:
        * platform/gtk/editing/pasteboard/paste-text-at-tabspan-002-expected.txt:

2011-03-25  Dominic Cooney  <dominicc@google.com>

        Reviewed by Kent Tamura.

        Adds a regression test for keygen autofocus.
        https://bugs.webkit.org/show_bug.cgi?id=57091

        * fast/forms/autofocus-keygen-expected.txt: Added.
        * fast/forms/autofocus-keygen.html: Added.

2011-03-24  Mikhail Naganov  <mnaganov@chromium.org>

        Reviewed by Pavel Feldman.

        Web Inspector: Add tests for HeapSnapshot module.
        https://bugs.webkit.org/show_bug.cgi?id=56835

        * http/tests/inspector/heap-snapshot-test.js: Added.
        (initialize_HeapSnapshotTest.InspectorTest.createHeapSnapshotMockObject):
        (initialize_HeapSnapshotTest.InspectorTest.createHeapSnapshotMock):
        (initialize_HeapSnapshotTest):
        * inspector/profiler/heap-snapshot-expected.txt: Added.
        * inspector/profiler/heap-snapshot.html: Added.

2011-03-24  Mikhail Naganov  <mnaganov@chromium.org>

        Reviewed by Pavel Feldman.

        Web Inspector: Rework cpu-profiler-profiling.html to use capabilities of testing framework.
        https://bugs.webkit.org/show_bug.cgi?id=57006

        * http/tests/inspector/profiler-test.js: Added.
        (initialize_ProfilerTest.InspectorTest.startProfilerTest.startTest):
        (initialize_ProfilerTest.InspectorTest.startProfilerTest):
        (initialize_ProfilerTest.InspectorTest.completeProfilerTest):
        (initialize_ProfilerTest.InspectorTest.runProfilerTestSuite.runner):
        (initialize_ProfilerTest.InspectorTest.runProfilerTestSuite):
        (initialize_ProfilerTest):
        * inspector/cpu-profiler-profiling-expected.txt: Removed.
        * inspector/cpu-profiler-profiling.html: Removed.
        * inspector/profiler/cpu-profiler-profiling-expected.txt: Added.
        * inspector/profiler/cpu-profiler-profiling.html: Added.

2011-03-24  Yuta Kitamura  <yutak@chromium.org>

        Unreviewed, rebaseline Chromium test results for Mac Leopard.

        * platform/chromium-mac-leopard/fast/blockflow/vertical-baseline-alignment-expected.checksum: Added.
        * platform/chromium-mac-leopard/fast/blockflow/vertical-baseline-alignment-expected.png: Added.
        * platform/chromium-mac-leopard/fast/dynamic/text-combine-expected.checksum: Added.
        * platform/chromium-mac-leopard/fast/dynamic/text-combine-expected.png: Added.

2011-03-24  Ilya Sherman  <isherman@chromium.org>

        Reviewed by Adam Roben.

        Implement layoutTestController.setAutoFilled in DRT on Windows
        https://bugs.webkit.org/show_bug.cgi?id=56828

        * platform/chromium/fast/forms/input-autofilled-expected.txt: Removed.
        * platform/chromium/fast/forms/reset-autofilled-expected.txt: Removed.
        * platform/win/fast/forms/input-autofilled-expected.txt: Removed.
        * platform/win/fast/forms/reset-autofilled-expected.txt: Removed.

2011-03-24  Yuta Kitamura  <yutak@chromium.org>

        Unreviewed. Rebaseline Chromium test results for fast/css/percentage-non-integer.html.

        * platform/chromium-win/fast/css/percentage-non-integer-expected.checksum:
        * platform/chromium-win/fast/css/percentage-non-integer-expected.png:
        * platform/chromium-win/fast/css/percentage-non-integer-expected.txt:

2011-03-24  Sheriff Bot  <webkit.review.bot@gmail.com>

        Unreviewed, rolling out r81916 and r81917.
        http://trac.webkit.org/changeset/81916
        http://trac.webkit.org/changeset/81917
        https://bugs.webkit.org/show_bug.cgi?id=57071

        broke a test on platforms that do not have QuickTime installed
        (Requested by estes on #webkit).

        * fast/images/embed-image-plugins-disabled.html: Removed.
        * platform/mac/fast/images/embed-image-expected.checksum:
        * platform/mac/fast/images/embed-image-expected.png:
        * platform/mac/fast/images/embed-image-expected.txt:
        * platform/mac/fast/images/embed-image-plugins-disabled-expected.checksum: Removed.
        * platform/mac/fast/images/embed-image-plugins-disabled-expected.png: Removed.
        * platform/mac/fast/images/embed-image-plugins-disabled-expected.txt: Removed.

2011-03-24  Vincent Scheib  <scheib@chromium.org>

        Update Chromium baselines for 81887

        * platform/chromium-win/editing/pasteboard/5065605-expected.txt:
        * platform/chromium-win/editing/pasteboard/display-block-on-spans-expected.txt:
        * platform/chromium-win/editing/pasteboard/paste-text-011-expected.txt:
        * platform/chromium-win/editing/pasteboard/paste-text-at-tabspan-001-expected.txt:
        * platform/chromium-win/editing/pasteboard/paste-text-at-tabspan-002-expected.txt:

2011-03-24  Rik Cabanier  <cabanier@adobe.com>

        Reviewed by David Hyatt.

        REGRESSION (r81625): fast/css/percentage-non-integer.html fails on Windows
        https://bugs.webkit.org/show_bug.cgi?id=56829

        * platform/win/fast/css/percentage-non-integer-expected.checksum:
        * platform/win/fast/css/percentage-non-integer-expected.png:
        * platform/win/fast/css/percentage-non-integer-expected.txt:

2011-03-24  Mihai Parparita  <mihaip@chromium.org>

        Add Chromium Snow Leopard baselines for fast/css/bidi-override-in-anonymous-block.html.

        * platform/chromium-mac-leopard/fast/css/bidi-override-in-anonymous-block-expected.checksum: Copied from LayoutTests/platform/chromium-mac/fast/css/bidi-override-in-anonymous-block-expected.checksum.
        * platform/chromium-mac-leopard/fast/css/bidi-override-in-anonymous-block-expected.png: Copied from LayoutTests/platform/chromium-mac/fast/css/bidi-override-in-anonymous-block-expected.png.
        * platform/chromium-mac/fast/css/bidi-override-in-anonymous-block-expected.checksum:
        * platform/chromium-mac/fast/css/bidi-override-in-anonymous-block-expected.png:

2011-03-24  Mihai Parparita  <mihaip@chromium.org>

        Reviewed by James Robinson.

        [Chromium] Vertical Japanese text is not displayed on Snow Leopard
        https://bugs.webkit.org/show_bug.cgi?id=56962

        Pixel rebaselines after r80582 (vertical text was shifted by one pixel
        vertical).

        Make Snow Leopard check added by r80740 into a runtime check for
        Chromium, since it uses the same binary on both Leopard and Snow Leopard.

        * platform/chromium-mac/fast/blockflow/Kusa-Makura-background-canvas-expected.checksum:
        * platform/chromium-mac/fast/blockflow/Kusa-Makura-background-canvas-expected.png:
        * platform/chromium-mac/fast/blockflow/border-vertical-lr-expected.checksum:
        * platform/chromium-mac/fast/blockflow/border-vertical-lr-expected.png:
        * platform/chromium-mac/fast/blockflow/broken-ideograph-small-caps-expected.checksum: Added.
        * platform/chromium-mac/fast/blockflow/broken-ideograph-small-caps-expected.png: Added.
        * platform/chromium-mac/fast/blockflow/broken-ideograph-small-caps-expected.txt: Added.
        * platform/chromium-mac/fast/blockflow/japanese-lr-selection-expected.checksum: Added.
        * platform/chromium-mac/fast/blockflow/japanese-lr-selection-expected.png: Added.
        * platform/chromium-mac/fast/blockflow/japanese-lr-text-expected.checksum:
        * platform/chromium-mac/fast/blockflow/japanese-lr-text-expected.png:
        * platform/chromium-mac/fast/blockflow/japanese-rl-selection-expected.checksum:
        * platform/chromium-mac/fast/blockflow/japanese-rl-selection-expected.png:
        * platform/chromium-mac/fast/blockflow/japanese-rl-text-expected.checksum:
        * platform/chromium-mac/fast/blockflow/japanese-rl-text-expected.png:
        * platform/chromium-mac/fast/blockflow/japanese-rl-text-with-broken-font-expected.checksum: Removed.
        * platform/chromium-mac/fast/blockflow/japanese-rl-text-with-broken-font-expected.png: Removed.
        * platform/chromium-mac/fast/blockflow/vertical-align-table-baseline-expected.checksum: Removed.
        * platform/chromium-mac/fast/blockflow/vertical-align-table-baseline-expected.png: Removed.
        * platform/chromium-mac/fast/blockflow/vertical-baseline-alignment-expected.checksum: Added.
        * platform/chromium-mac/fast/blockflow/vertical-baseline-alignment-expected.png: Added.
        * platform/chromium-mac/fast/dynamic/text-combine-expected.checksum:
        * platform/chromium-mac/fast/dynamic/text-combine-expected.png:
        * platform/chromium-mac/fast/repaint/japanese-rl-selection-clear-expected.checksum:
        * platform/chromium-mac/fast/repaint/japanese-rl-selection-clear-expected.png:
        * platform/chromium-mac/fast/repaint/japanese-rl-selection-repaint-expected.checksum:
        * platform/chromium-mac/fast/repaint/japanese-rl-selection-repaint-expected.png:
        * platform/chromium-mac/fast/repaint/repaint-across-writing-mode-boundary-expected.checksum:
        * platform/chromium-mac/fast/repaint/repaint-across-writing-mode-boundary-expected.png:
        * platform/chromium-mac/fast/ruby/base-shorter-than-text-expected.checksum:
        * platform/chromium-mac/fast/ruby/base-shorter-than-text-expected.png:
        * platform/chromium-mac/fast/text/justify-ideograph-vertical-expected.checksum:
        * platform/chromium-mac/fast/text/justify-ideograph-vertical-expected.png:
        * platform/chromium/test_expectations.txt:
        * platform/mac/fast/blockflow/Kusa-Makura-background-canvas-expected.checksum:
        * platform/mac/fast/blockflow/Kusa-Makura-background-canvas-expected.png:
        * platform/mac/fast/blockflow/border-vertical-lr-expected.checksum:
        * platform/mac/fast/blockflow/border-vertical-lr-expected.png:
        * platform/mac/fast/blockflow/broken-ideographic-font-expected.checksum:
        * platform/mac/fast/blockflow/broken-ideographic-font-expected.png:
        * platform/mac/fast/blockflow/japanese-lr-selection-expected.checksum:
        * platform/mac/fast/blockflow/japanese-lr-selection-expected.png:
        * platform/mac/fast/blockflow/japanese-lr-text-expected.checksum:
        * platform/mac/fast/blockflow/japanese-lr-text-expected.png:
        * platform/mac/fast/blockflow/japanese-rl-selection-expected.checksum:
        * platform/mac/fast/blockflow/japanese-rl-selection-expected.png:
        * platform/mac/fast/blockflow/japanese-rl-text-expected.checksum:
        * platform/mac/fast/blockflow/japanese-rl-text-expected.png:
        * platform/mac/fast/blockflow/japanese-rl-text-with-broken-font-expected.checksum:
        * platform/mac/fast/blockflow/japanese-rl-text-with-broken-font-expected.png:
        * platform/mac/fast/blockflow/japanese-ruby-vertical-lr-expected.checksum:
        * platform/mac/fast/blockflow/japanese-ruby-vertical-lr-expected.png:
        * platform/mac/fast/blockflow/japanese-ruby-vertical-rl-expected.checksum:
        * platform/mac/fast/blockflow/japanese-ruby-vertical-rl-expected.png:
        * platform/mac/fast/blockflow/vertical-align-table-baseline-expected.checksum:
        * platform/mac/fast/blockflow/vertical-align-table-baseline-expected.png:
        * platform/mac/fast/blockflow/vertical-baseline-alignment-expected.checksum:
        * platform/mac/fast/blockflow/vertical-baseline-alignment-expected.png:
        * platform/mac/fast/blockflow/vertical-font-fallback-expected.checksum:
        * platform/mac/fast/blockflow/vertical-font-fallback-expected.png:
        * platform/mac/fast/repaint/japanese-rl-selection-clear-expected.checksum:
        * platform/mac/fast/repaint/japanese-rl-selection-clear-expected.png:
        * platform/mac/fast/repaint/japanese-rl-selection-repaint-expected.checksum:
        * platform/mac/fast/repaint/japanese-rl-selection-repaint-expected.png:
        * platform/mac/fast/repaint/repaint-across-writing-mode-boundary-expected.checksum:
        * platform/mac/fast/repaint/repaint-across-writing-mode-boundary-expected.png:
        * platform/mac/fast/ruby/base-shorter-than-text-expected.checksum:
        * platform/mac/fast/ruby/base-shorter-than-text-expected.png:
        * platform/mac/fast/text/justify-ideograph-vertical-expected.checksum:
        * platform/mac/fast/text/justify-ideograph-vertical-expected.png:

2011-03-24  Andy Estes  <aestes@apple.com>

        Reviewed by Darin Adler.

        REGRESSION (r70748): latest nightly builds kills AC_QuickTime.js
        https://bugs.webkit.org/show_bug.cgi?id=49016

        * fast/images/embed-image-plugins-disabled.html: Added.
        * platform/mac/fast/images/embed-image-expected.checksum:
        * platform/mac/fast/images/embed-image-expected.png:
        * platform/mac/fast/images/embed-image-expected.txt:
        * platform/mac/fast/images/embed-image-plugins-disabled-expected.checksum: Added.
        * platform/mac/fast/images/embed-image-plugins-disabled-expected.png: Added.
        * platform/mac/fast/images/embed-image-plugins-disabled-expected.txt: Added.

2011-03-24  Adam Klein  <adamk@chromium.org>

        Reviewed by David Levin.

        [fileapi] Make FileError and FileException accessible from WorkerContext
        https://bugs.webkit.org/show_bug.cgi?id=57041

        Fixed some test expectations related to FileError/FileExcetion and
        exposed while testing this change under Chromium.

        * http/tests/filesystem/workers/resolve-url-sync-expected.txt:

2011-03-24  Vsevolod Vlasov  <vsevik@chromium.org>

        Reviewed by Pavel Feldman.

        Web Inspector: Inspector does not show correct transfer size for synchronous requests
        https://bugs.webkit.org/show_bug.cgi?id=56951

        Fixed transfer size for synchronous load.

        * http/tests/inspector/network/network-size-sync-expected.txt: Added.
        * http/tests/inspector/network/network-size-sync.html: Added.
        * platform/chromium/test_expectations.txt:
        * platform/gtk/Skipped:
        * platform/mac/Skipped:
        * platform/qt/Skipped:
        * platform/win/Skipped:

2011-03-24  Enrica Casucci  <enrica@apple.com>

        Updating tests results for QT after changeset 81887.

        * platform/qt/editing/pasteboard/5065605-expected.txt:
        * platform/qt/editing/pasteboard/display-block-on-spans-expected.txt:
        * platform/qt/editing/pasteboard/paste-text-011-expected.txt:
        * platform/qt/editing/pasteboard/paste-text-at-tabspan-002-expected.txt:

2011-03-24  Brady Eidson  <beidson@apple.com>

        Reviewed by Adam Roben.

        Resolving https://bugs.webkit.org/show_bug.cgi?id=57030, unskip the busted test.

        * platform/mac-wk2/Skipped:

2011-03-24  Andy Estes  <aestes@apple.com>

        Reviewed by Eric Seidel.

        REGRESSION (r80231): Bad cast in HTMLTreeBuilder with closed </form> tags
        https://bugs.webkit.org/show_bug.cgi?id=56836

        * fast/parser/fragment-closest-form-ancestor-expected.txt: Added.
        * fast/parser/fragment-closest-form-ancestor.html: Added.

2011-03-24  Enrica Casucci  <enrica@apple.com>

        Reviewed by Darin Adler.

        Repeated copy and paste-in-place operation results in increasingly verbose HTML.
        <rdar://problem/8690506>
        https://bugs.webkit.org/show_bug.cgi?id=56874

        * editing/pasteboard/paste-text-with-style-expected.txt: Added.
        * editing/pasteboard/paste-text-with-style.html: Added.
        The following are new results for existing tests that now produce
        a different markup.
        * platform/mac/editing/pasteboard/5065605-expected.txt:
        * platform/mac/editing/pasteboard/display-block-on-spans-expected.txt:
        * platform/mac/editing/pasteboard/paste-text-011-expected.txt:
        * platform/mac/editing/pasteboard/paste-text-at-tabspan-001-expected.txt:
        * platform/mac/editing/pasteboard/paste-text-at-tabspan-002-expected.txt:

2011-03-24  Adam Roben  <aroben@apple.com>

        Add some flaky tests to the mac-wk2 and win-wk2 Skipped files

        The failures are tracked by <http://webkit.org/b/57027> and <http://webkit.org/b/57030>.

        * platform/mac-wk2/Skipped: Added http/tests/inspector/extensions-resources-redirect.html.
        * platform/win-wk2/Skipped: Added inspector/debugger/source-frame.html.

2011-03-24  Adam Roben  <aroben@apple.com>

        Add Windows WebKit2 results for fast/css/pseudo-any.html

        This test passes on Windows but fails on Mac. <http://webkit.org/b/56988> tracks the Mac
        failure.

        * platform/win-wk2/fast/css/pseudo-any-expected.txt: Added.

2011-03-24  Pavel Podivilov  <podivilov@chromium.org>

        Reviewed by Yury Semikhatsky.

        Web Inspector: provide live edit callback to source frame delegate.
        https://bugs.webkit.org/show_bug.cgi?id=57003

        * inspector/debugger/live-edit.html:

2011-03-24  Joe Wild  <joseph.wild@nokia.com>

        Reviewed by Csaba Osztrogonác.

        [Qt] Some Unicode tests fail with Qt version >= 4.7.0
        https://bugs.webkit.org/show_bug.cgi?id=46251

        Updated tests the print out character 0xFFFF for Qt Platform.
        QString.toUtf8() converts non-defined Unicode char values, like
        0xFFFF to a replacement character ('?') as documented.  Other
        platforms leave the character as 0xFFFF (but utf8 encoded).
        Converting to a real printable char seems reasonable and may
        be more reliable.

        * platform/qt/Skipped:
        * platform/qt/fast/js/regexp-range-bound-ffff-expected.txt: Added.
        * platform/qt/fast/js/switch-behaviour-expected.txt: Added.
        * platform/qt/fast/url: Added.
        * platform/qt/fast/url/anchor-expected.txt: Added.
        * platform/qt/fast/url/path-expected.txt: Added.
        * platform/qt/http/tests/websocket: Added.
        * platform/qt/http/tests/websocket/tests: Added.
        * platform/qt/http/tests/websocket/tests/bad-sub-protocol-non-ascii-expected.txt: Added.

2011-03-24  Pavel Feldman  <pfeldman@chromium.org>

        Not reviewed: removing newly added inspector test that fails on release bots.

        * http/tests/inspector/network/network-redirect-expected.txt: Removed.
        * http/tests/inspector/network/network-redirect.html: Removed.
        * platform/chromium/test_expectations.txt:

2011-03-24  Pavel Feldman  <pfeldman@chromium.org>

        Not reviewed: updated chromium expectations.

        * platform/chromium/test_expectations.txt:

2011-03-24  Pavel Feldman  <pfeldman@chromium.org>

        Reviewed by Yury Semikhatsky.

        Web Inspector: brush up Network agent API.
        https://bugs.webkit.org/show_bug.cgi?id=57001

        * http/tests/inspector/network/network-redirect-expected.txt: Added.
        * http/tests/inspector/network/network-redirect.html: Added.
        * inspector/timeline/timeline-network-resource-expected.txt:
        * platform/chromium/inspector/timeline/timeline-network-resource-expected.txt:

2011-03-24  Philippe Normand  <pnormand@igalia.com>

        Unreviewed, skipping 3 xmlhttprequest tests timing out on GTK, see
        also bug 33026.

        * platform/gtk/Skipped:

2011-03-24  Philippe Normand  <pnormand@igalia.com>

        Unreviewed, new GTK fast/block/lineboxcontain baselines after
        r81684 and r81608.

        * editing/selection/fake-drag-expected.txt: Added.
        * platform/gtk/fast/block/lineboxcontain/block-expected.checksum: Added.
        * platform/gtk/fast/block/lineboxcontain/block-expected.png: Added.
        * platform/gtk/fast/block/lineboxcontain/block-expected.txt: Added.
        * platform/gtk/fast/block/lineboxcontain/block-font-expected.checksum: Added.
        * platform/gtk/fast/block/lineboxcontain/block-font-expected.png: Added.
        * platform/gtk/fast/block/lineboxcontain/block-font-expected.txt: Added.
        * platform/gtk/fast/block/lineboxcontain/block-glyphs-expected.checksum: Added.
        * platform/gtk/fast/block/lineboxcontain/block-glyphs-expected.png: Added.
        * platform/gtk/fast/block/lineboxcontain/block-glyphs-expected.txt: Added.
        * platform/gtk/fast/block/lineboxcontain/block-glyphs-replaced-expected.checksum: Added.
        * platform/gtk/fast/block/lineboxcontain/block-glyphs-replaced-expected.png: Added.
        * platform/gtk/fast/block/lineboxcontain/block-glyphs-replaced-expected.txt: Added.
        * platform/gtk/fast/block/lineboxcontain/block-replaced-expected.checksum: Added.
        * platform/gtk/fast/block/lineboxcontain/block-replaced-expected.png: Added.
        * platform/gtk/fast/block/lineboxcontain/block-replaced-expected.txt: Added.
        * platform/gtk/fast/block/lineboxcontain/font-expected.checksum: Added.
        * platform/gtk/fast/block/lineboxcontain/font-expected.png: Added.
        * platform/gtk/fast/block/lineboxcontain/font-expected.txt: Added.
        * platform/gtk/fast/block/lineboxcontain/font-replaced-expected.checksum: Added.
        * platform/gtk/fast/block/lineboxcontain/font-replaced-expected.png: Added.
        * platform/gtk/fast/block/lineboxcontain/font-replaced-expected.txt: Added.
        * platform/gtk/fast/block/lineboxcontain/glyphs-expected.checksum: Added.
        * platform/gtk/fast/block/lineboxcontain/glyphs-expected.png: Added.
        * platform/gtk/fast/block/lineboxcontain/glyphs-expected.txt: Added.
        * platform/gtk/fast/block/lineboxcontain/inline-box-expected.checksum: Added.
        * platform/gtk/fast/block/lineboxcontain/inline-box-expected.png: Added.
        * platform/gtk/fast/block/lineboxcontain/inline-box-expected.txt: Added.
        * platform/gtk/fast/block/lineboxcontain/inline-box-replaced-expected.checksum: Added.
        * platform/gtk/fast/block/lineboxcontain/inline-box-replaced-expected.png: Added.
        * platform/gtk/fast/block/lineboxcontain/inline-box-replaced-expected.txt: Added.
        * platform/gtk/fast/block/lineboxcontain/inline-box-vertical-expected.checksum: Added.
        * platform/gtk/fast/block/lineboxcontain/inline-box-vertical-expected.png: Added.
        * platform/gtk/fast/block/lineboxcontain/inline-box-vertical-expected.txt: Added.
        * platform/gtk/fast/block/lineboxcontain/inline-expected.checksum: Added.
        * platform/gtk/fast/block/lineboxcontain/inline-expected.png: Added.
        * platform/gtk/fast/block/lineboxcontain/inline-expected.txt: Added.
        * platform/gtk/fast/block/lineboxcontain/inline-replaced-expected.checksum: Added.
        * platform/gtk/fast/block/lineboxcontain/inline-replaced-expected.png: Added.
        * platform/gtk/fast/block/lineboxcontain/inline-replaced-expected.txt: Added.
        * platform/gtk/fast/block/lineboxcontain/none-expected.checksum: Added.
        * platform/gtk/fast/block/lineboxcontain/none-expected.png: Added.
        * platform/gtk/fast/block/lineboxcontain/none-expected.txt: Added.
        * platform/gtk/fast/block/lineboxcontain/parsing-invalid-expected.checksum: Added.
        * platform/gtk/fast/block/lineboxcontain/parsing-invalid-expected.png: Added.
        * platform/gtk/fast/block/lineboxcontain/parsing-invalid-expected.txt: Added.
        * platform/gtk/fast/block/lineboxcontain/replaced-expected.checksum: Added.
        * platform/gtk/fast/block/lineboxcontain/replaced-expected.png: Added.
        * platform/gtk/fast/block/lineboxcontain/replaced-expected.txt: Added.

2011-03-23  Kent Tamura  <tkent@chromium.org>

        Reviewed by Dimitri Glazkov.

        [Chromium] Force to make validation bubble DIV position:absolute
        https://bugs.webkit.org/show_bug.cgi?id=56901

        * fast/forms/interactive-validation-crash-by-style-override-expected.txt: Added.
        * fast/forms/interactive-validation-crash-by-style-override.html: Added.
        * platform/gtk/Skipped: Skip the new test because the interactive
          validation feature is not enabled.
        * platform/mac/Skipped: ditto.
        * platform/qt/Skipped: ditto.
        * platform/win/Skipped: ditto.

2011-03-23  Ojan Vafai  <ojan@chromium.org>

        Add failing result for WebKit2. All tests that require
        focus fail on WebKit2. See https://bugs.webkit.org/show_bug.cgi?id=56988.

        * platform/mac-wk2/fast/css/pseudo-any-expected.txt: Added.

2011-03-23  Mike Lawther  <mikelawther@chromium.org>

        Reviewed by Ojan Vafai.

        flex/bison tokens and grammar for CSS calc
        https://bugs.webkit.org/show_bug.cgi?id=54412

        Only the 'errors' tests pass as ultimately intended right now. As of this
        patch, none of the actual calculations are expected to work, since only
        the lexing/grammar stage is present.

        * css3/calc/calc-errors-expected.txt: Added.
        * css3/calc/calc-errors.html: Added.
        * css3/calc/minmax-errors-expected.txt: Added.
        * css3/calc/minmax-errors.html: Added.
        * css3/calc/simple-calcs-expected.txt: Added.
        * css3/calc/simple-calcs.html: Added.
        * css3/calc/simple-minmax-expected.txt: Added.
        * css3/calc/simple-minmax.html: Added.

2011-03-23  Adam Klein  <adamk@chromium.org>

        Reviewed by David Levin.

        Fix resolveLocalFileSystemURL (and sync version) error codes to match the spec
        https://bugs.webkit.org/show_bug.cgi?id=56961

        * http/tests/filesystem/resolve-uri-expected.txt:
        * http/tests/filesystem/script-tests/resolve-uri.js:
        Added three tests to exercise SECURITY_ERR:
        (runWrongDomain):
        (runWrongPort):
        (runWrongScheme):
        And updated four tests to test error codes:
        (runBogusURL):
        (runWrongProtocol):
        (runNotEnoughSlashes):
        (runNotEnoughSlashes2):
        * http/tests/filesystem/workers/resolve-url-expected.txt:
        * http/tests/filesystem/workers/resolve-url-sync-expected.txt:
        * http/tests/filesystem/workers/script-tests/resolve-url-sync.js:
        Added three tests to exercise SECURITY_ERR:
        (runWrongDomain):
        (runWrongPort):
        (runWrongScheme):
        And updated four tests to test error codes:
        (runBogusURL):
        (runWrongProtocol):
        (runNotEnoughSlashes):
        (runNotEnoughSlashes2):

2011-03-23  Jia Pu  <jpu@apple.com>

        Reviewed by Darin Adler.

        Hook up new AppKit autocorrection UI with WK2.
        https://bugs.webkit.org/show_bug.cgi?id=56055
        <rdar://problem/8947463>

        Please see WebCore/ChangeLog for detail.

        * platform/mac-wk2/Skipped: Enable autocorrection tests for WK2.

2011-03-23  Carol Szabo  <carol.szabo@nokia.com>

        Reviewed by David Hyatt.

        This test verifies the correct update of a second renderer that
        displays the same CounterNode.

        Assertion and incorrect rendering of counters.
        https://bugs.webkit.org/show_bug.cgi?id=56896

        * fast/css/counters/2displays-expected.txt: Added.
        * fast/css/counters/2displays.html: Added.

2011-03-23  Xiaomei Ji  <xji@chromium.org>

        Rebaseline chromium-mac after r81807.

        * platform/chromium-mac/fast/css/bidi-override-in-anonymous-block-expected.checksum: Added.
        * platform/chromium-mac/fast/css/bidi-override-in-anonymous-block-expected.png: Added.
        * platform/chromium/test_expectations.txt:

2011-03-23  Xiaomei Ji  <xji@chromium.org>

        Rebaseline after r81807.

        * platform/chromium-linux/fast/css/bidi-override-in-anonymous-block-expected.checksum: Added.
        * platform/chromium-linux/fast/css/bidi-override-in-anonymous-block-expected.png: Added.
        * platform/chromium-win/fast/css/bidi-override-in-anonymous-block-expected.checksum: Added.
        * platform/chromium-win/fast/css/bidi-override-in-anonymous-block-expected.png: Added.
        * platform/chromium-win/fast/css/bidi-override-in-anonymous-block-expected.txt: Added.
        * platform/chromium/test_expectations.txt:
        * platform/gtk/fast/css/bidi-override-in-anonymous-block-expected.txt: Added.
        * platform/qt/fast/css/bidi-override-in-anonymous-block-expected.txt: Added.

2011-03-23  Mihai Parparita  <mihaip@chromium.org>

        Rebaseline transitions/default-timing-function.html for Chromium Snow
        Leopard.

        * platform/chromium-mac-leopard/transitions/default-timing-function-expected.checksum: Copied from LayoutTests/platform/chromium-mac/transitions/default-timing-function-expected.checksum.
        * platform/chromium-mac-leopard/transitions/default-timing-function-expected.png: Copied from LayoutTests/platform/chromium-mac/transitions/default-timing-function-expected.png.
        * platform/chromium-mac/transitions/default-timing-function-expected.checksum:
        * platform/chromium-mac/transitions/default-timing-function-expected.png:
        * platform/chromium/test_expectations.txt:

2011-03-23  Martin Robinson  <mrobinson@igalia.com>

        [GTK] fast/overflow/horizontal-scroll-after-back.html fails
        https://bugs.webkit.org/show_bug.cgi?id=56966

        * platform/gtk/Skipped: Skip this test on GTK+ until the fix is in.

2011-03-23  Mihai Parparita  <mihaip@chromium.org>

        Update expectations for one SVG and two media tests for Chromium Snow
        Leopard.

        * platform/chromium-mac-leopard/svg/W3C-SVG-1.1-SE/types-dom-01-b-expected.checksum: Copied from LayoutTests/platform/chromium-mac/svg/W3C-SVG-1.1-SE/types-dom-01-b-expected.checksum.
        * platform/chromium-mac-leopard/svg/W3C-SVG-1.1-SE/types-dom-01-b-expected.png: Copied from LayoutTests/platform/chromium-mac/svg/W3C-SVG-1.1-SE/types-dom-01-b-expected.png.
        * platform/chromium-mac/media/controls-after-reload-expected.checksum:
        * platform/chromium-mac/media/controls-after-reload-expected.png:
        * platform/chromium-mac/media/controls-without-preload-expected.checksum:
        * platform/chromium-mac/media/controls-without-preload-expected.png:
        * platform/chromium-mac/svg/W3C-SVG-1.1-SE/types-dom-01-b-expected.checksum:
        * platform/chromium-mac/svg/W3C-SVG-1.1-SE/types-dom-01-b-expected.png:

2011-03-23  Luiz Agostini  <luiz.agostini@openbossa.org>

        Reviewed by David Hyatt.

        REGRESSION(81035): crash in RenderDetails::removeChild
        https://bugs.webkit.org/show_bug.cgi?id=56773

        * fast/html/details-children-merge-crash-expected.txt: Added.
        * fast/html/details-children-merge-crash.html: Added.

2011-03-23  Xiaomei Ji  <xji@chromium.org>

        Add fast/css/bidi-override-in-anonymous-block.html as expected to fail after r81807.

        * platform/chromium/test_expectations.txt:

2011-03-23  Xiaomei Ji  <xji@chromium.org>

        Reviewed by David Hyatt.

        Preserve unicode-bidi:bidi-override in anonymous block.
        https://bugs.webkit.org/show_bug.cgi?id=21440

        * fast/css/bidi-override-in-anonymous-block.html: Added.
        * platform/mac/fast/css/bidi-override-in-anonymous-block-expected.txt: Added.

2011-03-23  Mihai Parparita  <mihaip@chromium.org>

        Group Snow Leopard failures for bug 56962.

        * platform/chromium/test_expectations.txt:

2011-03-23  Abhishek Arya  <inferno@chromium.org>

        Unreviewed. Replace shockwave plugin with test netscape in recent
        timing out test plugins/change-widget-and-click-crash.html.

        * plugins/change-widget-and-click-crash.html:

2011-03-23  Mihai Parparita  <mihaip@chromium.org>

        Fix more tests for Chromium Snow Leopard by promoting chromium-mac/
        results to mac-leopard/ where possible.

        * platform/chromium-mac-leopard/fast/backgrounds/background-position-parsing-expected.checksum: Copied from LayoutTests/platform/chromium-mac/fast/backgrounds/background-position-parsing-expected.checksum.
        * platform/chromium-mac-leopard/fast/backgrounds/background-position-parsing-expected.png: Copied from LayoutTests/platform/chromium-mac/fast/backgrounds/background-position-parsing-expected.png.
        * platform/chromium-mac-leopard/fast/box-shadow/box-shadow-transformed-expected.checksum: Copied from LayoutTests/platform/chromium-mac/fast/box-shadow/box-shadow-transformed-expected.checksum.
        * platform/chromium-mac-leopard/fast/box-shadow/box-shadow-transformed-expected.png: Copied from LayoutTests/platform/chromium-mac/fast/box-shadow/box-shadow-transformed-expected.png.
        * platform/chromium-mac/css1/text_properties/text_indent-expected.checksum: Removed.
        * platform/chromium-mac/css1/text_properties/text_indent-expected.png: Removed.
        * platform/chromium-mac/css1/units/length_units-expected.checksum: Removed.
        * platform/chromium-mac/css1/units/length_units-expected.png: Removed.
        * platform/chromium-mac/fast/backgrounds/background-position-parsing-expected.checksum:
        * platform/chromium-mac/fast/backgrounds/background-position-parsing-expected.png:
        * platform/chromium-mac/fast/box-shadow/box-shadow-transformed-expected.checksum:
        * platform/chromium-mac/fast/box-shadow/box-shadow-transformed-expected.png:
        * platform/chromium-mac/media/media-document-audio-repaint-expected.checksum:
        * platform/chromium-mac/media/media-document-audio-repaint-expected.png:
        * platform/mac-leopard/css1/text_properties/text_indent-expected.checksum:
        * platform/mac-leopard/css1/text_properties/text_indent-expected.png:
        * platform/mac-leopard/css1/units/length_units-expected.checksum:
        * platform/mac-leopard/css1/units/length_units-expected.png:
        * platform/mac-leopard/fast/css-generated-content/table-row-before-after-expected.checksum: Renamed from LayoutTests/platform/chromium-mac/fast/css-generated-content/table-row-before-after-expected.checksum.
        * platform/mac-leopard/fast/css-generated-content/table-row-before-after-expected.png: Renamed from LayoutTests/platform/chromium-mac/fast/css-generated-content/table-row-before-after-expected.png.
        * platform/mac-leopard/fast/multicol/scrolling-overflow-expected.checksum: Renamed from LayoutTests/platform/chromium-mac/fast/multicol/scrolling-overflow-expected.checksum.
        * platform/mac-leopard/fast/multicol/scrolling-overflow-expected.png: Renamed from LayoutTests/platform/chromium-mac/fast/multicol/scrolling-overflow-expected.png.
        * platform/mac/css1/text_properties/text_indent-expected.checksum:
        * platform/mac/css1/text_properties/text_indent-expected.png:
        * platform/mac/css1/units/length_units-expected.checksum:
        * platform/mac/css1/units/length_units-expected.png:
        * platform/mac/editing/selection/inline-closest-leaf-child-expected.checksum:
        * platform/mac/editing/selection/inline-closest-leaf-child-expected.png:
        * platform/mac/fast/box-shadow/box-shadow-transformed-expected.checksum:
        * platform/mac/fast/box-shadow/box-shadow-transformed-expected.png:

2011-03-23  Brian Weinstein  <bweinstein@apple.com>

        Skip plugins/change-widget-and-click-crash.html on WebKit2, because
        WebKit2 doesn't have an implementation of eventSender yet.

        * platform/mac-wk2/Skipped:

2011-03-23  Mihai Parparita  <mihaip@chromium.org>

        Fix fast/table for Chromium Snow Leopard by promoting the chromium-mac/
        baselines to mac-leopard/.

        * platform/mac-leopard/fast/table/dynamic-descendant-percentage-height-expected.checksum: Renamed from LayoutTests/platform/chromium-mac/fast/table/dynamic-descendant-percentage-height-expected.checksum.
        * platform/mac-leopard/fast/table/dynamic-descendant-percentage-height-expected.png: Renamed from LayoutTests/platform/chromium-mac/fast/table/dynamic-descendant-percentage-height-expected.png.
        * platform/mac-leopard/fast/table/relative-position-containment-expected.checksum: Renamed from LayoutTests/platform/chromium-mac/fast/table/relative-position-containment-expected.checksum.
        * platform/mac-leopard/fast/table/relative-position-containment-expected.png: Renamed from LayoutTests/platform/chromium-mac/fast/table/relative-position-containment-expected.png.
        * platform/mac-leopard/fast/table/relative-position-offsets-expected.checksum: Renamed from LayoutTests/platform/chromium-mac/fast/table/relative-position-offsets-expected.checksum.
        * platform/mac-leopard/fast/table/relative-position-offsets-expected.png: Renamed from LayoutTests/platform/chromium-mac/fast/table/relative-position-offsets-expected.png.
        * platform/mac-leopard/fast/table/relative-position-stacking-expected.checksum: Renamed from LayoutTests/platform/chromium-mac/fast/table/relative-position-stacking-expected.checksum.
        * platform/mac-leopard/fast/table/relative-position-stacking-expected.png: Renamed from LayoutTests/platform/chromium-mac/fast/table/relative-position-stacking-expected.png.

2011-03-23  Cris Neckar  <cdn@chromium.org>

        Reviewed by Eric Seidel.

        Add test for crash when modifying a widget object within an event handler.
        https://bugs.webkit.org/show_bug.cgi?id=56774

        * plugins/change-widget-and-click-crash-expected.txt: Added.
        * plugins/change-widget-and-click-crash.html: Added.

2011-03-23  Abhishek Arya  <inferno@chromium.org>

        Reviewed by Dave Hyatt.

        Tests that we do not crash when casting a text fragment of an input box
        to combine text.
        https://bugs.webkit.org/show_bug.cgi?id=56358

        * fast/text/input-box-text-fragment-combine-text-crash-expected.txt: Added.
        * fast/text/input-box-text-fragment-combine-text-crash.html: Added.

2011-03-23  Mihai Parparita  <mihaip@chromium.org>

        Update Chromium Snow Leopard baselines for SVG tests after r81168.

        * platform/chromium-mac-leopard/svg/W3C-SVG-1.1-SE/coords-units-03-b-expected.checksum: Copied from LayoutTests/platform/chromium-mac/svg/W3C-SVG-1.1-SE/coords-units-03-b-expected.checksum.
        * platform/chromium-mac-leopard/svg/W3C-SVG-1.1-SE/coords-units-03-b-expected.png: Copied from LayoutTests/platform/chromium-mac/svg/W3C-SVG-1.1-SE/coords-units-03-b-expected.png.
        * platform/chromium-mac-leopard/svg/W3C-SVG-1.1-SE/pservers-grad-20-b-expected.checksum: Copied from LayoutTests/platform/chromium-mac/svg/W3C-SVG-1.1-SE/pservers-grad-20-b-expected.checksum.
        * platform/chromium-mac-leopard/svg/W3C-SVG-1.1-SE/pservers-grad-20-b-expected.png: Copied from LayoutTests/platform/chromium-mac/svg/W3C-SVG-1.1-SE/pservers-grad-20-b-expected.png.
        * platform/chromium-mac-leopard/svg/W3C-SVG-1.1-SE/text-intro-02-b-expected.checksum: Renamed from LayoutTests/platform/chromium-mac/svg/W3C-SVG-1.1-SE/text-intro-02-b-expected.checksum.
        * platform/chromium-mac-leopard/svg/W3C-SVG-1.1-SE/text-intro-02-b-expected.png: Renamed from LayoutTests/platform/chromium-mac/svg/W3C-SVG-1.1-SE/text-intro-02-b-expected.png.
        * platform/chromium-mac-leopard/svg/W3C-SVG-1.1-SE/text-intro-02-b-expected.txt: Renamed from LayoutTests/platform/chromium-mac/svg/W3C-SVG-1.1-SE/text-intro-02-b-expected.txt.
        * platform/chromium-mac-leopard/svg/W3C-SVG-1.1-SE/text-intro-05-t-expected.checksum: Renamed from LayoutTests/platform/chromium-mac/svg/W3C-SVG-1.1-SE/text-intro-05-t-expected.checksum.
        * platform/chromium-mac-leopard/svg/W3C-SVG-1.1-SE/text-intro-05-t-expected.png: Renamed from LayoutTests/platform/chromium-mac/svg/W3C-SVG-1.1-SE/text-intro-05-t-expected.png.
        * platform/chromium-mac-leopard/svg/W3C-SVG-1.1-SE/text-intro-05-t-expected.txt: Renamed from LayoutTests/platform/chromium-mac/svg/W3C-SVG-1.1-SE/text-intro-05-t-expected.txt.
        * platform/chromium-mac-leopard/svg/W3C-SVG-1.1-SE/text-intro-09-b-expected.checksum: Renamed from LayoutTests/platform/chromium-mac/svg/W3C-SVG-1.1-SE/text-intro-09-b-expected.checksum.
        * platform/chromium-mac-leopard/svg/W3C-SVG-1.1-SE/text-intro-09-b-expected.png: Renamed from LayoutTests/platform/chromium-mac/svg/W3C-SVG-1.1-SE/text-intro-09-b-expected.png.
        * platform/chromium-mac-leopard/svg/W3C-SVG-1.1-SE/types-dom-05-b-expected.checksum: Copied from LayoutTests/platform/chromium-mac/svg/W3C-SVG-1.1-SE/types-dom-05-b-expected.checksum.
        * platform/chromium-mac-leopard/svg/W3C-SVG-1.1-SE/types-dom-05-b-expected.png: Copied from LayoutTests/platform/chromium-mac/svg/W3C-SVG-1.1-SE/types-dom-05-b-expected.png.
        * platform/chromium-mac-leopard/svg/W3C-SVG-1.1/filters-blend-01-b-expected.checksum: Copied from LayoutTests/platform/chromium-mac/svg/W3C-SVG-1.1/filters-blend-01-b-expected.checksum.
        * platform/chromium-mac-leopard/svg/W3C-SVG-1.1/filters-blend-01-b-expected.png: Copied from LayoutTests/platform/chromium-mac/svg/W3C-SVG-1.1/filters-blend-01-b-expected.png.
        * platform/chromium-mac-leopard/svg/W3C-SVG-1.1/filters-turb-02-f-expected.checksum: Copied from LayoutTests/platform/chromium-mac/svg/W3C-SVG-1.1/filters-turb-02-f-expected.checksum.
        * platform/chromium-mac-leopard/svg/W3C-SVG-1.1/filters-turb-02-f-expected.png: Copied from LayoutTests/platform/chromium-mac/svg/W3C-SVG-1.1/filters-turb-02-f-expected.png.
        * platform/chromium-mac-leopard/svg/W3C-SVG-1.1/text-fonts-03-t-expected.checksum: Renamed from LayoutTests/platform/chromium-mac/svg/W3C-SVG-1.1/text-fonts-03-t-expected.checksum.
        * platform/chromium-mac-leopard/svg/W3C-SVG-1.1/text-fonts-03-t-expected.png: Renamed from LayoutTests/platform/chromium-mac/svg/W3C-SVG-1.1/text-fonts-03-t-expected.png.
        * platform/chromium-mac-leopard/svg/W3C-SVG-1.1/text-intro-01-t-expected.checksum: Copied from LayoutTests/platform/chromium-mac/svg/W3C-SVG-1.1/text-intro-01-t-expected.checksum.
        * platform/chromium-mac-leopard/svg/W3C-SVG-1.1/text-intro-01-t-expected.png: Copied from LayoutTests/platform/chromium-mac/svg/W3C-SVG-1.1/text-intro-01-t-expected.png.
        * platform/chromium-mac-leopard/svg/carto.net/scrollbar-expected.checksum: Copied from LayoutTests/platform/chromium-mac/svg/carto.net/scrollbar-expected.checksum.
        * platform/chromium-mac-leopard/svg/carto.net/scrollbar-expected.png: Copied from LayoutTests/platform/chromium-mac/svg/carto.net/scrollbar-expected.png.
        * platform/chromium-mac-leopard/svg/carto.net/selectionlist-expected.checksum: Copied from LayoutTests/platform/chromium-mac/svg/carto.net/selectionlist-expected.checksum.
        * platform/chromium-mac-leopard/svg/carto.net/selectionlist-expected.png: Copied from LayoutTests/platform/chromium-mac/svg/carto.net/selectionlist-expected.png.
        * platform/chromium-mac-leopard/svg/custom/image-small-width-height-expected.checksum: Copied from LayoutTests/platform/chromium-mac/svg/custom/image-small-width-height-expected.checksum.
        * platform/chromium-mac-leopard/svg/custom/image-small-width-height-expected.png: Copied from LayoutTests/platform/chromium-mac/svg/custom/image-small-width-height-expected.png.
        * platform/chromium-mac-leopard/svg/custom/mouse-move-on-svg-container-expected.checksum: Renamed from LayoutTests/platform/chromium-mac/svg/custom/mouse-move-on-svg-container-expected.checksum.
        * platform/chromium-mac-leopard/svg/custom/mouse-move-on-svg-container-expected.png: Renamed from LayoutTests/platform/chromium-mac/svg/custom/mouse-move-on-svg-container-expected.png.
        * platform/chromium-mac-leopard/svg/custom/mouse-move-on-svg-container-standalone-expected.checksum: Renamed from LayoutTests/platform/chromium-mac/svg/custom/mouse-move-on-svg-container-standalone-expected.checksum.
        * platform/chromium-mac-leopard/svg/custom/mouse-move-on-svg-container-standalone-expected.png: Renamed from LayoutTests/platform/chromium-mac/svg/custom/mouse-move-on-svg-container-standalone-expected.png.
        * platform/chromium-mac-leopard/svg/custom/mouse-move-on-svg-root-expected.checksum: Copied from LayoutTests/platform/chromium-mac/svg/custom/mouse-move-on-svg-root-expected.checksum.
        * platform/chromium-mac-leopard/svg/custom/mouse-move-on-svg-root-expected.png: Copied from LayoutTests/platform/chromium-mac/svg/custom/mouse-move-on-svg-root-expected.png.
        * platform/chromium-mac-leopard/svg/custom/mouse-move-on-svg-root-standalone-expected.checksum: Copied from LayoutTests/platform/chromium-mac/svg/custom/mouse-move-on-svg-root-standalone-expected.checksum.
        * platform/chromium-mac-leopard/svg/custom/mouse-move-on-svg-root-standalone-expected.png: Copied from LayoutTests/platform/chromium-mac/svg/custom/mouse-move-on-svg-root-standalone-expected.png.
        * platform/chromium-mac-leopard/svg/text/bidi-text-anchor-direction-expected.checksum: Renamed from LayoutTests/platform/chromium-mac/svg/text/bidi-text-anchor-direction-expected.checksum.
        * platform/chromium-mac-leopard/svg/text/bidi-text-anchor-direction-expected.png: Renamed from LayoutTests/platform/chromium-mac/svg/text/bidi-text-anchor-direction-expected.png.
        * platform/chromium-mac-leopard/svg/text/bidi-text-anchor-direction-expected.txt: Renamed from LayoutTests/platform/chromium-mac/svg/text/bidi-text-anchor-direction-expected.txt.
        * platform/chromium-mac-leopard/svg/text/bidi-text-query-expected.checksum: Renamed from LayoutTests/platform/chromium-mac/svg/text/bidi-text-query-expected.checksum.
        * platform/chromium-mac-leopard/svg/text/bidi-text-query-expected.png: Renamed from LayoutTests/platform/chromium-mac/svg/text/bidi-text-query-expected.png.
        * platform/chromium-mac-leopard/svg/text/bidi-text-query-expected.txt: Renamed from LayoutTests/platform/chromium-mac/svg/text/bidi-text-query-expected.txt.
        * platform/chromium-mac-leopard/svg/text/bidi-tspans-expected.checksum: Renamed from LayoutTests/platform/chromium-mac/svg/text/bidi-tspans-expected.checksum.
        * platform/chromium-mac-leopard/svg/text/bidi-tspans-expected.png: Renamed from LayoutTests/platform/chromium-mac/svg/text/bidi-tspans-expected.png.
        * platform/chromium-mac-leopard/svg/text/bidi-tspans-expected.txt: Renamed from LayoutTests/platform/chromium-mac/svg/text/bidi-tspans-expected.txt.
        * platform/chromium-mac-leopard/svg/text/text-align-02-b-expected.checksum: Copied from LayoutTests/platform/chromium-mac/svg/text/text-align-02-b-expected.checksum.
        * platform/chromium-mac-leopard/svg/text/text-align-02-b-expected.png: Copied from LayoutTests/platform/chromium-mac/svg/text/text-align-02-b-expected.png.
        * platform/chromium-mac-leopard/svg/text/text-fonts-02-t-expected.checksum: Copied from LayoutTests/platform/chromium-mac/svg/text/text-fonts-02-t-expected.checksum.
        * platform/chromium-mac-leopard/svg/text/text-fonts-02-t-expected.png: Copied from LayoutTests/platform/chromium-mac/svg/text/text-fonts-02-t-expected.png.
        * platform/chromium-mac-leopard/svg/text/text-text-01-b-expected.checksum: Copied from LayoutTests/platform/chromium-mac/svg/text/text-text-01-b-expected.checksum.
        * platform/chromium-mac-leopard/svg/text/text-text-01-b-expected.png: Copied from LayoutTests/platform/chromium-mac/svg/text/text-text-01-b-expected.png.
        * platform/chromium-mac-leopard/svg/text/text-tspan-01-b-expected.checksum: Copied from LayoutTests/platform/chromium-mac/svg/text/text-tspan-01-b-expected.checksum.
        * platform/chromium-mac-leopard/svg/text/text-tspan-01-b-expected.png: Copied from LayoutTests/platform/chromium-mac/svg/text/text-tspan-01-b-expected.png.
        * platform/chromium-mac/svg/W3C-SVG-1.1-SE/coords-units-03-b-expected.checksum:
        * platform/chromium-mac/svg/W3C-SVG-1.1-SE/coords-units-03-b-expected.png:
        * platform/chromium-mac/svg/W3C-SVG-1.1-SE/pservers-grad-17-b-expected.checksum:
        * platform/chromium-mac/svg/W3C-SVG-1.1-SE/pservers-grad-17-b-expected.png:
        * platform/chromium-mac/svg/W3C-SVG-1.1-SE/pservers-grad-20-b-expected.checksum:
        * platform/chromium-mac/svg/W3C-SVG-1.1-SE/pservers-grad-20-b-expected.png:
        * platform/chromium-mac/svg/W3C-SVG-1.1-SE/types-dom-05-b-expected.checksum:
        * platform/chromium-mac/svg/W3C-SVG-1.1-SE/types-dom-05-b-expected.png:
        * platform/chromium-mac/svg/W3C-SVG-1.1/filters-blend-01-b-expected.checksum:
        * platform/chromium-mac/svg/W3C-SVG-1.1/filters-blend-01-b-expected.png:
        * platform/chromium-mac/svg/W3C-SVG-1.1/filters-turb-02-f-expected.checksum:
        * platform/chromium-mac/svg/W3C-SVG-1.1/filters-turb-02-f-expected.png:
        * platform/chromium-mac/svg/W3C-SVG-1.1/text-intro-01-t-expected.checksum:
        * platform/chromium-mac/svg/W3C-SVG-1.1/text-intro-01-t-expected.png:
        * platform/chromium-mac/svg/carto.net/scrollbar-expected.checksum:
        * platform/chromium-mac/svg/carto.net/scrollbar-expected.png:
        * platform/chromium-mac/svg/carto.net/selectionlist-expected.checksum:
        * platform/chromium-mac/svg/carto.net/selectionlist-expected.png:
        * platform/chromium-mac/svg/custom/image-small-width-height-expected.checksum:
        * platform/chromium-mac/svg/custom/image-small-width-height-expected.png:
        * platform/chromium-mac/svg/custom/mouse-move-on-svg-root-expected.checksum:
        * platform/chromium-mac/svg/custom/mouse-move-on-svg-root-expected.png:
        * platform/chromium-mac/svg/custom/mouse-move-on-svg-root-standalone-expected.checksum:
        * platform/chromium-mac/svg/custom/mouse-move-on-svg-root-standalone-expected.png:
        * platform/chromium-mac/svg/text/text-align-02-b-expected.checksum:
        * platform/chromium-mac/svg/text/text-align-02-b-expected.png:
        * platform/chromium-mac/svg/text/text-fonts-02-t-expected.checksum:
        * platform/chromium-mac/svg/text/text-fonts-02-t-expected.png:
        * platform/chromium-mac/svg/text/text-text-01-b-expected.checksum:
        * platform/chromium-mac/svg/text/text-text-01-b-expected.png:
        * platform/chromium-mac/svg/text/text-tspan-01-b-expected.checksum:
        * platform/chromium-mac/svg/text/text-tspan-01-b-expected.png:
        * platform/mac/svg/W3C-SVG-1.1-SE/coords-units-03-b-expected.checksum:
        * platform/mac/svg/W3C-SVG-1.1-SE/coords-units-03-b-expected.png:
        * platform/mac/svg/W3C-SVG-1.1-SE/pservers-grad-17-b-expected.checksum:
        * platform/mac/svg/W3C-SVG-1.1-SE/pservers-grad-17-b-expected.png:
        * platform/mac/svg/W3C-SVG-1.1-SE/pservers-grad-20-b-expected.checksum:
        * platform/mac/svg/W3C-SVG-1.1-SE/pservers-grad-20-b-expected.png:
        * platform/mac/svg/W3C-SVG-1.1-SE/types-dom-05-b-expected.checksum:
        * platform/mac/svg/W3C-SVG-1.1-SE/types-dom-05-b-expected.png:
        * platform/mac/svg/W3C-SVG-1.1/filters-turb-02-f-expected.checksum:
        * platform/mac/svg/W3C-SVG-1.1/filters-turb-02-f-expected.png:
        * platform/mac/svg/carto.net/scrollbar-expected.checksum:
        * platform/mac/svg/carto.net/scrollbar-expected.png:
        * platform/mac/svg/carto.net/selectionlist-expected.checksum:
        * platform/mac/svg/carto.net/selectionlist-expected.png:

2011-03-23  Abhishek Arya  <inferno@chromium.org>

        Reviewed by Dan Bernstein.

        Tests that we do not crash when accessing entries in the percent
        height descendant map.
        https://bugs.webkit.org/show_bug.cgi?id=56902

        * fast/block/percent-height-descendant-not-removed-crash-expected.txt: Added.
        * fast/block/percent-height-descendant-not-removed-crash.html: Added.

2011-03-23  Martin Robinson  <mrobinson@igalia.com>

        Rebaseline a GTK+ result after r81684.

        * platform/gtk/fast/css/getComputedStyle/computed-style-without-renderer-expected.txt:

2011-03-23  Mihai Parparita  <mihaip@chromium.org>

        Update pixel results for Snow Leopard after r80755. Where possible,
        chromium-mac results were promoted to mac-leopard, except for cases
        where Chromium behavior due to bug 52335 or form control rendering.

        * platform/chromium-mac-leopard/fast/block/margin-collapse/103-expected.checksum: Copied from LayoutTests/platform/chromium-mac/fast/block/margin-collapse/103-expected.checksum.
        * platform/chromium-mac-leopard/fast/block/margin-collapse/103-expected.png: Copied from LayoutTests/platform/chromium-mac/fast/block/margin-collapse/103-expected.png.
        * platform/chromium-mac-leopard/tables/mozilla/bugs/bug1318-expected.checksum: Copied from LayoutTests/platform/chromium-mac/tables/mozilla/bugs/bug1318-expected.checksum.
        * platform/chromium-mac-leopard/tables/mozilla/bugs/bug1318-expected.png: Copied from LayoutTests/platform/chromium-mac/tables/mozilla/bugs/bug1318-expected.png.
        * platform/chromium-mac-leopard/tables/mozilla/bugs/bug4527-expected.checksum: Copied from LayoutTests/platform/chromium-mac/tables/mozilla/bugs/bug4527-expected.checksum.
        * platform/chromium-mac-leopard/tables/mozilla/bugs/bug4527-expected.png: Copied from LayoutTests/platform/chromium-mac/tables/mozilla/bugs/bug4527-expected.png.
        * platform/chromium-mac-snowleopard/css2.1/t1008-c44-ln-box-02-d-ag-expected.checksum: Removed.
        * platform/chromium-mac-snowleopard/css2.1/t1008-c44-ln-box-02-d-ag-expected.png: Removed.
        * platform/chromium-mac-snowleopard/css2.1/t100801-c544-valgn-03-d-agi-expected.checksum: Removed.
        * platform/chromium-mac-snowleopard/css2.1/t100801-c544-valgn-03-d-agi-expected.png: Removed.
        * platform/chromium-mac/css2.1/t040302-c61-ex-len-00-b-a-expected.checksum: Removed.
        * platform/chromium-mac/css2.1/t040302-c61-ex-len-00-b-a-expected.png: Removed.
        * platform/chromium-mac/css2.1/t040302-c61-rel-len-00-b-ag-expected.checksum: Removed.
        * platform/chromium-mac/css2.1/t040302-c61-rel-len-00-b-ag-expected.png: Removed.
        * platform/chromium-mac/css2.1/t1008-c44-ln-box-02-d-ag-expected.checksum:
        * platform/chromium-mac/css2.1/t1008-c44-ln-box-02-d-ag-expected.png:
        * platform/chromium-mac/css2.1/t100801-c544-valgn-01-d-ag-expected.checksum: Removed.
        * platform/chromium-mac/css2.1/t100801-c544-valgn-01-d-ag-expected.png: Removed.
        * platform/chromium-mac/css2.1/t100801-c544-valgn-03-d-agi-expected.checksum:
        * platform/chromium-mac/css2.1/t100801-c544-valgn-03-d-agi-expected.png:
        * platform/chromium-mac/css2.1/t100801-c548-ln-ht-02-b-ag-expected.checksum: Removed.
        * platform/chromium-mac/css2.1/t100801-c548-ln-ht-02-b-ag-expected.png: Removed.
        * platform/chromium-mac/css2.1/t1507-c526-font-sz-02-b-a-expected.checksum: Removed.
        * platform/chromium-mac/css2.1/t1507-c526-font-sz-02-b-a-expected.png: Removed.
        * platform/chromium-mac/css2.1/t1601-c547-indent-00-b-a-expected.checksum: Removed.
        * platform/chromium-mac/css2.1/t1601-c547-indent-00-b-a-expected.png: Removed.
        * platform/chromium-mac/css2.1/t1604-c541-word-sp-00-b-a-expected.checksum: Removed.
        * platform/chromium-mac/css2.1/t1604-c541-word-sp-00-b-a-expected.png: Removed.
        * platform/chromium-mac/css2.1/t1604-c542-letter-sp-00-b-a-expected.checksum: Removed.
        * platform/chromium-mac/css2.1/t1604-c542-letter-sp-00-b-a-expected.png: Removed.
        * platform/chromium-mac/editing/selection/caret-rtl-2-expected.checksum: Removed.
        * platform/chromium-mac/editing/selection/caret-rtl-2-expected.png: Removed.
        * platform/chromium-mac/editing/selection/caret-rtl-2-left-expected.checksum: Removed.
        * platform/chromium-mac/editing/selection/caret-rtl-2-left-expected.png: Removed.
        * platform/chromium-mac/editing/selection/caret-rtl-expected.checksum: Removed.
        * platform/chromium-mac/editing/selection/caret-rtl-expected.png: Removed.
        * platform/chromium-mac/editing/selection/caret-rtl-right-expected.checksum: Removed.
        * platform/chromium-mac/editing/selection/caret-rtl-right-expected.png: Removed.
        * platform/chromium-mac/fast/block/margin-collapse/103-expected.checksum:
        * platform/chromium-mac/fast/block/margin-collapse/103-expected.png:
        * platform/chromium-mac/fast/css/ex-after-font-variant-expected.checksum: Removed.
        * platform/chromium-mac/fast/css/ex-after-font-variant-expected.png: Removed.
        * platform/chromium-mac/fast/css/non-standard-checkbox-size-expected.checksum: Removed.
        * platform/chromium-mac/fast/css/non-standard-checkbox-size-expected.png: Removed.
        * platform/chromium-mac/fast/lists/008-expected.checksum: Removed.
        * platform/chromium-mac/fast/lists/008-expected.png: Removed.
        * platform/chromium-mac/fast/media/mq-relative-constraints-08-expected.checksum: Removed.
        * platform/chromium-mac/fast/media/mq-relative-constraints-08-expected.png: Removed.
        * platform/chromium-mac/fast/overflow/overflow-rtl-expected.checksum: Removed.
        * platform/chromium-mac/fast/overflow/overflow-rtl-expected.png: Removed.
        * platform/chromium-mac/fast/replaced/width100percent-checkbox-expected.checksum: Removed.
        * platform/chromium-mac/fast/replaced/width100percent-checkbox-expected.png: Removed.
        * platform/chromium-mac/fast/replaced/width100percent-radio-expected.checksum: Removed.
        * platform/chromium-mac/fast/replaced/width100percent-radio-expected.png: Removed.
        * platform/chromium-mac/fast/text/whitespace/pre-wrap-spaces-after-newline-expected.checksum: Removed.
        * platform/chromium-mac/fast/text/whitespace/pre-wrap-spaces-after-newline-expected.png: Removed.
        * platform/chromium-mac/tables/mozilla/bugs/bug1318-expected.checksum:
        * platform/chromium-mac/tables/mozilla/bugs/bug1318-expected.png:
        * platform/chromium-mac/tables/mozilla/bugs/bug4527-expected.checksum:
        * platform/chromium-mac/tables/mozilla/bugs/bug4527-expected.png:
        * platform/mac-leopard/css2.1/t040302-c61-ex-len-00-b-a-expected.checksum:
        * platform/mac-leopard/css2.1/t040302-c61-ex-len-00-b-a-expected.png:
        * platform/mac-leopard/css2.1/t040302-c61-rel-len-00-b-ag-expected.checksum:
        * platform/mac-leopard/css2.1/t040302-c61-rel-len-00-b-ag-expected.png:
        * platform/mac-leopard/css2.1/t100801-c544-valgn-01-d-ag-expected.checksum:
        * platform/mac-leopard/css2.1/t100801-c544-valgn-01-d-ag-expected.png:
        * platform/mac-leopard/css2.1/t100801-c548-ln-ht-02-b-ag-expected.checksum:
        * platform/mac-leopard/css2.1/t100801-c548-ln-ht-02-b-ag-expected.png:
        * platform/mac-leopard/css2.1/t1507-c526-font-sz-02-b-a-expected.checksum:
        * platform/mac-leopard/css2.1/t1507-c526-font-sz-02-b-a-expected.png:
        * platform/mac-leopard/css2.1/t1601-c547-indent-00-b-a-expected.checksum:
        * platform/mac-leopard/css2.1/t1601-c547-indent-00-b-a-expected.png:
        * platform/mac-leopard/css2.1/t1604-c541-word-sp-00-b-a-expected.checksum:
        * platform/mac-leopard/css2.1/t1604-c541-word-sp-00-b-a-expected.png:
        * platform/mac-leopard/css2.1/t1604-c542-letter-sp-00-b-a-expected.checksum:
        * platform/mac-leopard/css2.1/t1604-c542-letter-sp-00-b-a-expected.png:
        * platform/mac-leopard/editing/selection/caret-rtl-2-expected.checksum:
        * platform/mac-leopard/editing/selection/caret-rtl-2-expected.png:
        * platform/mac-leopard/editing/selection/caret-rtl-2-left-expected.checksum:
        * platform/mac-leopard/editing/selection/caret-rtl-2-left-expected.png:
        * platform/mac-leopard/editing/selection/caret-rtl-expected.checksum:
        * platform/mac-leopard/editing/selection/caret-rtl-expected.png:
        * platform/mac-leopard/editing/selection/caret-rtl-right-expected.checksum:
        * platform/mac-leopard/editing/selection/caret-rtl-right-expected.png:
        * platform/mac-leopard/fast/css/ex-after-font-variant-expected.checksum:
        * platform/mac-leopard/fast/css/ex-after-font-variant-expected.png:
        * platform/mac-leopard/fast/css/non-standard-checkbox-size-expected.checksum:
        * platform/mac-leopard/fast/css/non-standard-checkbox-size-expected.png:
        * platform/mac-leopard/fast/lists/008-expected.checksum:
        * platform/mac-leopard/fast/lists/008-expected.png:
        * platform/mac-leopard/fast/media/mq-relative-constraints-08-expected.checksum:
        * platform/mac-leopard/fast/media/mq-relative-constraints-08-expected.png:
        * platform/mac-leopard/fast/overflow/overflow-rtl-expected.checksum:
        * platform/mac-leopard/fast/overflow/overflow-rtl-expected.png:
        * platform/mac-leopard/fast/replaced/width100percent-checkbox-expected.checksum:
        * platform/mac-leopard/fast/replaced/width100percent-checkbox-expected.png:
        * platform/mac-leopard/fast/replaced/width100percent-radio-expected.checksum:
        * platform/mac-leopard/fast/replaced/width100percent-radio-expected.png:
        * platform/mac-leopard/fast/text/whitespace/pre-wrap-spaces-after-newline-expected.checksum:
        * platform/mac-leopard/fast/text/whitespace/pre-wrap-spaces-after-newline-expected.png:
        * platform/mac/css2.1/t040302-c61-ex-len-00-b-a-expected.checksum:
        * platform/mac/css2.1/t040302-c61-ex-len-00-b-a-expected.png:
        * platform/mac/css2.1/t040302-c61-rel-len-00-b-ag-expected.checksum:
        * platform/mac/css2.1/t040302-c61-rel-len-00-b-ag-expected.png:
        * platform/mac/css2.1/t1008-c44-ln-box-02-d-ag-expected.checksum:
        * platform/mac/css2.1/t1008-c44-ln-box-02-d-ag-expected.png:
        * platform/mac/css2.1/t100801-c544-valgn-01-d-ag-expected.checksum:
        * platform/mac/css2.1/t100801-c544-valgn-01-d-ag-expected.png:
        * platform/mac/css2.1/t100801-c544-valgn-03-d-agi-expected.checksum:
        * platform/mac/css2.1/t100801-c544-valgn-03-d-agi-expected.png:
        * platform/mac/css2.1/t100801-c548-ln-ht-02-b-ag-expected.checksum:
        * platform/mac/css2.1/t100801-c548-ln-ht-02-b-ag-expected.png:
        * platform/mac/css2.1/t1507-c526-font-sz-02-b-a-expected.checksum:
        * platform/mac/css2.1/t1507-c526-font-sz-02-b-a-expected.png:
        * platform/mac/css2.1/t1601-c547-indent-00-b-a-expected.checksum:
        * platform/mac/css2.1/t1601-c547-indent-00-b-a-expected.png:
        * platform/mac/css2.1/t1604-c541-word-sp-00-b-a-expected.checksum:
        * platform/mac/css2.1/t1604-c541-word-sp-00-b-a-expected.png:
        * platform/mac/css2.1/t1604-c542-letter-sp-00-b-a-expected.checksum:
        * platform/mac/css2.1/t1604-c542-letter-sp-00-b-a-expected.png:
        * platform/mac/editing/selection/caret-ltr-2-expected.checksum:
        * platform/mac/editing/selection/caret-ltr-2-expected.png:
        * platform/mac/editing/selection/caret-ltr-2-left-expected.checksum:
        * platform/mac/editing/selection/caret-ltr-2-left-expected.png:
        * platform/mac/editing/selection/caret-ltr-expected.checksum:
        * platform/mac/editing/selection/caret-ltr-expected.png:
        * platform/mac/editing/selection/caret-ltr-right-expected.checksum:
        * platform/mac/editing/selection/caret-ltr-right-expected.png:
        * platform/mac/editing/selection/caret-rtl-2-expected.checksum:
        * platform/mac/editing/selection/caret-rtl-2-expected.png:
        * platform/mac/editing/selection/caret-rtl-2-left-expected.checksum:
        * platform/mac/editing/selection/caret-rtl-2-left-expected.png:
        * platform/mac/editing/selection/caret-rtl-expected.checksum:
        * platform/mac/editing/selection/caret-rtl-expected.png:
        * platform/mac/editing/selection/caret-rtl-right-expected.checksum:
        * platform/mac/editing/selection/caret-rtl-right-expected.png:
        * platform/mac/fast/block/margin-collapse/103-expected.checksum:
        * platform/mac/fast/block/margin-collapse/103-expected.png:
        * platform/mac/fast/css/ex-after-font-variant-expected.checksum:
        * platform/mac/fast/css/ex-after-font-variant-expected.png:
        * platform/mac/fast/css/non-standard-checkbox-size-expected.checksum:
        * platform/mac/fast/css/non-standard-checkbox-size-expected.png:
        * platform/mac/fast/lists/008-expected.checksum:
        * platform/mac/fast/lists/008-expected.png:
        * platform/mac/fast/media/mq-relative-constraints-08-expected.checksum:
        * platform/mac/fast/media/mq-relative-constraints-08-expected.png:
        * platform/mac/fast/overflow/overflow-rtl-expected.checksum:
        * platform/mac/fast/overflow/overflow-rtl-expected.png:
        * platform/mac/fast/replaced/width100percent-checkbox-expected.checksum:
        * platform/mac/fast/replaced/width100percent-checkbox-expected.png:
        * platform/mac/fast/replaced/width100percent-radio-expected.checksum:
        * platform/mac/fast/replaced/width100percent-radio-expected.png:
        * platform/mac/fast/text/whitespace/pre-wrap-spaces-after-newline-expected.checksum:
        * platform/mac/fast/text/whitespace/pre-wrap-spaces-after-newline-expected.png:
        * platform/mac/tables/mozilla/bugs/bug1318-expected.checksum:
        * platform/mac/tables/mozilla/bugs/bug1318-expected.png:
        * platform/mac/tables/mozilla/bugs/bug4527-expected.checksum:
        * platform/mac/tables/mozilla/bugs/bug4527-expected.png:

2011-03-23  Carol Szabo  <carol.szabo@nokia.com>

        Reviewed by David Hyatt.

        Added new test to expose failure to correctly find the
        before/after container when creating a CSS counter.

        CSS 2.1 failure: various before-after-* tests fail
        https://bugs.webkit.org/show_bug.cgi?id=47207

        * fast/css/counters/complex-before-expected.txt: Added.
        * fast/css/counters/complex-before.html: Added.

2011-03-23  Csaba Osztrogonác  <ossy@webkit.org>

        [Qt] Update expected files after r81684.

        * platform/qt/fast/css/getComputedStyle/computed-style-expected.txt:
        * platform/qt/fast/css/getComputedStyle/computed-style-without-renderer-expected.txt:

2011-03-22  Geoffrey Garen  <ggaren@apple.com>

        Rubber-stamped by Beth Dakin.

        Unskipped some tests, now that https://bugs.webkit.org/show_bug.cgi?id=54490
        is fixed.

        * platform/win/Skipped:

2011-03-22  Mihai Parparita  <mihaip@chromium.org>

        Fix baselines for svg/W3C-I18N for Chromium Snow Leopard. Mac SL
        baselines were added with r81168, so the Chromium ones only need to
        be in chromium-mac-leopard/ (so that they don't override them). The
        chromium-mac/ text baselines can be deleted, since we can now
        fall back on the mac-leopard/ ones added by r81176.

        * platform/chromium-mac-leopard/svg/W3C-I18N/g-dirLTR-ubNone-expected.checksum: Renamed from LayoutTests/platform/chromium-mac/svg/W3C-I18N/g-dirLTR-ubNone-expected.checksum.
        * platform/chromium-mac-leopard/svg/W3C-I18N/g-dirLTR-ubNone-expected.png: Renamed from LayoutTests/platform/chromium-mac/svg/W3C-I18N/g-dirLTR-ubNone-expected.png.
        * platform/chromium-mac-leopard/svg/W3C-I18N/g-dirLTR-ubOverride-expected.checksum: Renamed from LayoutTests/platform/chromium-mac/svg/W3C-I18N/g-dirLTR-ubOverride-expected.checksum.
        * platform/chromium-mac-leopard/svg/W3C-I18N/g-dirLTR-ubOverride-expected.png: Renamed from LayoutTests/platform/chromium-mac/svg/W3C-I18N/g-dirLTR-ubOverride-expected.png.
        * platform/chromium-mac-leopard/svg/W3C-I18N/g-dirRTL-ubNone-expected.checksum: Renamed from LayoutTests/platform/chromium-mac/svg/W3C-I18N/g-dirRTL-ubNone-expected.checksum.
        * platform/chromium-mac-leopard/svg/W3C-I18N/g-dirRTL-ubNone-expected.png: Renamed from LayoutTests/platform/chromium-mac/svg/W3C-I18N/g-dirRTL-ubNone-expected.png.
        * platform/chromium-mac-leopard/svg/W3C-I18N/g-dirRTL-ubOverride-expected.checksum: Renamed from LayoutTests/platform/chromium-mac/svg/W3C-I18N/g-dirRTL-ubOverride-expected.checksum.
        * platform/chromium-mac-leopard/svg/W3C-I18N/g-dirRTL-ubOverride-expected.png: Renamed from LayoutTests/platform/chromium-mac/svg/W3C-I18N/g-dirRTL-ubOverride-expected.png.
        * platform/chromium-mac-leopard/svg/W3C-I18N/text-anchor-dirLTR-anchorEnd-expected.checksum: Renamed from LayoutTests/platform/chromium-mac/svg/W3C-I18N/text-anchor-dirLTR-anchorEnd-expected.checksum.
        * platform/chromium-mac-leopard/svg/W3C-I18N/text-anchor-dirLTR-anchorEnd-expected.png: Renamed from LayoutTests/platform/chromium-mac/svg/W3C-I18N/text-anchor-dirLTR-anchorEnd-expected.png.
        * platform/chromium-mac-leopard/svg/W3C-I18N/text-anchor-dirLTR-anchorMiddle-expected.checksum: Renamed from LayoutTests/platform/chromium-mac/svg/W3C-I18N/text-anchor-dirLTR-anchorMiddle-expected.checksum.
        * platform/chromium-mac-leopard/svg/W3C-I18N/text-anchor-dirLTR-anchorMiddle-expected.png: Renamed from LayoutTests/platform/chromium-mac/svg/W3C-I18N/text-anchor-dirLTR-anchorMiddle-expected.png.
        * platform/chromium-mac-leopard/svg/W3C-I18N/text-anchor-dirLTR-anchorStart-expected.checksum: Renamed from LayoutTests/platform/chromium-mac/svg/W3C-I18N/text-anchor-dirLTR-anchorStart-expected.checksum.
        * platform/chromium-mac-leopard/svg/W3C-I18N/text-anchor-dirLTR-anchorStart-expected.png: Renamed from LayoutTests/platform/chromium-mac/svg/W3C-I18N/text-anchor-dirLTR-anchorStart-expected.png.
        * platform/chromium-mac-leopard/svg/W3C-I18N/text-anchor-dirNone-anchorEnd-expected.checksum: Renamed from LayoutTests/platform/chromium-mac/svg/W3C-I18N/text-anchor-dirNone-anchorEnd-expected.checksum.
        * platform/chromium-mac-leopard/svg/W3C-I18N/text-anchor-dirNone-anchorEnd-expected.png: Renamed from LayoutTests/platform/chromium-mac/svg/W3C-I18N/text-anchor-dirNone-anchorEnd-expected.png.
        * platform/chromium-mac-leopard/svg/W3C-I18N/text-anchor-dirNone-anchorMiddle-expected.checksum: Renamed from LayoutTests/platform/chromium-mac/svg/W3C-I18N/text-anchor-dirNone-anchorMiddle-expected.checksum.
        * platform/chromium-mac-leopard/svg/W3C-I18N/text-anchor-dirNone-anchorMiddle-expected.png: Renamed from LayoutTests/platform/chromium-mac/svg/W3C-I18N/text-anchor-dirNone-anchorMiddle-expected.png.
        * platform/chromium-mac-leopard/svg/W3C-I18N/text-anchor-dirNone-anchorStart-expected.checksum: Renamed from LayoutTests/platform/chromium-mac/svg/W3C-I18N/text-anchor-dirNone-anchorStart-expected.checksum.
        * platform/chromium-mac-leopard/svg/W3C-I18N/text-anchor-dirNone-anchorStart-expected.png: Renamed from LayoutTests/platform/chromium-mac/svg/W3C-I18N/text-anchor-dirNone-anchorStart-expected.png.
        * platform/chromium-mac-leopard/svg/W3C-I18N/text-anchor-dirRTL-anchorEnd-expected.checksum: Renamed from LayoutTests/platform/chromium-mac/svg/W3C-I18N/text-anchor-dirRTL-anchorEnd-expected.checksum.
        * platform/chromium-mac-leopard/svg/W3C-I18N/text-anchor-dirRTL-anchorEnd-expected.png: Renamed from LayoutTests/platform/chromium-mac/svg/W3C-I18N/text-anchor-dirRTL-anchorEnd-expected.png.
        * platform/chromium-mac-leopard/svg/W3C-I18N/text-anchor-dirRTL-anchorMiddle-expected.checksum: Renamed from LayoutTests/platform/chromium-mac/svg/W3C-I18N/text-anchor-dirRTL-anchorMiddle-expected.checksum.
        * platform/chromium-mac-leopard/svg/W3C-I18N/text-anchor-dirRTL-anchorMiddle-expected.png: Renamed from LayoutTests/platform/chromium-mac/svg/W3C-I18N/text-anchor-dirRTL-anchorMiddle-expected.png.
        * platform/chromium-mac-leopard/svg/W3C-I18N/text-anchor-dirRTL-anchorStart-expected.checksum: Renamed from LayoutTests/platform/chromium-mac/svg/W3C-I18N/text-anchor-dirRTL-anchorStart-expected.checksum.
        * platform/chromium-mac-leopard/svg/W3C-I18N/text-anchor-dirRTL-anchorStart-expected.png: Renamed from LayoutTests/platform/chromium-mac/svg/W3C-I18N/text-anchor-dirRTL-anchorStart-expected.png.
        * platform/chromium-mac-leopard/svg/W3C-I18N/text-anchor-inherited-dirLTR-anchorEnd-expected.checksum: Renamed from LayoutTests/platform/chromium-mac/svg/W3C-I18N/text-anchor-inherited-dirLTR-anchorEnd-expected.checksum.
        * platform/chromium-mac-leopard/svg/W3C-I18N/text-anchor-inherited-dirLTR-anchorEnd-expected.png: Renamed from LayoutTests/platform/chromium-mac/svg/W3C-I18N/text-anchor-inherited-dirLTR-anchorEnd-expected.png.
        * platform/chromium-mac-leopard/svg/W3C-I18N/text-anchor-inherited-dirLTR-anchorMiddle-expected.checksum: Renamed from LayoutTests/platform/chromium-mac/svg/W3C-I18N/text-anchor-inherited-dirLTR-anchorMiddle-expected.checksum.
        * platform/chromium-mac-leopard/svg/W3C-I18N/text-anchor-inherited-dirLTR-anchorMiddle-expected.png: Renamed from LayoutTests/platform/chromium-mac/svg/W3C-I18N/text-anchor-inherited-dirLTR-anchorMiddle-expected.png.
        * platform/chromium-mac-leopard/svg/W3C-I18N/text-anchor-inherited-dirLTR-anchorStart-expected.checksum: Renamed from LayoutTests/platform/chromium-mac/svg/W3C-I18N/text-anchor-inherited-dirLTR-anchorStart-expected.checksum.
        * platform/chromium-mac-leopard/svg/W3C-I18N/text-anchor-inherited-dirLTR-anchorStart-expected.png: Renamed from LayoutTests/platform/chromium-mac/svg/W3C-I18N/text-anchor-inherited-dirLTR-anchorStart-expected.png.
        * platform/chromium-mac-leopard/svg/W3C-I18N/text-anchor-inherited-dirRTL-anchorEnd-expected.checksum: Renamed from LayoutTests/platform/chromium-mac/svg/W3C-I18N/text-anchor-inherited-dirRTL-anchorEnd-expected.checksum.
        * platform/chromium-mac-leopard/svg/W3C-I18N/text-anchor-inherited-dirRTL-anchorEnd-expected.png: Renamed from LayoutTests/platform/chromium-mac/svg/W3C-I18N/text-anchor-inherited-dirRTL-anchorEnd-expected.png.
        * platform/chromium-mac-leopard/svg/W3C-I18N/text-anchor-inherited-dirRTL-anchorMiddle-expected.checksum: Renamed from LayoutTests/platform/chromium-mac/svg/W3C-I18N/text-anchor-inherited-dirRTL-anchorMiddle-expected.checksum.
        * platform/chromium-mac-leopard/svg/W3C-I18N/text-anchor-inherited-dirRTL-anchorMiddle-expected.png: Renamed from LayoutTests/platform/chromium-mac/svg/W3C-I18N/text-anchor-inherited-dirRTL-anchorMiddle-expected.png.
        * platform/chromium-mac-leopard/svg/W3C-I18N/text-anchor-inherited-dirRTL-anchorStart-expected.checksum: Renamed from LayoutTests/platform/chromium-mac/svg/W3C-I18N/text-anchor-inherited-dirRTL-anchorStart-expected.checksum.
        * platform/chromium-mac-leopard/svg/W3C-I18N/text-anchor-inherited-dirRTL-anchorStart-expected.png: Renamed from LayoutTests/platform/chromium-mac/svg/W3C-I18N/text-anchor-inherited-dirRTL-anchorStart-expected.png.
        * platform/chromium-mac-leopard/svg/W3C-I18N/text-anchor-no-markup-expected.checksum: Renamed from LayoutTests/platform/chromium-mac/svg/W3C-I18N/text-anchor-no-markup-expected.checksum.
        * platform/chromium-mac-leopard/svg/W3C-I18N/text-anchor-no-markup-expected.png: Renamed from LayoutTests/platform/chromium-mac/svg/W3C-I18N/text-anchor-no-markup-expected.png.
        * platform/chromium-mac-leopard/svg/W3C-I18N/text-dirLTR-ubNone-expected.checksum: Renamed from LayoutTests/platform/chromium-mac/svg/W3C-I18N/text-dirLTR-ubNone-expected.checksum.
        * platform/chromium-mac-leopard/svg/W3C-I18N/text-dirLTR-ubNone-expected.png: Renamed from LayoutTests/platform/chromium-mac/svg/W3C-I18N/text-dirLTR-ubNone-expected.png.
        * platform/chromium-mac-leopard/svg/W3C-I18N/text-dirLTR-ubOverride-expected.checksum: Renamed from LayoutTests/platform/chromium-mac/svg/W3C-I18N/text-dirLTR-ubOverride-expected.checksum.
        * platform/chromium-mac-leopard/svg/W3C-I18N/text-dirLTR-ubOverride-expected.png: Renamed from LayoutTests/platform/chromium-mac/svg/W3C-I18N/text-dirLTR-ubOverride-expected.png.
        * platform/chromium-mac-leopard/svg/W3C-I18N/text-dirRTL-ubNone-expected.checksum: Renamed from LayoutTests/platform/chromium-mac/svg/W3C-I18N/text-dirRTL-ubNone-expected.checksum.
        * platform/chromium-mac-leopard/svg/W3C-I18N/text-dirRTL-ubNone-expected.png: Renamed from LayoutTests/platform/chromium-mac/svg/W3C-I18N/text-dirRTL-ubNone-expected.png.
        * platform/chromium-mac-leopard/svg/W3C-I18N/text-dirRTL-ubOverride-expected.checksum: Renamed from LayoutTests/platform/chromium-mac/svg/W3C-I18N/text-dirRTL-ubOverride-expected.checksum.
        * platform/chromium-mac-leopard/svg/W3C-I18N/text-dirRTL-ubOverride-expected.png: Renamed from LayoutTests/platform/chromium-mac/svg/W3C-I18N/text-dirRTL-ubOverride-expected.png.
        * platform/chromium-mac-leopard/svg/W3C-I18N/tspan-dirLTR-ubEmbed-in-rtl-context-expected.checksum: Renamed from LayoutTests/platform/chromium-mac/svg/W3C-I18N/tspan-dirLTR-ubEmbed-in-rtl-context-expected.checksum.
        * platform/chromium-mac-leopard/svg/W3C-I18N/tspan-dirLTR-ubEmbed-in-rtl-context-expected.png: Renamed from LayoutTests/platform/chromium-mac/svg/W3C-I18N/tspan-dirLTR-ubEmbed-in-rtl-context-expected.png.
        * platform/chromium-mac-leopard/svg/W3C-I18N/tspan-dirLTR-ubNone-in-rtl-context-expected.checksum: Renamed from LayoutTests/platform/chromium-mac/svg/W3C-I18N/tspan-dirLTR-ubNone-in-rtl-context-expected.checksum.
        * platform/chromium-mac-leopard/svg/W3C-I18N/tspan-dirLTR-ubNone-in-rtl-context-expected.png: Renamed from LayoutTests/platform/chromium-mac/svg/W3C-I18N/tspan-dirLTR-ubNone-in-rtl-context-expected.png.
        * platform/chromium-mac-leopard/svg/W3C-I18N/tspan-dirLTR-ubOverride-in-default-context-expected.checksum: Renamed from LayoutTests/platform/chromium-mac/svg/W3C-I18N/tspan-dirLTR-ubOverride-in-default-context-expected.checksum.
        * platform/chromium-mac-leopard/svg/W3C-I18N/tspan-dirLTR-ubOverride-in-default-context-expected.png: Renamed from LayoutTests/platform/chromium-mac/svg/W3C-I18N/tspan-dirLTR-ubOverride-in-default-context-expected.png.
        * platform/chromium-mac-leopard/svg/W3C-I18N/tspan-dirLTR-ubOverride-in-ltr-context-expected.checksum: Renamed from LayoutTests/platform/chromium-mac/svg/W3C-I18N/tspan-dirLTR-ubOverride-in-ltr-context-expected.checksum.
        * platform/chromium-mac-leopard/svg/W3C-I18N/tspan-dirLTR-ubOverride-in-ltr-context-expected.png: Renamed from LayoutTests/platform/chromium-mac/svg/W3C-I18N/tspan-dirLTR-ubOverride-in-ltr-context-expected.png.
        * platform/chromium-mac-leopard/svg/W3C-I18N/tspan-dirLTR-ubOverride-in-rtl-context-expected.checksum: Renamed from LayoutTests/platform/chromium-mac/svg/W3C-I18N/tspan-dirLTR-ubOverride-in-rtl-context-expected.checksum.
        * platform/chromium-mac-leopard/svg/W3C-I18N/tspan-dirLTR-ubOverride-in-rtl-context-expected.png: Renamed from LayoutTests/platform/chromium-mac/svg/W3C-I18N/tspan-dirLTR-ubOverride-in-rtl-context-expected.png.
        * platform/chromium-mac-leopard/svg/W3C-I18N/tspan-dirNone-ubOverride-in-default-context-expected.checksum: Renamed from LayoutTests/platform/chromium-mac/svg/W3C-I18N/tspan-dirNone-ubOverride-in-default-context-expected.checksum.
        * platform/chromium-mac-leopard/svg/W3C-I18N/tspan-dirNone-ubOverride-in-default-context-expected.png: Renamed from LayoutTests/platform/chromium-mac/svg/W3C-I18N/tspan-dirNone-ubOverride-in-default-context-expected.png.
        * platform/chromium-mac-leopard/svg/W3C-I18N/tspan-dirNone-ubOverride-in-ltr-context-expected.checksum: Renamed from LayoutTests/platform/chromium-mac/svg/W3C-I18N/tspan-dirNone-ubOverride-in-ltr-context-expected.checksum.
        * platform/chromium-mac-leopard/svg/W3C-I18N/tspan-dirNone-ubOverride-in-ltr-context-expected.png: Renamed from LayoutTests/platform/chromium-mac/svg/W3C-I18N/tspan-dirNone-ubOverride-in-ltr-context-expected.png.
        * platform/chromium-mac-leopard/svg/W3C-I18N/tspan-dirNone-ubOverride-in-rtl-context-expected.checksum: Renamed from LayoutTests/platform/chromium-mac/svg/W3C-I18N/tspan-dirNone-ubOverride-in-rtl-context-expected.checksum.
        * platform/chromium-mac-leopard/svg/W3C-I18N/tspan-dirNone-ubOverride-in-rtl-context-expected.png: Renamed from LayoutTests/platform/chromium-mac/svg/W3C-I18N/tspan-dirNone-ubOverride-in-rtl-context-expected.png.
        * platform/chromium-mac-leopard/svg/W3C-I18N/tspan-dirRTL-ubEmbed-in-default-context-expected.checksum: Renamed from LayoutTests/platform/chromium-mac/svg/W3C-I18N/tspan-dirRTL-ubEmbed-in-default-context-expected.checksum.
        * platform/chromium-mac-leopard/svg/W3C-I18N/tspan-dirRTL-ubEmbed-in-default-context-expected.png: Renamed from LayoutTests/platform/chromium-mac/svg/W3C-I18N/tspan-dirRTL-ubEmbed-in-default-context-expected.png.
        * platform/chromium-mac-leopard/svg/W3C-I18N/tspan-dirRTL-ubEmbed-in-ltr-context-expected.checksum: Renamed from LayoutTests/platform/chromium-mac/svg/W3C-I18N/tspan-dirRTL-ubEmbed-in-ltr-context-expected.checksum.
        * platform/chromium-mac-leopard/svg/W3C-I18N/tspan-dirRTL-ubEmbed-in-ltr-context-expected.png: Renamed from LayoutTests/platform/chromium-mac/svg/W3C-I18N/tspan-dirRTL-ubEmbed-in-ltr-context-expected.png.
        * platform/chromium-mac-leopard/svg/W3C-I18N/tspan-dirRTL-ubNone-in-default-context-expected.checksum: Renamed from LayoutTests/platform/chromium-mac/svg/W3C-I18N/tspan-dirRTL-ubNone-in-default-context-expected.checksum.
        * platform/chromium-mac-leopard/svg/W3C-I18N/tspan-dirRTL-ubNone-in-default-context-expected.png: Renamed from LayoutTests/platform/chromium-mac/svg/W3C-I18N/tspan-dirRTL-ubNone-in-default-context-expected.png.
        * platform/chromium-mac-leopard/svg/W3C-I18N/tspan-dirRTL-ubNone-in-ltr-context-expected.checksum: Renamed from LayoutTests/platform/chromium-mac/svg/W3C-I18N/tspan-dirRTL-ubNone-in-ltr-context-expected.checksum.
        * platform/chromium-mac-leopard/svg/W3C-I18N/tspan-dirRTL-ubNone-in-ltr-context-expected.png: Renamed from LayoutTests/platform/chromium-mac/svg/W3C-I18N/tspan-dirRTL-ubNone-in-ltr-context-expected.png.
        * platform/chromium-mac-leopard/svg/W3C-I18N/tspan-dirRTL-ubOverride-in-default-context-expected.checksum: Renamed from LayoutTests/platform/chromium-mac/svg/W3C-I18N/tspan-dirRTL-ubOverride-in-default-context-expected.checksum.
        * platform/chromium-mac-leopard/svg/W3C-I18N/tspan-dirRTL-ubOverride-in-default-context-expected.png: Renamed from LayoutTests/platform/chromium-mac/svg/W3C-I18N/tspan-dirRTL-ubOverride-in-default-context-expected.png.
        * platform/chromium-mac-leopard/svg/W3C-I18N/tspan-dirRTL-ubOverride-in-ltr-context-expected.checksum: Renamed from LayoutTests/platform/chromium-mac/svg/W3C-I18N/tspan-dirRTL-ubOverride-in-ltr-context-expected.checksum.
        * platform/chromium-mac-leopard/svg/W3C-I18N/tspan-dirRTL-ubOverride-in-ltr-context-expected.png: Renamed from LayoutTests/platform/chromium-mac/svg/W3C-I18N/tspan-dirRTL-ubOverride-in-ltr-context-expected.png.
        * platform/chromium-mac-leopard/svg/W3C-I18N/tspan-dirRTL-ubOverride-in-rtl-context-expected.checksum: Renamed from LayoutTests/platform/chromium-mac/svg/W3C-I18N/tspan-dirRTL-ubOverride-in-rtl-context-expected.checksum.
        * platform/chromium-mac-leopard/svg/W3C-I18N/tspan-dirRTL-ubOverride-in-rtl-context-expected.png: Renamed from LayoutTests/platform/chromium-mac/svg/W3C-I18N/tspan-dirRTL-ubOverride-in-rtl-context-expected.png.
        * platform/chromium-mac-leopard/svg/W3C-I18N/tspan-direction-ltr-expected.checksum: Renamed from LayoutTests/platform/chromium-mac/svg/W3C-I18N/tspan-direction-ltr-expected.checksum.
        * platform/chromium-mac-leopard/svg/W3C-I18N/tspan-direction-ltr-expected.png: Renamed from LayoutTests/platform/chromium-mac/svg/W3C-I18N/tspan-direction-ltr-expected.png.
        * platform/chromium-mac-leopard/svg/W3C-I18N/tspan-direction-rtl-expected.checksum: Renamed from LayoutTests/platform/chromium-mac/svg/W3C-I18N/tspan-direction-rtl-expected.checksum.
        * platform/chromium-mac-leopard/svg/W3C-I18N/tspan-direction-rtl-expected.png: Renamed from LayoutTests/platform/chromium-mac/svg/W3C-I18N/tspan-direction-rtl-expected.png.
        * platform/chromium-mac/svg/W3C-I18N/g-dirLTR-ubNone-expected.txt: Removed.
        * platform/chromium-mac/svg/W3C-I18N/g-dirLTR-ubOverride-expected.txt: Removed.
        * platform/chromium-mac/svg/W3C-I18N/g-dirRTL-ubNone-expected.txt: Removed.
        * platform/chromium-mac/svg/W3C-I18N/g-dirRTL-ubOverride-expected.txt: Removed.
        * platform/chromium-mac/svg/W3C-I18N/text-anchor-dirLTR-anchorEnd-expected.txt: Removed.
        * platform/chromium-mac/svg/W3C-I18N/text-anchor-dirLTR-anchorMiddle-expected.txt: Removed.
        * platform/chromium-mac/svg/W3C-I18N/text-anchor-dirLTR-anchorStart-expected.txt: Removed.
        * platform/chromium-mac/svg/W3C-I18N/text-anchor-dirNone-anchorEnd-expected.txt: Removed.
        * platform/chromium-mac/svg/W3C-I18N/text-anchor-dirNone-anchorMiddle-expected.txt: Removed.
        * platform/chromium-mac/svg/W3C-I18N/text-anchor-dirNone-anchorStart-expected.txt: Removed.
        * platform/chromium-mac/svg/W3C-I18N/text-anchor-dirRTL-anchorEnd-expected.txt: Removed.
        * platform/chromium-mac/svg/W3C-I18N/text-anchor-dirRTL-anchorMiddle-expected.txt: Removed.
        * platform/chromium-mac/svg/W3C-I18N/text-anchor-dirRTL-anchorStart-expected.txt: Removed.
        * platform/chromium-mac/svg/W3C-I18N/text-anchor-inherited-dirLTR-anchorEnd-expected.txt: Removed.
        * platform/chromium-mac/svg/W3C-I18N/text-anchor-inherited-dirLTR-anchorMiddle-expected.txt: Removed.
        * platform/chromium-mac/svg/W3C-I18N/text-anchor-inherited-dirLTR-anchorStart-expected.txt: Removed.
        * platform/chromium-mac/svg/W3C-I18N/text-anchor-inherited-dirRTL-anchorEnd-expected.txt: Removed.
        * platform/chromium-mac/svg/W3C-I18N/text-anchor-inherited-dirRTL-anchorMiddle-expected.txt: Removed.
        * platform/chromium-mac/svg/W3C-I18N/text-anchor-inherited-dirRTL-anchorStart-expected.txt: Removed.
        * platform/chromium-mac/svg/W3C-I18N/text-anchor-no-markup-expected.txt: Removed.
        * platform/chromium-mac/svg/W3C-I18N/text-dirLTR-ubNone-expected.txt: Removed.
        * platform/chromium-mac/svg/W3C-I18N/text-dirLTR-ubOverride-expected.txt: Removed.
        * platform/chromium-mac/svg/W3C-I18N/text-dirRTL-ubNone-expected.txt: Removed.
        * platform/chromium-mac/svg/W3C-I18N/text-dirRTL-ubOverride-expected.txt: Removed.
        * platform/chromium-mac/svg/W3C-I18N/tspan-dirLTR-ubEmbed-in-rtl-context-expected.txt: Removed.
        * platform/chromium-mac/svg/W3C-I18N/tspan-dirLTR-ubNone-in-rtl-context-expected.txt: Removed.
        * platform/chromium-mac/svg/W3C-I18N/tspan-dirLTR-ubOverride-in-default-context-expected.txt: Removed.
        * platform/chromium-mac/svg/W3C-I18N/tspan-dirLTR-ubOverride-in-ltr-context-expected.txt: Removed.
        * platform/chromium-mac/svg/W3C-I18N/tspan-dirLTR-ubOverride-in-rtl-context-expected.txt: Removed.
        * platform/chromium-mac/svg/W3C-I18N/tspan-dirNone-ubOverride-in-default-context-expected.txt: Removed.
        * platform/chromium-mac/svg/W3C-I18N/tspan-dirNone-ubOverride-in-ltr-context-expected.txt: Removed.
        * platform/chromium-mac/svg/W3C-I18N/tspan-dirNone-ubOverride-in-rtl-context-expected.txt: Removed.
        * platform/chromium-mac/svg/W3C-I18N/tspan-dirRTL-ubEmbed-in-default-context-expected.txt: Removed.
        * platform/chromium-mac/svg/W3C-I18N/tspan-dirRTL-ubEmbed-in-ltr-context-expected.txt: Removed.
        * platform/chromium-mac/svg/W3C-I18N/tspan-dirRTL-ubNone-in-default-context-expected.txt: Removed.
        * platform/chromium-mac/svg/W3C-I18N/tspan-dirRTL-ubNone-in-ltr-context-expected.txt: Removed.
        * platform/chromium-mac/svg/W3C-I18N/tspan-dirRTL-ubOverride-in-default-context-expected.txt: Removed.
        * platform/chromium-mac/svg/W3C-I18N/tspan-dirRTL-ubOverride-in-ltr-context-expected.txt: Removed.
        * platform/chromium-mac/svg/W3C-I18N/tspan-dirRTL-ubOverride-in-rtl-context-expected.txt: Removed.
        * platform/chromium-mac/svg/W3C-I18N/tspan-direction-ltr-expected.txt: Removed.
        * platform/chromium-mac/svg/W3C-I18N/tspan-direction-rtl-expected.txt: Removed.

2011-03-22  Mihai Parparita  <mihaip@chromium.org>

        Add Snow Leopard baselines for fast/html/details* tests added by r81035
        (should work for both Mac and Chromium-Mac). Promote current
        chromium-mac baselines to mac-leopard, since they work for both on
        Leopard.

        * platform/mac-leopard/fast/html/details-add-summary-1-and-click-expected.checksum: Renamed from LayoutTests/platform/chromium-mac/fast/html/details-add-summary-1-and-click-expected.checksum.
        * platform/mac-leopard/fast/html/details-add-summary-1-and-click-expected.png: Renamed from LayoutTests/platform/chromium-mac/fast/html/details-add-summary-1-and-click-expected.png.
        * platform/mac-leopard/fast/html/details-add-summary-1-expected.checksum: Renamed from LayoutTests/platform/chromium-mac/fast/html/details-add-summary-1-expected.checksum.
        * platform/mac-leopard/fast/html/details-add-summary-1-expected.png: Renamed from LayoutTests/platform/chromium-mac/fast/html/details-add-summary-1-expected.png.
        * platform/mac-leopard/fast/html/details-add-summary-10-and-click-expected.checksum: Renamed from LayoutTests/platform/chromium-mac/fast/html/details-add-summary-10-and-click-expected.checksum.
        * platform/mac-leopard/fast/html/details-add-summary-10-and-click-expected.png: Renamed from LayoutTests/platform/chromium-mac/fast/html/details-add-summary-10-and-click-expected.png.
        * platform/mac-leopard/fast/html/details-add-summary-10-expected.checksum: Renamed from LayoutTests/platform/chromium-mac/fast/html/details-add-summary-10-expected.checksum.
        * platform/mac-leopard/fast/html/details-add-summary-10-expected.png: Renamed from LayoutTests/platform/chromium-mac/fast/html/details-add-summary-10-expected.png.
        * platform/mac-leopard/fast/html/details-add-summary-2-and-click-expected.checksum: Renamed from LayoutTests/platform/chromium-mac/fast/html/details-add-summary-2-and-click-expected.checksum.
        * platform/mac-leopard/fast/html/details-add-summary-2-and-click-expected.png: Renamed from LayoutTests/platform/chromium-mac/fast/html/details-add-summary-2-and-click-expected.png.
        * platform/mac-leopard/fast/html/details-add-summary-2-expected.checksum: Renamed from LayoutTests/platform/chromium-mac/fast/html/details-add-summary-2-expected.checksum.
        * platform/mac-leopard/fast/html/details-add-summary-2-expected.png: Renamed from LayoutTests/platform/chromium-mac/fast/html/details-add-summary-2-expected.png.
        * platform/mac-leopard/fast/html/details-add-summary-3-and-click-expected.checksum: Renamed from LayoutTests/platform/chromium-mac/fast/html/details-add-summary-3-and-click-expected.checksum.
        * platform/mac-leopard/fast/html/details-add-summary-3-and-click-expected.png: Renamed from LayoutTests/platform/chromium-mac/fast/html/details-add-summary-3-and-click-expected.png.
        * platform/mac-leopard/fast/html/details-add-summary-3-expected.checksum: Renamed from LayoutTests/platform/chromium-mac/fast/html/details-add-summary-3-expected.checksum.
        * platform/mac-leopard/fast/html/details-add-summary-3-expected.png: Renamed from LayoutTests/platform/chromium-mac/fast/html/details-add-summary-3-expected.png.
        * platform/mac-leopard/fast/html/details-add-summary-4-and-click-expected.checksum: Renamed from LayoutTests/platform/chromium-mac/fast/html/details-add-summary-4-and-click-expected.checksum.
        * platform/mac-leopard/fast/html/details-add-summary-4-and-click-expected.png: Renamed from LayoutTests/platform/chromium-mac/fast/html/details-add-summary-4-and-click-expected.png.
        * platform/mac-leopard/fast/html/details-add-summary-4-expected.checksum: Renamed from LayoutTests/platform/chromium-mac/fast/html/details-add-summary-4-expected.checksum.
        * platform/mac-leopard/fast/html/details-add-summary-4-expected.png: Renamed from LayoutTests/platform/chromium-mac/fast/html/details-add-summary-4-expected.png.
        * platform/mac-leopard/fast/html/details-add-summary-5-and-click-expected.checksum: Renamed from LayoutTests/platform/chromium-mac/fast/html/details-add-summary-5-and-click-expected.checksum.
        * platform/mac-leopard/fast/html/details-add-summary-5-and-click-expected.png: Renamed from LayoutTests/platform/chromium-mac/fast/html/details-add-summary-5-and-click-expected.png.
        * platform/mac-leopard/fast/html/details-add-summary-5-expected.checksum: Renamed from LayoutTests/platform/chromium-mac/fast/html/details-add-summary-5-expected.checksum.
        * platform/mac-leopard/fast/html/details-add-summary-5-expected.png: Renamed from LayoutTests/platform/chromium-mac/fast/html/details-add-summary-5-expected.png.
        * platform/mac-leopard/fast/html/details-add-summary-6-and-click-expected.checksum: Renamed from LayoutTests/platform/chromium-mac/fast/html/details-add-summary-6-and-click-expected.checksum.
        * platform/mac-leopard/fast/html/details-add-summary-6-and-click-expected.png: Renamed from LayoutTests/platform/chromium-mac/fast/html/details-add-summary-6-and-click-expected.png.
        * platform/mac-leopard/fast/html/details-add-summary-6-expected.checksum: Renamed from LayoutTests/platform/chromium-mac/fast/html/details-add-summary-6-expected.checksum.
        * platform/mac-leopard/fast/html/details-add-summary-6-expected.png: Renamed from LayoutTests/platform/chromium-mac/fast/html/details-add-summary-6-expected.png.
        * platform/mac-leopard/fast/html/details-add-summary-7-and-click-expected.checksum: Renamed from LayoutTests/platform/chromium-mac/fast/html/details-add-summary-7-and-click-expected.checksum.
        * platform/mac-leopard/fast/html/details-add-summary-7-and-click-expected.png: Renamed from LayoutTests/platform/chromium-mac/fast/html/details-add-summary-7-and-click-expected.png.
        * platform/mac-leopard/fast/html/details-add-summary-7-expected.checksum: Renamed from LayoutTests/platform/chromium-mac/fast/html/details-add-summary-7-expected.checksum.
        * platform/mac-leopard/fast/html/details-add-summary-7-expected.png: Renamed from LayoutTests/platform/chromium-mac/fast/html/details-add-summary-7-expected.png.
        * platform/mac-leopard/fast/html/details-add-summary-8-and-click-expected.checksum: Renamed from LayoutTests/platform/chromium-mac/fast/html/details-add-summary-8-and-click-expected.checksum.
        * platform/mac-leopard/fast/html/details-add-summary-8-and-click-expected.png: Renamed from LayoutTests/platform/chromium-mac/fast/html/details-add-summary-8-and-click-expected.png.
        * platform/mac-leopard/fast/html/details-add-summary-8-expected.checksum: Renamed from LayoutTests/platform/chromium-mac/fast/html/details-add-summary-8-expected.checksum.
        * platform/mac-leopard/fast/html/details-add-summary-8-expected.png: Renamed from LayoutTests/platform/chromium-mac/fast/html/details-add-summary-8-expected.png.
        * platform/mac-leopard/fast/html/details-add-summary-9-and-click-expected.checksum: Renamed from LayoutTests/platform/chromium-mac/fast/html/details-add-summary-9-and-click-expected.checksum.
        * platform/mac-leopard/fast/html/details-add-summary-9-and-click-expected.png: Renamed from LayoutTests/platform/chromium-mac/fast/html/details-add-summary-9-and-click-expected.png.
        * platform/mac-leopard/fast/html/details-add-summary-9-expected.checksum: Renamed from LayoutTests/platform/chromium-mac/fast/html/details-add-summary-9-expected.checksum.
        * platform/mac-leopard/fast/html/details-add-summary-9-expected.png: Renamed from LayoutTests/platform/chromium-mac/fast/html/details-add-summary-9-expected.png.
        * platform/mac-leopard/fast/html/details-no-summary1-expected.checksum: Renamed from LayoutTests/platform/chromium-mac/fast/html/details-no-summary1-expected.checksum.
        * platform/mac-leopard/fast/html/details-no-summary1-expected.png: Renamed from LayoutTests/platform/chromium-mac/fast/html/details-no-summary1-expected.png.
        * platform/mac-leopard/fast/html/details-no-summary2-expected.checksum: Renamed from LayoutTests/platform/chromium-mac/fast/html/details-no-summary2-expected.checksum.
        * platform/mac-leopard/fast/html/details-no-summary2-expected.png: Renamed from LayoutTests/platform/chromium-mac/fast/html/details-no-summary2-expected.png.
        * platform/mac-leopard/fast/html/details-no-summary3-expected.checksum: Renamed from LayoutTests/platform/chromium-mac/fast/html/details-no-summary3-expected.checksum.
        * platform/mac-leopard/fast/html/details-no-summary3-expected.png: Renamed from LayoutTests/platform/chromium-mac/fast/html/details-no-summary3-expected.png.
        * platform/mac-leopard/fast/html/details-no-summary4-expected.checksum: Renamed from LayoutTests/platform/chromium-mac/fast/html/details-no-summary4-expected.checksum.
        * platform/mac-leopard/fast/html/details-no-summary4-expected.png: Renamed from LayoutTests/platform/chromium-mac/fast/html/details-no-summary4-expected.png.
        * platform/mac-leopard/fast/html/details-open-javascript-expected.checksum: Renamed from LayoutTests/platform/chromium-mac/fast/html/details-open-javascript-expected.checksum.
        * platform/mac-leopard/fast/html/details-open-javascript-expected.png: Renamed from LayoutTests/platform/chromium-mac/fast/html/details-open-javascript-expected.png.
        * platform/mac-leopard/fast/html/details-open1-expected.checksum: Renamed from LayoutTests/platform/chromium-mac/fast/html/details-open1-expected.checksum.
        * platform/mac-leopard/fast/html/details-open1-expected.png: Renamed from LayoutTests/platform/chromium-mac/fast/html/details-open1-expected.png.
        * platform/mac-leopard/fast/html/details-open2-expected.checksum: Renamed from LayoutTests/platform/chromium-mac/fast/html/details-open2-expected.checksum.
        * platform/mac-leopard/fast/html/details-open2-expected.png: Renamed from LayoutTests/platform/chromium-mac/fast/html/details-open2-expected.png.
        * platform/mac-leopard/fast/html/details-open3-expected.checksum: Renamed from LayoutTests/platform/chromium-mac/fast/html/details-open3-expected.checksum.
        * platform/mac-leopard/fast/html/details-open3-expected.png: Renamed from LayoutTests/platform/chromium-mac/fast/html/details-open3-expected.png.
        * platform/mac-leopard/fast/html/details-open4-expected.checksum: Renamed from LayoutTests/platform/chromium-mac/fast/html/details-open4-expected.checksum.
        * platform/mac-leopard/fast/html/details-open4-expected.png: Renamed from LayoutTests/platform/chromium-mac/fast/html/details-open4-expected.png.
        * platform/mac-leopard/fast/html/details-open5-expected.checksum: Renamed from LayoutTests/platform/chromium-mac/fast/html/details-open5-expected.checksum.
        * platform/mac-leopard/fast/html/details-open5-expected.png: Renamed from LayoutTests/platform/chromium-mac/fast/html/details-open5-expected.png.
        * platform/mac-leopard/fast/html/details-open6-expected.checksum: Renamed from LayoutTests/platform/chromium-mac/fast/html/details-open6-expected.checksum.
        * platform/mac-leopard/fast/html/details-open6-expected.png: Renamed from LayoutTests/platform/chromium-mac/fast/html/details-open6-expected.png.
        * platform/mac-leopard/fast/html/details-position-expected.checksum: Renamed from LayoutTests/platform/chromium-mac/fast/html/details-position-expected.checksum.
        * platform/mac-leopard/fast/html/details-position-expected.png: Renamed from LayoutTests/platform/chromium-mac/fast/html/details-position-expected.png.
        * platform/mac-leopard/fast/html/details-remove-summary-1-and-click-expected.checksum: Renamed from LayoutTests/platform/chromium-mac/fast/html/details-remove-summary-1-and-click-expected.checksum.
        * platform/mac-leopard/fast/html/details-remove-summary-1-and-click-expected.png: Renamed from LayoutTests/platform/chromium-mac/fast/html/details-remove-summary-1-and-click-expected.png.
        * platform/mac-leopard/fast/html/details-remove-summary-1-expected.checksum: Renamed from LayoutTests/platform/chromium-mac/fast/html/details-remove-summary-1-expected.checksum.
        * platform/mac-leopard/fast/html/details-remove-summary-1-expected.png: Renamed from LayoutTests/platform/chromium-mac/fast/html/details-remove-summary-1-expected.png.
        * platform/mac-leopard/fast/html/details-remove-summary-2-and-click-expected.checksum: Renamed from LayoutTests/platform/chromium-mac/fast/html/details-remove-summary-2-and-click-expected.checksum.
        * platform/mac-leopard/fast/html/details-remove-summary-2-and-click-expected.png: Renamed from LayoutTests/platform/chromium-mac/fast/html/details-remove-summary-2-and-click-expected.png.
        * platform/mac-leopard/fast/html/details-remove-summary-2-expected.checksum: Renamed from LayoutTests/platform/chromium-mac/fast/html/details-remove-summary-2-expected.checksum.
        * platform/mac-leopard/fast/html/details-remove-summary-2-expected.png: Renamed from LayoutTests/platform/chromium-mac/fast/html/details-remove-summary-2-expected.png.
        * platform/mac-leopard/fast/html/details-remove-summary-3-and-click-expected.checksum: Renamed from LayoutTests/platform/chromium-mac/fast/html/details-remove-summary-3-and-click-expected.checksum.
        * platform/mac-leopard/fast/html/details-remove-summary-3-and-click-expected.png: Renamed from LayoutTests/platform/chromium-mac/fast/html/details-remove-summary-3-and-click-expected.png.
        * platform/mac-leopard/fast/html/details-remove-summary-3-expected.checksum: Renamed from LayoutTests/platform/chromium-mac/fast/html/details-remove-summary-3-expected.checksum.
        * platform/mac-leopard/fast/html/details-remove-summary-3-expected.png: Renamed from LayoutTests/platform/chromium-mac/fast/html/details-remove-summary-3-expected.png.
        * platform/mac-leopard/fast/html/details-remove-summary-4-and-click-expected.checksum: Renamed from LayoutTests/platform/chromium-mac/fast/html/details-remove-summary-4-and-click-expected.checksum.
        * platform/mac-leopard/fast/html/details-remove-summary-4-and-click-expected.png: Renamed from LayoutTests/platform/chromium-mac/fast/html/details-remove-summary-4-and-click-expected.png.
        * platform/mac-leopard/fast/html/details-remove-summary-4-expected.checksum: Renamed from LayoutTests/platform/chromium-mac/fast/html/details-remove-summary-4-expected.checksum.
        * platform/mac-leopard/fast/html/details-remove-summary-4-expected.png: Renamed from LayoutTests/platform/chromium-mac/fast/html/details-remove-summary-4-expected.png.
        * platform/mac-leopard/fast/html/details-remove-summary-5-and-click-expected.checksum: Renamed from LayoutTests/platform/chromium-mac/fast/html/details-remove-summary-5-and-click-expected.checksum.
        * platform/mac-leopard/fast/html/details-remove-summary-5-and-click-expected.png: Renamed from LayoutTests/platform/chromium-mac/fast/html/details-remove-summary-5-and-click-expected.png.
        * platform/mac-leopard/fast/html/details-remove-summary-5-expected.checksum: Renamed from LayoutTests/platform/chromium-mac/fast/html/details-remove-summary-5-expected.checksum.
        * platform/mac-leopard/fast/html/details-remove-summary-5-expected.png: Renamed from LayoutTests/platform/chromium-mac/fast/html/details-remove-summary-5-expected.png.
        * platform/mac-leopard/fast/html/details-remove-summary-6-and-click-expected.checksum: Renamed from LayoutTests/platform/chromium-mac/fast/html/details-remove-summary-6-and-click-expected.checksum.
        * platform/mac-leopard/fast/html/details-remove-summary-6-and-click-expected.png: Renamed from LayoutTests/platform/chromium-mac/fast/html/details-remove-summary-6-and-click-expected.png.
        * platform/mac-leopard/fast/html/details-remove-summary-6-expected.checksum: Renamed from LayoutTests/platform/chromium-mac/fast/html/details-remove-summary-6-expected.checksum.
        * platform/mac-leopard/fast/html/details-remove-summary-6-expected.png: Renamed from LayoutTests/platform/chromium-mac/fast/html/details-remove-summary-6-expected.png.
        * platform/mac-leopard/fast/html/details-writing-mode-expected.checksum: Renamed from LayoutTests/platform/chromium-mac/fast/html/details-writing-mode-expected.checksum.
        * platform/mac-leopard/fast/html/details-writing-mode-expected.png: Renamed from LayoutTests/platform/chromium-mac/fast/html/details-writing-mode-expected.png.
        * platform/mac/fast/html/details-add-summary-1-and-click-expected.checksum: Added.
        * platform/mac/fast/html/details-add-summary-1-and-click-expected.png: Added.
        * platform/mac/fast/html/details-add-summary-1-expected.checksum: Added.
        * platform/mac/fast/html/details-add-summary-1-expected.png: Added.
        * platform/mac/fast/html/details-add-summary-10-and-click-expected.checksum: Added.
        * platform/mac/fast/html/details-add-summary-10-and-click-expected.png: Added.
        * platform/mac/fast/html/details-add-summary-10-expected.checksum: Added.
        * platform/mac/fast/html/details-add-summary-10-expected.png: Added.
        * platform/mac/fast/html/details-add-summary-2-and-click-expected.checksum: Added.
        * platform/mac/fast/html/details-add-summary-2-and-click-expected.png: Added.
        * platform/mac/fast/html/details-add-summary-2-expected.checksum: Added.
        * platform/mac/fast/html/details-add-summary-2-expected.png: Added.
        * platform/mac/fast/html/details-add-summary-3-and-click-expected.checksum: Added.
        * platform/mac/fast/html/details-add-summary-3-and-click-expected.png: Added.
        * platform/mac/fast/html/details-add-summary-3-expected.checksum: Added.
        * platform/mac/fast/html/details-add-summary-3-expected.png: Added.
        * platform/mac/fast/html/details-add-summary-4-and-click-expected.checksum: Added.
        * platform/mac/fast/html/details-add-summary-4-and-click-expected.png: Added.
        * platform/mac/fast/html/details-add-summary-4-expected.checksum: Added.
        * platform/mac/fast/html/details-add-summary-4-expected.png: Added.
        * platform/mac/fast/html/details-add-summary-5-and-click-expected.checksum: Added.
        * platform/mac/fast/html/details-add-summary-5-and-click-expected.png: Added.
        * platform/mac/fast/html/details-add-summary-5-expected.checksum: Added.
        * platform/mac/fast/html/details-add-summary-5-expected.png: Added.
        * platform/mac/fast/html/details-add-summary-6-and-click-expected.checksum: Added.
        * platform/mac/fast/html/details-add-summary-6-and-click-expected.png: Added.
        * platform/mac/fast/html/details-add-summary-6-expected.checksum: Added.
        * platform/mac/fast/html/details-add-summary-6-expected.png: Added.
        * platform/mac/fast/html/details-add-summary-7-and-click-expected.checksum: Added.
        * platform/mac/fast/html/details-add-summary-7-and-click-expected.png: Added.
        * platform/mac/fast/html/details-add-summary-7-expected.checksum: Added.
        * platform/mac/fast/html/details-add-summary-7-expected.png: Added.
        * platform/mac/fast/html/details-add-summary-8-and-click-expected.checksum: Added.
        * platform/mac/fast/html/details-add-summary-8-and-click-expected.png: Added.
        * platform/mac/fast/html/details-add-summary-8-expected.checksum: Added.
        * platform/mac/fast/html/details-add-summary-8-expected.png: Added.
        * platform/mac/fast/html/details-add-summary-9-and-click-expected.checksum: Added.
        * platform/mac/fast/html/details-add-summary-9-and-click-expected.png: Added.
        * platform/mac/fast/html/details-add-summary-9-expected.checksum: Added.
        * platform/mac/fast/html/details-add-summary-9-expected.png: Added.
        * platform/mac/fast/html/details-no-summary1-expected.checksum: Added.
        * platform/mac/fast/html/details-no-summary1-expected.png: Added.
        * platform/mac/fast/html/details-no-summary2-expected.checksum: Added.
        * platform/mac/fast/html/details-no-summary2-expected.png: Added.
        * platform/mac/fast/html/details-no-summary3-expected.checksum: Added.
        * platform/mac/fast/html/details-no-summary3-expected.png: Added.
        * platform/mac/fast/html/details-no-summary4-expected.checksum: Added.
        * platform/mac/fast/html/details-no-summary4-expected.png: Added.
        * platform/mac/fast/html/details-open-javascript-expected.checksum: Added.
        * platform/mac/fast/html/details-open-javascript-expected.png: Added.
        * platform/mac/fast/html/details-open1-expected.checksum: Added.
        * platform/mac/fast/html/details-open1-expected.png: Added.
        * platform/mac/fast/html/details-open2-expected.checksum: Added.
        * platform/mac/fast/html/details-open2-expected.png: Added.
        * platform/mac/fast/html/details-open3-expected.checksum: Added.
        * platform/mac/fast/html/details-open3-expected.png: Added.
        * platform/mac/fast/html/details-open4-expected.checksum: Added.
        * platform/mac/fast/html/details-open4-expected.png: Added.
        * platform/mac/fast/html/details-open5-expected.checksum: Added.
        * platform/mac/fast/html/details-open5-expected.png: Added.
        * platform/mac/fast/html/details-open6-expected.checksum: Added.
        * platform/mac/fast/html/details-open6-expected.png: Added.
        * platform/mac/fast/html/details-position-expected.checksum: Added.
        * platform/mac/fast/html/details-position-expected.png: Added.
        * platform/mac/fast/html/details-remove-summary-1-and-click-expected.checksum: Added.
        * platform/mac/fast/html/details-remove-summary-1-and-click-expected.png: Added.
        * platform/mac/fast/html/details-remove-summary-1-expected.checksum: Added.
        * platform/mac/fast/html/details-remove-summary-1-expected.png: Added.
        * platform/mac/fast/html/details-remove-summary-2-and-click-expected.checksum: Added.
        * platform/mac/fast/html/details-remove-summary-2-and-click-expected.png: Added.
        * platform/mac/fast/html/details-remove-summary-2-expected.checksum: Added.
        * platform/mac/fast/html/details-remove-summary-2-expected.png: Added.
        * platform/mac/fast/html/details-remove-summary-3-and-click-expected.checksum: Added.
        * platform/mac/fast/html/details-remove-summary-3-and-click-expected.png: Added.
        * platform/mac/fast/html/details-remove-summary-3-expected.checksum: Added.
        * platform/mac/fast/html/details-remove-summary-3-expected.png: Added.
        * platform/mac/fast/html/details-remove-summary-4-and-click-expected.checksum: Added.
        * platform/mac/fast/html/details-remove-summary-4-and-click-expected.png: Added.
        * platform/mac/fast/html/details-remove-summary-4-expected.checksum: Added.
        * platform/mac/fast/html/details-remove-summary-4-expected.png: Added.
        * platform/mac/fast/html/details-remove-summary-5-and-click-expected.checksum: Added.
        * platform/mac/fast/html/details-remove-summary-5-and-click-expected.png: Added.
        * platform/mac/fast/html/details-remove-summary-5-expected.checksum: Added.
        * platform/mac/fast/html/details-remove-summary-5-expected.png: Added.
        * platform/mac/fast/html/details-remove-summary-6-and-click-expected.checksum: Added.
        * platform/mac/fast/html/details-remove-summary-6-and-click-expected.png: Added.
        * platform/mac/fast/html/details-remove-summary-6-expected.checksum: Added.
        * platform/mac/fast/html/details-remove-summary-6-expected.png: Added.
        * platform/mac/fast/html/details-writing-mode-expected.checksum: Added.
        * platform/mac/fast/html/details-writing-mode-expected.png: Added.

2011-03-22  Ojan Vafai  <ojan@chromium.org>

        Add a chromium expectation for this test. V8's exception logging
        is more specific than JSC's.

        * platform/chromium/fast/dom/SelectorAPI/unknown-pseudo-expected.txt: Added.

2011-03-17  Ojan Vafai  <ojan@chromium.org>

        Reviewed by Antti Koivisto.

        webkit should implement -moz-any selector (as -webkit-any obviously)
        https://bugs.webkit.org/show_bug.cgi?id=38095

        * fast/css/css-selector-text-expected.txt:
        * fast/css/css-selector-text.html:
        * fast/css/css-set-selector-text-expected.txt:
        * fast/css/css-set-selector-text.html:
        * fast/css/pseudo-any-expected.txt: Added.
        * fast/css/pseudo-any.html: Added.
        * fast/dom/SelectorAPI/not-supported-namespace-in-selector-expected.txt:
        * fast/dom/SelectorAPI/not-supported-namespace-in-selector.html:
        * fast/dom/SelectorAPI/unknown-pseudo-expected.txt: Added.
        * fast/dom/SelectorAPI/unknown-pseudo.html: Added.

2011-03-22  Mihai Parparita  <mihaip@chromium.org>

        Remove duplicated test expectations for details tests (expectations were
        added to the mac/ directory with r81062, so chromium-mac ones are no
        longer necessary).

        * platform/chromium-mac/fast/html/details-add-summary-1-and-click-expected.txt: Removed.
        * platform/chromium-mac/fast/html/details-add-summary-1-expected.txt: Removed.
        * platform/chromium-mac/fast/html/details-add-summary-10-and-click-expected.txt: Removed.
        * platform/chromium-mac/fast/html/details-add-summary-10-expected.txt: Removed.
        * platform/chromium-mac/fast/html/details-add-summary-2-and-click-expected.txt: Removed.
        * platform/chromium-mac/fast/html/details-add-summary-2-expected.txt: Removed.
        * platform/chromium-mac/fast/html/details-add-summary-3-and-click-expected.txt: Removed.
        * platform/chromium-mac/fast/html/details-add-summary-3-expected.txt: Removed.
        * platform/chromium-mac/fast/html/details-add-summary-4-and-click-expected.txt: Removed.
        * platform/chromium-mac/fast/html/details-add-summary-4-expected.txt: Removed.
        * platform/chromium-mac/fast/html/details-add-summary-5-and-click-expected.txt: Removed.
        * platform/chromium-mac/fast/html/details-add-summary-5-expected.txt: Removed.
        * platform/chromium-mac/fast/html/details-add-summary-6-and-click-expected.txt: Removed.
        * platform/chromium-mac/fast/html/details-add-summary-6-expected.txt: Removed.
        * platform/chromium-mac/fast/html/details-add-summary-7-and-click-expected.txt: Removed.
        * platform/chromium-mac/fast/html/details-add-summary-7-expected.txt: Removed.
        * platform/chromium-mac/fast/html/details-add-summary-8-and-click-expected.txt: Removed.
        * platform/chromium-mac/fast/html/details-add-summary-8-expected.txt: Removed.
        * platform/chromium-mac/fast/html/details-add-summary-9-and-click-expected.txt: Removed.
        * platform/chromium-mac/fast/html/details-add-summary-9-expected.txt: Removed.
        * platform/chromium-mac/fast/html/details-no-summary1-expected.txt: Removed.
        * platform/chromium-mac/fast/html/details-no-summary2-expected.txt: Removed.
        * platform/chromium-mac/fast/html/details-no-summary3-expected.txt: Removed.
        * platform/chromium-mac/fast/html/details-no-summary4-expected.txt: Removed.
        * platform/chromium-mac/fast/html/details-open-javascript-expected.txt: Removed.
        * platform/chromium-mac/fast/html/details-open1-expected.txt: Removed.
        * platform/chromium-mac/fast/html/details-open2-expected.txt: Removed.
        * platform/chromium-mac/fast/html/details-open3-expected.txt: Removed.
        * platform/chromium-mac/fast/html/details-open4-expected.txt: Removed.
        * platform/chromium-mac/fast/html/details-open5-expected.txt: Removed.
        * platform/chromium-mac/fast/html/details-open6-expected.txt: Removed.
        * platform/chromium-mac/fast/html/details-position-expected.txt: Removed.
        * platform/chromium-mac/fast/html/details-remove-summary-1-and-click-expected.txt: Removed.
        * platform/chromium-mac/fast/html/details-remove-summary-1-expected.txt: Removed.
        * platform/chromium-mac/fast/html/details-remove-summary-2-and-click-expected.txt: Removed.
        * platform/chromium-mac/fast/html/details-remove-summary-2-expected.txt: Removed.
        * platform/chromium-mac/fast/html/details-remove-summary-3-and-click-expected.txt: Removed.
        * platform/chromium-mac/fast/html/details-remove-summary-3-expected.txt: Removed.
        * platform/chromium-mac/fast/html/details-remove-summary-4-and-click-expected.txt: Removed.
        * platform/chromium-mac/fast/html/details-remove-summary-4-expected.txt: Removed.
        * platform/chromium-mac/fast/html/details-remove-summary-5-and-click-expected.txt: Removed.
        * platform/chromium-mac/fast/html/details-remove-summary-5-expected.txt: Removed.
        * platform/chromium-mac/fast/html/details-remove-summary-6-and-click-expected.txt: Removed.
        * platform/chromium-mac/fast/html/details-remove-summary-6-expected.txt: Removed.
        * platform/chromium-mac/fast/html/details-writing-mode-expected.txt: Removed.

2011-03-22  Dean Jackson  <dino@apple.com>

        https://bugs.webkit.org/show_bug.cgi?id=56488
        Some transitions/animations tests fail assertion in AnimationBase::updateStateMachine

        Turning some tests back on after r81722.

        * platform/chromium/test_expectations.txt:
        * platform/mac/Skipped:
        * platform/win/Skipped:
        - unskipping
          animations/suspend-resume-animation-events.html
          compositing/transitions/scale-transition-no-start.html
          compositing/transitions/singular-scale-transition.html

2011-03-22  Anton D'Auria  <adauria@apple.com>

        Reviewed by Alexey Proskuryakov.

        Add +[WebApplicationCache getOriginsWithCache]
        https://bugs.webkit.org/show_bug.cgi?id=56722

        This test twice retrieves lists of origins with application cache.
        First, after deleting all application cache and after adding an iframe with an
        application cache.

        * http/tests/appcache/origins-with-appcache-expected.txt: Added.
        * http/tests/appcache/origins-with-appcache.html: Added.
        * http/tests/appcache/resources/origins-with-appcache-iframe.html: Added.
        * http/tests/appcache/resources/origins-with-appcache-iframe.manifest: Added.
        * platform/chromium/test_expectations.txt:
        * platform/gtk/Skipped:
        * platform/mac-wk2/Skipped:
        * platform/qt-wk2/Skipped:
        * platform/qt/Skipped:

2011-03-22  James Simonsen  <simonjam@chromium.org>

        [Chromium] Unreviewed, rebaseline chromium gpu tests after r81715.

        * platform/chromium-gpu-linux/compositing/geometry/foreground-layer-expected.checksum: Added.
        * platform/chromium-gpu-linux/compositing/geometry/foreground-layer-expected.png: Added.
        * platform/chromium-gpu-linux/compositing/geometry/repaint-foreground-layer-expected.checksum: Added.
        * platform/chromium-gpu-linux/compositing/geometry/repaint-foreground-layer-expected.png: Added.
        * platform/chromium-gpu-mac/compositing/geometry/foreground-layer-expected.checksum: Added.
        * platform/chromium-gpu-mac/compositing/geometry/foreground-layer-expected.png: Added.
        * platform/chromium-gpu-mac/compositing/geometry/repaint-foreground-layer-expected.checksum: Added.
        * platform/chromium-gpu-mac/compositing/geometry/repaint-foreground-layer-expected.png: Added.
        * platform/chromium-gpu-win/compositing/geometry/foreground-layer-expected.checksum: Added.
        * platform/chromium-gpu-win/compositing/geometry/foreground-layer-expected.png: Added.
        * platform/chromium-gpu-win/compositing/geometry/repaint-foreground-layer-expected.checksum: Added.
        * platform/chromium-gpu-win/compositing/geometry/repaint-foreground-layer-expected.png: Added.

2011-03-22  Dean Jackson  <dino@apple.com>

        https://bugs.webkit.org/show_bug.cgi?id=56242
        transitions/interrupted-accelerated-transition.html was failing

        Unskipping this after r81722

        * platform/chromium/test_expectations.txt:
        * platform/mac/Skipped:
        * platform/win/Skipped:

2011-03-22  Adam Klein  <adamk@chromium.org>

        Reviewed by David Levin.

        [fileapi] New resolve url tests don't pass on Chromium. Skipping them.
        https://bugs.webkit.org/show_bug.cgi?id=56800

        * platform/chromium/test_expectations.txt:
        Skip all tests in http/tests/filesystem/workers.
        They can't run in test_shell, and are instead run in
        Chromium's ui_tests.

2011-03-22  Simon Fraser  <simon.fraser@apple.com>

        Reviewed by Beth Dakin.

        Incorrect rendering of composited element with negative z-index child
        https://bugs.webkit.org/show_bug.cgi?id=56846

        Testcases for content with a foreground layer, and a foreground layer which is
        partially repainted.

        * compositing/geometry/foreground-layer-expected.txt: Added.
        * compositing/geometry/foreground-layer.html: Added.
        * compositing/geometry/repaint-foreground-layer-expected.txt: Added.
        * compositing/geometry/repaint-foreground-layer.html: Added.
        * platform/mac/compositing/geometry/foreground-layer-expected.checksum: Added.
        * platform/mac/compositing/geometry/foreground-layer-expected.png: Added.
        * platform/mac/compositing/geometry/repaint-foreground-layer-expected.checksum: Added.
        * platform/mac/compositing/geometry/repaint-foreground-layer-expected.png: Added.

2011-03-22  James Simonsen  <simonjam@chromium.org>

        [Chromium] Unreviewed, rebaseline chromium tests after r81684.

        * platform/chromium-linux/fast/block/lineboxcontain/block-expected.checksum: Added.
        * platform/chromium-linux/fast/block/lineboxcontain/block-expected.png: Added.
        * platform/chromium-linux/fast/block/lineboxcontain/block-font-expected.checksum: Added.
        * platform/chromium-linux/fast/block/lineboxcontain/block-font-expected.png: Added.
        * platform/chromium-linux/fast/block/lineboxcontain/block-glyphs-expected.checksum: Added.
        * platform/chromium-linux/fast/block/lineboxcontain/block-glyphs-expected.png: Added.
        * platform/chromium-linux/fast/block/lineboxcontain/block-replaced-expected.checksum: Added.
        * platform/chromium-linux/fast/block/lineboxcontain/block-replaced-expected.png: Added.
        * platform/chromium-linux/fast/block/lineboxcontain/font-expected.checksum: Added.
        * platform/chromium-linux/fast/block/lineboxcontain/font-expected.png: Added.
        * platform/chromium-linux/fast/block/lineboxcontain/font-replaced-expected.checksum: Added.
        * platform/chromium-linux/fast/block/lineboxcontain/font-replaced-expected.png: Added.
        * platform/chromium-linux/fast/block/lineboxcontain/inline-box-expected.checksum: Added.
        * platform/chromium-linux/fast/block/lineboxcontain/inline-box-expected.png: Added.
        * platform/chromium-linux/fast/block/lineboxcontain/inline-box-replaced-expected.checksum: Added.
        * platform/chromium-linux/fast/block/lineboxcontain/inline-box-replaced-expected.png: Added.
        * platform/chromium-linux/fast/block/lineboxcontain/inline-box-vertical-expected.checksum: Added.
        * platform/chromium-linux/fast/block/lineboxcontain/inline-box-vertical-expected.png: Added.
        * platform/chromium-linux/fast/block/lineboxcontain/inline-expected.checksum: Added.
        * platform/chromium-linux/fast/block/lineboxcontain/inline-expected.png: Added.
        * platform/chromium-linux/fast/block/lineboxcontain/inline-replaced-expected.checksum: Added.
        * platform/chromium-linux/fast/block/lineboxcontain/inline-replaced-expected.png: Added.
        * platform/chromium-linux/fast/block/lineboxcontain/none-expected.checksum: Added.
        * platform/chromium-linux/fast/block/lineboxcontain/none-expected.png: Added.
        * platform/chromium-linux/fast/block/lineboxcontain/parsing-invalid-expected.checksum: Added.
        * platform/chromium-linux/fast/block/lineboxcontain/parsing-invalid-expected.png: Added.
        * platform/chromium-linux/fast/block/lineboxcontain/replaced-expected.checksum: Added.
        * platform/chromium-linux/fast/block/lineboxcontain/replaced-expected.png: Added.
        * platform/chromium-mac-leopard/fast/block/lineboxcontain/block-expected.checksum: Added.
        * platform/chromium-mac-leopard/fast/block/lineboxcontain/block-expected.png: Added.
        * platform/chromium-mac-leopard/fast/block/lineboxcontain/block-font-expected.checksum: Added.
        * platform/chromium-mac-leopard/fast/block/lineboxcontain/block-font-expected.png: Added.
        * platform/chromium-mac-leopard/fast/block/lineboxcontain/block-glyphs-expected.checksum: Added.
        * platform/chromium-mac-leopard/fast/block/lineboxcontain/block-glyphs-expected.png: Added.
        * platform/chromium-mac-leopard/fast/block/lineboxcontain/block-glyphs-replaced-expected.checksum: Added.
        * platform/chromium-mac-leopard/fast/block/lineboxcontain/block-glyphs-replaced-expected.png: Added.
        * platform/chromium-mac-leopard/fast/block/lineboxcontain/block-replaced-expected.checksum: Added.
        * platform/chromium-mac-leopard/fast/block/lineboxcontain/block-replaced-expected.png: Added.
        * platform/chromium-mac-leopard/fast/block/lineboxcontain/font-expected.checksum: Added.
        * platform/chromium-mac-leopard/fast/block/lineboxcontain/font-expected.png: Added.
        * platform/chromium-mac-leopard/fast/block/lineboxcontain/font-replaced-expected.checksum: Added.
        * platform/chromium-mac-leopard/fast/block/lineboxcontain/font-replaced-expected.png: Added.
        * platform/chromium-mac-leopard/fast/block/lineboxcontain/glyphs-expected.checksum: Added.
        * platform/chromium-mac-leopard/fast/block/lineboxcontain/glyphs-expected.png: Added.
        * platform/chromium-mac-leopard/fast/block/lineboxcontain/inline-box-expected.checksum: Added.
        * platform/chromium-mac-leopard/fast/block/lineboxcontain/inline-box-expected.png: Added.
        * platform/chromium-mac-leopard/fast/block/lineboxcontain/inline-box-replaced-expected.checksum: Added.
        * platform/chromium-mac-leopard/fast/block/lineboxcontain/inline-box-replaced-expected.png: Added.
        * platform/chromium-mac-leopard/fast/block/lineboxcontain/inline-expected.checksum: Added.
        * platform/chromium-mac-leopard/fast/block/lineboxcontain/inline-expected.png: Added.
        * platform/chromium-mac-leopard/fast/block/lineboxcontain/inline-replaced-expected.checksum: Added.
        * platform/chromium-mac-leopard/fast/block/lineboxcontain/inline-replaced-expected.png: Added.
        * platform/chromium-mac-leopard/fast/block/lineboxcontain/none-expected.checksum: Added.
        * platform/chromium-mac-leopard/fast/block/lineboxcontain/none-expected.png: Added.
        * platform/chromium-mac-leopard/fast/block/lineboxcontain/parsing-invalid-expected.checksum: Added.
        * platform/chromium-mac-leopard/fast/block/lineboxcontain/parsing-invalid-expected.png: Added.
        * platform/chromium-mac-leopard/fast/block/lineboxcontain/replaced-expected.checksum: Added.
        * platform/chromium-mac-leopard/fast/block/lineboxcontain/replaced-expected.png: Added.
        * platform/chromium-win/fast/block/lineboxcontain/block-expected.checksum: Added.
        * platform/chromium-win/fast/block/lineboxcontain/block-expected.png: Added.
        * platform/chromium-win/fast/block/lineboxcontain/block-expected.txt: Added.
        * platform/chromium-win/fast/block/lineboxcontain/block-font-expected.checksum: Added.
        * platform/chromium-win/fast/block/lineboxcontain/block-font-expected.png: Added.
        * platform/chromium-win/fast/block/lineboxcontain/block-font-expected.txt: Added.
        * platform/chromium-win/fast/block/lineboxcontain/block-glyphs-expected.checksum: Added.
        * platform/chromium-win/fast/block/lineboxcontain/block-glyphs-expected.png: Added.
        * platform/chromium-win/fast/block/lineboxcontain/block-glyphs-expected.txt: Added.
        * platform/chromium-win/fast/block/lineboxcontain/block-replaced-expected.checksum: Added.
        * platform/chromium-win/fast/block/lineboxcontain/block-replaced-expected.png: Added.
        * platform/chromium-win/fast/block/lineboxcontain/block-replaced-expected.txt: Added.
        * platform/chromium-win/fast/block/lineboxcontain/font-expected.checksum: Added.
        * platform/chromium-win/fast/block/lineboxcontain/font-expected.png: Added.
        * platform/chromium-win/fast/block/lineboxcontain/font-expected.txt: Added.
        * platform/chromium-win/fast/block/lineboxcontain/font-replaced-expected.checksum: Added.
        * platform/chromium-win/fast/block/lineboxcontain/font-replaced-expected.png: Added.
        * platform/chromium-win/fast/block/lineboxcontain/font-replaced-expected.txt: Added.
        * platform/chromium-win/fast/block/lineboxcontain/inline-box-expected.checksum: Added.
        * platform/chromium-win/fast/block/lineboxcontain/inline-box-expected.png: Added.
        * platform/chromium-win/fast/block/lineboxcontain/inline-box-expected.txt: Added.
        * platform/chromium-win/fast/block/lineboxcontain/inline-box-replaced-expected.checksum: Added.
        * platform/chromium-win/fast/block/lineboxcontain/inline-box-replaced-expected.png: Added.
        * platform/chromium-win/fast/block/lineboxcontain/inline-box-replaced-expected.txt: Added.
        * platform/chromium-win/fast/block/lineboxcontain/inline-box-vertical-expected.checksum: Added.
        * platform/chromium-win/fast/block/lineboxcontain/inline-box-vertical-expected.png: Added.
        * platform/chromium-win/fast/block/lineboxcontain/inline-box-vertical-expected.txt: Added.
        * platform/chromium-win/fast/block/lineboxcontain/inline-expected.checksum: Added.
        * platform/chromium-win/fast/block/lineboxcontain/inline-expected.png: Added.
        * platform/chromium-win/fast/block/lineboxcontain/inline-expected.txt: Added.
        * platform/chromium-win/fast/block/lineboxcontain/inline-replaced-expected.checksum: Added.
        * platform/chromium-win/fast/block/lineboxcontain/inline-replaced-expected.png: Added.
        * platform/chromium-win/fast/block/lineboxcontain/inline-replaced-expected.txt: Added.
        * platform/chromium-win/fast/block/lineboxcontain/none-expected.checksum: Added.
        * platform/chromium-win/fast/block/lineboxcontain/none-expected.png: Added.
        * platform/chromium-win/fast/block/lineboxcontain/none-expected.txt: Added.
        * platform/chromium-win/fast/block/lineboxcontain/parsing-invalid-expected.checksum: Added.
        * platform/chromium-win/fast/block/lineboxcontain/parsing-invalid-expected.png: Added.
        * platform/chromium-win/fast/block/lineboxcontain/parsing-invalid-expected.txt: Added.
        * platform/chromium-win/fast/block/lineboxcontain/replaced-expected.checksum: Added.
        * platform/chromium-win/fast/block/lineboxcontain/replaced-expected.png: Added.
        * platform/chromium-win/fast/block/lineboxcontain/replaced-expected.txt: Added.
        * platform/chromium/test_expectations.txt:

2011-03-22  Justin Schuh  <jschuh@chromium.org>

        Reviewed by Dirk Schulze.

        SVG displacement map should validate channel selections
        https://bugs.webkit.org/show_bug.cgi?id=56794

        * svg/filters/feDisplacementMap-crash-test-expected.txt: Added.
        * svg/filters/feDisplacementMap-crash-test.xhtml: Added.

2011-03-22  David Hyatt  <hyatt@apple.com>

        Reviewed by Simon Fraser.

        https://bugs.webkit.org/show_bug.cgi?id=56388

        Implement the CSS3 line-box-contain property. This property provides authors with more control over spacing between lines. For example,
        you can fix the height of lines and cause all line contents to be ignored. You can make lines fit to glyphs. You can ignore leading and
        fit to the font size. You can ignore replaced elements, etc.

        Refactor the code in computeLogicalBoxHeights into helper methods on RootInlineBox. verticalPositionForBox moved over to RootInlineBox
        so that it could be called from RenderBlockLineLayout. ascentAndDescentForBox is the new method that computes the appropriate box
        height based off the block's line-box-contain value.

        GlyphOverflow can now have a computeBounds parameter set, in which case glyph bounds will be computed and stored in the overflow struct.

        RenderInline no longer returns 0 margins in the block direction, since line-box-contain can size around the margin box.

        * fast/block/lineboxcontain: Added.
        * fast/block/lineboxcontain/block-font.html: Added.
        * fast/block/lineboxcontain/block-glyphs-replaced.html: Added.
        * fast/block/lineboxcontain/block-glyphs.html: Added.
        * fast/block/lineboxcontain/block-replaced.html: Added.
        * fast/block/lineboxcontain/block.html: Added.
        * fast/block/lineboxcontain/font-replaced.html: Added.
        * fast/block/lineboxcontain/font.html: Added.
        * fast/block/lineboxcontain/glyphs.html: Added.
        * fast/block/lineboxcontain/inline-box-replaced.html: Added.
        * fast/block/lineboxcontain/inline-box-vertical.html: Added.
        * fast/block/lineboxcontain/inline-box.html: Added.
        * fast/block/lineboxcontain/inline-replaced.html: Added.
        * fast/block/lineboxcontain/inline.html: Added.
        * fast/block/lineboxcontain/none.html: Added.
        * fast/block/lineboxcontain/replaced.html: Added.
        * platform/mac/fast/block/lineboxcontain: Added.
        * platform/mac/fast/block/lineboxcontain/block-expected.checksum: Added.
        * platform/mac/fast/block/lineboxcontain/block-expected.png: Added.
        * platform/mac/fast/block/lineboxcontain/block-expected.txt: Added.
        * platform/mac/fast/block/lineboxcontain/block-font-expected.checksum: Added.
        * platform/mac/fast/block/lineboxcontain/block-font-expected.png: Added.
        * platform/mac/fast/block/lineboxcontain/block-font-expected.txt: Added.
        * platform/mac/fast/block/lineboxcontain/block-glyphs-expected.checksum: Added.
        * platform/mac/fast/block/lineboxcontain/block-glyphs-expected.png: Added.
        * platform/mac/fast/block/lineboxcontain/block-glyphs-expected.txt: Added.
        * platform/mac/fast/block/lineboxcontain/block-glyphs-replaced-expected.checksum: Added.
        * platform/mac/fast/block/lineboxcontain/block-glyphs-replaced-expected.png: Added.
        * platform/mac/fast/block/lineboxcontain/block-glyphs-replaced-expected.txt: Added.
        * platform/mac/fast/block/lineboxcontain/block-replaced-expected.checksum: Added.
        * platform/mac/fast/block/lineboxcontain/block-replaced-expected.png: Added.
        * platform/mac/fast/block/lineboxcontain/block-replaced-expected.txt: Added.
        * platform/mac/fast/block/lineboxcontain/font-expected.checksum: Added.
        * platform/mac/fast/block/lineboxcontain/font-expected.png: Added.
        * platform/mac/fast/block/lineboxcontain/font-expected.txt: Added.
        * platform/mac/fast/block/lineboxcontain/font-replaced-expected.checksum: Added.
        * platform/mac/fast/block/lineboxcontain/font-replaced-expected.png: Added.
        * platform/mac/fast/block/lineboxcontain/font-replaced-expected.txt: Added.
        * platform/mac/fast/block/lineboxcontain/glyphs-expected.checksum: Added.
        * platform/mac/fast/block/lineboxcontain/glyphs-expected.png: Added.
        * platform/mac/fast/block/lineboxcontain/glyphs-expected.txt: Added.
        * platform/mac/fast/block/lineboxcontain/inline-box-expected.checksum: Added.
        * platform/mac/fast/block/lineboxcontain/inline-box-expected.png: Added.
        * platform/mac/fast/block/lineboxcontain/inline-box-expected.txt: Added.
        * platform/mac/fast/block/lineboxcontain/inline-box-replaced-expected.checksum: Added.
        * platform/mac/fast/block/lineboxcontain/inline-box-replaced-expected.png: Added.
        * platform/mac/fast/block/lineboxcontain/inline-box-replaced-expected.txt: Added.
        * platform/mac/fast/block/lineboxcontain/inline-box-vertical-expected.checksum: Added.
        * platform/mac/fast/block/lineboxcontain/inline-box-vertical-expected.png: Added.
        * platform/mac/fast/block/lineboxcontain/inline-box-vertical-expected.txt: Added.
        * platform/mac/fast/block/lineboxcontain/inline-expected.checksum: Added.
        * platform/mac/fast/block/lineboxcontain/inline-expected.png: Added.
        * platform/mac/fast/block/lineboxcontain/inline-expected.txt: Added.
        * platform/mac/fast/block/lineboxcontain/inline-replaced-expected.checksum: Added.
        * platform/mac/fast/block/lineboxcontain/inline-replaced-expected.png: Added.
        * platform/mac/fast/block/lineboxcontain/inline-replaced-expected.txt: Added.
        * platform/mac/fast/block/lineboxcontain/none-expected.checksum: Added.
        * platform/mac/fast/block/lineboxcontain/none-expected.png: Added.
        * platform/mac/fast/block/lineboxcontain/none-expected.txt: Added.
        * platform/mac/fast/block/lineboxcontain/replaced-expected.checksum: Added.
        * platform/mac/fast/block/lineboxcontain/replaced-expected.png: Added.
        * platform/mac/fast/block/lineboxcontain/replaced-expected.txt: Added.

2011-03-22  Sheriff Bot  <webkit.review.bot@gmail.com>

        Unreviewed, rolling out r81664.
        http://trac.webkit.org/changeset/81664
        https://bugs.webkit.org/show_bug.cgi?id=56840

        Rolling out followups to 81653 with expectations. (Requested
        by pfeldman on #webkit).

        * platform/win/fast/forms/listbox-bidi-align-expected.checksum: Removed.
        * platform/win/fast/forms/listbox-bidi-align-expected.png: Removed.
        * platform/win/fast/forms/listbox-bidi-align-expected.txt: Removed.

2011-03-22  Sheriff Bot  <webkit.review.bot@gmail.com>

        Unreviewed, rolling out r81653.
        http://trac.webkit.org/changeset/81653
        https://bugs.webkit.org/show_bug.cgi?id=56839

        Breaks fast/text/drawBidiText.html on Chromium. (Requested by
        pfeldman on #webkit).

        * fast/forms/listbox-bidi-align.html: Removed.
        * platform/mac/fast/forms/listbox-bidi-align-expected.checksum: Removed.
        * platform/mac/fast/forms/listbox-bidi-align-expected.png: Removed.
        * platform/mac/fast/forms/listbox-bidi-align-expected.txt: Removed.

2011-03-22  Pavel Feldman  <pfeldman@chromium.org>

        Not reviewed. Rolling out 81657, 81654, 81651 for breaking tests on chromium.

        * inspector/protocol/database-agent-expected.txt: Removed.
        * inspector/protocol/database-agent.html: Removed.
        * platform/chromium/inspector/protocol/database-agent-expected.txt: Removed.

2011-03-22  Adam Roben  <aroben@apple.com>

        Add Windows expected failure results after r81625

        The failure is tracked by <http://webkit.org/b/56829>.

        * platform/win/fast/css/percentage-non-integer-expected.checksum: Added.
        * platform/win/fast/css/percentage-non-integer-expected.png: Added.
        * platform/win/fast/css/percentage-non-integer-expected.txt: Added.

2011-03-22  Adam Roben  <aroben@apple.com>

        Fix new http tests added in r81635 on Windows

        * http/tests/cache/post-redirect-get.php:
        * http/tests/cache/post-with-cached-subresources.php:
        * http/tests/cache/resources/post-image-to-verify.php:
        Pull in portabilityLayer.php, which implements sys_get_temp_dir for PHP 4.

2011-03-22  Adam Roben  <aroben@apple.com>

        Add Windows results for new test added in r81653

        Windows differs from Mac due to a different scrollbar width within the listboxes.

        * platform/win/fast/forms/listbox-bidi-align-expected.checksum: Added.
        * platform/win/fast/forms/listbox-bidi-align-expected.png: Added.
        * platform/win/fast/forms/listbox-bidi-align-expected.txt: Added.

2011-03-22  Adam Roben  <aroben@apple.com>

        Update Windows results for new test added in r81652

        The checked-in results were trying to show that Windows would fail this test, but weren't
        quite accurate. Even with these new results Windows still fails the test; the failure is
        tracked by <http://webkit.org/b/56828>.

        * platform/win/fast/forms/reset-autofilled-expected.txt:

2011-03-22  Csaba Osztrogonác  <ossy@webkit.org>

        [Qt] Update expectations.

        * platform/qt/Skipped:# Add fast/forms/input-autofilled.html because of missing layoutTestController.setAutofilled()
        * platform/qt/css2.1/t09-c5526c-display-00-e-expected.checksum: Updated.
        * platform/qt/css2.1/t09-c5526c-display-00-e-expected.png: Updated.
        * platform/qt/css2.1/t09-c5526c-display-00-e-expected.txt: Updated.

2011-03-22  Adam Roben  <aroben@apple.com>

        Skip a new test that relies on unimplemented LayoutTestController functionality in WTR

        * platform/mac-wk2/Skipped: Added fast/forms/reset-autofilled.html.

2011-03-22  Ilya Tikhonovsky  <loislo@chromium.org>

        Unreviewed update of database-agent test expectations.
        Empty line added at the end.

        * inspector/protocol/database-agent-expected.txt:

2011-03-22  Mario Sanchez Prada  <msanchez@igalia.com>

        Unreviewed, Skipped one test failing because of the same reason.

        [GTK] Some test results are one pixel different between the x86_64 and i386 bots
        https://bugs.webkit.org/show_bug.cgi?id=39022

        * platform/gtk/Skipped: Skip fast/css/percentage-non-integer.html.

2011-03-22  Ilya Tikhonovsky  <loislo@chromium.org>

        Unreviewed fix for database-agent test.

        * inspector/protocol/database-agent-expected.txt:
        * platform/chromium/inspector/protocol/database-agent-expected.txt: Copied from LayoutTests/inspector/protocol/database-agent-expected.txt.

2011-03-22  Ofri Wolfus  <ofri@google.com>

        Reviewed by Eric Seidel.

        RTL: Select elements with a size attribute are always left aligned.
        https://bugs.webkit.org/show_bug.cgi?id=50928

        Added support for alignment in RenderListBox.

        * fast/forms/listbox-bidi-align.html: Added.
        * platform/mac/fast/forms/listbox-bidi-align-expected.txt: Added.

2011-03-22  Ilya Sherman  <isherman@chromium.org>

        Reviewed by Kent Tamura.

        Clear autofilled flag when reseting a form
        https://bugs.webkit.org/show_bug.cgi?id=56802

        * fast/forms/reset-autofilled-expected.txt: Added.
        * fast/forms/reset-autofilled.html: Added.
        * platform/chromium/fast/forms/reset-autofilled-expected.txt: Added.
        * platform/win/fast/forms/reset-autofilled-expected.txt: Added.

2011-03-22  Ilya Tikhonovsky  <loislo@chromium.org>

        Reviewed by Yury Semikhatsky.

        Web Inspector: protocol cleanup. DatabaseAgent.
        https://bugs.webkit.org/show_bug.cgi?id=56815

        see protocol metabug:
        - All events should use notification wording, not command wording:

        addDatabase was renamed to DatabaseOpened.

        * inspector/protocol/database-agent-expected.txt: Added.
        * inspector/protocol/database-agent.html: Added.

2011-03-22  Ilya Tikhonovsky  <loislo@chromium.org>

        Reviewed by Yury Semikhatsky.

        Web Inspector: protocol cleanup. ConsoleAgent.
        https://bugs.webkit.org/show_bug.cgi?id=56806

        renamed method: void setConsoleMessagesEnabled(in boolean enabled, out boolean newState); => void enable(out long expiredMessagesCount);
        new method: disable()
        deleted method: [event] void consoleMessageExpiredCountUpdate(out unsigned long count); delete it. The counter will be transfered as out argument of enable command.

        * inspector/protocol/console-agent-expected.txt:
        * inspector/protocol/console-agent.html:

2011-03-21  Abhishek Arya  <inferno@chromium.org>

        Reviewed by Eric Seidel.

        Tests that we do not crash when searching up the render tree
        for an anchor element in accessibility code.
        https://bugs.webkit.org/show_bug.cgi?id=56709

        * accessibility/anchor-linked-anonymous-block-crash-expected.txt: Added.
        * accessibility/anchor-linked-anonymous-block-crash.html: Added.

2011-03-21  Pavel Feldman  <pfeldman@chromium.org>

        Not reviewed: updating Chromium test expectataions.

        * platform/chromium/test_expectations.txt:

2011-03-21  Hayato Ito  <hayato@chromium.org>

        Reviewed by Ojan Vafai.

        Add the first reftest so that we can make sure that reftests won't cause
        any issues on all buildbots.
        This patch will also act as a sample reftest which a Wiki page will refer.

        https://bugs.webkit.org/show_bug.cgi?id=56450

        * fast/harness/font-weight-bold-expected.html: Added.
        * fast/harness/font-weight-bold.html: Added.

2011-03-21  Abhishek Arya  <inferno@chromium.org>

        Reviewed by Eric Seidel.

        Tests that we do not crash when adjusting position for inline boxes.
        https://bugs.webkit.org/show_bug.cgi?id=56300

        * fast/inline/inline-box-adjust-position-crash-expected.txt: Added.
        * fast/inline/inline-box-adjust-position-crash.html: Added.
        * fast/inline/inline-box-adjust-position-crash2-expected.txt: Added.
        * fast/inline/inline-box-adjust-position-crash2.html: Added.

2011-03-21  Adam Klein  <adamk@chromium.org>

        Reviewed by David Levin.

        [fileapi] Add URI resolution support to WorkerContext
        https://bugs.webkit.org/show_bug.cgi?id=55644

        Note that these tests do not run as part of new-run-webkit-tests,
        but rather in Chromium's ui_test. I've run them locally and confirmed
        they pass; a subsequent Chromium change will be submitted to run them
        on the Chromium build bots.

        * http/tests/filesystem/resources/fs-worker-common.js: Added.
        * http/tests/filesystem/resources/fs-worker-test-util.js: Added.
        Copied from fast/filesystem/resources for use by HTTP tests.
        * http/tests/filesystem/script-tests/resolve-uri.js:
        Updated to be used either in window or worker context.
        * http/tests/filesystem/workers/resolve-url-expected.txt: Added.
        * http/tests/filesystem/workers/resolve-url-sync-expected.txt: Added.
        * http/tests/filesystem/workers/resolve-url-sync.html: Added.
        * http/tests/filesystem/workers/resolve-url.html: Added.
        * http/tests/filesystem/workers/script-tests/TEMPLATE.html: Added.
        * http/tests/filesystem/workers/script-tests/resolve-url-sync.js: Added.

2011-03-21  David Levin  <levin@chromium.org>

        Reviewed by Adam Barth.

        XHR in Workers doesn't set the referrer correctly.
        https://bugs.webkit.org/show_bug.cgi?id=24683

        * http/tests/xmlhttprequest/workers/referer-expected.txt: Fixed expectations now that this works correctly.
        * http/tests/xmlhttprequest/workers/shared-worker-referer-expected.txt: Ditto.

2011-03-21  James Simonsen  <simonjam@chromium.org>

        [Chromium] Unreviewed, rebaseline win/linux after r81625.

        * platform/chromium-linux/fast/css/percentage-non-integer-expected.checksum:
        * platform/chromium-linux/fast/css/percentage-non-integer-expected.png:
        * platform/chromium-linux/fast/css/percentage-non-integer-expected.txt: Copied from LayoutTests/platform/chromium-win/fast/css/percentage-non-integer-expected.txt.
        * platform/chromium-win/fast/css/percentage-non-integer-expected.checksum:
        * platform/chromium-win/fast/css/percentage-non-integer-expected.png:
        * platform/chromium-win/fast/css/percentage-non-integer-expected.txt:

2011-03-21  Nate Chapin  <japhet@chromium.org>

        Reviewed by Brady Eidson.

        Tests for https://bugs.webkit.org/show_bug.cgi?id=38690.

        * http/tests/cache/post-redirect-get-expected.txt: Added.
        * http/tests/cache/post-redirect-get.php: Added.
        * http/tests/cache/post-with-cached-subresources-expected.txt: Added.
        * http/tests/cache/post-with-cached-subresources.php: Added.
        * http/tests/cache/resources/post-image-to-verify.php: Added.

2011-03-21  Daniel Cheng  <dcheng@chromium.org>

        Reviewed by Tony Chang.

        Remove dependency on default font from data-transfer-items.html
        https://bugs.webkit.org/show_bug.cgi?id=56791

        * editing/pasteboard/data-transfer-items-expected.txt:
        * editing/pasteboard/data-transfer-items.html:

2011-03-21  Rik Cabanier  <cabanier@gmail.com>

        Reviewed by James Robinson.

        bug 56052: percentages are incorrectly rounded in WebKit
        https://bugs.webkit.org/show_bug.cgi?id=56052

        * platform/mac/fast/css/percentage-non-integer-expected.txt:

2011-03-21  Daniel Cheng  <dcheng@chromium.org>

        Reviewed by Tony Chang.

        [chromium] Implement glue between DataTransferItems and the pasteboard.
        https://bugs.webkit.org/show_bug.cgi?id=56330

        Update the layout test to take into account that the actual contents of the clipboard
        are exposed in a paste via DataTransferItems now.
        Also fix the flakiness in the layout test.

        * editing/pasteboard/data-transfer-items-expected.txt:
        * editing/pasteboard/data-transfer-items.html:
        * platform/chromium/test_expectations.txt:

2011-03-21  Dean Jackson  <dino@apple.com>

        Reviewed by Chris Marrin and Simon Fraser.

        https://bugs.webkit.org/show_bug.cgi?id=56325
        ASSERTION FAILED: paused() in AnimationBase::updateStateMachine()

        Add a test that triggers the assertion by removing the <body>
        element and re-inserting it.

        While not directly related to this bug, the
        transform-origin-vs-functions test would occasionally fail because it
        depended on the order of events being fired. The update to the way
        animations are keeping their state triggered this more often. Now the
        output is sorted before finishing the test.

        * animations/3d/transform-origin-vs-functions.html:
        * animations/body-removal-crash.html: Added.
        * platform/mac/animations/body-removal-crash-expected.checksum: Added.
        * platform/mac/animations/body-removal-crash-expected.png: Added.
        * platform/mac/animations/body-removal-crash-expected.txt: Added.

2011-03-21  James Simonsen  <simonjam@chromium.org>

        [Chromium] Unreviewed, add flaky and failing tests after r81597.

        * platform/chromium/test_expectations.txt:

2011-03-21  Justin Schuh  <jschuh@chromium.org>

        Reviewed by James Robinson.

        Stop inserting when the parent is removed
        https://bugs.webkit.org/show_bug.cgi?id=56690

        * fast/dom/insertedIntoDocument-child-expected.txt: Added.
        * fast/dom/insertedIntoDocument-child.html: Added.
        * fast/dom/insertedIntoDocument-iframe-expected.txt: Added.
        * fast/dom/insertedIntoDocument-iframe.html: Added.
        * fast/dom/insertedIntoDocument-sibling-expected.txt: Added.
        * fast/dom/insertedIntoDocument-sibling.html: Added.

2011-03-21  Tony Chang  <tony@chromium.org>

        Reviewed by Eric Seidel.

        Convert fake-drag into a dumpAsText test and remove 1s timeout
        https://bugs.webkit.org/show_bug.cgi?id=56674

        This test was added with eventSender, so there was no leapForward
        at the time.  Also convert to dumpAsText while I'm here.

        * editing/selection/fake-drag.html:
        * platform/chromium-linux/editing/selection/fake-drag-expected.checksum: Removed.
        * platform/chromium-linux/editing/selection/fake-drag-expected.png: Removed.
        * platform/chromium-win/editing/selection/fake-drag-expected.checksum: Removed.
        * platform/chromium-win/editing/selection/fake-drag-expected.png: Removed.
        * platform/chromium-win/editing/selection/fake-drag-expected.txt:
        * platform/gtk/editing/selection/fake-drag-expected.checksum: Removed.
        * platform/gtk/editing/selection/fake-drag-expected.png: Removed.
        * platform/gtk/editing/selection/fake-drag-expected.txt: Removed.
        * platform/mac-leopard/editing/selection/fake-drag-expected.checksum: Removed.
        * platform/mac-leopard/editing/selection/fake-drag-expected.png: Removed.
        * platform/mac/editing/selection/fake-drag-expected.checksum: Removed.
        * platform/mac/editing/selection/fake-drag-expected.png: Removed.
        * platform/mac/editing/selection/fake-drag-expected.txt:

2011-03-21  Pavel Feldman  <pfeldman@chromium.org>

        Not reviewed: skipping new inspector test on GTK unless harness is fixed.

        * platform/gtk/Skipped:

2011-03-21  Vsevolod Vlasov  <vsevik@chromium.org>

        Reviewed by Pavel Feldman.

        Web Inspector: http/tests/inspector/network tests sometimes fail on Leopard Intel Release (Tests) and SnowLeopard Intel Leaks
        https://bugs.webkit.org/show_bug.cgi?id=56578

        Fixed and re-enabled http/tests/inspector/network tests

        * http/tests/inspector/network/network-size.html: Renamed from LayoutTests/http/tests/inspector/network/network-size.html-disabled.
        * http/tests/inspector/network/network-timing.html: Renamed from LayoutTests/http/tests/inspector/network/network-timing.html-disabled.

2011-03-21  Chang Shu  <cshu@webkit.org>

        Reviewed by Alexey Proskuryakov.

        REGRESSION (r79953): Can't type in MS Outlook 2011
        https://bugs.webkit.org/show_bug.cgi?id=56665

        Restore the expected result before r79953. r79953 changed behavior slightly in function
        finishedLoadingWithDataSource in file mac/WebView/WebHTMLRepresentation.mm, where
        core(webFrame)->editor()->applyEditingStyleToBodyElement() was called but not before r79953
        or after this patch.

        * platform/mac/editing/selection/designmode-no-caret-expected.txt:

2011-03-21  Dominic Cooney  <dominicc@google.com>

        Reviewed by Jeremy Orlow.

        Adds a regression test for MediaQueryList listener callbacks in V8.
        https://bugs.webkit.org/show_bug.cgi?id=56166

        * fast/media/media-query-list-callback-expected.txt: Added.
        * fast/media/media-query-list-callback.html: Added.
        * fast/media/resources/media-query-list-callback-frame.html: Added.

2011-03-21  chris fleizach  <cfleizach@apple.com>

        Reviewed by Darin Adler.

        platform/mac/accessibility/aria-table-with-colspan-cells.html is failing on the Leopard Release tester
        https://bugs.webkit.org/show_bug.cgi?id=56523

        List and table functionality is not present on Leopard and should be skipped.

        * platform/mac-leopard/Skipped:
        * platform/mac-leopard/platform/mac/accessibility: Removed.
        * platform/mac-leopard/platform/mac/accessibility/aria-table-with-colspan-cells-expected.txt: Removed.
        * platform/mac-leopard/platform/mac/accessibility/list-items-ignored-expected.txt: Removed.

2011-03-21  Adam Roben  <aroben@apple.com>

        Skip another asserting animations test

        <http://webkit.org/b/56488> tracks the failure

        * platform/mac/Skipped:
        * platform/win/Skipped:

2011-03-21  Vsevolod Vlasov  <vsevik@chromium.org>

        Reviewed by Pavel Feldman.

        Web Inspector: Inspector does not always show correct transfer size (for compressed/chunked data)
        https://bugs.webkit.org/show_bug.cgi?id=56691

        Added a test for transfer size for chunked encoding type.

        * http/tests/inspector/network/network-size-chunked.html: Added.
        * http/tests/inspector/network/network-size-expected-chunked.txt: Added.
        * http/tests/inspector/network/resources/resource.php:
        * platform/chromium/test_expectations.txt:
        * platform/gtk/Skipped:
        * platform/mac/Skipped:
        * platform/qt/Skipped:
        * platform/win/Skipped:

2011-03-21  Hao Zheng  <zhenghao@google.com>

        Reviewed by Darin Adler.

        Bug 15713: Rollout r72533 completely.
        https://bugs.webkit.org/show_bug.cgi?id=15713

        r72599 only rolled out the checksum files, which caused mismatch
        between checksum and png. Some png files had been
        rolled out by some other changes, so rollout the remaining png.

        * platform/chromium-linux/css1/box_properties/margin_right-expected.png:
        * platform/chromium-linux/css1/box_properties/padding_right-expected.png:
        * platform/chromium-linux/css2.1/t0805-c5520-brdr-b-01-e-expected.png:
        * platform/chromium-linux/editing/selection/extend-by-word-002-expected.png:
        * platform/chromium-linux/fast/css/background-shorthand-invalid-url-expected.png:
        * platform/chromium-linux/fast/doctypes/002-expected.png:
        * platform/chromium-linux/fast/lists/001-vertical-expected.png:
        * platform/chromium-linux/fast/lists/002-expected.png:
        * platform/chromium-linux/fast/lists/003-expected.png:
        * platform/chromium-linux/fast/lists/007-vertical-expected.png:
        * platform/chromium-linux/fast/lists/008-vertical-expected.png:
        * platform/chromium-linux/fast/lists/marker-before-empty-inline-expected.png:
        * platform/chromium-win/css1/box_properties/margin_right-expected.png:
        * platform/chromium-win/css1/box_properties/padding_right-expected.png:
        * platform/chromium-win/fast/css/background-shorthand-invalid-url-expected.png:
        * platform/chromium-win/fast/doctypes/002-expected.png:
        * platform/chromium-win/fast/lists/001-vertical-expected.png:
        * platform/chromium-win/fast/lists/002-expected.png:
        * platform/chromium-win/fast/lists/003-expected.png:
        * platform/chromium-win/fast/lists/007-vertical-expected.png:
        * platform/chromium-win/fast/lists/008-vertical-expected.png:
        * platform/chromium-win/fast/lists/marker-before-empty-inline-expected.png:

2011-03-21  Leo Yang  <leo.yang@torchmobile.com.cn>

        Reviewed by Dirk Schulze.

        symbol display <use> at wrong scale
        https://bugs.webkit.org/show_bug.cgi?id=54538

        Test cases for transfering width/height properties from
        'use' element to 'svg' and 'symbol' elements.
        See: http://www.w3.org/TR/SVG/struct.html#UseElement

        * platform/mac/svg/custom/use-transfer-width-height-properties-to-svg-expected.checksum: Added.
        * platform/mac/svg/custom/use-transfer-width-height-properties-to-svg-expected.png: Added.
        * platform/mac/svg/custom/use-transfer-width-height-properties-to-svg1-expected.checksum: Added.
        * platform/mac/svg/custom/use-transfer-width-height-properties-to-svg1-expected.png: Added.
        * platform/mac/svg/custom/use-transfer-width-height-properties-to-svg2-expected.checksum: Added.
        * platform/mac/svg/custom/use-transfer-width-height-properties-to-svg2-expected.png: Added.
        * platform/mac/svg/custom/use-transfer-width-height-properties-to-symbol-expected.checksum: Added.
        * platform/mac/svg/custom/use-transfer-width-height-properties-to-symbol-expected.png: Added.
        * platform/mac/svg/custom/use-transfer-width-height-properties-to-symbol1-expected.checksum: Added.
        * platform/mac/svg/custom/use-transfer-width-height-properties-to-symbol1-expected.png: Added.
        * platform/mac/svg/custom/use-transfer-width-height-properties-to-symbol2-expected.checksum: Added.
        * platform/mac/svg/custom/use-transfer-width-height-properties-to-symbol2-expected.png: Added.
        * platform/qt/svg/custom/use-transfer-width-height-properties-to-svg-expected.checksum: Added.
        * platform/qt/svg/custom/use-transfer-width-height-properties-to-svg-expected.png: Added.
        * platform/qt/svg/custom/use-transfer-width-height-properties-to-svg1-expected.checksum: Added.
        * platform/qt/svg/custom/use-transfer-width-height-properties-to-svg1-expected.png: Added.
        * platform/qt/svg/custom/use-transfer-width-height-properties-to-svg2-expected.checksum: Added.
        * platform/qt/svg/custom/use-transfer-width-height-properties-to-svg2-expected.png: Added.
        * platform/qt/svg/custom/use-transfer-width-height-properties-to-symbol-expected.checksum: Added.
        * platform/qt/svg/custom/use-transfer-width-height-properties-to-symbol-expected.png: Added.
        * platform/qt/svg/custom/use-transfer-width-height-properties-to-symbol1-expected.checksum: Added.
        * platform/qt/svg/custom/use-transfer-width-height-properties-to-symbol1-expected.png: Added.
        * platform/qt/svg/custom/use-transfer-width-height-properties-to-symbol2-expected.checksum: Added.
        * platform/qt/svg/custom/use-transfer-width-height-properties-to-symbol2-expected.png: Added.
        * svg/custom/use-transfer-width-height-properties-to-svg-expected.txt: Added.
        * svg/custom/use-transfer-width-height-properties-to-svg.svg: Added.
        * svg/custom/use-transfer-width-height-properties-to-svg1-expected.txt: Added.
        * svg/custom/use-transfer-width-height-properties-to-svg1.svg: Added.
        * svg/custom/use-transfer-width-height-properties-to-svg2-expected.txt: Added.
        * svg/custom/use-transfer-width-height-properties-to-svg2.svg: Added.
        * svg/custom/use-transfer-width-height-properties-to-symbol-expected.txt: Added.
        * svg/custom/use-transfer-width-height-properties-to-symbol.svg: Added.
        * svg/custom/use-transfer-width-height-properties-to-symbol1-expected.txt: Added.
        * svg/custom/use-transfer-width-height-properties-to-symbol1.svg: Added.
        * svg/custom/use-transfer-width-height-properties-to-symbol2-expected.txt: Added.
        * svg/custom/use-transfer-width-height-properties-to-symbol2.svg: Added.

2011-03-21  Julien Chaffraix  <jchaffraix@webkit.org>

        Reviewed by Eric Seidel.

        Test for Bug 51465 - chrome.dll!WebCore::RenderLayer::currentTransform
        ReadAV@NULL (8968fc97874fa23b6799ff8f09c142e4)

        * fast/css/webkit-empty-transform-preserve3d-crash-expected.txt: Added.
        * fast/css/webkit-empty-transform-preserve3d-crash.html: Added.

2011-03-21  Pavel Feldman  <pfeldman@chromium.org>

        Reviewed by Yury Semikhatsky.

        Web Inspector: make frameId in network agent of type string, not unsigned long.
        https://bugs.webkit.org/show_bug.cgi?id=56708

        * inspector/report-protocol-errors-expected.txt:

2011-03-21  Pavel Feldman  <pfeldman@chromium.org>

        Reviewed by Yury Semikhatsky.

        Web Inspector: expose object id as string, not JSON struct in the protocol.
        https://bugs.webkit.org/show_bug.cgi?id=56681

        * http/tests/inspector/protocol-test.js:
        (initialize_ProtocolTest.InspectorTest.filterProps):
        (initialize_ProtocolTest.InspectorTest._dumpCallArguments):
        * inspector/protocol/runtime-agent-expected.txt:
        * inspector/protocol/runtime-agent.html:

2011-03-21  Pavel Feldman  <pfeldman@chromium.org>

        Not reviewed: rebaselined Chromium expectations.

        * platform/chromium-win/svg/text/text-intro-05-t-expected.txt: Added.

2011-03-20  Pavel Feldman  <pfeldman@chromium.org>

        Not reviewed: removing stale Chromium expectations.

        * platform/chromium-win-vista/svg/text/text-intro-05-t-expected.checksum: Removed.
        * platform/chromium-win-vista/svg/text/text-intro-05-t-expected.png: Removed.
        * platform/chromium-win-xp/svg/text/text-intro-05-t-expected.txt: Removed.

2011-03-20  Sam Weinig  <sam@webkit.org>

        Add http/tests/appcache/origin-delete.html to the Skipped list for WebKit2,
        since layoutTestController.clearAllApplicationCaches is not yet implemented
        by WebKitTestRunner.

        * platform/mac-wk2/Skipped:

2011-03-19  Anton D'Auria  <adauria@apple.com>

        Reviewed by Alexey Proskuryakov.

        ApplicationCacheGroup is not obsolete after being deleted via ApplicationCacheStorage::deleteEntriesForOrigin
        https://bugs.webkit.org/show_bug.cgi?id=56415

        This test creates an Application Cache for the DRT origin, deletes it for the origin,
        and verifies that the Application Cache has obsolete status.

        * http/tests/appcache/origin-delete-expected.txt: Added.
        * http/tests/appcache/origin-delete.html: Added.
        * http/tests/appcache/resources/origin-delete-iframe.html: Added.
        * http/tests/appcache/resources/origin-delete-iframe.manifest: Added.
        * platform/chromium/test_expectations.txt:
        * platform/gtk/Skipped:
        * platform/qt/Skipped:

2011-03-19  James Simonsen  <simonjam@chromium.org>

        [Chromium] Unreviewed, remove stale expectations for r81528.

        * platform/chromium-win-xp/fast/text/atsui-spacing-features-expected.checksum:
        * platform/chromium-win-xp/fast/text/atsui-spacing-features-expected.png:
        * platform/chromium-win-xp/fast/text/justify-nbsp-expected.checksum: Removed.
        * platform/chromium-win-xp/fast/text/justify-nbsp-expected.png: Removed.
        * platform/chromium-win-xp/svg/text/text-intro-05-t-expected.checksum: Removed.
        * platform/chromium-win-xp/svg/text/text-intro-05-t-expected.png: Removed.
        * platform/chromium-win-xp/svg/transforms/text-with-pattern-inside-transformed-html-expected.checksum: Removed.
        * platform/chromium-win-xp/svg/transforms/text-with-pattern-inside-transformed-html-expected.png: Removed.

2011-03-18  James Robinson  <jamesr@chromium.org>

        Update chromium win pixel baselines for tests with justified text for r81528

        * platform/chromium-win/css1/box_properties/clear_float-expected.checksum:
        * platform/chromium-win/css1/box_properties/clear_float-expected.png:
        * platform/chromium-win/css1/box_properties/float_elements_in_series-expected.checksum:
        * platform/chromium-win/css1/box_properties/float_elements_in_series-expected.png:
        * platform/chromium-win/css1/box_properties/float_on_text_elements-expected.checksum:
        * platform/chromium-win/css1/box_properties/float_on_text_elements-expected.png:
        * platform/chromium-win/css1/text_properties/text_align-expected.checksum:
        * platform/chromium-win/css1/text_properties/text_align-expected.png:
        * platform/chromium-win/css2.1/t0905-c5525-fltcont-00-d-g-expected.checksum:
        * platform/chromium-win/css2.1/t0905-c5525-fltcont-00-d-g-expected.png:
        * platform/chromium-win/css2.1/t0905-c5525-fltwidth-00-c-g-expected.checksum:
        * platform/chromium-win/css2.1/t0905-c5525-fltwidth-00-c-g-expected.png:
        * platform/chromium-win/css2.1/t1602-c546-txt-align-00-b-expected.checksum:
        * platform/chromium-win/css2.1/t1602-c546-txt-align-00-b-expected.png:
        * platform/chromium-win/fast/backgrounds/svg-as-background-4-expected.checksum:
        * platform/chromium-win/fast/backgrounds/svg-as-background-4-expected.png:
        * platform/chromium-win/fast/multicol/float-avoidance-expected.checksum:
        * platform/chromium-win/fast/multicol/float-avoidance-expected.png:
        * platform/chromium-win/fast/multicol/shadow-breaking-expected.checksum:
        * platform/chromium-win/fast/multicol/shadow-breaking-expected.png:
        * platform/chromium-win/fast/multicol/vertical-lr/float-avoidance-expected.checksum:
        * platform/chromium-win/fast/multicol/vertical-lr/float-avoidance-expected.png:
        * platform/chromium-win/fast/multicol/vertical-rl/float-avoidance-expected.checksum:
        * platform/chromium-win/fast/multicol/vertical-rl/float-avoidance-expected.png:
        * platform/chromium-win/fast/repaint/line-flow-with-floats-1-expected.checksum:
        * platform/chromium-win/fast/repaint/line-flow-with-floats-1-expected.png:
        * platform/chromium-win/fast/repaint/line-flow-with-floats-10-expected.checksum:
        * platform/chromium-win/fast/repaint/line-flow-with-floats-10-expected.png:
        * platform/chromium-win/fast/repaint/line-flow-with-floats-2-expected.checksum:
        * platform/chromium-win/fast/repaint/line-flow-with-floats-2-expected.png:
        * platform/chromium-win/fast/repaint/line-flow-with-floats-3-expected.checksum:
        * platform/chromium-win/fast/repaint/line-flow-with-floats-3-expected.png:
        * platform/chromium-win/fast/repaint/line-flow-with-floats-4-expected.checksum:
        * platform/chromium-win/fast/repaint/line-flow-with-floats-4-expected.png:
        * platform/chromium-win/fast/repaint/line-flow-with-floats-5-expected.checksum:
        * platform/chromium-win/fast/repaint/line-flow-with-floats-5-expected.png:
        * platform/chromium-win/fast/repaint/line-flow-with-floats-6-expected.checksum:
        * platform/chromium-win/fast/repaint/line-flow-with-floats-6-expected.png:
        * platform/chromium-win/fast/repaint/line-flow-with-floats-7-expected.checksum:
        * platform/chromium-win/fast/repaint/line-flow-with-floats-7-expected.png:
        * platform/chromium-win/fast/repaint/line-flow-with-floats-8-expected.checksum:
        * platform/chromium-win/fast/repaint/line-flow-with-floats-8-expected.png:
        * platform/chromium-win/fast/repaint/line-flow-with-floats-9-expected.checksum:
        * platform/chromium-win/fast/repaint/line-flow-with-floats-9-expected.png:
        * platform/chromium-win/fast/text/atsui-spacing-features-expected.checksum:
        * platform/chromium-win/fast/text/atsui-spacing-features-expected.png:
        * platform/chromium-win/fast/text/basic/002-expected.checksum:
        * platform/chromium-win/fast/text/basic/002-expected.png:
        * platform/chromium-win/fast/text/justified-selection-at-edge-expected.checksum:
        * platform/chromium-win/fast/text/justified-selection-at-edge-expected.png:
        * platform/chromium-win/fast/text/justified-selection-expected.checksum:
        * platform/chromium-win/fast/text/justified-selection-expected.png:
        * platform/chromium-win/fast/text/justify-padding-distribution-expected.checksum:
        * platform/chromium-win/fast/text/justify-padding-distribution-expected.png:
        * platform/chromium-win/fast/text/text-letter-spacing-expected.checksum:
        * platform/chromium-win/fast/text/text-letter-spacing-expected.png:
        * platform/chromium-win/fast/text/trailing-white-space-expected.checksum:
        * platform/chromium-win/fast/text/trailing-white-space-expected.png:
        * platform/chromium-win/svg/W3C-I18N/g-dirLTR-ubOverride-expected.checksum:
        * platform/chromium-win/svg/W3C-I18N/g-dirLTR-ubOverride-expected.png:
        * platform/chromium-win/svg/W3C-I18N/g-dirRTL-ubOverride-expected.checksum:
        * platform/chromium-win/svg/W3C-I18N/g-dirRTL-ubOverride-expected.png:
        * platform/chromium-win/svg/W3C-I18N/text-anchor-dirLTR-anchorEnd-expected.checksum:
        * platform/chromium-win/svg/W3C-I18N/text-anchor-dirLTR-anchorEnd-expected.png:
        * platform/chromium-win/svg/W3C-I18N/text-anchor-dirLTR-anchorMiddle-expected.checksum:
        * platform/chromium-win/svg/W3C-I18N/text-anchor-dirLTR-anchorMiddle-expected.png:
        * platform/chromium-win/svg/W3C-I18N/text-anchor-dirLTR-anchorStart-expected.checksum:
        * platform/chromium-win/svg/W3C-I18N/text-anchor-dirLTR-anchorStart-expected.png:
        * platform/chromium-win/svg/W3C-I18N/text-anchor-dirNone-anchorEnd-expected.checksum:
        * platform/chromium-win/svg/W3C-I18N/text-anchor-dirNone-anchorEnd-expected.png:
        * platform/chromium-win/svg/W3C-I18N/text-anchor-dirNone-anchorMiddle-expected.checksum:
        * platform/chromium-win/svg/W3C-I18N/text-anchor-dirNone-anchorMiddle-expected.png:
        * platform/chromium-win/svg/W3C-I18N/text-anchor-dirNone-anchorStart-expected.checksum:
        * platform/chromium-win/svg/W3C-I18N/text-anchor-dirNone-anchorStart-expected.png:
        * platform/chromium-win/svg/W3C-I18N/text-anchor-dirRTL-anchorEnd-expected.checksum:
        * platform/chromium-win/svg/W3C-I18N/text-anchor-dirRTL-anchorEnd-expected.png:
        * platform/chromium-win/svg/W3C-I18N/text-anchor-dirRTL-anchorMiddle-expected.checksum:
        * platform/chromium-win/svg/W3C-I18N/text-anchor-dirRTL-anchorMiddle-expected.png:
        * platform/chromium-win/svg/W3C-I18N/text-anchor-dirRTL-anchorStart-expected.checksum:
        * platform/chromium-win/svg/W3C-I18N/text-anchor-dirRTL-anchorStart-expected.png:
        * platform/chromium-win/svg/W3C-I18N/text-anchor-inherited-dirLTR-anchorEnd-expected.checksum:
        * platform/chromium-win/svg/W3C-I18N/text-anchor-inherited-dirLTR-anchorEnd-expected.png:
        * platform/chromium-win/svg/W3C-I18N/text-anchor-inherited-dirLTR-anchorMiddle-expected.checksum:
        * platform/chromium-win/svg/W3C-I18N/text-anchor-inherited-dirLTR-anchorMiddle-expected.png:
        * platform/chromium-win/svg/W3C-I18N/text-anchor-inherited-dirLTR-anchorStart-expected.checksum:
        * platform/chromium-win/svg/W3C-I18N/text-anchor-inherited-dirLTR-anchorStart-expected.png:
        * platform/chromium-win/svg/W3C-I18N/text-anchor-inherited-dirRTL-anchorEnd-expected.checksum:
        * platform/chromium-win/svg/W3C-I18N/text-anchor-inherited-dirRTL-anchorEnd-expected.png:
        * platform/chromium-win/svg/W3C-I18N/text-anchor-inherited-dirRTL-anchorMiddle-expected.checksum:
        * platform/chromium-win/svg/W3C-I18N/text-anchor-inherited-dirRTL-anchorMiddle-expected.png:
        * platform/chromium-win/svg/W3C-I18N/text-anchor-inherited-dirRTL-anchorStart-expected.checksum:
        * platform/chromium-win/svg/W3C-I18N/text-anchor-inherited-dirRTL-anchorStart-expected.png:
        * platform/chromium-win/svg/W3C-I18N/text-anchor-no-markup-expected.checksum:
        * platform/chromium-win/svg/W3C-I18N/text-anchor-no-markup-expected.png:
        * platform/chromium-win/svg/W3C-I18N/text-dirLTR-ubOverride-expected.checksum:
        * platform/chromium-win/svg/W3C-I18N/text-dirLTR-ubOverride-expected.png:
        * platform/chromium-win/svg/W3C-I18N/text-dirRTL-ubOverride-expected.checksum:
        * platform/chromium-win/svg/W3C-I18N/text-dirRTL-ubOverride-expected.png:
        * platform/chromium-win/svg/W3C-I18N/tspan-dirLTR-ubEmbed-in-rtl-context-expected.checksum:
        * platform/chromium-win/svg/W3C-I18N/tspan-dirLTR-ubEmbed-in-rtl-context-expected.png:
        * platform/chromium-win/svg/W3C-I18N/tspan-dirLTR-ubNone-in-rtl-context-expected.checksum:
        * platform/chromium-win/svg/W3C-I18N/tspan-dirLTR-ubNone-in-rtl-context-expected.png:
        * platform/chromium-win/svg/W3C-I18N/tspan-dirLTR-ubOverride-in-default-context-expected.checksum:
        * platform/chromium-win/svg/W3C-I18N/tspan-dirLTR-ubOverride-in-default-context-expected.png:
        * platform/chromium-win/svg/W3C-I18N/tspan-dirLTR-ubOverride-in-ltr-context-expected.checksum:
        * platform/chromium-win/svg/W3C-I18N/tspan-dirLTR-ubOverride-in-ltr-context-expected.png:
        * platform/chromium-win/svg/W3C-I18N/tspan-dirNone-ubOverride-in-rtl-context-expected.checksum:
        * platform/chromium-win/svg/W3C-I18N/tspan-dirNone-ubOverride-in-rtl-context-expected.png:
        * platform/chromium-win/svg/W3C-I18N/tspan-dirRTL-ubOverride-in-default-context-expected.checksum:
        * platform/chromium-win/svg/W3C-I18N/tspan-dirRTL-ubOverride-in-default-context-expected.png:
        * platform/chromium-win/svg/W3C-I18N/tspan-dirRTL-ubOverride-in-ltr-context-expected.checksum:
        * platform/chromium-win/svg/W3C-I18N/tspan-dirRTL-ubOverride-in-ltr-context-expected.png:
        * platform/chromium-win/svg/W3C-I18N/tspan-direction-rtl-expected.checksum:
        * platform/chromium-win/svg/W3C-I18N/tspan-direction-rtl-expected.png:
        * platform/chromium-win/svg/W3C-SVG-1.1/animate-elem-36-t-expected.checksum:
        * platform/chromium-win/svg/W3C-SVG-1.1/animate-elem-36-t-expected.png:
        * platform/chromium-win/svg/W3C-SVG-1.1/animate-elem-37-t-expected.checksum:
        * platform/chromium-win/svg/W3C-SVG-1.1/animate-elem-37-t-expected.png:
        * platform/chromium-win/svg/W3C-SVG-1.1/animate-elem-39-t-expected.checksum:
        * platform/chromium-win/svg/W3C-SVG-1.1/animate-elem-39-t-expected.png:
        * platform/chromium-win/svg/W3C-SVG-1.1/animate-elem-40-t-expected.checksum:
        * platform/chromium-win/svg/W3C-SVG-1.1/animate-elem-40-t-expected.png:
        * platform/chromium-win/svg/W3C-SVG-1.1/animate-elem-41-t-expected.checksum:
        * platform/chromium-win/svg/W3C-SVG-1.1/animate-elem-41-t-expected.png:
        * platform/chromium-win/svg/W3C-SVG-1.1/animate-elem-60-t-expected.checksum:
        * platform/chromium-win/svg/W3C-SVG-1.1/animate-elem-60-t-expected.png:
        * platform/chromium-win/svg/W3C-SVG-1.1/animate-elem-61-t-expected.checksum:
        * platform/chromium-win/svg/W3C-SVG-1.1/animate-elem-61-t-expected.png:
        * platform/chromium-win/svg/W3C-SVG-1.1/animate-elem-62-t-expected.checksum:
        * platform/chromium-win/svg/W3C-SVG-1.1/animate-elem-62-t-expected.png:
        * platform/chromium-win/svg/W3C-SVG-1.1/animate-elem-63-t-expected.checksum:
        * platform/chromium-win/svg/W3C-SVG-1.1/animate-elem-63-t-expected.png:
        * platform/chromium-win/svg/W3C-SVG-1.1/animate-elem-64-t-expected.checksum:
        * platform/chromium-win/svg/W3C-SVG-1.1/animate-elem-64-t-expected.png:
        * platform/chromium-win/svg/W3C-SVG-1.1/animate-elem-65-t-expected.checksum:
        * platform/chromium-win/svg/W3C-SVG-1.1/animate-elem-65-t-expected.png:
        * platform/chromium-win/svg/W3C-SVG-1.1/animate-elem-66-t-expected.checksum:
        * platform/chromium-win/svg/W3C-SVG-1.1/animate-elem-66-t-expected.png:
        * platform/chromium-win/svg/W3C-SVG-1.1/animate-elem-67-t-expected.checksum:
        * platform/chromium-win/svg/W3C-SVG-1.1/animate-elem-67-t-expected.png:
        * platform/chromium-win/svg/W3C-SVG-1.1/animate-elem-68-t-expected.checksum:
        * platform/chromium-win/svg/W3C-SVG-1.1/animate-elem-68-t-expected.png:
        * platform/chromium-win/svg/W3C-SVG-1.1/animate-elem-69-t-expected.checksum:
        * platform/chromium-win/svg/W3C-SVG-1.1/animate-elem-69-t-expected.png:
        * platform/chromium-win/svg/W3C-SVG-1.1/animate-elem-70-t-expected.checksum:
        * platform/chromium-win/svg/W3C-SVG-1.1/animate-elem-70-t-expected.png:
        * platform/chromium-win/svg/W3C-SVG-1.1/animate-elem-81-t-expected.checksum:
        * platform/chromium-win/svg/W3C-SVG-1.1/animate-elem-81-t-expected.png:
        * platform/chromium-win/svg/W3C-SVG-1.1/animate-elem-82-t-expected.checksum:
        * platform/chromium-win/svg/W3C-SVG-1.1/animate-elem-82-t-expected.png:
        * platform/chromium-win/svg/W3C-SVG-1.1/animate-elem-83-t-expected.checksum:
        * platform/chromium-win/svg/W3C-SVG-1.1/animate-elem-83-t-expected.png:
        * platform/chromium-win/svg/W3C-SVG-1.1/fonts-kern-01-t-expected.checksum:
        * platform/chromium-win/svg/W3C-SVG-1.1/fonts-kern-01-t-expected.png:
        * platform/chromium-win/svg/W3C-SVG-1.1/text-text-05-t-expected.checksum:
        * platform/chromium-win/svg/W3C-SVG-1.1/text-text-05-t-expected.png:
        * platform/chromium-win/svg/batik/filters/feTile-expected.checksum:
        * platform/chromium-win/svg/batik/filters/feTile-expected.png:
        * platform/chromium-win/svg/batik/filters/filterRegions-expected.checksum:
        * platform/chromium-win/svg/batik/filters/filterRegions-expected.png:
        * platform/chromium-win/svg/batik/paints/patternPreserveAspectRatioA-expected.checksum:
        * platform/chromium-win/svg/batik/paints/patternPreserveAspectRatioA-expected.png:
        * platform/chromium-win/svg/batik/text/textAnchor-expected.checksum:
        * platform/chromium-win/svg/batik/text/textAnchor-expected.png:
        * platform/chromium-win/svg/batik/text/textPCDATA-expected.checksum:
        * platform/chromium-win/svg/batik/text/textPCDATA-expected.png:
        * platform/chromium-win/svg/batik/text/textProperties-expected.checksum:
        * platform/chromium-win/svg/batik/text/textProperties-expected.png:
        * platform/chromium-win/svg/batik/text/textStyles-expected.checksum:
        * platform/chromium-win/svg/batik/text/textStyles-expected.png:
        * platform/chromium-win/svg/css/group-with-shadow-expected.checksum:
        * platform/chromium-win/svg/css/group-with-shadow-expected.png:
        * platform/chromium-win/svg/custom/svg-fonts-in-html-expected.checksum:
        * platform/chromium-win/svg/custom/svg-fonts-in-html-expected.png:
        * platform/chromium-win/svg/hixie/viewbox/preserveAspectRatio/001-expected.checksum:
        * platform/chromium-win/svg/hixie/viewbox/preserveAspectRatio/001-expected.png:
        * platform/chromium-win/svg/text/bidi-text-anchor-direction-expected.checksum:
        * platform/chromium-win/svg/text/bidi-text-anchor-direction-expected.png:
        * platform/chromium-win/svg/text/bidi-text-query-expected.checksum:
        * platform/chromium-win/svg/text/bidi-text-query-expected.png:
        * platform/chromium-win/svg/text/bidi-tspans-expected.checksum:
        * platform/chromium-win/svg/text/bidi-tspans-expected.png:
        * platform/chromium-win/svg/text/text-align-01-b-expected.checksum:
        * platform/chromium-win/svg/text/text-align-01-b-expected.png:
        * platform/chromium-win/svg/text/text-intro-05-t-expected.checksum: Added.
        * platform/chromium-win/svg/text/text-intro-05-t-expected.png: Added.
        * platform/chromium-win/svg/text/text-text-05-t-expected.checksum:
        * platform/chromium-win/svg/text/text-text-05-t-expected.png:
        * platform/chromium-win/svg/text/text-text-08-b-expected.checksum:
        * platform/chromium-win/svg/text/text-text-08-b-expected.png:
        * platform/chromium-win/svg/transforms/text-with-pattern-inside-transformed-html-expected.checksum:
        * platform/chromium-win/svg/transforms/text-with-pattern-inside-transformed-html-expected.png:
        * platform/chromium-win/svg/transforms/text-with-pattern-with-svg-transform-expected.checksum:
        * platform/chromium-win/svg/transforms/text-with-pattern-with-svg-transform-expected.png:
        * platform/chromium-win/tables/mozilla/marvin/x_tbody_align_justify-expected.checksum:
        * platform/chromium-win/tables/mozilla/marvin/x_tbody_align_justify-expected.png:
        * platform/chromium-win/tables/mozilla/marvin/x_td_align_justify-expected.checksum:
        * platform/chromium-win/tables/mozilla/marvin/x_td_align_justify-expected.png:
        * platform/chromium-win/tables/mozilla/marvin/x_tfoot_align_justify-expected.checksum:
        * platform/chromium-win/tables/mozilla/marvin/x_tfoot_align_justify-expected.png:
        * platform/chromium-win/tables/mozilla/marvin/x_th_align_justify-expected.checksum:
        * platform/chromium-win/tables/mozilla/marvin/x_th_align_justify-expected.png:
        * platform/chromium-win/tables/mozilla/marvin/x_thead_align_justify-expected.checksum:
        * platform/chromium-win/tables/mozilla/marvin/x_thead_align_justify-expected.png:
        * platform/chromium-win/tables/mozilla/marvin/x_tr_align_justify-expected.checksum:
        * platform/chromium-win/tables/mozilla/marvin/x_tr_align_justify-expected.png:
        * platform/chromium/test_expectations.txt:

2011-03-18  James Robinson  <jamesr@chromium.org>

        Fix expectation syntax for windows.

        * platform/chromium/test_expectations.txt:

2011-03-16  Ryosuke Niwa  <rniwa@webkit.org>

        Reviewed by Ojan Vafai.

        Add a test for r81266 and fix HTML Editing for fallback contents in object element
        https://bugs.webkit.org/show_bug.cgi?id=56505

        Added a test to edit contents of hr and datagrid and object's fallback content.

        * editing/editability/ignored-content-expected.txt: Added.
        * editing/editability/ignored-content.html: Added.

2011-03-18  Andy Estes  <aestes@apple.com>

        Reviewed by Eric Seidel.

        REGRESSION (r80231): Bad cast in HTMLTreeBuilder::processStartTag
        https://bugs.webkit.org/show_bug.cgi?id=56380

        * fast/parser/fragment-foreign-content-context-expected.txt: Added.
        * fast/parser/fragment-foreign-content-context.html: Added.

2011-03-18  Martin Robinson  <mrobinson@igalia.com>

        [GTK] JSC crashes in 32bit Release bots after r80743
        https://bugs.webkit.org/show_bug.cgi?id=56180

        * platform/gtk/Skipped: Unskip tests which should now be passing since this bug is fixed.

2011-03-18  Jessie Berlin  <jberlin@apple.com>

        [WebKit2 Windows Release Tests] media tests crashing in QuickTime on apple-windows-8.
        https://bugs.webkit.org/show_bug.cgi?id=56653

        Unreviewed, skipping media/video-load-readyState.html since that has been crashing
        on the last 3 runs.

        * platform/win-wk2/Skipped:

2011-03-18 James Robinson <jamesr@chromium.org>

        [chromium] Add tests that will need a rebaseline on windows to expectations

2011-03-18  Daniel Cheng  <dcheng@chromium.org>

        Reviewed by David Levin.

        Fix incorrect test onpaste-text-html-types.html
        https://bugs.webkit.org/show_bug.cgi?id=56621

        The test was checking for the presence of "Text" in event.clipboardData.types,
        but per http://lists.whatwg.org/pipermail/whatwg-whatwg.org/2010-February/024956.html,
        this should not be the case.

        * editing/pasteboard/onpaste-text-html-types.html:

2011-03-18  James Simonsen  <simonjam@chromium.org>

        [Chromium] Unreviewed, remove stale expectations for r81489.

        * platform/chromium-win-vista/fast/text/stroking-decorations-expected.checksum: Removed.
        * platform/chromium-win-vista/fast/text/stroking-decorations-expected.png: Removed.
        * platform/chromium-win-vista/fast/text/stroking-expected.checksum: Removed.
        * platform/chromium-win-vista/fast/text/stroking-expected.png: Removed.

2011-03-18  Ryosuke Niwa  <rniwa@webkit.org>

        Reviewed by Eric Seidel.

        REGRESSION(81374, 81384): editing/deleting/5206311-1.html hits assertion on non-Mac platforms
        https://bugs.webkit.org/show_bug.cgi?id=56599

        Re-enabled the test on non-Mac platforms.

        * platform/chromium/test_expectations.txt:
        * platform/gtk/Skipped:
        * platform/qt/Skipped:
        * platform/win/Skipped:

2011-03-18  Brady Eidson  <beidson@apple.com>

        Rubberstamped by Adam Roben.

        https://bugs.webkit.org/show_bug.cgi?id=56685
        webarchive/test-link-rel-icon.html is now flaky

        * platform/mac/Skipped:

2011-03-18  Stephen White  <senorblanco@chromium.org>

        Unreviewed; new test baselines.

        One last attempt at rebaselining these tests (now that I know how
        the --gpu flag works).

        * platform/chromium-gpu-linux/compositing/geometry/clipping-foreground-expected.checksum:
        * platform/chromium-gpu-linux/compositing/geometry/clipping-foreground-expected.png: Removed.
        * platform/chromium-gpu-linux/compositing/iframes/composited-iframe-alignment-expected.checksum:
        * platform/chromium-gpu-linux/compositing/iframes/composited-iframe-alignment-expected.png: Removed.
        * platform/chromium-gpu-win/compositing/geometry/clipping-foreground-expected.checksum:
        * platform/chromium-gpu-win/compositing/iframes/composited-iframe-alignment-expected.checksum:

2011-03-18  Stephen White  <senorblanco@chromium.org>

        Unreviewed; more test baselines.

        Update the checksums I forgot to update in r81504.

        * platform/chromium-gpu-linux/compositing/geometry/clipping-foreground-expected.checksum:
        * platform/chromium-gpu-linux/compositing/iframes/composited-iframe-alignment-expected.checksum:
        * platform/chromium-gpu-win/compositing/geometry/clipping-foreground-expected.checksum:
        * platform/chromium-gpu-win/compositing/iframes/composited-iframe-alignment-expected.checksum:

2011-03-16  Stephen White  <senorblanco@chromium.org>

        Reviewed by Kenneth Russell.

        Canvas2D GPU acceleration should support shadows
        https://bugs.webkit.org/show_bug.cgi?id=56476

        * fast/canvas/script-tests/canvas-transforms-fillRect-shadow.js:
        (shouldBeAround):
        Widen the threshold for this test, which doesn't seem to allow for
        a true Gaussian blur implementation.
        * platform/chromium/test_expectations.txt:
        Update some tests which are now passing on GPU, and some which time out
        due to Mesa slowness.

2011-03-18  James Simonsen  <simonjam@chromium.org>

        [Chromium] Unreviewed, re-enable some stable tests and add a flaky one.

        * platform/chromium/test_expectations.txt:

2011-03-18  Stephen White  <senorblanco@chromium.org>

        Unreviewed; new test baselines.

        New GPU baselines for shadow quality improved by http://trac.webkit.org/changeset/81489.

        * platform/chromium-gpu-linux/compositing/geometry/clipping-foreground-expected.png:
        * platform/chromium-gpu-linux/compositing/iframes/composited-iframe-alignment-expected.png:
        * platform/chromium-gpu-win/compositing/geometry/clipping-foreground-expected.png:
        * platform/chromium-gpu-win/compositing/iframes/composited-iframe-alignment-expected.png:

2011-03-18  Ilya Tikhonovsky  <loislo@chromium.org>

        Reviewed by Yury Semikhatsky.

        Web Inspector: rename console agent events.
        https://bugs.webkit.org/show_bug.cgi?id=56646

        addConsoleMessage -> consoleMessage
        updateConsoleMessageExpiredCount -> consoleMessageExpiredCountUpdate
        updateConsoleMessageRepeatCount -> consoleMessageRepeatCountUpdate

        * inspector/protocol/console-agent-expected.txt:

2011-03-18  Stephen White  <senorblanco@chromium.org>

        Unreviewed; new test baselines.

        New baselines for shadow quality improved by http://trac.webkit.org/changeset/81489.

        * platform/chromium-linux/compositing/geometry: Added.
        * platform/chromium-linux/compositing/geometry/clipping-foreground-expected.checksum: Added.
        * platform/chromium-linux/compositing/geometry/clipping-foreground-expected.png: Added.
        * platform/chromium-linux/compositing/iframes: Added.
        * platform/chromium-linux/compositing/iframes/composited-iframe-alignment-expected.checksum: Added.
        * platform/chromium-linux/compositing/iframes/composited-iframe-alignment-expected.png: Added.
        * platform/chromium-linux/fast/blockflow/english-lr-text-expected.checksum:
        * platform/chromium-linux/fast/blockflow/english-lr-text-expected.png:
        * platform/chromium-linux/fast/borders/border-radius-split-inline-expected.checksum:
        * platform/chromium-linux/fast/borders/border-radius-split-inline-expected.png:
        * platform/chromium-linux/fast/box-shadow/basic-shadows-expected.checksum:
        * platform/chromium-linux/fast/box-shadow/basic-shadows-expected.png:
        * platform/chromium-linux/fast/box-shadow/border-radius-big-expected.checksum:
        * platform/chromium-linux/fast/box-shadow/border-radius-big-expected.png:
        * platform/chromium-linux/fast/box-shadow/box-shadow-transformed-expected.checksum:
        * platform/chromium-linux/fast/box-shadow/box-shadow-transformed-expected.png:
        * platform/chromium-linux/fast/box-shadow/inset-box-shadows-expected.checksum:
        * platform/chromium-linux/fast/box-shadow/inset-box-shadows-expected.png:
        * platform/chromium-linux/fast/box-shadow/inset-expected.checksum:
        * platform/chromium-linux/fast/box-shadow/inset-expected.png:
        * platform/chromium-linux/fast/box-shadow/shadow-tiling-artifact-expected.checksum:
        * platform/chromium-linux/fast/box-shadow/shadow-tiling-artifact-expected.png:
        * platform/chromium-linux/fast/box-shadow/spread-expected.checksum:
        * platform/chromium-linux/fast/box-shadow/spread-expected.png:
        * platform/chromium-linux/fast/box-shadow/spread-multiple-normal-expected.checksum:
        * platform/chromium-linux/fast/box-shadow/spread-multiple-normal-expected.png:
        * platform/chromium-linux/fast/canvas/shadow-offset-4-expected.checksum:
        * platform/chromium-linux/fast/canvas/shadow-offset-4-expected.png:
        * platform/chromium-linux/fast/canvas/shadow-offset-5-expected.checksum:
        * platform/chromium-linux/fast/canvas/shadow-offset-5-expected.png:
        * platform/chromium-linux/fast/canvas/shadow-offset-6-expected.checksum:
        * platform/chromium-linux/fast/canvas/shadow-offset-6-expected.png:
        * platform/chromium-linux/fast/canvas/shadow-offset-7-expected.checksum:
        * platform/chromium-linux/fast/canvas/shadow-offset-7-expected.png:
        * platform/chromium-linux/fast/multicol/shadow-breaking-expected.checksum:
        * platform/chromium-linux/fast/multicol/shadow-breaking-expected.png:
        * platform/chromium-linux/fast/repaint/box-shadow-h-expected.checksum:
        * platform/chromium-linux/fast/repaint/box-shadow-h-expected.png:
        * platform/chromium-linux/fast/repaint/box-shadow-v-expected.checksum:
        * platform/chromium-linux/fast/repaint/box-shadow-v-expected.png:
        * platform/chromium-linux/fast/repaint/moving-shadow-on-container-expected.checksum:
        * platform/chromium-linux/fast/repaint/moving-shadow-on-container-expected.png:
        * platform/chromium-linux/fast/repaint/moving-shadow-on-path-expected.checksum:
        * platform/chromium-linux/fast/repaint/moving-shadow-on-path-expected.png:
        * platform/chromium-linux/fast/repaint/shadow-multiple-horizontal-expected.checksum:
        * platform/chromium-linux/fast/repaint/shadow-multiple-horizontal-expected.png:
        * platform/chromium-linux/fast/repaint/shadow-multiple-strict-horizontal-expected.checksum:
        * platform/chromium-linux/fast/repaint/shadow-multiple-strict-horizontal-expected.png:
        * platform/chromium-linux/fast/repaint/shadow-multiple-strict-vertical-expected.checksum:
        * platform/chromium-linux/fast/repaint/shadow-multiple-strict-vertical-expected.png:
        * platform/chromium-linux/fast/repaint/shadow-multiple-vertical-expected.checksum:
        * platform/chromium-linux/fast/repaint/shadow-multiple-vertical-expected.png:
        * platform/chromium-linux/fast/repaint/text-shadow-expected.checksum:
        * platform/chromium-linux/fast/repaint/text-shadow-expected.png:
        * platform/chromium-linux/fast/repaint/text-shadow-horizontal-expected.checksum:
        * platform/chromium-linux/fast/repaint/text-shadow-horizontal-expected.png:
        * platform/chromium-linux/fast/text/shadow-no-blur-expected.checksum:
        * platform/chromium-linux/fast/text/shadow-no-blur-expected.png:
        * platform/chromium-linux/fast/text/shadow-translucent-fill-expected.checksum:
        * platform/chromium-linux/fast/text/shadow-translucent-fill-expected.png:
        * platform/chromium-linux/fast/text/stroking-decorations-expected.checksum:
        * platform/chromium-linux/fast/text/stroking-decorations-expected.png:
        * platform/chromium-linux/fast/text/stroking-expected.checksum:
        * platform/chromium-linux/fast/text/stroking-expected.png:
        * platform/chromium-linux/fast/transforms/shadows-expected.checksum:
        * platform/chromium-linux/fast/transforms/shadows-expected.png:
        * platform/chromium-linux/svg/css/composite-shadow-example-expected.checksum:
        * platform/chromium-linux/svg/css/composite-shadow-example-expected.png:
        * platform/chromium-linux/svg/css/composite-shadow-text-expected.checksum:
        * platform/chromium-linux/svg/css/composite-shadow-text-expected.png:
        * platform/chromium-linux/svg/css/composite-shadow-with-opacity-expected.checksum:
        * platform/chromium-linux/svg/css/composite-shadow-with-opacity-expected.png:
        * platform/chromium-linux/svg/css/group-with-shadow-expected.checksum:
        * platform/chromium-linux/svg/css/group-with-shadow-expected.png:
        * platform/chromium-linux/svg/css/shadow-changes-expected.checksum:
        * platform/chromium-linux/svg/css/shadow-changes-expected.png:
        * platform/chromium-linux/svg/css/stars-with-shadow-expected.checksum:
        * platform/chromium-linux/svg/css/stars-with-shadow-expected.png:
        * platform/chromium-linux/svg/css/text-gradient-shadow-expected.checksum:
        * platform/chromium-linux/svg/css/text-gradient-shadow-expected.png:
        * platform/chromium-linux/svg/css/text-shadow-multiple-expected.checksum:
        * platform/chromium-linux/svg/css/text-shadow-multiple-expected.png:
        * platform/chromium-linux/transitions/svg-text-shadow-transition-expected.checksum:
        * platform/chromium-linux/transitions/svg-text-shadow-transition-expected.png:
        * platform/chromium-win/compositing/geometry: Added.
        * platform/chromium-win/compositing/geometry/clipping-foreground-expected.checksum: Added.
        * platform/chromium-win/compositing/geometry/clipping-foreground-expected.png: Added.
        * platform/chromium-win/compositing/geometry/clipping-foreground-expected.txt: Added.
        * platform/chromium-win/compositing/iframes: Added.
        * platform/chromium-win/compositing/iframes/composited-iframe-alignment-expected.checksum: Added.
        * platform/chromium-win/compositing/iframes/composited-iframe-alignment-expected.png: Added.
        * platform/chromium-win/compositing/iframes/composited-iframe-alignment-expected.txt: Added.
        * platform/chromium-win/fast/blockflow/english-lr-text-expected.checksum:
        * platform/chromium-win/fast/blockflow/english-lr-text-expected.png:
        * platform/chromium-win/fast/borders/border-radius-split-inline-expected.checksum:
        * platform/chromium-win/fast/borders/border-radius-split-inline-expected.png:
        * platform/chromium-win/fast/box-shadow/basic-shadows-expected.checksum:
        * platform/chromium-win/fast/box-shadow/basic-shadows-expected.png:
        * platform/chromium-win/fast/box-shadow/border-radius-big-expected.checksum:
        * platform/chromium-win/fast/box-shadow/border-radius-big-expected.png:
        * platform/chromium-win/fast/box-shadow/box-shadow-radius-expected.checksum:
        * platform/chromium-win/fast/box-shadow/box-shadow-radius-expected.png:
        * platform/chromium-win/fast/box-shadow/box-shadow-transformed-expected.checksum:
        * platform/chromium-win/fast/box-shadow/box-shadow-transformed-expected.png:
        * platform/chromium-win/fast/box-shadow/inset-box-shadow-radius-expected.checksum:
        * platform/chromium-win/fast/box-shadow/inset-box-shadow-radius-expected.png:
        * platform/chromium-win/fast/box-shadow/inset-box-shadows-expected.checksum:
        * platform/chromium-win/fast/box-shadow/inset-box-shadows-expected.png:
        * platform/chromium-win/fast/box-shadow/inset-expected.checksum:
        * platform/chromium-win/fast/box-shadow/inset-expected.png:
        * platform/chromium-win/fast/box-shadow/shadow-buffer-partial-expected.checksum:
        * platform/chromium-win/fast/box-shadow/shadow-buffer-partial-expected.png:
        * platform/chromium-win/fast/box-shadow/shadow-tiling-artifact-expected.checksum:
        * platform/chromium-win/fast/box-shadow/shadow-tiling-artifact-expected.png:
        * platform/chromium-win/fast/box-shadow/spread-expected.checksum:
        * platform/chromium-win/fast/box-shadow/spread-expected.png:
        * platform/chromium-win/fast/box-shadow/spread-multiple-normal-expected.checksum:
        * platform/chromium-win/fast/box-shadow/spread-multiple-normal-expected.png:
        * platform/chromium-win/fast/canvas/shadow-offset-4-expected.checksum:
        * platform/chromium-win/fast/canvas/shadow-offset-4-expected.png:
        * platform/chromium-win/fast/canvas/shadow-offset-5-expected.checksum:
        * platform/chromium-win/fast/canvas/shadow-offset-5-expected.png:
        * platform/chromium-win/fast/canvas/shadow-offset-6-expected.checksum:
        * platform/chromium-win/fast/canvas/shadow-offset-6-expected.png:
        * platform/chromium-win/fast/canvas/shadow-offset-7-expected.checksum:
        * platform/chromium-win/fast/canvas/shadow-offset-7-expected.png:
        * platform/chromium-win/fast/multicol/shadow-breaking-expected.checksum:
        * platform/chromium-win/fast/multicol/shadow-breaking-expected.png:
        * platform/chromium-win/fast/repaint/box-shadow-h-expected.checksum:
        * platform/chromium-win/fast/repaint/box-shadow-h-expected.png:
        * platform/chromium-win/fast/repaint/box-shadow-v-expected.checksum:
        * platform/chromium-win/fast/repaint/box-shadow-v-expected.png:
        * platform/chromium-win/fast/repaint/moving-shadow-on-container-expected.checksum:
        * platform/chromium-win/fast/repaint/moving-shadow-on-container-expected.png:
        * platform/chromium-win/fast/repaint/moving-shadow-on-path-expected.checksum:
        * platform/chromium-win/fast/repaint/moving-shadow-on-path-expected.png:
        * platform/chromium-win/fast/repaint/shadow-multiple-horizontal-expected.checksum:
        * platform/chromium-win/fast/repaint/shadow-multiple-horizontal-expected.png:
        * platform/chromium-win/fast/repaint/shadow-multiple-strict-horizontal-expected.checksum:
        * platform/chromium-win/fast/repaint/shadow-multiple-strict-horizontal-expected.png:
        * platform/chromium-win/fast/repaint/shadow-multiple-strict-vertical-expected.checksum:
        * platform/chromium-win/fast/repaint/shadow-multiple-strict-vertical-expected.png:
        * platform/chromium-win/fast/repaint/shadow-multiple-vertical-expected.checksum:
        * platform/chromium-win/fast/repaint/shadow-multiple-vertical-expected.png:
        * platform/chromium-win/fast/repaint/transform-replaced-shadows-expected.checksum:
        * platform/chromium-win/fast/repaint/transform-replaced-shadows-expected.png:
        * platform/chromium-win/fast/text/shadow-translucent-fill-expected.checksum:
        * platform/chromium-win/fast/text/shadow-translucent-fill-expected.png:
        * platform/chromium-win/fast/text/stroking-decorations-expected.checksum:
        * platform/chromium-win/fast/text/stroking-decorations-expected.png:
        * platform/chromium-win/fast/text/stroking-expected.checksum:
        * platform/chromium-win/fast/text/stroking-expected.png:
        * platform/chromium-win/fast/transforms/shadows-expected.checksum:
        * platform/chromium-win/fast/transforms/shadows-expected.png:
        * platform/chromium-win/svg/css/arrow-with-shadow-expected.checksum:
        * platform/chromium-win/svg/css/arrow-with-shadow-expected.png:
        * platform/chromium-win/svg/css/composite-shadow-example-expected.checksum:
        * platform/chromium-win/svg/css/composite-shadow-example-expected.png:
        * platform/chromium-win/svg/css/composite-shadow-text-expected.checksum:
        * platform/chromium-win/svg/css/composite-shadow-text-expected.png:
        * platform/chromium-win/svg/css/composite-shadow-with-opacity-expected.checksum:
        * platform/chromium-win/svg/css/composite-shadow-with-opacity-expected.png:
        * platform/chromium-win/svg/css/group-with-shadow-expected.checksum:
        * platform/chromium-win/svg/css/group-with-shadow-expected.png:
        * platform/chromium-win/svg/css/shadow-changes-expected.checksum:
        * platform/chromium-win/svg/css/shadow-changes-expected.png:
        * platform/chromium-win/svg/css/shadow-with-large-radius-expected.checksum:
        * platform/chromium-win/svg/css/shadow-with-large-radius-expected.png:
        * platform/chromium-win/svg/css/shadow-with-negative-offset-expected.checksum:
        * platform/chromium-win/svg/css/shadow-with-negative-offset-expected.png:
        * platform/chromium-win/svg/css/stars-with-shadow-expected.checksum:
        * platform/chromium-win/svg/css/stars-with-shadow-expected.png:
        * platform/chromium-win/svg/css/text-gradient-shadow-expected.checksum:
        * platform/chromium-win/svg/css/text-gradient-shadow-expected.png:
        * platform/chromium-win/svg/css/text-shadow-multiple-expected.checksum:
        * platform/chromium-win/svg/css/text-shadow-multiple-expected.png:
        * platform/chromium-win/transitions/svg-text-shadow-transition-expected.checksum:
        * platform/chromium-win/transitions/svg-text-shadow-transition-expected.png:
        * platform/chromium/test_expectations.txt:

2011-03-18  Sheriff Bot  <webkit.review.bot@gmail.com>

        Unreviewed, rolling out r81487.
        http://trac.webkit.org/changeset/81487
        https://bugs.webkit.org/show_bug.cgi?id=56662

        "Breaks inspector/styles/styles-add-blank-property.html"
        (Requested by apavlov on #webkit).

        * inspector/styles/get-set-stylesheet-text-expected.txt: Removed.
        * inspector/styles/get-set-stylesheet-text.html: Removed.
        * inspector/styles/resources/get-set-stylesheet-text.css: Removed.
        * inspector/styles/styles-new-API.html:

2011-03-18  Stephen White  <senorblanco@chromium.org>

        Unreviewed; test expectations update.

        [chromium] Add some test expectations missing from r81489.

        * platform/chromium/test_expectations.txt:

2011-03-18  Justin Novosad  <junov@chromium.org>

        Reviewed by Kenneth Russell.

        [Chromium] Canvas shadow is not working with drawImage
        https://bugs.webkit.org/show_bug.cgi?id=55506

        Patch also fixes shadow blur quality and color.
        Affects Chromium win/linux. Also fixes the following bugs:
        https://bugs.webkit.org/show_bug.cgi?id=50112
        https://bugs.webkit.org/show_bug.cgi?id=51989
        https://bugs.webkit.org/show_bug.cgi?id=55410
        No tests were added, impact is already covered by multiple layout tests.

        * platform/chromium/test_expectations.txt:

2011-03-18  Jessie Berlin  <jberlin@apple.com>

        Web Inspector: inspector/elements/mutate-unknown-node.html is flakey.
        https://bugs.webkit.org/show_bug.cgi?id=56457

        Unreviewed, disable the test and remove it from the Qt Skipped list because this test is
        also being flakey on Windows.

        * inspector/elements/mutate-unknown-node.html: Removed.
        * inspector/elements/mutate-unknown-node.html-disabled: Copied from inspector/elements/mutate-unknown-node.html.
        * platform/qt/Skipped:

2011-03-15  Alexander Pavlov  <apavlov@chromium.org>

        Reviewed by Pavel Feldman.

        Web Inspector: Fix handling of the CSSAgent.setStyleSheetText() results in CSSStyleModel.js
        https://bugs.webkit.org/show_bug.cgi?id=56310

        * inspector/styles/get-set-stylesheet-text-expected.txt: Added.
        * inspector/styles/get-set-stylesheet-text.html: Added.
        * inspector/styles/resources/get-set-stylesheet-text.css: Added.
        (body):
        (/* comment before selector */body.main1/* comment after selector */):
        (body.main2):
        * inspector/styles/styles-new-API.html:

2011-03-18  Jessie Berlin  <jberlin@apple.com>

        inspector/console/command-line-api.html timing out on Windows 7 Release (WebKit2 Tests).
        https://bugs.webkit.org/show_bug.cgi?id=56633

        Unreviewed, skip command-line-api-inspect.html instead of command-line-api.html, since the
        former appears to be causing the latter (and probably console-clear.html as well) to time
        out.

        * platform/win-wk2/Skipped:
        * platform/win-wk2/inspector: Removed.
        * platform/win-wk2/inspector/console: Removed.
        * platform/win-wk2/inspector/console/command-line-api-inspect-expected.txt: Removed.

2011-03-18  Sergio Villar Senin  <svillar@igalia.com>

        Added new GTK+ test expectations.

        * platform/gtk/fast/text/emphasis-combined-text-expected.checksum: Added.
        * platform/gtk/fast/text/emphasis-combined-text-expected.png: Added.
        * platform/gtk/fast/text/emphasis-combined-text-expected.txt: Added.

2011-03-18  Jessie Berlin  <jberlin@apple.com>

        Two inspector tests failing due to SECURITY_ERR exceptions on Windows 7 Release (WebKit2
        Tests).
        https://bugs.webkit.org/show_bug.cgi?id=56632

        Unreviewed, landing expected failing results in order to get the Windows 7 Release
        WebKit2 bots green.

        * platform/win-wk2/http: Added.
        * platform/win-wk2/http/tests: Added.
        * platform/win-wk2/http/tests/inspector-enabled: Added.
        * platform/win-wk2/http/tests/inspector-enabled/database-open-expected.txt: Added.
        * platform/win-wk2/inspector: Added.
        * platform/win-wk2/inspector/console: Added.
        * platform/win-wk2/inspector/console/command-line-api-inspect-expected.txt: Added.

2011-03-18  Alexander Pavlov  <apavlov@chromium.org>

        [Chromium] Unreviewed, suppress editing/deleting/5206311-1.html crashes on Mac Debug

        * platform/chromium/test_expectations.txt:

2011-03-17  Pavel Podivilov  <podivilov@chromium.org>

        Reviewed by Pavel Feldman.

        Web Inspector: extract content loading logic from scripts panel.
        https://bugs.webkit.org/show_bug.cgi?id=55237

        * inspector/debugger/debug-inlined-scripts.html:

2011-03-18  Alexander Pavlov  <apavlov@chromium.org>

        [Chromium] Unreviewed, rebaseline GPU tests after r81414

        * platform/chromium-gpu-linux/compositing/geometry/clipped-video-controller-expected.checksum:
        * platform/chromium-gpu-linux/compositing/geometry/clipped-video-controller-expected.png:
        * platform/chromium-gpu-linux/compositing/geometry/video-fixed-scrolling-expected.checksum:
        * platform/chromium-gpu-linux/compositing/geometry/video-fixed-scrolling-expected.png:
        * platform/chromium-gpu-linux/compositing/geometry/video-opacity-overlay-expected.checksum:
        * platform/chromium-gpu-linux/compositing/geometry/video-opacity-overlay-expected.png:
        * platform/chromium-gpu-linux/compositing/layers-inside-overflow-scroll-expected.checksum:
        * platform/chromium-gpu-linux/compositing/layers-inside-overflow-scroll-expected.png:
        * platform/chromium-gpu-linux/compositing/overflow/overflow-compositing-descendant-expected.checksum:
        * platform/chromium-gpu-linux/compositing/overflow/overflow-compositing-descendant-expected.png:
        * platform/chromium-gpu-linux/compositing/overflow/scroll-ancestor-update-expected.checksum:
        * platform/chromium-gpu-linux/compositing/overflow/scroll-ancestor-update-expected.png:
        * platform/chromium-gpu-linux/compositing/reflections/load-video-in-reflection-expected.checksum:
        * platform/chromium-gpu-linux/compositing/reflections/load-video-in-reflection-expected.png:
        * platform/chromium-gpu-linux/compositing/self-painting-layers-expected.checksum:
        * platform/chromium-gpu-linux/compositing/self-painting-layers-expected.png:
        * platform/chromium-gpu-linux/media/video-canvas-alpha-expected.checksum: Added.
        * platform/chromium-gpu-linux/media/video-canvas-alpha-expected.png: Added.
        * platform/chromium-gpu-linux/media/video-display-toggle-expected.checksum:
        * platform/chromium-gpu-linux/media/video-display-toggle-expected.png:
        * platform/chromium-gpu-linux/media/video-no-audio-expected.checksum:
        * platform/chromium-gpu-linux/media/video-no-audio-expected.png:
        * platform/chromium-gpu-linux/media/video-volume-slider-expected.checksum:
        * platform/chromium-gpu-linux/media/video-volume-slider-expected.png:
        * platform/chromium-gpu-linux/media/video-zoom-expected.checksum:
        * platform/chromium-gpu-linux/media/video-zoom-expected.png:
        * platform/chromium-gpu-win/compositing/geometry/clipped-video-controller-expected.checksum:
        * platform/chromium-gpu-win/compositing/geometry/clipped-video-controller-expected.png:
        * platform/chromium-gpu-win/compositing/geometry/video-fixed-scrolling-expected.checksum:
        * platform/chromium-gpu-win/compositing/geometry/video-fixed-scrolling-expected.png:
        * platform/chromium-gpu-win/compositing/geometry/video-opacity-overlay-expected.checksum:
        * platform/chromium-gpu-win/compositing/geometry/video-opacity-overlay-expected.png:
        * platform/chromium-gpu-win/compositing/layers-inside-overflow-scroll-expected.checksum:
        * platform/chromium-gpu-win/compositing/layers-inside-overflow-scroll-expected.png:
        * platform/chromium-gpu-win/compositing/overflow/overflow-compositing-descendant-expected.checksum:
        * platform/chromium-gpu-win/compositing/overflow/overflow-compositing-descendant-expected.png:
        * platform/chromium-gpu-win/compositing/overflow/scroll-ancestor-update-expected.checksum:
        * platform/chromium-gpu-win/compositing/overflow/scroll-ancestor-update-expected.png:
        * platform/chromium-gpu-win/compositing/reflections/load-video-in-reflection-expected.checksum:
        * platform/chromium-gpu-win/compositing/reflections/load-video-in-reflection-expected.png:
        * platform/chromium-gpu-win/compositing/self-painting-layers-expected.checksum:
        * platform/chromium-gpu-win/compositing/self-painting-layers-expected.png:
        * platform/chromium-gpu-win/media/video-canvas-alpha-expected.checksum:
        * platform/chromium-gpu-win/media/video-canvas-alpha-expected.png:
        * platform/chromium-gpu-win/media/video-display-toggle-expected.checksum:
        * platform/chromium-gpu-win/media/video-display-toggle-expected.png:
        * platform/chromium-gpu-win/media/video-no-audio-expected.checksum:
        * platform/chromium-gpu-win/media/video-no-audio-expected.png:
        * platform/chromium-gpu-win/media/video-volume-slider-expected.checksum:
        * platform/chromium-gpu-win/media/video-volume-slider-expected.png:
        * platform/chromium-gpu-win/media/video-zoom-expected.checksum:
        * platform/chromium-gpu-win/media/video-zoom-expected.png:

2011-03-18  Alexander Pavlov  <apavlov@chromium.org>

        [Chromium] Unreviewed, fix custom expectation after r81438

        * platform/chromium/fast/dom/prototype-inheritance-expected.txt:

2011-03-18  Ilya Tikhonovsky  <loislo@chromium.org>

        Unreviewed fix for chromium test_expectations.txt.

        There was a duplicate for inspector/mutate-unknown-node.html

        * platform/chromium/test_expectations.txt:

2011-03-18  Andrey Kosyakov  <caseq@chromium.org>

        Reviewed by Pavel Feldman.

        http/tests/inspector/resource-parameters.html is flakey
        https://bugs.webkit.org/show_bug.cgi?id=55867

        Fixed test flakiness by not finishing test before proper resource arrives.

        * http/tests/inspector/resource-parameters.html: Renamed from LayoutTests/http/tests/inspector/resource-parameters.html-disabled.

2011-03-18  Ilya Tikhonovsky  <loislo@chromium.org>

        Reviewed by Yury Semikhatsky.

        Web Inspector: chromium: cleanup Web Inspector expectations.
        https://bugs.webkit.org/show_bug.cgi?id=56635

        Many Inspector tests are passing now but they still have expectations.
        I've removed unnecessary expectations and grouped the remainings.

        * platform/chromium/test_expectations.txt:

2011-03-18  Adam Roben  <aroben@apple.com>

        Add Windows WebKit2 expected failure results for a media test

        The failure is tracked by <http://webkit.org/b/56636>.

        * platform/win-wk2/media/controls-without-preload-expected.txt: Added.

2011-03-18  Adam Roben  <aroben@apple.com>

        Skip some timing out tests in WebKit2 on Windows

        Tracked by <http://webkit.org/b/56633> and <http://webkit.org/b/56634>.

        * platform/win-wk2/Skipped: Added inspector/console/command-line-api.html and
        http/tests/xmlhttprequest/cross-origin-authorization.html.

2011-03-18  Adam Roben  <aroben@apple.com>

        Add expected failure results for WebKit2 tests failing on Windows due to font differences

        <http://webkit.org/b/56617> tracks the failures.

        * platform/win-wk2/css2.1/t0905-c5525-flthw-00-c-g-expected.txt: Added.
        * platform/win-wk2/css2.1/t0905-c5526-flthw-00-c-g-expected.txt: Added.
        * platform/win-wk2/svg/W3C-I18N/text-dirLTR-ubOverride-expected.txt: Added.
        * platform/win-wk2/svg/W3C-I18N/tspan-dirLTR-ubOverride-in-default-context-expected.txt: Added.
        * platform/win-wk2/svg/W3C-I18N/tspan-dirLTR-ubOverride-in-ltr-context-expected.txt: Added.
        * platform/win-wk2/svg/W3C-I18N/tspan-dirNone-ubOverride-in-default-context-expected.txt: Added.
        * platform/win-wk2/svg/W3C-I18N/tspan-dirNone-ubOverride-in-ltr-context-expected.txt: Added.
        * platform/win-wk2/svg/text/bidi-text-query-expected.txt: Added.

2011-03-18  Adam Roben  <aroben@apple.com>

        Skip a test in that is probably causing the next test to crash in WebKit2

        <http://webkit.org/b/55780> tracks the failure.

        * platform/win-wk2/Skipped: Skip platform/win/plugins/draws-gradient.html instead of
        platform/win/plugins/get-value-netscape-window.html. The former was probably causing the
        latter to crash.

2011-03-18  Adam Roben  <aroben@apple.com>

        Disable a flakey inspector test

        <http://webkit.org/b/56565> tracks the failure.

        * inspector/elements/elements-panel-xhtml-structure.xhtml-disabled: Renamed from LayoutTests/inspector/elements/elements-panel-xhtml-structure.xhtml.

2011-03-17  Adam Roben  <aroben@apple.com>

        Skip a test that is likely causing later tests to assert

        <http://webkit.org/b/56599> tracks the failure.

        * platform/win/Skipped: Replaced editing/deleting/5206311-1.html with
        editing/deleting/5168598.html, which is likely causing the former to assert.

2011-03-17  Adam Roben  <aroben@apple.com>

        Add Windows XP results for test added in r81404

        The differences from Windows 7 seem to be due to different fonts being used.

        * platform/win-xp/fast/text/emphasis-combined-text-expected.txt: Added.

2011-03-17  Adam Klein  <adamk@chromium.org>

        Reviewed by Adam Barth.

        [filesystem] Rename toURI->toURL, resolveLocalFileSystemURI->resolveLocalFileSystemURL
        https://bugs.webkit.org/show_bug.cgi?id=56502

        Leaving the file names as-is for now to avoid svn-apply's
        handling of move-and-modify.

        * fast/filesystem/directory-entry-to-uri-expected.txt:
        * fast/filesystem/file-entry-to-uri-expected.txt:
        * fast/filesystem/resources/directory-entry-to-uri.js:
        * fast/filesystem/resources/file-entry-to-uri-sync.js:
        * fast/filesystem/resources/file-entry-to-uri.js:
        * fast/filesystem/workers/file-entry-to-uri-sync-expected.txt:
        * http/tests/filesystem/resolve-uri-expected.txt:
        * http/tests/filesystem/script-tests/resolve-uri.js:

2011-03-17  James Simonsen  <simonjam@chromium.org>

        Unreviewed, rebaseline a bunch of chromium tests.

        * platform/chromium-mac-leopard/fast/block/positioning/auto/vertical-lr/007-expected.checksum: Added.
        * platform/chromium-mac-leopard/fast/block/positioning/auto/vertical-lr/007-expected.png: Added.
        * platform/chromium-mac-leopard/fast/block/positioning/auto/vertical-rl/007-expected.checksum: Added.
        * platform/chromium-mac-leopard/fast/block/positioning/auto/vertical-rl/007-expected.png: Added.
        * platform/chromium-mac-leopard/fast/blockflow/Kusa-Makura-background-canvas-expected.checksum:
        * platform/chromium-mac-leopard/fast/blockflow/Kusa-Makura-background-canvas-expected.png:
        * platform/chromium-mac-leopard/fast/blockflow/border-vertical-lr-expected.checksum:
        * platform/chromium-mac-leopard/fast/blockflow/border-vertical-lr-expected.png:
        * platform/chromium-mac-leopard/fast/blockflow/english-lr-text-expected.checksum:
        * platform/chromium-mac-leopard/fast/blockflow/english-lr-text-expected.png:
        * platform/chromium-mac-leopard/fast/blockflow/japanese-lr-selection-expected.checksum: Added.
        * platform/chromium-mac-leopard/fast/blockflow/japanese-lr-selection-expected.png: Added.
        * platform/chromium-mac-leopard/fast/blockflow/japanese-lr-text-expected.checksum:
        * platform/chromium-mac-leopard/fast/blockflow/japanese-lr-text-expected.png:
        * platform/chromium-mac-leopard/fast/blockflow/japanese-rl-selection-expected.checksum:
        * platform/chromium-mac-leopard/fast/blockflow/japanese-rl-selection-expected.png:
        * platform/chromium-mac-leopard/fast/blockflow/japanese-rl-text-expected.checksum:
        * platform/chromium-mac-leopard/fast/blockflow/japanese-rl-text-expected.png:
        * platform/chromium-mac-leopard/fast/repaint/japanese-rl-selection-clear-expected.checksum:
        * platform/chromium-mac-leopard/fast/repaint/japanese-rl-selection-clear-expected.png:
        * platform/chromium-mac-leopard/fast/repaint/japanese-rl-selection-repaint-expected.checksum:
        * platform/chromium-mac-leopard/fast/repaint/japanese-rl-selection-repaint-expected.png:
        * platform/chromium-mac-leopard/fast/ruby/base-shorter-than-text-expected.checksum: Added.
        * platform/chromium-mac-leopard/fast/ruby/base-shorter-than-text-expected.png: Added.
        * platform/chromium-mac-leopard/fast/text/international/text-combine-image-test-expected.checksum:
        * platform/chromium-mac-leopard/fast/text/international/text-combine-image-test-expected.png:

2011-03-17  Adam Barth  <abarth@webkit.org>

        Reviewed by Eric Seidel.

        Update CSP directive parser to match spec
        https://bugs.webkit.org/show_bug.cgi?id=56582

        Test some error-handling cases.

        * http/tests/security/contentSecurityPolicy/directive-parsing-expected.txt: Added.
        * http/tests/security/contentSecurityPolicy/directive-parsing.html: Added.

2011-03-17  James Simonsen  <simonjam@chromium.org>

        Unreviewed, update chromium test expectations.

        * platform/chromium/test_expectations.txt:

2011-03-17  David Levin  <levin@chromium.org>

        Misc clean-up (see files for details).

        * platform/chromium-mac-leopard/media/controls-after-reload-expected.checksum: Due to r81300.
        * platform/chromium-mac-leopard/media/controls-after-reload-expected.png: Ditto.
        * platform/chromium-mac-leopard/media/controls-without-preload-expected.checksum: Due to r81280.
        * platform/chromium-mac-leopard/media/controls-without-preload-expected.png: Ditto.
        * platform/chromium-mac-leopard/media/media-document-audio-repaint-expected.checksum: Due to r81285.
        * platform/chromium-mac-leopard/media/media-document-audio-repaint-expected.png: Ditto.
        * platform/chromium-win-xp/media/controls-without-preload-expected.checksum: Due to r81280.
        * platform/chromium-win-xp/media/controls-without-preload-expected.png: Ditto.
        * platform/chromium/test_expectations.txt: Replace BUG_LEVIN with a bug number.

2011-03-17  Dan Bernstein  <mitz@apple.com>

        Added platform-specific expected results for fast/text/emphasis-combined-text.html

        * platform/mac-leopard/fast/text/emphasis-combined-text-expected.txt: Added.
        * platform/win/fast/text/emphasis-combined-text-expected.txt: Added.

2011-03-17  Adam Roben  <aroben@apple.com>

        Remove some non-compositing results for a test that is now skipped in non-compositing builds

        Reviewed by Sam Weinig.

        * platform/win-xp/media/media-document-audio-repaint-expected.txt: Removed.

2011-03-17  Dan Bernstein  <mitz@apple.com>

        Reviewed by Beth Dakin.

        <rdar://problem/9052166> Emphasis marks appear over combined text rather than beside it
        https://bugs.webkit.org/show_bug.cgi?id=56480

        * fast/text/emphasis-combined-text.html: Added.
        * platform/mac/fast/text/emphasis-combined-text-expected.checksum: Added.
        * platform/mac/fast/text/emphasis-combined-text-expected.png: Added.
        * platform/mac/fast/text/emphasis-combined-text-expected.txt: Added.

2011-03-17  Jian Li  <jianli@chromium.org>

        Reviewed by Adam Barth.

        Blob URL should not be allow to get created from the code running from data URI
        https://bugs.webkit.org/show_bug.cgi?id=56600

        * http/tests/fileapi/create-blob-url-from-data-url-expected.txt: Added.
        * http/tests/fileapi/create-blob-url-from-data-url.html: Added.
        * platform/mac-wk2/Skipped:
        * platform/qt/Skipped:
        * platform/win/Skipped:

2011-03-17  Ryosuke Niwa  <rniwa@webkit.org>

        Skip an editing test that hits assertion on non-Mac platforms.
        The bug is tracked by https://bugs.webkit.org/show_bug.cgi?id=56599.

        * platform/chromium/test_expectations.txt:
        * platform/gtk/Skipped:
        * platform/qt/Skipped:
        * platform/win/Skipped:

2011-03-17  Sheriff Bot  <webkit.review.bot@gmail.com>

        Unreviewed, rolling out r80064.
        http://trac.webkit.org/changeset/80064
        https://bugs.webkit.org/show_bug.cgi?id=56588

        the original test was correct (Requested by rniwa on #webkit).

        * platform/mac/editing/input/selection-change-closes-typing.html:

2011-03-17  Adam Roben  <aroben@apple.com>

        Disable http/tests/inspector/network tests

        They are known to be flaky. <http://webkit.org/b/56578> tracks the issue.

        * http/tests/inspector/network/network-size.html-disabled: Renamed from LayoutTests/http/tests/inspector/network/network-size.html.
        * http/tests/inspector/network/network-timing.html-disabled: Renamed from LayoutTests/http/tests/inspector/network/network-timing.html.

        * platform/mac/Skipped: Removed a now-disabled test.

2011-03-17  Dmitry Titov  <dimich@chromium.org>

        [Chromium] Unreviewed, update test_expectations.txt

        Mark some tests as SLOW in DEBUG since they are on a borderline of shorter timeout.
        * platform/chromium/test_expectations.txt:

2011-03-17  Adam Roben  <aroben@apple.com>

        Skip a flaky test on Mac

        <http://webkit.org/b/56578> tracks the failure.

        * platform/mac/Skipped: Added http/tests/inspector/network/network-size.html.

2011-03-17  Adam Roben  <aroben@apple.com>

        Skip some flaky tests on the SnowLeopard WebKit2 bot

        Tracked by <http://webkit.org/b/56530> and <http://webkit.org/b/56584>.

        * platform/mac-wk2/Skipped: Added http/tests/inspector/resource-har-conversion.html and
        inspector/debugger/debug-inlined-scripts.html.

2011-03-17  James Simonsen  <simonjam@chromium.org>

        Unreviewed, update chromium test expectations.

        * platform/chromium/test_expectations.txt:

2011-03-17  James Simonsen  <simonjam@chromium.org>

        Unreviewed, update chromium test expectations.

        * platform/chromium/test_expectations.txt:

2011-03-17  Sheriff Bot  <webkit.review.bot@gmail.com>

        Unreviewed, rolling out r81369.
        http://trac.webkit.org/changeset/81369
        https://bugs.webkit.org/show_bug.cgi?id=56579

        breaks debugger test (Requested by podivilov on #webkit).

        * inspector/debugger/debug-inlined-scripts.html:

2011-03-17  Ryosuke Niwa  <rniwa@webkit.org>

        Reviewed by Justin Garcia.

        Assert that editing does not ignore position's anchorNode if position is an offset in anchor
        https://bugs.webkit.org/show_bug.cgi?id=56027

        Added a test to ensure WebKit lets users edit contents inside a button element properly.

        * editing/execCommand/button-expected.txt: Added.
        * editing/execCommand/button.html: Added.

2011-03-17  Adam Roben  <aroben@apple.com>

        Skip three tests that fail on one Windows WebKit2 slave but not the other

        The failures are tracked by <http://webkit.org/b/56550>.

        * platform/win-wk2/Skipped: Added fast/events/tabindex-focus-blur-all.html,
        fast/forms/button-align.html, and media/audio-mpeg4-supported.html.

2011-03-17  Pavel Podivilov  <podivilov@chromium.org>

        Reviewed by Pavel Feldman.

        Web Inspector: extract content loading logic from scripts panel.
        https://bugs.webkit.org/show_bug.cgi?id=55237

        * inspector/debugger/debug-inlined-scripts.html:

2011-03-17  James Simonsen  <simonjam@chromium.org>

        Unreviewed, update chromium test expectations.

        * platform/chromium/test_expectations.txt:

2011-03-17  Adam Roben  <aroben@apple.com>

        Disable http/tests/inspector/resource-parameters.html

        It is flaky. The flakiness is tracked by <http://webkit.org/b/55867>.

        * http/tests/inspector/resource-parameters.html-disabled: Renamed from LayoutTests/http/tests/inspector/resource-parameters.html.

        * platform/qt/Skipped: Removed the test from this Skipped file since it has been disabled.

2011-03-17  Sheriff Bot  <webkit.review.bot@gmail.com>

        Unreviewed, rolling out r81350.
        http://trac.webkit.org/changeset/81350
        https://bugs.webkit.org/show_bug.cgi?id=56560

        "Breaks twenty Chromium Webkit Win builder webkit_gpu_tests"
        (Requested by apavlov on #webkit).

        * fast/canvas/script-tests/canvas-transforms-fillRect-shadow.js:
        (shouldBeAround):
        * platform/chromium/test_expectations.txt:

2011-03-17  Yury Semikhatsky  <yurys@chromium.org>

        Reviewed by Pavel Feldman.

        [Chromium] Web Inspector tests timing out on Windows after r81222
        https://bugs.webkit.org/show_bug.cgi?id=56454

        Remove custom expectations for Chromium tests that consistently pass locally.

        * platform/chromium/test_expectations.txt:

2011-03-17  Adam Roben  <aroben@apple.com>

        Skip some tests that only fail on apple-macpro-6

        <http://webkit.org/b/56564> tracks the failures.

        * platform/mac-leopard/Skipped:

2011-03-17  Adam Roben  <aroben@apple.com>

        Skip a test that is only failing on some Leopard slaves

        svg/text/font-size-below-point-five.svg generates different results on apple-macpro-5 from
        the other Leopard slaves. <http://webkit.org/b/56544> tracks this issue.

        * platform/mac-leopard/Skipped: Skip svg/text/font-size-below-point-five.
        * platform/mac-leopard/svg/text/font-size-below-point-five-expected.txt: Reverted these
        results to the results that all slaves except apple-macpro-5 generate.

2011-03-17  Joseph Pecoraro  <joepeck@webkit.org>

        Unreviewed, bad expected results were added. This fixes
        the expected results and unskips the test on GTK.

        [GTK] fast/viewport/viewport-131.html fails
        https://bugs.webkit.org/show_bug.cgi?id=56556

        * fast/viewport/viewport-131-expected.txt:
        * platform/gtk/Skipped:

2011-03-14  Pavel Podivilov  <podivilov@chromium.org>

        Reviewed by Yury Semikhatsky.

        Web Inspector: refactor event listener breakpoints.
        https://bugs.webkit.org/show_bug.cgi?id=56305

        * inspector/debugger/event-listener-breakpoints-expected.txt: Added.
        * inspector/debugger/event-listener-breakpoints.html: Added.
        * platform/gtk/Skipped:
        * platform/mac/Skipped:
        * platform/qt/Skipped:
        * platform/win/Skipped:

2011-03-17  Pavel Podivilov  <podivilov@chromium.org>

        Reviewed by Pavel Feldman.

        Web Inspector: timeline-paint.html is flaky on GTK 64-bit Debug.
        https://bugs.webkit.org/show_bug.cgi?id=56554

        It is not guaranteed that we receive exactly one paint event.

        * inspector/timeline/timeline-paint.html:
        * inspector/timeline/timeline-test.js:
        (initialize_Timeline.InspectorTest.stopTimeline):

2011-03-17  Philippe Normand  <pnormand@igalia.com>

        Unreviewed, skip fast/reflections/abs-position-in-reflection.html on GTK
        affected by bug 56180.

        * platform/gtk/Skipped:

2011-03-17  Philippe Normand  <pnormand@igalia.com>

        Unreviewed, skip flaky svg test on GTK.

        * platform/gtk/Skipped:

2011-03-17  Philippe Normand  <pnormand@igalia.com>

        Unreviewed, GTK baselines for fast/dynamic/text-combine.html added
        in r81251.

        * platform/gtk/fast/dynamic/text-combine-expected.txt: Added.

2011-03-16  Stephen White  <senorblanco@chromium.org>

        Reviewed by Kenneth Russell.

        Canvas2D GPU acceleration should support shadows
        https://bugs.webkit.org/show_bug.cgi?id=56476

        * fast/canvas/script-tests/canvas-transforms-fillRect-shadow.js:
        (shouldBeAround):
        Widen the threshold for this test, which doesn't seem to allow for
        a true Gaussian blur implementation.
        * platform/chromium/test_expectations.txt:
        Update some tests which are now passing on GPU, and some which time out
        due to Mesa slowness.

2011-03-17  Alexander Pavlov  <apavlov@chromium.org>

        [Chromium] Unreviewed, update expectations

        * platform/chromium-mac/fast/forms/input-number-unacceptable-style-expected.txt: Added.
        * platform/chromium/test_expectations.txt:

2011-03-17  Philippe Normand  <pnormand@igalia.com>

        Unreviewed, skip fast/profiler/window-dot-eval.html on GTK
        affected by bug 56180.

        * platform/gtk/Skipped:

2011-03-17  Philippe Normand  <pnormand@igalia.com>

        Unreviewed, skip failing viewport test on GTK.

        * platform/gtk/Skipped:

2011-03-17  Sheriff Bot  <webkit.review.bot@gmail.com>

        Unreviewed, rolling out r81243.
        http://trac.webkit.org/changeset/81243
        https://bugs.webkit.org/show_bug.cgi?id=56471

        Breaks GTK 64-bit Debug tests (Requested by podivilov on
        #webkit).

        * inspector/debugger/event-listener-breakpoints-expected.txt: Removed.
        * inspector/debugger/event-listener-breakpoints.html: Removed.
        * platform/gtk/Skipped:
        * platform/mac/Skipped:
        * platform/qt/Skipped:
        * platform/win/Skipped:

2011-03-17  Joseph Pecoraro  <joepeck@webkit.org>

        Reviewed by Kenneth Rohde Christiansen.

        Viewport test for user-scalable=yes
        https://bugs.webkit.org/show_bug.cgi?id=56527

        Provide tests for user-scalable no, yes, and default values.

        * fast/viewport/viewport-130-expected.txt: Added.
        * fast/viewport/viewport-130.html: Added.
        * fast/viewport/viewport-131-expected.txt: Added.
        * fast/viewport/viewport-131.html: Added.
        * fast/viewport/viewport-132-expected.txt: Copied from LayoutTests/fast/viewport/viewport-1-expected.txt.
        * fast/viewport/viewport-132.html: Added.

2011-03-17  Sam Weinig  <sam@webkit.org>

        Reviewed by Adam Roben.

        Add transitions/default-timing-function.html to the SnowLeopard WebKit2 Skipped list.
        https://bugs.webkit.org/show_bug.cgi?id=56531

        * platform/mac-wk2/Skipped:

2011-03-17  Sam Weinig  <sam@webkit.org>

        Reviewed by Adam Roben.

        Add java/lc3/JavaObject/JavaObjectToDouble-001.html to the mac-leopard Skipped list.
        https://bugs.webkit.org/show_bug.cgi?id=56545

        - This test was getting different results on different slaves.

        * platform/mac-leopard/Skipped:

2011-03-17  Sam Weinig  <sam@webkit.org>

        Reviewed by Adam Roben.

        Disable fast/workers/storage/interrupt-database-sync.html due to flakiness on
        multiple platforms.
        https://bugs.webkit.org/show_bug.cgi?id=49906

        * fast/workers/storage/interrupt-database-sync.html: Removed.
        * fast/workers/storage/interrupt-database-sync.html-disabled: Copied from fast/workers/storage/interrupt-database-sync.html.
        * platform/qt/Skipped: Remove from qt Skipped list since it is now disabled.

2011-03-16  Sam Weinig  <sam@webkit.org>

        Reviewed by Adam Roben.

        Adding new results for some failing tests on the Leopard Debug/Leopard Release Tester.

        The following bugs were filed to track these issues:
            https://bugs.webkit.org/show_bug.cgi?id=56544
            https://bugs.webkit.org/show_bug.cgi?id=56545

        * platform/mac-leopard/java/lc3/JavaObject/JavaObjectToDouble-001-expected.txt: Added.
        * platform/mac-leopard/svg/text/font-size-below-point-five-expected.txt:

2011-03-16  Sam Weinig  <sam@webkit.org>

        Reviewed by Adam Roben.

        Adding plugins/destroy-on-setwindow.html to the mac-leopard Skipped list.
        https://bugs.webkit.org/show_bug.cgi?id=56165 was filed to track this issue.

        * platform/mac-leopard/Skipped:

2011-03-16  Sam Weinig  <sam@webkit.org>

        Reviewed by Adam Roben; Dictated, but not read, by Adam Roben.

        Adding new results for some failing tests on the SnowLeopard WebKit2 Tester.

        The following bugs were filed to track these issues:
            https://bugs.webkit.org/show_bug.cgi?id=56528
            https://bugs.webkit.org/show_bug.cgi?id=56530
            https://bugs.webkit.org/show_bug.cgi?id=56531
            https://bugs.webkit.org/show_bug.cgi?id=56532
            https://bugs.webkit.org/show_bug.cgi?id=56533
            https://bugs.webkit.org/show_bug.cgi?id=56537
            https://bugs.webkit.org/show_bug.cgi?id=56539

        * platform/mac-wk2/animations/animation-controller-drt-api-expected.txt: Added.
        * platform/mac-wk2/http/tests/appcache/online-fallback-layering-expected.txt: Added.
        * platform/mac-wk2/http/tests/inspector/console-resource-errors-expected.txt: Added.
        * platform/mac-wk2/http/tests/inspector/resource-har-conversion-expected.txt: Added.
        * platform/mac-wk2/http/tests/xmlviewer/dumpAsText/frames-expected.txt: Added.
        * platform/mac-wk2/media/controls-without-preload-expected.txt: Added.
        * platform/mac-wk2/transitions/default-timing-function-expected.txt: Added.

2011-03-16  Naoki Takano  <takano.naoki@gmail.com>

        Reviewed by Ryosuke Niwa.

        Textarea maxlength doesn't account for newlines
        https://bugs.webkit.org/show_bug.cgi?id=54443

        * fast/forms/script-tests/textarea-maxlength.js:
        (createFocusedTextAreaWithMaxLength3): Added two tests to make sure consecutive insertbreaks
        work correctly for textarea maxlength.
        * fast/forms/textarea-maxlength-expected.txt: Added two test results.

2011-03-16  Alice Liu  <alice.liu@apple.com>

        Add fast/workers/storage/interrupt-database-sync.html to the win-xp skipped list
        due to intermittent failure; tracked by https://bugs.webkit.org/show_bug.cgi?id=56534

        * platform/win-xp/Skipped:

2011-03-16  Sam Weinig  <sam@webkit.org>

        Add compositing/transitions/singular-scale-transition.html to the Skipped lists.
        Seems to be the same assert that https://bugs.webkit.org/show_bug.cgi?id=56488 was
        filed for.

        * platform/mac/Skipped:
        * platform/win/Skipped:

2011-03-16  John Bauman  <jbauman@chromium.org>

        Reviewed by James Robinson.

        texImage2D gets old contents of canvas
        https://bugs.webkit.org/show_bug.cgi?id=56414

        * platform/chromium/test_expectations.txt: premultiply-alpha test now works

2011-03-16  Sam Weinig  <sam@webkit.org>

        Check in new results for text-combine-image-test-expected.txt.

        * platform/mac-leopard/fast/text/international/text-combine-image-test-expected.txt:

2011-03-16  Sam Weinig  <sam@webkit.org>

        Adding new results for some failing tests on the Leopard Release Tester.

        The following bugs were filed to track these issues:
            https://bugs.webkit.org/show_bug.cgi?id=56516
            https://bugs.webkit.org/show_bug.cgi?id=56517
            https://bugs.webkit.org/show_bug.cgi?id=56518
            https://bugs.webkit.org/show_bug.cgi?id=56519
            https://bugs.webkit.org/show_bug.cgi?id=56521
            https://bugs.webkit.org/show_bug.cgi?id=56522
            https://bugs.webkit.org/show_bug.cgi?id=56523
            https://bugs.webkit.org/show_bug.cgi?id=56525

        * platform/mac-leopard/Skipped:
        * platform/mac-leopard/fast/blockflow/text-orientation-basic-expected.txt: Added.
        * platform/mac-leopard/fast/forms/file-input-disabled-expected.txt:
        * platform/mac-leopard/fast/forms/input-number-unacceptable-style-expected.txt: Added.
        * platform/mac-leopard/fast/ruby/base-shorter-than-text-expected.txt: Added.
        * platform/mac-leopard/fast/text/text-combine-image-test-expected.txt: Added.
        * platform/mac-leopard/media/controls-without-preload-expected.txt: Added.
        * platform/mac-leopard/platform/mac/accessibility: Added.
        * platform/mac-leopard/platform/mac/accessibility/aria-table-with-colspan-cells-expected.txt: Added.
        * platform/mac-leopard/platform/mac/accessibility/list-items-ignored-expected.txt: Added.

2011-03-16  Joseph Pecoraro  <joepeck@webkit.org>

        Follow-up patch to update GTK expected results.
        It looks like the GTK platform specific results for
        some viewport tests match regular results, and there
        were a few viewport tests that still needed expected
        results since other platforms skip them.

        Viewport no longer allows an auto value for "user-scalable"
        https://bugs.webkit.org/show_bug.cgi?id=55416

        * fast/viewport/viewport-58-expected.txt:
        * fast/viewport/viewport-6-expected.txt:
        * platform/gtk/fast/viewport/viewport-91-expected.txt: Removed.
        * platform/gtk/fast/viewport/viewport-92-expected.txt: Removed.
        * platform/gtk/fast/viewport/viewport-93-expected.txt: Removed.
        * platform/gtk/fast/viewport/viewport-94-expected.txt: Removed.
        * platform/gtk/fast/viewport/viewport-95-expected.txt: Removed.
        * platform/gtk/fast/viewport/viewport-96-expected.txt: Removed.

2011-03-16  Joseph Pecoraro  <joepeck@webkit.org>

        Follow-up patch landing updated expected results,
        which now include the userScalable value in output.

        Viewport no longer allows an auto value for "user-scalable"
        https://bugs.webkit.org/show_bug.cgi?id=55416

        * fast/viewport/viewport-1-expected.txt:
        * fast/viewport/viewport-10-expected.txt:
        * fast/viewport/viewport-100-expected.txt:
        * fast/viewport/viewport-101-expected.txt:
        * fast/viewport/viewport-102-expected.txt:
        * fast/viewport/viewport-103-expected.txt:
        * fast/viewport/viewport-104-expected.txt:
        * fast/viewport/viewport-105-expected.txt:
        * fast/viewport/viewport-106-expected.txt:
        * fast/viewport/viewport-107-expected.txt:
        * fast/viewport/viewport-108-expected.txt:
        * fast/viewport/viewport-109-expected.txt:
        * fast/viewport/viewport-11-expected.txt:
        * fast/viewport/viewport-110-expected.txt:
        * fast/viewport/viewport-111-expected.txt:
        * fast/viewport/viewport-112-expected.txt:
        * fast/viewport/viewport-113-expected.txt:
        * fast/viewport/viewport-114-expected.txt:
        * fast/viewport/viewport-115-expected.txt:
        * fast/viewport/viewport-116-expected.txt:
        * fast/viewport/viewport-117-expected.txt:
        * fast/viewport/viewport-118-expected.txt:
        * fast/viewport/viewport-119-expected.txt:
        * fast/viewport/viewport-12-expected.txt:
        * fast/viewport/viewport-120-expected.txt:
        * fast/viewport/viewport-121-expected.txt:
        * fast/viewport/viewport-122-expected.txt:
        * fast/viewport/viewport-123-expected.txt:
        * fast/viewport/viewport-124-expected.txt:
        * fast/viewport/viewport-125-expected.txt:
        * fast/viewport/viewport-129-expected.txt:
        * fast/viewport/viewport-13-expected.txt:
        * fast/viewport/viewport-14-expected.txt:
        * fast/viewport/viewport-15-expected.txt:
        * fast/viewport/viewport-16-expected.txt:
        * fast/viewport/viewport-17-expected.txt:
        * fast/viewport/viewport-18-expected.txt:
        * fast/viewport/viewport-19-expected.txt:
        * fast/viewport/viewport-2-expected.txt:
        * fast/viewport/viewport-20-expected.txt:
        * fast/viewport/viewport-21-expected.txt:
        * fast/viewport/viewport-22-expected.txt:
        * fast/viewport/viewport-23-expected.txt:
        * fast/viewport/viewport-24-expected.txt:
        * fast/viewport/viewport-25-expected.txt:
        * fast/viewport/viewport-26-expected.txt:
        * fast/viewport/viewport-27-expected.txt:
        * fast/viewport/viewport-28-expected.txt:
        * fast/viewport/viewport-29-expected.txt:
        * fast/viewport/viewport-3-expected.txt:
        * fast/viewport/viewport-30-expected.txt:
        * fast/viewport/viewport-31-expected.txt:
        * fast/viewport/viewport-32-expected.txt:
        * fast/viewport/viewport-33-expected.txt:
        * fast/viewport/viewport-34-expected.txt:
        * fast/viewport/viewport-35-expected.txt:
        * fast/viewport/viewport-36-expected.txt:
        * fast/viewport/viewport-37-expected.txt:
        * fast/viewport/viewport-38-expected.txt:
        * fast/viewport/viewport-39-expected.txt:
        * fast/viewport/viewport-4-expected.txt:
        * fast/viewport/viewport-40-expected.txt:
        * fast/viewport/viewport-41-expected.txt:
        * fast/viewport/viewport-42-expected.txt:
        * fast/viewport/viewport-43-expected.txt:
        * fast/viewport/viewport-44-expected.txt:
        * fast/viewport/viewport-46-expected.txt:
        * fast/viewport/viewport-47-expected.txt:
        * fast/viewport/viewport-48-expected.txt:
        * fast/viewport/viewport-49-expected.txt:
        * fast/viewport/viewport-5-expected.txt:
        * fast/viewport/viewport-50-expected.txt:
        * fast/viewport/viewport-51-expected.txt:
        * fast/viewport/viewport-52-expected.txt:
        * fast/viewport/viewport-53-expected.txt:
        * fast/viewport/viewport-54-expected.txt:
        * fast/viewport/viewport-55-expected.txt:
        * fast/viewport/viewport-56-expected.txt:
        * fast/viewport/viewport-57-expected.txt:
        * fast/viewport/viewport-59-expected.txt:
        * fast/viewport/viewport-60-expected.txt:
        * fast/viewport/viewport-61-expected.txt:
        * fast/viewport/viewport-62-expected.txt:
        * fast/viewport/viewport-63-expected.txt:
        * fast/viewport/viewport-64-expected.txt:
        * fast/viewport/viewport-66-expected.txt:
        * fast/viewport/viewport-67-expected.txt:
        * fast/viewport/viewport-68-expected.txt:
        * fast/viewport/viewport-69-expected.txt:
        * fast/viewport/viewport-7-expected.txt:
        * fast/viewport/viewport-70-expected.txt:
        * fast/viewport/viewport-71-expected.txt:
        * fast/viewport/viewport-72-expected.txt:
        * fast/viewport/viewport-73-expected.txt:
        * fast/viewport/viewport-74-expected.txt:
        * fast/viewport/viewport-75-expected.txt:
        * fast/viewport/viewport-76-expected.txt:
        * fast/viewport/viewport-77-expected.txt:
        * fast/viewport/viewport-78-expected.txt:
        * fast/viewport/viewport-79-expected.txt:
        * fast/viewport/viewport-8-expected.txt:
        * fast/viewport/viewport-80-expected.txt:
        * fast/viewport/viewport-81-expected.txt:
        * fast/viewport/viewport-83-expected.txt:
        * fast/viewport/viewport-85-expected.txt:
        * fast/viewport/viewport-86-expected.txt:
        * fast/viewport/viewport-88-expected.txt:
        * fast/viewport/viewport-9-expected.txt:
        * fast/viewport/viewport-90-expected.txt:
        * fast/viewport/viewport-91-expected.txt:
        * fast/viewport/viewport-92-expected.txt:
        * fast/viewport/viewport-93-expected.txt:
        * fast/viewport/viewport-94-expected.txt:
        * fast/viewport/viewport-95-expected.txt:
        * fast/viewport/viewport-96-expected.txt:
        * fast/viewport/viewport-warnings-1-expected.txt:
        * fast/viewport/viewport-warnings-2-expected.txt:
        * fast/viewport/viewport-warnings-3-expected.txt:
        * fast/viewport/viewport-warnings-4-expected.txt:
        * fast/viewport/viewport-warnings-5-expected.txt:
        * fast/viewport/viewport-warnings-6-expected.txt:

2011-03-16  David Levin  <levin@chromium.org>

        New baselines because the play button is now a pause button due to r81300.

        * platform/chromium-linux/media/controls-after-reload-expected.checksum:
        * platform/chromium-linux/media/controls-after-reload-expected.png:
        * platform/chromium-mac/media/controls-after-reload-expected.checksum:
        * platform/chromium-mac/media/controls-after-reload-expected.png:
        * platform/chromium-win-xp/media/controls-after-reload-expected.checksum:
        * platform/chromium-win-xp/media/controls-after-reload-expected.png:

2011-03-16  Adam Barth  <abarth@webkit.org>

        Update the Skipped lists to reflect the new location of these tests.

        * platform/gtk/Skipped:
        * platform/mac/Skipped:
        * platform/qt/Skipped:
        * platform/win/Skipped:

2011-03-16  David Levin  <levin@chromium.org>

        Update test expectations due to r81280 (media/controls-without-preload.html),
        and r81285 (media-document-audio-repaint-expected).

        * platform/chromium-linux/media/controls-without-preload-expected.checksum:
        * platform/chromium-linux/media/controls-without-preload-expected.png:
        * platform/chromium-linux/media/media-document-audio-repaint-expected.checksum:
        * platform/chromium-linux/media/media-document-audio-repaint-expected.png:
        * platform/chromium-mac/media/controls-without-preload-expected.checksum:
        * platform/chromium-mac/media/controls-without-preload-expected.png:
        * platform/chromium-mac/media/media-document-audio-repaint-expected.checksum:
        * platform/chromium-mac/media/media-document-audio-repaint-expected.png:
        * platform/chromium-win/media/media-document-audio-repaint-expected.checksum:
        * platform/chromium-win/media/media-document-audio-repaint-expected.png:

2011-03-16  Dimitri Glazkov  <dglazkov@chromium.org>

        Reviewed by David Levin.

        Improve robustness of controls-after-reload by seeking to the start explicitly at the end of the test.
        https://bugs.webkit.org/show_bug.cgi?id=56491

        * media/controls-after-reload.html: Added an extra step to seek to 0 before the end of the test.

2011-03-16  Anders Carlsson  <andersca@apple.com>

        Reviewed by Adam Roben.

        Update the Skipped list.

        * platform/mac-wk2/Skipped:

2011-03-16  Adam Klein  <adamk@chromium.org>

        Reviewed by Adam Barth.

        LayoutTests exercising filesystem: URIs should run over HTTP to avoid weirdness related to file: URLs
        https://bugs.webkit.org/show_bug.cgi?id=56328

        Moves the test for resolveLocalFileSystemURI into new "filesystem"
        directory under http/tests/, and adjusts file paths appropriately.

        * fast/filesystem/resolve-uri-expected.txt: Removed.
        * fast/filesystem/resolve-uri.html: Removed.
        * fast/filesystem/script-tests/resolve-uri.js: Removed.
        * http/tests/filesystem: Added.
        * http/tests/filesystem/resolve-uri-expected.txt: Copied from LayoutTests/fast/filesystem/resolve-uri-expected.txt.
        * http/tests/filesystem/resolve-uri.html: Copied from LayoutTests/fast/filesystem/resolve-uri.html.
        * http/tests/filesystem/resources: Added.
        * http/tests/filesystem/resources/fs-test-util.js: Copied from LayoutTests/fast/filesystem/resources/fs-test-util.js.
        * http/tests/filesystem/script-tests: Added.
        * http/tests/filesystem/script-tests/TEMPLATE.html: Copied from LayoutTests/fast/filesystem/script-tests/TEMPLATE.html.
        * http/tests/filesystem/script-tests/resolve-uri.js: Copied from LayoutTests/fast/filesystem/script-tests/resolve-uri.js.
        * platform/gtk/Skipped:
        * platform/mac/Skipped:
        * platform/qt/Skipped:
        * platform/win/Skipped:
        Added new http/tests/filesystem directory to skip lists since
        they don't suppor the filesystem API.

2011-03-16  Ryosuke Niwa  <rniwa@webkit.org>

        Reviewed by Tony Chang.

        Get rid of nearestMailBlockquote
        https://bugs.webkit.org/show_bug.cgi?id=56439

        Added a test to ensure WebKi doesn't crash when inserting newline in quoted contents,
        which is enclosed by a non-editable blockquote.

        * editing/execCommand/break-non-editable-blockquote-expected.txt: Added.
        * editing/execCommand/break-non-editable-blockquote.html: Added.

2011-03-16  Vangelis Kokkevis  <vangelis@chromium.org>

        Reviewed by Kenneth Russell.

        [chromium] Adding a new test for transformed layer with backface
        visibility set to hidden.
        https://bugs.webkit.org/show_bug.cgi?id=56237

        * platform/chromium/compositing/backface-visibility-transformed-expected.checksum: Added.
        * platform/chromium/compositing/backface-visibility-transformed-expected.png: Added.
        * platform/chromium/compositing/backface-visibility-transformed-expected.txt: Added.
        * platform/chromium/compositing/backface-visibility-transformed.html: Added.

2011-03-16  Brian Weinstein  <bweinstein@apple.com>

        Skip fast/js/array-sort-modifying-tostring.html on Windows because it is timing out
        on Windows Debug. It is being tracked by https://bugs.webkit.org/show_bug.cgi?id=56496.

        * platform/win/Skipped:

2011-03-16  Dimitri Glazkov  <dglazkov@chromium.org>

        Reviewed by Darin Adler.

        REGRESSION(r76147): Dragging slider thumb is impossible or results in drawing artifacts.
        https://bugs.webkit.org/show_bug.cgi?id=56469

        Note: the test should pass on all platforms, because it was designed to not use
        platform-specific metrics

        * fast/repaint/slider-thumb-float-expected.checksum: Added.
        * fast/repaint/slider-thumb-float-expected.png: Added.
        * fast/repaint/slider-thumb-float-expected.txt: Added.
        * fast/repaint/slider-thumb-float.html: Added.

2011-03-16  Dean Jackson  <dino@apple.com>

        https://bugs.webkit.org/show_bug.cgi?id=56488
        transitions/scale-transition-no-start.html is crashing.

        Adding to the Skipped list.

        * platform/chromium/test_expectations.txt:
        * platform/mac/Skipped:
        * platform/win/Skipped:

2011-03-16  Dimitri Glazkov  <dglazkov@chromium.org>

        Reviewed by Eric Carlson.

        Improve robustness of controls-without-preload by seeking to the start explicitly at the end of the test.
        https://bugs.webkit.org/show_bug.cgi?id=56489

        * media/controls-without-preload.html: Added an extra step to seek to 0 before the end of the test.

2011-03-16  David Levin  <levin@chromium.org>

        o Cleaned up test_expectation to remove items due to new baselines
          and remove some crashes that have been fixed.
        o text-combine: Added baseline following r81251.
        o Everything else: Add some not so timely baselines for r77485.


        * platform/chromium-linux/fast/dynamic/text-combine-expected.checksum: Added.
        * platform/chromium-linux/fast/dynamic/text-combine-expected.png: Added.
        * platform/chromium-linux/fast/dynamic/text-combine-expected.txt: Added.
        * platform/chromium-mac/fast/box-shadow/box-shadow-transformed-expected.checksum: Added.
        * platform/chromium-mac/fast/box-shadow/box-shadow-transformed-expected.png: Added.
        * platform/chromium-mac/fast/dynamic/text-combine-expected.checksum: Added.
        * platform/chromium-mac/fast/dynamic/text-combine-expected.png: Added.
        * platform/chromium-mac/svg/W3C-SVG-1.1/filters-blend-01-b-expected.checksum: Added.
        * platform/chromium-mac/svg/W3C-SVG-1.1/filters-blend-01-b-expected.png: Added.
        * platform/chromium-mac/svg/W3C-SVG-1.1/masking-path-04-b-expected.checksum: Added.
        * platform/chromium-mac/svg/W3C-SVG-1.1/masking-path-04-b-expected.png: Added.
        * platform/chromium-mac/svg/carto.net/scrollbar-expected.checksum: Added.
        * platform/chromium-mac/svg/carto.net/scrollbar-expected.png: Added.
        * platform/chromium-mac/svg/carto.net/selectionlist-expected.checksum: Added.
        * platform/chromium-mac/svg/carto.net/selectionlist-expected.png: Added.
        * platform/chromium-mac/svg/custom/image-small-width-height-expected.checksum: Added.
        * platform/chromium-mac/svg/custom/image-small-width-height-expected.png: Added.
        * platform/chromium-mac/svg/text/selection-doubleclick-expected.checksum: Added.
        * platform/chromium-mac/svg/text/selection-doubleclick-expected.png: Added.
        * platform/chromium-mac/svg/text/selection-tripleclick-expected.checksum: Added.
        * platform/chromium-mac/svg/text/selection-tripleclick-expected.png: Added.
        * platform/chromium-mac/svg/text/text-align-01-b-expected.checksum: Added.
        * platform/chromium-mac/svg/text/text-align-01-b-expected.png: Added.
        * platform/chromium-mac/svg/text/text-align-02-b-expected.checksum: Added.
        * platform/chromium-mac/svg/text/text-align-02-b-expected.png: Added.
        * platform/chromium-mac/svg/text/text-align-03-b-expected.checksum: Added.
        * platform/chromium-mac/svg/text/text-align-03-b-expected.png: Added.
        * platform/chromium-mac/svg/text/text-align-05-b-expected.checksum: Added.
        * platform/chromium-mac/svg/text/text-align-05-b-expected.png: Added.
        * platform/chromium-mac/svg/text/text-align-06-b-expected.checksum: Added.
        * platform/chromium-mac/svg/text/text-align-06-b-expected.png: Added.
        * platform/chromium-mac/svg/text/text-altglyph-01-b-expected.checksum: Added.
        * platform/chromium-mac/svg/text/text-altglyph-01-b-expected.png: Added.
        * platform/chromium-mac/svg/text/text-deco-01-b-expected.checksum: Added.
        * platform/chromium-mac/svg/text/text-deco-01-b-expected.png: Added.
        * platform/chromium-mac/svg/text/text-fonts-01-t-expected.checksum: Added.
        * platform/chromium-mac/svg/text/text-fonts-01-t-expected.png: Added.
        * platform/chromium-mac/svg/text/text-fonts-02-t-expected.checksum: Added.
        * platform/chromium-mac/svg/text/text-fonts-02-t-expected.png: Added.
        * platform/chromium-mac/svg/text/text-path-01-b-expected.checksum: Added.
        * platform/chromium-mac/svg/text/text-path-01-b-expected.png: Added.
        * platform/chromium-mac/svg/text/text-spacing-01-b-expected.checksum: Added.
        * platform/chromium-mac/svg/text/text-spacing-01-b-expected.png: Added.
        * platform/chromium-mac/svg/text/text-text-01-b-expected.checksum: Added.
        * platform/chromium-mac/svg/text/text-text-01-b-expected.png: Added.
        * platform/chromium-mac/svg/text/text-text-03-b-expected.checksum: Added.
        * platform/chromium-mac/svg/text/text-text-03-b-expected.png: Added.
        * platform/chromium-mac/svg/text/text-text-04-t-expected.checksum: Added.
        * platform/chromium-mac/svg/text/text-text-04-t-expected.png: Added.
        * platform/chromium-mac/svg/text/text-text-05-t-expected.checksum: Added.
        * platform/chromium-mac/svg/text/text-text-05-t-expected.png: Added.
        * platform/chromium-mac/svg/text/text-text-06-t-expected.checksum: Added.
        * platform/chromium-mac/svg/text/text-text-06-t-expected.png: Added.
        * platform/chromium-mac/svg/text/text-text-07-t-expected.checksum: Added.
        * platform/chromium-mac/svg/text/text-text-07-t-expected.png: Added.
        * platform/chromium-mac/svg/text/text-text-08-b-expected.checksum: Added.
        * platform/chromium-mac/svg/text/text-text-08-b-expected.png: Added.
        * platform/chromium-mac/svg/text/text-tref-01-b-expected.checksum: Added.
        * platform/chromium-mac/svg/text/text-tref-01-b-expected.png: Added.
        * platform/chromium-mac/svg/text/text-tselect-01-b-expected.checksum: Added.
        * platform/chromium-mac/svg/text/text-tselect-01-b-expected.png: Added.
        * platform/chromium-mac/svg/text/text-tselect-02-f-expected.checksum: Added.
        * platform/chromium-mac/svg/text/text-tselect-02-f-expected.png: Added.
        * platform/chromium-mac/svg/text/text-tspan-01-b-expected.checksum: Added.
        * platform/chromium-mac/svg/text/text-tspan-01-b-expected.png: Added.
        * platform/chromium-mac/svg/text/text-ws-01-t-expected.checksum: Added.
        * platform/chromium-mac/svg/text/text-ws-01-t-expected.png: Added.
        * platform/chromium-mac/svg/text/text-ws-02-t-expected.checksum: Added.
        * platform/chromium-mac/svg/text/text-ws-02-t-expected.png: Added.
        * platform/chromium-mac/svg/text/textPathBoundsBug-expected.checksum: Added.
        * platform/chromium-mac/svg/text/textPathBoundsBug-expected.png: Added.
        * platform/chromium-mac-leopard/fast/css/color-correction-on-box-shadow-expected.checksum:
        * platform/chromium-mac-leopard/fast/css/color-correction-on-box-shadow-expected.png:
        * platform/chromium-win/fast/dynamic/text-combine-expected.checksum: Added.
        * platform/chromium-win/fast/dynamic/text-combine-expected.png: Added.
        * platform/chromium-win/fast/dynamic/text-combine-expected.txt: Added.
        * platform/chromium/test_expectations.txt:

2011-03-16  Brian Weinstein  <bweinstein@apple.com>

        Skip plugins/refcount-leaks.html on Windows, because it is failing in release builds,
        and passing in debug. This is being tracked by https://bugs.webkit.org/show_bug.cgi?id=56478.

        * platform/win/Skipped:

2011-03-16  Ryosuke Niwa  <rniwa@webkit.org>

        Build fix for r81266. "expected" should appear after "mac", "unix", and "win" not before them.

        * editing/style/iframe-onload-crash-expected-mac.txt: Removed.
        * editing/style/iframe-onload-crash-expected-unix.txt: Removed.
        * editing/style/iframe-onload-crash-expected-win.txt: Removed.
        * editing/style/iframe-onload-crash-mac-expected.txt: Copied from LayoutTests/editing/style/iframe-onload-crash-expected-mac.txt.
        * editing/style/iframe-onload-crash-unix-expected.txt: Copied from LayoutTests/editing/style/iframe-onload-crash-expected-unix.txt.
        * editing/style/iframe-onload-crash-win-expected.txt: Copied from LayoutTests/editing/style/iframe-onload-crash-expected-win.txt.

2011-03-16  Pratik Solanki  <psolanki@apple.com>

        Reviewed by Alexey Proskuryakov.

        Fix typo in path name. The test was just checking for onProgress was called for the content
        and the error page served by Apache in this case sufficed for it to pass.

        * http/tests/xmlhttprequest/xmlhttprequest-no-content-length-onProgress.html:

2011-03-16  Pratik Solanki  <psolanki@apple.com>

        Reviewed by Alexey Proskuryakov.

        REGRESSION: Crash in adjustMIMETypeIfNecessary since r81001
        https://bugs.webkit.org/show_bug.cgi?id=56345

        Add test that verifies the we don't crash when an XHR response headers don't contain
        Content-Type.

        * http/tests/xmlhttprequest/resources/.htaccess:
        * http/tests/xmlhttprequest/resources/noContentType.asis: Added.
        * http/tests/xmlhttprequest/xmlhttprequest-no-content-type-expected.txt: Added.
        * http/tests/xmlhttprequest/xmlhttprequest-no-content-type.html: Added.

2011-03-16  Levi Weintraub  <leviw@chromium.org>

        Reviewed by Ryosuke Niwa.

        REGRESSION (r81165): Assert running editing/style/iframe-onload-crash.html with non-Mac editing behavior
        https://bugs.webkit.org/show_bug.cgi?id=56407

        Creating three versions of the iframe-onload-crash test to cover all editing behaviors.

        * editing/style/iframe-onload-crash-expected-mac.txt: Copied from LayoutTests/editing/style/iframe-onload-crash-expected.txt.
        * editing/style/iframe-onload-crash-expected-unix.txt: Copied from LayoutTests/editing/style/iframe-onload-crash-expected.txt.
        * editing/style/iframe-onload-crash-expected-win.txt: Copied from LayoutTests/editing/style/iframe-onload-crash-expected.txt.
        * editing/style/iframe-onload-crash-expected.txt: Removed.
        * editing/style/iframe-onload-crash-mac.html: Copied from LayoutTests/editing/style/iframe-onload-crash.html.
        * editing/style/iframe-onload-crash-unix.html: Copied from LayoutTests/editing/style/iframe-onload-crash.html.
        * editing/style/iframe-onload-crash-win.html: Copied from LayoutTests/editing/style/iframe-onload-crash.html.
        * editing/style/iframe-onload-crash.html: Removed.
        * platform/chromium/test_expectations.txt:
        * platform/gtk/Skipped:
        * platform/win/Skipped:

2011-03-16  Sam Weinig  <sam@webkit.org>

        Skip test fast/forms/input-autofilled.html in mac-wk2 since
        layoutTestController.setAutofilled is not yet supported.

        * platform/mac-wk2/Skipped:

2011-03-16  Brian Weinstein  <bweinstein@apple.com>

        More cleanup of expected results files for text combine tests from r81255.

        * platform/win/fast/dynamic/text-combine-expected.checksum: Added.
        * platform/win/fast/dynamic/text-combine-expected.png: Added.
        * platform/win/fast/text/international/text-combine-image-test-expected.txt:

        * platform/win/fast/international: Removed. This was the wrong directory.
        * platform/win/fast/international/text-combine-image-test-expected.txt: Removed. This was the wrong directory.

2011-03-16  Pavel Podivilov  <podivilov@chromium.org>

        Unreviewed, fix live-edit test broken by r81238.

        * inspector/debugger/live-edit.html:

2011-03-16  Brian Weinstein  <bweinstein@apple.com>

        Make the files added -expected.txt instead of -actual.txt so run-webkit-tests
        will actually find them.

        * platform/win/fast/dynamic/text-combine-actual.txt: Removed.
        * platform/win/fast/dynamic/text-combine-expected.txt: Copied from platform/win/fast/dynamic/text-combine-actual.txt.
        * platform/win/fast/international/text-combine-image-test-actual.txt: Removed.
        * platform/win/fast/international/text-combine-image-test-expected.txt: Copied from platform/win/fast/international/text-combine-image-test-actual.txt.

2011-03-16  Brian Weinstein  <bweinstein@apple.com>

        Add Windows-specific results for text combine tests.

        * platform/win/fast/dynamic/text-combine-actual.txt: Added.
        * platform/win/fast/international: Added.
        * platform/win/fast/international/text-combine-image-test-actual.txt: Added.

2011-03-16  Csaba Osztrogonác  <ossy@webkit.org>

        [Qt] Add failing tests to the Skipped list because of missing test fonts.

        * platform/qt/Skipped:

2011-03-16  Csaba Osztrogonác  <ossy@webkit.org>

        REGRESSION (r68976): Incorrect bidi rendering in SVG text
        https://bugs.webkit.org/show_bug.cgi?id=53980

        Add Qt specific expected files after r81168.

        * platform/qt/Skipped: Add new tests because of missing test fonts.
        * platform/qt/svg/W3C-SVG-1.1-SE/color-prop-05-t-expected.checksum: Added.
        * platform/qt/svg/W3C-SVG-1.1-SE/color-prop-05-t-expected.png: Added.
        * platform/qt/svg/W3C-SVG-1.1-SE/color-prop-05-t-expected.txt: Added.
        * platform/qt/svg/W3C-SVG-1.1-SE/coords-units-03-b-expected.checksum: Added.
        * platform/qt/svg/W3C-SVG-1.1-SE/coords-units-03-b-expected.png: Added.
        * platform/qt/svg/W3C-SVG-1.1-SE/coords-units-03-b-expected.txt: Added.
        * platform/qt/svg/W3C-SVG-1.1-SE/pservers-pattern-04-f-expected.checksum: Added.
        * platform/qt/svg/W3C-SVG-1.1-SE/pservers-pattern-04-f-expected.png: Added.
        * platform/qt/svg/W3C-SVG-1.1-SE/pservers-pattern-04-f-expected.txt: Added.
        * platform/qt/svg/W3C-SVG-1.1/text-align-08-b-expected.checksum: Added.
        * platform/qt/svg/W3C-SVG-1.1/text-align-08-b-expected.png: Added.
        * platform/qt/svg/W3C-SVG-1.1/text-align-08-b-expected.txt: Added.
        * platform/qt/svg/W3C-SVG-1.1/text-fonts-03-t-expected.checksum: Added.
        * platform/qt/svg/W3C-SVG-1.1/text-fonts-03-t-expected.png: Added.
        * platform/qt/svg/W3C-SVG-1.1/text-fonts-03-t-expected.txt: Added.
        * platform/qt/svg/W3C-SVG-1.1/text-intro-01-t-expected.checksum: Added.
        * platform/qt/svg/W3C-SVG-1.1/text-intro-01-t-expected.png: Added.
        * platform/qt/svg/W3C-SVG-1.1/text-intro-01-t-expected.txt: Added.
        * platform/qt/svg/W3C-SVG-1.1/text-intro-02-b-expected.checksum: Added.
        * platform/qt/svg/W3C-SVG-1.1/text-intro-02-b-expected.png: Added.
        * platform/qt/svg/W3C-SVG-1.1/text-intro-02-b-expected.txt: Added.
        * platform/qt/svg/W3C-SVG-1.1/text-intro-03-b-expected.checksum: Added.
        * platform/qt/svg/W3C-SVG-1.1/text-intro-03-b-expected.png: Added.
        * platform/qt/svg/W3C-SVG-1.1/text-intro-03-b-expected.txt: Added.
        * platform/qt/svg/W3C-SVG-1.1/text-intro-04-t-expected.checksum: Added.
        * platform/qt/svg/W3C-SVG-1.1/text-intro-04-t-expected.png: Added.
        * platform/qt/svg/W3C-SVG-1.1/text-intro-04-t-expected.txt: Added.

2011-03-16  Dan Bernstein  <mitz@apple.com>

        Reviewed by Simon Fraser.

        text-combine text retains compressed font after adding characters to it
        https://bugs.webkit.org/show_bug.cgi?id=56448

        * fast/dynamic/text-combine.html: Added.
        * platform/mac/fast/dynamic/text-combine-expected.checksum: Added.
        * platform/mac/fast/dynamic/text-combine-expected.png: Added.
        * platform/mac/fast/dynamic/text-combine-expected.txt: Added.

2011-03-16  Adam Roben  <aroben@apple.com>

        Disable jquery/effects.html

        It often times out due to its sheer size. The failure is tracked by
        <http://webkit.org/b/56080>.

        * jquery/effects.html-disabled: Renamed from LayoutTests/jquery/effects.html.

        * platform/gtk/Skipped:
        * platform/win-xp/Skipped:
        Unskipped the test since we're now disabling it via other means.

2011-03-16  Philippe Normand  <pnormand@igalia.com>

        Unreviewed, skipping one more svg test failing on 32-bits release,
        likely due to bug 39022.

        * platform/gtk/Skipped:

2011-03-16  Csaba Osztrogonác  <ossy@webkit.org>

        [Qt] fast/text/soft-hyphen-4.html introduced in r80984
        and fails because hyphenation isn't implemented yet.

        * platform/qt/Skipped: Add fast/text/soft-hyphen-4.html.

2011-03-16  Philippe Normand  <pnormand@igalia.com>

        Unreviewed, skip svg/W3C-I18N tests failing on 32-bits Debug only.

        * platform/gtk/Skipped:

2011-03-16  Philippe Normand  <pnormand@igalia.com>

        Unreviewed, skip editing/style/iframe-onload-crash.html on GTK.

        * platform/gtk/Skipped:

2011-03-16  Csaba Osztrogonác  <ossy@webkit.org>

        Update Qt specific expected file after r81049.

        * platform/qt/fast/table/overflowHidden-expected.txt: Updated.

2011-03-16  Pavel Podivilov  <podivilov@chromium.org>

        Unreviewed, fix test broken by r81238.

        * inspector/debugger/live-edit.html:
        * platform/chromium/test_expectations.txt:

2011-03-14  Pavel Podivilov  <podivilov@chromium.org>

        Reviewed by Yury Semikhatsky.

        Web Inspector: refactor event listener breakpoints.
        https://bugs.webkit.org/show_bug.cgi?id=56305

        * inspector/debugger/event-listener-breakpoints-expected.txt: Added.
        * inspector/debugger/event-listener-breakpoints.html: Added.
        * platform/gtk/Skipped:
        * platform/mac/Skipped:
        * platform/qt/Skipped:
        * platform/win/Skipped:

2011-03-16  Alexander Pavlov  <apavlov@chromium.org>

        [Chromium] Unreviewed, update expectations.
        Fix Linux Debug expectation clash for transitions/interrupted-accelerated-transition.html.
        Let svg/text/font-size-below-point-five.svg fail on Mac Release.

        * platform/chromium/test_expectations.txt:

2011-03-16  Alexander Pavlov  <apavlov@chromium.org>

        [Chromium] Unreviewed, remove duplicate expectations.

        * platform/chromium/test_expectations.txt:

2011-03-16  Csaba Osztrogonác  <ossy@webkit.org>

        [Qt]Web Inspector: inspector/elements/mutate-unknown-node.html fails
        https://bugs.webkit.org/show_bug.cgi?id=56457

        * platform/qt/Skipped: Add inspector/elements/mutate-unknown-node.html.

2011-03-16  Csaba Osztrogonác  <ossy@webkit.org>

       [Qt] Typo fix after r81226.

        * platform/qt/Skipped: Remove unnecessary "#".

2011-03-16  Alexander Pavlov  <apavlov@chromium.org>

        [Chromium] Unreviewed, suppress Win builder failures from r81222.
        Also, one tentatively stale suppression is removed.

        * platform/chromium/test_expectations.txt:

2011-03-16  Dean Jackson  <dino@apple.com>

        https://bugs.webkit.org/show_bug.cgi?id=56242
        Flaky Test: transitions/interrupted-accelerated-transition.html

        Skip this while https://bugs.webkit.org/show_bug.cgi?id=54151
        (Animation API) is in progress.

        * platform/chromium/test_expectations.txt:
        * platform/mac/Skipped:
        * platform/win/Skipped:

2011-03-16  Luiz Agostini  <luiz.agostini@openbossa.org>

        Reviewed by Kenneth Rohde Christiansen.

        fast/loader/stateobjects/replacestate-in-iframe.html caused infinite loop.
        https://bugs.webkit.org/show_bug.cgi?id=36467

        Removing the test from skipped list since the problem seems to be solved.

        * platform/qt/Skipped:

2011-03-15  Philippe Normand  <pnormand@igalia.com>

        Reviewed by Eric Carlson.

        [GTK] media/audio-repaint.html times out again
        https://bugs.webkit.org/show_bug.cgi?id=56366

        Rewrote the test to avoid a timer and attempt the seek on media
        elements only after we are sure playback started to avoid an
        INVALID_STATE_ERR exception.

        * media/audio-repaint.html:

2011-03-15  Philippe Normand  <pnormand@igalia.com>

        Reviewed by Eric Carlson.

        [GStreamer] http/tests/media/video-play-stall-before-meta-data.html fails
        https://bugs.webkit.org/show_bug.cgi?id=56370

        * platform/gtk/Skipped: Unskip fixed test.

2011-03-16  Yury Semikhatsky  <yurys@chromium.org>

        Reviewed by Pavel Feldman.

        [Qt] Some inspector test fail intermittently
        https://bugs.webkit.org/show_bug.cgi?id=42090

        Unskip a bunch of non-http inspector tests on Qt. All these tests pass locally.

        * platform/qt/Skipped:

2011-03-16  Csaba Osztrogonác  <ossy@webkit.org>

        [Qt] Add failing tests to the Skipped list.

        * platform/qt/Skipped:
         - Add fast/forms/input-autofilled.html because of missing layoutTestController.setAutofilled().
         - Add fast/workers/shared-worker-frame-lifecycle.html because it is still flakey. (bug 34281)

2011-03-15  Adam Roben  <aroben@apple.com>

        Fix bug number typo

        * platform/win/Skipped:

2011-03-15  Adam Roben  <aroben@apple.com>

        Skip an asserting test on Windows

        <http://webkit.org/b/56047> tracks the failure.

        * platform/win/Skipped: Added editing/style/iframe-onload-crash.html.

2011-03-15  David Levin  <levin@chromium.org>

        Fix few more baselines (which the tool didn't handle well before due to them
        being in the mac-leopard directory).
          svg/w3c due to r81168
          svg/custom/mouse due to r81053

        * platform/chromium-mac-leopard/svg/W3C-SVG-1.1-SE/pservers-grad-17-b-expected.checksum:
        * platform/chromium-mac-leopard/svg/W3C-SVG-1.1-SE/pservers-grad-17-b-expected.png:
        * platform/chromium-mac-leopard/svg/W3C-SVG-1.1-SE/pservers-grad-20-b-expected.checksum: Removed.
        * platform/chromium-mac-leopard/svg/W3C-SVG-1.1-SE/pservers-grad-20-b-expected.png: Removed.
        * platform/chromium-mac-leopard/svg/custom/mouse-move-on-svg-container-expected.checksum: Removed.
        * platform/chromium-mac-leopard/svg/custom/mouse-move-on-svg-container-expected.png: Removed.
        * platform/chromium-mac-leopard/svg/custom/mouse-move-on-svg-container-standalone-expected.checksum: Removed.
        * platform/chromium-mac-leopard/svg/custom/mouse-move-on-svg-container-standalone-expected.png: Removed.
        * platform/chromium-mac-leopard/svg/custom/mouse-move-on-svg-root-expected.checksum: Removed.
        * platform/chromium-mac-leopard/svg/custom/mouse-move-on-svg-root-expected.png: Removed.
        * platform/chromium-mac-leopard/svg/custom/mouse-move-on-svg-root-standalone-expected.checksum: Removed.
        * platform/chromium-mac-leopard/svg/custom/mouse-move-on-svg-root-standalone-expected.png: Removed.

2011-03-15  Dimitri Glazkov  <dglazkov@chromium.org>

        Reviewed by Kent Tamura.

        REGRESSION(r76147): A slider thumb that is styled cannot be programmatically moved
        https://bugs.webkit.org/show_bug.cgi?id=56059

        Note: the test should pass on all platforms, because it was designed to not use
        platform-specific metrics.

        * fast/dom/HTMLInputElement/input-slider-update-styled.html: Added.
        * fast/dom/HTMLInputElement/input-slider-update-styled-expected.checksum: Added.
        * fast/dom/HTMLInputElement/input-slider-update-styled-expected.png: Added.
        * fast/dom/HTMLInputElement/input-slider-update-styled-expected.txt: Added.

2011-03-15  John Bauman  <jbauman@chromium.org>

        Reviewed by Kenneth Russell.

        Non-premultiplied-alpha canvas attribute is ignore for toDataURL, drawImage, texImage2D
        https://bugs.webkit.org/show_bug.cgi?id=56238

        Add new test from webgl conformance test.

        * fast/canvas/webgl/premultiplyalpha-test-expected.txt: Added.
        * fast/canvas/webgl/premultiplyalpha-test.html: Added.
        * fast/canvas/webgl/resources/webgl-test-utils.js: Update to fix fillTexture
        (WebGLTestUtils):
        * platform/chromium/test_expectations.txt:
        * platform/mac-wk2/Skipped:

2011-03-15  David Levin  <levin@chromium.org>

        A little more clean-up due to r81168. Also, some adjustment of the results for Linux due to r81162.

        * platform/chromium-mac-leopard/svg/text/small-fonts-2-expected.txt:
        * platform/chromium-mac/svg/W3C-SVG-1.1-SE/coords-dom-01-f-expected.checksum: Added.
        * platform/chromium-mac/svg/W3C-SVG-1.1-SE/coords-dom-01-f-expected.png: Added.
        * platform/chromium-mac/svg/W3C-SVG-1.1-SE/coords-dom-02-f-expected.checksum: Added.
        * platform/chromium-mac/svg/W3C-SVG-1.1-SE/coords-dom-02-f-expected.png: Added.
        * platform/chromium-mac/svg/W3C-SVG-1.1-SE/coords-dom-03-f-expected.checksum: Added.
        * platform/chromium-mac/svg/W3C-SVG-1.1-SE/coords-dom-03-f-expected.png: Added.
        * platform/chromium-mac/svg/W3C-SVG-1.1-SE/coords-dom-04-f-expected.checksum: Added.
        * platform/chromium-mac/svg/W3C-SVG-1.1-SE/coords-dom-04-f-expected.png: Added.
        * platform/chromium-mac/svg/W3C-SVG-1.1-SE/coords-units-03-b-expected.checksum: Added.
        * platform/chromium-mac/svg/W3C-SVG-1.1-SE/coords-units-03-b-expected.png: Added.
        * platform/chromium-mac/svg/W3C-SVG-1.1-SE/paths-dom-02-f-expected.checksum: Added.
        * platform/chromium-mac/svg/W3C-SVG-1.1-SE/paths-dom-02-f-expected.png: Added.
        * platform/chromium-mac/svg/W3C-SVG-1.1-SE/pservers-grad-20-b-expected.checksum:
        * platform/chromium-mac/svg/W3C-SVG-1.1-SE/pservers-grad-20-b-expected.png:
        * platform/chromium-mac/svg/W3C-SVG-1.1-SE/pservers-pattern-04-f-expected.checksum: Added.
        * platform/chromium-mac/svg/W3C-SVG-1.1-SE/pservers-pattern-04-f-expected.png: Added.
        * platform/chromium-mac/svg/W3C-SVG-1.1-SE/types-dom-01-b-expected.checksum: Added.
        * platform/chromium-mac/svg/W3C-SVG-1.1-SE/types-dom-01-b-expected.png: Added.
        * platform/chromium-mac/svg/W3C-SVG-1.1-SE/types-dom-03-b-expected.checksum: Added.
        * platform/chromium-mac/svg/W3C-SVG-1.1-SE/types-dom-03-b-expected.png: Added.
        * platform/chromium-mac/svg/W3C-SVG-1.1-SE/types-dom-04-b-expected.checksum: Added.
        * platform/chromium-mac/svg/W3C-SVG-1.1-SE/types-dom-04-b-expected.png: Added.
        * platform/chromium-mac/svg/W3C-SVG-1.1-SE/types-dom-06-f-expected.checksum: Added.
        * platform/chromium-mac/svg/W3C-SVG-1.1-SE/types-dom-06-f-expected.png: Added.
        * platform/chromium-mac/svg/W3C-SVG-1.1-SE/types-dom-07-f-expected.checksum: Added.
        * platform/chromium-mac/svg/W3C-SVG-1.1-SE/types-dom-07-f-expected.png: Added.
        * platform/chromium-mac/svg/W3C-SVG-1.1/filters-light-04-f-expected.checksum: Added.
        * platform/chromium-mac/svg/W3C-SVG-1.1/filters-light-04-f-expected.png: Added.
        * platform/chromium-mac/svg/W3C-SVG-1.1/filters-turb-02-f-expected.checksum: Added.
        * platform/chromium-mac/svg/W3C-SVG-1.1/filters-turb-02-f-expected.png: Added.
        * platform/chromium-win/svg/carto.net/selectionlist-expected.checksum:
        * platform/chromium-win/svg/carto.net/selectionlist-expected.png:
        * platform/chromium-win/svg/text/text-text-07-t-expected.checksum:
        * platform/chromium-win/svg/text/text-text-07-t-expected.png:
        * platform/chromium/test_expectations.txt:

2011-03-15  Csaba Osztrogonác  <ossy@webkit.org>

        Update Qt specific expected results after r80846.

        * platform/qt/fast/dom/Window/window-properties-expected.txt:
        * platform/qt/fast/dom/Window/window-property-descriptors-expected.txt:
        * platform/qt/fast/dom/prototype-inheritance-expected.txt:
        * platform/qt/fast/js/global-constructors-expected.txt:

2011-03-15  David Levin  <levin@chromium.org>

        Update leopard specific baselines for tests (editing, css) changes due to r80755.
        Fix the expectation for input-autofilled.

        * platform/chromium-mac-leopard/css2.1/t1008-c44-ln-box-02-d-ag-expected.checksum:
        * platform/chromium-mac-leopard/css2.1/t1008-c44-ln-box-02-d-ag-expected.png:
        * platform/chromium-mac-leopard/css2.1/t100801-c544-valgn-03-d-agi-expected.checksum:
        * platform/chromium-mac-leopard/css2.1/t100801-c544-valgn-03-d-agi-expected.png:
        * platform/chromium-mac-leopard/editing/selection/caret-ltr-2-expected.checksum: Removed.
        * platform/chromium-mac-leopard/editing/selection/caret-ltr-2-expected.png: Removed.
        * platform/chromium-mac-leopard/editing/selection/caret-ltr-2-left-expected.checksum: Removed.
        * platform/chromium-mac-leopard/editing/selection/caret-ltr-2-left-expected.png: Removed.
        * platform/chromium-mac-leopard/editing/selection/caret-ltr-expected.checksum: Removed.
        * platform/chromium-mac-leopard/editing/selection/caret-ltr-expected.png: Removed.
        * platform/chromium-mac-leopard/editing/selection/caret-ltr-right-expected.checksum: Removed.
        * platform/chromium-mac-leopard/editing/selection/caret-ltr-right-expected.png: Removed.
        * platform/chromium-mac-leopard/fast/block/margin-collapse/103-expected.checksum: Removed.
        * platform/chromium-mac-leopard/fast/block/margin-collapse/103-expected.png: Removed.
        * platform/chromium-mac-leopard/tables/mozilla/bugs/bug1318-expected.checksum: Removed.
        * platform/chromium-mac-leopard/tables/mozilla/bugs/bug1318-expected.png: Removed.
        * platform/chromium-mac-leopard/tables/mozilla/bugs/bug4527-expected.checksum: Removed.
        * platform/chromium-mac-leopard/tables/mozilla/bugs/bug4527-expected.png: Removed.
        * platform/chromium/fast/forms/input-autofilled-expected.txt: Renamed from LayoutTests/platform/chromium-win/fast/forms/input-autofilled-expected.txt.
        * platform/chromium/test_expectations.txt:

2011-03-15  James Simonsen  <simonjam@chromium.org>

        Reviewed by Tony Gentilcore.

        Need different behavior for ensuring execution order of dynamically loaded scripts
        https://bugs.webkit.org/show_bug.cgi?id=50115

        Dynamically added scripts with async=false will load in parallel, but execute in order.
        See: http://www.whatwg.org/specs/web-apps/current-work/multipage/scripting-1.html#force-async

        * fast/dom/HTMLScriptElement/script-async-attr-expected.txt: Added test cases for forceAsync.
        * fast/dom/HTMLScriptElement/script-async-attr.html: Ditto.
        * http/tests/misc/script-async-load-execute-in-order-expected.txt: Added.
        * http/tests/misc/script-async-load-execute-in-order.html: Added.

2011-03-15  Martin Robinson  <mrobinson@igalia.com>

        Adding new test results for GTK+.

        * platform/gtk: All files omitted to prevent overflowing the BuildBot console.

2011-03-15  Martin Robinson  <mrobinson@igalia.com>

        Rebaseline some GTK+ tests after r81035 and r81049.

        * platform/gtk/fast/multicol/span/clone-anonymous-block-non-inline-child-crash-expected.txt:
        * platform/gtk/fast/table/overflowHidden-expected.txt:

2011-03-15  Adam Roben  <aroben@apple.com>

        Update Windows XP results after r81168

        They differ from Windows 7 due to different fonts being used.

        * platform/win-xp/svg/W3C-I18N/g-dirLTR-ubNone-expected.txt: Added.
        * platform/win-xp/svg/W3C-I18N/g-dirLTR-ubOverride-expected.txt: Added.
        * platform/win-xp/svg/W3C-I18N/g-dirRTL-ubNone-expected.txt: Added.
        * platform/win-xp/svg/W3C-I18N/g-dirRTL-ubOverride-expected.txt: Added.
        * platform/win-xp/svg/W3C-I18N/text-dirLTR-ubNone-expected.txt: Added.
        * platform/win-xp/svg/W3C-I18N/text-dirLTR-ubOverride-expected.txt: Added.
        * platform/win-xp/svg/W3C-I18N/text-dirRTL-ubNone-expected.txt: Added.
        * platform/win-xp/svg/W3C-I18N/text-dirRTL-ubOverride-expected.txt: Added.
        * platform/win-xp/svg/W3C-I18N/tspan-dirLTR-ubEmbed-in-rtl-context-expected.txt: Added.
        * platform/win-xp/svg/W3C-I18N/tspan-dirLTR-ubNone-in-rtl-context-expected.txt: Added.
        * platform/win-xp/svg/W3C-I18N/tspan-dirLTR-ubOverride-in-default-context-expected.txt: Added.
        * platform/win-xp/svg/W3C-I18N/tspan-dirLTR-ubOverride-in-ltr-context-expected.txt: Added.
        * platform/win-xp/svg/W3C-I18N/tspan-dirLTR-ubOverride-in-rtl-context-expected.txt: Added.
        * platform/win-xp/svg/W3C-I18N/tspan-dirNone-ubOverride-in-default-context-expected.txt: Added.
        * platform/win-xp/svg/W3C-I18N/tspan-dirNone-ubOverride-in-ltr-context-expected.txt: Added.
        * platform/win-xp/svg/W3C-I18N/tspan-dirRTL-ubOverride-in-rtl-context-expected.txt: Added.
        * platform/win-xp/svg/W3C-I18N/tspan-direction-rtl-expected.txt: Added.
        * platform/win-xp/svg/W3C-SVG-1.1-SE/text-intro-05-t-expected.txt: Added.
        * platform/win-xp/svg/text/bidi-text-query-expected.txt: Added.
        * platform/win-xp/svg/text/bidi-tspans-expected.txt: Added.

2011-03-15  Adam Roben  <aroben@apple.com>

        Update Windows results again after r81168

        I accidentally copied the Mac results into platform/win for these two tests when I tried to
        update results in r81179.

        * platform/win/svg/W3C-SVG-1.1-SE/types-dom-05-b-expected.txt:
        * platform/win/svg/text/small-fonts-2-expected.txt:

2011-03-15  Ryosuke Niwa  <rniwa@webkit.org>

        Reviewed by Tony Chang.

        Crash in ReplaceSelectionCommand::doApply when inserting a node under a document node
        https://bugs.webkit.org/show_bug.cgi?id=56372

        Added a test to ensure WebKit does not crash when appending a node to a document
        that has only two nested iframes.

        * editing/execCommand/append-node-under-document-expected.txt: Added.
        * editing/execCommand/append-node-under-document.html: Added.

2011-03-15  David Levin  <levin@chromium.org>

        Compensate for r81168 (svg) and r81155 (fast/forms/input-autofilled.html) and r81049 (fast/table).
        Also, remove the linux debug crashes from test expectations due to r81162 which should clear these up.
        Add update baselines for transitions/default-timing-function due to r80806.

        * platform/chromium-linux/svg/W3C-I18N/g-dirLTR-ubNone-expected.checksum: Added.
        * platform/chromium-linux/svg/W3C-I18N/g-dirLTR-ubNone-expected.png: Added.
        * platform/chromium-linux/svg/W3C-I18N/g-dirLTR-ubOverride-expected.checksum: Added.
        * platform/chromium-linux/svg/W3C-I18N/g-dirLTR-ubOverride-expected.png: Added.
        * platform/chromium-linux/svg/W3C-I18N/g-dirRTL-ubNone-expected.checksum: Added.
        * platform/chromium-linux/svg/W3C-I18N/g-dirRTL-ubNone-expected.png: Added.
        * platform/chromium-linux/svg/W3C-I18N/g-dirRTL-ubOverride-expected.checksum: Added.
        * platform/chromium-linux/svg/W3C-I18N/g-dirRTL-ubOverride-expected.png: Added.
        * platform/chromium-linux/svg/W3C-I18N/text-anchor-dirLTR-anchorEnd-expected.checksum: Added.
        * platform/chromium-linux/svg/W3C-I18N/text-anchor-dirLTR-anchorEnd-expected.png: Added.
        * platform/chromium-linux/svg/W3C-I18N/text-anchor-dirLTR-anchorMiddle-expected.checksum: Added.
        * platform/chromium-linux/svg/W3C-I18N/text-anchor-dirLTR-anchorMiddle-expected.png: Added.
        * platform/chromium-linux/svg/W3C-I18N/text-anchor-dirLTR-anchorStart-expected.checksum: Added.
        * platform/chromium-linux/svg/W3C-I18N/text-anchor-dirLTR-anchorStart-expected.png: Added.
        * platform/chromium-linux/svg/W3C-I18N/text-anchor-dirNone-anchorEnd-expected.checksum: Added.
        * platform/chromium-linux/svg/W3C-I18N/text-anchor-dirNone-anchorEnd-expected.png: Added.
        * platform/chromium-linux/svg/W3C-I18N/text-anchor-dirNone-anchorMiddle-expected.checksum: Added.
        * platform/chromium-linux/svg/W3C-I18N/text-anchor-dirNone-anchorMiddle-expected.png: Added.
        * platform/chromium-linux/svg/W3C-I18N/text-anchor-dirNone-anchorStart-expected.checksum: Added.
        * platform/chromium-linux/svg/W3C-I18N/text-anchor-dirNone-anchorStart-expected.png: Added.
        * platform/chromium-linux/svg/W3C-I18N/text-anchor-dirRTL-anchorEnd-expected.checksum: Added.
        * platform/chromium-linux/svg/W3C-I18N/text-anchor-dirRTL-anchorEnd-expected.png: Added.
        * platform/chromium-linux/svg/W3C-I18N/text-anchor-dirRTL-anchorMiddle-expected.checksum: Added.
        * platform/chromium-linux/svg/W3C-I18N/text-anchor-dirRTL-anchorMiddle-expected.png: Added.
        * platform/chromium-linux/svg/W3C-I18N/text-anchor-dirRTL-anchorStart-expected.checksum: Added.
        * platform/chromium-linux/svg/W3C-I18N/text-anchor-dirRTL-anchorStart-expected.png: Added.
        * platform/chromium-linux/svg/W3C-I18N/text-anchor-inherited-dirLTR-anchorEnd-expected.checksum: Added.
        * platform/chromium-linux/svg/W3C-I18N/text-anchor-inherited-dirLTR-anchorEnd-expected.png: Added.
        * platform/chromium-linux/svg/W3C-I18N/text-anchor-inherited-dirLTR-anchorMiddle-expected.checksum: Added.
        * platform/chromium-linux/svg/W3C-I18N/text-anchor-inherited-dirLTR-anchorMiddle-expected.png: Added.
        * platform/chromium-linux/svg/W3C-I18N/text-anchor-inherited-dirLTR-anchorStart-expected.checksum: Added.
        * platform/chromium-linux/svg/W3C-I18N/text-anchor-inherited-dirLTR-anchorStart-expected.png: Added.
        * platform/chromium-linux/svg/W3C-I18N/text-anchor-inherited-dirRTL-anchorEnd-expected.checksum: Added.
        * platform/chromium-linux/svg/W3C-I18N/text-anchor-inherited-dirRTL-anchorEnd-expected.png: Added.
        * platform/chromium-linux/svg/W3C-I18N/text-anchor-inherited-dirRTL-anchorMiddle-expected.checksum: Added.
        * platform/chromium-linux/svg/W3C-I18N/text-anchor-inherited-dirRTL-anchorMiddle-expected.png: Added.
        * platform/chromium-linux/svg/W3C-I18N/text-anchor-inherited-dirRTL-anchorStart-expected.checksum: Added.
        * platform/chromium-linux/svg/W3C-I18N/text-anchor-inherited-dirRTL-anchorStart-expected.png: Added.
        * platform/chromium-linux/svg/W3C-I18N/text-anchor-no-markup-expected.checksum: Added.
        * platform/chromium-linux/svg/W3C-I18N/text-anchor-no-markup-expected.png: Added.
        * platform/chromium-linux/svg/W3C-I18N/text-dirLTR-ubNone-expected.checksum: Added.
        * platform/chromium-linux/svg/W3C-I18N/text-dirLTR-ubNone-expected.png: Added.
        * platform/chromium-linux/svg/W3C-I18N/text-dirLTR-ubOverride-expected.checksum: Added.
        * platform/chromium-linux/svg/W3C-I18N/text-dirLTR-ubOverride-expected.png: Added.
        * platform/chromium-linux/svg/W3C-I18N/text-dirLTR-ubOverride-expected.txt: Added.
        * platform/chromium-linux/svg/W3C-I18N/text-dirRTL-ubNone-expected.checksum: Added.
        * platform/chromium-linux/svg/W3C-I18N/text-dirRTL-ubNone-expected.png: Added.
        * platform/chromium-linux/svg/W3C-I18N/text-dirRTL-ubOverride-expected.checksum: Added.
        * platform/chromium-linux/svg/W3C-I18N/text-dirRTL-ubOverride-expected.png: Added.
        * platform/chromium-linux/svg/W3C-I18N/tspan-dirLTR-ubEmbed-in-rtl-context-expected.checksum: Added.
        * platform/chromium-linux/svg/W3C-I18N/tspan-dirLTR-ubEmbed-in-rtl-context-expected.png: Added.
        * platform/chromium-linux/svg/W3C-I18N/tspan-dirLTR-ubNone-in-rtl-context-expected.checksum: Added.
        * platform/chromium-linux/svg/W3C-I18N/tspan-dirLTR-ubNone-in-rtl-context-expected.png: Added.
        * platform/chromium-linux/svg/W3C-I18N/tspan-dirLTR-ubOverride-in-default-context-expected.checksum: Added.
        * platform/chromium-linux/svg/W3C-I18N/tspan-dirLTR-ubOverride-in-default-context-expected.png: Added.
        * platform/chromium-linux/svg/W3C-I18N/tspan-dirLTR-ubOverride-in-default-context-expected.txt: Added.
        * platform/chromium-linux/svg/W3C-I18N/tspan-dirLTR-ubOverride-in-ltr-context-expected.checksum: Added.
        * platform/chromium-linux/svg/W3C-I18N/tspan-dirLTR-ubOverride-in-ltr-context-expected.png: Added.
        * platform/chromium-linux/svg/W3C-I18N/tspan-dirLTR-ubOverride-in-ltr-context-expected.txt: Added.
        * platform/chromium-linux/svg/W3C-I18N/tspan-dirLTR-ubOverride-in-rtl-context-expected.checksum: Added.
        * platform/chromium-linux/svg/W3C-I18N/tspan-dirLTR-ubOverride-in-rtl-context-expected.png: Added.
        * platform/chromium-linux/svg/W3C-I18N/tspan-dirNone-ubOverride-in-default-context-expected.checksum: Added.
        * platform/chromium-linux/svg/W3C-I18N/tspan-dirNone-ubOverride-in-default-context-expected.png: Added.
        * platform/chromium-linux/svg/W3C-I18N/tspan-dirNone-ubOverride-in-default-context-expected.txt: Added.
        * platform/chromium-linux/svg/W3C-I18N/tspan-dirNone-ubOverride-in-ltr-context-expected.checksum: Added.
        * platform/chromium-linux/svg/W3C-I18N/tspan-dirNone-ubOverride-in-ltr-context-expected.png: Added.
        * platform/chromium-linux/svg/W3C-I18N/tspan-dirNone-ubOverride-in-ltr-context-expected.txt: Added.
        * platform/chromium-linux/svg/W3C-I18N/tspan-dirNone-ubOverride-in-rtl-context-expected.checksum: Added.
        * platform/chromium-linux/svg/W3C-I18N/tspan-dirNone-ubOverride-in-rtl-context-expected.png: Added.
        * platform/chromium-linux/svg/W3C-I18N/tspan-dirRTL-ubEmbed-in-default-context-expected.checksum: Added.
        * platform/chromium-linux/svg/W3C-I18N/tspan-dirRTL-ubEmbed-in-default-context-expected.png: Added.
        * platform/chromium-linux/svg/W3C-I18N/tspan-dirRTL-ubEmbed-in-ltr-context-expected.checksum: Added.
        * platform/chromium-linux/svg/W3C-I18N/tspan-dirRTL-ubEmbed-in-ltr-context-expected.png: Added.
        * platform/chromium-linux/svg/W3C-I18N/tspan-dirRTL-ubNone-in-default-context-expected.checksum: Added.
        * platform/chromium-linux/svg/W3C-I18N/tspan-dirRTL-ubNone-in-default-context-expected.png: Added.
        * platform/chromium-linux/svg/W3C-I18N/tspan-dirRTL-ubNone-in-ltr-context-expected.checksum: Added.
        * platform/chromium-linux/svg/W3C-I18N/tspan-dirRTL-ubNone-in-ltr-context-expected.png: Added.
        * platform/chromium-linux/svg/W3C-I18N/tspan-dirRTL-ubOverride-in-default-context-expected.checksum: Added.
        * platform/chromium-linux/svg/W3C-I18N/tspan-dirRTL-ubOverride-in-default-context-expected.png: Added.
        * platform/chromium-linux/svg/W3C-I18N/tspan-dirRTL-ubOverride-in-ltr-context-expected.checksum: Added.
        * platform/chromium-linux/svg/W3C-I18N/tspan-dirRTL-ubOverride-in-ltr-context-expected.png: Added.
        * platform/chromium-linux/svg/W3C-I18N/tspan-dirRTL-ubOverride-in-rtl-context-expected.checksum: Added.
        * platform/chromium-linux/svg/W3C-I18N/tspan-dirRTL-ubOverride-in-rtl-context-expected.png: Added.
        * platform/chromium-linux/svg/W3C-I18N/tspan-direction-ltr-expected.checksum: Added.
        * platform/chromium-linux/svg/W3C-I18N/tspan-direction-ltr-expected.png: Added.
        * platform/chromium-linux/svg/W3C-I18N/tspan-direction-rtl-expected.checksum: Added.
        * platform/chromium-linux/svg/W3C-I18N/tspan-direction-rtl-expected.png: Added.
        * platform/chromium-linux/svg/W3C-SVG-1.1-SE/text-intro-02-b-expected.checksum: Added.
        * platform/chromium-linux/svg/W3C-SVG-1.1-SE/text-intro-02-b-expected.png: Added.
        * platform/chromium-linux/svg/W3C-SVG-1.1-SE/text-intro-05-t-expected.checksum: Added.
        * platform/chromium-linux/svg/W3C-SVG-1.1-SE/text-intro-05-t-expected.png: Added.
        * platform/chromium-linux/svg/W3C-SVG-1.1-SE/text-intro-05-t-expected.txt: Added.
        * platform/chromium-linux/svg/W3C-SVG-1.1-SE/text-intro-09-b-expected.checksum: Added.
        * platform/chromium-linux/svg/W3C-SVG-1.1-SE/text-intro-09-b-expected.png: Added.
        * platform/chromium-linux/svg/W3C-SVG-1.1-SE/types-dom-02-f-expected.txt: Removed.
        * platform/chromium-linux/svg/W3C-SVG-1.1-SE/types-dom-05-b-expected.txt:
        * platform/chromium-linux/svg/W3C-SVG-1.1/text-align-08-b-expected.checksum: Added.
        * platform/chromium-linux/svg/W3C-SVG-1.1/text-align-08-b-expected.png: Added.
        * platform/chromium-linux/svg/W3C-SVG-1.1/text-fonts-03-t-expected.checksum: Added.
        * platform/chromium-linux/svg/W3C-SVG-1.1/text-fonts-03-t-expected.png: Added.
        * platform/chromium-linux/svg/W3C-SVG-1.1/text-intro-01-t-expected.checksum: Added.
        * platform/chromium-linux/svg/W3C-SVG-1.1/text-intro-01-t-expected.png: Added.
        * platform/chromium-linux/svg/W3C-SVG-1.1/text-intro-02-b-expected.checksum: Added.
        * platform/chromium-linux/svg/W3C-SVG-1.1/text-intro-02-b-expected.png: Added.
        * platform/chromium-linux/svg/W3C-SVG-1.1/text-intro-03-b-expected.checksum: Added.
        * platform/chromium-linux/svg/W3C-SVG-1.1/text-intro-03-b-expected.png: Added.
        * platform/chromium-linux/svg/W3C-SVG-1.1/text-intro-03-b-expected.txt: Added.
        * platform/chromium-linux/svg/W3C-SVG-1.1/text-intro-04-t-expected.checksum: Added.
        * platform/chromium-linux/svg/W3C-SVG-1.1/text-intro-04-t-expected.png: Added.
        * platform/chromium-linux/svg/foreignObject/text-tref-02-b-expected.checksum:
        * platform/chromium-linux/svg/foreignObject/text-tref-02-b-expected.png:
        * platform/chromium-linux/svg/text/bidi-reorder-value-lists-expected.checksum: Added.
        * platform/chromium-linux/svg/text/bidi-reorder-value-lists-expected.png: Added.
        * platform/chromium-linux/svg/text/bidi-text-anchor-direction-expected.checksum: Added.
        * platform/chromium-linux/svg/text/bidi-text-anchor-direction-expected.png: Added.
        * platform/chromium-linux/svg/text/bidi-text-query-expected.checksum: Added.
        * platform/chromium-linux/svg/text/bidi-text-query-expected.png: Added.
        * platform/chromium-linux/svg/text/bidi-text-query-expected.txt: Added.
        * platform/chromium-linux/svg/text/bidi-tspans-expected.checksum: Added.
        * platform/chromium-linux/svg/text/bidi-tspans-expected.png: Added.
        * platform/chromium-linux/svg/text/select-textLength-spacing-stretch-4-expected.checksum:
        * platform/chromium-linux/svg/text/select-textLength-spacing-stretch-4-expected.png:
        * platform/chromium-linux/svg/text/small-fonts-2-expected.txt:
        * platform/chromium-mac/fast/table/relative-position-containment-expected.checksum: Added.
        * platform/chromium-mac/fast/table/relative-position-containment-expected.png: Added.
        * platform/chromium-mac/fast/table/relative-position-offsets-expected.checksum: Added.
        * platform/chromium-mac/fast/table/relative-position-offsets-expected.png: Added.
        * platform/chromium-mac/fast/table/relative-position-stacking-expected.checksum: Added.
        * platform/chromium-mac/fast/table/relative-position-stacking-expected.png: Added.
        * platform/chromium-mac/svg/W3C-I18N/g-dirLTR-ubNone-expected.checksum: Added.
        * platform/chromium-mac/svg/W3C-I18N/g-dirLTR-ubNone-expected.png: Added.
        * platform/chromium-mac/svg/W3C-I18N/g-dirLTR-ubNone-expected.txt: Added.
        * platform/chromium-mac/svg/W3C-I18N/g-dirLTR-ubOverride-expected.checksum: Added.
        * platform/chromium-mac/svg/W3C-I18N/g-dirLTR-ubOverride-expected.png: Added.
        * platform/chromium-mac/svg/W3C-I18N/g-dirLTR-ubOverride-expected.txt: Added.
        * platform/chromium-mac/svg/W3C-I18N/g-dirRTL-ubNone-expected.checksum: Added.
        * platform/chromium-mac/svg/W3C-I18N/g-dirRTL-ubNone-expected.png: Added.
        * platform/chromium-mac/svg/W3C-I18N/g-dirRTL-ubNone-expected.txt: Added.
        * platform/chromium-mac/svg/W3C-I18N/g-dirRTL-ubOverride-expected.checksum: Added.
        * platform/chromium-mac/svg/W3C-I18N/g-dirRTL-ubOverride-expected.png: Added.
        * platform/chromium-mac/svg/W3C-I18N/g-dirRTL-ubOverride-expected.txt: Added.
        * platform/chromium-mac/svg/W3C-I18N/text-anchor-dirLTR-anchorEnd-expected.checksum: Added.
        * platform/chromium-mac/svg/W3C-I18N/text-anchor-dirLTR-anchorEnd-expected.png: Added.
        * platform/chromium-mac/svg/W3C-I18N/text-anchor-dirLTR-anchorEnd-expected.txt: Added.
        * platform/chromium-mac/svg/W3C-I18N/text-anchor-dirLTR-anchorMiddle-expected.checksum: Added.
        * platform/chromium-mac/svg/W3C-I18N/text-anchor-dirLTR-anchorMiddle-expected.png: Added.
        * platform/chromium-mac/svg/W3C-I18N/text-anchor-dirLTR-anchorMiddle-expected.txt: Added.
        * platform/chromium-mac/svg/W3C-I18N/text-anchor-dirLTR-anchorStart-expected.checksum: Added.
        * platform/chromium-mac/svg/W3C-I18N/text-anchor-dirLTR-anchorStart-expected.png: Added.
        * platform/chromium-mac/svg/W3C-I18N/text-anchor-dirLTR-anchorStart-expected.txt: Added.
        * platform/chromium-mac/svg/W3C-I18N/text-anchor-dirNone-anchorEnd-expected.checksum: Added.
        * platform/chromium-mac/svg/W3C-I18N/text-anchor-dirNone-anchorEnd-expected.png: Added.
        * platform/chromium-mac/svg/W3C-I18N/text-anchor-dirNone-anchorEnd-expected.txt: Added.
        * platform/chromium-mac/svg/W3C-I18N/text-anchor-dirNone-anchorMiddle-expected.checksum: Added.
        * platform/chromium-mac/svg/W3C-I18N/text-anchor-dirNone-anchorMiddle-expected.png: Added.
        * platform/chromium-mac/svg/W3C-I18N/text-anchor-dirNone-anchorMiddle-expected.txt: Added.
        * platform/chromium-mac/svg/W3C-I18N/text-anchor-dirNone-anchorStart-expected.checksum: Added.
        * platform/chromium-mac/svg/W3C-I18N/text-anchor-dirNone-anchorStart-expected.png: Added.
        * platform/chromium-mac/svg/W3C-I18N/text-anchor-dirNone-anchorStart-expected.txt: Added.
        * platform/chromium-mac/svg/W3C-I18N/text-anchor-dirRTL-anchorEnd-expected.checksum: Added.
        * platform/chromium-mac/svg/W3C-I18N/text-anchor-dirRTL-anchorEnd-expected.png: Added.
        * platform/chromium-mac/svg/W3C-I18N/text-anchor-dirRTL-anchorEnd-expected.txt: Added.
        * platform/chromium-mac/svg/W3C-I18N/text-anchor-dirRTL-anchorMiddle-expected.checksum: Added.
        * platform/chromium-mac/svg/W3C-I18N/text-anchor-dirRTL-anchorMiddle-expected.png: Added.
        * platform/chromium-mac/svg/W3C-I18N/text-anchor-dirRTL-anchorMiddle-expected.txt: Added.
        * platform/chromium-mac/svg/W3C-I18N/text-anchor-dirRTL-anchorStart-expected.checksum: Added.
        * platform/chromium-mac/svg/W3C-I18N/text-anchor-dirRTL-anchorStart-expected.png: Added.
        * platform/chromium-mac/svg/W3C-I18N/text-anchor-dirRTL-anchorStart-expected.txt: Added.
        * platform/chromium-mac/svg/W3C-I18N/text-anchor-inherited-dirLTR-anchorEnd-expected.checksum: Added.
        * platform/chromium-mac/svg/W3C-I18N/text-anchor-inherited-dirLTR-anchorEnd-expected.png: Added.
        * platform/chromium-mac/svg/W3C-I18N/text-anchor-inherited-dirLTR-anchorEnd-expected.txt: Added.
        * platform/chromium-mac/svg/W3C-I18N/text-anchor-inherited-dirLTR-anchorMiddle-expected.checksum: Added.
        * platform/chromium-mac/svg/W3C-I18N/text-anchor-inherited-dirLTR-anchorMiddle-expected.png: Added.
        * platform/chromium-mac/svg/W3C-I18N/text-anchor-inherited-dirLTR-anchorMiddle-expected.txt: Added.
        * platform/chromium-mac/svg/W3C-I18N/text-anchor-inherited-dirLTR-anchorStart-expected.checksum: Added.
        * platform/chromium-mac/svg/W3C-I18N/text-anchor-inherited-dirLTR-anchorStart-expected.png: Added.
        * platform/chromium-mac/svg/W3C-I18N/text-anchor-inherited-dirLTR-anchorStart-expected.txt: Added.
        * platform/chromium-mac/svg/W3C-I18N/text-anchor-inherited-dirRTL-anchorEnd-expected.checksum: Added.
        * platform/chromium-mac/svg/W3C-I18N/text-anchor-inherited-dirRTL-anchorEnd-expected.png: Added.
        * platform/chromium-mac/svg/W3C-I18N/text-anchor-inherited-dirRTL-anchorEnd-expected.txt: Added.
        * platform/chromium-mac/svg/W3C-I18N/text-anchor-inherited-dirRTL-anchorMiddle-expected.checksum: Added.
        * platform/chromium-mac/svg/W3C-I18N/text-anchor-inherited-dirRTL-anchorMiddle-expected.png: Added.
        * platform/chromium-mac/svg/W3C-I18N/text-anchor-inherited-dirRTL-anchorMiddle-expected.txt: Added.
        * platform/chromium-mac/svg/W3C-I18N/text-anchor-inherited-dirRTL-anchorStart-expected.checksum: Added.
        * platform/chromium-mac/svg/W3C-I18N/text-anchor-inherited-dirRTL-anchorStart-expected.png: Added.
        * platform/chromium-mac/svg/W3C-I18N/text-anchor-inherited-dirRTL-anchorStart-expected.txt: Added.
        * platform/chromium-mac/svg/W3C-I18N/text-anchor-no-markup-expected.checksum: Added.
        * platform/chromium-mac/svg/W3C-I18N/text-anchor-no-markup-expected.png: Added.
        * platform/chromium-mac/svg/W3C-I18N/text-anchor-no-markup-expected.txt: Added.
        * platform/chromium-mac/svg/W3C-I18N/text-dirLTR-ubNone-expected.checksum: Added.
        * platform/chromium-mac/svg/W3C-I18N/text-dirLTR-ubNone-expected.png: Added.
        * platform/chromium-mac/svg/W3C-I18N/text-dirLTR-ubNone-expected.txt: Added.
        * platform/chromium-mac/svg/W3C-I18N/text-dirLTR-ubOverride-expected.checksum: Added.
        * platform/chromium-mac/svg/W3C-I18N/text-dirLTR-ubOverride-expected.png: Added.
        * platform/chromium-mac/svg/W3C-I18N/text-dirLTR-ubOverride-expected.txt: Added.
        * platform/chromium-mac/svg/W3C-I18N/text-dirRTL-ubNone-expected.checksum: Added.
        * platform/chromium-mac/svg/W3C-I18N/text-dirRTL-ubNone-expected.png: Added.
        * platform/chromium-mac/svg/W3C-I18N/text-dirRTL-ubNone-expected.txt: Added.
        * platform/chromium-mac/svg/W3C-I18N/text-dirRTL-ubOverride-expected.checksum: Added.
        * platform/chromium-mac/svg/W3C-I18N/text-dirRTL-ubOverride-expected.png: Added.
        * platform/chromium-mac/svg/W3C-I18N/text-dirRTL-ubOverride-expected.txt: Added.
        * platform/chromium-mac/svg/W3C-I18N/tspan-dirLTR-ubEmbed-in-rtl-context-expected.checksum: Added.
        * platform/chromium-mac/svg/W3C-I18N/tspan-dirLTR-ubEmbed-in-rtl-context-expected.png: Added.
        * platform/chromium-mac/svg/W3C-I18N/tspan-dirLTR-ubEmbed-in-rtl-context-expected.txt: Added.
        * platform/chromium-mac/svg/W3C-I18N/tspan-dirLTR-ubNone-in-rtl-context-expected.checksum: Added.
        * platform/chromium-mac/svg/W3C-I18N/tspan-dirLTR-ubNone-in-rtl-context-expected.png: Added.
        * platform/chromium-mac/svg/W3C-I18N/tspan-dirLTR-ubNone-in-rtl-context-expected.txt: Added.
        * platform/chromium-mac/svg/W3C-I18N/tspan-dirLTR-ubOverride-in-default-context-expected.checksum: Added.
        * platform/chromium-mac/svg/W3C-I18N/tspan-dirLTR-ubOverride-in-default-context-expected.png: Added.
        * platform/chromium-mac/svg/W3C-I18N/tspan-dirLTR-ubOverride-in-default-context-expected.txt: Added.
        * platform/chromium-mac/svg/W3C-I18N/tspan-dirLTR-ubOverride-in-ltr-context-expected.checksum: Added.
        * platform/chromium-mac/svg/W3C-I18N/tspan-dirLTR-ubOverride-in-ltr-context-expected.png: Added.
        * platform/chromium-mac/svg/W3C-I18N/tspan-dirLTR-ubOverride-in-ltr-context-expected.txt: Added.
        * platform/chromium-mac/svg/W3C-I18N/tspan-dirLTR-ubOverride-in-rtl-context-expected.checksum: Added.
        * platform/chromium-mac/svg/W3C-I18N/tspan-dirLTR-ubOverride-in-rtl-context-expected.png: Added.
        * platform/chromium-mac/svg/W3C-I18N/tspan-dirLTR-ubOverride-in-rtl-context-expected.txt: Added.
        * platform/chromium-mac/svg/W3C-I18N/tspan-dirNone-ubOverride-in-default-context-expected.checksum: Added.
        * platform/chromium-mac/svg/W3C-I18N/tspan-dirNone-ubOverride-in-default-context-expected.png: Added.
        * platform/chromium-mac/svg/W3C-I18N/tspan-dirNone-ubOverride-in-default-context-expected.txt: Added.
        * platform/chromium-mac/svg/W3C-I18N/tspan-dirNone-ubOverride-in-ltr-context-expected.checksum: Added.
        * platform/chromium-mac/svg/W3C-I18N/tspan-dirNone-ubOverride-in-ltr-context-expected.png: Added.
        * platform/chromium-mac/svg/W3C-I18N/tspan-dirNone-ubOverride-in-ltr-context-expected.txt: Added.
        * platform/chromium-mac/svg/W3C-I18N/tspan-dirNone-ubOverride-in-rtl-context-expected.checksum: Added.
        * platform/chromium-mac/svg/W3C-I18N/tspan-dirNone-ubOverride-in-rtl-context-expected.png: Added.
        * platform/chromium-mac/svg/W3C-I18N/tspan-dirNone-ubOverride-in-rtl-context-expected.txt: Added.
        * platform/chromium-mac/svg/W3C-I18N/tspan-dirRTL-ubEmbed-in-default-context-expected.checksum: Added.
        * platform/chromium-mac/svg/W3C-I18N/tspan-dirRTL-ubEmbed-in-default-context-expected.png: Added.
        * platform/chromium-mac/svg/W3C-I18N/tspan-dirRTL-ubEmbed-in-default-context-expected.txt: Added.
        * platform/chromium-mac/svg/W3C-I18N/tspan-dirRTL-ubEmbed-in-ltr-context-expected.checksum: Added.
        * platform/chromium-mac/svg/W3C-I18N/tspan-dirRTL-ubEmbed-in-ltr-context-expected.png: Added.
        * platform/chromium-mac/svg/W3C-I18N/tspan-dirRTL-ubEmbed-in-ltr-context-expected.txt: Added.
        * platform/chromium-mac/svg/W3C-I18N/tspan-dirRTL-ubNone-in-default-context-expected.checksum: Added.
        * platform/chromium-mac/svg/W3C-I18N/tspan-dirRTL-ubNone-in-default-context-expected.png: Added.
        * platform/chromium-mac/svg/W3C-I18N/tspan-dirRTL-ubNone-in-default-context-expected.txt: Added.
        * platform/chromium-mac/svg/W3C-I18N/tspan-dirRTL-ubNone-in-ltr-context-expected.checksum: Added.
        * platform/chromium-mac/svg/W3C-I18N/tspan-dirRTL-ubNone-in-ltr-context-expected.png: Added.
        * platform/chromium-mac/svg/W3C-I18N/tspan-dirRTL-ubNone-in-ltr-context-expected.txt: Added.
        * platform/chromium-mac/svg/W3C-I18N/tspan-dirRTL-ubOverride-in-default-context-expected.checksum: Added.
        * platform/chromium-mac/svg/W3C-I18N/tspan-dirRTL-ubOverride-in-default-context-expected.png: Added.
        * platform/chromium-mac/svg/W3C-I18N/tspan-dirRTL-ubOverride-in-default-context-expected.txt: Added.
        * platform/chromium-mac/svg/W3C-I18N/tspan-dirRTL-ubOverride-in-ltr-context-expected.checksum: Added.
        * platform/chromium-mac/svg/W3C-I18N/tspan-dirRTL-ubOverride-in-ltr-context-expected.png: Added.
        * platform/chromium-mac/svg/W3C-I18N/tspan-dirRTL-ubOverride-in-ltr-context-expected.txt: Added.
        * platform/chromium-mac/svg/W3C-I18N/tspan-dirRTL-ubOverride-in-rtl-context-expected.checksum: Added.
        * platform/chromium-mac/svg/W3C-I18N/tspan-dirRTL-ubOverride-in-rtl-context-expected.png: Added.
        * platform/chromium-mac/svg/W3C-I18N/tspan-dirRTL-ubOverride-in-rtl-context-expected.txt: Added.
        * platform/chromium-mac/svg/W3C-I18N/tspan-direction-ltr-expected.checksum: Added.
        * platform/chromium-mac/svg/W3C-I18N/tspan-direction-ltr-expected.png: Added.
        * platform/chromium-mac/svg/W3C-I18N/tspan-direction-ltr-expected.txt: Added.
        * platform/chromium-mac/svg/W3C-I18N/tspan-direction-rtl-expected.checksum: Added.
        * platform/chromium-mac/svg/W3C-I18N/tspan-direction-rtl-expected.png: Added.
        * platform/chromium-mac/svg/W3C-I18N/tspan-direction-rtl-expected.txt: Added.
        * platform/chromium-mac/svg/W3C-SVG-1.1-SE/text-intro-02-b-expected.checksum: Added.
        * platform/chromium-mac/svg/W3C-SVG-1.1-SE/text-intro-02-b-expected.png: Added.
        * platform/chromium-mac/svg/W3C-SVG-1.1-SE/text-intro-02-b-expected.txt: Added.
        * platform/chromium-mac/svg/W3C-SVG-1.1-SE/text-intro-05-t-expected.checksum: Added.
        * platform/chromium-mac/svg/W3C-SVG-1.1-SE/text-intro-05-t-expected.png: Added.
        * platform/chromium-mac/svg/W3C-SVG-1.1-SE/text-intro-05-t-expected.txt: Added.
        * platform/chromium-mac/svg/W3C-SVG-1.1-SE/text-intro-09-b-expected.checksum: Added.
        * platform/chromium-mac/svg/W3C-SVG-1.1-SE/text-intro-09-b-expected.png: Added.
        * platform/chromium-mac/svg/W3C-SVG-1.1-SE/types-dom-02-f-expected.checksum: Added.
        * platform/chromium-mac/svg/W3C-SVG-1.1-SE/types-dom-02-f-expected.png: Added.
        * platform/chromium-mac/svg/W3C-SVG-1.1-SE/types-dom-05-b-expected.checksum: Added.
        * platform/chromium-mac/svg/W3C-SVG-1.1-SE/types-dom-05-b-expected.png: Added.
        * platform/chromium-mac/svg/W3C-SVG-1.1/text-fonts-03-t-expected.checksum: Added.
        * platform/chromium-mac/svg/W3C-SVG-1.1/text-fonts-03-t-expected.png: Added.
        * platform/chromium-mac/svg/W3C-SVG-1.1/text-intro-01-t-expected.checksum: Added.
        * platform/chromium-mac/svg/W3C-SVG-1.1/text-intro-01-t-expected.png: Added.
        * platform/chromium-mac/svg/W3C-SVG-1.1/text-intro-03-b-expected.checksum: Added.
        * platform/chromium-mac/svg/W3C-SVG-1.1/text-intro-03-b-expected.png: Added.
        * platform/chromium-mac/svg/custom/mouse-move-on-svg-container-expected.checksum: Added.
        * platform/chromium-mac/svg/custom/mouse-move-on-svg-container-expected.png: Added.
        * platform/chromium-mac/svg/custom/mouse-move-on-svg-container-standalone-expected.checksum: Added.
        * platform/chromium-mac/svg/custom/mouse-move-on-svg-container-standalone-expected.png: Added.
        * platform/chromium-mac/svg/custom/mouse-move-on-svg-root-expected.checksum:
        * platform/chromium-mac/svg/custom/mouse-move-on-svg-root-expected.png:
        * platform/chromium-mac/svg/custom/mouse-move-on-svg-root-standalone-expected.checksum:
        * platform/chromium-mac/svg/custom/mouse-move-on-svg-root-standalone-expected.png:
        * platform/chromium-mac/svg/foreignObject/text-tref-02-b-expected.checksum: Added.
        * platform/chromium-mac/svg/foreignObject/text-tref-02-b-expected.png: Added.
        * platform/chromium-mac/svg/text/bidi-text-anchor-direction-expected.checksum: Added.
        * platform/chromium-mac/svg/text/bidi-text-anchor-direction-expected.png: Added.
        * platform/chromium-mac/svg/text/bidi-text-anchor-direction-expected.txt: Added.
        * platform/chromium-mac/svg/text/bidi-text-query-expected.checksum: Added.
        * platform/chromium-mac/svg/text/bidi-text-query-expected.png: Added.
        * platform/chromium-mac/svg/text/bidi-text-query-expected.txt: Added.
        * platform/chromium-mac/svg/text/bidi-tspans-expected.checksum: Added.
        * platform/chromium-mac/svg/text/bidi-tspans-expected.png: Added.
        * platform/chromium-mac/svg/text/bidi-tspans-expected.txt: Added.
        * platform/chromium-mac/svg/text/text-align-04-b-expected.checksum: Added.
        * platform/chromium-mac/svg/text/text-align-04-b-expected.png: Added.
        * platform/chromium-win/fast/forms/input-autofilled-expected.txt: Added.
        * platform/chromium-win/svg/W3C-I18N/g-dirLTR-ubNone-expected.checksum: Added.
        * platform/chromium-win/svg/W3C-I18N/g-dirLTR-ubNone-expected.png: Added.
        * platform/chromium-win/svg/W3C-I18N/g-dirLTR-ubNone-expected.txt: Added.
        * platform/chromium-win/svg/W3C-I18N/g-dirLTR-ubOverride-expected.checksum: Added.
        * platform/chromium-win/svg/W3C-I18N/g-dirLTR-ubOverride-expected.png: Added.
        * platform/chromium-win/svg/W3C-I18N/g-dirLTR-ubOverride-expected.txt: Added.
        * platform/chromium-win/svg/W3C-I18N/g-dirRTL-ubNone-expected.checksum: Added.
        * platform/chromium-win/svg/W3C-I18N/g-dirRTL-ubNone-expected.png: Added.
        * platform/chromium-win/svg/W3C-I18N/g-dirRTL-ubNone-expected.txt: Added.
        * platform/chromium-win/svg/W3C-I18N/g-dirRTL-ubOverride-expected.checksum: Added.
        * platform/chromium-win/svg/W3C-I18N/g-dirRTL-ubOverride-expected.png: Added.
        * platform/chromium-win/svg/W3C-I18N/g-dirRTL-ubOverride-expected.txt: Added.
        * platform/chromium-win/svg/W3C-I18N/text-anchor-dirLTR-anchorEnd-expected.checksum: Added.
        * platform/chromium-win/svg/W3C-I18N/text-anchor-dirLTR-anchorEnd-expected.png: Added.
        * platform/chromium-win/svg/W3C-I18N/text-anchor-dirLTR-anchorEnd-expected.txt: Added.
        * platform/chromium-win/svg/W3C-I18N/text-anchor-dirLTR-anchorMiddle-expected.checksum: Added.
        * platform/chromium-win/svg/W3C-I18N/text-anchor-dirLTR-anchorMiddle-expected.png: Added.
        * platform/chromium-win/svg/W3C-I18N/text-anchor-dirLTR-anchorMiddle-expected.txt: Added.
        * platform/chromium-win/svg/W3C-I18N/text-anchor-dirLTR-anchorStart-expected.checksum: Added.
        * platform/chromium-win/svg/W3C-I18N/text-anchor-dirLTR-anchorStart-expected.png: Added.
        * platform/chromium-win/svg/W3C-I18N/text-anchor-dirLTR-anchorStart-expected.txt: Added.
        * platform/chromium-win/svg/W3C-I18N/text-anchor-dirNone-anchorEnd-expected.checksum: Added.
        * platform/chromium-win/svg/W3C-I18N/text-anchor-dirNone-anchorEnd-expected.png: Added.
        * platform/chromium-win/svg/W3C-I18N/text-anchor-dirNone-anchorEnd-expected.txt: Added.
        * platform/chromium-win/svg/W3C-I18N/text-anchor-dirNone-anchorMiddle-expected.checksum: Added.
        * platform/chromium-win/svg/W3C-I18N/text-anchor-dirNone-anchorMiddle-expected.png: Added.
        * platform/chromium-win/svg/W3C-I18N/text-anchor-dirNone-anchorMiddle-expected.txt: Added.
        * platform/chromium-win/svg/W3C-I18N/text-anchor-dirNone-anchorStart-expected.checksum: Added.
        * platform/chromium-win/svg/W3C-I18N/text-anchor-dirNone-anchorStart-expected.png: Added.
        * platform/chromium-win/svg/W3C-I18N/text-anchor-dirNone-anchorStart-expected.txt: Added.
        * platform/chromium-win/svg/W3C-I18N/text-anchor-dirRTL-anchorEnd-expected.checksum: Added.
        * platform/chromium-win/svg/W3C-I18N/text-anchor-dirRTL-anchorEnd-expected.png: Added.
        * platform/chromium-win/svg/W3C-I18N/text-anchor-dirRTL-anchorEnd-expected.txt: Added.
        * platform/chromium-win/svg/W3C-I18N/text-anchor-dirRTL-anchorMiddle-expected.checksum: Added.
        * platform/chromium-win/svg/W3C-I18N/text-anchor-dirRTL-anchorMiddle-expected.png: Added.
        * platform/chromium-win/svg/W3C-I18N/text-anchor-dirRTL-anchorMiddle-expected.txt: Added.
        * platform/chromium-win/svg/W3C-I18N/text-anchor-dirRTL-anchorStart-expected.checksum: Added.
        * platform/chromium-win/svg/W3C-I18N/text-anchor-dirRTL-anchorStart-expected.png: Added.
        * platform/chromium-win/svg/W3C-I18N/text-anchor-dirRTL-anchorStart-expected.txt: Added.
        * platform/chromium-win/svg/W3C-I18N/text-anchor-inherited-dirLTR-anchorEnd-expected.checksum: Added.
        * platform/chromium-win/svg/W3C-I18N/text-anchor-inherited-dirLTR-anchorEnd-expected.png: Added.
        * platform/chromium-win/svg/W3C-I18N/text-anchor-inherited-dirLTR-anchorEnd-expected.txt: Added.
        * platform/chromium-win/svg/W3C-I18N/text-anchor-inherited-dirLTR-anchorMiddle-expected.checksum: Added.
        * platform/chromium-win/svg/W3C-I18N/text-anchor-inherited-dirLTR-anchorMiddle-expected.png: Added.
        * platform/chromium-win/svg/W3C-I18N/text-anchor-inherited-dirLTR-anchorMiddle-expected.txt: Added.
        * platform/chromium-win/svg/W3C-I18N/text-anchor-inherited-dirLTR-anchorStart-expected.checksum: Added.
        * platform/chromium-win/svg/W3C-I18N/text-anchor-inherited-dirLTR-anchorStart-expected.png: Added.
        * platform/chromium-win/svg/W3C-I18N/text-anchor-inherited-dirLTR-anchorStart-expected.txt: Added.
        * platform/chromium-win/svg/W3C-I18N/text-anchor-inherited-dirRTL-anchorEnd-expected.checksum: Added.
        * platform/chromium-win/svg/W3C-I18N/text-anchor-inherited-dirRTL-anchorEnd-expected.png: Added.
        * platform/chromium-win/svg/W3C-I18N/text-anchor-inherited-dirRTL-anchorEnd-expected.txt: Added.
        * platform/chromium-win/svg/W3C-I18N/text-anchor-inherited-dirRTL-anchorMiddle-expected.checksum: Added.
        * platform/chromium-win/svg/W3C-I18N/text-anchor-inherited-dirRTL-anchorMiddle-expected.png: Added.
        * platform/chromium-win/svg/W3C-I18N/text-anchor-inherited-dirRTL-anchorMiddle-expected.txt: Added.
        * platform/chromium-win/svg/W3C-I18N/text-anchor-inherited-dirRTL-anchorStart-expected.checksum: Added.
        * platform/chromium-win/svg/W3C-I18N/text-anchor-inherited-dirRTL-anchorStart-expected.png: Added.
        * platform/chromium-win/svg/W3C-I18N/text-anchor-inherited-dirRTL-anchorStart-expected.txt: Added.
        * platform/chromium-win/svg/W3C-I18N/text-anchor-no-markup-expected.checksum: Added.
        * platform/chromium-win/svg/W3C-I18N/text-anchor-no-markup-expected.png: Added.
        * platform/chromium-win/svg/W3C-I18N/text-anchor-no-markup-expected.txt: Added.
        * platform/chromium-win/svg/W3C-I18N/text-dirLTR-ubNone-expected.checksum: Added.
        * platform/chromium-win/svg/W3C-I18N/text-dirLTR-ubNone-expected.png: Added.
        * platform/chromium-win/svg/W3C-I18N/text-dirLTR-ubNone-expected.txt: Added.
        * platform/chromium-win/svg/W3C-I18N/text-dirLTR-ubOverride-expected.checksum: Added.
        * platform/chromium-win/svg/W3C-I18N/text-dirLTR-ubOverride-expected.png: Added.
        * platform/chromium-win/svg/W3C-I18N/text-dirLTR-ubOverride-expected.txt: Added.
        * platform/chromium-win/svg/W3C-I18N/text-dirRTL-ubNone-expected.checksum: Added.
        * platform/chromium-win/svg/W3C-I18N/text-dirRTL-ubNone-expected.png: Added.
        * platform/chromium-win/svg/W3C-I18N/text-dirRTL-ubNone-expected.txt: Added.
        * platform/chromium-win/svg/W3C-I18N/text-dirRTL-ubOverride-expected.checksum: Added.
        * platform/chromium-win/svg/W3C-I18N/text-dirRTL-ubOverride-expected.png: Added.
        * platform/chromium-win/svg/W3C-I18N/text-dirRTL-ubOverride-expected.txt: Added.
        * platform/chromium-win/svg/W3C-I18N/tspan-dirLTR-ubEmbed-in-rtl-context-expected.checksum: Added.
        * platform/chromium-win/svg/W3C-I18N/tspan-dirLTR-ubEmbed-in-rtl-context-expected.png: Added.
        * platform/chromium-win/svg/W3C-I18N/tspan-dirLTR-ubEmbed-in-rtl-context-expected.txt: Added.
        * platform/chromium-win/svg/W3C-I18N/tspan-dirLTR-ubNone-in-rtl-context-expected.checksum: Added.
        * platform/chromium-win/svg/W3C-I18N/tspan-dirLTR-ubNone-in-rtl-context-expected.png: Added.
        * platform/chromium-win/svg/W3C-I18N/tspan-dirLTR-ubNone-in-rtl-context-expected.txt: Added.
        * platform/chromium-win/svg/W3C-I18N/tspan-dirLTR-ubOverride-in-default-context-expected.checksum: Added.
        * platform/chromium-win/svg/W3C-I18N/tspan-dirLTR-ubOverride-in-default-context-expected.png: Added.
        * platform/chromium-win/svg/W3C-I18N/tspan-dirLTR-ubOverride-in-default-context-expected.txt: Added.
        * platform/chromium-win/svg/W3C-I18N/tspan-dirLTR-ubOverride-in-ltr-context-expected.checksum: Added.
        * platform/chromium-win/svg/W3C-I18N/tspan-dirLTR-ubOverride-in-ltr-context-expected.png: Added.
        * platform/chromium-win/svg/W3C-I18N/tspan-dirLTR-ubOverride-in-ltr-context-expected.txt: Added.
        * platform/chromium-win/svg/W3C-I18N/tspan-dirLTR-ubOverride-in-rtl-context-expected.checksum: Added.
        * platform/chromium-win/svg/W3C-I18N/tspan-dirLTR-ubOverride-in-rtl-context-expected.png: Added.
        * platform/chromium-win/svg/W3C-I18N/tspan-dirLTR-ubOverride-in-rtl-context-expected.txt: Added.
        * platform/chromium-win/svg/W3C-I18N/tspan-dirNone-ubOverride-in-default-context-expected.checksum: Added.
        * platform/chromium-win/svg/W3C-I18N/tspan-dirNone-ubOverride-in-default-context-expected.png: Added.
        * platform/chromium-win/svg/W3C-I18N/tspan-dirNone-ubOverride-in-default-context-expected.txt: Added.
        * platform/chromium-win/svg/W3C-I18N/tspan-dirNone-ubOverride-in-ltr-context-expected.checksum: Added.
        * platform/chromium-win/svg/W3C-I18N/tspan-dirNone-ubOverride-in-ltr-context-expected.png: Added.
        * platform/chromium-win/svg/W3C-I18N/tspan-dirNone-ubOverride-in-ltr-context-expected.txt: Added.
        * platform/chromium-win/svg/W3C-I18N/tspan-dirNone-ubOverride-in-rtl-context-expected.checksum: Added.
        * platform/chromium-win/svg/W3C-I18N/tspan-dirNone-ubOverride-in-rtl-context-expected.png: Added.
        * platform/chromium-win/svg/W3C-I18N/tspan-dirNone-ubOverride-in-rtl-context-expected.txt: Added.
        * platform/chromium-win/svg/W3C-I18N/tspan-dirRTL-ubEmbed-in-default-context-expected.checksum: Added.
        * platform/chromium-win/svg/W3C-I18N/tspan-dirRTL-ubEmbed-in-default-context-expected.png: Added.
        * platform/chromium-win/svg/W3C-I18N/tspan-dirRTL-ubEmbed-in-default-context-expected.txt: Added.
        * platform/chromium-win/svg/W3C-I18N/tspan-dirRTL-ubEmbed-in-ltr-context-expected.checksum: Added.
        * platform/chromium-win/svg/W3C-I18N/tspan-dirRTL-ubEmbed-in-ltr-context-expected.png: Added.
        * platform/chromium-win/svg/W3C-I18N/tspan-dirRTL-ubEmbed-in-ltr-context-expected.txt: Added.
        * platform/chromium-win/svg/W3C-I18N/tspan-dirRTL-ubNone-in-default-context-expected.checksum: Added.
        * platform/chromium-win/svg/W3C-I18N/tspan-dirRTL-ubNone-in-default-context-expected.png: Added.
        * platform/chromium-win/svg/W3C-I18N/tspan-dirRTL-ubNone-in-default-context-expected.txt: Added.
        * platform/chromium-win/svg/W3C-I18N/tspan-dirRTL-ubNone-in-ltr-context-expected.checksum: Added.
        * platform/chromium-win/svg/W3C-I18N/tspan-dirRTL-ubNone-in-ltr-context-expected.png: Added.
        * platform/chromium-win/svg/W3C-I18N/tspan-dirRTL-ubNone-in-ltr-context-expected.txt: Added.
        * platform/chromium-win/svg/W3C-I18N/tspan-dirRTL-ubOverride-in-default-context-expected.checksum: Added.
        * platform/chromium-win/svg/W3C-I18N/tspan-dirRTL-ubOverride-in-default-context-expected.png: Added.
        * platform/chromium-win/svg/W3C-I18N/tspan-dirRTL-ubOverride-in-default-context-expected.txt: Added.
        * platform/chromium-win/svg/W3C-I18N/tspan-dirRTL-ubOverride-in-ltr-context-expected.checksum: Added.
        * platform/chromium-win/svg/W3C-I18N/tspan-dirRTL-ubOverride-in-ltr-context-expected.png: Added.
        * platform/chromium-win/svg/W3C-I18N/tspan-dirRTL-ubOverride-in-ltr-context-expected.txt: Added.
        * platform/chromium-win/svg/W3C-I18N/tspan-dirRTL-ubOverride-in-rtl-context-expected.checksum: Added.
        * platform/chromium-win/svg/W3C-I18N/tspan-dirRTL-ubOverride-in-rtl-context-expected.png: Added.
        * platform/chromium-win/svg/W3C-I18N/tspan-dirRTL-ubOverride-in-rtl-context-expected.txt: Added.
        * platform/chromium-win/svg/W3C-I18N/tspan-direction-ltr-expected.checksum: Added.
        * platform/chromium-win/svg/W3C-I18N/tspan-direction-ltr-expected.png: Added.
        * platform/chromium-win/svg/W3C-I18N/tspan-direction-ltr-expected.txt: Added.
        * platform/chromium-win/svg/W3C-I18N/tspan-direction-rtl-expected.checksum: Added.
        * platform/chromium-win/svg/W3C-I18N/tspan-direction-rtl-expected.png: Added.
        * platform/chromium-win/svg/W3C-I18N/tspan-direction-rtl-expected.txt: Added.
        * platform/chromium-win/svg/W3C-SVG-1.1-SE/text-intro-02-b-expected.checksum: Added.
        * platform/chromium-win/svg/W3C-SVG-1.1-SE/text-intro-02-b-expected.png: Added.
        * platform/chromium-win/svg/W3C-SVG-1.1-SE/text-intro-02-b-expected.txt: Added.
        * platform/chromium-win/svg/W3C-SVG-1.1-SE/text-intro-05-t-expected.checksum: Added.
        * platform/chromium-win/svg/W3C-SVG-1.1-SE/text-intro-05-t-expected.png: Added.
        * platform/chromium-win/svg/W3C-SVG-1.1-SE/text-intro-05-t-expected.txt: Added.
        * platform/chromium-win/svg/W3C-SVG-1.1-SE/text-intro-09-b-expected.checksum: Added.
        * platform/chromium-win/svg/W3C-SVG-1.1-SE/text-intro-09-b-expected.png: Added.
        * platform/chromium-win/svg/W3C-SVG-1.1-SE/text-intro-09-b-expected.txt: Added.
        * platform/chromium-win/svg/W3C-SVG-1.1-SE/types-dom-05-b-expected.checksum:
        * platform/chromium-win/svg/W3C-SVG-1.1-SE/types-dom-05-b-expected.png:
        * platform/chromium-win/svg/W3C-SVG-1.1-SE/types-dom-05-b-expected.txt: Copied from LayoutTests/platform/chromium-linux/svg/W3C-SVG-1.1-SE/types-dom-05-b-expected.txt.
        * platform/chromium-win/svg/W3C-SVG-1.1/text-align-08-b-expected.checksum: Added.
        * platform/chromium-win/svg/W3C-SVG-1.1/text-align-08-b-expected.png: Added.
        * platform/chromium-win/svg/W3C-SVG-1.1/text-align-08-b-expected.txt: Added.
        * platform/chromium-win/svg/W3C-SVG-1.1/text-fonts-03-t-expected.checksum: Added.
        * platform/chromium-win/svg/W3C-SVG-1.1/text-fonts-03-t-expected.png: Added.
        * platform/chromium-win/svg/W3C-SVG-1.1/text-fonts-03-t-expected.txt: Added.
        * platform/chromium-win/svg/W3C-SVG-1.1/text-intro-01-t-expected.checksum: Added.
        * platform/chromium-win/svg/W3C-SVG-1.1/text-intro-01-t-expected.png: Added.
        * platform/chromium-win/svg/W3C-SVG-1.1/text-intro-01-t-expected.txt: Added.
        * platform/chromium-win/svg/W3C-SVG-1.1/text-intro-02-b-expected.checksum: Added.
        * platform/chromium-win/svg/W3C-SVG-1.1/text-intro-02-b-expected.png: Added.
        * platform/chromium-win/svg/W3C-SVG-1.1/text-intro-02-b-expected.txt: Added.
        * platform/chromium-win/svg/W3C-SVG-1.1/text-intro-03-b-expected.checksum: Added.
        * platform/chromium-win/svg/W3C-SVG-1.1/text-intro-03-b-expected.png: Added.
        * platform/chromium-win/svg/W3C-SVG-1.1/text-intro-03-b-expected.txt: Added.
        * platform/chromium-win/svg/W3C-SVG-1.1/text-intro-04-t-expected.checksum: Added.
        * platform/chromium-win/svg/W3C-SVG-1.1/text-intro-04-t-expected.png: Added.
        * platform/chromium-win/svg/W3C-SVG-1.1/text-intro-04-t-expected.txt: Added.
        * platform/chromium-win/svg/text/bidi-reorder-value-lists-expected.checksum: Added.
        * platform/chromium-win/svg/text/bidi-reorder-value-lists-expected.png: Added.
        * platform/chromium-win/svg/text/bidi-reorder-value-lists-expected.txt: Added.
        * platform/chromium-win/svg/text/bidi-text-anchor-direction-expected.checksum: Added.
        * platform/chromium-win/svg/text/bidi-text-anchor-direction-expected.png: Added.
        * platform/chromium-win/svg/text/bidi-text-anchor-direction-expected.txt: Added.
        * platform/chromium-win/svg/text/bidi-text-query-expected.checksum: Added.
        * platform/chromium-win/svg/text/bidi-text-query-expected.png: Added.
        * platform/chromium-win/svg/text/bidi-text-query-expected.txt: Added.
        * platform/chromium-win/svg/text/bidi-tspans-expected.checksum: Added.
        * platform/chromium-win/svg/text/bidi-tspans-expected.png: Added.
        * platform/chromium-win/svg/text/bidi-tspans-expected.txt: Added.
        * platform/chromium-win/svg/text/small-fonts-2-expected.txt:
        * platform/chromium-win/svg/text/text-align-04-b-expected.txt:
        * platform/chromium/test_expectations.txt:

2011-03-15  Helder Correia  <helder@sencha.com>

        Reviewed by Andreas Kling.

        [Qt] fast/canvas/canvas-strokeRect-gradient-shadow.html no longer fails
        https://bugs.webkit.org/show_bug.cgi?id=56413

        Rect stroking uses the same code path as path stroking, which was fixed
        in r80250. Therefore, the test can be removed from the Skipped list as
        it now succeeds.

        * platform/qt/Skipped:

2011-03-15  Adam Roben  <aroben@apple.com>

        Add Windows results for tests added in r81168

        The differences from the Mac results seem to be due to rounding and font differences.

        * platform/win/svg/W3C-I18N/g-dirLTR-ubNone-expected.checksum: Added.
        * platform/win/svg/W3C-I18N/g-dirLTR-ubNone-expected.png: Added.
        * platform/win/svg/W3C-I18N/g-dirLTR-ubNone-expected.txt: Added.
        * platform/win/svg/W3C-I18N/g-dirLTR-ubOverride-expected.checksum: Added.
        * platform/win/svg/W3C-I18N/g-dirLTR-ubOverride-expected.png: Added.
        * platform/win/svg/W3C-I18N/g-dirLTR-ubOverride-expected.txt: Added.
        * platform/win/svg/W3C-I18N/g-dirRTL-ubNone-expected.checksum: Added.
        * platform/win/svg/W3C-I18N/g-dirRTL-ubNone-expected.png: Added.
        * platform/win/svg/W3C-I18N/g-dirRTL-ubNone-expected.txt: Added.
        * platform/win/svg/W3C-I18N/g-dirRTL-ubOverride-expected.checksum: Added.
        * platform/win/svg/W3C-I18N/g-dirRTL-ubOverride-expected.png: Added.
        * platform/win/svg/W3C-I18N/g-dirRTL-ubOverride-expected.txt: Added.
        * platform/win/svg/W3C-I18N/text-anchor-dirLTR-anchorEnd-expected.checksum: Added.
        * platform/win/svg/W3C-I18N/text-anchor-dirLTR-anchorEnd-expected.png: Added.
        * platform/win/svg/W3C-I18N/text-anchor-dirLTR-anchorEnd-expected.txt: Added.
        * platform/win/svg/W3C-I18N/text-anchor-dirLTR-anchorMiddle-expected.checksum: Added.
        * platform/win/svg/W3C-I18N/text-anchor-dirLTR-anchorMiddle-expected.png: Added.
        * platform/win/svg/W3C-I18N/text-anchor-dirLTR-anchorMiddle-expected.txt: Added.
        * platform/win/svg/W3C-I18N/text-anchor-dirLTR-anchorStart-expected.checksum: Added.
        * platform/win/svg/W3C-I18N/text-anchor-dirLTR-anchorStart-expected.png: Added.
        * platform/win/svg/W3C-I18N/text-anchor-dirLTR-anchorStart-expected.txt: Added.
        * platform/win/svg/W3C-I18N/text-anchor-dirNone-anchorEnd-expected.checksum: Added.
        * platform/win/svg/W3C-I18N/text-anchor-dirNone-anchorEnd-expected.png: Added.
        * platform/win/svg/W3C-I18N/text-anchor-dirNone-anchorEnd-expected.txt: Added.
        * platform/win/svg/W3C-I18N/text-anchor-dirNone-anchorMiddle-expected.checksum: Added.
        * platform/win/svg/W3C-I18N/text-anchor-dirNone-anchorMiddle-expected.png: Added.
        * platform/win/svg/W3C-I18N/text-anchor-dirNone-anchorMiddle-expected.txt: Added.
        * platform/win/svg/W3C-I18N/text-anchor-dirNone-anchorStart-expected.checksum: Added.
        * platform/win/svg/W3C-I18N/text-anchor-dirNone-anchorStart-expected.png: Added.
        * platform/win/svg/W3C-I18N/text-anchor-dirNone-anchorStart-expected.txt: Added.
        * platform/win/svg/W3C-I18N/text-anchor-dirRTL-anchorEnd-expected.checksum: Added.
        * platform/win/svg/W3C-I18N/text-anchor-dirRTL-anchorEnd-expected.png: Added.
        * platform/win/svg/W3C-I18N/text-anchor-dirRTL-anchorEnd-expected.txt: Added.
        * platform/win/svg/W3C-I18N/text-anchor-dirRTL-anchorMiddle-expected.checksum: Added.
        * platform/win/svg/W3C-I18N/text-anchor-dirRTL-anchorMiddle-expected.png: Added.
        * platform/win/svg/W3C-I18N/text-anchor-dirRTL-anchorMiddle-expected.txt: Added.
        * platform/win/svg/W3C-I18N/text-anchor-dirRTL-anchorStart-expected.checksum: Added.
        * platform/win/svg/W3C-I18N/text-anchor-dirRTL-anchorStart-expected.png: Added.
        * platform/win/svg/W3C-I18N/text-anchor-dirRTL-anchorStart-expected.txt: Added.
        * platform/win/svg/W3C-I18N/text-anchor-inherited-dirLTR-anchorEnd-expected.checksum: Added.
        * platform/win/svg/W3C-I18N/text-anchor-inherited-dirLTR-anchorEnd-expected.png: Added.
        * platform/win/svg/W3C-I18N/text-anchor-inherited-dirLTR-anchorEnd-expected.txt: Added.
        * platform/win/svg/W3C-I18N/text-anchor-inherited-dirLTR-anchorMiddle-expected.checksum: Added.
        * platform/win/svg/W3C-I18N/text-anchor-inherited-dirLTR-anchorMiddle-expected.png: Added.
        * platform/win/svg/W3C-I18N/text-anchor-inherited-dirLTR-anchorMiddle-expected.txt: Added.
        * platform/win/svg/W3C-I18N/text-anchor-inherited-dirLTR-anchorStart-expected.checksum: Added.
        * platform/win/svg/W3C-I18N/text-anchor-inherited-dirLTR-anchorStart-expected.png: Added.
        * platform/win/svg/W3C-I18N/text-anchor-inherited-dirLTR-anchorStart-expected.txt: Added.
        * platform/win/svg/W3C-I18N/text-anchor-inherited-dirRTL-anchorEnd-expected.checksum: Added.
        * platform/win/svg/W3C-I18N/text-anchor-inherited-dirRTL-anchorEnd-expected.png: Added.
        * platform/win/svg/W3C-I18N/text-anchor-inherited-dirRTL-anchorEnd-expected.txt: Added.
        * platform/win/svg/W3C-I18N/text-anchor-inherited-dirRTL-anchorMiddle-expected.checksum: Added.
        * platform/win/svg/W3C-I18N/text-anchor-inherited-dirRTL-anchorMiddle-expected.png: Added.
        * platform/win/svg/W3C-I18N/text-anchor-inherited-dirRTL-anchorMiddle-expected.txt: Added.
        * platform/win/svg/W3C-I18N/text-anchor-inherited-dirRTL-anchorStart-expected.checksum: Added.
        * platform/win/svg/W3C-I18N/text-anchor-inherited-dirRTL-anchorStart-expected.png: Added.
        * platform/win/svg/W3C-I18N/text-anchor-inherited-dirRTL-anchorStart-expected.txt: Added.
        * platform/win/svg/W3C-I18N/text-anchor-no-markup-expected.checksum: Added.
        * platform/win/svg/W3C-I18N/text-anchor-no-markup-expected.png: Added.
        * platform/win/svg/W3C-I18N/text-anchor-no-markup-expected.txt: Added.
        * platform/win/svg/W3C-I18N/text-dirLTR-ubNone-expected.checksum: Added.
        * platform/win/svg/W3C-I18N/text-dirLTR-ubNone-expected.png: Added.
        * platform/win/svg/W3C-I18N/text-dirLTR-ubNone-expected.txt: Added.
        * platform/win/svg/W3C-I18N/text-dirLTR-ubOverride-expected.checksum: Added.
        * platform/win/svg/W3C-I18N/text-dirLTR-ubOverride-expected.png: Added.
        * platform/win/svg/W3C-I18N/text-dirLTR-ubOverride-expected.txt: Added.
        * platform/win/svg/W3C-I18N/text-dirRTL-ubNone-expected.checksum: Added.
        * platform/win/svg/W3C-I18N/text-dirRTL-ubNone-expected.png: Added.
        * platform/win/svg/W3C-I18N/text-dirRTL-ubNone-expected.txt: Added.
        * platform/win/svg/W3C-I18N/text-dirRTL-ubOverride-expected.checksum: Added.
        * platform/win/svg/W3C-I18N/text-dirRTL-ubOverride-expected.png: Added.
        * platform/win/svg/W3C-I18N/text-dirRTL-ubOverride-expected.txt: Added.
        * platform/win/svg/W3C-I18N/tspan-dirLTR-ubEmbed-in-rtl-context-expected.checksum: Added.
        * platform/win/svg/W3C-I18N/tspan-dirLTR-ubEmbed-in-rtl-context-expected.png: Added.
        * platform/win/svg/W3C-I18N/tspan-dirLTR-ubEmbed-in-rtl-context-expected.txt: Added.
        * platform/win/svg/W3C-I18N/tspan-dirLTR-ubNone-in-rtl-context-expected.checksum: Added.
        * platform/win/svg/W3C-I18N/tspan-dirLTR-ubNone-in-rtl-context-expected.png: Added.
        * platform/win/svg/W3C-I18N/tspan-dirLTR-ubNone-in-rtl-context-expected.txt: Added.
        * platform/win/svg/W3C-I18N/tspan-dirLTR-ubOverride-in-default-context-expected.checksum: Added.
        * platform/win/svg/W3C-I18N/tspan-dirLTR-ubOverride-in-default-context-expected.png: Added.
        * platform/win/svg/W3C-I18N/tspan-dirLTR-ubOverride-in-default-context-expected.txt: Added.
        * platform/win/svg/W3C-I18N/tspan-dirLTR-ubOverride-in-ltr-context-expected.checksum: Added.
        * platform/win/svg/W3C-I18N/tspan-dirLTR-ubOverride-in-ltr-context-expected.png: Added.
        * platform/win/svg/W3C-I18N/tspan-dirLTR-ubOverride-in-ltr-context-expected.txt: Added.
        * platform/win/svg/W3C-I18N/tspan-dirLTR-ubOverride-in-rtl-context-expected.checksum: Added.
        * platform/win/svg/W3C-I18N/tspan-dirLTR-ubOverride-in-rtl-context-expected.png: Added.
        * platform/win/svg/W3C-I18N/tspan-dirLTR-ubOverride-in-rtl-context-expected.txt: Added.
        * platform/win/svg/W3C-I18N/tspan-dirNone-ubOverride-in-default-context-expected.checksum: Added.
        * platform/win/svg/W3C-I18N/tspan-dirNone-ubOverride-in-default-context-expected.png: Added.
        * platform/win/svg/W3C-I18N/tspan-dirNone-ubOverride-in-default-context-expected.txt: Added.
        * platform/win/svg/W3C-I18N/tspan-dirNone-ubOverride-in-ltr-context-expected.checksum: Added.
        * platform/win/svg/W3C-I18N/tspan-dirNone-ubOverride-in-ltr-context-expected.png: Added.
        * platform/win/svg/W3C-I18N/tspan-dirNone-ubOverride-in-ltr-context-expected.txt: Added.
        * platform/win/svg/W3C-I18N/tspan-dirRTL-ubOverride-in-rtl-context-expected.checksum: Added.
        * platform/win/svg/W3C-I18N/tspan-dirRTL-ubOverride-in-rtl-context-expected.png: Added.
        * platform/win/svg/W3C-I18N/tspan-dirRTL-ubOverride-in-rtl-context-expected.txt: Added.
        * platform/win/svg/W3C-I18N/tspan-direction-rtl-expected.checksum: Added.
        * platform/win/svg/W3C-I18N/tspan-direction-rtl-expected.png: Added.
        * platform/win/svg/W3C-I18N/tspan-direction-rtl-expected.txt: Added.
        * platform/win/svg/W3C-SVG-1.1-SE/text-intro-02-b-expected.checksum: Added.
        * platform/win/svg/W3C-SVG-1.1-SE/text-intro-02-b-expected.png: Added.
        * platform/win/svg/W3C-SVG-1.1-SE/text-intro-02-b-expected.txt: Added.
        * platform/win/svg/W3C-SVG-1.1-SE/text-intro-05-t-expected.checksum: Added.
        * platform/win/svg/W3C-SVG-1.1-SE/text-intro-05-t-expected.png: Added.
        * platform/win/svg/W3C-SVG-1.1-SE/text-intro-05-t-expected.txt: Added.
        * platform/win/svg/W3C-SVG-1.1-SE/text-intro-09-b-expected.checksum: Added.
        * platform/win/svg/W3C-SVG-1.1-SE/text-intro-09-b-expected.png: Added.
        * platform/win/svg/W3C-SVG-1.1-SE/text-intro-09-b-expected.txt: Added.
        * platform/win/svg/W3C-SVG-1.1-SE/types-dom-05-b-expected.checksum: Added.
        * platform/win/svg/W3C-SVG-1.1-SE/types-dom-05-b-expected.png: Added.
        * platform/win/svg/W3C-SVG-1.1-SE/types-dom-05-b-expected.txt:
        * platform/win/svg/W3C-SVG-1.1/text-intro-03-b-expected.checksum: Added.
        * platform/win/svg/W3C-SVG-1.1/text-intro-03-b-expected.png: Added.
        * platform/win/svg/W3C-SVG-1.1/text-intro-03-b-expected.txt: Added.
        * platform/win/svg/text/bidi-reorder-value-lists-expected.checksum: Added.
        * platform/win/svg/text/bidi-reorder-value-lists-expected.png: Added.
        * platform/win/svg/text/bidi-reorder-value-lists-expected.txt: Added.
        * platform/win/svg/text/bidi-text-anchor-direction-expected.checksum: Added.
        * platform/win/svg/text/bidi-text-anchor-direction-expected.png: Added.
        * platform/win/svg/text/bidi-text-anchor-direction-expected.txt: Added.
        * platform/win/svg/text/bidi-text-query-expected.checksum: Added.
        * platform/win/svg/text/bidi-text-query-expected.png: Added.
        * platform/win/svg/text/bidi-text-query-expected.txt: Added.
        * platform/win/svg/text/bidi-tspans-expected.checksum: Added.
        * platform/win/svg/text/bidi-tspans-expected.png: Added.
        * platform/win/svg/text/bidi-tspans-expected.txt: Added.
        * platform/win/svg/text/small-fonts-2-expected.checksum: Added.
        * platform/win/svg/text/small-fonts-2-expected.png: Added.
        * platform/win/svg/text/small-fonts-2-expected.txt:

2011-03-15  Nikolas Zimmermann  <nzimmermann@rim.com>

        Not reviewed.

        REGRESSION (r68976): Incorrect bidi rendering in SVG text
        https://bugs.webkit.org/show_bug.cgi?id=53980

        Update Gtk baseline.

        * platform/gtk/svg/W3C-SVG-1.1/animate-elem-06-t-expected.txt:
        * platform/gtk/svg/text/text-align-02-b-expected.txt:
        * platform/gtk/svg/text/text-spacing-01-b-expected.txt:

2011-03-15  Nikolas Zimmermann  <nzimmermann@rim.com>

        Not reviewed.

        REGRESSION (r68976): Incorrect bidi rendering in SVG text
        https://bugs.webkit.org/show_bug.cgi?id=53980

        Update Mac Leopard baseline.

        * platform/mac-leopard/svg/W3C-I18N: Added.
        * platform/mac-leopard/svg/W3C-I18N/g-dirLTR-ubNone-expected.txt: Added.
        * platform/mac-leopard/svg/W3C-I18N/g-dirLTR-ubOverride-expected.txt: Added.
        * platform/mac-leopard/svg/W3C-I18N/g-dirRTL-ubNone-expected.txt: Added.
        * platform/mac-leopard/svg/W3C-I18N/g-dirRTL-ubOverride-expected.txt: Added.
        * platform/mac-leopard/svg/W3C-I18N/text-anchor-dirLTR-anchorEnd-expected.txt: Added.
        * platform/mac-leopard/svg/W3C-I18N/text-anchor-dirLTR-anchorMiddle-expected.txt: Added.
        * platform/mac-leopard/svg/W3C-I18N/text-anchor-dirLTR-anchorStart-expected.txt: Added.
        * platform/mac-leopard/svg/W3C-I18N/text-anchor-dirNone-anchorEnd-expected.txt: Added.
        * platform/mac-leopard/svg/W3C-I18N/text-anchor-dirNone-anchorMiddle-expected.txt: Added.
        * platform/mac-leopard/svg/W3C-I18N/text-anchor-dirNone-anchorStart-expected.txt: Added.
        * platform/mac-leopard/svg/W3C-I18N/text-anchor-dirRTL-anchorEnd-expected.txt: Added.
        * platform/mac-leopard/svg/W3C-I18N/text-anchor-dirRTL-anchorMiddle-expected.txt: Added.
        * platform/mac-leopard/svg/W3C-I18N/text-anchor-dirRTL-anchorStart-expected.txt: Added.
        * platform/mac-leopard/svg/W3C-I18N/text-anchor-inherited-dirLTR-anchorEnd-expected.txt: Added.
        * platform/mac-leopard/svg/W3C-I18N/text-anchor-inherited-dirLTR-anchorMiddle-expected.txt: Added.
        * platform/mac-leopard/svg/W3C-I18N/text-anchor-inherited-dirLTR-anchorStart-expected.txt: Added.
        * platform/mac-leopard/svg/W3C-I18N/text-anchor-inherited-dirRTL-anchorEnd-expected.txt: Added.
        * platform/mac-leopard/svg/W3C-I18N/text-anchor-inherited-dirRTL-anchorMiddle-expected.txt: Added.
        * platform/mac-leopard/svg/W3C-I18N/text-anchor-inherited-dirRTL-anchorStart-expected.txt: Added.
        * platform/mac-leopard/svg/W3C-I18N/text-anchor-no-markup-expected.txt: Added.
        * platform/mac-leopard/svg/W3C-I18N/text-dirLTR-ubNone-expected.txt: Added.
        * platform/mac-leopard/svg/W3C-I18N/text-dirLTR-ubOverride-expected.txt: Added.
        * platform/mac-leopard/svg/W3C-I18N/text-dirRTL-ubNone-expected.txt: Added.
        * platform/mac-leopard/svg/W3C-I18N/text-dirRTL-ubOverride-expected.txt: Added.
        * platform/mac-leopard/svg/W3C-I18N/tspan-dirLTR-ubEmbed-in-rtl-context-expected.txt: Added.
        * platform/mac-leopard/svg/W3C-I18N/tspan-dirLTR-ubNone-in-rtl-context-expected.txt: Added.
        * platform/mac-leopard/svg/W3C-I18N/tspan-dirLTR-ubOverride-in-default-context-expected.txt: Added.
        * platform/mac-leopard/svg/W3C-I18N/tspan-dirLTR-ubOverride-in-ltr-context-expected.txt: Added.
        * platform/mac-leopard/svg/W3C-I18N/tspan-dirLTR-ubOverride-in-rtl-context-expected.txt: Added.
        * platform/mac-leopard/svg/W3C-I18N/tspan-dirNone-ubOverride-in-default-context-expected.txt: Added.
        * platform/mac-leopard/svg/W3C-I18N/tspan-dirNone-ubOverride-in-ltr-context-expected.txt: Added.
        * platform/mac-leopard/svg/W3C-I18N/tspan-dirNone-ubOverride-in-rtl-context-expected.txt: Added.
        * platform/mac-leopard/svg/W3C-I18N/tspan-dirRTL-ubEmbed-in-default-context-expected.txt: Added.
        * platform/mac-leopard/svg/W3C-I18N/tspan-dirRTL-ubEmbed-in-ltr-context-expected.txt: Added.
        * platform/mac-leopard/svg/W3C-I18N/tspan-dirRTL-ubNone-in-default-context-expected.txt: Added.
        * platform/mac-leopard/svg/W3C-I18N/tspan-dirRTL-ubNone-in-ltr-context-expected.txt: Added.
        * platform/mac-leopard/svg/W3C-I18N/tspan-dirRTL-ubOverride-in-default-context-expected.txt: Added.
        * platform/mac-leopard/svg/W3C-I18N/tspan-dirRTL-ubOverride-in-ltr-context-expected.txt: Added.
        * platform/mac-leopard/svg/W3C-I18N/tspan-dirRTL-ubOverride-in-rtl-context-expected.txt: Added.
        * platform/mac-leopard/svg/W3C-I18N/tspan-direction-ltr-expected.txt: Added.
        * platform/mac-leopard/svg/W3C-I18N/tspan-direction-rtl-expected.txt: Added.
        * platform/mac-leopard/svg/W3C-SVG-1.1-SE/text-intro-02-b-expected.txt: Added.
        * platform/mac-leopard/svg/W3C-SVG-1.1-SE/text-intro-05-t-expected.txt: Added.
        * platform/mac-leopard/svg/W3C-SVG-1.1-SE/types-dom-02-f-expected.txt:
        * platform/mac-leopard/svg/W3C-SVG-1.1-SE/types-dom-05-b-expected.txt:
        * platform/mac-leopard/svg/text/bidi-text-anchor-direction-expected.txt: Added.
        * platform/mac-leopard/svg/text/bidi-text-query-expected.txt: Added.
        * platform/mac-leopard/svg/text/bidi-tspans-expected.txt: Added.
        * platform/mac-leopard/svg/text/font-size-below-point-five-expected.txt:
        * platform/mac-leopard/svg/text/small-fonts-2-expected.txt:

2011-03-15  Alexey Proskuryakov  <ap@apple.com>

        Reviewed by Darin Adler.

        REGRESSION (WebKit2): keygen element doesn't work
        https://bugs.webkit.org/show_bug.cgi?id=56402
        <rdar://problem/9006545>

        * platform/mac-wk2/Skipped:
        * platform/win-wk2/Skipped:
        Moved tests that were skipped becasue of keygen to win-wk2/Skipped.

2011-03-15  Nikolas Zimmermann  <nzimmermann@rim.com>

        Not reviewed.

        REGRESSION (r68976): Incorrect bidi rendering in SVG text
        https://bugs.webkit.org/show_bug.cgi?id=53980

        Update Qt baseline, still waiting for gtk/leopard/win7/winxp.

        * platform/qt/svg/W3C-SVG-1.1-SE/types-dom-05-b-expected.txt:
        * platform/qt/svg/text/text-align-02-b-expected.txt:
        * platform/qt/svg/text/text-align-04-b-expected.txt:

2011-03-14  Nikolas Zimmermann  <nzimmermann@rim.com>

        Reviewed by Dirk Schulze.

        REGRESSION (r68976): Incorrect bidi rendering in SVG text
        https://bugs.webkit.org/show_bug.cgi?id=53980

        rework the test engine or SVG "text-intro" tests so we can turn them back on
        https://bugs.webkit.org/show_bug.cgi?id=6524

        svg/W3C-SVG-1.1/text-intro-0*.svg fail when MS Office fonts are present
        https://bugs.webkit.org/show_bug.cgi?id=11662

        svg/batik/text/textBiDi.svg failing
        https://bugs.webkit.org/show_bug.cgi?id=17392

        SVG bidi examples at w3C I18N WG tutorials are not rendered correctly.
        https://bugs.webkit.org/show_bug.cgi?id=24374

        Implement proper bidirectionality support for SVG text. The actual bidi support is working
        fine, the problem is that SVG demands to reorder x/y/dx/dy/rotate value lists, in order to
        main correspondance between the attributes and the potentially reordered text.

        Land a new suite of SVG & i18n tests, covering unicode-bidi/direction and text-anchor support
        with BiDi text (Arabic mixed with Latin) in LayoutTests/svg/W3C-I18N.

        Enable long-disabled SVG BiDi tests, and international fonts support in svg/W3C-SVG-1.1
        by providing a SVGFont replacment, replacing the need for MS Office Fonts to be present.
        These tests have some value and we'd like to have them enabled again.

        * platform/mac/svg/W3C-I18N: Added.
        * platform/mac/svg/W3C-I18N/g-dirLTR-ubNone-expected.checksum: Added.
        * platform/mac/svg/W3C-I18N/g-dirLTR-ubNone-expected.png: Added.
        * platform/mac/svg/W3C-I18N/g-dirLTR-ubNone-expected.txt: Added.
        * platform/mac/svg/W3C-I18N/g-dirLTR-ubOverride-expected.checksum: Added.
        * platform/mac/svg/W3C-I18N/g-dirLTR-ubOverride-expected.png: Added.
        * platform/mac/svg/W3C-I18N/g-dirLTR-ubOverride-expected.txt: Added.
        * platform/mac/svg/W3C-I18N/g-dirRTL-ubNone-expected.checksum: Added.
        * platform/mac/svg/W3C-I18N/g-dirRTL-ubNone-expected.png: Added.
        * platform/mac/svg/W3C-I18N/g-dirRTL-ubNone-expected.txt: Added.
        * platform/mac/svg/W3C-I18N/g-dirRTL-ubOverride-expected.checksum: Added.
        * platform/mac/svg/W3C-I18N/g-dirRTL-ubOverride-expected.png: Added.
        * platform/mac/svg/W3C-I18N/g-dirRTL-ubOverride-expected.txt: Added.
        * platform/mac/svg/W3C-I18N/text-anchor-dirLTR-anchorEnd-expected.checksum: Added.
        * platform/mac/svg/W3C-I18N/text-anchor-dirLTR-anchorEnd-expected.png: Added.
        * platform/mac/svg/W3C-I18N/text-anchor-dirLTR-anchorEnd-expected.txt: Added.
        * platform/mac/svg/W3C-I18N/text-anchor-dirLTR-anchorMiddle-expected.checksum: Added.
        * platform/mac/svg/W3C-I18N/text-anchor-dirLTR-anchorMiddle-expected.png: Added.
        * platform/mac/svg/W3C-I18N/text-anchor-dirLTR-anchorMiddle-expected.txt: Added.
        * platform/mac/svg/W3C-I18N/text-anchor-dirLTR-anchorStart-expected.checksum: Added.
        * platform/mac/svg/W3C-I18N/text-anchor-dirLTR-anchorStart-expected.png: Added.
        * platform/mac/svg/W3C-I18N/text-anchor-dirLTR-anchorStart-expected.txt: Added.
        * platform/mac/svg/W3C-I18N/text-anchor-dirNone-anchorEnd-expected.checksum: Added.
        * platform/mac/svg/W3C-I18N/text-anchor-dirNone-anchorEnd-expected.png: Added.
        * platform/mac/svg/W3C-I18N/text-anchor-dirNone-anchorEnd-expected.txt: Added.
        * platform/mac/svg/W3C-I18N/text-anchor-dirNone-anchorMiddle-expected.checksum: Added.
        * platform/mac/svg/W3C-I18N/text-anchor-dirNone-anchorMiddle-expected.png: Added.
        * platform/mac/svg/W3C-I18N/text-anchor-dirNone-anchorMiddle-expected.txt: Added.
        * platform/mac/svg/W3C-I18N/text-anchor-dirNone-anchorStart-expected.checksum: Added.
        * platform/mac/svg/W3C-I18N/text-anchor-dirNone-anchorStart-expected.png: Added.
        * platform/mac/svg/W3C-I18N/text-anchor-dirNone-anchorStart-expected.txt: Added.
        * platform/mac/svg/W3C-I18N/text-anchor-dirRTL-anchorEnd-expected.checksum: Added.
        * platform/mac/svg/W3C-I18N/text-anchor-dirRTL-anchorEnd-expected.png: Added.
        * platform/mac/svg/W3C-I18N/text-anchor-dirRTL-anchorEnd-expected.txt: Added.
        * platform/mac/svg/W3C-I18N/text-anchor-dirRTL-anchorMiddle-expected.checksum: Added.
        * platform/mac/svg/W3C-I18N/text-anchor-dirRTL-anchorMiddle-expected.png: Added.
        * platform/mac/svg/W3C-I18N/text-anchor-dirRTL-anchorMiddle-expected.txt: Added.
        * platform/mac/svg/W3C-I18N/text-anchor-dirRTL-anchorStart-expected.checksum: Added.
        * platform/mac/svg/W3C-I18N/text-anchor-dirRTL-anchorStart-expected.png: Added.
        * platform/mac/svg/W3C-I18N/text-anchor-dirRTL-anchorStart-expected.txt: Added.
        * platform/mac/svg/W3C-I18N/text-anchor-inherited-dirLTR-anchorEnd-expected.checksum: Added.
        * platform/mac/svg/W3C-I18N/text-anchor-inherited-dirLTR-anchorEnd-expected.png: Added.
        * platform/mac/svg/W3C-I18N/text-anchor-inherited-dirLTR-anchorEnd-expected.txt: Added.
        * platform/mac/svg/W3C-I18N/text-anchor-inherited-dirLTR-anchorMiddle-expected.checksum: Added.
        * platform/mac/svg/W3C-I18N/text-anchor-inherited-dirLTR-anchorMiddle-expected.png: Added.
        * platform/mac/svg/W3C-I18N/text-anchor-inherited-dirLTR-anchorMiddle-expected.txt: Added.
        * platform/mac/svg/W3C-I18N/text-anchor-inherited-dirLTR-anchorStart-expected.checksum: Added.
        * platform/mac/svg/W3C-I18N/text-anchor-inherited-dirLTR-anchorStart-expected.png: Added.
        * platform/mac/svg/W3C-I18N/text-anchor-inherited-dirLTR-anchorStart-expected.txt: Added.
        * platform/mac/svg/W3C-I18N/text-anchor-inherited-dirRTL-anchorEnd-expected.checksum: Added.
        * platform/mac/svg/W3C-I18N/text-anchor-inherited-dirRTL-anchorEnd-expected.png: Added.
        * platform/mac/svg/W3C-I18N/text-anchor-inherited-dirRTL-anchorEnd-expected.txt: Added.
        * platform/mac/svg/W3C-I18N/text-anchor-inherited-dirRTL-anchorMiddle-expected.checksum: Added.
        * platform/mac/svg/W3C-I18N/text-anchor-inherited-dirRTL-anchorMiddle-expected.png: Added.
        * platform/mac/svg/W3C-I18N/text-anchor-inherited-dirRTL-anchorMiddle-expected.txt: Added.
        * platform/mac/svg/W3C-I18N/text-anchor-inherited-dirRTL-anchorStart-expected.checksum: Added.
        * platform/mac/svg/W3C-I18N/text-anchor-inherited-dirRTL-anchorStart-expected.png: Added.
        * platform/mac/svg/W3C-I18N/text-anchor-inherited-dirRTL-anchorStart-expected.txt: Added.
        * platform/mac/svg/W3C-I18N/text-anchor-no-markup-expected.checksum: Added.
        * platform/mac/svg/W3C-I18N/text-anchor-no-markup-expected.png: Added.
        * platform/mac/svg/W3C-I18N/text-anchor-no-markup-expected.txt: Added.
        * platform/mac/svg/W3C-I18N/text-dirLTR-ubNone-expected.checksum: Added.
        * platform/mac/svg/W3C-I18N/text-dirLTR-ubNone-expected.png: Added.
        * platform/mac/svg/W3C-I18N/text-dirLTR-ubNone-expected.txt: Added.
        * platform/mac/svg/W3C-I18N/text-dirLTR-ubOverride-expected.checksum: Added.
        * platform/mac/svg/W3C-I18N/text-dirLTR-ubOverride-expected.png: Added.
        * platform/mac/svg/W3C-I18N/text-dirLTR-ubOverride-expected.txt: Added.
        * platform/mac/svg/W3C-I18N/text-dirRTL-ubNone-expected.checksum: Added.
        * platform/mac/svg/W3C-I18N/text-dirRTL-ubNone-expected.png: Added.
        * platform/mac/svg/W3C-I18N/text-dirRTL-ubNone-expected.txt: Added.
        * platform/mac/svg/W3C-I18N/text-dirRTL-ubOverride-expected.checksum: Added.
        * platform/mac/svg/W3C-I18N/text-dirRTL-ubOverride-expected.png: Added.
        * platform/mac/svg/W3C-I18N/text-dirRTL-ubOverride-expected.txt: Added.
        * platform/mac/svg/W3C-I18N/tspan-dirLTR-ubEmbed-in-rtl-context-expected.checksum: Added.
        * platform/mac/svg/W3C-I18N/tspan-dirLTR-ubEmbed-in-rtl-context-expected.png: Added.
        * platform/mac/svg/W3C-I18N/tspan-dirLTR-ubEmbed-in-rtl-context-expected.txt: Added.
        * platform/mac/svg/W3C-I18N/tspan-dirLTR-ubNone-in-rtl-context-expected.checksum: Added.
        * platform/mac/svg/W3C-I18N/tspan-dirLTR-ubNone-in-rtl-context-expected.png: Added.
        * platform/mac/svg/W3C-I18N/tspan-dirLTR-ubNone-in-rtl-context-expected.txt: Added.
        * platform/mac/svg/W3C-I18N/tspan-dirLTR-ubOverride-in-default-context-expected.checksum: Added.
        * platform/mac/svg/W3C-I18N/tspan-dirLTR-ubOverride-in-default-context-expected.png: Added.
        * platform/mac/svg/W3C-I18N/tspan-dirLTR-ubOverride-in-default-context-expected.txt: Added.
        * platform/mac/svg/W3C-I18N/tspan-dirLTR-ubOverride-in-ltr-context-expected.checksum: Added.
        * platform/mac/svg/W3C-I18N/tspan-dirLTR-ubOverride-in-ltr-context-expected.png: Added.
        * platform/mac/svg/W3C-I18N/tspan-dirLTR-ubOverride-in-ltr-context-expected.txt: Added.
        * platform/mac/svg/W3C-I18N/tspan-dirLTR-ubOverride-in-rtl-context-expected.checksum: Added.
        * platform/mac/svg/W3C-I18N/tspan-dirLTR-ubOverride-in-rtl-context-expected.png: Added.
        * platform/mac/svg/W3C-I18N/tspan-dirLTR-ubOverride-in-rtl-context-expected.txt: Added.
        * platform/mac/svg/W3C-I18N/tspan-dirNone-ubOverride-in-default-context-expected.checksum: Added.
        * platform/mac/svg/W3C-I18N/tspan-dirNone-ubOverride-in-default-context-expected.png: Added.
        * platform/mac/svg/W3C-I18N/tspan-dirNone-ubOverride-in-default-context-expected.txt: Added.
        * platform/mac/svg/W3C-I18N/tspan-dirNone-ubOverride-in-ltr-context-expected.checksum: Added.
        * platform/mac/svg/W3C-I18N/tspan-dirNone-ubOverride-in-ltr-context-expected.png: Added.
        * platform/mac/svg/W3C-I18N/tspan-dirNone-ubOverride-in-ltr-context-expected.txt: Added.
        * platform/mac/svg/W3C-I18N/tspan-dirNone-ubOverride-in-rtl-context-expected.checksum: Added.
        * platform/mac/svg/W3C-I18N/tspan-dirNone-ubOverride-in-rtl-context-expected.png: Added.
        * platform/mac/svg/W3C-I18N/tspan-dirNone-ubOverride-in-rtl-context-expected.txt: Added.
        * platform/mac/svg/W3C-I18N/tspan-dirRTL-ubEmbed-in-default-context-expected.checksum: Added.
        * platform/mac/svg/W3C-I18N/tspan-dirRTL-ubEmbed-in-default-context-expected.png: Added.
        * platform/mac/svg/W3C-I18N/tspan-dirRTL-ubEmbed-in-default-context-expected.txt: Added.
        * platform/mac/svg/W3C-I18N/tspan-dirRTL-ubEmbed-in-ltr-context-expected.checksum: Added.
        * platform/mac/svg/W3C-I18N/tspan-dirRTL-ubEmbed-in-ltr-context-expected.png: Added.
        * platform/mac/svg/W3C-I18N/tspan-dirRTL-ubEmbed-in-ltr-context-expected.txt: Added.
        * platform/mac/svg/W3C-I18N/tspan-dirRTL-ubNone-in-default-context-expected.checksum: Added.
        * platform/mac/svg/W3C-I18N/tspan-dirRTL-ubNone-in-default-context-expected.png: Added.
        * platform/mac/svg/W3C-I18N/tspan-dirRTL-ubNone-in-default-context-expected.txt: Added.
        * platform/mac/svg/W3C-I18N/tspan-dirRTL-ubNone-in-ltr-context-expected.checksum: Added.
        * platform/mac/svg/W3C-I18N/tspan-dirRTL-ubNone-in-ltr-context-expected.png: Added.
        * platform/mac/svg/W3C-I18N/tspan-dirRTL-ubNone-in-ltr-context-expected.txt: Added.
        * platform/mac/svg/W3C-I18N/tspan-dirRTL-ubOverride-in-default-context-expected.checksum: Added.
        * platform/mac/svg/W3C-I18N/tspan-dirRTL-ubOverride-in-default-context-expected.png: Added.
        * platform/mac/svg/W3C-I18N/tspan-dirRTL-ubOverride-in-default-context-expected.txt: Added.
        * platform/mac/svg/W3C-I18N/tspan-dirRTL-ubOverride-in-ltr-context-expected.checksum: Added.
        * platform/mac/svg/W3C-I18N/tspan-dirRTL-ubOverride-in-ltr-context-expected.png: Added.
        * platform/mac/svg/W3C-I18N/tspan-dirRTL-ubOverride-in-ltr-context-expected.txt: Added.
        * platform/mac/svg/W3C-I18N/tspan-dirRTL-ubOverride-in-rtl-context-expected.checksum: Added.
        * platform/mac/svg/W3C-I18N/tspan-dirRTL-ubOverride-in-rtl-context-expected.png: Added.
        * platform/mac/svg/W3C-I18N/tspan-dirRTL-ubOverride-in-rtl-context-expected.txt: Added.
        * platform/mac/svg/W3C-I18N/tspan-direction-ltr-expected.checksum: Added.
        * platform/mac/svg/W3C-I18N/tspan-direction-ltr-expected.png: Added.
        * platform/mac/svg/W3C-I18N/tspan-direction-ltr-expected.txt: Added.
        * platform/mac/svg/W3C-I18N/tspan-direction-rtl-expected.checksum: Added.
        * platform/mac/svg/W3C-I18N/tspan-direction-rtl-expected.png: Added.
        * platform/mac/svg/W3C-I18N/tspan-direction-rtl-expected.txt: Added.
        * platform/mac/svg/W3C-SVG-1.1-SE/text-intro-02-b-expected.checksum: Added.
        * platform/mac/svg/W3C-SVG-1.1-SE/text-intro-02-b-expected.png: Added.
        * platform/mac/svg/W3C-SVG-1.1-SE/text-intro-02-b-expected.txt: Added.
        * platform/mac/svg/W3C-SVG-1.1-SE/text-intro-05-t-expected.checksum: Added.
        * platform/mac/svg/W3C-SVG-1.1-SE/text-intro-05-t-expected.png: Added.
        * platform/mac/svg/W3C-SVG-1.1-SE/text-intro-05-t-expected.txt: Added.
        * platform/mac/svg/W3C-SVG-1.1-SE/text-intro-09-b-expected.checksum: Added.
        * platform/mac/svg/W3C-SVG-1.1-SE/text-intro-09-b-expected.png: Added.
        * platform/mac/svg/W3C-SVG-1.1-SE/text-intro-09-b-expected.txt: Added.
        * platform/mac/svg/W3C-SVG-1.1-SE/types-dom-02-f-expected.txt:
        * platform/mac/svg/W3C-SVG-1.1-SE/types-dom-05-b-expected.txt:
        * platform/mac/svg/W3C-SVG-1.1/animate-elem-06-t-expected.txt:
        * platform/mac/svg/W3C-SVG-1.1/text-align-08-b-expected.checksum: Added.
        * platform/mac/svg/W3C-SVG-1.1/text-align-08-b-expected.png: Added.
        * platform/mac/svg/W3C-SVG-1.1/text-align-08-b-expected.txt: Added.
        * platform/mac/svg/W3C-SVG-1.1/text-fonts-03-t-expected.checksum: Added.
        * platform/mac/svg/W3C-SVG-1.1/text-fonts-03-t-expected.png: Added.
        * platform/mac/svg/W3C-SVG-1.1/text-fonts-03-t-expected.txt: Added.
        * platform/mac/svg/W3C-SVG-1.1/text-intro-01-t-expected.checksum: Added.
        * platform/mac/svg/W3C-SVG-1.1/text-intro-01-t-expected.png: Added.
        * platform/mac/svg/W3C-SVG-1.1/text-intro-01-t-expected.txt: Added.
        * platform/mac/svg/W3C-SVG-1.1/text-intro-02-b-expected.checksum: Added.
        * platform/mac/svg/W3C-SVG-1.1/text-intro-02-b-expected.png: Added.
        * platform/mac/svg/W3C-SVG-1.1/text-intro-02-b-expected.txt: Added.
        * platform/mac/svg/W3C-SVG-1.1/text-intro-03-b-expected.checksum: Added.
        * platform/mac/svg/W3C-SVG-1.1/text-intro-03-b-expected.png: Added.
        * platform/mac/svg/W3C-SVG-1.1/text-intro-03-b-expected.txt: Added.
        * platform/mac/svg/W3C-SVG-1.1/text-intro-04-t-expected.checksum: Added.
        * platform/mac/svg/W3C-SVG-1.1/text-intro-04-t-expected.png: Added.
        * platform/mac/svg/W3C-SVG-1.1/text-intro-04-t-expected.txt: Added.
        * platform/mac/svg/text/bidi-reorder-value-lists-expected.checksum: Added.
        * platform/mac/svg/text/bidi-reorder-value-lists-expected.png: Added.
        * platform/mac/svg/text/bidi-reorder-value-lists-expected.txt: Added.
        * platform/mac/svg/text/bidi-text-anchor-direction-expected.checksum: Added.
        * platform/mac/svg/text/bidi-text-anchor-direction-expected.png: Added.
        * platform/mac/svg/text/bidi-text-anchor-direction-expected.txt: Added.
        * platform/mac/svg/text/bidi-text-query-expected.checksum: Added.
        * platform/mac/svg/text/bidi-text-query-expected.png: Added.
        * platform/mac/svg/text/bidi-text-query-expected.txt: Added.
        * platform/mac/svg/text/bidi-tspans-expected.checksum: Added.
        * platform/mac/svg/text/bidi-tspans-expected.png: Added.
        * platform/mac/svg/text/bidi-tspans-expected.txt: Added.
        * platform/mac/svg/text/small-fonts-2-expected.txt:
        * platform/mac/svg/text/text-align-02-b-expected.txt:
        * platform/mac/svg/text/text-align-04-b-expected.txt:
        * svg/W3C-I18N: Added.
        * svg/W3C-I18N/NOTE: Added.
        * svg/W3C-I18N/g-dirLTR-ubNone.svg: Added.
        * svg/W3C-I18N/g-dirLTR-ubOverride.svg: Added.
        * svg/W3C-I18N/g-dirRTL-ubNone.svg: Added.
        * svg/W3C-I18N/g-dirRTL-ubOverride.svg: Added.
        * svg/W3C-I18N/resources: Added.
        * svg/W3C-I18N/resources/img1.png: Added.
        * svg/W3C-I18N/resources/img11.png: Added.
        * svg/W3C-I18N/resources/img12.png: Added.
        * svg/W3C-I18N/resources/img13.png: Added.
        * svg/W3C-I18N/resources/img14.png: Added.
        * svg/W3C-I18N/resources/img15.png: Added.
        * svg/W3C-I18N/resources/img16.png: Added.
        * svg/W3C-I18N/resources/img17.png: Added.
        * svg/W3C-I18N/resources/img18.png: Added.
        * svg/W3C-I18N/resources/img19.png: Added.
        * svg/W3C-I18N/resources/img2.png: Added.
        * svg/W3C-I18N/resources/img20.png: Added.
        * svg/W3C-I18N/resources/img21.png: Added.
        * svg/W3C-I18N/resources/img24.png: Added.
        * svg/W3C-I18N/resources/img25.png: Added.
        * svg/W3C-I18N/resources/img3.png: Added.
        * svg/W3C-I18N/resources/img4.png: Added.
        * svg/W3C-I18N/resources/img5.png: Added.
        * svg/W3C-I18N/resources/tanchor-left-right.png: Added.
        * svg/W3C-I18N/resources/tanchor-left.png: Added.
        * svg/W3C-I18N/resources/tanchor-right.png: Added.
        * svg/W3C-I18N/text-anchor-dirLTR-anchorEnd.svg: Added.
        * svg/W3C-I18N/text-anchor-dirLTR-anchorMiddle.svg: Added.
        * svg/W3C-I18N/text-anchor-dirLTR-anchorStart.svg: Added.
        * svg/W3C-I18N/text-anchor-dirNone-anchorEnd.svg: Added.
        * svg/W3C-I18N/text-anchor-dirNone-anchorMiddle.svg: Added.
        * svg/W3C-I18N/text-anchor-dirNone-anchorStart.svg: Added.
        * svg/W3C-I18N/text-anchor-dirRTL-anchorEnd.svg: Added.
        * svg/W3C-I18N/text-anchor-dirRTL-anchorMiddle.svg: Added.
        * svg/W3C-I18N/text-anchor-dirRTL-anchorStart.svg: Added.
        * svg/W3C-I18N/text-anchor-inherited-dirLTR-anchorEnd.svg: Added.
        * svg/W3C-I18N/text-anchor-inherited-dirLTR-anchorMiddle.svg: Added.
        * svg/W3C-I18N/text-anchor-inherited-dirLTR-anchorStart.svg: Added.
        * svg/W3C-I18N/text-anchor-inherited-dirRTL-anchorEnd.svg: Added.
        * svg/W3C-I18N/text-anchor-inherited-dirRTL-anchorMiddle.svg: Added.
        * svg/W3C-I18N/text-anchor-inherited-dirRTL-anchorStart.svg: Added.
        * svg/W3C-I18N/text-anchor-no-markup.svg: Added.
        * svg/W3C-I18N/text-dirLTR-ubNone.svg: Added.
        * svg/W3C-I18N/text-dirLTR-ubOverride.svg: Added.
        * svg/W3C-I18N/text-dirRTL-ubNone.svg: Added.
        * svg/W3C-I18N/text-dirRTL-ubOverride.svg: Added.
        * svg/W3C-I18N/tspan-dirLTR-ubEmbed-in-rtl-context.svg: Added.
        * svg/W3C-I18N/tspan-dirLTR-ubNone-in-rtl-context.svg: Added.
        * svg/W3C-I18N/tspan-dirLTR-ubOverride-in-default-context.svg: Added.
        * svg/W3C-I18N/tspan-dirLTR-ubOverride-in-ltr-context.svg: Added.
        * svg/W3C-I18N/tspan-dirLTR-ubOverride-in-rtl-context.svg: Added.
        * svg/W3C-I18N/tspan-dirNone-ubOverride-in-default-context.svg: Added.
        * svg/W3C-I18N/tspan-dirNone-ubOverride-in-ltr-context.svg: Added.
        * svg/W3C-I18N/tspan-dirNone-ubOverride-in-rtl-context.svg: Added.
        * svg/W3C-I18N/tspan-dirRTL-ubEmbed-in-default-context.svg: Added.
        * svg/W3C-I18N/tspan-dirRTL-ubEmbed-in-ltr-context.svg: Added.
        * svg/W3C-I18N/tspan-dirRTL-ubNone-in-default-context.svg: Added.
        * svg/W3C-I18N/tspan-dirRTL-ubNone-in-ltr-context.svg: Added.
        * svg/W3C-I18N/tspan-dirRTL-ubOverride-in-default-context.svg: Added.
        * svg/W3C-I18N/tspan-dirRTL-ubOverride-in-ltr-context.svg: Added.
        * svg/W3C-I18N/tspan-dirRTL-ubOverride-in-rtl-context.svg: Added.
        * svg/W3C-I18N/tspan-direction-ltr.svg: Added.
        * svg/W3C-I18N/tspan-direction-rtl.svg: Added.
        * svg/W3C-SVG-1.1-SE/text-intro-02-b.svg: Added.
        * svg/W3C-SVG-1.1-SE/text-intro-05-t.svg: Added.
        * svg/W3C-SVG-1.1-SE/text-intro-09-b.svg: Added.
        * svg/W3C-SVG-1.1/resources/SVGExotic.svg: Added.
        * svg/W3C-SVG-1.1/text-align-08-b.svg: Copied from LayoutTests/svg/W3C-SVG-1.1/text-align-08-b.svg-disabled.
        * svg/W3C-SVG-1.1/text-align-08-b.svg-disabled: Removed.
        * svg/W3C-SVG-1.1/text-fonts-03-t.svg: Copied from LayoutTests/svg/W3C-SVG-1.1/text-fonts-03-t.svg-disabled.
        * svg/W3C-SVG-1.1/text-fonts-03-t.svg-disabled: Removed.
        * svg/W3C-SVG-1.1/text-intro-01-t.svg: Copied from LayoutTests/svg/W3C-SVG-1.1/text-intro-01-t.svg-disabled.
        * svg/W3C-SVG-1.1/text-intro-01-t.svg-disabled: Removed.
        * svg/W3C-SVG-1.1/text-intro-02-b.svg: Copied from LayoutTests/svg/W3C-SVG-1.1/text-intro-02-b.svg-disabled.
        * svg/W3C-SVG-1.1/text-intro-02-b.svg-disabled: Removed.
        * svg/W3C-SVG-1.1/text-intro-03-b.svg: Copied from LayoutTests/svg/W3C-SVG-1.1/text-intro-03-b.svg-disabled.
        * svg/W3C-SVG-1.1/text-intro-03-b.svg-disabled: Removed.
        * svg/W3C-SVG-1.1/text-intro-04-t.svg: Copied from LayoutTests/svg/W3C-SVG-1.1/text-intro-04-t.svg-disabled.
        * svg/W3C-SVG-1.1/text-intro-04-t.svg-disabled: Removed.
        * svg/custom/glyph-transformation-with-hkern-expected.txt:
        * svg/text/bidi-reorder-value-lists.svg: Added.
        * svg/text/bidi-text-anchor-direction.svg: Added.
        * svg/text/bidi-text-query.svg: Added.
        * svg/text/bidi-tspans.svg: Added.

2011-03-15  Anders Carlsson  <andersca@apple.com>

        Reviewed by Sam Weinig.

        Make sure that NP_Shutdown is always the last NPP function called
        https://bugs.webkit.org/show_bug.cgi?id=56391
        <rdar://problem/8989902>

        Add test.

        * plugins/npruntime/np-deallocate-called-before-np-shutdown-expected.txt: Added.
        * plugins/npruntime/np-deallocate-called-before-np-shutdown.html: Added.

2011-03-15  Ilya Sherman  <isherman@chromium.org>

        Reviewed by Tony Chang.

        Autofilled form elements are assigned fixed background color but not text color
        https://bugs.webkit.org/show_bug.cgi?id=48382

        * fast/forms/input-autofilled-expected.txt: Added.
        * fast/forms/input-autofilled.html: Added.
        * platform/win/fast/forms/input-autofilled-expected.txt: Added.

2011-03-15  Adam Roben  <aroben@apple.com>

        Update WebKit2 Skipped file for some new tests that rely on unimplemented features

        * platform/mac-wk2/Skipped:

2011-03-12  Pavel Podivilov  <podivilov@chromium.org>

        Reviewed by Yury Semikhatsky.

        Web Inspector: re-implement xhr breakpoints.
        https://bugs.webkit.org/show_bug.cgi?id=56252

        * inspector/debugger/xhr-breakpoints-expected.txt: Added.
        * inspector/debugger/xhr-breakpoints.html: Added.
        * platform/gtk/Skipped:
        * platform/mac/Skipped:
        * platform/qt/Skipped:
        * platform/win/Skipped:

2011-03-15  Pavel Feldman  <pfeldman@chromium.org>

        Reviewed by Yury Semikhatsky.

        Web Inspector: crash upon "//html//@id" search in elements panel.
        https://bugs.webkit.org/show_bug.cgi?id=56334

        * inspector/elements/elements-panel-search-expected.txt:
        * inspector/elements/elements-panel-search.html:

2011-03-15  Andrey Kosyakov  <caseq@chromium.org>

        Unreviewed. Swap two calls to setMonitoringXHREnabled to get rid of side effects on other tests.

        * inspector/protocol/console-agent-expected.txt:
        * inspector/protocol/console-agent.html:

2011-03-15  Yury Semikhatsky  <yurys@chromium.org>

        Reviewed by Pavel Feldman.

        Web Inspector: when console.groupEnd calls twice
        https://bugs.webkit.org/show_bug.cgi?id=56114

        * inspector/console/console-nested-group-expected.txt: Added.
        * inspector/console/console-nested-group.html: Added.

2011-03-15  Philippe Normand  <pnormand@igalia.com>

        Unreviewed, skip failing media test on GTK.

        * platform/gtk/Skipped:

2011-03-15  Alexander Pavlov  <apavlov@chromium.org>

        [Chromium] Unreviewed, update test expectations

        * platform/chromium/test_expectations.txt:

2011-03-15  Ilya Sherman  <isherman@chromium.org>

        Reviewed by David Levin.

        Update Chromium test expectations for fast/forms/onchange-setvalueforuser
        https://bugs.webkit.org/show_bug.cgi?id=56365

        * platform/chromium/fast/forms/onchange-setvalueforuser-expected.txt: Added.

2011-03-14  Ryosuke Niwa  <rniwa@webkit.org>

        Another Chromium rebaseline for r81095.

        * platform/chromium-win/editing/pasteboard/smart-paste-008-expected.txt:

2011-03-14  MORITA Hajime  <morrita@google.com>

        Unreviewed, skipped tests that uses an unsupported DRT API.

        * platform/qt/Skipped:
        * platform/win/Skipped:

2011-03-14  Alexey Proskuryakov  <ap@apple.com>

        Reviewed by Adam Roben.

        https://bugs.webkit.org/show_bug.cgi?id=44138
        Crashes beneath SocketStreamHandle::readStreamCallback when running WebSocket tests.

        * platform/win/Skipped: Unskipped tests that should be fixed now. I couldn't verify that
        locally, becasue most WebSocket tests time out on my machine.

2011-03-14  Ryosuke Niwa  <rniwa@webkit.org>

        Chromium rebaselines for r81095.

        * platform/chromium-linux/editing/deleting/smart-delete-001-expected.txt:
        * platform/chromium-linux/editing/deleting/smart-delete-002-expected.txt:
        * platform/chromium-linux/editing/pasteboard/smart-drag-drop-expected.txt:
        * platform/chromium-linux/editing/pasteboard/smart-paste-003-expected.txt:
        * platform/chromium-linux/editing/pasteboard/smart-paste-004-expected.txt:
        * platform/chromium-linux/editing/selection/fake-drag-expected.txt: Removed.
        * platform/chromium-linux/editing/selection/select-from-textfield-outwards-expected.txt:
        * platform/chromium-win/editing/deleting/smart-delete-001-expected.txt:
        * platform/chromium-win/editing/deleting/smart-delete-002-expected.txt:
        * platform/chromium-win/editing/pasteboard/smart-drag-drop-expected.txt:
        * platform/chromium-win/editing/pasteboard/smart-paste-001-expected.txt:
        * platform/chromium-win/editing/pasteboard/smart-paste-003-expected.txt:
        * platform/chromium-win/editing/pasteboard/smart-paste-004-expected.txt:
        * platform/chromium-win/editing/pasteboard/smart-paste-007-expected.txt:
        * platform/chromium-win/editing/selection/after-line-break-expected.txt:
        * platform/chromium-win/editing/selection/expanding-selections-expected.txt:
        * platform/chromium-win/editing/selection/expanding-selections2-expected.txt:
        * platform/chromium-win/editing/selection/fake-drag-expected.txt:
        * platform/chromium-win/editing/selection/select-from-textfield-outwards-expected.txt:
        * platform/chromium-win/editing/selection/triple-click-in-pre-expected.txt:

2011-03-14  Ryosuke Niwa  <rniwa@webkit.org>

        GTK and Qt rebaselines for r81095.

        * platform/gtk/editing/deleting/smart-delete-001-expected.txt:
        * platform/gtk/editing/deleting/smart-delete-002-expected.txt:
        * platform/gtk/editing/pasteboard/smart-paste-001-expected.txt:
        * platform/gtk/editing/pasteboard/smart-paste-003-expected.txt:
        * platform/gtk/editing/pasteboard/smart-paste-004-expected.txt:
        * platform/gtk/editing/pasteboard/smart-paste-007-expected.txt:
        * platform/gtk/editing/pasteboard/smart-paste-008-expected.txt:
        * platform/gtk/editing/selection/expanding-selections-expected.txt:
        * platform/gtk/editing/selection/expanding-selections2-expected.txt:
        * platform/gtk/editing/selection/fake-drag-expected.txt:
        * platform/gtk/editing/selection/select-from-textfield-outwards-expected.txt:
        * platform/gtk/editing/selection/triple-click-in-pre-expected.txt:
        * platform/qt/editing/deleting/smart-delete-001-expected.txt:
        * platform/qt/editing/pasteboard/smart-paste-001-expected.txt:
        * platform/qt/editing/pasteboard/smart-paste-003-expected.txt:
        * platform/qt/editing/pasteboard/smart-paste-004-expected.txt:
        * platform/qt/editing/pasteboard/smart-paste-007-expected.txt:
        * platform/qt/editing/selection/expanding-selections-expected.txt:
        * platform/qt/editing/selection/expanding-selections2-expected.txt:
        * platform/qt/editing/selection/triple-click-in-pre-expected.txt:

2011-03-14  Joseph Pecoraro  <joepeck@webkit.org>

        Reviewed by Eric Carlson.

        Stalled media elements don't stop delaying the load event
        https://bugs.webkit.org/show_bug.cgi?id=56316

        * http/tests/media/video-play-stall-before-meta-data-expected.txt: Added.
        * http/tests/media/video-play-stall-before-meta-data.html: Added.

2011-03-13  MORITA Hajime  <morrita@google.com>

        Reviewed by Tony Chang.

        Crash when dragging and dropping in a document with an invalid XHTML header
        https://bugs.webkit.org/show_bug.cgi?id=48799

        * editing/pasteboard/drop-file-svg.html: Added.
        * editing/pasteboard/resources/drop-file-svg.svg: Added.

2011-03-14  Anton Muhin  <antonm@chromium.org>

        Reviewed by Adam Barth.

        [v8] Rework object group building.
        https://bugs.webkit.org/show_bug.cgi?id=55399

        Instead of going top-down (from owner to owned elements), go up---from objects
        to their group ids.  That fits better to v8's object grouping model and guarantees
        that each wrapper belongs to the single group.

        Alas, this cannot be implemented for one kind of objects---CSSProperties.

        Part of core GC algorithm and tested extensively by exisiting layout tests.

        * platform/chromium/test_expectations.txt: Temporary suppress text differences.

2011-03-14  Ryosuke Niwa  <rniwa@webkit.org>

        Reviewed by Darin Adler.

        EventHandler calls shouldChangeSelection needlessly
        https://bugs.webkit.org/show_bug.cgi?id=56324

        Since redundant calls to SelectionController::ShouldChangeSelection has been eliminated
        some editing delegate dumps have lost redundant shouldChangeSelectedDOMRange.

        * editing/selection/after-line-break-expected.txt:
        * editing/selection/anchor-focus2-expected.txt:
        * editing/selection/anchor-focus3-expected.txt:
        * platform/mac/editing/deleting/smart-delete-001-expected.txt:
        * platform/mac/editing/deleting/smart-delete-002-expected.txt:
        * platform/mac/editing/pasteboard/smart-drag-drop-expected.txt:
        * platform/mac/editing/pasteboard/smart-paste-001-expected.txt:
        * platform/mac/editing/pasteboard/smart-paste-003-expected.txt:
        * platform/mac/editing/pasteboard/smart-paste-004-expected.txt:
        * platform/mac/editing/pasteboard/smart-paste-007-expected.txt:
        * platform/mac/editing/pasteboard/smart-paste-008-expected.txt:
        * platform/mac/editing/selection/expanding-selections-expected.txt:
        * platform/mac/editing/selection/expanding-selections2-expected.txt:
        * platform/mac/editing/selection/fake-drag-expected.txt:
        * platform/mac/editing/selection/select-from-textfield-outwards-expected.txt:
        * platform/mac/editing/selection/triple-click-in-pre-expected.txt:

2011-03-14  Ryosuke Niwa  <rniwa@webkit.org>

        Mac Leopard rebaselines for r81053 (Grabbed off of Chromium bots).

        * platform/mac-leopard/fast/text/atsui-rtl-override-selection-expected.checksum:
        * platform/mac-leopard/fast/text/atsui-rtl-override-selection-expected.png:
        * platform/mac-leopard/editing/selection/drag-select-1-expected.checksum:
        * platform/mac-leopard/editing/selection/drag-select-1-expected.png:
        * platform/mac-leopard/editing/selection/fake-drag-expected.checksum:
        * platform/mac-leopard/editing/selection/fake-drag-expected.png:
        * platform/mac-leopard/editing/selection/inline-closest-leaf-child-expected.checksum:
        * platform/mac-leopard/editing/selection/inline-closest-leaf-child-expected.png:
        * platform/mac-leopard/svg/custom/mouse-move-on-svg-container-expected.checksum:
        * platform/mac-leopard/svg/custom/mouse-move-on-svg-container-expected.png:
        * platform/mac-leopard/svg/custom/mouse-move-on-svg-container-standalone-expected.checksum:
        * platform/mac-leopard/svg/custom/mouse-move-on-svg-container-standalone-expected.png:
        * platform/mac-leopard/svg/custom/mouse-move-on-svg-root-expected.checksum:
        * platform/mac-leopard/svg/custom/mouse-move-on-svg-root-expected.png:
        * platform/mac-leopard/svg/custom/mouse-move-on-svg-root-standalone-expected.checksum:
        * platform/mac-leopard/svg/custom/mouse-move-on-svg-root-standalone-expected.png:

2011-03-14  Kent Tamura  <tkent@chromium.org>

        Reviewed by James Robinson.

        Assertion failure by form validation message for <select required> with float:left
        https://bugs.webkit.org/show_bug.cgi?id=55995

        * fast/forms/interactive-validation-select-crash-expected.txt: Added.
        * fast/forms/interactive-validation-select-crash.html: Added.
        * platform/gtk/Skipped:
        * platform/mac/Skipped:
        * platform/qt/Skipped:
        * platform/win/Skipped:

2011-03-14  Michael Saboff  <msaboff@apple.com>

        Reviewed by Gavin Barraclough.

        Look-ahead assertions with back references don’t work as expected
        https://bugs.webkit.org/show_bug.cgi?id=56082

        New tests to verify the corresponding changes.

        * fast/regex/assertion-expected.txt: Added.
        * fast/regex/assertion.html: Added.
        * fast/regex/script-tests/assertion.js: Added.

2011-03-14  David Levin  <levin@chromium.org>

        It's the same old song (about the linux debug crash).

        * platform/chromium/test_expectations.txt:

2011-03-14  David Levin  <levin@chromium.org>

        Add more linux debug crashers to the sad list.

        * platform/chromium/test_expectations.txt:

2011-03-14  Martin Robinson  <mrobinson@igalia.com>

        Update GTK+ pixel results after r81053.

        * platform/gtk/editing/selection/drag-select-1-expected.checksum:
        * platform/gtk/editing/selection/drag-select-1-expected.png:
        * platform/gtk/editing/selection/fake-drag-expected.checksum: Added.
        * platform/gtk/editing/selection/fake-drag-expected.png: Added.
        * platform/gtk/editing/selection/inline-closest-leaf-child-expected.checksum: Added.
        * platform/gtk/editing/selection/inline-closest-leaf-child-expected.png: Added.
        * platform/gtk/svg/custom/mouse-move-on-svg-container-standalone-expected.checksum:
        * platform/gtk/svg/custom/mouse-move-on-svg-container-standalone-expected.png:
        * platform/gtk/svg/custom/mouse-move-on-svg-root-standalone-expected.checksum:
        * platform/gtk/svg/custom/mouse-move-on-svg-root-standalone-expected.png:

2011-03-14  David Levin  <levin@chromium.org>

        Upstream test expectations from the chromium repository to WebKit.

        * platform/chromium/test_expectations.txt:

2011-03-14  Ryosuke Niwa  <rniwa@webkit.org>

        Mac pixel rebaselines for r81053.

        * platform/mac/editing/selection/drag-select-1-expected.checksum:
        * platform/mac/editing/selection/drag-select-1-expected.png:
        * platform/mac/editing/selection/fake-drag-expected.checksum:
        * platform/mac/editing/selection/fake-drag-expected.png:
        * platform/mac/fast/text/atsui-rtl-override-selection-expected.checksum:
        * platform/mac/fast/text/atsui-rtl-override-selection-expected.png:
        * platform/mac/svg/custom/mouse-move-on-svg-container-expected.checksum:
        * platform/mac/svg/custom/mouse-move-on-svg-container-expected.png:
        * platform/mac/svg/custom/mouse-move-on-svg-container-standalone-expected.checksum:
        * platform/mac/svg/custom/mouse-move-on-svg-container-standalone-expected.png:
        * platform/mac/svg/custom/mouse-move-on-svg-root-expected.checksum:
        * platform/mac/svg/custom/mouse-move-on-svg-root-expected.png:
        * platform/mac/svg/custom/mouse-move-on-svg-root-standalone-expected.checksum:
        * platform/mac/svg/custom/mouse-move-on-svg-root-standalone-expected.png:

2011-03-14  David Levin  <levin@chromium.org>

        Update the chromium windows baselines for r81053.

        * platform/chromium-win/editing/selection/drag-select-1-expected.checksum:
        * platform/chromium-win/editing/selection/drag-select-1-expected.png:
        * platform/chromium-win/editing/selection/drag-select-1-expected.txt:
        * platform/chromium-win/editing/selection/fake-drag-expected.txt:
        * platform/chromium-win/svg/custom/mouse-move-on-svg-container-expected.checksum:
        * platform/chromium-win/svg/custom/mouse-move-on-svg-container-expected.png:
        * platform/chromium-win/svg/custom/mouse-move-on-svg-container-expected.txt:
        * platform/chromium-win/svg/custom/mouse-move-on-svg-container-standalone-expected.checksum:
        * platform/chromium-win/svg/custom/mouse-move-on-svg-container-standalone-expected.png:
        * platform/chromium-win/svg/custom/mouse-move-on-svg-container-standalone-expected.txt:
        * platform/chromium-win/svg/custom/mouse-move-on-svg-root-expected.checksum:
        * platform/chromium-win/svg/custom/mouse-move-on-svg-root-expected.png:
        * platform/chromium-win/svg/custom/mouse-move-on-svg-root-expected.txt:
        * platform/chromium-win/svg/custom/mouse-move-on-svg-root-standalone-expected.checksum:
        * platform/chromium-win/svg/custom/mouse-move-on-svg-root-standalone-expected.png:
        * platform/chromium-win/svg/custom/mouse-move-on-svg-root-standalone-expected.txt:

2011-03-14  Ryosuke Niwa  <rniwa@webkit.org>

        GTK rebaselines for r81053.

        * platform/gtk/editing/selection/drag-select-1-expected.txt:
        * platform/gtk/editing/selection/fake-drag-expected.txt:
        * platform/gtk/editing/selection/inline-closest-leaf-child-expected.txt:
        * platform/gtk/svg/custom/mouse-move-on-svg-container-expected.txt:
        * platform/gtk/svg/custom/mouse-move-on-svg-container-standalone-expected.txt:
        * platform/gtk/svg/custom/mouse-move-on-svg-root-expected.txt:
        * platform/gtk/svg/custom/mouse-move-on-svg-root-standalone-expected.txt:

2011-03-14  David Levin  <levin@chromium.org>

        Add rebaselines due to two changes:
        For r81053, we have
           editing/selection/drag-select-1.html, editing/selection/fake-drag.html, svg/custom/mouse-move-on-svg-container-standalone.svg,
           svg/custom/mouse-move-on-svg-container.xhtml, svg/custom/mouse-move-on-svg-root-standalone.svg, svg/custom/mouse-move-on-svg-root.xhtml

        For r81049, we have
           fast/table/overflowHidden.html, fast/table/relative-position-containment.html, fast/table/relative-position-offsets.html, fast/table/relative-position-stacking.html

        * platform/chromium-linux/editing/selection/drag-select-1-expected.checksum:
        * platform/chromium-linux/editing/selection/drag-select-1-expected.png:
        * platform/chromium-linux/editing/selection/drag-select-1-expected.txt: Added.
        * platform/chromium-linux/editing/selection/fake-drag-expected.txt: Added.
        * platform/chromium-linux/fast/table/relative-position-containment-expected.checksum: Added.
        * platform/chromium-linux/fast/table/relative-position-containment-expected.png: Added.
        * platform/chromium-linux/fast/table/relative-position-offsets-expected.checksum: Added.
        * platform/chromium-linux/fast/table/relative-position-offsets-expected.png: Added.
        * platform/chromium-linux/fast/table/relative-position-stacking-expected.checksum: Added.
        * platform/chromium-linux/fast/table/relative-position-stacking-expected.png: Added.
        * platform/chromium-linux/svg/custom/mouse-move-on-svg-container-expected.checksum:
        * platform/chromium-linux/svg/custom/mouse-move-on-svg-container-expected.png:
        * platform/chromium-linux/svg/custom/mouse-move-on-svg-container-expected.txt: Added.
        * platform/chromium-linux/svg/custom/mouse-move-on-svg-container-standalone-expected.checksum:
        * platform/chromium-linux/svg/custom/mouse-move-on-svg-container-standalone-expected.png:
        * platform/chromium-linux/svg/custom/mouse-move-on-svg-container-standalone-expected.txt: Added.
        * platform/chromium-linux/svg/custom/mouse-move-on-svg-root-expected.checksum:
        * platform/chromium-linux/svg/custom/mouse-move-on-svg-root-expected.png:
        * platform/chromium-linux/svg/custom/mouse-move-on-svg-root-expected.txt: Added.
        * platform/chromium-linux/svg/custom/mouse-move-on-svg-root-standalone-expected.checksum:
        * platform/chromium-linux/svg/custom/mouse-move-on-svg-root-standalone-expected.png:
        * platform/chromium-linux/svg/custom/mouse-move-on-svg-root-standalone-expected.txt: Added.
        * platform/chromium-win/fast/table/overflowHidden-expected.txt:
        * platform/chromium-win/fast/table/relative-position-containment-expected.checksum: Added.
        * platform/chromium-win/fast/table/relative-position-containment-expected.png: Added.
        * platform/chromium-win/fast/table/relative-position-containment-expected.txt: Added.
        * platform/chromium-win/fast/table/relative-position-offsets-expected.checksum: Added.
        * platform/chromium-win/fast/table/relative-position-offsets-expected.png: Added.
        * platform/chromium-win/fast/table/relative-position-offsets-expected.txt: Added.
        * platform/chromium-win/fast/table/relative-position-stacking-expected.checksum: Added.
        * platform/chromium-win/fast/table/relative-position-stacking-expected.png: Added.
        * platform/chromium-win/fast/table/relative-position-stacking-expected.txt: Added.
        * platform/chromium/test_expectations.txt:

2011-03-14  Ryosuke Niwa  <rniwa@webkit.org>

        Removed redundant baselines from Windows port so that rebaselines done in r81059 take effect.

        * platform/win/svg/custom/mouse-move-on-svg-container-expected.txt: Removed.
        * platform/win/svg/custom/mouse-move-on-svg-container-standalone-expected.txt: Removed.
        * platform/win/svg/custom/mouse-move-on-svg-root-expected.txt: Removed.
        * platform/win/svg/custom/mouse-move-on-svg-root-standalone-expected.txt: Removed.

2011-03-14  Luiz Agostini  <luiz.agostini@openbossa.org>

        Skipping some tests on Windows due to problems on mouse click handling.
        See https://bugs.webkit.org/show_bug.cgi?id=56347.

        * platform/win/Skipped:

2011-03-14  Luiz Agostini  <luiz.agostini@openbossa.org>

        Adjusting Snow Leopard expected results after r81035.

        * platform/mac/fast/html/details-add-summary-1-and-click-expected.txt: Added.
        * platform/mac/fast/html/details-add-summary-1-expected.txt: Added.
        * platform/mac/fast/html/details-add-summary-10-and-click-expected.txt: Added.
        * platform/mac/fast/html/details-add-summary-10-expected.txt: Added.
        * platform/mac/fast/html/details-add-summary-2-and-click-expected.txt: Added.
        * platform/mac/fast/html/details-add-summary-2-expected.txt: Added.
        * platform/mac/fast/html/details-add-summary-3-and-click-expected.txt: Added.
        * platform/mac/fast/html/details-add-summary-3-expected.txt: Added.
        * platform/mac/fast/html/details-add-summary-4-and-click-expected.txt: Added.
        * platform/mac/fast/html/details-add-summary-4-expected.txt: Added.
        * platform/mac/fast/html/details-add-summary-5-and-click-expected.txt: Added.
        * platform/mac/fast/html/details-add-summary-5-expected.txt: Added.
        * platform/mac/fast/html/details-add-summary-6-and-click-expected.txt: Added.
        * platform/mac/fast/html/details-add-summary-6-expected.txt: Added.
        * platform/mac/fast/html/details-add-summary-7-and-click-expected.txt: Added.
        * platform/mac/fast/html/details-add-summary-7-expected.txt: Added.
        * platform/mac/fast/html/details-add-summary-8-and-click-expected.txt: Added.
        * platform/mac/fast/html/details-add-summary-8-expected.txt: Added.
        * platform/mac/fast/html/details-add-summary-9-and-click-expected.txt: Added.
        * platform/mac/fast/html/details-add-summary-9-expected.txt: Added.
        * platform/mac/fast/html/details-no-summary1-expected.txt: Added.
        * platform/mac/fast/html/details-no-summary2-expected.txt: Added.
        * platform/mac/fast/html/details-no-summary3-expected.txt: Added.
        * platform/mac/fast/html/details-no-summary4-expected.txt: Added.
        * platform/mac/fast/html/details-open-javascript-expected.txt: Added.
        * platform/mac/fast/html/details-open1-expected.txt: Added.
        * platform/mac/fast/html/details-open2-expected.txt: Added.
        * platform/mac/fast/html/details-open3-expected.txt: Added.
        * platform/mac/fast/html/details-open4-expected.txt: Added.
        * platform/mac/fast/html/details-open5-expected.txt: Added.
        * platform/mac/fast/html/details-open6-expected.txt: Added.
        * platform/mac/fast/html/details-position-expected.txt: Added.
        * platform/mac/fast/html/details-remove-summary-1-and-click-expected.txt: Added.
        * platform/mac/fast/html/details-remove-summary-1-expected.txt: Added.
        * platform/mac/fast/html/details-remove-summary-2-and-click-expected.txt: Added.
        * platform/mac/fast/html/details-remove-summary-2-expected.txt: Added.
        * platform/mac/fast/html/details-remove-summary-3-and-click-expected.txt: Added.
        * platform/mac/fast/html/details-remove-summary-3-expected.txt: Added.
        * platform/mac/fast/html/details-remove-summary-4-and-click-expected.txt: Added.
        * platform/mac/fast/html/details-remove-summary-4-expected.txt: Added.
        * platform/mac/fast/html/details-remove-summary-5-and-click-expected.txt: Added.
        * platform/mac/fast/html/details-remove-summary-5-expected.txt: Added.
        * platform/mac/fast/html/details-remove-summary-6-and-click-expected.txt: Added.
        * platform/mac/fast/html/details-remove-summary-6-expected.txt: Added.
        * platform/mac/fast/html/details-writing-mode-expected.txt: Added.
        * platform/mac/fast/multicol/span/clone-anonymous-block-non-inline-child-crash-expected.txt:

2011-03-14  Ryosuke Niwa  <rniwa@webkit.org>

        Qt rebaselines for r81053.

        * platform/qt/editing/selection/drag-select-1-expected.txt:
        * platform/qt/svg/custom/mouse-move-on-svg-container-expected.txt:
        * platform/qt/svg/custom/mouse-move-on-svg-container-standalone-expected.txt:
        * platform/qt/svg/custom/mouse-move-on-svg-root-expected.txt:
        * platform/qt/svg/custom/mouse-move-on-svg-root-standalone-expected.txt:

2011-03-14  Ryosuke Niwa  <rniwa@webkit.org>

        Mac rebaselines for r81053.

        * platform/mac/fast/text/atsui-rtl-override-selection-expected.txt:
        * platform/mac/svg/custom/mouse-move-on-svg-container-expected.txt:
        * platform/mac/svg/custom/mouse-move-on-svg-container-standalone-expected.txt:
        * platform/mac/svg/custom/mouse-move-on-svg-root-expected.txt:
        * platform/mac/svg/custom/mouse-move-on-svg-root-standalone-expected.txt:

2011-03-13  Andy Estes  <aestes@apple.com>

        Reviewed by Darin Adler.

        Timer-based events should inherit the user gesture state of their
        originating event in certain cases.
        https://bugs.webkit.org/show_bug.cgi?id=55104

        * fast/events/popup-blocking-timers-expected.txt: Added.
        * fast/events/popup-blocking-timers.html: Added.

2011-03-09  Levi Weintraub  <leviw@chromium.org>

        Reviewed by Ryosuke Niwa.

        Deleting content directly following a button inserts an unnecessary placeholder
        https://bugs.webkit.org/show_bug.cgi?id=56053

        Test to ensure unnecessary placeholders aren't inserted after buttons when delete is pressed.

        * editing/deleting/delete-inserts-br-after-button-expected.txt: Added.
        * editing/deleting/delete-inserts-br-after-button.html: Added.

2011-03-14  David Hyatt  <hyatt@apple.com>

        Reviewed by Dan Bernstein.

        https://bugs.webkit.org/show_bug.cgi?id=45164

        REGRESSION: <a><img align=top></a> Clickable area too large

        Make sure to clamp hit testing of quirky inline flow boxes the same way we already clamped
        painting.

        * fast/inline/inline-position-top-align-expected.txt: Added.
        * fast/inline/inline-position-top-align.html: Added.

2011-03-11  Ryosuke Niwa  <rniwa@webkit.org>

        Reviewed by Tony Chang.

        Selection uses first mousemove's localRect instead of that of mousedown
        https://bugs.webkit.org/show_bug.cgi?id=56213

        Added a test to ensure the selection start is computed using the mouse coordinates passed down
        to the corresponding mousedown event instead of that of the first mousemove event.

        The test is co-authored by Evan Martin.

        * editing/selection/anchor-focus2-expected.txt: Editing delegate changes.
        * editing/selection/anchor-focus3-expected.txt: Ditto.
        * editing/selection/drag-select-rapidly-expected.txt: Added.
        * editing/selection/drag-select-rapidly.html: Added.
        * platform/mac/editing/selection/drag-select-1-expected.txt: Selects the correct range of text.
        * platform/mac/editing/selection/fake-drag-expected.txt: Ditto.
        * platform/mac/editing/selection/inline-closest-leaf-child-expected.txt: Ditto.

2011-03-14  David Levin  <levin@chromium.org>

        Add a baseline for linux for this test since it matches what we have for OSX
        except for the typical minor font differences.

        * platform/chromium-linux/css2.1/t1008-c44-ln-box-02-d-ag-expected.checksum: Added.
        * platform/chromium-linux/css2.1/t1008-c44-ln-box-02-d-ag-expected.png: Added.
        * platform/chromium-linux/css2.1/t1008-c44-ln-box-02-d-ag-expected.txt: Added.
        * platform/chromium/test_expectations.txt:

2011-03-14  David Hyatt  <hyatt@apple.com>

        Reviewed by Beth Dakin.

        https://bugs.webkit.org/show_bug.cgi?id=56246

        Add support for relative positioning to table cells.   Back out the code that hacked around the lack of support
        for offsetLeft, and add new tests to demonstrate that relative positioning works.

        * fast/table/relative-position-containment.html: Added.
        * fast/table/relative-position-offsets.html: Added.
        * fast/table/relative-position-stacking.html: Added.
        * platform/mac/fast/table/overflowHidden-expected.txt:
        * platform/mac/fast/table/relative-position-containment-expected.checksum: Added.
        * platform/mac/fast/table/relative-position-containment-expected.png: Added.
        * platform/mac/fast/table/relative-position-containment-expected.txt: Added.
        * platform/mac/fast/table/relative-position-offsets-expected.checksum: Added.
        * platform/mac/fast/table/relative-position-offsets-expected.png: Added.
        * platform/mac/fast/table/relative-position-offsets-expected.txt: Added.
        * platform/mac/fast/table/relative-position-stacking-expected.checksum: Added.
        * platform/mac/fast/table/relative-position-stacking-expected.png: Added.
        * platform/mac/fast/table/relative-position-stacking-expected.txt: Added.

2011-03-14  David Levin  <levin@chromium.org>

        Improvements for the mondo linux debug failure list changes:
         + Add more tests that belong there.
         + Sort the tests that are there.
         + Add PASS to the lines that are there since these tests are known to pass and a passing
           result for them shouldn't cause a test run to go orange.

        * platform/chromium/test_expectations.txt:

2011-03-14  David Levin  <levin@chromium.org>

        Rebaselines due to r81035.
        Also, added yet more tests to the linux debug crash sweeping through the layout tests.

        * platform/chromium-linux/fast/html/details-add-summary-1-and-click-expected.checksum: Added.
        * platform/chromium-linux/fast/html/details-add-summary-1-and-click-expected.png: Added.
        * platform/chromium-linux/fast/html/details-add-summary-1-expected.checksum: Added.
        * platform/chromium-linux/fast/html/details-add-summary-1-expected.png: Added.
        * platform/chromium-linux/fast/html/details-add-summary-10-and-click-expected.checksum: Added.
        * platform/chromium-linux/fast/html/details-add-summary-10-and-click-expected.png: Added.
        * platform/chromium-linux/fast/html/details-add-summary-10-expected.checksum: Added.
        * platform/chromium-linux/fast/html/details-add-summary-10-expected.png: Added.
        * platform/chromium-linux/fast/html/details-add-summary-2-and-click-expected.checksum: Added.
        * platform/chromium-linux/fast/html/details-add-summary-2-and-click-expected.png: Added.
        * platform/chromium-linux/fast/html/details-add-summary-2-expected.checksum: Added.
        * platform/chromium-linux/fast/html/details-add-summary-2-expected.png: Added.
        * platform/chromium-linux/fast/html/details-add-summary-3-and-click-expected.checksum: Added.
        * platform/chromium-linux/fast/html/details-add-summary-3-and-click-expected.png: Added.
        * platform/chromium-linux/fast/html/details-add-summary-3-expected.checksum: Added.
        * platform/chromium-linux/fast/html/details-add-summary-3-expected.png: Added.
        * platform/chromium-linux/fast/html/details-add-summary-4-and-click-expected.checksum: Added.
        * platform/chromium-linux/fast/html/details-add-summary-4-and-click-expected.png: Added.
        * platform/chromium-linux/fast/html/details-add-summary-4-expected.checksum: Added.
        * platform/chromium-linux/fast/html/details-add-summary-4-expected.png: Added.
        * platform/chromium-linux/fast/html/details-add-summary-5-and-click-expected.checksum: Added.
        * platform/chromium-linux/fast/html/details-add-summary-5-and-click-expected.png: Added.
        * platform/chromium-linux/fast/html/details-add-summary-5-expected.checksum: Added.
        * platform/chromium-linux/fast/html/details-add-summary-5-expected.png: Added.
        * platform/chromium-linux/fast/html/details-add-summary-6-and-click-expected.checksum: Added.
        * platform/chromium-linux/fast/html/details-add-summary-6-and-click-expected.png: Added.
        * platform/chromium-linux/fast/html/details-add-summary-6-expected.checksum: Added.
        * platform/chromium-linux/fast/html/details-add-summary-6-expected.png: Added.
        * platform/chromium-linux/fast/html/details-add-summary-7-and-click-expected.checksum: Added.
        * platform/chromium-linux/fast/html/details-add-summary-7-and-click-expected.png: Added.
        * platform/chromium-linux/fast/html/details-add-summary-7-expected.checksum: Added.
        * platform/chromium-linux/fast/html/details-add-summary-7-expected.png: Added.
        * platform/chromium-linux/fast/html/details-add-summary-8-and-click-expected.checksum: Added.
        * platform/chromium-linux/fast/html/details-add-summary-8-and-click-expected.png: Added.
        * platform/chromium-linux/fast/html/details-add-summary-8-expected.checksum: Added.
        * platform/chromium-linux/fast/html/details-add-summary-8-expected.png: Added.
        * platform/chromium-linux/fast/html/details-add-summary-9-and-click-expected.checksum: Added.
        * platform/chromium-linux/fast/html/details-add-summary-9-and-click-expected.png: Added.
        * platform/chromium-linux/fast/html/details-add-summary-9-expected.checksum: Added.
        * platform/chromium-linux/fast/html/details-add-summary-9-expected.png: Added.
        * platform/chromium-linux/fast/html/details-no-summary1-expected.checksum: Added.
        * platform/chromium-linux/fast/html/details-no-summary1-expected.png: Added.
        * platform/chromium-linux/fast/html/details-no-summary2-expected.checksum: Added.
        * platform/chromium-linux/fast/html/details-no-summary2-expected.png: Added.
        * platform/chromium-linux/fast/html/details-no-summary3-expected.checksum: Added.
        * platform/chromium-linux/fast/html/details-no-summary3-expected.png: Added.
        * platform/chromium-linux/fast/html/details-no-summary4-expected.checksum: Added.
        * platform/chromium-linux/fast/html/details-no-summary4-expected.png: Added.
        * platform/chromium-linux/fast/html/details-open-javascript-expected.checksum: Added.
        * platform/chromium-linux/fast/html/details-open-javascript-expected.png: Added.
        * platform/chromium-linux/fast/html/details-open1-expected.checksum: Added.
        * platform/chromium-linux/fast/html/details-open1-expected.png: Added.
        * platform/chromium-linux/fast/html/details-open2-expected.checksum: Added.
        * platform/chromium-linux/fast/html/details-open2-expected.png: Added.
        * platform/chromium-linux/fast/html/details-open3-expected.checksum: Added.
        * platform/chromium-linux/fast/html/details-open3-expected.png: Added.
        * platform/chromium-linux/fast/html/details-open4-expected.checksum: Added.
        * platform/chromium-linux/fast/html/details-open4-expected.png: Added.
        * platform/chromium-linux/fast/html/details-open5-expected.checksum: Added.
        * platform/chromium-linux/fast/html/details-open5-expected.png: Added.
        * platform/chromium-linux/fast/html/details-open6-expected.checksum: Added.
        * platform/chromium-linux/fast/html/details-open6-expected.png: Added.
        * platform/chromium-linux/fast/html/details-position-expected.checksum: Added.
        * platform/chromium-linux/fast/html/details-position-expected.png: Added.
        * platform/chromium-linux/fast/html/details-remove-summary-1-and-click-expected.checksum: Added.
        * platform/chromium-linux/fast/html/details-remove-summary-1-and-click-expected.png: Added.
        * platform/chromium-linux/fast/html/details-remove-summary-1-expected.checksum: Added.
        * platform/chromium-linux/fast/html/details-remove-summary-1-expected.png: Added.
        * platform/chromium-linux/fast/html/details-remove-summary-2-and-click-expected.checksum: Added.
        * platform/chromium-linux/fast/html/details-remove-summary-2-and-click-expected.png: Added.
        * platform/chromium-linux/fast/html/details-remove-summary-2-expected.checksum: Added.
        * platform/chromium-linux/fast/html/details-remove-summary-2-expected.png: Added.
        * platform/chromium-linux/fast/html/details-remove-summary-3-and-click-expected.checksum: Added.
        * platform/chromium-linux/fast/html/details-remove-summary-3-and-click-expected.png: Added.
        * platform/chromium-linux/fast/html/details-remove-summary-3-expected.checksum: Added.
        * platform/chromium-linux/fast/html/details-remove-summary-3-expected.png: Added.
        * platform/chromium-linux/fast/html/details-remove-summary-4-and-click-expected.checksum: Added.
        * platform/chromium-linux/fast/html/details-remove-summary-4-and-click-expected.png: Added.
        * platform/chromium-linux/fast/html/details-remove-summary-4-expected.checksum: Added.
        * platform/chromium-linux/fast/html/details-remove-summary-4-expected.png: Added.
        * platform/chromium-linux/fast/html/details-remove-summary-5-and-click-expected.checksum: Added.
        * platform/chromium-linux/fast/html/details-remove-summary-5-and-click-expected.png: Added.
        * platform/chromium-linux/fast/html/details-remove-summary-5-expected.checksum: Added.
        * platform/chromium-linux/fast/html/details-remove-summary-5-expected.png: Added.
        * platform/chromium-linux/fast/html/details-remove-summary-6-and-click-expected.checksum: Added.
        * platform/chromium-linux/fast/html/details-remove-summary-6-and-click-expected.png: Added.
        * platform/chromium-linux/fast/html/details-remove-summary-6-expected.checksum: Added.
        * platform/chromium-linux/fast/html/details-remove-summary-6-expected.png: Added.
        * platform/chromium-linux/fast/html/details-writing-mode-expected.checksum: Added.
        * platform/chromium-linux/fast/html/details-writing-mode-expected.png: Added.
        * platform/chromium-mac/fast/html/details-add-summary-1-and-click-expected.checksum: Added.
        * platform/chromium-mac/fast/html/details-add-summary-1-and-click-expected.png: Added.
        * platform/chromium-mac/fast/html/details-add-summary-1-and-click-expected.txt: Added.
        * platform/chromium-mac/fast/html/details-add-summary-1-expected.checksum: Added.
        * platform/chromium-mac/fast/html/details-add-summary-1-expected.png: Added.
        * platform/chromium-mac/fast/html/details-add-summary-1-expected.txt: Added.
        * platform/chromium-mac/fast/html/details-add-summary-10-and-click-expected.checksum: Added.
        * platform/chromium-mac/fast/html/details-add-summary-10-and-click-expected.png: Added.
        * platform/chromium-mac/fast/html/details-add-summary-10-and-click-expected.txt: Added.
        * platform/chromium-mac/fast/html/details-add-summary-10-expected.checksum: Added.
        * platform/chromium-mac/fast/html/details-add-summary-10-expected.png: Added.
        * platform/chromium-mac/fast/html/details-add-summary-10-expected.txt: Added.
        * platform/chromium-mac/fast/html/details-add-summary-2-and-click-expected.checksum: Added.
        * platform/chromium-mac/fast/html/details-add-summary-2-and-click-expected.png: Added.
        * platform/chromium-mac/fast/html/details-add-summary-2-and-click-expected.txt: Added.
        * platform/chromium-mac/fast/html/details-add-summary-2-expected.checksum: Added.
        * platform/chromium-mac/fast/html/details-add-summary-2-expected.png: Added.
        * platform/chromium-mac/fast/html/details-add-summary-2-expected.txt: Added.
        * platform/chromium-mac/fast/html/details-add-summary-3-and-click-expected.checksum: Added.
        * platform/chromium-mac/fast/html/details-add-summary-3-and-click-expected.png: Added.
        * platform/chromium-mac/fast/html/details-add-summary-3-and-click-expected.txt: Added.
        * platform/chromium-mac/fast/html/details-add-summary-3-expected.checksum: Added.
        * platform/chromium-mac/fast/html/details-add-summary-3-expected.png: Added.
        * platform/chromium-mac/fast/html/details-add-summary-3-expected.txt: Added.
        * platform/chromium-mac/fast/html/details-add-summary-4-and-click-expected.checksum: Added.
        * platform/chromium-mac/fast/html/details-add-summary-4-and-click-expected.png: Added.
        * platform/chromium-mac/fast/html/details-add-summary-4-and-click-expected.txt: Added.
        * platform/chromium-mac/fast/html/details-add-summary-4-expected.checksum: Added.
        * platform/chromium-mac/fast/html/details-add-summary-4-expected.png: Added.
        * platform/chromium-mac/fast/html/details-add-summary-4-expected.txt: Added.
        * platform/chromium-mac/fast/html/details-add-summary-5-and-click-expected.checksum: Added.
        * platform/chromium-mac/fast/html/details-add-summary-5-and-click-expected.png: Added.
        * platform/chromium-mac/fast/html/details-add-summary-5-and-click-expected.txt: Added.
        * platform/chromium-mac/fast/html/details-add-summary-5-expected.checksum: Added.
        * platform/chromium-mac/fast/html/details-add-summary-5-expected.png: Added.
        * platform/chromium-mac/fast/html/details-add-summary-5-expected.txt: Added.
        * platform/chromium-mac/fast/html/details-add-summary-6-and-click-expected.checksum: Added.
        * platform/chromium-mac/fast/html/details-add-summary-6-and-click-expected.png: Added.
        * platform/chromium-mac/fast/html/details-add-summary-6-and-click-expected.txt: Added.
        * platform/chromium-mac/fast/html/details-add-summary-6-expected.checksum: Added.
        * platform/chromium-mac/fast/html/details-add-summary-6-expected.png: Added.
        * platform/chromium-mac/fast/html/details-add-summary-6-expected.txt: Added.
        * platform/chromium-mac/fast/html/details-add-summary-7-and-click-expected.checksum: Added.
        * platform/chromium-mac/fast/html/details-add-summary-7-and-click-expected.png: Added.
        * platform/chromium-mac/fast/html/details-add-summary-7-and-click-expected.txt: Added.
        * platform/chromium-mac/fast/html/details-add-summary-7-expected.checksum: Added.
        * platform/chromium-mac/fast/html/details-add-summary-7-expected.png: Added.
        * platform/chromium-mac/fast/html/details-add-summary-7-expected.txt: Added.
        * platform/chromium-mac/fast/html/details-add-summary-8-and-click-expected.checksum: Added.
        * platform/chromium-mac/fast/html/details-add-summary-8-and-click-expected.png: Added.
        * platform/chromium-mac/fast/html/details-add-summary-8-and-click-expected.txt: Added.
        * platform/chromium-mac/fast/html/details-add-summary-8-expected.checksum: Added.
        * platform/chromium-mac/fast/html/details-add-summary-8-expected.png: Added.
        * platform/chromium-mac/fast/html/details-add-summary-8-expected.txt: Added.
        * platform/chromium-mac/fast/html/details-add-summary-9-and-click-expected.checksum: Added.
        * platform/chromium-mac/fast/html/details-add-summary-9-and-click-expected.png: Added.
        * platform/chromium-mac/fast/html/details-add-summary-9-and-click-expected.txt: Added.
        * platform/chromium-mac/fast/html/details-add-summary-9-expected.checksum: Added.
        * platform/chromium-mac/fast/html/details-add-summary-9-expected.png: Added.
        * platform/chromium-mac/fast/html/details-add-summary-9-expected.txt: Added.
        * platform/chromium-mac/fast/html/details-no-summary1-expected.checksum: Added.
        * platform/chromium-mac/fast/html/details-no-summary1-expected.png: Added.
        * platform/chromium-mac/fast/html/details-no-summary1-expected.txt: Added.
        * platform/chromium-mac/fast/html/details-no-summary2-expected.checksum: Added.
        * platform/chromium-mac/fast/html/details-no-summary2-expected.png: Added.
        * platform/chromium-mac/fast/html/details-no-summary2-expected.txt: Added.
        * platform/chromium-mac/fast/html/details-no-summary3-expected.checksum: Added.
        * platform/chromium-mac/fast/html/details-no-summary3-expected.png: Added.
        * platform/chromium-mac/fast/html/details-no-summary3-expected.txt: Added.
        * platform/chromium-mac/fast/html/details-no-summary4-expected.checksum: Added.
        * platform/chromium-mac/fast/html/details-no-summary4-expected.png: Added.
        * platform/chromium-mac/fast/html/details-no-summary4-expected.txt: Added.
        * platform/chromium-mac/fast/html/details-open-javascript-expected.checksum: Added.
        * platform/chromium-mac/fast/html/details-open-javascript-expected.png: Added.
        * platform/chromium-mac/fast/html/details-open-javascript-expected.txt: Added.
        * platform/chromium-mac/fast/html/details-open1-expected.checksum: Added.
        * platform/chromium-mac/fast/html/details-open1-expected.png: Added.
        * platform/chromium-mac/fast/html/details-open1-expected.txt: Added.
        * platform/chromium-mac/fast/html/details-open2-expected.checksum: Added.
        * platform/chromium-mac/fast/html/details-open2-expected.png: Added.
        * platform/chromium-mac/fast/html/details-open2-expected.txt: Added.
        * platform/chromium-mac/fast/html/details-open3-expected.checksum: Added.
        * platform/chromium-mac/fast/html/details-open3-expected.png: Added.
        * platform/chromium-mac/fast/html/details-open3-expected.txt: Added.
        * platform/chromium-mac/fast/html/details-open4-expected.checksum: Added.
        * platform/chromium-mac/fast/html/details-open4-expected.png: Added.
        * platform/chromium-mac/fast/html/details-open4-expected.txt: Added.
        * platform/chromium-mac/fast/html/details-open5-expected.checksum: Added.
        * platform/chromium-mac/fast/html/details-open5-expected.png: Added.
        * platform/chromium-mac/fast/html/details-open5-expected.txt: Added.
        * platform/chromium-mac/fast/html/details-open6-expected.checksum: Added.
        * platform/chromium-mac/fast/html/details-open6-expected.png: Added.
        * platform/chromium-mac/fast/html/details-open6-expected.txt: Added.
        * platform/chromium-mac/fast/html/details-position-expected.checksum: Added.
        * platform/chromium-mac/fast/html/details-position-expected.png: Added.
        * platform/chromium-mac/fast/html/details-position-expected.txt: Added.
        * platform/chromium-mac/fast/html/details-remove-summary-1-and-click-expected.checksum: Added.
        * platform/chromium-mac/fast/html/details-remove-summary-1-and-click-expected.png: Added.
        * platform/chromium-mac/fast/html/details-remove-summary-1-and-click-expected.txt: Added.
        * platform/chromium-mac/fast/html/details-remove-summary-1-expected.checksum: Added.
        * platform/chromium-mac/fast/html/details-remove-summary-1-expected.png: Added.
        * platform/chromium-mac/fast/html/details-remove-summary-1-expected.txt: Added.
        * platform/chromium-mac/fast/html/details-remove-summary-2-and-click-expected.checksum: Added.
        * platform/chromium-mac/fast/html/details-remove-summary-2-and-click-expected.png: Added.
        * platform/chromium-mac/fast/html/details-remove-summary-2-and-click-expected.txt: Added.
        * platform/chromium-mac/fast/html/details-remove-summary-2-expected.checksum: Added.
        * platform/chromium-mac/fast/html/details-remove-summary-2-expected.png: Added.
        * platform/chromium-mac/fast/html/details-remove-summary-2-expected.txt: Added.
        * platform/chromium-mac/fast/html/details-remove-summary-3-and-click-expected.checksum: Added.
        * platform/chromium-mac/fast/html/details-remove-summary-3-and-click-expected.png: Added.
        * platform/chromium-mac/fast/html/details-remove-summary-3-and-click-expected.txt: Added.
        * platform/chromium-mac/fast/html/details-remove-summary-3-expected.checksum: Added.
        * platform/chromium-mac/fast/html/details-remove-summary-3-expected.png: Added.
        * platform/chromium-mac/fast/html/details-remove-summary-3-expected.txt: Added.
        * platform/chromium-mac/fast/html/details-remove-summary-4-and-click-expected.checksum: Added.
        * platform/chromium-mac/fast/html/details-remove-summary-4-and-click-expected.png: Added.
        * platform/chromium-mac/fast/html/details-remove-summary-4-and-click-expected.txt: Added.
        * platform/chromium-mac/fast/html/details-remove-summary-4-expected.checksum: Added.
        * platform/chromium-mac/fast/html/details-remove-summary-4-expected.png: Added.
        * platform/chromium-mac/fast/html/details-remove-summary-4-expected.txt: Added.
        * platform/chromium-mac/fast/html/details-remove-summary-5-and-click-expected.checksum: Added.
        * platform/chromium-mac/fast/html/details-remove-summary-5-and-click-expected.png: Added.
        * platform/chromium-mac/fast/html/details-remove-summary-5-and-click-expected.txt: Added.
        * platform/chromium-mac/fast/html/details-remove-summary-5-expected.checksum: Added.
        * platform/chromium-mac/fast/html/details-remove-summary-5-expected.png: Added.
        * platform/chromium-mac/fast/html/details-remove-summary-5-expected.txt: Added.
        * platform/chromium-mac/fast/html/details-remove-summary-6-and-click-expected.checksum: Added.
        * platform/chromium-mac/fast/html/details-remove-summary-6-and-click-expected.png: Added.
        * platform/chromium-mac/fast/html/details-remove-summary-6-and-click-expected.txt: Added.
        * platform/chromium-mac/fast/html/details-remove-summary-6-expected.checksum: Added.
        * platform/chromium-mac/fast/html/details-remove-summary-6-expected.png: Added.
        * platform/chromium-mac/fast/html/details-remove-summary-6-expected.txt: Added.
        * platform/chromium-mac/fast/html/details-writing-mode-expected.checksum: Added.
        * platform/chromium-mac/fast/html/details-writing-mode-expected.png: Added.
        * platform/chromium-mac/fast/html/details-writing-mode-expected.txt: Added.
        * platform/chromium-mac/fast/multicol/span/clone-anonymous-block-non-inline-child-crash-expected.txt: Added.
        * platform/chromium-win/fast/html/details-add-summary-1-and-click-expected.checksum: Added.
        * platform/chromium-win/fast/html/details-add-summary-1-and-click-expected.png: Added.
        * platform/chromium-win/fast/html/details-add-summary-1-and-click-expected.txt: Added.
        * platform/chromium-win/fast/html/details-add-summary-1-expected.checksum: Added.
        * platform/chromium-win/fast/html/details-add-summary-1-expected.png: Added.
        * platform/chromium-win/fast/html/details-add-summary-1-expected.txt: Added.
        * platform/chromium-win/fast/html/details-add-summary-10-and-click-expected.checksum: Added.
        * platform/chromium-win/fast/html/details-add-summary-10-and-click-expected.png: Added.
        * platform/chromium-win/fast/html/details-add-summary-10-and-click-expected.txt: Added.
        * platform/chromium-win/fast/html/details-add-summary-10-expected.checksum: Added.
        * platform/chromium-win/fast/html/details-add-summary-10-expected.png: Added.
        * platform/chromium-win/fast/html/details-add-summary-10-expected.txt: Added.
        * platform/chromium-win/fast/html/details-add-summary-2-and-click-expected.checksum: Added.
        * platform/chromium-win/fast/html/details-add-summary-2-and-click-expected.png: Added.
        * platform/chromium-win/fast/html/details-add-summary-2-and-click-expected.txt: Added.
        * platform/chromium-win/fast/html/details-add-summary-2-expected.checksum: Added.
        * platform/chromium-win/fast/html/details-add-summary-2-expected.png: Added.
        * platform/chromium-win/fast/html/details-add-summary-2-expected.txt: Added.
        * platform/chromium-win/fast/html/details-add-summary-3-and-click-expected.checksum: Added.
        * platform/chromium-win/fast/html/details-add-summary-3-and-click-expected.png: Added.
        * platform/chromium-win/fast/html/details-add-summary-3-and-click-expected.txt: Added.
        * platform/chromium-win/fast/html/details-add-summary-3-expected.checksum: Added.
        * platform/chromium-win/fast/html/details-add-summary-3-expected.png: Added.
        * platform/chromium-win/fast/html/details-add-summary-3-expected.txt: Added.
        * platform/chromium-win/fast/html/details-add-summary-4-and-click-expected.checksum: Added.
        * platform/chromium-win/fast/html/details-add-summary-4-and-click-expected.png: Added.
        * platform/chromium-win/fast/html/details-add-summary-4-and-click-expected.txt: Added.
        * platform/chromium-win/fast/html/details-add-summary-4-expected.checksum: Added.
        * platform/chromium-win/fast/html/details-add-summary-4-expected.png: Added.
        * platform/chromium-win/fast/html/details-add-summary-4-expected.txt: Added.
        * platform/chromium-win/fast/html/details-add-summary-5-and-click-expected.checksum: Added.
        * platform/chromium-win/fast/html/details-add-summary-5-and-click-expected.png: Added.
        * platform/chromium-win/fast/html/details-add-summary-5-and-click-expected.txt: Added.
        * platform/chromium-win/fast/html/details-add-summary-5-expected.checksum: Added.
        * platform/chromium-win/fast/html/details-add-summary-5-expected.png: Added.
        * platform/chromium-win/fast/html/details-add-summary-5-expected.txt: Added.
        * platform/chromium-win/fast/html/details-add-summary-6-and-click-expected.checksum: Added.
        * platform/chromium-win/fast/html/details-add-summary-6-and-click-expected.png: Added.
        * platform/chromium-win/fast/html/details-add-summary-6-and-click-expected.txt: Added.
        * platform/chromium-win/fast/html/details-add-summary-6-expected.checksum: Added.
        * platform/chromium-win/fast/html/details-add-summary-6-expected.png: Added.
        * platform/chromium-win/fast/html/details-add-summary-6-expected.txt: Added.
        * platform/chromium-win/fast/html/details-add-summary-7-and-click-expected.checksum: Added.
        * platform/chromium-win/fast/html/details-add-summary-7-and-click-expected.png: Added.
        * platform/chromium-win/fast/html/details-add-summary-7-and-click-expected.txt: Added.
        * platform/chromium-win/fast/html/details-add-summary-7-expected.checksum: Added.
        * platform/chromium-win/fast/html/details-add-summary-7-expected.png: Added.
        * platform/chromium-win/fast/html/details-add-summary-7-expected.txt: Added.
        * platform/chromium-win/fast/html/details-add-summary-8-and-click-expected.checksum: Added.
        * platform/chromium-win/fast/html/details-add-summary-8-and-click-expected.png: Added.
        * platform/chromium-win/fast/html/details-add-summary-8-and-click-expected.txt: Added.
        * platform/chromium-win/fast/html/details-add-summary-8-expected.checksum: Added.
        * platform/chromium-win/fast/html/details-add-summary-8-expected.png: Added.
        * platform/chromium-win/fast/html/details-add-summary-8-expected.txt: Added.
        * platform/chromium-win/fast/html/details-add-summary-9-and-click-expected.checksum: Added.
        * platform/chromium-win/fast/html/details-add-summary-9-and-click-expected.png: Added.
        * platform/chromium-win/fast/html/details-add-summary-9-and-click-expected.txt: Added.
        * platform/chromium-win/fast/html/details-add-summary-9-expected.checksum: Added.
        * platform/chromium-win/fast/html/details-add-summary-9-expected.png: Added.
        * platform/chromium-win/fast/html/details-add-summary-9-expected.txt: Added.
        * platform/chromium-win/fast/html/details-no-summary1-expected.checksum: Added.
        * platform/chromium-win/fast/html/details-no-summary1-expected.png: Added.
        * platform/chromium-win/fast/html/details-no-summary1-expected.txt: Added.
        * platform/chromium-win/fast/html/details-no-summary2-expected.checksum: Added.
        * platform/chromium-win/fast/html/details-no-summary2-expected.png: Added.
        * platform/chromium-win/fast/html/details-no-summary2-expected.txt: Added.
        * platform/chromium-win/fast/html/details-no-summary3-expected.checksum: Added.
        * platform/chromium-win/fast/html/details-no-summary3-expected.png: Added.
        * platform/chromium-win/fast/html/details-no-summary3-expected.txt: Added.
        * platform/chromium-win/fast/html/details-no-summary4-expected.checksum: Added.
        * platform/chromium-win/fast/html/details-no-summary4-expected.png: Added.
        * platform/chromium-win/fast/html/details-no-summary4-expected.txt: Added.
        * platform/chromium-win/fast/html/details-open-javascript-expected.checksum: Added.
        * platform/chromium-win/fast/html/details-open-javascript-expected.png: Added.
        * platform/chromium-win/fast/html/details-open-javascript-expected.txt: Added.
        * platform/chromium-win/fast/html/details-open1-expected.checksum: Added.
        * platform/chromium-win/fast/html/details-open1-expected.png: Added.
        * platform/chromium-win/fast/html/details-open1-expected.txt: Added.
        * platform/chromium-win/fast/html/details-open2-expected.checksum: Added.
        * platform/chromium-win/fast/html/details-open2-expected.png: Added.
        * platform/chromium-win/fast/html/details-open2-expected.txt: Added.
        * platform/chromium-win/fast/html/details-open3-expected.checksum: Added.
        * platform/chromium-win/fast/html/details-open3-expected.png: Added.
        * platform/chromium-win/fast/html/details-open3-expected.txt: Added.
        * platform/chromium-win/fast/html/details-open4-expected.checksum: Added.
        * platform/chromium-win/fast/html/details-open4-expected.png: Added.
        * platform/chromium-win/fast/html/details-open4-expected.txt: Added.
        * platform/chromium-win/fast/html/details-open5-expected.checksum: Added.
        * platform/chromium-win/fast/html/details-open5-expected.png: Added.
        * platform/chromium-win/fast/html/details-open5-expected.txt: Added.
        * platform/chromium-win/fast/html/details-open6-expected.checksum: Added.
        * platform/chromium-win/fast/html/details-open6-expected.png: Added.
        * platform/chromium-win/fast/html/details-open6-expected.txt: Added.
        * platform/chromium-win/fast/html/details-position-expected.checksum: Added.
        * platform/chromium-win/fast/html/details-position-expected.png: Added.
        * platform/chromium-win/fast/html/details-position-expected.txt: Added.
        * platform/chromium-win/fast/html/details-remove-summary-1-and-click-expected.checksum: Added.
        * platform/chromium-win/fast/html/details-remove-summary-1-and-click-expected.png: Added.
        * platform/chromium-win/fast/html/details-remove-summary-1-and-click-expected.txt: Added.
        * platform/chromium-win/fast/html/details-remove-summary-1-expected.checksum: Added.
        * platform/chromium-win/fast/html/details-remove-summary-1-expected.png: Added.
        * platform/chromium-win/fast/html/details-remove-summary-1-expected.txt: Added.
        * platform/chromium-win/fast/html/details-remove-summary-2-and-click-expected.checksum: Added.
        * platform/chromium-win/fast/html/details-remove-summary-2-and-click-expected.png: Added.
        * platform/chromium-win/fast/html/details-remove-summary-2-and-click-expected.txt: Added.
        * platform/chromium-win/fast/html/details-remove-summary-2-expected.checksum: Added.
        * platform/chromium-win/fast/html/details-remove-summary-2-expected.png: Added.
        * platform/chromium-win/fast/html/details-remove-summary-2-expected.txt: Added.
        * platform/chromium-win/fast/html/details-remove-summary-3-and-click-expected.checksum: Added.
        * platform/chromium-win/fast/html/details-remove-summary-3-and-click-expected.png: Added.
        * platform/chromium-win/fast/html/details-remove-summary-3-and-click-expected.txt: Added.
        * platform/chromium-win/fast/html/details-remove-summary-3-expected.checksum: Added.
        * platform/chromium-win/fast/html/details-remove-summary-3-expected.png: Added.
        * platform/chromium-win/fast/html/details-remove-summary-3-expected.txt: Added.
        * platform/chromium-win/fast/html/details-remove-summary-4-and-click-expected.checksum: Added.
        * platform/chromium-win/fast/html/details-remove-summary-4-and-click-expected.png: Added.
        * platform/chromium-win/fast/html/details-remove-summary-4-and-click-expected.txt: Added.
        * platform/chromium-win/fast/html/details-remove-summary-4-expected.checksum: Added.
        * platform/chromium-win/fast/html/details-remove-summary-4-expected.png: Added.
        * platform/chromium-win/fast/html/details-remove-summary-4-expected.txt: Added.
        * platform/chromium-win/fast/html/details-remove-summary-5-and-click-expected.checksum: Added.
        * platform/chromium-win/fast/html/details-remove-summary-5-and-click-expected.png: Added.
        * platform/chromium-win/fast/html/details-remove-summary-5-and-click-expected.txt: Added.
        * platform/chromium-win/fast/html/details-remove-summary-5-expected.checksum: Added.
        * platform/chromium-win/fast/html/details-remove-summary-5-expected.png: Added.
        * platform/chromium-win/fast/html/details-remove-summary-5-expected.txt: Added.
        * platform/chromium-win/fast/html/details-remove-summary-6-and-click-expected.checksum: Added.
        * platform/chromium-win/fast/html/details-remove-summary-6-and-click-expected.png: Added.
        * platform/chromium-win/fast/html/details-remove-summary-6-and-click-expected.txt: Added.
        * platform/chromium-win/fast/html/details-remove-summary-6-expected.checksum: Added.
        * platform/chromium-win/fast/html/details-remove-summary-6-expected.png: Added.
        * platform/chromium-win/fast/html/details-remove-summary-6-expected.txt: Added.
        * platform/chromium-win/fast/html/details-writing-mode-expected.checksum: Added.
        * platform/chromium-win/fast/html/details-writing-mode-expected.png: Added.
        * platform/chromium-win/fast/html/details-writing-mode-expected.txt: Added.
        * platform/chromium-win/fast/multicol/span/clone-anonymous-block-non-inline-child-crash-expected.txt:
        * platform/chromium/test_expectations.txt:

2011-03-12  Jer Noble  <jer.noble@apple.com>

        Reviewed by Eric Carlson.

        FullScreen: Handle entering full screen security restrictions
        https://bugs.webkit.org/show_bug.cgi?id=56264

        * fullscreen/full-screen-css.html: Use runWithKeyDown.
        * fullscreen/full-screen-remove-ancestor.html: Ditto.
        * fullscreen/full-screen-remove.html: Ditto.
        * fullscreen/full-screen-request.html: Ditto.
        * fullscreen/full-screen-twice.html: Ditto.
        * fullscreen/full-screen-test.js:
        * fullscreen/full-screen-iframe-allowed-expected.txt: Added.
        * fullscreen/full-screen-iframe-allowed.html: Added.
        * fullscreen/full-screen-iframe-not-allowed-expected.txt: Added.
        * fullscreen/full-screen-iframe-not-allowed.html: Added.
        (runWithKeyDown): Added.  Wraps the command in a keyDown/keyPress
            listener.
        * platform/mac-wk2/Skipped: Added new tests to skipped list.
        * platform/qt-wk2/Skipped: Ditto.

2011-02-28  Luiz Agostini  <luiz.agostini@openbossa.org>

        Reviewed by Dave Hyatt.

        HTML5 <details> and <summary>: rendering
        https://bugs.webkit.org/show_bug.cgi?id=51071

        * fast/html/details-add-summary-1-and-click.html: Added.
        * fast/html/details-add-summary-1.html: Added.
        * fast/html/details-add-summary-10-and-click.html: Added.
        * fast/html/details-add-summary-10.html: Added.
        * fast/html/details-add-summary-2-and-click.html: Added.
        * fast/html/details-add-summary-2.html: Added.
        * fast/html/details-add-summary-3-and-click.html: Added.
        * fast/html/details-add-summary-3.html: Added.
        * fast/html/details-add-summary-4-and-click.html: Added.
        * fast/html/details-add-summary-4.html: Added.
        * fast/html/details-add-summary-5-and-click.html: Added.
        * fast/html/details-add-summary-5.html: Added.
        * fast/html/details-add-summary-6-and-click.html: Added.
        * fast/html/details-add-summary-6.html: Added.
        * fast/html/details-add-summary-7-and-click.html: Added.
        * fast/html/details-add-summary-7.html: Added.
        * fast/html/details-add-summary-8-and-click.html: Added.
        * fast/html/details-add-summary-8.html: Added.
        * fast/html/details-add-summary-9-and-click.html: Added.
        * fast/html/details-add-summary-9.html: Added.
        * fast/html/details-mouse-click-expected.txt: Added.
        * fast/html/details-mouse-click.html: Added.
        * fast/html/details-no-summary1.html: Added.
        * fast/html/details-no-summary2.html: Added.
        * fast/html/details-no-summary3.html: Added.
        * fast/html/details-no-summary4.html: Added.
        * fast/html/details-open-javascript.html: Added.
        * fast/html/details-open1.html: Added.
        * fast/html/details-open2.html: Added.
        * fast/html/details-open3.html: Added.
        * fast/html/details-open4.html: Added.
        * fast/html/details-open5.html: Added.
        * fast/html/details-open6.html: Added.
        * fast/html/details-position.html: Added.
        * fast/html/details-remove-summary-1-and-click.html: Added.
        * fast/html/details-remove-summary-1.html: Added.
        * fast/html/details-remove-summary-2-and-click.html: Added.
        * fast/html/details-remove-summary-2.html: Added.
        * fast/html/details-remove-summary-3-and-click.html: Added.
        * fast/html/details-remove-summary-3.html: Added.
        * fast/html/details-remove-summary-4-and-click.html: Added.
        * fast/html/details-remove-summary-4.html: Added.
        * fast/html/details-remove-summary-5-and-click.html: Added.
        * fast/html/details-remove-summary-5.html: Added.
        * fast/html/details-remove-summary-6-and-click.html: Added.
        * fast/html/details-remove-summary-6.html: Added.
        * fast/html/details-writing-mode.html: Added.
        * platform/qt/fast/html/details-add-summary-1-and-click-expected.txt: Added.
        * platform/qt/fast/html/details-add-summary-1-expected.txt: Added.
        * platform/qt/fast/html/details-add-summary-10-and-click-expected.txt: Added.
        * platform/qt/fast/html/details-add-summary-10-expected.txt: Added.
        * platform/qt/fast/html/details-add-summary-2-and-click-expected.txt: Added.
        * platform/qt/fast/html/details-add-summary-2-expected.txt: Added.
        * platform/qt/fast/html/details-add-summary-3-and-click-expected.txt: Added.
        * platform/qt/fast/html/details-add-summary-3-expected.txt: Added.
        * platform/qt/fast/html/details-add-summary-4-and-click-expected.txt: Added.
        * platform/qt/fast/html/details-add-summary-4-expected.txt: Added.
        * platform/qt/fast/html/details-add-summary-5-and-click-expected.txt: Added.
        * platform/qt/fast/html/details-add-summary-5-expected.txt: Added.
        * platform/qt/fast/html/details-add-summary-6-and-click-expected.txt: Added.
        * platform/qt/fast/html/details-add-summary-6-expected.txt: Added.
        * platform/qt/fast/html/details-add-summary-7-and-click-expected.txt: Added.
        * platform/qt/fast/html/details-add-summary-7-expected.txt: Added.
        * platform/qt/fast/html/details-add-summary-8-and-click-expected.txt: Added.
        * platform/qt/fast/html/details-add-summary-8-expected.txt: Added.
        * platform/qt/fast/html/details-add-summary-9-and-click-expected.txt: Added.
        * platform/qt/fast/html/details-add-summary-9-expected.txt: Added.
        * platform/qt/fast/html/details-no-summary1-expected.txt: Added.
        * platform/qt/fast/html/details-no-summary2-expected.txt: Added.
        * platform/qt/fast/html/details-no-summary3-expected.txt: Added.
        * platform/qt/fast/html/details-no-summary4-expected.txt: Added.
        * platform/qt/fast/html/details-open-javascript-expected.txt: Added.
        * platform/qt/fast/html/details-open1-expected.txt: Added.
        * platform/qt/fast/html/details-open2-expected.txt: Added.
        * platform/qt/fast/html/details-open3-expected.txt: Added.
        * platform/qt/fast/html/details-open4-expected.txt: Added.
        * platform/qt/fast/html/details-open5-expected.txt: Added.
        * platform/qt/fast/html/details-open6-expected.txt: Added.
        * platform/qt/fast/html/details-remove-summary-1-and-click-expected.txt: Added.
        * platform/qt/fast/html/details-remove-summary-1-expected.txt: Added.
        * platform/qt/fast/html/details-remove-summary-2-and-click-expected.txt: Added.
        * platform/qt/fast/html/details-remove-summary-2-expected.txt: Added.
        * platform/qt/fast/html/details-remove-summary-3-and-click-expected.txt: Added.
        * platform/qt/fast/html/details-remove-summary-3-expected.txt: Added.
        * platform/qt/fast/html/details-remove-summary-4-and-click-expected.txt: Added.
        * platform/qt/fast/html/details-remove-summary-4-expected.txt: Added.
        * platform/qt/fast/html/details-remove-summary-5-and-click-expected.txt: Added.
        * platform/qt/fast/html/details-remove-summary-5-expected.txt: Added.
        * platform/qt/fast/html/details-remove-summary-6-and-click-expected.txt: Added.
        * platform/qt/fast/html/details-remove-summary-6-expected.txt: Added.
        * platform/qt/fast/html/details-writing-mode-expected.txt: Added.
        * platform/qt/fast/multicol/span/clone-anonymous-block-non-inline-child-crash-expected.txt:

2011-03-14  Sheriff Bot  <webkit.review.bot@gmail.com>

        Unreviewed, rolling out r81026.
        http://trac.webkit.org/changeset/81026
        https://bugs.webkit.org/show_bug.cgi?id=56313

        Breaks gtk 64-bit tests (Requested by podivilov on #webkit).

        * inspector/debugger/xhr-breakpoints-expected.txt: Removed.
        * inspector/debugger/xhr-breakpoints.html: Removed.
        * platform/gtk/Skipped:
        * platform/mac/Skipped:
        * platform/qt/Skipped:
        * platform/win/Skipped:

2011-03-14  Mikhail Naganov  <mnaganov@chromium.org>

        Reviewed by Pavel Feldman.

        Web Inspector: Factor out binary search algo from the insertionIndexForObjectInListSortedByFunction function.
        https://bugs.webkit.org/show_bug.cgi?id=56312

        * inspector/utilities-expected.txt: Added.
        * inspector/utilities.html: Added.

2011-03-12  Pavel Podivilov  <podivilov@chromium.org>

        Reviewed by Yury Semikhatsky.

        Web Inspector: re-implement xhr breakpoints.
        https://bugs.webkit.org/show_bug.cgi?id=56252

        * inspector/debugger/xhr-breakpoints-expected.txt: Added.
        * inspector/debugger/xhr-breakpoints.html: Added.
        * platform/gtk/Skipped:
        * platform/mac/Skipped:
        * platform/qt/Skipped:
        * platform/win/Skipped:

2011-03-14  Pavel Podivilov  <podivilov@chromium.org>

        Reviewed by Pavel Feldman.

        Web Inspector: move breakpoints restoring to debugger presentation model.
        https://bugs.webkit.org/show_bug.cgi?id=56123

        * http/tests/inspector/debugger-test.js:
        (initialize_DebuggerTest.InspectorTest.completeDebuggerTest.disableDebugger):

2011-03-14  Pavel Feldman  <pfeldman@chromium.org>

        Reviewed by Yury Semikhatsky.

        Web Inspector: don't use innerText, use textContent instead.
        https://bugs.webkit.org/show_bug.cgi?id=56307

        * inspector/elements/edit-dom-actions-expected.txt:
        * inspector/elements/edit-dom-actions.html:
        * inspector/extensions/extensions-audits-expected.txt:

2011-03-10  Alexander Pavlov  <apavlov@chromium.org>

        Reviewed by Pavel Feldman.

        Web Inspector: Optimize backend-frontend data transfer volume for CSS styles
        https://bugs.webkit.org/show_bug.cgi?id=56111

        * inspector/styles/styles-new-API.html:
        * inspector/styles/styles-source-offsets.html:

2011-03-14  John Knottenbelt  <jknotten@chromium.org>

        Reviewed by Steve Block.

        Detach Geolocation from Frame when Page destroyed.
        https://bugs.webkit.org/show_bug.cgi?id=52877

        Ensure that all geolocation permission requests are cancelled
        when the page is detached from its frame.

        Fix fast/dom/Geolocation/window-close-popup.html to ignore position error
        generated on watch when window is closed.

        * fast/dom/Geolocation/page-reload-cancel-permission-requests-expected.txt: Added.
        * fast/dom/Geolocation/page-reload-cancel-permission-requests.html: Added.
        * fast/dom/Geolocation/resources/page-reload-cancel-permission-requests-inner.html: Added.
        * fast/dom/Geolocation/script-tests/page-reload-cancel-permission-requests.js: Added.
        * platform/gtk/Skipped:
        * platform/mac/Skipped:
        * platform/qt-wk2/Skipped:

2011-03-14  Alejandro G. Castro  <alex@igalia.com>

        Rebaseline GTK+ tests after r80996.

        * platform/gtk/fast/text/soft-hyphen-2-expected.txt:
        * platform/gtk/fast/text/soft-hyphen-4-expected.checksum: Added.
        * platform/gtk/fast/text/soft-hyphen-4-expected.png: Added.
        * platform/gtk/fast/text/soft-hyphen-4-expected.txt: Added.

2011-03-14  John Knottenbelt  <jknotten@chromium.org>

        Reviewed by Steve Block.

        Fix flaky layout test: fast/dom/Geolocation/window-close-crash.html
        https://bugs.webkit.org/show_bug.cgi?id=56202

        By testing for geolocation watch errors, the test tests more than
        it should, which can cause a flaky result as demonstrated by
        https://bugs.webkit.org/show_bug.cgi?id=56126 .

        * fast/dom/Geolocation/resources/window-close-popup.html:
        * fast/dom/Geolocation/script-tests/window-close-crash.js:

2011-03-14  Alejandro G. Castro  <alex@igalia.com>

        Update more expectations after r80857.

        * platform/gtk/fast/layers/video-layer-expected.txt:

2011-03-14  David Levin  <levin@chromium.org>

        Move the crash result and the bug to the debug line for the test (instead of release)
        since that is where the crash occurs.

        * platform/chromium/test_expectations.txt:

2011-03-14  Pavel Feldman  <pfeldman@chromium.org>

        Not reviewed: remove the flaky part of the new inspector test for now.

        * inspector/elements/edit-dom-actions-expected.txt:
        * inspector/elements/edit-dom-actions.html:

2011-03-14  Pavel Feldman  <pfeldman@chromium.org>

        Reviewed by Yury Semikhatsky.

        Web Inspector: make DOMAgent event target, remove dependency from ElementsPanel.
        https://bugs.webkit.org/show_bug.cgi?id=56268

        * inspector/elements/elements-panel-search.html:
        * inspector/elements/mutate-unknown-node.html:

2011-03-14  Pavel Feldman  <pfeldman@chromium.org>

        Reviewed by Yury Semikhatsky.

        Web Inspector: add tests for edit dom operations.
        https://bugs.webkit.org/show_bug.cgi?id=56248

        * inspector/elements/edit-dom-actions-expected.txt: Added.
        * inspector/elements/edit-dom-actions.html: Added.

2011-03-14  David Levin  <levin@chromium.org>

        Fix typo TEXT vs TEST.

        * platform/chromium/test_expectations.txt:

2011-03-14  David Levin  <levin@chromium.org>

        Rebaseline some test due to r80996.
        Rearrange some expectations (from IMAGE to IMAGE_TEXT) due to r80996
        and add a few bugs which track the other failures.

        * platform/chromium-linux/fast/text/capitalize-boundaries-expected.txt:
        * platform/chromium-linux/fast/text/soft-hyphen-4-expected.checksum: Added.
        * platform/chromium-linux/fast/text/soft-hyphen-4-expected.png: Added.
        * platform/chromium/test_expectations.txt:

2011-03-13  Dan Bernstein  <mitz@apple.com>

        Reviewed by Sam Weinig.

        Include hyphenation information in text representation of render tree
        https://bugs.webkit.org/show_bug.cgi?id=56287

        * fast/text/soft-hyphen-4-expected.txt:
        * platform/mac-snowleopard/fast/text/hyphenate-limit-before-after-expected.txt:
        * platform/mac-snowleopard/fast/text/hyphenate-locale-expected.txt:
        * platform/mac/fast/text/basic/014-expected.txt:
        * platform/mac/fast/text/capitalize-boundaries-expected.txt:
        * platform/mac/fast/text/hyphenate-character-expected.txt:
        * platform/mac/fast/text/hyphenate-first-word-expected.txt:
        * platform/mac/fast/text/hyphens-expected.txt:
        * platform/mac/fast/text/midword-break-after-breakable-char-expected.txt:
        * platform/mac/fast/text/soft-hyphen-2-expected.txt:

2011-03-13  David Levin  <levin@chromium.org>

        Clean up overlapping test_expectation which I mistakenly added in my haste.

        * platform/chromium/test_expectations.txt:

2011-03-13  David Levin  <levin@chromium.org>

        Add more crashing tests to an existing bug about the same issue
        for Chromium Linux Debug. :(

        * platform/chromium/test_expectations.txt:

2011-03-13  David Levin  <levin@chromium.org>

        Add some test failures that I need to investigate further.
        Clean up a duplicate test expectation (default-timing-function.html ).
        Add a missing test expection for linux debug which was there for linux release (border-image-vertical-lr.html).

        * platform/chromium/test_expectations.txt:

2011-03-13  David Levin  <levin@chromium.org>

        Add more crashing tests to an existing bug about the same issue
        for Chromium Linux Debug.

        * platform/chromium/test_expectations.txt:

2011-03-13  Dan Bernstein  <mitz@apple.com>

        Updated expected results after r80982.

        * platform/mac-snowleopard/fast/text/hyphenate-limit-before-after-expected.txt:

2011-03-13  David Sosby  <dsosby@rim.com>

        Reviewed and tweaked by Dan Bernstein.

        REGRESSION: Soft hyphen is not always rendered
        https://bugs.webkit.org/show_bug.cgi?id=56017

        Adding new test that verifies soft hyphen is rendered
        when it is the last breakable point in a line.

        * fast/text/soft-hyphen-4-expected.checksum: Added.
        * fast/text/soft-hyphen-4-expected.png: Added.
        * fast/text/soft-hyphen-4-expected.txt: Added.
        * fast/text/soft-hyphen-4.html: Added.

2011-03-13  David Levin  <levin@chromium.org>

        Update some baselines due to r80868.
        Also, add MAC to a failure line where I should have put it previously.

        * platform/chromium-mac/fast/backgrounds/animated-svg-as-background-expected.checksum: Added.
        * platform/chromium-mac/fast/backgrounds/animated-svg-as-background-expected.png: Added.
        * platform/chromium-mac/fast/backgrounds/animated-svg-as-mask-expected.checksum: Added.
        * platform/chromium-mac/fast/backgrounds/animated-svg-as-mask-expected.png: Added.
        * platform/chromium/test_expectations.txt:

2011-03-13  David Levin  <levin@chromium.org>

        Add one more failure which is related to change in this range:
          http://trac.webkit.org/log/?verbose=on&rev=80866&stop_rev=80860
        that I haven't been able to narrow down yet.

        * platform/chromium/test_expectations.txt:

2011-03-13  David Levin  <levin@chromium.org>

        Add more crashing tests to an existing bug about the same issue
        for Chromium Linux Debug.

        * platform/chromium/test_expectations.txt:

2011-03-13  David Levin  <levin@chromium.org>

        Fix the expectation to refer to transitions/default-timing-function.html
        instead of bug1318. My change log description also made the same mistake.

        * platform/chromium/test_expectations.txt:

2011-03-13  David Levin  <levin@chromium.org>

        Sort some test expectations into a better place. Move a linux debug
        crash to be near the other instances of it.

        Remove fast/text/font-size-zero.html as it appears to be passing consistently.

        Add the expectation for bug1318.html due to r80806 changing its output in a way
        that looks less optimal than it did before.

        * platform/chromium/test_expectations.txt:

2011-03-13  David Levin  <levin@chromium.org>

        Add some more crashing tests to an existing bug about the same issue
        for Chromium Linux Debug.

        * platform/chromium/test_expectations.txt:

2011-03-13  Rob Buis  <rwlbuis@gmail.com>

        Reviewed by Dave Hyatt.

        REGRESSION (r61383): Navigation menu laid out incorrectly on aboardtheworld.com
        https://bugs.webkit.org/show_bug.cgi?id=53470

        Test handling of !important and duplicate properties in a style rule.

        * fast/css/duplicate-property-in-rule-important-expected.txt: Added.
        * fast/css/duplicate-property-in-rule-important.html: Added.

2011-03-13  David Levin  <levin@chromium.org>

        Add expectation (and bug) for test that has failed with an image
        mismatch ever since it was added in r80867.

        * platform/chromium/test_expectations.txt:

2011-03-13  David Levin  <levin@chromium.org>

        Update test expections due to the OSX specific ex size change done in r80755.

        * platform/chromium-mac/fast/lists/008-expected.checksum: Added.
        * platform/chromium-mac/fast/lists/008-expected.png: Added.
        * platform/chromium-mac/fast/media/mq-relative-constraints-08-expected.checksum: Added.
        * platform/chromium-mac/fast/media/mq-relative-constraints-08-expected.png: Added.
        * platform/chromium-mac/fast/replaced/width100percent-checkbox-expected.checksum: Added.
        * platform/chromium-mac/fast/replaced/width100percent-checkbox-expected.png: Added.
        * platform/chromium-mac/fast/replaced/width100percent-radio-expected.checksum: Added.
        * platform/chromium-mac/fast/replaced/width100percent-radio-expected.png: Added.
        * platform/chromium-mac/fast/text/whitespace/pre-wrap-spaces-after-newline-expected.checksum: Added.
        * platform/chromium-mac/fast/text/whitespace/pre-wrap-spaces-after-newline-expected.png: Added.
        * platform/chromium-mac/tables/mozilla/bugs/bug1318-expected.checksum:
        * platform/chromium-mac/tables/mozilla/bugs/bug1318-expected.png:
        * platform/chromium-mac/tables/mozilla/bugs/bug4527-expected.checksum:
        * platform/chromium-mac/tables/mozilla/bugs/bug4527-expected.png:

2011-03-13  David Levin  <levin@chromium.org>

        Fix test expectations due to bad update:
          r80820 which limited to win/mac when it still regularly fails on Linux
          and it made the test fail with the expectation IMAGE instead of IMAGE+TEXT
          as well as occaisionally pass.

        * platform/chromium/test_expectations.txt:

2011-03-13  David Levin  <levin@chromium.org>

        Added the following expectations:
          fast/backgrounds/background-position-parsing.html new test in r80868
          fast/css-generated-content/table-row-before-after.html new test in r80871
          fast/table/dynamic-descendant-percentage-height.html new test in r80878

        Updated test_expectation to cover a failure due to a missing layout test feature
        and added an appropriate bug.

        * platform/chromium-linux/fast/backgrounds/background-position-parsing-expected.checksum: Added.
        * platform/chromium-linux/fast/backgrounds/background-position-parsing-expected.png: Added.
        * platform/chromium-linux/fast/css-generated-content/table-row-before-after-expected.checksum: Added.
        * platform/chromium-linux/fast/css-generated-content/table-row-before-after-expected.png: Added.
        * platform/chromium-linux/fast/table/dynamic-descendant-percentage-height-expected.checksum: Added.
        * platform/chromium-linux/fast/table/dynamic-descendant-percentage-height-expected.png: Added.
        * platform/chromium-mac/fast/backgrounds/background-position-parsing-expected.checksum: Added.
        * platform/chromium-mac/fast/backgrounds/background-position-parsing-expected.png: Added.
        * platform/chromium-mac/fast/css-generated-content/table-row-before-after-expected.checksum: Added.
        * platform/chromium-mac/fast/css-generated-content/table-row-before-after-expected.png: Added.
        * platform/chromium-mac/fast/table/dynamic-descendant-percentage-height-expected.checksum: Added.
        * platform/chromium-mac/fast/table/dynamic-descendant-percentage-height-expected.png: Added.
        * platform/chromium-win/fast/backgrounds/background-position-parsing-expected.checksum: Added.
        * platform/chromium-win/fast/backgrounds/background-position-parsing-expected.png: Added.
        * platform/chromium-win/fast/backgrounds/background-position-parsing-expected.txt: Added.
        * platform/chromium-win/fast/css-generated-content/table-row-before-after-expected.checksum: Added.
        * platform/chromium-win/fast/css-generated-content/table-row-before-after-expected.png: Added.
        * platform/chromium-win/fast/css-generated-content/table-row-before-after-expected.txt: Added.
        * platform/chromium-win/fast/table/dynamic-descendant-percentage-height-expected.checksum: Added.
        * platform/chromium-win/fast/table/dynamic-descendant-percentage-height-expected.png: Added.
        * platform/chromium-win/fast/table/dynamic-descendant-percentage-height-expected.txt: Added.
        * platform/chromium/test_expectations.txt:

2011-03-13  David Levin  <levin@chromium.org>

        Update test results due to r80755. All of these tests started failing
        on that check in and were given new baselines in that check in.

        * platform/chromium-mac/css1/text_properties/text_indent-expected.checksum: Added.
        * platform/chromium-mac/css1/text_properties/text_indent-expected.png: Added.
        * platform/chromium-mac/css1/units/length_units-expected.checksum: Added.
        * platform/chromium-mac/css1/units/length_units-expected.png: Added.
        * platform/chromium-mac/css2.1/t040302-c61-ex-len-00-b-a-expected.checksum: Added.
        * platform/chromium-mac/css2.1/t040302-c61-ex-len-00-b-a-expected.png: Added.
        * platform/chromium-mac/css2.1/t040302-c61-rel-len-00-b-ag-expected.checksum: Added.
        * platform/chromium-mac/css2.1/t040302-c61-rel-len-00-b-ag-expected.png: Added.
        * platform/chromium-mac/css2.1/t1008-c44-ln-box-02-d-ag-expected.checksum: Added.
        * platform/chromium-mac/css2.1/t1008-c44-ln-box-02-d-ag-expected.png: Added.
        * platform/chromium-mac/css2.1/t100801-c544-valgn-01-d-ag-expected.checksum: Added.
        * platform/chromium-mac/css2.1/t100801-c544-valgn-01-d-ag-expected.png: Added.
        * platform/chromium-mac/css2.1/t100801-c544-valgn-03-d-agi-expected.checksum:
        * platform/chromium-mac/css2.1/t100801-c544-valgn-03-d-agi-expected.png: Added.
        * platform/chromium-mac/css2.1/t100801-c548-ln-ht-02-b-ag-expected.checksum: Added.
        * platform/chromium-mac/css2.1/t100801-c548-ln-ht-02-b-ag-expected.png: Added.
        * platform/chromium-mac/css2.1/t1507-c526-font-sz-02-b-a-expected.checksum: Added.
        * platform/chromium-mac/css2.1/t1507-c526-font-sz-02-b-a-expected.png: Added.
        * platform/chromium-mac/css2.1/t1601-c547-indent-00-b-a-expected.checksum: Added.
        * platform/chromium-mac/css2.1/t1601-c547-indent-00-b-a-expected.png: Added.
        * platform/chromium-mac/css2.1/t1604-c541-word-sp-00-b-a-expected.checksum: Added.
        * platform/chromium-mac/css2.1/t1604-c541-word-sp-00-b-a-expected.png: Added.
        * platform/chromium-mac/css2.1/t1604-c542-letter-sp-00-b-a-expected.checksum: Added.
        * platform/chromium-mac/css2.1/t1604-c542-letter-sp-00-b-a-expected.png: Added.
        * platform/chromium-mac/editing/selection/caret-ltr-2-expected.checksum:
        * platform/chromium-mac/editing/selection/caret-ltr-2-expected.png:
        * platform/chromium-mac/editing/selection/caret-ltr-2-left-expected.checksum:
        * platform/chromium-mac/editing/selection/caret-ltr-2-left-expected.png:
        * platform/chromium-mac/editing/selection/caret-ltr-expected.checksum:
        * platform/chromium-mac/editing/selection/caret-ltr-expected.png:
        * platform/chromium-mac/editing/selection/caret-ltr-right-expected.checksum:
        * platform/chromium-mac/editing/selection/caret-ltr-right-expected.png:
        * platform/chromium-mac/editing/selection/caret-rtl-2-expected.checksum: Added.
        * platform/chromium-mac/editing/selection/caret-rtl-2-expected.png: Added.
        * platform/chromium-mac/editing/selection/caret-rtl-2-left-expected.checksum: Added.
        * platform/chromium-mac/editing/selection/caret-rtl-2-left-expected.png: Added.
        * platform/chromium-mac/editing/selection/caret-rtl-expected.checksum: Added.
        * platform/chromium-mac/editing/selection/caret-rtl-expected.png: Added.
        * platform/chromium-mac/editing/selection/caret-rtl-right-expected.checksum: Added.
        * platform/chromium-mac/editing/selection/caret-rtl-right-expected.png: Added.
        * platform/chromium-mac/fast/block/margin-collapse/103-expected.checksum:
        * platform/chromium-mac/fast/block/margin-collapse/103-expected.png:
        * platform/chromium-mac/fast/css/ex-after-font-variant-expected.checksum: Added.
        * platform/chromium-mac/fast/css/ex-after-font-variant-expected.png: Added.
        * platform/chromium-mac/fast/css/non-standard-checkbox-size-expected.checksum: Added.
        * platform/chromium-mac/fast/css/non-standard-checkbox-size-expected.png: Added.
        * platform/chromium-mac/fast/forms/minWidthPercent-expected.checksum: Added.
        * platform/chromium-mac/fast/forms/minWidthPercent-expected.png: Added.
        * platform/chromium-mac/fast/overflow/overflow-rtl-expected.checksum: Added.
        * platform/chromium-mac/fast/overflow/overflow-rtl-expected.png: Added.

2011-03-12  David Levin  <levin@chromium.org>

        Add results for newly added test in r80883.
        The differences appear to be very small in keep with the typical
        font drawing differences.

        * platform/chromium-linux/fast/multicol/scrolling-overflow-expected.checksum: Added.
        * platform/chromium-linux/fast/multicol/scrolling-overflow-expected.png: Added.
        * platform/chromium-mac/fast/multicol/scrolling-overflow-expected.checksum: Added.
        * platform/chromium-mac/fast/multicol/scrolling-overflow-expected.png: Added.
        * platform/chromium-win/fast/multicol/scrolling-overflow-expected.checksum: Added.
        * platform/chromium-win/fast/multicol/scrolling-overflow-expected.png: Added.
        * platform/chromium-win/fast/multicol/scrolling-overflow-expected.txt: Added.

2011-03-12  David Levin  <levin@chromium.org>

        r80743 updated the main baseline due to a jsc change.
        chromium isn't affected by the change.

        * platform/chromium/fast/js/regexp-caching-expected.txt: Added.
        chromium already had a specific baseline for this but it was in chromium-win,
        so I moved this result to the more general chromium direction.
        * platform/chromium-win/fast/js/regexp-caching-expected.txt: Removed.

2011-03-12  David Levin  <levin@chromium.org>

        Remove bad test_expectation updates.

        I fixed both of these already:
          http://trac.webkit.org/changeset/80911
          http://trac.webkit.org/changeset/80904
        so it is unclear why they were added.

        * platform/chromium/test_expectations.txt:

2011-03-12  Ilya Tikhonovsky  <loislo@chromium.org>

        Unreviewed. Update chromium expectations.

        * platform/chromium/test_expectations.txt:

2011-03-12  Ilya Tikhonovsky  <loislo@chromium.org>

        Unreviewed. Update chromium test expectations.

        * platform/chromium/test_expectations.txt:

2011-03-12  Ilya Tikhonovsky  <loislo@chromium.org>

        Unreviewed. Update chromium test expectations.

        * platform/chromium/test_expectations.txt:

2011-03-11  Pavel Feldman  <pfeldman@chromium.org>

        Reviewed by Yury Semikhatsky.

        Web Inspector: follow up to error reporting, fixing multiple regressions.
        https://bugs.webkit.org/show_bug.cgi?id=56243

        * inspector/elements/elements-panel-search.html:

2011-03-11  Anton D'Auria  <adauria@apple.com>

        Reviewed by Brady Eidson.

        Adding StorageTracker tests to skip lists of platforms that don't support it.
        https://bugs.webkit.org/show_bug.cgi?id=51878

        * platform/gtk/Skipped:
        * platform/qt/Skipped:
        * platform/win/Skipped:

2011-03-11  David Levin  <levin@chromium.org>

        Fix prototype-inheritance-expected result due to two changes:
          http://src.chromium.org/viewvc/chrome?view=rev&revision=77888 removed "google"
          http://trac.webkit.org/changeset/80846 added WebKitAnimation/WebKitAnimationList

        * platform/chromium/fast/dom/prototype-inheritance-expected.txt:

2011-03-11  David Levin  <levin@chromium.org>

        Update some baselines due to Skia update in Chromium.
        Filed http://crbug.com/75820 about the odd look of the results (but
        the odd look previously existed).

        * platform/chromium-linux/svg/css/composite-shadow-text-expected.checksum:
        * platform/chromium-linux/svg/css/composite-shadow-text-expected.png:
        * platform/chromium-win/svg/css/composite-shadow-text-expected.checksum:
        * platform/chromium-win/svg/css/composite-shadow-text-expected.png:

2010-3-11  Eric Uhrhane  <ericu@chromium.org>

        Reviewed by David Levin.

        Add tests for FileWriter
        https://bugs.webkit.org/show_bug.cgi?id=44363

        Fix small bugs in the utility functions and add setFileContents().
        * fast/filesystem/resources/file-writer-utils.js:

        Port the GC Blob test over to the new FileWriter utilities.
        * fast/filesystem/file-writer-gc-blob-expected.txt:
        * fast/filesystem/file-writer-gc-blob.html:
        * fast/filesystem/resources/file-writer-gc-blob.js: Copied from LayoutTests/fast/filesystem/file-writer-gc-blob.html.

        Add tests for progress events and overlapping writes [via seek].
        * fast/filesystem/file-writer-events-expected.txt: Added.
        * fast/filesystem/file-writer-events.html: Added.
        * fast/filesystem/resources/file-writer-events.js: Added.
        * fast/filesystem/file-writer-write-overlapped-expected.txt: Added.
        * fast/filesystem/file-writer-write-overlapped.html: Added.
        * fast/filesystem/resources/file-writer-write-overlapped.js: Added.

        Worker versions of the above tests.
        * fast/filesystem/workers/file-writer-events-expected.txt: Added.
        * fast/filesystem/workers/file-writer-events.html: Added.
        * fast/filesystem/workers/file-writer-gc-blob-expected.html: Added.
        * fast/filesystem/workers/file-writer-gc-blob.html: Added.
        * fast/filesystem/workers/file-writer-write-overlapped-expected.html: Added.
        * fast/filesystem/workers/file-writer-write-overlapped.html: Added.

2011-03-11  Anton D'Auria  <adauria@apple.com>

        Reviewed and landed by Brady Eidson.

        Add WebKit1 API to view and delete local storage
        https://bugs.webkit.org/show_bug.cgi?id=51878

        * platform/chromium/test_expectations.txt:
        * storage/domstorage/localstorage/storagetracker: Added.
        * storage/domstorage/localstorage/storagetracker/storage-tracker-1-prepare-expected.txt: Added.
        * storage/domstorage/localstorage/storagetracker/storage-tracker-1-prepare.html: Added.
        * storage/domstorage/localstorage/storagetracker/storage-tracker-2-create-expected.txt: Added.
        * storage/domstorage/localstorage/storagetracker/storage-tracker-2-create.html: Added.
        * storage/domstorage/localstorage/storagetracker/storage-tracker-3-delete-all-expected.txt: Added.
        * storage/domstorage/localstorage/storagetracker/storage-tracker-3-delete-all.html: Added.
        * storage/domstorage/localstorage/storagetracker/storage-tracker-4-create-expected.txt: Added.
        * storage/domstorage/localstorage/storagetracker/storage-tracker-4-create.html: Added.
        * storage/domstorage/localstorage/storagetracker/storage-tracker-5-delete-one-expected.txt: Added.
        * storage/domstorage/localstorage/storagetracker/storage-tracker-5-delete-one.html: Added.

2011-03-11  Jessie Berlin  <jberlin@apple.com>

        http/tests/websocket/tests/url-with-credential.html sometimes crashes beneath SocketStreamHandle::readStreamCallback on Windows
        https://bugs.webkit.org/show_bug.cgi?id=56185

        url-parsing.html appears to be causing the crashes in later tests.
        Skipping the url-parsing.html test and unskipping the url-with-credential.html test.

        Unreviewed.

        * platform/win/Skipped:

2011-03-11  Ryosuke Niwa  <rniwa@webkit.org>

        Reviewed by Tony Chang.

        drag-text-delay.html should be a dump as text test
        https://bugs.webkit.org/show_bug.cgi?id=56223

        Converted the test to a dump as text. Also reorganized the test code and added more descriptions.

        * editing/selection/drag-text-delay-expected.txt:
        * editing/selection/drag-text-delay.html:
        * platform/chromium-linux/editing/selection/drag-text-delay-expected.checksum: Removed.
        * platform/chromium-linux/editing/selection/drag-text-delay-expected.png: Removed.
        * platform/chromium-win/editing/selection/drag-text-delay-expected.checksum: Removed.
        * platform/chromium-win/editing/selection/drag-text-delay-expected.png: Removed.
        * platform/chromium-win/editing/selection/drag-text-delay-expected.txt: Removed.
        * platform/gtk/editing/selection/drag-text-delay-expected.checksum: Removed.
        * platform/gtk/editing/selection/drag-text-delay-expected.png: Removed.
        * platform/gtk/editing/selection/drag-text-delay-expected.txt: Removed.
        * platform/mac/editing/selection/drag-text-delay-expected.checksum: Removed.
        * platform/mac/editing/selection/drag-text-delay-expected.png: Removed.
        * platform/mac/editing/selection/drag-text-delay-expected.txt:
        * platform/win/editing/selection/drag-text-delay-expected.checksum: Removed.
        * platform/win/editing/selection/drag-text-delay-expected.png: Removed.
        * platform/win/editing/selection/drag-text-delay-expected.txt:

2011-03-11  Mihai Parparita  <mihaip@chromium.org>

        Chromium Mac expectations update. Rebaseline some more tests after
        r80582.

        * fast/repaint/text-emphasis-h-expected.checksum:
        * fast/repaint/text-emphasis-h-expected.png:
        * platform/chromium-mac/fast/repaint/text-emphasis-h-expected.txt: Removed.
        * platform/chromium-mac/fast/ruby/base-shorter-than-text-expected.checksum:
        * platform/chromium-mac/fast/ruby/base-shorter-than-text-expected.png:
        * platform/chromium-mac/fast/ruby/base-shorter-than-text-expected.txt: Added.
        * platform/chromium/test_expectations.txt:
        * platform/mac-leopard/fast/blockflow/vertical-baseline-alignment-expected.checksum:
        * platform/mac-leopard/fast/blockflow/vertical-baseline-alignment-expected.png:

2011-03-11  Mihai Parparita  <mihaip@chromium.org>

        Chromium Mac expectations update. Rebaseline some tests after r80582
        (those that already had chromium-mac-leopard baselines).

        * platform/chromium-mac-leopard/fast/blockflow/Kusa-Makura-background-canvas-expected.checksum:
        * platform/chromium-mac-leopard/fast/blockflow/Kusa-Makura-background-canvas-expected.png:
        * platform/chromium-mac-leopard/fast/blockflow/border-vertical-lr-expected.checksum:
        * platform/chromium-mac-leopard/fast/blockflow/border-vertical-lr-expected.png:
        * platform/chromium-mac-leopard/fast/blockflow/japanese-lr-selection-expected.checksum: Removed.
        * platform/chromium-mac-leopard/fast/blockflow/japanese-lr-selection-expected.png: Removed.
        * platform/chromium-mac-leopard/fast/blockflow/japanese-lr-text-expected.checksum:
        * platform/chromium-mac-leopard/fast/blockflow/japanese-lr-text-expected.png:
        * platform/chromium-mac-leopard/fast/blockflow/japanese-rl-selection-expected.checksum:
        * platform/chromium-mac-leopard/fast/blockflow/japanese-rl-selection-expected.png:
        * platform/chromium-mac-leopard/fast/blockflow/japanese-rl-text-expected.checksum:
        * platform/chromium-mac-leopard/fast/blockflow/japanese-rl-text-expected.png:
        * platform/chromium-mac-leopard/fast/blockflow/japanese-ruby-vertical-lr-expected.checksum:
        * platform/chromium-mac-leopard/fast/blockflow/japanese-ruby-vertical-lr-expected.png:
        * platform/chromium-mac-leopard/fast/blockflow/japanese-ruby-vertical-rl-expected.checksum:
        * platform/chromium-mac-leopard/fast/blockflow/japanese-ruby-vertical-rl-expected.png:
        * platform/chromium-mac-leopard/fast/blockflow/vertical-align-table-baseline-expected.checksum:
        * platform/chromium-mac-leopard/fast/blockflow/vertical-align-table-baseline-expected.png:
        * platform/chromium-mac-leopard/fast/blockflow/vertical-font-fallback-expected.checksum:
        * platform/chromium-mac-leopard/fast/blockflow/vertical-font-fallback-expected.png:
        * platform/chromium-mac-leopard/fast/repaint/japanese-rl-selection-clear-expected.checksum:
        * platform/chromium-mac-leopard/fast/repaint/japanese-rl-selection-clear-expected.png:
        * platform/chromium-mac-leopard/fast/repaint/japanese-rl-selection-repaint-expected.checksum:
        * platform/chromium-mac-leopard/fast/repaint/japanese-rl-selection-repaint-expected.png:
        * platform/chromium-mac-leopard/fast/repaint/repaint-across-writing-mode-boundary-expected.checksum:
        * platform/chromium-mac-leopard/fast/repaint/repaint-across-writing-mode-boundary-expected.png:
        * platform/chromium-mac-leopard/fast/text/international/text-combine-image-test-expected.checksum:
        * platform/chromium-mac-leopard/fast/text/international/text-combine-image-test-expected.png:
        * platform/chromium-mac-leopard/fast/text/international/text-combine-image-test-expected.txt:
        * platform/chromium-mac/fast/blockflow/japanese-lr-selection-expected.checksum: Removed.
        * platform/chromium-mac/fast/blockflow/japanese-lr-selection-expected.png: Removed.
        * platform/chromium/test_expectations.txt:
        * platform/mac-leopard/fast/blockflow/japanese-lr-selection-expected.checksum:
        * platform/mac-leopard/fast/blockflow/japanese-lr-selection-expected.png:

2011-03-11  David Hyatt  <hyatt@apple.com>

        Reviewed by Simon Fraser.

        https://bugs.webkit.org/show_bug.cgi?id=52987

        REGRESSION: Overflowing columns not repainted correctly

        Make sure to add in column overflow as visual overflow as well.  It was only propagating layout overflow, which is obviously not
        sufficient, since blocks paint their own columns.

        Added fast/multicol/scrolling-overflow.html

        * fast/multicol/scrolling-overflow.html: Added.
        * platform/mac/fast/multicol/scrolling-overflow-expected.checksum: Added.
        * platform/mac/fast/multicol/scrolling-overflow-expected.png: Added.
        * platform/mac/fast/multicol/scrolling-overflow-expected.txt: Added.

2011-03-11  Mihai Parparita  <mihaip@chromium.org>

        Mac and Chromium expectations update. Remove failing expectations for
        tests that no longer fail. Rebaseline fast/overflow/
        overflow-rtl-vertical.html and fast/lists/008-vertical.html after
        r80755.

        * platform/chromium/test_expectations.txt:
        * platform/mac/fast/lists/008-vertical-expected.checksum:
        * platform/mac/fast/lists/008-vertical-expected.png:
        * platform/mac/fast/overflow/overflow-rtl-vertical-expected.checksum:
        * platform/mac/fast/overflow/overflow-rtl-vertical-expected.png:

2011-03-11  Mihai Parparita  <mihaip@chromium.org>

        Update Chromium expectations. Remove some commented out lines and
        promote some expectatiosn from chromium-mac to mac-leopard, so that
        those tests pass on chromium Snow Leopard (and mac Leopard).

        * platform/chromium/test_expectations.txt:
        * platform/mac-leopard/fast/block/basic/percent-height-inside-anonymous-block-expected.checksum: Renamed from LayoutTests/platform/chromium-mac/fast/block/basic/percent-height-inside-anonymous-block-expected.checksum.
        * platform/mac-leopard/fast/block/basic/percent-height-inside-anonymous-block-expected.png: Renamed from LayoutTests/platform/chromium-mac/fast/block/basic/percent-height-inside-anonymous-block-expected.png.
        * platform/mac-leopard/fast/block/positioning/static-distance-with-positioned-ancestor-expected.checksum: Renamed from LayoutTests/platform/chromium-mac/fast/block/positioning/static-distance-with-positioned-ancestor-expected.checksum.
        * platform/mac-leopard/fast/block/positioning/static-distance-with-positioned-ancestor-expected.png: Renamed from LayoutTests/platform/chromium-mac/fast/block/positioning/static-distance-with-positioned-ancestor-expected.png.

2011-03-11  Andy Estes  <aestes@apple.com>

        Reviewed by David Hyatt.

        Table cells with dynamically added percentage height descendants do not
        grow in size if the table has already been laid out.
        https://bugs.webkit.org/show_bug.cgi?id=56174

        * fast/table/dynamic-descendant-percentage-height.html: Added.
        * platform/mac/fast/table/dynamic-descendant-percentage-height-expected.checksum: Added.
        * platform/mac/fast/table/dynamic-descendant-percentage-height-expected.png: Added.
        * platform/mac/fast/table/dynamic-descendant-percentage-height-expected.txt: Added.

2011-03-11  Dimitri Glazkov  <dglazkov@chromium.org>

        [GTK] Update expectations after r80857.
        https://bugs.webkit.org/show_bug.cgi?id=55972

        * platform/gtk/media/audio-controls-rendering-expected.txt:
        * platform/gtk/media/audio-repaint-expected.txt:
        * platform/gtk/media/controls-strict-expected.txt:
        * platform/gtk/media/controls-styling-expected.txt:
        * platform/gtk/media/controls-without-preload-expected.txt:
        * platform/gtk/media/media-document-audio-repaint-expected.txt:
        * platform/gtk/media/video-controls-rendering-expected.txt:
        * platform/gtk/media/video-empty-source-expected.txt:
        * platform/gtk/media/video-no-audio-expected.txt:
        * platform/gtk/media/video-volume-slider-expected.txt:
        * platform/gtk/media/video-zoom-controls-expected.txt:

2011-03-11  David Hyatt  <hyatt@apple.com>

        Reviewed by Dan Bernstein.

        https://bugs.webkit.org/show_bug.cgi?id=47206

        Table rows don't support ::before/::after.  Add support to RenderTableRow::styleDidChange so that ::before/::after content gets
        properly constructed.

        Added fast/css-generated-content/table-row-before-after.html

        * fast/css-generated-content/table-row-before-after.html: Added.
        * platform/mac/fast/css-generated-content/table-row-before-after-expected.checksum: Added.
        * platform/mac/fast/css-generated-content/table-row-before-after-expected.png: Added.
        * platform/mac/fast/css-generated-content/table-row-before-after-expected.txt: Added.

2011-03-11  David Hyatt  <hyatt@apple.com>

        Reviewed by Simon Fraser.

        https://bugs.webkit.org/show_bug.cgi?id=47159

        CSS2.1 failures in background position parsing.

        Rewrite background position component parsing to match the spec.  Our old parsing would allow "100% left" to be valid
        when it should not have.  Rename parseFillPositionXY to parseFillPositionComponent and pass in enough information for
        it to understand what the first component was.

        For individual property parsing using background-position-x/y, I added new functions that just handle that without
        worrying about the other component.

        In order to pass the CSS2.1 test, I also had to fix multiple background parsing.  The number of layers in multiple
        backgrounds is determined solely by the background-image property and not by any of the other properties.  cullEmptyLayers
        has been changed to always consider a layer empty if it has no image set, even if other properties are set.

        A number of layout tests had to be patched as they were invalid.  A couple of them relied on incorrect background-position
        parsing (e.g., "50 left") and another relied on incorrect multiple background parsing.  It's not clear if the computed style
        should actually include the additional values when no image is set though, so that should perhaps be the subject of a
        follow-up bug.

        Added fast/backgrounds/background-position-parsing.html

        * fast/backgrounds/background-position-1.html:
        * fast/backgrounds/background-position-parsing.html: Added.
        * fast/backgrounds/multiple-backgrounds-computed-style-expected.txt:
        * fast/backgrounds/repeat/parsing-background-repeat-expected.txt:
        * fast/backgrounds/repeat/script-tests/parsing-background-repeat.js:
        * fast/backgrounds/resources/diamond.png: Added.
        * fast/backgrounds/resources/ring.png: Added.
        * fast/backgrounds/script-tests/multiple-backgrounds-computed-style.js:
        * platform/mac/fast/backgrounds/animated-svg-as-background-expected.checksum:
        * platform/mac/fast/backgrounds/animated-svg-as-background-expected.png:
        * platform/mac/fast/backgrounds/animated-svg-as-mask-expected.checksum:
        * platform/mac/fast/backgrounds/animated-svg-as-mask-expected.png:
        * platform/mac/fast/backgrounds/background-position-parsing-expected.checksum: Added.
        * platform/mac/fast/backgrounds/background-position-parsing-expected.png: Added.
        * platform/mac/fast/backgrounds/background-position-parsing-expected.txt: Added.
        * platform/mac/fast/backgrounds/bgCompositeCopy-expected.png:
        * platform/mac/fast/backgrounds/repeat/noRepeatCorrectClip-expected.png:
        * platform/mac/fast/backgrounds/size/backgroundSize01-expected.png:
        * platform/mac/fast/backgrounds/size/backgroundSize03-expected.png:
        * platform/mac/fast/backgrounds/size/backgroundSize05-expected.png:
        * platform/mac/fast/backgrounds/size/backgroundSize06-expected.png:
        * platform/mac/fast/backgrounds/size/backgroundSize07-expected.png:
        * platform/mac/fast/backgrounds/size/backgroundSize08-expected.png:
        * platform/mac/fast/backgrounds/size/backgroundSize09-expected.png:
        * platform/mac/fast/backgrounds/size/backgroundSize10-expected.png:
        * platform/mac/fast/backgrounds/size/backgroundSize11-expected.png:
        * platform/mac/fast/backgrounds/size/backgroundSize12-expected.png:
        * platform/mac/fast/backgrounds/size/backgroundSize22-expected.checksum:
        * platform/mac/fast/backgrounds/size/backgroundSize22-expected.png:
        * platform/mac/fast/backgrounds/size/contain-and-cover-expected.checksum:
        * platform/mac/fast/backgrounds/size/contain-and-cover-expected.png:
        * platform/mac/fast/backgrounds/svg-as-background-4-expected.png:

2011-03-11  Vangelis Kokkevis  <vangelis@chromium.org>

        Reviewed by James Robinson.

        [chromium] Adding a test for rotated large layers.
        https://bugs.webkit.org/show_bug.cgi?id=55984

        * platform/chromium/compositing/huge-layer-rotated-expected.checksum: Added.
        * platform/chromium/compositing/huge-layer-rotated-expected.png: Added.
        * platform/chromium/compositing/huge-layer-rotated-expected.txt: Added.
        * platform/chromium/compositing/huge-layer-rotated.html: Added.

2011-03-08  Dimitri Glazkov  <dglazkov@chromium.org>

        Reviewed by Eric Carlson.

        Convert MediaControlTimeDisplayElement to use standard layout with a custom renderer.
        https://bugs.webkit.org/show_bug.cgi?id=55972

        Update test results, because they are now laying out timeline consistently.

        * media/audio-repaint-expected.txt: Updated.
        * platform/mac/media/audio-controls-rendering-expected.checksum: Ditto.
        * platform/mac/media/audio-controls-rendering-expected.png: Ditto.
        * platform/mac/media/audio-controls-rendering-expected.txt: Ditto.
        * platform/mac/media/audio-repaint-expected.checksum: Ditto.
        * platform/mac/media/audio-repaint-expected.png: Ditto.

2011-03-11  Adam Roben  <aroben@apple.com>

        Update Windows results after r80846

        * platform/win/fast/dom/Window/window-property-descriptors-expected.txt:
        * platform/win/fast/dom/prototype-inheritance-2-expected.txt:
        * platform/win/fast/dom/prototype-inheritance-expected.txt:
        * platform/win/fast/js/global-constructors-expected.txt:

2011-03-11  Adam Roben  <aroben@apple.com>

        Skip a crashing test on Windows

        The crash is tracked by <http://webkit.org/b/56185>.

        * platform/win/Skipped: Added http/tests/websocket/tests/url-with-credential.html. Grouped
        possibly-related websocket crashes.

2011-03-11  Adam Roben  <aroben@apple.com>

        Disable fast/text/large-text-composed-char-dos.html

        It is failing on multiple bots. The failure is tracked by <http://webkit.org/b/56140>.

        * fast/text/large-text-composed-char-dos.html-disabled: Renamed from LayoutTests/fast/text/large-text-composed-char-dos.html.

2011-03-11  Dean Jackson  <dino@apple.com>

        Reviewed by Simon Fraser and Chris Marrin.

        https://bugs.webkit.org/show_bug.cgi?id=54151
        Implement an API to play/pause/scrub animations

        This is Part 1. Adds the new WebKitAnimation and WebKitAnimationList
        APIs, exposed via Element.getWebKitAnimations(). This first pass
        is read-only. One new layout test that examines animation
        properties. Update existing layout tests for the new interfaces
        on Window.

        * animations/animation-api-1-expected.txt: Added.
        * animations/animation-api-1.html: Added.
        * fast/dom/Window/window-properties-expected.txt:
        * fast/dom/Window/window-property-descriptors-expected.txt:
        * fast/dom/prototype-inheritance-2-expected.txt:
        * fast/dom/prototype-inheritance-expected.txt:
        * fast/js/global-constructors-expected.txt:

2011-03-11  Ilya Tikhonovsky  <loislo@chromium.org>

        Reviewed by Yury Semikhatsky.

        Web Inspector: introduce error argument for all the callbacks on frontend.
        https://bugs.webkit.org/show_bug.cgi?id=56100

        * http/tests/inspector/extensions-test.js:
        (initialize_ExtensionsTest.InspectorTest.runExtensionTests):
        * http/tests/inspector/inspector-test.js:
        (initialize_InspectorTest.InspectorTest.evaluateInPage.mycallback):
        (initialize_InspectorTest.InspectorTest.evaluateInPage):
        * inspector/console/console-dir-global.html:
        * inspector/elements/dom-agent-query-selector.html:
        * inspector/protocol/console-agent-expected.txt:
        * inspector/protocol/console-agent.html:
        * inspector/protocol/runtime-agent-expected.txt:
        * inspector/protocol/runtime-agent.html:
        * inspector/report-protocol-errors-expected.txt:
        * inspector/report-protocol-errors.html:
        * inspector/styles/styles-new-API.html:
        * inspector/styles/styles-source-offsets.html:
        * inspector/timeline/timeline-test.js:
        (initialize_Timeline.InspectorTest.stopTimeline):

2011-03-11  Yury Semikhatsky  <yurys@chromium.org>

        Reviewed by Pavel Feldman.

        Web Inspector: split InjectedScriptHost into InjectedScriptManager and InjectedScriptHost
        https://bugs.webkit.org/show_bug.cgi?id=56173

        * inspector/protocol/console-agent-expected.txt:
        * inspector/protocol/console-agent.html:

2011-03-11  Sergio Villar Senin  <svillar@igalia.com>

        [GTK] JSC crashes in 32bit Release bots after r80743
        https://bugs.webkit.org/show_bug.cgi?id=56180

        Skipping a couple of tests until the original issue is fixed.

        * platform/gtk/Skipped:

2011-03-11  Sergio Villar Senin  <svillar@igalia.com>

        Added new GTK+ test expectations.

        * platform/gtk/fast/backgrounds/positioned-root-expected.checksum: Added.
        * platform/gtk/fast/backgrounds/positioned-root-expected.png: Added.
        * platform/gtk/fast/backgrounds/positioned-root-expected.txt: Added.
        * platform/gtk/fast/backgrounds/table-root-expected.checksum: Added.
        * platform/gtk/fast/backgrounds/table-root-expected.png: Added.
        * platform/gtk/fast/backgrounds/table-root-expected.txt: Added.
        * platform/gtk/fast/block/basic/percent-height-inside-anonymous-block-expected.checksum: Added.
        * platform/gtk/fast/block/basic/percent-height-inside-anonymous-block-expected.png: Added.
        * platform/gtk/fast/block/basic/percent-height-inside-anonymous-block-expected.txt: Added.
        * platform/gtk/fast/block/positioning/static-distance-with-positioned-ancestor-expected.checksum: Added.
        * platform/gtk/fast/block/positioning/static-distance-with-positioned-ancestor-expected.png: Added.
        * platform/gtk/fast/block/positioning/static-distance-with-positioned-ancestor-expected.txt: Added.
        * platform/gtk/fast/forms/input-appearance-spinbutton-layer-expected.checksum: Added.
        * platform/gtk/fast/forms/input-appearance-spinbutton-layer-expected.png: Added.
        * platform/gtk/fast/forms/input-appearance-spinbutton-layer-expected.txt: Added.

2011-03-11  Yury Semikhatsky  <yurys@chromium.org>

        Unreviewed. Roll out r80837.

        * inspector/protocol/console-agent-expected.txt:
        * inspector/protocol/console-agent.html:

2011-03-11  Andrey Kosyakov  <caseq@chromium.org>

        Unreviewied trivial fix. Leave default state of setMonitoringXHREnabled intact so it doesn't affect other tests.

        * inspector/report-API-errors.html:

2011-03-11  Yury Semikhatsky  <yurys@chromium.org>

        Reviewed by Pavel Feldman.

        Web Inspector: split InjectedScriptHost into InjectedScriptManager and InjectedScriptHost
        https://bugs.webkit.org/show_bug.cgi?id=56173

        * inspector/protocol/console-agent-expected.txt:
        * inspector/protocol/console-agent.html:

2011-03-11  Sergio Villar Senin  <svillar@igalia.com>

        Unreviewed.

        Skipping two test cases that are failing on GTK debug bots.

        * platform/gtk/Skipped:

2011-03-11  Andrey Kosyakov  <caseq@chromium.org>

        Reviewed by Pavel Feldman.

        Web Inspector: resource load cancellation is reported to console as an error
        https://bugs.webkit.org/show_bug.cgi?id=55764

        - mark interruptionForPolicyChangeError as cancellation
        - do not log resource cancelation as an error
        - always push resource to front-end before console message, so front-end can use resource info while formatting message.

        * http/tests/inspector/console-resource-errors-expected.txt:
        * http/tests/inspector/console-resource-errors.html: Added test for lack of console messages during policy change (at download)
        * http/tests/inspector/console-xhr-logging-expected.txt:
        * http/tests/inspector/console-xhr-logging.html: Added test for reporting of cross-origin XHR errors.
        * http/tests/inspector/resources/empty.zip: Added.

2011-03-11  Ilya Sherman  <isherman@chromium.org>

        Reviewed by Kent Tamura.

        [Chromium] missing HTMLInputElement::setValueForUser() to tests
        https://bugs.webkit.org/show_bug.cgi?id=55854

        * platform/chromium/test_expectations.txt: Removed onchange-setvalueforuser.html

2011-03-11  Philippe Normand  <pnormand@igalia.com>

        Unreviewed, skip
        tables/mozilla_expected_failures/marvin/table_overflow_dirty_reflow_tbody.html
        on GTK again after being unskipped by accident in r80738.

        * platform/gtk/Skipped:

2011-03-10  Emil A Eklund  <eae@chromium.org>

        Reviewed by Alexey Proskuryakov.

        The web colours palevioletred and mediumpurple are incorrect
        https://bugs.webkit.org/show_bug.cgi?id=46658

        Added test for named colors.

        * fast/css/named-colors-expected.txt: Added.
        * fast/css/named-colors.html: Added.

2011-03-10  Roland Steiner  <rolandsteiner@chromium.org>

        Unreviewed: update Chromium test expectations.

        * platform/chromium-linux/fast/block/basic/percent-height-inside-anonymous-block-expected.checksum: Added.
        * platform/chromium-linux/fast/block/basic/percent-height-inside-anonymous-block-expected.png: Added.
        * platform/chromium-linux/fast/block/positioning/static-distance-with-positioned-ancestor-expected.checksum: Added.
        * platform/chromium-linux/fast/block/positioning/static-distance-with-positioned-ancestor-expected.png: Added.
        * platform/chromium-mac/fast/block/basic/percent-height-inside-anonymous-block-expected.checksum: Added.
        * platform/chromium-mac/fast/block/basic/percent-height-inside-anonymous-block-expected.png: Added.
        * platform/chromium-mac/fast/block/positioning/static-distance-with-positioned-ancestor-expected.checksum: Added.
        * platform/chromium-mac/fast/block/positioning/static-distance-with-positioned-ancestor-expected.png: Added.
        * platform/chromium-mac/fast/js/kde/function_length-expected.txt: Removed.
        * platform/chromium-win/fast/block/basic/percent-height-inside-anonymous-block-expected.checksum: Added.
        * platform/chromium-win/fast/block/basic/percent-height-inside-anonymous-block-expected.png: Added.
        * platform/chromium-win/fast/block/basic/percent-height-inside-anonymous-block-expected.txt: Added.
        * platform/chromium-win/fast/block/positioning/static-distance-with-positioned-ancestor-expected.checksum: Added.
        * platform/chromium-win/fast/block/positioning/static-distance-with-positioned-ancestor-expected.png: Added.
        * platform/chromium-win/fast/block/positioning/static-distance-with-positioned-ancestor-expected.txt: Added.
        * platform/chromium-win/fast/js/kde/function_length-expected.txt: Removed.
        * platform/chromium/test_expectations.txt:

2011-03-10  Adam Barth  <abarth@webkit.org>

        Reviewed by Alexey Proskuryakov.

        document.compatMode is incorrect for javascript: protocol URLs in IFRAMEs
        https://bugs.webkit.org/show_bug.cgi?id=27845

        This bug was randomly fixed by the HTML5 parser.

        * fast/parser/javascript-url-compat-mode-expected.txt: Added.
        * fast/parser/javascript-url-compat-mode.html: Added.

2011-03-10  Ami Fischman  <fischman@google.com>

        Reviewed by David Levin.

        video-controls-in-media-document.html used to silently rely on
        timeupdate firing immediately upon playback start, and before any
        frames changed.  This was (unsurprisingly, in retrospect)
        super-brittle.  This change instead uses an explicit seek to put
        the video in a predictable state.  The expected.png change is only to
        change the "pause" button to "play" (which is part of what's
        required to have the video be in a predictable state for the pixel
        diff).  An equivalent rebaselining needs to happen for chromium
        mac & win.

        * media/video-controls-in-media-document.html:
        * platform/chromium/media/video-controls-in-media-document-expected.checksum:
        * platform/chromium/media/video-controls-in-media-document-expected.png:
        * platform/chromium/test_expectations.txt:

2011-03-10  Roland Steiner  <rolandsteiner@chromium.org>

        Unreviewed: tweak Chromium test_expectations.txt

        * platform/chromium/test_expectations.txt:

2011-03-10  Jeremy Moskovich  <jeremy@chromium.org>

        Reviewed by Darin Adler.

        Fix navigation menus on a bunch of sites in WebKit.
        https://bugs.webkit.org/show_bug.cgi?id=52535

        Add test to make sure that offsetLeft matches FF/IE for a relatively
        positioned TD and IFRAME elements.
        Testcase is a reduction from doula.co.il.

        * fast/block/positioning/offsetLeft-relative-iframe-expected.txt: Added.
        * fast/block/positioning/offsetLeft-relative-iframe.html: Added.
        * fast/block/positioning/offsetLeft-relative-td-expected.txt: Added.
        * fast/block/positioning/offsetLeft-relative-td.html: Added.

2011-03-10  Adam Barth  <abarth@webkit.org>

        Reviewed by Darin Adler.

        REGRESSION (r66428/r71892): Crash after assertion failure (!m_reachedTerminalState) in ResourceLoader::didCancel()
        https://bugs.webkit.org/show_bug.cgi?id=51357

        Test that we don't crash when calling close immedately after print.

        * printing/print-close-crash-expected.txt: Added.
        * printing/print-close-crash.html: Added.

2011-03-10  Emil A Eklund  <eae@chromium.org>

        Reviewed by Dimitri Glazkov.

        style.display affecting the initial selectedIndex value of a <select> when it's multiple attribute is set programatically
        https://bugs.webkit.org/show_bug.cgi?id=53860

        Add tests for selectedIndex when changing the multiple property on a select element.

        * fast/dom/HTMLSelectElement/change-multiple-preserve-selection-expected.txt: Added.
        * fast/dom/HTMLSelectElement/change-multiple-preserve-selection.html: Added.

2011-03-10  Rik Cabanier  <cabanier@gmail.com>

        Reviewed by Tony Gentilcore.

        Fix that allows fixed length values to be floating point
        https://bugs.webkit.org/show_bug.cgi?id=52699

        Transitions now return matrices in floating point. 2 of the transition tests were failing
        because they expected integer values.

        * transitions/matched-transform-functions.html:
        * transitions/retargetted-transition.html:

2011-03-10  Ryosuke Niwa  <rniwa@webkit.org>

        Added 3 http tests to Windows port's skipped list.
        Tracked by https://bugs.webkit.org/show_bug.cgi?id=56167

        * platform/win/Skipped:

2011-03-10  Alice Boxhall  <aboxhall@chromium.org>

        Reviewed by Dimitri Glazkov.

        NULL pointer crash when using :empty and :first-line pseudoclass selectors together
        https://bugs.webkit.org/show_bug.cgi?id=53316

        * fast/css/empty-first-line-crash-expected.txt: Added.
        * fast/css/empty-first-line-crash.html: Added.

2011-03-10  Martin Robinson  <mrobinson@igalia.com>

        Rebaseline a test which differs on the bots from my local machine.

        * platform/gtk/fast/forms/input-appearance-spinbutton-visibility-expected.txt: Update results.

2011-03-10  takano takumi  <takano@apple.com>

        Reviewed by David Hyatt.

        Crash in RenderCombineText::combineText when running fast/text/international/text-combine-parser-test.html on Windows with full page heap enabled
        https://bugs.webkit.org/show_bug.cgi?id=55069

        * platform/win/Skipped: Removed text-combine-parser-test.html

2011-03-10  Emil A Eklund  <eae@chromium.org>

        Reviewed by Darin Adler.

        Collection cache not reset when moving base node between documents
        https://bugs.webkit.org/show_bug.cgi?id=55446

        Add tests for accessing elements moved across documents using namedItem.

        * fast/dom/HTMLFormElement/invalid-form-field-expected.txt: Added.
        * fast/dom/HTMLFormElement/invalid-form-field.html: Added.
        * fast/dom/HTMLFormElement/move-option-between-documents-expected.txt: Added.
        * fast/dom/HTMLFormElement/move-option-between-documents.html: Added.
        * fast/dom/collection-nameditem-move-between-documents-expected.txt: Added.
        * fast/dom/collection-nameditem-move-between-documents.html: Added.

2011-03-10  Alexey Proskuryakov  <ap@apple.com>

        Reviewed by Dan Bernstein.

        Backspace deletes all non-BMP symbols at once, and then some
        https://bugs.webkit.org/show_bug.cgi?id=55971
        <rdar://problem/8725312>

        * platform/mac/editing/input/insert-delete-smp-symbol-expected.txt: Added.
        * platform/mac/editing/input/insert-delete-smp-symbol.html: Added.

2011-03-10  David Hyatt  <hyatt@apple.com>

        Reviewed by Simon Fraser.

        https://bugs.webkit.org/show_bug.cgi?id=47151

        Percentage heights should skip anonymous containing blocks when computing the used value.

        Added fast/block/basic/percentage-height-inside-anonymous-block.html

        * fast/block/basic/percent-height-inside-anonymous-block.html: Added.
        * platform/mac/fast/block/basic/percent-height-inside-anonymous-block-expected.checksum: Added.
        * platform/mac/fast/block/basic/percent-height-inside-anonymous-block-expected.png: Added.
        * platform/mac/fast/block/basic/percent-height-inside-anonymous-block-expected.txt: Added.

2011-01-25  Martin Robinson  <mrobinson@igalia.com>

        Reviewed by Xan Lopez.

        [GTK] Implement spin buttons for GTK+ 2.x
        https://bugs.webkit.org/show_bug.cgi?id=53098

        Unskip tests which are now passing with the spin button implementation.
        Add results for one test.

        * platform/gtk/Skipped: Unskip passing tests.
        * platform/gtk/fast/forms/input-appearance-spinbutton-disabled-readonly-expected.checksum: Added.
        * platform/gtk/fast/forms/input-appearance-spinbutton-disabled-readonly-expected.png: Added.
        * platform/gtk/fast/forms/input-appearance-spinbutton-disabled-readonly-expected.txt: Added.

2011-03-10  Levi Weintraub  <leviw@chromium.org>

        Reviewed by Ryosuke Niwa.

        InsertUnorderedList over a non-editable region and multiple lines enters an infinite loop
        https://bugs.webkit.org/show_bug.cgi?id=53409

        Avoiding crashes and infinite loops when listifying content with mixed-editability

        * editing/execCommand/insert-list-with-noneditable-content-expected.txt: Added.
        * editing/execCommand/insert-list-with-noneditable-content.html: Added.

2011-03-10  Berend-Jan Wever  <skylined@chromium.org>

        Reviewed by Darin Adler.

        Calling focus() on an area element not in a document should not cause a NULL ptr crash
        https://bugs.webkit.org/show_bug.cgi?id=54877

        * fast/dom/HTMLAreaElement: Added.
        * fast/dom/HTMLAreaElement/area-islink-focus-null-ptr-crash-expected.txt: Added.
        * fast/dom/HTMLAreaElement/area-islink-focus-null-ptr-crash.html: Added.

2011-03-10  Ryosuke Niwa  <rniwa@webkit.org>

        Windows rebaselines for r80755.

        * platform/win/editing/selection/caret-ltr-right-expected.txt:
        * platform/win/editing/selection/caret-rtl-2-left-expected.txt:
        * platform/win/editing/selection/caret-rtl-right-expected.txt:
        * platform/win/fast/forms/file-input-disabled-expected.txt:

2011-03-10  Xiyuan Xia  <xiyuan@chromium.org>

        Reviewed by Tony Chang.

        [Chromium] Fix default single selection select's popup background on chromium/linux
        https://bugs.webkit.org/show_bug.cgi?id=56023

        * fast/html/select-dropdown-consistent-background-color-expected.txt: Added.
        * fast/html/select-dropdown-consistent-background-color.html: Added.

2011-03-10  Kris Jordan  <krisjordan@gmail.com>

        Reviewed by Alexey Proskuryakov.

        Testing the improved Accept header as per bug 27267.
        https://bugs.webkit.org/show_bug.cgi?id=27267

        * http/tests/misc/xhtml-expected.txt: Tests against improved Accept header.

2011-03-10  Kent Tamura  <tkent@chromium.org>

        Reviewed by Dimitri Glazkov.

        Assertion fails by validating a form twice very quickly
        https://bugs.webkit.org/show_bug.cgi?id=56069

        * fast/forms/interactive-validation-assertion-by-validate-twice-expected.txt: Added.
        * fast/forms/interactive-validation-assertion-by-validate-twice.html: Added.
        * fast/forms/interactive-validation-attach-assertion.html: Remove unnecessary offsetLeft trick.
        * platform/gtk/Skipped:
        * platform/mac/Skipped:
        * platform/qt/Skipped:
        * platform/win/Skipped:

2011-03-10  Martin Robinson  <mrobinson@igalia.com>

        Unskipping some crashers on GTK+. These no longer crash locally and we'd
        like to figure out if they still crash on the bots. Move one flaky test
        to the appropriate section.

        * platform/gtk/Skipped: Unskip tests passing locally.

2011-03-10  David Hyatt  <hyatt@apple.com>

        Reviewed by Beth Dakin.

        https://bugs.webkit.org/show_bug.cgi?id=47143

        Static distance computation is wrong when an ancestor is also positioned.  We need to go up the container()
        chain (after initially starting with the parent()) when doing this computation, so that we properly skip
        intermediate boxes between two positioned blocks.

        Added fast/block/positioning/static-distance-with-positioned-ancestor.html.

        * fast/block/positioning/static-distance-with-positioned-ancestor.html: Added.
        * platform/mac/fast/block/positioning/static-distance-with-positioned-ancestor-expected.checksum: Added.
        * platform/mac/fast/block/positioning/static-distance-with-positioned-ancestor-expected.png: Added.
        * platform/mac/fast/block/positioning/static-distance-with-positioned-ancestor-expected.txt: Added.

2011-03-10  David Hyatt  <hyatt@apple.com>

        Reviewed by Simon Fraser.

        https://bugs.webkit.org/show_bug.cgi?id=47147

        Fix for repaint issues when the root element is a table and needs to paint a background that
        covers the entire canvas.  Remove paintRootBoxDecorations and replace with paintRootBoxFillLayers,
        so that it can be called only for fill layer painting.  Make tables and normal boxes both
        call this new method.  Fix the dirty check at the start of RenderTable paint to not happen if
        the table is the root of the document (this same check exists in RenderBlock painting already).

        * fast/backgrounds/positioned-root.html: Added.
        * fast/backgrounds/table-root.html: Added.
        * platform/mac/fast/backgrounds/positioned-root-expected.checksum: Added.
        * platform/mac/fast/backgrounds/positioned-root-expected.png: Added.
        * platform/mac/fast/backgrounds/positioned-root-expected.txt: Added.
        * platform/mac/fast/backgrounds/table-root-expected.checksum: Added.
        * platform/mac/fast/backgrounds/table-root-expected.png: Added.
        * platform/mac/fast/backgrounds/table-root-expected.txt: Added.

2011-03-10  Mihai Parparita  <mihaip@chromium.org>

        Update chromium Snow Leopard expectations.

        * platform/chromium/test_expectations.txt:

2011-03-10  David Hyatt  <hyatt@apple.com>

        Reviewed by Simon Fraser.

        https://bugs.webkit.org/show_bug.cgi?id=47157

        CSS2.1 test suite failures because the ex unit is broken with the Ahem font.

        Remove the code that tries to also include the maxX of the glyph bounds for the
        'x' glyph, since it just causes the x-height to be way too large in cases where the 'x' glyph extends
        below the baseline.

        Remove the Apple Symbol hack for ex units, since the person who added that was confused by another
        issue, namely that CGFontGetXHeight wasn't being properly multiplied by the pointSize.  That's why
        the value was too small.  Patched the code to just multiply by pointSize and took out the hack.

        Fix causes many tests in the css2.1 directory to progress, so no new tests required.  Many other
        layout tests change because the xHeight for Lucida Grande gets smaller by a little bit, and radio
        buttons use ex horizontal margins by default.

        * platform/mac/accessibility/radio-button-group-members-expected.txt:
        * platform/mac/css1/box_properties/acid_test-expected.txt:
        * platform/mac/css1/font_properties/font_size-expected.txt:
        * platform/mac/css1/text_properties/line_height-expected.txt:
        * platform/mac/css1/text_properties/text_indent-expected.txt:
        * platform/mac/css1/units/length_units-expected.txt:
        * platform/mac/css2.1/t040302-c61-ex-len-00-b-a-expected.txt:
        * platform/mac/css2.1/t040302-c61-rel-len-00-b-ag-expected.txt:
        * platform/mac/css2.1/t09-c5526c-display-00-e-expected.txt:
        * platform/mac/css2.1/t1008-c44-ln-box-02-d-ag-expected.txt:
        * platform/mac/css2.1/t100801-c544-valgn-01-d-ag-expected.txt:
        * platform/mac/css2.1/t100801-c544-valgn-03-d-agi-expected.txt:
        * platform/mac/css2.1/t100801-c548-ln-ht-02-b-ag-expected.txt:
        * platform/mac/css2.1/t1507-c526-font-sz-02-b-a-expected.txt:
        * platform/mac/css2.1/t1601-c547-indent-00-b-a-expected.txt:
        * platform/mac/css2.1/t1604-c541-word-sp-00-b-a-expected.txt:
        * platform/mac/css2.1/t1604-c542-letter-sp-00-b-a-expected.txt:
        * platform/mac/editing/selection/caret-ltr-2-expected.txt:
        * platform/mac/editing/selection/caret-ltr-2-left-expected.txt:
        * platform/mac/editing/selection/caret-ltr-expected.txt:
        * platform/mac/editing/selection/caret-ltr-right-expected.txt:
        * platform/mac/editing/selection/caret-rtl-2-expected.txt:
        * platform/mac/editing/selection/caret-rtl-2-left-expected.txt:
        * platform/mac/editing/selection/caret-rtl-expected.txt:
        * platform/mac/editing/selection/caret-rtl-right-expected.txt:
        * platform/mac/fast/block/basic/011-expected.txt:
        * platform/mac/fast/block/margin-collapse/103-expected.txt:
        * platform/mac/fast/css/ex-after-font-variant-expected.txt:
        * platform/mac/fast/css/non-standard-checkbox-size-expected.txt:
        * platform/mac/fast/forms/001-expected.txt:
        * platform/mac/fast/forms/basic-inputs-expected.txt:
        * platform/mac/fast/forms/box-shadow-override-expected.txt:
        * platform/mac/fast/forms/checkbox-radio-onchange-expected.txt:
        * platform/mac/fast/forms/file-input-disabled-expected.txt:
        * platform/mac/fast/forms/form-element-geometry-expected.txt:
        * platform/mac/fast/forms/formmove-expected.txt:
        * platform/mac/fast/forms/formmove2-expected.txt:
        * platform/mac/fast/forms/indeterminate-expected.txt:
        * platform/mac/fast/forms/input-appearance-height-expected.txt:
        * platform/mac/fast/forms/input-value-expected.txt:
        * platform/mac/fast/forms/minWidthPercent-expected.txt:
        * platform/mac/fast/forms/radio-attr-order-expected.txt:
        * platform/mac/fast/forms/radio-nested-labels-expected.txt:
        * platform/mac/fast/forms/radio_checked-expected.txt:
        * platform/mac/fast/forms/radio_checked_dynamic-expected.txt:
        * platform/mac/fast/inline/positionedLifetime-expected.txt:
        * platform/mac/fast/lists/008-expected.txt:
        * platform/mac/fast/lists/008-vertical-expected.txt:
        * platform/mac/fast/media/mq-relative-constraints-08-expected.txt:
        * platform/mac/fast/overflow/overflow-rtl-expected.txt:
        * platform/mac/fast/overflow/overflow-rtl-vertical-expected.txt:
        * platform/mac/fast/parser/bad-xml-slash-expected.txt:
        * platform/mac/fast/replaced/replaced-breaking-expected.txt:
        * platform/mac/fast/replaced/width100percent-checkbox-expected.txt:
        * platform/mac/fast/replaced/width100percent-radio-expected.txt:
        * platform/mac/fast/text/textIteratorNilRenderer-expected.txt:
        * platform/mac/fast/text/whitespace/normal-after-nowrap-breaking-expected.txt:
        * platform/mac/fast/text/whitespace/pre-wrap-spaces-after-newline-expected.txt:
        * platform/mac/http/tests/navigation/javascriptlink-frames-expected.txt:
        * platform/mac/svg/custom/alignment-baseline-modes-expected.txt:
        * platform/mac/svg/custom/dominant-baseline-modes-expected.txt:
        * platform/mac/tables/mozilla/bugs/bug1318-expected.txt:
        * platform/mac/tables/mozilla/bugs/bug4527-expected.txt:
        * platform/mac/tables/mozilla_expected_failures/core/captions1-expected.txt:
        * platform/mac/tables/mozilla_expected_failures/core/captions2-expected.txt:
        * svg/custom/invalid-text-content-expected.png:
        * svg/custom/text-zoom-expected.png:
        * svg/custom/use-clipped-transform-expected.png:

2011-03-10  Adam Roben  <aroben@apple.com>

        Skip a test that sometimes times out in Windows Debug builds

        <http://webkit.org/b/56080> tracks the failure.

        * platform/win-xp/Skipped: Added jquery/effects.html. (Ideally we'd only skip this in Debug
        builds regardless of whether it's XP or Vista or 7, but doing that requires fixing
        <http://webkit.org/b/55254>.)

2011-03-04  Luiz Agostini  <luiz.agostini@openbossa.org>

        Reviewed by Andreas Kling.

        [Qt] fast/workers/stress-js-execution.html is crashing on Qt bot (intermittently)
        https://bugs.webkit.org/show_bug.cgi?id=33008

        Removing several tests from the Qt skip list. Those tests were flaky because of race conditions
        related to web workers.

        * platform/qt/Skipped:

2011-03-09  Gavin Barraclough  <barraclough@apple.com>

        Reviewed by Oliver Hunt.

        Bug 56077 - ES5 conformance issues with RegExp.prototype

        There are three issues causing test failures in sputnik.

        (1) lastIndex should be converted at the point it is used, not the point it is set (this is visible if valueOf is overridden).
        (2) The 'length' property of the test/exec functions should be 1.
        (3) If no input is specified, the input to test()/exec() is "undefined" (i.e. ToString(undefined)) - not RegExp.input.

        * fast/js/kde/function_length-expected.txt:
        * fast/js/kde/script-tests/function_length.js:
            - 'length' of RexExp.test/RexExp.exec is 1
        * fast/js/regexp-caching-expected.txt:
        * fast/js/regexp-test-null-string-expected.txt:
        * fast/js/regexp-test-null-string.html:
            - test() is equivalent to test("undefined")
        * sputnik/Conformance/15_Native_Objects/15.10_RegExp/15.10.6/15.10.6.2_RegExp.prototype.exec/S15.10.6.2_A11-expected.txt:
        * sputnik/Conformance/15_Native_Objects/15.10_RegExp/15.10.6/15.10.6.2_RegExp.prototype.exec/S15.10.6.2_A1_T16-expected.txt:
        * sputnik/Conformance/15_Native_Objects/15.10_RegExp/15.10.6/15.10.6.2_RegExp.prototype.exec/S15.10.6.2_A4_T11-expected.txt:
        * sputnik/Conformance/15_Native_Objects/15.10_RegExp/15.10.6/15.10.6.3_RegExp.prototype.test/S15.10.6.3_A11-expected.txt:
        * sputnik/Conformance/15_Native_Objects/15.10_RegExp/15.10.6/15.10.6.3_RegExp.prototype.test/S15.10.6.3_A1_T16-expected.txt:
            - These tests now pass!

2011-03-10  Sheriff Bot  <webkit.review.bot@gmail.com>

        Unreviewed, rolling out r80701.
        http://trac.webkit.org/changeset/80701
        https://bugs.webkit.org/show_bug.cgi?id=56126

        fast/dom/Geolocation/window-close-crash.html fails on Snow
        Leopard release builds (Requested by mihaip on #webkit).

        * fast/dom/Geolocation/page-reload-cancel-permission-requests-expected.txt: Removed.
        * fast/dom/Geolocation/page-reload-cancel-permission-requests.html: Removed.
        * fast/dom/Geolocation/resources/page-reload-cancel-permission-requests-inner.html: Removed.
        * fast/dom/Geolocation/script-tests/page-reload-cancel-permission-requests.js: Removed.
        * platform/gtk/Skipped:
        * platform/mac/Skipped:
        * platform/qt-wk2/Skipped:

2011-03-10  Oliver Hunt  <oliver@apple.com>

        Reviewed by Gavin Barraclough.

        jquery/manipulation.html fails after r80598
        https://bugs.webkit.org/show_bug.cgi?id=56019

        Removed jQuery tests from skiplists

        * platform/gtk/Skipped:
        * platform/qt/Skipped:

2011-03-10  Ryosuke Niwa  <rniwa@webkit.org>

        Reviewed by Ojan Vafai.

        Unable to paste in input[type="text"] with last-child selector
        https://bugs.webkit.org/show_bug.cgi?id=50736

        Added regressions tests since this bug no longer reproduces on TOT WebKit.

        * editing/input/div-first-child-rule-input-expected.txt: Added.
        * editing/input/div-first-child-rule-input.html: Added.
        * editing/input/div-first-child-rule-textarea-expected.txt: Added.
        * editing/input/div-first-child-rule-textarea.html: Added.

2011-03-10  Martin Robinson  <mrobinson@igalia.com>

        [GTK] plugins/return-negative-one-from-write.html crashes
        https://bugs.webkit.org/show_bug.cgi?id=41903

        * platform/gtk/Skipped: Unskipping test which appears to be passing locally.

2011-03-10  Adam Barth  <abarth@webkit.org>

        Update test expectation after my partial revert of r80670.

        * platform/mac/accessibility/aria-expanded-notifications-expected.txt:

2011-03-10  Andrei Popescu  <andreip@google.com>

        Unreviewed, build fix.

        [Chromium] fast/canvas/webgl/uninitialized-test.html times out on all platforms.
        https://bugs.webkit.org/show_bug.cgi?id=56113

        It seems this was introduced in http://src.chromium.org/viewvc/chrome?view=rev&revision=77637
        Updating test expectations for now.

        * platform/chromium/test_expectations.txt:

2011-03-10  Andrei Popescu  <andreip@google.com>

        Unreviewed, build fix.

        [Chromium] svg/W3C-SVG-1.1/text-text-03-b.svg is sometimes crashing on Linux
        https://bugs.webkit.org/show_bug.cgi?id=56110

        * platform/chromium/test_expectations.txt:

2011-03-10  Adam Roben  <aroben@apple.com>

        Add Windows expected failure results for fast/forms/onchange-setvalueforuser.html

        The failure is tracked by <http://webkit.org/b/55834>.

        * platform/win/fast/forms/onchange-setvalueforuser-expected.txt: Added.

2011-03-10  Adam Roben  <aroben@apple.com>

        Add Windows expected failure results for fast/lists/003-vertical.html

        The Windows results match the pre-r80648 Mac results. The failure is tracked by
        <http://webkit.org/b/56101>.

        * platform/win/fast/lists/003-vertical-expected.checksum: Added.
        * platform/win/fast/lists/003-vertical-expected.png: Added.
        * platform/win/fast/lists/003-vertical-expected.txt: Added.

2011-03-10  Andrei Popescu  <andreip@google.com>

        Unreviewed, build fix.

        [Chromium] fast/text/international/vertical-text-glyph-test.html fails on OSX 10.6
        https://bugs.webkit.org/show_bug.cgi?id=56108

        Update Chromium test expectations.

        * platform/chromium/test_expectations.txt:

2011-03-10  Adam Roben  <aroben@apple.com>

        Skip another spinbutton test on Windows

        The missing functionality is tracked by <http://webkit.org/b/38381>.

        * platform/win/Skipped: Added fast/forms/input-appearance-spinbutton-visibility.html

2011-03-10  Adam Roben  <aroben@apple.com>

        Add Windows expected failure results for fast/text/hyphenate-limit-before-after.html

        The failure is tracked by <http://webkit.org/b/56102>.

        * platform/win/fast/text/hyphenate-limit-before-after-expected.txt: Added. Copied this from
        mac-snowleopard.

2011-03-10  Adam Roben  <aroben@apple.com>

        Add Windows expected failure results for fast/blockflow/text-orientation-basic.html

        The failure is tracked by <http://webkit.org/b/56101>.

        * platform/win/fast/blockflow/text-orientation-basic-expected.checksum: Added.
        * platform/win/fast/blockflow/text-orientation-basic-expected.png: Added.
        * platform/win/fast/blockflow/text-orientation-basic-expected.txt: Added.

2011-03-10  Andrei Popescu  <andreip@google.com>

        Unreviewed, build fix.

        [Chromium] fast/text/justify-ideograph-vertical.html fails on OSX 10.5
        https://bugs.webkit.org/show_bug.cgi?id=56106

        Update Chromium test expectations.

        * platform/chromium/test_expectations.txt:

2011-03-10  Pavel Feldman  <pfeldman@chromium.org>

        Not reviewed: rolling out r80478 and its follow ups for breaking
        inspector and engadget.com.
        https://bugs.webkit.org/show_bug.cgi?id=49401

        * platform/gtk/Skipped:

2011-03-10  Philippe Normand  <pnormand@igalia.com>

        Unreviewed, skip 1 more svg test failing by one pixel in 32-bits
        Debug, see bug 39022.

        * platform/gtk/Skipped:

2011-03-10  Pavel Feldman  <pfeldman@chromium.org>

        Reviewed by Yury Semikhatsky.

        Web Inspector: brush up DOM agent API.
        https://bugs.webkit.org/show_bug.cgi?id=56093

        * http/tests/inspector/elements-test.js:
        (initialize_ElementTest.InspectorTest.nodeWithId.processChildren):
        (initialize_ElementTest.InspectorTest.nodeWithId.documentRequested):
        (initialize_ElementTest.InspectorTest.nodeWithId):
        (initialize_ElementTest.InspectorTest.dumpDOMAgentTree.dump):
        (initialize_ElementTest.InspectorTest.dumpDOMAgentTree):
        (initialize_ElementTest):
        * inspector/elements/elements-panel-rewrite-href.html:
        * inspector/elements/elements-panel-search.html:
        * inspector/elements/elements-panel-selection-on-refresh.html:
        * inspector/elements/mutate-unknown-node.html:

2011-03-10  Philippe Normand  <pnormand@igalia.com>

        Unreviewed, skip 2 more flacky tests on GTK 32-bits Release.

        * platform/gtk/Skipped:

2011-03-10  Philippe Normand  <pnormand@igalia.com>

        Unreviewed, skip 1 more svg test failing by one pixel in 32-bits
        Debug, see bug 39022.

        * platform/gtk/Skipped:

2011-03-10  Philippe Normand  <pnormand@igalia.com>

        Unreviewed, skip 2 more svg tests failing by one pixel in 32-bits
        Release, see bug 39022.

        * platform/gtk/Skipped:

2011-03-10  Andrey Adaikin  <aandrey@google.com>

        Reviewed by Pavel Feldman.

        Web Inspector: Highlighter refactoring
        https://bugs.webkit.org/show_bug.cgi?id=56015

        * inspector/editor/highlighter-basics-expected.txt:
        * inspector/editor/highlighter-basics.html:
        * inspector/editor/highlighter-long-line.html:
        * inspector/editor/highlighter-paste-in-comment-expected.txt:
        * inspector/editor/highlighter-paste-in-comment.html:

2011-03-10  John Knottenbelt  <jknotten@chromium.org>

        Reviewed by Andreas Kling.

        [Qt] Skip fast/dom/Geolocation/page-reload-cancel-permission-requests.html pending implementation of LayoutTestController::numberOfPendingGeolocationPermissionRequests
        https://bugs.webkit.org/show_bug.cgi?id=56087

        * platform/qt/Skipped:

2011-02-16  John Knottenbelt  <jknotten@chromium.org>

        Reviewed by Dmitry Titov.

        Detach Geolocation from Frame when Page destroyed.
        https://bugs.webkit.org/show_bug.cgi?id=52877

        Ensure that all geolocation permission requests are cancelled
        when the page is detached from its frame.

        * fast/dom/Geolocation/page-reload-cancel-permission-requests-expected.txt: Added.
        * fast/dom/Geolocation/page-reload-cancel-permission-requests.html: Added.
        * fast/dom/Geolocation/resources/page-reload-cancel-permission-requests-inner.html: Added.
        * fast/dom/Geolocation/script-tests/page-reload-cancel-permission-requests.js: Added.
        * platform/gtk/Skipped:
        * platform/mac/Skipped:
        * platform/qt-wk2/Skipped:

2011-03-10  Csaba Osztrogonác  <ossy@webkit.org>

        Unreviewed.

        Add Qt specific expected files for tests introduced in r80622 and r80682.

        * platform/qt/fast/dom/scroll-reveal-left-overflow-expected.checksum: Added.
        * platform/qt/fast/dom/scroll-reveal-left-overflow-expected.png: Added.
        * platform/qt/fast/dom/scroll-reveal-left-overflow-expected.txt: Added.
        * platform/qt/fast/dom/scroll-reveal-top-overflow-expected.checksum: Added.
        * platform/qt/fast/dom/scroll-reveal-top-overflow-expected.png: Added.
        * platform/qt/fast/dom/scroll-reveal-top-overflow-expected.txt: Added.
        * platform/qt/fast/dynamic/dirty-float-in-clean-line-expected.checksum: Added.
        * platform/qt/fast/dynamic/dirty-float-in-clean-line-expected.png: Added.
        * platform/qt/fast/dynamic/dirty-float-in-clean-line-expected.txt: Added.
        * platform/qt/fast/dynamic/float-at-line-break-expected.checksum: Added.
        * platform/qt/fast/dynamic/float-at-line-break-expected.png: Added.
        * platform/qt/fast/dynamic/float-at-line-break-expected.txt: Added.

2011-03-10  Philippe Normand  <pnormand@igalia.com>

        Unreviewed, skip fast/js/large-expressions.html on GTK.

        * platform/gtk/Skipped:

2011-03-10  Philippe Normand  <pnormand@igalia.com>

        Unreviewed, skip jquery/effects.html on GTK.

        * platform/gtk/Skipped:

2011-03-10  Adam Barth  <abarth@webkit.org>

        Partial revert of http://trac.webkit.org/changeset/80670.  This test
        has been failing sporatically since it was changed in that revision.

        * platform/mac/accessibility/aria-expanded-notifications.html:

2011-03-10  Ojan Vafai  <ojan@chromium.org>

        Reviewed by Darin Adler.

        Able to move nodes across documents
        https://bugs.webkit.org/show_bug.cgi?id=19524

        Makes cross-document appendChild, insertBefore, Range.insertNode and Range.surroundContents work.
        This matches Gecko and the new Dom Core spec. There are a number of Range methods where we don't
        match Gecko or the spec that will need to be updated in a following patch.

        * dom/html/level1/core/hc_elementwrongdocumenterr-expected.txt:
        * dom/html/level1/core/hc_namednodemapwrongdocumenterr-expected.txt:
        * dom/xhtml/level1/core/hc_elementwrongdocumenterr-expected.txt:
        * dom/xhtml/level1/core/hc_namednodemapwrongdocumenterr-expected.txt:
        * fast/dom/move-nodes-across-documents-expected.txt: Added.
        * fast/dom/move-nodes-across-documents.html: Added.

2011-03-09  Roland Steiner  <rolandsteiner@chromium.org>

        Unreviewed: tweaking of Chromium test_expectations.txt

        * platform/chromium/test_expectations.txt:

2011-03-09  Mihai Parparita  <mihaip@chromium.org>

        JSC now implements Object.freeze/seal (as of r80378) and correct
        expectations have been checked in, therefore we now pass more
        ietestcenter tests.

        * platform/chromium/test_expectations.txt:

2011-03-09  Chris Fleizach  <cfleizach@apple.com>

        Reviewed by Beth Dakin.

        VO reporting incorrect list count for http://www.macworld.com/news.html
        https://bugs.webkit.org/show_bug.cgi?id=56064

        * platform/mac/accessibility/list-items-ignored-expected.txt: Added.
        * platform/mac/accessibility/list-items-ignored.html: Added.

2011-03-09  Gavin Barraclough  <barraclough@apple.com>

        Reviewed by Sam Weinig.

        Bug 56041 - RexExp constructor should only accept flags "gim"
        Fix for issues introduced in r80667.

        * fast/regex/script-tests/parentheses.js:
        * fast/regex/script-tests/pcre-test-1.js:
            - Providing invalid flags to RegExp literals is an error in ES5.

2011-03-09  Dan Bernstein  <mitz@apple.com>

        Reviewed by Dave Hyatt.

        <rdar://problem/8733254> Float disappears after incremental layout

        * fast/dynamic/dirty-float-in-clean-line-expected.checksum: Added.
        * fast/dynamic/dirty-float-in-clean-line-expected.png: Added.
        * fast/dynamic/dirty-float-in-clean-line-expected.txt: Added.
        * fast/dynamic/dirty-float-in-clean-line.html: Added.
        * fast/dynamic/float-at-line-break-expected.checksum: Added.
        * fast/dynamic/float-at-line-break-expected.png: Added.
        * fast/dynamic/float-at-line-break-expected.txt: Added.
        * fast/dynamic/float-at-line-break.html: Added.
        * fast/dynamic/float-from-empty-line-expected.checksum: Added.
        * fast/dynamic/float-from-empty-line-expected.png: Added.
        * fast/dynamic/float-from-empty-line-expected.txt: Added.
        * fast/dynamic/float-from-empty-line.html: Added.

2011-03-09  Martin Robinson  <mrobinson@igalia.com>

        Add some new GTK+ test results.

        * platform/gtk/fast/blockflow/text-orientation-basic-expected.checksum: Added.
        * platform/gtk/fast/blockflow/text-orientation-basic-expected.png: Added.
        * platform/gtk/fast/blockflow/text-orientation-basic-expected.txt: Added.
        * platform/gtk/fast/dom/scroll-reveal-left-overflow-expected.checksum: Added.
        * platform/gtk/fast/dom/scroll-reveal-left-overflow-expected.png: Added.
        * platform/gtk/fast/dom/scroll-reveal-left-overflow-expected.txt: Added.
        * platform/gtk/fast/dom/scroll-reveal-top-overflow-expected.checksum: Added.
        * platform/gtk/fast/dom/scroll-reveal-top-overflow-expected.png: Added.
        * platform/gtk/fast/dom/scroll-reveal-top-overflow-expected.txt: Added.

2011-03-09  Tony Chang  <tony@chromium.org>

        Unreviewed, third and final set of baselines for chromium linux lucid x86_64.
        These are small rounding differences.
        https://bugs.webkit.org/show_bug.cgi?id=55527

        * platform/chromium-linux-x86_64/svg/W3C-SVG-1.1/paths-data-03-f-expected.checksum: Added.
        * platform/chromium-linux-x86_64/svg/W3C-SVG-1.1/paths-data-03-f-expected.png: Added.
        * platform/chromium-linux-x86_64/svg/W3C-SVG-1.1/paths-data-03-f-expected.txt: Added.
        * platform/chromium-linux-x86_64/svg/W3C-SVG-1.1/paths-data-12-t-expected.checksum: Added.
        * platform/chromium-linux-x86_64/svg/W3C-SVG-1.1/paths-data-12-t-expected.png: Added.
        * platform/chromium-linux-x86_64/svg/W3C-SVG-1.1/paths-data-12-t-expected.txt: Added.
        * platform/chromium-linux-x86_64/svg/hixie/perf/001-expected.checksum: Added.
        * platform/chromium-linux-x86_64/svg/hixie/perf/001-expected.png: Added.
        * platform/chromium-linux-x86_64/svg/hixie/perf/001-expected.txt: Added.
        * platform/chromium-linux-x86_64/svg/hixie/perf/002-expected.checksum: Added.
        * platform/chromium-linux-x86_64/svg/hixie/perf/002-expected.png: Added.
        * platform/chromium-linux-x86_64/svg/hixie/perf/002-expected.txt: Added.
        * platform/chromium/test_expectations.txt:

2011-03-09  Tony Chang  <tony@chromium.org>

        Unreviewed, land a second set of baselines for chromium linux lucid x86_64.
        These are differences due to a newer freetype and a few rounding
        differences in gradients.
        https://bugs.webkit.org/show_bug.cgi?id=55527

        * platform/chromium-linux-x86_64/fast/borders/borderRadiusGroove01-expected.checksum: Added.
        * platform/chromium-linux-x86_64/fast/borders/borderRadiusGroove01-expected.png: Added.
        * platform/chromium-linux-x86_64/fast/borders/borderRadiusGroove02-expected.checksum: Added.
        * platform/chromium-linux-x86_64/fast/borders/borderRadiusGroove02-expected.png: Added.
        * platform/chromium-linux-x86_64/fast/borders/borderRadiusRidge01-expected.checksum: Added.
        * platform/chromium-linux-x86_64/fast/borders/borderRadiusRidge01-expected.png: Added.
        * platform/chromium-linux-x86_64/fast/images/animated-svg-as-image-expected.checksum: Added.
        * platform/chromium-linux-x86_64/fast/images/animated-svg-as-image-expected.png: Added.
        * platform/chromium-linux-x86_64/fast/text/international/bidi-mirror-he-ar-expected.checksum: Added.
        * platform/chromium-linux-x86_64/fast/text/international/bidi-mirror-he-ar-expected.png: Added.
        * platform/chromium-linux-x86_64/fast/text/international/danda-space-expected.checksum: Added.
        * platform/chromium-linux-x86_64/fast/text/international/danda-space-expected.png: Added.
        * platform/chromium-linux-x86_64/svg/W3C-SVG-1.1/pservers-grad-07-b-expected.checksum: Added.
        * platform/chromium-linux-x86_64/svg/W3C-SVG-1.1/pservers-grad-07-b-expected.png: Added.
        * platform/chromium-linux-x86_64/svg/W3C-SVG-1.1/pservers-grad-13-b-expected.checksum: Added.
        * platform/chromium-linux-x86_64/svg/W3C-SVG-1.1/pservers-grad-13-b-expected.png: Added.
        * platform/chromium-linux-x86_64/svg/W3C-SVG-1.1/struct-frag-02-t-expected.checksum: Added.
        * platform/chromium-linux-x86_64/svg/W3C-SVG-1.1/struct-frag-02-t-expected.png: Added.
        * platform/chromium-linux-x86_64/svg/W3C-SVG-1.1/text-text-01-b-expected.checksum: Added.
        * platform/chromium-linux-x86_64/svg/W3C-SVG-1.1/text-text-01-b-expected.png: Added.
        * platform/chromium-linux-x86_64/svg/batik/text/textFeatures-expected.checksum: Added.
        * platform/chromium-linux-x86_64/svg/batik/text/textFeatures-expected.png: Added.
        * platform/chromium-linux-x86_64/svg/batik/text/textLayout-expected.checksum: Added.
        * platform/chromium-linux-x86_64/svg/batik/text/textLayout-expected.png: Added.
        * platform/chromium-linux-x86_64/svg/custom/js-late-clipPath-and-object-creation-expected.checksum: Added.
        * platform/chromium-linux-x86_64/svg/custom/js-late-clipPath-and-object-creation-expected.png: Added.
        * platform/chromium-linux-x86_64/svg/custom/js-late-clipPath-creation-expected.checksum: Added.
        * platform/chromium-linux-x86_64/svg/custom/js-late-clipPath-creation-expected.png: Added.
        * platform/chromium-linux-x86_64/svg/custom/js-late-gradient-creation-expected.checksum: Added.
        * platform/chromium-linux-x86_64/svg/custom/js-late-gradient-creation-expected.png: Added.
        * platform/chromium-linux-x86_64/svg/custom/js-late-pattern-creation-expected.checksum: Added.
        * platform/chromium-linux-x86_64/svg/custom/js-late-pattern-creation-expected.png: Added.
        * platform/chromium-linux-x86_64/svg/custom/radial-gradient-with-outstanding-focalPoint-expected.checksum: Added.
        * platform/chromium-linux-x86_64/svg/custom/radial-gradient-with-outstanding-focalPoint-expected.png: Added.
        * platform/chromium-linux-x86_64/svg/custom/svg-curve-with-relative-cordinates-expected.checksum: Added.
        * platform/chromium-linux-x86_64/svg/custom/svg-curve-with-relative-cordinates-expected.png: Added.
        * platform/chromium-linux-x86_64/svg/text/select-textLength-spacingAndGlyphs-squeeze-1-expected.checksum: Added.
        * platform/chromium-linux-x86_64/svg/text/select-textLength-spacingAndGlyphs-squeeze-1-expected.png: Added.
        * platform/chromium-linux-x86_64/svg/text/select-textLength-spacingAndGlyphs-squeeze-2-expected.checksum: Added.
        * platform/chromium-linux-x86_64/svg/text/select-textLength-spacingAndGlyphs-squeeze-2-expected.png: Added.
        * platform/chromium-linux-x86_64/svg/text/select-textLength-spacingAndGlyphs-squeeze-3-expected.checksum: Added.
        * platform/chromium-linux-x86_64/svg/text/select-textLength-spacingAndGlyphs-squeeze-3-expected.png: Added.
        * platform/chromium-linux-x86_64/svg/text/select-textLength-spacingAndGlyphs-squeeze-4-expected.checksum: Added.
        * platform/chromium-linux-x86_64/svg/text/select-textLength-spacingAndGlyphs-squeeze-4-expected.png: Added.
        * platform/chromium-linux-x86_64/svg/text/select-textLength-spacingAndGlyphs-stretch-1-expected.checksum: Added.
        * platform/chromium-linux-x86_64/svg/text/select-textLength-spacingAndGlyphs-stretch-1-expected.png: Added.
        * platform/chromium-linux-x86_64/svg/text/select-textLength-spacingAndGlyphs-stretch-2-expected.checksum: Added.
        * platform/chromium-linux-x86_64/svg/text/select-textLength-spacingAndGlyphs-stretch-2-expected.png: Added.
        * platform/chromium-linux-x86_64/svg/text/select-textLength-spacingAndGlyphs-stretch-3-expected.checksum: Added.
        * platform/chromium-linux-x86_64/svg/text/select-textLength-spacingAndGlyphs-stretch-3-expected.png: Added.
        * platform/chromium-linux-x86_64/svg/text/select-textLength-spacingAndGlyphs-stretch-4-expected.checksum: Added.
        * platform/chromium-linux-x86_64/svg/text/select-textLength-spacingAndGlyphs-stretch-4-expected.png: Added.
        * platform/chromium-linux-x86_64/svg/text/text-text-01-b-expected.checksum: Added.
        * platform/chromium-linux-x86_64/svg/text/text-text-01-b-expected.png: Added.
        * platform/chromium-linux-x86_64/transforms/2d/transform-borderbox-expected.checksum: Added.
        * platform/chromium-linux-x86_64/transforms/2d/transform-borderbox-expected.png: Added.
        * platform/chromium/test_expectations.txt:

2011-03-09  Tony Chang  <tony@chromium.org>

        Unreviewed, first set of baselines for chromium linux lucid x86_64.
        These are just small rounding differences.
        https://bugs.webkit.org/show_bug.cgi?id=55527

        * platform/chromium-linux-x86_64/fast/repaint/moving-shadow-on-container-expected.txt: Added.
        * platform/chromium-linux-x86_64/fast/repaint/moving-shadow-on-path-expected.txt: Added.
        * platform/chromium-linux-x86_64/svg/css/composite-shadow-example-expected.txt: Added.
        * platform/chromium-linux-x86_64/svg/css/composite-shadow-with-opacity-expected.txt: Added.
        * platform/chromium-linux-x86_64/svg/css/stars-with-shadow-expected.txt: Added.
        * platform/chromium-linux-x86_64/svg/custom/use-on-symbol-inside-pattern-expected.txt: Added.
        * platform/chromium/test_expectations.txt:

2011-03-09  Andy Estes  <aestes@apple.com>

        Reviewed by Adam Barth.

        Bad cast in HTMLTreeBuilder::processStartTag
        https://bugs.webkit.org/show_bug.cgi?id=55955

        * fast/parser/self-closing-foreign-content-expected.txt: Added.
        * fast/parser/self-closing-foreign-content.html: Added.

2011-03-09  Tony Gentilcore  <tonyg@chromium.org>

        Reviewed by Mihai Parparita.

        Fix some potentially flaky tests
        https://bugs.webkit.org/show_bug.cgi?id=56049

        These tests were not resilient to parser yields for reasons explained below.

        * media/video-src-plus-source.html: loadstart or loadmetadata could have fired before
        the waitForEvent() calls. So define them prior to the <video> element.
        * platform/mac/accessibility/aria-expanded-notifications.html: The aria events could
        have fired before successfullyParsed was set, so run the test in the onload handler.
        * plugins/npruntime/npruntime.html: The plugin could have been loaded before
        successfullyParsed was set, so set it before including the plugin.

2011-03-09  Andy Estes  <aestes@apple.com>

        Reviewed by Adam Barth.

        REGRESSION (r80320): Assertion failure when processing mis-nested foreign content.
        https://bugs.webkit.org/show_bug.cgi?id=55982

        * fast/parser/fragment-foreign-content-misnested-expected.txt: Added.
        * fast/parser/fragment-foreign-content-misnested.html: Added.

2011-03-09  Gavin Barraclough  <barraclough@apple.com>

        Reviewed by Darin Adler.

        Bug 56041 - RexExp constructor should only accept flags "gim"
        We also should be passing the flags around as a bitfield rather than a string,
        and should not have redundant, incompatible code for converting the string to a bitfield!

        * sputnik/Conformance/15_Native_Objects/15.10_RegExp/15.10.4/S15.10.4.1_A5_T1-expected.txt:
        * sputnik/Conformance/15_Native_Objects/15.10_RegExp/15.10.4/S15.10.4.1_A5_T2-expected.txt:
        * sputnik/Conformance/15_Native_Objects/15.10_RegExp/15.10.4/S15.10.4.1_A5_T3-expected.txt:
        * sputnik/Conformance/15_Native_Objects/15.10_RegExp/15.10.4/S15.10.4.1_A5_T4-expected.txt:
        * sputnik/Conformance/15_Native_Objects/15.10_RegExp/15.10.4/S15.10.4.1_A5_T5-expected.txt:
        * sputnik/Conformance/15_Native_Objects/15.10_RegExp/15.10.4/S15.10.4.1_A5_T6-expected.txt:
        * sputnik/Conformance/15_Native_Objects/15.10_RegExp/15.10.4/S15.10.4.1_A5_T7-expected.txt:
        * sputnik/Conformance/15_Native_Objects/15.10_RegExp/15.10.4/S15.10.4.1_A5_T8-expected.txt:
        * sputnik/Conformance/15_Native_Objects/15.10_RegExp/15.10.4/S15.10.4.1_A5_T9-expected.txt:
            - Check in passing results!

2011-03-09  Martin Robinson  <mrobinson@igalia.com>

        jquery/manipulation.html fails after r80598
        https://bugs.webkit.org/show_bug.cgi?id=56019

        Skip jquery test failing on the GTK+ debug bots. Move another
        failing test to the appropriate section.

        * platform/gtk/Skipped: Update skipped list.

2011-03-09  James Robinson  <jamesr@chromium.org>

        Reviewed by Kenneth Russell.

        [chromium]: Regression - Explicitly copy compositing properties from LayerChromium to CCLayerImpl
        https://bugs.webkit.org/show_bug.cgi?id=56021

        Adds a test for basic functionality of the backface-visibility
        property.

        * compositing/backface-visibility-expected.checksum: Added.
        * compositing/backface-visibility-expected.png: Added.
        * compositing/backface-visibility-expected.txt: Added.
        * compositing/backface-visibility.html: Added.

2011-03-09  Andrei Popescu  <andreip@google.com>

        Unreviewed, build fix.

        [Chromium] test_expectations.txt needs updating to expect crashes in tests
        that trigger the assertion in FontCache::releaseFontData.
        https://bugs.webkit.org/show_bug.cgi?id=56051

        We have started seeing an assertion failure in FontCache.cpp:310 after r80582.
        It is unclear whether r80582 caused the assertion or whether the problem was
        already present at r80582 just made it manifest itself more often. Update the
        test_expectations.txt file while we're investigating.

        * platform/chromium/test_expectations.txt:

2011-03-09  Xiaomei Ji  <xji@chromium.org>

        Unreviewed.

        Rebaseline after r80622.

        * platform/chromium-linux/fast/dom/scroll-reveal-left-overflow-expected.checksum: Added.
        * platform/chromium-linux/fast/dom/scroll-reveal-left-overflow-expected.png: Added.
        * platform/chromium-linux/fast/dom/scroll-reveal-top-overflow-expected.checksum: Added.
        * platform/chromium-linux/fast/dom/scroll-reveal-top-overflow-expected.png: Added.
        * platform/chromium-mac/fast/dom/scroll-reveal-left-overflow-expected.checksum: Added.
        * platform/chromium-mac/fast/dom/scroll-reveal-left-overflow-expected.png: Added.
        * platform/chromium-mac/fast/dom/scroll-reveal-left-overflow-expected.txt: Added.
        * platform/chromium-mac/fast/dom/scroll-reveal-top-overflow-expected.txt: Added.
        * platform/chromium-win/fast/dom/scroll-reveal-left-overflow-expected.checksum: Added.
        * platform/chromium-win/fast/dom/scroll-reveal-left-overflow-expected.png: Added.
        * platform/chromium-win/fast/dom/scroll-reveal-left-overflow-expected.txt: Added.
        * platform/chromium-win/fast/dom/scroll-reveal-top-overflow-expected.checksum: Added.
        * platform/chromium-win/fast/dom/scroll-reveal-top-overflow-expected.png: Added.
        * platform/chromium-win/fast/dom/scroll-reveal-top-overflow-expected.txt: Added.
        * platform/chromium/test_expectations.txt:

2011-03-09  Abhishek Arya  <inferno@chromium.org>

        Unreviewed. Rebaselining after text orientation change in r80582.

        * platform/mac/fast/css/getComputedStyle/computed-style-without-renderer-expected.txt:

2011-03-09  Ryosuke Niwa  <rniwa@webkit.org>

        Reviewed by Tony Chang.

        REGRESSION: crash in nextLinePosition when extending selection forward by line in an empty document
        https://bugs.webkit.org/show_bug.cgi?id=56004

        Added a regression test.

        * editing/selection/extend-by-line-in-empty-document-expected.txt: Added.
        * editing/selection/extend-by-line-in-empty-document.html: Added.

2011-03-09  Brian Weinstein  <bweinstein@apple.com>

        Update expected results of svg/css/getComputedStyle-basic after r80582.

        * svg/css/getComputedStyle-basic-expected.txt:

2011-03-09  Mihai Parparita  <mihaip@chromium.org>

        Update chromium-gpu expectations.

        * platform/chromium/test_expectations.txt:

2011-03-09  Brian Weinstein  <bweinstein@apple.com>

        Update expected results of computed-style and computed-style-without-renderer after
        r80582.

        * fast/css/getComputedStyle/computed-style-expected.txt:
        * fast/css/getComputedStyle/computed-style-without-renderer-expected.txt:

2011-03-09  Csaba Osztrogonác  <ossy@webkit.org>

        Unreviewed.

        jquery/manipulation.html fails after r80598
        https://bugs.webkit.org/show_bug.cgi?id=56019

        * platform/qt/Skipped:Add jquery tests to make buildbots happier.

2011-03-09  Yury Semikhatsky  <yurys@chromium.org>

        Reviewed by Pavel Feldman.

        Web Inspector: pass explicit agent references to InspectorBackendDispatcher
        https://bugs.webkit.org/show_bug.cgi?id=55820

        * http/tests/inspector-enabled/open-close-open-expected.txt:
        * http/tests/inspector-enabled/open-close-open.html:
        * http/tests/inspector/inspector-test.js:
        ():

2011-03-09  Roland Steiner  <rolandsteiner@chromium.org>

        Unreviewed: assign bug entries to Chromium test expectations.

        * platform/chromium/test_expectations.txt:

2011-03-09  Carlos Garcia Campos  <cgarcia@igalia.com>

        Unreviewed. Move fast/canvas/rgba-parsing.html to the group of
        tests failing due to rounding color problems in cairo/pixman.

        * platform/gtk/Skipped:

2011-03-09  Roland Steiner  <rolandsteiner@chromium.org>

        Unreviewed: more vertical text fallout for the chromium test expectations.
        Also, a rebaseline.

        * platform/chromium-mac/fast/lists/003-vertical-expected.checksum: Added.
        * platform/chromium-mac/fast/lists/003-vertical-expected.png: Added.
        * platform/chromium-mac/fast/lists/003-vertical-expected.txt: Added.
        * platform/chromium/test_expectations.txt:

2011-03-09  Ilya Tikhonovsky  <loislo@chromium.org>

        Reviewed by Yury Semikhatsky.

        Web Inspector: Web Inspector: we don't need to transfer objectId and hasChildren for primitive values.
        https://bugs.webkit.org/show_bug.cgi?id=55998

        * inspector/protocol/console-agent-expected.txt:
        * inspector/protocol/runtime-agent-expected.txt:

2011-03-09  Pavel Feldman  <pfeldman@chromium.org>

        Reviewed by Yury Semikhatsky.

        Web Inspector: watch expressions should show string values in quotes.
        https://bugs.webkit.org/show_bug.cgi?id=55846

        * http/tests/inspector/inspector-test.js:
        (initialize_InspectorTest):
        * inspector/console/console-dir-expected.txt:
        * inspector/console/console-dir.html:
        * inspector/debugger/debugger-expand-scope-expected.txt:
        * inspector/debugger/debugger-expand-scope.html:
        * platform/chromium/inspector/console/console-dir-expected.txt:
        * platform/chromium/inspector/debugger/debugger-expand-scope-expected.txt:

2011-03-09  Pavel Feldman  <pfeldman@chromium.org>

        Reviewed by Yury Semikhatsky.

        Web Inspector: "length" getter is invoked upon console object formatting.
        https://bugs.webkit.org/show_bug.cgi?id=55220

        * inspector/console/console-format-expected.txt:
        * inspector/console/console-format.html:
        * platform/chromium/inspector/console/console-format-expected.txt:

2011-03-09  Roland Steiner  <rolandsteiner@chromium.org>

        Unreviewed: yet more tweaking of the chromium test expectations.

        * platform/chromium/test_expectations.txt:

2011-03-09  Roland Steiner  <rolandsteiner@chromium.org>

        Unreviewed: fix chromium test expectations file.

        * platform/chromium/test_expectations.txt:

2011-03-09  Roland Steiner  <rolandsteiner@chromium.org>

        Unreviewed: update chromium test expectations

        * platform/chromium/test_expectations.txt:

2011-03-08  Ilya Tikhonovsky  <loislo@chromium.org>

        Reviewed by Pavel Feldman.

        Web Inspector: remove groupName from objectId.
        https://bugs.webkit.org/show_bug.cgi?id=55825

        * inspector/protocol/runtime-agent-expected.txt:

2011-03-08  Xiaomei Ji  <xji@chromium.org>

        Unreviewed.

        Add tests introduced in r80622 as expect to fail for now, rebase later.

        * platform/chromium/test_expectations.txt:

2011-03-08  Xiaomei Ji  <xji@chromium.org>

        Reviewed by David Hyatt.

        Fix Regression: Content not drawn when scrolling horizontally in an RTL page.
        https://bugs.webkit.org/show_bug.cgi?id=55077.

        * fast/dom/scroll-reveal-left-overflow.html: Added.
        * fast/dom/scroll-reveal-top-overflow.html: Added.
        * platform/mac/fast/dom/scroll-reveal-left-overflow-expected.checksum: Added.
        * platform/mac/fast/dom/scroll-reveal-left-overflow-expected.png: Added.
        * platform/mac/fast/dom/scroll-reveal-left-overflow-expected.txt: Added.
        * platform/mac/fast/dom/scroll-reveal-top-overflow-expected.checksum: Added.
        * platform/mac/fast/dom/scroll-reveal-top-overflow-expected.png: Added.
        * platform/mac/fast/dom/scroll-reveal-top-overflow-expected.txt: Added.

2011-03-08  Gavin Barraclough  <barraclough@apple.com>

        Reviewed by Sam Weinig

        Bug 55994 - Functions on Array.prototype should check length first.
        These methods are designed to work on generic objects too, and if 'length'
        is a getter that throws an exception, ensure this is correctly thrown
        (even if other exceptions would be thrown, too).

        Added test cases.

        * fast/js/array-proto-func-length-getter-except-expected.txt: Added.
        * fast/js/array-proto-func-length-getter-except.html: Added.
        * fast/js/script-tests/array-proto-func-length-getter-except.js: Added.
        (lengthGetter):
        (test):

2011-03-08  Mihai Parparita  <mihaip@chromium.org>

        Add failing expectation for compositing/webgl/
        webgl-nonpremultiplied-blend.html.

        * platform/chromium/test_expectations.txt:

2011-03-08  Kenji Imasaki  <imasaki@chromium.org>

        Reviewed by David Levin.

        [Chromium] Clean up Media GPU test expectation since
        http://crbug.com?id=74887 was fixed. These expectations are based
        on the results on flakiness dashboard.

        * platform/chromium/test_expectations.txt:

2011-03-08  Martin Robinson  <mrobinson@igalia.com>

        Rebaseline a GTK+ result after r80582.

        * platform/gtk/fast/css/getComputedStyle/computed-style-without-renderer-expected.txt:

2011-03-08  Csaba Osztrogonác  <ossy@webkit.org>

        Unreviewed.

        https://bugs.webkit.org/show_bug.cgi?id=48540, support the text-orientation CSS property.
        Update Qt specific expected results after r80582.

        * platform/qt/fast/css/getComputedStyle/computed-style-expected.txt:
        * platform/qt/fast/css/getComputedStyle/computed-style-without-renderer-expected.txt:

2011-03-08  Joe Wild  <joseph.wild@nokia.com>

        Reviewed by Csaba Osztrogonác.

        [Qt] Missing SVG variables
        https://bugs.webkit.org/show_bug.cgi?id=32941

        Basically, this patch just modifies features.pri to the Qt build to
        pass on the ENABLE_SVG_* flags to the IDL binding generator.

        Also I had remove global-construtors.html from the skip list and
        updated the associated expected results files.

        * platform/qt/Skipped:
        * platform/qt/fast/dom/Window/window-properties-expected.txt:
        * platform/qt/fast/dom/Window/window-property-descriptors-expected.txt:
        * platform/qt/fast/dom/prototype-inheritance-expected.txt:
        * platform/qt/fast/js/global-constructors-expected.txt:

2011-03-08  David Hyatt  <hyatt@apple.com>

        Reviewed by Dan Bernstein.

        https://bugs.webkit.org/show_bug.cgi?id=48540, support the text-orientation CSS property.

        This patch adds support for two values of the text-orientation property (the ones that actually matter): vertical-right and upright.
        The TextOrientation is part of the FontDescription and used to look up fonts (similar to FontOrientation).

        Orientation of non-CJK characters is done using fallback font data of the appropriate orientation type, e.g., verticalRightOrientation and
        uprightOrientation fallback font data.  Vertical right is just implemented as a normal horizontal font.  Upright is implemented as a
        vertically oriented font that rotates all glyphs.

        The main complication implementing text-orientation is that fonts have "baked-in" vertical glyphs for letters that are hardcoded to
        a vertical right facing.  This means that you can use those special vertical glyphs for vertical-right orientation without having to
        fall back, but then for upright orientation you have to ignore them and still fall back.  As you can see from the test case, this doesn't
        work very well, but hopefully it won't be all that common.  Limitations of CoreText prevent this case from rendering properly in either the
        simple or complex code paths, although the simple code path at least gets close.

        Added fast/blockflow/text-orientation-basic.html

        * fast/blockflow/text-orientation-basic.html: Added.
        * platform/mac/fast/blockflow/text-orientation-basic-expected.checksum: Added.
        * platform/mac/fast/blockflow/text-orientation-basic-expected.png: Added.
        * platform/mac/fast/blockflow/text-orientation-basic-expected.txt: Added.

2011-03-08  Nico Weber  <thakis@chromium.org>

        Reviewed by James Robinson.

        Crash on big blur radius with canvas
        https://bugs.webkit.org/show_bug.cgi?id=55951

        * fast/canvas/shadow-huge-blur-expected.txt: Added.
        * fast/canvas/shadow-huge-blur.html: Added.

2011-03-08  Tony Chang  <tony@chromium.org>

        Unreviewed, add pngs to chromium and chromium-linux .checksum files
        that are missing pngs.  I generated these on my local desktop.

        * platform/chromium-linux/fast/block/float/clear-element-too-wide-for-containing-block-expected.png: Added.
        * platform/chromium-linux/fast/blockflow/english-bt-text-expected.png: Added.
        * platform/chromium-linux/fast/blockflow/english-lr-text-expected.png: Added.
        * platform/chromium-linux/fast/blockflow/english-rl-text-expected.png: Added.
        * platform/chromium-linux/fast/multicol/border-padding-pagination-expected.png: Added.
        * platform/chromium-linux/fast/multicol/margin-collapse-expected.png: Added.
        * platform/chromium-linux/tables/mozilla/bugs/bug16012-expected.png: Added.
        * platform/chromium/fast/images/png_per_row_alpha_decoding-expected.png: Added.

2011-03-08  Martin Maly  <mmaly@chromium.org>

        Reviewed by Dimitri Glazkov.

        [Chromium] Expectation updates for strict mode V8 features.
        https://bugs.webkit.org/show_bug.cgi?id=55789

        * platform/chromium/fast/js/mozilla/strict/15.5.5.1-expected.txt:

2011-03-08  Tony Chang  <tony@chromium.org>

        Unreviewed, remove png layout test results that don't have
        corresponding checksum files.  I checked a few of these and they
        were cases where the .checksum was removed and the .png forgotten.

        * platform/gtk/fast/css/xml-stylesheet-pi-not-in-prolog-expected.png: Removed.
        * platform/gtk/fast/encoding/utf-16-no-bom-expected.png: Removed.
        * platform/gtk/svg/hixie/error/004-expected.png: Removed.
        * platform/gtk/svg/hixie/error/005-expected.png: Removed.
        * platform/mac-leopard/fast/css/xml-stylesheet-pi-not-in-prolog-expected.png: Removed.
        * platform/mac-leopard/fast/encoding/utf-16-no-bom-expected.png: Removed.
        * platform/mac-leopard/svg/hixie/error/004-expected.png: Removed.
        * platform/mac-leopard/svg/hixie/error/005-expected.png: Removed.
        * platform/mac/editing/selection/contenteditable-click-outside-expected.png: Removed.
        * platform/mac/fast/css/xml-stylesheet-pi-not-in-prolog-expected.png: Removed.
        * platform/mac/fast/dynamic/8952-reduction-expected.png: Removed.
        * platform/mac/fast/encoding/utf-16-no-bom-expected.png: Removed.
        * platform/mac/fast/js/Plug-ins-expected.png: Removed.
        * platform/mac/fast/table/row-height-recalc2-expected.png: Removed.
        * platform/mac/svg/hixie/error/004-expected.png: Removed.
        * platform/mac/svg/hixie/error/005-expected.png: Removed.
        * platform/qt/fast/table/row-height-recalc2-expected.png: Removed.
        * platform/win/fast/table/row-height-recalc2-expected.png: Removed.

2011-03-08  Philippe Normand  <pnormand@igalia.com>

        REGRESSION (r80478): broke GTK inspector tests
        https://bugs.webkit.org/show_bug.cgi?id=55941

        Unreviewed, skipping inspector crashing tests on GTK.

        * platform/gtk/Skipped:

2011-03-08  Philippe Normand  <pnormand@igalia.com>

        Unreviewed, updated GTK baselines of fast/text and 2 SVG
        text-related tests after r80526.

        * platform/gtk/fast/text/international/complex-character-based-fallback-expected.txt:
        * platform/gtk/fast/text/international/thai-line-breaks-expected.txt:
        * platform/gtk/fast/text/large-text-composed-char-expected.txt:
        * platform/gtk/svg/W3C-SVG-1.1/text-intro-05-t-expected.txt:
        * platform/gtk/svg/text/text-intro-05-t-expected.txt:

2011-03-08  Carlos Garcia Campos  <cgarcia@igalia.com>

        Reviewed by Martin Robinson.

        [GTK] Add layoutTestController.setValueForUser() after r80412
        https://bugs.webkit.org/show_bug.cgi?id=55862

        * platform/gtk/Skipped: Unskip test
        fast/forms/onchange-setvalueforuser.html that passes now.

2011-03-08  Noel Gordon  <noel.gordon@gmail.com>

        Reviewed by James Robinson.

        [Chromium] Rebaseline CSS3 elliptical gradient tests linux, win32
        https://bugs.webkit.org/show_bug.cgi?id=55742

        Skia CSS3 elliptical gradient support was added on r79063; rebaseline the associated
        win32 and linux tests.  There are separate linux results herein due to (minor) pixel
        differences with win32.  See the bug for the diff images.

        * platform/chromium-linux/fast/gradients/css3-color-stop-units-expected.checksum: Added.
        * platform/chromium-linux/fast/gradients/css3-color-stop-units-expected.png: Added.
        * platform/chromium-linux/fast/gradients/css3-color-stops-expected.checksum: Added.
        * platform/chromium-linux/fast/gradients/css3-color-stops-expected.png: Added.
        * platform/chromium-linux/fast/gradients/css3-linear-angle-gradients-expected.checksum: Added.
        * platform/chromium-linux/fast/gradients/css3-linear-angle-gradients-expected.png: Added.
        * platform/chromium-linux/fast/gradients/css3-radial-gradients-expected.checksum: Added.
        * platform/chromium-linux/fast/gradients/css3-radial-gradients-expected.png: Added.
        * platform/chromium-linux/fast/gradients/css3-radial-gradients2-expected.checksum: Added.
        * platform/chromium-linux/fast/gradients/css3-radial-gradients2-expected.png: Added.
        * platform/chromium-linux/fast/gradients/css3-repeating-radial-gradients-expected.checksum: Added.
        * platform/chromium-linux/fast/gradients/css3-repeating-radial-gradients-expected.png: Added.
        * platform/chromium-win/fast/gradients/css3-color-stop-units-expected.checksum: Added.
        * platform/chromium-win/fast/gradients/css3-color-stop-units-expected.png: Added.
        * platform/chromium-win/fast/gradients/css3-color-stops-expected.checksum: Added.
        * platform/chromium-win/fast/gradients/css3-color-stops-expected.png: Added.
        * platform/chromium-win/fast/gradients/css3-linear-angle-gradients-expected.checksum: Added.
        * platform/chromium-win/fast/gradients/css3-linear-angle-gradients-expected.png: Added.
        * platform/chromium-win/fast/gradients/css3-radial-gradients-expected.checksum: Added.
        * platform/chromium-win/fast/gradients/css3-radial-gradients-expected.png: Added.
        * platform/chromium-win/fast/gradients/css3-radial-gradients2-expected.checksum: Added.
        * platform/chromium-win/fast/gradients/css3-radial-gradients2-expected.png: Added.
        * platform/chromium-win/fast/gradients/css3-radial-gradients3-expected.checksum: Added.
        * platform/chromium-win/fast/gradients/css3-radial-gradients3-expected.png: Added.
        * platform/chromium-win/fast/gradients/css3-repeating-radial-gradients-expected.checksum: Added.
        * platform/chromium-win/fast/gradients/css3-repeating-radial-gradients-expected.png: Added.
        * platform/chromium/test_expectations.txt:

2011-03-08  Zan Dobersek  <zandobersek@gmail.com>

        Reviewed by Martin Robinson.

        [Gtk] toDataURL uses incorrect quality value when saving GdkPixbuf to buffer
        https://bugs.webkit.org/show_bug.cgi?id=55878

        Enable a passing test now that we properly use the quality value when requesting
        a GdkPixbuf to be saved into a buffer.

        * platform/gtk/Skipped:

2011-03-07  Fumitoshi Ukai  <ukai@chromium.org>

        Unreviewed, update chromium test expectations.

        Looks editing/pasteboard/data-transfer-items.html is slow.

        * platform/chromium/test_expectations.txt:

2011-03-07  Andy Estes  <aestes@apple.com>

        Reviewed by Dan Bernstein.

        REGRESSION (r79060): Timestamp is missing from tweets in twitter.
        https://bugs.webkit.org/show_bug.cgi?id=55228

        * fast/js/date-parse-test-expected.txt:
        * fast/js/script-tests/date-parse-test.js:

2011-03-07  Fumitoshi Ukai  <ukai@chromium.org>

        Unreviewed, update chromium test expectations.

        Fix jquery/effects.html and fast/viewpoert/viewport-129.html

        * platform/chromium/test_expectations.txt:

2011-03-07  Daniel Cheng  <dcheng@chromium.org>

        Reviewed by David Levin.

        Add support for DataTransferItems
        https://bugs.webkit.org/show_bug.cgi?id=55115

        Layout test to verify that the basic properties of dataTransfer.items function as expected.

        * editing/pasteboard/data-transfer-items-expected.txt: Added.
        * editing/pasteboard/data-transfer-items.html: Added.
        * platform/gtk/Skipped:
        * platform/mac/Skipped:
        * platform/qt/Skipped:
        * platform/win/Skipped:

2011-03-07  Victoria Kirst  <vrk@google.com>

        Reviewed by Mihai Parparita.

        Rebaseline GPU media/video-display-toggle.html for snow leopard
        https://bugs.webkit.org/show_bug.cgi?id=55920

        * platform/chromium-gpu-mac/media/video-display-toggle-expected.checksum:
        * platform/chromium-gpu-mac/media/video-display-toggle-expected.png:
        * platform/chromium-gpu-mac/media/video-no-audio-expected.checksum:
        * platform/chromium-gpu-mac/media/video-no-audio-expected.png:
        * platform/chromium-gpu-mac/media/video-volume-slider-expected.checksum:
        * platform/chromium-gpu-mac/media/video-volume-slider-expected.png:
        * platform/chromium/test_expectations.txt:

2011-03-07  Fumitoshi Ukai  <ukai@chromium.org>

        Unreviewed, update chromium test expectations.

        Update fast/text/large-text-composed-char.html on Windows

        * platform/chromium/test_expectations.txt:

2011-03-07  Fumitoshi Ukai  <ukai@chromium.org>

        Unreviewed, update chromium test expectations.

        Update fast/viewport/viewport-{128,129}.html

        * platform/chromium/test_expectations.txt:

2011-03-07  Daniel Cheng  <dcheng@chromium.org>

        Unreviewed.

        Updated Skipped lists for editing/pasteboard/onpaste-text-html-types.html.
        https://bugs.webkit.org/show_bug.cgi?id=55921
        https://bugs.webkit.org/show_bug.cgi?id=55922

        * platform/qt-wk2/Skipped:
        * platform/qt/Skipped:
        * platform/win/Skipped:

2011-03-07  Fumitoshi Ukai  <ukai@chromium.org>

        Unreviewed, update chromium test expectations.

        Update fast/text/large-text-composed-char-dos.html

        * platform/chromium/test_expectations.txt:

2011-03-07  Alexey Proskuryakov  <ap@apple.com>

        Reviewed by Darin Adler.

        REGRESSION (HTML5 tree builder): Text selection in a large text document is extremely slow
        https://bugs.webkit.org/show_bug.cgi?id=55898

        * platform/mac/fast/text/large-text-composed-char-expected.txt: The huge text run is split
        into multiple text nodes again.

2011-03-07  Fumitoshi Ukai  <ukai@chromium.org>

        Unreviewed, update chromium test expectations.

        Add svg/css/rect-gradient-stroke-shadow.svg added by webkit r80515

        * platform/chromium/test_expectations.txt:

2011-03-07  Fumitoshi Ukai  <ukai@chromium.org>

        Unreviewed, update chromium test expectations.

        svg/W3C-SVG-1.1/struct-image-07-t.svg failing

        * platform/chromium/test_expectations.txt:

2011-03-07  Fumitoshi Ukai  <ukai@chromium.org>

        Unreviewed, update chromium test expectations.

        Mark several jquery tests slow for debug build.

        * platform/chromium/test_expectations.txt:

2011-03-07  Sergey Glazunov  <serg.glazunov@gmail.com>

        Reviewed by Eric Seidel.

        Add the missing insertedIntoDocument() call in SVGVKernElement and SVGHKernElement
        https://bugs.webkit.org/show_bug.cgi?id=55896

        * svg/dom/vkern-element-crash-expected.txt: Added.
        * svg/dom/vkern-element-crash.html: Added.

2011-03-07  Cosmin Truta  <ctruta@chromium.org>

        Reviewed by Adam Barth.

        SVG <image> referenced by <use> is displayed incorrectly
        https://bugs.webkit.org/show_bug.cgi?id=55750

        * svg/custom/resources/rgb.svg: Added.
        * svg/custom/use-image-in-g-expected.checksum: Added.
        * svg/custom/use-image-in-g-expected.png: Added.
        * svg/custom/use-image-in-g-expected.txt: Added.
        * svg/custom/use-image-in-g.svg: Added.

2011-03-07  Helder Correia  <helder@sencha.com>

        Reviewed by Simon Fraser.

        Shadow is not shown when using strokeRect with a gradient strokeStyle
        https://bugs.webkit.org/show_bug.cgi?id=52509

        This happens in CG and is related to bug 51869, this time to be fixed
        in GraphicsContext::strokeRect(const FloatRect& r, float lineWidth).
        We need to draw the gradient clipped to the stroke on a CGLayer first,
        and then draw the layer on the GraphicsContext.

        * fast/canvas/canvas-strokeRect-gradient-shadow-expected.txt: Added.
        * fast/canvas/canvas-strokeRect-gradient-shadow.html: Added.
        * fast/canvas/script-tests/canvas-strokeRect-gradient-shadow.js: Added.
        * platform/chromium/test_expectations.txt: Skip new test since it fails.
        * platform/mac/svg/css/rect-gradient-stroke-shadow-expected.checksum: Added.
        * platform/mac/svg/css/rect-gradient-stroke-shadow-expected.png: Added.
        * platform/qt/Skipped: Skip new test since it fails.
        * platform/qt/svg/css/rect-gradient-stroke-shadow-expected.checksum: Added.
        * platform/qt/svg/css/rect-gradient-stroke-shadow-expected.png: Added.
        * svg/css/rect-gradient-stroke-shadow-expected.txt: Added.
        * svg/css/rect-gradient-stroke-shadow.svg: Added.

2011-03-07  Fumitoshi Ukai  <ukai@chromium.org>

        Unreviewed, update chromium test expectations.

        Mark jquery/effects.html slow.

        * platform/chromium/test_expectations.txt:

2011-03-07  Fumitoshi Ukai  <ukai@chromium.org>

        Unreviewed, update chromium test expectations.

        Some fast/viewport tests are missing expectations.

        * platform/chromium/test_expectations.txt:

2011-03-07  Adam Barth  <abarth@webkit.org>

        Reviewed by Dimitri Glazkov.

        Import jquery test suite
        https://bugs.webkit.org/show_bug.cgi?id=55911

        This test suite is imported from https://github.com/jquery/jquery.  I
        tried to make as few changes as possible in case we want to merge with
        upstream in the future.  The test suite was original licensed under the
        MIT license, which is compatible with WebKit's license.

        * jquery: Added.

2011-03-07  Daniel Cheng  <dcheng@chromium.org>

        Unreviewed.

        Skip onpaste-text-html-types.html on Mac and Qt since parts of the test
        infrastructure to support it aren't there.

        * platform/mac/Skipped:
        * platform/qt-wk2/Skipped:

2011-03-07  Adam Barth  <abarth@webkit.org>

        Reviewed by Dimitri Glazkov.

        REGRESSION(r78147): Crash on http://gnarf.net/jquery/test/
