[xorg-commit-diffs] xc/programs/Xserver/hw/xwin winglobals.c, 1.1.2.16, 1.1.2.17 winkeybd.c, 1.1.4.1.2.6, 1.1.4.1.2.7 winkeyhook.c, 1.1.2.1, 1.1.2.2 winkeymap.h, 1.1.2.1, 1.1.2.2 winkeynames.h, 1.1.2.1, 1.1.2.2 winwndproc.c, 1.1.4.1.2.19, 1.1.4.1.2.20

Harold L Hunt II xorg-commit at pdx.freedesktop.org
Sat Apr 3 14:21:59 PST 2004


Committed by: harold

Update of /cvs/xorg/xc/programs/Xserver/hw/xwin
In directory pdx:/tmp/cvs-serv29262

Modified Files:
      Tag: CYGWIN
	winglobals.c winkeybd.c winkeyhook.c winkeymap.h winkeynames.h 
	winwndproc.c 
Log Message:
Properly pass Alt+Tab to X.  Setup handling for VK_LWIN and VK_RWIN, but these aren't in our modmap yet (XK_Super_L, XK_Super_R) nor are they in our keymap yet, so pressing the Windows key still does nothing.

Index: winglobals.c
===================================================================
RCS file: /cvs/xorg/xc/programs/Xserver/hw/xwin/Attic/winglobals.c,v
retrieving revision 1.1.2.16
retrieving revision 1.1.2.17
diff -u -d -r1.1.2.16 -r1.1.2.17
--- a/winglobals.c	3 Apr 2004 07:03:17 -0000	1.1.2.16
+++ b/winglobals.c	3 Apr 2004 22:21:56 -0000	1.1.2.17
@@ -62,6 +62,7 @@
 DWORD		g_dwCurrentThreadID = 0;
 Bool		g_fKeyboardHookLL = FALSE;
 HHOOK		g_hhookKeyboardLL = NULL;
+HWND		g_hwndKeyboardFocus = NULL;
 
 
 /*
@@ -111,6 +112,7 @@
 winInitializeGlobals (void)
 {
   g_dwCurrentThreadID = GetCurrentThreadId ();
+  g_hwndKeyboardFocus = NULL;
 #ifdef XWIN_CLIPBOARD
   g_fClipboardLaunched = FALSE;
   g_fClipboardStarted = FALSE;

Index: winkeybd.c
===================================================================
RCS file: /cvs/xorg/xc/programs/Xserver/hw/xwin/winkeybd.c,v
retrieving revision 1.1.4.1.2.6
retrieving revision 1.1.4.1.2.7
diff -u -d -r1.1.4.1.2.6 -r1.1.4.1.2.7
--- a/winkeybd.c	17 Mar 2004 20:31:51 -0000	1.1.4.1.2.6
+++ b/winkeybd.c	3 Apr 2004 22:21:56 -0000	1.1.4.1.2.7
@@ -42,7 +42,6 @@
 #define XKB_IN_SERVER
 #include "XKBsrv.h"
 #endif
-#include "../../Xext/xf86miscproc.h"
 
 static Bool g_winKeyState[NUM_KEYCODES];
 
@@ -130,11 +129,18 @@
 	  pModMap[i] = ScrollLockMask;
 	  break;
 
+#if 0
+	case XK_Super_L:
+	case XK_Super_R:
+	  pModMap[i] = Mod4Mask;
+	  break;
+#else
 	/* Hirigana/Katakana toggle */
 	case XK_Kana_Lock:
 	case XK_Kana_Shift:
 	  pModMap[i] = KanaMask;
 	  break;
+#endif
 
 	/* alternate toggle for multinational support */
 	case XK_Mode_switch:
@@ -268,8 +274,6 @@
         }
 #endif
 
-      
-
       g_winInternalModeKeyStatesPtr = &(pDeviceInt->key->state);
       break;
       
@@ -415,7 +419,7 @@
 
       /* Get time of current message */
       lTime = GetMessageTime ();
