Sweden-Number/dlls/winemac.drv
Ken Thomases feb19ee669 winemac: Ignore spurious or redundant notifications that the keyboard input source changed.
In particular, when an input method for an Asian language (e.g. Pinyin) is
selected, we were getting repeated notifications.  Querying the selected input
method upon receiving them suggested that the keyboard layout changed to U.S.
then back to Pinyin, then several redundant notifications with no apparent
change.

Since the handler for the posted KEYBOARD_CHANGED events sends WM_CANCELMODE to
the active window, this was having bad effects.

The spurious notifications can be distinguished by there being no current
text input context or client.  To detect redundant notifications, we track the
last keyboard input source and keyboard layout input source and compare with
the new ones to see if they really changed.

Signed-off-by: Ken Thomases <ken@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-05-16 12:08:57 +02:00
..
.gitattributes
Makefile.in
clipboard.c winemac: Ignore clipboard updates provoked by our own call to GetClipboardData(). 2017-02-03 09:35:18 +01:00
cocoa_app.h winemac: Ignore spurious or redundant notifications that the keyboard input source changed. 2017-05-16 12:08:57 +02:00
cocoa_app.m winemac: Ignore spurious or redundant notifications that the keyboard input source changed. 2017-05-16 12:08:57 +02:00
cocoa_clipboard.m winemac: Detect loss of ownership of the Mac pasteboard and update the clipboard manager status. 2016-10-24 11:10:18 +02:00
cocoa_display.m
cocoa_event.h winemac: Add a category on NSEvent to simplify checking if the Command key (and only that modifier) is pressed for an event. 2017-04-24 20:31:50 +02:00
cocoa_event.m winemac: Add a category on NSEvent to simplify checking if the Command key (and only that modifier) is pressed for an event. 2017-04-24 20:31:50 +02:00
cocoa_main.m
cocoa_opengl.h winemac: Reattach OpenGL contexts to a view after it has been hidden and unhidden. 2017-02-03 09:35:23 +01:00
cocoa_opengl.m winemac: Reattach OpenGL contexts to a view after it has been hidden and unhidden. 2017-02-03 09:35:23 +01:00
cocoa_status_item.m winemac.drv: Implement systray version 1-4 notifications. 2017-05-11 13:40:14 -05:00
cocoa_window.h winemac: Defer ordering a window out if it's in the process of entering or exiting Cocoa full-screen mode. 2017-04-24 20:32:11 +02:00
cocoa_window.m winemac: Move the logic for posting a KEYBOARD_CHANGED event if the keyboard type changes into the setter of the keyboardType property. 2017-05-16 12:08:55 +02:00
display.c
dragdrop.c winemac: Change macdrv_copy_pasteboard_formats() to return a C array instead of a CFArray. 2016-10-24 11:10:06 +02:00
event.c winemac: Move a window to the front when its Mac title bar is clicked. 2017-04-24 20:31:59 +02:00
gdi.c winemac: Try to read the dpi from the user key first. 2017-04-27 22:22:44 +02:00
image.c
ime.c ime: Do not send WM_IME_ENDCOMPOSITION on CPS_COMPLETE if there is no composition. 2016-12-14 20:36:16 +01:00
keyboard.c winemac: Update the keyboard layout data immediately after changing the input source. 2016-10-24 19:42:24 +02:00
macdrv.h winemac: Move a window to the front when its Mac title bar is clicked. 2017-04-24 20:31:59 +02:00
macdrv_cocoa.h winemac.drv: Implement systray version 1-4 notifications. 2017-05-11 13:40:14 -05:00
macdrv_main.c winemac: Run a single clipboard manager thread per window station, inside the explorer process. 2016-10-24 11:10:10 +02:00
macdrv_res.h
mouse.c winemac: Pass correct buffer length to RegQueryValueExW(). 2017-02-08 17:02:59 +01:00
opengl.c winemac.drv: Use EqualRect() instead of memcmp() to compare RECTs. 2016-10-04 20:33:33 +02:00
surface.c
systray.c winemac.drv: Implement systray version 1-4 notifications. 2017-05-11 13:40:14 -05:00
window.c winemac: Move a window to the front when its Mac title bar is clicked. 2017-04-24 20:31:59 +02:00
winemac.drv.spec winemac: Implement the UpdateClipboard entry point to have the clipboard manager update its status. 2016-10-24 11:10:15 +02:00
winemac.rc winemac.drv: Use neutral language for the version resource. 2017-03-22 16:13:32 +01:00