Title: [234420] releases/WebKitGTK/webkit-2.20/Source/WebKit
Revision
234420
Author
[email protected]
Date
2018-07-31 02:25:28 -0700 (Tue, 31 Jul 2018)

Log Message

Merge r233353 - [WPE] Some frames are dropped when using rAF to animate an element
https://bugs.webkit.org/show_bug.cgi?id=187175

Always call renderNextFrame in ThreadedCompositor::requestDisplayRefreshMonitorUpdate()
so we have to process any pending layer flush request.

Reviewed by Žan Doberšek.

* Shared/CoordinatedGraphics/threadedcompositor/ThreadedCompositor.cpp:
(WebKit::ThreadedCompositor::handleDisplayRefreshMonitorUpdate):

Modified Paths

Diff

Modified: releases/WebKitGTK/webkit-2.20/Source/WebKit/ChangeLog (234419 => 234420)


--- releases/WebKitGTK/webkit-2.20/Source/WebKit/ChangeLog	2018-07-31 09:25:24 UTC (rev 234419)
+++ releases/WebKitGTK/webkit-2.20/Source/WebKit/ChangeLog	2018-07-31 09:25:28 UTC (rev 234420)
@@ -1,3 +1,16 @@
+2018-06-29  Miguel Gomez  <[email protected]>
+
+        [WPE] Some frames are dropped when using rAF to animate an element
+        https://bugs.webkit.org/show_bug.cgi?id=187175
+
+        Always call renderNextFrame in ThreadedCompositor::requestDisplayRefreshMonitorUpdate()
+        so we have to process any pending layer flush request.
+
+        Reviewed by Žan Doberšek.
+
+        * Shared/CoordinatedGraphics/threadedcompositor/ThreadedCompositor.cpp:
+        (WebKit::ThreadedCompositor::handleDisplayRefreshMonitorUpdate):
+
 2018-06-26  Miguel Gomez  <[email protected]>
 
         [GTK] Many webpages can crash the browser in WebCore::CoordinatedGraphicsLayer::transformedVisibleRect

Modified: releases/WebKitGTK/webkit-2.20/Source/WebKit/Shared/CoordinatedGraphics/threadedcompositor/ThreadedCompositor.cpp (234419 => 234420)


--- releases/WebKitGTK/webkit-2.20/Source/WebKit/Shared/CoordinatedGraphics/threadedcompositor/ThreadedCompositor.cpp	2018-07-31 09:25:24 UTC (rev 234419)
+++ releases/WebKitGTK/webkit-2.20/Source/WebKit/Shared/CoordinatedGraphics/threadedcompositor/ThreadedCompositor.cpp	2018-07-31 09:25:28 UTC (rev 234420)
@@ -339,21 +339,18 @@
 
 void ThreadedCompositor::handleDisplayRefreshMonitorUpdate(bool hasBeenRescheduled)
 {
-    // Retrieve the clientRendersNextFrame and coordinateUpdateCompletionWithClient.
-    bool clientRendersNextFrame { false };
+    // Retrieve coordinateUpdateCompletionWithClient.
     bool coordinateUpdateCompletionWithClient { false };
     {
         LockHolder locker(m_attributes.lock);
-        clientRendersNextFrame = std::exchange(m_attributes.clientRendersNextFrame, false);
         coordinateUpdateCompletionWithClient = std::exchange(m_attributes.coordinateUpdateCompletionWithClient, false);
     }
 
-    // If clientRendersNextFrame is true, the client is finally notified about the scene update nearing
-    // completion. The client will use this opportunity to clean up resources as appropriate. It can also
-    // perform any layer flush that was requested during the composition, or by any DisplayRefreshMonitor
-    // notifications that have been handled at this point.
-    if (clientRendersNextFrame)
-        m_client.renderNextFrame();
+    // The client is finally notified about the scene update nearing completion. The client will use this
+    // opportunity to clean up resources as appropriate. It can also perform any layer flush that was
+    // requested during the composition, or by any DisplayRefreshMonitor notifications that have been
+    // handled at this point.
+    m_client.renderNextFrame();
 
     LockHolder stateLocker(m_compositingRunLoop->stateLock());
 
_______________________________________________
webkit-changes mailing list
[email protected]
https://lists.webkit.org/mailman/listinfo/webkit-changes

Reply via email to