Bug 590468. Part 6: Fix setting of nsDisplayList::mOpaque, and return it from nsDisplayWrapList::IsOpaque. r=tnikkel

This commit is contained in:
Robert O'Callahan 2010-08-27 18:15:08 -05:00
parent a69b505259
commit 8f331949bd
5 changed files with 7 additions and 5 deletions

View File

@ -176,13 +176,13 @@ PrintDisplayListTo(nsDisplayListBuilder* aBuilder, const nsDisplayList& aList,
}
nscolor color;
nsRect vis = i->GetVisibleRect();
nsDisplayList* list = i->GetList();
fprintf(aOutput, "%s %p(%s) (%d,%d,%d,%d)(%d,%d,%d,%d)%s%s\n",
i->Name(), (void*)f, NS_ConvertUTF16toUTF8(fName).get(),
rect.x, rect.y, rect.width, rect.height,
vis.x, vis.y, vis.width, vis.height,
i->IsOpaque(aBuilder) ? " opaque" : "",
((!list || list->DidComputeVisibility()) && i->IsOpaque(aBuilder)) ? " opaque" : "",
i->IsUniform(aBuilder, &color) ? " uniform" : "");
nsDisplayList* list = i->GetList();
if (list) {
PrintDisplayListTo(aBuilder, *list, aIndent + 4, aOutput);
}

View File

@ -1377,7 +1377,7 @@ nsLayoutUtils::PaintFrame(nsIRenderingContext* aRenderingContext, nsIFrame* aFra
}
#endif
list.ComputeVisibility(&builder, &visibleRegion);
list.ComputeVisibilityForRoot(&builder, &visibleRegion);
#ifdef DEBUG
if (gDumpPaintList) {

View File

@ -2536,7 +2536,7 @@ nsRootPresContext::GetPluginGeometryUpdates(nsIFrame* aChangedSubtree,
#endif
nsRegion visibleRegion(bounds);
list.ComputeVisibility(&builder, &visibleRegion);
list.ComputeVisibilityForRoot(&builder, &visibleRegion);
#ifdef DEBUG
if (gDumpPluginList) {

View File

@ -1568,7 +1568,7 @@ InvalidateFixedBackgroundFrames(nsIFrame* aRootFrame,
return;
nsRegion visibleRegion(aUpdateRect);
list.ComputeVisibility(&builder, &visibleRegion);
list.ComputeVisibilityForRoot(&builder, &visibleRegion);
InvalidateFixedBackgroundFramesFromList(&builder, aMovingFrame, list);
list.DeleteAll();

View File

@ -149,6 +149,8 @@ nsPageContentFrame::Reflow(nsPresContext* aPresContext,
aDesiredSize.height = aReflowState.availableHeight;
}
FinishAndStoreOverflow(&aDesiredSize);
NS_FRAME_SET_TRUNCATION(aStatus, aReflowState, aDesiredSize);
return NS_OK;
}