KASM-1980 Add support for CMD right + key shortcuts on MacOs
This commit is contained in:
parent
fff810d45a
commit
66cc16a894
|
@ -43,7 +43,11 @@ export default class Keyboard {
|
|||
} else {
|
||||
// On MacOs zoom and shortcut actions are CMD based so we need to
|
||||
// let the remote know that it should unselect the CTRL key instead
|
||||
if (browser.isMac() && code === "MetaLeft" && this._keyDownList["ControlLeft"]) {
|
||||
if (
|
||||
browser.isMac() &&
|
||||
this._keyDownList["ControlLeft"] &&
|
||||
(code === "MetaLeft" || code === "MetaRight")
|
||||
) {
|
||||
keysym = KeyTable.XK_Control_L;
|
||||
code = "ControlLeft";
|
||||
}
|
||||
|
@ -135,8 +139,14 @@ export default class Keyboard {
|
|||
}
|
||||
|
||||
// Translate MacOs CMD based shortcuts to their CTRL based counterpart
|
||||
if (browser.isMac() && UI.rfb.translateShortcuts && code !== "MetaLeft" && e.metaKey && !e.ctrlKey && !e.altKey) {
|
||||
if (
|
||||
browser.isMac() &&
|
||||
UI.rfb && UI.rfb.translateShortcuts &&
|
||||
code !== "MetaLeft" && code !== "MetaRight" &&
|
||||
e.metaKey && !e.ctrlKey && !e.altKey
|
||||
) {
|
||||
this._sendKeyEvent(this._keyDownList["MetaLeft"], "MetaLeft", false);
|
||||
this._sendKeyEvent(this._keyDownList["MetaRight"], "MetaRight", false);
|
||||
this._sendKeyEvent(KeyTable.XK_Control_L, "ControlLeft", true);
|
||||
this._sendKeyEvent(keysym, code, true);
|
||||
stopEvent(e);
|
||||
|
|
|
@ -1331,8 +1331,9 @@ export default class RFB extends EventTargetMixin {
|
|||
ev.preventDefault();
|
||||
|
||||
// On MacOs we need to translate zooming CMD+wheel to CTRL+wheel
|
||||
if (isMac() && this._keyboard._keyDownList["MetaLeft"]) {
|
||||
if (isMac() && (this._keyboard._keyDownList["MetaLeft"] || this._keyboard._keyDownList["MetaRight"])) {
|
||||
this._keyboard._sendKeyEvent(this._keyboard._keyDownList["MetaLeft"], "MetaLeft", false);
|
||||
this._keyboard._sendKeyEvent(this._keyboard._keyDownList["MetaRight"], "MetaRight", false);
|
||||
this._keyboard._sendKeyEvent(KeyTable.XK_Control_L, "ControlLeft", true);
|
||||
}
|
||||
|
||||
|
|
Loading…
Reference in New Issue