Support bottom-right anchored fixed-position elements during a pinch gesture
https://bugs.webkit.org/show_bug.cgi?id=111670

Patch by Tien-Ren Chen <trchen@chromium.org> on 2013-03-28
Reviewed by James Robinson.

Source/Platform:

Added WebLayerPositionConstraint for layers that need position
adjustment during threaded scrolling.
Currently it is only used for fixed-position layers.

* Platform.gypi:
* chromium/public/WebLayer.h:
(WebKit):
(WebLayer):
(WebKit::WebLayer::setPositionConstraint):
(WebKit::WebLayer::positionConstraint):
(WebKit::WebLayer::setFixedToContainerLayer):
(WebKit::WebLayer::fixedToContainerLayer):
* chromium/public/WebLayerPositionConstraint.h: Added.
(WebKit):
(WebLayerPositionConstraint):
(WebKit::WebLayerPositionConstraint::WebLayerPositionConstraint):
(WebKit::WebLayerPositionConstraint::fixedPosition):

Source/WebCore:

This patch adds support to bottom-right fixed-position elements by
introducing WebLayerPositionConstraint to WebLayer.

No new tests. Can't test until chromium patch landed.

* page/scrolling/ScrollingCoordinator.h:
(WebCore::ScrollingCoordinator::updateLayerPositionConstraint):
* page/scrolling/chromium/ScrollingCoordinatorChromium.cpp:
(WebCore::clearPositionConstraintExceptForLayer):
(WebCore):
(WebCore::computePositionConstraint):
(WebCore::ScrollingCoordinatorChromium::updateLayerPositionConstraint):
* page/scrolling/chromium/ScrollingCoordinatorChromium.h:
(ScrollingCoordinatorChromium):
* rendering/RenderLayerBacking.cpp:
(WebCore::RenderLayerBacking::registerScrollingLayers):
* rendering/RenderLayerBacking.h:
(WebCore::RenderLayerBacking::contentsContainmentLayer):
(RenderLayerBacking):
* rendering/RenderLayerCompositor.cpp:
* rendering/RenderLayerCompositor.h:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@147163 268f45cc-cd09-0410-ab3c-d52691b4dbfc
X-Frame-Options: Blocked resources should fire load events.
https://bugs.webkit.org/show_bug.cgi?id=113192

Reviewed by Nate Chapin.

Source/WebCore:

* loader/DocumentLoader.cpp:
(WebCore::DocumentLoader::responseReceived):
    Fire a load event on the frame's owner element when denying access
    due to X-Frame-Options header content. This brings us in-line with
    Gecko and IE, which both trigger load events currently.

LayoutTests:

* http/tests/security/XFrameOptions/x-frame-options-deny-expected.txt:
* http/tests/security/XFrameOptions/x-frame-options-deny-meta-tag-parent-same-origin-allow-expected.txt:
* http/tests/security/XFrameOptions/x-frame-options-deny-meta-tag-parent-same-origin-allow.html:
* http/tests/security/XFrameOptions/x-frame-options-deny-multiple-clients-expected.txt:
* http/tests/security/XFrameOptions/x-frame-options-deny-multiple-clients.html:
* http/tests/security/XFrameOptions/x-frame-options-deny.html:
* http/tests/security/XFrameOptions/x-frame-options-parent-same-origin-deny-expected.txt:
* http/tests/security/XFrameOptions/x-frame-options-parent-same-origin-deny.html:
* platform/chromium/http/tests/security/XFrameOptions/x-frame-options-deny-expected.txt:
* platform/chromium/http/tests/security/XFrameOptions/x-frame-options-deny-meta-tag-parent-same-origin-allow-expected.txt:
* platform/chromium/http/tests/security/XFrameOptions/x-frame-options-deny-multiple-clients-expected.txt:
* platform/chromium/http/tests/security/XFrameOptions/x-frame-options-parent-same-origin-deny-expected.txt:
    Add some expectations around the 'load' event to ensure it's fired.

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@147164 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Source/WebCore: Don't grant local content permissions for appcache loads.
https://bugs.webkit.org/show_bug.cgi?id=112542

Reviewed by Antti Koivisto.

No new tests, fixing http/tests/appcache/local-content.html

* loader/DocumentLoader.cpp:
(WebCore::DocumentLoader::DocumentLoader):
(WebCore::DocumentLoader::commitData): Don't grant local load permissions
    to all SubstituteData loads, only give them to loads that were SubstituteData
    loads at the time of DocumentLoader construction. This constitutes all
    SubstituteData loads except those triggered by appcache.
* loader/DocumentLoader.h:
* loader/FrameLoader.cpp:
(WebCore::FrameLoader::didBeginDocument): Move granting local load
    permissions for SubstituteData loads to DocumentLoader::commitData().

LayoutTests: Remove expected failure for https://bugs.webkit.org/show_bug.cgi?id=112542

Reviewed by Antti Koivisto.

* platform/qt-5.0-wk1/TestExpectations:


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