class: DeviceWorkstation
added: #viewIsRelevantInCheckForEndOfDispatch:
changed: #checkForEndOfDispatch
--- a/DeviceWorkstation.st Sat Mar 01 00:17:42 2014 +0100
+++ b/DeviceWorkstation.st Sat Mar 01 00:24:17 2014 +0100
@@ -4645,11 +4645,9 @@
(knownViews contains:[:slot |
slot notNil
and:[slot ~~ 0
- and:[slot isRootView not
- and:[slot isTopView
- and:[slot isPopUpView not
+ and:[(self viewIsRelevantInCheckForEndOfDispatch:slot)
and:[true "slot isModal not"
- "and:[slot realized]"]]]]]])
+ "and:[slot realized]"]]]])
ifFalse:[
"/ my last view was closed
dispatching := false.
@@ -4989,6 +4987,16 @@
"Release a system-wide hot key."
^ self subclassResponsibility
+!
+
+viewIsRelevantInCheckForEndOfDispatch:aView
+ "return true, if the argument is not to be treated as a user view.
+ These, if any of them is still present, will prevent the endOfDispatch if the
+ exitOnLastClose flag is set."
+
+ ^ aView isRootView not
+ and:[ aView isTopView
+ and:[ aView isPopUpView not ]]
! !
!DeviceWorkstation methodsFor:'event sending'!
@@ -8305,11 +8313,11 @@
!DeviceWorkstation class methodsFor:'documentation'!
version
- ^ '$Header: /cvs/stx/stx/libview/DeviceWorkstation.st,v 1.602 2014-02-28 12:57:05 cg Exp $'
+ ^ '$Header: /cvs/stx/stx/libview/DeviceWorkstation.st,v 1.603 2014-02-28 23:24:17 cg Exp $'
!
version_CVS
- ^ '$Header: /cvs/stx/stx/libview/DeviceWorkstation.st,v 1.602 2014-02-28 12:57:05 cg Exp $'
+ ^ '$Header: /cvs/stx/stx/libview/DeviceWorkstation.st,v 1.603 2014-02-28 23:24:17 cg Exp $'
! !