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