Title: [111180] trunk/Source/WebKit/blackberry
Revision
111180
Author
[email protected]
Date
2012-03-19 07:45:28 -0700 (Mon, 19 Mar 2012)

Log Message

[BlackBerry] Remove obsolete optimization in WebPageCompositorPrivate
https://bugs.webkit.org/show_bug.cgi?id=81115

Patch by Arvid Nilsson <[email protected]> on 2012-03-19
Reviewed by Benjamin Poulain.

The compositor tried to avoid rendering the same stuff twice, using a
mechanism that didn't work properly and has been redundant since we
introduced deferred blits. Remove this code.

Reviewed internally by Robin Cao.

* Api/WebPageCompositor.cpp:
(BlackBerry::WebKit::WebPageCompositorPrivate::WebPageCompositorPrivate):
(BlackBerry::WebKit::WebPageCompositorPrivate::commit):
(BlackBerry::WebKit::WebPageCompositorPrivate::drawLayers):
* Api/WebPageCompositor_p.h:

Modified Paths

Diff

Modified: trunk/Source/WebKit/blackberry/Api/WebPageCompositor.cpp (111179 => 111180)


--- trunk/Source/WebKit/blackberry/Api/WebPageCompositor.cpp	2012-03-19 14:42:42 UTC (rev 111179)
+++ trunk/Source/WebKit/blackberry/Api/WebPageCompositor.cpp	2012-03-19 14:45:28 UTC (rev 111180)
@@ -40,8 +40,6 @@
     : m_webPage(page)
     , m_context(GLES2Context::create(page))
     , m_layerRenderer(LayerRenderer::create(m_context.get()))
-    , m_generation(0)
-    , m_compositedGeneration(-1)
     , m_backingStoreUsesOpenGL(false)
     , m_animationTimer(this, &WebPageCompositorPrivate::animationTimerFired)
     , m_timerClient(new Platform::GenericTimerClient(Platform::userInterfaceThreadTimerClient()))
@@ -78,25 +76,14 @@
         return;
 
     rootLayer->commitOnCompositingThread();
-    ++m_generation;
 }
 
 bool WebPageCompositorPrivate::drawLayers(const IntRect& dstRect, const FloatRect& contents)
 {
-    // Save a draw if we already drew this generation, for example due to a concurrent scroll operation.
-    if (m_compositedGeneration == m_generation && dstRect == m_compositedDstRect
-        && contents == m_compositedContentsRect && !m_backingStoreUsesOpenGL)
-        return false;
-
     m_layerRenderer->drawLayers(contents, m_layoutRectForCompositing, m_contentsSizeForCompositing, dstRect);
     m_lastCompositingResults = m_layerRenderer->lastRenderingResults();
 
-    m_compositedDstRect = dstRect;
-    m_compositedContentsRect = contents;
-    m_compositedGeneration = m_generation;
-
     if (m_lastCompositingResults.needsAnimationFrame) {
-        ++m_generation; // The animation update moves us along one generation.
         // Using a timeout of 0 actually won't start a timer, it will send a message.
         m_animationTimer.start(1.0 / 60.0);
         m_webPage->updateDelegatedOverlays();

Modified: trunk/Source/WebKit/blackberry/Api/WebPageCompositor_p.h (111179 => 111180)


--- trunk/Source/WebKit/blackberry/Api/WebPageCompositor_p.h	2012-03-19 14:42:42 UTC (rev 111179)
+++ trunk/Source/WebKit/blackberry/Api/WebPageCompositor_p.h	2012-03-19 14:45:28 UTC (rev 111180)
@@ -76,10 +76,6 @@
     WebCore::IntRect m_layoutRectForCompositing;
     WebCore::IntSize m_contentsSizeForCompositing;
     WebCore::LayerRenderingResults m_lastCompositingResults;
-    int m_generation;
-    int m_compositedGeneration;
-    WebCore::IntRect m_compositedDstRect;
-    WebCore::FloatRect m_compositedContentsRect;
     bool m_backingStoreUsesOpenGL;
     BlackBerry::Platform::Timer<WebPageCompositorPrivate> m_animationTimer;
     BlackBerry::Platform::TimerClient* m_timerClient;

Modified: trunk/Source/WebKit/blackberry/ChangeLog (111179 => 111180)


--- trunk/Source/WebKit/blackberry/ChangeLog	2012-03-19 14:42:42 UTC (rev 111179)
+++ trunk/Source/WebKit/blackberry/ChangeLog	2012-03-19 14:45:28 UTC (rev 111180)
@@ -1,3 +1,22 @@
+2012-03-19  Arvid Nilsson  <[email protected]>
+
+        [BlackBerry] Remove obsolete optimization in WebPageCompositorPrivate
+        https://bugs.webkit.org/show_bug.cgi?id=81115
+
+        Reviewed by Benjamin Poulain.
+
+        The compositor tried to avoid rendering the same stuff twice, using a
+        mechanism that didn't work properly and has been redundant since we
+        introduced deferred blits. Remove this code.
+
+        Reviewed internally by Robin Cao.
+
+        * Api/WebPageCompositor.cpp:
+        (BlackBerry::WebKit::WebPageCompositorPrivate::WebPageCompositorPrivate):
+        (BlackBerry::WebKit::WebPageCompositorPrivate::commit):
+        (BlackBerry::WebKit::WebPageCompositorPrivate::drawLayers):
+        * Api/WebPageCompositor_p.h:
+
 2012-03-17  Charles Wei  <[email protected]>
 
         [BlackBerry] Enable Web Timing for performance profiling and improvement.
_______________________________________________
webkit-changes mailing list
[email protected]
http://lists.webkit.org/mailman/listinfo.cgi/webkit-changes

Reply via email to