mirror of
https://repo.dactyloidae.xyz/Dactyloidae/UXP.git
synced 2026-10-07 07:47:30 +09:00
moebius#138: Optimize operations on root of deeply-nested frame tree
https://github.com/MoonchildProductions/moebius/pull/138
This commit is contained in:
parent
02f3024a9c
commit
85692a1198
23 changed files with 651 additions and 40 deletions
|
|
@ -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
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue