WebKit-https.git
10 years ago[Windows WebKit2] Use cookies set in WebKit1
jberlin@webkit.org [Wed, 11 May 2011 23:49:04 +0000 (23:49 +0000)]
[Windows WebKit2] Use cookies set in WebKit1
https://bugs.webkit.org/show_bug.cgi?id=60274

Reviewed by Steve Falkenburg.

Source/WebCore:

Share the default storage session between the UI and Web Processes.

* platform/network/cf/CookieStorageCFNet.cpp:
(WebCore::defaultSessionCookieStorage):
Keep track of the default storage session cookie storage.
(WebCore::currentCookieStorage):
Call defaultCookieStorage to get the default cookie storage.
(WebCore::defaultCookieStorage):
If there is a default storage session cookie storage, prefer that over getting the default
cookie storage. In the Web Process, asking CFNetwork for the default cookie storage directly
without specifying a storage session will not get the cookie storage being shared by the UI
and Web Processes.

* platform/network/ResourceHandle.h:
* platform/network/cf/ResourceHandleCFNet.cpp:
(WebCore::willSendRequest):
Make sure to set the current storage session on any requests used by the Web
Process before CFNetwork has to do anything with them, in order for CFNetwork to avoid
doing anything with the Web Process's default storage session (which is not the one shared
with the UI Process).
(WebCore::makeFinalRequest):
Ditto.
(WebCore::ResourceHandle::willSendRequest):
Ditto.
(WebCore::ResourceHandle::currentStorageSession):
If there is a Private Browsing storage session, return that.
If not, on Windows return the default storage session that is being shared with the UI
Process and on Mac return 0.
(WebCore::defaultCFURLStorageSession):
(WebCore::ResourceHandle::setDefaultStorageSession):
(WebCore::ResourceHandle::defaultStorageSession):

* platform/network/cf/ResourceRequestCFNet.cpp:
(WebCore::ResourceRequest::doUpdatePlatformRequest):
Make sure to set the current storage session on any requests used by the Web
Process before CFNetwork has to do anything with them, in order for CFNetwork to avoid
doing anything with the Web Process's default storage session (which is not the one shared
with the UI Process).

Source/WebKit/win:

* WebView.cpp:
(WebView::setCacheModel):
Pass 0 to wkCopyFoundationCacheDirectory so that it uses the default session.

Source/WebKit2:

Share the default storage session between the UI and Web Processes.

* Shared/WebProcessCreationParameters.cpp:
(WebKit::WebProcessCreationParameters::encode):
Only encode the session parameter if it is valid.
(WebKit::WebProcessCreationParameters::decode):
Don't try to decode a null session data.
* Shared/WebProcessCreationParameters.h:
Add a parameter for a serialized default storage session, used only on Windows.

* Shared/win/WebCoreArgumentCodersWin.cpp:
(CoreIPC::decodeResourceRequest):
Make sure to set the current storage session on any requests used by the Web
Process before CFNetwork has to do anything with them, in order for CFNetwork to avoid
doing anything with the Web Process's default storage session.

* UIProcess/win/WebContextWin.cpp:
(WebKit::WebContext::platformInitializeWebProcess):
Serialize the default storage session in the UI Process and add it to the
WebProcessCreationParameters.

* WebProcess/WebPage/win/WebPageWin.cpp:
(WebKit::cachedResponseForURL):
Use the cache associated with the current storage session and make sure the request has the
current storage session set on it before doing anything with it.

* WebProcess/win/WebProcessWin.cpp:
(WebKit::WebProcess::platformSetCacheModel):
Use the default storage session.
(WebKit::WebProcess::platformClearResourceCaches):
Ditto.
(WebKit::WebProcess::platformInitializeWebProcess):
Deserialize the default storage session passed in by the UI Process and hand it to the
ResourceHandle.

WebKitLibraries:

Take 3 after rolling out KB2465367 from my system.

* win/include/WebKitSystemInterface/WebKitSystemInterface.h:
* win/lib/WebKitSystemInterface.lib:

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

10 years ago2011-05-11 Lucas De Marchi <lucas.demarchi@profusion.mobi>
commit-queue@webkit.org [Wed, 11 May 2011 23:42:58 +0000 (23:42 +0000)]
2011-05-11  Lucas De Marchi  <lucas.demarchi@profusion.mobi>

        Reviewed by David Kilzer.

        Remove wml directory from include lists
        https://bugs.webkit.org/show_bug.cgi?id=60646

        Remove wml dir from CMake, Autotools and qmake build systems since WML
        was removed in r85256.

        No new tests since no change in functionality.

        * CMakeLists.txt:
        * GNUmakefile.am:
        * WebCore.pri:

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

10 years ago2011-05-11 Lucas De Marchi <lucas.demarchi@profusion.mobi>
commit-queue@webkit.org [Wed, 11 May 2011 23:28:08 +0000 (23:28 +0000)]
2011-05-11  Lucas De Marchi  <lucas.demarchi@profusion.mobi>

        Reviewed by Antonio Gomes.

        [CMAKE] Move EFL-specific file to CMakeListsEfl.txt
        https://bugs.webkit.org/show_bug.cgi?id=60642

        Move file EFL-specific file to the CMakeListsEfl.txt file. This implies
        having to include CMakeLists${PORT}.txt before the ADD_CUSTOM_COMMAND
        calls, since they depend on lists that now may change inside a port
        like WebCore_USER_AGENT_STYLE_SHEETS.

        No new tests since no change in functionality.

        * CMakeLists.txt: remove css file specific to EFL port.
        * CMakeListsEfl.txt: move file here.

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

10 years ago2011-05-11 Eric Seidel <eric@webkit.org>
eric@webkit.org [Wed, 11 May 2011 23:21:27 +0000 (23:21 +0000)]
2011-05-11  Eric Seidel  <eric@webkit.org>

        Reviewed by Alexey Proskuryakov.

        Add Luke Macpherson to committers.py as a Contributor
        https://bugs.webkit.org/show_bug.cgi?id=60639

        * Scripts/webkitpy/common/config/committers.py:

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

10 years ago2011-05-11 Jia Pu <jpu@apple.com>
jpu@apple.com [Wed, 11 May 2011 23:16:02 +0000 (23:16 +0000)]
2011-05-11  Jia Pu  <jpu@apple.com>

        Reviewed by Darin Adler.

        CorrectionPanel sometimes hangs in dismissSoon().
        https://bugs.webkit.org/show_bug.cgi?id=60599
        <rdar://problem/9313628>

        Make sure dismissSoon() won't wait indefinitely if handleAcceptedReplacement() sets m_resultForSynchronousDismissal
        to nil. Added a designated variable m_isDismissing, instead of piggy-backing m_resultForSynchronousDismissal,
        for condition checking.

        * WebCoreSupport/CorrectionPanel.h:
        * WebCoreSupport/CorrectionPanel.mm:
        (CorrectionPanel::CorrectionPanel):
        (CorrectionPanel::show):
        (CorrectionPanel::dismissSoon):
        (CorrectionPanel::dismissInternal):
        (CorrectionPanel::handleAcceptedReplacement):
2011-05-11  Jia Pu  <jpu@apple.com>

        Reviewed by Darin Adler.

        CorrectionPanel sometimes hangs in dismissSoon().
        https://bugs.webkit.org/show_bug.cgi?id=60599
        <rdar://problem/9313628>

        Make sure dismissSoon() won't wait indefinitely if handleAcceptedReplacement() sets m_resultForSynchronousDismissal
        to nil. Added a designated variable m_isDismissing, instead of piggy-backing m_resultForSynchronousDismissal,
        for condition checking.

        * UIProcess/mac/CorrectionPanel.h:
        * UIProcess/mac/CorrectionPanel.mm:
        (WebKit::CorrectionPanel::CorrectionPanel):
        (WebKit::CorrectionPanel::show):
        (WebKit::CorrectionPanel::dismissSoon):
        (WebKit::CorrectionPanel::dismissInternal):
        (WebKit::CorrectionPanel::handleAcceptedReplacement):

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

10 years ago2011-05-11 Abhishek Arya <inferno@chromium.org>
inferno@chromium.org [Wed, 11 May 2011 23:09:01 +0000 (23:09 +0000)]
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:

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

10 years ago2011-05-11 Tao Bai <michaelbai@chromium.org>
commit-queue@webkit.org [Wed, 11 May 2011 22:58:41 +0000 (22:58 +0000)]
2011-05-11  Tao Bai  <michaelbai@chromium.org>

        Reviewed by David Kilzer.

        Return empty Favicon URL instead of default one when the frame isn't top level one
        https://bugs.webkit.org/show_bug.cgi?id=60527
        This issue was discovered by chromium browser test.

        * dom/Document.cpp:
        (WebCore::Document::setIconURL):
        Restored original logic which was inadvertently flipped by http://trac.webkit.org/changeset/85785.
        * loader/FrameLoader.cpp:
        (WebCore::FrameLoader::iconURLs):
        (WebCore::FrameLoader::fillIconURL):
        Restored original logic, the empty URL should be returned instead of default one. The client (at
        least chromium) may rely on the returned value to decided whether the favicon should be changed.

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

10 years ago2011-05-11 Nat Duca <nduca@chromium.org>
commit-queue@webkit.org [Wed, 11 May 2011 22:50:42 +0000 (22:50 +0000)]
2011-05-11  Nat Duca  <nduca@chromium.org>

        Reviewed by Kenneth Russell.

        [chromium] Make throttling of WebGL based on webgl frames, not compositor frames
        https://bugs.webkit.org/show_bug.cgi?id=60508

        When a WebGL layer is dirtied outside of a requestAnimFrame callback, we need
        to prevent WebGL from running too far ahead of the GPU process. The current
        throttling mechanism relies on prepareTexture being called for every WebGL frame.
        However, in a non-requestAnimFrame application, multiple frames might get created
        before the compositor runs and calls prepareTexture on the surface.

        To address this, we post a task that calls a special rate limiting GL extension on
        the WebGL context after every WebGL "frame." When the compositor runs, it calls
        prepareTexture as usual.

        * platform/graphics/chromium/Extensions3DChromium.h:
        * platform/graphics/chromium/LayerRendererChromium.cpp:
        (WebCore::LayerRendererChromium::LayerRendererChromium):
        * platform/graphics/chromium/LayerRendererChromium.h:
        (WebCore::LayerRendererChromium::setIsAnimating):
        (WebCore::LayerRendererChromium::isAnimating):
        * platform/graphics/chromium/WebGLLayerChromium.cpp:
        (WebCore::WebGLLayerChromiumRateLimitTask::WebGLLayerChromiumRateLimitTask):
        (WebCore::WebGLLayerChromiumRateLimitTask::run):
        (WebCore::WebGLLayerChromiumRateLimitTask::cancel):
        (WebCore::WebGLLayerChromium::WebGLLayerChromium):
        (WebCore::WebGLLayerChromium::~WebGLLayerChromium):
        (WebCore::WebGLLayerChromium::setTextureUpdated):
        (WebCore::WebGLLayerChromium::setContext):
        * platform/graphics/chromium/WebGLLayerChromium.h:
        (WebCore::WebGLLayerChromium::context):
2011-05-11  Nat Duca  <nduca@chromium.org>

        Reviewed by Kenneth Russell.

        [chromium] Make throttling of WebGL based on webgl frames, not compositor frames
        https://bugs.webkit.org/show_bug.cgi?id=60508

        Tell LayerRendererChromium when the requestAnimFrame-callbacks are running.

        * public/WebGraphicsContext3D.h:
        (WebKit::WebGraphicsContext3D::rateLimitOffscreenContextCHROMIUM):
        * src/Extensions3DChromium.cpp:
        (WebCore::Extensions3DChromium::rateLimitOffscreenContextCHROMIUM):
        * src/GraphicsContext3DChromium.cpp:
        * src/GraphicsContext3DInternal.h:
        * src/WebViewImpl.cpp:
        (WebKit::WebViewImpl::animate):

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

10 years ago2011-05-11 Abhishek Arya <inferno@chromium.org>
inferno@chromium.org [Wed, 11 May 2011 22:44:24 +0000 (22:44 +0000)]
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:

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

