aboutsummaryrefslogtreecommitdiffstats
path: root/Software/Visual_Studio/PPC/Tango.PPC.Common/RemoteDesktop
diff options
context:
space:
mode:
authorRoy Ben-Shabat <Roy@Twine-s.com>2020-03-19 02:44:55 +0200
committerRoy Ben-Shabat <Roy@Twine-s.com>2020-03-19 02:44:55 +0200
commit276c7023bc4818bf2716f2a0d10dbecc9f1ea406 (patch)
tree06140ebdde91e169e521b5aa4a8ecb59ad156a9f /Software/Visual_Studio/PPC/Tango.PPC.Common/RemoteDesktop
parentf130920bb46ed210f0450bd15e152df4fe0f1f3a (diff)
downloadTango-276c7023bc4818bf2716f2a0d10dbecc9f1ea406.tar.gz
Tango-276c7023bc4818bf2716f2a0d10dbecc9f1ea406.zip
Hide open shell
Diffstat (limited to 'Software/Visual_Studio/PPC/Tango.PPC.Common/RemoteDesktop')
-rw-r--r--Software/Visual_Studio/PPC/Tango.PPC.Common/RemoteDesktop/DefaultRemoteDesktopService.cs24
1 files changed, 21 insertions, 3 deletions
diff --git a/Software/Visual_Studio/PPC/Tango.PPC.Common/RemoteDesktop/DefaultRemoteDesktopService.cs b/Software/Visual_Studio/PPC/Tango.PPC.Common/RemoteDesktop/DefaultRemoteDesktopService.cs
index 7ccb40c3f..849befc27 100644
--- a/Software/Visual_Studio/PPC/Tango.PPC.Common/RemoteDesktop/DefaultRemoteDesktopService.cs
+++ b/Software/Visual_Studio/PPC/Tango.PPC.Common/RemoteDesktop/DefaultRemoteDesktopService.cs
@@ -12,6 +12,7 @@ using Tango.Core.DI;
using Tango.Integration.ExternalBridge;
using Tango.PPC.Common.Application;
using Tango.PPC.Common.ExternalBridge;
+using Tango.PPC.Common.OS;
using Tango.RemoteDesktop;
using Tango.RemoteDesktop.CaptureMethods;
using Tango.RemoteDesktop.Encoders;
@@ -43,6 +44,8 @@ namespace Tango.PPC.Common.RemoteDesktop
private PPCSettings _settings;
private List<RemoteDesktopClient> _clients;
private JsonSerializerSettings _jsonSettings;
+ private IOperationSystemManager _osManager;
+ private IPPCApplicationManager _appManager;
private bool _isStarted;
@@ -60,8 +63,11 @@ namespace Tango.PPC.Common.RemoteDesktop
}
}
- public DefaultRemoteDesktopService(IPPCApplicationManager applicationManager, IPPCExternalBridgeService externalBridge)
+ public DefaultRemoteDesktopService(IPPCApplicationManager applicationManager, IPPCExternalBridgeService externalBridge, IOperationSystemManager osManager)
{
+ _osManager = osManager;
+ _appManager = applicationManager;
+
_jsonSettings = new JsonSerializerSettings()
{
TypeNameHandling = TypeNameHandling.All
@@ -288,8 +294,6 @@ namespace Tango.PPC.Common.RemoteDesktop
[ExternalBridgeRequestHandlerMethod(typeof(KeyboardStateRequest))]
public async void OnKeyboardStateRequestReceived(KeyboardStateRequest request, String token, ExternalBridgeReceiver receiver)
{
- Debug.WriteLine($"{request.EventType}, {request.Key}, {request.IsShiftDown}");
-
if (request.EventType == KeyboardEventType.Down)
{
KeyboardController.KeyDown(request.Key, request.IsCtrlDown, request.IsShiftDown, request.IsAltDown);
@@ -305,6 +309,20 @@ namespace Tango.PPC.Common.RemoteDesktop
}
}
+ [ExternalBridgeRequestHandlerMethod(typeof(RemoteDesktopCommandRequest))]
+ public async void OnRemoteDesktopCommandRequest(RemoteDesktopCommandRequest request, String token, ExternalBridgeReceiver receiver)
+ {
+ switch (request.Command)
+ {
+ case RemoteDesktopCommand.HideAndOpenShell:
+ _osManager.OpenShell();
+ _appManager.SetWindowState(System.Windows.WindowState.Minimized);
+ break;
+ }
+
+ await receiver.SendGenericResponse(new RemoteDesktopCommandResponse(), token);
+ }
+
private async void _engine_FrameReceived(object sender, ScreenCaptureFrameReceivedEventArgs<RasterFrame> e)
{
_initialPacket = new RemoteDesktopPacket()