Merge pull request #813 from spicyj/e-view-detail

Normalize view and detail properties
This commit is contained in:
Paul O’Shannessy
2014-04-08 14:23:46 -07:00
@@ -21,13 +21,35 @@
var SyntheticEvent = require('SyntheticEvent');
var getEventTarget = require('getEventTarget');
/**
* @interface UIEvent
* @see http://www.w3.org/TR/DOM-Level-3-Events/
*/
var UIEventInterface = {
view: null,
detail: null
view: function(event) {
if (event.view) {
return event.view;
}
var target = getEventTarget(event);
if (target != null && target.window === target) {
// target is a window object
return target;
}
var doc = target.ownerDocument;
// TODO: Figure out why `ownerDocument` is sometimes undefined in IE8.
if (doc) {
return doc.defaultView || doc.parentWindow;
} else {
return window;
}
},
detail: function(event) {
return event.detail || 0;
}
};
/**