Blob Blame History Raw
Index: embedding/browser/gtk/src/EmbedWindow.cpp
===================================================================
RCS file: /cvsroot/mozilla/embedding/browser/gtk/src/EmbedWindow.cpp,v
retrieving revision 1.31
diff -d -u -p -r1.31 EmbedWindow.cpp
--- embedding/browser/gtk/src/EmbedWindow.cpp     17 Jan 2005 17:19:39 -0000      1.31
+++ embedding/browser/gtk/src/EmbedWindow.cpp     27 Sep 2006 00:41:38 -0000
@@ -359,7 +359,14 @@ EmbedWindow::GetSiteWindow(void **aSiteW
 NS_IMETHODIMP
 EmbedWindow::GetVisibility(PRBool *aVisibility)
 {
-  *aVisibility = mVisibility;
+  // XXX See bug 312998
+  // Work around the problem that sometimes the window
+  // is already visible even though mVisibility isn't true
+  // yet.
+  *aVisibility = mVisibility ||
+                 (!mOwner->mIsChrome &&
+                  mOwner->mOwningWidget &&
+                  GTK_WIDGET_MAPPED(mOwner->mOwningWidget));
   return NS_OK;
 }