]> git.eshelyaron.com Git - emacs.git/commitdiff
(w32_read_socket) [WM_UNICHAR]: Handle as MULTIBYTE_CHAR_KEYSTROKE_EVENT.
authorJason Rumney <jasonr@gnu.org>
Sat, 17 Nov 2007 03:00:47 +0000 (03:00 +0000)
committerJason Rumney <jasonr@gnu.org>
Sat, 17 Nov 2007 03:00:47 +0000 (03:00 +0000)
src/w32term.c

index 93e81b7bdb4713859692b4e8839cd37725660df3..857887397fee24b54155426e885892b72c7f27d9 100644 (file)
@@ -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;