Added support for remote desktop cursors.

Ylian Saint-Hilaire committed Sep 19, 2019 at 17:24 UTC f202352698fa69ce4c8ce568771b3f0bbd0403f1
3 files changed +12 -3
MeshCentralServer.njsproj
+2 -1
@@ -60,8 +60,8 @@
60 <Compile Include="agents\modules_meshcore\amt-wsman.js" />
61 <Compile Include="agents\modules_meshcore\amt-xml.js" />
62 <Compile Include="agents\modules_meshcore\amt.js" />
63 + <Compile Include="agents\modules_meshcore\apfclient.js" />
64 <Compile Include="agents\modules_meshcore\identifiers.js" />
64 - <Compile Include="agents\modules_meshcore\linux-dbus.js" />
65 <Compile Include="agents\modules_meshcore\monitor-border.js" />
66 <Compile Include="agents\modules_meshcore\power-monitor.js" />
67 <Compile Include="agents\modules_meshcore\smbios.js" />
@@ -139,6 +139,7 @@
139 <Content Include="agents\meshagent_arm-linaro" />
140 <Content Include="agents\meshagent_arm64" />
141 <Content Include="agents\meshagent_armhf" />
142 + <Content Include="agents\meshagent_mips" />
143 <Content Include="agents\meshagent_osx-x86-64" />
144 <Content Include="agents\meshagent_pogo" />
145 <Content Include="agents\meshagent_poky" />
package.json
+1 -1
@@ -1,6 +1,6 @@
1 {
2 "name": "meshcentral",
3 - "version": "0.4.0-w",
3 + "version": "0.4.0-y",
4 "keywords": [
5 "Remote Management",
6 "Intel AMT",
public/scripts/agent-desktop-0.0.2.js
+9 -1
@@ -57,6 +57,8 @@ var CreateAgentRemoteDesktop = function (canvasid, scrolldiv) {
57 obj.onDisplayinfo = null;
58 obj.accumulator = null;
59
60 + var mouseCursors = ['default', 'progress', 'crosshair', 'pointer', 'help', 'text', 'no-drop', 'move', 'nesw-resize', 'ns-resize', 'nwse-resize', 'w-resize', 'alias', 'wait', 'none'];
61 +
62 obj.Start = function () {
63 obj.State = 0;
64 obj.accumulator = null;
@@ -213,7 +215,7 @@ var CreateAgentRemoteDesktop = function (canvasid, scrolldiv) {
215 jumboAdd = 8;
216 }
217 if ((cmdsize != str.length) && (obj.debugmode > 0)) { console.log(cmdsize, str.length, cmdsize == str.length); }
216 - if ((command >= 18) && (command != 65)) { console.error("Invalid KVM command " + command + " of size " + cmdsize); console.log("Invalid KVM data", str.length, rstr2hex(str.substring(0, 40)) + '...'); return; }
218 + if ((command >= 18) && (command != 65) && (command != 88)) { console.error("Invalid KVM command " + command + " of size " + cmdsize); console.log("Invalid KVM data", str.length, rstr2hex(str.substring(0, 40)) + '...'); return; }
219 if (cmdsize > str.length) {
220 //console.log('KVM accumulator set to ' + str.length + ' bytes, need ' + cmdsize + ' bytes.');
221 obj.accumulator = str;
@@ -296,6 +298,12 @@ var CreateAgentRemoteDesktop = function (canvasid, scrolldiv) {
298 console.log('KVM: ' + str.substring(1));
299 }
300 break;
301 + case 88: // MNG_KVM_MOUSE_CURSOR
302 + if (cmdsize != 5) break;
303 + var cursorNum = str.charCodeAt(4);
304 + if (cursorNum > mouseCursors.length) { cursorNum = 0; }
305 + obj.CanvasId.style.cursor = mouseCursors[cursorNum];
306 + break;
307 }
308 return cmdsize + jumboAdd;
309 }