tt-rss/lib/dojo/on.js

8 lines
6.9 KiB
JavaScript
Raw Normal View History

2012-08-14 16:59:10 +02:00
/*
Copyright (c) 2004-2016, The JS Foundation All Rights Reserved.
2012-08-14 16:59:10 +02:00
Available via Academic Free License >= 2.1 OR the modified BSD license.
see: http://dojotoolkit.org/license for details
*/
//>>built
define("dojo/on",["./has!dom-addeventlistener?:./aspect","./_base/kernel","./sniff"],function(_1,_2,_3){"use strict";if(1){var _4=window.ScriptEngineMajorVersion;_3.add("jscript",_4&&(_4()+ScriptEngineMinorVersion()/10));_3.add("event-orientationchange",_3("touch")&&!_3("android"));_3.add("event-stopimmediatepropagation",window.Event&&!!window.Event.prototype&&!!window.Event.prototype.stopImmediatePropagation);_3.add("event-focusin",function(_5,_6,_7){return "onfocusin" in _7;});if(_3("touch")){_3.add("touch-can-modify-event-delegate",function(){var _8=function(){};_8.prototype=document.createEvent("MouseEvents");try{var _9=new _8;_9.target=null;return _9.target===null;}catch(e){return false;}});}}var on=function(_a,_b,_c,_d){if(typeof _a.on=="function"&&typeof _b!="function"&&!_a.nodeType){return _a.on(_b,_c);}return on.parse(_a,_b,_c,_e,_d,this);};on.pausable=function(_f,_10,_11,_12){var _13;var _14=on(_f,_10,function(){if(!_13){return _11.apply(this,arguments);}},_12);_14.pause=function(){_13=true;};_14.resume=function(){_13=false;};return _14;};on.once=function(_15,_16,_17,_18){var _19=on(_15,_16,function(){_19.remove();return _17.apply(this,arguments);});return _19;};on.parse=function(_1a,_1b,_1c,_1d,_1e,_1f){var _20;if(_1b.call){return _1b.call(_1f,_1a,_1c);}if(_1b instanceof Array){_20=_1b;}else{if(_1b.indexOf(",")>-1){_20=_1b.split(/\s*,\s*/);}}if(_20){var _21=[];var i=0;var _22;while(_22=_20[i++]){_21.push(on.parse(_1a,_22,_1c,_1d,_1e,_1f));}_21.remove=function(){for(var i=0;i<_21.length;i++){_21[i].remove();}};return _21;}return _1d(_1a,_1b,_1c,_1e,_1f);};var _23=/^touch/;function _e(_24,_25,_26,_27,_28){var _29=_25.match(/(.*):(.*)/);if(_29){_25=_29[2];_29=_29[1];return on.selector(_29,_25).call(_28,_24,_26);}if(_3("touch")){if(_23.test(_25)){_26=_2a(_26);}if(!_3("event-orientationchange")&&(_25=="orientationchange")){_25="resize";_24=window;_26=_2a(_26);}}if(_2b){_26=_2b(_26);}if(_24.addEventListener){var _2c=_25 in _2d,_2e=_2c?_2d[_25]:_25;_24.addEventListener(_2e,_26,_2c);return {remove:function(){_24.removeEventListener(_2e,_26,_2c);}};}_25="on"+_25;if(_2f&&_24.attachEvent){return _2f(_24,_25,_26);}throw new Error("Target must be an event emitter");};on.matches=function(_30,_31,_32,_33,_34){_34=_34&&(typeof _34.matches=="function")?_34:_2.query;_33=_33!==false;if(_30.nodeType!=1){_30=_30.parentNode;}while(!_34.matches(_30,_31,_32)){if(_30==_32||_33===false||!(_30=_30.parentNode)||_30.nodeType!=1){return false;}}return _30;};on.selector=function(_35,_36,_37){return function(_38,_39){var _3a=typeof _35=="function"?{matches:_35}:this,_3b=_36.bubble;function _3c(_3d){return on.matches(_3d,_35,_38,_37,_3a);};if(_3b){return on(_38,_3b(_3c),_39);}return on(_38,_36,function(_3e){var _3f=_3c(_3e.target);if(_3f){_3e.selectorTarget=_3f;return _39.call(_3f,_3e);}});};};function _40(){this.cancelable=false;this.defaultPrevented=true;};function _41(){this.bubbles=false;};var _42=[].slice,_43=on.emit=function(_44,_45,_46){var _47=_42.call(arguments,2);var _48="on"+_45;if("parentNode" in _44){var _49=_47[0]={};for(var i in _46){_49[i]=_46[i];}_49.preventDefault=_40;_49.stopPropagation=_41;_49.target=_44;_49.type=_45;_46=_49;}do{_44[_48]&&_44[_48].apply(_44,_47);}while(_46&&_46.bubbles&&(_44=_44.parentNode));return _46&&_46.cancelable&&_46;};var _2d=_3("event-focusin")?{}:{focusin:"focus",focusout:"blur"};if(!_3("event-stopimmediatepropagation")){var _4a=function(){this.immediatelyStopped=true;this.modified=true;};var _2b=function(_4b){return function(_4c){if(!_4c.immediatelyStopped){_4c.stopImmediatePropagation=_4a;return _4b.apply(this,arguments);}};};}if(_3("dom-addeventlistener")){on.emit=function(_4d,_4e,_4f){if(_4d.dispatchEvent&&document.createEvent){var _50=_4d.ownerDocument||document;var _51=_50.createEvent("HTMLEvents");_51.initEvent(_4e,!!_4f.bubbles,!!_4f.cancelable);for(var i in _4f){if(!(i in _51)){_51[i]=_4f[i];}}return _4d.dispatchEvent(_51)&&_51;}return _43.apply(on,arguments);};}else{on._fixEvent=function(evt,_52){if(!evt){var w=_52&&(_52.ownerDocument||_52.document||_52).parentWindow||window;evt=w.event