DescriptionFixed up root scroller API to be more webby
-Removed document.setRootScroller and replaced it by making the
document.rootScroller attribute writable.
-Moved the RootScroller object from FrameHost into Document. Now each
Document has its own RootScroller object which manages the rootScroller
for that Document. This means each iframe on the page will have its own
rootScroller. I've allowed setting it from iframes now too, making the
API more composable; setting a rootScroller on an iframe's Document
simply doesn't change any behavior.
-Made the rootScroller "sticky". Previously, if the current rootScroller
becomes invalid (for example, the rootScroller Element becomes
display:none) it would reset to the default element. With this CL, we'll
use the default while the rootScroller is invalid, but we keep the
rootScroller set. When it becomes valid again, we'll use it again. This
is done by making RootScroller::m_rootScroller the Element the page has
set as the root scroller. RootScroller::m_effectiveRootScroller is the
Element we're using internally to handle viewport actions.
-Changed the criteria for a valid rootScroller. Elements in an iframe can
now be used. Only elements that exactly fill the viewport are considered
valid.
BUG=505516
Committed: https://crrev.com/16c5f9e182d412046291088ab782579f315bf100
Cr-Commit-Position: refs/heads/master@{#397778}
Patch Set 1 : #
Total comments: 14
Patch Set 2 : Rebase #Patch Set 3 : Fixed tests to match new expectations #Patch Set 4 : Missed One Test #Patch Set 5 : Rebase #Patch Set 6 : Sigh...fix test expectation again, fix crash when there's no renderer #Messages
Total messages: 29 (16 generated)
|