diff options
author | Moonchild <mcwerewolf@gmail.com> | 2018-04-25 01:01:08 +0200 |
---|---|---|
committer | GitHub <noreply@github.com> | 2018-04-25 01:01:08 +0200 |
commit | a203f449bbc01f97564b7c5e2272b06a9569d7b4 (patch) | |
tree | 7193ae9ea7a77fcbd2c73ce0a9622b9fa836a013 /layout/base/nsPresContext.cpp | |
parent | acd4eee44eb04fe01b0063818b492390f463ccec (diff) | |
parent | eae8d21428acdb3fb842df091ded0eb276bcaaaa (diff) | |
download | UXP-a203f449bbc01f97564b7c5e2272b06a9569d7b4.tar UXP-a203f449bbc01f97564b7c5e2272b06a9569d7b4.tar.gz UXP-a203f449bbc01f97564b7c5e2272b06a9569d7b4.tar.lz UXP-a203f449bbc01f97564b7c5e2272b06a9569d7b4.tar.xz UXP-a203f449bbc01f97564b7c5e2272b06a9569d7b4.zip |
Merge pull request #262 from janekptacijarabaci/js_dom_overflow_1
moebius#138: Optimize operations on root of deeply-nested frame tree
Diffstat (limited to 'layout/base/nsPresContext.cpp')
-rw-r--r-- | layout/base/nsPresContext.cpp | 9 |
1 files changed, 5 insertions, 4 deletions
diff --git a/layout/base/nsPresContext.cpp b/layout/base/nsPresContext.cpp index d9f7b368c..4a54a8432 100644 --- a/layout/base/nsPresContext.cpp +++ b/layout/base/nsPresContext.cpp @@ -208,6 +208,7 @@ nsPresContext::nsPresContext(nsIDocument* aDocument, nsPresContextType aType) mTextZoom(1.0), mFullZoom(1.0), mOverrideDPPX(0.0), mLastFontInflationScreenSize(gfxSize(-1.0, -1.0)), mPageSize(-1, -1), mPPScale(1.0f), + mViewportScrollbarOverrideNode(nullptr), mViewportStyleScrollbar(NS_STYLE_OVERFLOW_AUTO, NS_STYLE_OVERFLOW_AUTO), mImageAnimationModePref(imgIContainer::kNormalAnimMode), mAllInvalidated(false), @@ -1423,10 +1424,10 @@ nsPresContext::UpdateViewportScrollbarStylesOverride() // Start off with our default styles, and then update them as needed. mViewportStyleScrollbar = ScrollbarStyles(NS_STYLE_OVERFLOW_AUTO, NS_STYLE_OVERFLOW_AUTO); - nsIContent* propagatedFrom = nullptr; + mViewportScrollbarOverrideNode = nullptr; // Don't propagate the scrollbar state in printing or print preview. if (!IsPaginated()) { - propagatedFrom = + mViewportScrollbarOverrideNode = GetPropagatedScrollbarStylesForViewport(this, &mViewportStyleScrollbar); } @@ -1438,13 +1439,13 @@ nsPresContext::UpdateViewportScrollbarStylesOverride() // the styles are from, so that the state of those elements is not // affected across fullscreen change. if (fullscreenElement != document->GetRootElement() && - fullscreenElement != propagatedFrom) { + fullscreenElement != mViewportScrollbarOverrideNode) { mViewportStyleScrollbar = ScrollbarStyles(NS_STYLE_OVERFLOW_HIDDEN, NS_STYLE_OVERFLOW_HIDDEN); } } - return propagatedFrom; + return mViewportScrollbarOverrideNode; } bool |