Merge backout of changeset 85a9eb44b240 (bug 366791) due to bug 449221.

This commit is contained in:
L. David Baron 2008-08-06 13:56:53 -07:00
commit b699135ebc
2 changed files with 21 additions and 0 deletions

View File

@ -66,6 +66,23 @@ NS_INTERFACE_MAP_BEGIN(nsScrollbarFrame)
NS_INTERFACE_MAP_ENTRY(nsIScrollbarFrame)
NS_INTERFACE_MAP_END_INHERITING(nsBoxFrame)
NS_IMETHODIMP
nsScrollbarFrame::Init(nsIContent* aContent,
nsIFrame* aParent,
nsIFrame* aPrevInFlow)
{
nsresult rv = nsBoxFrame::Init(aContent, aParent, aPrevInFlow);
// We want to be a reflow root since we use reflows to move the
// slider. Any reflow inside the scrollbar frame will be a reflow to
// move the slider and will thus not change anything outside of the
// scrollbar or change the size of the scrollbar frame.
mState |= NS_FRAME_REFLOW_ROOT;
return rv;
}
NS_IMETHODIMP
nsScrollbarFrame::Reflow(nsPresContext* aPresContext,
nsHTMLReflowMetrics& aDesiredSize,

View File

@ -88,6 +88,10 @@ public:
nsGUIEvent * aEvent,
nsEventStatus* aEventStatus);
NS_IMETHOD Init(nsIContent* aContent,
nsIFrame* aParent,
nsIFrame* aPrevInFlow);
NS_IMETHOD Reflow(nsPresContext* aPresContext,
nsHTMLReflowMetrics& aDesiredSize,
const nsHTMLReflowState& aReflowState,