Advertisement
Guest User

Sencha Touch 2 - Tap fix

a guest
Dec 6th, 2012
253
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. /**
  2.  * A simple event recogniser which knows when you tap.
  3.  *
  4.  * @private
  5.  */
  6. Ext.define('Ext.event.recognizer.Tap', {
  7.  
  8.     handledEvents: ['tap'],
  9.  
  10.     /**
  11.      * @member Ext.dom.Element
  12.      * @event tap
  13.      * Fires when you tap
  14.      * @param {Ext.event.Event} event The {@link Ext.event.Event} event encapsulating the DOM event.
  15.      * @param {HTMLElement} node The target of the event.
  16.      * @param {Object} options The options object passed to Ext.mixin.Observable.addListener.
  17.      */
  18.  
  19.     /**
  20.      * @member Ext.dom.Element
  21.      * @event touchstart
  22.      * Fires when touch starts.
  23.      * @param {Ext.event.Event} event The {@link Ext.event.Event} event encapsulating the DOM event.
  24.      * @param {HTMLElement} node The target of the event.
  25.      * @param {Object} options The options object passed to Ext.mixin.Observable.addListener.
  26.      */
  27.  
  28.     /**
  29.      * @member Ext.dom.Element
  30.      * @event tapstart
  31.      * @inheritdoc Ext.dom.Element#touchstart
  32.      * @deprecated 2.0.0 Please add listener to 'touchstart' event instead
  33.      */
  34.  
  35.     /**
  36.      * @member Ext.dom.Element
  37.      * @event touchmove
  38.      * Fires when movement while touching.
  39.      * @param {Ext.event.Event} event The {@link Ext.event.Event} event encapsulating the DOM event.
  40.      * @param {HTMLElement} node The target of the event.
  41.      * @param {Object} options The options object passed to Ext.mixin.Observable.addListener.
  42.      */
  43.  
  44.     /**
  45.      * @member Ext.dom.Element
  46.      * @event tapcancel
  47.      * @inheritdoc Ext.dom.Element#touchmove
  48.      * @deprecated 2.0.0 Please add listener to 'touchmove' event instead
  49.      */
  50.  
  51.     extend: 'Ext.event.recognizer.SingleTouch',
  52.  
  53.     _countMove: 0,
  54.  
  55.     onTouchStart: function() {
  56.         this._countMove = 0;
  57.     },
  58.  
  59.     onTouchMove: function() {
  60.         if(this._countMove > 2)
  61.             return this.fail(this.self.TOUCH_MOVED);
  62.  
  63.         this._countMove++;
  64.     },
  65.  
  66.     onTouchEnd: function(e) {
  67.         var touch = e.changedTouches[0];
  68.  
  69.         this.fire('tap', e, [touch]);
  70.     }
  71.  
  72. });
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement