Branch: refs/heads/main
Home: https://github.com/WebKit/WebKit
Commit: d2869dc073cdd0dcd3a90ffd0d8d6913f7a010c6
https://github.com/WebKit/WebKit/commit/d2869dc073cdd0dcd3a90ffd0d8d6913f7a010c6
Author: Pawel Lampe <[email protected]>
Date: 2025-01-22 (Wed, 22 Jan 2025)
Changed paths:
M Source/WebCore/platform/graphics/GraphicsLayer.h
M Source/WebCore/platform/graphics/texmap/TextureMapperLayer.cpp
M Source/WebCore/platform/graphics/texmap/TextureMapperLayer.h
M
Source/WebCore/platform/graphics/texmap/coordinated/CoordinatedPlatformLayer.cpp
M
Source/WebCore/platform/graphics/texmap/coordinated/GraphicsLayerCoordinated.cpp
M
Source/WebCore/platform/graphics/texmap/coordinated/GraphicsLayerCoordinated.h
M Source/WebCore/rendering/RenderLayerBacking.cpp
Log Message:
-----------
[TexMap] Correctly gather damage information for 3D-transformed layers
https://bugs.webkit.org/show_bug.cgi?id=275803
Reviewed by Nikolas Zimmermann.
This change:
- changes the machanism that damages the whole layer on transform change. From
now on,
the damage is computed and stored in the global coordinate space as with the
usage
of local coordinate space (as before) it was impossible to get back the
correct damage
for 3D transforms as the operation was lossy
- separates the damage inferred during layer updates processing from the damage
received
from the main thread
- removes the workarounds necessary for 3D transform handling
thus effectively fixing the support for collecting damage from 3D-transformed
layers.
* Source/WebCore/platform/graphics/GraphicsLayer.h:
(WebCore::GraphicsLayer::markDamageRectsUnreliable): Deleted.
* Source/WebCore/platform/graphics/texmap/TextureMapperLayer.cpp:
(WebCore::TextureMapperLayer::collectDamageSelf):
(WebCore::TextureMapperLayer::damageWholeLayerDueToTransformChange):
(WebCore::TextureMapperLayer::transformRectForDamage):
(WebCore::TextureMapperLayer::setSize):
* Source/WebCore/platform/graphics/texmap/TextureMapperLayer.h:
*
Source/WebCore/platform/graphics/texmap/coordinated/CoordinatedPlatformLayer.cpp:
(WebCore::CoordinatedPlatformLayer::flushCompositingState):
*
Source/WebCore/platform/graphics/texmap/coordinated/GraphicsLayerCoordinated.cpp:
(WebCore::GraphicsLayerCoordinated::updateDamage):
(WebCore::GraphicsLayerCoordinated::markDamageRectsUnreliable): Deleted.
*
Source/WebCore/platform/graphics/texmap/coordinated/GraphicsLayerCoordinated.h:
* Source/WebCore/rendering/RenderLayerBacking.cpp:
(WebCore::RenderLayerBacking::updateAfterDescendants):
(WebCore::layerRendererStyleHas3DTransformOperation): Deleted.
Canonical link: https://commits.webkit.org/289232@main
To unsubscribe from these emails, change your notification settings at
https://github.com/WebKit/WebKit/settings/notifications
_______________________________________________
webkit-changes mailing list
[email protected]
https://lists.webkit.org/mailman/listinfo/webkit-changes