dd-gestures-debug.js revision 9c214d743d6db133a07a3cccc9917f9b3ea7f97f
4778ff543a041ac356d6e661cc9b66c3fafa2092Adam MooreYUI.add('dd-gestures', function(Y) {
b39897a381c2203466da5568bfd2862a54a81311Adam Moore
b39897a381c2203466da5568bfd2862a54a81311Adam Moore /**
b39897a381c2203466da5568bfd2862a54a81311Adam Moore * This module is the conditional loaded DD file to support gesture events.
4778ff543a041ac356d6e661cc9b66c3fafa2092Adam Moore * In the event that DD is loaded onto a device that support touch based events
2c5ce90c334a2d0f18474e85c93b424b6ec9daaaAdam Moore * This module is loaded and over rides 2 key methods on DD.Drag and DD.DDM to
4778ff543a041ac356d6e661cc9b66c3fafa2092Adam Moore * attach the gesture events.
1b298c6f0ef597aa4ab0b8bcb25430b6c9a87749Adam Moore */
1b298c6f0ef597aa4ab0b8bcb25430b6c9a87749Adam Moore Y.log('Drag gesture support loaded', 'info', 'drag-gestures');
1b298c6f0ef597aa4ab0b8bcb25430b6c9a87749Adam Moore
87d6b0a14cce52c4faa4b78fc9878eb553dab0d5Adam Moore Y.DD.Drag.START_EVENT = 'gesturemovestart';
1b298c6f0ef597aa4ab0b8bcb25430b6c9a87749Adam Moore
1b298c6f0ef597aa4ab0b8bcb25430b6c9a87749Adam Moore Y.DD.Drag.prototype._prep = function() {
1b298c6f0ef597aa4ab0b8bcb25430b6c9a87749Adam Moore Y.log('Using DD override prep to attach gesture events', 'info', 'drag-gestures');
b39897a381c2203466da5568bfd2862a54a81311Adam Moore this._dragThreshMet = false;
87d6b0a14cce52c4faa4b78fc9878eb553dab0d5Adam Moore var node = this.get('node'), DDM = Y.DD.DDM;
1b298c6f0ef597aa4ab0b8bcb25430b6c9a87749Adam Moore
b39897a381c2203466da5568bfd2862a54a81311Adam Moore node.addClass(DDM.CSS_PREFIX + '-draggable');
b39897a381c2203466da5568bfd2862a54a81311Adam Moore
1b298c6f0ef597aa4ab0b8bcb25430b6c9a87749Adam Moore node.on(Y.DD.Drag.START_EVENT, Y.bind(this._handleMouseDownEvent, this), {
173310d032abe522e8645dd148cc28591cd128eaAdam Moore minDistance: 0,
173310d032abe522e8645dd148cc28591cd128eaAdam Moore minTime: 0
458ca79ae0e4fa1eb1a2a3c6f67401a191d025e4Adam Moore });
458ca79ae0e4fa1eb1a2a3c6f67401a191d025e4Adam Moore
458ca79ae0e4fa1eb1a2a3c6f67401a191d025e4Adam Moore node.on('gesturemoveend', Y.bind(this._handleMouseUp, this), { standAlone: true });
458ca79ae0e4fa1eb1a2a3c6f67401a191d025e4Adam Moore node.on('dragstart', Y.bind(this._fixDragStart, this));
458ca79ae0e4fa1eb1a2a3c6f67401a191d025e4Adam Moore
458ca79ae0e4fa1eb1a2a3c6f67401a191d025e4Adam Moore };
1b298c6f0ef597aa4ab0b8bcb25430b6c9a87749Adam Moore
1b298c6f0ef597aa4ab0b8bcb25430b6c9a87749Adam Moore Y.DD.DDM._setupListeners = function() {
173310d032abe522e8645dd148cc28591cd128eaAdam Moore var DDM = Y.DD.DDM;
1b298c6f0ef597aa4ab0b8bcb25430b6c9a87749Adam Moore
16bec62f211cecacdbbc2cb4632f079ef8c7f936Adam Moore this._createPG();
c7eb563867fa29409073f3b495a067d9afa00006Adam Moore this._active = true;
c74cf2305e301535acc8a5d42be60e93dcbd97daAdam Moore Y.one(Y.config.doc).on('gesturemove', Y.throttle(Y.bind(DDM._move, DDM), DDM.get('throttleTime')), { standAlone: true });
16bec62f211cecacdbbc2cb4632f079ef8c7f936Adam Moore };
16bec62f211cecacdbbc2cb4632f079ef8c7f936Adam Moore
0bc189b2acbd7c4b5af63eded0c4289e224676b7Adam Moore
9fb523cf517ad4d6a53ae9f461d672cba63835d2Adam Moore
91ff24e65531ce8bf171340d9384182f8c168af3Adam Moore}, '@VERSION@' ,{skinnable:false, requires:['dd-drag', 'event-synthetic', 'event-gestures']});
91ff24e65531ce8bf171340d9384182f8c168af3Adam Moore