diff options
author | Daniel Baumann <daniel.baumann@progress-linux.org> | 2024-04-07 19:33:14 +0000 |
---|---|---|
committer | Daniel Baumann <daniel.baumann@progress-linux.org> | 2024-04-07 19:33:14 +0000 |
commit | 36d22d82aa202bb199967e9512281e9a53db42c9 (patch) | |
tree | 105e8c98ddea1c1e4784a60a5a6410fa416be2de /layout/reftests/scrolling/scrolling.js | |
parent | Initial commit. (diff) | |
download | firefox-esr-36d22d82aa202bb199967e9512281e9a53db42c9.tar.xz firefox-esr-36d22d82aa202bb199967e9512281e9a53db42c9.zip |
Adding upstream version 115.7.0esr.upstream/115.7.0esr
Signed-off-by: Daniel Baumann <daniel.baumann@progress-linux.org>
Diffstat (limited to 'layout/reftests/scrolling/scrolling.js')
-rw-r--r-- | layout/reftests/scrolling/scrolling.js | 46 |
1 files changed, 46 insertions, 0 deletions
diff --git a/layout/reftests/scrolling/scrolling.js b/layout/reftests/scrolling/scrolling.js new file mode 100644 index 0000000000..2176c90d8d --- /dev/null +++ b/layout/reftests/scrolling/scrolling.js @@ -0,0 +1,46 @@ +var topElements; +var failed = false; + +function doScroll(d) +{ + if (failed) + return; + for (var i = 0; i < topElements.length; ++i) { + var e = topElements[i]; + e.scrollTop = d; + if (e.scrollTop != d) { + document.documentElement.textContent = + "Scrolling failed on " + e.tagName + " element, " + + "tried to scroll to " + d + ", got " + e.scrollTop + + " (Random number: " + Math.random() + ")"; + failed = true; + } + } +} + +// bug 1134459, images are decoded off main thread +// Wait for the load event so we know all images have loaded +document.onload = function() { + topElements = document.getElementsByClassName("scrollTop"); + if (!topElements.length) { + topElements = [document.documentElement]; + } + + if (document.location.search == '?ref') { + doScroll(20); + } else if (document.location.search == '?up') { + doScroll(40); + document.documentElement.setAttribute("class", "reftest-wait"); + window.addEventListener("MozReftestInvalidate", function() { + document.documentElement.removeAttribute("class"); + doScroll(20); + }); + } else { + doScroll(1); + document.documentElement.setAttribute("class", "reftest-wait"); + window.addEventListener("MozReftestInvalidate", function() { + document.documentElement.removeAttribute("class"); + doScroll(20); + }); + } +} |