[BlackBerry] Remove unneeded force-immediate-repaint from InRegionScroller::setLayerS...
authortonikitoo@webkit.org <tonikitoo@webkit.org@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Thu, 30 Aug 2012 17:47:31 +0000 (17:47 +0000)
committertonikitoo@webkit.org <tonikitoo@webkit.org@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Thu, 30 Aug 2012 17:47:31 +0000 (17:47 +0000)
https://bugs.webkit.org/show_bug.cgi?id=95476
PR #200704

Reviewed by Yong Li.
Patch by Antonio Gomes <agomes@rim.com>

This code is not needed at this point for neither the fast nor slow in-region
scroll codepaths, and it a huge performance beast as it forces all
containers to get full-repainted per scroll call (in webkit thread).

Patch also take this opportunity to remove an early-return we
have in the {i}frame slow scrolling code path so that we can
adjust the selection handles in this case as well.

* Api/InRegionScroller.cpp:
(BlackBerry::WebKit::InRegionScrollerPrivate::setLayerScrollPosition):

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

Source/WebKit/blackberry/Api/InRegionScroller.cpp
Source/WebKit/blackberry/ChangeLog

index 77094e3..d8ad688 100644 (file)
@@ -289,13 +289,11 @@ bool InRegionScrollerPrivate::setLayerScrollPosition(RenderLayer* layer, const I
             backingStoreClient->setIsScrollNotificationSuppressed(false);
         }
 
-        return true;
-    }
+    } else {
 
-    // RenderBox-based elements case (scrollable boxes (div's, p's, textarea's, etc)).
-    layer->scrollToOffset(scrollPosition.x(), scrollPosition.y());
-    // FIXME_agomes: Please recheck if it is needed still!
-    layer->renderer()->repaint(true);
+        // RenderBox-based elements case (scrollable boxes (div's, p's, textarea's, etc)).
+        layer->scrollToOffset(toSize(scrollPosition));
+    }
 
     m_webPage->m_selectionHandler->selectionPositionChanged();
     // FIXME: We have code in place to handle scrolling and clipping tap highlight
index bd10f6a..c3693c0 100644 (file)
@@ -1,3 +1,22 @@
+2012-08-30  Antonio Gomes  <agomes@rim.com>
+
+        [BlackBerry] Remove unneeded force-immediate-repaint from InRegionScroller::setLayerScrollPosition
+        https://bugs.webkit.org/show_bug.cgi?id=95476
+        PR #200704
+
+        Reviewed by Yong Li.
+
+        This code is not needed at this point for neither the fast nor slow in-region
+        scroll codepaths, and it is a huge performance beast as it forces all
+        containers to get full-repainted per scroll call (in webkit thread).
+
+        Patch also take this opportunity to remove an early-return we
+        have in the {i}frame slow scrolling code path so that we can
+        adjust the selection handles in this case as well.
+
+        * Api/InRegionScroller.cpp:
+        (BlackBerry::WebKit::InRegionScrollerPrivate::setLayerScrollPosition):
+
 2012-08-30  Hanna Ma  <Hanma@rim.com>
 
         [BlackBerry] node search does not work with elements on touch start listener