Mercurial > emacs
changeset 102394:f978553ef98f
(w32_wnd_proc): Only ignore IME messages for the
characters that have already been read.
author | Jason Rumney <jasonr@gnu.org> |
---|---|
date | Wed, 04 Mar 2009 13:36:34 +0000 |
parents | 5e36a5376d8a |
children | 8311418d8d1f |
files | src/w32fns.c |
diffstat | 1 files changed, 6 insertions(+), 3 deletions(-) [+] |
line wrap: on
line diff
--- a/src/w32fns.c Wed Mar 04 13:02:54 2009 +0000 +++ b/src/w32fns.c Wed Mar 04 13:36:34 2009 +0000 @@ -3159,10 +3159,13 @@ my_post_msg (&wmsg, hwnd, WM_UNICHAR, (WPARAM) buffer[i], lParam); } - /* We output the whole string above, so ignore following ones - until we are notified of the end of composition. */ - ignore_ime_char = 1; + /* Ignore the messages for the rest of the + characters in the string that was output above. */ + ignore_ime_char = (size / sizeof (wchar_t)) - 1; } + else + ignore_ime_char--; + break; case WM_IME_ENDCOMPOSITION: