Unreviewed build correction.

Avoid duplicate stub implementation of test routine
for WinCairo build.

* WebKitTestRunner/win/TestInvocationWin.cpp: Exclude
WinCairo from using this stub.



git-svn-id: http://svn.webkit.org/repository/webkit/trunk@84268 268f45cc-cd09-0410-ab3c-d52691b4dbfc
2011-04-19  Ojan Vafai  <ojan@chromium.org>

        Remove accidentally committed debug code.
        * Scripts/webkitpy/layout_tests/layout_package/test_runner.py:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@84269 268f45cc-cd09-0410-ab3c-d52691b4dbfc
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  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

        Switched to using FocusController when moving focus to a plugin
        so that cross-frame focus changes are handled correctly.

        * src/WebPluginContainerImpl.cpp:
        (WebKit::WebPluginContainerImpl::handleMouseEvent):

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@84270 268f45cc-cd09-0410-ab3c-d52691b4dbfc
2011-04-19  Jungshik Shin  <jshin@chromium.org>

        Reviewed by Adam Barth

        Fix the compile failure in UniscribeHelperTest.cpp due to
        a change in UniscribeHelper made by the CL for bug 48860
        (r84264)

        http://bugs.webkit.org/show_bug.cgi?id=48860

        * tests/UniscribeHelperTest.cpp:
        (TEST_F):


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@84271 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Skip another accelerated-compositing-sensitive test when accelerated compositing is disabled

