summaryrefslogtreecommitdiffstats
path: root/layout/reftests/reftest-sanity/reftest-no-flush.html
diff options
context:
space:
mode:
Diffstat (limited to 'layout/reftests/reftest-sanity/reftest-no-flush.html')
-rw-r--r--layout/reftests/reftest-sanity/reftest-no-flush.html39
1 files changed, 39 insertions, 0 deletions
diff --git a/layout/reftests/reftest-sanity/reftest-no-flush.html b/layout/reftests/reftest-sanity/reftest-no-flush.html
new file mode 100644
index 0000000000..8893e6eb71
--- /dev/null
+++ b/layout/reftests/reftest-sanity/reftest-no-flush.html
@@ -0,0 +1,39 @@
+<!DOCTYPE html>
+<html class="reftest-wait reftest-no-flush">
+<style>
+html {
+ /* Suppress scrollbars to avoid periodical unthrottling for transform */
+ /* animations on the compositor. */
+ overflow: hidden;
+}
+body {
+ margin: 0px;
+ padding: 0px;
+}
+@keyframes anim {
+ 0% { transform: translateX(100px); }
+ 100% { transform: translateX(100px); }
+}
+#target {
+ width: 100px;
+ height: 100px;
+ position: absolute;
+ background-color: green;
+}
+</style>
+<div id="target"></div>
+<script>
+document.addEventListener('MozReftestInvalidate', () => {
+ // Set a bit longer animation delay to avoid painting the initial animation
+ // style on the main thread.
+ target.style.animation = "anim 100s 1s";
+ target.addEventListener("animationstart", () => {
+ requestAnimationFrame(() => {
+ requestAnimationFrame(() => {
+ document.documentElement.classList.remove("reftest-wait");
+ });
+ });
+ });
+}, { once: true });
+</script>
+</html>