var Hammer = require('./module/hammer'); /** * Register a touch event, taking place before a gesture * @param {Hammer} hammer A hammer instance * @param {function} callback Callback, called as callback(event) */ exports.onTouch = function (hammer, callback) { callback.inputHandler = function (event) { if (event.isFirst) { callback(event); } }; hammer.on('hammer.input', callback.inputHandler); }; /** * Register a release event, taking place after a gesture * @param {Hammer} hammer A hammer instance * @param {function} callback Callback, called as callback(event) */ exports.onRelease = function (hammer, callback) { callback.inputHandler = function (event) { if (event.isFinal) { callback(event); } }; return hammer.on('hammer.input', callback.inputHandler); }; /** * Unregister a touch event, taking place before a gesture * @param {Hammer} hammer A hammer instance * @param {function} callback Callback, called as callback(event) */ exports.offTouch = function (hammer, callback) { hammer.off('hammer.input', callback.inputHandler); }; /** * Unregister a release event, taking place before a gesture * @param {Hammer} hammer A hammer instance * @param {function} callback Callback, called as callback(event) */ exports.offRelease = exports.offTouch;