Title: [163989] trunk/Source/WebCore
- Revision
- 163989
- Author
- [email protected]
- Date
- 2014-02-12 14:37:20 -0800 (Wed, 12 Feb 2014)
Log Message
WK2: coordinate mapping for frames does not work when the page is scrolled.
https://bugs.webkit.org/show_bug.cgi?id=128690
<rdar://problem/16042925>
Reviewed by Simon Fraser.
We should not apply the scroll offset when using delegate scrolling.
* platform/ScrollView.cpp:
(WebCore::ScrollView::rootViewToContents):
(WebCore::ScrollView::contentsToRootView):
(WebCore::ScrollView::rootViewToTotalContents):
Modified Paths
Diff
Modified: trunk/Source/WebCore/ChangeLog (163988 => 163989)
--- trunk/Source/WebCore/ChangeLog 2014-02-12 22:36:56 UTC (rev 163988)
+++ trunk/Source/WebCore/ChangeLog 2014-02-12 22:37:20 UTC (rev 163989)
@@ -1,3 +1,18 @@
+2014-02-12 Enrica Casucci <[email protected]>
+
+ WK2: coordinate mapping for frames does not work when the page is scrolled.
+ https://bugs.webkit.org/show_bug.cgi?id=128690
+ <rdar://problem/16042925>
+
+ Reviewed by Simon Fraser.
+
+ We should not apply the scroll offset when using delegate scrolling.
+
+ * platform/ScrollView.cpp:
+ (WebCore::ScrollView::rootViewToContents):
+ (WebCore::ScrollView::contentsToRootView):
+ (WebCore::ScrollView::rootViewToTotalContents):
+
2014-02-12 Joseph Pecoraro <[email protected]>
Web Inspector: Rename PageInjectedScript* to WebInjectedScript*
Modified: trunk/Source/WebCore/platform/ScrollView.cpp (163988 => 163989)
--- trunk/Source/WebCore/platform/ScrollView.cpp 2014-02-12 22:36:56 UTC (rev 163988)
+++ trunk/Source/WebCore/platform/ScrollView.cpp 2014-02-12 22:37:20 UTC (rev 163989)
@@ -780,18 +780,27 @@
IntPoint ScrollView::rootViewToContents(const IntPoint& rootViewPoint) const
{
+ if (delegatesScrolling())
+ return convertFromRootView(rootViewPoint);
+
IntPoint viewPoint = convertFromRootView(rootViewPoint);
return viewPoint + scrollOffsetRelativeToDocument();
}
IntPoint ScrollView::contentsToRootView(const IntPoint& contentsPoint) const
{
+ if (delegatesScrolling())
+ return convertToRootView(contentsPoint);
+
IntPoint viewPoint = contentsPoint + IntSize(0, headerHeight()) - scrollOffset();
return convertToRootView(viewPoint);
}
IntRect ScrollView::rootViewToContents(const IntRect& rootViewRect) const
{
+ if (delegatesScrolling())
+ return convertFromRootView(rootViewRect);
+
IntRect viewRect = convertFromRootView(rootViewRect);
viewRect.move(scrollOffsetRelativeToDocument());
return viewRect;
@@ -799,6 +808,9 @@
IntRect ScrollView::contentsToRootView(const IntRect& contentsRect) const
{
+ if (delegatesScrolling())
+ return convertToRootView(contentsRect);
+
IntRect viewRect = contentsRect;
viewRect.move(-scrollOffset() + IntSize(0, headerHeight()));
return convertToRootView(viewRect);
@@ -806,6 +818,9 @@
IntPoint ScrollView::rootViewToTotalContents(const IntPoint& rootViewPoint) const
{
+ if (delegatesScrolling())
+ return convertFromRootView(rootViewPoint);
+
IntPoint viewPoint = convertFromRootView(rootViewPoint);
return viewPoint + scrollOffset();
}
_______________________________________________
webkit-changes mailing list
[email protected]
https://lists.webkit.org/mailman/listinfo/webkit-changes