10 years ago2011-05-11 Noam Rosenthal <noam.rosenthal@nokia.com>
noam.rosenthal@nokia.com [Wed, 11 May 2011 22:11:13 +0000 (22:11 +0000)]
2011-05-11  Noam Rosenthal  <noam.rosenthal@nokia.com>

        Reviewed by Kenneth Rohde Christiansen.

        [Texmap][Qt] Upstream texture-mapper changes from Qt's WebKit2 branch
        https://bugs.webkit.org/show_bug.cgi?id=60439

        Patch 10/12: Glue the TextureMapper refactoring into Webkit(1).
        1. Pass a GraphicsLayer* instead of a PlatformLayer* to the QWebPageClient.
        2. Set parameters in TextureMapper/TextureMapperNode instead of passing them in an options argument.
        3. Rename PlatformLayerProxyQt to TextureMapperNodeClient

        * Api/qwebframe.cpp:
        (QWebFramePrivate::renderCompositedLayers):
        * Api/qwebframe.h:
        * Api/qwebframe_p.h:
        (QWebFramePrivate::QWebFramePrivate):
        * WebCoreSupport/ChromeClientQt.cpp:
        (WebCore::ChromeClientQt::attachRootGraphicsLayer):
        * WebCoreSupport/PageClientQt.cpp:
        (WebCore::TextureMapperNodeClientQt::TextureMapperNodeClientQt):
        (WebCore::TextureMapperNodeClientQt::scroll):
        (WebCore::TextureMapperNodeClientQt::setTextureMapper):
        (WebCore::TextureMapperNodeClientQt::~TextureMapperNodeClientQt):
        (WebCore::TextureMapperNodeClientQt::computeLastModifiedRect):
        (WebCore::TextureMapperNodeClientQt::syncRootLayer):
        (WebCore::TextureMapperNodeClientQt::rootNode):
        (WebCore::PageClientQWidget::setRootGraphicsLayer):
        (WebCore::PageClientQWidget::syncLayers):
        (WebCore::PageClientQWidget::~PageClientQWidget):
        (WebCore::PageClientQGraphicsWidget::~PageClientQGraphicsWidget):
        (WebCore::PageClientQGraphicsWidget::update):
        (WebCore::PageClientQGraphicsWidget::syncLayers):
        (WebCore::PageClientQGraphicsWidget::setRootGraphicsLayer):
        (WebCore::PageClientQGraphicsWidget::markForSync):
        * WebCoreSupport/PageClientQt.h:
        (WebCore::PageClientQWidget::PageClientQWidget):
        (WebCore::PageClientQGraphicsWidget::PageClientQGraphicsWidget):
        (WebCore::PageClientQGraphicsWidget::syncLayersTimeout):

2011-05-11  Noam Rosenthal  <noam.rosenthal@nokia.com>

        Reviewed by Kenneth Rohde Christiansen.

        [Texmap][Qt] Upstream texture-mapper changes from Qt's WebKit2 branch
        https://bugs.webkit.org/show_bug.cgi?id=60439

        Patch 12/12: Enable accelerated animations in texture-mapper. The entire interpolation
        mechanism happens inside TextureMapper, and we interpolate right before we paint.

        No new tests. Tests in LayoutTests/compositing cover this.

        * platform/graphics/texmap/GraphicsLayerTextureMapper.cpp:
        (WebCore::GraphicsLayerTextureMapper::GraphicsLayerTextureMapper):
        (WebCore::GraphicsLayerTextureMapper::syncCompositingState):
        (WebCore::GraphicsLayerTextureMapper::addAnimation):
        (WebCore::GraphicsLayerTextureMapper::pauseAnimation):
        (WebCore::GraphicsLayerTextureMapper::removeAnimation):
        (WebCore::GraphicsLayerTextureMapper::animationStartedTimerFired):
        * platform/graphics/texmap/TextureMapperNode.cpp:
        (WebCore::TextureMapperNode::descendantsOrSelfHaveRunningAnimations):
        (WebCore::normalizedAnimationValue):
        (WebCore::TextureMapperNode::applyOpacityAnimation):
        (WebCore::solveEpsilon):
        (WebCore::solveCubicBezierFunction):
        (WebCore::solveStepsFunction):
        (WebCore::applyTimingFunction):
        (WebCore::TextureMapperNode::applyTransformAnimation):
        (WebCore::TextureMapperNode::applyAnimationFrame):
        (WebCore::TextureMapperNode::applyAnimation):
        (WebCore::TextureMapperNode::hasRunningOpacityAnimation):
        (WebCore::TextureMapperNode::hasRunningTransformAnimation):
        (WebCore::TextureMapperNode::syncAnimations):
        (WebCore::copyTimingFunction):
        (WebCore::copyAnimationValue):
        (WebCore::TextureMapperAnimation::TextureMapperAnimation):
        * platform/graphics/texmap/TextureMapperNode.h:
        (WebCore::TextureMapperAnimation::create):

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

10 years ago2011-05-11 John Bauman <jbauman@chromium.org>
commit-queue@webkit.org [Wed, 11 May 2011 21:58:50 +0000 (21:58 +0000)]
2011-05-11  John Bauman  <jbauman@chromium.org>

        Reviewed by Kenneth Russell.

        Don't send zeros in TexImage if GL implementation handles that
        https://bugs.webkit.org/show_bug.cgi?id=60581

        Chromium already handles zeroing textures upon creation, so don't
        bother zeroing them in WebKit, as that causes some unnecessary memcpys
        of zeros.

        No new tests as functionality is the same.

        * html/canvas/WebGLRenderingContext.cpp:
        (WebCore::WebGLRenderingContext::texImage2DBase):
        * platform/graphics/GraphicsContext3D.cpp:
        (WebCore::GraphicsContext3D::texImage2DResourceSafe):
        * platform/graphics/GraphicsContext3D.h:
        * platform/graphics/gtk/GraphicsContext3DGtk.cpp:
        (WebCore::GraphicsContext3D::GraphicsContext3D):
        * platform/graphics/mac/GraphicsContext3DMac.mm:
        (WebCore::GraphicsContext3D::GraphicsContext3D):
        * platform/graphics/qt/GraphicsContext3DQt.cpp:
        (WebCore::GraphicsContext3D::GraphicsContext3D):
2011-05-11  John Bauman  <jbauman@chromium.org>

        Reviewed by Kenneth Russell.

        Don't send zeros in TexImage if GL implementation handles that
        https://bugs.webkit.org/show_bug.cgi?id=60581

        Chromium already handles zeroing textures upon creation, so don't
        bother zeroing them in WebKit, as that causes some unnecessary memcpys
        of zeros.

        * src/GraphicsContext3DChromium.cpp:
        (WebCore::GraphicsContext3D::create):

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

10 years ago2011-05-11 Simon Fraser <simon.fraser@apple.com>
simon.fraser@apple.com [Wed, 11 May 2011 21:53:51 +0000 (21:53 +0000)]
2011-05-11  Simon Fraser  <simon.fraser@apple.com>

        Attempt to fix Chromium Mac build.

        * rendering/RenderThemeMac.mm:
        (WebCore::RenderThemeMac::paintSliderThumb):

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

10 years ago2011-05-11 Daniel Bates <dbates@rim.com>
dbates@webkit.org [Wed, 11 May 2011 21:35:49 +0000 (21:35 +0000)]
2011-05-11  Daniel Bates  <dbates@rim.com>

        Reviewed by Antonio Gomes.

        [Qt] Extract code to set mouse event modifiers into common function
        https://bugs.webkit.org/show_bug.cgi?id=60649

        Consolidate code to set the keyboard modifiers for a mouse event into a common
        function that can be used by both PlatformMouseEvent(QGraphicsSceneMouseEvent*, int clickCount)
        and PlatformMouseEvent(QInputEvent*, int clickCount) so as to remove duplicate code.

        No functionality was changed. So, no new tests.

        * platform/qt/PlatformMouseEventQt.cpp:
        (WebCore::mouseEventModifiersFromQtKeyboardModifiers): Added.
        (WebCore::PlatformMouseEvent::PlatformMouseEvent): Modified to call mouseEventModifiersFromQtKeyboardModifiers().

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

10 years ago2011-05-11 Levi Weintraub <leviw@chromium.org>
leviw@chromium.org [Wed, 11 May 2011 21:33:01 +0000 (21:33 +0000)]
2011-05-11  Levi Weintraub  <leviw@chromium.org>

        Reviewed by Eric Seidel.

        Switch RenderBoxModelObject::paintBorder to use IntRect instead of four ints
        https://bugs.webkit.org/show_bug.cgi?id=60591

        Switching RenderBoxModelObject::paintBorder to use IntRect instead of four ints representing a rect.

        No new tests since there is no functionality change.

        * rendering/InlineFlowBox.cpp:
        (WebCore::InlineFlowBox::paintBoxDecorations):
        * rendering/RenderBox.cpp:
        (WebCore::RenderBox::paintBoxDecorationsWithSize):
        * rendering/RenderBoxModelObject.cpp:
        (WebCore::RenderBoxModelObject::paintBorder):
        * rendering/RenderBoxModelObject.h:
        * rendering/RenderFieldset.cpp:
        (WebCore::RenderFieldset::paintBoxDecorations):
        * rendering/RenderTable.cpp:
        (WebCore::RenderTable::paintBoxDecorations):
        * rendering/RenderTableCell.cpp:
        (WebCore::RenderTableCell::paintBoxDecorations):

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

