summaryrefslogtreecommitdiffstats
path: root/layout/mathml
diff options
context:
space:
mode:
authorwolfbeast <mcwerewolf@wolfbeast.com>2020-02-26 20:51:22 +0100
committerwolfbeast <mcwerewolf@wolfbeast.com>2020-04-14 12:59:57 +0200
commitdba09fa5c43276bb455cc4da6bd0ec302f798189 (patch)
tree577a2e42181433dea37dfd8febd7879dc66136e6 /layout/mathml
parentafe2b7fa5a576454d3a9b210c708890727243ede (diff)
downloadUXP-dba09fa5c43276bb455cc4da6bd0ec302f798189.tar
UXP-dba09fa5c43276bb455cc4da6bd0ec302f798189.tar.gz
UXP-dba09fa5c43276bb455cc4da6bd0ec302f798189.tar.lz
UXP-dba09fa5c43276bb455cc4da6bd0ec302f798189.tar.xz
UXP-dba09fa5c43276bb455cc4da6bd0ec302f798189.zip
Revert "Issue #1355 - Better way to create display items for column backgrounds"
This reverts commit 44c47c50388f526c2d134e16d5debebe94a0faf8.
Diffstat (limited to 'layout/mathml')
-rw-r--r--layout/mathml/nsMathMLChar.cpp3
-rw-r--r--layout/mathml/nsMathMLContainerFrame.cpp4
-rw-r--r--layout/mathml/nsMathMLContainerFrame.h1
-rw-r--r--layout/mathml/nsMathMLSelectedFrame.cpp5
-rw-r--r--layout/mathml/nsMathMLSelectedFrame.h1
-rw-r--r--layout/mathml/nsMathMLmencloseFrame.cpp3
-rw-r--r--layout/mathml/nsMathMLmencloseFrame.h1
-rw-r--r--layout/mathml/nsMathMLmfencedFrame.cpp3
-rw-r--r--layout/mathml/nsMathMLmfencedFrame.h1
-rw-r--r--layout/mathml/nsMathMLmfracFrame.cpp3
-rw-r--r--layout/mathml/nsMathMLmfracFrame.h1
-rw-r--r--layout/mathml/nsMathMLmoFrame.cpp3
-rw-r--r--layout/mathml/nsMathMLmoFrame.h1
-rw-r--r--layout/mathml/nsMathMLmrootFrame.cpp3
-rw-r--r--layout/mathml/nsMathMLmrootFrame.h1
15 files changed, 24 insertions, 10 deletions
diff --git a/layout/mathml/nsMathMLChar.cpp b/layout/mathml/nsMathMLChar.cpp
index 4b02a52d8..507e32b22 100644
--- a/layout/mathml/nsMathMLChar.cpp
+++ b/layout/mathml/nsMathMLChar.cpp
@@ -1992,8 +1992,7 @@ nsMathMLChar::Display(nsDisplayListBuilder* aBuilder,
if (styleContext != parentContext &&
NS_GET_A(backg->mBackgroundColor) > 0) {
nsDisplayBackgroundImage::AppendBackgroundItemsToTop(
- aBuilder, aForFrame, mRect + aBuilder->ToReferenceFrame(aForFrame),
- aLists.BorderBackground(),
+ aBuilder, aForFrame, mRect, aLists.BorderBackground(),
/* aAllowWillPaintBorderOptimization */ true, styleContext);
}
//else
diff --git a/layout/mathml/nsMathMLContainerFrame.cpp b/layout/mathml/nsMathMLContainerFrame.cpp
index 8e22ba204..93b631c9d 100644
--- a/layout/mathml/nsMathMLContainerFrame.cpp
+++ b/layout/mathml/nsMathMLContainerFrame.cpp
@@ -618,6 +618,7 @@ nsMathMLContainerFrame::PropagatePresentationDataFromChildAt(nsIFrame* aPa
void
nsMathMLContainerFrame::BuildDisplayList(nsDisplayListBuilder* aBuilder,
+ const nsRect& aDirtyRect,
const nsDisplayListSet& aLists)
{
// report an error if something wrong was found in this frame
@@ -632,7 +633,8 @@ nsMathMLContainerFrame::BuildDisplayList(nsDisplayListBuilder* aBuilder,
DisplayBorderBackgroundOutline(aBuilder, aLists);
- BuildDisplayListForNonBlockChildren(aBuilder, aLists, DISPLAY_CHILD_INLINE);
+ BuildDisplayListForNonBlockChildren(aBuilder, aDirtyRect, aLists,
+ DISPLAY_CHILD_INLINE);
#if defined(DEBUG) && defined(SHOW_BOUNDING_BOX)
// for visual debug
diff --git a/layout/mathml/nsMathMLContainerFrame.h b/layout/mathml/nsMathMLContainerFrame.h
index 61c59a4fe..94ccf70d2 100644
--- a/layout/mathml/nsMathMLContainerFrame.h
+++ b/layout/mathml/nsMathMLContainerFrame.h
@@ -126,6 +126,7 @@ public:
}
virtual void BuildDisplayList(nsDisplayListBuilder* aBuilder,
+ const nsRect& aDirtyRect,
const nsDisplayListSet& aLists) override;
virtual bool ComputeCustomOverflow(nsOverflowAreas& aOverflowAreas) override;
diff --git a/layout/mathml/nsMathMLSelectedFrame.cpp b/layout/mathml/nsMathMLSelectedFrame.cpp
index 11eb14d83..2378d0763 100644
--- a/layout/mathml/nsMathMLSelectedFrame.cpp
+++ b/layout/mathml/nsMathMLSelectedFrame.cpp
@@ -71,13 +71,14 @@ nsMathMLSelectedFrame::SetInitialChildList(ChildListID aListID,
// Only paint the selected child...
void
nsMathMLSelectedFrame::BuildDisplayList(nsDisplayListBuilder* aBuilder,
+ const nsRect& aDirtyRect,
const nsDisplayListSet& aLists)
{
// Report an error if something wrong was found in this frame.
// We can't call nsDisplayMathMLError from here,
// so ask nsMathMLContainerFrame to do the work for us.
if (NS_MATHML_HAS_ERROR(mPresentationData.flags)) {
- nsMathMLContainerFrame::BuildDisplayList(aBuilder, aLists);
+ nsMathMLContainerFrame::BuildDisplayList(aBuilder, aDirtyRect, aLists);
return;
}
@@ -88,7 +89,7 @@ nsMathMLSelectedFrame::BuildDisplayList(nsDisplayListBuilder* aBuilder,
// Put the child's background directly onto the content list
nsDisplayListSet set(aLists, aLists.Content());
// The children should be in content order
- BuildDisplayListForChild(aBuilder, childFrame, set);
+ BuildDisplayListForChild(aBuilder, childFrame, aDirtyRect, set);
}
#if defined(DEBUG) && defined(SHOW_BOUNDING_BOX)
diff --git a/layout/mathml/nsMathMLSelectedFrame.h b/layout/mathml/nsMathMLSelectedFrame.h
index 872351829..ad523a594 100644
--- a/layout/mathml/nsMathMLSelectedFrame.h
+++ b/layout/mathml/nsMathMLSelectedFrame.h
@@ -26,6 +26,7 @@ public:
ChildListChanged(int32_t aModType) override;
virtual void BuildDisplayList(nsDisplayListBuilder* aBuilder,
+ const nsRect& aDirtyRect,
const nsDisplayListSet& aLists) override;
virtual nsresult
diff --git a/layout/mathml/nsMathMLmencloseFrame.cpp b/layout/mathml/nsMathMLmencloseFrame.cpp
index 236a5ab07..64277a92e 100644
--- a/layout/mathml/nsMathMLmencloseFrame.cpp
+++ b/layout/mathml/nsMathMLmencloseFrame.cpp
@@ -201,11 +201,12 @@ nsMathMLmencloseFrame::TransmitAutomaticData()
void
nsMathMLmencloseFrame::BuildDisplayList(nsDisplayListBuilder* aBuilder,
+ const nsRect& aDirtyRect,
const nsDisplayListSet& aLists)
{
/////////////
// paint the menclosed content
- nsMathMLContainerFrame::BuildDisplayList(aBuilder, aLists);
+ nsMathMLContainerFrame::BuildDisplayList(aBuilder, aDirtyRect, aLists);
if (NS_MATHML_HAS_ERROR(mPresentationData.flags))
return;
diff --git a/layout/mathml/nsMathMLmencloseFrame.h b/layout/mathml/nsMathMLmencloseFrame.h
index e9e7a2b0a..82d73b2cf 100644
--- a/layout/mathml/nsMathMLmencloseFrame.h
+++ b/layout/mathml/nsMathMLmencloseFrame.h
@@ -70,6 +70,7 @@ public:
GetAdditionalStyleContext(int32_t aIndex) const override;
virtual void BuildDisplayList(nsDisplayListBuilder* aBuilder,
+ const nsRect& aDirtyRect,
const nsDisplayListSet& aLists) override;
NS_IMETHOD
diff --git a/layout/mathml/nsMathMLmfencedFrame.cpp b/layout/mathml/nsMathMLmfencedFrame.cpp
index 5d66e541b..ca780e649 100644
--- a/layout/mathml/nsMathMLmfencedFrame.cpp
+++ b/layout/mathml/nsMathMLmfencedFrame.cpp
@@ -161,11 +161,12 @@ nsMathMLmfencedFrame::CreateFencesAndSeparators(nsPresContext* aPresContext)
void
nsMathMLmfencedFrame::BuildDisplayList(nsDisplayListBuilder* aBuilder,
+ const nsRect& aDirtyRect,
const nsDisplayListSet& aLists)
{
/////////////
// display the content
- nsMathMLContainerFrame::BuildDisplayList(aBuilder, aLists);
+ nsMathMLContainerFrame::BuildDisplayList(aBuilder, aDirtyRect, aLists);
////////////
// display fences and separators
diff --git a/layout/mathml/nsMathMLmfencedFrame.h b/layout/mathml/nsMathMLmfencedFrame.h
index 472e5aed9..2d7535d0c 100644
--- a/layout/mathml/nsMathMLmfencedFrame.h
+++ b/layout/mathml/nsMathMLmfencedFrame.h
@@ -41,6 +41,7 @@ public:
nsReflowStatus& aStatus) override;
virtual void BuildDisplayList(nsDisplayListBuilder* aBuilder,
+ const nsRect& aDirtyRect,
const nsDisplayListSet& aLists) override;
virtual void
diff --git a/layout/mathml/nsMathMLmfracFrame.cpp b/layout/mathml/nsMathMLmfracFrame.cpp
index 731cca7d0..4e74faea2 100644
--- a/layout/mathml/nsMathMLmfracFrame.cpp
+++ b/layout/mathml/nsMathMLmfracFrame.cpp
@@ -149,11 +149,12 @@ nsMathMLmfracFrame::CalcLineThickness(nsPresContext* aPresContext,
void
nsMathMLmfracFrame::BuildDisplayList(nsDisplayListBuilder* aBuilder,
+ const nsRect& aDirtyRect,
const nsDisplayListSet& aLists)
{
/////////////
// paint the numerator and denominator
- nsMathMLContainerFrame::BuildDisplayList(aBuilder, aLists);
+ nsMathMLContainerFrame::BuildDisplayList(aBuilder, aDirtyRect, aLists);
/////////////
// paint the fraction line
diff --git a/layout/mathml/nsMathMLmfracFrame.h b/layout/mathml/nsMathMLmfracFrame.h
index 8ced03694..330a31180 100644
--- a/layout/mathml/nsMathMLmfracFrame.h
+++ b/layout/mathml/nsMathMLmfracFrame.h
@@ -67,6 +67,7 @@ public:
ReflowOutput& aDesiredSize) override;
virtual void BuildDisplayList(nsDisplayListBuilder* aBuilder,
+ const nsRect& aDirtyRect,
const nsDisplayListSet& aLists) override;
virtual nsresult
diff --git a/layout/mathml/nsMathMLmoFrame.cpp b/layout/mathml/nsMathMLmoFrame.cpp
index 3ef7b88d0..591b46309 100644
--- a/layout/mathml/nsMathMLmoFrame.cpp
+++ b/layout/mathml/nsMathMLmoFrame.cpp
@@ -78,13 +78,14 @@ nsMathMLmoFrame::UseMathMLChar()
void
nsMathMLmoFrame::BuildDisplayList(nsDisplayListBuilder* aBuilder,
+ const nsRect& aDirtyRect,
const nsDisplayListSet& aLists)
{
bool useMathMLChar = UseMathMLChar();
if (!useMathMLChar) {
// let the base class do everything
- nsMathMLTokenFrame::BuildDisplayList(aBuilder, aLists);
+ nsMathMLTokenFrame::BuildDisplayList(aBuilder, aDirtyRect, aLists);
} else {
DisplayBorderBackgroundOutline(aBuilder, aLists);
diff --git a/layout/mathml/nsMathMLmoFrame.h b/layout/mathml/nsMathMLmoFrame.h
index 15df62ac2..f25107a20 100644
--- a/layout/mathml/nsMathMLmoFrame.h
+++ b/layout/mathml/nsMathMLmoFrame.h
@@ -29,6 +29,7 @@ public:
GetAdditionalStyleContext(int32_t aIndex) const override;
virtual void BuildDisplayList(nsDisplayListBuilder* aBuilder,
+ const nsRect& aDirtyRect,
const nsDisplayListSet& aLists) override;
NS_IMETHOD
diff --git a/layout/mathml/nsMathMLmrootFrame.cpp b/layout/mathml/nsMathMLmrootFrame.cpp
index 300adcb91..4c81bde3d 100644
--- a/layout/mathml/nsMathMLmrootFrame.cpp
+++ b/layout/mathml/nsMathMLmrootFrame.cpp
@@ -77,11 +77,12 @@ nsMathMLmrootFrame::TransmitAutomaticData()
void
nsMathMLmrootFrame::BuildDisplayList(nsDisplayListBuilder* aBuilder,
+ const nsRect& aDirtyRect,
const nsDisplayListSet& aLists)
{
/////////////
// paint the content we are square-rooting
- nsMathMLContainerFrame::BuildDisplayList(aBuilder, aLists);
+ nsMathMLContainerFrame::BuildDisplayList(aBuilder, aDirtyRect, aLists);
/////////////
// paint the sqrt symbol
diff --git a/layout/mathml/nsMathMLmrootFrame.h b/layout/mathml/nsMathMLmrootFrame.h
index ddf6f89a6..0996af26b 100644
--- a/layout/mathml/nsMathMLmrootFrame.h
+++ b/layout/mathml/nsMathMLmrootFrame.h
@@ -51,6 +51,7 @@ public:
ReflowOutput& aDesiredSize) override;
virtual void BuildDisplayList(nsDisplayListBuilder* aBuilder,
+ const nsRect& aDirtyRect,
const nsDisplayListSet& aLists) override;
uint8_t