Branch: refs/heads/main
Home: https://github.com/WebKit/WebKit
Commit: bb28148509967bf8b3e923fc71adb69895055a4d
https://github.com/WebKit/WebKit/commit/bb28148509967bf8b3e923fc71adb69895055a4d
Author: Mike Wyrzykowski <[email protected]>
Date: 2023-08-04 (Fri, 04 Aug 2023)
Changed paths:
M LayoutTests/interaction-region/interaction-layers-culling-expected.txt
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/LayerProperties.h
M Source/WebKit/Shared/RemoteLayerTree/RemoteLayerTree.serialization.in
M Source/WebKit/Shared/RemoteLayerTree/RemoteLayerTreePropertyApplier.mm
M Source/WebKit/Shared/RemoteLayerTree/RemoteLayerTreeTransaction.mm
M
Source/WebKit/UIProcess/RemoteLayerTree/RemoteLayerTreeInteractionRegionLayers.mm
M Source/WebKit/UIProcess/RemoteLayerTree/RemoteLayerTreeNode.h
M Source/WebKit/WebProcess/WebPage/RemoteLayerTree/PlatformCALayerRemote.h
M Source/WebKit/WebProcess/WebPage/RemoteLayerTree/PlatformCALayerRemote.mm
Log Message:
-----------
Dropping frames on visionOS while scrolling due to number of glow layers on
some websites
https://bugs.webkit.org/show_bug.cgi?id=259739
<radar://113094884>
Reviewed by Dean Jackson.
Cull glow regions outside of visible areas as the user will not be able
to interact with them.
* LayoutTests/interaction-region/interaction-layers-culling-expected.txt:
Update test expectation.
* Source/WebCore/platform/graphics/ca/GraphicsLayerCA.cpp:
(WebCore::GraphicsLayerCA::updateCoverage):
* Source/WebCore/platform/graphics/ca/PlatformCALayer.h:
* Source/WebCore/platform/graphics/ca/cocoa/PlatformCALayerCocoa.h:
* Source/WebCore/platform/graphics/ca/cocoa/PlatformCALayerCocoa.mm:
(WebCore::PlatformCALayerCocoa::setVisibleRect):
(WebCore::PlatformCALayerCocoa::setCoverageRect): Deleted.
* Source/WebKit/Shared/RemoteLayerTree/LayerProperties.h:
* Source/WebKit/Shared/RemoteLayerTree/RemoteLayerTree.serialization.in:
* Source/WebKit/Shared/RemoteLayerTree/RemoteLayerTreePropertyApplier.mm:
(WebKit::RemoteLayerTreePropertyApplier::applyProperties):
* Source/WebKit/Shared/RemoteLayerTree/RemoteLayerTreeTransaction.mm:
(WebKit::LayerProperties::encode const):
(WebKit::LayerProperties::decode):
(WebKit::dumpChangedLayers):
Change use of coverageRect to visibleRect.
*
Source/WebKit/UIProcess/RemoteLayerTree/RemoteLayerTreeInteractionRegionLayers.mm:
(WebKit::updateLayersForInteractionRegions):
Layer was being inserted twice, correct this.
Also instead of testing if the rect exists and it did not intersect to return
early,
test that either the rect does not exist or it does not interesect to return
early.
* Source/WebKit/UIProcess/RemoteLayerTree/RemoteLayerTreeNode.h:
(WebKit::RemoteLayerTreeNode::visibleRect const):
(WebKit::RemoteLayerTreeNode::setVisibleRect):
(WebKit::RemoteLayerTreeNode::CoverageRectMarkableTraits::isEmptyValue):
Deleted.
(WebKit::RemoteLayerTreeNode::CoverageRectMarkableTraits::emptyValue): Deleted.
(WebKit::RemoteLayerTreeNode::coverageRect const): Deleted.
(WebKit::RemoteLayerTreeNode::setCoverageRect): Deleted.
* Source/WebKit/WebProcess/WebPage/RemoteLayerTree/PlatformCALayerRemote.h:
* Source/WebKit/WebProcess/WebPage/RemoteLayerTree/PlatformCALayerRemote.mm:
(WebKit::PlatformCALayerRemote::setVisibleRect):
(WebKit::PlatformCALayerRemote::setCoverageRect): Deleted.
Change use of coverageRect to visibleRect.
Canonical link: https://commits.webkit.org/266604@main
_______________________________________________
webkit-changes mailing list
[email protected]
https://lists.webkit.org/mailman/listinfo/webkit-changes