Remove NS_SCROLLFRAME_INVALIDATE_CONTENTS_ON_SCROLL as it doesn't appear to be needed any more
Remove NS_SCROLLFRAME_INVALIDATE_CONTENTS_ON_SCROLL as it doesn't appear to be needed any more
--- a/layout/generic/TextOverflow.cpp
+++ b/layout/generic/TextOverflow.cpp
@@ -316,18 +316,16 @@ TextOverflow::TextOverflow(nsDisplayList
mAdjustForPixelSnapping = mCanHaveInlineAxisScrollbar;
}
// Use a null containerSize to convert a vector from logical to physical.
const nsSize nullContainerSize;
mContentArea.MoveBy(mBlockWM,
LogicalPoint(mBlockWM,
mScrollableFrame->GetScrollPosition(),
nullContainerSize));
- nsIFrame* scrollFrame = do_QueryFrame(mScrollableFrame);
- scrollFrame->AddStateBits(NS_SCROLLFRAME_INVALIDATE_CONTENTS_ON_SCROLL);
}
uint8_t direction = aBlockFrame->StyleVisibility()->mDirection;
const nsStyleTextReset* style = aBlockFrame->StyleTextReset();
if (mBlockWM.IsBidiLTR()) {
mIStart.Init(style->mTextOverflow.GetLeft(direction));
mIEnd.Init(style->mTextOverflow.GetRight(direction));
} else {
mIStart.Init(style->mTextOverflow.GetRight(direction));
--- a/layout/generic/nsFrameStateBits.h
+++ b/layout/generic/nsFrameStateBits.h
@@ -547,27 +547,16 @@ FRAME_STATE_BIT(Block, 63, NS_BLOCK_HAS_
// == Frame state bits that apply to bullet frames ============================
FRAME_STATE_GROUP(Bullet, nsBulletFrame)
FRAME_STATE_BIT(Block, 62, BULLET_FRAME_HAS_FONT_INFLATION)
FRAME_STATE_BIT(Block, 63, BULLET_FRAME_IMAGE_LOADING)
-// == Frame state bits that apply to scroll frames ============================
-
-FRAME_STATE_GROUP(Scroll, nsIScrollableFrame)
-
-// When set, the next scroll operation on the scrollframe will invalidate its
-// entire contents. Useful for text-overflow.
-// This bit is cleared after each time the scrollframe is scrolled. Whoever
-// needs to set it should set it again on each paint.
-FRAME_STATE_BIT(Scroll, 20, NS_SCROLLFRAME_INVALIDATE_CONTENTS_ON_SCROLL)
-
-
// == Frame state bits that apply to image frames =============================
FRAME_STATE_GROUP(Image, nsImageFrame)
FRAME_STATE_BIT(Image, 20, IMAGE_SIZECONSTRAINED)
FRAME_STATE_BIT(Image, 21, IMAGE_GOTINITIALREFLOW)
--- a/layout/generic/nsGfxScrollFrame.cpp
+++ b/layout/generic/nsGfxScrollFrame.cpp
@@ -2415,22 +2415,16 @@ static void AdjustViews(nsIFrame* aFrame
}
nsFrameList::Enumerator childFrames(lists.CurrentList());
for (; !childFrames.AtEnd(); childFrames.Next()) {
AdjustViews(childFrames.get());
}
}
}
-static bool
-NeedToInvalidateOnScroll(nsIFrame* aFrame)
-{
- return (aFrame->GetStateBits() & NS_SCROLLFRAME_INVALIDATE_CONTENTS_ON_SCROLL) != 0;
-}
-
bool ScrollFrameHelper::IsIgnoringViewportClipping() const
{
if (!mIsRoot)
return false;
nsSubDocumentFrame* subdocFrame = static_cast<nsSubDocumentFrame*>
(nsLayoutUtils::GetCrossDocParentFrame(mOuter->PresContext()->PresShell()->GetRootFrame()));
return subdocFrame && !subdocFrame->ShouldClipSubdocument();
}
@@ -2597,24 +2591,17 @@ void ScrollFrameHelper::ScrollVisual()
// scroll frame of a content document, then IsAlwaysActive()
// will return true from now on and MarkNotRecentlyScrolled() won't
// have any effect.
mHasBeenScrolled = true;
AdjustViews(mScrolledFrame);
// We need to call this after fixing up the view positions
// to be consistent with the frame hierarchy.
- bool needToInvalidateOnScroll = NeedToInvalidateOnScroll(mOuter);
- mOuter->RemoveStateBits(NS_SCROLLFRAME_INVALIDATE_CONTENTS_ON_SCROLL);
- if (needToInvalidateOnScroll) {
- MarkNotRecentlyScrolled();
- } else {
- MarkRecentlyScrolled();
- }
-
+ MarkRecentlyScrolled();
}
/**
* Clamp desired scroll position aDesired and range [aDestLower, aDestUpper]
* to [aBoundLower, aBoundUpper] and then select the appunit value from among
* aBoundLower, aBoundUpper and those such that (aDesired - aCurrent) *
* aRes/aAppUnitsPerPixel is an integer (or as close as we can get
* modulo rounding to appunits) that is in [aDestLower, aDestUpper] and
@@ -3277,19 +3264,16 @@ ScrollFrameHelper::BuildDisplayList(nsDi
if (aBuilder->IsForFrameVisibility()) {
NotifyApproximateFrameVisibilityUpdate(false);
}
mOuter->DisplayBorderBackgroundOutline(aBuilder, aLists);
if (aBuilder->IsPaintingToWindow()) {
mScrollPosAtLastPaint = GetScrollPosition();
- if (IsMaybeScrollingActive() && NeedToInvalidateOnScroll(mOuter)) {
- MarkNotRecentlyScrolled();
- }
if (IsMaybeScrollingActive()) {
if (mScrollPosForLayerPixelAlignment == nsPoint(-1,-1)) {
mScrollPosForLayerPixelAlignment = mScrollPosAtLastPaint;
}
} else {
mScrollPosForLayerPixelAlignment = nsPoint(-1,-1);
}
}