reflowState.mComputedWidth = width; reflowState.mComputedHeight = height;
AdjustReflowStateForScrollbars(aPresContext, reflowState);
ViewportFrame::ReflowFixedFrames(nsIPresContext*          aPresContext,                                 const nsHTMLReflowState& aReflowState) const{  // Calculate how much room is available for the fixed items. That means  // determining if the viewport is scrollable and whether the vertical and/or  // horizontal scrollbars are visible  nscoord width, height;  CalculateFixedContainingBlockSize(aPresContext, aReflowState, width, height);  // Make a copy of the reflow state and change the computed width and height  // to reflect the available space for the fixed items  // XXX Find a cleaner way to do this...  nsHTMLReflowState reflowState(aReflowState);  reflowState.mComputedWidth = width;  reflowState.mComputedHeight = height;  // If an incremental reflow was targeted at the viewport frame  // itself, then we'll be asked to reflow all the fixed frames,  // too. Propagate the reflow as a `resize'.  if (reflowState.reason == eReflowReason_Incremental)    reflowState.reason = eReflowReason_Resize;  nsIFrame* kidFrame;  for (kidFrame = mFixedFrames.FirstChild(); nsnull != kidFrame; kidFrame->GetNextSibling(&kidFrame)) {    // Reflow the frame using our reflow reason    nsReflowStatus  kidStatus;    ReflowFixedFrame(aPresContext, reflowState, kidFrame, PR_FALSE, kidStatus);  }}