Files
firefox/testing/web-platform/tests/css/css-transforms/subpixel-transform-changes-004.html
Manuel Rego Casasnovas 2edf265245 Bug 1644978 [wpt PR 24106] - Enable transformed rasterization for trivial 3D transforms, a=testonly
Automatic update from web-platform-tests
Enable transformed rasterization for trivial 3D transforms

This patch adds a new compositing reason kTrivial3DTransform
separated from k3DTransform, so we can identify trivial 3D transforms.
It modifies CompositingReasonFinder in order to return
kTrivial3DTransform or k3DTransform as compositing reason.

On top of that the patch enables transformed rasterization
for the new compositing reason kTrivial3DTransform.

BUG=1078401
TEST=CompositedLayerMappingTest.TransformedRasterizationForTrivial3DTransform
TEST=CompositingRequirementsUpdaterTest.NonTrivial3DTransforms
TEST=external/wpt/css/css-transforms/subpixel-transform-changes-004.html

Change-Id: I1acb7846af8d86c26474322818bd80c8bde2d031
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2241111
Reviewed-by: Xianzhu Wang <[email protected]>
Commit-Queue: Manuel Rego <[email protected]>
Cr-Commit-Position: refs/heads/master@{#777899}

--

wpt-commits: 81c7371e592a9c83ead9e09349e0f704012b14f8
wpt-pr: 24106
2020-06-23 11:04:10 +00:00

32 lines
1.8 KiB
HTML

<!DOCTYPE html>
<html class="reftest-wait">
<meta charset="utf-8">
<title>CSS Transforms Test: Subpixel transform changes trivial 3D</title>
<link rel="author" title="Manuel Rego Casasnovas" href="mailto:[email protected]">
<link rel="help" href="https://drafts.csswg.org/css-transforms/#transform-property">
<link rel="match" href="reference/subpixel-transform-changes-004-ref.html">
<meta name="assert" content="Test checks that subpixel transform changes work as expected regardless of trivial 3D transforms.">
<div id="translateX1" style="transform: translate3d(0.12px, 0px, 0px);">transform: translate3d(0.48px, 0px, 0px);</div>
<div id="translateX2" style="transform: translate3d(0.56px, 0px, 0px);">transform: translate3d(3.17px, 0px, 0px);</div>
<div id="translateX3" style="transform: translate3d(1.87px, 0px, 0px);">transform: translate3d(0.34px, 0px, 0px);</div>
<div id="translateY1" style="transform: translate3d(0px, 0.12px, 0px);">transform: translate3d(0px, 0.48px, 0px);</div>
<div id="translateY2" style="transform: translate3d(0px, 0.56px, 0px);">transform: translate3d(0px, 3.17px, 0px);</div>
<div id="translateY3" style="transform: translate3d(0px, 1.87px, 0px);">transform: translate3d(0px, 0.34px, 0px);</div>
<script>
requestAnimationFrame(() => requestAnimationFrame(() => {
translateX1.style.transform = "translate3d(0.48px, 0px, 0px)";
translateX2.style.transform = "translate3d(3.17px, 0px, 0px)";
translateX3.style.transform = "translate3d(0.34px, 0px, 0px)";
translateY1.style.transform = "translate3d(0px, 0.48px, 0px)";
translateY2.style.transform = "translate3d(0px, 3.17px, 0px)";
translateY3.style.transform = "translate3d(0px, 0.34px, 0px)";
document.documentElement.classList.remove("reftest-wait");
}));
</script>
</html>