Fixed type button for guest sharing sessions, #3961
Ylian Saint-Hilaire committed
May 11, 2022 at 12:52 UTC
0dab6de02d6a8bb4d57e104689bf1ae04bb9f295
1 file changed
+23
-17
views/sharing.handlebars
+23
-17
@@ -288,7 +288,7 @@
288
var agentPresent = true;
289
var intelAmtPresent = false;
290
var deskAspectRatio = 0;
291
- var desktopsettings = { encoding: 2, showfocus: false, showmouse: true, showcad: true, quality: 40, scaling: 1024, framerate: 100, localkeymap: false };
291
+ var desktopsettings = { encoding: 2, showfocus: false, showmouse: true, showcad: true, quality: 40, scaling: 1024, framerate: 100, localkeymap: false, remotekeymap: false };
292
var serverPublicNamePort = '{{{serverDnsName}}}:{{{serverPublicPort}}}';
293
var domain = '{{{domain}}}';
294
var domainUrl = '{{{domainurl}}}';
@@ -1049,24 +1049,30 @@
1049
}, 10);
1050
} else {
1051
// MeshAgent
1052
- for (var i in txt) {
1053
- var a = txt.charCodeAt(i), b = ltxt.charCodeAt(i);
1054
- if (((a >= 65) && (a <= 90)) || ((a >= 97) && (a <= 122))) {
1055
- if ((a == b) && (shift == false)) { x.push([desktop.m.KeyAction.DOWN, 16]); shift = true; } // LShift down
1056
- if ((a != b) && (shift == true)) { x.push([desktop.m.KeyAction.UP, 16]); shift = false; } // LShift up
1057
- } else if ((a >= 48) && (a <= 57)) {
1058
- if (shift == true) { x.push([desktop.m.KeyAction.UP, 16]); shift = false; } // Shift up
1059
- } else if (DeskTypeTranslate[a]) {
1060
- if (shift == true) { x.push([desktop.m.KeyAction.UP, 16]); shift = false; } // Shift up
1061
- b = DeskTypeTranslate[a];
1062
- } else if (DeskTypeShiftTranslate[a]) {
1063
- if (shift == false) { x.push([desktop.m.KeyAction.DOWN, 16]); shift = true; } // LShift down
1064
- b = DeskTypeShiftTranslate[a];
1052
+ if (desktopsettings.remotekeymap !== true) {
1053
+ // New unicode typing
1054
+ desktop.m.SendStringUnicode(txt);
1055
+ } else {
1056
+ // Old scan code typing. This is for non-unicode system.
1057
+ for (var i in txt) {
1058
+ var a = txt.charCodeAt(i), b = ltxt.charCodeAt(i);
1059
+ if (((a >= 65) && (a <= 90)) || ((a >= 97) && (a <= 122))) {
1060
+ if ((a == b) && (shift == false)) { x.push([desktop.m.KeyAction.DOWN, 16]); shift = true; } // LShift down
1061
+ if ((a != b) && (shift == true)) { x.push([desktop.m.KeyAction.UP, 16]); shift = false; } // LShift up
1062
+ } else if ((a >= 48) && (a <= 57)) {
1063
+ if (shift == true) { x.push([desktop.m.KeyAction.UP, 16]); shift = false; } // Shift up
1064
+ } else if (DeskTypeTranslate[a]) {
1065
+ if (shift == true) { x.push([desktop.m.KeyAction.UP, 16]); shift = false; } // Shift up
1066
+ b = DeskTypeTranslate[a];
1067
+ } else if (DeskTypeShiftTranslate[a]) {
1068
+ if (shift == false) { x.push([desktop.m.KeyAction.DOWN, 16]); shift = true; } // LShift down
1069
+ b = DeskTypeShiftTranslate[a];
1070
+ }
1071
+ x.push([desktop.m.KeyAction.DOWN, b], [desktop.m.KeyAction.UP, b]);
1072
}
1066
- x.push([desktop.m.KeyAction.DOWN, b], [desktop.m.KeyAction.UP, b]);
1073
+ if (shift == true) { x.push([desktop.m.KeyAction.UP, 16]); shift = false; } // Shift up
1074
+ desktop.m.SendKeyMsgKC(x);
1075
}
1068
- if (shift == true) { x.push([desktop.m.KeyAction.UP, 16]); shift = false; } // Shift up
1069
- desktop.m.SendKeyMsgKC(x);
1076
}
1077
}
1078