From 564d7fbeae25e5e1b8106bd99b5ac6fb346a50d7 Mon Sep 17 00:00:00 2001 From: Timothy Nikkel Date: Thu, 26 Aug 2010 22:01:43 -0500 Subject: [PATCH] imported patch addignoresuppressiontobuilder --- layout/base/nsDisplayList.cpp | 1 + layout/base/nsDisplayList.h | 11 ++++++++++- 2 files changed, 11 insertions(+), 1 deletion(-) diff --git a/layout/base/nsDisplayList.cpp b/layout/base/nsDisplayList.cpp index 63be3736371..a4ec55db2fb 100644 --- a/layout/base/nsDisplayList.cpp +++ b/layout/base/nsDisplayList.cpp @@ -74,6 +74,7 @@ nsDisplayListBuilder::nsDisplayListBuilder(nsIFrame* aReferenceFrame, mCurrentTableItem(nsnull), mBuildCaret(aBuildCaret), mEventDelivery(aIsForEvents), + mIgnoreSuppression(PR_FALSE), mIsAtRootOfPseudoStackingContext(PR_FALSE), mSelectedFramesOnly(PR_FALSE), mAccurateVisibleRegions(PR_FALSE), diff --git a/layout/base/nsDisplayList.h b/layout/base/nsDisplayList.h index f72512502e4..6f58763347c 100644 --- a/layout/base/nsDisplayList.h +++ b/layout/base/nsDisplayList.h @@ -213,7 +213,15 @@ public: * Allows callers to selectively override the regular paint suppression checks, * so that methods like GetFrameForPoint work when painting is suppressed. */ - void IgnorePaintSuppression() { mIsBackgroundOnly = PR_FALSE; } + void IgnorePaintSuppression() { + mIsBackgroundOnly = PR_FALSE; + mIgnoreSuppression = PR_TRUE; + } + /** + * @return PR_TRUE if this builder is set to ignore painting suppression in + * all documents. + */ + PRBool IsIgnoringPaintSuppression() { return mIgnoreSuppression; } /** * Call this if we're doing normal painting to the window. */ @@ -386,6 +394,7 @@ private: PRPackedBool mBuildCaret; PRPackedBool mEventDelivery; PRPackedBool mIsBackgroundOnly; + PRPackedBool mIgnoreSuppression; PRPackedBool mIsAtRootOfPseudoStackingContext; PRPackedBool mSelectedFramesOnly; PRPackedBool mAccurateVisibleRegions;