Backed out changeset 0b616948a0f3 (bug 1214261) for 379461-3-container-xhtml.html failures CLOSED TREE

This commit is contained in:
Wes Kocher 2015-12-17 16:38:49 -08:00
parent 74655ae5df
commit f6ebb4a5e7
2 changed files with 13 additions and 14 deletions

View File

@ -2676,10 +2676,11 @@ struct HoveredStateComparator
void
ScrollFrameHelper::AppendScrollPartsTo(nsDisplayListBuilder* aBuilder,
const nsRect& aDirtyRect,
const nsDisplayListSet& aLists,
bool aCreateLayer,
bool aPositioned)
const nsRect& aDirtyRect,
const nsDisplayListSet& aLists,
bool aUsingDisplayPort,
bool aCreateLayer,
bool aPositioned)
{
nsITheme* theme = mOuter->PresContext()->GetTheme();
if (theme &&
@ -2733,12 +2734,9 @@ ScrollFrameHelper::AppendScrollPartsTo(nsDisplayListBuilder* aBuilder,
}
// The display port doesn't necessarily include the scrollbars, so just
// include all of the scrollbars if we are in a RCD-RSF. We only do
// this for the root scrollframe of the root content document, which is
// zoomable, and where the scrollbar sizes are bounded by the widget.
nsRect dirty = mIsRoot && mOuter->PresContext()->IsRootContentDocument()
? scrollParts[i]->GetVisualOverflowRectRelativeToParent()
: aDirtyRect;
// include all of the scrollbars if we have a display port.
nsRect dirty = aUsingDisplayPort ?
scrollParts[i]->GetVisualOverflowRectRelativeToParent() : aDirtyRect;
nsDisplayListBuilder::AutoBuildingDisplayList
buildingForChild(aBuilder, scrollParts[i],
dirty + mOuter->GetOffsetTo(scrollParts[i]), true);
@ -2936,7 +2934,7 @@ ScrollFrameHelper::BuildDisplayList(nsDisplayListBuilder* aBuilder,
if (addScrollBars) {
// Add classic scrollbars.
AppendScrollPartsTo(aBuilder, aDirtyRect, aLists,
AppendScrollPartsTo(aBuilder, aDirtyRect, aLists, usingDisplayPort,
createLayersForScrollbars, false);
}
@ -2948,7 +2946,7 @@ ScrollFrameHelper::BuildDisplayList(nsDisplayListBuilder* aBuilder,
if (addScrollBars) {
// Add overlay scrollbars.
AppendScrollPartsTo(aBuilder, aDirtyRect, aLists,
AppendScrollPartsTo(aBuilder, aDirtyRect, aLists, usingDisplayPort,
createLayersForScrollbars, true);
}
@ -3003,7 +3001,7 @@ ScrollFrameHelper::BuildDisplayList(nsDisplayListBuilder* aBuilder,
// Note that this does not apply for overlay scrollbars; those are drawn
// in the positioned-elements layer on top of everything else by the call
// to AppendScrollPartsTo(..., true) further down.
AppendScrollPartsTo(aBuilder, aDirtyRect, aLists,
AppendScrollPartsTo(aBuilder, aDirtyRect, aLists, usingDisplayPort,
createLayersForScrollbars, false);
if (aBuilder->IsForImageVisibility()) {
@ -3194,7 +3192,7 @@ ScrollFrameHelper::BuildDisplayList(nsDisplayListBuilder* aBuilder,
}
}
// Now display overlay scrollbars and the resizer, if we have one.
AppendScrollPartsTo(aBuilder, aDirtyRect, scrolledContent,
AppendScrollPartsTo(aBuilder, aDirtyRect, scrolledContent, usingDisplayPort,
createLayersForScrollbars, true);
scrolledContent.MoveTo(aLists);
}

View File

@ -78,6 +78,7 @@ public:
void AppendScrollPartsTo(nsDisplayListBuilder* aBuilder,
const nsRect& aDirtyRect,
const nsDisplayListSet& aLists,
bool aUsingDisplayPort,
bool aCreateLayer,
bool aPositioned);