* Scripts/old-run-webkit-tests: Skip media/controls-without-preload.html on Windows when
accelerated compositing is disabled.

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@84272 268f45cc-cd09-0410-ab3c-d52691b4dbfc
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

        Fix various border-drawing bugs, and optimize some common cases.
        Also refactors a lot of the border-drawing code to be more maintainable.

            Rounded border rendering with different border widths looks strange
            https://bugs.webkit.org/show_bug.cgi?id=17468

            paintBorder in RenderObject paint two times the corners
            https://bugs.webkit.org/show_bug.cgi?id=20495

            Overdraw at box corners when using RGBA colors with alpha
            https://bugs.webkit.org/show_bug.cgi?id=21835

            Enable antialiasing for border drawing, when transformed
            https://bugs.webkit.org/show_bug.cgi?id=22746

            Drawing border-radius from path sometimes fails to round outer border in the double style when it should
            https://bugs.webkit.org/show_bug.cgi?id=41301

            Drawing border-radius from path doesn't appear to always match up border edges correctly
            https://bugs.webkit.org/show_bug.cgi?id=41302

        Also fixes
            Should be able to create Path from RoundedIntRect
            https://bugs.webkit.org/show_bug.cgi?id=58809

        Tests: fast/borders/border-radius-different-width-001.html
               fast/borders/border-radius-inset-outset.html
               fast/borders/table-borders.html

        * platform/graphics/FloatPoint.h:
        * platform/graphics/FloatPoint.cpp:
        (WebCore::findSlope):
        (WebCore::findIntersection):
        New geometry helper functions (should eventually move into a new
        GeometryUtilities file).

        * platform/graphics/Path.h:
        * platform/graphics/Path.cpp:
        (WebCore::Path::addRoundedRect):
        Add an overload of addRoundedRect() that takes a RoundedIntRect.

        * platform/graphics/GraphicsContext.cpp:
        (WebCore::GraphicsContext::addRoundedRectClip):
        (WebCore::GraphicsContext::clipOutRoundedRect):
        (WebCore::GraphicsContext::fillRectWithRoundedHole):
        Can now add a RoundedIntRect to a Path directly.

        * platform/graphics/IntRect.h:
        (WebCore::IntRect::minXMinYCorner):
        (WebCore::IntRect::maxXMinYCorner):
        (WebCore::IntRect::minXMaxYCorner):
        (WebCore::IntRect::maxXMaxYCorner):
        Convenience functions to get the rect corners, in a writing-mode-
        friendly way.

        * platform/graphics/RoundedIntRect.h:
        * platform/graphics/RoundedIntRect.cpp:
        (WebCore::RoundedIntRect::isRenderable):
        We need to know when Path::addRoundedRect() will fail because
        the sum of the radii exceed the height or width. This method tells
        us that.

        * platform/graphics/cg/GraphicsContextCG.cpp:
        (WebCore::GraphicsContext::fillRectWithRoundedHole):
        Can now add a RoundedIntRect to a Path directly.

        * rendering/RenderBoxModelObject.h:
        * rendering/RenderBoxModelObject.cpp:
        (WebCore::borderWillArcInnerEdge):
        This can just to see if there are inner radii now.

        (WebCore::edgeFlagForSide):
        (WebCore::includesEdge):
        Convenience functions for the BorderEdgeFlags bitmask.

        (WebCore::BorderEdge::BorderEdge):
        (WebCore::BorderEdge::hasVisibleColorAndStyle):
        (WebCore::BorderEdge::shouldRender):
        (WebCore::BorderEdge::presentButInvisible):
        (WebCore::BorderEdge::usedWidth):
        (WebCore::BorderEdge::getDoubleBorderStripeWidths):
        Convenience class to hold data about how a single edge
        is drawn, and to contain some commonly used width-related methods.

        (WebCore::edgesShareColor):
        (WebCore::styleRequiresClipPolygon):
        (WebCore::borderStyleFillsBorderArea):
        (WebCore::borderStyleHasInnerDetail):
        (WebCore::borderStyleIsDottedOrDashed):
        (WebCore::borderStyleHasUnmatchedColorsAtCorner):
        (WebCore::colorsMatchAtCorner):
        (WebCore::willBeOverdrawn):
        (WebCore::borderStylesRequireMitre):
        (WebCore::joinRequiresMitre):
        Functions used to make the border drawing code more readable,
        which are used to determine when corners need a mitre, and
        need antialiasing.

        (WebCore::RenderBoxModelObject::paintOneBorderSide):
        Code to paint one side of a border, either via the path, or
        using rects/polygons, the appropriate mitres and antialiasing
        at the corners. includeLogicalLeftEdge and includeLogicalRightEdge need
        to be passed all the way down here so that when we recompute the
        path for double and ridge/groove borders, we correctly handle split box
        borders.

        (WebCore::RenderBoxModelObject::paintBorderSides):
        Paints the 4 border sides (if present).

        (WebCore::RenderBoxModelObject::paintTranslucentBorderSides):
        Called when one or more of the borders has a non-opaque color,
        and uses a transparency layer for each set of same-colored
        sides to avoid overdraw at the corners.

        (WebCore::RenderBoxModelObject::paintBorder):
        Builds an array of BorderEdge so we can iterate over them to
        detect different border compbinations, and optimizations. Has
        a fast path for all-solid borders.

        (WebCore::RenderBoxModelObject::drawBoxSideFromPath):
        Moved from RenderObject, since all callers are in RenderBoxModelObject.
        Has the following changes:
          * Don't attempt to draw dashes if there is only space for a few,
            since it looks bad.
          * Handle double and groove borders on split inlines correctly,
            making use of includeLogicalLeftEdge, includeLogicalRightEdge

        (WebCore::findInnerVertex):
        For borders with a radiused inner edge, the per-side clip polygon
        has to project inside the padding box to avoid clipping the inner edge.
        This function computes a reasonable inner corner for the clipping
        polygon.
        (WebCore::RenderBoxModelObject::clipBorderSidePolygon):
        Have the corner joins pass through the corners of the inner and outer
        border rectangles, ensure we don't clip the inside if necessary,
        and handle antialiasing on the two mitres.

        (WebCore::RenderBoxModelObject::paintBoxShadow):
        Use RenderStyle::getRoundedInnerBorderFor() rather than computeBorderInnerRect()
        etc.

        * rendering/RenderObject.h:
        * rendering/RenderObject.cpp:
        (WebCore::RenderObject::drawLineForBoxSide):
        Moved to RenderBoxModelObject.

        * rendering/style/RenderStyle.h:
        * rendering/style/RenderStyle.cpp:
        (WebCore::RenderStyle::getRoundedBorderFor):
        (WebCore::RenderStyle::getRoundedInnerBorderFor):
        There was some very clumsy code that computed a rounded rect
        given the border rect and side widths. Cleaned this up by moving
        some code into RenderStyle. The overloaded getRoundedInnerBorderFor()
        which takes the border widths is used by the double and groove drawing
        code.

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@84273 268f45cc-cd09-0410-ab3c-d52691b4dbfc
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:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@84274 268f45cc-cd09-0410-ab3c-d52691b4dbfc
[wx] Unreviewed build fix for Win / wx 2.9 wxPython installation.


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@84275 268f45cc-cd09-0410-ab3c-d52691b4dbfc
2011-04-19  Evan Martin  <evan@chromium.org>

        Reviewed by Darin Fisher.

        [chromium] didReceiveTitle API signature should not change
        https://bugs.webkit.org/show_bug.cgi?id=58909

        My previous attempt at a temporary shim was wrong.
        This second try should correctly work with older clients.

        * public/WebFrameClient.h:
        (WebKit::WebFrameClient::didReceiveTitle):

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@84276 268f45cc-cd09-0410-ab3c-d52691b4dbfc
2011-04-19  Stephen White  <senorblanco@chromium.org>

        Reviewed by Kenneth Russell.

        Refactor GLES2Canvas state application out into its own function.
        https://bugs.webkit.org/show_bug.cgi?id=58906

        Covered by existing tests in fast/canvas and canvas/philip.

        * platform/graphics/chromium/GLES2Canvas.cpp:
        (WebCore::GLES2Canvas::applyState):
        New function to apply compositing and clipping state.
        (WebCore::GLES2Canvas::fillPath):
        (WebCore::GLES2Canvas::fillRect):
        (WebCore::GLES2Canvas::beginShadowDraw):
        (WebCore::GLES2Canvas::endShadowDraw):
        Refactor calls to applyState().
        * platform/graphics/chromium/GLES2Canvas.h:


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@84277 268f45cc-cd09-0410-ab3c-d52691b4dbfc
2011-04-19  Simon Fraser  <simon.fraser@apple.com>

        Build fix. For some reason RenderBoxModelObject.cpp
        was missing from my last commit.

        * rendering/RenderBoxModelObject.cpp:
        (WebCore::borderWillArcInnerEdge):
        (WebCore::edgeFlagForSide):
        (WebCore::includesEdge):
        (WebCore::BorderEdge::BorderEdge):
        (WebCore::BorderEdge::hasVisibleColorAndStyle):
        (WebCore::BorderEdge::shouldRender):
        (WebCore::BorderEdge::presentButInvisible):
        (WebCore::BorderEdge::usedWidth):
        (WebCore::BorderEdge::getDoubleBorderStripeWidths):
        (WebCore::edgesShareColor):
        (WebCore::styleRequiresClipPolygon):
        (WebCore::borderStyleFillsBorderArea):
        (WebCore::borderStyleHasInnerDetail):
        (WebCore::borderStyleIsDottedOrDashed):
        (WebCore::borderStyleHasUnmatchedColorsAtCorner):
        (WebCore::colorsMatchAtCorner):
        (WebCore::willBeOverdrawn):
        (WebCore::borderStylesRequireMitre):
        (WebCore::joinRequiresMitre):
        (WebCore::RenderBoxModelObject::paintOneBorderSide):
        (WebCore::RenderBoxModelObject::paintBorderSides):
        (WebCore::RenderBoxModelObject::paintTranslucentBorderSides):
        (WebCore::RenderBoxModelObject::paintBorder):
        (WebCore::RenderBoxModelObject::drawBoxSideFromPath):
        (WebCore::findInnerVertex):
        (WebCore::RenderBoxModelObject::clipBorderSidePolygon):
        (WebCore::RenderBoxModelObject::paintBoxShadow):

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@84278 268f45cc-cd09-0410-ab3c-d52691b4dbfc
2011-04-19  Ryosuke Niwa  <rniwa@webkit.org>

        Skip the test added by r84270 on WebKit2 since it uses eventSender.

        * platform/mac-wk2/Skipped:


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@84279 268f45cc-cd09-0410-ab3c-d52691b4dbfc
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:


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@84280 268f45cc-cd09-0410-ab3c-d52691b4dbfc
2011-04-19  Anders Carlsson  <andersca@apple.com>

        Reviewed by Sam Weinig.

        Add a way to set the default sync message timeout for a CoreIPC connection
        https://bugs.webkit.org/show_bug.cgi?id=58908

        * Platform/CoreIPC/Connection.cpp:
        (CoreIPC::Connection::Connection):
        Initialize m_defaultSyncMessageTimeout.

        (CoreIPC::Connection::setDefaultSyncMessageTimeout):
        Set the m_defaultSyncMessageTimeout member variable.

        (CoreIPC::Connection::waitForSyncReply):
        Handle the timeout being one of our two special magic values.

        * Platform/CoreIPC/Connection.h:
        Add a DefaultTimeout constant and change the NoTimeout constant to be -1.


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@84281 268f45cc-cd09-0410-ab3c-d52691b4dbfc
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:


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@84282 268f45cc-cd09-0410-ab3c-d52691b4dbfc
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

        When computing the radii for a segment of a split inline, we have to
        constrain those radii for the current segment, while still drawing
        using the entire logical width.

        Tests: fast/backgrounds/border-radius-split-background-image.html
               fast/backgrounds/border-radius-split-background.html

        * rendering/InlineFlowBox.cpp:
        (WebCore::InlineFlowBox::paintFillLayer):
        Pass height and width for this box only to paintFillLayer()

        * rendering/RenderBox.cpp:
        (WebCore::RenderBox::paintFillLayer):
        Pass 0 for unused inlineBox height and width.

        * rendering/RenderBoxModelObject.h:
        * rendering/RenderBoxModelObject.cpp:
        (WebCore::RenderBoxModelObject::getBackgroundRoundedRect):
        When computing the rounded background rect, we have to take the size of
        this segment of the inline box into account for radius constraining.
        (WebCore::RenderBoxModelObject::paintFillLayerExtended):
        Call getBackgroundRoundedRect() in two places.

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@84283 268f45cc-cd09-0410-ab3c-d52691b4dbfc
<http://webkit.org/b/57867> Re-order enum ResourceLoadPriority to make Unresolved value less important

