[webkit-changes] [WebKit/WebKit] 5df28f: REGRESSION (288901 at main): animation when finding n...
mattwoodrow
noreply at github.com
Thu Jan 30 13:49:06 PST 2025
Branch: refs/heads/main
Home: https://github.com/WebKit/WebKit
Commit: 5df28f0be2e177821c29aa11102b6f933696d849
https://github.com/WebKit/WebKit/commit/5df28f0be2e177821c29aa11102b6f933696d849
Author: Matt Woodrow <mattwoodrow at apple.com>
Date: 2025-01-30 (Thu, 30 Jan 2025)
Changed paths:
A LayoutTests/fast/repaint/repaint-on-transform-change-expected.txt
A LayoutTests/fast/repaint/repaint-on-transform-change.html
M LayoutTests/fast/repaint/translate-animation-repaint.html
A LayoutTests/platform/mac-wk1/fast/repaint/translate-animation-repaint-expected.txt
M Source/WebCore/rendering/RenderLayer.cpp
M Source/WebCore/rendering/RenderLayerCompositor.cpp
Log Message:
-----------
REGRESSION (288901 at main): animation when finding non-theme word in Strands game shows artifacts.
https://bugs.webkit.org/show_bug.cgi?id=286706
<rdar://143759652>
Reviewed by Simon Fraser.
If RenderLayerCompositor::layerStyleChanged changes the compositing status, it
updates the repaint rects on the layer and issues a repaint for the 'old'
position. This needs to happen before the new transform is writen to the
RenderLayer, otherwise the repaint happens at the new position (in the old
layer). Move updateTransform down a bit to get the right ordering.
There's also a second issue where queryData.nonCompositedForPositionReason
doesn't get computed if the compositing checks returned early and set
reevaluateAfterLayout=true. This can cause toggling between values (from the
style change check, and the post-layout compositing layer update check), so only
check the values if they've been computed.
Adds a new test that catches both of these issues by checking the repaint rects
emitted.
* LayoutTests/fast/repaint/repaint-on-transform-change-expected.txt: Added.
* LayoutTests/fast/repaint/repaint-on-transform-change.html: Added.
* Source/WebCore/rendering/RenderLayer.cpp:
(WebCore::RenderLayer::calculateClipRects const):
* Source/WebCore/rendering/RenderLayerCompositor.cpp:
(WebCore::RenderLayerCompositor::updateBacking):
Canonical link: https://commits.webkit.org/289581@main
To unsubscribe from these emails, change your notification settings at https://github.com/WebKit/WebKit/settings/notifications
More information about the webkit-changes
mailing list