Use PresShell::UnsuppressPainting instead of just an invalidate, to make sure the content area receives focus if needed. Bug 295931, r+sr=dbaron, a=brendan.

This commit is contained in:
bryner@brianryner.com
2005-07-01 07:12:02 +00:00
parent 73a8639265
commit 9e21801c67
4 changed files with 15 additions and 19 deletions

View File

@@ -5326,19 +5326,10 @@ nsDocShell::RestorePresentation(nsISHEntry *aSHEntry, PRBool aSavePresentation,
rv = mContentViewer->Show();
NS_ENSURE_SUCCESS(rv, rv);
// Restart plugins
// Restart plugins, and paint the content.
if (shell)
shell->Thaw();
// XXXbryner Making this invalidate synchronous causes unpainted areas
// (on Mac, at least) if the above locationchanged event hides Firefox's
// infobar. Doing it asynchronously seems to work around the problem, but
// shouldn't the style change that hides the infobar handle all necessary
// invalidation, including the newly-exposed area?
rv = mParentWidget->Invalidate(PR_FALSE);
NS_ENSURE_SUCCESS(rv, rv);
*aRestored = PR_TRUE;
return NS_OK;
}