TopView.st
changeset 4407 d0f371afaa58
parent 4362 00fdb904e508
child 4424 c4154f4897e1
--- a/TopView.st	Wed Jul 13 17:45:27 2005 +0200
+++ b/TopView.st	Tue Jul 19 16:10:22 2005 +0200
@@ -630,6 +630,16 @@
     device realizedTopViewHookFor:self
 !
 
+realize
+    self isMarkedAsUnmappedModalBox ifTrue:[
+        "/ must clear this flag
+        "/ - otherwise realize thinks it is already realized.
+        realized := false.
+        self unmarkAsUnmappedModalBox.
+    ].
+    super realize.
+!
+
 release
     keyboardProcessor notNil ifTrue:[
         keyboardProcessor release.
@@ -1188,13 +1198,14 @@
     (windowGroup notNil and:[windowGroup isModal]) ifTrue:[
         "keep the realized flag true (to avoid exiting the modal event loop).
          Consider this a kludge."
+        self markAsUnmappedModalBox.
         r := realized.
-        super unmapped.
-        realized := r.
     ] ifFalse:[
-        realized := false. 
-        super unmapped.
+        self unmarkAsUnmappedModalBox.
+        r := realized := false. 
     ].
+    super unmapped.
+    realized := r.
 
     "/
     "/ unmap slaves and partners
@@ -1207,7 +1218,7 @@
 !TopView class methodsFor:'documentation'!
 
 version
-    ^ '$Header: /cvs/stx/stx/libview/TopView.st,v 1.106 2005-03-11 11:02:33 penk Exp $'
+    ^ '$Header: /cvs/stx/stx/libview/TopView.st,v 1.107 2005-07-19 14:10:11 cg Exp $'
 ! !
 
 TopView initialize!