[webkit-changes] [WebKit/WebKit] 0c64ef: Async scrolling on Mac creates implicit CA transac...
mattwoodrow
noreply at github.com
Tue Apr 25 21:20:11 PDT 2023
Branch: refs/heads/main
Home: https://github.com/WebKit/WebKit
Commit: 0c64efa347b930a2ae3dbeea7d0ad20373c1bf61
https://github.com/WebKit/WebKit/commit/0c64efa347b930a2ae3dbeea7d0ad20373c1bf61
Author: Matt Woodrow <mattwoodrow at 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
More information about the webkit-changes
mailing list