diff --git a/Server/Forms/FrmRemoteDesktop.cs b/Server/Forms/FrmRemoteDesktop.cs
index 511b6fef..efbcaa82 100644
--- a/Server/Forms/FrmRemoteDesktop.cs
+++ b/Server/Forms/FrmRemoteDesktop.cs
@@ -46,14 +46,17 @@ private void FrmRemoteDesktop_Load(object sender, EventArgs e)
new Core.Packets.ServerPackets.GetMonitors().Execute(_connectClient);
}
+ ///
+ /// Subscribes the local mouse and keyboard hooks.
+ ///
private void SubscribeEvents()
{
- if (PlatformHelper.RunningOnMono)
+ if (PlatformHelper.RunningOnMono) // Mono/Linux
{
this.KeyDown += OnKeyDown;
this.KeyUp += OnKeyUp;
}
- else
+ else // Windows
{
_keyboardHook = Hook.GlobalEvents();
_keyboardHook.KeyDown += OnKeyDown;
@@ -64,21 +67,29 @@ private void SubscribeEvents()
}
}
+ ///
+ /// Unsubscribes the local mouse and keyboard hooks.
+ ///
private void UnsubscribeEvents()
{
- if (PlatformHelper.RunningOnMono)
+ if (PlatformHelper.RunningOnMono) // Mono/Linux
{
this.KeyDown -= OnKeyDown;
this.KeyUp -= OnKeyUp;
}
- else if (_keyboardHook != null && _mouseHook != null)
+ else // Windows
{
- _keyboardHook.KeyDown -= OnKeyDown;
- _keyboardHook.KeyUp -= OnKeyUp;
- _mouseHook.MouseWheel -= OnMouseWheelMove;
-
- _mouseHook.Dispose();
- _keyboardHook.Dispose();
+ if (_keyboardHook != null)
+ {
+ _keyboardHook.KeyDown -= OnKeyDown;
+ _keyboardHook.KeyUp -= OnKeyUp;
+ _keyboardHook.Dispose();
+ }
+ if (_mouseHook != null)
+ {
+ _mouseHook.MouseWheel -= OnMouseWheelMove;
+ _mouseHook.Dispose();
+ }
}
}