]> git.wh0rd.org - tt-rss.git/blame - lib/dojo/_base/event.js.uncompressed.js
make precache_headlines_idle() start slower
[tt-rss.git] / lib / dojo / _base / event.js.uncompressed.js
CommitLineData
1354d172
AD
1define("dojo/_base/event", ["./kernel", "../on", "../has", "../dom-geometry"], function(dojo, on, has, dom){
2 // module:
3 // dojo/_base/event
4 // summary:
5 // This module defines dojo DOM event API.
6 if(on._fixEvent){
7 var fixEvent = on._fixEvent;
8 on._fixEvent = function(evt, se){
9 // add some additional normalization for back-compat, this isn't in on.js because it is somewhat more expensive
10 evt = fixEvent(evt, se);
11 if(evt){
12 dom.normalizeEvent(evt);
13 }
14 return evt;
15 };
16 }
17 dojo.fixEvent = function(/*Event*/ evt, /*DOMNode*/ sender){
18 // summary:
19 // normalizes properties on the event object including event
20 // bubbling methods, keystroke normalization, and x/y positions
21 // evt: Event
22 // native event object
23 // sender: DOMNode
24 // node to treat as "currentTarget"
25 if(on._fixEvent){
26 return on._fixEvent(evt, sender);
27 }
28 return evt; // Event
29 };
30
31 dojo.stopEvent = function(/*Event*/ evt){
32 // summary:
33 // prevents propagation and clobbers the default action of the
34 // passed event
35 // evt: Event
36 // The event object. If omitted, window.event is used on IE.
37 if(has("dom-addeventlistener") || (evt && evt.preventDefault)){
38 evt.preventDefault();
39 evt.stopPropagation();
40 }else{
41 evt = evt || window.event;
42 evt.cancelBubble = true;
43 on._preventDefault.call(evt);
44 }
45 };
46
47 return {
48 fix: dojo.fixEvent,
49 stop: dojo.stopEvent
50 };
51});