1
0
mirror of https://github.com/Ylianst/MeshCommander synced 2025-12-06 06:03:20 +00:00

Added AMT KVM mouse wheel support.

This commit is contained in:
Ylian Saint-Hilaire
2022-02-22 18:21:34 -08:00
parent 437a5355ac
commit 6b49e70d02
3 changed files with 46 additions and 31 deletions

View File

@@ -884,6 +884,7 @@ var CreateAmtRemoteDesktop = function (divid, scrolldiv) {
c.onmouseup = obj.mouseup;
c.onmousedown = obj.mousedown;
c.onmousemove = obj.mousemove;
c.onmousewheel = obj.mousewheel;
//if (navigator.userAgent.match(/mozilla/i)) c.DOMMouseScroll = obj.xxDOMMouseScroll; else c.onmousewheel = obj.xxMouseWheel;
_MouseInputGrab = true;
}
@@ -894,6 +895,7 @@ var CreateAmtRemoteDesktop = function (divid, scrolldiv) {
c.onmousemove = null;
c.onmouseup = null;
c.onmousedown = null;
c.onmousewheel = null;
//if (navigator.userAgent.match(/mozilla/i)) c.DOMMouseScroll = null; else c.onmousewheel = null;
_MouseInputGrab = false;
}
@@ -921,6 +923,18 @@ var CreateAmtRemoteDesktop = function (divid, scrolldiv) {
// RFB 'PointerEvent' and mouse handlers
obj.mousedblclick = function (e) { }
obj.mousewheel = function (e) {
var v = 0;
if (typeof e.deltaY == 'number') { v = -1 * e.deltaY; }
else if (typeof e.detail == 'number') { v = -1 * e.detail; }
else if (typeof e.wheelDelta == 'number') { v = e.wheelDelta; }
if (v == 0) return;
var tmpmask = obj.buttonmask;
obj.buttonmask |= (1 << ((v > 0) ? 3 : 4));
obj.mousemove(e, 1);
obj.buttonmask = tmpmask;
return obj.mousemove(e, 1);
}
obj.mousedown = function (e) { obj.buttonmask |= (1 << e.button); return obj.mousemove(e, 1); }
obj.mouseup = function (e) { obj.buttonmask &= (0xFFFF - (1 << e.button)); return obj.mousemove(e, 1); }
obj.mousemove = function (e, force) {

View File

@@ -8906,12 +8906,13 @@
function dmousedown(e) { if (!xxdialogMode && (!Q('id_DeskVO').checked)) desktop.m.mousedown(e); }
function dmouseup(e) { if (!xxdialogMode && (!Q('id_DeskVO').checked)) desktop.m.mouseup(e); }
function dmousemove(e) { if (!xxdialogMode && (!Q('id_DeskVO').checked)) desktop.m.mousemove(e); }
function dmousewheel(e) { if (!xxdialogMode && (!Q('id_DeskVO').checked)) desktop.m.mousewheel(e); }
// ###END###{!DesktopInband}
// ###BEGIN###{DesktopInband}
function dmousedown(e) { if (!xxdialogMode && (!Q('id_DeskVO').checked)) { if ((webRtcDesktop != null) && (webRtcDesktop.softdesktop != null)) { webRtcDesktop.softdesktop.m.mousedown(e); desktop.m.sendKeepAlive(); } else { desktop.m.mousedown(e); } } }
function dmouseup(e) { if (!xxdialogMode && (!Q('id_DeskVO').checked)) { if ((webRtcDesktop != null) && (webRtcDesktop.softdesktop != null)) { webRtcDesktop.softdesktop.m.mouseup(e); desktop.m.sendKeepAlive(); } else { desktop.m.mouseup(e); } } }
function dmousemove(e) { if (!xxdialogMode && (!Q('id_DeskVO').checked)) { if ((webRtcDesktop != null) && (webRtcDesktop.softdesktop != null)) { webRtcDesktop.softdesktop.m.mousemove(e); desktop.m.sendKeepAlive(); } else { desktop.m.mousemove(e); } } }
function dmousewheel(e) { if (!xxdialogMode && (!Q('id_DeskVO').checked)) { if ((webRtcDesktop != null) && (webRtcDesktop.softdesktop != null)) { webRtcDesktop.softdesktop.m.mousewheel(e); desktop.m.sendKeepAlive(); } } }
function dmousewheel(e) { if (!xxdialogMode && (!Q('id_DeskVO').checked)) { if ((webRtcDesktop != null) && (webRtcDesktop.softdesktop != null)) { webRtcDesktop.softdesktop.m.mousewheel(e); desktop.m.sendKeepAlive(); } else { desktop.m.mousewheel(e); } } }
// ###END###{DesktopInband}
function drotate(x) {

View File

@@ -65,49 +65,49 @@
]
},
{
"de": " 1 Minute",
"de": " 1 Minute ",
"en": " 1 minute ",
"es": " 1 minuto",
"fr": " 1 minute",
"it": " 1 minuto",
"ja": " 1分",
"ko": " 1 분",
"nl": " 1 minuut",
"pt": " 1 minuto",
"ru": " 1 минута",
"zh-chs": " 1分钟",
"es": " 1 minuto ",
"fr": " 1 minute ",
"it": " 1 minuto ",
"ja": " 1分 ",
"ko": " 1 분 ",
"nl": " 1 minuut ",
"pt": " 1 minuto ",
"ru": " 1 минута ",
"zh-chs": " 1分钟 ",
"xloc": [
"index.html->id_computerSelector->dialog->21->1508"
]
},
{
"de": " 1 Minute",
"de": " 1 minute ",
"en": " 1 minutes ",
"es": " 1 minuto",
"fr": " 1 minutes",
"it": " 1 minuti",
"ja": " 1分",
"ko": " 1 분",
"nl": " 1 minuut",
"pt": " 1 minuto",
"ru": " 1 минута",
"zh-chs": " 1分钟",
"es": " 1 minuto ",
"fr": " 1 minutes ",
"it": " 1 minuti ",
"ja": " 1分 ",
"ko": " 1 분 ",
"nl": " 1 minuut ",
"pt": " 1 minuto ",
"ru": " 1 минута ",
"zh-chs": " 1分钟 ",
"xloc": [
"index.html->id_computerSelector->dialog->21->1507"
]
},
{
"de": ": Zu protokollierendes Ereignis",
"de": " : Zu protokollierendes Ereignis",
"en": " : Event to log",
"es": ": Evento para registrar",
"fr": ": Événement à consigner",
"it": ": Evento da registrare",
"ja": ":ログに記録するイベント",
"ko": ": 기록 할 이벤트",
"nl": ": Te loggen gebeurtenis",
"pt": ": Evento a ser registrado",
"ru": ": Событие для входа",
"zh-chs": ":要记录的事件",
"es": " : Evento para registrar",
"fr": " : Événement à consigner",
"it": " : Evento da registrare",
"ja": " :ログに記録するイベント",
"ko": " : 기록 할 이벤트",
"nl": " : Te loggen gebeurtenis",
"pt": " : Evento a ser registrado",
"ru": " : Событие для входа",
"zh-chs": " :要记录的事件",
"xloc": [
"index.html->id_computerSelector->dialog->21->770"
]