From ece22244bc20e4e8aa9194e3440260629206e736 Mon Sep 17 00:00:00 2001
From: David Awogbemila The following terms and features are defined in CSS Positioned Layout:
@@ -103718,6 +103719,8 @@ location.href = '#foo';
If documentIsNew is true, then:
@@ -103879,6 +103882,27 @@ location.href = '#foo';
To update the initial scroll positions for scroll containers in a
+ Let scrollers be the list of all
+ scroll containers within document. For each scroller in scrollers: If the user agent has reason to believe the user is no longer interested in scrolling
+ to scroller's initial scroll
+ position, then abort these steps. Update scroller's initial scroll
+ position and scroll scroller to it. To make document unsalvageable, given a The following features and terms are defined in CSS Syntax:
@@ -103883,22 +103885,26 @@ location.href = '#foo';
To update the initial scroll positions for scroll containers in a
- Document
document,
+ perform the following steps:
+
+
+
+ Document
document and a string reason:scroll
eventscrollend
eventDocument
document,
- perform the following steps:Document
document:
Let scrollers be the list of all - scroll containers within document.
Let scrollers be a list of all + scroll containers of document.
For each scroller in scrollers:
+For each scroller of scrollers: +
+If the user agent has reason to believe the user is no longer interested in scrolling - to scroller's initial scroll - position, then abort these steps.
Let position be the initial scroll + position of scroller.
Update scroller's initial scroll - position and scroll scroller to it.
Perform a scroll of scroller's scrolling box to position.
If documentIsNew is true, then:
Update the initial scroll positions for scroll containers in + document.
Try to scroll to the fragment for document.
At this point scripts may run for the newly-created document
From dd852fe7f1319fe05288c648bf84c9b28a69778b Mon Sep 17 00:00:00 2001
From: David Awogbemila To update the initial scroll positions for scroll containers in a
Let scrollers be a list of all
scroll containers of document.Document
document:
+
If the user agent has reason to believe the user is no longer interested in scrolling - to scroller's initial scroll position - , then abort these steps.
Let position be the initial scroll - position of scroller.
Perform a scroll of scroller's scrolling box to position.
Update the initial scroll position for scroller.
To update the initial scroll position for a + scroll container scroller perform the following + steps in parallel:
+ +Wait for an implementation-defined amount of time. (This is intended to allow + the user agent to optimize the user experience in the face of performance concerns.)
Queue a global task on the navigation and traversal task source + given document's relevant global object to run these steps:
+ +If the user agent has reason to believe the user is no longer interested in scrolling + to scroller's initial scroll position + , then abort these steps.
Let position be the initial scroll + position of scroller.
Perform a scroll of scroller's scrolling box to position.
Update the initial scroll position for scroller.
To make document unsalvageable, given a Document
document and a string reason:
The following terms and features are defined in CSS Positioned Layout: @@ -103888,23 +103889,24 @@ location.href = '#foo';
To update the initial scroll positions for scroll containers in a
Document
document:
Let scrollers be a list of all - scroll containers of document.
Let scrollers be a list of every element which is a + shadow-including descendant of + document and establishes a scrolling box.
For each scroller of scrollers: -
+For each scroller of + scrollers, in tree order:
-Update the initial scroll position for scroller.
Update the initial scroll position for scroller.
To update the initial scroll position for a - scroll container scroller perform the following - steps in parallel:
+To update the initial scroll position for an element scroller, + perform the following steps in parallel:
Wait for an implementation-defined amount of time. (This is intended to allow @@ -103916,14 +103918,17 @@ location.href = '#foo';
If the user agent has reason to believe the user is no longer interested in scrolling - to scroller's initial scroll position - , then abort these steps.
Let position be the initial scroll - position of scroller.
Perform a scroll of scroller's scrolling box to position.
Update the initial scroll position for scroller.
For each scroller of - scrollers, in tree order:
+ scrollers, in shadow-including tree order:Update the initial scroll position for scroller.
To update the initial scroll position for an element scroller, perform the following steps in parallel:
+Although try to scroll to the fragment and + update the initial scroll positions for scroll containers take place at the same + point, and both use a polling system to prediodically re-attempt the scrolling, their goals are + different. Try to scroll to the fragment polls repeatedly until the + indicated part is found since it might take a while for the element to show up during + the document load. Update the initial scroll positions for scroll containers does not + have such a finish condition; it can run indefinitely, as long as the user does not indicate + disinterest. This is necessary to achieve the desired behavior of keeping a + scroll container anchored to the position indicated by CSS properties that determine + the initial scroll position.
+Wait for an implementation-defined amount of time. (This is intended to allow the user agent to optimize the user experience in the face of performance concerns.)
To update the initial scroll position for an element scroller, perform the following steps in parallel:
-Although try to scroll to the fragment and - update the initial scroll positions for scroll containers take place at the same - point, and both use a polling system to prediodically re-attempt the scrolling, their goals are - different. Try to scroll to the fragment polls repeatedly until the - indicated part is found since it might take a while for the element to show up during - the document load. Update the initial scroll positions for scroll containers does not - have such a finish condition; it can run indefinitely, as long as the user does not indicate - disinterest. This is necessary to achieve the desired behavior of keeping a - scroll container anchored to the position indicated by CSS properties that determine - the initial scroll position.
-Wait for an implementation-defined amount of time. (This is intended to allow the user agent to optimize the user experience in the face of performance concerns.)
Update the initial scroll position for scroller.
Although try to scroll to the fragment and + update the initial scroll positions for scroll containers take place at the same + point, and both use a polling system to prediodically re-attempt the scrolling, their goals are + different. Try to scroll to the fragment polls repeatedly until the + indicated part is found since it might take a while for the element to show up during + the document load. Update the initial scroll positions for scroll containers does not + have such a finish condition; it can run indefinitely, as long as the user does not indicate + disinterest. This is necessary to achieve the desired behavior of keeping a + scroll container anchored to the position indicated by CSS properties that determine + the initial scroll position.
From 1f28b52e8b708eea1e7e5f15f5454fde723d5896 Mon Sep 17 00:00:00 2001 From: Domenic DenicolaTo try to scroll to the fragment for a Document
document,
perform the following steps in parallel:
Document
document:
Let scrollers be a list of every element which is a - shadow-including descendant of - document and establishes a scrolling box.
Let scrollers be a list of every element which is a shadow-including descendant of document + and establishes a scrolling box.
For each scroller of - scrollers, in shadow-including tree order:
+For each scroller of scrollers, in + shadow-including tree order:
Update the initial scroll position for scroller.
To update the initial scroll position for an element scroller, - perform the following steps in parallel:
+To update the initial scroll position for an element scroller, perform + the following steps in parallel:
Wait for an implementation-defined amount of time. (This is intended to allow @@ -103916,35 +103917,37 @@ location.href = '#foo';
Queue a global task on the navigation and traversal task source given document's relevant global object to run these steps:
-If the user agent has reason to believe the user is no longer interested in scrolling - to the initial scroll position of the +
If the user agent has reason to believe the user is no longer interested in scrolling to + the initial scroll position of the scrollable overflow rectangle of scroller's scrolling box, then abort these steps.
Let position be the initial scroll position of the scrollable overflow rectangle of scroller's scrolling box.
Perform a scroll of scroller's scrolling box to position, with scroller - as the associated element.
Update the initial scroll position for scroller.
Although try to scroll to the fragment and - update the initial scroll positions for scroll containers take place at the same - point, and both use a polling system to prediodically re-attempt the scrolling, their goals are - different. Try to scroll to the fragment polls repeatedly until the - indicated part is found since it might take a while for the element to show up during - the document load. Update the initial scroll positions for scroll containers does not - have such a finish condition; it can run indefinitely, as long as the user does not indicate - disinterest. This is necessary to achieve the desired behavior of keeping a - scroll container anchored to the position indicated by CSS properties that determine - the initial scroll position.
Although try to scroll to the fragment and update the initial + scroll positions for scroll containers take place at the same point, and both use a polling + system to prediodically re-attempt the scrolling, their goals are different. Try to scroll + to the fragment polls repeatedly until the indicated part is found since it + might take a while for the element to show up during the document load. Update the initial + scroll positions for scroll containers does not have such a finish condition; it can run + indefinitely, as long as the user does not indicate disinterest. This is necessary to achieve the + desired behavior of keeping a scroll container anchored to the position indicated by + CSS properties that determine the initial scroll position.
+ +To make document unsalvageable, given a Document
document and a string reason: