Bug 1022612. Part 21: Remove DidComputeVisibility checking. r=mattwoodrow

This commit is contained in:
Robert O'Callahan
2014-06-09 16:48:01 +12:00
parent b041721ef9
commit f38b84a210
4 changed files with 5 additions and 30 deletions

View File

@@ -2735,7 +2735,6 @@ ContainerState::ProcessDisplayItems(nsDisplayList* aList,
} }
aList->AppendToTop(&savedItems); aList->AppendToTop(&savedItems);
aList->SetDidComputeVisibility();
} }
void void

View File

@@ -1227,9 +1227,6 @@ nsDisplayList::ComputeVisibilityForSublist(nsDisplayListBuilder* aBuilder,
mIsOpaque = !aVisibleRegion->Intersects(mVisibleRect); mIsOpaque = !aVisibleRegion->Intersects(mVisibleRect);
mForceTransparentSurface = forceTransparentSurface; mForceTransparentSurface = forceTransparentSurface;
#if defined(DEBUG) || defined(MOZ_DUMP_PAINTING)
mDidComputeVisibility = true;
#endif
return anyVisible; return anyVisible;
} }

View File

@@ -1433,14 +1433,12 @@ public:
/** /**
* Create an empty list. * Create an empty list.
*/ */
nsDisplayList() : nsDisplayList()
mIsOpaque(false) : mIsOpaque(false)
, mForceTransparentSurface(false)
{ {
mTop = &mSentinel; mTop = &mSentinel;
mSentinel.mAbove = nullptr; mSentinel.mAbove = nullptr;
#if defined(DEBUG) || defined(MOZ_DUMP_PAINTING)
mDidComputeVisibility = false;
#endif
} }
~nsDisplayList() { ~nsDisplayList() {
if (mSentinel.mAbove) { if (mSentinel.mAbove) {
@@ -1626,16 +1624,13 @@ public:
* empty, i.e. everything visible in this list is opaque. * empty, i.e. everything visible in this list is opaque.
*/ */
bool IsOpaque() const { bool IsOpaque() const {
NS_ASSERTION(mDidComputeVisibility, "Need to have called ComputeVisibility");
return mIsOpaque; return mIsOpaque;
} }
/** /**
* Returns true if during ComputeVisibility any display item * Returns true if any display item requires the surface to be transparent.
* set the surface to be transparent.
*/ */
bool NeedsTransparentSurface() const { bool NeedsTransparentSurface() const {
NS_ASSERTION(mDidComputeVisibility, "Need to have called ComputeVisibility");
return mForceTransparentSurface; return mForceTransparentSurface;
} }
/** /**
@@ -1700,16 +1695,6 @@ public:
*/ */
nsRect GetVisibleRect() const; nsRect GetVisibleRect() const;
#if defined(DEBUG) || defined(MOZ_DUMP_PAINTING)
bool DidComputeVisibility() const { return mDidComputeVisibility; }
#endif
void SetDidComputeVisibility()
{
#if defined(DEBUG) || defined(MOZ_DUMP_PAINTING)
mDidComputeVisibility = true;
#endif
}
void SetIsOpaque() void SetIsOpaque()
{ {
mIsOpaque = true; mIsOpaque = true;
@@ -1739,9 +1724,6 @@ private:
// This is set to true by FrameLayerBuilder if any display item in this // This is set to true by FrameLayerBuilder if any display item in this
// list needs to force the surface containing this list to be transparent. // list needs to force the surface containing this list to be transparent.
bool mForceTransparentSurface; bool mForceTransparentSurface;
#if defined(DEBUG) || defined(MOZ_DUMP_PAINTING)
bool mDidComputeVisibility;
#endif
}; };
/** /**

View File

@@ -154,10 +154,7 @@ PrintDisplayItemTo(nsDisplayListBuilder* aBuilder, nsDisplayItem* aItem,
nsRect component = aItem->GetComponentAlphaBounds(aBuilder); nsRect component = aItem->GetComponentAlphaBounds(aBuilder);
nsDisplayList* list = aItem->GetChildren(); nsDisplayList* list = aItem->GetChildren();
const DisplayItemClip& clip = aItem->GetClip(); const DisplayItemClip& clip = aItem->GetClip();
nsRegion opaque; nsRegion opaque = aItem->GetOpaqueRegion(aBuilder, &snap);
if (!list || list->DidComputeVisibility()) {
opaque = aItem->GetOpaqueRegion(aBuilder, &snap);
}
if (aDumpHtml && aItem->Painted()) { if (aDumpHtml && aItem->Painted()) {
nsCString string(aItem->Name()); nsCString string(aItem->Name());
string.Append('-'); string.Append('-');