Top content inset: Margin tiles should not display in the inset area when pinned
authorbdakin@apple.com <bdakin@apple.com@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Sun, 4 May 2014 20:40:40 +0000 (20:40 +0000)
committerbdakin@apple.com <bdakin@apple.com@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Sun, 4 May 2014 20:40:40 +0000 (20:40 +0000)
to the top of the page
https://bugs.webkit.org/show_bug.cgi?id=132535
-and corresponding-
<rdar://problem/16613039>

Reviewed by Simon Fraser.

Source/WebCore:
Prior to this change, topContentInset was implemented by positioning
RenderLayerCompositor’s m_rootContentLayer based on the inset value. In order to
ensure that no content is displayed in the inset area when we are pinned to the
top of the page, we’ll have to take a different approach. In this patch, when you
are pinned to the top of the page, the m_rootContentLayer is positioned at (0,0),
much like it would be without an inset, but the m_clip layer IS positioned at (0,
topContentInset). Then for all y-scroll values between 0 and topContentInset, the
positions of the clip layer and the contents layer are adjusted so that the clip
layer approaches a position of (0,0), and the root layer approaches a position of
(0, topContentInset). This makes sure that any content above the top the document
is aways clipped out of the inset area.

In order to achieve this, the scrolling thread needs to know about the
topContentInset, the clip layer, and the root contents layer.

AsyncScrollingCoordinator::updateScrollingNode() now takes an additional parameter
for the clip layer. Also export the topContentInset symbol for UI-side
compositing.
* WebCore.exp.in:

Here is the new computation. Implemented in one spot that can be called from the
scrolling thread, AsyncScrollingCoordinator and RenderLayerCompositor.
* page/FrameView.cpp:
(WebCore::FrameView::yPositionForInsetClipLayer):
(WebCore::FrameView::yPositionForRootContentLayer):
* page/FrameView.h:

Set the topContentInset, the insetClipLayer, and the scrolledContentsLayer when
appropriate.
* page/scrolling/AsyncScrollingCoordinator.cpp:
(WebCore::AsyncScrollingCoordinator::frameViewLayoutUpdated):
(WebCore::AsyncScrollingCoordinator::frameViewRootLayerDidChange):

Set or sync the positions for the inset layer and the contents layer.
(WebCore::AsyncScrollingCoordinator::updateScrollPositionAfterAsyncScroll):
(WebCore::AsyncScrollingCoordinator::updateScrollingNode):
* page/scrolling/AsyncScrollingCoordinator.h:

Convenience functions for getting the clipLayer() and the rootContentLayer() from
the RenderLayerCompositor.
* page/scrolling/ScrollingCoordinator.cpp:
(WebCore::ScrollingCoordinator::insetClipLayerForFrameView):
(WebCore::ScrollingCoordinator::rootContentLayerForFrameView):
* page/scrolling/ScrollingCoordinator.h:
(WebCore::ScrollingCoordinator::updateScrollingNode):

ScrollingStateScrolling nodes have two new members now. m_insetClipLayer and
m_topContentInset. We can use m_scrolledContentsLayer for the rootContentsLayer
since previously that member was not used for FrameViews; it was only used for
accelerated overflow:scroll nodes.
* page/scrolling/ScrollingStateScrollingNode.cpp:
(WebCore::ScrollingStateScrollingNode::ScrollingStateScrollingNode):
(WebCore::ScrollingStateScrollingNode::setTopContentInset):
(WebCore::ScrollingStateScrollingNode::setInsetClipLayer):
* page/scrolling/ScrollingStateScrollingNode.h:

Similarly, ScrollingTreeScrollingNode has two new members for m_topContentInset
and m_clipLayer.
* page/scrolling/ScrollingTreeScrollingNode.cpp:
(WebCore::ScrollingTreeScrollingNode::ScrollingTreeScrollingNode):
(WebCore::ScrollingTreeScrollingNode::updateBeforeChildren):
* page/scrolling/ScrollingTreeScrollingNode.h:
(WebCore::ScrollingTreeScrollingNode::topContentInset):
* page/scrolling/mac/ScrollingTreeScrollingNodeMac.h:
* page/scrolling/mac/ScrollingTreeScrollingNodeMac.mm:
(WebCore::ScrollingTreeScrollingNodeMac::updateBeforeChildren):

Compute positions for the two new layers.
(WebCore::ScrollingTreeScrollingNodeMac::setScrollLayerPosition):

Now use the static FrameView functions to compute the positions for these layers.
* rendering/RenderLayerCompositor.cpp:
(WebCore::RenderLayerCompositor::frameViewDidChangeSize):
(WebCore::RenderLayerCompositor::positionForClipLayer):
(WebCore::RenderLayerCompositor::clipLayer):
(WebCore::RenderLayerCompositor::rootContentLayer):
(WebCore::RenderLayerCompositor::updateRootLayerPosition):
(WebCore::RenderLayerCompositor::updateOverflowControlsLayers):
(WebCore::RenderLayerCompositor::ensureRootLayer):
(WebCore::RenderLayerCompositor::updateScrollCoordinatedLayer):
* rendering/RenderLayerCompositor.h:

Source/WebKit2:
Encode and decode the ScrollingStateScrollingNode’s m_topContentInset even though
we don’t use it for anything yet. Since the headerLayer and footerLayer are not
encoded or decoded yet, I did not encode/decode the insetClipLayer yet, which,
like the header and footer layers, would not yet be used.
* Shared/Scrolling/RemoteScrollingCoordinatorTransaction.cpp:
(ArgumentCoder<ScrollingStateScrollingNode>::encode):
(ArgumentCoder<ScrollingStateScrollingNode>::decode):

LayoutTests:
Anchor point!

* compositing/absolute-inside-out-of-view-fixed-expected.txt:
* compositing/animation/filling-animation-overlap-at-end-expected.txt:
* compositing/animation/filling-animation-overlap-expected.txt:
* compositing/animation/layer-for-filling-animation-expected.txt:
* compositing/backing/backface-visibility-in-3dtransformed-expected.txt:
* compositing/backing/no-backing-for-clip-expected.txt:
* compositing/backing/no-backing-for-clip-overhang-expected.txt:
* compositing/backing/no-backing-for-clip-overlap-expected.txt:
* compositing/backing/no-backing-for-perspective-expected.txt:
* compositing/bounds-in-flipped-writing-mode-expected.txt:
* compositing/clip-child-by-non-stacking-ancestor-expected.txt:
* compositing/columns/ancestor-clipped-in-paginated-expected.txt:
* compositing/columns/clipped-in-paginated-expected.txt:
* compositing/columns/composited-columns-expected.txt:
* compositing/columns/composited-columns-vertical-rl-expected.txt:
* compositing/columns/composited-in-paginated-expected.txt:
* compositing/columns/composited-in-paginated-rl-expected.txt:
* compositing/columns/composited-in-paginated-writing-mode-rl-expected.txt:
* compositing/columns/composited-lr-paginated-repaint-expected.txt:
* compositing/columns/composited-nested-columns-expected.txt:
* compositing/columns/composited-rl-paginated-repaint-expected.txt:
* compositing/columns/hittest-composited-in-paginated-expected.txt:
* compositing/columns/rotated-in-paginated-expected.txt:
* compositing/columns/untransformed-composited-in-paginated-expected.txt:
* compositing/contents-opaque/background-clip-expected.txt:
* compositing/contents-opaque/background-color-expected.txt:
* compositing/contents-opaque/body-background-painted-expected.txt:
* compositing/contents-opaque/body-background-skipped-expected.txt:
* compositing/contents-opaque/filter-expected.txt:
* compositing/contents-opaque/hidden-with-visible-child-expected.txt:
* compositing/contents-opaque/hidden-with-visible-text-expected.txt:
* compositing/contents-opaque/layer-opacity-expected.txt:
* compositing/contents-opaque/layer-transform-expected.txt:
* compositing/contents-opaque/overflow-hidden-child-layers-expected.txt:
* compositing/contents-opaque/visibility-hidden-expected.txt:
* compositing/contents-scale/animating-expected.txt:
* compositing/contents-scale/rounded-contents-scale-expected.txt:
* compositing/contents-scale/scaled-ancestor-expected.txt:
* compositing/contents-scale/simple-scale-expected.txt:
* compositing/contents-scale/z-translate-expected.txt:
* compositing/filters/sw-layer-overlaps-hw-shadow-expected.txt:
* compositing/filters/sw-nested-shadow-overlaps-hw-nested-shadow-expected.txt:
* compositing/filters/sw-shadow-overlaps-hw-layer-expected.txt:
* compositing/filters/sw-shadow-overlaps-hw-shadow-expected.txt:
* compositing/geometry/ancestor-overflow-change-expected.txt:
* compositing/geometry/bounds-clipped-composited-child-expected.txt:
* compositing/geometry/bounds-ignores-hidden-composited-descendant-expected.txt:
* compositing/geometry/bounds-ignores-hidden-dynamic-expected.txt:
* compositing/geometry/bounds-ignores-hidden-dynamic-negzindex-expected.txt:
* compositing/geometry/bounds-ignores-hidden-expected.txt:
* compositing/geometry/clip-expected.txt:
* compositing/geometry/clip-inside-expected.txt:
* compositing/geometry/composited-in-columns-expected.txt:
* compositing/geometry/fixed-position-flipped-writing-mode-expected.txt:
* compositing/geometry/flipped-writing-mode-expected.txt:
* compositing/geometry/foreground-layer-expected.txt:
* compositing/geometry/layer-due-to-layer-children-deep-switch-expected.txt:
* compositing/geometry/layer-due-to-layer-children-switch-expected.txt:
* compositing/geometry/limit-layer-bounds-clipping-ancestor-expected.txt:
* compositing/geometry/limit-layer-bounds-fixed-expected.txt:
* compositing/geometry/limit-layer-bounds-fixed-positioned-expected.txt:
* compositing/geometry/limit-layer-bounds-opacity-transition-expected.txt:
* compositing/geometry/limit-layer-bounds-overflow-root-expected.txt:
* compositing/geometry/limit-layer-bounds-positioned-expected.txt:
* compositing/geometry/limit-layer-bounds-positioned-transition-expected.txt:
* compositing/geometry/limit-layer-bounds-transformed-expected.txt:
* compositing/geometry/limit-layer-bounds-transformed-overflow-expected.txt:
* compositing/geometry/negative-text-indent-with-overflow-hidden-layer-expected.txt:
* compositing/geometry/preserve-3d-switching-expected.txt:
* compositing/iframes/become-composited-nested-iframes-expected.txt:
* compositing/iframes/become-overlapped-iframe-expected.txt:
* compositing/iframes/composited-parent-iframe-expected.txt:
* compositing/iframes/connect-compositing-iframe-delayed-expected.txt:
* compositing/iframes/connect-compositing-iframe-expected.txt:
* compositing/iframes/connect-compositing-iframe2-expected.txt:
* compositing/iframes/connect-compositing-iframe3-expected.txt:
* compositing/iframes/enter-compositing-iframe-expected.txt:
* compositing/iframes/iframe-resize-expected.txt:
* compositing/iframes/iframe-size-from-zero-expected.txt:
* compositing/iframes/invisible-nested-iframe-hide-expected.txt:
* compositing/iframes/overlapped-iframe-expected.txt:
* compositing/iframes/overlapped-iframe-iframe-expected.txt:
* compositing/iframes/overlapped-nested-iframes-expected.txt:
* compositing/iframes/page-cache-layer-tree-expected.txt:
* compositing/iframes/scrolling-iframe-expected.txt:
* compositing/images/clip-on-directly-composited-image-expected.txt:
* compositing/layer-creation/animation-overlap-with-children-expected.txt:
* compositing/layer-creation/fixed-position-and-transform-expected.txt:
* compositing/layer-creation/fixed-position-change-out-of-view-in-view-expected.txt:
* compositing/layer-creation/fixed-position-out-of-view-expected.txt:
* compositing/layer-creation/fixed-position-out-of-view-scaled-expected.txt:
* compositing/layer-creation/fixed-position-out-of-view-scaled-scroll-expected.txt:
* compositing/layer-creation/fixed-position-transformed-into-view-expected.txt:
* compositing/layer-creation/fixed-position-under-transform-expected.txt:
* compositing/layer-creation/no-compositing-for-fixed-position-under-transform-expected.txt:
* compositing/layer-creation/no-compositing-for-preserve-3d-expected.txt:
* compositing/layer-creation/overflow-scroll-overlap-expected.txt:
* compositing/layer-creation/overlap-animation-clipping-expected.txt:
* compositing/layer-creation/overlap-animation-expected.txt:
* compositing/layer-creation/overlap-child-layer-expected.txt:
* compositing/layer-creation/overlap-clipping-expected.txt:
* compositing/layer-creation/overlap-transformed-3d-expected.txt:
* compositing/layer-creation/overlap-transformed-and-clipped-expected.txt:
* compositing/layer-creation/overlap-transformed-layer-expected.txt:
* compositing/layer-creation/overlap-transformed-preserved-3d-expected.txt:
* compositing/layer-creation/overlap-transforms-expected.txt:
* compositing/layer-creation/rotate3d-overlap-expected.txt:
* compositing/layer-creation/scroll-partial-update-expected.txt:
* compositing/layer-creation/spanOverlapsCanvas-expected.txt:
* compositing/layer-creation/stacking-context-overlap-expected.txt:
* compositing/layer-creation/stacking-context-overlap-nested-expected.txt:
* compositing/layer-creation/translatez-overlap-expected.txt:
* compositing/masks/mask-layer-size-expected.txt:
* compositing/overflow-trumps-transform-style-expected.txt:
* compositing/overflow/clip-descendents-expected.txt:
* compositing/overflow/content-gains-scrollbars-expected.txt:
* compositing/overflow/content-loses-scrollbars-expected.txt:
* compositing/overflow/overflow-scrollbar-layer-positions-expected.txt:
* compositing/overflow/overflow-scrollbar-layers-expected.txt:
* compositing/overflow/resize-painting-expected.txt:
* compositing/plugins/no-backing-store-expected.txt:
* compositing/plugins/small-to-large-composited-plugin-expected.txt:
* compositing/regions/fixed-in-named-flow-clip-descendant-expected.txt:
* compositing/regions/fixed-in-named-flow-expected.txt:
* compositing/regions/fixed-in-named-flow-from-abs-in-named-flow-expected.txt:
* compositing/regions/fixed-in-named-flow-from-outflow-expected.txt:
* compositing/regions/fixed-in-named-flow-got-transformed-parent-expected.txt:
* compositing/regions/fixed-in-named-flow-lost-transformed-parent-expected.txt:
* compositing/regions/fixed-in-named-flow-overlap-composited-expected.txt:
* compositing/regions/fixed-in-named-flow-transformed-parent-expected.txt:
* compositing/regions/fixed-transformed-in-named-flow-expected.txt:
* compositing/repaint/absolute-painted-into-composited-ancestor-expected.txt:
* compositing/repaint/fixed-background-scroll-expected.txt:
* compositing/repaint/positioned-movement-expected.txt:
* compositing/repaint/repaint-on-layer-grouping-change-expected.txt:
* compositing/repaint/resize-repaint-expected.txt:
* compositing/rtl/rtl-absolute-expected.txt:
* compositing/rtl/rtl-absolute-overflow-expected.txt:
* compositing/rtl/rtl-absolute-overflow-scrolled-expected.txt:
* compositing/rtl/rtl-fixed-expected.txt:
* compositing/rtl/rtl-fixed-overflow-expected.txt:
* compositing/rtl/rtl-fixed-overflow-scrolled-expected.txt:
* compositing/rtl/rtl-relative-expected.txt:
* compositing/tiled-layers-hidpi-expected.txt:
* compositing/visibility/layer-visible-content-expected.txt:
* platform/mac-wk2/compositing/contents-opaque/body-background-painted-expected.txt:
* platform/mac-wk2/compositing/contents-opaque/body-background-skipped-expected.txt:
* platform/mac-wk2/compositing/repaint/fixed-background-scroll-expected.txt:
* platform/mac-wk2/compositing/rtl/rtl-absolute-expected.txt:
* platform/mac-wk2/compositing/rtl/rtl-absolute-overflow-expected.txt:
* platform/mac-wk2/compositing/rtl/rtl-absolute-overflow-scrolled-expected.txt:
* platform/mac-wk2/compositing/rtl/rtl-fixed-expected.txt:
* platform/mac-wk2/compositing/rtl/rtl-fixed-overflow-expected.txt:
* platform/mac-wk2/compositing/tiling/rotated-tiled-clamped-expected.txt:
* platform/mac-wk2/compositing/tiling/rotated-tiled-preserve3d-clamped-expected.txt:
* platform/mac-wk2/compositing/tiling/tile-cache-zoomed-expected.txt:
* platform/mac-wk2/compositing/tiling/tiled-layer-resize-expected.txt:
* platform/mac-wk2/compositing/visible-rect/iframe-no-layers-expected.txt:
* platform/mac-wk2/tiled-drawing/fast-scroll-div-latched-div-expected.txt:
* platform/mac-wk2/tiled-drawing/fast-scroll-div-latched-div-with-handler-expected.txt:
* platform/mac-wk2/tiled-drawing/fast-scroll-div-latched-mainframe-expected.txt:
* platform/mac-wk2/tiled-drawing/fast-scroll-div-latched-mainframe-with-handler-expected.txt:
* platform/mac-wk2/tiled-drawing/fast-scroll-iframe-latched-iframe-expected.txt:
* platform/mac-wk2/tiled-drawing/fast-scroll-iframe-latched-iframe-with-handler-expected.txt:
* platform/mac-wk2/tiled-drawing/fast-scroll-iframe-latched-mainframe-expected.txt:
* platform/mac-wk2/tiled-drawing/fast-scroll-iframe-latched-mainframe-with-handler-expected.txt:
* platform/mac-wk2/tiled-drawing/fast-scroll-select-latched-mainframe-expected.txt:
* platform/mac-wk2/tiled-drawing/fast-scroll-select-latched-mainframe-with-handler-expected.txt:
* platform/mac-wk2/tiled-drawing/fast-scroll-select-latched-select-expected.txt:
* platform/mac-wk2/tiled-drawing/fast-scroll-select-latched-select-with-handler-expected.txt:
* platform/mac-wk2/tiled-drawing/fixed-background/fixed-background-no-image-expected.txt:
* platform/mac-wk2/tiled-drawing/fixed-background/fixed-body-background-body-layer-expected.txt:
* platform/mac-wk2/tiled-drawing/fixed-background/fixed-body-background-expected.txt:
* platform/mac-wk2/tiled-drawing/fixed-background/fixed-body-background-opacity-html-expected.txt:
* platform/mac-wk2/tiled-drawing/fixed-background/fixed-body-background-positioned-expected.txt:
* platform/mac-wk2/tiled-drawing/fixed-background/fixed-body-background-transformed-html-expected.txt:
* platform/mac-wk2/tiled-drawing/fixed-background/fixed-body-background-zoomed-expected.txt:
* platform/mac-wk2/tiled-drawing/fixed-background/fixed-html-background-expected.txt:
* platform/mac-wk2/tiled-drawing/fixed-background/fixed-non-propagated-body-background-expected.txt:
* platform/mac-wk2/tiled-drawing/simple-document-with-margin-tiles-expected.txt:
* platform/mac-wk2/tiled-drawing/sticky/sticky-layers-expected.txt:
* platform/mac-wk2/tiled-drawing/tile-coverage-after-scroll-expected.txt:
* platform/mac-wk2/tiled-drawing/tile-coverage-after-scroll-speculative-expected.txt:
* platform/mac-wk2/tiled-drawing/tile-coverage-scroll-to-bottom-expected.txt:
* platform/mac-wk2/tiled-drawing/tile-coverage-slow-scrolling-expected.txt:
* platform/mac-wk2/tiled-drawing/tile-coverage-speculative-expected.txt:
* platform/mac-wk2/tiled-drawing/tile-size-slow-zoomed-expected.txt:
* platform/mac-wk2/tiled-drawing/tiled-drawing-scroll-position-page-cache-restoration-expected.txt:
* platform/mac-wk2/tiled-drawing/tiled-drawing-zoom-expected.txt:
* platform/mac-wk2/tiled-drawing/tiled-drawing-zoom-scrolled-expected.txt:
* platform/mac-wk2/tiled-drawing/use-tiled-drawing-expected.txt:
* platform/mac/compositing/canvas/accelerated-canvas-compositing-expected.txt:
* platform/mac/compositing/geometry/fixed-position-composited-switch-expected.txt:
* platform/mac/compositing/iframes/invisible-nested-iframe-show-expected.txt:
* platform/mac/compositing/iframes/resizer-expected.txt:
* platform/mac/compositing/images/direct-image-object-fit-expected.txt:
* platform/mac/compositing/layer-creation/overlap-animation-container-expected.txt:
* platform/mac/compositing/overflow/clipping-behaviour-change-is-not-propagated-to-descendants-expected.txt:
* platform/mac/compositing/overflow/clipping-behaviour-change-is-not-propagated-to-descendants2-expected.txt:
* platform/mac/compositing/overflow/composited-scrolling-creates-a-stacking-container-expected.txt:
* platform/mac/compositing/overflow/composited-scrolling-paint-phases-expected.txt:
* platform/mac/compositing/reflections/direct-image-object-fit-reflected-expected.txt:
* platform/mac/compositing/repaint/invalidations-on-composited-layers-expected.txt:
* platform/mac/compositing/tiling/backface-preserve-3d-tiled-expected.txt:
* platform/mac/compositing/tiling/crash-reparent-tiled-layer-expected.txt:
* platform/mac/compositing/tiling/huge-layer-add-remove-child-expected.txt:
* platform/mac/compositing/tiling/huge-layer-img-expected.txt:
* platform/mac/compositing/tiling/huge-layer-with-layer-children-expected.txt:
* platform/mac/compositing/tiling/huge-layer-with-layer-children-resize-expected.txt:
* platform/mac/compositing/tiling/rotated-tiled-clamped-expected.txt:
* platform/mac/compositing/tiling/rotated-tiled-preserve3d-clamped-expected.txt:
* platform/mac/compositing/tiling/tile-cache-zoomed-expected.txt:
* platform/mac/compositing/tiling/tiled-layer-resize-expected.txt:
* platform/mac/compositing/video/video-object-fit-expected.txt:
* platform/mac/compositing/visible-rect/2d-transformed-expected.txt:
* platform/mac/compositing/visible-rect/3d-transform-style-expected.txt:
* platform/mac/compositing/visible-rect/3d-transformed-expected.txt:
* platform/mac/compositing/visible-rect/animated-expected.txt:
* platform/mac/compositing/visible-rect/animated-from-none-expected.txt:
* platform/mac/compositing/visible-rect/clipped-by-viewport-expected.txt:
* platform/mac/compositing/visible-rect/clipped-visible-rect-expected.txt:
* platform/mac/compositing/visible-rect/flipped-preserve-3d-expected.txt:
* platform/mac/compositing/visible-rect/iframe-and-layers-expected.txt:
* platform/mac/compositing/visible-rect/iframe-no-layers-expected.txt:
* platform/mac/compositing/visible-rect/nested-transform-expected.txt:
* platform/mac/compositing/visible-rect/scrolled-expected.txt:

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

