--- a/CodeCompletionHelpView.st Sat Aug 04 19:02:16 2018 +0200
+++ b/CodeCompletionHelpView.st Sat Aug 04 21:28:13 2018 +0200
@@ -94,10 +94,20 @@
!CodeCompletionHelpView methodsFor:'event handling'!
+delayedDestroy
+ (subViews notEmptyOrNil) ifTrue:[
+ self topView destroy
+ ].
+ ^ true
+
+ "Created: / 04-08-2018 / 21:25:48 / Claus Gittinger"
+!
+
focusOut
- self topView destroy
+ self installDelayedDestroy.
"Created: / 04-08-2018 / 10:41:59 / Claus Gittinger"
+ "Modified: / 04-08-2018 / 21:27:31 / Claus Gittinger"
!
handlesButtonMotion:state inView:aView
@@ -142,19 +152,28 @@
"Created: / 04-08-2018 / 16:55:53 / Claus Gittinger"
!
-keyPress:key x:x y:y
- self topView destroy
+installDelayedDestroy
+ delayedDestroyAction notNil ifTrue:[
+ Processor removeTimedBlock:delayedDestroyAction.
+ ].
+ delayedDestroyAction := [ self topView destroy ].
+ Processor addTimedBlock:delayedDestroyAction after:0.5.
- "Created: / 04-08-2018 / 10:40:43 / Claus Gittinger"
+ "Created: / 04-08-2018 / 21:26:10 / Claus Gittinger"
!
keyPress:key x:x y:y view:aView
- aView == (subViews firstIfEmpty:nil) ifTrue:[
- self topView destroy
- ].
- ^ true
+ key == #Escape ifTrue:[
+ self installDelayedDestroy.
+ ^ true.
+ ].
+"/ (subViews notNil and:[aView == (subViews firstIfEmpty:nil)]) ifTrue:[
+"/ self topView destroy
+"/ ].
+ ^ false
"Created: / 04-08-2018 / 17:00:33 / Claus Gittinger"
+ "Modified: / 04-08-2018 / 21:27:14 / Claus Gittinger"
!
pointerEnter:state x:x y:y view:view
@@ -167,14 +186,11 @@
!
pointerLeave:state view:view
- delayedDestroyAction notNil ifTrue:[
- Processor removeTimedBlock:delayedDestroyAction.
- ].
- delayedDestroyAction := [ self topView destroy ].
- Processor addTimedBlock:delayedDestroyAction after:0.5.
+ self installDelayedDestroy.
^ false
"Created: / 04-08-2018 / 16:57:18 / Claus Gittinger"
+ "Modified: / 04-08-2018 / 21:26:21 / Claus Gittinger"
! !
!CodeCompletionHelpView methodsFor:'initialization'!