10 years ago2011-05-11 Sheriff Bot <webkit.review.bot@gmail.com>
commit-queue@webkit.org [Wed, 11 May 2011 21:25:43 +0000 (21:25 +0000)]
2011-05-11  Sheriff Bot  <webkit.review.bot@gmail.com>

        Unreviewed, rolling out r86255.
        http://trac.webkit.org/changeset/86255
        https://bugs.webkit.org/show_bug.cgi?id=60660

        REGRESSION (r86255): Lots of tests crashing in
        CFWriteStreamCreateWithAllocatedBuffers on Windows 7 Release
        (WebKit2 Tests) (Requested by aroben on #webkit).

        * platform/network/ResourceHandle.h:
        * platform/network/cf/CookieStorageCFNet.cpp:
        (WebCore::currentCookieStorage):
        (WebCore::defaultCookieStorage):
        * platform/network/cf/ResourceHandleCFNet.cpp:
        (WebCore::willSendRequest):
        (WebCore::makeFinalRequest):
        (WebCore::ResourceHandle::willSendRequest):
        * platform/network/cf/ResourceRequestCFNet.cpp:
        (WebCore::ResourceRequest::doUpdatePlatformRequest):
2011-05-11  Sheriff Bot  <webkit.review.bot@gmail.com>

        Unreviewed, rolling out r86255.
        http://trac.webkit.org/changeset/86255
        https://bugs.webkit.org/show_bug.cgi?id=60660

        REGRESSION (r86255): Lots of tests crashing in
        CFWriteStreamCreateWithAllocatedBuffers on Windows 7 Release
        (WebKit2 Tests) (Requested by aroben on #webkit).

        * WebView.cpp:
        (WebView::setCacheModel):
2011-05-11  Sheriff Bot  <webkit.review.bot@gmail.com>

        Unreviewed, rolling out r86255.
        http://trac.webkit.org/changeset/86255
        https://bugs.webkit.org/show_bug.cgi?id=60660

        REGRESSION (r86255): Lots of tests crashing in
        CFWriteStreamCreateWithAllocatedBuffers on Windows 7 Release
        (WebKit2 Tests) (Requested by aroben on #webkit).

        * Shared/WebProcessCreationParameters.cpp:
        (WebKit::WebProcessCreationParameters::encode):
        (WebKit::WebProcessCreationParameters::decode):
        * Shared/WebProcessCreationParameters.h:
        * Shared/win/WebCoreArgumentCodersWin.cpp:
        (CoreIPC::decodeResourceRequest):
        * UIProcess/win/WebContextWin.cpp:
        (WebKit::WebContext::platformInitializeWebProcess):
        * WebProcess/WebPage/win/WebPageWin.cpp:
        (WebKit::cachedResponseForURL):
        * WebProcess/win/WebProcessWin.cpp:
        (WebKit::WebProcess::platformSetCacheModel):
        (WebKit::WebProcess::platformClearResourceCaches):
        (WebKit::WebProcess::platformInitializeWebProcess):
2011-05-11  Sheriff Bot  <webkit.review.bot@gmail.com>

        Unreviewed, rolling out r86255.
        http://trac.webkit.org/changeset/86255
        https://bugs.webkit.org/show_bug.cgi?id=60660

        REGRESSION (r86255): Lots of tests crashing in
        CFWriteStreamCreateWithAllocatedBuffers on Windows 7 Release
        (WebKit2 Tests) (Requested by aroben on #webkit).

        * win/include/WebKitSystemInterface/WebKitSystemInterface.h:
        * win/lib/WebKitSystemInterface.lib:

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

10 years agoFrequent crashes beneath WebCore::ScriptElement::prepareScript
weinig@apple.com [Wed, 11 May 2011 21:18:09 +0000 (21:18 +0000)]
Frequent crashes beneath WebCore::ScriptElement::prepareScript
https://bugs.webkit.org/show_bug.cgi?id=60559

Reviewed by Eric Seidel.

* html/parser/HTMLScriptRunner.cpp:
(WebCore::HTMLScriptRunner::runScript):
Add null check and explanation that we are keeping the ASSERT to help
track down the cause and produce a test.

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

10 years ago2011-05-11 Noam Rosenthal <noam.rosenthal@nokia.com>
noam.rosenthal@nokia.com [Wed, 11 May 2011 21:17:50 +0000 (21:17 +0000)]
2011-05-11  Noam Rosenthal  <noam.rosenthal@nokia.com>

        Reviewed by Kenneth Rohde Christiansen.

        [Texmap][Qt] Upstream texture-mapper changes from Qt's WebKit2 branch
        https://bugs.webkit.org/show_bug.cgi?id=60439

        Patch 5/12: Implement the new TextureMapper functions for the Qt backend.
        This allow non-rectangular clipping, some stub functions, and getting a unique
        id for an image.

        No new tests. Tests in LayoutTests/compositing cover this.

        * platform/graphics/qt/TextureMapperQt.cpp:
        (WebCore::TextureMapperQt::beginClip):
        (WebCore::TextureMapperQt::endClip):
        (WebCore::TextureMapperQt::viewportSize):
        (WebCore::TextureMapperQt::setGraphicsContext):
        (WebCore::TextureMapperQt::graphicsContext):
        (WebCore::TextureMapperQt::drawTexture):
        (WebCore::TextureMapperQt::beginPainting):
        (WebCore::TextureMapperQt::endPainting):
        (WebCore::RGBA32PremultimpliedBufferQt::beginPaint):
        (WebCore::uidForImage):
        * platform/graphics/qt/TextureMapperQt.h:

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

10 years ago2011-05-11 Noam Rosenthal <noam.rosenthal@nokia.com>
noam.rosenthal@nokia.com [Wed, 11 May 2011 21:14:17 +0000 (21:14 +0000)]
2011-05-11  Noam Rosenthal  <noam.rosenthal@nokia.com>

        Reviewed by Kenneth Rohde Christiansen.

        [Texmap][Qt] Upstream texture-mapper changes from Qt's WebKit2 branch
        https://bugs.webkit.org/show_bug.cgi?id=60439

        Patch 4/12: Update the settings to enable accelerated compositing for all the relevant settings
        attributes.

        * Api/qwebsettings.cpp:
        (qt_networkAccessAllowed):
        (QWebSettingsPrivate::apply):
2011-05-11  Noam Rosenthal  <noam.rosenthal@nokia.com>

        Reviewed by Kenneth Rohde Christiansen.

        [Texmap][Qt] Upstream texture-mapper changes from Qt's WebKit2 branch
        https://bugs.webkit.org/show_bug.cgi?id=60439

        Patch 4/12: Update the build script to enable 3D rendering by default for Qt.

        * Scripts/build-webkit:

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

10 years agoREGRESSION (r86161): WKPreferences API test failing on Windows
bweinstein@apple.com [Wed, 11 May 2011 21:11:40 +0000 (21:11 +0000)]
REGRESSION (r86161): WKPreferences API test failing on Windows
https://bugs.webkit.org/show_bug.cgi?id=60658

Reviewed by Adam Roben.

* TestWebKitAPI/Tests/WebKit2/WKPreferences.cpp:
(TestWebKitAPI::TEST):

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

10 years ago2011-05-11 Noam Rosenthal <noam.rosenthal@nokia.com>
noam.rosenthal@nokia.com [Wed, 11 May 2011 21:09:38 +0000 (21:09 +0000)]
2011-05-11  Noam Rosenthal  <noam.rosenthal@nokia.com>

        Reviewed by Kenneth Rohde Christiansen.

        [Texmap][Qt] Upstream texture-mapper changes from Qt's WebKit2 branch
        https://bugs.webkit.org/show_bug.cgi?id=60439

        Patch 3/12: TextureMapper shouldn't depend on OpenGL, but rather only allow the GL backend when
        OpenGL is present.

        No new tests. This is a build fix.

        * WebCore.pri:
        * WebCore.pro:

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

10 years ago2011-05-11 Noam Rosenthal <noam.rosenthal@nokia.com>
noam.rosenthal@nokia.com [Wed, 11 May 2011 21:06:04 +0000 (21:06 +0000)]
2011-05-11  Noam Rosenthal  <noam.rosenthal@nokia.com>

        Reviewed by Kenneth Rohde Christiansen.

        [Texmap][Qt] Upstream texture-mapper changes from Qt's WebKit2 branch
        https://bugs.webkit.org/show_bug.cgi?id=60439

        Patch 2/12: Add a few functions to the TextureMapper API, allowing:
        1. an entry/exit point for painting (beginPaint/endPaint)
        2. Clipping with a matrix, since we use stencil instead of scissors
        3. Draw a texture directly with an ID
        4. Remove offset, since we're using real tiling
        5. numberOfBytes calculation for textures, for memory management

        No new tests. Tests in LayoutTests/compositing test this.

        * platform/graphics/texmap/TextureMapper.h:
        (WebCore::BitmapTexture::destroy):
        (WebCore::BitmapTexture::allowOfflineTextureUpload):
        (WebCore::BitmapTexture::bpp):
        (WebCore::BitmapTexture::numberOfBytes):
        (WebCore::TextureMapper::viewportSize):
        (WebCore::TextureMapper::setViewportSize):
        (WebCore::TextureMapper::allowPartialUpdates):
        (WebCore::TextureMapper::isOpenGLBacked):
        (WebCore::TextureMapper::setTransform):
        (WebCore::TextureMapper::transform):
        (WebCore::TextureMapper::beginPainting):
        (WebCore::TextureMapper::endPainting):

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

10 years ago2011-05-11 Noam Rosenthal <noam.rosenthal@nokia.com>
noam.rosenthal@nokia.com [Wed, 11 May 2011 21:02:58 +0000 (21:02 +0000)]
2011-05-11  Noam Rosenthal  <noam.rosenthal@nokia.com>

        Reviewed by Kenneth Rohde Christiansen.

        [Texmap][Qt] Upstream texture-mapper changes from Qt's WebKit2 branch
        https://bugs.webkit.org/show_bug.cgi?id=60439

        Patch 1/12: Change the TextureMapperPlatformLayer API to allow a 3D-context or a
        media player to decide how to paint into the TextureMapper, rather than mandate specific
        types of platform layers.

        No new tests. Tests in LayoutTests/compositing test this.

        * platform/graphics/GraphicsLayer.h:
        * platform/graphics/texmap/TextureMapperPlatformLayer.h:

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

10 years ago<rdar://problem/9331651> REGRESSION: RPRVT grows by 1MB / sec @ dvd2blu.com
ggaren@apple.com [Wed, 11 May 2011 20:55:30 +0000 (20:55 +0000)]
<rdar://problem/9331651> REGRESSION: RPRVT grows by 1MB / sec @ dvd2blu.com

Reviewed by Oliver Hunt.

SunSpider reports no change.

This bug was caused by changing Structure and Executable to being GC
objects, and by a long-standing bug that would thrash the global object
between dictionary and non-dictionary states.

* runtime/BatchedTransitionOptimizer.h:
(JSC::BatchedTransitionOptimizer::BatchedTransitionOptimizer): Don't
eagerly transition to dictionary -- this can cause pathological dictionary
churn, and it's not necessary, since objects know how to automatically
transition to dictionary when necessary.

* runtime/Executable.cpp:
(JSC::EvalExecutable::compileInternal):
(JSC::ProgramExecutable::compileInternal):
(JSC::FunctionExecutable::compileForCallInternal):
(JSC::FunctionExecutable::compileForConstructInternal): Be sure to report
extra cost from compilation, because it can be quite high. This is especially
important for program code, since DOM timers can repeatedly allocate
program code without allocating any other objects.

* runtime/JSObject.cpp:
(JSC::JSObject::removeDirect): Don't transition to the uncacheable state
if the thing we're trying to remove doesn't exist. This can happen during
compilation, since the compiler needs to ensure that no pre-existing
conflicting definitions exist for certain declarations.

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

10 years ago2011-05-11 Simon Fraser <simon.fraser@apple.com>
simon.fraser@apple.com [Wed, 11 May 2011 20:55:03 +0000 (20:55 +0000)]
2011-05-11  Simon Fraser  <simon.fraser@apple.com>

        Reviewed by Darin Adler.

        Flesh out RenderLayer's ScrollableArea implementation a little more
        https://bugs.webkit.org/show_bug.cgi?id=60593

        Override a few more ScrollableArea methods on RenderLayer
        as a baby-step towards animating overflow div scrolling.

        * platform/ScrollableArea.h:
        (WebCore::ScrollableArea::visibleContentRect):
        * rendering/RenderLayer.cpp:
        (WebCore::RenderLayer::scrollPosition):
        (WebCore::RenderLayer::minimumScrollPosition):
        (WebCore::RenderLayer::maximumScrollPosition):
        (WebCore::RenderLayer::visibleContentRect):
        (WebCore::RenderLayer::overhangAmount):
        (WebCore::RenderLayer::didCompleteRubberBand):
        * rendering/RenderLayer.h:
        (WebCore::RenderLayer::shouldSuspendScrollAnimations):

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

10 years ago2011-05-11 Simon Fraser <simon.fraser@apple.com>
simon.fraser@apple.com [Wed, 11 May 2011 20:54:55 +0000 (20:54 +0000)]
2011-05-11  Simon Fraser  <simon.fraser@apple.com>

        Reviewed by Dave Hyatt.

        <rdar://problem/9421781> Slider thumb draws upside-down in WebKit2
        <rdar://problem/9418025> Slider thumb has odd appearance

        Fix two issues drawing the slider thumb.

        To fix <rdar://problem/9421781>, if we detect that we're in WebKit2
        by virtual of the FrameView not having a documentView, then flip
        the graphics context.

        To fix <rdar://problem/9418025>, we call -drawInteriorWithFrame:inView:
        rather than -drawWithFrame:inView: so that AppKit doesn't draw a section
        of track behind the thumb.

        * rendering/RenderThemeMac.mm:
        (WebCore::RenderThemeMac::paintSliderThumb):

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

10 years agoDon't notify the plugin when a targeted javascript: URL request completes
aroben@apple.com [Wed, 11 May 2011 20:30:01 +0000 (20:30 +0000)]
Don't notify the plugin when a targeted javascript: URL request completes

This matches Mozilla and WebKit1.

Fixes <http://webkit.org/b/60568> <rdar://problem/8610657> REGRESSION (WebKit2): Flash
plugin doesn't appear on a hanes.com page

Test: plugins/get-targeted-javascript-url.html

Reviewed by Anders Carlsson.

Source/WebKit2:

* WebProcess/Plugins/PluginView.cpp:
(WebKit::PluginView::performJavaScriptURLRequest): Don't call back to the plugin if the
request had a target.

LayoutTests:

Test what happens when a plugin makes a targeted javascript: request

* 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).

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

10 years ago2011-05-11 Kenji Imasaki <imasaki@chromium.org>
imasaki@chromium.org [Wed, 11 May 2011 20:13:01 +0000 (20:13 +0000)]
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:

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

10 years ago2011-05-11 Oliver Hunt <oliver@apple.com>
oliver@apple.com [Wed, 11 May 2011 20:10:29 +0000 (20:10 +0000)]
2011-05-11  Oliver Hunt  <oliver@apple.com>

        Reviewed by Gavin Barraclough.

        Make mark stack validation functions do something useful in a release build
        https://bugs.webkit.org/show_bug.cgi?id=60645

        Turn ASSERTs into actual if(...) CRASH(); statements.

        * heap/MarkStack.cpp:
        (JSC::MarkStack::validateValue):

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

10 years ago[SnowLeopard WebKit2 Tests] fast/frames/flattening/frameset-flattening-subframesets...
jberlin@webkit.org [Wed, 11 May 2011 20:08:10 +0000 (20:08 +0000)]
[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:

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

10 years ago[Windows WebKit2] Use cookies set in WebKit1
jberlin@webkit.org [Wed, 11 May 2011 19:51:19 +0000 (19:51 +0000)]
[Windows WebKit2] Use cookies set in WebKit1
https://bugs.webkit.org/show_bug.cgi?id=60274

Reviewed by Steve Falkenburg.

Source/WebCore:

Share the default storage session between the UI and Web Processes.

* platform/network/cf/CookieStorageCFNet.cpp:
(WebCore::defaultSessionCookieStorage):
Keep track of the default storage session cookie storage.
(WebCore::currentCookieStorage):
Call defaultCookieStorage to get the default cookie storage.
(WebCore::defaultCookieStorage):
If there is a default storage session cookie storage, prefer that over getting the default
cookie storage. In the Web Process, asking CFNetwork for the default cookie storage directly
without specifying a storage session will not get the cookie storage being shared by the UI
and Web Processes.

* platform/network/ResourceHandle.h:
* platform/network/cf/ResourceHandleCFNet.cpp:
(WebCore::willSendRequest):
Make sure to set the current storage session on any requests used by the Web
Process before CFNetwork has to do anything with them, in order for CFNetwork to avoid
doing anything with the Web Process's default storage session (which is not the one shared
with the UI Process).
(WebCore::makeFinalRequest):
Ditto.
(WebCore::ResourceHandle::willSendRequest):
Ditto.
(WebCore::ResourceHandle::currentStorageSession):
If there is a Private Browsing storage session, return that.
If not, on Windows return the default storage session that is being shared with the UI
Process and on Mac return 0.
(WebCore::defaultCFURLStorageSession):
(WebCore::ResourceHandle::setDefaultStorageSession):
(WebCore::ResourceHandle::defaultStorageSession):

* platform/network/cf/ResourceRequestCFNet.cpp:
(WebCore::ResourceRequest::doUpdatePlatformRequest):
Make sure to set the current storage session on any requests used by the Web
Process before CFNetwork has to do anything with them, in order for CFNetwork to avoid
doing anything with the Web Process's default storage session (which is not the one shared
with the UI Process).

Source/WebKit/win:

* WebView.cpp:
(WebView::setCacheModel):
Pass 0 to wkCopyFoundationCacheDirectory so that it uses the default session.

Source/WebKit2:

Share the default storage session between the UI and Web Processes.

* Shared/WebProcessCreationParameters.cpp:
(WebKit::WebProcessCreationParameters::encode):
(WebKit::WebProcessCreationParameters::decode):
* Shared/WebProcessCreationParameters.h:
Add a parameter for a serialized default storage session, used only on Windows.

* Shared/win/WebCoreArgumentCodersWin.cpp:
(CoreIPC::decodeResourceRequest):
Make sure to set the current storage session on any requests used by the Web
Process before CFNetwork has to do anything with them, in order for CFNetwork to avoid
doing anything with the Web Process's default storage session.

* UIProcess/win/WebContextWin.cpp:
(WebKit::WebContext::platformInitializeWebProcess):
Serialize the default storage session in the UI Process and add it to the
WebProcessCreationParameters.

* WebProcess/WebPage/win/WebPageWin.cpp:
(WebKit::cachedResponseForURL):
Use the cache associated with the current storage session and make sure the request has the
current storage session set on it before doing anything with it.

* WebProcess/win/WebProcessWin.cpp:
(WebKit::WebProcess::platformSetCacheModel):
Use the default storage session.
(WebKit::WebProcess::platformClearResourceCaches):
Ditto.
(WebKit::WebProcess::platformInitializeWebProcess):
Deserialize the default storage session passed in by the UI Process and hand it to the
ResourceHandle.

WebKitLibraries:

Take 3 after rolling out KB2465367 from my system.

* win/include/WebKitSystemInterface/WebKitSystemInterface.h:
* win/lib/WebKitSystemInterface.lib:

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

10 years ago2011-05-11 Martin Robinson <mrobinson@igalia.com>
mrobinson@webkit.org [Wed, 11 May 2011 19:36:01 +0000 (19:36 +0000)]
2011-05-11  Martin Robinson  <mrobinson@igalia.com>

        Try once more to fix the WinCairo build.

        * platform/graphics/cairo/CairoUtilities.h: Include GraphicsTypes.h with a relative
        include rather than a system include.

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

10 years ago2011-05-11 Xan Lopez <xlopez@igalia.com>
xan@webkit.org [Wed, 11 May 2011 19:28:38 +0000 (19:28 +0000)]
2011-05-11  Xan Lopez  <xlopez@igalia.com>

        Reviewed by Martin Robinson.

        Fix copy&paste error in comment.

        * jit/JITPropertyAccess.cpp:
        (JSC::JIT::stringGetByValStubGenerator): the value is stored in
        regT2, not regT1.

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

10 years ago2011-05-11 Alice Boxhall <aboxhall@chromium.org>
commit-queue@webkit.org [Wed, 11 May 2011 19:12:20 +0000 (19:12 +0000)]
2011-05-11  Alice Boxhall  <aboxhall@chromium.org>

        Reviewed by Ojan Vafai.

        Modify jsonresults_unittest.py to use a dict format for its test data, and modify jsonresults.py to flatten hierarchical directory structures in input JSON.
        https://bugs.webkit.org/show_bug.cgi?id=60521

        First steps towards making the results JSON all hierarchical.

        * TestResultServer/model/jsonresults.py:
        * TestResultServer/model/jsonresults_unittest.py:

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

10 years ago2011-05-11 Sam Weinig <sam@webkit.org>
weinig@apple.com [Wed, 11 May 2011 19:03:20 +0000 (19:03 +0000)]
2011-05-11  Sam Weinig  <sam@webkit.org>

        Reviewed by Eric Seidel.

        Stop including Console.h just to get Console enum types
        https://bugs.webkit.org/show_bug.cgi?id=60607

        Move MessageSource, MessageType and MessageLevel into its own
        header and cleanup surrounding classes.

        * Api/qwebelement.cpp:
2011-05-11  Sam Weinig  <sam@webkit.org>

        Reviewed by Eric Seidel.

        Stop including Console.h just to get Console enum types
        https://bugs.webkit.org/show_bug.cgi?id=60607

        Move MessageSource, MessageType and MessageLevel into its own
        header and cleanup surrounding classes.

        * GNUmakefile.list.am:
        * WebCore.gypi:
        * WebCore.pro:
        * WebCore.vcproj/WebCore.vcproj:
        * WebCore.xcodeproj/project.pbxproj:
        * bindings/js/JSCustomXPathNSResolver.cpp:
        * bindings/scripts/CodeGeneratorJS.pm:
        * bindings/v8/V8Proxy.cpp:
        * dom/ScriptExecutionContext.h:
        * html/HTMLFormElement.cpp:
        * html/parser/XSSFilter.cpp:
        * inspector/ConsoleMessage.h:
        * inspector/InjectedScriptHost.h:
        * inspector/InspectorAgent.h:
        * inspector/InspectorConsoleAgent.h:
        * inspector/InspectorFrontendHost.h:
        * inspector/InspectorInstrumentation.cpp:
        * inspector/InspectorInstrumentation.h:
        * loader/EmptyClients.h:
        * loader/FrameLoader.cpp:
        * loader/MainResourceLoader.cpp:
        * loader/appcache/ApplicationCacheGroup.cpp:
        * page/ChromeClient.h:
        * page/Console.cpp:
        (WebCore::Console::~Console):
        * page/Console.h:
        * page/ConsoleTypes.h: Added.
        * page/ContentSecurityPolicy.cpp:
        * page/Geolocation.h:
        * workers/WorkerReportingProxy.h:
        * xml/XMLHttpRequest.cpp:

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

10 years ago2011-05-11 Anton Muhin <antonnm@chromium.org>
antonm@chromium.org [Wed, 11 May 2011 19:00:17 +0000 (19:00 +0000)]
2011-05-11  Anton Muhin  <antonnm@chromium.org>

        Unreviewed.

        Removing now unnecessary Chromium suppressions.

        * platform/chromium/test_expectations.txt:

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

10 years ago2011-05-11 Sam Weinig <sam@webkit.org>
weinig@apple.com [Wed, 11 May 2011 18:38:02 +0000 (18:38 +0000)]
2011-05-11  Sam Weinig  <sam@webkit.org>

        Reviewed by Adam Roben.

        WebKit2 should tell app that is unresponsive in more cases
        <rdar://problem/9110151>
        https://bugs.webkit.org/show_bug.cgi?id=60608

        * UIProcess/DrawingAreaProxyImpl.cpp:
        (WebKit::DrawingAreaProxyImpl::didUpdateBackingStoreState):
        (WebKit::DrawingAreaProxyImpl::sendUpdateBackingStoreState):
        Invoke the responsiveness time when forcing a backing store update
        to catch the cases of activating tabs, resizing the window, etc.

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

10 years ago2011-05-11 Dimitri Glazkov <dglazkov@chromium.org>
dglazkov@chromium.org [Wed, 11 May 2011 18:35:15 +0000 (18:35 +0000)]
2011-05-11  Dimitri Glazkov  <dglazkov@chromium.org>

        Unreviewed, rolling out r85650.
        http://trac.webkit.org/changeset/85650
        https://bugs.webkit.org/show_bug.cgi?id=59983

        Triggers m_numNodeListCaches > 0 assert in gc-heavy sites.

        * dom/ContainerNode.cpp:
        (WebCore::ContainerNode::childrenChanged):
        * dom/Node.cpp:
        (WebCore::Node::~Node):
        (WebCore::Node::setDocument):
        (WebCore::Node::setTreeScopeRecursively):
        (WebCore::Node::childNodes):
        (WebCore::Node::registerDynamicNodeList):
        (WebCore::Node::unregisterDynamicNodeList):
        (WebCore::Node::notifyLocalNodeListsAttributeChanged):
        (WebCore::Node::notifyLocalNodeListsChildrenChanged):
        (WebCore::Node::getElementsByTagName):
        (WebCore::Node::getElementsByTagNameNS):
        (WebCore::Node::getElementsByName):
        (WebCore::Node::getElementsByClassName):
        * dom/Node.h:
        * html/HTMLFormControlElement.cpp:
        (WebCore::HTMLFormControlElement::labels):

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

10 years ago2011-05-11 Martin Robinson <mrobinson@igalia.com>
mrobinson@webkit.org [Wed, 11 May 2011 18:10:02 +0000 (18:10 +0000)]
2011-05-11  Martin Robinson  <mrobinson@igalia.com>

        Try to fix the WinCairo build.

        * Shared/ShareableBitmap.h: Correctly include RefPtrCairo here and
        guard it with USE(CAIRO) instead of PLATFORM(CAIRO).

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

10 years ago[wx] Build fix, adding new LayoutTestController method stubs.
kevino@webkit.org [Wed, 11 May 2011 17:58:53 +0000 (17:58 +0000)]
[wx] Build fix, adding new LayoutTestController method stubs.

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

10 years ago2011-05-11 Eric Carlson <eric.carlson@apple.com>
eric.carlson@apple.com [Wed, 11 May 2011 17:41:35 +0000 (17:41 +0000)]
2011-05-11  Eric Carlson  <eric.carlson@apple.com>

        Reviewed by Darin Adler.

        Video track sometimes fails to draw.
        https://bugs.webkit.org/show_bug.cgi?id=60635
        <rdar://problem/9281951>

        No new tests, covered by existing pixel tests.

        * html/HTMLMediaElement.cpp:
        (WebCore::HTMLMediaElement::loadResource): Set display mode to "Unknown" to force a
            recalculation, and media engine notification, the next time the state machine runs.

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

10 years agoWinCE build fixes for strict PassOwnPtr
aroben@apple.com [Wed, 11 May 2011 17:31:08 +0000 (17:31 +0000)]
WinCE build fixes for strict PassOwnPtr

Source/JavaScriptCore:

* wtf/unicode/CollatorDefault.cpp:
(WTF::Collator::userDefault): Use adoptPtr.

Source/WebCore:

* platform/graphics/wince/SharedBitmap.cpp:
(WebCore::SharedBitmap::createHandle):
(WebCore::SharedBitmap::clipBitmap):
Use nullptr instead of 0.

* platform/graphics/wince/SimpleFontDataWinCE.cpp: Keep LOOSE_PASS_OWN_PTR turned on for
this file until SimpleFontData::scaledFontData is dealt with on all platforms.

* platform/text/wince/TextCodecWinCE.cpp:
(WebCore::newTextCodecWinCE): Use adoptPtr.

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

10 years ago2011-05-11 Chang Shu <cshu@webkit.org>
commit-queue@webkit.org [Wed, 11 May 2011 16:59:08 +0000 (16:59 +0000)]
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  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

        PlatformKeyboardEvent.m_text should be set to "\t" instead of leaving as null.
        The value is checked at EventHandler.cpp:2527 (r86166).

        Function keyTextForKeyEvent is partially implemented and can be enhanced in
        a need-base.

        * platform/qt/PlatformKeyboardEventQt.cpp:
        (WebCore::keyTextForKeyEvent):
        (WebCore::PlatformKeyboardEvent::PlatformKeyboardEvent):

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

10 years agoUse case-insensitive comparisons when checking plugin filenames on Windows
aroben@apple.com [Wed, 11 May 2011 16:56:20 +0000 (16:56 +0000)]
Use case-insensitive comparisons when checking plugin filenames on Windows

Windows paths are nearly always case-insensitive.

I couldn't think of a good way to test this.

Fixes <http://webkit.org/b/60633> WebKit1 loads Windows Presentation Foundation plugin, but
should not

Reviewed by Steve Falkenburg.

* plugins/win/PluginPackageWin.cpp:
(WebCore::PluginPackage::isPluginBlacklisted): Use equalIgnoringCase instead of == when
checking plugin filenames.

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

10 years agoUnreviewed fix after r86228.
ossy@webkit.org [Wed, 11 May 2011 16:45:45 +0000 (16:45 +0000)]
Unreviewed fix after r86228.

* platform/qt-mac/Skipped: Add failing editing tets.

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

10 years ago<https://bugs.webkit.org/show_bug.cgi?id=60631>
sullivan@apple.com [Wed, 11 May 2011 16:45:04 +0000 (16:45 +0000)]
<https://bugs.webkit.org/show_bug.cgi?id=60631>
<rdar://problem/9420520>

Reviewed by Darin Adler.

WebKit2 doesn't clear the pendingAPIRequestURL on in-page anchor navigation [60631]

* UIProcess/WebPageProxy.cpp:
(WebKit::WebPageProxy::didSameDocumentNavigationForFrame):
Call clearPendingAPIRequestURL().

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

10 years ago[MIPS] Fix compilation of the MIPS JIT
zecke@webkit.org [Wed, 11 May 2011 16:42:43 +0000 (16:42 +0000)]
[MIPS] Fix compilation of the MIPS JIT

Include the MIPSAssembler.h first to indirectly include
AssemblerBuffer.h before the AbstractMacroAssembler.h. This
order is used for the ARM and X86 MacroAssembler*.h.

* assembler/MacroAssemblerMIPS.h:

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

10 years ago2011-05-11 Anton Muhin <antonnm@chromium.org>
antonm@chromium.org [Wed, 11 May 2011 16:40:29 +0000 (16:40 +0000)]
2011-05-11  Anton Muhin  <antonnm@chromium.org>

        Unreviewed.

        Chromium suppressions.

        * platform/chromium/test_expectations.txt:

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

10 years agoTurn on strict PassOwnPtr on Windows
aroben@apple.com [Wed, 11 May 2011 16:16:01 +0000 (16:16 +0000)]
Turn on strict PassOwnPtr on Windows

Fixes <http://webkit.org/b/60632> Windows should build with strict PassOwnPtr enabled

Reviewed by Adam Barth.

Source/JavaScriptCore:

* wtf/PassOwnPtr.h:

Source/WebCore:

* platform/graphics/win/SimpleFontDataWin.cpp: Keep LOOSE_PASS_OWN_PTR turned on for this
file until SimpleFontData::scaledFontData is dealt with on all platforms.

Source/WebKit2:

* WebProcess/FullScreen/win/WebFullScreenManagerWin.cpp:
(WebKit::WebFullScreenManagerWin::setRootFullScreenLayer): Use nullptr instead of 0.

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

10 years agoUnreviewed update after r86230.
ossy@webkit.org [Wed, 11 May 2011 16:06:51 +0000 (16:06 +0000)]
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.

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

10 years ago2011-05-11 Chang Shu <cshu@webkit.org>
commit-queue@webkit.org [Wed, 11 May 2011 16:05:26 +0000 (16:05 +0000)]
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:

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

10 years ago2011-05-11 Julien Chaffraix <jchaffraix@webkit.org>
jchaffraix@webkit.org [Wed, 11 May 2011 15:24:32 +0000 (15:24 +0000)]
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  Julien Chaffraix  <jchaffraix@webkit.org>

        Reviewed by Geoffrey Garen.

        XPathResult should keep its node set's JS wrappers alive
        https://bugs.webkit.org/show_bug.cgi?id=34231

        The change added a custom mark function for JSC. V8 was already properly
        marking the nodes so no change were done on the V8 side.

        Tests: fast/xpath/xpath-iterator-result-should-mark-its-nodeset.html
               fast/xpath/xpath-other-nodeset-result-should-mark-its-nodeset.html
               fast/xpath/xpath-result-eventlistener-crash.html
               fast/xpath/xpath-snapshot-result-should-mark-its-nodeset.html

        * Android.jscbindings.mk:
        * GNUmakefile.list.am:
        * UseJSC.cmake:
        * WebCore.gypi:
        * WebCore.pro:
        * WebCore.vcproj/WebCore.vcproj:
        * WebCore.xcodeproj/project.pbxproj:
        * bindings/js/JSBindingsAllInOne.cpp:
        Added the new file to our build systems.

        * bindings/js/JSXPathResultCustom.cpp: Added.
        (WebCore::JSXPathResult::markChildren): Added code to mark the
        XPathResult snapshot's nodes.
        * xml/XPathResult.h:
        (WebCore::XPathResult::value): Exposed this getter so that we can
        mark our XPathValue.
        * xml/XPathResult.idl: Told the IDL parser that we now need
        a custom mark function.

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

10 years agoWebKitTestRunner needs layoutTestController.originsWithLocalStorage.
jberlin@webkit.org [Wed, 11 May 2011 15:12:27 +0000 (15:12 +0000)]
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:

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

10 years ago2011-05-04 Philippe Normand <pnormand@igalia.com>
philn@webkit.org [Wed, 11 May 2011 15:08:40 +0000 (15:08 +0000)]
2011-05-04  Philippe Normand  <pnormand@igalia.com>

        Reviewed by Martin Robinson.

        [Gtk+] deadlock in gstreamer video player when exiting fullscreen
        https://bugs.webkit.org/show_bug.cgi?id=58548

        Block data flow towards the pipeline branch to remove to avoid
        potential deadlocks during the PAUSED->READY transitions of the
        elements to remove.

        * platform/graphics/gstreamer/GStreamerGWorld.cpp:
        (WebCore::GStreamerGWorld::exitFullscreen):

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

10 years ago[WebKit2] exceededDatabaseQuota function on WKPageUIClient needs to provide information
jberlin@webkit.org [Wed, 11 May 2011 14:48:36 +0000 (14:48 +0000)]
[WebKit2] exceededDatabaseQuota function on WKPageUIClient needs to provide information
about the usage for both the origin overall and the database in question.
https://bugs.webkit.org/show_bug.cgi?id=60573

Reviewed by Darin Adler.

Source/WebKit2:

Add the currentOriginUsage parameter.

* Platform/CoreIPC/HandleMessage.h:
(CoreIPC::callMemberFunction):
* UIProcess/API/C/WKPage.h:
* UIProcess/WebPageProxy.cpp:
(WebKit::WebPageProxy::exceededDatabaseQuota):
* UIProcess/WebPageProxy.h:
* UIProcess/WebPageProxy.messages.in:
* UIProcess/WebUIClient.cpp:
(WebKit::WebUIClient::exceededDatabaseQuota):
* UIProcess/WebUIClient.h:
* WebProcess/WebCoreSupport/WebChromeClient.cpp:
(WebKit::WebChromeClient::exceededDatabaseQuota):

Tools:

* WebKitTestRunner/TestController.cpp:
(WTR::exceededDatabaseQuota):

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

10 years ago[Qt] Expected results for 2d-transforms new test
ossy@webkit.org [Wed, 11 May 2011 14:39:34 +0000 (14:39 +0000)]
[Qt] Expected results for 2d-transforms new test
https://bugs.webkit.org/show_bug.cgi?id=60565

Patch by Srinivasulu Chereddy <srinivasulu.chereddy@nokia.com> on 2011-05-11
Reviewed by Csaba Osztrogonác.

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.

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

10 years ago2011-05-10 Stephen White <senorblanco@chromium.org>
senorblanco@chromium.org [Wed, 11 May 2011 14:23:03 +0000 (14:23 +0000)]
2011-05-10  Stephen White  <senorblanco@chromium.org>

        Reviewed by David Levin.

        Adding myself as a reviewer.
        https://bugs.webkit.org/show_bug.cgi?id=60587

        * Scripts/webkitpy/common/config/committers.py:

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

10 years ago2011-05-11 Gyuyoung Kim <gyuyoung.kim@samsung.com>
gyuyoung.kim@samsung.com [Wed, 11 May 2011 14:04:51 +0000 (14:04 +0000)]
2011-05-11  Gyuyoung Kim  <gyuyoung.kim@samsung.com>

        Reviewed by Antonio Gomes.

        [EFL] Remove fixed_layout structure in ewk_view
        https://bugs.webkit.org/show_bug.cgi?id=60615

        Remove unnecessary fixed_layout structure. The ewk_view_fixed_layout_size_set/get()
        use WebCore's functions directly.

        * ewk/ewk_view.cpp:
        (ewk_view_fixed_layout_size_set):
        (ewk_view_fixed_layout_size_get):

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

10 years ago2011-05-11 Tomasz Morawski <t.morawski@samsung.com>
demarchi@webkit.org [Wed, 11 May 2011 12:19:47 +0000 (12:19 +0000)]
2011-05-11  Tomasz Morawski  <t.morawski@samsung.com>

        Rubber-stamped by Daniel Bates.

        Added missing DATABASE macro
        https://bugs.webkit.org/show_bug.cgi?id=60437

        * ewk/ewk_settings.cpp:
        (ewk_settings_web_database_default_quota_get):

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

10 years ago2011-05-11 Eric Seidel <eric@webkit.org>
eric@webkit.org [Wed, 11 May 2011 11:30:37 +0000 (11:30 +0000)]
2011-05-11  Eric Seidel  <eric@webkit.org>

        Reviewed by Csaba Osztrogonác.

        queues.webkit.org should show 1000+ instead of 1000 when we hit the query limit
        https://bugs.webkit.org/show_bug.cgi?id=60614

        AppEngine has a result limit of 1000.  We hit that when trying
        to find out how many patches the style-queue (and other queues)
        have passed in the last 30 days.  So lets display 1000+ instead
        of 1000 to avoid confusion. (Ossy was asking about this in #webkit tonight.)

        I also made the status pages show "never" instead of just "ago" when we
        haven't seen a pass or boot message in the last 1000 messages.

        * QueueStatusServer/handlers/queuestatus.py:
        * QueueStatusServer/templates/queuestatus.html:

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

10 years ago2011-05-11 Kent Tamura <tkent@chromium.org>
tkent@chromium.org [Wed, 11 May 2011 09:45:39 +0000 (09:45 +0000)]
2011-05-11  Kent Tamura  <tkent@chromium.org>

        The tests added by r86224 don't work on WebKit2/mac.

        * platform/mac-wk2/Skipped:

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

10 years ago2011-05-11 Kent Tamura <tkent@chromium.org>
tkent@chromium.org [Wed, 11 May 2011 09:11:36 +0000 (09:11 +0000)]
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-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

        Tests: fast/forms/validation-message-on-checkbox.html
               fast/forms/validation-message-on-listbox.html
               fast/forms/validation-message-on-menulist.html
               fast/forms/validation-message-on-radio.html
               fast/forms/validation-message-on-textarea.html

        * css/html.css:
        (::-webkit-validation-bubble-message):
          Add white-space:normal in order not to inherit white-space:pre for <select>.
        * html/ValidationMessage.cpp:
        (WebCore::adjustBubblePosition):
          Adjust the bubble position.
          - The top of the bubble should be same as the bottom of the target control.
          - The left of the bubble should be same as the left of the target control.
            But If the left+32 is larger than the center of the target control,
            left+32 should be at the center of the target control.
            But the left position should not be less than 0.
        (WebCore::ValidationMessage::buildBubbleTree): Call adjustBubblePosition().

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

10 years ago2011-05-11 Adam Barth <abarth@webkit.org>
abarth@webkit.org [Wed, 11 May 2011 08:32:13 +0000 (08:32 +0000)]
2011-05-11  Adam Barth  <abarth@webkit.org>

        Reviewed by Eric Seidel.

        sheriffbot shouldn't spam bugs when it can't figure out who to blame
        https://bugs.webkit.org/show_bug.cgi?id=60613

        This patch limits the number of bugs sheriffbot will spam to three.
        Ideally, we'd come up with some smarter huerstics, but hopefully this
        will cut down on the bugmail spam for slow bots.

        * Scripts/webkitpy/tool/commands/sheriffbot.py:

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

10 years ago2011-05-11 Emil A Eklund <eae@chromium.org>
eae@chromium.org [Wed, 11 May 2011 07:11:18 +0000 (07:11 +0000)]
2011-05-11  Emil A Eklund  <eae@chromium.org>

        Reviewed by Eric Seidel.

        Convert RenderFlexibleBox to use IntPoint/IntSize instead of x,y/w,h pairs
        https://bugs.webkit.org/show_bug.cgi?id=60592

        Refactoring, covered by existing tests.

        * rendering/RenderFlexibleBox.cpp:
        (WebCore::RenderFlexibleBox::layoutBlock):
        (WebCore::RenderFlexibleBox::layoutHorizontalBox):
        (WebCore::RenderFlexibleBox::layoutVerticalBox):
        (WebCore::RenderFlexibleBox::placeChild):
        * rendering/RenderFlexibleBox.h:

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

10 years ago2011-05-10 Yury Semikhatsky <yurys@chromium.org>
yurys@chromium.org [Wed, 11 May 2011 06:41:31 +0000 (06:41 +0000)]
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.

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

10 years agoUnreviewed.
slewis@apple.com [Wed, 11 May 2011 06:41:23 +0000 (06:41 +0000)]
Unreviewed.

Revert accidental JavaScriptCore change in http://trac.webkit.org/changeset/86130

* Configurations/JavaScriptCore.xcconfig:

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

10 years ago2011-05-10 Kent Tamura <tkent@chromium.org>
tkent@chromium.org [Wed, 11 May 2011 06:12:42 +0000 (06:12 +0000)]
2011-05-10  Kent Tamura  <tkent@chromium.org>

        Reviewed by Hajime Morita.

        [Chromium] Fix a bug of WebFrameImpl::forms()
        https://bugs.webkit.org/show_bug.cgi?id=60606

        If document()->forms() contained non-HTML element, the second for
        loop didn't stop.

        * src/WebFrameImpl.cpp:
        (WebKit::WebFrameImpl::forms): Simplify the function by wtf::Vector().

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

10 years ago2011-05-10 Ilya Tikhonovsky <loislo@chromium.org>
loislo@chromium.org [Wed, 11 May 2011 06:07:37 +0000 (06:07 +0000)]
2011-05-10  Ilya Tikhonovsky  <loislo@chromium.org>

        Unreviewed buildfix for strict OwnPtr patch.

        * src/PlatformBridge.cpp:
        (WebCore::PlatformBridge::loadPlatformAudioResource):
        (WebCore::PlatformBridge::decodeAudioFileData):

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

10 years ago2011-05-10 Ilya Tikhonovsky <loislo@chromium.org>
loislo@chromium.org [Wed, 11 May 2011 06:03:27 +0000 (06:03 +0000)]
2011-05-10  Ilya Tikhonovsky  <loislo@chromium.org>

        Unreviewed buildfix for strict OwnPtr.

        * platform/audio/AudioBus.cpp:
        (WebCore::AudioBus::createBufferFromRange):
        (WebCore::AudioBus::createBySampleRateConverting):
        (WebCore::AudioBus::createByMixingToMono):
        * platform/audio/HRTFElevation.cpp:
        (WebCore::HRTFElevation::createForSubject):
        (WebCore::HRTFElevation::createByInterpolatingSlices):
        * platform/audio/Panner.cpp:
        (WebCore::Panner::create):
        * platform/audio/Reverb.cpp:
        (WebCore::Reverb::initialize):
        * platform/audio/chromium/AudioBusChromium.cpp:
        (WebCore::AudioBus::loadPlatformResource):
        (WebCore::createBusFromInMemoryAudioFile):

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

10 years ago2011-05-10 Adam Barth <abarth@webkit.org>
abarth@webkit.org [Wed, 11 May 2011 05:56:14 +0000 (05:56 +0000)]
2011-05-10  Adam Barth  <abarth@webkit.org>

        Build fix for font data madness.  I've had to whitelist this on several
        ports.  They need to all be fixed at once.

        * platform/graphics/chromium/SimpleFontDataChromiumWin.cpp:

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

10 years ago2011-05-10 Abhishek Arya <inferno@chromium.org>
inferno@chromium.org [Wed, 11 May 2011 05:35:51 +0000 (05:35 +0000)]
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:

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

10 years agoBUILD FIX for !ENABLE(TEXT_CARET) after r86039
ddkilzer@apple.com [Wed, 11 May 2011 05:34:27 +0000 (05:34 +0000)]
BUILD FIX for !ENABLE(TEXT_CARET) after r86039

* editing/FrameSelection.cpp:
(WebCore::DragCaretController::paintDragCaret): Added
UNUSED_PARAM(frame) for !ENABLE(TEXT_CARET).

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

10 years ago2011-05-10 Eric Seidel <eric@webkit.org>
eric@webkit.org [Wed, 11 May 2011 05:32:00 +0000 (05:32 +0000)]
2011-05-10  Eric Seidel  <eric@webkit.org>

        Reviewed by Adam Barth.

        EWS bots should be robust against test-webkitpy hangs
        https://bugs.webkit.org/show_bug.cgi?id=60579

        Added a killAfterTimeout subroutine, which takes a child_pid
        and timeout, and will setup a watchdog process to kill that child
        after the timeout.  killAfterTimeout will waitpid on the child.

        * EWSTools/start-queue.sh:

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

10 years ago2011-05-10 Adam Barth <abarth@webkit.org>
abarth@webkit.org [Wed, 11 May 2011 05:21:20 +0000 (05:21 +0000)]
2011-05-10  Adam Barth  <abarth@webkit.org>

        Reviewed by David Levin.

        Enable strict PassOwnPtr on Chromium
        https://bugs.webkit.org/show_bug.cgi?id=60502

        Other platforms to follow.

        * wtf/PassOwnPtr.h:

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

10 years ago2011-05-10 MORITA Hajime <morrita@google.com>
morrita@google.com [Wed, 11 May 2011 04:59:48 +0000 (04:59 +0000)]
2011-05-10  MORITA Hajime  <morrita@google.com>

        Unreviewed, moved myself to the reviewers list.

        * Scripts/webkitpy/common/config/committers.py:

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

10 years ago2011-05-10 Geoffrey Garen <ggaren@apple.com>
ggaren@apple.com [Wed, 11 May 2011 02:29:51 +0000 (02:29 +0000)]
2011-05-10  Geoffrey Garen  <ggaren@apple.com>

        Reviewed by Darin Adler.

        Fixed up some #include dependencies so the WriteBarrier class can actually call Heap::writeBarrier
        https://bugs.webkit.org/show_bug.cgi?id=60532

        * GNUmakefile.list.am:
        * JavaScriptCore.gypi:
        * JavaScriptCore.xcodeproj/project.pbxproj: Build!

        * heap/Handle.h: Moved HandleTypes to its own header because that's the
        WebKit style, and it was necessary to resolve a circular dependency
        between Handle.h and WriteBarrier.h.

        * heap/Heap.h:
        (JSC::Heap::writeBarrier): Added an inline no-op writeBarrier(), to
        verify that all the code is in the right place.

        * heap/MarkStack.h: Moved WriteBarrier operations to WriteBarrier.h to
        resolve a circular dependency.

        * runtime/ArgList.h:
        * runtime/JSCell.h: #include WriteBarrier.h since we don't get it for
        free anymore.

        * runtime/PropertyMapHashTable.h:
        (JSC::PropertyTable::PropertyTable): Call the real writeBarrier()
        function, now that it exists.

        * runtime/SmallStrings.h: Removed a stray #include to resolve a circular
        dependency.

        * runtime/WriteBarrier.h:
        (JSC::WriteBarrierBase::set):
        (JSC::MarkStack::append):
        (JSC::MarkStack::appendValues): Updated to match the changes above.

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

10 years ago2011-05-10 James Robinson <jamesr@chromium.org>
jamesr@google.com [Wed, 11 May 2011 02:28:52 +0000 (02:28 +0000)]
2011-05-10  James Robinson  <jamesr@chromium.org>

        Reviewed by Kenneth Russell.

        [chromium] Clean up setLayerRenderer() calls in LayerRendererChromium
        https://bugs.webkit.org/show_bug.cgi?id=60524

        This refactors the way LayerRendererChromium calls setLayerRenderer on its layers in a few ways to clean things
        up:

        *) Move the pre-paint call to setLayerRenderer from updatePropertiesAndRenderSurfaces() to paintLayerContents().
            updatePropertiesAndRenderSurfaces() does too much and the layer renderer pointer only has to be up to date to do
            the actual paint. Longer term we won't need to call this at all in order to call paint and this call will just
            go away.
        *) Tweaks updateCompositorResourcesRecursive() to be slightly shorter and less error-prone.
        *) Explicitly set the LayerRendererChromium for each layer in the tree when transfering the root layer (used
            during lost context).  LayerChromium::setLayerRenderer checks if the new LayerRendererChromium is different
            by comparing the pointer value to the old one.  This check will be incorrect if there are multiple lost
            contexts between a setLayerRenderer() call and a new LayerRendererChromium happens to be allocated at the
            same address as the old one.  An explicit call to setLayerRenderer() for every layer in the tree fixes this
            since when this function is called the new and old LayerRendererChromium are still live and so they cannot
            live at the same address.

        The first two changes are purely refactors and do not change behavior.  The third issue can't be tested via a
        layout test directly as we don't have a way to induce a lost context on the compositor in a layout test.

        * platform/graphics/chromium/LayerRendererChromium.cpp:
        (WebCore::LayerRendererChromium::paintLayerContents):
        (WebCore::LayerRendererChromium::clearLayerRendererRecursive):
        (WebCore::LayerRendererChromium::transferRootLayer):
        (WebCore::LayerRendererChromium::updatePropertiesAndRenderSurfaces):
        (WebCore::LayerRendererChromium::updateCompositorResourcesRecursive):
        * platform/graphics/chromium/LayerRendererChromium.h:

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

