summaryrefslogtreecommitdiffstats
path: root/layout/forms
diff options
context:
space:
mode:
authorwin7-7 <win7-7@users.noreply.github.com>2020-05-08 15:20:01 +0300
committerMoonchild <moonchild@palemoon.org>2020-05-20 13:48:52 +0000
commit71137783ac6927bd0dc02fce1d6e61e6ec027753 (patch)
treedd21b7bca3f68759de3f0bc96ef465ce0a13c83f /layout/forms
parentfe0963002fb16b7e3e53f75004af0e79348c861c (diff)
downloadUXP-71137783ac6927bd0dc02fce1d6e61e6ec027753.tar
UXP-71137783ac6927bd0dc02fce1d6e61e6ec027753.tar.gz
UXP-71137783ac6927bd0dc02fce1d6e61e6ec027753.tar.lz
UXP-71137783ac6927bd0dc02fce1d6e61e6ec027753.tar.xz
UXP-71137783ac6927bd0dc02fce1d6e61e6ec027753.zip
Issue #1355 - Store the dirty rect on the display list builder rather than passing it as a parameter to BuildDisplayList
Also fix build bustage for De-unified layout/xul in nsRootBoxFrame.cpp
Diffstat (limited to 'layout/forms')
-rw-r--r--layout/forms/nsComboboxControlFrame.cpp11
-rw-r--r--layout/forms/nsComboboxControlFrame.h1
-rw-r--r--layout/forms/nsFieldSetFrame.cpp7
-rw-r--r--layout/forms/nsFieldSetFrame.h1
-rw-r--r--layout/forms/nsFileControlFrame.cpp3
-rw-r--r--layout/forms/nsFileControlFrame.h1
-rw-r--r--layout/forms/nsFormControlFrame.h1
-rw-r--r--layout/forms/nsGfxCheckboxControlFrame.cpp3
-rw-r--r--layout/forms/nsGfxCheckboxControlFrame.h1
-rw-r--r--layout/forms/nsGfxRadioControlFrame.cpp3
-rw-r--r--layout/forms/nsGfxRadioControlFrame.h1
-rw-r--r--layout/forms/nsHTMLButtonControlFrame.cpp3
-rw-r--r--layout/forms/nsHTMLButtonControlFrame.h1
-rw-r--r--layout/forms/nsListControlFrame.cpp3
-rw-r--r--layout/forms/nsListControlFrame.h1
-rw-r--r--layout/forms/nsProgressFrame.cpp3
-rw-r--r--layout/forms/nsProgressFrame.h1
-rw-r--r--layout/forms/nsRangeFrame.cpp5
-rw-r--r--layout/forms/nsRangeFrame.h1
-rw-r--r--layout/forms/nsSelectsAreaFrame.cpp8
-rw-r--r--layout/forms/nsSelectsAreaFrame.h2
-rw-r--r--layout/forms/nsTextControlFrame.cpp3
-rw-r--r--layout/forms/nsTextControlFrame.h1
23 files changed, 17 insertions, 48 deletions
diff --git a/layout/forms/nsComboboxControlFrame.cpp b/layout/forms/nsComboboxControlFrame.cpp
index 78185616f..1fa3c9c06 100644
--- a/layout/forms/nsComboboxControlFrame.cpp
+++ b/layout/forms/nsComboboxControlFrame.cpp
@@ -1294,7 +1294,6 @@ public:
nsReflowStatus& aStatus) override;
virtual void BuildDisplayList(nsDisplayListBuilder* aBuilder,
- const nsRect& aDirtyRect,
const nsDisplayListSet& aLists) override;
protected:
@@ -1335,11 +1334,10 @@ nsComboboxDisplayFrame::Reflow(nsPresContext* aPresContext,
void
nsComboboxDisplayFrame::BuildDisplayList(nsDisplayListBuilder* aBuilder,
- const nsRect& aDirtyRect,
const nsDisplayListSet& aLists)
{
nsDisplayListCollection set;
- nsBlockFrame::BuildDisplayList(aBuilder, aDirtyRect, set);
+ nsBlockFrame::BuildDisplayList(aBuilder, set);
// remove background items if parent frame is themed
if (mComboBox->IsThemed()) {
@@ -1547,13 +1545,8 @@ void nsDisplayComboboxFocus::Paint(nsDisplayListBuilder* aBuilder,
void
nsComboboxControlFrame::BuildDisplayList(nsDisplayListBuilder* aBuilder,
- const nsRect& aDirtyRect,
const nsDisplayListSet& aLists)
{
-#ifdef NOISY
- printf("%p paint at (%d, %d, %d, %d)\n", this,
- aDirtyRect.x, aDirtyRect.y, aDirtyRect.width, aDirtyRect.height);
-#endif
if (aBuilder->IsForEventDelivery()) {
// Don't allow children to receive events.
@@ -1562,7 +1555,7 @@ nsComboboxControlFrame::BuildDisplayList(nsDisplayListBuilder* aBuilder,
} else {
// REVIEW: Our in-flow child frames are inline-level so they will paint in our
// content list, so we don't need to mess with layers.
- nsBlockFrame::BuildDisplayList(aBuilder, aDirtyRect, aLists);
+ nsBlockFrame::BuildDisplayList(aBuilder, aLists);
}
// draw a focus indicator only when focus rings should be drawn
diff --git a/layout/forms/nsComboboxControlFrame.h b/layout/forms/nsComboboxControlFrame.h
index 22849e8d1..d83726d81 100644
--- a/layout/forms/nsComboboxControlFrame.h
+++ b/layout/forms/nsComboboxControlFrame.h
@@ -89,7 +89,6 @@ public:
nsEventStatus* aEventStatus) override;
virtual void BuildDisplayList(nsDisplayListBuilder* aBuilder,
- const nsRect& aDirtyRect,
const nsDisplayListSet& aLists) override;
void PaintFocus(DrawTarget& aDrawTarget, nsPoint aPt);
diff --git a/layout/forms/nsFieldSetFrame.cpp b/layout/forms/nsFieldSetFrame.cpp
index fc9f0571b..087f44728 100644
--- a/layout/forms/nsFieldSetFrame.cpp
+++ b/layout/forms/nsFieldSetFrame.cpp
@@ -153,7 +153,6 @@ nsDisplayFieldSetBorderBackground::ComputeInvalidationRegion(nsDisplayListBuilde
void
nsFieldSetFrame::BuildDisplayList(nsDisplayListBuilder* aBuilder,
- const nsRect& aDirtyRect,
const nsDisplayListSet& aLists) {
// Paint our background and border in a special way.
// REVIEW: We don't really need to check frame emptiness here; if it's empty,
@@ -180,7 +179,7 @@ nsFieldSetFrame::BuildDisplayList(nsDisplayListBuilder* aBuilder,
}
if (GetPrevInFlow()) {
- DisplayOverflowContainers(aBuilder, aDirtyRect, aLists);
+ DisplayOverflowContainers(aBuilder, aLists);
}
nsDisplayListCollection contentDisplayItems;
@@ -191,13 +190,13 @@ nsFieldSetFrame::BuildDisplayList(nsDisplayListBuilder* aBuilder,
// legend. However, we want the inner frame's display items to be
// after the legend's display items in z-order, so we need to save them
// and append them later.
- BuildDisplayListForChild(aBuilder, inner, aDirtyRect, contentDisplayItems);
+ BuildDisplayListForChild(aBuilder, inner, contentDisplayItems);
}
if (nsIFrame* legend = GetLegend()) {
// The legend's background goes on our BlockBorderBackgrounds list because
// it's a block child.
nsDisplayListSet set(aLists, aLists.BlockBorderBackgrounds());
- BuildDisplayListForChild(aBuilder, legend, aDirtyRect, set);
+ BuildDisplayListForChild(aBuilder, legend, set);
}
// Put the inner frame's display items on the master list. Note that this
// moves its border/background display items to our BorderBackground() list,
diff --git a/layout/forms/nsFieldSetFrame.h b/layout/forms/nsFieldSetFrame.h
index 5eb67c320..7c162515e 100644
--- a/layout/forms/nsFieldSetFrame.h
+++ b/layout/forms/nsFieldSetFrame.h
@@ -53,7 +53,6 @@ public:
nscoord* aBaseline) const override;
virtual void BuildDisplayList(nsDisplayListBuilder* aBuilder,
- const nsRect& aDirtyRect,
const nsDisplayListSet& aLists) override;
DrawResult PaintBorder(nsDisplayListBuilder* aBuilder,
diff --git a/layout/forms/nsFileControlFrame.cpp b/layout/forms/nsFileControlFrame.cpp
index 659371615..d60e4fb46 100644
--- a/layout/forms/nsFileControlFrame.cpp
+++ b/layout/forms/nsFileControlFrame.cpp
@@ -485,10 +485,9 @@ nsFileControlFrame::SetFormProperty(nsIAtom* aName,
void
nsFileControlFrame::BuildDisplayList(nsDisplayListBuilder* aBuilder,
- const nsRect& aDirtyRect,
const nsDisplayListSet& aLists)
{
- BuildDisplayListForInline(aBuilder, aDirtyRect, aLists);
+ BuildDisplayListForInline(aBuilder, aLists);
}
#ifdef ACCESSIBILITY
diff --git a/layout/forms/nsFileControlFrame.h b/layout/forms/nsFileControlFrame.h
index 55c51d426..4f975af29 100644
--- a/layout/forms/nsFileControlFrame.h
+++ b/layout/forms/nsFileControlFrame.h
@@ -33,7 +33,6 @@ public:
nsIFrame* aPrevInFlow) override;
virtual void BuildDisplayList(nsDisplayListBuilder* aBuilder,
- const nsRect& aDirtyRect,
const nsDisplayListSet& aLists) override;
NS_DECL_QUERYFRAME
diff --git a/layout/forms/nsFormControlFrame.h b/layout/forms/nsFormControlFrame.h
index fd3e95d93..41bb1d9e8 100644
--- a/layout/forms/nsFormControlFrame.h
+++ b/layout/forms/nsFormControlFrame.h
@@ -40,7 +40,6 @@ public:
// nsIFrame replacements
virtual void BuildDisplayList(nsDisplayListBuilder* aBuilder,
- const nsRect& aDirtyRect,
const nsDisplayListSet& aLists) override {
DO_GLOBAL_REFLOW_COUNT_DSP("nsFormControlFrame");
DisplayBorderBackgroundOutline(aBuilder, aLists);
diff --git a/layout/forms/nsGfxCheckboxControlFrame.cpp b/layout/forms/nsGfxCheckboxControlFrame.cpp
index 061c92349..80009eff2 100644
--- a/layout/forms/nsGfxCheckboxControlFrame.cpp
+++ b/layout/forms/nsGfxCheckboxControlFrame.cpp
@@ -107,10 +107,9 @@ nsGfxCheckboxControlFrame::AccessibleType()
//------------------------------------------------------------
void
nsGfxCheckboxControlFrame::BuildDisplayList(nsDisplayListBuilder* aBuilder,
- const nsRect& aDirtyRect,
const nsDisplayListSet& aLists)
{
- nsFormControlFrame::BuildDisplayList(aBuilder, aDirtyRect, aLists);
+ nsFormControlFrame::BuildDisplayList(aBuilder, aLists);
// Get current checked state through content model.
if ((!IsChecked() && !IsIndeterminate()) || !IsVisibleForPainting(aBuilder))
diff --git a/layout/forms/nsGfxCheckboxControlFrame.h b/layout/forms/nsGfxCheckboxControlFrame.h
index 70b8d8d6a..9234b5057 100644
--- a/layout/forms/nsGfxCheckboxControlFrame.h
+++ b/layout/forms/nsGfxCheckboxControlFrame.h
@@ -23,7 +23,6 @@ public:
#endif
virtual void BuildDisplayList(nsDisplayListBuilder* aBuilder,
- const nsRect& aDirtyRect,
const nsDisplayListSet& aLists) override;
#ifdef ACCESSIBILITY
diff --git a/layout/forms/nsGfxRadioControlFrame.cpp b/layout/forms/nsGfxRadioControlFrame.cpp
index e4a35a998..9c1ec070b 100644
--- a/layout/forms/nsGfxRadioControlFrame.cpp
+++ b/layout/forms/nsGfxRadioControlFrame.cpp
@@ -70,10 +70,9 @@ PaintCheckedRadioButton(nsIFrame* aFrame,
void
nsGfxRadioControlFrame::BuildDisplayList(nsDisplayListBuilder* aBuilder,
- const nsRect& aDirtyRect,
const nsDisplayListSet& aLists)
{
- nsFormControlFrame::BuildDisplayList(aBuilder, aDirtyRect, aLists);
+ nsFormControlFrame::BuildDisplayList(aBuilder, aLists);
if (!IsVisibleForPainting(aBuilder))
return;
diff --git a/layout/forms/nsGfxRadioControlFrame.h b/layout/forms/nsGfxRadioControlFrame.h
index f91e6b94c..dd268dec1 100644
--- a/layout/forms/nsGfxRadioControlFrame.h
+++ b/layout/forms/nsGfxRadioControlFrame.h
@@ -25,7 +25,6 @@ public:
#endif
virtual void BuildDisplayList(nsDisplayListBuilder* aBuilder,
- const nsRect& aDirtyRect,
const nsDisplayListSet& aLists) override;
};
diff --git a/layout/forms/nsHTMLButtonControlFrame.cpp b/layout/forms/nsHTMLButtonControlFrame.cpp
index c6d8e1c4f..10f24e1e0 100644
--- a/layout/forms/nsHTMLButtonControlFrame.cpp
+++ b/layout/forms/nsHTMLButtonControlFrame.cpp
@@ -98,7 +98,6 @@ nsHTMLButtonControlFrame::ShouldClipPaintingToBorderBox()
void
nsHTMLButtonControlFrame::BuildDisplayList(nsDisplayListBuilder* aBuilder,
- const nsRect& aDirtyRect,
const nsDisplayListSet& aLists)
{
// Clip to our border area for event hit testing.
@@ -132,7 +131,7 @@ nsHTMLButtonControlFrame::BuildDisplayList(nsDisplayListBuilder* aBuilder,
clipState.ClipContainingBlockDescendants(rect, hasRadii ? radii : nullptr);
}
- BuildDisplayListForChild(aBuilder, mFrames.FirstChild(), aDirtyRect, set,
+ BuildDisplayListForChild(aBuilder, mFrames.FirstChild(), set,
DISPLAY_CHILD_FORCE_PSEUDO_STACKING_CONTEXT);
// That should put the display items in set.Content()
}
diff --git a/layout/forms/nsHTMLButtonControlFrame.h b/layout/forms/nsHTMLButtonControlFrame.h
index 432afa12c..8837daf74 100644
--- a/layout/forms/nsHTMLButtonControlFrame.h
+++ b/layout/forms/nsHTMLButtonControlFrame.h
@@ -27,7 +27,6 @@ public:
NS_DECL_FRAMEARENA_HELPERS
virtual void BuildDisplayList(nsDisplayListBuilder* aBuilder,
- const nsRect& aDirtyRect,
const nsDisplayListSet& aLists) override;
virtual nscoord GetMinISize(nsRenderingContext *aRenderingContext) override;
diff --git a/layout/forms/nsListControlFrame.cpp b/layout/forms/nsListControlFrame.cpp
index 58e81039f..2233c5996 100644
--- a/layout/forms/nsListControlFrame.cpp
+++ b/layout/forms/nsListControlFrame.cpp
@@ -155,7 +155,6 @@ nsListControlFrame::DestroyFrom(nsIFrame* aDestructRoot)
void
nsListControlFrame::BuildDisplayList(nsDisplayListBuilder* aBuilder,
- const nsRect& aDirtyRect,
const nsDisplayListSet& aLists)
{
// We allow visibility:hidden <select>s to contain visible options.
@@ -180,7 +179,7 @@ nsListControlFrame::BuildDisplayList(nsDisplayListBuilder* aBuilder,
mLastDropdownBackstopColor));
}
- nsHTMLScrollFrame::BuildDisplayList(aBuilder, aDirtyRect, aLists);
+ nsHTMLScrollFrame::BuildDisplayList(aBuilder, aLists);
}
/**
diff --git a/layout/forms/nsListControlFrame.h b/layout/forms/nsListControlFrame.h
index 47f033a9b..d8df9ebd6 100644
--- a/layout/forms/nsListControlFrame.h
+++ b/layout/forms/nsListControlFrame.h
@@ -81,7 +81,6 @@ public:
virtual void DestroyFrom(nsIFrame* aDestructRoot) override;
virtual void BuildDisplayList(nsDisplayListBuilder* aBuilder,
- const nsRect& aDirtyRect,
const nsDisplayListSet& aLists) override;
virtual nsContainerFrame* GetContentInsertionFrame() override;
diff --git a/layout/forms/nsProgressFrame.cpp b/layout/forms/nsProgressFrame.cpp
index 2445defd3..1e3519f0e 100644
--- a/layout/forms/nsProgressFrame.cpp
+++ b/layout/forms/nsProgressFrame.cpp
@@ -101,10 +101,9 @@ NS_QUERYFRAME_TAIL_INHERITING(nsContainerFrame)
void
nsProgressFrame::BuildDisplayList(nsDisplayListBuilder* aBuilder,
- const nsRect& aDirtyRect,
const nsDisplayListSet& aLists)
{
- BuildDisplayListForInline(aBuilder, aDirtyRect, aLists);
+ BuildDisplayListForInline(aBuilder, aLists);
}
void
diff --git a/layout/forms/nsProgressFrame.h b/layout/forms/nsProgressFrame.h
index 01465ff7c..9cc72612f 100644
--- a/layout/forms/nsProgressFrame.h
+++ b/layout/forms/nsProgressFrame.h
@@ -32,7 +32,6 @@ public:
virtual void DestroyFrom(nsIFrame* aDestructRoot) override;
virtual void BuildDisplayList(nsDisplayListBuilder* aBuilder,
- const nsRect& aDirtyRect,
const nsDisplayListSet& aLists) override;
virtual void Reflow(nsPresContext* aCX,
diff --git a/layout/forms/nsRangeFrame.cpp b/layout/forms/nsRangeFrame.cpp
index 7590da066..9370acb87 100644
--- a/layout/forms/nsRangeFrame.cpp
+++ b/layout/forms/nsRangeFrame.cpp
@@ -259,7 +259,6 @@ nsDisplayRangeFocusRing::Paint(nsDisplayListBuilder* aBuilder,
void
nsRangeFrame::BuildDisplayList(nsDisplayListBuilder* aBuilder,
- const nsRect& aDirtyRect,
const nsDisplayListSet& aLists)
{
if (IsThemed()) {
@@ -274,10 +273,10 @@ nsRangeFrame::BuildDisplayList(nsDisplayListBuilder* aBuilder,
nsIFrame* thumb = mThumbDiv->GetPrimaryFrame();
if (thumb) {
nsDisplayListSet set(aLists, aLists.Content());
- BuildDisplayListForChild(aBuilder, thumb, aDirtyRect, set, DISPLAY_CHILD_INLINE);
+ BuildDisplayListForChild(aBuilder, thumb, set, DISPLAY_CHILD_INLINE);
}
} else {
- BuildDisplayListForInline(aBuilder, aDirtyRect, aLists);
+ BuildDisplayListForInline(aBuilder, aLists);
}
// Draw a focus outline if appropriate:
diff --git a/layout/forms/nsRangeFrame.h b/layout/forms/nsRangeFrame.h
index 8a2d34a40..b913b3002 100644
--- a/layout/forms/nsRangeFrame.h
+++ b/layout/forms/nsRangeFrame.h
@@ -43,7 +43,6 @@ public:
virtual void DestroyFrom(nsIFrame* aDestructRoot) override;
void BuildDisplayList(nsDisplayListBuilder* aBuilder,
- const nsRect& aDirtyRect,
const nsDisplayListSet& aLists) override;
virtual void Reflow(nsPresContext* aPresContext,
diff --git a/layout/forms/nsSelectsAreaFrame.cpp b/layout/forms/nsSelectsAreaFrame.cpp
index dd613ae9f..0177b9e77 100644
--- a/layout/forms/nsSelectsAreaFrame.cpp
+++ b/layout/forms/nsSelectsAreaFrame.cpp
@@ -126,16 +126,15 @@ public:
void
nsSelectsAreaFrame::BuildDisplayList(nsDisplayListBuilder* aBuilder,
- const nsRect& aDirtyRect,
const nsDisplayListSet& aLists)
{
if (!aBuilder->IsForEventDelivery()) {
- BuildDisplayListInternal(aBuilder, aDirtyRect, aLists);
+ BuildDisplayListInternal(aBuilder, aLists);
return;
}
nsDisplayListCollection set;
- BuildDisplayListInternal(aBuilder, aDirtyRect, set);
+ BuildDisplayListInternal(aBuilder, set);
nsOptionEventGrabberWrapper wrapper;
wrapper.WrapLists(aBuilder, this, set, aLists);
@@ -143,10 +142,9 @@ nsSelectsAreaFrame::BuildDisplayList(nsDisplayListBuilder* aBuilder,
void
nsSelectsAreaFrame::BuildDisplayListInternal(nsDisplayListBuilder* aBuilder,
- const nsRect& aDirtyRect,
const nsDisplayListSet& aLists)
{
- nsBlockFrame::BuildDisplayList(aBuilder, aDirtyRect, aLists);
+ nsBlockFrame::BuildDisplayList(aBuilder, aLists);
nsListControlFrame* listFrame = GetEnclosingListFrame(this);
if (listFrame && listFrame->IsFocused()) {
diff --git a/layout/forms/nsSelectsAreaFrame.h b/layout/forms/nsSelectsAreaFrame.h
index 3aac8a837..9b0a5b723 100644
--- a/layout/forms/nsSelectsAreaFrame.h
+++ b/layout/forms/nsSelectsAreaFrame.h
@@ -18,11 +18,9 @@ public:
nsFrameState aFlags);
virtual void BuildDisplayList(nsDisplayListBuilder* aBuilder,
- const nsRect& aDirtyRect,
const nsDisplayListSet& aLists) override;
void BuildDisplayListInternal(nsDisplayListBuilder* aBuilder,
- const nsRect& aDirtyRect,
const nsDisplayListSet& aLists);
virtual void Reflow(nsPresContext* aCX,
diff --git a/layout/forms/nsTextControlFrame.cpp b/layout/forms/nsTextControlFrame.cpp
index a65e5b972..fa64e3937 100644
--- a/layout/forms/nsTextControlFrame.cpp
+++ b/layout/forms/nsTextControlFrame.cpp
@@ -1434,7 +1434,6 @@ nsTextControlFrame::PeekOffset(nsPeekOffsetStruct *aPos)
void
nsTextControlFrame::BuildDisplayList(nsDisplayListBuilder* aBuilder,
- const nsRect& aDirtyRect,
const nsDisplayListSet& aLists)
{
/*
@@ -1462,7 +1461,7 @@ nsTextControlFrame::BuildDisplayList(nsDisplayListBuilder* aBuilder,
// placeholder has to be visible.
if (kid->GetContent() != txtCtrl->GetPlaceholderNode() ||
txtCtrl->GetPlaceholderVisibility()) {
- BuildDisplayListForChild(aBuilder, kid, aDirtyRect, set, 0);
+ BuildDisplayListForChild(aBuilder, kid, set, 0);
}
kid = kid->GetNextSibling();
}
diff --git a/layout/forms/nsTextControlFrame.h b/layout/forms/nsTextControlFrame.h
index 7fa39c5fb..620cc92b9 100644
--- a/layout/forms/nsTextControlFrame.h
+++ b/layout/forms/nsTextControlFrame.h
@@ -127,7 +127,6 @@ public:
nsFrameList& aChildList) override;
virtual void BuildDisplayList(nsDisplayListBuilder* aBuilder,
- const nsRect& aDirtyRect,
const nsDisplayListSet& aLists) override;
virtual mozilla::dom::Element*