Detecting the host layout languages from their Xkb identifiers, and introducing a new driver interface using the KBDTABLES structure to translate them to Win32.
--
v7: winewayland.drv: Implement CAPLOK and SGCAPS in KBDTABLES.
win32u: Support SGCAPS attributes in KBDTABLES.
winewayland.drv: Add scan2vk tables for azerty, qwertz and dvorak.
winewayland.drv: Translate Xkb keyboard layouts to KBDTABLES.
win32u: Allow KBDTABLES conversion from CTRL + ALT to WCHAR.
win32u: Force US layout in ToUnicode when CTRL is pressed.
win32u: Avoid accessing NULL key name string pointer.
win32u: Introduce KbdLayerDescriptor user driver entry.
winewayland.drv: Enumerate Xkb layouts and create matching HKL.
winewayland.drv: Handle and parse Xkb keymap events.
https://gitlab.winehq.org/wine/wine/-/merge_requests/4455
Moving most systray code out of winex11, and removing the need for a custom export in winemac. Maybe winemac could perhaps later use that new interface as well but I didn't want to mess with it too much.
--
v2: explorer: Remove now unnecessary wine_notify_icon support.
winex11: Use the new SystrayDock driver interface.
explorer: Use layered windows for the docked systray icons.
win32u: Introduce new SystrayDock driver entry points.
winemac: Use the new NotifyIcon user driver interface.
win32u: Introduce a new NtUserSystemTrayCall message call.
explorer: Hide the standalone systray window on close.
explorer: Always set the systray icon tooltip text.
https://gitlab.winehq.org/wine/wine/-/merge_requests/4540