10 years agoBuild fix
oliver@apple.com [Wed, 11 May 2011 02:18:06 +0000 (02:18 +0000)]
Build fix

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

10 years ago2011-05-10 Oliver Hunt <oliver@apple.com>
oliver@apple.com [Wed, 11 May 2011 02:11:56 +0000 (02:11 +0000)]
2011-05-10  Oliver Hunt  <oliver@apple.com>

        Reviewed by Geoffrey Garen.

        Assertion failure in JSC::Structure::typeInfo when reloading weather.com video page
        https://bugs.webkit.org/show_bug.cgi?id=60580

        The plugin object map was incorrect trying to implement a weak map itself using
        destructors.  Switch to a WeakGCMap and the problem is fixed.

        * WebProcess/Plugins/Netscape/JSNPObject.cpp:
        (WebKit::JSNPObject::~JSNPObject):
        * WebProcess/Plugins/Netscape/NPRuntimeObjectMap.cpp:
        (WebKit::NPRuntimeObjectMap::getOrCreateJSObject):
        (WebKit::NPRuntimeObjectMap::invalidate):
        * WebProcess/Plugins/Netscape/NPRuntimeObjectMap.h:

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

10 years ago2011-05-10 Anton D'Auria <adauria@apple.com>
commit-queue@webkit.org [Wed, 11 May 2011 01:53:30 +0000 (01:53 +0000)]
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 David Levin.

        StorageTracker should report actual local storage usage on disk
        https://bugs.webkit.org/show_bug.cgi?id=60558

        Tests: storage/domstorage/localstorage/storagetracker/storage-tracker-6-create.html
               storage/domstorage/localstorage/storagetracker/storage-tracker-7-usage.html

        Use SQLiteFileSystem::getDatabaseFileSize to get actual usage by
        an origin's local storage db. Factored out code that retrieves
        path of local storage db.

        * WebCore.exp.in: Sorted alphabetically StorageTracker's mangled
        function names.
        * storage/StorageTracker.cpp:
        (WebCore::StorageTracker::syncDeleteOrigin): Uses helper function
        to get path of origin's db
        (WebCore::StorageTracker::databasePathForOrigin): New helper function.
        that gets the path of an origin's local storage db from StorageTracker.
        (WebCore::StorageTracker::diskUsageForOrigin): New API.
        * storage/StorageTracker.h:
