From: Jesper Dam Date: Wed, 12 Mar 2014 10:11:52 +0000 (+0100) Subject: Better browser OS detection. X-Git-Tag: v1.0.0~409^2 X-Git-Url: https://git.proxmox.com/?a=commitdiff_plain;h=230784066c7950316b8267a508406eb571e0ff79;p=mirror_novnc.git Better browser OS detection. Apparently Firefox on Linux changed the value of navigator.appVersion, causing our OS detection (used to determine how to interpret different modifier keys) to fail. Use navigator.platform instead, which should be more stable. http://stackoverflow.com/a/19883965/33213 --- diff --git a/include/keyboard.js b/include/keyboard.js index 3fde55b..6bea9b5 100644 --- a/include/keyboard.js +++ b/include/keyboard.js @@ -18,13 +18,13 @@ var kbdUtil = (function() { }; function isMac() { - return navigator && !!(/macintosh/i).exec(navigator.appVersion); + return navigator && !!(/mac/i).exec(navigator.platform); } function isWindows() { - return navigator && !!(/windows/i).exec(navigator.appVersion); + return navigator && !!(/win/i).exec(navigator.platform); } function isLinux() { - return navigator && !!(/linux/i).exec(navigator.appVersion); + return navigator && !!(/linux/i).exec(navigator.platform); } // Return true if a modifier which is not the specified char modifier (and is not shift) is down