Branch: refs/heads/main Home: https://github.com/WebKit/WebKit Commit: 1400c1d4ef81d8cb50b247fc742d86921523cc87 https://github.com/WebKit/WebKit/commit/1400c1d4ef81d8cb50b247fc742d86921523cc87 Author: Etienne Segonzac <s...@apple.com> Date: 2024-10-22 (Tue, 22 Oct 2024)
Changed paths: M LayoutTests/platform/visionos/transforms/separated-expected.txt A LayoutTests/platform/visionos/transforms/separated-update-expected.txt A LayoutTests/platform/visionos/transforms/separated-update.html M LayoutTests/platform/visionos/transforms/separated.html M Source/WebCore/platform/graphics/ca/GraphicsLayerCA.cpp M Source/WebCore/platform/graphics/ca/PlatformCALayer.h M Source/WebCore/platform/graphics/ca/cocoa/PlatformCALayerCocoa.h M Source/WebCore/platform/graphics/ca/cocoa/PlatformCALayerCocoa.mm M Source/WebKit/Shared/RemoteLayerTree/RemoteLayerTreePropertyApplier.mm M Source/WebKit/UIProcess/RemoteLayerTree/RemoteLayerTreeNode.h Log Message: ----------- Invisible layers should not be flagged as separated https://bugs.webkit.org/show_bug.cgi?id=281855 <rdar://138188635> Reviewed by Simon Fraser. Separating a layer is not free and only visible layers should get this treatment. Check the layer visible rect before applying the `isSeparated` property. * Source/WebKit/UIProcess/RemoteLayerTree/RemoteLayerTreeNode.h: (WebKit::RemoteLayerTreeNode::shouldBeSeparated const): (WebKit::RemoteLayerTreeNode::setShouldBeSeparated): Keep track of the requested separated state on the node like we do for the visible rect. * Source/WebKit/Shared/RemoteLayerTree/RemoteLayerTreePropertyApplier.mm: (WebKit::RemoteLayerTreePropertyApplier::applyPropertiesToLayer): (WebKit::RemoteLayerTreePropertyApplier::applyProperties): Only set `separated` on the layer if its visible * Source/WebCore/platform/graphics/ca/GraphicsLayerCA.cpp: (WebCore::GraphicsLayerCA::updateCoverage): (WebCore::GraphicsLayerCA::changeLayerTypeTo): * Source/WebCore/platform/graphics/ca/PlatformCALayer.h: * Source/WebCore/platform/graphics/ca/cocoa/PlatformCALayerCocoa.h: * Source/WebCore/platform/graphics/ca/cocoa/PlatformCALayerCocoa.mm: Make sure the visible rect is propagated to the UI Process when separated layers are enabled. * LayoutTests/platform/visionos/transforms/separated.html: * LayoutTests/platform/visionos/transforms/separated-expected.txt: Update the test with an out-of-viewport separated layer. * LayoutTests/platform/visionos/transforms/separated-update-expected.txt: * LayoutTests/platform/visionos/transforms/separated-update.html: Introduce a new test where scrolling reveals new separated layers. Canonical link: https://commits.webkit.org/285567@main To unsubscribe from these emails, change your notification settings at https://github.com/WebKit/WebKit/settings/notifications _______________________________________________ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes