| Index: LayoutTests/fast/scroll-behavior/overflow-scroll-loses-composited-scrolling.html
|
| diff --git a/LayoutTests/fast/scroll-behavior/overflow-scroll-loses-composited-scrolling.html b/LayoutTests/fast/scroll-behavior/overflow-scroll-loses-composited-scrolling.html
|
| new file mode 100644
|
| index 0000000000000000000000000000000000000000..bd743f2bf681d2ede7a501f057895eb1254e4515
|
| --- /dev/null
|
| +++ b/LayoutTests/fast/scroll-behavior/overflow-scroll-loses-composited-scrolling.html
|
| @@ -0,0 +1,58 @@
|
| +<!DOCTYPE html>
|
| +<html>
|
| +<head>
|
| + <style>
|
| + #container {
|
| + width: 200px;
|
| + height: 200px;
|
| + overflow: scroll;
|
| + }
|
| +
|
| + #content {
|
| + width: 7500px;
|
| + height: 7500px;
|
| + background-color: blue;
|
| + }
|
| + </style>
|
| + <script src="../../resources/js-test.js"></script>
|
| + <script type="text/javascript">
|
| + jsTestIsAsync = true;
|
| + description("This test checks that a smooth scroll finishes even when composited scrolling " +
|
| + "is lost during the animation.");
|
| +
|
| + function startSmoothScroll() {
|
| + var scrollToOptions = {behavior: "smooth", top: 6000};
|
| + document.getElementById("container").scrollTo(scrollToOptions);
|
| + window.requestAnimationFrame(preventCompositedScrolling);
|
| + }
|
| +
|
| + function preventCompositedScrolling() {
|
| + document.getElementById("container").style.borderRadius = "4px";
|
| + window.requestAnimationFrame(waitForSmoothScrollEnd);
|
| + }
|
| +
|
| + function waitForSmoothScrollEnd() {
|
| + if (document.getElementById("container").scrollTop == 6000) {
|
| + testPassed("Scroll destination reached.");
|
| + finishJSTest();
|
| + } else {
|
| + window.requestAnimationFrame(waitForSmoothScrollEnd);
|
| + }
|
| + }
|
| +
|
| + window.onload = function() {
|
| + if (window.internals) {
|
| + window.internals.settings.setPreferCompositingToLCDTextEnabled(true);
|
| + }
|
| +
|
| + window.requestAnimationFrame(startSmoothScroll);
|
| + }
|
| + </script>
|
| +</head>
|
| +
|
| +<body>
|
| + <div id="container">
|
| + <div id="content"></div>
|
| + </div>
|
| +</body>
|
| +</html>
|
|
|