Bug 257004

Summary: RemoteLayerTreeDisplayRefreshMonitor::requestRefreshCallback doesn't clear scheduled state
Product: WebKit Reporter: Matt Woodrow <mattwoodrow>
Component: Layout and RenderingAssignee: Matt Woodrow <mattwoodrow>
Status: RESOLVED FIXED    
Severity: Normal CC: bfulgham, simon.fraser, webkit-bug-importer, zalan
Priority: P2 Keywords: InRadar
Version: WebKit Nightly Build   
Hardware: Unspecified   
OS: Unspecified   

Description Matt Woodrow 2023-05-18 18:45:11 PDT
RemoteLayerTreeDisplayRefreshMonitor::requestRefreshCallback dispatches a task to the main thread and sets scheduled to true.

When that task runs, it triggers the rendering update but doesn't set scheduled back to false.

Normally, the rendering update results in a commit to the UI process, and then we get a RemoteLayerTreeDrawingArea::displayDidRefresh callback, which sets scheduled to false (but also triggers a second rendering update).
Comment 1 Matt Woodrow 2023-05-18 18:45:43 PDT
<rdar://107848069>
Comment 2 Matt Woodrow 2023-05-18 18:50:08 PDT
Pull request: https://github.com/WebKit/WebKit/pull/14052
Comment 3 EWS 2023-05-20 18:40:10 PDT
Committed 264297@main (f0847a50740a): <https://commits.webkit.org/264297@main>

Reviewed commits have been landed. Closing PR #14052 and removing active labels.