Reviewed by Antti Koivisto.

* platform/network/ResourceLoadPriority.h:
(enum ResourceLoadPriority): Moved Unresolved enum to the top of
the list and set to -1 to emphasize the fact that this is an
unresolved priority (rather than one higher than the highest
priority).  Removed whitespace from the end of all enum lines.

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@84284 268f45cc-cd09-0410-ab3c-d52691b4dbfc
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:


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@84285 268f45cc-cd09-0410-ab3c-d52691b4dbfc
2011-04-19  Oliver Hunt  <oliver@apple.com>

        Reviewed by Andreas Kling.

        [Qt] QtInstance method cache ownership rules are unclear
        https://bugs.webkit.org/show_bug.cgi?id=58820

        Make the QtInstance method cache use WriteBarrier, and handle
        ownership properly.

        * bridge/qt/qt_class.cpp:
        (JSC::Bindings::QtClass::fallbackObject):
        (JSC::Bindings::QtClass::fieldNamed):
        * bridge/qt/qt_instance.cpp:
        (JSC::Bindings::QtInstance::~QtInstance):
        (JSC::Bindings::QtInstance::removeCachedMethod):
        (JSC::Bindings::QtInstance::newRuntimeObject):
        (JSC::Bindings::QtInstance::markAggregate):
        * bridge/qt/qt_instance.h:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@84286 268f45cc-cd09-0410-ab3c-d52691b4dbfc
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:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@84287 268f45cc-cd09-0410-ab3c-d52691b4dbfc