1
0
Fork 0
mirror of https://github.com/Ylianst/MeshCentral.git synced 2025-03-09 15:40:18 +00:00

Added KVM key state command support

This commit is contained in:
Ylian Saint-Hilaire 2022-02-28 09:52:35 -08:00
parent 97807e8209
commit bdb12ce7cc
2 changed files with 16 additions and 3 deletions

View file

@ -52,6 +52,10 @@ var CreateAgentRemoteDesktop = function (canvasid, scrolldiv) {
obj.onRemoteInputLockChanged = null;
obj.RemoteInputLock = null;
// Remote keyboard state
obj.onKeyboardStateChanged = null;
obj.KeyboardState = 0; // 1 = NumLock, 2 = ScrollLock, 4 = CapsLock
obj.ScreenWidth = 960;
obj.ScreenHeight = 701;
obj.width = 960;
@ -260,6 +264,10 @@ var CreateAgentRemoteDesktop = function (canvasid, scrolldiv) {
obj.TouchArray = {};
break;
case 16: // MNG_KVM_KEYSTATE
if ((cmdsize != 5) || (obj.KeyboardState == view[4])) break;
obj.KeyboardState = view[4]; // 1 = NumLock, 2 = ScrollLock, 4 = CapsLock
if (obj.onKeyboardStateChanged) { obj.onKeyboardStateChanged(obj, obj.KeyboardState); }
console.log('MNG_KVM_KEYSTATE:' + ((obj.KeyboardState & 1) ? ' NumLock' : '') + ((obj.KeyboardState & 2) ? ' ScrollLock' : '') + ((obj.KeyboardState & 4) ? ' CapsLock' : ''));
break;
case 17: // MNG_KVM_MESSAGE
var str = String.fromCharCode.apply(null, view.slice(4));