Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(9)

Unified Diff: third_party/WebKit/LayoutTests/fast/scroll-behavior/smooth-scroll/ongoing-smooth-scroll-anchors.html

Issue 1926473003: Smooth scroll animation should not override scroll anchoring update (MT) (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: disable test for mac Created 4 years, 8 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: third_party/WebKit/LayoutTests/fast/scroll-behavior/smooth-scroll/ongoing-smooth-scroll-anchors.html
diff --git a/third_party/WebKit/LayoutTests/fast/scroll-behavior/smooth-scroll/ongoing-smooth-scroll-anchors.html b/third_party/WebKit/LayoutTests/fast/scroll-behavior/smooth-scroll/ongoing-smooth-scroll-anchors.html
new file mode 100644
index 0000000000000000000000000000000000000000..c69822f5e35b8f887d14303ee8165bdcf77926c8
--- /dev/null
+++ b/third_party/WebKit/LayoutTests/fast/scroll-behavior/smooth-scroll/ongoing-smooth-scroll-anchors.html
@@ -0,0 +1,70 @@
+<script src="../../../resources/testharness.js"></script>
+<script src="../../../resources/testharnessreport.js"></script>
+<style>
+ body {
+ margin: 0px;
+ height: 2000px;
+ width: 2000px;
+ }
+ #changer {
+ background-color: #FF7F7F;
+ height: 10px;
+ }
+ #anchor {
+ height: 1500px;
+ background-color: #84BE6A;
+ }
+</style>
+
+<div id="changer"></div>
+<div id="anchor"></div>
+
+<script>
+ var asyncTest = async_test("Verify smooth scroll interaction with scroll anchroing");
+
+ // The element that will change in height.
+ var ch;
+
+ // Initital scroll position.
+ var initialX = 0;
+ var initialY = 10;
+ // Amount to smooth scroll by.
+ var userScrollX = 51;
+ var userScrollY = 205;
+ // Amount to change the height of the element above the viewport.
+ var changerY = 100;
+ // End position: height of ch + userScroll.
+ var endX = 51;
+ var endY = 305;
+
+ function scrollListener() {
+ if (window.scrollX == endX && window.scrollY == endY) {
+ asyncTest.done();
+ return;
+ }
+
+ if (ch.style.height != "100")
+ ch.style.height = changerY;
+ }
+
+ window.onload = function() {
+ assert_false(!window.internals, 'This test requires internals');
+ internals.runtimeFlags.scrollAnchoringEnabled = true;
+ // Turn on smooth scrolling.
+ internals.settings.setScrollAnimatorEnabled(true);
+
+ ch = document.getElementById("changer");
+ document.getElementById('anchor').scrollIntoView();
+
+ // Smooth scroll.
+ eventSender.mouseMoveTo(100, 100);
+ eventSender.continuousMouseScrollBy(-userScrollX, -userScrollY);
+
+ asyncTest.step(function() {
+ assert_equals(window.scrollX, initialX);
+ assert_equals(window.scrollY, initialY);
+ });
+
+ document.addEventListener("scroll", scrollListener);
+ }
+</script>
« no previous file with comments | « third_party/WebKit/LayoutTests/TestExpectations ('k') | third_party/WebKit/Source/core/layout/ScrollAnchor.cpp » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698