Automatic update from web-platform-tests Fix paint offset of inline with backface-visibility:hidden This fixes the bug when PaintOffsetTranslationForComposited is enabled. Now don't create PaintOffsetTranslation for a LayoutInline with backface-visibility:hidden if it doesn't have a self-painting layer. This is because for now such a LayoutInline doesn't know how to apply paint properties. This CL keeps status:"test" for PaintOffsetTranslationForComposited. It's complex to let inline painting support non-self-painting-layer paint properties on LayoutInlines because the text fragments don't have property tree states. Nevertheless, as backface-visibility:hidden might be the only case, ongoing css discussions about creating stacking context in the case might be the ultimate solution. Bug: 455884493, 495746269 Change-Id: I67144314ee1551287be578bef2089a853d7d5194 Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/7698719 Reviewed-by: Philip Rogers <pdr@chromium.org> Commit-Queue: Xianzhu Wang <wangxianzhu@chromium.org> Cr-Commit-Position: refs/heads/main@{#1605208} -- wpt-commits: b96657862bd2d7351a98a9d826af8f8d09122acf wpt-pr: 58755
24 lines
903 B
HTML
24 lines
903 B
HTML
<!doctype HTML>
|
|
<html class="reftest-wait">
|
|
<title>CSS Test: Repaint after moving an inline element with backface-visibility:hidden</title>
|
|
<link rel="author" title="Xianzhu Wang" href="mailto:wangxianzhu@chromium.org" />
|
|
<link rel="help" href="https://drafts.csswg.org/css-transforms-2/#propdef-backface-visibility">
|
|
<link rel="help" href="https://crbug.com/455884493">
|
|
<link rel="match" href="offset-change-inline-backface-visibility-hidden-ref.html">
|
|
<link rel="stylesheet" href="/fonts/ahem.css">
|
|
<script src="/common/reftest-wait.js"></script>
|
|
<div id="container">
|
|
<div style="width: 100px; background: green; font-family: ahem">
|
|
<span style="backface-visibility: hidden">X</span>
|
|
</div>
|
|
</div>
|
|
<script>
|
|
onload = function() {
|
|
requestAnimationFrame(() => requestAnimationFrame(() => {
|
|
container.style.marginLeft = '100px';
|
|
takeScreenshot();
|
|
}));
|
|
};
|
|
</script>
|
|
</html>
|