Skip to content
This repository was archived by the owner on Apr 20, 2018. It is now read-only.

Commit 66c0834

Browse files
Removing polyfills for events
1 parent 867af58 commit 66c0834

11 files changed

+6
-573
lines changed

Gruntfile.js

-4
Original file line numberDiff line numberDiff line change
@@ -50,7 +50,6 @@ module.exports = function (grunt) {
5050
'src/headers/header.js',
5151
'src/internal/trycatch.js',
5252

53-
'src/events/addeventlistenerpolyfill.js',
5453
'src/events/fromevent.js',
5554
'src/events/events.js',
5655
'src/events/ready.js',
@@ -119,7 +118,6 @@ module.exports = function (grunt) {
119118
'src/headers/header.events.js',
120119
'src/internal/trycatch.js',
121120

122-
'src/events/addeventlistenerpolyfill.js',
123121
'src/events/fromevent.js',
124122
'src/events/events.js',
125123
'src/events/ready.js',
@@ -222,7 +220,6 @@ module.exports = function (grunt) {
222220
'src/headers/header.js',
223221
'src/internal/trycatch.js',
224222

225-
'src/events/addeventlistenerpolyfill.js',
226223
'src/events/fromevent.js',
227224
'src/events/events.js',
228225
'src/eventsource.js',
@@ -291,7 +288,6 @@ module.exports = function (grunt) {
291288
'src/headers/header.events.js',
292289
'src/internal/trycatch.js',
293290

294-
'src/events/addeventlistenerpolyfill.js',
295291
'src/events/fromevent.js',
296292
'src/events/events.js',
297293
'src/events/ready.js',

dist/rx.dom.compat.js

-141
Original file line numberDiff line numberDiff line change
@@ -71,147 +71,6 @@
7171
throw e;
7272
}
7373

74-
root.Element && root.Element.prototype.attachEvent && !root.Element.prototype.addEventListener && (function () {
75-
function addMethod(name, fn) {
76-
Window.prototype[name] = HTMLDocument.prototype[name] = Element.prototype[name] = fn;
77-
}
78-
79-
addMethod('addEventListener', function (type, listener) {
80-
var target = this;
81-
var listeners = target._c1_listeners = target._c1_listeners || {};
82-
var typeListeners = listeners[type] = listeners[type] || [];
83-
84-
target.attachEvent('on' + type, typeListeners.event = function (e) {
85-
e || (e = root.event);
86-
87-
var documentElement = target.document &&
88-
target.document.documentElement ||
89-
target.documentElement ||
90-
{ scrollLeft: 0, scrollTop: 0 };
91-
92-
e.currentTarget = target;
93-
e.pageX = e.clientX + documentElement.scrollLeft;
94-
e.pageY = e.clientY + documentElement.scrollTop;
95-
96-
e.preventDefault = function () {
97-
e.bubbledKeyCode = e.keyCode;
98-
if (e.ctrlKey) {
99-
try {
100-
e.keyCode = 0;
101-
} catch (e) { }
102-
}
103-
e.defaultPrevented = true;
104-
e.returnValue = false;
105-
e.modified = true;
106-
e.returnValue = false;
107-
};
108-
109-
e.stopImmediatePropagation = function () {
110-
immediatePropagation = false;
111-
e.cancelBubble = true;
112-
};
113-
114-
e.stopPropagation = function () {
115-
e.cancelBubble = true;
116-
};
117-
118-
e.relatedTarget = e.fromElement || null;
119-
e.target = e.srcElement || target;
120-
e.timeStamp = +new Date();
121-
122-
// Normalize key events
123-
switch(e.type) {
124-
case 'keypress':
125-
var c = ('charCode' in e ? e.charCode : e.keyCode);
126-
if (c === 10) {
127-
c = 0;
128-
e.keyCode = 13;
129-
} else if (c === 13 || c === 27) {
130-
c = 0;
131-
} else if (c === 3) {
132-
c = 99;
133-
}
134-
e.charCode = c;
135-
e.keyChar = e.charCode ? String.fromCharCode(e.charCode) : '';
136-
break;
137-
}
138-
139-
var copiedEvent = {};
140-
for (var prop in e) {
141-
copiedEvent[prop] = e[prop];
142-
}
143-
144-
for (var i = 0, typeListenersCache = [].concat(typeListeners), typeListenerCache, immediatePropagation = true; immediatePropagation && (typeListenerCache = typeListenersCache[i]); ++i) {
145-
for (var ii = 0, typeListener; typeListener = typeListeners[ii]; ++ii) {
146-
if (typeListener === typeListenerCache) { typeListener.call(target, copiedEvent); break; }
147-
}
148-
}
149-
});
150-
151-
typeListeners.push(listener);
152-
});
153-
154-
addMethod('removeEventListener', function (type, listener) {
155-
var target = this;
156-
var listeners = target._c1_listeners = target._c1_listeners || {};
157-
var typeListeners = listeners[type] = listeners[type] || [];
158-
159-
for (var i = typeListeners.length - 1, typeListener; typeListener = typeListeners[i]; --i) {
160-
if (typeListener === listener) { typeListeners.splice(i, 1); break; }
161-
}
162-
163-
!typeListeners.length &&
164-
typeListeners.event &&
165-
target.detachEvent('on' + type, typeListeners.event);
166-
});
167-
168-
addMethod('dispatchEvent', function (e) {
169-
var target = this;
170-
var type = e.type;
171-
var listeners = target._c1_listeners = target._c1_listeners || {};
172-
var typeListeners = listeners[type] = listeners[type] || [];
173-
174-
try {
175-
return target.fireEvent('on' + type, e);
176-
} catch (err) {
177-
return typeListeners.event && typeListeners.event(e);
178-
}
179-
});
180-
181-
function ready() {
182-
if (ready.interval && document.body) {
183-
ready.interval = clearInterval(ready.interval);
184-
185-
document.dispatchEvent(new CustomEvent('DOMContentLoaded'));
186-
}
187-
}
188-
189-
ready.interval = setInterval(ready, 1);
190-
191-
root.addEventListener('load', ready);
192-
}());
193-
194-
(!root.CustomEvent || typeof root.CustomEvent === 'object') && (function() {
195-
function CustomEvent (type, params) {
196-
var event;
197-
params = params || { bubbles: false, cancelable: false, detail: undefined };
198-
199-
try {
200-
event = document.createEvent('CustomEvent');
201-
event.initCustomEvent(type, params.bubbles, params.cancelable, params.detail);
202-
} catch (error) {
203-
event = document.createEvent('Event');
204-
event.initEvent(type, params.bubbles, params.cancelable);
205-
event.detail = params.detail;
206-
}
207-
208-
return event;
209-
}
210-
211-
root.CustomEvent && (CustomEvent.prototype = root.CustomEvent.prototype);
212-
root.CustomEvent = CustomEvent;
213-
}());
214-
21574
function CreateListenerDisposable(element, name, handler, useCapture) {
21675
this._e = element;
21776
this._n = name;

dist/rx.dom.compat.map

+1-1
Large diffs are not rendered by default.

dist/rx.dom.compat.min.js

+1-1
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

modules/lite-compat/rx.lite.dom.compat.js

-141
Original file line numberDiff line numberDiff line change
@@ -71,147 +71,6 @@
7171
throw e;
7272
}
7373

74-
root.Element && root.Element.prototype.attachEvent && !root.Element.prototype.addEventListener && (function () {
75-
function addMethod(name, fn) {
76-
Window.prototype[name] = HTMLDocument.prototype[name] = Element.prototype[name] = fn;
77-
}
78-
79-
addMethod('addEventListener', function (type, listener) {
80-
var target = this;
81-
var listeners = target._c1_listeners = target._c1_listeners || {};
82-
var typeListeners = listeners[type] = listeners[type] || [];
83-
84-
target.attachEvent('on' + type, typeListeners.event = function (e) {
85-
e || (e = root.event);
86-
87-
var documentElement = target.document &&
88-
target.document.documentElement ||
89-
target.documentElement ||
90-
{ scrollLeft: 0, scrollTop: 0 };
91-
92-
e.currentTarget = target;
93-
e.pageX = e.clientX + documentElement.scrollLeft;
94-
e.pageY = e.clientY + documentElement.scrollTop;
95-
96-
e.preventDefault = function () {
97-
e.bubbledKeyCode = e.keyCode;
98-
if (e.ctrlKey) {
99-
try {
100-
e.keyCode = 0;
101-
} catch (e) { }
102-
}
103-
e.defaultPrevented = true;
104-
e.returnValue = false;
105-
e.modified = true;
106-
e.returnValue = false;
107-
};
108-
109-
e.stopImmediatePropagation = function () {
110-
immediatePropagation = false;
111-
e.cancelBubble = true;
112-
};
113-
114-
e.stopPropagation = function () {
115-
e.cancelBubble = true;
116-
};
117-
118-
e.relatedTarget = e.fromElement || null;
119-
e.target = e.srcElement || target;
120-
e.timeStamp = +new Date();
121-
122-
// Normalize key events
123-
switch(e.type) {
124-
case 'keypress':
125-
var c = ('charCode' in e ? e.charCode : e.keyCode);
126-
if (c === 10) {
127-
c = 0;
128-
e.keyCode = 13;
129-
} else if (c === 13 || c === 27) {
130-
c = 0;
131-
} else if (c === 3) {
132-
c = 99;
133-
}
134-
e.charCode = c;
135-
e.keyChar = e.charCode ? String.fromCharCode(e.charCode) : '';
136-
break;
137-
}
138-
139-
var copiedEvent = {};
140-
for (var prop in e) {
141-
copiedEvent[prop] = e[prop];
142-
}
143-
144-
for (var i = 0, typeListenersCache = [].concat(typeListeners), typeListenerCache, immediatePropagation = true; immediatePropagation && (typeListenerCache = typeListenersCache[i]); ++i) {
145-
for (var ii = 0, typeListener; typeListener = typeListeners[ii]; ++ii) {
146-
if (typeListener === typeListenerCache) { typeListener.call(target, copiedEvent); break; }
147-
}
148-
}
149-
});
150-
151-
typeListeners.push(listener);
152-
});
153-
154-
addMethod('removeEventListener', function (type, listener) {
155-
var target = this;
156-
var listeners = target._c1_listeners = target._c1_listeners || {};
157-
var typeListeners = listeners[type] = listeners[type] || [];
158-
159-
for (var i = typeListeners.length - 1, typeListener; typeListener = typeListeners[i]; --i) {
160-
if (typeListener === listener) { typeListeners.splice(i, 1); break; }
161-
}
162-
163-
!typeListeners.length &&
164-
typeListeners.event &&
165-
target.detachEvent('on' + type, typeListeners.event);
166-
});
167-
168-
addMethod('dispatchEvent', function (e) {
169-
var target = this;
170-
var type = e.type;
171-
var listeners = target._c1_listeners = target._c1_listeners || {};
172-
var typeListeners = listeners[type] = listeners[type] || [];
173-
174-
try {
175-
return target.fireEvent('on' + type, e);
176-
} catch (err) {
177-
return typeListeners.event && typeListeners.event(e);
178-
}
179-
});
180-
181-
function ready() {
182-
if (ready.interval && document.body) {
183-
ready.interval = clearInterval(ready.interval);
184-
185-
document.dispatchEvent(new CustomEvent('DOMContentLoaded'));
186-
}
187-
}
188-
189-
ready.interval = setInterval(ready, 1);
190-
191-
root.addEventListener('load', ready);
192-
}());
193-
194-
(!root.CustomEvent || typeof root.CustomEvent === 'object') && (function() {
195-
function CustomEvent (type, params) {
196-
var event;
197-
params = params || { bubbles: false, cancelable: false, detail: undefined };
198-
199-
try {
200-
event = document.createEvent('CustomEvent');
201-
event.initCustomEvent(type, params.bubbles, params.cancelable, params.detail);
202-
} catch (error) {
203-
event = document.createEvent('Event');
204-
event.initEvent(type, params.bubbles, params.cancelable);
205-
event.detail = params.detail;
206-
}
207-
208-
return event;
209-
}
210-
211-
root.CustomEvent && (CustomEvent.prototype = root.CustomEvent.prototype);
212-
root.CustomEvent = CustomEvent;
213-
}());
214-
21574
function CreateListenerDisposable(element, name, handler, useCapture) {
21675
this._e = element;
21776
this._n = name;

modules/lite-compat/rx.lite.dom.compat.map

+1-1
Large diffs are not rendered by default.

modules/lite-compat/rx.lite.dom.compat.min.js

+1-1
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

0 commit comments

Comments
 (0)