From: Jason Rumney Date: Sat, 17 Nov 2007 03:00:47 +0000 (+0000) Subject: (w32_read_socket) [WM_UNICHAR]: Handle as MULTIBYTE_CHAR_KEYSTROKE_EVENT. X-Git-Tag: emacs-pretest-23.0.90~8295^2~266 X-Git-Url: http://git.eshelyaron.com/gitweb/?a=commitdiff_plain;h=a60b033380f657f2af669cc08d12f7ace82fdd67;p=emacs.git (w32_read_socket) [WM_UNICHAR]: Handle as MULTIBYTE_CHAR_KEYSTROKE_EVENT. --- diff --git a/src/w32term.c b/src/w32term.c index 93e81b7bdb4..857887397fe 100644 --- a/src/w32term.c +++ b/src/w32term.c @@ -4768,6 +4768,7 @@ w32_read_socket (sd, expected, hold_quit) } break; + case WM_UNICHAR: case WM_SYSCHAR: case WM_CHAR: f = x_window_to_frame (dpyinfo, msg.msg.hwnd); @@ -4784,8 +4785,16 @@ w32_read_socket (sd, expected, hold_quit) if (temp_index == sizeof temp_buffer / sizeof (short)) temp_index = 0; temp_buffer[temp_index++] = msg.msg.wParam; - inev.kind = ASCII_KEYSTROKE_EVENT; - inev.code = msg.msg.wParam; + if (msg.msg.message == WM_UNICHAR) + { + inev.kind = MULTIBYTE_CHAR_KEYSTROKE_EVENT; + inev.code = msg.msg.wParam; + } + else + { + inev.kind = ASCII_KEYSTROKE_EVENT; + inev.code = msg.msg.wParam; + } inev.modifiers = msg.dwModifiers; XSETFRAME (inev.frame_or_window, f); inev.timestamp = msg.msg.time;