Change FlushPendingNotifications to have more granularity and update callers to

only flush the things they really need flushed.  Bug 144072, r+sr=jst


git-svn-id: svn://10.0.0.236/trunk@157037 18797224-902f-48f8-a5cc-f745e15eee43
This commit is contained in:
bzbarsky%mit.edu
2004-05-27 22:08:42 +00:00
parent 72154a8082
commit 73690f9d73
62 changed files with 392 additions and 202 deletions

View File

@@ -616,7 +616,9 @@ nsComboboxControlFrame::ShowList(nsIPresContext* aPresContext, PRBool aShowList)
mDroppedDown = PR_FALSE;
}
aPresContext->PresShell()->FlushPendingNotifications(PR_FALSE);
// Don't flush anything but reflows lest it destroy us
aPresContext->PresShell()->
GetDocument()->FlushPendingNotifications(Flush_OnlyReflow);
if (widget)
widget->CaptureRollupEvents((nsIRollupListener *)this, mDroppedDown, aShowList);
@@ -1809,8 +1811,6 @@ nsComboboxControlFrame::RedisplayText(PRInt32 aIndex)
//mTextFrame->AddStateBits(NS_FRAME_IS_DIRTY);
mDisplayFrame->AddStateBits(NS_FRAME_IS_DIRTY);
ReflowDirtyChild(mPresContext->PresShell(), mDisplayFrame);
// mPresContext->PresShell()->FlushPendingNotifications(PR_FALSE);
}
}
return rv;