ttrss/lib/dojo/on.js

8 lines
6.2 KiB
JavaScript
Raw Normal View History

2012-08-14 14:59:10 +00:00
/*
2013-03-18 06:26:24 +00:00
Copyright (c) 2004-2012, The Dojo Foundation All Rights Reserved.
2012-08-14 14:59:10 +00:00
Available via Academic Free License >= 2.1 OR the modified BSD license.
see: http://dojotoolkit.org/license for details
*/
//>>built
2013-03-18 06:26:24 +00:00
define("dojo/on",["./has!dom-addeventlistener?:./aspect","./_base/kernel","./has"],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);}var on=function(_5,_6,_7,_8){if(typeof _5.on=="function"&&typeof _6!="function"){return _5.on(_6,_7);}return on.parse(_5,_6,_7,_9,_8,this);};on.pausable=function(_a,_b,_c,_d){var _e;var _f=on(_a,_b,function(){if(!_e){return _c.apply(this,arguments);}},_d);_f.pause=function(){_e=true;};_f.resume=function(){_e=false;};return _f;};on.once=function(_10,_11,_12,_13){var _14=on(_10,_11,function(){_14.remove();return _12.apply(this,arguments);});return _14;};on.parse=function(_15,_16,_17,_18,_19,_1a){if(_16.call){return _16.call(_1a,_15,_17);}if(_16.indexOf(",")>-1){var _1b=_16.split(/\s*,\s*/);var _1c=[];var i=0;var _1d;while(_1d=_1b[i++]){_1c.push(_18(_15,_1d,_17,_19,_1a));}_1c.remove=function(){for(var i=0;i<_1c.length;i++){_1c[i].remove();}};return _1c;}return _18(_15,_16,_17,_19,_1a);};var _1e=/^touch/;function _9(_1f,_20,_21,_22,_23){var _24=_20.match(/(.*):(.*)/);if(_24){_20=_24[2];_24=_24[1];return on.selector(_24,_20).call(_23,_1f,_21);}if(_3("touch")){if(_1e.test(_20)){_21=_25(_21);}if(!_3("event-orientationchange")&&(_20=="orientationchange")){_20="resize";_1f=window;_21=_25(_21);}}if(_26){_21=_26(_21);}if(_1f.addEventListener){var _27=_20 in _28,_29=_27?_28[_20]:_20;_1f.addEventListener(_29,_21,_27);return {remove:function(){_1f.removeEventListener(_29,_21,_27);}};}_20="on"+_20;if(_2a&&_1f.attachEvent){return _2a(_1f,_20,_21);}throw new Error("Target must be an event emitter");};on.selector=function(_2b,_2c,_2d){return function(_2e,_2f){var _30=typeof _2b=="function"?{matches:_2b}:this,_31=_2c.bubble;function _32(_33){_30=_30&&_30.matches?_30:_2.query;while(!_30.matches(_33,_2b,_2e)){if(_33==_2e||_2d===false||!(_33=_33.parentNode)||_33.nodeType!=1){return;}}return _33;};if(_31){return on(_2e,_31(_32),_2f);}return on(_2e,_2c,function(_34){var _35=_32(_34.target);return _35&&_2f.call(_35,_34);});};};function _36(){this.cancelable=false;};function _37(){this.bubbles=false;};var _38=[].slice,_39=on.emit=function(_3a,_3b,_3c){var _3d=_38.call(arguments,2);var _3e="on"+_3b;if("parentNode" in _3a){var _3f=_3d[0]={};for(var i in _3c){_3f[i]=_3c[i];}_3f.preventDefault=_36;_3f.stopPropagation=_37;_3f.target=_3a;_3f.type=_3b;_3c=_3f;}do{_3a[_3e]&&_3a[_3e].apply(_3a,_3d);}while(_3c&&_3c.bubbles&&(_3a=_3a.parentNode));return _3c&&_3c.cancelable&&_3c;};var _28={};if(!_3("event-stopimmediatepropagation")){var _40=function(){this.immediatelyStopped=true;this.modified=true;};var _26=function(_41){return function(_42){if(!_42.immediatelyStopped){_42.stopImmediatePropagation=_40;return _41.apply(this,arguments);}};};}if(_3("dom-addeventlistener")){_28={focusin:"focus",focusout:"blur"};on.emit=function(_43,_44,_45){if(_43.dispatchEvent&&document.createEvent){var _46=_43.ownerDocument.createEvent("HTMLEvents");_46.initEvent(_44,!!_45.bubbles,!!_45.cancelable);for(var i in _45){var _47=_45[i];if(!(i in _46)){_46[i]=_45[i];}}return _43.dispatchEvent(_46)&&_46;}return _39.apply(on,arguments);};}else{on._fixEvent=function(evt,_48){if(!evt){var w=_48&&(_48.ownerDocument||_48.document||_48).parentWindow||window;evt=w.event;}if(!evt){return evt;}if(_49&&evt.type==_49.type){evt=_49;}if(!evt.target){evt.target=evt.srcElement;evt.currentTarget=(_48||evt.srcElement);if(evt.type=="mouseover"){evt.relatedTarget=evt.fromElement;}if(evt.type=="mouseout"){evt.relatedTarget=evt.toElement;}if(!evt.stopPropagation){evt.stopPropagation=_4a;evt.preventDefault=_4b;}switch(evt.type){case "keypress":var c=("charCode" in evt?evt.charCode:evt.keyCode);if(c==10){c=0;evt.keyCode=13;}else{if(c==13||c==27){c=0;}else{if(c==3){c=99;}}}evt.charCode=c;_4c(evt);break;}}return evt;};var _49,_4d=function(_4e){this.handle=_4e;};_4d.prototype.remove=function(){delete _