Title: [109265] trunk/Source/WebCore
Revision
109265
Author
[email protected]
Date
2012-02-29 14:43:05 -0800 (Wed, 29 Feb 2012)

Log Message

[Chromium] Some Layout Tests in platform/chromium/rubberbanding and platform/chromium/compositing/rubberbanding are failing
https://bugs.webkit.org/show_bug.cgi?id=79878

Reviewed by James Robinson.

Make sure that ScrollableArea::setScrollOffsetFromAnimation doesn't end up
setting the ScrollAnimator's current scroll position by making a new function, scrollPositionChanged,
that both notifyScrollPositionChanged and setScrollOffsetFromAnimation call and move the call to update
the position to notifyScrollPositionChanged.

* platform/ScrollableArea.cpp:
(WebCore::ScrollableArea::notifyScrollPositionChanged):
(WebCore):
(WebCore::ScrollableArea::scrollPositionChanged):
(WebCore::ScrollableArea::setScrollOffsetFromAnimation):
* platform/ScrollableArea.h:
(ScrollableArea):

Modified Paths

Diff

Modified: trunk/Source/WebCore/ChangeLog (109264 => 109265)


--- trunk/Source/WebCore/ChangeLog	2012-02-29 22:40:32 UTC (rev 109264)
+++ trunk/Source/WebCore/ChangeLog	2012-02-29 22:43:05 UTC (rev 109265)
@@ -1,3 +1,23 @@
+2012-02-29  Anders Carlsson  <[email protected]>
+
+        [Chromium] Some Layout Tests in platform/chromium/rubberbanding and platform/chromium/compositing/rubberbanding are failing
+        https://bugs.webkit.org/show_bug.cgi?id=79878
+
+        Reviewed by James Robinson.
+
+        Make sure that ScrollableArea::setScrollOffsetFromAnimation doesn't end up
+        setting the ScrollAnimator's current scroll position by making a new function, scrollPositionChanged,
+        that both notifyScrollPositionChanged and setScrollOffsetFromAnimation call and move the call to update
+        the position to notifyScrollPositionChanged.
+
+        * platform/ScrollableArea.cpp:
+        (WebCore::ScrollableArea::notifyScrollPositionChanged):
+        (WebCore):
+        (WebCore::ScrollableArea::scrollPositionChanged):
+        (WebCore::ScrollableArea::setScrollOffsetFromAnimation):
+        * platform/ScrollableArea.h:
+        (ScrollableArea):
+
 2012-02-29  Dana Jansens  <[email protected]>
 
         [chromium] Don't let invalidation for next frame prevent tile upload

Modified: trunk/Source/WebCore/platform/ScrollableArea.cpp (109264 => 109265)


--- trunk/Source/WebCore/platform/ScrollableArea.cpp	2012-02-29 22:40:32 UTC (rev 109264)
+++ trunk/Source/WebCore/platform/ScrollableArea.cpp	2012-02-29 22:43:05 UTC (rev 109265)
@@ -124,6 +124,12 @@
 
 void ScrollableArea::notifyScrollPositionChanged(const IntPoint& position)
 {
+    scrollPositionChanged(position);
+    scrollAnimator()->setCurrentPosition(position);
+}
+
+void ScrollableArea::scrollPositionChanged(const IntPoint& position)
+{
     // Tell the derived class to scroll its contents.
     setScrollOffset(position);
 
@@ -150,7 +156,6 @@
             verticalScrollbar->invalidate();
     }
 
-    scrollAnimator()->setCurrentPosition(position);
     scrollAnimator()->notifyContentAreaScrolled();
 }
 
@@ -170,7 +175,7 @@
     if (requestScrollPositionUpdate(offset))
         return;
 
-    notifyScrollPositionChanged(offset);
+    scrollPositionChanged(offset);
 }
 
 void ScrollableArea::willStartLiveResize()

Modified: trunk/Source/WebCore/platform/ScrollableArea.h (109264 => 109265)


--- trunk/Source/WebCore/platform/ScrollableArea.h	2012-02-29 22:40:32 UTC (rev 109264)
+++ trunk/Source/WebCore/platform/ScrollableArea.h	2012-02-29 22:43:05 UTC (rev 109265)
@@ -179,6 +179,8 @@
     bool hasLayerForScrollCorner() const;
 
 private:
+    void scrollPositionChanged(const IntPoint&);
+    
     // NOTE: Only called from the ScrollAnimator.
     friend class ScrollAnimator;
     void setScrollOffsetFromAnimation(const IntPoint&);
_______________________________________________
webkit-changes mailing list
[email protected]
http://lists.webkit.org/mailman/listinfo.cgi/webkit-changes

Reply via email to