Bug 1741276 [wpt PR 31635] - Do not skip compositing update for non-animation transfo...
commit0a3700c1ab691634b0430103a552de69398897bd
authorPhilip Rogers <pdr@chromium.org>
Wed, 17 Nov 2021 13:22:46 +0000 (17 13:22 +0000)
committermoz-wptsync-bot <wptsync@mozilla.com>
Fri, 26 Nov 2021 20:19:06 +0000 (26 20:19 +0000)
tree22efe9925c5ef0708bb2b5a6502da7bf6fba78f4
parentdff10e47e68a3ddbded5670a2f47a1bb1f61ee18
Bug 1741276 [wpt PR 31635] - Do not skip compositing update for non-animation transform changes, a=testonly

Automatic update from web-platform-tests
Do not skip compositing update for non-animation transform changes

Properties like "will-change: transform" are direct compositing reasons
which let us skip raster when properties change. Usually, we still need
to update compositing when directly-composited transforms change because
overlap can change. An exception to this is animations which assume
worst-case overlap in |PendingLayer::VisualRectForOverlapTesting|. This
patch stops skipping the compositing update for non-animation transform
changes.

An alternative approach of assuming worst-case overlap for will-change
transform was investigated in https://crrev.com/c/3280439 but this has
two downsides: complexity and compositing memory (a good example is
composited-scroll-overlap-test.html). Before CompositeAfterPaint, we
would need to run compositing as well, so the approach in this patch
has precedent. We may want to expand the visual rect for
will-change: transform in the future, for performance parity with
animations.

Bug: 1267689
Change-Id: I9812426e9a159bdbe44476390e10fe53478f9ccc
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/3282945
Reviewed-by: Xianzhu Wang <wangxianzhu@chromium.org>
Commit-Queue: Philip Rogers <pdr@chromium.org>
Cr-Commit-Position: refs/heads/main@{#941904}

--

wpt-commits: 22bf1f9e0ed1f729fb91632c39b2c8d68844f503
wpt-pr: 31635
testing/web-platform/tests/css/css-transforms/paint-order-with-transform-change-ref.html [new file with mode: 0644]
testing/web-platform/tests/css/css-transforms/paint-order-with-transform-change.html [new file with mode: 0644]