--- a/ExternalTopView.st Fri Jan 23 12:27:36 2009 +0100
+++ b/ExternalTopView.st Wed Feb 11 12:40:47 2009 +0100
@@ -81,10 +81,25 @@
"check for a destroyed topView
(must poll, since we do not get any events from X for the alien topView)"
+ ^ self checkWindowStillAliveWithErrorPrinting:true
+!
+
+checkWindowStillAliveLoop
+ [self checkWindowStillAlive] whileTrue:[
+ Delay waitForSeconds:0.5.
+ ].
+
+ self alienViewHasBeenDestroyed
+!
+
+checkWindowStillAliveWithErrorPrinting:errorPrinting
+ "check for a destroyed topView
+ (must poll, since we do not get any events from X for the alien topView)"
+
|prevHandler stillAlive prevErrorPrintingFlag|
prevErrorPrintingFlag := device class errorPrinting.
- device class errorPrinting:true.
+ device class errorPrinting:errorPrinting.
drawableId notNil ifTrue:[
stillAlive := device isValidWindowId:drawableId.
@@ -98,14 +113,6 @@
^ stillAlive.
!
-checkWindowStillAliveLoop
- [self checkWindowStillAlive] whileTrue:[
- Delay waitForSeconds:0.5.
- ].
-
- self alienViewHasBeenDestroyed
-!
-
startWindowClosedPollProcess
windowClosedPollProcess isNil ifTrue:[
windowClosedPollProcess :=
@@ -309,5 +316,5 @@
!ExternalTopView class methodsFor:'documentation'!
version
- ^ '$Header: /cvs/stx/stx/libview2/ExternalTopView.st,v 1.15 2007-04-07 21:52:29 stefan Exp $'
+ ^ '$Header: /cvs/stx/stx/libview2/ExternalTopView.st,v 1.16 2009-02-11 11:40:47 cg Exp $'
! !