void HandleWindowVisibilityChangedMessage(WindowMessageReceivedArgument e) { const int Shown = 1; const int Hidden = 0; switch ((int)e.WordParameter) { case Shown: if (!isInstalled) { Install(e.WindowHandle); } break; case Hidden: if (isInstalled) { Uninstall(); } break; default: throw new InvalidOperationException( $"Invalid {nameof(e.WordParameter)} received for {nameof(Message.WM_SHOWWINDOW)} message."); } }
public void ReceiveMessageEvent(WindowMessageReceivedArgument e) { if (e.Message == Message.WM_HOTKEY && (int)e.WordParameter == hotkeyInterception.InterceptionId) { HandleHotkeyMessage(); } }
public void ReceiveMessageEvent(WindowMessageReceivedArgument e) { if ((e.Message == Message.WM_HOTKEY) && ((int) e.WordParameter == hotkeyInterception.InterceptionId)) { HandleHotkeyMessage(); } }
public void ReceiveMessageEvent(WindowMessageReceivedArgument e) { if (e.Message != Message.WM_DWMCOLORIZATIONCOLORCHANGED) { return; } UpdateAeroColor(); }
public async Task ReceiveMessageEventAsync(WindowMessageReceivedArgument eventArgument) { if (eventArgument.Message != Message.WM_CLIPBOARDUPDATE) { return; } await HandleClipboardUpdateWindowMessageAsync(); }
public Task ReceiveMessageEventAsync(WindowMessageReceivedArgument e) { if (e.Message != Message.WM_DWMCOLORIZATIONCOLORCHANGED) { return(Task.CompletedTask); } UpdateAeroColor(); return(Task.CompletedTask); }
void HandleHotkeyMessage(WindowMessageReceivedArgument e) { var interception = GetInterceptionForInterceptionId((int)e.WordParameter); if (interception != null && HotkeyFired != null) { HotkeyFired(this, new HotkeyFiredArgument( interception.KeyCode, interception.ControlNeeded)); } }
public Task ReceiveMessageEventAsync(WindowMessageReceivedArgument e) { if ((e.Message == Message.WM_HOTKEY) && ((int)e.WordParameter == hotkeyInterception.InterceptionId)) { HandleHotkeyMessage(); } return(Task.CompletedTask); }
void ResetDeltaIfNewScrollDirection(WindowMessageReceivedArgument e, short delta) { var isSwitchingDirection = GetIsSwitchingDirection( delta, e.Message); if (isSwitchingDirection) { ResetAccumulatedWheelDelta(); } }
void HandleScrollingMessage(WindowMessageReceivedArgument e) { var delta = GetDeltaFromWordParameter(e); ResetDeltaIfNewScrollDirection(e, delta); currentDelta += delta; currentScrollTypeMessage = e.Message; logger.Information("Current mouse wheel delta is " + currentDelta + "."); TriggerScrollEventsIfNeeded(); }
public void ReceiveMessageEvent(WindowMessageReceivedArgument e) { switch (e.Message) { case Message.WM_SHOWWINDOW: userInterfaceThread.Invoke(() => HandleWindowVisibilityChangedMessage(e)); break; case Message.WM_HOTKEY: HandleHotkeyMessage(e); break; } }
IntPtr WindowHookCallback(IntPtr hwnd, int msg, IntPtr wParam, IntPtr lParam, ref bool handled) { if (Enum.IsDefined(typeof(Message), msg)) { logger.Information($"Message received: [{hwnd}, {FormatMessage((Message)msg)}, {wParam}, {lParam}]"); var argument = new WindowMessageReceivedArgument(hwnd, (Message)msg, wParam, lParam); pendingMessages.Enqueue(argument); consumerLoop.Notify(HandleNextMessageAsync, cancellationTokenSource.Token); } return(IntPtr.Zero); }
void HandleExtraButtonMessage( WindowMessageReceivedArgument e) { var buttonClicked = GetExtraButtonClickedFromWordParameter(e); const int XBUTTON1 = 0x0001; const int XBUTTON2 = 0x0002; if ((buttonClicked == XBUTTON1) || (buttonClicked == XBUTTON2)) { OnWheelTilted(); } }
public void ReceiveMessageEvent( WindowMessageReceivedArgument e) { switch (e.Message) { case Message.WM_MOUSEWHEEL: case Message.WM_MOUSEHWHEEL: HandleScrollingMessage(e); break; case Message.WM_XBUTTONDOWN: HandleExtraButtonMessage(e); break; } }
public Task ReceiveMessageEventAsync(WindowMessageReceivedArgument e) { switch (e.Message) { case Message.WM_SHOWWINDOW: userInterfaceThread.Invoke(() => HandleWindowVisibilityChangedMessage(e)); break; case Message.WM_HOTKEY: HandleHotkeyMessage(e); break; } return(Task.CompletedTask); }
public void ReceiveMessageEvent(WindowMessageReceivedArgument eventArgument) { if (eventArgument.Message == Message.WM_CLIPBOARDUPDATE) { if (shouldSkipNext) { logger.Information("Clipboard update message skipped."); shouldSkipNext = false; return; } HandleClipboardUpdateWindowMessage(); } }
void HandleWindowVisibilityChangedMessage(WindowMessageReceivedArgument e) { const int Shown = 1; const int Hidden = 0; switch ((int)e.WordParameter) { case Shown: Install(e.WindowHandle); break; case Hidden: Uninstall(); break; } }
void HandleHotkeyMessage(WindowMessageReceivedArgument e) { if (!isInstalled) { return; } var interception = GetInterceptionForInterceptionId((int) e.WordParameter); if (interception != null) { HotkeyFired?.Invoke( this, new HotkeyFiredArgument( interception.Key, interception.ControlNeeded)); } }
public Task ReceiveMessageEventAsync( WindowMessageReceivedArgument e) { switch (e.Message) { case Message.WM_MOUSEWHEEL: case Message.WM_MOUSEHWHEEL: HandleScrollingMessage(e); break; case Message.WM_XBUTTONDOWN: HandleExtraButtonMessage(e); break; } return(Task.CompletedTask); }
void HandleHotkeyMessage(WindowMessageReceivedArgument e) { if (!isInstalled) { return; } var interception = GetInterceptionForInterceptionId((int)e.WordParameter); if (interception != null) { HotkeyFired?.Invoke( this, new HotkeyFiredArgument( interception.Key, interception.ControlKeyNeeded)); } }
IntPtr WindowHookCallback( IntPtr hwnd, int msg, IntPtr wParam, IntPtr lParam, ref bool handled) { if (!Enum.IsDefined(typeof(Message), msg)) { return(IntPtr.Zero); } var argument = new WindowMessageReceivedArgument(hwnd, (Message)msg, wParam, lParam); pendingMessages.Enqueue(argument); consumerLoop.Notify(HandleNextMessageAsync, cancellationTokenSource.Token); return(IntPtr.Zero); }
static short GetDeltaFromWordParameter(WindowMessageReceivedArgument e) { return GetHighOrderWord(e); }
static short GetExtraButtonClickedFromWordParameter(WindowMessageReceivedArgument e) { return GetHighOrderWord(e); }
void HandleScrollingMessage(WindowMessageReceivedArgument e) { var delta = GetDeltaFromWordParameter(e); ResetDeltaIfNewScrollDirection(e, delta); currentDelta += delta; currentScrollTypeMessage = e.Message; TriggerScrollEventsIfNeeded(); }
public void ReceiveMessageEvent(WindowMessageReceivedArgument eventArgument) { if (eventArgument.Message != Message.WM_CLIPBOARDUPDATE) { return; } if (shouldSkipNext) { logger.Information("Clipboard update message skipped."); shouldSkipNext = false; return; } HandleClipboardUpdateWindowMessage(); }
static short GetExtraButtonClickedFromWordParameter(WindowMessageReceivedArgument e) { return(GetHighOrderWord(e)); }
static short GetHighOrderWord(WindowMessageReceivedArgument e) { return (short) (e.WordParameter.ToInt32() >> 16); }
static short GetHighOrderWord(WindowMessageReceivedArgument e) { return((short)(e.WordParameter.ToInt64() >> 16)); }
void HandleWindowVisibilityChangedMessage(WindowMessageReceivedArgument e) { const int Shown = 1; const int Hidden = 0; switch ((int) e.WordParameter) { case Shown: if (!isInstalled) { Install(e.WindowHandle); } break; case Hidden: if (isInstalled) { Uninstall(); } break; default: throw new InvalidOperationException( $"Invalid {nameof(e.WordParameter)} received for {nameof(Message.WM_SHOWWINDOW)} message."); } }
static short GetDeltaFromWordParameter(WindowMessageReceivedArgument e) { return(GetHighOrderWord(e)); }
IntPtr WindowHookCallback( IntPtr hwnd, int msg, IntPtr wParam, IntPtr lParam, ref bool handled) { if (!Enum.IsDefined(typeof (Message), msg)) { return IntPtr.Zero; } logger.Information( $"Message received: [{hwnd}, {FormatMessage((Message) msg)}, {wParam}, {lParam}]"); var argument = new WindowMessageReceivedArgument(hwnd, (Message) msg, wParam, lParam); pendingMessages.Enqueue(argument); consumerLoop.Notify(HandleNextMessageAsync, cancellationTokenSource.Token); return IntPtr.Zero; }