[webkit-changes] [WebKit/WebKit] 919114: [GTK][WPE] Main thread can't start rendering the n...
Miguel Gómez
noreply at github.com
Mon May 6 04:43:26 PDT 2024
Branch: refs/heads/main
Home: https://github.com/WebKit/WebKit
Commit: 9191148390c27310fbe868ded361a7e7f45fba14
https://github.com/WebKit/WebKit/commit/9191148390c27310fbe868ded361a7e7f45fba14
Author: Miguel Gomez <magomez at igalia.com>
Date: 2024-05-06 (Mon, 06 May 2024)
Changed paths:
M Source/WebKit/Shared/CoordinatedGraphics/threadedcompositor/ThreadedCompositor.cpp
M Source/WebKit/Shared/CoordinatedGraphics/threadedcompositor/ThreadedCompositor.h
M Source/WebKit/WebProcess/WebPage/CoordinatedGraphics/CompositingCoordinator.cpp
M Source/WebKit/WebProcess/WebPage/CoordinatedGraphics/LayerTreeHost.cpp
M Source/WebKit/WebProcess/WebPage/CoordinatedGraphics/LayerTreeHost.h
Log Message:
-----------
[GTK][WPE] Main thread can't start rendering the next frame until the previous one is composited
https://bugs.webkit.org/show_bug.cgi?id=273317
Reviewed by Carlos Garcia Campos.
All the content rendered by the main thread is sent to the compositor thread
using commitSceneState, which adds a requestID parameter. The compositor will
send in the didRenderFrame call the last requestID it processed. This way
the LayerTreeHost can check whether each request was composed to allow
rendering new frames.
* Source/WebKit/Shared/CoordinatedGraphics/threadedcompositor/ThreadedCompositor.cpp:
(WebKit::ThreadedCompositor::renderLayerTree):
(WebKit::ThreadedCompositor::updateSceneState):
* Source/WebKit/Shared/CoordinatedGraphics/threadedcompositor/ThreadedCompositor.h:
* Source/WebKit/WebProcess/WebPage/CoordinatedGraphics/CompositingCoordinator.cpp:
(WebKit::CompositingCoordinator::flushPendingLayerChanges):
* Source/WebKit/WebProcess/WebPage/CoordinatedGraphics/LayerTreeHost.cpp:
(WebKit::LayerTreeHost::commitSceneState):
(WebKit::LayerTreeHost::didRenderFrame):
(WebKit::LayerTreeHost::didRenderFrameTimerFired):
* Source/WebKit/WebProcess/WebPage/CoordinatedGraphics/LayerTreeHost.h:
Canonical link: https://commits.webkit.org/278399@main
To unsubscribe from these emails, change your notification settings at https://github.com/WebKit/WebKit/settings/notifications
More information about the webkit-changes
mailing list