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