2011-05-10  Anton D'Auria  <adauria@apple.com>

        Reviewed by David Levin.

        Add ApplicationCache API to get disk usage per origin
        https://bugs.webkit.org/show_bug.cgi?id=57127

        Added Mac port API.

        * WebCoreSupport/WebApplicationCache.h:
        * WebCoreSupport/WebApplicationCache.mm:
        (+[WebApplicationCache diskUsageForOrigin:]):
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

        * DumpRenderTree/LayoutTestController.cpp:
        (localStorageDiskUsageForOriginCallback):
        (LayoutTestController::staticFunctions):
        * DumpRenderTree/LayoutTestController.h:
        * DumpRenderTree/chromium/LayoutTestController.cpp:
        (LayoutTestController::LayoutTestController):
        (LayoutTestController::localStorageDiskUsageForOrigin):
        * DumpRenderTree/chromium/LayoutTestController.h:
        * DumpRenderTree/gtk/LayoutTestControllerGtk.cpp:
        (LayoutTestController::localStorageDiskUsageForOrigin):
        * DumpRenderTree/mac/LayoutTestControllerMac.mm:
        (LayoutTestController::localStorageDiskUsageForOrigin):
        * DumpRenderTree/qt/LayoutTestControllerQt.cpp:
        (LayoutTestController::localStorageDiskUsageForOrigin):
        * DumpRenderTree/qt/LayoutTestControllerQt.h:
        * DumpRenderTree/win/LayoutTestControllerWin.cpp:
        (LayoutTestController::localStorageDiskUsageForOrigin):

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