-      			
+
       /* Look for fake Ctrl_L preceeding an Alt_R press. */
       fReturn = PeekMessage (&msgNext, NULL,
 			     WM_KEYDOWN, WM_KEYDOWN,

Index: winkeyhook.c
===================================================================
RCS file: /cvs/xorg/xc/programs/Xserver/hw/xwin/Attic/winkeyhook.c,v
retrieving revision 1.1.2.1
retrieving revision 1.1.2.2
diff -u -d -r1.1.2.1 -r1.1.2.2
--- a/winkeyhook.c	3 Apr 2004 05:01:21 -0000	1.1.2.1
+++ b/winkeyhook.c	3 Apr 2004 22:21:56 -0000	1.1.2.2
@@ -37,6 +37,7 @@
 
 extern HHOOK			g_hhookKeyboardLL;
 extern DWORD			g_dwCurrentThreadID;
+extern HWND			g_hwndKeyboardFocus;
 
 
 /*
@@ -47,6 +48,14 @@
 winKeyboardMessageHookLL (int iCode, WPARAM wParam, LPARAM lParam);
 
 
+#ifndef LLKHF_EXTENDED
+# define LLKHF_EXTENDED  0x00000001
+#endif
+#ifndef LLKHF_UP
+# define LLKHF_UP  0x00000080
+#endif
+
+
 /*
  * KeyboardMessageHook
  */
@@ -54,26 +63,53 @@
 static LRESULT CALLBACK
 winKeyboardMessageHookLL (int iCode, WPARAM wParam, LPARAM lParam)
 {
-  BOOL			fEatKeystroke = FALSE;
+  BOOL			fPassKeystroke = FALSE;
   PKBDLLHOOKSTRUCT	p = (PKBDLLHOOKSTRUCT) lParam;
 
-  /* Swallow keystrokes only for our app */
+  /* Pass keystrokes on to our main message loop */
   if (iCode == HC_ACTION)
     {
       switch (wParam)
 	{
 	case WM_KEYDOWN:  case WM_SYSKEYDOWN:
 	case WM_KEYUP:    case WM_SYSKEYUP: 
-	  p = (PKBDLLHOOKSTRUCT) lParam;
-
-	  fEatKeystroke = 
-	    (p->vkCode == VK_TAB) && ((p->flags & LLKHF_ALTDOWN) != 0);
+	  fPassKeystroke = 
+	    (p->vkCode == VK_TAB) && ((p->flags & LLKHF_ALTDOWN) != 0)
+	    || (p->vkCode == VK_LWIN) || (p->vkCode == VK_RWIN);
 	  break;
 	}
     }
-  
-  return (fEatKeystroke ? 1 : CallNextHookEx (NULL, iCode, wParam, 
-					      lParam));
+
+  /*
+   * Pass message on to our main message loop.
+   * We process this immediately with SendMessage so that the keystroke
+   * appears in, hopefully, the correct order.
+   */
+  if (fPassKeystroke)
+    {
+      LPARAM		lParamKey = 0x0;
+
+      /* Construct the lParam from KBDLLHOOKSTRUCT */
+      lParamKey = lParamKey | (0x0000FFFF & 0x00000001); /* Repeat count */
+      lParamKey = lParamKey | (0x00FF0000 & (p->scanCode << 16));
+      lParamKey = lParamKey
+	| (0x01000000 & ((p->flags & LLKHF_EXTENDED) << 23));
+      lParamKey = lParamKey
+	| (0x20000000
+	   & ((p->flags & LLKHF_ALTDOWN) << 24));
+      lParamKey = lParamKey | (0x80000000 & ((p->flags & LLKHF_UP) << 24));
+
+      /* Send message to our main window that has the keyboard focus */
+      PostMessage (g_hwndKeyboardFocus,
+		   (UINT) wParam,
+		   (WPARAM) p->vkCode,
+		   lParamKey);
+
+      return 1;
+    }
+
+  /* Call next hook */
+  return CallNextHookEx (NULL, iCode, wParam, lParam);
 }
 
 

Index: winkeymap.h
===================================================================
RCS file: /cvs/xorg/xc/programs/Xserver/hw/xwin/Attic/winkeymap.h,v
retrieving revision 1.1.2.1
retrieving revision 1.1.2.2
diff -u -d -r1.1.2.1 -r1.1.2.2
--- a/winkeymap.h	15 Mar 2004 04:33:23 -0000	1.1.2.1
+++ b/winkeymap.h	3 Apr 2004 22:21:56 -0000	1.1.2.2
@@ -7,9 +7,6 @@
 /* $XConsortium: xf86Keymap.h /main/14 1996/02/21 17:38:47 kaleb $ */
 
 static KeySym map[NUM_KEYCODES * GLYPHS_PER_KEY] = {
-
-#if !defined(__SOL8__) && (!defined(sun) || defined(i386))
-
     /* 0x00 */  NoSymbol,       NoSymbol,	NoSymbol,	NoSymbol,
     /* 0x01 */  XK_Escape,      NoSymbol,	NoSymbol,	NoSymbol,
     /* 0x02 */  XK_1,           XK_exclam,	NoSymbol,	NoSymbol,
@@ -138,286 +135,4 @@
     /* 0x7d */  XK_backslash,	XK_bar,		NoSymbol,	NoSymbol,
     /* 0x7e */  NoSymbol,	NoSymbol,	NoSymbol,	NoSymbol,
     /* 0x7f */  NoSymbol,	NoSymbol,	NoSymbol,	NoSymbol,
-
-#else /* SunOS */
-
-/* Assumes a US English keyboard as default - sorry 'bout that
- *
- * Hopefully it'll be enough someone can have a sorta working
- * keyboard, if they're not using XKB
- *
- * DWH 9/12/99
- */
-
-    /* 0x00 */  NoSymbol,	NoSymbol,	NoSymbol,	NoSymbol,
-    /* 0x01 */  XK_quoteleft,	XK_asciitilde,	NoSymbol,	NoSymbol,
-    /* 0x02 */  XK_1,		XK_exclam,	NoSymbol,	NoSymbol,
-    /* 0x03 */  XK_2,		XK_at,		NoSymbol,	NoSymbol,
-    /* 0x04 */  XK_3,		XK_numbersign,	NoSymbol,	NoSymbol,
-    /* 0x05 */  XK_4,		XK_dollar,	NoSymbol,	NoSymbol,
-    /* 0x06 */  XK_5,		XK_percent,	NoSymbol,	NoSymbol,
-    /* 0x07 */  XK_6,		XK_asciicircum,	NoSymbol,	NoSymbol,
-    /* 0x08 */  XK_7,		XK_ampersand,	NoSymbol,	NoSymbol,
-    /* 0x09 */  XK_8,		XK_asterisk,	NoSymbol,	NoSymbol,
-    /* 0x0a */  XK_9,		XK_parenleft,	NoSymbol,	NoSymbol,
-    /* 0x0b */  XK_0,		XK_parenright,	NoSymbol,	NoSymbol,
-    /* 0x0c */  XK_minus,	XK_underscore,	NoSymbol,	NoSymbol,
-    /* 0x0d */  XK_equal,	XK_plus,	NoSymbol,	NoSymbol,
-    /* 0x0e */  NoSymbol,	NoSymbol,	NoSymbol,	NoSymbol,
-    /* 0x0f */  XK_BackSpace,	NoSymbol,	NoSymbol,	NoSymbol,
-    /* 0x10 */  XK_Tab,		NoSymbol,	NoSymbol,	NoSymbol,
-    /* 0x11 */  XK_Q,		NoSymbol,	NoSymbol,	NoSymbol,
-    /* 0x12 */  XK_W,		NoSymbol,	NoSymbol,	NoSymbol,
-    /* 0x13 */  XK_E,		NoSymbol,	NoSymbol,	NoSymbol,
-    /* 0x14 */  XK_R,		NoSymbol,	NoSymbol,	NoSymbol,
-    /* 0x15 */  XK_T,		NoSymbol,	NoSymbol,	NoSymbol,
-    /* 0x16 */  XK_Y,		NoSymbol,	NoSymbol,	NoSymbol,
-    /* 0x17 */  XK_U,		NoSymbol,	NoSymbol,	NoSymbol,
-    /* 0x18 */  XK_I,		NoSymbol,	NoSymbol,	NoSymbol,
-    /* 0x19 */  XK_O,		NoSymbol,	NoSymbol,	NoSymbol,
-    /* 0x1a */  XK_P,		NoSymbol,	NoSymbol,	NoSymbol,
-    /* 0x1b */  XK_bracketleft,	XK_braceleft,	NoSymbol,	NoSymbol,
-    /* 0x1c */  XK_bracketright,XK_braceright,	NoSymbol,	NoSymbol,
-    /* 0x1d */  XK_backslash,	XK_bar,		NoSymbol,	NoSymbol,
-    /* 0x1e */  XK_Caps_Lock,	NoSymbol,	NoSymbol,	NoSymbol,
-    /* 0x1f */  XK_A,		NoSymbol,	NoSymbol,	NoSymbol,
-    /* 0x20 */  XK_S,		NoSymbol,	NoSymbol,	NoSymbol,
-    /* 0x21 */  XK_D,		NoSymbol,	NoSymbol,	NoSymbol,
-    /* 0x22 */  XK_F,		NoSymbol,	NoSymbol,	NoSymbol,
-    /* 0x23 */  XK_G,		NoSymbol,	NoSymbol,	NoSymbol,
-    /* 0x24 */  XK_H,		NoSymbol,	NoSymbol,	NoSymbol,
-    /* 0x25 */  XK_J,		NoSymbol,	NoSymbol,	NoSymbol,
-    /* 0x26 */  XK_K,		NoSymbol,	NoSymbol,	NoSymbol,
-    /* 0x27 */  XK_L,		NoSymbol,	NoSymbol,	NoSymbol,
-    /* 0x28 */  XK_semicolon,	XK_colon,	NoSymbol,	NoSymbol,
-    /* 0x29 */  XK_quoteright,	XK_quotedbl,	NoSymbol,	NoSymbol,
-    /* 0x2a */  NoSymbol,	NoSymbol,	NoSymbol,	NoSymbol,
-    /* 0x2b */  XK_Return,	NoSymbol,	NoSymbol,	NoSymbol,
-    /* 0x2c */  XK_Shift_L,	NoSymbol,	NoSymbol,	NoSymbol,
-    /* 0x2d */  NoSymbol,	NoSymbol,	NoSymbol,	NoSymbol,
-    /* 0x2e */  XK_Z,		NoSymbol,	NoSymbol,	NoSymbol,
-    /* 0x2f */  XK_X,		NoSymbol,	NoSymbol,	NoSymbol,
-    /* 0x30 */  XK_C,		NoSymbol,	NoSymbol,	NoSymbol,
-    /* 0x31 */  XK_V,		NoSymbol,	NoSymbol,	NoSymbol,
-    /* 0x32 */  XK_B,		NoSymbol,	NoSymbol,	NoSymbol,
-    /* 0x33 */  XK_N,		NoSymbol,	NoSymbol,	NoSymbol,
-    /* 0x34 */  XK_M,		NoSymbol,	NoSymbol,	NoSymbol,
-    /* 0x35 */  XK_comma,	XK_less,	NoSymbol,	NoSymbol,
-    /* 0x36 */  XK_period,	XK_greater,	NoSymbol,	NoSymbol,
-    /* 0x37 */  XK_slash,	XK_question,	NoSymbol,	NoSymbol,
-    /* 0x38 */  NoSymbol,	NoSymbol,	NoSymbol,	NoSymbol,
-    /* 0x39 */  XK_Shift_R,	NoSymbol,	NoSymbol,	NoSymbol,
-    /* 0x3a */  XK_Control_L,	NoSymbol,	NoSymbol,	NoSymbol,
-    /* 0x3b */  NoSymbol,	NoSymbol,	NoSymbol,	NoSymbol,
-    /* 0x3c */  XK_Alt_L,	XK_Meta_L,	NoSymbol,	NoSymbol,
-    /* 0x3d */  XK_space,	NoSymbol,	NoSymbol,	NoSymbol,
-    /* 0x3e */  XK_Alt_R,	XK_Meta_R,	NoSymbol,	NoSymbol,
-    /* 0x3f */  NoSymbol,	NoSymbol,	NoSymbol,	NoSymbol,
-    /* 0x40 */  XK_Control_R,	NoSymbol,	NoSymbol,	NoSymbol,
-    /* 0x41 */  NoSymbol,	NoSymbol,	NoSymbol,	NoSymbol,
-    /* 0x42 */  NoSymbol,	NoSymbol,	NoSymbol,	NoSymbol,
-    /* 0x43 */  NoSymbol,	NoSymbol,	NoSymbol,	NoSymbol,
-    /* 0x44 */  NoSymbol,	NoSymbol,	NoSymbol,	NoSymbol,
-    /* 0x45 */  NoSymbol,	NoSymbol,	NoSymbol,	NoSymbol,
-    /* 0x46 */  NoSymbol,	NoSymbol,	NoSymbol,	NoSymbol,
-    /* 0x47 */  NoSymbol,	NoSymbol,	NoSymbol,	NoSymbol,
-    /* 0x48 */  NoSymbol,	NoSymbol,	NoSymbol,	NoSymbol,
-    /* 0x49 */  NoSymbol,	NoSymbol,	NoSymbol,	NoSymbol,
-    /* 0x4a */  NoSymbol,	NoSymbol,	NoSymbol,	NoSymbol,
-    /* 0x4b */  XK_Insert,	NoSymbol,	NoSymbol,	NoSymbol,
-    /* 0x4c */  XK_Delete,	NoSymbol,	NoSymbol,	NoSymbol,
-    /* 0x4d */  NoSymbol,	NoSymbol,	NoSymbol,	NoSymbol,
-    /* 0x4e */  NoSymbol,	NoSymbol,	NoSymbol,	NoSymbol,
-    /* 0x4f */  XK_Left,	NoSymbol,	NoSymbol,	NoSymbol,
-    /* 0x50 */  XK_Home,	NoSymbol,	NoSymbol,	NoSymbol,
-    /* 0x51 */  XK_End,		NoSymbol,	NoSymbol,	NoSymbol,
-    /* 0x52 */  NoSymbol,	NoSymbol,	NoSymbol,	NoSymbol,
-    /* 0x53 */  XK_Up,		NoSymbol,	NoSymbol,	NoSymbol,
-    /* 0x54 */  XK_Down,	NoSymbol,	NoSymbol,	NoSymbol,
-    /* 0x55 */  XK_Prior,	NoSymbol,	NoSymbol,	NoSymbol,
-    /* 0x56 */  XK_Next,	NoSymbol,	NoSymbol,	NoSymbol,
-    /* 0x57 */  NoSymbol,	NoSymbol,	NoSymbol,	NoSymbol,
-    /* 0x58 */  NoSymbol,	NoSymbol,	NoSymbol,	NoSymbol,
-    /* 0x59 */  XK_Right,	NoSymbol,	NoSymbol,	NoSymbol,
-    /* 0x5a */  XK_Num_Lock,	NoSymbol,	NoSymbol,	NoSymbol,
-    /* 0x5b */  XK_KP_Home,	XK_KP_7,	NoSymbol,	NoSymbol,
-    /* 0x5c */  XK_KP_Left,	XK_KP_4,	NoSymbol,	NoSymbol,
-    /* 0x5d */  XK_KP_End,	XK_KP_1,	NoSymbol,	NoSymbol,
-    /* 0x5e */  NoSymbol,	NoSymbol,	NoSymbol,	NoSymbol,
-    /* 0x5f */  XK_KP_Divide,	NoSymbol,	NoSymbol,	NoSymbol,
-    /* 0x60 */  XK_KP_Up,	XK_KP_8,	NoSymbol,	NoSymbol,
-    /* 0x61 */  NoSymbol,	XK_KP_5,	NoSymbol,	NoSymbol,
-    /* 0x62 */  XK_KP_Down,	XK_KP_2,	NoSymbol,	NoSymbol,
-    /* 0x63 */  XK_KP_Insert,	XK_KP_0,	NoSymbol,	NoSymbol,
-    /* 0x64 */  XK_KP_Multiply,	NoSymbol,	NoSymbol,	NoSymbol,
-    /* 0x65 */  XK_KP_Prior,	XK_KP_9,	NoSymbol,	NoSymbol,
-    /* 0x66 */  XK_KP_Right,	XK_KP_6,	NoSymbol,	NoSymbol,
-    /* 0x67 */  XK_KP_Next,	XK_KP_3,	NoSymbol,	NoSymbol,
-    /* 0x68 */  XK_KP_Delete,	XK_KP_Decimal,	NoSymbol,	NoSymbol,
-    /* 0x69 */  XK_KP_Subtract,	NoSymbol,	NoSymbol,	NoSymbol,
-    /* 0x6a */  XK_KP_Add,	NoSymbol,	NoSymbol,	NoSymbol,
-    /* 0x6b */  NoSymbol,	NoSymbol,	NoSymbol,	NoSymbol,
-    /* 0x6c */  XK_KP_Enter,	NoSymbol,	NoSymbol,	NoSymbol,
-    /* 0x6d */  NoSymbol,	NoSymbol,	NoSymbol,	NoSymbol,
-    /* 0x6e */  XK_Escape,	NoSymbol,	NoSymbol,	NoSymbol,
-    /* 0x6f */  NoSymbol,	NoSymbol,	NoSymbol,	NoSymbol,
-    /* 0x70 */  XK_F1,		NoSymbol,	NoSymbol,	NoSymbol,
-    /* 0x71 */  XK_F2,		NoSymbol,	NoSymbol,	NoSymbol,
-    /* 0x72 */  XK_F3,		NoSymbol,	NoSymbol,	NoSymbol,
-    /* 0x73 */  XK_F4,		NoSymbol,	NoSymbol,	NoSymbol,
-    /* 0x74 */  XK_F5,		NoSymbol,	NoSymbol,	NoSymbol,
-    /* 0x75 */  XK_F6,		NoSymbol,	NoSymbol,	NoSymbol,
-    /* 0x76 */  XK_F7,		NoSymbol,	NoSymbol,	NoSymbol,
-    /* 0x77 */  XK_F8,		NoSymbol,	NoSymbol,	NoSymbol,
-    /* 0x78 */  XK_F9,		NoSymbol,	NoSymbol,	NoSymbol,
-    /* 0x79 */  XK_F10,		NoSymbol,	NoSymbol,	NoSymbol,
-    /* 0x7a */  XK_F11,		NoSymbol,	NoSymbol,	NoSymbol,
-    /* 0x7b */  XK_F12,		NoSymbol,	NoSymbol,	NoSymbol,
-    /* 0x7c */  XK_Print,	NoSymbol,	NoSymbol,	NoSymbol,
-    /* 0x7d */  XK_Scroll_Lock,	NoSymbol,	NoSymbol,	NoSymbol,
-    /* 0x7e */  XK_Pause,	NoSymbol,	NoSymbol,	NoSymbol,
-    /* 0x7f */  NoSymbol,	NoSymbol,	NoSymbol,	NoSymbol,
-
-#endif /* SunOS */
-
-};
-
-#if !defined(Lynx) && \
-    !defined(__UNIXOS2__) && \
-    !defined(__mips__) && \
-    !defined(linux) && \
-    !defined(CSRG_BASED) && \
-    !defined(__CYGWIN__) && \
-    !defined(__SOL8__) && \
-    (!defined(sun) || defined(i386))
-
-static KeySym map84[NUM_KEYCODES * GLYPHS_PER_KEY] = {
-    /* 0x00 */  NoSymbol,       NoSymbol,	NoSymbol,	NoSymbol,
-    /* 0x01 */  XK_Escape,      NoSymbol,	NoSymbol,	NoSymbol,
-    /* 0x02 */  XK_1,           XK_exclam,	NoSymbol,	NoSymbol,
-    /* 0x03 */  XK_2,           XK_at,		NoSymbol,	NoSymbol,
-    /* 0x04 */  XK_3,           XK_numbersign,	NoSymbol,	NoSymbol,
-    /* 0x05 */  XK_4,           XK_dollar,	NoSymbol,	NoSymbol,
-    /* 0x06 */  XK_5,           XK_percent,	NoSymbol,	NoSymbol,
-    /* 0x07 */  XK_6,           XK_asciicircum,	NoSymbol,	NoSymbol,
-    /* 0x08 */  XK_7,           XK_ampersand,	NoSymbol,	NoSymbol,
-    /* 0x09 */  XK_8,           XK_asterisk,	NoSymbol,	NoSymbol,
-    /* 0x0a */  XK_9,           XK_parenleft,	NoSymbol,	NoSymbol,
-    /* 0x0b */  XK_0,           XK_parenright,	NoSymbol,	NoSymbol,
-    /* 0x0c */  XK_minus,       XK_underscore,	NoSymbol,	NoSymbol,
-    /* 0x0d */  XK_equal,       XK_plus,	NoSymbol,	NoSymbol,
-    /* 0x0e */  XK_BackSpace,   NoSymbol,	NoSymbol,	NoSymbol,
-    /* 0x0f */  XK_Tab,         NoSymbol,	NoSymbol,	NoSymbol,
-    /* 0x10 */  XK_Q,           NoSymbol,	NoSymbol,	NoSymbol,
-    /* 0x11 */  XK_W,           NoSymbol,	NoSymbol,	NoSymbol,
-    /* 0x12 */  XK_E,           NoSymbol,	NoSymbol,	NoSymbol,
-    /* 0x13 */  XK_R,           NoSymbol,	NoSymbol,	NoSymbol,
-    /* 0x14 */  XK_T,           NoSymbol,	NoSymbol,	NoSymbol,
-    /* 0x15 */  XK_Y,           NoSymbol,	NoSymbol,	NoSymbol,
-    /* 0x16 */  XK_U,           NoSymbol,	NoSymbol,	NoSymbol,
-    /* 0x17 */  XK_I,           NoSymbol,	NoSymbol,	NoSymbol,
-    /* 0x18 */  XK_O,           NoSymbol,	NoSymbol,	NoSymbol,
-    /* 0x19 */  XK_P,           NoSymbol,	NoSymbol,	NoSymbol,
-    /* 0x1a */  XK_bracketleft, XK_braceleft,	NoSymbol,	NoSymbol,
-    /* 0x1b */  XK_bracketright,XK_braceright,	NoSymbol,	NoSymbol,
-    /* 0x1c */  XK_Return,      NoSymbol,	NoSymbol,	NoSymbol,
-    /* 0x1d */  XK_Control_L,   NoSymbol,	NoSymbol,	NoSymbol,
-    /* 0x1e */  XK_A,           NoSymbol,	NoSymbol,	NoSymbol,
-    /* 0x1f */  XK_S,           NoSymbol,	NoSymbol,	NoSymbol,
-    /* 0x20 */  XK_D,           NoSymbol,	NoSymbol,	NoSymbol,
-    /* 0x21 */  XK_F,           NoSymbol,	NoSymbol,	NoSymbol,
-    /* 0x22 */  XK_G,           NoSymbol,	NoSymbol,	NoSymbol,
-    /* 0x23 */  XK_H,           NoSymbol,	NoSymbol,	NoSymbol,
-    /* 0x24 */  XK_J,           NoSymbol,	NoSymbol,	NoSymbol,
-    /* 0x25 */  XK_K,           NoSymbol,	NoSymbol,	NoSymbol,
-    /* 0x26 */  XK_L,           NoSymbol,	NoSymbol,	NoSymbol,
-    /* 0x27 */  XK_semicolon,   XK_colon,	NoSymbol,	NoSymbol,
-    /* 0x28 */  XK_quoteright,  XK_quotedbl,	NoSymbol,	NoSymbol,
-    /* 0x29 */  XK_quoteleft,	XK_asciitilde,	NoSymbol,	NoSymbol,
-    /* 0x2a */  XK_Shift_L,     NoSymbol,	NoSymbol,	NoSymbol,
-    /* 0x2b */  XK_backslash,   XK_bar,		NoSymbol,	NoSymbol,
-    /* 0x2c */  XK_Z,           NoSymbol,	NoSymbol,	NoSymbol,
-    /* 0x2d */  XK_X,           NoSymbol,	NoSymbol,	NoSymbol,
-    /* 0x2e */  XK_C,           NoSymbol,	NoSymbol,	NoSymbol,
-    /* 0x2f */  XK_V,           NoSymbol,	NoSymbol,	NoSymbol,
-    /* 0x30 */  XK_B,           NoSymbol,	NoSymbol,	NoSymbol,
-    /* 0x31 */  XK_N,           NoSymbol,	NoSymbol,	NoSymbol,
-    /* 0x32 */  XK_M,           NoSymbol,	NoSymbol,	NoSymbol,
-    /* 0x33 */  XK_comma,       XK_less,	NoSymbol,	NoSymbol,
-    /* 0x34 */  XK_period,      XK_greater,	NoSymbol,	NoSymbol,
-    /* 0x35 */  XK_slash,       XK_question,	NoSymbol,	NoSymbol,
-    /* 0x36 */  XK_Shift_R,     NoSymbol,	NoSymbol,	NoSymbol,
-    /* 0x37 */  XK_KP_Multiply, NoSymbol,	NoSymbol,	NoSymbol,
-    /* 0x38 */  XK_Alt_L,	XK_Meta_L,	NoSymbol,	NoSymbol,
-    /* 0x39 */  XK_space,       NoSymbol,	NoSymbol,	NoSymbol,
-    /* 0x3a */  XK_Caps_Lock,   NoSymbol,	NoSymbol,	NoSymbol,
-    /* 0x3b */  XK_F1,          NoSymbol,	NoSymbol,	NoSymbol,
-    /* 0x3c */  XK_F2,          NoSymbol,	NoSymbol,	NoSymbol,
-    /* 0x3d */  XK_F3,          NoSymbol,	NoSymbol,	NoSymbol,
-    /* 0x3e */  XK_F4,          NoSymbol,	NoSymbol,	NoSymbol,
-    /* 0x3f */  XK_F5,          NoSymbol,	NoSymbol,	NoSymbol,
-    /* 0x40 */  XK_F6,          NoSymbol,	NoSymbol,	NoSymbol,
-    /* 0x41 */  XK_F7,          NoSymbol,	NoSymbol,	NoSymbol,
-    /* 0x42 */  XK_F8,          NoSymbol,	NoSymbol,	NoSymbol,
-    /* 0x43 */  XK_F9,          NoSymbol,	NoSymbol,	NoSymbol,
-    /* 0x44 */  XK_F10,         NoSymbol,	NoSymbol,	NoSymbol,
-    /* 0x45 */  XK_Num_Lock,    NoSymbol,	NoSymbol,	NoSymbol,
-    /* 0x46 */  XK_Scroll_Lock,	NoSymbol,	NoSymbol,	NoSymbol,
-    /* 0x47 */  XK_KP_Home,	XK_KP_7,	NoSymbol,	NoSymbol,
-    /* 0x48 */  XK_KP_Up,	XK_KP_8,	NoSymbol,	NoSymbol,
-    /* 0x49 */  XK_KP_Prior,	XK_KP_9,	NoSymbol,	NoSymbol,
-    /* 0x4a */  XK_KP_Subtract, NoSymbol,	NoSymbol,	NoSymbol,
-    /* 0x4b */  XK_KP_Left,	XK_KP_4,	NoSymbol,	NoSymbol,
-    /* 0x4c */  NoSymbol,	XK_KP_5,	NoSymbol,	NoSymbol,
-    /* 0x4d */  XK_KP_Right,	XK_KP_6,	NoSymbol,	NoSymbol,
-    /* 0x4e */  XK_KP_Add,      NoSymbol,	NoSymbol,	NoSymbol,
-    /* 0x4f */  XK_KP_End,	XK_KP_1,	NoSymbol,	NoSymbol,
-    /* 0x50 */  XK_KP_Down,	XK_KP_2,	NoSymbol,	NoSymbol,
-    /* 0x51 */  XK_KP_Next,	XK_KP_3,	NoSymbol,	NoSymbol,
-    /* 0x52 */  XK_KP_Insert,	XK_KP_0,	NoSymbol,	NoSymbol,
-    /* 0x53 */  XK_KP_Delete,	XK_KP_Decimal,	NoSymbol,	NoSymbol,
-    /* 0x54 */  XK_Sys_Req,	NoSymbol,	NoSymbol,	NoSymbol,
-    /* 0x55 */  NoSymbol,	NoSymbol,	NoSymbol,	NoSymbol,
-    /* 0x56 */  XK_less,	XK_greater,	NoSymbol,	NoSymbol,
-    /* 0x57 */  XK_F11,		NoSymbol,	NoSymbol,	NoSymbol,
-    /* 0x58 */  XK_F12,		NoSymbol,	NoSymbol,	NoSymbol,
-    /* 0x59 */  NoSymbol,	NoSymbol,	NoSymbol,	NoSymbol,
-    /* 0x5a */  NoSymbol,	NoSymbol,	NoSymbol,	NoSymbol,
-    /* 0x5b */  NoSymbol,	NoSymbol,	NoSymbol,	NoSymbol,
-    /* 0x5c */  NoSymbol,	NoSymbol,	NoSymbol,	NoSymbol,
-    /* 0x5d */  NoSymbol,	NoSymbol,	NoSymbol,	NoSymbol,
-    /* 0x5e */  NoSymbol,	NoSymbol,	NoSymbol,	NoSymbol,
-    /* 0x5f */  NoSymbol,	NoSymbol,	NoSymbol,	NoSymbol,
-    /* 0x60 */  NoSymbol,	NoSymbol,	NoSymbol,	NoSymbol,
-    /* 0x61 */  NoSymbol,	NoSymbol,	NoSymbol,	NoSymbol,
-    /* 0x62 */  NoSymbol,	NoSymbol,	NoSymbol,	NoSymbol,
-    /* 0x63 */  NoSymbol,	NoSymbol,	NoSymbol,	NoSymbol,
-    /* 0x64 */  XK_KP_Enter,	NoSymbol,	NoSymbol,	NoSymbol,
-    /* 0x65 */  XK_Control_R,	NoSymbol,	NoSymbol,	NoSymbol,
-    /* 0x66 */  XK_Pause,	NoSymbol,	NoSymbol,	NoSymbol,
-    /* 0x67 */  XK_Print,	NoSymbol,	NoSymbol,	NoSymbol,
-    /* 0x68 */  XK_KP_Divide,	NoSymbol,	NoSymbol,	NoSymbol,
-    /* 0x69 */  XK_Alt_R,	XK_Meta_R,	NoSymbol,	NoSymbol,
-    /* 0x6a */  XK_Break,	NoSymbol,	NoSymbol,	NoSymbol,
-    /* 0x6b */  XK_Meta_L,	NoSymbol,	NoSymbol,	NoSymbol,
-    /* 0x6c */  XK_Meta_R,	NoSymbol,	NoSymbol,	NoSymbol,
-    /* 0x6d */  XK_Menu,	NoSymbol,	NoSymbol,	NoSymbol,
-    /* 0x6e */  NoSymbol,	NoSymbol,	NoSymbol,	NoSymbol,
-    /* 0x6f */  NoSymbol,	NoSymbol,	NoSymbol,	NoSymbol,
-    /* 0x70 */  NoSymbol,	NoSymbol,	NoSymbol,	NoSymbol,
-    /* 0x71 */  NoSymbol,	NoSymbol,	NoSymbol,	NoSymbol,
-    /* 0x72 */  NoSymbol,	NoSymbol,	NoSymbol,	NoSymbol,
-    /* 0x73 */  NoSymbol,	NoSymbol,	NoSymbol,	NoSymbol,
-    /* 0x74 */  NoSymbol,	NoSymbol,	NoSymbol,	NoSymbol,
-    /* 0x75 */  NoSymbol,	NoSymbol,	NoSymbol,	NoSymbol,
-    /* 0x76 */  NoSymbol,	NoSymbol,	NoSymbol,	NoSymbol,
-    /* 0x77 */  NoSymbol,	NoSymbol,	NoSymbol,	NoSymbol,
-    /* 0x78 */  NoSymbol,	NoSymbol,	NoSymbol,	NoSymbol,
-    /* 0x79 */  NoSymbol,	NoSymbol,	NoSymbol,	NoSymbol,
-    /* 0x7a */  NoSymbol,	NoSymbol,	NoSymbol,	NoSymbol,
-    /* 0x7b */  NoSymbol,	NoSymbol,	NoSymbol,	NoSymbol,
-    /* 0x7c */  NoSymbol,	NoSymbol,	NoSymbol,	NoSymbol,
-    /* 0x7d */  NoSymbol,	NoSymbol,	NoSymbol,	NoSymbol,
-    /* 0x7e */  NoSymbol,	NoSymbol,	NoSymbol,	NoSymbol,
 };
-#endif

Index: winkeynames.h
===================================================================
RCS file: /cvs/xorg/xc/programs/Xserver/hw/xwin/Attic/winkeynames.h,v
retrieving revision 1.1.2.1
retrieving revision 1.1.2.2
diff -u -d -r1.1.2.1 -r1.1.2.2
--- a/winkeynames.h	15 Mar 2004 04:33:23 -0000	1.1.2.1
+++ b/winkeynames.h	3 Apr 2004 22:21:56 -0000	1.1.2.2
@@ -29,7 +29,6 @@
 #define XK_TECHNICAL
 #define	XK_KATAKANA
 #include "keysym.h"
-#include "XF86keysym.h"
 
 #define GLYPHS_PER_KEY	4
 #define NUM_KEYCODES	248

Index: winwndproc.c
===================================================================
RCS file: /cvs/xorg/xc/programs/Xserver/hw/xwin/winwndproc.c,v
retrieving revision 1.1.4.1.2.19
retrieving revision 1.1.4.1.2.20
diff -u -d -r1.1.4.1.2.19 -r1.1.4.1.2.20
--- a/winwndproc.c	3 Apr 2004 05:00:46 -0000	1.1.4.1.2.19
+++ b/winwndproc.c	3 Apr 2004 22:21:56 -0000	1.1.4.1.2.20
@@ -53,6 +53,7 @@
 extern Bool			g_fClipboard;
 extern HWND			g_hDlgDepthChange;
 extern Bool			g_fKeyboardHookLL;
+extern HWND			g_hwndKeyboardFocus;
 
 
 /*
@@ -912,6 +913,9 @@
       if (s_pScreenPriv == NULL || s_pScreenInfo->fIgnoreInput)
 	break;
 
+      /* Save handle of our main window that last received focus */
+      g_hwndKeyboardFocus = hwnd;
+
       /* Restore the state of all mode keys */
       winRestoreModeKeyStates ();
 
@@ -924,6 +928,9 @@
       if (s_pScreenPriv == NULL || s_pScreenInfo->fIgnoreInput)
 	break;
 
+      /* Clear handle of our main window that last received focus */
+      g_hwndKeyboardFocus = NULL;
+
       /* Release any pressed keys */
       winKeybdReleaseKeys ();
 




More information about the xorg-commit-diffs mailing list