Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: 923ed5177ec09a0a5a1e5d9c8a3f40e5cb1c1a9f
      
https://github.com/WebKit/WebKit/commit/923ed5177ec09a0a5a1e5d9c8a3f40e5cb1c1a9f
  Author: Matt Woodrow <[email protected]>
  Date:   2023-11-13 (Mon, 13 Nov 2023)

  Changed paths:
    M Source/WebKit/UIProcess/RemoteLayerTree/RemoteLayerTreeDrawingAreaProxy.mm

  Log Message:
  -----------
  hideContentUntilPendingUpdate callbacks can be processed too late after the 
transaction and cause flickering.
https://bugs.webkit.org/show_bug.cgi?id=264531
<rdar://118083889>

Reviewed by Tim Horton.

The callbacks for DispatchAfterEnsuringDrawing get processed at the end of the 
transaction, after we've already told
the client that we've committed the transaction. In some cases, this can cause 
them to be included as a separate CA
commit, and cause flickering.

This adds a pre-transaction check for a callback for 
hideContentUntilPendingUpdate, and clears the reply id, so that we
re-attach the root layer as part of the main commit.

* Source/WebKit/UIProcess/RemoteLayerTree/RemoteLayerTreeDrawingAreaProxy.mm:
(WebKit::RemoteLayerTreeDrawingAreaProxy::commitLayerTreeTransaction):
(WebKit::RemoteLayerTreeDrawingAreaProxy::hideContentUntilPendingUpdate):

Canonical link: https://commits.webkit.org/270672@main


_______________________________________________
webkit-changes mailing list
[email protected]
https://lists.webkit.org/mailman/listinfo/webkit-changes

Reply via email to