10 years ago2011-05-10 Anton D'Auria <adauria@apple.com>
commit-queue@webkit.org [Wed, 11 May 2011 01:47:03 +0000 (01:47 +0000)]
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  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

        ApplicationCacheStorage already provides an API to get per-origin
        disk usage. This should be exposed through WebCore::ApplicationCache
        to not be dependent on storage implementation.

        Test: http/tests/appcache/origin-usage.html

        * WebCore.exp.in:
        * loader/appcache/ApplicationCache.cpp:
        (WebCore::ApplicationCache::diskUsageForOrigin):
        * loader/appcache/ApplicationCache.h:
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

        Added Mac port API.

        * WebCoreSupport/WebApplicationCache.h:
        * WebCoreSupport/WebApplicationCache.mm:
        (+[WebApplicationCache diskUsageForOrigin:]):
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

        Added test that loads two frames with ~15Kb image, checks usage,
        deletes app cache, verifies usage is 0.

        * DumpRenderTree/LayoutTestController.cpp:
        (applicationCacheDiskUsageForOriginCallback):
        (LayoutTestController::staticFunctions):
        * DumpRenderTree/LayoutTestController.h:
        * DumpRenderTree/chromium/LayoutTestController.cpp: Added stub.
        (LayoutTestController::LayoutTestController):
        (LayoutTestController::applicationCacheDiskUsageForOrigin):
        * DumpRenderTree/chromium/LayoutTestController.h:
        * DumpRenderTree/gtk/LayoutTestControllerGtk.cpp: Added stub.
        (LayoutTestController::applicationCacheDiskUsageForOrigin):
        * DumpRenderTree/mac/LayoutTestControllerMac.mm:
        (LayoutTestController::applicationCacheDiskUsageForOrigin):
        * DumpRenderTree/qt/LayoutTestControllerQt.cpp: Added stub.
        (LayoutTestController::applicationCacheDiskUsageForOrigin):
        * DumpRenderTree/qt/LayoutTestControllerQt.h:
        * DumpRenderTree/win/LayoutTestControllerWin.cpp: Added stub.
        (LayoutTestController::applicationCacheDiskUsageForOrigin):

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

10 years ago2011-05-10 Lucas De Marchi <lucas.demarchi@profusion.mobi>
demarchi@webkit.org [Wed, 11 May 2011 01:44:01 +0000 (01:44 +0000)]
2011-05-10  Lucas De Marchi  <lucas.demarchi@profusion.mobi>

        Unreviewed, adding Rafael Antognolli as a committer.

        * Scripts/webkitpy/common/config/committers.py:

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

