summaryrefslogtreecommitdiff
path: root/src/w32.c
diff options
context:
space:
mode:
authorRaffael Stocker <r.stocker@mnet-mail.de>2024-03-04 19:06:07 +0100
committerEli Zaretskii <eliz@gnu.org>2024-03-14 10:01:06 +0200
commite7b1743b798cab338e0fa7b98dfb20c0ba7204b1 (patch)
tree20f0ac8ef16258964c66b4f8f1a907f1263d3ef9 /src/w32.c
parent1b94f800ae34de5f4e72682a81de1d42bdda9276 (diff)
Fix resetting keyboard hook state on MS-Windows
Register session notifications so Emacs is notified when the computer is being locked, as required to reset the low level keyboard hook state. (Bug#69083). * src/w32term.h: * src/w32fns.c (setup_w32_kbdhook, remove_w32_kbdhook) (w32_wnd_proc, globals_of_w32fns, maybe_pass_notification): Register and manage session notifications in GUI Emacs. * src/w32console.c (initialize_w32_display, find_ime_window): * src/w32xfns.c (drain_message_queue): Register notifications and reset keyboard hook state in console Emacs. * src/w32.c (term_ntproc): Un-register session notifications when terminating.
Diffstat (limited to 'src/w32.c')
-rw-r--r--src/w32.c5
1 files changed, 5 insertions, 0 deletions
diff --git a/src/w32.c b/src/w32.c
index df5465c2135..d34ab70f82d 100644
--- a/src/w32.c
+++ b/src/w32.c
@@ -10392,11 +10392,16 @@ check_windows_init_file (void)
}
}
+/* from w32fns.c */
+extern void remove_w32_kbdhook (void);
+
void
term_ntproc (int ignored)
{
(void)ignored;
+ remove_w32_kbdhook ();
+
term_timers ();
/* shutdown the socket interface if necessary */