Skip to content

Commit fe3d8cb

Browse files
Refactor pointer event handling and cleanup
1 parent 0778a2e commit fe3d8cb

File tree

1 file changed

+15
-7
lines changed

1 file changed

+15
-7
lines changed

ui/widgets/pointer.js

Lines changed: 15 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -69,6 +69,14 @@ return $.widget( "ui.pointer", {
6969
.off( "pointerup." + this.widgetName, this._pointerUpDelegate )
7070
.off( "pointercancel." + this.widgetName, this._pointerCancelDelegate );
7171
}
72+
73+
if ( this._pointerDelayTimer ) {
74+
clearTimeout( this._pointerDelayTimer );
75+
delete this._pointerDelayTimer;
76+
}
77+
78+
this._pointerStarted = false;
79+
pointerHandled = false;
7280
},
7381

7482
_pointerDown: function( event ) {
@@ -82,8 +90,6 @@ return $.widget( "ui.pointer", {
8290
this._pointerUp( event );
8391
}
8492

85-
this._pointerDownEvent = event;
86-
8793
var that = this,
8894
btnIsLeft = event.button === 0,
8995
elIsCancel = typeof this.options.cancel === "string" ?
@@ -93,8 +99,13 @@ return $.widget( "ui.pointer", {
9399
return true;
94100
}
95101

102+
this._pointerDownEvent = event;
103+
96104
this.pointerDelayMet = !this.options.delay;
97105
if ( !this.pointerDelayMet ) {
106+
if ( this._pointerDelayTimer ) {
107+
clearTimeout( this._pointerDelayTimer );
108+
}
98109
this._pointerDelayTimer = setTimeout( function() {
99110
that.pointerDelayMet = true;
100111
}, this.options.delay );
@@ -144,7 +155,8 @@ return $.widget( "ui.pointer", {
144155

145156
if ( this._pointerStarted ) {
146157
this._pointerDrag( event );
147-
return event.preventDefault();
158+
event.preventDefault();
159+
return false;
148160
}
149161

150162
if ( this._pointerDistanceMet( event ) && this._pointerDelayMet( event ) ) {
@@ -224,10 +236,6 @@ return $.widget( "ui.pointer", {
224236
_pointerStart: function( /* event */ ) {},
225237
_pointerDrag: function( /* event */ ) {},
226238
_pointerStop: function( /* event */ ) {},
227-
// _pointerStop by default so existing subwidgets need no changes.
228-
_pointerCancel: function( event ) {
229-
this._pointerStop( event );
230-
},
231239
_pointerCapture: function( /* event */ ) {
232240
return true;
233241
}

0 commit comments

Comments
 (0)