245 files changed:
LayoutTests/ChangeLog
LayoutTests/compositing/absolute-inside-out-of-view-fixed-expected.txt
LayoutTests/compositing/animation/filling-animation-overlap-at-end-expected.txt
LayoutTests/compositing/animation/filling-animation-overlap-expected.txt
LayoutTests/compositing/animation/layer-for-filling-animation-expected.txt
LayoutTests/compositing/backing/backface-visibility-in-3dtransformed-expected.txt
LayoutTests/compositing/backing/no-backing-for-clip-expected.txt
LayoutTests/compositing/backing/no-backing-for-clip-overhang-expected.txt
LayoutTests/compositing/backing/no-backing-for-clip-overlap-expected.txt
LayoutTests/compositing/backing/no-backing-for-perspective-expected.txt
LayoutTests/compositing/bounds-in-flipped-writing-mode-expected.txt
LayoutTests/compositing/clip-child-by-non-stacking-ancestor-expected.txt
LayoutTests/compositing/columns/ancestor-clipped-in-paginated-expected.txt
LayoutTests/compositing/columns/clipped-in-paginated-expected.txt
LayoutTests/compositing/columns/composited-columns-expected.txt
LayoutTests/compositing/columns/composited-columns-vertical-rl-expected.txt
LayoutTests/compositing/columns/composited-in-paginated-expected.txt
LayoutTests/compositing/columns/composited-in-paginated-rl-expected.txt
LayoutTests/compositing/columns/composited-in-paginated-writing-mode-rl-expected.txt
LayoutTests/compositing/columns/composited-lr-paginated-repaint-expected.txt
LayoutTests/compositing/columns/composited-nested-columns-expected.txt
LayoutTests/compositing/columns/composited-rl-paginated-repaint-expected.txt
LayoutTests/compositing/columns/hittest-composited-in-paginated-expected.txt
LayoutTests/compositing/columns/rotated-in-paginated-expected.txt
LayoutTests/compositing/columns/untransformed-composited-in-paginated-expected.txt
LayoutTests/compositing/contents-opaque/background-clip-expected.txt
LayoutTests/compositing/contents-opaque/background-color-expected.txt
LayoutTests/compositing/contents-opaque/body-background-painted-expected.txt
LayoutTests/compositing/contents-opaque/body-background-skipped-expected.txt
LayoutTests/compositing/contents-opaque/filter-expected.txt
LayoutTests/compositing/contents-opaque/hidden-with-visible-child-expected.txt
LayoutTests/compositing/contents-opaque/hidden-with-visible-text-expected.txt
LayoutTests/compositing/contents-opaque/layer-opacity-expected.txt
LayoutTests/compositing/contents-opaque/layer-transform-expected.txt
LayoutTests/compositing/contents-opaque/overflow-hidden-child-layers-expected.txt
LayoutTests/compositing/contents-opaque/visibility-hidden-expected.txt
LayoutTests/compositing/contents-scale/animating-expected.txt
LayoutTests/compositing/contents-scale/rounded-contents-scale-expected.txt
LayoutTests/compositing/contents-scale/scaled-ancestor-expected.txt
LayoutTests/compositing/contents-scale/simple-scale-expected.txt
LayoutTests/compositing/contents-scale/z-translate-expected.txt
LayoutTests/compositing/filters/sw-layer-overlaps-hw-shadow-expected.txt
LayoutTests/compositing/filters/sw-nested-shadow-overlaps-hw-nested-shadow-expected.txt
LayoutTests/compositing/filters/sw-shadow-overlaps-hw-layer-expected.txt
LayoutTests/compositing/filters/sw-shadow-overlaps-hw-shadow-expected.txt
LayoutTests/compositing/geometry/ancestor-overflow-change-expected.txt
LayoutTests/compositing/geometry/bounds-clipped-composited-child-expected.txt
LayoutTests/compositing/geometry/bounds-ignores-hidden-composited-descendant-expected.txt
LayoutTests/compositing/geometry/bounds-ignores-hidden-dynamic-expected.txt
LayoutTests/compositing/geometry/bounds-ignores-hidden-dynamic-negzindex-expected.txt
LayoutTests/compositing/geometry/bounds-ignores-hidden-expected.txt
LayoutTests/compositing/geometry/clip-expected.txt
LayoutTests/compositing/geometry/clip-inside-expected.txt
LayoutTests/compositing/geometry/composited-in-columns-expected.txt
LayoutTests/compositing/geometry/fixed-position-flipped-writing-mode-expected.txt
LayoutTests/compositing/geometry/flipped-writing-mode-expected.txt
LayoutTests/compositing/geometry/foreground-layer-expected.txt
LayoutTests/compositing/geometry/layer-due-to-layer-children-deep-switch-expected.txt
LayoutTests/compositing/geometry/layer-due-to-layer-children-switch-expected.txt
LayoutTests/compositing/geometry/limit-layer-bounds-clipping-ancestor-expected.txt
LayoutTests/compositing/geometry/limit-layer-bounds-fixed-expected.txt
LayoutTests/compositing/geometry/limit-layer-bounds-fixed-positioned-expected.txt
LayoutTests/compositing/geometry/limit-layer-bounds-opacity-transition-expected.txt
LayoutTests/compositing/geometry/limit-layer-bounds-overflow-root-expected.txt
LayoutTests/compositing/geometry/limit-layer-bounds-positioned-expected.txt
LayoutTests/compositing/geometry/limit-layer-bounds-positioned-transition-expected.txt
LayoutTests/compositing/geometry/limit-layer-bounds-transformed-expected.txt
LayoutTests/compositing/geometry/limit-layer-bounds-transformed-overflow-expected.txt
LayoutTests/compositing/geometry/negative-text-indent-with-overflow-hidden-layer-expected.txt
LayoutTests/compositing/geometry/preserve-3d-switching-expected.txt
LayoutTests/compositing/iframes/become-composited-nested-iframes-expected.txt
LayoutTests/compositing/iframes/become-overlapped-iframe-expected.txt
LayoutTests/compositing/iframes/composited-parent-iframe-expected.txt
LayoutTests/compositing/iframes/connect-compositing-iframe-delayed-expected.txt
LayoutTests/compositing/iframes/connect-compositing-iframe-expected.txt
LayoutTests/compositing/iframes/connect-compositing-iframe2-expected.txt
LayoutTests/compositing/iframes/connect-compositing-iframe3-expected.txt
LayoutTests/compositing/iframes/enter-compositing-iframe-expected.txt
LayoutTests/compositing/iframes/iframe-resize-expected.txt
LayoutTests/compositing/iframes/iframe-size-from-zero-expected.txt
LayoutTests/compositing/iframes/invisible-nested-iframe-hide-expected.txt
LayoutTests/compositing/iframes/overlapped-iframe-expected.txt
LayoutTests/compositing/iframes/overlapped-iframe-iframe-expected.txt
LayoutTests/compositing/iframes/overlapped-nested-iframes-expected.txt
LayoutTests/compositing/iframes/page-cache-layer-tree-expected.txt
LayoutTests/compositing/iframes/scrolling-iframe-expected.txt
LayoutTests/compositing/images/clip-on-directly-composited-image-expected.txt
LayoutTests/compositing/layer-creation/animation-overlap-with-children-expected.txt
LayoutTests/compositing/layer-creation/fixed-position-and-transform-expected.txt
LayoutTests/compositing/layer-creation/fixed-position-change-out-of-view-in-view-expected.txt
LayoutTests/compositing/layer-creation/fixed-position-out-of-view-expected.txt
LayoutTests/compositing/layer-creation/fixed-position-out-of-view-scaled-expected.txt
LayoutTests/compositing/layer-creation/fixed-position-out-of-view-scaled-scroll-expected.txt
LayoutTests/compositing/layer-creation/fixed-position-transformed-into-view-expected.txt
LayoutTests/compositing/layer-creation/fixed-position-under-transform-expected.txt
LayoutTests/compositing/layer-creation/no-compositing-for-fixed-position-under-transform-expected.txt
LayoutTests/compositing/layer-creation/no-compositing-for-preserve-3d-expected.txt
LayoutTests/compositing/layer-creation/overflow-scroll-overlap-expected.txt
LayoutTests/compositing/layer-creation/overlap-animation-clipping-expected.txt
LayoutTests/compositing/layer-creation/overlap-animation-expected.txt
LayoutTests/compositing/layer-creation/overlap-child-layer-expected.txt
LayoutTests/compositing/layer-creation/overlap-clipping-expected.txt
LayoutTests/compositing/layer-creation/overlap-transformed-3d-expected.txt
LayoutTests/compositing/layer-creation/overlap-transformed-and-clipped-expected.txt
LayoutTests/compositing/layer-creation/overlap-transformed-layer-expected.txt
LayoutTests/compositing/layer-creation/overlap-transformed-preserved-3d-expected.txt
LayoutTests/compositing/layer-creation/overlap-transforms-expected.txt
LayoutTests/compositing/layer-creation/rotate3d-overlap-expected.txt
LayoutTests/compositing/layer-creation/scroll-partial-update-expected.txt
LayoutTests/compositing/layer-creation/spanOverlapsCanvas-expected.txt
LayoutTests/compositing/layer-creation/stacking-context-overlap-expected.txt
LayoutTests/compositing/layer-creation/stacking-context-overlap-nested-expected.txt
LayoutTests/compositing/layer-creation/translatez-overlap-expected.txt
LayoutTests/compositing/masks/mask-layer-size-expected.txt
LayoutTests/compositing/overflow-trumps-transform-style-expected.txt
LayoutTests/compositing/overflow/clip-descendents-expected.txt
LayoutTests/compositing/overflow/content-gains-scrollbars-expected.txt
LayoutTests/compositing/overflow/content-loses-scrollbars-expected.txt
LayoutTests/compositing/overflow/overflow-scrollbar-layer-positions-expected.txt
LayoutTests/compositing/overflow/overflow-scrollbar-layers-expected.txt
LayoutTests/compositing/overflow/resize-painting-expected.txt
LayoutTests/compositing/plugins/no-backing-store-expected.txt
LayoutTests/compositing/plugins/small-to-large-composited-plugin-expected.txt
LayoutTests/compositing/regions/fixed-in-named-flow-clip-descendant-expected.txt
LayoutTests/compositing/regions/fixed-in-named-flow-expected.txt
LayoutTests/compositing/regions/fixed-in-named-flow-from-abs-in-named-flow-expected.txt
LayoutTests/compositing/regions/fixed-in-named-flow-from-outflow-expected.txt
LayoutTests/compositing/regions/fixed-in-named-flow-got-transformed-parent-expected.txt
LayoutTests/compositing/regions/fixed-in-named-flow-lost-transformed-parent-expected.txt
LayoutTests/compositing/regions/fixed-in-named-flow-overlap-composited-expected.txt
LayoutTests/compositing/regions/fixed-in-named-flow-transformed-parent-expected.txt
LayoutTests/compositing/regions/fixed-transformed-in-named-flow-expected.txt
LayoutTests/compositing/repaint/absolute-painted-into-composited-ancestor-expected.txt
LayoutTests/compositing/repaint/fixed-background-scroll-expected.txt
LayoutTests/compositing/repaint/positioned-movement-expected.txt
LayoutTests/compositing/repaint/repaint-on-layer-grouping-change-expected.txt
LayoutTests/compositing/repaint/resize-repaint-expected.txt
LayoutTests/compositing/rtl/rtl-absolute-expected.txt
LayoutTests/compositing/rtl/rtl-absolute-overflow-expected.txt
LayoutTests/compositing/rtl/rtl-absolute-overflow-scrolled-expected.txt
LayoutTests/compositing/rtl/rtl-fixed-expected.txt
LayoutTests/compositing/rtl/rtl-fixed-overflow-expected.txt
LayoutTests/compositing/rtl/rtl-fixed-overflow-scrolled-expected.txt
LayoutTests/compositing/rtl/rtl-relative-expected.txt
LayoutTests/compositing/tiled-layers-hidpi-expected.txt
LayoutTests/compositing/visibility/layer-visible-content-expected.txt
LayoutTests/platform/mac-wk2/compositing/contents-opaque/body-background-painted-expected.txt
LayoutTests/platform/mac-wk2/compositing/contents-opaque/body-background-skipped-expected.txt
LayoutTests/platform/mac-wk2/compositing/repaint/fixed-background-scroll-expected.txt
LayoutTests/platform/mac-wk2/compositing/rtl/rtl-absolute-expected.txt
LayoutTests/platform/mac-wk2/compositing/rtl/rtl-absolute-overflow-expected.txt
LayoutTests/platform/mac-wk2/compositing/rtl/rtl-absolute-overflow-scrolled-expected.txt
LayoutTests/platform/mac-wk2/compositing/rtl/rtl-fixed-expected.txt
LayoutTests/platform/mac-wk2/compositing/rtl/rtl-fixed-overflow-expected.txt
LayoutTests/platform/mac-wk2/compositing/tiling/rotated-tiled-clamped-expected.txt
LayoutTests/platform/mac-wk2/compositing/tiling/rotated-tiled-preserve3d-clamped-expected.txt
LayoutTests/platform/mac-wk2/compositing/tiling/tile-cache-zoomed-expected.txt
LayoutTests/platform/mac-wk2/compositing/tiling/tiled-layer-resize-expected.txt
LayoutTests/platform/mac-wk2/compositing/visible-rect/iframe-no-layers-expected.txt
LayoutTests/platform/mac-wk2/tiled-drawing/fast-scroll-div-latched-div-expected.txt
LayoutTests/platform/mac-wk2/tiled-drawing/fast-scroll-div-latched-div-with-handler-expected.txt
LayoutTests/platform/mac-wk2/tiled-drawing/fast-scroll-div-latched-mainframe-expected.txt
LayoutTests/platform/mac-wk2/tiled-drawing/fast-scroll-div-latched-mainframe-with-handler-expected.txt
LayoutTests/platform/mac-wk2/tiled-drawing/fast-scroll-iframe-latched-iframe-expected.txt
LayoutTests/platform/mac-wk2/tiled-drawing/fast-scroll-iframe-latched-iframe-with-handler-expected.txt
LayoutTests/platform/mac-wk2/tiled-drawing/fast-scroll-iframe-latched-mainframe-expected.txt
LayoutTests/platform/mac-wk2/tiled-drawing/fast-scroll-iframe-latched-mainframe-with-handler-expected.txt
LayoutTests/platform/mac-wk2/tiled-drawing/fast-scroll-select-latched-mainframe-expected.txt
LayoutTests/platform/mac-wk2/tiled-drawing/fast-scroll-select-latched-mainframe-with-handler-expected.txt
LayoutTests/platform/mac-wk2/tiled-drawing/fast-scroll-select-latched-select-expected.txt
LayoutTests/platform/mac-wk2/tiled-drawing/fast-scroll-select-latched-select-with-handler-expected.txt
LayoutTests/platform/mac-wk2/tiled-drawing/fixed-background/fixed-background-no-image-expected.txt
LayoutTests/platform/mac-wk2/tiled-drawing/fixed-background/fixed-body-background-body-layer-expected.txt
LayoutTests/platform/mac-wk2/tiled-drawing/fixed-background/fixed-body-background-expected.txt
LayoutTests/platform/mac-wk2/tiled-drawing/fixed-background/fixed-body-background-opacity-html-expected.txt
LayoutTests/platform/mac-wk2/tiled-drawing/fixed-background/fixed-body-background-positioned-expected.txt
LayoutTests/platform/mac-wk2/tiled-drawing/fixed-background/fixed-body-background-transformed-html-expected.txt
LayoutTests/platform/mac-wk2/tiled-drawing/fixed-background/fixed-body-background-zoomed-expected.txt
LayoutTests/platform/mac-wk2/tiled-drawing/fixed-background/fixed-html-background-expected.txt
LayoutTests/platform/mac-wk2/tiled-drawing/fixed-background/fixed-non-propagated-body-background-expected.txt
LayoutTests/platform/mac-wk2/tiled-drawing/simple-document-with-margin-tiles-expected.txt
LayoutTests/platform/mac-wk2/tiled-drawing/sticky/sticky-layers-expected.txt
LayoutTests/platform/mac-wk2/tiled-drawing/tile-coverage-after-scroll-expected.txt
LayoutTests/platform/mac-wk2/tiled-drawing/tile-coverage-after-scroll-speculative-expected.txt
LayoutTests/platform/mac-wk2/tiled-drawing/tile-coverage-scroll-to-bottom-expected.txt
LayoutTests/platform/mac-wk2/tiled-drawing/tile-coverage-slow-scrolling-expected.txt
LayoutTests/platform/mac-wk2/tiled-drawing/tile-coverage-speculative-expected.txt
LayoutTests/platform/mac-wk2/tiled-drawing/tile-size-slow-zoomed-expected.txt
LayoutTests/platform/mac-wk2/tiled-drawing/tiled-drawing-scroll-position-page-cache-restoration-expected.txt
LayoutTests/platform/mac-wk2/tiled-drawing/tiled-drawing-zoom-expected.txt
LayoutTests/platform/mac-wk2/tiled-drawing/tiled-drawing-zoom-scrolled-expected.txt
LayoutTests/platform/mac-wk2/tiled-drawing/use-tiled-drawing-expected.txt
LayoutTests/platform/mac/compositing/canvas/accelerated-canvas-compositing-expected.txt
LayoutTests/platform/mac/compositing/geometry/fixed-position-composited-switch-expected.txt
LayoutTests/platform/mac/compositing/iframes/invisible-nested-iframe-show-expected.txt
LayoutTests/platform/mac/compositing/iframes/resizer-expected.txt
LayoutTests/platform/mac/compositing/images/direct-image-object-fit-expected.txt
LayoutTests/platform/mac/compositing/layer-creation/overlap-animation-container-expected.txt
LayoutTests/platform/mac/compositing/overflow/clipping-behaviour-change-is-not-propagated-to-descendants-expected.txt
LayoutTests/platform/mac/compositing/overflow/clipping-behaviour-change-is-not-propagated-to-descendants2-expected.txt
LayoutTests/platform/mac/compositing/overflow/composited-scrolling-creates-a-stacking-container-expected.txt
LayoutTests/platform/mac/compositing/overflow/composited-scrolling-paint-phases-expected.txt
LayoutTests/platform/mac/compositing/reflections/direct-image-object-fit-reflected-expected.txt
LayoutTests/platform/mac/compositing/repaint/invalidations-on-composited-layers-expected.txt
LayoutTests/platform/mac/compositing/tiling/backface-preserve-3d-tiled-expected.txt
LayoutTests/platform/mac/compositing/tiling/crash-reparent-tiled-layer-expected.txt
LayoutTests/platform/mac/compositing/tiling/huge-layer-add-remove-child-expected.txt
LayoutTests/platform/mac/compositing/tiling/huge-layer-img-expected.txt
LayoutTests/platform/mac/compositing/tiling/huge-layer-with-layer-children-expected.txt
LayoutTests/platform/mac/compositing/tiling/huge-layer-with-layer-children-resize-expected.txt
LayoutTests/platform/mac/compositing/tiling/rotated-tiled-clamped-expected.txt
LayoutTests/platform/mac/compositing/tiling/rotated-tiled-preserve3d-clamped-expected.txt
LayoutTests/platform/mac/compositing/tiling/tile-cache-zoomed-expected.txt
LayoutTests/platform/mac/compositing/tiling/tiled-layer-resize-expected.txt
LayoutTests/platform/mac/compositing/video/video-object-fit-expected.txt
LayoutTests/platform/mac/compositing/visible-rect/2d-transformed-expected.txt
LayoutTests/platform/mac/compositing/visible-rect/3d-transform-style-expected.txt
LayoutTests/platform/mac/compositing/visible-rect/3d-transformed-expected.txt
LayoutTests/platform/mac/compositing/visible-rect/animated-expected.txt
LayoutTests/platform/mac/compositing/visible-rect/animated-from-none-expected.txt
LayoutTests/platform/mac/compositing/visible-rect/clipped-by-viewport-expected.txt
LayoutTests/platform/mac/compositing/visible-rect/clipped-visible-rect-expected.txt
LayoutTests/platform/mac/compositing/visible-rect/flipped-preserve-3d-expected.txt
LayoutTests/platform/mac/compositing/visible-rect/iframe-and-layers-expected.txt
LayoutTests/platform/mac/compositing/visible-rect/iframe-no-layers-expected.txt
LayoutTests/platform/mac/compositing/visible-rect/nested-transform-expected.txt
LayoutTests/platform/mac/compositing/visible-rect/scrolled-expected.txt
Source/WebCore/ChangeLog
Source/WebCore/WebCore.exp.in
Source/WebCore/page/FrameView.cpp
Source/WebCore/page/FrameView.h
Source/WebCore/page/scrolling/AsyncScrollingCoordinator.cpp
Source/WebCore/page/scrolling/AsyncScrollingCoordinator.h
Source/WebCore/page/scrolling/ScrollingCoordinator.cpp
Source/WebCore/page/scrolling/ScrollingCoordinator.h
Source/WebCore/page/scrolling/ScrollingStateScrollingNode.cpp
Source/WebCore/page/scrolling/ScrollingStateScrollingNode.h
Source/WebCore/page/scrolling/ScrollingTreeScrollingNode.cpp
Source/WebCore/page/scrolling/ScrollingTreeScrollingNode.h
Source/WebCore/page/scrolling/mac/ScrollingTreeScrollingNodeMac.h
Source/WebCore/page/scrolling/mac/ScrollingTreeScrollingNodeMac.mm
Source/WebCore/rendering/RenderLayerCompositor.cpp
Source/WebCore/rendering/RenderLayerCompositor.h
Source/WebKit2/ChangeLog
Source/WebKit2/Shared/Scrolling/RemoteScrollingCoordinatorTransaction.cpp

