diff --git a/MeshCentralServer.njsproj b/MeshCentralServer.njsproj
index 6abd1d65..7d0c6ef4 100644
--- a/MeshCentralServer.njsproj
+++ b/MeshCentralServer.njsproj
@@ -60,8 +60,8 @@
+
-
@@ -139,6 +139,7 @@
+
diff --git a/package.json b/package.json
index 6e105a92..3225225a 100644
--- a/package.json
+++ b/package.json
@@ -1,6 +1,6 @@
{
"name": "meshcentral",
- "version": "0.4.0-w",
+ "version": "0.4.0-y",
"keywords": [
"Remote Management",
"Intel AMT",
diff --git a/public/scripts/agent-desktop-0.0.2.js b/public/scripts/agent-desktop-0.0.2.js
index 2e9f148e..63270268 100644
--- a/public/scripts/agent-desktop-0.0.2.js
+++ b/public/scripts/agent-desktop-0.0.2.js
@@ -57,6 +57,8 @@ var CreateAgentRemoteDesktop = function (canvasid, scrolldiv) {
obj.onDisplayinfo = null;
obj.accumulator = null;
+ var mouseCursors = ['default', 'progress', 'crosshair', 'pointer', 'help', 'text', 'no-drop', 'move', 'nesw-resize', 'ns-resize', 'nwse-resize', 'w-resize', 'alias', 'wait', 'none'];
+
obj.Start = function () {
obj.State = 0;
obj.accumulator = null;
@@ -213,7 +215,7 @@ var CreateAgentRemoteDesktop = function (canvasid, scrolldiv) {
jumboAdd = 8;
}
if ((cmdsize != str.length) && (obj.debugmode > 0)) { console.log(cmdsize, str.length, cmdsize == str.length); }
- 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; }
+ 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; }
if (cmdsize > str.length) {
//console.log('KVM accumulator set to ' + str.length + ' bytes, need ' + cmdsize + ' bytes.');
obj.accumulator = str;
@@ -296,6 +298,12 @@ var CreateAgentRemoteDesktop = function (canvasid, scrolldiv) {
console.log('KVM: ' + str.substring(1));
}
break;
+ case 88: // MNG_KVM_MOUSE_CURSOR
+ if (cmdsize != 5) break;
+ var cursorNum = str.charCodeAt(4);
+ if (cursorNum > mouseCursors.length) { cursorNum = 0; }
+ obj.CanvasId.style.cursor = mouseCursors[cursorNum];
+ break;
}
return cmdsize + jumboAdd;
}