diff src/w32term.c @ 91098:bbf4813494da

(w32_read_socket) [WM_UNICHAR]: Handle as MULTIBYTE_CHAR_KEYSTROKE_EVENT.
author Jason Rumney <jasonr@gnu.org>
date Sat, 17 Nov 2007 03:00:47 +0000
parents 880960b70474
children 3b9ed57b1424
line wrap: on
line diff
--- a/src/w32term.c	Sat Nov 17 03:00:27 2007 +0000
+++ b/src/w32term.c	Sat Nov 17 03:00:47 2007 +0000
@@ -4768,6 +4768,7 @@
 	    }
 	  break;
 
+        case WM_UNICHAR:
 	case WM_SYSCHAR:
 	case WM_CHAR:
 	  f = x_window_to_frame (dpyinfo, msg.msg.hwnd);
@@ -4784,8 +4785,16 @@
 	      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;