Title: [122681] trunk/Source/WebCore
Revision
122681
Author
[email protected]
Date
2012-07-15 13:15:10 -0700 (Sun, 15 Jul 2012)

Log Message

<rdar://problem/11875795> REGRESSION (tiled drawing): Page’s scroll bars flash with each character you type in a textarea (affects Wikipedia and YouTube)
https://bugs.webkit.org/show_bug.cgi?id=91348

Reviewed by Anders Carlsson.

* platform/ScrollableArea.cpp:
(WebCore::ScrollableArea::scrollPositionChanged): Added an early return if the scroll position
did not, in fact, change. This avoids the call to ScrollAnimator::notifyContentAreaScrolled,
which is what causes the scroll bars to flash.

Modified Paths

Diff

Modified: trunk/Source/WebCore/ChangeLog (122680 => 122681)


--- trunk/Source/WebCore/ChangeLog	2012-07-15 15:40:53 UTC (rev 122680)
+++ trunk/Source/WebCore/ChangeLog	2012-07-15 20:15:10 UTC (rev 122681)
@@ -1,3 +1,15 @@
+2012-07-15  Dan Bernstein  <[email protected]>
+
+        <rdar://problem/11875795> REGRESSION (tiled drawing): Page’s scroll bars flash with each character you type in a textarea (affects Wikipedia and YouTube)
+        https://bugs.webkit.org/show_bug.cgi?id=91348
+
+        Reviewed by Anders Carlsson.
+
+        * platform/ScrollableArea.cpp:
+        (WebCore::ScrollableArea::scrollPositionChanged): Added an early return if the scroll position
+        did not, in fact, change. This avoids the call to ScrollAnimator::notifyContentAreaScrolled,
+        which is what causes the scroll bars to flash.
+
 2012-07-14  Eric Carlson  <[email protected]>
 
         Enable AVCF hardware video decoding

Modified: trunk/Source/WebCore/platform/ScrollableArea.cpp (122680 => 122681)


--- trunk/Source/WebCore/platform/ScrollableArea.cpp	2012-07-15 15:40:53 UTC (rev 122680)
+++ trunk/Source/WebCore/platform/ScrollableArea.cpp	2012-07-15 20:15:10 UTC (rev 122681)
@@ -142,9 +142,13 @@
 
 void ScrollableArea::scrollPositionChanged(const IntPoint& position)
 {
+    IntPoint oldPosition = scrollPosition();
     // Tell the derived class to scroll its contents.
     setScrollOffset(position);
 
+    if (scrollPosition() == oldPosition)
+        return;
+
     Scrollbar* verticalScrollbar = this->verticalScrollbar();
 
     // Tell the scrollbars to update their thumb postions.
_______________________________________________
webkit-changes mailing list
[email protected]
http://lists.webkit.org/mailman/listinfo/webkit-changes

Reply via email to