mirror of
https://github.com/Ylianst/MeshCentral.git
synced 2025-03-09 15:40:18 +00:00
Compare commits
7 commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
88a765bb13 | ||
|
|
7ad4b917be | ||
|
|
d10173a018 | ||
|
|
0e3a6b4915 | ||
|
|
b949cecc5f | ||
|
|
c7cbf2f12a | ||
|
|
d49afdd7bf |
13 changed files with 10493 additions and 10088 deletions
Binary file not shown.
Binary file not shown.
|
|
@ -295,8 +295,9 @@ if (process.platform == 'win32' && require('user-sessions').isRoot()) {
|
|||
// Check the Agent Uninstall MetaData for correctness, as the installer may have written an incorrect value
|
||||
try {
|
||||
var writtenSize = 0, actualSize = Math.floor(require('fs').statSync(process.execPath).size / 1024);
|
||||
try { writtenSize = require('win-registry').QueryKey(require('win-registry').HKEY.LocalMachine, 'Software\\Microsoft\\Windows\\CurrentVersion\\Uninstall\\MeshCentralAgent', 'EstimatedSize'); } catch (ex) { }
|
||||
if (writtenSize != actualSize) { try { require('win-registry').WriteKey(require('win-registry').HKEY.LocalMachine, 'Software\\Microsoft\\Windows\\CurrentVersion\\Uninstall\\MeshCentralAgent', 'EstimatedSize', actualSize); } catch (ex) { } }
|
||||
var serviceName = (_MSH().serviceName ? _MSH().serviceName : (require('_agentNodeId').serviceName() ? require('_agentNodeId').serviceName() : 'Mesh Agent'));
|
||||
try { writtenSize = require('win-registry').QueryKey(require('win-registry').HKEY.LocalMachine, 'Software\\Microsoft\\Windows\\CurrentVersion\\Uninstall\\' + serviceName, 'EstimatedSize'); } catch (ex) { }
|
||||
if (writtenSize != actualSize) { try { require('win-registry').WriteKey(require('win-registry').HKEY.LocalMachine, 'Software\\Microsoft\\Windows\\CurrentVersion\\Uninstall\\' + serviceName, 'EstimatedSize', actualSize); } catch (ex) { } }
|
||||
} catch (ex) { }
|
||||
|
||||
// Check to see if we are the Installed Mesh Agent Service, if we are, make sure we can run in Safe Mode
|
||||
|
|
@ -310,6 +311,16 @@ if (process.platform == 'win32' && require('user-sessions').isRoot()) {
|
|||
try { meshCheck = require('service-manager').manager.getService(svcname).isMe(); } catch (ex) { }
|
||||
if (meshCheck && require('win-bcd').isSafeModeService && !require('win-bcd').isSafeModeService(svcname)) { require('win-bcd').enableSafeModeService(svcname); }
|
||||
} catch (ex) { }
|
||||
|
||||
// Check the Agent Uninstall MetaData for DisplayVersion and update if not the same and only on windows
|
||||
if (process.platform == 'win32') {
|
||||
try {
|
||||
var writtenDisplayVersion = 0, actualDisplayVersion = process.versions.commitDate.toString();
|
||||
var serviceName = (_MSH().serviceName ? _MSH().serviceName : (require('_agentNodeId').serviceName() ? require('_agentNodeId').serviceName() : 'Mesh Agent'));
|
||||
try { writtenDisplayVersion = require('win-registry').QueryKey(require('win-registry').HKEY.LocalMachine, 'Software\\Microsoft\\Windows\\CurrentVersion\\Uninstall\\' + serviceName, 'DisplayVersion'); } catch (ex) { }
|
||||
if (writtenDisplayVersion != actualDisplayVersion) { try { require('win-registry').WriteKey(require('win-registry').HKEY.LocalMachine, 'Software\\Microsoft\\Windows\\CurrentVersion\\Uninstall\\' + serviceName, 'DisplayVersion', actualDisplayVersion); } catch (ex) { } }
|
||||
} catch (ex) { }
|
||||
}
|
||||
}
|
||||
|
||||
if (process.platform != 'win32') {
|
||||
|
|
@ -4573,10 +4584,11 @@ function processConsoleCommand(cmd, args, rights, sessionid) {
|
|||
if (process.platform == 'win32') {
|
||||
// Check the Agent Uninstall MetaData for correctness, as the installer may have written an incorrect value
|
||||
var writtenSize = 0;
|
||||
try { writtenSize = require('win-registry').QueryKey(require('win-registry').HKEY.LocalMachine, 'Software\\Microsoft\\Windows\\CurrentVersion\\Uninstall\\MeshCentralAgent', 'EstimatedSize'); } catch (ex) { response = ex; }
|
||||
var serviceName = (_MSH().serviceName ? _MSH().serviceName : (require('_agentNodeId').serviceName() ? require('_agentNodeId').serviceName() : 'Mesh Agent'));
|
||||
try { writtenSize = require('win-registry').QueryKey(require('win-registry').HKEY.LocalMachine, 'Software\\Microsoft\\Windows\\CurrentVersion\\Uninstall\\' + serviceName, 'EstimatedSize'); } catch (ex) { response = ex; }
|
||||
if (writtenSize != actualSize) {
|
||||
response = "Size updated from: " + writtenSize + " to: " + actualSize;
|
||||
try { require('win-registry').WriteKey(require('win-registry').HKEY.LocalMachine, 'Software\\Microsoft\\Windows\\CurrentVersion\\Uninstall\\MeshCentralAgent', 'EstimatedSize', actualSize); } catch (ex) { response = ex; }
|
||||
try { require('win-registry').WriteKey(require('win-registry').HKEY.LocalMachine, 'Software\\Microsoft\\Windows\\CurrentVersion\\Uninstall\\' + serviceName, 'EstimatedSize', actualSize); } catch (ex) { response = ex; }
|
||||
} else
|
||||
{ response = "Agent Size: " + actualSize + " kb"; }
|
||||
} else
|
||||
|
|
@ -5656,7 +5668,7 @@ function windows_execve(name, agentfilename, sessionid) {
|
|||
sendAgentMessage('Self Update failed because msvcrt.dll is missing', 3);
|
||||
return;
|
||||
}
|
||||
|
||||
|
||||
var cmd = require('_GenericMarshal').CreateVariable(process.env['windir'] + '\\system32\\cmd.exe', { wide: true });
|
||||
var args = require('_GenericMarshal').CreateVariable(3 * require('_GenericMarshal').PointerSize);
|
||||
var arg1 = require('_GenericMarshal').CreateVariable('cmd.exe', { wide: true });
|
||||
|
|
|
|||
|
|
@ -601,11 +601,11 @@ module.exports.CreateMeshUser = function (parent, db, ws, req, args, domain, use
|
|||
}
|
||||
if (typeof domain.userconsentflags == 'number') { serverinfo.consent = domain.userconsentflags; }
|
||||
if ((typeof domain.usersessionidletimeout == 'number') && (domain.usersessionidletimeout > 0)) {serverinfo.timeout = (domain.usersessionidletimeout * 60 * 1000); }
|
||||
if (typeof domain.logoutOnIdleSessionTimeout == 'boolean') {
|
||||
serverinfo.logoutOnIdleSessionTimeout = domain.logoutOnIdleSessionTimeout;
|
||||
if (typeof domain.logoutonidlesessiontimeout == 'boolean') {
|
||||
serverinfo.logoutonidlesessiontimeout = domain.logoutonidlesessiontimeout;
|
||||
} else {
|
||||
// Default
|
||||
serverinfo.logoutOnIdleSessionTimeout = true;
|
||||
serverinfo.logoutonidlesessiontimeout = true;
|
||||
}
|
||||
if (user.siteadmin === SITERIGHT_ADMIN) {
|
||||
if (parent.parent.config.settings.managealldevicegroups.indexOf(user._id) >= 0) { serverinfo.manageAllDeviceGroups = true; }
|
||||
|
|
|
|||
|
|
@ -1,6 +1,6 @@
|
|||
{
|
||||
"name": "meshcentral",
|
||||
"version": "1.1.41",
|
||||
"version": "1.1.42",
|
||||
"keywords": [
|
||||
"Remote Device Management",
|
||||
"Remote Device Monitoring",
|
||||
|
|
|
|||
|
|
@ -139,7 +139,7 @@ module.exports.pluginHandler = function (parent) {
|
|||
try {
|
||||
obj.plugins[p][hookName](...args);
|
||||
} catch (e) {
|
||||
console.log("Error occurred while running plugin hook" + p + ':' + hookName + ' (' + e + ')');
|
||||
console.log("Error occurred while running plugin hook " + p + ':' + hookName, e);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
|||
2
public/scripts/amt-wsman-0.2.0-min.js
vendored
2
public/scripts/amt-wsman-0.2.0-min.js
vendored
File diff suppressed because one or more lines are too long
|
|
@ -39,6 +39,7 @@ var meshCentralSourceFiles = [
|
|||
"../views/messenger.handlebars",
|
||||
"../views/player.handlebars",
|
||||
"../views/sharing.handlebars",
|
||||
"../views/sharing-mobile.handlebars",
|
||||
"../views/mstsc.handlebars",
|
||||
"../views/ssh.handlebars",
|
||||
"../emails/account-check.html",
|
||||
|
|
|
|||
20410
translate/translate.json
20410
translate/translate.json
File diff suppressed because it is too large
Load diff
|
|
@ -1524,8 +1524,22 @@
|
|||
function setSessionActivity() { sessionActivity = Date.now(); }
|
||||
function checkIdleSessionTimeout() {
|
||||
var delta = (Date.now() - sessionActivity);
|
||||
if (delta > serverinfo.timeout && serverinfo.logoutOnIdleSessionTimeout) {
|
||||
window.location.href = 'logout';
|
||||
if (delta > serverinfo.timeout) {
|
||||
if (desktop != null) { // Disconnect remote desktop
|
||||
desktop.Stop();
|
||||
desktopNode = desktop = null;
|
||||
}
|
||||
if (terminal != null) { // Disconnect terminal
|
||||
terminal.Stop();
|
||||
terminal = null;
|
||||
}
|
||||
if (files != null) { // Disconnect files
|
||||
files.Stop();
|
||||
files = null;
|
||||
}
|
||||
if (serverinfo.logoutonidlesessiontimeout) {
|
||||
window.location.href = 'logout';
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
|
@ -6805,7 +6819,19 @@
|
|||
if (e.shiftKey == true) { meshserver.send({ action: 'uploadagentcore', nodeid: consoleNode._id, type: 'default' }); } // Upload default core
|
||||
else if (e.altKey == true) { meshserver.send({ action: 'uploadagentcore', nodeid: consoleNode._id, type: 'clear' }); } // Clear the core
|
||||
else if (e.ctrlKey == true) { p15uploadCore2(); } // Upload the core from a file
|
||||
else { setDialogMode(2, "Perform Agent Action", 3, p15uploadCoreEx, addHtmlValue("Action", '<select id=d3coreMode style=width:230px><option value=1>' + "Upload default server core" + '</option><option value=2>' + "Clear the core" + '</option><option value=6>' + "Upload recovery core" + '</option><option value=7>' + "Upload tiny core" + '</option><option value=3>' + "Upload a core file" + '</option><option value=4>' + "Soft disconnect agent" + '</option><option value=5>' + "Hard disconnect agent" + '</option><option value=8>' + "Restart agent service" + '</select>')); }
|
||||
else {
|
||||
var htmlValue = '<select id=d3coreMode style=width:230px>' +
|
||||
'<option value=1>' + "Upload default server core" + '</option>' +
|
||||
'<option value=2>' + "Clear the core" + '</option>' +
|
||||
'<option value=3>' + "Upload a core file" + '</option>' +
|
||||
'<option value=4>' + "Soft disconnect agent" + '</option>' +
|
||||
'<option value=5>' + "Hard disconnect agent" + '</option>' +
|
||||
'<option value=6>' + "Upload recovery core" + '</option>' +
|
||||
'<option value=7>' + "Upload tiny core" + '</option>' +
|
||||
'<option value=8>' + "Restart agent service" + '</option>' +
|
||||
'<option value=9>' + "Force agent update" + '</option></select>';
|
||||
setDialogMode(2, "Perform Agent Action", 3, p15uploadCoreEx, addHtmlValue("Action", htmlValue));
|
||||
}
|
||||
}
|
||||
|
||||
function p15uploadCoreEx() {
|
||||
|
|
@ -6833,6 +6859,9 @@
|
|||
} else if (Q('d3coreMode').value == 8) {
|
||||
// Restart MeshAgent service
|
||||
meshserver.send({ action: 'msg', type: 'console', nodeid: consoleNode._id, value:'service restart' });
|
||||
} else if (Q('d3coreMode').value == 9) {
|
||||
// Update mesh agent
|
||||
meshserver.send({ action: 'updateAgents', nodeids: [consoleNode._id] });
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -2447,17 +2447,28 @@
|
|||
files.Stop();
|
||||
files = null;
|
||||
}
|
||||
if (serverinfo.logoutOnIdleSessionTimeout) {
|
||||
if (serverinfo.logoutonidlesessiontimeout) {
|
||||
window.location.href = 'logout';
|
||||
}
|
||||
} else {
|
||||
var ds = Math.round((serverinfo.timeout - delta) / 1000);
|
||||
var sessionInProgress = desktop != null || terminal != null || files != null;
|
||||
var show = serverinfo.logoutonidlesessiontimeout || sessionInProgress;
|
||||
var isLogout = serverinfo.logoutonidlesessiontimeout;
|
||||
var theText = ''; // Initialize theText
|
||||
if (ds <= 60) {
|
||||
QH('idleTimeoutNotify', '<br />' + format((ds == 1)?"1 second until disconnect":"{0} seconds until disconnect", ds));
|
||||
theText = isLogout
|
||||
? (ds == 1 ? "1 second until logout" : "{0} seconds until logout")
|
||||
: (ds == 1 ? "1 second until disconnect" : "{0} seconds until disconnect");
|
||||
} else {
|
||||
ds = Math.round(ds / 60);
|
||||
if (ds <= 5) { QH('idleTimeoutNotify', '<br />' + format((ds == 1)?"1 minute until disconnect":"{0} minutes until disconnect", ds)); }
|
||||
if (ds <= 5) {
|
||||
theText = isLogout
|
||||
? (ds == 1 ? "1 minute until logout" : "{0} minutes until logout")
|
||||
: (ds == 1 ? "1 minute until disconnect" : "{0} minutes until disconnect");
|
||||
}
|
||||
}
|
||||
QH('idleTimeoutNotify', show && theText ? '<br />' + format(theText, ds) : '');
|
||||
}
|
||||
}
|
||||
|
||||
|
|
@ -11356,7 +11367,7 @@
|
|||
}
|
||||
|
||||
function p13openfilefolder() {
|
||||
setDialogMode(2, "Open File/Folder", 3, p13openfilefolderEx, "Are you sure you want to open this file/folder on the remote devices desktop ?");
|
||||
setDialogMode(2, "Open File/Folder", 3, p13openfilefolderEx, "Are you sure you want to open this file/folder on the remote devices desktop?");
|
||||
}
|
||||
function p13openfilefolderEx() {
|
||||
var openfilefolder = "", checkboxes = document.getElementsByName('fd');
|
||||
|
|
@ -12733,7 +12744,19 @@
|
|||
if (e.shiftKey == true) { meshserver.send({ action: 'uploadagentcore', nodeids: [ consoleNode._id ], type: 'default' }); } // Upload default core
|
||||
else if (e.altKey == true) { meshserver.send({ action: 'uploadagentcore', nodeids: [ consoleNode._id ], type: 'clear' }); } // Clear the core
|
||||
else if (e.ctrlKey == true) { p15uploadCore2(); } // Upload the core from a file
|
||||
else { setDialogMode(2, "Perform Agent Action", 3, p15uploadCoreEx, addHtmlValue("Action", '<select id=d3coreMode style=width:230px><option value=1>' + "Upload default server core" + '</option><option value=2>' + "Clear the core" + '</option><option value=6>' + "Upload recovery core" + '</option><option value=7>' + "Upload tiny core" + '</option><option value=3>' + "Upload a core file" + '</option><option value=4>' + "Soft disconnect agent" + '</option><option value=5>' + "Hard disconnect agent" + '</option><option value=8>' + "Restart agent service" + '</select>')); }
|
||||
else {
|
||||
var htmlValue = '<select id=d3coreMode style=width:230px>' +
|
||||
'<option value=1>' + "Upload default server core" + '</option>' +
|
||||
'<option value=2>' + "Clear the core" + '</option>' +
|
||||
'<option value=3>' + "Upload a core file" + '</option>' +
|
||||
'<option value=4>' + "Soft disconnect agent" + '</option>' +
|
||||
'<option value=5>' + "Hard disconnect agent" + '</option>' +
|
||||
'<option value=6>' + "Upload recovery core" + '</option>' +
|
||||
'<option value=7>' + "Upload tiny core" + '</option>' +
|
||||
'<option value=8>' + "Restart agent service" + '</option>' +
|
||||
'<option value=9>' + "Force agent update" + '</option></select>';
|
||||
setDialogMode(2, "Perform Agent Action", 3, p15uploadCoreEx, addHtmlValue("Action", htmlValue));
|
||||
}
|
||||
}
|
||||
|
||||
function p15uploadCoreEx() {
|
||||
|
|
@ -12761,6 +12784,9 @@
|
|||
} else if (Q('d3coreMode').value == 8) {
|
||||
// Restart MeshAgent service
|
||||
meshserver.send({ action: 'msg', type: 'console', nodeid: consoleNode._id, value:'service restart' });
|
||||
} else if (Q('d3coreMode').value == 9) {
|
||||
// Update mesh agent
|
||||
meshserver.send({ action: 'updateAgents', nodeids: [ consoleNode._id ] });
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -2897,17 +2897,28 @@
|
|||
files.Stop();
|
||||
files = null;
|
||||
}
|
||||
if (serverinfo.logoutOnIdleSessionTimeout) {
|
||||
if (serverinfo.logoutonidlesessiontimeout) {
|
||||
window.location.href = 'logout';
|
||||
}
|
||||
} else {
|
||||
var ds = Math.round((serverinfo.timeout - delta) / 1000);
|
||||
var sessionInProgress = (desktop != null || terminal != null || files != null);
|
||||
var show = serverinfo.logoutonidlesessiontimeout || sessionInProgress;
|
||||
var isLogout = serverinfo.logoutonidlesessiontimeout;
|
||||
var theText = '';
|
||||
if (ds <= 60) {
|
||||
QH('idleTimeoutNotify', '<br />' + format((ds == 1) ? "1 second until disconnect" : "{0} seconds until disconnect", ds));
|
||||
theText = isLogout
|
||||
? (ds == 1 ? "1 second until logout" : "{0} seconds until logout")
|
||||
: (ds == 1 ? "1 second until disconnect" : "{0} seconds until disconnect");
|
||||
} else {
|
||||
ds = Math.round(ds / 60);
|
||||
if (ds <= 5) { QH('idleTimeoutNotify', '<br />' + format((ds == 1) ? "1 minute until disconnect" : "{0} minutes until disconnect", ds)); }
|
||||
if (ds <= 5) {
|
||||
theText = isLogout
|
||||
? (ds == 1 ? "1 minute until logout" : "{0} minutes until logout")
|
||||
: (ds == 1 ? "1 minute until disconnect" : "{0} minutes until disconnect");
|
||||
}
|
||||
}
|
||||
QH('idleTimeoutNotify', show && theText ? '<br />' + format(theText, ds) : '');
|
||||
}
|
||||
}
|
||||
|
||||
|
|
@ -12150,7 +12161,7 @@
|
|||
}
|
||||
|
||||
function p13openfilefolder() {
|
||||
setModalContent('xxAddAgent', "Open File/Folder", 'Are you sure you want to open this file/folder on the remote devices desktop ?');
|
||||
setModalContent('xxAddAgent', "Open File/Folder", "Are you sure you want to open this file/folder on the remote devices desktop?");
|
||||
showModal('xxAddAgentModal', 'idx_dlgOkButton', () => p13openfilefolderEx());
|
||||
}
|
||||
function p13openfilefolderEx() {
|
||||
|
|
@ -13567,7 +13578,17 @@
|
|||
else if (e.altKey == true) { meshserver.send({ action: 'uploadagentcore', nodeids: [consoleNode._id], type: 'clear' }); } // Clear the core
|
||||
else if (e.ctrlKey == true) { p15uploadCore2(); } // Upload the core from a file
|
||||
else {
|
||||
setModalContent('xxAddAgent', "Perform Agent Action", addHtmlFormFloating("Action", '<select id=d3coreMode class="form-select me-2"><option value=1>' + "Upload default server core" + '</option><option value=2>' + "Clear the core" + '</option><option value=6>' + "Upload recovery core" + '</option><option value=7>' + "Upload tiny core" + '</option><option value=3>' + "Upload a core file" + '</option><option value=4>' + "Soft disconnect agent" + '</option><option value=5>' + "Hard disconnect agent" + '</option><option value=8>' + "Restart agent service" + '</select>'));
|
||||
var htmlValue = '<select id=d3coreMode class="form-select me-2">' +
|
||||
'<option value=1>' + "Upload default server core" + '</option>' +
|
||||
'<option value=2>' + "Clear the core" + '</option>' +
|
||||
'<option value=3>' + "Upload a core file" + '</option>' +
|
||||
'<option value=4>' + "Soft disconnect agent" + '</option>' +
|
||||
'<option value=5>' + "Hard disconnect agent" + '</option>' +
|
||||
'<option value=6>' + "Upload recovery core" + '</option>' +
|
||||
'<option value=7>' + "Upload tiny core" + '</option>' +
|
||||
'<option value=8>' + "Restart agent service" + '</option>' +
|
||||
'<option value=9>' + "Force agent update" + '</option></select>';
|
||||
setModalContent('xxAddAgent', "Perform Agent Action", addHtmlFormFloating("Action", htmlValue));
|
||||
showModal('xxAddAgentModal', 'idx_dlgOkButton', p15uploadCoreEx);
|
||||
}
|
||||
}
|
||||
|
|
@ -13597,6 +13618,9 @@
|
|||
} else if (Q('d3coreMode').value == 8) {
|
||||
// Restart MeshAgent service
|
||||
meshserver.send({ action: 'msg', type: 'console', nodeid: consoleNode._id, value:'service restart' });
|
||||
} else if (Q('d3coreMode').value == 9) {
|
||||
// Update mesh agent
|
||||
meshserver.send({ action: 'updateAgents', nodeids: [consoleNode._id] });
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -746,7 +746,7 @@
|
|||
var domainUrl = '{{{domainurl}}}';
|
||||
var authCookie = '{{{authCookie}}}';
|
||||
var authRelayCookie = '{{{authRelayCookie}}}';
|
||||
var viewOnly = (parseInt('{{{viewOnly}}}') == 1);
|
||||
var viewOnly = parseInt('{{{viewOnly}}}');
|
||||
var authCookieRenewTimer = null;
|
||||
var serverPublicNamePort = '{{{serverDnsName}}}:{{{serverPublicPort}}}';
|
||||
var debugmode = false;
|
||||
|
|
@ -822,8 +822,22 @@
|
|||
function setSessionActivity() { sessionActivity = Date.now(); }
|
||||
function checkIdleSessionTimeout() {
|
||||
var delta = (Date.now() - sessionActivity);
|
||||
if (delta > serverinfo.timeout && serverinfo.logoutOnIdleSessionTimeout) {
|
||||
window.location.href = 'logout';
|
||||
if (delta > serverinfo.timeout) {
|
||||
if (desktop != null) { // Disconnect remote desktop
|
||||
desktop.Stop();
|
||||
desktopNode = desktop = null;
|
||||
}
|
||||
if (terminal != null) { // Disconnect terminal
|
||||
terminal.Stop();
|
||||
terminal = null;
|
||||
}
|
||||
if (files != null) { // Disconnect files
|
||||
files.Stop();
|
||||
files = null;
|
||||
}
|
||||
if (serverinfo.logoutonidlesessiontimeout) {
|
||||
window.location.href = 'logout';
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
|
@ -850,7 +864,7 @@
|
|||
gotKeyPressEvent = true;
|
||||
Q('softKeyboard').value = '';
|
||||
// Check what keys we are allows to send
|
||||
if (viewOnly) return false;
|
||||
if (viewOnly == 1) return false;
|
||||
return desktop.m.handleKeys(e);
|
||||
}
|
||||
if (terminal && !xxdialogMode && (xxcurrentView == 10) && (currentDevicePanel == 5) && (t !== 1)) {
|
||||
|
|
@ -878,7 +892,7 @@
|
|||
gotKeyPressEvent = false;
|
||||
Q('softKeyboard').value = '';
|
||||
// Check what keys we are allows to send
|
||||
if (viewOnly) return false;
|
||||
if (viewOnly == 1) return false;
|
||||
return desktop.m.handleKeyDown(e);
|
||||
}
|
||||
if (terminal && !xxdialogMode && (xxcurrentView == 10) && (currentDevicePanel == 5) && (t !== 1)) {
|
||||
|
|
@ -907,7 +921,7 @@
|
|||
var inputStr = Q('softKeyboard').value;
|
||||
Q('softKeyboard').value = '';
|
||||
// Check what keys we are allows to send
|
||||
if (viewOnly) return;
|
||||
if (viewOnly == 1) return;
|
||||
if ((gotKeyPressEvent == false) && (inputStr.length > 0) && desktop.m.SendKeyUnicode) {
|
||||
// This is a mobile keyboard, we need to send that is in the input control.
|
||||
var inputchar = inputStr[inputStr.length - 1].charCodeAt(0);
|
||||
|
|
@ -1067,6 +1081,7 @@
|
|||
desktop = CreateAmtRedirect(CreateAmtRemoteDesktop('Desk'), authCookie);
|
||||
desktop.debugmode = debugmode;
|
||||
desktop.onStateChanged = onDesktopStateChange;
|
||||
desktop.m.stopInput = (viewOnly == 1);
|
||||
desktop.m.bpp = (desktopsettings.encoding == 1 || desktopsettings.encoding == 3) ? 1 : 2;
|
||||
desktop.m.useZRLE = (desktopsettings.encoding < 3);
|
||||
desktop.m.showmouse = true;
|
||||
|
|
@ -1076,6 +1091,8 @@
|
|||
} else if ((contype == null) || (contype == 1) || ((contype == 3))) {
|
||||
// Setup the Mesh Agent remote desktop
|
||||
desktop = CreateAgentRedirect(null, CreateAgentRemoteDesktop('Desk'), serverPublicNamePort, authCookie, null, domainUrl);
|
||||
desktop.m.stopInput = (viewOnly == 1);
|
||||
desktop.m.mouseCursorActive(true);
|
||||
desktop.debugmode = debugmode;
|
||||
desktop.m.debugmode = debugmode;
|
||||
desktop.attemptWebRTC = attemptWebRTC;
|
||||
|
|
@ -1447,7 +1464,7 @@
|
|||
QV('deskarea4', !fullscreen);
|
||||
QV('termarea1', !fullscreen);
|
||||
QV('termarea4', !fullscreen);
|
||||
var inputAllowed = !viewOnly;
|
||||
var inputAllowed = (viewOnly == 0);
|
||||
|
||||
// Show full screen buttons if needed
|
||||
QV('deskkeybutton1', fullscreen);
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue