Fixed some visibility bugs in order to make the tab widget work correctly.

This commit is contained in:
evaughan@netscape.com
1999-05-19 22:14:11 +00:00
parent 7824713d44
commit 20ee0f32da
16 changed files with 225 additions and 72 deletions
+11 -2
View File
@@ -194,15 +194,24 @@ nsFormControlFrame::DidReflow(nsIPresContext& aPresContext,
{
nsresult rv = nsLeafFrame::DidReflow(aPresContext, aStatus);
// The view is created hidden; once we have reflowed it and it has been
// positioned then we show it.
if (NS_FRAME_REFLOW_FINISHED == aStatus) {
nsIView* view = nsnull;
GetView(&view);
if (nsnull != view) {
view->SetVisibility(nsViewVisibility_kShow);
if (view) {
const nsStyleDisplay* display;
GetStyleData(eStyleStruct_Display, ((const nsStyleStruct *&)display));
nsViewVisibility newVis = NS_STYLE_VISIBILITY_HIDDEN == display->mVisible ? nsViewVisibility_kHide : nsViewVisibility_kShow;
nsViewVisibility oldVis;
// only change if different.
view->GetVisibility(oldVis);
if (newVis != oldVis)
view->SetVisibility(newVis);
}
}
return rv;
}