Re: Patch for keyboard handling

2003-11-07 Thread Takuma Murakami
Harold, I think I understand your original patch better now and I think that you were probably doing it correctly, but I can't verify that right now. If this is what you were trying to do, then it probably is correct: 1) Assume that no keyboard input is in the mi queue when winWindowProc

Re: Patch for keyboard handling

2003-11-05 Thread Harold L Hunt II
Takuma, Takuma Murakami wrote: I agree with you. If the mi event queue has pending events when winRestoreModeKeyStates is called, it may fail to synchronize mode key states between XWin and Windows. However, the new code can re-sync them at the next time winRestoreModeKeyStates is called while

Re: Patch for keyboard handling

2003-11-04 Thread Takuma Murakami
Harold, Actually, now I am a little doubtful that this patch is complete. If I recall correctly, we are merely enqueueing input events into a queue that the mi layer processes later. Checking the mode key states within the X server will only indicate what the mi layer currently knows

Re: Patch for keyboard handling

2003-11-03 Thread Harold L Hunt II
Takuma Murakami wrote: I have made a patch to improve keyboard handling. Any comments would be appreciated. The changes are: 1) win.h, winkeybd.c, winwndproc.c - Improve the synchronization of mode key states between XWin and Windows. + /* Stored to get internal mode key states. Must be read

Re: Patch for keyboard handling

2003-11-03 Thread Takuma Murakami
+ /* Stored to get internal mode key states. Must be read-only. */ + static unsigned short *g_winInternalModeKeyStatesPtr = NULL; Shouldn't this be a pointer to constant data? Isn't that: static unsigned short const * g_winInternalModeKeyStatesPtr = NULL; ??? Exactly. That's what I

Re: Patch for keyboard handling

2003-11-03 Thread Harold L Hunt II
Takuma Murakami wrote: I have made a patch to improve keyboard handling. Any comments would be appreciated. The changes are: 1) win.h, winkeybd.c, winwndproc.c - Improve the synchronization of mode key states between XWin and Windows. 2) winmultiwindowwndproc.c - Enable mode key synchronization