--- a/DeviceWorkstation.st Sat Jan 06 16:01:52 1996 +0100
+++ b/DeviceWorkstation.st Sun Jan 07 14:29:38 1996 +0100
@@ -2102,13 +2102,18 @@
This ends the dispatcher process when the last view is closed on that device.
We only do this for displays other that the default Display."
+ "/ claus:
+ "/ I disabled this - there are times when no views
+ "/ are present, but a new one is soon to be opened
+ "/ Its better to keep the event dispatcher alive ...
+
self == Display ifTrue:[^ self].
knownViews notNil ifTrue:[
- (knownViews findFirst:[:slot | slot notNil]) == 0 ifTrue:[
- "/ my last view was closed
- dispatching := false
- ]
+ (knownViews findFirst:[:slot | slot notNil]) == 0 ifTrue:[
+ "/ my last view was closed
+ dispatching := false
+ ]
]
"Modified: 19.9.1995 / 11:31:54 / claus"
@@ -2279,7 +2284,7 @@
dispatching ifTrue:[
[self eventPending] whileTrue:[
self dispatchPendingEvents.
- self checkForEndOfDispatch.
+ "/ self checkForEndOfDispatch.
].
dispatching ifFalse:[
Processor disableFd:fd.
@@ -2309,7 +2314,7 @@
].
self dispatchPendingEvents.
- self checkForEndOfDispatch.
+ "/ self checkForEndOfDispatch.
]
].
Processor disableSemaphore:inputSema.
@@ -2326,7 +2331,7 @@
nm := 'event dispatcher'.
].
p name:nm.
- Processor signal:inputSema onInput:fd orCheck:[self eventQueued].
+ Processor signal:inputSema onInput:fd orCheck:[self eventPending].
dispatchProcess := p.
]
@@ -3719,6 +3724,6 @@
!DeviceWorkstation class methodsFor:'documentation'!
version
- ^ '$Header: /cvs/stx/stx/libview/DeviceWorkstation.st,v 1.64 1996-01-03 19:34:38 cg Exp $'
+ ^ '$Header: /cvs/stx/stx/libview/DeviceWorkstation.st,v 1.65 1996-01-07 13:29:29 cg Exp $'
! !
DeviceWorkstation initialize!