diff --git a/source b/source index 81701d8a63a..dc2ce71f574 100644 --- a/source +++ b/source @@ -93037,10 +93037,8 @@ location.href = '#foo';
If entry's scroll restoration
- mode is "auto
", then the user agent may
- use entry's scroll position data to restore
- the scroll positions of entry's document's
- restorable scrollable regions.
auto
", then restore
+ scroll position data given entry.
The user agent not restoring scroll positions does not imply that scroll positions will be left at any particular value (e.g., (0,0)). The actual scroll position depends @@ -93071,14 +93069,45 @@ location.href = '#foo';
The restorable scrollable regions of a Document
document are
- document's viewport, and all of document's scrollable regions
- excepting any navigable containers.
Each Document
has a boolean has been scrolled by the user, initially
+ false. If the user scrolls the document, the user agent must set that document's has been
+ scrolled by the user to true.
The restorable scrollable regions of a Document
document
+ are document's viewport, and all of document's scrollable
+ regions excepting any navigable containers.
Child navigable scroll restoration is handled as part of state
restoration for the session history entry for those navigables' Document
s.
To restore scroll position data given a session history entry + entry:
+ +Let document be entry's document.
If document's has been scrolled by the user is true, then the + user agent should return.
The user agent should attempt to use entry's scroll position data to restore the scroll positions of + entry's document's restorable scrollable + regions. The user agent may continue to attempt to do so periodically, until + document's has been scrolled by the user becomes true.
+ +This is formulated as an attempt, which is potentially repeated until + success or until the user scrolls, due to the fact that relevant content indicated by the scroll position data might take some time to load from the + network.
+ + +Set oldDocument's has been scrolled by the user to false.
Run any unloading document cleanup steps for oldDocument that are defined by this specification and other applicable specifications.