fix(key) add key.identifier back for chrome <= v51

This commit is contained in:
coderaiser 2016-05-24 22:29:40 +03:00
parent a79b221f75
commit 5c953c81d4

View file

@ -101,7 +101,7 @@ var CloudCmd, Util, DOM;
Binded = true;
};
function listener(event) {
function listener(event) {
/* get selected file */
var keyCode = event.keyCode,
alt = event.altKey,
@ -110,7 +110,17 @@ var CloudCmd, Util, DOM;
meta = event.metaKey,
isBetween = keyCode >= KEY.ZERO && keyCode <= KEY.Z,
isSymbol,
char = '';
/*
* event.keyIdentifier deprecated in chrome v51
* but event.key is absent in chrome <= v51
*/
if (event.key)
char = event.key;
else
char = fromCharCode(event.keyIdentifier);
isSymbol = ~['.', '_', '-', '+', '='].indexOf(char);
@ -151,6 +161,14 @@ var CloudCmd, Util, DOM;
return char;
}
function fromCharCode(keyIdentifier) {
var code = keyIdentifier.substring(2),
hex = parseInt(code, 16),
char = String.fromCharCode(hex);
return char;
}
function setCurrentByChar(char) {
var name, isMatch, byName, firstByName,
skipCount = 0,