diff --git a/translate/translate.json b/translate/translate.json
index 455cd7e5..7c01c96c 100644
--- a/translate/translate.json
+++ b/translate/translate.json
@@ -61827,7 +61827,8 @@
"default.handlebars->47->1042",
"default.handlebars->47->439",
"default.handlebars->47->998",
- "default.handlebars->container->dialog->dialogBody->dialog7->1->td7rdpkvm"
+ "default.handlebars->container->dialog->dialogBody->dialog7->1->td7rdpkvm",
+ "default.handlebars->contextMenu->cxrdp"
]
},
{
diff --git a/views/default.handlebars b/views/default.handlebars
index 02ec6fcd..95fc2f77 100644
--- a/views/default.handlebars
+++ b/views/default.handlebars
@@ -64,6 +64,7 @@
Web-RDP
Web-VNC
Web-SSH
+ RDP
Plugins
Toggle Star
@@ -6448,7 +6449,16 @@
QV('cxwebrdp', ((((node.conn & 1) != 0) || (node.mtype == 3)) && (node.agent) && ((rights & 8) != 0) && ((features & 0x40000000) == 0)));
QV('cxwebssh', ((features2 & 0x200) && (((node.conn & 1) != 0) || (node.mtype == 3)) && (node.agent) && ((rights & 8) != 0)));
QV('cxconsole', (consoleRights && (node.mtype == 2) && ((node.agent == null) || (node.agent.caps == null) || ((node.agent.caps & 8) != 0))) && (rights & 8));
-
+ QV('cxrdp', false); // always have the RDP hidden
+ if ((((node.conn & 1) != 0) || (node.mtype == 3)) && (node.agent) && ((rights & 8) != 0)) {
+ if ((node.agent.id > 0) && (node.agent.id < 5)) {
+ if (navigator.platform.toLowerCase() == 'win32') {
+ if ((serverinfo.devicemeshrouterlinks == null) || (serverinfo.devicemeshrouterlinks.rdp != false)) {
+ QV('cxrdp', true);
+ }
+ }
+ }
+ }
QV('cxmgroupsplit', true);
QV('cxstar', true);
break;
@@ -6516,6 +6526,7 @@
else if (action == 11) { p10mstsc(nodeid); } // Web-RDP
else if (action == 12) { p10rfb(nodeid); } // Web-VNC
else if (action == 13) { p10ssh(nodeid); } // Web-SSH
+ else if (action == 14) { p10MCRouter(nodeid,3); } // RDP
}
function cmmeshaction(action) {