diff --git a/layout/mathml/base/src/nsIMathMLFrame.h b/layout/mathml/base/src/nsIMathMLFrame.h index 03157dd9ad3..81e4c80fddf 100644 --- a/layout/mathml/base/src/nsIMathMLFrame.h +++ b/layout/mathml/base/src/nsIMathMLFrame.h @@ -103,8 +103,7 @@ public: * of the frame, on output the size after stretching. */ NS_IMETHOD - Stretch(nsPresContext* aPresContext, - nsIRenderingContext& aRenderingContext, + Stretch(nsIRenderingContext& aRenderingContext, nsStretchDirection aStretchDirection, nsBoundingMetrics& aContainerSize, nsHTMLReflowMetrics& aDesiredStretchSize) = 0; @@ -140,8 +139,7 @@ public: * space you want for border/padding in the desired size you return. */ NS_IMETHOD - Place(nsPresContext* aPresContext, - nsIRenderingContext& aRenderingContext, + Place(nsIRenderingContext& aRenderingContext, PRBool aPlaceOrigin, nsHTMLReflowMetrics& aDesiredSize) = 0; @@ -207,11 +205,10 @@ public: */ NS_IMETHOD - InheritAutomaticData(nsPresContext* aPresContext, - nsIFrame* aParent) = 0; + InheritAutomaticData(nsIFrame* aParent) = 0; NS_IMETHOD - TransmitAutomaticData(nsPresContext* aPresContext) = 0; + TransmitAutomaticData() = 0; /* UpdatePresentationData : * Increments the scriptlevel of the frame, and updates its displaystyle and @@ -243,8 +240,7 @@ public: * update some flags in the frame, leaving the other flags unchanged. */ NS_IMETHOD - UpdatePresentationData(nsPresContext* aPresContext, - PRInt32 aScriptLevelIncrement, + UpdatePresentationData(PRInt32 aScriptLevelIncrement, PRUint32 aFlagsValues, PRUint32 aFlagsToUpdate) = 0; @@ -279,8 +275,7 @@ public: * for more details about this parameter. */ NS_IMETHOD - UpdatePresentationDataFromChildAt(nsPresContext* aPresContext, - PRInt32 aFirstIndex, + UpdatePresentationDataFromChildAt(PRInt32 aFirstIndex, PRInt32 aLastIndex, PRInt32 aScriptLevelIncrement, PRUint32 aFlagsValues, @@ -315,8 +310,7 @@ public: * http://groups.google.com/groups?selm=3A9192B5.D22B6C38%40maths.uq.edu.au */ NS_IMETHOD - ReResolveScriptStyle(nsPresContext* aPresContext, - PRInt32 aParentScriptLevel) = 0; + ReResolveScriptStyle(PRInt32 aParentScriptLevel) = 0; }; // struct used by a container frame to keep track of its embellishments. diff --git a/layout/mathml/base/src/nsMathMLContainerFrame.cpp b/layout/mathml/base/src/nsMathMLContainerFrame.cpp index a997f358003..f02c1d1fe89 100644 --- a/layout/mathml/base/src/nsMathMLContainerFrame.cpp +++ b/layout/mathml/base/src/nsMathMLContainerFrame.cpp @@ -82,8 +82,7 @@ NS_IMPL_QUERY_INTERFACE_INHERITED1(nsMathMLContainerFrame, nsHTMLContainerFrame, // error handlers // provide a feedback to the user when a frame with bad markup can not be rendered nsresult -nsMathMLContainerFrame::ReflowError(nsPresContext* aPresContext, - nsIRenderingContext& aRenderingContext, +nsMathMLContainerFrame::ReflowError(nsIRenderingContext& aRenderingContext, nsHTMLReflowMetrics& aDesiredSize) { nsresult rv; @@ -126,8 +125,7 @@ nsMathMLContainerFrame::ReflowError(nsPresContext* aPresContext, } nsresult -nsMathMLContainerFrame::PaintError(nsPresContext* aPresContext, - nsIRenderingContext& aRenderingContext, +nsMathMLContainerFrame::PaintError(nsIRenderingContext& aRenderingContext, const nsRect& aDirtyRect, nsFramePaintLayer aWhichLayer) { @@ -194,8 +192,7 @@ nsMathMLContainerFrame::GetReflowAndBoundingMetricsFor(nsIFrame* aFra // helper to get the preferred size that a container frame should use to fire // the stretch on its stretchy child frames. void -nsMathMLContainerFrame::GetPreferredStretchSize(nsPresContext* aPresContext, - nsIRenderingContext& aRenderingContext, +nsMathMLContainerFrame::GetPreferredStretchSize(nsIRenderingContext& aRenderingContext, PRUint32 aOptions, nsStretchDirection aStretchDirection, nsBoundingMetrics& aPreferredStretchSize) @@ -207,7 +204,7 @@ nsMathMLContainerFrame::GetPreferredStretchSize(nsPresContext* aPresContext else if (aOptions & STRETCH_CONSIDER_EMBELLISHMENTS) { // compute our up-to-date size using Place() nsHTMLReflowMetrics metrics(nsnull); - Place(aPresContext, aRenderingContext, PR_FALSE, metrics); + Place(aRenderingContext, PR_FALSE, metrics); aPreferredStretchSize = metrics.mBoundingMetrics; } else { @@ -283,8 +280,7 @@ nsMathMLContainerFrame::GetPreferredStretchSize(nsPresContext* aPresContext } NS_IMETHODIMP -nsMathMLContainerFrame::Stretch(nsPresContext* aPresContext, - nsIRenderingContext& aRenderingContext, +nsMathMLContainerFrame::Stretch(nsIRenderingContext& aRenderingContext, nsStretchDirection aStretchDirection, nsBoundingMetrics& aContainerSize, nsHTMLReflowMetrics& aDesiredStretchSize) @@ -337,14 +333,14 @@ nsMathMLContainerFrame::Stretch(nsPresContext* aPresContext, containerSize = childSize.mBoundingMetrics; } else { - GetPreferredStretchSize(aPresContext, aRenderingContext, + GetPreferredStretchSize(aRenderingContext, stretchAll ? STRETCH_CONSIDER_EMBELLISHMENTS : 0, mEmbellishData.direction, containerSize); } } // do the stretching... - mathMLFrame->Stretch(aPresContext, aRenderingContext, + mathMLFrame->Stretch(aRenderingContext, mEmbellishData.direction, containerSize, childSize); // store the updated metrics @@ -361,7 +357,7 @@ nsMathMLContainerFrame::Stretch(nsPresContext* aPresContext, NS_MATHML_WILL_STRETCH_ALL_CHILDREN_VERTICALLY(mPresentationData.flags) ? NS_STRETCH_DIRECTION_VERTICAL : NS_STRETCH_DIRECTION_HORIZONTAL; - GetPreferredStretchSize(aPresContext, aRenderingContext, STRETCH_CONSIDER_EMBELLISHMENTS, + GetPreferredStretchSize(aRenderingContext, STRETCH_CONSIDER_EMBELLISHMENTS, stretchDir, containerSize); childFrame = mFrames.FirstChild(); @@ -373,8 +369,8 @@ nsMathMLContainerFrame::Stretch(nsPresContext* aPresContext, GetReflowAndBoundingMetricsFor(childFrame, childSize, childSize.mBoundingMetrics); // do the stretching... - mathMLFrame->Stretch(aPresContext, aRenderingContext, - stretchDir, containerSize, childSize); + mathMLFrame->Stretch(aRenderingContext, stretchDir, + containerSize, childSize); // store the updated metrics childFrame->SetRect(nsRect(childSize.descent, childSize.ascent, childSize.width, childSize.height)); @@ -385,7 +381,7 @@ nsMathMLContainerFrame::Stretch(nsPresContext* aPresContext, } // re-position all our children - Place(aPresContext, aRenderingContext, PR_TRUE, aDesiredStretchSize); + Place(aRenderingContext, PR_TRUE, aDesiredStretchSize); // If our parent is not embellished, it means we are the outermost embellished // container and so we put the spacing, otherwise we don't include the spacing, @@ -428,8 +424,7 @@ nsMathMLContainerFrame::Stretch(nsPresContext* aPresContext, } nsresult -nsMathMLContainerFrame::FinalizeReflow(nsPresContext* aPresContext, - nsIRenderingContext& aRenderingContext, +nsMathMLContainerFrame::FinalizeReflow(nsIRenderingContext& aRenderingContext, nsHTMLReflowMetrics& aDesiredSize) { // During reflow, we use rect.x and rect.y as placeholders for the child's ascent @@ -456,7 +451,7 @@ nsMathMLContainerFrame::FinalizeReflow(nsPresContext* aPresContext, PRBool placeOrigin = !NS_MATHML_IS_EMBELLISH_OPERATOR(mEmbellishData.flags) || (mEmbellishData.coreFrame != this && !mEmbellishData.nextFrame && mEmbellishData.direction == NS_STRETCH_DIRECTION_UNSUPPORTED); - Place(aPresContext, aRenderingContext, placeOrigin, aDesiredSize); + Place(aRenderingContext, placeOrigin, aDesiredSize); if (!placeOrigin) { // This means the rect.x and rect.y of our children were not set!! @@ -493,11 +488,11 @@ nsMathMLContainerFrame::FinalizeReflow(nsPresContext* aPresContext, } else { /* case of ...... or friends */ // compute a size that doesn't include embellishments - GetPreferredStretchSize(aPresContext, aRenderingContext, 0, - mEmbellishData.direction, defaultSize); + GetPreferredStretchSize(aRenderingContext, 0, mEmbellishData.direction, + defaultSize); } - Stretch(aPresContext, aRenderingContext, NS_STRETCH_DIRECTION_DEFAULT, - defaultSize, aDesiredSize); + Stretch(aRenderingContext, NS_STRETCH_DIRECTION_DEFAULT, defaultSize, + aDesiredSize); } } if (aDesiredSize.mComputeMEW) { @@ -507,7 +502,7 @@ nsMathMLContainerFrame::FinalizeReflow(nsPresContext* aPresContext, aDesiredSize.mBoundingMetrics = mBoundingMetrics; // see if we should fix the spacing - FixInterFrameSpacing(aPresContext, aDesiredSize); + FixInterFrameSpacing(aDesiredSize); return NS_OK; } @@ -523,8 +518,7 @@ nsMathMLContainerFrame::FinalizeReflow(nsPresContext* aPresContext, // helper to let the update of presentation data pass through // a subtree that may contain non-mathml container frames /* static */ void -nsMathMLContainerFrame::PropagatePresentationDataFor(nsPresContext* aPresContext, - nsIFrame* aFrame, +nsMathMLContainerFrame::PropagatePresentationDataFor(nsIFrame* aFrame, PRInt32 aScriptLevelIncrement, PRUint32 aFlagsValues, PRUint32 aFlagsToUpdate) @@ -535,18 +529,18 @@ nsMathMLContainerFrame::PropagatePresentationDataFor(nsPresContext* aPresContext aFrame->QueryInterface(NS_GET_IID(nsIMathMLFrame), (void**)&mathMLFrame); if (mathMLFrame) { // update - mathMLFrame->UpdatePresentationData(aPresContext, - aScriptLevelIncrement, aFlagsValues, aFlagsToUpdate); + mathMLFrame->UpdatePresentationData(aScriptLevelIncrement, aFlagsValues, + aFlagsToUpdate); // propagate using the base method to make sure that the control // is passed on to MathML frames that may be overloading the method - mathMLFrame->UpdatePresentationDataFromChildAt(aPresContext, - 0, -1, aScriptLevelIncrement, aFlagsValues, aFlagsToUpdate); + mathMLFrame->UpdatePresentationDataFromChildAt(0, -1, + aScriptLevelIncrement, aFlagsValues, aFlagsToUpdate); } else { // propagate down the subtrees nsIFrame* childFrame = aFrame->GetFirstChild(nsnull); while (childFrame) { - PropagatePresentationDataFor(aPresContext, childFrame, + PropagatePresentationDataFor(childFrame, aScriptLevelIncrement, aFlagsValues, aFlagsToUpdate); childFrame = childFrame->GetNextSibling(); } @@ -554,8 +548,7 @@ nsMathMLContainerFrame::PropagatePresentationDataFor(nsPresContext* aPresContext } /* static */ void -nsMathMLContainerFrame::PropagatePresentationDataFromChildAt(nsPresContext* aPresContext, - nsIFrame* aParentFrame, +nsMathMLContainerFrame::PropagatePresentationDataFromChildAt(nsIFrame* aParentFrame, PRInt32 aFirstChildIndex, PRInt32 aLastChildIndex, PRInt32 aScriptLevelIncrement, @@ -570,7 +563,7 @@ nsMathMLContainerFrame::PropagatePresentationDataFromChildAt(nsPresContext* aPre if ((index >= aFirstChildIndex) && ((aLastChildIndex <= 0) || ((aLastChildIndex > 0) && (index <= aLastChildIndex)))) { - PropagatePresentationDataFor(aPresContext, childFrame, + PropagatePresentationDataFor(childFrame, aScriptLevelIncrement, aFlagsValues, aFlagsToUpdate); } index++; @@ -584,8 +577,7 @@ nsMathMLContainerFrame::PropagatePresentationDataFromChildAt(nsPresContext* aPre // to do about it at the moment. For background on the problem @see // http://groups.google.com/groups?selm=3A9192B5.D22B6C38%40maths.uq.edu.au /* static */ void -nsMathMLContainerFrame::PropagateScriptStyleFor(nsPresContext* aPresContext, - nsIFrame* aFrame, +nsMathMLContainerFrame::PropagateScriptStyleFor(nsIFrame* aFrame, PRInt32 aParentScriptLevel) { nsIMathMLFrame* mathMLFrame; @@ -630,7 +622,7 @@ nsMathMLContainerFrame::PropagateScriptStyleFor(nsPresContext* aPresContext, else if (eCSSUnit_Percent == unit) scriptminsize = nscoord(float(scriptminsize) * cssValue.GetPercentValue()); else if (eCSSUnit_Null != unit) - scriptminsize = CalcLength(aPresContext, mStyleContext, cssValue); + scriptminsize = CalcLength(mStyleContext, cssValue); } } #endif @@ -666,7 +658,7 @@ nsMathMLContainerFrame::PropagateScriptStyleFor(nsPresContext* aPresContext, } // now, re-resolve the style contexts in our subtree - nsFrameManager *fm = aPresContext->FrameManager(); + nsFrameManager *fm = aFrame->GetPresContext()->FrameManager(); nsStyleChangeList changeList; fm->ComputeStyleChangeFor(aFrame, &changeList, NS_STYLE_HINT_NONE); #ifdef DEBUG @@ -683,10 +675,10 @@ nsMathMLContainerFrame::PropagateScriptStyleFor(nsPresContext* aPresContext, if (mathMLFrame) { // propagate using the base method to make sure that the control // is passed on to MathML frames that may be overloading the method - mathMLFrame->ReResolveScriptStyle(aPresContext, aParentScriptLevel); + mathMLFrame->ReResolveScriptStyle(aParentScriptLevel); } else { - PropagateScriptStyleFor(aPresContext, childFrame, aParentScriptLevel); + PropagateScriptStyleFor(childFrame, aParentScriptLevel); } childFrame = childFrame->GetNextSibling(); } @@ -707,10 +699,11 @@ nsMathMLContainerFrame::PropagateScriptStyleFor(nsPresContext* aPresContext, // with a wrapper. One must either use the parent (or the unique child) // for such operations (@see nsMathMLForeignFrameWrapper). nsresult -nsMathMLContainerFrame::WrapForeignFrames(nsPresContext* aPresContext) +nsMathMLContainerFrame::WrapForeignFrames() { nsIFrame* next = mFrames.FirstChild(); - nsFrameManager *frameManager = aPresContext->FrameManager(); + nsPresContext* presContext = GetPresContext(); + nsFrameManager *frameManager = presContext->FrameManager(); while (next) { nsIFrame* child = next; @@ -720,24 +713,24 @@ nsMathMLContainerFrame::WrapForeignFrames(nsPresContext* aPresContext) if (inlineFrame) { // create a new wrapper frame to wrap this child nsIFrame* wrapper; - nsresult rv = NS_NewMathMLForeignFrameWrapper(aPresContext->PresShell(), + nsresult rv = NS_NewMathMLForeignFrameWrapper(presContext->PresShell(), &wrapper); if (NS_FAILED(rv)) return rv; nsRefPtr newStyleContext; - newStyleContext = aPresContext->StyleSet()-> + newStyleContext = presContext->StyleSet()-> ResolvePseudoStyleFor(mContent, nsCSSAnonBoxes::mozAnonymousBlock, mStyleContext); - rv = wrapper->Init(aPresContext, mContent, this, newStyleContext, nsnull); + rv = wrapper->Init(presContext, mContent, this, newStyleContext, nsnull); if (NS_FAILED(rv)) { - wrapper->Destroy(aPresContext); + wrapper->Destroy(presContext); return rv; } - mFrames.ReplaceFrame(aPresContext, this, child, wrapper, PR_FALSE); + mFrames.ReplaceFrame(this, child, wrapper, PR_FALSE); child->SetParent(wrapper); child->SetNextSibling(nsnull); frameManager->ReParentStyleContext(child, newStyleContext); - wrapper->SetInitialChildList(aPresContext, nsnull, child); + wrapper->SetInitialChildList(presContext, nsnull, child); } } return NS_OK; @@ -756,8 +749,7 @@ nsMathMLContainerFrame::Paint(nsPresContext* aPresContext, // report an error if something wrong was found in this frame if (NS_MATHML_HAS_ERROR(mPresentationData.flags)) { - return PaintError(aPresContext, aRenderingContext, - aDirtyRect, aWhichLayer); + return PaintError(aRenderingContext, aDirtyRect, aWhichLayer); } // Paint inline element backgrounds in the foreground layer (bug 36710). @@ -831,7 +823,7 @@ nsMathMLContainerFrame::SetInitialChildList(nsPresContext* aPresContext, // met when we mix things. // So wrap foreign children in nsMathMLForeignFrameWrapper frames - WrapForeignFrames(aPresContext); + WrapForeignFrames(); return rv; // ...We will build our automatic MathML data once the entire ... @@ -842,8 +834,7 @@ nsMathMLContainerFrame::SetInitialChildList(nsPresContext* aPresContext, // in aParentFrame itself (except for those particular operations that the // parent frame may do in its TransmitAutomaticData()). /* static */ void -nsMathMLContainerFrame::RebuildAutomaticDataForChildren(nsPresContext* aPresContext, - nsIFrame* aParentFrame) +nsMathMLContainerFrame::RebuildAutomaticDataForChildren(nsIFrame* aParentFrame) { // 1. As we descend the tree, make each child frame inherit data from // the parent @@ -854,21 +845,20 @@ nsMathMLContainerFrame::RebuildAutomaticDataForChildren(nsPresContext* aPresCont nsIMathMLFrame* childMathMLFrame; childFrame->QueryInterface(NS_GET_IID(nsIMathMLFrame), (void**)&childMathMLFrame); if (childMathMLFrame) { - childMathMLFrame->InheritAutomaticData(aPresContext, aParentFrame); + childMathMLFrame->InheritAutomaticData(aParentFrame); } - RebuildAutomaticDataForChildren(aPresContext, childFrame); + RebuildAutomaticDataForChildren(childFrame); childFrame = childFrame->GetNextSibling(); } nsIMathMLFrame* mathMLFrame; aParentFrame->QueryInterface(NS_GET_IID(nsIMathMLFrame), (void**)&mathMLFrame); if (mathMLFrame) { - mathMLFrame->TransmitAutomaticData(aPresContext); + mathMLFrame->TransmitAutomaticData(); } } /* static */ nsresult -nsMathMLContainerFrame::ReLayoutChildren(nsPresContext* aPresContext, - nsIFrame* aParentFrame) +nsMathMLContainerFrame::ReLayoutChildren(nsIFrame* aParentFrame) { // walk-up to the first frame that is a MathML frame, stop if we reach PRInt32 parentScriptLevel = 0; @@ -906,7 +896,7 @@ nsMathMLContainerFrame::ReLayoutChildren(nsPresContext* aPresContext, GetEmbellishDataFrom(frame, oldData); #endif - RebuildAutomaticDataForChildren(aPresContext, frame); + RebuildAutomaticDataForChildren(frame); #ifdef DEBUG_rbs nsEmbellishData newData; @@ -925,16 +915,16 @@ nsMathMLContainerFrame::ReLayoutChildren(nsPresContext* aPresContext, if (mathMLFrame) { // propagate using the base method to make sure that the control // is passed on to MathML frames that may be overloading the method - mathMLFrame->ReResolveScriptStyle(aPresContext, parentScriptLevel); + mathMLFrame->ReResolveScriptStyle(parentScriptLevel); } else { - PropagateScriptStyleFor(aPresContext, childFrame, parentScriptLevel); + PropagateScriptStyleFor(childFrame, parentScriptLevel); } childFrame = childFrame->GetNextSibling(); } // Ask our parent frame to reflow us - return frame->ReflowDirtyChild(aPresContext->PresShell(), nsnull); + return frame->ReflowDirtyChild(frame->GetPresContext()->PresShell(), nsnull); } // There are precise rules governing children of a MathML frame, @@ -942,20 +932,17 @@ nsMathMLContainerFrame::ReLayoutChildren(nsPresContext* aPresContext, // Hence for things to work, callers must use Append/Insert/etc wisely. nsresult -nsMathMLContainerFrame::ChildListChanged(nsPresContext* aPresContext, - PRInt32 aModType) +nsMathMLContainerFrame::ChildListChanged(PRInt32 aModType) { if (aModType != nsIDOMMutationEvent::REMOVAL) { // wrap any new foreign child that may have crept in - WrapForeignFrames(aPresContext); + WrapForeignFrames(); } - return ReLayoutChildren(aPresContext, this); + return ReLayoutChildren(this); } NS_IMETHODIMP -nsMathMLContainerFrame::AppendFrames(nsPresContext* aPresContext, - nsIPresShell& aPresShell, - nsIAtom* aListName, +nsMathMLContainerFrame::AppendFrames(nsIAtom* aListName, nsIFrame* aFrameList) { if (aListName) { @@ -963,15 +950,13 @@ nsMathMLContainerFrame::AppendFrames(nsPresContext* aPresContext, } if (aFrameList) { mFrames.AppendFrames(this, aFrameList); - return ChildListChanged(aPresContext, nsIDOMMutationEvent::ADDITION); + return ChildListChanged(nsIDOMMutationEvent::ADDITION); } return NS_OK; } NS_IMETHODIMP -nsMathMLContainerFrame::InsertFrames(nsPresContext* aPresContext, - nsIPresShell& aPresShell, - nsIAtom* aListName, +nsMathMLContainerFrame::InsertFrames(nsIAtom* aListName, nsIFrame* aPrevFrame, nsIFrame* aFrameList) { @@ -981,29 +966,25 @@ nsMathMLContainerFrame::InsertFrames(nsPresContext* aPresContext, if (aFrameList) { // Insert frames after aPrevFrame mFrames.InsertFrames(this, aPrevFrame, aFrameList); - return ChildListChanged(aPresContext, nsIDOMMutationEvent::ADDITION); + return ChildListChanged(nsIDOMMutationEvent::ADDITION); } return NS_OK; } NS_IMETHODIMP -nsMathMLContainerFrame::RemoveFrame(nsPresContext* aPresContext, - nsIPresShell& aPresShell, - nsIAtom* aListName, +nsMathMLContainerFrame::RemoveFrame(nsIAtom* aListName, nsIFrame* aOldFrame) { if (aListName) { return NS_ERROR_INVALID_ARG; } // remove the child frame - mFrames.DestroyFrame(aPresContext, aOldFrame); - return ChildListChanged(aPresContext, nsIDOMMutationEvent::REMOVAL); + mFrames.DestroyFrame(GetPresContext(), aOldFrame); + return ChildListChanged(nsIDOMMutationEvent::REMOVAL); } NS_IMETHODIMP -nsMathMLContainerFrame::ReplaceFrame(nsPresContext* aPresContext, - nsIPresShell& aPresShell, - nsIAtom* aListName, +nsMathMLContainerFrame::ReplaceFrame(nsIAtom* aListName, nsIFrame* aOldFrame, nsIFrame* aNewFrame) { @@ -1011,9 +992,9 @@ nsMathMLContainerFrame::ReplaceFrame(nsPresContext* aPresContext, return NS_ERROR_INVALID_ARG; } // Replace the old frame with the new frame in the list - mFrames.ReplaceFrame(aPresContext, this, aOldFrame, aNewFrame, PR_TRUE); + mFrames.ReplaceFrame(this, aOldFrame, aNewFrame, PR_TRUE); - return ChildListChanged(aPresContext, nsIDOMMutationEvent::MODIFICATION); + return ChildListChanged(nsIDOMMutationEvent::MODIFICATION); } NS_IMETHODIMP @@ -1127,8 +1108,8 @@ printf("\n"); // We don't use STRETCH_CONSIDER_EMBELLISHMENTS -- because we don't want to // include them in the caculations of the size of stretchy elements nsBoundingMetrics containerSize; - GetPreferredStretchSize(aPresContext, *aReflowState.rendContext, 0, - stretchDir, containerSize); + GetPreferredStretchSize(*aReflowState.rendContext, 0, stretchDir, + containerSize); // fire the stretch on each child childFrame = mFrames.FirstChild(); @@ -1140,8 +1121,8 @@ printf("\n"); GetReflowAndBoundingMetricsFor(childFrame, childDesiredSize, childDesiredSize.mBoundingMetrics); - mathMLFrame->Stretch(aPresContext, *aReflowState.rendContext, - stretchDir, containerSize, childDesiredSize); + mathMLFrame->Stretch(*aReflowState.rendContext, stretchDir, + containerSize, childDesiredSize); // store the updated metrics childFrame->SetRect(nsRect(childDesiredSize.descent, childDesiredSize.ascent, childDesiredSize.width, childDesiredSize.height)); @@ -1156,7 +1137,7 @@ printf("\n"); ///////////// // Place children now by re-adjusting the origins to align the baselines - FinalizeReflow(aPresContext, *aReflowState.rendContext, aDesiredSize); + FinalizeReflow(*aReflowState.rendContext, aDesiredSize); aStatus = NS_FRAME_COMPLETE; NS_FRAME_SET_TRUNCATION(aStatus, aReflowState, aDesiredSize); @@ -1284,8 +1265,7 @@ GetInterFrameSpacing(PRInt32 aScriptLevel, } NS_IMETHODIMP -nsMathMLContainerFrame::Place(nsPresContext* aPresContext, - nsIRenderingContext& aRenderingContext, +nsMathMLContainerFrame::Place(nsIRenderingContext& aRenderingContext, PRBool aPlaceOrigin, nsHTMLReflowMetrics& aDesiredSize) { @@ -1387,7 +1367,8 @@ nsMathMLContainerFrame::Place(nsPresContext* aPresContext, prevFrameType = childFrameType; // add left correction dx += leftCorrection; - FinishReflowChild(childFrame, aPresContext, nsnull, childSize, dx, dy, 0); + FinishReflowChild(childFrame, GetPresContext(), nsnull, childSize, + dx, dy, 0); // add child size + italic correction dx += bmChild.width + italicCorrection; childFrame = childFrame->GetNextSibling(); @@ -1401,8 +1382,7 @@ nsMathMLContainerFrame::Place(nsPresContext* aPresContext, // e.g., it fixes f q f I static nscoord -GetInterFrameSpacingFor(nsPresContext* aPresContext, - PRInt32 aScriptLevel, +GetInterFrameSpacingFor(PRInt32 aScriptLevel, nsIFrame* aParentFrame, nsIFrame* aChildFrame) { @@ -1436,15 +1416,14 @@ GetInterFrameSpacingFor(nsPresContext* aPresContext, } nsresult -nsMathMLContainerFrame::FixInterFrameSpacing(nsPresContext* aPresContext, - nsHTMLReflowMetrics& aDesiredSize) +nsMathMLContainerFrame::FixInterFrameSpacing(nsHTMLReflowMetrics& aDesiredSize) { nsIContent* parentContent = mParent->GetContent(); nsIAtom *parentTag = parentContent->Tag(); if (parentTag == nsMathMLAtoms::math || parentTag == nsMathMLAtoms::mtd_) { - nscoord gap = GetInterFrameSpacingFor(aPresContext, - mPresentationData.scriptLevel, mParent, this); + nscoord gap = GetInterFrameSpacingFor(mPresentationData.scriptLevel, + mParent, this); // add our own italic correction nscoord leftCorrection = 0, italicCorrection = 0; GetItalicCorrection(mBoundingMetrics, leftCorrection, italicCorrection); diff --git a/layout/mathml/base/src/nsMathMLContainerFrame.h b/layout/mathml/base/src/nsMathMLContainerFrame.h index d1abfa4e6ae..0c02abfdb22 100644 --- a/layout/mathml/base/src/nsMathMLContainerFrame.h +++ b/layout/mathml/base/src/nsMathMLContainerFrame.h @@ -83,36 +83,32 @@ public: // Overloaded nsMathMLFrame methods -- see documentation in nsIMathMLFrame.h NS_IMETHOD - Stretch(nsPresContext* aPresContext, - nsIRenderingContext& aRenderingContext, + Stretch(nsIRenderingContext& aRenderingContext, nsStretchDirection aStretchDirection, nsBoundingMetrics& aContainerSize, nsHTMLReflowMetrics& aDesiredStretchSize); NS_IMETHOD - Place(nsPresContext* aPresContext, - nsIRenderingContext& aRenderingContext, + Place(nsIRenderingContext& aRenderingContext, PRBool aPlaceOrigin, nsHTMLReflowMetrics& aDesiredSize); NS_IMETHOD - UpdatePresentationDataFromChildAt(nsPresContext* aPresContext, - PRInt32 aFirstIndex, + UpdatePresentationDataFromChildAt(PRInt32 aFirstIndex, PRInt32 aLastIndex, PRInt32 aScriptLevelIncrement, PRUint32 aFlagsValues, PRUint32 aFlagsToUpdate) { - PropagatePresentationDataFromChildAt(aPresContext, this, - aFirstIndex, aLastIndex, aScriptLevelIncrement, aFlagsValues, aFlagsToUpdate); + PropagatePresentationDataFromChildAt(this, aFirstIndex, aLastIndex, + aScriptLevelIncrement, aFlagsValues, aFlagsToUpdate); return NS_OK; } NS_IMETHOD - ReResolveScriptStyle(nsPresContext* aPresContext, - PRInt32 aParentScriptLevel) + ReResolveScriptStyle(PRInt32 aParentScriptLevel) { - PropagateScriptStyleFor(aPresContext, this, aParentScriptLevel); + PropagateScriptStyleFor(this, aParentScriptLevel); return NS_OK; } @@ -134,28 +130,20 @@ public: nsIFrame* aChildList); NS_IMETHOD - AppendFrames(nsPresContext* aPresContext, - nsIPresShell& aPresShell, - nsIAtom* aListName, + AppendFrames(nsIAtom* aListName, nsIFrame* aFrameList); NS_IMETHOD - InsertFrames(nsPresContext* aPresContext, - nsIPresShell& aPresShell, - nsIAtom* aListName, + InsertFrames(nsIAtom* aListName, nsIFrame* aPrevFrame, nsIFrame* aFrameList); NS_IMETHOD - RemoveFrame(nsPresContext* aPresContext, - nsIPresShell& aPresShell, - nsIAtom* aListName, + RemoveFrame(nsIAtom* aListName, nsIFrame* aOldFrame); NS_IMETHOD - ReplaceFrame(nsPresContext* aPresContext, - nsIPresShell& aPresShell, - nsIAtom* aListName, + ReplaceFrame(nsIAtom* aListName, nsIFrame* aOldFrame, nsIFrame* aNewFrame); @@ -215,19 +203,17 @@ public: // helper to re-sync the automatic data in our children and notify our parent to // reflow us when changes (e.g., append/insert/remove) happen in our child list virtual nsresult - ChildListChanged(nsPresContext* aPresContext, - PRInt32 aModType); + ChildListChanged(PRInt32 aModType); // helper to wrap non-MathML frames so that foreign elements (e.g., html:img) // can mix better with other surrounding MathML markups virtual nsresult - WrapForeignFrames(nsPresContext* aPresContext); + WrapForeignFrames(); // helper to get the preferred size that a container frame should use to fire // the stretch on its stretchy child frames. virtual void - GetPreferredStretchSize(nsPresContext* aPresContext, - nsIRenderingContext& aRenderingContext, + GetPreferredStretchSize(nsIRenderingContext& aRenderingContext, PRUint32 aOptions, nsStretchDirection aStretchDirection, nsBoundingMetrics& aPreferredStretchSize); @@ -235,12 +221,10 @@ public: // error handlers to provide a visual feedback to the user when an error // (typically invalid markup) was encountered during reflow. virtual nsresult - ReflowError(nsPresContext* aPresContext, - nsIRenderingContext& aRenderingContext, + ReflowError(nsIRenderingContext& aRenderingContext, nsHTMLReflowMetrics& aDesiredSize); virtual nsresult - PaintError(nsPresContext* aPresContext, - nsIRenderingContext& aRenderingContext, + PaintError(nsIRenderingContext& aRenderingContext, const nsRect& aDirtyRect, nsFramePaintLayer aWhichLayer); @@ -266,14 +250,12 @@ public: // emulate the spacing that would have been done by a container. // e.g., it fixes f q f I virtual nsresult - FixInterFrameSpacing(nsPresContext* aPresContext, - nsHTMLReflowMetrics& aDesiredSize); + FixInterFrameSpacing(nsHTMLReflowMetrics& aDesiredSize); // helper method to complete the post-reflow hook and ensure that embellished // operators don't terminate their Reflow without receiving a Stretch command. virtual nsresult - FinalizeReflow(nsPresContext* aPresContext, - nsIRenderingContext& aRenderingContext, + FinalizeReflow(nsIRenderingContext& aRenderingContext, nsHTMLReflowMetrics& aDesiredSize); // helper method to facilitate getting the reflow and bounding metrics @@ -288,22 +270,19 @@ public: // helper to let the scriptstyle re-resolution pass through // a subtree that may contain non-MathML container frames static void - PropagateScriptStyleFor(nsPresContext* aPresContext, - nsIFrame* aFrame, + PropagateScriptStyleFor(nsIFrame* aFrame, PRInt32 aParentScriptLevel); // helper to let the update of presentation data pass through // a subtree that may contain non-MathML container frames static void - PropagatePresentationDataFor(nsPresContext* aPresContext, - nsIFrame* aFrame, + PropagatePresentationDataFor(nsIFrame* aFrame, PRInt32 aScriptLevelIncrement, PRUint32 aFlagsValues, PRUint32 aFlagsToUpdate); static void - PropagatePresentationDataFromChildAt(nsPresContext* aPresContext, - nsIFrame* aParentFrame, + PropagatePresentationDataFromChildAt(nsIFrame* aParentFrame, PRInt32 aFirstChildIndex, PRInt32 aLastChildIndex, PRInt32 aScriptLevelIncrement, @@ -323,8 +302,7 @@ public: // has to request the re-build from its parent. Unfortunately, the extra cost // for this is that it will re-sync in the siblings of the child as well. static void - RebuildAutomaticDataForChildren(nsPresContext* aPresContext, - nsIFrame* aParentFrame); + RebuildAutomaticDataForChildren(nsIFrame* aParentFrame); // helper to blow away the automatic data cached in a frame's subtree and // re-layout its subtree to reflect changes that may have happen. In the @@ -335,8 +313,7 @@ public: // frame itself (except for those particular operations that the parent frame // may do do its TransmitAutomaticData()). @see RebuildAutomaticDataForChildren static nsresult - ReLayoutChildren(nsPresContext* aPresContext, - nsIFrame* aParentFrame); + ReLayoutChildren(nsIFrame* aParentFrame); protected: virtual PRIntn GetSkipSides() const { return 0; } @@ -365,7 +342,7 @@ public: nsresult rv = nsBlockFrame::SetInitialChildList(aPresContext, aListName, aChildList); // re-resolve our subtree to set any mathml-expected data nsMathMLContainerFrame::MapAttributesIntoCSS(aPresContext, this); - nsMathMLContainerFrame::RebuildAutomaticDataForChildren(aPresContext, this); + nsMathMLContainerFrame::RebuildAutomaticDataForChildren(this); return rv; } @@ -377,54 +354,47 @@ public: { if (mScriptStyleChanged) { mScriptStyleChanged = PR_FALSE; - nsMathMLContainerFrame::PropagateScriptStyleFor(aPresContext, this, 0); + nsMathMLContainerFrame::PropagateScriptStyleFor(this, 0); } return nsBlockFrame::Reflow(aPresContext, aDesiredSize, aReflowState, aStatus); } NS_IMETHOD - AppendFrames(nsPresContext* aPresContext, - nsIPresShell& aPresShell, - nsIAtom* aListName, + AppendFrames(nsIAtom* aListName, nsIFrame* aFrameList) { - nsresult rv = nsBlockFrame::AppendFrames(aPresContext, aPresShell, aListName, aFrameList); - nsMathMLContainerFrame::ReLayoutChildren(aPresContext, this); + nsresult rv = nsBlockFrame::AppendFrames(aListName, aFrameList); + nsMathMLContainerFrame::ReLayoutChildren(this); return rv; } NS_IMETHOD - InsertFrames(nsPresContext* aPresContext, - nsIPresShell& aPresShell, - nsIAtom* aListName, + InsertFrames(nsIAtom* aListName, nsIFrame* aPrevFrame, nsIFrame* aFrameList) { - nsresult rv = nsBlockFrame::InsertFrames(aPresContext, aPresShell, aListName, aPrevFrame, aFrameList); - nsMathMLContainerFrame::ReLayoutChildren(aPresContext, this); + nsresult rv = nsBlockFrame::InsertFrames(aListName, aPrevFrame, + aFrameList); + nsMathMLContainerFrame::ReLayoutChildren(this); return rv; } NS_IMETHOD - ReplaceFrame(nsPresContext* aPresContext, - nsIPresShell& aPresShell, - nsIAtom* aListName, + ReplaceFrame(nsIAtom* aListName, nsIFrame* aOldFrame, nsIFrame* aNewFrame) { - nsresult rv = nsBlockFrame::ReplaceFrame(aPresContext, aPresShell, aListName, aOldFrame, aNewFrame); - nsMathMLContainerFrame::ReLayoutChildren(aPresContext, this); + nsresult rv = nsBlockFrame::ReplaceFrame(aListName, aOldFrame, aNewFrame); + nsMathMLContainerFrame::ReLayoutChildren(this); return rv; } NS_IMETHOD - RemoveFrame(nsPresContext* aPresContext, - nsIPresShell& aPresShell, - nsIAtom* aListName, + RemoveFrame(nsIAtom* aListName, nsIFrame* aOldFrame) { - nsresult rv = nsBlockFrame::RemoveFrame(aPresContext, aPresShell, aListName, aOldFrame); - nsMathMLContainerFrame::ReLayoutChildren(aPresContext, this); + nsresult rv = nsBlockFrame::RemoveFrame(aListName, aOldFrame); + nsMathMLContainerFrame::ReLayoutChildren(this); return rv; } @@ -456,7 +426,7 @@ public: nsresult rv = nsInlineFrame::SetInitialChildList(aPresContext, aListName, aChildList); // re-resolve our subtree to set any mathml-expected data nsMathMLContainerFrame::MapAttributesIntoCSS(aPresContext, this); - nsMathMLContainerFrame::RebuildAutomaticDataForChildren(aPresContext, this); + nsMathMLContainerFrame::RebuildAutomaticDataForChildren(this); return rv; } @@ -468,54 +438,47 @@ public: { if (mScriptStyleChanged) { mScriptStyleChanged = PR_FALSE; - nsMathMLContainerFrame::PropagateScriptStyleFor(aPresContext, this, 0); + nsMathMLContainerFrame::PropagateScriptStyleFor(this, 0); } return nsInlineFrame::Reflow(aPresContext, aDesiredSize, aReflowState, aStatus); } NS_IMETHOD - AppendFrames(nsPresContext* aPresContext, - nsIPresShell& aPresShell, - nsIAtom* aListName, + AppendFrames(nsIAtom* aListName, nsIFrame* aFrameList) { - nsresult rv = nsInlineFrame::AppendFrames(aPresContext, aPresShell, aListName, aFrameList); - nsMathMLContainerFrame::ReLayoutChildren(aPresContext, this); + nsresult rv = nsInlineFrame::AppendFrames(aListName, aFrameList); + nsMathMLContainerFrame::ReLayoutChildren(this); return rv; } NS_IMETHOD - InsertFrames(nsPresContext* aPresContext, - nsIPresShell& aPresShell, - nsIAtom* aListName, + InsertFrames(nsIAtom* aListName, nsIFrame* aPrevFrame, nsIFrame* aFrameList) { - nsresult rv = nsInlineFrame::InsertFrames(aPresContext, aPresShell, aListName, aPrevFrame, aFrameList); - nsMathMLContainerFrame::ReLayoutChildren(aPresContext, this); + nsresult rv = nsInlineFrame::InsertFrames(aListName, aPrevFrame, + aFrameList); + nsMathMLContainerFrame::ReLayoutChildren(this); return rv; } NS_IMETHOD - ReplaceFrame(nsPresContext* aPresContext, - nsIPresShell& aPresShell, - nsIAtom* aListName, + ReplaceFrame(nsIAtom* aListName, nsIFrame* aOldFrame, nsIFrame* aNewFrame) { - nsresult rv = nsInlineFrame::ReplaceFrame(aPresContext, aPresShell, aListName, aOldFrame, aNewFrame); - nsMathMLContainerFrame::ReLayoutChildren(aPresContext, this); + nsresult rv = nsInlineFrame::ReplaceFrame(aListName, aOldFrame, aNewFrame); + nsMathMLContainerFrame::ReLayoutChildren(this); return rv; } NS_IMETHOD - RemoveFrame(nsPresContext* aPresContext, - nsIPresShell& aPresShell, - nsIAtom* aListName, + RemoveFrame(nsIAtom* aListName, nsIFrame* aOldFrame) { - nsresult rv = nsInlineFrame::RemoveFrame(aPresContext, aPresShell, aListName, aOldFrame); - nsMathMLContainerFrame::ReLayoutChildren(aPresContext, this); + nsresult rv = nsInlineFrame::RemoveFrame(aListName, aOldFrame); + nsMathMLContainerFrame::ReLayoutChildren(this); return rv; } diff --git a/layout/mathml/base/src/nsMathMLForeignFrameWrapper.h b/layout/mathml/base/src/nsMathMLForeignFrameWrapper.h index 0b937160f2a..41b75f074ce 100644 --- a/layout/mathml/base/src/nsMathMLForeignFrameWrapper.h +++ b/layout/mathml/base/src/nsMathMLForeignFrameWrapper.h @@ -56,23 +56,21 @@ public: // Overloaded nsIMathMLFrame methods NS_IMETHOD - UpdatePresentationDataFromChildAt(nsPresContext* aPresContext, - PRInt32 aFirstIndex, + UpdatePresentationDataFromChildAt(PRInt32 aFirstIndex, PRInt32 aLastIndex, PRInt32 aScriptLevelIncrement, PRUint32 aFlagsValues, PRUint32 aFlagsToUpdate) { - nsMathMLContainerFrame::PropagatePresentationDataFromChildAt(aPresContext, this, + nsMathMLContainerFrame::PropagatePresentationDataFromChildAt(this, aFirstIndex, aLastIndex, aScriptLevelIncrement, aFlagsValues, aFlagsToUpdate); return NS_OK; } NS_IMETHOD - ReResolveScriptStyle(nsPresContext* aPresContext, - PRInt32 aParentScriptLevel) + ReResolveScriptStyle(PRInt32 aParentScriptLevel) { - nsMathMLContainerFrame::PropagateScriptStyleFor(aPresContext, this, aParentScriptLevel); + nsMathMLContainerFrame::PropagateScriptStyleFor(this, aParentScriptLevel); return NS_OK; } @@ -108,9 +106,7 @@ public: // we are just a wrapper and these methods shouldn't be called NS_IMETHOD - AppendFrames(nsPresContext* aPresContext, - nsIPresShell& aPresShell, - nsIAtom* aListName, + AppendFrames(nsIAtom* aListName, nsIFrame* aFrameList) { NS_NOTREACHED("unsupported operation"); @@ -118,9 +114,7 @@ public: } NS_IMETHOD - InsertFrames(nsPresContext* aPresContext, - nsIPresShell& aPresShell, - nsIAtom* aListName, + InsertFrames(nsIAtom* aListName, nsIFrame* aPrevFrame, nsIFrame* aFrameList) { @@ -132,29 +126,25 @@ public: // as two operations: remove & insert; In our case, removing the child will // remove us too... so we have to operate from our parent's perspective NS_IMETHOD - ReplaceFrame(nsPresContext* aPresContext, - nsIPresShell& aPresShell, - nsIAtom* aListName, + ReplaceFrame(nsIAtom* aListName, nsIFrame* aOldFrame, nsIFrame* aNewFrame) { - nsresult rv = mParent->ReplaceFrame(aPresContext, aPresShell, aListName, this, aNewFrame); + nsresult rv = mParent->ReplaceFrame(aListName, this, aNewFrame); // XXX the usage of ReplaceFrame() vs. ReplaceFrameAndDestroy() is // XXX ambiguous - see bug 122748. The style system doesn't call ReplaceFrame() // XXX and that's why nobody seems to have been biten by the ambiguity yet - aOldFrame->Destroy(aPresContext); + aOldFrame->Destroy(GetPresContext()); return rv; } // Our life is bound to the life of our unique child. // When our child goes away, we ask our parent to delete us NS_IMETHOD - RemoveFrame(nsPresContext* aPresContext, - nsIPresShell& aPresShell, - nsIAtom* aListName, + RemoveFrame(nsIAtom* aListName, nsIFrame* aOldFrame) { - return mParent->RemoveFrame(aPresContext, aPresShell, aListName, this); + return mParent->RemoveFrame(aListName, this); } protected: diff --git a/layout/mathml/base/src/nsMathMLFrame.cpp b/layout/mathml/base/src/nsMathMLFrame.cpp index 28e4d68e791..f1061fcbfd5 100644 --- a/layout/mathml/base/src/nsMathMLFrame.cpp +++ b/layout/mathml/base/src/nsMathMLFrame.cpp @@ -63,8 +63,7 @@ static NS_DEFINE_CID(kCSSStyleSheetCID, NS_CSS_STYLESHEET_CID); NS_IMPL_QUERY_INTERFACE1(nsMathMLFrame, nsIMathMLFrame) NS_IMETHODIMP -nsMathMLFrame::InheritAutomaticData(nsPresContext* aPresContext, - nsIFrame* aParent) +nsMathMLFrame::InheritAutomaticData(nsIFrame* aParent) { mEmbellishData.flags = 0; mEmbellishData.nextFrame = nsnull; @@ -94,8 +93,7 @@ nsMathMLFrame::InheritAutomaticData(nsPresContext* aPresContext, } NS_IMETHODIMP -nsMathMLFrame::UpdatePresentationData(nsPresContext* aPresContext, - PRInt32 aScriptLevelIncrement, +nsMathMLFrame::UpdatePresentationData(PRInt32 aScriptLevelIncrement, PRUint32 aFlagsValues, PRUint32 aFlagsToUpdate) { diff --git a/layout/mathml/base/src/nsMathMLFrame.h b/layout/mathml/base/src/nsMathMLFrame.h index a2ba41141c2..2a2a42479fc 100644 --- a/layout/mathml/base/src/nsMathMLFrame.h +++ b/layout/mathml/base/src/nsMathMLFrame.h @@ -96,8 +96,7 @@ public: } NS_IMETHOD - Stretch(nsPresContext* aPresContext, - nsIRenderingContext& aRenderingContext, + Stretch(nsIRenderingContext& aRenderingContext, nsStretchDirection aStretchDirection, nsBoundingMetrics& aContainerSize, nsHTMLReflowMetrics& aDesiredStretchSize) @@ -106,8 +105,7 @@ public: } NS_IMETHOD - Place(nsPresContext* aPresContext, - nsIRenderingContext& aRenderingContext, + Place(nsIRenderingContext& aRenderingContext, PRBool aPlaceOrigin, nsHTMLReflowMetrics& aDesiredSize) { @@ -139,24 +137,21 @@ public: } NS_IMETHOD - InheritAutomaticData(nsPresContext* aPresContext, - nsIFrame* aParent); + InheritAutomaticData(nsIFrame* aParent); NS_IMETHOD - TransmitAutomaticData(nsPresContext* aPresContext) + TransmitAutomaticData() { return NS_OK; } NS_IMETHOD - UpdatePresentationData(nsPresContext* aPresContext, - PRInt32 aScriptLevelIncrement, + UpdatePresentationData(PRInt32 aScriptLevelIncrement, PRUint32 aFlagsValues, PRUint32 aFlagsToUpdate); NS_IMETHOD - UpdatePresentationDataFromChildAt(nsPresContext* aPresContext, - PRInt32 aFirstIndex, + UpdatePresentationDataFromChildAt(PRInt32 aFirstIndex, PRInt32 aLastIndex, PRInt32 aScriptLevelIncrement, PRUint32 aFlagsValues, @@ -166,8 +161,7 @@ public: } NS_IMETHOD - ReResolveScriptStyle(nsPresContext* aPresContext, - PRInt32 aParentScriptLevel) + ReResolveScriptStyle(PRInt32 aParentScriptLevel) { return NS_OK; } @@ -263,28 +257,27 @@ public: // helper methods for getting sup/subdrop's from a child static void - GetSubDropFromChild(nsPresContext* aPresContext, - nsIFrame* aChild, + GetSubDropFromChild(nsIFrame* aChild, nscoord& aSubDrop) { const nsStyleFont* font = aChild->GetStyleFont(); - nsCOMPtr fm = aPresContext->GetMetricsFor(font->mFont); + nsCOMPtr fm = aChild->GetPresContext()->GetMetricsFor( + font->mFont); GetSubDrop(fm, aSubDrop); } static void - GetSupDropFromChild(nsPresContext* aPresContext, - nsIFrame* aChild, + GetSupDropFromChild(nsIFrame* aChild, nscoord& aSupDrop) { const nsStyleFont* font = aChild->GetStyleFont(); - nsCOMPtr fm = aPresContext->GetMetricsFor(font->mFont); + nsCOMPtr fm = aChild->GetPresContext()->GetMetricsFor( + font->mFont); GetSupDrop(fm, aSupDrop); } static void - GetSkewCorrectionFromChild(nsPresContext* aPresContext, - nsIFrame* aChild, + GetSkewCorrectionFromChild(nsIFrame* aChild, nscoord& aSkewCorrection) { // default is 0 diff --git a/layout/mathml/base/src/nsMathMLTokenFrame.cpp b/layout/mathml/base/src/nsMathMLTokenFrame.cpp index 23860304285..b0f60170889 100644 --- a/layout/mathml/base/src/nsMathMLTokenFrame.cpp +++ b/layout/mathml/base/src/nsMathMLTokenFrame.cpp @@ -205,7 +205,7 @@ printf("\n"); mBoundingMetrics = aDesiredSize.mBoundingMetrics; // place and size children - FinalizeReflow(aPresContext, *aReflowState.rendContext, aDesiredSize); + FinalizeReflow(*aReflowState.rendContext, aDesiredSize); aStatus = NS_FRAME_COMPLETE; NS_FRAME_SET_TRUNCATION(aStatus, aReflowState, aDesiredSize); @@ -216,13 +216,12 @@ printf("\n"); // pass, it is not computed here because our children may be text frames // that do not implement the GetBoundingMetrics() interface. nsresult -nsMathMLTokenFrame::Place(nsPresContext* aPresContext, - nsIRenderingContext& aRenderingContext, +nsMathMLTokenFrame::Place(nsIRenderingContext& aRenderingContext, PRBool aPlaceOrigin, nsHTMLReflowMetrics& aDesiredSize) { nsCOMPtr fm = - aPresContext->GetMetricsFor(GetStyleFont()->mFont); + GetPresContext()->GetMetricsFor(GetStyleFont()->mFont); nscoord ascent, descent; fm->GetMaxAscent(ascent); fm->GetMaxDescent(descent); @@ -244,7 +243,7 @@ nsMathMLTokenFrame::Place(nsPresContext* aPresContext, // place and size the child; (dx,0) makes the caret happy - bug 188146 dy = rect.IsEmpty() ? 0 : aDesiredSize.ascent - rect.y; - FinishReflowChild(childFrame, aPresContext, nsnull, childSize, dx, dy, 0); + FinishReflowChild(childFrame, GetPresContext(), nsnull, childSize, dx, dy, 0); dx += rect.width; childFrame = childFrame->GetNextSibling(); } diff --git a/layout/mathml/base/src/nsMathMLTokenFrame.h b/layout/mathml/base/src/nsMathMLTokenFrame.h index 40220725e2d..fe37cfda289 100644 --- a/layout/mathml/base/src/nsMathMLTokenFrame.h +++ b/layout/mathml/base/src/nsMathMLTokenFrame.h @@ -70,8 +70,7 @@ public: nsReflowStatus& aStatus); NS_IMETHOD - Place(nsPresContext* aPresContext, - nsIRenderingContext& aRenderingContext, + Place(nsIRenderingContext& aRenderingContext, PRBool aPlaceOrigin, nsHTMLReflowMetrics& aDesiredSize); diff --git a/layout/mathml/base/src/nsMathMLmactionFrame.cpp b/layout/mathml/base/src/nsMathMLmactionFrame.cpp index 7d996e331fe..9aa00b71266 100644 --- a/layout/mathml/base/src/nsMathMLmactionFrame.cpp +++ b/layout/mathml/base/src/nsMathMLmactionFrame.cpp @@ -332,7 +332,7 @@ nsMathMLmactionFrame::Reflow(nsPresContext* aPresContext, childFrame->SetRect(nsRect(aDesiredSize.descent,aDesiredSize.ascent, aDesiredSize.width,aDesiredSize.height)); mBoundingMetrics = aDesiredSize.mBoundingMetrics; - FinalizeReflow(aPresContext, *aReflowState.rendContext, aDesiredSize); + FinalizeReflow(*aReflowState.rendContext, aDesiredSize); } NS_FRAME_SET_TRUNCATION(aStatus, aReflowState, aDesiredSize); return rv; @@ -340,8 +340,7 @@ nsMathMLmactionFrame::Reflow(nsPresContext* aPresContext, // Only place the selected child ... NS_IMETHODIMP -nsMathMLmactionFrame::Place(nsPresContext* aPresContext, - nsIRenderingContext& aRenderingContext, +nsMathMLmactionFrame::Place(nsIRenderingContext& aRenderingContext, PRBool aPlaceOrigin, nsHTMLReflowMetrics& aDesiredSize) { @@ -352,7 +351,7 @@ nsMathMLmactionFrame::Place(nsPresContext* aPresContext, if (childFrame) { GetReflowAndBoundingMetricsFor(childFrame, aDesiredSize, mBoundingMetrics); if (aPlaceOrigin) { - FinishReflowChild(childFrame, aPresContext, nsnull, aDesiredSize, 0, 0, 0); + FinishReflowChild(childFrame, GetPresContext(), nsnull, aDesiredSize, 0, 0, 0); } mReference.x = 0; mReference.y = aDesiredSize.ascent; diff --git a/layout/mathml/base/src/nsMathMLmactionFrame.h b/layout/mathml/base/src/nsMathMLmactionFrame.h index 53175dc6185..008afb26593 100644 --- a/layout/mathml/base/src/nsMathMLmactionFrame.h +++ b/layout/mathml/base/src/nsMathMLmactionFrame.h @@ -85,8 +85,7 @@ public: PRUint32 aFlags = 0); NS_IMETHOD - Place(nsPresContext* aPresContext, - nsIRenderingContext& aRenderingContext, + Place(nsIRenderingContext& aRenderingContext, PRBool aPlaceOrigin, nsHTMLReflowMetrics& aDesiredSize); diff --git a/layout/mathml/base/src/nsMathMLmfencedFrame.cpp b/layout/mathml/base/src/nsMathMLmfencedFrame.cpp index bcc70fa266e..eece6f3601a 100644 --- a/layout/mathml/base/src/nsMathMLmfencedFrame.cpp +++ b/layout/mathml/base/src/nsMathMLmfencedFrame.cpp @@ -78,11 +78,10 @@ nsMathMLmfencedFrame::~nsMathMLmfencedFrame() } NS_IMETHODIMP -nsMathMLmfencedFrame::InheritAutomaticData(nsPresContext* aPresContext, - nsIFrame* aParent) +nsMathMLmfencedFrame::InheritAutomaticData(nsIFrame* aParent) { // let the base class get the default from our parent - nsMathMLContainerFrame::InheritAutomaticData(aPresContext, aParent); + nsMathMLContainerFrame::InheritAutomaticData(aParent); mPresentationData.flags |= NS_MATHML_STRETCH_ALL_CHILDREN_VERTICALLY; @@ -119,13 +118,12 @@ nsMathMLmfencedFrame::AttributeChanged(nsIContent* aContent, } nsresult -nsMathMLmfencedFrame::ChildListChanged(nsPresContext* aPresContext, - PRInt32 aModType) +nsMathMLmfencedFrame::ChildListChanged(PRInt32 aModType) { RemoveFencesAndSeparators(); - CreateFencesAndSeparators(aPresContext); + CreateFencesAndSeparators(GetPresContext()); - return nsMathMLContainerFrame::ChildListChanged(aPresContext, aModType); + return nsMathMLContainerFrame::ChildListChanged(aModType); } void @@ -362,7 +360,7 @@ nsMathMLmfencedFrame::doReflow(nsPresContext* aPresContext, } else { // case when the call is made for mfenced - mathMLFrame->GetPreferredStretchSize(aPresContext, *aReflowState.rendContext, + mathMLFrame->GetPreferredStretchSize(*aReflowState.rendContext, 0, /* i.e., without embellishments */ stretchDir, containerSize); childFrame = firstChild; @@ -373,7 +371,7 @@ nsMathMLmfencedFrame::doReflow(nsPresContext* aPresContext, // retrieve the metrics that was stored at the previous pass GetReflowAndBoundingMetricsFor(childFrame, childDesiredSize, childDesiredSize.mBoundingMetrics); - mathmlChild->Stretch(aPresContext, *aReflowState.rendContext, + mathmlChild->Stretch(*aReflowState.rendContext, stretchDir, containerSize, childDesiredSize); // store the updated metrics childFrame->SetRect(nsRect(childDesiredSize.descent, childDesiredSize.ascent, @@ -387,7 +385,7 @@ nsMathMLmfencedFrame::doReflow(nsPresContext* aPresContext, childFrame = childFrame->GetNextSibling(); } // bug 121748: for surrounding fences & separators, use a size that covers everything - mathMLFrame->GetPreferredStretchSize(aPresContext, *aReflowState.rendContext, + mathMLFrame->GetPreferredStretchSize(*aReflowState.rendContext, STRETCH_CONSIDER_EMBELLISHMENTS, stretchDir, containerSize); } diff --git a/layout/mathml/base/src/nsMathMLmfencedFrame.h b/layout/mathml/base/src/nsMathMLmfencedFrame.h index 5685669ce95..fc0e651299a 100644 --- a/layout/mathml/base/src/nsMathMLmfencedFrame.h +++ b/layout/mathml/base/src/nsMathMLmfencedFrame.h @@ -57,8 +57,7 @@ public: GetAdditionalStyleContext(PRInt32 aIndex) const; NS_IMETHOD - InheritAutomaticData(nsPresContext* aPresContext, - nsIFrame* aParent); + InheritAutomaticData(nsIFrame* aParent); NS_IMETHOD SetInitialChildList(nsPresContext* aPresContext, @@ -86,8 +85,7 @@ public: // override the base method because we must keep separators in sync virtual nsresult - ChildListChanged(nsPresContext* aPresContext, - PRInt32 aModType); + ChildListChanged(PRInt32 aModType); // exported routine that both mfenced and mfrac share. // mfrac uses this when its bevelled attribute is set. diff --git a/layout/mathml/base/src/nsMathMLmfracFrame.cpp b/layout/mathml/base/src/nsMathMLmfracFrame.cpp index 4ea2fa9e800..741d8d43deb 100644 --- a/layout/mathml/base/src/nsMathMLmfracFrame.cpp +++ b/layout/mathml/base/src/nsMathMLmfracFrame.cpp @@ -135,7 +135,7 @@ nsMathMLmfracFrame::Init(nsPresContext* aPresContext, } NS_IMETHODIMP -nsMathMLmfracFrame::TransmitAutomaticData(nsPresContext* aPresContext) +nsMathMLmfracFrame::TransmitAutomaticData() { // 1. The REC says: // The element sets displaystyle to "false", or if it was already @@ -145,10 +145,10 @@ nsMathMLmfracFrame::TransmitAutomaticData(nsPresContext* aPresContext) PRInt32 increment = NS_MATHML_IS_DISPLAYSTYLE(mPresentationData.flags) ? 0 : 1; mInnerScriptLevel = mPresentationData.scriptLevel + increment; - UpdatePresentationDataFromChildAt(aPresContext, 0, -1, increment, + UpdatePresentationDataFromChildAt(0, -1, increment, ~NS_MATHML_DISPLAYSTYLE, NS_MATHML_DISPLAYSTYLE); - UpdatePresentationDataFromChildAt(aPresContext, 1, 1, 0, + UpdatePresentationDataFromChildAt(1, 1, 0, NS_MATHML_COMPRESSED, NS_MATHML_COMPRESSED); @@ -267,14 +267,12 @@ nsMathMLmfracFrame::Reflow(nsPresContext* aPresContext, } NS_IMETHODIMP -nsMathMLmfracFrame::Place(nsPresContext* aPresContext, - nsIRenderingContext& aRenderingContext, +nsMathMLmfracFrame::Place(nsIRenderingContext& aRenderingContext, PRBool aPlaceOrigin, nsHTMLReflowMetrics& aDesiredSize) { //////////////////////////////////// // Get the children's desired sizes - nsBoundingMetrics bmNum, bmDen; nsHTMLReflowMetrics sizeNum (nsnull); nsHTMLReflowMetrics sizeDen (nsnull); @@ -285,7 +283,7 @@ nsMathMLmfracFrame::Place(nsPresContext* aPresContext, if (!frameNum || !frameDen || frameDen->GetNextSibling()) { // report an error, encourage people to get their markups in order NS_WARNING("invalid markup"); - return ReflowError(aPresContext, aRenderingContext, aDesiredSize); + return ReflowError(aRenderingContext, aDesiredSize); } GetReflowAndBoundingMetricsFor(frameNum, sizeNum, bmNum); GetReflowAndBoundingMetricsFor(frameDen, sizeDen, bmDen); @@ -293,7 +291,8 @@ nsMathMLmfracFrame::Place(nsPresContext* aPresContext, ////////////////// // Get shifts - nscoord onePixel = aPresContext->IntScaledPixelsToTwips(1); + nsPresContext* presContext = GetPresContext(); + nscoord onePixel = presContext->IntScaledPixelsToTwips(1); aRenderingContext.SetFont(GetStyleFont()->mFont, nsnull); nsCOMPtr fm; @@ -316,8 +315,8 @@ nsMathMLmfracFrame::Place(nsPresContext* aPresContext, // see if the linethickness attribute is there nsAutoString value; GetAttribute(mContent, mPresentationData.mstyle, nsMathMLAtoms::linethickness_, value); - mLineRect.height = CalcLineThickness(aPresContext, mStyleContext, - value, onePixel, defaultRuleThickness); + mLineRect.height = CalcLineThickness(presContext, mStyleContext, value, + onePixel, defaultRuleThickness); nscoord numShift = 0; nscoord denShift = 0; @@ -440,10 +439,10 @@ nsMathMLmfracFrame::Place(nsPresContext* aPresContext, nscoord dy; // place numerator dy = 0; - FinishReflowChild(frameNum, aPresContext, nsnull, sizeNum, dxNum, dy, 0); + FinishReflowChild(frameNum, presContext, nsnull, sizeNum, dxNum, dy, 0); // place denominator dy = aDesiredSize.height - sizeDen.height; - FinishReflowChild(frameDen, aPresContext, nsnull, sizeDen, dxDen, dy, 0); + FinishReflowChild(frameDen, presContext, nsnull, sizeDen, dxDen, dy, 0); // place the fraction bar - dy is top of bar dy = aDesiredSize.ascent - (axisHeight + actualRuleThickness/2); mLineRect.SetRect(leftSpace, dy, width - (leftSpace + rightSpace), actualRuleThickness); @@ -485,8 +484,7 @@ nsMathMLmfracFrame::AttributeChanged(nsIContent* aContent, } NS_IMETHODIMP -nsMathMLmfracFrame::UpdatePresentationData(nsPresContext* aPresContext, - PRInt32 aScriptLevelIncrement, +nsMathMLmfracFrame::UpdatePresentationData(PRInt32 aScriptLevelIncrement, PRUint32 aFlagsValues, PRUint32 aFlagsToUpdate) { @@ -508,7 +506,7 @@ nsMathMLmfracFrame::UpdatePresentationData(nsPresContext* aPresContext, if (NS_MATHML_IS_DISPLAYSTYLE(aFlagsValues)) { // ...and is being set to true, so undo the inner increment now mInnerScriptLevel = mPresentationData.scriptLevel; - UpdatePresentationDataFromChildAt(aPresContext, 0, -1, -1, 0, 0); + UpdatePresentationDataFromChildAt(0, -1, -1, 0, 0); } } else { @@ -519,19 +517,19 @@ nsMathMLmfracFrame::UpdatePresentationData(nsPresContext* aPresContext, NS_ASSERTION(NS_MATHML_IS_DISPLAYSTYLE(mPresentationData.flags), "out of sync"); if (!NS_MATHML_IS_DISPLAYSTYLE(aFlagsValues)) { mInnerScriptLevel = mPresentationData.scriptLevel + 1; - UpdatePresentationDataFromChildAt(aPresContext, 0, -1, 1, 0, 0); + UpdatePresentationDataFromChildAt(0, -1, 1, 0, 0); } } } mInnerScriptLevel += aScriptLevelIncrement; return nsMathMLContainerFrame:: - UpdatePresentationData(aPresContext, aScriptLevelIncrement, aFlagsValues, aFlagsToUpdate); + UpdatePresentationData(aScriptLevelIncrement, aFlagsValues, + aFlagsToUpdate); } NS_IMETHODIMP -nsMathMLmfracFrame::UpdatePresentationDataFromChildAt(nsPresContext* aPresContext, - PRInt32 aFirstIndex, +nsMathMLmfracFrame::UpdatePresentationDataFromChildAt(PRInt32 aFirstIndex, PRInt32 aLastIndex, PRInt32 aScriptLevelIncrement, PRUint32 aFlagsValues, @@ -552,7 +550,7 @@ nsMathMLmfracFrame::UpdatePresentationDataFromChildAt(nsPresContext* aPresContex aFlagsValues &= ~NS_MATHML_DISPLAYSTYLE; #endif return nsMathMLContainerFrame:: - UpdatePresentationDataFromChildAt(aPresContext, aFirstIndex, aLastIndex, + UpdatePresentationDataFromChildAt(aFirstIndex, aLastIndex, aScriptLevelIncrement, aFlagsValues, aFlagsToUpdate); } diff --git a/layout/mathml/base/src/nsMathMLmfracFrame.h b/layout/mathml/base/src/nsMathMLmfracFrame.h index 4e795020bbf..21c5311494d 100644 --- a/layout/mathml/base/src/nsMathMLmfracFrame.h +++ b/layout/mathml/base/src/nsMathMLmfracFrame.h @@ -113,8 +113,7 @@ public: nsReflowStatus& aStatus); NS_IMETHOD - Place(nsPresContext* aPresContext, - nsIRenderingContext& aRenderingContext, + Place(nsIRenderingContext& aRenderingContext, PRBool aPlaceOrigin, nsHTMLReflowMetrics& aDesiredSize); @@ -126,17 +125,15 @@ public: PRUint32 aFlags = 0); NS_IMETHOD - TransmitAutomaticData(nsPresContext* aPresContext); + TransmitAutomaticData(); NS_IMETHOD - UpdatePresentationData(nsPresContext* aPresContext, - PRInt32 aScriptLevelIncrement, + UpdatePresentationData(PRInt32 aScriptLevelIncrement, PRUint32 aFlagsValues, PRUint32 aFlagsToUpdate); NS_IMETHOD - UpdatePresentationDataFromChildAt(nsPresContext* aPresContext, - PRInt32 aFirstIndex, + UpdatePresentationDataFromChildAt(PRInt32 aFirstIndex, PRInt32 aLastIndex, PRInt32 aScriptLevelIncrement, PRUint32 aFlagsValues, diff --git a/layout/mathml/base/src/nsMathMLmmultiscriptsFrame.cpp b/layout/mathml/base/src/nsMathMLmmultiscriptsFrame.cpp index e71adfa8e52..e360ae1c7a5 100644 --- a/layout/mathml/base/src/nsMathMLmmultiscriptsFrame.cpp +++ b/layout/mathml/base/src/nsMathMLmmultiscriptsFrame.cpp @@ -77,7 +77,7 @@ nsMathMLmmultiscriptsFrame::~nsMathMLmmultiscriptsFrame() } NS_IMETHODIMP -nsMathMLmmultiscriptsFrame::TransmitAutomaticData(nsPresContext* aPresContext) +nsMathMLmmultiscriptsFrame::TransmitAutomaticData() { // if our base is an embellished operator, let its state bubble to us GetEmbellishDataFrom(mFrames.FirstChild(), mEmbellishData); @@ -87,7 +87,7 @@ nsMathMLmmultiscriptsFrame::TransmitAutomaticData(nsPresContext* aPresContext) // The REC says: // The element increments scriptlevel by 1, and sets // displaystyle to "false", within each of its arguments except base - UpdatePresentationDataFromChildAt(aPresContext, 1, -1, 1, + UpdatePresentationDataFromChildAt(1, -1, 1, ~NS_MATHML_DISPLAYSTYLE, NS_MATHML_DISPLAYSTYLE); // The TeXbook (Ch 17. p.141) says the superscript inherits the compression @@ -120,7 +120,7 @@ nsMathMLmmultiscriptsFrame::TransmitAutomaticData(nsPresContext* aPresContext) } for (PRInt32 i = subScriptFrames.Count() - 1; i >= 0; i--) { childFrame = (nsIFrame*)subScriptFrames[i]; - PropagatePresentationDataFor(aPresContext, childFrame, 0, + PropagatePresentationDataFor(childFrame, 0, NS_MATHML_COMPRESSED, NS_MATHML_COMPRESSED); } @@ -128,7 +128,7 @@ nsMathMLmmultiscriptsFrame::TransmitAutomaticData(nsPresContext* aPresContext) } void -nsMathMLmmultiscriptsFrame::ProcessAttributes(nsPresContext* aPresContext) +nsMathMLmmultiscriptsFrame::ProcessAttributes() { mSubScriptShift = 0; mSupScriptShift = 0; @@ -140,7 +140,7 @@ nsMathMLmmultiscriptsFrame::ProcessAttributes(nsPresContext* aPresContext) nsMathMLAtoms::subscriptshift_, value)) { nsCSSValue cssValue; if (ParseNumericValue(value, cssValue) && cssValue.IsLengthUnit()) { - mSubScriptShift = CalcLength(aPresContext, mStyleContext, cssValue); + mSubScriptShift = CalcLength(GetPresContext(), mStyleContext, cssValue); } } // check if the superscriptshift attribute is there @@ -148,14 +148,13 @@ nsMathMLmmultiscriptsFrame::ProcessAttributes(nsPresContext* aPresContext) nsMathMLAtoms::superscriptshift_, value)) { nsCSSValue cssValue; if (ParseNumericValue(value, cssValue) && cssValue.IsLengthUnit()) { - mSupScriptShift = CalcLength(aPresContext, mStyleContext, cssValue); + mSupScriptShift = CalcLength(GetPresContext(), mStyleContext, cssValue); } } } NS_IMETHODIMP -nsMathMLmmultiscriptsFrame::Place(nsPresContext* aPresContext, - nsIRenderingContext& aRenderingContext, +nsMathMLmmultiscriptsFrame::Place(nsIRenderingContext& aRenderingContext, PRBool aPlaceOrigin, nsHTMLReflowMetrics& aDesiredSize) { @@ -169,7 +168,7 @@ nsMathMLmmultiscriptsFrame::Place(nsPresContext* aPresContext, // depend only on the current font //////////////////////////////////////// - ProcessAttributes(aPresContext); + ProcessAttributes(); // get x-height (an ex) aRenderingContext.SetFont(GetStyleFont()->mFont, nsnull); @@ -277,7 +276,7 @@ nsMathMLmmultiscriptsFrame::Place(nsPresContext* aPresContext, // duplicate found // report an error, encourage people to get their markups in order NS_WARNING("invalid markup"); - return ReflowError(aPresContext, aRenderingContext, aDesiredSize); + return ReflowError(aRenderingContext, aDesiredSize); } mprescriptsFrame = childFrame; firstPrescriptsPair = PR_TRUE; @@ -303,7 +302,7 @@ nsMathMLmmultiscriptsFrame::Place(nsPresContext* aPresContext, subScriptFrame = childFrame; GetReflowAndBoundingMetricsFor(subScriptFrame, subScriptSize, bmSubScript); // get the subdrop from the subscript font - GetSubDropFromChild (aPresContext, subScriptFrame, subDrop); + GetSubDropFromChild (subScriptFrame, subDrop); // parameter v, Rule 18a, App. G, TeXbook minSubScriptShift = bmBase.descent + subDrop; trySubScriptShift = PR_MAX(minSubScriptShift,subScriptShift); @@ -319,7 +318,7 @@ nsMathMLmmultiscriptsFrame::Place(nsPresContext* aPresContext, supScriptFrame = childFrame; GetReflowAndBoundingMetricsFor(supScriptFrame, supScriptSize, bmSupScript); // get the supdrop from the supscript font - GetSupDropFromChild (aPresContext, supScriptFrame, supDrop); + GetSupDropFromChild (supScriptFrame, supDrop); // parameter u, Rule 18a, App. G, TeXbook minSupScriptShift = bmBase.ascent - supDrop; // get min supscript shift limit from x-height @@ -386,7 +385,7 @@ nsMathMLmmultiscriptsFrame::Place(nsPresContext* aPresContext, if ((0 != width) || !baseFrame || !subScriptFrame || !supScriptFrame) { // report an error, encourage people to get their markups in order NS_WARNING("invalid markup"); - return ReflowError(aPresContext, aRenderingContext, aDesiredSize); + return ReflowError(aRenderingContext, aDesiredSize); } // we left out the width of prescripts, so ... @@ -428,7 +427,7 @@ nsMathMLmmultiscriptsFrame::Place(nsPresContext* aPresContext, // place the base ... childFrame = baseFrame; dy = aDesiredSize.ascent - baseSize.ascent; - FinishReflowChild (baseFrame, aPresContext, nsnull, baseSize, dx, dy, 0); + FinishReflowChild (baseFrame, GetPresContext(), nsnull, baseSize, dx, dy, 0); dx += bmBase.width + mScriptSpace + italicCorrection; } else if (mprescriptsFrame != childFrame) { @@ -451,12 +450,12 @@ nsMathMLmmultiscriptsFrame::Place(nsPresContext* aPresContext, dy = aDesiredSize.ascent - subScriptSize.ascent + maxSubScriptShift; - FinishReflowChild (subScriptFrame, aPresContext, nsnull, subScriptSize, + FinishReflowChild (subScriptFrame, GetPresContext(), nsnull, subScriptSize, dx + (width-subScriptSize.width)/2, dy, 0); dy = aDesiredSize.ascent - supScriptSize.ascent - maxSupScriptShift; - FinishReflowChild (supScriptFrame, aPresContext, nsnull, supScriptSize, + FinishReflowChild (supScriptFrame, GetPresContext(), nsnull, supScriptSize, dx + (width-supScriptSize.width)/2, dy, 0); dx += mScriptSpace + width; diff --git a/layout/mathml/base/src/nsMathMLmmultiscriptsFrame.h b/layout/mathml/base/src/nsMathMLmmultiscriptsFrame.h index e55815c8bef..e4ab86181bf 100644 --- a/layout/mathml/base/src/nsMathMLmmultiscriptsFrame.h +++ b/layout/mathml/base/src/nsMathMLmmultiscriptsFrame.h @@ -52,11 +52,10 @@ public: friend nsresult NS_NewMathMLmmultiscriptsFrame(nsIPresShell* aPresShell, nsIFrame** aNewFrame); NS_IMETHOD - TransmitAutomaticData(nsPresContext* aPresContext); + TransmitAutomaticData(); NS_IMETHOD - Place(nsPresContext* aPresContext, - nsIRenderingContext& aRenderingContext, + Place(nsIRenderingContext& aRenderingContext, PRBool aPlaceOrigin, nsHTMLReflowMetrics& aDesiredSize); @@ -73,7 +72,7 @@ private: nscoord mSupScriptShift; void - ProcessAttributes(nsPresContext* aPresContext); + ProcessAttributes(); }; #endif /* nsMathMLmmultiscriptsFrame_h___ */ diff --git a/layout/mathml/base/src/nsMathMLmoFrame.cpp b/layout/mathml/base/src/nsMathMLmoFrame.cpp index 39adbc9f3fe..5673628e15e 100644 --- a/layout/mathml/base/src/nsMathMLmoFrame.cpp +++ b/layout/mathml/base/src/nsMathMLmoFrame.cpp @@ -113,8 +113,7 @@ nsMathMLmoFrame::GetType() const // frame's state bit in our child text frame. So we will first check // its selected state bit, and use this little helper to double check. PRBool -nsMathMLmoFrame::IsFrameInSelection(nsPresContext* aPresContext, - nsIFrame* aFrame) +nsMathMLmoFrame::IsFrameInSelection(nsIFrame* aFrame) { NS_ASSERTION(aFrame, "null arg"); if (!aFrame) @@ -126,11 +125,12 @@ nsMathMLmoFrame::IsFrameInSelection(nsPresContext* aPresContext, return PR_FALSE; SelectionDetails* details = nsnull; - nsIPresShell *shell = aPresContext->GetPresShell(); + nsIPresShell *shell = GetPresContext()->GetPresShell(); if (shell) { nsCOMPtr frameSelection; nsCOMPtr selCon; - nsresult rv = GetSelectionController(aPresContext, getter_AddRefs(selCon)); + nsresult rv = GetSelectionController(GetPresContext(), + getter_AddRefs(selCon)); if (NS_SUCCEEDED(rv) && selCon) frameSelection = do_QueryInterface(selCon); if (!frameSelection) @@ -173,7 +173,7 @@ nsMathMLmoFrame::Paint(nsPresContext* aPresContext, PRBool isSelected = PR_FALSE; nsRect selectedRect; nsIFrame* firstChild = mFrames.FirstChild(); - if (IsFrameInSelection(aPresContext, firstChild)) { + if (IsFrameInSelection(firstChild)) { selectedRect = firstChild->GetRect(); isSelected = PR_TRUE; } @@ -284,7 +284,7 @@ nsMathMLmoFrame::ProcessTextData(nsPresContext* aPresContext) // called very often. We depend on many things that may change around us. // However, we re-use unchanged values. void -nsMathMLmoFrame::ProcessOperatorData(nsPresContext* aPresContext) +nsMathMLmoFrame::ProcessOperatorData() { // if we have been here before, we will just use our cached form nsOperatorFlags form = NS_MATHML_OPERATOR_GET_FORM(mFlags); @@ -364,6 +364,8 @@ nsMathMLmoFrame::ProcessOperatorData(nsPresContext* aPresContext) return; } + nsPresContext* presContext = GetPresContext(); + // beware of bug 133814 - there is a two-way dependency in the // embellished hierarchy: our embellished ancestors need to set // their flags based on some of our state (set above), and here we @@ -431,7 +433,7 @@ nsMathMLmoFrame::ProcessOperatorData(nsPresContext* aPresContext) // since these values are relative to the 'em' unit, convert to twips now nscoord em; nsCOMPtr fm = - aPresContext->GetMetricsFor(GetStyleFont()->mFont); + presContext->GetMetricsFor(GetStyleFont()->mFont); GetEmHeight(fm, em); mEmbellishData.leftSpace = NSToCoordRound(lspace * em); @@ -468,7 +470,7 @@ nsMathMLmoFrame::ProcessOperatorData(nsPresContext* aPresContext) if ((eCSSUnit_Number == cssValue.GetUnit()) && !cssValue.GetFloatValue()) leftSpace = 0; else if (cssValue.IsLengthUnit()) - leftSpace = CalcLength(aPresContext, mStyleContext, cssValue); + leftSpace = CalcLength(presContext, mStyleContext, cssValue); mFlags |= NS_MATHML_OPERATOR_LEFTSPACE_ATTR; } } @@ -484,7 +486,7 @@ nsMathMLmoFrame::ProcessOperatorData(nsPresContext* aPresContext) if ((eCSSUnit_Number == cssValue.GetUnit()) && !cssValue.GetFloatValue()) rightSpace = 0; else if (cssValue.IsLengthUnit()) - rightSpace = CalcLength(aPresContext, mStyleContext, cssValue); + rightSpace = CalcLength(presContext, mStyleContext, cssValue); mFlags |= NS_MATHML_OPERATOR_RIGHTSPACE_ATTR; } } @@ -492,7 +494,7 @@ nsMathMLmoFrame::ProcessOperatorData(nsPresContext* aPresContext) // little extra tuning to round lspace & rspace to at least a pixel so that // operators don't look as if they are colliding with their operands if (leftSpace || rightSpace) { - nscoord onePixel = aPresContext->IntScaledPixelsToTwips(1); + nscoord onePixel = presContext->IntScaledPixelsToTwips(1); if (leftSpace && leftSpace < onePixel) leftSpace = onePixel; if (rightSpace && rightSpace < onePixel) @@ -558,7 +560,7 @@ nsMathMLmoFrame::ProcessOperatorData(nsPresContext* aPresContext) else if (eCSSUnit_Percent == unit) mMinSize = cssValue.GetPercentValue(); else if (eCSSUnit_Null != unit) { - mMinSize = float(CalcLength(aPresContext, mStyleContext, cssValue)); + mMinSize = float(CalcLength(presContext, mStyleContext, cssValue)); mFlags |= NS_MATHML_OPERATOR_MINSIZE_EXPLICIT; } @@ -568,7 +570,7 @@ nsMathMLmoFrame::ProcessOperatorData(nsPresContext* aPresContext) nsMathMLAtoms::minsize_, value)) { if (ParseNumericValue(value, cssValue)) { if (cssValue.IsLengthUnit()) { - mMinSize *= float(CalcLength(aPresContext, mStyleContext, cssValue)); + mMinSize *= float(CalcLength(presContext, mStyleContext, cssValue)); mFlags |= NS_MATHML_OPERATOR_MINSIZE_EXPLICIT; } } @@ -591,7 +593,7 @@ nsMathMLmoFrame::ProcessOperatorData(nsPresContext* aPresContext) else if (eCSSUnit_Percent == unit) mMaxSize = cssValue.GetPercentValue(); else if (eCSSUnit_Null != unit) { - mMaxSize = float(CalcLength(aPresContext, mStyleContext, cssValue)); + mMaxSize = float(CalcLength(presContext, mStyleContext, cssValue)); mFlags |= NS_MATHML_OPERATOR_MAXSIZE_EXPLICIT; } @@ -601,7 +603,7 @@ nsMathMLmoFrame::ProcessOperatorData(nsPresContext* aPresContext) nsMathMLAtoms::maxsize_, value)) { if (ParseNumericValue(value, cssValue)) { if (cssValue.IsLengthUnit()) { - mMaxSize *= float(CalcLength(aPresContext, mStyleContext, cssValue)); + mMaxSize *= float(CalcLength(presContext, mStyleContext, cssValue)); mFlags |= NS_MATHML_OPERATOR_MAXSIZE_EXPLICIT; } } @@ -615,8 +617,7 @@ nsMathMLmoFrame::ProcessOperatorData(nsPresContext* aPresContext) // On input - it contains our current size // On output - the same size or the new size that we want NS_IMETHODIMP -nsMathMLmoFrame::Stretch(nsPresContext* aPresContext, - nsIRenderingContext& aRenderingContext, +nsMathMLmoFrame::Stretch(nsIRenderingContext& aRenderingContext, nsStretchDirection aStretchDirection, nsBoundingMetrics& aContainerSize, nsHTMLReflowMetrics& aDesiredStretchSize) @@ -776,7 +777,7 @@ nsMathMLmoFrame::Stretch(nsPresContext* aPresContext, } // let the MathMLChar stretch itself... - nsresult res = mMathMLChar.Stretch(aPresContext, aRenderingContext, + nsresult res = mMathMLChar.Stretch(GetPresContext(), aRenderingContext, aStretchDirection, container, charSize, stretchHint); if (NS_FAILED(res)) { // gracefully handle cases where stretching the char failed (i.e., GetBoundingMetrics failed) @@ -817,7 +818,7 @@ nsMathMLmoFrame::Stretch(nsPresContext* aPresContext, // Place our children using the default method // This will allow our child text frame to get its DidReflow() - Place(aPresContext, aRenderingContext, PR_TRUE, aDesiredStretchSize); + Place(aRenderingContext, PR_TRUE, aDesiredStretchSize); // Fixup for the final height. // On one hand, our stretchy height can sometimes be shorter than surrounding @@ -930,24 +931,23 @@ nsMathMLmoFrame::Stretch(nsPresContext* aPresContext, } NS_IMETHODIMP -nsMathMLmoFrame::InheritAutomaticData(nsPresContext* aPresContext, - nsIFrame* aParent) +nsMathMLmoFrame::InheritAutomaticData(nsIFrame* aParent) { // retain our native direction, it only changes if our text content changes nsStretchDirection direction = mEmbellishData.direction; - nsMathMLTokenFrame::InheritAutomaticData(aPresContext, aParent); + nsMathMLTokenFrame::InheritAutomaticData(aParent); mEmbellishData.direction = direction; return NS_OK; } NS_IMETHODIMP -nsMathMLmoFrame::TransmitAutomaticData(nsPresContext* aPresContext) +nsMathMLmoFrame::TransmitAutomaticData() { // this will cause us to re-sync our flags from scratch // but our returned 'form' is still not final (bug 133429), it will // be recomputed to its final value during the next call in Reflow() mEmbellishData.coreFrame = nsnull; - ProcessOperatorData(aPresContext); + ProcessOperatorData(); return NS_OK; } @@ -959,7 +959,7 @@ nsMathMLmoFrame::Reflow(nsPresContext* aPresContext, { // certain values use units that depend on our style context, so // it is safer to just process the whole lot here - ProcessOperatorData(aPresContext); + ProcessOperatorData(); return nsMathMLTokenFrame::Reflow(aPresContext, aDesiredSize, aReflowState, aStatus); } @@ -973,8 +973,7 @@ nsMathMLmoFrame::ReflowDirtyChild(nsIPresShell* aPresShell, // an re-build the automatic data from the parent of our outermost embellished // container (we ensure that we are the core, not just a sibling of the core) - nsPresContext *presContext = aPresShell->GetPresContext(); - ProcessTextData(presContext); + ProcessTextData(GetPresContext()); nsIFrame* target = this; nsEmbellishData embellishData; @@ -984,7 +983,7 @@ nsMathMLmoFrame::ReflowDirtyChild(nsIPresShell* aPresShell, } while (embellishData.coreFrame == this); // we have automatic data to update in the children of the target frame - return ReLayoutChildren(presContext, target); + return ReLayoutChildren(target); } NS_IMETHODIMP @@ -1008,7 +1007,7 @@ nsMathMLmoFrame::AttributeChanged(nsIContent* aContent, } while (embellishData.coreFrame == this); // we have automatic data to update in the children of the target frame - return ReLayoutChildren(GetPresContext(), target); + return ReLayoutChildren(target); } return nsMathMLTokenFrame:: diff --git a/layout/mathml/base/src/nsMathMLmoFrame.h b/layout/mathml/base/src/nsMathMLmoFrame.h index a41e9824edd..b759dff76b9 100644 --- a/layout/mathml/base/src/nsMathMLmoFrame.h +++ b/layout/mathml/base/src/nsMathMLmoFrame.h @@ -67,11 +67,10 @@ public: PRUint32 aFlags = 0); NS_IMETHOD - InheritAutomaticData(nsPresContext* aPresContext, - nsIFrame* aParent); + InheritAutomaticData(nsIFrame* aParent); NS_IMETHOD - TransmitAutomaticData(nsPresContext* aPresContext); + TransmitAutomaticData(); NS_IMETHOD Reflow(nsPresContext* aPresContext, @@ -92,8 +91,7 @@ public: // This method is called by the parent frame to ask // to stretch itself. NS_IMETHOD - Stretch(nsPresContext* aPresContext, - nsIRenderingContext& aRenderingContext, + Stretch(nsIRenderingContext& aRenderingContext, nsStretchDirection aStretchDirection, nsBoundingMetrics& aContainerSize, nsHTMLReflowMetrics& aDesiredStretchSize); @@ -117,12 +115,11 @@ protected: // our default data that may come from there, and to complete the setup // using attributes that we may have void - ProcessOperatorData(nsPresContext* aPresContext); + ProcessOperatorData(); // helper to double check thar our char should be rendered as a selected char PRBool - IsFrameInSelection(nsPresContext* aPresContext, - nsIFrame* aFrame); + IsFrameInSelection(nsIFrame* aFrame); }; #endif /* nsMathMLmoFrame_h___ */ diff --git a/layout/mathml/base/src/nsMathMLmoverFrame.cpp b/layout/mathml/base/src/nsMathMLmoverFrame.cpp index 82f0d1bcda1..b8e51adccd9 100644 --- a/layout/mathml/base/src/nsMathMLmoverFrame.cpp +++ b/layout/mathml/base/src/nsMathMLmoverFrame.cpp @@ -88,7 +88,7 @@ nsMathMLmoverFrame::AttributeChanged(nsIContent* aContent, if (nsMathMLAtoms::accent_ == aAttribute) { // When we have automatic data to update within ourselves, we ask our // parent to re-layout its children - return ReLayoutChildren(GetPresContext(), mParent); + return ReLayoutChildren(mParent); } return nsMathMLContainerFrame:: @@ -97,12 +97,11 @@ nsMathMLmoverFrame::AttributeChanged(nsIContent* aContent, } NS_IMETHODIMP -nsMathMLmoverFrame::UpdatePresentationData(nsPresContext* aPresContext, - PRInt32 aScriptLevelIncrement, +nsMathMLmoverFrame::UpdatePresentationData(PRInt32 aScriptLevelIncrement, PRUint32 aFlagsValues, PRUint32 aFlagsToUpdate) { - nsMathMLContainerFrame::UpdatePresentationData(aPresContext, + nsMathMLContainerFrame::UpdatePresentationData( aScriptLevelIncrement, aFlagsValues, aFlagsToUpdate); // disable the stretch-all flag if we are going to act like a superscript if ( NS_MATHML_EMBELLISH_IS_MOVABLELIMITS(mEmbellishData.flags) && @@ -116,8 +115,7 @@ nsMathMLmoverFrame::UpdatePresentationData(nsPresContext* aPresContext, } NS_IMETHODIMP -nsMathMLmoverFrame::UpdatePresentationDataFromChildAt(nsPresContext* aPresContext, - PRInt32 aFirstIndex, +nsMathMLmoverFrame::UpdatePresentationDataFromChildAt(PRInt32 aFirstIndex, PRInt32 aLastIndex, PRInt32 aScriptLevelIncrement, PRUint32 aFlagsValues, @@ -143,8 +141,8 @@ nsMathMLmoverFrame::UpdatePresentationDataFromChildAt(nsPresContext* aPresContex aFlagsToUpdate &= ~NS_MATHML_DISPLAYSTYLE; aFlagsValues &= ~NS_MATHML_DISPLAYSTYLE; } - PropagatePresentationDataFor(aPresContext, childFrame, - aScriptLevelIncrement, aFlagsValues, aFlagsToUpdate); + PropagatePresentationDataFor(childFrame, aScriptLevelIncrement, + aFlagsValues, aFlagsToUpdate); } index++; childFrame = childFrame->GetNextSibling(); @@ -156,11 +154,10 @@ nsMathMLmoverFrame::UpdatePresentationDataFromChildAt(nsPresContext* aPresContex } NS_IMETHODIMP -nsMathMLmoverFrame::InheritAutomaticData(nsPresContext* aPresContext, - nsIFrame* aParent) +nsMathMLmoverFrame::InheritAutomaticData(nsIFrame* aParent) { // let the base class get the default from our parent - nsMathMLContainerFrame::InheritAutomaticData(aPresContext, aParent); + nsMathMLContainerFrame::InheritAutomaticData(aParent); mPresentationData.flags |= NS_MATHML_STRETCH_ALL_CHILDREN_HORIZONTALLY; @@ -168,7 +165,7 @@ nsMathMLmoverFrame::InheritAutomaticData(nsPresContext* aPresContext, } NS_IMETHODIMP -nsMathMLmoverFrame::TransmitAutomaticData(nsPresContext* aPresContext) +nsMathMLmoverFrame::TransmitAutomaticData() { // At this stage, all our children are in sync and we can fully // resolve our own mEmbellishData struct @@ -246,7 +243,7 @@ XXX The winner is the outermost in conflicting settings like these: ? 0 : 1; PRUint32 compress = NS_MATHML_EMBELLISH_IS_ACCENTOVER(mEmbellishData.flags) ? NS_MATHML_COMPRESSED : 0; - PropagatePresentationDataFor(aPresContext, overscriptFrame, increment, + PropagatePresentationDataFor(overscriptFrame, increment, ~NS_MATHML_DISPLAYSTYLE | compress, NS_MATHML_DISPLAYSTYLE | compress); @@ -272,15 +269,14 @@ i.e.: */ NS_IMETHODIMP -nsMathMLmoverFrame::Place(nsPresContext* aPresContext, - nsIRenderingContext& aRenderingContext, +nsMathMLmoverFrame::Place(nsIRenderingContext& aRenderingContext, PRBool aPlaceOrigin, nsHTMLReflowMetrics& aDesiredSize) { if ( NS_MATHML_EMBELLISH_IS_MOVABLELIMITS(mEmbellishData.flags) && !NS_MATHML_IS_DISPLAYSTYLE(mPresentationData.flags)) { // place like superscript - return nsMathMLmsupFrame::PlaceSuperScript(aPresContext, + return nsMathMLmsupFrame::PlaceSuperScript(GetPresContext(), aRenderingContext, aPlaceOrigin, aDesiredSize, @@ -300,12 +296,12 @@ nsMathMLmoverFrame::Place(nsPresContext* aPresContext, if (!baseFrame || !overFrame || overFrame->GetNextSibling()) { // report an error, encourage people to get their markups in order NS_WARNING("invalid markup"); - return ReflowError(aPresContext, aRenderingContext, aDesiredSize); + return ReflowError(aRenderingContext, aDesiredSize); } GetReflowAndBoundingMetricsFor(baseFrame, baseSize, bmBase); GetReflowAndBoundingMetricsFor(overFrame, overSize, bmOver); - nscoord onePixel = aPresContext->IntScaledPixelsToTwips(1); + nscoord onePixel = GetPresContext()->IntScaledPixelsToTwips(1); //////////////////// // Place Children @@ -427,11 +423,11 @@ nsMathMLmoverFrame::Place(nsPresContext* aPresContext, if (aPlaceOrigin) { // place base nscoord dy = aDesiredSize.ascent - baseSize.ascent; - FinishReflowChild (baseFrame, aPresContext, nsnull, baseSize, dxBase, dy, 0); + FinishReflowChild (baseFrame, GetPresContext(), nsnull, baseSize, dxBase, dy, 0); // place overscript dy = aDesiredSize.ascent - mBoundingMetrics.ascent + bmOver.ascent - overSize.ascent; - FinishReflowChild (overFrame, aPresContext, nsnull, overSize, dxOver, dy, 0); + FinishReflowChild (overFrame, GetPresContext(), nsnull, overSize, dxOver, dy, 0); } return NS_OK; } diff --git a/layout/mathml/base/src/nsMathMLmoverFrame.h b/layout/mathml/base/src/nsMathMLmoverFrame.h index 9eaa2b96285..3ac9e29a9d6 100644 --- a/layout/mathml/base/src/nsMathMLmoverFrame.h +++ b/layout/mathml/base/src/nsMathMLmoverFrame.h @@ -52,27 +52,23 @@ public: friend nsresult NS_NewMathMLmoverFrame(nsIPresShell* aPresShell, nsIFrame** aNewFrame); NS_IMETHOD - Place(nsPresContext* aPresContext, - nsIRenderingContext& aRenderingContext, + Place(nsIRenderingContext& aRenderingContext, PRBool aPlaceOrigin, nsHTMLReflowMetrics& aDesiredSize); NS_IMETHOD - InheritAutomaticData(nsPresContext* aPresContext, - nsIFrame* aParent); + InheritAutomaticData(nsIFrame* aParent); NS_IMETHOD - TransmitAutomaticData(nsPresContext* aPresContext); + TransmitAutomaticData(); NS_IMETHOD - UpdatePresentationData(nsPresContext* aPresContext, - PRInt32 aScriptLevelIncrement, + UpdatePresentationData(PRInt32 aScriptLevelIncrement, PRUint32 aFlagsValues, PRUint32 aFlagsToUpdate); NS_IMETHOD - UpdatePresentationDataFromChildAt(nsPresContext* aPresContext, - PRInt32 aFirstIndex, + UpdatePresentationDataFromChildAt(PRInt32 aFirstIndex, PRInt32 aLastIndex, PRInt32 aScriptLevelIncrement, PRUint32 aFlagsValues, diff --git a/layout/mathml/base/src/nsMathMLmpaddedFrame.cpp b/layout/mathml/base/src/nsMathMLmpaddedFrame.cpp index b537407be6d..f7207b2abb5 100644 --- a/layout/mathml/base/src/nsMathMLmpaddedFrame.cpp +++ b/layout/mathml/base/src/nsMathMLmpaddedFrame.cpp @@ -90,11 +90,10 @@ nsMathMLmpaddedFrame::~nsMathMLmpaddedFrame() } NS_IMETHODIMP -nsMathMLmpaddedFrame::InheritAutomaticData(nsPresContext* aPresContext, - nsIFrame* aParent) +nsMathMLmpaddedFrame::InheritAutomaticData(nsIFrame* aParent) { // let the base class get the default from our parent - nsMathMLContainerFrame::InheritAutomaticData(aPresContext, aParent); + nsMathMLContainerFrame::InheritAutomaticData(aParent); mPresentationData.flags |= NS_MATHML_STRETCH_ALL_CHILDREN_VERTICALLY; @@ -102,7 +101,7 @@ nsMathMLmpaddedFrame::InheritAutomaticData(nsPresContext* aPresContext, } void -nsMathMLmpaddedFrame::ProcessAttributes(nsPresContext* aPresContext) +nsMathMLmpaddedFrame::ProcessAttributes() { /* parse the attributes @@ -378,7 +377,7 @@ nsMathMLmpaddedFrame::Reflow(nsPresContext* aPresContext, const nsHTMLReflowState& aReflowState, nsReflowStatus& aStatus) { - ProcessAttributes(aPresContext); + ProcessAttributes(); /////////////// // Let the base class format our content like an inferred mrow diff --git a/layout/mathml/base/src/nsMathMLmpaddedFrame.h b/layout/mathml/base/src/nsMathMLmpaddedFrame.h index f54aa1c296e..695a3e1fee0 100644 --- a/layout/mathml/base/src/nsMathMLmpaddedFrame.h +++ b/layout/mathml/base/src/nsMathMLmpaddedFrame.h @@ -51,8 +51,7 @@ public: friend nsresult NS_NewMathMLmpaddedFrame(nsIPresShell* aPresShell, nsIFrame** aNewFrame); NS_IMETHOD - InheritAutomaticData(nsPresContext* aPresContext, - nsIFrame* aParent); + InheritAutomaticData(nsIFrame* aParent); NS_IMETHOD Reflow(nsPresContext* aPresContext, @@ -84,7 +83,7 @@ private: // helpers to process the attributes void - ProcessAttributes(nsPresContext* aPresContext); + ProcessAttributes(); static PRBool ParseAttribute(nsString& aString, diff --git a/layout/mathml/base/src/nsMathMLmphantomFrame.cpp b/layout/mathml/base/src/nsMathMLmphantomFrame.cpp index 5f738ffeb29..1f278aa0c94 100644 --- a/layout/mathml/base/src/nsMathMLmphantomFrame.cpp +++ b/layout/mathml/base/src/nsMathMLmphantomFrame.cpp @@ -75,11 +75,10 @@ nsMathMLmphantomFrame::~nsMathMLmphantomFrame() } NS_IMETHODIMP -nsMathMLmphantomFrame::InheritAutomaticData(nsPresContext* aPresContext, - nsIFrame* aParent) +nsMathMLmphantomFrame::InheritAutomaticData(nsIFrame* aParent) { // let the base class get the default from our parent - nsMathMLContainerFrame::InheritAutomaticData(aPresContext, aParent); + nsMathMLContainerFrame::InheritAutomaticData(aParent); mPresentationData.flags |= NS_MATHML_STRETCH_ALL_CHILDREN_VERTICALLY; diff --git a/layout/mathml/base/src/nsMathMLmphantomFrame.h b/layout/mathml/base/src/nsMathMLmphantomFrame.h index 4d459f0abcd..2571eab0ab9 100644 --- a/layout/mathml/base/src/nsMathMLmphantomFrame.h +++ b/layout/mathml/base/src/nsMathMLmphantomFrame.h @@ -51,8 +51,7 @@ public: friend nsresult NS_NewMathMLmphantomFrame(nsIPresShell* aPresShell, nsIFrame** aNewFrame); NS_IMETHOD - InheritAutomaticData(nsPresContext* aPresContext, - nsIFrame* aParent); + InheritAutomaticData(nsIFrame* aParent); NS_IMETHOD Paint(nsPresContext* aPresContext, diff --git a/layout/mathml/base/src/nsMathMLmrootFrame.cpp b/layout/mathml/base/src/nsMathMLmrootFrame.cpp index 284167bfae3..ca601598cfd 100644 --- a/layout/mathml/base/src/nsMathMLmrootFrame.cpp +++ b/layout/mathml/base/src/nsMathMLmrootFrame.cpp @@ -114,16 +114,16 @@ nsMathMLmrootFrame::Init(nsPresContext* aPresContext, } NS_IMETHODIMP -nsMathMLmrootFrame::TransmitAutomaticData(nsPresContext* aPresContext) +nsMathMLmrootFrame::TransmitAutomaticData() { // 1. The REC says: // The element increments scriptlevel by 2, and sets displaystyle to // "false", within index, but leaves both attributes unchanged within base. // 2. The TeXbook (Ch 17. p.141) says \sqrt is compressed - UpdatePresentationDataFromChildAt(aPresContext, 1, 1, 2, + UpdatePresentationDataFromChildAt(1, 1, 2, ~NS_MATHML_DISPLAYSTYLE | NS_MATHML_COMPRESSED, NS_MATHML_DISPLAYSTYLE | NS_MATHML_COMPRESSED); - UpdatePresentationDataFromChildAt(aPresContext, 0, 0, 0, + UpdatePresentationDataFromChildAt(0, 0, 0, NS_MATHML_COMPRESSED, NS_MATHML_COMPRESSED); return NS_OK; @@ -233,7 +233,7 @@ nsMathMLmrootFrame::Reflow(nsPresContext* aPresContext, if (2 != count) { // report an error, encourage people to get their markups in order NS_WARNING("invalid markup"); - return ReflowError(aPresContext, renderingContext, aDesiredSize); + return ReflowError(renderingContext, aDesiredSize); } //////////// diff --git a/layout/mathml/base/src/nsMathMLmrootFrame.h b/layout/mathml/base/src/nsMathMLmrootFrame.h index 2132fefac46..b3cb085e77c 100644 --- a/layout/mathml/base/src/nsMathMLmrootFrame.h +++ b/layout/mathml/base/src/nsMathMLmrootFrame.h @@ -65,7 +65,7 @@ public: nsIFrame* aPrevInFlow); NS_IMETHOD - TransmitAutomaticData(nsPresContext* aPresContext); + TransmitAutomaticData(); NS_IMETHOD Reflow(nsPresContext* aPresContext, diff --git a/layout/mathml/base/src/nsMathMLmrowFrame.cpp b/layout/mathml/base/src/nsMathMLmrowFrame.cpp index e4c712afda9..5ba44f92600 100644 --- a/layout/mathml/base/src/nsMathMLmrowFrame.cpp +++ b/layout/mathml/base/src/nsMathMLmrowFrame.cpp @@ -76,11 +76,10 @@ nsMathMLmrowFrame::~nsMathMLmrowFrame() } NS_IMETHODIMP -nsMathMLmrowFrame::InheritAutomaticData(nsPresContext* aPresContext, - nsIFrame* aParent) +nsMathMLmrowFrame::InheritAutomaticData(nsIFrame* aParent) { // let the base class get the default from our parent - nsMathMLContainerFrame::InheritAutomaticData(aPresContext, aParent); + nsMathMLContainerFrame::InheritAutomaticData(aParent); mPresentationData.flags |= NS_MATHML_STRETCH_ALL_CHILDREN_VERTICALLY; diff --git a/layout/mathml/base/src/nsMathMLmrowFrame.h b/layout/mathml/base/src/nsMathMLmrowFrame.h index cfdfb477502..5eca29f144e 100644 --- a/layout/mathml/base/src/nsMathMLmrowFrame.h +++ b/layout/mathml/base/src/nsMathMLmrowFrame.h @@ -51,8 +51,7 @@ public: friend nsresult NS_NewMathMLmrowFrame(nsIPresShell* aPresShell, nsIFrame** aNewFrame); NS_IMETHOD - InheritAutomaticData(nsPresContext* aPresContext, - nsIFrame* aParent); + InheritAutomaticData(nsIFrame* aParent); protected: nsMathMLmrowFrame(); diff --git a/layout/mathml/base/src/nsMathMLmsqrtFrame.cpp b/layout/mathml/base/src/nsMathMLmsqrtFrame.cpp index 836be349bcc..91baef948ab 100644 --- a/layout/mathml/base/src/nsMathMLmsqrtFrame.cpp +++ b/layout/mathml/base/src/nsMathMLmsqrtFrame.cpp @@ -114,25 +114,25 @@ nsMathMLmsqrtFrame::Init(nsPresContext* aPresContext, } NS_IMETHODIMP -nsMathMLmsqrtFrame::InheritAutomaticData(nsPresContext* aPresContext, - nsIFrame* aParent) +nsMathMLmsqrtFrame::InheritAutomaticData(nsIFrame* aParent) { // let the base class get the default from our parent - nsMathMLContainerFrame::InheritAutomaticData(aPresContext, aParent); + nsMathMLContainerFrame::InheritAutomaticData(aParent); mPresentationData.flags |= NS_MATHML_STRETCH_ALL_CHILDREN_VERTICALLY; return NS_OK; } + NS_IMETHODIMP -nsMathMLmsqrtFrame::TransmitAutomaticData(nsPresContext* aPresContext) +nsMathMLmsqrtFrame::TransmitAutomaticData() { // 1. The REC says: // The element leaves both attributes [displaystyle and scriptlevel] // unchanged within all its arguments. // 2. The TeXBook (Ch 17. p.141) says that \sqrt is cramped - UpdatePresentationDataFromChildAt(aPresContext, 0, -1, 0, + UpdatePresentationDataFromChildAt(0, -1, 0, NS_MATHML_COMPRESSED, NS_MATHML_COMPRESSED); diff --git a/layout/mathml/base/src/nsMathMLmsqrtFrame.h b/layout/mathml/base/src/nsMathMLmsqrtFrame.h index fd554aa2a70..5d0f017ea43 100644 --- a/layout/mathml/base/src/nsMathMLmsqrtFrame.h +++ b/layout/mathml/base/src/nsMathMLmsqrtFrame.h @@ -102,14 +102,13 @@ public: PRUint32 aFlags = 0); NS_IMETHOD - InheritAutomaticData(nsPresContext* aPresContext, - nsIFrame* aParent); + InheritAutomaticData(nsIFrame* aParent); + NS_IMETHOD - TransmitAutomaticData(nsPresContext* aPresContext); + TransmitAutomaticData(); virtual nsresult - FixInterFrameSpacing(nsPresContext* aPresContext, - nsHTMLReflowMetrics& aDesiredSize) + FixInterFrameSpacing(nsHTMLReflowMetrics& aDesiredSize) { // XXX the base method doesn't work properly with because it // only slides child frames and has no idea that we have a sqrt glyph diff --git a/layout/mathml/base/src/nsMathMLmstyleFrame.cpp b/layout/mathml/base/src/nsMathMLmstyleFrame.cpp index 8300f3fb6bc..2270157e46d 100644 --- a/layout/mathml/base/src/nsMathMLmstyleFrame.cpp +++ b/layout/mathml/base/src/nsMathMLmstyleFrame.cpp @@ -78,11 +78,10 @@ nsMathMLmstyleFrame::~nsMathMLmstyleFrame() // mstyle needs special care for its scriptlevel and displaystyle attributes NS_IMETHODIMP -nsMathMLmstyleFrame::InheritAutomaticData(nsPresContext* aPresContext, - nsIFrame* aParent) +nsMathMLmstyleFrame::InheritAutomaticData(nsIFrame* aParent) { // let the base class get the default from our parent - nsMathMLContainerFrame::InheritAutomaticData(aPresContext, aParent); + nsMathMLContainerFrame::InheritAutomaticData(aParent); // sync with our current state mPresentationData.flags |= NS_MATHML_STRETCH_ALL_CHILDREN_VERTICALLY; @@ -122,7 +121,7 @@ nsMathMLmstyleFrame::InheritAutomaticData(nsPresContext* aPresContext, } NS_IMETHODIMP -nsMathMLmstyleFrame::TransmitAutomaticData(nsPresContext* aPresContext) +nsMathMLmstyleFrame::TransmitAutomaticData() { // Nothing particular to do here, the values that we computed in // InheritAutomaticData() are the values that we wanted to pass to @@ -133,8 +132,7 @@ nsMathMLmstyleFrame::TransmitAutomaticData(nsPresContext* aPresContext) } NS_IMETHODIMP -nsMathMLmstyleFrame::UpdatePresentationData(nsPresContext* aPresContext, - PRInt32 aScriptLevelIncrement, +nsMathMLmstyleFrame::UpdatePresentationData(PRInt32 aScriptLevelIncrement, PRUint32 aFlagsValues, PRUint32 aFlagsToUpdate) { @@ -174,8 +172,7 @@ nsMathMLmstyleFrame::UpdatePresentationData(nsPresContext* aPresContext, } NS_IMETHODIMP -nsMathMLmstyleFrame::UpdatePresentationDataFromChildAt(nsPresContext* aPresContext, - PRInt32 aFirstIndex, +nsMathMLmstyleFrame::UpdatePresentationDataFromChildAt(PRInt32 aFirstIndex, PRInt32 aLastIndex, PRInt32 aScriptLevelIncrement, PRUint32 aFlagsValues, @@ -201,7 +198,7 @@ nsMathMLmstyleFrame::UpdatePresentationDataFromChildAt(nsPresContext* aPresConte // let the base class worry about the update return nsMathMLContainerFrame::UpdatePresentationDataFromChildAt( - aPresContext, aFirstIndex, aLastIndex, aScriptLevelIncrement, + aFirstIndex, aLastIndex, aScriptLevelIncrement, aFlagsValues, aFlagsToUpdate); } @@ -216,5 +213,5 @@ nsMathMLmstyleFrame::AttributeChanged(nsIContent* aContent, // them in our subtree. However, our siblings will be re-laid too. We used // to have a more speedier but more verbose alternative that didn't re-layout // our siblings. See bug 114909 - attachment 67668. - return ReLayoutChildren(GetPresContext(), mParent); + return ReLayoutChildren(mParent); } diff --git a/layout/mathml/base/src/nsMathMLmstyleFrame.h b/layout/mathml/base/src/nsMathMLmstyleFrame.h index 5ab59fb7f7d..58498fe5794 100644 --- a/layout/mathml/base/src/nsMathMLmstyleFrame.h +++ b/layout/mathml/base/src/nsMathMLmstyleFrame.h @@ -57,21 +57,18 @@ public: PRInt32 aModType); NS_IMETHOD - InheritAutomaticData(nsPresContext* aPresContext, - nsIFrame* aParent); + InheritAutomaticData(nsIFrame* aParent); NS_IMETHOD - TransmitAutomaticData(nsPresContext* aPresContext); + TransmitAutomaticData(); NS_IMETHOD - UpdatePresentationData(nsPresContext* aPresContext, - PRInt32 aScriptLevelIncrement, + UpdatePresentationData(PRInt32 aScriptLevelIncrement, PRUint32 aFlagsValues, PRUint32 aFlagsToUpdate); NS_IMETHOD - UpdatePresentationDataFromChildAt(nsPresContext* aPresContext, - PRInt32 aFirstIndex, + UpdatePresentationDataFromChildAt(PRInt32 aFirstIndex, PRInt32 aLastIndex, PRInt32 aScriptLevelIncrement, PRUint32 aFlagsValues, diff --git a/layout/mathml/base/src/nsMathMLmsubFrame.cpp b/layout/mathml/base/src/nsMathMLmsubFrame.cpp index 61cf886c135..4ebbf067dd8 100644 --- a/layout/mathml/base/src/nsMathMLmsubFrame.cpp +++ b/layout/mathml/base/src/nsMathMLmsubFrame.cpp @@ -77,7 +77,7 @@ nsMathMLmsubFrame::~nsMathMLmsubFrame() } NS_IMETHODIMP -nsMathMLmsubFrame::TransmitAutomaticData(nsPresContext* aPresContext) +nsMathMLmsubFrame::TransmitAutomaticData() { // if our base is an embellished operator, let its state bubble to us nsIFrame* baseFrame = mFrames.FirstChild(); @@ -89,7 +89,7 @@ nsMathMLmsubFrame::TransmitAutomaticData(nsPresContext* aPresContext) // The element increments scriptlevel by 1, and sets displaystyle to // "false", within subscript, but leaves both attributes unchanged within base. // 2. The TeXbook (Ch 17. p.141) says the subscript is compressed - UpdatePresentationDataFromChildAt(aPresContext, 1, -1, 1, + UpdatePresentationDataFromChildAt(1, -1, 1, ~NS_MATHML_DISPLAYSTYLE | NS_MATHML_COMPRESSED, NS_MATHML_DISPLAYSTYLE | NS_MATHML_COMPRESSED); @@ -97,8 +97,7 @@ nsMathMLmsubFrame::TransmitAutomaticData(nsPresContext* aPresContext) } NS_IMETHODIMP -nsMathMLmsubFrame::Place (nsPresContext* aPresContext, - nsIRenderingContext& aRenderingContext, +nsMathMLmsubFrame::Place (nsIRenderingContext& aRenderingContext, PRBool aPlaceOrigin, nsHTMLReflowMetrics& aDesiredSize) { @@ -112,11 +111,11 @@ nsMathMLmsubFrame::Place (nsPresContext* aPresContext, nsMathMLAtoms::subscriptshift_, value)) { nsCSSValue cssValue; if (ParseNumericValue(value, cssValue) && cssValue.IsLengthUnit()) { - subScriptShift = CalcLength(aPresContext, mStyleContext, cssValue); + subScriptShift = CalcLength(GetPresContext(), mStyleContext, cssValue); } } - return nsMathMLmsubFrame::PlaceSubScript(aPresContext, + return nsMathMLmsubFrame::PlaceSubScript(GetPresContext(), aRenderingContext, aPlaceOrigin, aDesiredSize, @@ -158,8 +157,7 @@ nsMathMLmsubFrame::PlaceSubScript (nsPresContext* aPresContext, // report an error, encourage people to get their markups in order NS_WARNING("invalid markup"); return NS_STATIC_CAST(nsMathMLContainerFrame*, - aFrame)->ReflowError(aPresContext, - aRenderingContext, + aFrame)->ReflowError(aRenderingContext, aDesiredSize); } GetReflowAndBoundingMetricsFor(baseFrame, baseSize, bmBase); @@ -167,7 +165,7 @@ nsMathMLmsubFrame::PlaceSubScript (nsPresContext* aPresContext, // get the subdrop from the subscript font nscoord subDrop; - GetSubDropFromChild(aPresContext, subScriptFrame, subDrop); + GetSubDropFromChild(subScriptFrame, subDrop); // parameter v, Rule 18a, App. G, TeXbook nscoord minSubScriptShift = bmBase.descent + subDrop; diff --git a/layout/mathml/base/src/nsMathMLmsubFrame.h b/layout/mathml/base/src/nsMathMLmsubFrame.h index d9a8431faff..5659940a5b4 100644 --- a/layout/mathml/base/src/nsMathMLmsubFrame.h +++ b/layout/mathml/base/src/nsMathMLmsubFrame.h @@ -52,11 +52,10 @@ public: friend nsresult NS_NewMathMLmsubFrame(nsIPresShell* aPresShell, nsIFrame** aNewFrame); NS_IMETHOD - TransmitAutomaticData(nsPresContext* aPresContext); + TransmitAutomaticData(); NS_IMETHOD - Place(nsPresContext* aPresContext, - nsIRenderingContext& aRenderingContext, + Place(nsIRenderingContext& aRenderingContext, PRBool aPlaceOrigin, nsHTMLReflowMetrics& aDesiredSize); diff --git a/layout/mathml/base/src/nsMathMLmsubsupFrame.cpp b/layout/mathml/base/src/nsMathMLmsubsupFrame.cpp index 2e5c64d6f76..952eac5bd50 100644 --- a/layout/mathml/base/src/nsMathMLmsubsupFrame.cpp +++ b/layout/mathml/base/src/nsMathMLmsubsupFrame.cpp @@ -77,7 +77,7 @@ nsMathMLmsubsupFrame::~nsMathMLmsubsupFrame() } NS_IMETHODIMP -nsMathMLmsubsupFrame::TransmitAutomaticData(nsPresContext* aPresContext) +nsMathMLmsubsupFrame::TransmitAutomaticData() { // if our base is an embellished operator, let its state bubble to us nsIFrame* baseFrame = mFrames.FirstChild(); @@ -91,10 +91,10 @@ nsMathMLmsubsupFrame::TransmitAutomaticData(nsPresContext* aPresContext) // unchanged within base. // 2. The TeXbook (Ch 17. p.141) says the superscript inherits the compression // while the subscript is compressed - UpdatePresentationDataFromChildAt(aPresContext, 1, -1, 1, + UpdatePresentationDataFromChildAt(1, -1, 1, ~NS_MATHML_DISPLAYSTYLE, NS_MATHML_DISPLAYSTYLE); - UpdatePresentationDataFromChildAt(aPresContext, 1, 1, 0, + UpdatePresentationDataFromChildAt(1, 1, 0, NS_MATHML_COMPRESSED, NS_MATHML_COMPRESSED); @@ -102,8 +102,7 @@ nsMathMLmsubsupFrame::TransmitAutomaticData(nsPresContext* aPresContext) } NS_IMETHODIMP -nsMathMLmsubsupFrame::Place(nsPresContext* aPresContext, - nsIRenderingContext& aRenderingContext, +nsMathMLmsubsupFrame::Place(nsIRenderingContext& aRenderingContext, PRBool aPlaceOrigin, nsHTMLReflowMetrics& aDesiredSize) { @@ -117,7 +116,7 @@ nsMathMLmsubsupFrame::Place(nsPresContext* aPresContext, nsMathMLAtoms::subscriptshift_, value)) { nsCSSValue cssValue; if (ParseNumericValue(value, cssValue) && cssValue.IsLengthUnit()) { - subScriptShift = CalcLength(aPresContext, mStyleContext, cssValue); + subScriptShift = CalcLength(GetPresContext(), mStyleContext, cssValue); } } // check if the superscriptshift attribute is there @@ -126,11 +125,11 @@ nsMathMLmsubsupFrame::Place(nsPresContext* aPresContext, nsMathMLAtoms::superscriptshift_, value)) { nsCSSValue cssValue; if (ParseNumericValue(value, cssValue) && cssValue.IsLengthUnit()) { - supScriptShift = CalcLength(aPresContext, mStyleContext, cssValue); + supScriptShift = CalcLength(GetPresContext(), mStyleContext, cssValue); } } - return nsMathMLmsubsupFrame::PlaceSubSupScript(aPresContext, + return nsMathMLmsubsupFrame::PlaceSubSupScript(GetPresContext(), aRenderingContext, aPlaceOrigin, aDesiredSize, @@ -180,8 +179,7 @@ nsMathMLmsubsupFrame::PlaceSubSupScript(nsPresContext* aPresContext, // report an error, encourage people to get their markups in order NS_WARNING("invalid markup"); return NS_STATIC_CAST(nsMathMLContainerFrame*, - aFrame)->ReflowError(aPresContext, - aRenderingContext, + aFrame)->ReflowError(aRenderingContext, aDesiredSize); } GetReflowAndBoundingMetricsFor(baseFrame, baseSize, bmBase); @@ -190,13 +188,13 @@ nsMathMLmsubsupFrame::PlaceSubSupScript(nsPresContext* aPresContext, // get the subdrop from the subscript font nscoord subDrop; - GetSubDropFromChild(aPresContext, subScriptFrame, subDrop); + GetSubDropFromChild(subScriptFrame, subDrop); // parameter v, Rule 18a, App. G, TeXbook nscoord minSubScriptShift = bmBase.descent + subDrop; // get the supdrop from the supscript font nscoord supDrop; - GetSupDropFromChild(aPresContext, supScriptFrame, supDrop); + GetSupDropFromChild(supScriptFrame, supDrop); // parameter u, Rule 18a, App. G, TeXbook nscoord minSupScriptShift = bmBase.ascent - supDrop; @@ -359,15 +357,18 @@ nsMathMLmsubsupFrame::PlaceSubSupScript(nsPresContext* aPresContext, nscoord dx, dy; // now place the base ... dx = 0; dy = aDesiredSize.ascent - baseSize.ascent; - FinishReflowChild(baseFrame, aPresContext, nsnull, baseSize, dx, dy, 0); + FinishReflowChild(baseFrame, aPresContext, nsnull, + baseSize, dx, dy, 0); // ... and subscript dx = bmBase.width + aScriptSpace; dy = aDesiredSize.ascent - (subScriptSize.ascent - subScriptShift); - FinishReflowChild(subScriptFrame, aPresContext, nsnull, subScriptSize, dx, dy, 0); + FinishReflowChild(subScriptFrame, aPresContext, nsnull, + subScriptSize, dx, dy, 0); // ... and the superscript dx = bmBase.width + aScriptSpace + italicCorrection; dy = aDesiredSize.ascent - (supScriptSize.ascent + supScriptShift); - FinishReflowChild(supScriptFrame, aPresContext, nsnull, supScriptSize, dx, dy, 0); + FinishReflowChild(supScriptFrame, aPresContext, nsnull, + supScriptSize, dx, dy, 0); } return NS_OK; diff --git a/layout/mathml/base/src/nsMathMLmsubsupFrame.h b/layout/mathml/base/src/nsMathMLmsubsupFrame.h index d97841d7c5f..8722d2ac885 100644 --- a/layout/mathml/base/src/nsMathMLmsubsupFrame.h +++ b/layout/mathml/base/src/nsMathMLmsubsupFrame.h @@ -52,11 +52,10 @@ public: friend nsresult NS_NewMathMLmsubsupFrame(nsIPresShell* aPresShell, nsIFrame** aNewFrame); NS_IMETHOD - TransmitAutomaticData(nsPresContext* aPresContext); + TransmitAutomaticData(); NS_IMETHOD - Place(nsPresContext* aPresContext, - nsIRenderingContext& aRenderingContext, + Place(nsIRenderingContext& aRenderingContext, PRBool aPlaceOrigin, nsHTMLReflowMetrics& aDesiredSize); diff --git a/layout/mathml/base/src/nsMathMLmsupFrame.cpp b/layout/mathml/base/src/nsMathMLmsupFrame.cpp index 4e582ca66e5..e4f14df8eeb 100644 --- a/layout/mathml/base/src/nsMathMLmsupFrame.cpp +++ b/layout/mathml/base/src/nsMathMLmsupFrame.cpp @@ -76,7 +76,7 @@ nsMathMLmsupFrame::~nsMathMLmsupFrame() } NS_IMETHODIMP -nsMathMLmsupFrame::TransmitAutomaticData(nsPresContext* aPresContext) +nsMathMLmsupFrame::TransmitAutomaticData() { // if our base is an embellished operator, its flags bubble to us nsIFrame* baseFrame = mFrames.FirstChild(); @@ -89,7 +89,7 @@ nsMathMLmsupFrame::TransmitAutomaticData(nsPresContext* aPresContext) // "false", within superscript, but leaves both attributes unchanged within base. // 2. The TeXbook (Ch 17. p.141) says the superscript *inherits* the compression, // so we don't set the compression flag. Our parent will propagate its own. - UpdatePresentationDataFromChildAt(aPresContext, 1, -1, 1, + UpdatePresentationDataFromChildAt(1, -1, 1, ~NS_MATHML_DISPLAYSTYLE, NS_MATHML_DISPLAYSTYLE); @@ -97,8 +97,7 @@ nsMathMLmsupFrame::TransmitAutomaticData(nsPresContext* aPresContext) } NS_IMETHODIMP -nsMathMLmsupFrame::Place(nsPresContext* aPresContext, - nsIRenderingContext& aRenderingContext, +nsMathMLmsupFrame::Place(nsIRenderingContext& aRenderingContext, PRBool aPlaceOrigin, nsHTMLReflowMetrics& aDesiredSize) { @@ -112,11 +111,11 @@ nsMathMLmsupFrame::Place(nsPresContext* aPresContext, nsMathMLAtoms::superscriptshift_, value)) { nsCSSValue cssValue; if (ParseNumericValue(value, cssValue) && cssValue.IsLengthUnit()) { - supScriptShift = CalcLength(aPresContext, mStyleContext, cssValue); + supScriptShift = CalcLength(GetPresContext(), mStyleContext, cssValue); } } - return nsMathMLmsupFrame::PlaceSuperScript(aPresContext, + return nsMathMLmsupFrame::PlaceSuperScript(GetPresContext(), aRenderingContext, aPlaceOrigin, aDesiredSize, @@ -159,8 +158,7 @@ nsMathMLmsupFrame::PlaceSuperScript(nsPresContext* aPresContext, // report an error, encourage people to get their markups in order NS_WARNING("invalid markup"); return NS_STATIC_CAST(nsMathMLContainerFrame*, - aFrame)->ReflowError(aPresContext, - aRenderingContext, + aFrame)->ReflowError(aRenderingContext, aDesiredSize); } GetReflowAndBoundingMetricsFor(baseFrame, baseSize, bmBase); @@ -168,7 +166,7 @@ nsMathMLmsupFrame::PlaceSuperScript(nsPresContext* aPresContext, // get the supdrop from the supscript font nscoord supDrop; - GetSupDropFromChild(aPresContext, supScriptFrame, supDrop); + GetSupDropFromChild(supScriptFrame, supDrop); // parameter u, Rule 18a, App. G, TeXbook nscoord minSupScriptShift = bmBase.ascent - supDrop; diff --git a/layout/mathml/base/src/nsMathMLmsupFrame.h b/layout/mathml/base/src/nsMathMLmsupFrame.h index bcd197e797a..c4adafbd9d1 100644 --- a/layout/mathml/base/src/nsMathMLmsupFrame.h +++ b/layout/mathml/base/src/nsMathMLmsupFrame.h @@ -52,11 +52,10 @@ public: friend nsresult NS_NewMathMLmsupFrame(nsIPresShell* aPresShell, nsIFrame** aNewFrame); NS_IMETHOD - TransmitAutomaticData(nsPresContext* aPresContext); + TransmitAutomaticData(); NS_IMETHOD - Place(nsPresContext* aPresContext, - nsIRenderingContext& aRenderingContext, + Place(nsIRenderingContext& aRenderingContext, PRBool aPlaceOrigin, nsHTMLReflowMetrics& aDesiredSize); diff --git a/layout/mathml/base/src/nsMathMLmtableFrame.cpp b/layout/mathml/base/src/nsMathMLmtableFrame.cpp index e611b9368f9..a59e29d2cdf 100644 --- a/layout/mathml/base/src/nsMathMLmtableFrame.cpp +++ b/layout/mathml/base/src/nsMathMLmtableFrame.cpp @@ -386,13 +386,12 @@ nsMathMLmtableOuterFrame::~nsMathMLmtableOuterFrame() } NS_IMETHODIMP -nsMathMLmtableOuterFrame::InheritAutomaticData(nsPresContext* aPresContext, - nsIFrame* aParent) +nsMathMLmtableOuterFrame::InheritAutomaticData(nsIFrame* aParent) { // XXX the REC says that by default, displaystyle=false in // let the base class inherit the scriptlevel and displaystyle from our parent - nsMathMLFrame::InheritAutomaticData(aPresContext, aParent); + nsMathMLFrame::InheritAutomaticData(aParent); // see if the displaystyle attribute is there and let it override what we inherited nsAutoString value; diff --git a/layout/mathml/base/src/nsMathMLmtableFrame.h b/layout/mathml/base/src/nsMathMLmtableFrame.h index 32e990ec70e..ee070b8dcef 100644 --- a/layout/mathml/base/src/nsMathMLmtableFrame.h +++ b/layout/mathml/base/src/nsMathMLmtableFrame.h @@ -56,27 +56,24 @@ public: // Overloaded nsIMathMLFrame methods NS_IMETHOD - InheritAutomaticData(nsPresContext* aPresContext, - nsIFrame* aParent); + InheritAutomaticData(nsIFrame* aParent); NS_IMETHOD - UpdatePresentationDataFromChildAt(nsPresContext* aPresContext, - PRInt32 aFirstIndex, + UpdatePresentationDataFromChildAt(PRInt32 aFirstIndex, PRInt32 aLastIndex, PRInt32 aScriptLevelIncrement, PRUint32 aFlagsValues, PRUint32 aFlagsToUpdate) { - nsMathMLContainerFrame::PropagatePresentationDataFromChildAt(aPresContext, this, + nsMathMLContainerFrame::PropagatePresentationDataFromChildAt(this, aFirstIndex, aLastIndex, aScriptLevelIncrement, aFlagsValues, aFlagsToUpdate); return NS_OK; } NS_IMETHOD - ReResolveScriptStyle(nsPresContext* aPresContext, - PRInt32 aParentScriptLevel) + ReResolveScriptStyle(PRInt32 aParentScriptLevel) { - nsMathMLContainerFrame::PropagateScriptStyleFor(aPresContext, this, aParentScriptLevel); + nsMathMLContainerFrame::PropagateScriptStyleFor(this, aParentScriptLevel); return NS_OK; } @@ -137,23 +134,21 @@ public: // Overloaded nsIMathMLFrame methods NS_IMETHOD - UpdatePresentationDataFromChildAt(nsPresContext* aPresContext, - PRInt32 aFirstIndex, + UpdatePresentationDataFromChildAt(PRInt32 aFirstIndex, PRInt32 aLastIndex, PRInt32 aScriptLevelIncrement, PRUint32 aFlagsValues, PRUint32 aFlagsToUpdate) { - nsMathMLContainerFrame::PropagatePresentationDataFromChildAt(aPresContext, this, + nsMathMLContainerFrame::PropagatePresentationDataFromChildAt(this, aFirstIndex, aLastIndex, aScriptLevelIncrement, aFlagsValues, aFlagsToUpdate); return NS_OK; } NS_IMETHOD - ReResolveScriptStyle(nsPresContext* aPresContext, - PRInt32 aParentScriptLevel) + ReResolveScriptStyle(PRInt32 aParentScriptLevel) { - nsMathMLContainerFrame::PropagateScriptStyleFor(aPresContext, this, aParentScriptLevel); + nsMathMLContainerFrame::PropagateScriptStyleFor(this, aParentScriptLevel); return NS_OK; } diff --git a/layout/mathml/base/src/nsMathMLmunderFrame.cpp b/layout/mathml/base/src/nsMathMLmunderFrame.cpp index d99fa7a2af0..f0b6da4c0af 100644 --- a/layout/mathml/base/src/nsMathMLmunderFrame.cpp +++ b/layout/mathml/base/src/nsMathMLmunderFrame.cpp @@ -88,7 +88,7 @@ nsMathMLmunderFrame::AttributeChanged(nsIContent* aContent, if (nsMathMLAtoms::accentunder_ == aAttribute) { // When we have automatic data to update within ourselves, we ask our // parent to re-layout its children - return ReLayoutChildren(GetPresContext(), mParent); + return ReLayoutChildren(mParent); } return nsMathMLContainerFrame:: @@ -97,12 +97,11 @@ nsMathMLmunderFrame::AttributeChanged(nsIContent* aContent, } NS_IMETHODIMP -nsMathMLmunderFrame::UpdatePresentationData(nsPresContext* aPresContext, - PRInt32 aScriptLevelIncrement, +nsMathMLmunderFrame::UpdatePresentationData(PRInt32 aScriptLevelIncrement, PRUint32 aFlagsValues, PRUint32 aFlagsToUpdate) { - nsMathMLContainerFrame::UpdatePresentationData(aPresContext, + nsMathMLContainerFrame::UpdatePresentationData( aScriptLevelIncrement, aFlagsValues, aFlagsToUpdate); // disable the stretch-all flag if we are going to act like a subscript if ( NS_MATHML_EMBELLISH_IS_MOVABLELIMITS(mEmbellishData.flags) && @@ -116,8 +115,7 @@ nsMathMLmunderFrame::UpdatePresentationData(nsPresContext* aPresContext, } NS_IMETHODIMP -nsMathMLmunderFrame::UpdatePresentationDataFromChildAt(nsPresContext* aPresContext, - PRInt32 aFirstIndex, +nsMathMLmunderFrame::UpdatePresentationDataFromChildAt(PRInt32 aFirstIndex, PRInt32 aLastIndex, PRInt32 aScriptLevelIncrement, PRUint32 aFlagsValues, @@ -143,7 +141,7 @@ nsMathMLmunderFrame::UpdatePresentationDataFromChildAt(nsPresContext* aPresConte aFlagsToUpdate &= ~NS_MATHML_DISPLAYSTYLE; aFlagsValues &= ~NS_MATHML_DISPLAYSTYLE; } - PropagatePresentationDataFor(aPresContext, childFrame, + PropagatePresentationDataFor(childFrame, aScriptLevelIncrement, aFlagsValues, aFlagsToUpdate); } index++; @@ -156,11 +154,10 @@ nsMathMLmunderFrame::UpdatePresentationDataFromChildAt(nsPresContext* aPresConte } NS_IMETHODIMP -nsMathMLmunderFrame::InheritAutomaticData(nsPresContext* aPresContext, - nsIFrame* aParent) +nsMathMLmunderFrame::InheritAutomaticData(nsIFrame* aParent) { // let the base class get the default from our parent - nsMathMLContainerFrame::InheritAutomaticData(aPresContext, aParent); + nsMathMLContainerFrame::InheritAutomaticData(aParent); mPresentationData.flags |= NS_MATHML_STRETCH_ALL_CHILDREN_HORIZONTALLY; @@ -168,7 +165,7 @@ nsMathMLmunderFrame::InheritAutomaticData(nsPresContext* aPresContext, } NS_IMETHODIMP -nsMathMLmunderFrame::TransmitAutomaticData(nsPresContext* aPresContext) +nsMathMLmunderFrame::TransmitAutomaticData() { // At this stage, all our children are in sync and we can fully // resolve our own mEmbellishData struct @@ -242,7 +239,7 @@ XXX The winner is the outermost setting in conflicting settings like these: */ PRInt32 increment = NS_MATHML_EMBELLISH_IS_ACCENTUNDER(mEmbellishData.flags) ? 0 : 1; - PropagatePresentationDataFor(aPresContext, underscriptFrame, increment, + PropagatePresentationDataFor(underscriptFrame, increment, ~NS_MATHML_DISPLAYSTYLE | NS_MATHML_COMPRESSED, NS_MATHML_DISPLAYSTYLE | NS_MATHML_COMPRESSED); @@ -269,15 +266,14 @@ i.e.,: */ NS_IMETHODIMP -nsMathMLmunderFrame::Place(nsPresContext* aPresContext, - nsIRenderingContext& aRenderingContext, +nsMathMLmunderFrame::Place(nsIRenderingContext& aRenderingContext, PRBool aPlaceOrigin, nsHTMLReflowMetrics& aDesiredSize) { if ( NS_MATHML_EMBELLISH_IS_MOVABLELIMITS(mEmbellishData.flags) && !NS_MATHML_IS_DISPLAYSTYLE(mPresentationData.flags)) { // place like subscript - return nsMathMLmsubFrame::PlaceSubScript(aPresContext, + return nsMathMLmsubFrame::PlaceSubScript(GetPresContext(), aRenderingContext, aPlaceOrigin, aDesiredSize, @@ -297,12 +293,12 @@ nsMathMLmunderFrame::Place(nsPresContext* aPresContext, if (!baseFrame || !underFrame || underFrame->GetNextSibling()) { // report an error, encourage people to get their markups in order NS_WARNING("invalid markup"); - return ReflowError(aPresContext, aRenderingContext, aDesiredSize); + return ReflowError(aRenderingContext, aDesiredSize); } GetReflowAndBoundingMetricsFor(baseFrame, baseSize, bmBase); GetReflowAndBoundingMetricsFor(underFrame, underSize, bmUnder); - nscoord onePixel = aPresContext->IntScaledPixelsToTwips(1); + nscoord onePixel = GetPresContext()->IntScaledPixelsToTwips(1); //////////////////// // Place Children @@ -380,10 +376,10 @@ nsMathMLmunderFrame::Place(nsPresContext* aPresContext, if (aPlaceOrigin) { nscoord dy = 0; // place base - FinishReflowChild(baseFrame, aPresContext, nsnull, baseSize, dxBase, dy, 0); + FinishReflowChild(baseFrame, GetPresContext(), nsnull, baseSize, dxBase, dy, 0); // place underscript dy = aDesiredSize.ascent + mBoundingMetrics.descent - bmUnder.descent - underSize.ascent; - FinishReflowChild(underFrame, aPresContext, nsnull, underSize, dxUnder, dy, 0); + FinishReflowChild(underFrame, GetPresContext(), nsnull, underSize, dxUnder, dy, 0); } return NS_OK; diff --git a/layout/mathml/base/src/nsMathMLmunderFrame.h b/layout/mathml/base/src/nsMathMLmunderFrame.h index e93aa50e9db..4545c16adf4 100644 --- a/layout/mathml/base/src/nsMathMLmunderFrame.h +++ b/layout/mathml/base/src/nsMathMLmunderFrame.h @@ -52,27 +52,23 @@ public: friend nsresult NS_NewMathMLmunderFrame(nsIPresShell* aPresShell, nsIFrame** aNewFrame); NS_IMETHOD - Place(nsPresContext* aPresContext, - nsIRenderingContext& aRenderingContext, + Place(nsIRenderingContext& aRenderingContext, PRBool aPlaceOrigin, nsHTMLReflowMetrics& aDesiredSize); NS_IMETHOD - InheritAutomaticData(nsPresContext* aPresContext, - nsIFrame* aParent); + InheritAutomaticData(nsIFrame* aParent); NS_IMETHOD - TransmitAutomaticData(nsPresContext* aPresContext); + TransmitAutomaticData(); NS_IMETHOD - UpdatePresentationData(nsPresContext* aPresContext, - PRInt32 aScriptLevelIncrement, + UpdatePresentationData(PRInt32 aScriptLevelIncrement, PRUint32 aFlagsValues, PRUint32 aFlagsToUpdate); NS_IMETHOD - UpdatePresentationDataFromChildAt(nsPresContext* aPresContext, - PRInt32 aFirstIndex, + UpdatePresentationDataFromChildAt(PRInt32 aFirstIndex, PRInt32 aLastIndex, PRInt32 aScriptLevelIncrement, PRUint32 aFlagsValues, diff --git a/layout/mathml/base/src/nsMathMLmunderoverFrame.cpp b/layout/mathml/base/src/nsMathMLmunderoverFrame.cpp index 7f9aaf2cf71..0dc9ec847d1 100644 --- a/layout/mathml/base/src/nsMathMLmunderoverFrame.cpp +++ b/layout/mathml/base/src/nsMathMLmunderoverFrame.cpp @@ -89,7 +89,7 @@ nsMathMLmunderoverFrame::AttributeChanged(nsIContent* aContent, nsMathMLAtoms::accentunder_ == aAttribute) { // When we have automatic data to update within ourselves, we ask our // parent to re-layout its children - return ReLayoutChildren(GetPresContext(), mParent); + return ReLayoutChildren(mParent); } return nsMathMLContainerFrame:: @@ -98,13 +98,12 @@ nsMathMLmunderoverFrame::AttributeChanged(nsIContent* aContent, } NS_IMETHODIMP -nsMathMLmunderoverFrame::UpdatePresentationData(nsPresContext* aPresContext, - PRInt32 aScriptLevelIncrement, +nsMathMLmunderoverFrame::UpdatePresentationData(PRInt32 aScriptLevelIncrement, PRUint32 aFlagsValues, PRUint32 aFlagsToUpdate) { - nsMathMLContainerFrame::UpdatePresentationData(aPresContext, - aScriptLevelIncrement, aFlagsValues, aFlagsToUpdate); + nsMathMLContainerFrame::UpdatePresentationData(aScriptLevelIncrement, + aFlagsValues, aFlagsToUpdate); // disable the stretch-all flag if we are going to act like a subscript-superscript pair if ( NS_MATHML_EMBELLISH_IS_MOVABLELIMITS(mEmbellishData.flags) && !NS_MATHML_IS_DISPLAYSTYLE(mPresentationData.flags)) { @@ -117,8 +116,7 @@ nsMathMLmunderoverFrame::UpdatePresentationData(nsPresContext* aPresContext, } NS_IMETHODIMP -nsMathMLmunderoverFrame::UpdatePresentationDataFromChildAt(nsPresContext* aPresContext, - PRInt32 aFirstIndex, +nsMathMLmunderoverFrame::UpdatePresentationDataFromChildAt(PRInt32 aFirstIndex, PRInt32 aLastIndex, PRInt32 aScriptLevelIncrement, PRUint32 aFlagsValues, @@ -149,7 +147,7 @@ nsMathMLmunderoverFrame::UpdatePresentationDataFromChildAt(nsPresContext* aPresC aFlagsToUpdate &= ~NS_MATHML_DISPLAYSTYLE; aFlagsValues &= ~NS_MATHML_DISPLAYSTYLE; } - PropagatePresentationDataFor(aPresContext, childFrame, + PropagatePresentationDataFor(childFrame, aScriptLevelIncrement, aFlagsValues, aFlagsToUpdate); } index++; @@ -162,11 +160,10 @@ nsMathMLmunderoverFrame::UpdatePresentationDataFromChildAt(nsPresContext* aPresC } NS_IMETHODIMP -nsMathMLmunderoverFrame::InheritAutomaticData(nsPresContext* aPresContext, - nsIFrame* aParent) +nsMathMLmunderoverFrame::InheritAutomaticData(nsIFrame* aParent) { // let the base class get the default from our parent - nsMathMLContainerFrame::InheritAutomaticData(aPresContext, aParent); + nsMathMLContainerFrame::InheritAutomaticData(aParent); mPresentationData.flags |= NS_MATHML_STRETCH_ALL_CHILDREN_HORIZONTALLY; @@ -174,7 +171,7 @@ nsMathMLmunderoverFrame::InheritAutomaticData(nsPresContext* aPresContext, } NS_IMETHODIMP -nsMathMLmunderoverFrame::TransmitAutomaticData(nsPresContext* aPresContext) +nsMathMLmunderoverFrame::TransmitAutomaticData() { // At this stage, all our children are in sync and we can fully // resolve our own mEmbellishData struct @@ -270,7 +267,7 @@ nsMathMLmunderoverFrame::TransmitAutomaticData(nsPresContext* aPresContext) ? 0 : 1; PRUint32 compress = NS_MATHML_EMBELLISH_IS_ACCENTOVER(mEmbellishData.flags) ? NS_MATHML_COMPRESSED : 0; - PropagatePresentationDataFor(aPresContext, overscriptFrame, increment, + PropagatePresentationDataFor(overscriptFrame, increment, ~NS_MATHML_DISPLAYSTYLE | compress, NS_MATHML_DISPLAYSTYLE | compress); @@ -280,7 +277,7 @@ nsMathMLmunderoverFrame::TransmitAutomaticData(nsPresContext* aPresContext) */ increment = NS_MATHML_EMBELLISH_IS_ACCENTUNDER(mEmbellishData.flags) ? 0 : 1; - PropagatePresentationDataFor(aPresContext, underscriptFrame, increment, + PropagatePresentationDataFor(underscriptFrame, increment, ~NS_MATHML_DISPLAYSTYLE | NS_MATHML_COMPRESSED, NS_MATHML_DISPLAYSTYLE | NS_MATHML_COMPRESSED); @@ -307,15 +304,14 @@ i.e.,: */ NS_IMETHODIMP -nsMathMLmunderoverFrame::Place(nsPresContext* aPresContext, - nsIRenderingContext& aRenderingContext, +nsMathMLmunderoverFrame::Place(nsIRenderingContext& aRenderingContext, PRBool aPlaceOrigin, nsHTMLReflowMetrics& aDesiredSize) { if ( NS_MATHML_EMBELLISH_IS_MOVABLELIMITS(mEmbellishData.flags) && !NS_MATHML_IS_DISPLAYSTYLE(mPresentationData.flags)) { // place like sub-superscript pair - return nsMathMLmsubsupFrame::PlaceSubSupScript(aPresContext, + return nsMathMLmsubsupFrame::PlaceSubSupScript(GetPresContext(), aRenderingContext, aPlaceOrigin, aDesiredSize, @@ -339,13 +335,13 @@ nsMathMLmunderoverFrame::Place(nsPresContext* aPresContext, if (!baseFrame || !underFrame || !overFrame || overFrame->GetNextSibling()) { // report an error, encourage people to get their markups in order NS_WARNING("invalid markup"); - return ReflowError(aPresContext, aRenderingContext, aDesiredSize); + return ReflowError(aRenderingContext, aDesiredSize); } GetReflowAndBoundingMetricsFor(baseFrame, baseSize, bmBase); GetReflowAndBoundingMetricsFor(underFrame, underSize, bmUnder); GetReflowAndBoundingMetricsFor(overFrame, overSize, bmOver); - nscoord onePixel = aPresContext->IntScaledPixelsToTwips(1); + nscoord onePixel = GetPresContext()->IntScaledPixelsToTwips(1); //////////////////// // Place Children @@ -503,13 +499,13 @@ nsMathMLmunderoverFrame::Place(nsPresContext* aPresContext, nscoord dy; // place overscript dy = aDesiredSize.ascent - mBoundingMetrics.ascent + bmOver.ascent - overSize.ascent; - FinishReflowChild (overFrame, aPresContext, nsnull, overSize, dxOver, dy, 0); + FinishReflowChild (overFrame, GetPresContext(), nsnull, overSize, dxOver, dy, 0); // place base dy = aDesiredSize.ascent - baseSize.ascent; - FinishReflowChild (baseFrame, aPresContext, nsnull, baseSize, dxBase, dy, 0); + FinishReflowChild (baseFrame, GetPresContext(), nsnull, baseSize, dxBase, dy, 0); // place underscript dy = aDesiredSize.ascent + mBoundingMetrics.descent - bmUnder.descent - underSize.ascent; - FinishReflowChild (underFrame, aPresContext, nsnull, underSize, dxUnder, dy, 0); + FinishReflowChild (underFrame, GetPresContext(), nsnull, underSize, dxUnder, dy, 0); } return NS_OK; } diff --git a/layout/mathml/base/src/nsMathMLmunderoverFrame.h b/layout/mathml/base/src/nsMathMLmunderoverFrame.h index 47f6da19199..fd4f33e501b 100644 --- a/layout/mathml/base/src/nsMathMLmunderoverFrame.h +++ b/layout/mathml/base/src/nsMathMLmunderoverFrame.h @@ -52,27 +52,23 @@ public: friend nsresult NS_NewMathMLmunderoverFrame(nsIPresShell* aPresShell, nsIFrame** aNewFrame); NS_IMETHOD - Place(nsPresContext* aPresContext, - nsIRenderingContext& aRenderingContext, + Place(nsIRenderingContext& aRenderingContext, PRBool aPlaceOrigin, nsHTMLReflowMetrics& aDesiredSize); NS_IMETHOD - InheritAutomaticData(nsPresContext* aPresContext, - nsIFrame* aParent); + InheritAutomaticData(nsIFrame* aParent); NS_IMETHOD - TransmitAutomaticData(nsPresContext* aPresContext); + TransmitAutomaticData(); NS_IMETHOD - UpdatePresentationData(nsPresContext* aPresContext, - PRInt32 aScriptLevelIncrement, + UpdatePresentationData(PRInt32 aScriptLevelIncrement, PRUint32 aFlagsValues, PRUint32 aFlagsToUpdate); NS_IMETHOD - UpdatePresentationDataFromChildAt(nsPresContext* aPresContext, - PRInt32 aFirstIndex, + UpdatePresentationDataFromChildAt(PRInt32 aFirstIndex, PRInt32 aLastIndex, PRInt32 aScriptLevelIncrement, PRUint32 aFlagsValues,