--- a/DragAndDropManager.st Thu Oct 30 17:51:12 2003 +0100
+++ b/DragAndDropManager.st Fri Oct 31 07:57:05 2003 +0100
@@ -269,6 +269,14 @@
^ DragOriginatorQuerySignal
! !
+!DragAndDropManager class methodsFor:'defaults'!
+
+autoScrollDelayTimeMs
+ "time measured in milli-seconds the the autoscroll task is delayed
+ "
+ ^ 200
+! !
+
!DragAndDropManager class methodsFor:'helpers'!
saveDraw:aBlock device:aDevice
@@ -1107,8 +1115,15 @@
buttonMotion:button x:x y:y view:aView
|device screenPoint oldWg oldId oldPt newId newWg oldTgt newTgt isDroppable cursor|
+ escapePressed == true ifTrue:[
+ self removePassiveAction.
+ ^ self
+ ].
+
+ (dragView notNil and:[dragView sensor motionEventPending]) ifTrue:[
+ ^ self
+ ].
self removePassiveAction.
- escapePressed == true ifTrue:[^ self].
device := dragView device.
oldWg := dropContext targetWidget.
@@ -1430,7 +1445,7 @@
sensor := windowGroup sensor.
[ self isActive ] whileTrue:[
- Delay waitForSeconds:0.4.
+ Delay waitForMilliseconds:(self class autoScrollDelayTimeMs).
self isActive ifTrue:[
sensor pushUserEvent:#processAutoScroll for:self.
@@ -1479,7 +1494,7 @@
!DragAndDropManager class methodsFor:'documentation'!
version
- ^ '$Header: /cvs/stx/stx/libview2/DragAndDropManager.st,v 1.54 2003-10-28 15:32:24 ca Exp $'
+ ^ '$Header: /cvs/stx/stx/libview2/DragAndDropManager.st,v 1.55 2003-10-31 06:57:05 ca Exp $'
! !
DragAndDropManager initialize!