index f3cb498..c61add7 100644 (file)
@@ -1,3 +1,242 @@
+2014-05-04  Beth Dakin  <bdakin@apple.com>
+
+        Top content inset: Margin tiles should not display in the inset area when pinned 
+        to the top of the page
+        https://bugs.webkit.org/show_bug.cgi?id=132535
+        -and corresponding-
+        <rdar://problem/16613039>
+
+        Reviewed by Simon Fraser.
+
+        Anchor point!
+
+        * compositing/absolute-inside-out-of-view-fixed-expected.txt:
+        * compositing/animation/filling-animation-overlap-at-end-expected.txt:
+        * compositing/animation/filling-animation-overlap-expected.txt:
+        * compositing/animation/layer-for-filling-animation-expected.txt:
+        * compositing/backing/backface-visibility-in-3dtransformed-expected.txt:
+        * compositing/backing/no-backing-for-clip-expected.txt:
+        * compositing/backing/no-backing-for-clip-overhang-expected.txt:
+        * compositing/backing/no-backing-for-clip-overlap-expected.txt:
+        * compositing/backing/no-backing-for-perspective-expected.txt:
+        * compositing/bounds-in-flipped-writing-mode-expected.txt:
+        * compositing/clip-child-by-non-stacking-ancestor-expected.txt:
+        * compositing/columns/ancestor-clipped-in-paginated-expected.txt:
+        * compositing/columns/clipped-in-paginated-expected.txt:
+        * compositing/columns/composited-columns-expected.txt:
+        * compositing/columns/composited-columns-vertical-rl-expected.txt:
+        * compositing/columns/composited-in-paginated-expected.txt:
+        * compositing/columns/composited-in-paginated-rl-expected.txt:
+        * compositing/columns/composited-in-paginated-writing-mode-rl-expected.txt:
+        * compositing/columns/composited-lr-paginated-repaint-expected.txt:
+        * compositing/columns/composited-nested-columns-expected.txt:
+        * compositing/columns/composited-rl-paginated-repaint-expected.txt:
+        * compositing/columns/hittest-composited-in-paginated-expected.txt:
+        * compositing/columns/rotated-in-paginated-expected.txt:
+        * compositing/columns/untransformed-composited-in-paginated-expected.txt:
+        * compositing/contents-opaque/background-clip-expected.txt:
+        * compositing/contents-opaque/background-color-expected.txt:
+        * compositing/contents-opaque/body-background-painted-expected.txt:
+        * compositing/contents-opaque/body-background-skipped-expected.txt:
+        * compositing/contents-opaque/filter-expected.txt:
+        * compositing/contents-opaque/hidden-with-visible-child-expected.txt:
+        * compositing/contents-opaque/hidden-with-visible-text-expected.txt:
+        * compositing/contents-opaque/layer-opacity-expected.txt:
+        * compositing/contents-opaque/layer-transform-expected.txt:
+        * compositing/contents-opaque/overflow-hidden-child-layers-expected.txt:
+        * compositing/contents-opaque/visibility-hidden-expected.txt:
+        * compositing/contents-scale/animating-expected.txt:
+        * compositing/contents-scale/rounded-contents-scale-expected.txt:
+        * compositing/contents-scale/scaled-ancestor-expected.txt:
+        * compositing/contents-scale/simple-scale-expected.txt:
+        * compositing/contents-scale/z-translate-expected.txt:
+        * compositing/filters/sw-layer-overlaps-hw-shadow-expected.txt:
+        * compositing/filters/sw-nested-shadow-overlaps-hw-nested-shadow-expected.txt:
+        * compositing/filters/sw-shadow-overlaps-hw-layer-expected.txt:
+        * compositing/filters/sw-shadow-overlaps-hw-shadow-expected.txt:
+        * compositing/geometry/ancestor-overflow-change-expected.txt:
+        * compositing/geometry/bounds-clipped-composited-child-expected.txt:
+        * compositing/geometry/bounds-ignores-hidden-composited-descendant-expected.txt:
+        * compositing/geometry/bounds-ignores-hidden-dynamic-expected.txt:
+        * compositing/geometry/bounds-ignores-hidden-dynamic-negzindex-expected.txt:
+        * compositing/geometry/bounds-ignores-hidden-expected.txt:
+        * compositing/geometry/clip-expected.txt:
+        * compositing/geometry/clip-inside-expected.txt:
+        * compositing/geometry/composited-in-columns-expected.txt:
+        * compositing/geometry/fixed-position-flipped-writing-mode-expected.txt:
+        * compositing/geometry/flipped-writing-mode-expected.txt:
+        * compositing/geometry/foreground-layer-expected.txt:
+        * compositing/geometry/layer-due-to-layer-children-deep-switch-expected.txt:
+        * compositing/geometry/layer-due-to-layer-children-switch-expected.txt:
+        * compositing/geometry/limit-layer-bounds-clipping-ancestor-expected.txt:
+        * compositing/geometry/limit-layer-bounds-fixed-expected.txt:
+        * compositing/geometry/limit-layer-bounds-fixed-positioned-expected.txt:
+        * compositing/geometry/limit-layer-bounds-opacity-transition-expected.txt:
+        * compositing/geometry/limit-layer-bounds-overflow-root-expected.txt:
+        * compositing/geometry/limit-layer-bounds-positioned-expected.txt:
+        * compositing/geometry/limit-layer-bounds-positioned-transition-expected.txt:
+        * compositing/geometry/limit-layer-bounds-transformed-expected.txt:
+        * compositing/geometry/limit-layer-bounds-transformed-overflow-expected.txt:
+        * compositing/geometry/negative-text-indent-with-overflow-hidden-layer-expected.txt:
+        * compositing/geometry/preserve-3d-switching-expected.txt:
+        * compositing/iframes/become-composited-nested-iframes-expected.txt:
+        * compositing/iframes/become-overlapped-iframe-expected.txt:
+        * compositing/iframes/composited-parent-iframe-expected.txt:
+        * compositing/iframes/connect-compositing-iframe-delayed-expected.txt:
+        * compositing/iframes/connect-compositing-iframe-expected.txt:
+        * compositing/iframes/connect-compositing-iframe2-expected.txt:
+        * compositing/iframes/connect-compositing-iframe3-expected.txt:
+        * compositing/iframes/enter-compositing-iframe-expected.txt:
+        * compositing/iframes/iframe-resize-expected.txt:
+        * compositing/iframes/iframe-size-from-zero-expected.txt:
+        * compositing/iframes/invisible-nested-iframe-hide-expected.txt:
+        * compositing/iframes/overlapped-iframe-expected.txt:
+        * compositing/iframes/overlapped-iframe-iframe-expected.txt:
+        * compositing/iframes/overlapped-nested-iframes-expected.txt:
+        * compositing/iframes/page-cache-layer-tree-expected.txt:
+        * compositing/iframes/scrolling-iframe-expected.txt:
+        * compositing/images/clip-on-directly-composited-image-expected.txt:
+        * compositing/layer-creation/animation-overlap-with-children-expected.txt:
+        * compositing/layer-creation/fixed-position-and-transform-expected.txt:
+        * compositing/layer-creation/fixed-position-change-out-of-view-in-view-expected.txt:
+        * compositing/layer-creation/fixed-position-out-of-view-expected.txt:
+        * compositing/layer-creation/fixed-position-out-of-view-scaled-expected.txt:
+        * compositing/layer-creation/fixed-position-out-of-view-scaled-scroll-expected.txt:
+        * compositing/layer-creation/fixed-position-transformed-into-view-expected.txt:
+        * compositing/layer-creation/fixed-position-under-transform-expected.txt:
+        * compositing/layer-creation/no-compositing-for-fixed-position-under-transform-expected.txt:
+        * compositing/layer-creation/no-compositing-for-preserve-3d-expected.txt:
+        * compositing/layer-creation/overflow-scroll-overlap-expected.txt:
+        * compositing/layer-creation/overlap-animation-clipping-expected.txt:
+        * compositing/layer-creation/overlap-animation-expected.txt:
+        * compositing/layer-creation/overlap-child-layer-expected.txt:
+        * compositing/layer-creation/overlap-clipping-expected.txt:
+        * compositing/layer-creation/overlap-transformed-3d-expected.txt:
+        * compositing/layer-creation/overlap-transformed-and-clipped-expected.txt:
+        * compositing/layer-creation/overlap-transformed-layer-expected.txt:
+        * compositing/layer-creation/overlap-transformed-preserved-3d-expected.txt:
+        * compositing/layer-creation/overlap-transforms-expected.txt:
+        * compositing/layer-creation/rotate3d-overlap-expected.txt:
+        * compositing/layer-creation/scroll-partial-update-expected.txt:
+        * compositing/layer-creation/spanOverlapsCanvas-expected.txt:
+        * compositing/layer-creation/stacking-context-overlap-expected.txt:
+        * compositing/layer-creation/stacking-context-overlap-nested-expected.txt:
+        * compositing/layer-creation/translatez-overlap-expected.txt:
+        * compositing/masks/mask-layer-size-expected.txt:
+        * compositing/overflow-trumps-transform-style-expected.txt:
+        * compositing/overflow/clip-descendents-expected.txt:
+        * compositing/overflow/content-gains-scrollbars-expected.txt:
+        * compositing/overflow/content-loses-scrollbars-expected.txt:
+        * compositing/overflow/overflow-scrollbar-layer-positions-expected.txt:
+        * compositing/overflow/overflow-scrollbar-layers-expected.txt:
+        * compositing/overflow/resize-painting-expected.txt:
+        * compositing/plugins/no-backing-store-expected.txt:
+        * compositing/plugins/small-to-large-composited-plugin-expected.txt:
+        * compositing/regions/fixed-in-named-flow-clip-descendant-expected.txt:
+        * compositing/regions/fixed-in-named-flow-expected.txt:
+        * compositing/regions/fixed-in-named-flow-from-abs-in-named-flow-expected.txt:
+        * compositing/regions/fixed-in-named-flow-from-outflow-expected.txt:
+        * compositing/regions/fixed-in-named-flow-got-transformed-parent-expected.txt:
+        * compositing/regions/fixed-in-named-flow-lost-transformed-parent-expected.txt:
+        * compositing/regions/fixed-in-named-flow-overlap-composited-expected.txt:
+        * compositing/regions/fixed-in-named-flow-transformed-parent-expected.txt:
+        * compositing/regions/fixed-transformed-in-named-flow-expected.txt:
+        * compositing/repaint/absolute-painted-into-composited-ancestor-expected.txt:
+        * compositing/repaint/fixed-background-scroll-expected.txt:
+        * compositing/repaint/positioned-movement-expected.txt:
+        * compositing/repaint/repaint-on-layer-grouping-change-expected.txt:
+        * compositing/repaint/resize-repaint-expected.txt:
+        * compositing/rtl/rtl-absolute-expected.txt:
+        * compositing/rtl/rtl-absolute-overflow-expected.txt:
+        * compositing/rtl/rtl-absolute-overflow-scrolled-expected.txt:
+        * compositing/rtl/rtl-fixed-expected.txt:
+        * compositing/rtl/rtl-fixed-overflow-expected.txt:
+        * compositing/rtl/rtl-fixed-overflow-scrolled-expected.txt:
+        * compositing/rtl/rtl-relative-expected.txt:
+        * compositing/tiled-layers-hidpi-expected.txt:
+        * compositing/visibility/layer-visible-content-expected.txt:
+        * platform/mac-wk2/compositing/contents-opaque/body-background-painted-expected.txt:
+        * platform/mac-wk2/compositing/contents-opaque/body-background-skipped-expected.txt:
+        * platform/mac-wk2/compositing/repaint/fixed-background-scroll-expected.txt:
+        * platform/mac-wk2/compositing/rtl/rtl-absolute-expected.txt:
+        * platform/mac-wk2/compositing/rtl/rtl-absolute-overflow-expected.txt:
+        * platform/mac-wk2/compositing/rtl/rtl-absolute-overflow-scrolled-expected.txt:
+        * platform/mac-wk2/compositing/rtl/rtl-fixed-expected.txt:
+        * platform/mac-wk2/compositing/rtl/rtl-fixed-overflow-expected.txt:
+        * platform/mac-wk2/compositing/tiling/rotated-tiled-clamped-expected.txt:
+        * platform/mac-wk2/compositing/tiling/rotated-tiled-preserve3d-clamped-expected.txt:
+        * platform/mac-wk2/compositing/tiling/tile-cache-zoomed-expected.txt:
+        * platform/mac-wk2/compositing/tiling/tiled-layer-resize-expected.txt:
+        * platform/mac-wk2/compositing/visible-rect/iframe-no-layers-expected.txt:
+        * platform/mac-wk2/tiled-drawing/fast-scroll-div-latched-div-expected.txt:
+        * platform/mac-wk2/tiled-drawing/fast-scroll-div-latched-div-with-handler-expected.txt:
+        * platform/mac-wk2/tiled-drawing/fast-scroll-div-latched-mainframe-expected.txt:
+        * platform/mac-wk2/tiled-drawing/fast-scroll-div-latched-mainframe-with-handler-expected.txt:
+        * platform/mac-wk2/tiled-drawing/fast-scroll-iframe-latched-iframe-expected.txt:
+        * platform/mac-wk2/tiled-drawing/fast-scroll-iframe-latched-iframe-with-handler-expected.txt:
+        * platform/mac-wk2/tiled-drawing/fast-scroll-iframe-latched-mainframe-expected.txt:
+        * platform/mac-wk2/tiled-drawing/fast-scroll-iframe-latched-mainframe-with-handler-expected.txt:
+        * platform/mac-wk2/tiled-drawing/fast-scroll-select-latched-mainframe-expected.txt:
+        * platform/mac-wk2/tiled-drawing/fast-scroll-select-latched-mainframe-with-handler-expected.txt:
+        * platform/mac-wk2/tiled-drawing/fast-scroll-select-latched-select-expected.txt:
+        * platform/mac-wk2/tiled-drawing/fast-scroll-select-latched-select-with-handler-expected.txt:
+        * platform/mac-wk2/tiled-drawing/fixed-background/fixed-background-no-image-expected.txt:
+        * platform/mac-wk2/tiled-drawing/fixed-background/fixed-body-background-body-layer-expected.txt:
+        * platform/mac-wk2/tiled-drawing/fixed-background/fixed-body-background-expected.txt:
+        * platform/mac-wk2/tiled-drawing/fixed-background/fixed-body-background-opacity-html-expected.txt:
+        * platform/mac-wk2/tiled-drawing/fixed-background/fixed-body-background-positioned-expected.txt:
+        * platform/mac-wk2/tiled-drawing/fixed-background/fixed-body-background-transformed-html-expected.txt:
+        * platform/mac-wk2/tiled-drawing/fixed-background/fixed-body-background-zoomed-expected.txt:
+        * platform/mac-wk2/tiled-drawing/fixed-background/fixed-html-background-expected.txt:
+        * platform/mac-wk2/tiled-drawing/fixed-background/fixed-non-propagated-body-background-expected.txt:
+        * platform/mac-wk2/tiled-drawing/simple-document-with-margin-tiles-expected.txt:
+        * platform/mac-wk2/tiled-drawing/sticky/sticky-layers-expected.txt:
+        * platform/mac-wk2/tiled-drawing/tile-coverage-after-scroll-expected.txt:
+        * platform/mac-wk2/tiled-drawing/tile-coverage-after-scroll-speculative-expected.txt:
+        * platform/mac-wk2/tiled-drawing/tile-coverage-scroll-to-bottom-expected.txt:
+        * platform/mac-wk2/tiled-drawing/tile-coverage-slow-scrolling-expected.txt:
+        * platform/mac-wk2/tiled-drawing/tile-coverage-speculative-expected.txt:
+        * platform/mac-wk2/tiled-drawing/tile-size-slow-zoomed-expected.txt:
+        * platform/mac-wk2/tiled-drawing/tiled-drawing-scroll-position-page-cache-restoration-expected.txt:
+        * platform/mac-wk2/tiled-drawing/tiled-drawing-zoom-expected.txt:
+        * platform/mac-wk2/tiled-drawing/tiled-drawing-zoom-scrolled-expected.txt:
+        * platform/mac-wk2/tiled-drawing/use-tiled-drawing-expected.txt:
+        * platform/mac/compositing/canvas/accelerated-canvas-compositing-expected.txt:
+        * platform/mac/compositing/geometry/fixed-position-composited-switch-expected.txt:
+        * platform/mac/compositing/iframes/invisible-nested-iframe-show-expected.txt:
+        * platform/mac/compositing/iframes/resizer-expected.txt:
+        * platform/mac/compositing/images/direct-image-object-fit-expected.txt:
+        * platform/mac/compositing/layer-creation/overlap-animation-container-expected.txt:
+        * platform/mac/compositing/overflow/clipping-behaviour-change-is-not-propagated-to-descendants-expected.txt:
+        * platform/mac/compositing/overflow/clipping-behaviour-change-is-not-propagated-to-descendants2-expected.txt:
+        * platform/mac/compositing/overflow/composited-scrolling-creates-a-stacking-container-expected.txt:
+        * platform/mac/compositing/overflow/composited-scrolling-paint-phases-expected.txt:
+        * platform/mac/compositing/reflections/direct-image-object-fit-reflected-expected.txt:
+        * platform/mac/compositing/repaint/invalidations-on-composited-layers-expected.txt:
+        * platform/mac/compositing/tiling/backface-preserve-3d-tiled-expected.txt:
+        * platform/mac/compositing/tiling/crash-reparent-tiled-layer-expected.txt:
+        * platform/mac/compositing/tiling/huge-layer-add-remove-child-expected.txt:
+        * platform/mac/compositing/tiling/huge-layer-img-expected.txt:
+        * platform/mac/compositing/tiling/huge-layer-with-layer-children-expected.txt:
+        * platform/mac/compositing/tiling/huge-layer-with-layer-children-resize-expected.txt:
+        * platform/mac/compositing/tiling/rotated-tiled-clamped-expected.txt:
+        * platform/mac/compositing/tiling/rotated-tiled-preserve3d-clamped-expected.txt:
+        * platform/mac/compositing/tiling/tile-cache-zoomed-expected.txt:
+        * platform/mac/compositing/tiling/tiled-layer-resize-expected.txt:
+        * platform/mac/compositing/video/video-object-fit-expected.txt:
+        * platform/mac/compositing/visible-rect/2d-transformed-expected.txt:
+        * platform/mac/compositing/visible-rect/3d-transform-style-expected.txt:
+        * platform/mac/compositing/visible-rect/3d-transformed-expected.txt:
+        * platform/mac/compositing/visible-rect/animated-expected.txt:
+        * platform/mac/compositing/visible-rect/animated-from-none-expected.txt:
+        * platform/mac/compositing/visible-rect/clipped-by-viewport-expected.txt:
+        * platform/mac/compositing/visible-rect/clipped-visible-rect-expected.txt:
+        * platform/mac/compositing/visible-rect/flipped-preserve-3d-expected.txt:
+        * platform/mac/compositing/visible-rect/iframe-and-layers-expected.txt:
+        * platform/mac/compositing/visible-rect/iframe-no-layers-expected.txt:
+        * platform/mac/compositing/visible-rect/nested-transform-expected.txt:
+        * platform/mac/compositing/visible-rect/scrolled-expected.txt:
+
 2014-05-03  Yusuke Suzuki  <utatane.tea@gmail.com>
 
         CSS JIT: optimize direct / indirect adjacent's traversal backtracking
