Contact emails
Spec
Summary
The document element (body in Chrome) has some special powers that other scrollers do not. For e.g. only scrolling in the <body> element hides the URL bar and shows overscroll glow.
document.rootScroller allows an author to give these powers to an arbitrary scroller, allowing iframes and divs to control the URL bar. This makes composing multi view apps significantly easier. See the
MiniApp example for what problems this addresses.
Link to “Intent to Implement” blink-dev discussion
Goals for experimentation
-Determine if this is useful in a real world app
-Currently we limit the scrollers developers can set to be exactly 100% viewport filling, do developers have other use cases?
-Should we still allow scrolling in the <body> element?
-Should we replace window.scrollY, window.scrollTo, etc. to target the new root scroller? document.scrollingElement? Would this be useful?
-Subjectively, does this make developing a multi-view app significantly easier.
Experimental timeline
I'd like to run this for two milestones, starting in M57:
57 Stable Ships ~Mar 14th, 2017
58 Stable Ships ~Apr 25th, 2017
And disable it at M59 branch from ToT:
59 branches from ToT ~Apr 13th, 2017
Any risks when the experiment finishes?
Minor usability regression, scrolling on the root scroller will no longer scroll the URL bar. But this is no worse than what exists today on many pages.
Ongoing technical constraints
None
Will this feature be supported on all five Blink platforms supported by Origin Trials (Windows, Mac, Linux, Chrome OS, and Android)?
The feature, as in the property on `document`, is available on all platforms. However, it's basically a no-op on desktops. The effects are currently only visible on Android.
OWP launch tracking bug
Link to entry on the feature dashboard