[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
bug#19994: 25.0.50; Unicode keyboard input on Windows
From: |
Eli Zaretskii |
Subject: |
bug#19994: 25.0.50; Unicode keyboard input on Windows |
Date: |
Sun, 02 Aug 2015 17:42:30 +0300 |
> Date: Sat, 01 Aug 2015 10:40:05 +0300
> From: Eli Zaretskii <eliz@gnu.org>
> Cc: 19994@debbugs.gnu.org
>
> Here's one problem evidently caused by the new code: invoke "emacs -Q"
> and type "M-x" after it starts => you will see "x" being inserted into
> *scratch*. This doesn't happen if w32-use-fallback-wm-chars-method is
> non-nil.
>
> This is a one-time problem: all the subsequent "M-x" are handled
> correctly. It sounds like some initialization somewhere is missing?
I've found that the simple change below fixes this problem. I
committed it; if you feel it's not the right fix, please propose an
alternative.
Thanks.
commit 0afb8fab99951262e81d6095302de4c84d7e8847
Author: Eli Zaretskii <eliz@gnu.org>
Date: Sun Aug 2 17:40:19 2015 +0300
Fix handling of 1st keystroke on MS-Windows
* src/w32fns.c (globals_of_w32fns): Initialize after_deadkey to -1.
This is needed to correctly handle the session's first keystroke,
if it has any modifiers. (Bug#19994)
diff --git a/src/w32fns.c b/src/w32fns.c
index 1c72974..31d23c4 100644
--- a/src/w32fns.c
+++ b/src/w32fns.c
@@ -9442,6 +9442,8 @@ typedef USHORT (WINAPI * CaptureStackBackTrace_proc)
(ULONG, ULONG, PVOID *,
else
w32_unicode_gui = 0;
+ after_deadkey = -1;
+
/* MessageBox does not work without this when linked to comctl32.dll 6.0. */
InitCommonControls ();