index a1e9d3f..7a642df 100644 (file)
@@ -1,6 +1,7 @@
 This layer should not have backing store.
 This layer should not have backing store.
 (GraphicsLayer
+  (anchor 0.00 0.00)
   (bounds 800.00 600.00)
   (children 1
     (GraphicsLayer
index c8eaeeb..eeeb2f2 100644 (file)
@@ -1,6 +1,7 @@
 This layer should not have backing store.
 This layer should have backing store.
 (GraphicsLayer
+  (anchor 0.00 0.00)
   (bounds 800.00 600.00)
   (children 1
     (GraphicsLayer
index 4020758..f06a826 100644 (file)
@@ -1,6 +1,7 @@
 This layer should not have backing store.
 This layer should not have backing store.
 (GraphicsLayer
+  (anchor 0.00 0.00)
   (bounds 800.00 600.00)
   (children 1
     (GraphicsLayer
index 60da627..e290b12 100644 (file)
@@ -1,5 +1,6 @@
 (GraphicsLayer
   (position -800.00 0.00)
+  (anchor 0.00 0.00)
   (bounds 1600.00 585.00)
   (children 1
     (GraphicsLayer
index 18c8d3d..db9d0e7 100644 (file)
@@ -1,4 +1,5 @@
 (GraphicsLayer
+  (anchor 0.00 0.00)
   (bounds 800.00 600.00)
   (children 1
     (GraphicsLayer
index 97662c0..e8cac10 100644 (file)
@@ -1,5 +1,6 @@
 Box
 (GraphicsLayer
+  (anchor 0.00 0.00)
   (bounds 800.00 600.00)
   (visible rect 0.00, 0.00 800.00 x 600.00)
   (contentsScale 1.00)
index 831d6d2..2423746 100644 (file)
@@ -1,4 +1,5 @@
 (GraphicsLayer
+  (anchor 0.00 0.00)
   (bounds 800.00 600.00)
   (visible rect 0.00, 0.00 800.00 x 600.00)
   (contentsScale 1.00)
index 5fe95ae..8e215b5 100644 (file)
@@ -1,5 +1,6 @@
 Box
 (GraphicsLayer
+  (anchor 0.00 0.00)
   (bounds 800.00 600.00)
   (visible rect 0.00, 0.00 800.00 x 600.00)
   (contentsScale 1.00)
index ff90caf..bba4dd1 100644 (file)
@@ -1,5 +1,6 @@
 Box
 (GraphicsLayer
+  (anchor 0.00 0.00)
   (bounds 800.00 600.00)
   (visible rect 0.00, 0.00 800.00 x 600.00)
   (contentsScale 1.00)
index e8b79f5..b0a1112 100644 (file)
@@ -1,6 +1,7 @@
 Box
 Box
 (GraphicsLayer
+  (anchor 0.00 0.00)
   (bounds 800.00 600.00)
   (visible rect 0.00, 0.00 800.00 x 600.00)
   (contentsScale 1.00)
index ad9519c..9ee8bcd 100644 (file)
@@ -1,6 +1,7 @@
 Test CSS clip with composited layers. Left and right sides should look the same.
 
 (GraphicsLayer
+  (anchor 0.00 0.00)
   (bounds 800.00 600.00)
   (children 1
     (GraphicsLayer
index 9c1d0a4..0eaa574 100644 (file)
@@ -1,6 +1,7 @@
 Test CSS clip with composited layers. Left and right sides should look the same.
 
 (GraphicsLayer
+  (anchor 0.00 0.00)
   (bounds 800.00 600.00)
   (children 1
     (GraphicsLayer
index 00d8eb0..c6ff37f 100644 (file)
@@ -1,5 +1,6 @@
   
 (GraphicsLayer
+  (anchor 0.00 0.00)
   (bounds 800.00 600.00)
   (children 1
     (GraphicsLayer
index 3404fff..2bf3603 100644 (file)
@@ -5,6 +5,7 @@ First dump layer tree:
 
 Second dump layer tree:
 (GraphicsLayer
+  (anchor 0.00 0.00)
   (bounds 800.00 600.00)
   (children 1
     (GraphicsLayer
index ee61672..7ba13fa 100644 (file)
@@ -2,6 +2,7 @@ CONSOLE MESSAGE: line 38: ReferenceError: Can't find variable: runRepaintTest
 Hidden Text
 Hidden Text
 (GraphicsLayer
+  (anchor 0.00 0.00)
   (bounds 800.00 600.00)
   (children 1
     (GraphicsLayer
index c69bda3..a9229ad 100644 (file)
@@ -2,6 +2,7 @@ The green box appear angled out from the yellow box and embedded in it.
 
 -webkit-transform: translateZ(-100px) rotateY(45deg);
 (GraphicsLayer
+  (anchor 0.00 0.00)
   (bounds 800.00 600.00)
   (children 1
     (GraphicsLayer
index 22b34ae..338dccb 100644 (file)
@@ -1,5 +1,6 @@
 
 (GraphicsLayer
+  (anchor 0.00 0.00)
   (bounds 785.00 1500.00)
   (children 1
     (GraphicsLayer
               (position 2.00 2.00)
               (children 1
                 (GraphicsLayer
+                  (anchor 0.00 0.00)
                   (bounds 280.00 200.00)
                   (children 1
                     (GraphicsLayer
                       (children 1
                         (GraphicsLayer
+                          (anchor 0.00 0.00)
                           (bounds 280.00 200.00)
                           (children 1
                             (GraphicsLayer
                                       (position 1.00 1.00)
                                       (children 1
                                         (GraphicsLayer
+                                          (anchor 0.00 0.00)
                                           (bounds 250.00 170.00)
                                           (children 1
                                             (GraphicsLayer
                                               (children 1
                                                 (GraphicsLayer
+                                                  (anchor 0.00 0.00)
                                                   (bounds 250.00 230.00)
                                                   (children 1
                                                     (GraphicsLayer
               (position 2.00 2.00)
               (children 1
                 (GraphicsLayer
+                  (anchor 0.00 0.00)
                   (bounds 280.00 200.00)
                   (children 1
                     (GraphicsLayer
                       (children 1
                         (GraphicsLayer
+                          (anchor 0.00 0.00)
                           (bounds 280.00 200.00)
                           (children 1
                             (GraphicsLayer
                                       (position 1.00 1.00)
                                       (children 1
                                         (GraphicsLayer
+                                          (anchor 0.00 0.00)
                                           (bounds 250.00 170.00)
                                           (children 1
                                             (GraphicsLayer
                                               (children 1
                                                 (GraphicsLayer
+                                                  (anchor 0.00 0.00)
                                                   (bounds 250.00 230.00)
                                                   (children 1
                                                     (GraphicsLayer
index c8c92ee..a59398d 100644 (file)
@@ -1,5 +1,6 @@
 
 (GraphicsLayer
+  (anchor 0.00 0.00)
   (bounds 800.00 600.00)
   (children 1
     (GraphicsLayer
               (position 15.00 15.00)
               (children 1
                 (GraphicsLayer
+                  (anchor 0.00 0.00)
                   (bounds 305.00 170.00)
                   (children 1
                     (GraphicsLayer
                       (children 1
                         (GraphicsLayer
+                          (anchor 0.00 0.00)
                           (bounds 305.00 230.00)
                           (children 1
                             (GraphicsLayer
index a080a97..a7b5f7a 100644 (file)
@@ -1,5 +1,6 @@
 
 (GraphicsLayer
+  (anchor 0.00 0.00)
   (bounds 800.00 600.00)
   (children 1
     (GraphicsLayer
               (position 43.00 43.00)
               (children 1
                 (GraphicsLayer
+                  (anchor 0.00 0.00)
                   (bounds 285.00 150.00)
                   (children 1
                     (GraphicsLayer
                       (children 1
                         (GraphicsLayer
+                          (anchor 0.00 0.00)
                           (bounds 285.00 230.00)
                           (children 1
                             (GraphicsLayer
index 9e17e22..61814c0 100644 (file)
@@ -2,6 +2,7 @@
 When the parent document becomes composited, the layer trees should get connected together.
 
 (GraphicsLayer
+  (anchor 0.00 0.00)
   (bounds 800.00 600.00)
   (children 1
     (GraphicsLayer
@@ -17,11 +18,13 @@ When the parent document becomes composited, the layer trees should get connecte
               (position 43.00 43.00)
               (children 1
                 (GraphicsLayer
+                  (anchor 0.00 0.00)
                   (bounds 285.00 150.00)
                   (children 1
                     (GraphicsLayer
                       (children 1
                         (GraphicsLayer
+                          (anchor 0.00 0.00)
                           (bounds 285.00 230.00)
                           (children 1
                             (GraphicsLayer
index a635805..d9a892b 100644 (file)
@@ -1,5 +1,6 @@
 
 (GraphicsLayer
+  (anchor 0.00 0.00)
   (bounds 800.00 600.00)
   (children 1
     (GraphicsLayer
               (position 43.00 43.00)
               (children 1
                 (GraphicsLayer
+                  (anchor 0.00 0.00)
                   (bounds 285.00 150.00)
                   (children 1
                     (GraphicsLayer
                       (children 1
                         (GraphicsLayer
+                          (anchor 0.00 0.00)
                           (bounds 285.00 230.00)
                           (children 1
                             (GraphicsLayer
index a635805..d9a892b 100644 (file)
@@ -1,5 +1,6 @@
 
 (GraphicsLayer
+  (anchor 0.00 0.00)
   (bounds 800.00 600.00)
   (children 1
     (GraphicsLayer
               (position 43.00 43.00)
               (children 1
                 (GraphicsLayer
+                  (anchor 0.00 0.00)
                   (bounds 285.00 150.00)
                   (children 1
                     (GraphicsLayer
                       (children 1
                         (GraphicsLayer
+                          (anchor 0.00 0.00)
                           (bounds 285.00 230.00)
                           (children 1
                             (GraphicsLayer
index dfbe73e..dd7517a 100644 (file)
@@ -1,5 +1,6 @@
 
 (GraphicsLayer
+  (anchor 0.00 0.00)
   (bounds 800.00 600.00)
   (children 1
     (GraphicsLayer
               (position 43.00 43.00)
               (children 1
                 (GraphicsLayer
+                  (anchor 0.00 0.00)
                   (bounds 285.00 150.00)
                   (children 1
                     (GraphicsLayer
                       (children 1
                         (GraphicsLayer
+                          (anchor 0.00 0.00)
                           (bounds 285.00 230.00)
                           (children 1
                             (GraphicsLayer
index a635805..d9a892b 100644 (file)
@@ -1,5 +1,6 @@
 
 (GraphicsLayer
+  (anchor 0.00 0.00)
   (bounds 800.00 600.00)
   (children 1
     (GraphicsLayer
               (position 43.00 43.00)
               (children 1
                 (GraphicsLayer
+                  (anchor 0.00 0.00)
                   (bounds 285.00 150.00)
                   (children 1
                     (GraphicsLayer
                       (children 1
                         (GraphicsLayer
+                          (anchor 0.00 0.00)
                           (bounds 285.00 230.00)
                           (children 1
                             (GraphicsLayer
index 5b7cfaa..5898e3d 100644 (file)
@@ -1,5 +1,6 @@
 
 (GraphicsLayer
+  (anchor 0.00 0.00)
   (bounds 800.00 600.00)
   (children 1
     (GraphicsLayer
               (position 43.00 43.00)
               (children 1
                 (GraphicsLayer
+                  (anchor 0.00 0.00)
                   (bounds 385.00 120.00)
                   (children 1
                     (GraphicsLayer
                       (children 1
                         (GraphicsLayer
+                          (anchor 0.00 0.00)
                           (bounds 385.00 230.00)
                           (children 1
                             (GraphicsLayer
index 0d30764..2655eb5 100644 (file)
@@ -1,5 +1,6 @@
 
 (GraphicsLayer
+  (anchor 0.00 0.00)
   (bounds 800.00 600.00)
   (children 1
     (GraphicsLayer
               (position 15.00 15.00)
               (children 1
                 (GraphicsLayer
+                  (anchor 0.00 0.00)
                   (bounds 285.00 150.00)
                   (children 1
                     (GraphicsLayer
                       (children 1
                         (GraphicsLayer
+                          (anchor 0.00 0.00)
                           (bounds 285.00 230.00)
                           (children 1
                             (GraphicsLayer
index a635805..d9a892b 100644 (file)
@@ -1,5 +1,6 @@
 
 (GraphicsLayer
+  (anchor 0.00 0.00)
   (bounds 800.00 600.00)
   (children 1
     (GraphicsLayer
               (position 43.00 43.00)
               (children 1
                 (GraphicsLayer
+                  (anchor 0.00 0.00)
                   (bounds 285.00 150.00)
                   (children 1
                     (GraphicsLayer
                       (children 1
                         (GraphicsLayer
+                          (anchor 0.00 0.00)
                           (bounds 285.00 230.00)
                           (children 1
                             (GraphicsLayer
index add756e..3c42904 100644 (file)
@@ -1,4 +1,5 @@
 (GraphicsLayer
+  (anchor 0.00 0.00)
   (bounds 800.00 600.00)
   (children 1
     (GraphicsLayer
               (position 2.00 2.00)
               (children 1
                 (GraphicsLayer
+                  (anchor 0.00 0.00)
                   (bounds 300.00 300.00)
                   (children 1
                     (GraphicsLayer
                       (children 1
                         (GraphicsLayer
+                          (anchor 0.00 0.00)
                           (bounds 300.00 300.00)
                           (children 1
                             (GraphicsLayer
index 49dc3c0..d179416 100644 (file)
@@ -1,5 +1,6 @@
 
 (GraphicsLayer
+  (anchor 0.00 0.00)
   (bounds 785.00 1650.00)
   (children 1
     (GraphicsLayer
               (position 2.00 2.00)
               (children 1
                 (GraphicsLayer
+                  (anchor 0.00 0.00)
                   (bounds 280.00 200.00)
                   (children 1
                     (GraphicsLayer
                       (children 1
                         (GraphicsLayer
+                          (anchor 0.00 0.00)
                           (bounds 280.00 200.00)
                           (children 1
                             (GraphicsLayer
                                       (position 1.00 1.00)
                                       (children 1
                                         (GraphicsLayer
+                                          (anchor 0.00 0.00)
                                           (bounds 250.00 170.00)
                                           (children 1
                                             (GraphicsLayer
                                               (children 1
                                                 (GraphicsLayer
+                                                  (anchor 0.00 0.00)
                                                   (bounds 250.00 230.00)
                                                   (children 1
                                                     (GraphicsLayer
               (position 2.00 2.00)
               (children 1
                 (GraphicsLayer
+                  (anchor 0.00 0.00)
                   (bounds 280.00 200.00)
                   (children 1
                     (GraphicsLayer
                       (children 1
                         (GraphicsLayer
+                          (anchor 0.00 0.00)
                           (bounds 280.00 200.00)
                           (children 1
                             (GraphicsLayer
                                       (position 1.00 1.00)
                                       (children 1
                                         (GraphicsLayer
+                                          (anchor 0.00 0.00)
                                           (bounds 250.00 170.00)
                                           (children 1
                                             (GraphicsLayer
                                               (children 1
                                                 (GraphicsLayer
+                                                  (anchor 0.00 0.00)
                                                   (bounds 250.00 230.00)
                                                   (children 1
                                                     (GraphicsLayer
index 8c2cce4..fe25094 100644 (file)
@@ -6,6 +6,7 @@ This tests that layers are rebuilt properly after the page is restored from the
 
 
 (GraphicsLayer
+  (anchor 0.00 0.00)
   (bounds 800.00 600.00)
   (children 1
     (GraphicsLayer
@@ -21,11 +22,13 @@ This tests that layers are rebuilt properly after the page is restored from the
               (position 43.00 43.00)
               (children 1
                 (GraphicsLayer
+                  (anchor 0.00 0.00)
                   (bounds 285.00 135.00)
                   (children 1
                     (GraphicsLayer
                       (children 1
                         (GraphicsLayer
+                          (anchor 0.00 0.00)
                           (bounds 352.00 352.00)
                           (children 1
                             (GraphicsLayer
@@ -69,11 +72,13 @@ This tests that layers are rebuilt properly after the page is restored from the
                   (position 43.00 43.00)
                   (children 1
                     (GraphicsLayer
+                      (anchor 0.00 0.00)
                       (bounds 285.00 135.00)
                       (children 1
                         (GraphicsLayer
                           (children 1
                             (GraphicsLayer
+                              (anchor 0.00 0.00)
                               (bounds 508.00 608.00)
                               (children 1
                                 (GraphicsLayer
index 73c83a5..ab5abec 100644 (file)
@@ -1,5 +1,6 @@
 
 (GraphicsLayer
+  (anchor 0.00 0.00)
   (bounds 800.00 600.00)
   (children 1
     (GraphicsLayer
               (position 43.00 43.00)
               (children 1
                 (GraphicsLayer
+                  (anchor 0.00 0.00)
                   (bounds 285.00 135.00)
                   (children 1
                     (GraphicsLayer
                       (position -80.00 -80.00)
                       (children 1
                         (GraphicsLayer
+                          (anchor 0.00 0.00)
                           (bounds 508.00 608.00)
                           (children 1
                             (GraphicsLayer
index 3d11088..e974ed1 100644 (file)
@@ -1,6 +1,7 @@
 Should be compositedShould not be composited
 Should be composited
 (GraphicsLayer
+  (anchor 0.00 0.00)
   (bounds 800.00 600.00)
   (children 1
     (GraphicsLayer
index 27d5828..86db42e 100644 (file)
@@ -1,6 +1,7 @@
 Layer tree when the fixed elements are out-of-view (should be blank):
 Layer tree when the fixed elements are in-view (both fixed elements should have layers):
 (GraphicsLayer
+  (anchor 0.00 0.00)
   (bounds 800.00 600.00)
   (children 1
     (GraphicsLayer
index f9c9f45..3613b60 100644 (file)
@@ -1,5 +1,6 @@
 Not scaled:
 (GraphicsLayer
+  (anchor 0.00 0.00)
   (bounds 785.00 1016.00)
   (children 1
     (GraphicsLayer
@@ -21,6 +22,7 @@ Not scaled:
 )
 Scale=0.5:
 (GraphicsLayer
+  (anchor 0.00 0.00)
   (bounds 400.00 508.00)
   (children 1
     (GraphicsLayer
@@ -44,6 +46,7 @@ Scale=0.5:
 )
 Scale=1.5:
 (GraphicsLayer
+  (anchor 0.00 0.00)
   (bounds 1272.00 1524.00)
   (children 1
     (GraphicsLayer
index db6355d..ca07478 100644 (file)
@@ -1,5 +1,6 @@
 Not scaled:
 (GraphicsLayer
+  (anchor 0.00 0.00)
   (bounds 785.00 1016.00)
   (children 1
     (GraphicsLayer
@@ -22,6 +23,7 @@ Not scaled:
 )
 Scale=0.5:
 (GraphicsLayer
+  (anchor 0.00 0.00)
   (bounds 400.00 508.00)
   (children 1
     (GraphicsLayer
@@ -45,6 +47,7 @@ Scale=0.5:
 )
 Scale=1.5:
 (GraphicsLayer
+  (anchor 0.00 0.00)
   (bounds 1272.00 1524.00)
   (children 1
     (GraphicsLayer
index b65e628..cff0a37 100644 (file)
@@ -2,6 +2,7 @@ This layer should not be composited.
 This layer should not be composited.
 This layer should be composited.
 (GraphicsLayer
+  (anchor 0.00 0.00)
   (bounds 785.00 611.00)
   (children 1
     (GraphicsLayer
index db362bc..96fd9be 100644 (file)
@@ -1,5 +1,6 @@
 Before:
 (GraphicsLayer
+  (anchor 0.00 0.00)
   (bounds 800.00 600.00)
   (children 1
     (GraphicsLayer
@@ -19,6 +20,7 @@ Before:
 
 After:
 (GraphicsLayer
+  (anchor 0.00 0.00)
   (bounds 800.00 600.00)
   (children 1
     (GraphicsLayer
index cbe8e01..a8488d6 100644 (file)
@@ -1,5 +1,6 @@
 123456Before:
 (GraphicsLayer
+  (anchor 0.00 0.00)
   (bounds 800.00 600.00)
   (children 1
     (GraphicsLayer
@@ -57,6 +58,7 @@
 
 After:
 (GraphicsLayer
+  (anchor 0.00 0.00)
   (bounds 800.00 600.00)
   (children 1
     (GraphicsLayer
index 39dcd62..96cc620 100644 (file)
@@ -1,4 +1,5 @@
 (GraphicsLayer
+  (anchor 0.00 0.00)
   (bounds 800.00 600.00)
   (children 1
     (GraphicsLayer
index 42ff829..92a8ecd 100644 (file)
@@ -1,5 +1,6 @@
 Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum. Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum. Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.
 (GraphicsLayer
+  (anchor 0.00 0.00)
   (bounds 800.00 600.00)
   (children 1
     (GraphicsLayer
index d1f8ce1..2846fe1 100644 (file)
@@ -1,5 +1,6 @@
       
 (GraphicsLayer
+  (anchor 0.00 0.00)
   (bounds 800.00 600.00)
   (children 1
     (GraphicsLayer
index b8700b3..c85f26f 100644 (file)
@@ -3,6 +3,7 @@ Test a fixed positioned element collected in a named flow correctly clips its an
 On success, you should see a green rectangle with an orange rectangle in the bottom right corner.
 
 (GraphicsLayer
+  (anchor 0.00 0.00)
   (bounds 800.00 600.00)
   (children 1
     (GraphicsLayer
index 1f411f2..b8b415d 100644 (file)
@@ -5,6 +5,7 @@ The fixed positioned element should be positioned relative to the viewport and i
 On success you should not see red below.
 
 (GraphicsLayer
+  (anchor 0.00 0.00)
   (bounds 800.00 600.00)
   (children 1
     (GraphicsLayer
index 27d061d..6c81c46 100644 (file)
@@ -5,6 +5,7 @@ The fixed element should be composited.
 On success you should not see red below.
 
 (GraphicsLayer
+  (anchor 0.00 0.00)
   (bounds 800.00 600.00)
   (children 1
     (GraphicsLayer
index 5fb0933..1803edc 100644 (file)
@@ -3,6 +3,7 @@ Test that a fixed positioned element that is dinamically collected into a named
 On success you should not see red below.
 
 (GraphicsLayer
+  (anchor 0.00 0.00)
   (bounds 800.00 600.00)
   (children 1
     (GraphicsLayer
index 07412d2..dd1459c 100644 (file)
@@ -5,6 +5,7 @@ The fixed positioned element should NOT be composited.
 On success you should not see red below.
 
 (GraphicsLayer
+  (anchor 0.00 0.00)
   (bounds 800.00 600.00)
   (children 1
     (GraphicsLayer
index e0acaaf..0697321 100644 (file)
@@ -5,6 +5,7 @@ The fixed positioned element should NOT be composited.
 On success you should not see red below.
 
 (GraphicsLayer
+  (anchor 0.00 0.00)
   (bounds 800.00 600.00)
   (children 1
     (GraphicsLayer
index e04c9fd..669c9f4 100644 (file)
@@ -3,6 +3,7 @@ Test that a fixed positioned element in a named flow that overlaps a composited
 On success you should see a green rectangle over an orange rectangle.
 
 (GraphicsLayer
+  (anchor 0.00 0.00)
   (bounds 800.00 600.00)
   (children 1
     (GraphicsLayer
index 57e9a09..15e7023 100644 (file)
@@ -3,6 +3,7 @@ Test that a fixed positioned element with a transformed parent is positioned rel
 On success you should not see red below.
 
 (GraphicsLayer
+  (anchor 0.00 0.00)
   (bounds 800.00 600.00)
   (children 1
     (GraphicsLayer
index 2883b09..6c2356a 100644 (file)
@@ -5,6 +5,7 @@ The fixed positioned element should be positioned relative to the viewport and i
 On success you should not see red below.
 
 (GraphicsLayer
+  (anchor 0.00 0.00)
   (bounds 800.00 600.00)
   (children 1
     (GraphicsLayer
index 7ba38eb..e01d181 100644 (file)
@@ -3,6 +3,7 @@
   (rect 0 126 800 102)
 )
 (GraphicsLayer
+  (anchor 0.00 0.00)
   (bounds 800.00 600.00)
   (children 1
     (GraphicsLayer
index 66ad105..84c4eb7 100644 (file)
@@ -1,4 +1,5 @@
 (GraphicsLayer
+  (anchor 0.00 0.00)
   (bounds 800.00 600.00)
   (children 1
     (GraphicsLayer
index 732ac06..c12a447 100644 (file)
@@ -1,5 +1,6 @@
 (GraphicsLayer
   (position -215.00 0.00)
+  (anchor 0.00 0.00)
   (bounds 1000.00 1000.00)
   (children 1
     (GraphicsLayer
index ac6b5bc..db6cd1e 100644 (file)
@@ -1,5 +1,6 @@
 (GraphicsLayer
   (position -215.00 0.00)
+  (anchor 0.00 0.00)
   (bounds 1000.00 1000.00)
   (children 1
     (GraphicsLayer
index 66ad105..84c4eb7 100644 (file)
@@ -1,4 +1,5 @@
 (GraphicsLayer
+  (anchor 0.00 0.00)
   (bounds 800.00 600.00)
   (children 1
     (GraphicsLayer
index 732ac06..c12a447 100644 (file)
@@ -1,5 +1,6 @@
 (GraphicsLayer
   (position -215.00 0.00)
+  (anchor 0.00 0.00)
   (bounds 1000.00 1000.00)
   (children 1
     (GraphicsLayer
index ac6b5bc..db6cd1e 100644 (file)
@@ -1,5 +1,6 @@
 (GraphicsLayer
   (position -215.00 0.00)
+  (anchor 0.00 0.00)
   (bounds 1000.00 1000.00)
   (children 1
     (GraphicsLayer
index a3138c0..8670621 100644 (file)
@@ -1,4 +1,5 @@
 (GraphicsLayer
+  (anchor 0.00 0.00)
   (bounds 800.00 600.00)
   (children 1
     (GraphicsLayer
index 39d73d0..44a0629 100644 (file)
@@ -1,4 +1,5 @@
 (GraphicsLayer
+  (anchor 0.00 0.00)
   (bounds 1808.00 585.00)
   (children 1
     (GraphicsLayer
index 2871f64..4553acd 100644 (file)
@@ -58,6 +58,7 @@ Page before: 0, div before: 451
 Page after:  0, div after: 451
 PASS Page did not receive wheel events.
 (GraphicsLayer
+  (anchor 0.00 0.00)
   (bounds 2008.00 2326.00)
   (visible rect 0.00, 0.00 785.00 x 585.00)
   (contentsScale 1.00)
index bb1a0f8..9080586 100644 (file)
@@ -59,6 +59,7 @@ Page after:  0, div after: 451
 PASS Page did not receive wheel events.
 Document was initial target for 0 of the wheel events.
 (GraphicsLayer
+  (anchor 0.00 0.00)
   (bounds 2008.00 2341.00)
   (visible rect 0.00, 0.00 785.00 x 585.00)
   (contentsScale 1.00)
index 7cc4f1f..52948ec 100644 (file)
@@ -57,6 +57,7 @@ Page before: 0, div before: 0
 Page after:  70, div after: 0
 PASS Scrollable div did not receive wheel events.
 (GraphicsLayer
+  (anchor 0.00 0.00)
   (bounds 2008.00 2311.00)
   (visible rect 0.00, 70.00 785.00 x 585.00)
   (contentsScale 1.00)
index 60f9e88..dfad5c1 100644 (file)
@@ -58,6 +58,7 @@ Page after:  70, div after: 0
 PASS Scrollable div did not receive wheel events.
 Document was initial target for 4 of the wheel events.
 (GraphicsLayer
+  (anchor 0.00 0.00)
   (bounds 2008.00 2326.00)
   (visible rect 0.00, 70.00 785.00 x 585.00)
   (contentsScale 1.00)
index c765f71..6271446 100644 (file)
@@ -14,6 +14,7 @@ Page before: 0, IFrame before: 416
 Page after:  0, IFrame after: 496
 PASS Page did not receive wheel events.
 (GraphicsLayer
+  (anchor 0.00 0.00)
   (bounds 785.00 2326.00)
   (visible rect 0.00, 0.00 785.00 x 600.00)
   (contentsScale 1.00)
index 1e613cc..6d34da6 100644 (file)
@@ -15,6 +15,7 @@ Page after:  0, IFrame after: 496
 PASS Page did not receive wheel events.
 Document was initial target for 0 of the wheel events.
 (GraphicsLayer
+  (anchor 0.00 0.00)
   (bounds 785.00 2341.00)
   (visible rect 0.00, 0.00 785.00 x 600.00)
   (contentsScale 1.00)
index 316806a..d52c757 100644 (file)
@@ -13,6 +13,7 @@ Page before: 0, IFrame before: 0
 Page after:  70, IFrame after: 0
 PASS IFrame did not receive wheel events.
 (GraphicsLayer
+  (anchor 0.00 0.00)
   (bounds 785.00 2311.00)
   (visible rect 0.00, 70.00 785.00 x 600.00)
   (contentsScale 1.00)
index 1a6ec6c..4818d9e 100644 (file)
@@ -14,6 +14,7 @@ Page after:  70, IFrame after: 0
 PASS IFrame did not receive wheel events.
 Document was initial target for 4 of the wheel events.
 (GraphicsLayer
+  (anchor 0.00 0.00)
   (bounds 785.00 2326.00)
   (visible rect 0.00, 70.00 785.00 x 600.00)
   (contentsScale 1.00)
index 7148435..2745e34 100644 (file)
@@ -15,6 +15,7 @@ Page before: 0, select before: 0
 Page after:  70, select after: 0
 PASS Select did not receive wheel events.
 (GraphicsLayer
+  (anchor 0.00 0.00)
   (bounds 2008.00 2311.00)
   (visible rect 0.00, 70.00 785.00 x 585.00)
   (contentsScale 1.00)
index c359f5a..8415bec 100644 (file)
@@ -16,6 +16,7 @@ Page after:  70, select after: 0
 PASS Select did not receive wheel events.
 Document was initial target for 4 of the wheel events.
 (GraphicsLayer
+  (anchor 0.00 0.00)
   (bounds 2008.00 2326.00)
   (visible rect 0.00, 70.00 785.00 x 585.00)
   (contentsScale 1.00)
index 94b71b6..dc7e8fe 100644 (file)
@@ -16,6 +16,7 @@ Page before: 0, select before: 70
 Page after:  0, select after: 140
 PASS Page did not receive wheel events.
 (GraphicsLayer
+  (anchor 0.00 0.00)
   (bounds 2008.00 2326.00)
   (visible rect 0.00, 0.00 785.00 x 585.00)
   (contentsScale 1.00)
index 9e5393a..95980ec 100644 (file)
@@ -17,6 +17,7 @@ Page after:  0, select after: 140
 PASS Page did not receive wheel events.
 Document was initial target for 4 of the wheel events.
 (GraphicsLayer
+  (anchor 0.00 0.00)
   (bounds 2008.00 2341.00)
   (visible rect 0.00, 0.00 785.00 x 585.00)
   (contentsScale 1.00)
index a8dcf97..28dfae2 100644 (file)
@@ -1,5 +1,6 @@
 Left sticky Right sticky Left % sticky Right % sticky Left and Right Left and Right %
 (GraphicsLayer
+  (anchor 0.00 0.00)
   (bounds 2008.00 585.00)
   (children 1
     (GraphicsLayer
index e611d08..f92c397 100644 (file)
@@ -1,4 +1,5 @@
 (GraphicsLayer
+  (anchor 0.00 0.00)
   (bounds 1805.00 1345.00)
   (visible rect 0.00, 0.00 785.00 x 585.00)
   (contentsScale 1.00)
index 134c8da..80fed4c 100644 (file)
@@ -1,4 +1,5 @@
 (GraphicsLayer
+  (anchor 0.00 0.00)
   (bounds 1208.00 2021.00)
   (visible rect 0.00, 0.00 785.00 x 585.00)
   (contentsScale 1.00)
index 7b85b5d..b7170b8 100644 (file)
@@ -1,6 +1,7 @@
 Tests whether an accelerated canvas creates a compositing layer.
 
  (GraphicsLayer
+  (anchor 0.00 0.00)
   (bounds 800.00 600.00)
   (children 1
     (GraphicsLayer
index dc7b50d..565984e 100644 (file)
@@ -1,5 +1,6 @@
 Before (should be empty): 
 (GraphicsLayer
+  (anchor 0.00 0.00)
   (bounds 800.00 600.00)
   (children 1
     (GraphicsLayer
@@ -18,6 +19,7 @@ Before (should be empty):
 
 After (should not be empty): 
 (GraphicsLayer
+  (anchor 0.00 0.00)
   (bounds 800.00 600.00)
   (children 1
     (GraphicsLayer
index be8bb74..2e57d2d 100644 (file)
@@ -1,5 +1,6 @@
 
 (GraphicsLayer
+  (anchor 0.00 0.00)
   (bounds 800.00 600.00)
   (children 1
     (GraphicsLayer
               (position 23.00 23.00)
               (children 1
                 (GraphicsLayer
+                  (anchor 0.00 0.00)
                   (bounds 285.00 150.00)
                   (children 1
                     (GraphicsLayer
                       (children 1
                         (GraphicsLayer
+                          (anchor 0.00 0.00)
                           (bounds 285.00 192.00)
                           (children 1
                             (GraphicsLayer
                                       (position 1.00 1.00)
                                       (children 1
                                         (GraphicsLayer
+                                          (anchor 0.00 0.00)
                                           (bounds 250.00 170.00)
                                           (children 1
                                             (GraphicsLayer
                                               (children 1
                                                 (GraphicsLayer
+                                                  (anchor 0.00 0.00)
                                                   (bounds 250.00 230.00)
                                                   (children 1
                                                     (GraphicsLayer
index 5bb6fc7..895d9df 100644 (file)
@@ -1,5 +1,6 @@
 
 (GraphicsLayer
+  (anchor 0.00 0.00)
   (bounds 800.00 600.00)
   (children 1
     (GraphicsLayer
               (position 2.00 2.00)
               (children 1
                 (GraphicsLayer
+                  (anchor 0.00 0.00)
                   (bounds 285.00 150.00)
                   (children 1
                     (GraphicsLayer
                       (children 1
                         (GraphicsLayer
+                          (anchor 0.00 0.00)
                           (bounds 285.00 230.00)
                           (children 1
                             (GraphicsLayer
index 93baac9..5fe6910 100644 (file)
@@ -1,5 +1,6 @@
 Before:
 (GraphicsLayer
+  (anchor 0.00 0.00)
   (bounds 785.00 802.00)
   (children 1
     (GraphicsLayer
@@ -34,6 +35,7 @@ Before:
 
 After:
 (GraphicsLayer
+  (anchor 0.00 0.00)
   (bounds 785.00 802.00)
   (children 1
     (GraphicsLayer
index 035f065..9662ab6 100644 (file)
@@ -5,6 +5,7 @@ Text in both of the green boxes should stay visible.
 Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua.
 Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua.
 (GraphicsLayer
+  (anchor 0.00 0.00)
   (bounds 800.00 600.00)
   (visible rect 0.00, 0.00 800.00 x 600.00)
   (contentsScale 1.00)
index c548bff..8c72030 100644 (file)
@@ -5,6 +5,7 @@ Text in both of the green boxes should stay visible.
 Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua.
 Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua.
 (GraphicsLayer
+  (anchor 0.00 0.00)
   (bounds 800.00 600.00)
   (visible rect 0.00, 0.00 800.00 x 600.00)
   (contentsScale 1.00)
index f7e958f..f880702 100644 (file)
@@ -1,6 +1,7 @@
 From https://bugs.webkit.org/show_bug.cgi?id=44629. The parent is a tiled layer. When the child is a non-tiled layer and it is switched to a tiled layer, a crash occurs. This test should not crash.
 
 (GraphicsLayer
+  (anchor 0.00 0.00)
   (bounds 785.00 5111.00)
   (children 1
     (GraphicsLayer
index b392c3c..187523a 100644 (file)
@@ -2,6 +2,7 @@ The yellow box should be large enough to scroll off the bottom. At the start the
 
 First (no children):
 (GraphicsLayer
+  (anchor 0.00 0.00)
   (bounds 785.00 5129.00)
   (children 1
     (GraphicsLayer
@@ -23,6 +24,7 @@ First (no children):
 
 Second (child added):
 (GraphicsLayer
+  (anchor 0.00 0.00)
   (bounds 785.00 5129.00)
   (children 1
     (GraphicsLayer
@@ -51,6 +53,7 @@ Second (child added):
 
 Third (child removed):
 (GraphicsLayer
+  (anchor 0.00 0.00)
   (bounds 785.00 5129.00)
   (children 1
     (GraphicsLayer
index 6032edb..1e50cf8 100644 (file)
@@ -2,6 +2,7 @@ The yellow box should be large enough to scroll off the bottom. There should be
 
 This is some text
 (GraphicsLayer
+  (anchor 0.00 0.00)
   (bounds 785.00 5129.00)
   (children 1
     (GraphicsLayer
index cae2642..0a7895f 100644 (file)
@@ -2,6 +2,7 @@ The yellow box should be 500 x 500 on startup. Then it should stretch to be 500
 
 First (small layer):
 (GraphicsLayer
+  (anchor 0.00 0.00)
   (bounds 785.00 611.00)
   (children 1
     (GraphicsLayer
@@ -34,6 +35,7 @@ First (small layer):
 
 Second (huge layer):
 (GraphicsLayer
+  (anchor 0.00 0.00)
   (bounds 785.00 5111.00)
   (children 1
     (GraphicsLayer
@@ -67,6 +69,7 @@ Second (huge layer):
 
 Third (small layer):
 (GraphicsLayer
+  (anchor 0.00 0.00)
   (bounds 785.00 611.00)
   (children 1
     (GraphicsLayer
index 1237ade..6808629 100644 (file)
@@ -1,4 +1,5 @@
 (GraphicsLayer
+  (anchor 0.00 0.00)
   (bounds 1932.00 4150.00)
   (visible rect 0.00, 0.00 785.00 x 585.00)
   (contentsScale 1.00)
index 5af90a0..1a39c8e 100644 (file)
@@ -1,4 +1,5 @@
 (GraphicsLayer
+  (anchor 0.00 0.00)
   (bounds 800.00 600.00)
   (visible rect 0.00, 0.00 800.00 x 600.00)
   (contentsScale 1.00)
index d75b61e..22a6ea0 100644 (file)
@@ -5,6 +5,7 @@ Some text here.
 Description
 Some text here.
 (GraphicsLayer
+  (anchor 0.00 0.00)
   (bounds 785.00 615.00)
   (visible rect 0.00, 0.00 785.00 x 600.00)
   (contentsScale 1.00)
index 172dfb3..7338ac2 100644 (file)
@@ -1,5 +1,6 @@
 
 (GraphicsLayer
+  (anchor 0.00 0.00)
   (bounds 1508.00 1516.00)
   (visible rect 0.00, 0.00 785.00 x 585.00)
   (contentsScale 1.00)
@@ -23,6 +24,7 @@
               (contentsScale 1.00)
               (children 1
                 (GraphicsLayer
+                  (anchor 0.00 0.00)
                   (bounds 285.00 135.00)
                   (visible rect 0.00, 0.00 285.00 x 135.00)
                   (contentsScale 1.00)
@@ -32,6 +34,7 @@
                       (contentsScale 1.00)
                       (children 1
                         (GraphicsLayer
+                          (anchor 0.00 0.00)
                           (bounds 1508.00 1516.00)
                           (visible rect 0.00, 0.00 285.00 x 135.00)
                           (contentsScale 1.00)
index c08bf1c..5042659 100644 (file)
@@ -1,4 +1,5 @@
 (GraphicsLayer
+  (anchor 0.00 0.00)
   (bounds 1508.00 2008.00)
   (visible rect 25.00, 200.00 785.00 x 585.00)
   (contentsScale 1.00)
index de8aa4b..0e590b0 100644 (file)
@@ -1,3 +1,95 @@
+2014-05-04  Beth Dakin  <bdakin@apple.com>
+
+        Top content inset: Margin tiles should not display in the inset area when pinned 
+        to the top of the page
+        https://bugs.webkit.org/show_bug.cgi?id=132535
+        -and corresponding-
+        <rdar://problem/16613039>
+
+        Reviewed by Simon Fraser.
+
+        Prior to this change, topContentInset was implemented by positioning 
+        RenderLayerCompositor’s m_rootContentLayer based on the inset value. In order to 
+        ensure that no content is displayed in the inset area when we are pinned to the 
+        top of the page, we’ll have to take a different approach. In this patch, when you 
+        are pinned to the top of the page, the m_rootContentLayer is positioned at (0,0), 
+        much like it would be without an inset, but the m_clip layer IS positioned at (0, 
+        topContentInset). Then for all y-scroll values between 0 and topContentInset, the 
+        positions of the clip layer and the contents layer are adjusted so that the clip 
+        layer approaches a position of (0,0), and the root layer approaches a position of 
+        (0, topContentInset). This makes sure that any content above the top the document 
+        is aways clipped out of the inset area.
+
+        In order to achieve this, the scrolling thread needs to know about the 
+        topContentInset, the clip layer, and the root contents layer.
+
+        AsyncScrollingCoordinator::updateScrollingNode() now takes an additional parameter 
+        for the clip layer. Also export the topContentInset symbol for UI-side 
+        compositing.
+        * WebCore.exp.in:
+
+        Here is the new computation. Implemented in one spot that can be called from the 
+        scrolling thread, AsyncScrollingCoordinator and RenderLayerCompositor.
+        * page/FrameView.cpp:
+        (WebCore::FrameView::yPositionForInsetClipLayer):
+        (WebCore::FrameView::yPositionForRootContentLayer):
+        * page/FrameView.h:
+
+        Set the topContentInset, the insetClipLayer, and the scrolledContentsLayer when 
+        appropriate.
+        * page/scrolling/AsyncScrollingCoordinator.cpp:
+        (WebCore::AsyncScrollingCoordinator::frameViewLayoutUpdated):
+        (WebCore::AsyncScrollingCoordinator::frameViewRootLayerDidChange):
+
+        Set or sync the positions for the inset layer and the contents layer.
+        (WebCore::AsyncScrollingCoordinator::updateScrollPositionAfterAsyncScroll):
+        (WebCore::AsyncScrollingCoordinator::updateScrollingNode):
+        * page/scrolling/AsyncScrollingCoordinator.h:
+
+        Convenience functions for getting the clipLayer() and the rootContentLayer() from 
+        the RenderLayerCompositor.
+        * page/scrolling/ScrollingCoordinator.cpp:
+        (WebCore::ScrollingCoordinator::insetClipLayerForFrameView):
+        (WebCore::ScrollingCoordinator::rootContentLayerForFrameView):
+        * page/scrolling/ScrollingCoordinator.h:
+        (WebCore::ScrollingCoordinator::updateScrollingNode):
+
+        ScrollingStateScrolling nodes have two new members now. m_insetClipLayer and 
+        m_topContentInset. We can use m_scrolledContentsLayer for the rootContentsLayer 
+        since previously that member was not used for FrameViews; it was only used for 
+        accelerated overflow:scroll nodes.
+        * page/scrolling/ScrollingStateScrollingNode.cpp:
+        (WebCore::ScrollingStateScrollingNode::ScrollingStateScrollingNode):
+        (WebCore::ScrollingStateScrollingNode::setTopContentInset):
+        (WebCore::ScrollingStateScrollingNode::setInsetClipLayer):
+        * page/scrolling/ScrollingStateScrollingNode.h:
+
+        Similarly, ScrollingTreeScrollingNode has two new members for m_topContentInset 
+        and m_clipLayer.
+        * page/scrolling/ScrollingTreeScrollingNode.cpp:
+        (WebCore::ScrollingTreeScrollingNode::ScrollingTreeScrollingNode):
+        (WebCore::ScrollingTreeScrollingNode::updateBeforeChildren):
+        * page/scrolling/ScrollingTreeScrollingNode.h:
+        (WebCore::ScrollingTreeScrollingNode::topContentInset):
+        * page/scrolling/mac/ScrollingTreeScrollingNodeMac.h:
+        * page/scrolling/mac/ScrollingTreeScrollingNodeMac.mm:
+        (WebCore::ScrollingTreeScrollingNodeMac::updateBeforeChildren):
+
+        Compute positions for the two new layers.
+        (WebCore::ScrollingTreeScrollingNodeMac::setScrollLayerPosition):
+
+        Now use the static FrameView functions to compute the positions for these layers.
+        * rendering/RenderLayerCompositor.cpp:
+        (WebCore::RenderLayerCompositor::frameViewDidChangeSize):
+        (WebCore::RenderLayerCompositor::positionForClipLayer):
+        (WebCore::RenderLayerCompositor::clipLayer):
+        (WebCore::RenderLayerCompositor::rootContentLayer):
+        (WebCore::RenderLayerCompositor::updateRootLayerPosition):
+        (WebCore::RenderLayerCompositor::updateOverflowControlsLayers):
+        (WebCore::RenderLayerCompositor::ensureRootLayer):
+        (WebCore::RenderLayerCompositor::updateScrollCoordinatedLayer):
+        * rendering/RenderLayerCompositor.h:
+
 2014-05-04  Benjamin Poulain  <benjamin@webkit.org>
 
         Clear the Selector Query caches on memory pressure
index 985ad73..7bf606f 100644 (file)
@@ -2783,7 +2783,7 @@ __ZN7WebCore25AsyncScrollingCoordinator14clearStateTreeEv
 __ZN7WebCore25AsyncScrollingCoordinator17attachToStateTreeENS_17ScrollingNodeTypeEyy
 __ZN7WebCore25AsyncScrollingCoordinator18syncChildPositionsERKNS_10LayoutRectE
 __ZN7WebCore25AsyncScrollingCoordinator19detachFromStateTreeEy
-__ZN7WebCore25AsyncScrollingCoordinator19updateScrollingNodeEyPNS_13GraphicsLayerES2_S2_PKNS_20ScrollingCoordinator17ScrollingGeometryE
+__ZN7WebCore25AsyncScrollingCoordinator19updateScrollingNodeEyPNS_13GraphicsLayerES2_S2_S2_PKNS_20ScrollingCoordinator17ScrollingGeometryE
 __ZN7WebCore25AsyncScrollingCoordinator22frameViewLayoutUpdatedEPNS_9FrameViewE
 __ZN7WebCore25AsyncScrollingCoordinator27frameViewRootLayerDidChangeEPNS_9FrameViewE
 __ZN7WebCore25AsyncScrollingCoordinator27requestScrollPositionUpdateEPNS_9FrameViewERKNS_8IntPointE
@@ -2802,6 +2802,7 @@ __ZN7WebCore27ScrollingStateScrollingNode15setHeaderHeightEi
 __ZN7WebCore27ScrollingStateScrollingNode15setScrollOriginERKNS_8IntPointE
 __ZN7WebCore27ScrollingStateScrollingNode15setViewportSizeERKNS_9FloatSizeE
 __ZN7WebCore27ScrollingStateScrollingNode17setScrollPositionERKNS_10FloatPointE
+__ZN7WebCore27ScrollingStateScrollingNode18setTopContentInsetEf
 __ZN7WebCore27ScrollingStateScrollingNode19setFrameScaleFactorEf
 __ZN7WebCore27ScrollingStateScrollingNode20setTotalContentsSizeERKNS_7IntSizeE
 __ZN7WebCore27ScrollingStateScrollingNode24setCounterScrollingLayerERKNS_19LayerRepresentationE
index 2c59325..a44d769 100644 (file)
@@ -1603,6 +1603,34 @@ LayoutSize FrameView::scrollOffsetForFixedPosition() const
     ScrollBehaviorForFixedElements behaviorForFixed = scrollBehaviorForFixedElements();
     return scrollOffsetForFixedPosition(visibleContentRect, totalContentsSize, scrollPosition, scrollOrigin, frameScaleFactor, fixedElementsLayoutRelativeToFrame(), behaviorForFixed, headerHeight(), footerHeight());
 }
+
+float FrameView::yPositionForInsetClipLayer(const FloatPoint& scrollPosition, float topContentInset)
+{
+    if (!topContentInset)
+        return 0;
+
+    // The insetClipLayer should not move for negative scroll values.
+    float scrollY = std::max<float>(0, scrollPosition.y());
+
+    if (scrollY >= topContentInset)
+        return 0;
+
+    return topContentInset - scrollY;
+}
+
+float FrameView::yPositionForRootContentLayer(const FloatPoint& scrollPosition, float topContentInset)
+{
+    if (!topContentInset)
+        return 0;
+
+    // The rootContentLayer should not move for negative scroll values.
+    float scrollY = std::max<float>(0, scrollPosition.y());
+
+    if (scrollY >= topContentInset)
+        return topContentInset;
+
+    return scrollY;
+}
     
 #if PLATFORM(IOS)
 LayoutRect FrameView::rectForViewportConstrainedObjects(const LayoutRect& visibleContentRect, const LayoutSize& totalContentsSize, float frameScaleFactor, bool fixedElementsLayoutRelativeToFrame, ScrollBehaviorForFixedElements scrollBehavior)
index b7856ec..bb034c5 100644 (file)
@@ -272,7 +272,12 @@ public:
     LayoutSize scrollOffsetForFixedPosition() const;
     // Static function can be called from another thread.
     static LayoutSize scrollOffsetForFixedPosition(const LayoutRect& visibleContentRect, const LayoutSize& totalContentsSize, const LayoutPoint& scrollPosition, const LayoutPoint& scrollOrigin, float frameScaleFactor, bool fixedElementsLayoutRelativeToFrame, ScrollBehaviorForFixedElements, int headerHeight, int footerHeight);
-    
+
+    // These layers are positioned differently when there is a topContentInset. These value need to be computed
+    // on both the main thread and the scrolling thread.
+    static float yPositionForInsetClipLayer(const FloatPoint& scrollPosition, float topContentInset);
+    static float yPositionForRootContentLayer(const FloatPoint& scrollPosition, float topContentInset);
+
 #if PLATFORM(IOS)
     LayoutRect viewportConstrainedObjectsRect() const;
     // Static function can be called from another thread.
index fc4964c..b0c3cb5 100644 (file)
@@ -87,6 +87,7 @@ void AsyncScrollingCoordinator::frameViewLayoutUpdated(FrameView* frameView)
     node->setFrameScaleFactor(frameView->frame().frameScaleFactor());
     node->setHeaderHeight(frameView->headerHeight());
     node->setFooterHeight(frameView->footerHeight());
+    node->setTopContentInset(frameView->topContentInset());
 
     node->setScrollOrigin(frameView->scrollOrigin());
     node->setViewportSize(frameView->visibleContentRect().size());
@@ -128,6 +129,7 @@ void AsyncScrollingCoordinator::frameViewRootLayerDidChange(FrameView* frameView
     ScrollingStateScrollingNode* node = toScrollingStateScrollingNode(m_scrollingStateTree->stateNodeForID(frameView->scrollLayerID()));
     node->setLayer(scrollLayerForFrameView(frameView));
     node->setCounterScrollingLayer(counterScrollingLayerForFrameView(frameView));
+    node->setInsetClipLayer(insetClipLayerForFrameView(frameView));
     node->setHeaderLayer(headerLayerForFrameView(frameView));
     node->setFooterLayer(footerLayerForFrameView(frameView));
     node->setScrollBehaviorForFixedElements(frameView->scrollBehaviorForFixedElements());
@@ -207,14 +209,25 @@ void AsyncScrollingCoordinator::updateScrollPositionAfterAsyncScroll(ScrollingNo
 
         if (GraphicsLayer* scrollLayer = scrollLayerForFrameView(frameView)) {
             GraphicsLayer* counterScrollingLayer = counterScrollingLayerForFrameView(frameView);
+            GraphicsLayer* insetClipLayer = insetClipLayerForFrameView(frameView);
+            GraphicsLayer* scrolledContentsLayer = rootContentLayerForFrameView(frameView);
             GraphicsLayer* headerLayer = headerLayerForFrameView(frameView);
             GraphicsLayer* footerLayer = footerLayerForFrameView(frameView);
             LayoutSize scrollOffsetForFixed = frameView->scrollOffsetForFixedPosition();
 
+            float topContentInset = frameView->topContentInset();
+            FloatPoint positionForInsetClipLayer = FloatPoint(0, FrameView::yPositionForInsetClipLayer(scrollPosition, topContentInset));
+            FloatPoint positionForContentsLayer = FloatPoint(scrolledContentsLayer->position().x(),
+                FrameView::yPositionForRootContentLayer(scrollPosition, topContentInset));
+
             if (programmaticScroll || scrollingLayerPositionAction == SetScrollingLayerPosition) {
                 scrollLayer->setPosition(-frameView->scrollPosition());
                 if (counterScrollingLayer)
                     counterScrollingLayer->setPosition(toLayoutPoint(scrollOffsetForFixed));
+                if (insetClipLayer)
+                    insetClipLayer->setPosition(positionForInsetClipLayer);
+                if (scrolledContentsLayer)
+                    scrolledContentsLayer->setPosition(positionForContentsLayer);
                 if (headerLayer)
                     headerLayer->setPosition(FloatPoint(scrollOffsetForFixed.width(), 0));
                 if (footerLayer)
@@ -223,6 +236,10 @@ void AsyncScrollingCoordinator::updateScrollPositionAfterAsyncScroll(ScrollingNo
                 scrollLayer->syncPosition(-frameView->scrollPosition());
                 if (counterScrollingLayer)
                     counterScrollingLayer->syncPosition(toLayoutPoint(scrollOffsetForFixed));
+                if (insetClipLayer)
+                    insetClipLayer->syncPosition(positionForInsetClipLayer);
+                if (scrolledContentsLayer)
+                    scrolledContentsLayer->syncPosition(positionForContentsLayer);
                 if (headerLayer)
                     headerLayer->syncPosition(FloatPoint(scrollOffsetForFixed.width(), 0));
                 if (footerLayer)
@@ -293,7 +310,7 @@ void AsyncScrollingCoordinator::ensureRootStateNodeForFrameView(FrameView* frame
     attachToStateTree(FrameScrollingNode, frameView->scrollLayerID(), 0);
 }
 
-void AsyncScrollingCoordinator::updateScrollingNode(ScrollingNodeID nodeID, GraphicsLayer* layer, GraphicsLayer* scrolledContentsLayer, GraphicsLayer* counterScrollingLayer, const ScrollingGeometry* scrollingGeometry)
+void AsyncScrollingCoordinator::updateScrollingNode(ScrollingNodeID nodeID, GraphicsLayer* layer, GraphicsLayer* scrolledContentsLayer, GraphicsLayer* counterScrollingLayer, GraphicsLayer* insetClipLayer, const ScrollingGeometry* scrollingGeometry)
 {
     ScrollingStateScrollingNode* node = toScrollingStateScrollingNode(m_scrollingStateTree->stateNodeForID(nodeID));
     ASSERT(node);
@@ -302,6 +319,7 @@ void AsyncScrollingCoordinator::updateScrollingNode(ScrollingNodeID nodeID, Grap
 
     node->setLayer(layer);
     node->setScrolledContentsLayer(scrolledContentsLayer);
+    node->setInsetClipLayer(insetClipLayer);
     node->setCounterScrollingLayer(counterScrollingLayer);
 
     if (scrollingGeometry) {
index bd000d7..48cf099 100644 (file)
@@ -87,7 +87,7 @@ private:
     virtual void clearStateTree() override;
 
     virtual void updateViewportConstrainedNode(ScrollingNodeID, const ViewportConstraints&, GraphicsLayer*) override;
-    virtual void updateScrollingNode(ScrollingNodeID, GraphicsLayer*, GraphicsLayer* scrolledContentsLayer, GraphicsLayer* counterScrollingLayer, const ScrollingGeometry* = nullptr) override;
+    virtual void updateScrollingNode(ScrollingNodeID, GraphicsLayer*, GraphicsLayer* scrolledContentsLayer, GraphicsLayer* counterScrollingLayer, GraphicsLayer* insetClipLayer, const ScrollingGeometry* = nullptr) override;
     virtual String scrollingStateTreeAsText() const override;
     virtual bool isRubberBandInProgress() const override;
     virtual void setScrollPinningBehavior(ScrollPinningBehavior) override;
index a2f7fd6..e1c98a7 100644 (file)
@@ -248,6 +248,20 @@ GraphicsLayer* ScrollingCoordinator::counterScrollingLayerForFrameView(FrameView
     return 0;
 }
 
+GraphicsLayer* ScrollingCoordinator::insetClipLayerForFrameView(FrameView* frameView)
+{
+    if (RenderView* renderView = frameView->frame().contentRenderer())
+        return renderView->compositor().clipLayer();
+    return 0;
+}
+
+GraphicsLayer* ScrollingCoordinator::rootContentLayerForFrameView(FrameView* frameView)
+{
+    if (RenderView* renderView = frameView->frame().contentRenderer())
+        return renderView->compositor().rootContentLayer();
+    return 0;
+}
+
 void ScrollingCoordinator::frameViewRootLayerDidChange(FrameView* frameView)
 {
     ASSERT(isMainThread());