Index: LayoutTests/fast/scrolling/scroll-to-origin-no-layout.html |
diff --git a/LayoutTests/fast/scrolling/scroll-to-origin-no-layout.html b/LayoutTests/fast/scrolling/scroll-to-origin-no-layout.html |
new file mode 100644 |
index 0000000000000000000000000000000000000000..48d701e1aa832b6f6af915e5bdb55ca70f523ce4 |
--- /dev/null |
+++ b/LayoutTests/fast/scrolling/scroll-to-origin-no-layout.html |
@@ -0,0 +1,28 @@ |
+<!DOCTYPE html> |
+<script src="../../resources/js-test.js"></script> |
+<div id="spanner"></div> |
+<script> |
+spanner.style.height = "3000px"; |
+scrollTo(0, 1000); |
+ |
+if (window.internals) { |
+ var styleCount = internals.updateStyleAndReturnAffectedElementCount(); |
+ var layoutCount = internals.needsLayoutCount(); |
+ // scrollTo should have synchronously updated style and layout |
+ shouldBe("styleCount", "0"); |
+ shouldBe("layoutCount", "0"); |
+} |
+shouldBe("window.scrollY", "1000"); |
+ |
+spanner.style.height = "2000px"; |
+scrollTo(0, 0); |
+ |
+if (window.internals) { |
+ var styleCount = internals.updateStyleAndReturnAffectedElementCount(); |
+ var layoutCount = internals.needsLayoutCount(); |
+ // scrollTo should not need to synchronously updated style and layout |
+ shouldNotBe("styleCount", "0"); |
+ shouldNotBe("layoutCount", "0"); |
+} |
+shouldBe("window.scrollY", "0"); |
+</script> |