Inspector highlights are offset when the WKView has a header
authorbdakin@apple.com <bdakin@apple.com@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Wed, 10 Apr 2013 23:25:53 +0000 (23:25 +0000)
committerbdakin@apple.com <bdakin@apple.com@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Wed, 10 Apr 2013 23:25:53 +0000 (23:25 +0000)
https://bugs.webkit.org/show_bug.cgi?id=114389
-and corresponding-
<rdar://problem/13522434>

Reviewed by Sam Weinig.

rootViewToContents() and contentsToRootView() need to factor in the
headerHeight(), much like windowToContents() and contentsToWindow() do already.
* platform/ScrollView.cpp:
(WebCore::ScrollView::rootViewToContents):
(WebCore::ScrollView::contentsToRootView):

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

Source/WebCore/ChangeLog
Source/WebCore/platform/ScrollView.cpp

index 7312059..c8a1463 100644 (file)
@@ -1,3 +1,18 @@
+2013-04-10  Beth Dakin  <bdakin@apple.com>
+
+        Inspector highlights are offset when the WKView has a header
+        https://bugs.webkit.org/show_bug.cgi?id=114389
+        -and corresponding-
+        <rdar://problem/13522434>
+
+        Reviewed by Sam Weinig.
+
+        rootViewToContents() and contentsToRootView() need to factor in the 
+        headerHeight(), much like windowToContents() and contentsToWindow() do already. 
+        * platform/ScrollView.cpp:
+        (WebCore::ScrollView::rootViewToContents):
+        (WebCore::ScrollView::contentsToRootView):
+
 2013-04-10  Simon Fraser  <simon.fraser@apple.com>
 
         Flesh out the Animations logging
index 0a028a8..fd8c782 100644 (file)
@@ -713,26 +713,26 @@ void ScrollView::scrollContentsSlowPath(const IntRect& updateRect)
 IntPoint ScrollView::rootViewToContents(const IntPoint& rootViewPoint) const
 {
     IntPoint viewPoint = convertFromRootView(rootViewPoint);
-    return viewPoint + scrollOffset();
+    return viewPoint + scrollOffsetRelativeToDocument();
 }
 
 IntPoint ScrollView::contentsToRootView(const IntPoint& contentsPoint) const
 {
-    IntPoint viewPoint = contentsPoint - scrollOffset();
+    IntPoint viewPoint = contentsPoint + IntSize(0, headerHeight()) - scrollOffset();
     return convertToRootView(viewPoint);  
 }
 
 IntRect ScrollView::rootViewToContents(const IntRect& rootViewRect) const
 {
     IntRect viewRect = convertFromRootView(rootViewRect);
-    viewRect.move(scrollOffset());
+    viewRect.move(scrollOffsetRelativeToDocument());
     return viewRect;
 }
 
 IntRect ScrollView::contentsToRootView(const IntRect& contentsRect) const
 {
     IntRect viewRect = contentsRect;
-    viewRect.move(-scrollOffset());
+    viewRect.move(-scrollOffset() + IntSize(0, headerHeight()));
     return convertToRootView(viewRect);
 }