https://bugs.webkit.org/show_bug.cgi?id=100796
authorbdakin@apple.com <bdakin@apple.com@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Wed, 31 Oct 2012 00:18:18 +0000 (00:18 +0000)
committerbdakin@apple.com <bdakin@apple.com@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Wed, 31 Oct 2012 00:18:18 +0000 (00:18 +0000)
commit4d6a7e6b97320915446936542e062d641bb71af0
tree37f537267ea094094e269a81480e7ca06452e6c2
parent7c1a597b14606cd99538c0446746c66c9c0554ac
https://bugs.webkit.org/show_bug.cgi?id=100796
Should add FixedPositionViewportConstraints to ScrollingConstraints.h

Reviewed by Simon Fraser.

ScrollingConstraints.h currently contains an abstract class called
ViewportConstraints that is intended to encapsulate data and logic
required to reposition elements whose layout depends on the viewport
rect (positions fixed and sticky), when scrolling and zooming.
However, at this time there is only a subclass for sticky. We should
add a sub-class for fixed. This is required to get pages with fixed
position elements scrolling on the scrolling thread.

* page/scrolling/ScrollingConstraints.cpp:
(WebCore::FixedPositionViewportConstraints::layerPositionForViewportRect):
(WebCore):
* page/scrolling/ScrollingConstraints.h:
(WebCore::ViewportConstraints::ViewportConstraints):
(ViewportConstraints):
(WebCore::ViewportConstraints::setAnchorEdges):
(FixedPositionViewportConstraints):
(WebCore::FixedPositionViewportConstraints::FixedPositionViewportConstraints):
(WebCore::FixedPositionViewportConstraints::viewportRectAtLastLayout):
(WebCore::FixedPositionViewportConstraints::setViewportRectAtLastLayout):
(WebCore::FixedPositionViewportConstraints::layerPositionAtLastLayout):
(WebCore::FixedPositionViewportConstraints::setLayerPositionAtLastLayout):
(WebCore):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@132968 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Source/WebCore/ChangeLog
Source/WebCore/page/scrolling/ScrollingConstraints.cpp
Source/WebCore/page/scrolling/ScrollingConstraints.h