aboutsummaryrefslogtreecommitdiff
path: root/src/library_html5.js
diff options
context:
space:
mode:
authorJukka Jylänki <jujjyl@gmail.com>2014-03-12 11:14:35 +0200
committerJukka Jylänki <jujjyl@gmail.com>2014-03-12 11:15:44 +0200
commit50ecad0fcae2514333bf2437c85a206d8f4c399a (patch)
tree456b7cf0958dfa424adb67abdcff811290f7c3e5 /src/library_html5.js
parent74a3d9f57867891282f037ed1ed4d6a7292aa473 (diff)
Fix IE fullscreen requests to not run in mousedown events, since IE doesn't allow them. Related to #2219.
Diffstat (limited to 'src/library_html5.js')
-rw-r--r--src/library_html5.js8
1 files changed, 5 insertions, 3 deletions
diff --git a/src/library_html5.js b/src/library_html5.js
index 0a938df6..5534781d 100644
--- a/src/library_html5.js
+++ b/src/library_html5.js
@@ -118,6 +118,8 @@ var LibraryJSEvents = {
// Stores objects representing each currently registered JS event handler.
eventHandlers: [],
+ isInternetExplorer: function() { return navigator.userAgent.indexOf('MSIE') !== -1 || navigator.appVersion.indexOf('Trident/') > 0; },
+
_removeHandler: function(i) {
JSEvents.eventHandlers[i].target.removeEventListener(JSEvents.eventHandlers[i].eventTypeString, JSEvents.eventHandlers[i].handlerFunc, true);
JSEvents.eventHandlers.splice(i, 1);
@@ -177,11 +179,9 @@ var LibraryJSEvents = {
}
};
- var isInternetExplorer = (navigator.userAgent.indexOf('MSIE') !== -1 || navigator.appVersion.indexOf('Trident/') > 0);
-
var eventHandler = {
target: JSEvents.findEventTarget(target),
- allowsDeferredCalls: isInternetExplorer ? false : true, // MSIE doesn't allow fullscreen and pointerlock requests from key handlers, others do.
+ allowsDeferredCalls: JSEvents.isInternetExplorer ? false : true, // MSIE doesn't allow fullscreen and pointerlock requests from key handlers, others do.
eventTypeString: eventTypeString,
callbackfunc: callbackfunc,
handlerFunc: handlerFunc,
@@ -230,6 +230,8 @@ var LibraryJSEvents = {
handlerFunc: handlerFunc,
useCapture: useCapture
};
+ // In IE, mousedown events don't either allow deferred calls to be run!
+ if (JSEvents.isInternetExplorer() && eventTypeString == 'mousedown') eventHandler.allowsDeferredCalls = false;
JSEvents.registerOrRemoveHandler(eventHandler);
},