private static void UnsubscribeFromKeyboardEvents() { if (keyboardHookHandle == 0) // Already unsubscribed. { return; } if (keyDownHandler != null || keyUpHandler != null) // We have listeners. { return; } int result = Win.UnhookWindowsHookEx(keyboardHookHandle); keyboardHookHandle = 0; keyboardDelegate = null; HandleAnyErrors(result); }
private static void TryUnsubscribeFromMouseEvents() { if (mouseHookHandle == 0) // Already unsubscribed. { return; } if (WeHaveMouseEventListeners) { return; } int result = Win.UnhookWindowsHookEx(mouseHookHandle); mouseHookHandle = 0; mouseDelegate = null; HandleAnyErrors(result); }