fix numlock sending extended keys incorrectly (#5735)

Signed-off-by: si458 <simonsmith5521@gmail.com>

Simon Smith committed Jan 26, 2024 at 07:05 UTC ceba76cfde864d825cdd3670ff53d3e90ef18a73
1 file changed +5 -1
apprelays.js
+5 -1
@@ -1046,7 +1046,11 @@ module.exports.CreateMstscRelay = function (parent, db, ws, req, args, domain) {
1046 if ((k == 14) || (k == 28)) { ok = true; } // Enter and backspace
1047 if (ok == false) return;
1048 }
1049 - if (rdpClient && (obj.viewonly != true)) { rdpClient.sendKeyEventScancode(msg[1], msg[2]); } break;
1049 + var extended = false;
1050 + var extendedkeys = [57419,57421,57416,57424,57426,57427,57417,57425,57372,57397,57415,57423,57373,57400,57399];
1051 + // left,right,up,down,insert,delete,pageup,pagedown,numpadenter,numpaddivide,home,end,controlright,altright,printscreen
1052 + if (extendedkeys.includes(msg[1])) extended=true;
1053 + if (rdpClient && (obj.viewonly != true)) { rdpClient.sendKeyEventScancode(msg[1], msg[2], extended); } break;
1054 }
1055 case 'unicode': { if (rdpClient && (obj.viewonly != true)) { rdpClient.sendKeyEventUnicode(msg[1], msg[2]); } break; }
1056 case 'utype': {