diff --git a/Remotely_Agent/Remotely_Agent.csproj b/Remotely_Agent/Remotely_Agent.csproj
index 0c5bc1ce..b416883f 100644
--- a/Remotely_Agent/Remotely_Agent.csproj
+++ b/Remotely_Agent/Remotely_Agent.csproj
@@ -5,13 +5,13 @@
netcoreapp2.2
false
Copyright © 2019 Translucency Software
- Background service that maintains a connection to the DoXM server. The service is used for remote support and maintenance by this computer's administrators.
+ Background service that maintains a connection to the Remotely server. The service is used for remote support and maintenance by this computer's administrators.
https://doxm.app/EULA
Jared Goodwin
- DoXM Client
+ Remotely Agent
Translucency Software
1.0.0.0
- https://doxm.app
+ https://remotely.lucency.co
AnyCPU;x86;x64
Remotely_Agent
Remotely_Agent
diff --git a/Remotely_Agent/Services/DeviceSocket.cs b/Remotely_Agent/Services/DeviceSocket.cs
index d2270c2c..b1c6670d 100644
--- a/Remotely_Agent/Services/DeviceSocket.cs
+++ b/Remotely_Agent/Services/DeviceSocket.cs
@@ -272,13 +272,14 @@ namespace Remotely_Agent.Services
{
var users = OSUtils.StartProcessWithResults("users", "");
var username = users?.Split()?.FirstOrDefault()?.Trim();
+ var homeDir = OSUtils.StartProcessWithResults("sudo", $"-u {username} env | grep HOME")?.Split('=')?.Last();
var psi = new ProcessStartInfo()
{
FileName = "sudo",
Arguments = $"-u {username} {rcBinaryPath} -mode Unattended -requester {requesterID} -serviceid {serviceID} -host {Utilities.GetConnectionInfo().Host} -desktop default & disown"
};
psi.Environment.Add("DISPLAY", ":0");
- psi.Environment.Add("XAUTHORITY", $"/home/{username}/.Xauthority");
+ psi.Environment.Add("XAUTHORITY", $"{homeDir}/.Xauthority");
var casterProc = Process.Start(psi);
casterProc.WaitForExit();
}
@@ -324,13 +325,14 @@ namespace Remotely_Agent.Services
{
var users = OSUtils.StartProcessWithResults("users", "");
var username = users?.Split()?.FirstOrDefault()?.Trim();
+ var homeDir = OSUtils.StartProcessWithResults("sudo", $"-u {username} env | grep HOME")?.Split('=')?.Last();
var psi = new ProcessStartInfo()
{
FileName = "sudo",
Arguments = $"-u {username} {rcBinaryPath} -mode Unattended -requester {requesterID} -serviceid {serviceID} -host {Utilities.GetConnectionInfo().Host} -relaunch true -desktop default -viewers {String.Join(",", viewerIDs)} & disown"
};
psi.Environment.Add("DISPLAY", ":0");
- psi.Environment.Add("XAUTHORITY", $"/home/{username}/.Xauthority");
+ psi.Environment.Add("XAUTHORITY", $"{homeDir}/.Xauthority");
var casterProc = Process.Start(psi);
casterProc.WaitForExit();
}
diff --git a/Remotely_Desktop/Properties/AssemblyInfo.cs b/Remotely_Desktop/Properties/AssemblyInfo.cs
index 71c74559..a9b0d810 100644
--- a/Remotely_Desktop/Properties/AssemblyInfo.cs
+++ b/Remotely_Desktop/Properties/AssemblyInfo.cs
@@ -7,12 +7,12 @@ using System.Windows;
// General Information about an assembly is controlled through the following
// set of attributes. Change these attribute values to modify the information
// associated with an assembly.
-[assembly: AssemblyTitle("Remotely_Desktop")]
-[assembly: AssemblyDescription("")]
+[assembly: AssemblyTitle("Remotely Desktop")]
+[assembly: AssemblyDescription("Desktop client for allowing remote control via the Remotely server.")]
[assembly: AssemblyConfiguration("")]
-[assembly: AssemblyCompany("")]
-[assembly: AssemblyProduct("Remotely_Desktop")]
-[assembly: AssemblyCopyright("Copyright © 2019")]
+[assembly: AssemblyCompany("Translucency Software")]
+[assembly: AssemblyProduct("Remotely Desktop")]
+[assembly: AssemblyCopyright("Copyright © 2019 Translucency Software")]
[assembly: AssemblyTrademark("")]
[assembly: AssemblyCulture("")]
diff --git a/Remotely_ScreenCast.Core/Capture/ImageUtils.cs b/Remotely_ScreenCast.Core/Capture/ImageUtils.cs
index bc70a66f..a9478712 100644
--- a/Remotely_ScreenCast.Core/Capture/ImageUtils.cs
+++ b/Remotely_ScreenCast.Core/Capture/ImageUtils.cs
@@ -99,7 +99,12 @@ namespace Remotely_ScreenCast.Core.Capture
if (left < right && top < bottom)
{
- // Bounding box is valid
+ // Bounding box is valid. Padding is necessary to prevent artifacts from
+ // moving windows.
+ left = Math.Max(left - 10, 0);
+ top = Math.Max(top - 10, 0);
+ right = Math.Min(right + 10, width);
+ bottom = Math.Min(bottom + 10, height);
return new Rectangle(left, top, right - left, bottom - top);
}
diff --git a/Remotely_ScreenCast.Linux/Remotely_ScreenCast.Linux.csproj b/Remotely_ScreenCast.Linux/Remotely_ScreenCast.Linux.csproj
index 84bd79d2..e33fe74f 100644
--- a/Remotely_ScreenCast.Linux/Remotely_ScreenCast.Linux.csproj
+++ b/Remotely_ScreenCast.Linux/Remotely_ScreenCast.Linux.csproj
@@ -3,6 +3,7 @@
Exe
netcoreapp2.2
+ Allows unattended remote control via the Remotely server.
diff --git a/Remotely_ScreenCast.Win/Properties/AssemblyInfo.cs b/Remotely_ScreenCast.Win/Properties/AssemblyInfo.cs
index ec84f021..59f21d7f 100644
--- a/Remotely_ScreenCast.Win/Properties/AssemblyInfo.cs
+++ b/Remotely_ScreenCast.Win/Properties/AssemblyInfo.cs
@@ -5,12 +5,12 @@ using System.Runtime.InteropServices;
// General Information about an assembly is controlled through the following
// set of attributes. Change these attribute values to modify the information
// associated with an assembly.
-[assembly: AssemblyTitle("RemoteControl")]
-[assembly: AssemblyDescription("")]
+[assembly: AssemblyTitle("Remotely ScreenCast")]
+[assembly: AssemblyDescription("Allows unattended remote control via the Remotely server.")]
[assembly: AssemblyConfiguration("")]
-[assembly: AssemblyCompany("")]
-[assembly: AssemblyProduct("RemoteControl")]
-[assembly: AssemblyCopyright("Copyright © 2019")]
+[assembly: AssemblyCompany("Translucency Software")]
+[assembly: AssemblyProduct("Remotely ScreenCast")]
+[assembly: AssemblyCopyright("Copyright © 2019 Translucency Software")]
[assembly: AssemblyTrademark("")]
[assembly: AssemblyCulture("")]
diff --git a/Remotely_Server/CurrentVersion.txt b/Remotely_Server/CurrentVersion.txt
index d859acee..c35d2803 100644
--- a/Remotely_Server/CurrentVersion.txt
+++ b/Remotely_Server/CurrentVersion.txt
@@ -1 +1 @@
-2019.04.12.0814
+2019.04.16.1057