@@ -56,6 +56,7 @@ export interface IPointerEvent {
56
56
movementY : number ;
57
57
ctrlKey : boolean ;
58
58
shiftKey : boolean ;
59
+ timeStamp : number ;
59
60
}
60
61
61
62
////////////////////////////////////////////////////////////////////////////////
@@ -91,7 +92,7 @@ export class MouseHandler implements IMouseHandler {
91
92
down ( context : IFlowContext , event : IPointerEvent ) {
92
93
this . transform = context . viewState . transform ;
93
94
94
- this . timeAtDown = new Date ( ) . getTime ( ) ;
95
+ this . timeAtDown = event . timeStamp ;
95
96
96
97
this . lastOffsetPoint = this . offsetPointAtDown =
97
98
this . transform . pointerEventToOffsetPoint ( event ) ;
@@ -106,7 +107,7 @@ export class MouseHandler implements IMouseHandler {
106
107
move ( context : IFlowContext , event : IPointerEvent ) {
107
108
this . transform = context . viewState . transform ;
108
109
109
- this . elapsedTime = new Date ( ) . getTime ( ) - this . timeAtDown ;
110
+ this . elapsedTime = event . timeStamp - this . timeAtDown ;
110
111
111
112
let offsetPoint = this . transform . pointerEventToOffsetPoint ( event ) ;
112
113
@@ -395,13 +396,13 @@ export class DragMouseHandler extends MouseHandlerWithSnapLines {
395
396
move ( context : IFlowContext , event : IPointerEvent ) {
396
397
super . move ( context , event ) ;
397
398
398
- if ( this . elapsedTime < 100 && this . distance < 20 ) {
399
- return ;
400
- }
401
-
402
399
this . left += this . movement . x / context . viewState . transform . scale ;
403
400
this . top += this . movement . y / context . viewState . transform . scale ;
404
401
402
+ if ( this . elapsedTime < 200 && this . distance < 10 ) {
403
+ return ;
404
+ }
405
+
405
406
const { left, top } = this . snapLines . dragSnap (
406
407
this . left ,
407
408
this . top ,
0 commit comments