mirror of
https://github.com/gyurix1968/guacamole-client.git
synced 2025-09-08 06:01:22 +00:00
Ignore unknown key events.
This commit is contained in:
@@ -425,6 +425,12 @@ Guacamole.Keyboard = function(element) {
|
|||||||
if (window.event) keynum = window.event.keyCode;
|
if (window.event) keynum = window.event.keyCode;
|
||||||
else if (e.which) keynum = e.which;
|
else if (e.which) keynum = e.which;
|
||||||
|
|
||||||
|
// Ignore any unknown key events
|
||||||
|
if (keynum == 0) {
|
||||||
|
e.preventDefault();
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
// Ctrl/Alt/Shift
|
// Ctrl/Alt/Shift
|
||||||
if (keynum == 16) guac_keyboard.modifiers.shift = true;
|
if (keynum == 16) guac_keyboard.modifiers.shift = true;
|
||||||
else if (keynum == 17) guac_keyboard.modifiers.ctrl = true;
|
else if (keynum == 17) guac_keyboard.modifiers.ctrl = true;
|
||||||
@@ -465,7 +471,7 @@ Guacamole.Keyboard = function(element) {
|
|||||||
element.onkeypress = function(e) {
|
element.onkeypress = function(e) {
|
||||||
|
|
||||||
// Only intercept if handler set
|
// Only intercept if handler set
|
||||||
if (!guac_keyboard.onkeydown) return true;
|
if (!guac_keyboard.onkeydown) return;
|
||||||
|
|
||||||
var keynum;
|
var keynum;
|
||||||
if (window.event) keynum = window.event.keyCode;
|
if (window.event) keynum = window.event.keyCode;
|
||||||
@@ -485,20 +491,24 @@ Guacamole.Keyboard = function(element) {
|
|||||||
if (!deferred_keypress)
|
if (!deferred_keypress)
|
||||||
deferred_keypress = window.setTimeout(fireKeyPress, 0);
|
deferred_keypress = window.setTimeout(fireKeyPress, 0);
|
||||||
|
|
||||||
return false;
|
|
||||||
|
|
||||||
};
|
};
|
||||||
|
|
||||||
// When key released
|
// When key released
|
||||||
element.onkeyup = function(e) {
|
element.onkeyup = function(e) {
|
||||||
|
|
||||||
// Only intercept if handler set
|
// Only intercept if handler set
|
||||||
if (!guac_keyboard.onkeyup) return true;
|
if (!guac_keyboard.onkeyup) return;
|
||||||
|
|
||||||
|
e.preventDefault();
|
||||||
|
|
||||||
var keynum;
|
var keynum;
|
||||||
if (window.event) keynum = window.event.keyCode;
|
if (window.event) keynum = window.event.keyCode;
|
||||||
else if (e.which) keynum = e.which;
|
else if (e.which) keynum = e.which;
|
||||||
|
|
||||||
|
// Ignore any unknown key events
|
||||||
|
if (keynum == 0)
|
||||||
|
return;
|
||||||
|
|
||||||
// Ctrl/Alt/Shift
|
// Ctrl/Alt/Shift
|
||||||
if (keynum == 16) guac_keyboard.modifiers.shift = false;
|
if (keynum == 16) guac_keyboard.modifiers.shift = false;
|
||||||
else if (keynum == 17) guac_keyboard.modifiers.ctrl = false;
|
else if (keynum == 17) guac_keyboard.modifiers.ctrl = false;
|
||||||
@@ -513,7 +523,7 @@ Guacamole.Keyboard = function(element) {
|
|||||||
keydownChar[keynum] = null;
|
keydownChar[keynum] = null;
|
||||||
|
|
||||||
// Send release event
|
// Send release event
|
||||||
return sendKeyReleased(lastKeyDownChar);
|
sendKeyReleased(lastKeyDownChar);
|
||||||
|
|
||||||
};
|
};
|
||||||
|
|
||||||
|
Reference in New Issue
Block a user