10 years ago2011-05-10 Oliver Hunt <oliver@apple.com>
oliver@apple.com [Wed, 11 May 2011 01:34:44 +0000 (01:34 +0000)]
2011-05-10  Oliver Hunt  <oliver@apple.com>

        Reviewed by Gavin Barraclough.

        Add some aggressive GC validation to debug builds.
        https://bugs.webkit.org/show_bug.cgi?id=60601

        When assertions are enabled we now do some validity checking
        of objects being added to the mark stack.

        * bytecode/Instruction.h:
        (JSC::PolymorphicAccessStructureList::PolymorphicStubInfo::PolymorphicStubInfo):
        (JSC::PolymorphicAccessStructureList::visitAggregate):
        * heap/MarkStack.cpp:
        (JSC::MarkStack::validateSet):
        (JSC::MarkStack::validateValue):
        * heap/MarkStack.h:
        (JSC::MarkStack::appendValues):
        (JSC::MarkStack::append):
        (JSC::MarkStack::internalAppend):

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

10 years ago2011-05-10 Chris Evans <cevans@chromium.org>
commit-queue@webkit.org [Wed, 11 May 2011 01:24:16 +0000 (01:24 +0000)]
2011-05-10  Chris Evans  <cevans@chromium.org>

        Reviewed by Adam Barth.

        Add WebCore::Setting to block displaying and/or running insecure content on secure pages
        https://bugs.webkit.org/show_bug.cgi?id=58378

        * DumpRenderTree/chromium/LayoutTestController.cpp:
        (LayoutTestController::LayoutTestController):
        (LayoutTestController::setAllowDisplayOfInsecureContent):
        (LayoutTestController::setAllowRunningOfInsecureContent):
        * DumpRenderTree/chromium/LayoutTestController.h:
        * DumpRenderTree/chromium/WebPreferences.cpp:
        (WebPreferences::reset):
        (WebPreferences::applyTo):
        * DumpRenderTree/chromium/WebPreferences.h:
        Add plumbing for new settings to Chromium DRT.

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

10 years agoProtect self in [WebCoreResourceHandleAsDelegate connection:didReceiveDataArray:]
psolanki@apple.com [Wed, 11 May 2011 00:46:02 +0000 (00:46 +0000)]
Protect self in [WebCoreResourceHandleAsDelegate connection:didReceiveDataArray:]
https://bugs.webkit.org/show_bug.cgi?id=60594
<rdar://problem/9203259>

Reviewed by Alexey Proskuryakov.

No tests since we don't have any bots testing CFNETWORK_DATA_ARRAY_CALLBACK.

* platform/network/mac/ResourceHandleMac.mm:
(-[WebCoreResourceHandleAsDelegate connection:didReceiveDataArray:]): The didReceiveData()
callback on client can result in the load being cancelled. This results in the delegate
(self) being freed.  Protect self during the loop so we can check for m_handle and safely
return without crashing.

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

10 years ago2011-05-10 Chris Guillory <chris.guillory@google.com>
commit-queue@webkit.org [Wed, 11 May 2011 00:33:47 +0000 (00:33 +0000)]
2011-05-10  Chris Guillory  <chris.guillory@google.com>

        Reviewed by James Robinson.

        [ChromiumWin] Font::drawComplexText calls EndPlatformPaint without calling BeginPlatformPaint.
        https://bugs.webkit.org/show_bug.cgi?id=59848

        To test this I plan to make the non-printing device (BitmapPlatformDevice) fail
        when EndPlatformPaint doesn't matchup with BeginPlatformPaint.
        http://codereview.chromium.org/6949012/

        * platform/graphics/chromium/FontChromiumWin.cpp:
        (WebCore::Font::drawComplexText):

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

10 years agoYet more quarantine related sandbox denial when downloading files
weinig@apple.com [Wed, 11 May 2011 00:19:07 +0000 (00:19 +0000)]
Yet more quarantine related sandbox denial when downloading files
<rdar://problem/9397494>

Reviewed by Dan Bernstein.

* WebProcess/com.apple.WebProcess.sb:

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

