Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: 0c64efa347b930a2ae3dbeea7d0ad20373c1bf61
      
https://github.com/WebKit/WebKit/commit/0c64efa347b930a2ae3dbeea7d0ad20373c1bf61
  Author: Matt Woodrow <mattwood...@apple.com>
  Date:   2023-04-25 (Tue, 25 Apr 2023)

  Changed paths:
    M Source/WebKit/UIProcess/RemoteLayerTree/RemoteScrollingTree.cpp
    M Source/WebKit/UIProcess/RemoteLayerTree/RemoteScrollingTree.h
    M 
Source/WebKit/UIProcess/RemoteLayerTree/mac/RemoteLayerTreeEventDispatcher.cpp
    M Source/WebKit/UIProcess/RemoteLayerTree/mac/RemoteScrollingTreeMac.h
    M Source/WebKit/UIProcess/RemoteLayerTree/mac/RemoteScrollingTreeMac.mm

  Log Message:
  -----------
  Async scrolling on Mac creates implicit CA transactions.
https://bugs.webkit.org/show_bug.cgi?id=255960
<rdar://108174791>

Reviewed by Simon Fraser.

RemoteScrollingTreeMac can mutate the layer tree on the scrolling thread, which 
creates implicit CA transactions. Some clients aren't expecting this, so we 
should instead create explicit transactions when needed.

* Source/WebKit/UIProcess/RemoteLayerTree/RemoteScrollingTree.cpp:
(WebKit::RemoteScrollingTree::tryToApplyLayerPositions):
* Source/WebKit/UIProcess/RemoteLayerTree/RemoteScrollingTree.h:
(WebKit::RemoteScrollingTree::beginTransactionOnScrollingThread):
(WebKit::RemoteScrollingTree::commitTransactionOnScrollingThread):
(WebKit::RemoteScrollingTreeTransactionHolder::RemoteScrollingTreeTransactionHolder):
(WebKit::RemoteScrollingTreeTransactionHolder::~RemoteScrollingTreeTransactionHolder):
* 
Source/WebKit/UIProcess/RemoteLayerTree/mac/RemoteLayerTreeEventDispatcher.cpp:
(WebKit::RemoteLayerTreeEventDispatcher::scrollingThreadHandleWheelEvent):
* Source/WebKit/UIProcess/RemoteLayerTree/mac/RemoteScrollingTreeMac.h:
* Source/WebKit/UIProcess/RemoteLayerTree/mac/RemoteScrollingTreeMac.mm:
(WebKit::RemoteScrollingTreeMac::beginTransactionOnScrollingThread):
(WebKit::RemoteScrollingTreeMac::commitTransactionOnScrollingThread):

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


_______________________________________________
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes

Reply via email to