Bug 295571. Make sure we resize the combobox dropdown's view and widget if we reflow the combobox while its dropdown is showing. r+sr=dbaron,a=chofmann

This commit is contained in:
roc+%cs.cmu.edu 2005-06-21 04:04:12 +00:00
parent f35c148172
commit 941fb250ab

View File

@ -641,14 +641,19 @@ nsComboboxControlFrame::ReflowComboChildFrame(nsIFrame* aFrame,
viewManager->ResizeView(view, emptyRect);
}
// Reflow child
// Allow the child to move/size/change-visibility its view if it's currently
// dropped down
PRInt32 flags = NS_FRAME_NO_MOVE_VIEW | NS_FRAME_NO_VISIBILITY | NS_FRAME_NO_SIZE_VIEW;
if (mDroppedDown) {
flags = 0;
}
nsRect rect = aFrame->GetRect();
nsresult rv = ReflowChild(aFrame, aPresContext, aDesiredSize, kidReflowState,
rect.x, rect.y, NS_FRAME_NO_MOVE_VIEW | NS_FRAME_NO_SIZE_VIEW | NS_FRAME_NO_VISIBILITY, aStatus);
rect.x, rect.y, flags, aStatus);
// Set the child's width and height to it's desired size
FinishReflowChild(aFrame, aPresContext, &kidReflowState, aDesiredSize,
rect.x, rect.y, NS_FRAME_NO_MOVE_VIEW | NS_FRAME_NO_SIZE_VIEW | NS_FRAME_NO_VISIBILITY);
rect.x, rect.y, flags);
return rv;
}