10 years ago2011-05-10 Sheriff Bot <webkit.review.bot@gmail.com>
commit-queue@webkit.org [Wed, 11 May 2011 00:10:26 +0000 (00:10 +0000)]
2011-05-10  Sheriff Bot  <webkit.review.bot@gmail.com>

        Unreviewed, rolling out r86195.
        http://trac.webkit.org/changeset/86195
        https://bugs.webkit.org/show_bug.cgi?id=60597

        LayerOffset is a really bad name (Requested by smfr on
        #webkit).

        * GNUmakefile.list.am:
        * WebCore.gypi:
        * WebCore.pro:
        * WebCore.vcproj/WebCore.vcproj:
        * WebCore.xcodeproj/project.pbxproj:
        * page/FrameView.cpp:
        (WebCore::FrameView::paintScrollCorner):
        * platform/graphics/LayerOffset.h: Removed.
        * rendering/InlineTextBox.cpp:
        (WebCore::InlineTextBox::paint):
        (WebCore::InlineTextBox::paintCustomHighlight):
        * rendering/InlineTextBox.h:
        * rendering/RenderBox.cpp:
        (WebCore::RenderBox::paintCustomHighlight):
        * rendering/RenderBox.h:
        * rendering/RenderImage.cpp:
        (WebCore::RenderImage::paintReplaced):
        * rendering/RenderLayer.cpp:
        (WebCore::RenderLayer::paintScrollCorner):
        (WebCore::RenderLayer::paintResizer):
        * rendering/RenderListMarker.cpp:
        (WebCore::RenderListMarker::paint):
        * rendering/RenderObject.h:
        * rendering/RenderScrollbar.cpp:
        (WebCore::RenderScrollbar::paintPart):
        * rendering/RenderScrollbarPart.cpp:
        (WebCore::RenderScrollbarPart::paintIntoRect):
        * rendering/RenderScrollbarPart.h:
        * rendering/RenderTable.cpp:
        (WebCore::RenderTable::paintObject):
        (WebCore::RenderTable::paintMask):
        * rendering/RenderTable.h:
        * rendering/RenderWidget.cpp:
        (WebCore::RenderWidget::paint):
        * rendering/RootInlineBox.cpp:
        (WebCore::RootInlineBox::paintCustomHighlight):
        (WebCore::RootInlineBox::paint):
        * rendering/RootInlineBox.h:

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

10 years ago2011-05-10 Emil A Eklund <eae@chromium.org>
eae@chromium.org [Wed, 11 May 2011 00:06:35 +0000 (00:06 +0000)]
2011-05-10  Emil A Eklund  <eae@chromium.org>

        Reviewed by Eric Seidel.

        Convert x,y and width,height pairs to IntPoint and IntSize for RenderLayer
        https://bugs.webkit.org/show_bug.cgi?id=60409

        Convert RenderLayer to use IntPoint for x,y pairs and IntSize for offsets and sizes.

        Refactoring, covered by existing tests.

        * rendering/RenderLayer.cpp:
        (WebCore::RenderLayer::RenderLayer):
        (WebCore::RenderLayer::updateLayerPositions):
        (WebCore::RenderLayer::updateLayerPosition):
        (WebCore::RenderLayer::scrollTo):
        (WebCore::RenderLayer::visibleHeight):
        (WebCore::RenderLayer::visibleWidth):
        (WebCore::RenderLayer::scrollWidth):
        (WebCore::RenderLayer::scrollHeight):
        (WebCore::RenderLayer::computeScrollDimensions):
        (WebCore::RenderLayer::updateScrollInfoAfterLayout):
        * rendering/RenderLayer.h:
        (WebCore::RenderLayer::x):
        (WebCore::RenderLayer::y):
        (WebCore::RenderLayer::setLocation):
        (WebCore::RenderLayer::width):
        (WebCore::RenderLayer::height):
        (WebCore::RenderLayer::size):
        (WebCore::RenderLayer::setWidth):
        (WebCore::RenderLayer::setHeight):
        (WebCore::RenderLayer::scrolledContentOffset):
        (WebCore::RenderLayer::scrollXOffset):
        (WebCore::RenderLayer::scrollYOffset):
        (WebCore::RenderLayer::scrollOffset):
        (WebCore::RenderLayer::scrollToXOffset):
        (WebCore::RenderLayer::scrollToYOffset):
        (WebCore::RenderLayer::relativePositionOffset):

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

10 years ago2011-05-10 Levi Weintraub <leviw@chromium.org>
leviw@chromium.org [Tue, 10 May 2011 23:45:03 +0000 (23:45 +0000)]
2011-05-10  Levi Weintraub  <leviw@chromium.org>

        Reviewed by Eric Seidel.

        Create LayerOffset class
        https://bugs.webkit.org/show_bug.cgi?id=60490

        Adding a LayerOffset class that will replace existing usage of tx/ty.
        LayerOffset is necessary since these values are commonly used as both
        a size and a point. Updating paintIntoRect to use this new class.

        No new tests since this doesn't change any behavior.

        * GNUmakefile.list.am:
        * WebCore.gypi:
        * WebCore.pro:
        * WebCore.vcproj/WebCore.vcproj:
        * WebCore.xcodeproj/project.pbxproj:
        * page/FrameView.cpp:
        (WebCore::FrameView::paintScrollCorner):
        * platform/graphics/LayerOffset.h: Added.
        (WebCore::LayerOffset::LayerOffset):
        (WebCore::LayerOffset::x):
        (WebCore::LayerOffset::y):
        (WebCore::LayerOffset::setX):
        (WebCore::LayerOffset::setY):
        (WebCore::LayerOffset::toSize):
        (WebCore::LayerOffset::toPoint):
        (WebCore::operator+=):
        (WebCore::operator-=):
        (WebCore::operator+):
        (WebCore::operator-):
        (WebCore::operator==):
        (WebCore::operator!=):
        * rendering/RenderLayer.cpp:
        (WebCore::RenderLayer::paintScrollCorner):
        (WebCore::RenderLayer::paintResizer):
        * rendering/RenderScrollbar.cpp:
        (WebCore::RenderScrollbar::paintPart):
        * rendering/RenderScrollbarPart.cpp:
        (WebCore::RenderScrollbarPart::paintIntoRect):
        * rendering/RenderScrollbarPart.h:

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

10 years ago2011-05-10 Ryosuke Niwa <rniwa@webkit.org>
rniwa@webkit.org [Tue, 10 May 2011 23:32:17 +0000 (23:32 +0000)]
2011-05-10  Ryosuke Niwa  <rniwa@webkit.org>

        Reviewed by Darin Adler.

        Make member variables of CaretBase private
        https://bugs.webkit.org/show_bug.cgi?id=60454

        Moved m_absCaretBounds, m_absoluteCaretRepaintBounds, m_absCaretBoundsDirty, and m_caretPaint back
        from CaretBase to FrameSelection because they are only used in FrameSelection, and made the rest
        of member variables in CaretBase private.

        * editing/FrameSelection.cpp:
        (WebCore::CaretBase::CaretBase): Takes CaretVisibility as an argument.
        (WebCore::DragCaretController::DragCaretController):
        (WebCore::FrameSelection::FrameSelection): Initializes m_absCaretBoundsDirty and m_caretPaint
        now that they are part of FrameSelection again.
        (WebCore::DragCaretController::setCaretPosition):
        (WebCore::FrameSelection::setSelection):
        (WebCore::CaretBase::clearCaretRect): Extracted from updateCaretRect.
        (WebCore::CaretBase::updateCaretRect): No longer clears caret; all call sites (namely setCaretPosition
        and localCaretRect) that used to call updateCaretRect now need to call clearCaretRect or updateCaretRect
        based on some conditions.
        (WebCore::FrameSelection::localCaretRect):
        (WebCore::CaretBase::caretRepaintRect):
        (WebCore::FrameSelection::recomputeCaretRect):
        (WebCore::FrameSelection::paintCaret): Only calls CaretBase::paintCaret if m_caretPaint is true.
        (WebCore::CaretBase::paintCaret): Removed an early exit for when m_caretPaint is false since m_caretPaint
        has been moved from CaretBase to FrameSelection.
        (WebCore::FrameSelection::focusedOrActiveStateChanged):
        (WebCore::FrameSelection::updateAppearance):
        (WebCore::FrameSelection::setCaretVisibility): Takes CaretVisibility instead of bool.
        (WebCore::FrameSelection::caretBlinkTimerFired):
        * editing/FrameSelection.h:
        (WebCore::CaretBase::fastLocalCaretRect): Added; replaces localCaretRectForPainting.
        (WebCore::CaretBase::shouldUpdateCaretRect): Added.
        (WebCore::CaretBase::setCaretRectNeedsUpdate): Added.
        (WebCore::CaretBase::setCaretVisibility): Added.
        (WebCore::CaretBase::caretIsVisible): Added.
        (WebCore::FrameSelection::setCaretRectNeedsUpdate): Added.

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

10 years ago2011-05-10 Adam Klein <adamk@chromium.org>
adamk@chromium.org [Tue, 10 May 2011 23:28:37 +0000 (23:28 +0000)]
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.

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

10 years agoAdded my name to the reviewers list and removed my name from
enrica@apple.com [Tue, 10 May 2011 23:24:00 +0000 (23:24 +0000)]
Added my name to the reviewers list and removed my name from
to committer-only list.

Reviewed by Beth Dakin.

* Scripts/webkitpy/common/config/committers.py:

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

10 years agoAdded myself as commiter.
jpu@apple.com [Tue, 10 May 2011 23:01:46 +0000 (23:01 +0000)]
Added myself as commiter.

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

10 years ago2011-05-10 James Robinson <jamesr@chromium.org>
jamesr@google.com [Tue, 10 May 2011 22:57:50 +0000 (22:57 +0000)]
2011-05-10  James Robinson  <jamesr@chromium.org>

        Reviewed by Nate Chapin.

        [chromium] Use parent/child terms for compositor tree structures consistently instead of superlayer/sublayer
        https://bugs.webkit.org/show_bug.cgi?id=60588

        GraphicsLayer uses parent/child terminology for tree structure, as does CCLayerImpl.  LayerChromium was using
        superlayer/sublayer terms, inherited from this code's branching from the platform/graphics/win/CACF code.  The
        mixed terminology is confusing and parent/child is more common, so this unifies everything to use parent/child.

        No new tests, refactor only.

        * platform/graphics/chromium/GraphicsLayerChromium.cpp:
        (WebCore::GraphicsLayerChromium::setChildren):
        (WebCore::GraphicsLayerChromium::addChild):
        (WebCore::GraphicsLayerChromium::addChildAtIndex):
        (WebCore::GraphicsLayerChromium::addChildBelow):
        (WebCore::GraphicsLayerChromium::addChildAbove):
        (WebCore::GraphicsLayerChromium::replaceChild):
        (WebCore::GraphicsLayerChromium::removeFromParent):
        (WebCore::GraphicsLayerChromium::setContentsToImage):
        (WebCore::GraphicsLayerChromium::setContentsToCanvas):
        (WebCore::GraphicsLayerChromium::setContentsToMedia):
        (WebCore::GraphicsLayerChromium::hostLayerForChildren):
        (WebCore::GraphicsLayerChromium::layerForParent):
        (WebCore::GraphicsLayerChromium::updateChildList):
        (WebCore::GraphicsLayerChromium::updateLayerPreserves3D):
        (WebCore::GraphicsLayerChromium::setupContentsLayer):
        * platform/graphics/chromium/GraphicsLayerChromium.h:
        * platform/graphics/chromium/LayerChromium.cpp:
        (WebCore::LayerChromium::LayerChromium):
        (WebCore::LayerChromium::~LayerChromium):
        (WebCore::LayerChromium::addChild):
        (WebCore::LayerChromium::insertChild):
        (WebCore::LayerChromium::removeFromParent):
        (WebCore::LayerChromium::removeChild):
        (WebCore::LayerChromium::replaceChild):
        (WebCore::LayerChromium::indexOfChild):
        (WebCore::LayerChromium::rootLayer):
        (WebCore::LayerChromium::removeAllChildren):
        (WebCore::LayerChromium::setChildren):
        (WebCore::LayerChromium::parent):
        (WebCore::LayerChromium::dumpLayer):
        * platform/graphics/chromium/LayerChromium.h:
        (WebCore::LayerChromium::children):
        (WebCore::LayerChromium::setParent):
        (WebCore::LayerChromium::numChildren):
        * platform/graphics/chromium/LayerRendererChromium.cpp:
        (WebCore::LayerRendererChromium::updatePropertiesAndRenderSurfaces):
        (WebCore::LayerRendererChromium::updateCompositorResourcesRecursive):
        (WebCore::LayerRendererChromium::dumpRenderSurfaces):
        * platform/graphics/chromium/cc/CCLayerImpl.cpp:
        (WebCore::CCLayerImpl::parent):
        (WebCore::CCLayerImpl::descendantsDrawsContent):
        * platform/graphics/chromium/cc/CCLayerImpl.h:

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

10 years ago2011-05-10 Levi Weintraub <leviw@chromium.org>
leviw@chromium.org [Tue, 10 May 2011 22:45:29 +0000 (22:45 +0000)]
2011-05-10  Levi Weintraub  <leviw@chromium.org>

        Reviewed by Darin Adler.

        Switch RenderBoxModelObject::paintNinePieceImage to use IntRect instead of four ints
        https://bugs.webkit.org/show_bug.cgi?id=60586

        Switch paintNinePieceImage to take an IntRect instead of four ints representing an IntRect!

        No new tests as this is simply refactoring.

        * rendering/InlineFlowBox.cpp:
        (WebCore::InlineFlowBox::paintMask):
        * rendering/RenderBox.cpp:
        (WebCore::RenderBox::paintMaskImages):
        * rendering/RenderBoxModelObject.cpp:
        (WebCore::RenderBoxModelObject::paintNinePieceImage):
        (WebCore::RenderBoxModelObject::paintBorder):
        * rendering/RenderBoxModelObject.h:

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

10 years ago2011-05-10 Sam Weinig <sam@webkit.org>
weinig@apple.com [Tue, 10 May 2011 22:44:36 +0000 (22:44 +0000)]
2011-05-10  Sam Weinig  <sam@webkit.org>

        Reviewed by Anders Carlsson.

        WebKit2: Coalesced wheel events should be saved to hand back to the client on unhandled return
        https://bugs.webkit.org/show_bug.cgi?id=60584

        * UIProcess/WebPageProxy.cpp:
        (WebKit::WebPageProxy::handleWheelEvent):
        (WebKit::canCoalesce):
        (WebKit::coalesce):
        (WebKit::coalescedWheelEvent):
        (WebKit::WebPageProxy::didReceiveEvent):
        (WebKit::WebPageProxy::processDidCrash):
        Reworks coalescing/merging code to happen on didReceiveEvent rather than in
        handleWheelEvent. This means we now store the pending events in a queue, and
        pull them out when we can.

        * UIProcess/WebPageProxy.h:
        Change single event containers to contain all pending/merged/coalesced events
        and remove unused flag.

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

10 years ago2011-05-09 Jeremy Noble <jer.noble@apple.com>
jer.noble@apple.com [Tue, 10 May 2011 22:43:29 +0000 (22:43 +0000)]
2011-05-09  Jeremy Noble  <jer.noble@apple.com>

        Reviewed by Darin Adler.

        WebKit2: Cancelling full screen before animation completes leads to full screen window staying up.
        https://bugs.webkit.org/show_bug.cgi?id=60531

        Remove the (unused) _isAnimating ivar and replace it with two ivars: _isEnteringFullScreen and
        _isExitingFullScreen.  These will ensure each is only called once per full screen request, and
        that if one exit/enter request interrupts another, that the required functions are called in
        order.

        * UIProcess/mac/WKFullScreenWindowController.h:
        * UIProcess/mac/WKFullScreenWindowController.mm:
        (-[WKFullScreenWindowController enterFullScreen:]): Removed _isAnimating.
        (-[WKFullScreenWindowController exitFullScreen]): Ditto.
        (-[WKFullScreenWindowController beganEnterFullScreenAnimation]): Gate on _isEnteringFullScreen. Check _isExitingFullScreen
            and call [self finishedExitFullScreenAnimation:] if necessary.
        (-[WKFullScreenWindowController finishedEnterFullScreenAnimation:]): Gate on _isEnteringFullScreen.
        (-[WKFullScreenWindowController beganExitFullScreenAnimation]): Gate on _isExitingFullScreen. Check _isEnteringFullScreen
            and call [self finishedEnterFullScreenAnimation:] if necessary.
        (-[WKFullScreenWindowController finishedExitFullScreenAnimation:]): Gate on _isExitingFullScreen.

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

10 years ago2011-05-05 Jer Noble <jer.noble@apple.com>
jer.noble@apple.com [Tue, 10 May 2011 22:38:52 +0000 (22:38 +0000)]
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-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

        Handle the removal of a full screen element from within Node::willRemove() instead
        of Document::nodeWillBeRemoved().  The new function Document::fullScreenElementWillBeRemoved() will
        be called by Node::willRemove() to handle those changes which used to occur in nodeWillBeRemoved().

        Test: fullscreen/full-screen-remove-children.html

        * dom/Document.cpp:
        (WebCore::Document::nodeWillBeRemoved): Removed the code checking for the full screen element.
        (WebCore::Document::fullScreenElementWillBeRemoved): Added, moved from nodeWillBeRemoved.
        * dom/Document.h:
        * dom/Node.cpp:
        (WebCore::Node::willRemove): Check to see if this is the current full screen element.

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

10 years agohttps://bugs.webkit.org/show_bug.cgi?id=60582
bdakin@apple.com [Tue, 10 May 2011 22:37:15 +0000 (22:37 +0000)]
https://bugs.webkit.org/show_bug.cgi?id=60582
Crash switching overlay/non-overlay scrollbar preference still possible
-and corresponding-
<rdar://problem/9323983>

Reviewed by Darin Adler.

Source/WebCore:

This patch prevents any work from being done on pages that are in the page cache
when the preference is switched.

When the Document is going into or coming out of the page cache, have the
FrameView inactivate or activate the Page's ScrollAnimators as appropriate.
* dom/Document.cpp:
(WebCore::Document::setInPageCache):

Iterate through the Page's ScrollableAreas setting the active state of the
ScrollAnimators.
* page/FrameView.cpp:
(WebCore::FrameView::setAnimatorsAreActive):
* page/FrameView.h:

ScrollAnimator has a new bit -- m_isActive. Right now m_isActive is always true
unless the ScrollAnimator belongs to a ScrollableArea that is in the page cache.
* platform/ScrollAnimator.cpp:
(WebCore::ScrollAnimator::ScrollAnimator):
* platform/ScrollAnimator.h:
(WebCore::ScrollAnimator::setIsActive):
(WebCore::ScrollAnimator::isActive):

ScrollAnimatorMac has a new bit -- m_needsScrollerStyleUpdate. This is set to true
when a ScrollAnimator is inactive and has received the
updateScrollerStyleForNewRecommendedScrollerStyle delegate notification. It
prevents any work from being done for this delegate until the ScrollAnimator
becomes active again.
* platform/mac/ScrollAnimatorMac.h:
(WebCore::ScrollAnimatorMac::setNeedsScrollerStyleUpdate):
(WebCore::ScrollAnimatorMac::needsScrollerStyleUpdate):

This delegate method has been re-factored into ScrollAnimatorMac::
updateScrollerStyle(). This way the meat of the function can be called by both the
delegate and ScrollAnimatorMac::setIsActive()
* platform/mac/ScrollAnimatorMac.mm:
(-[ScrollbarPainterControllerDelegate scrollerImpPair:updateScrollerStyleForNewRecommendedScrollerStyle:]):
(WebCore::ScrollAnimatorMac::ScrollAnimatorMac):

This override of ScrollAnimator::setIsActive() calls the base class, and then calls updateScrollerStyle() if needsScrollerStyleUpdate() is set to true.
(WebCore::ScrollAnimatorMac::setIsActive):

This is mostly the same as the old delegate method. Key differences are that if
the ScrollAnimator is inactive, we now setNeedsScrollerStyleUpdate(true) and
return early. We also only call scrollableArea()->scrollbarStyleChanged() if
needsScrollerStyleUpdate() is false since in the true case when we are restoring
from the page cache, this would be duplicated work.
(WebCore::ScrollAnimatorMac::updateScrollerStyle):

New WKSystemInterface function is needed to retrieve the scrollbar style.
* WebCore.exp.in:
* platform/mac/WebCoreSystemInterface.h:
* platform/mac/WebCoreSystemInterface.mm:

Source/WebKit/mac:

* WebCoreSupport/WebSystemInterface.mm:
(InitWebCoreSystemInterface):

Source/WebKit2:

* WebProcess/WebCoreSupport/mac/WebSystemInterface.mm:
(InitWebCoreSystemInterface):

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

10 years ago2011-05-10 Jeff Miller <jeffm@apple.com>
jeffm@apple.com [Tue, 10 May 2011 22:15:09 +0000 (22:15 +0000)]
2011-05-10  Jeff Miller  <jeffm@apple.com>

        Reviewed by Anders Carlsson.

        WebKit2: Windows clients need to know if the page overlay is installed
        https://bugs.webkit.org/show_bug.cgi?id=60562
        <rdar://problem/8940164>

        Until we move all the UI for find on page into WebKit on Windows (specifically, drawing the find bouncy),
        WebKit clients need to know whether WebKit is drawing the page overlay or not.  Keep track of this in
        the WebPageProxy in the UI process and provide a WebKit2 API to retrieve this information.

        * UIProcess/API/C/win/WKView.cpp:
        (WKViewIsPageOverlayInstalled): Added.
        * UIProcess/API/C/win/WKView.h: Added WKViewIsPageOverlayInstalled().

        * UIProcess/PageClient.h: Added didInstallOrUninstallPageOverlay().
        * UIProcess/WebPageProxy.h: Added didInstallOrUninstallPageOverlay().
        * UIProcess/WebPageProxy.messages.in: Added DidInstallOrUninstallPageOverlay.
        * UIProcess/win/WebPageProxyWin.cpp:
        (WebKit::WebPageProxy::didInstallOrUninstallPageOverlay): Added.

        * UIProcess/win/WebView.cpp:
        (WebKit::WebView::WebView): Initialize m_pageOverlayInstalled.
        (WebKit::WebView::didInstallOrUninstallPageOverlay): Added.
        * UIProcess/win/WebView.h: Added didInstallOrUninstallPageOverlay() and m_pageOverlayInstalled.
        (WebKit::WebView::pageOverlayInstalled): Added.

        * WebProcess/WebPage/WebPage.cpp:
        (WebKit::WebPage::installPageOverlay): Send message to UI process to tell it the page overlay is installed.
        (WebKit::WebPage::uninstallPageOverlay): Send message to UI process to tell it the page overlay is uninstalled.

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