This adds a new Input tab to winecfg, moving the mouse grab settings there. Then this makes winex11 keyboard layout detection configurable as well, allowing the user to override the keyboard layout detection if for some reason it was incorrect.
This isn't solving anything yet, but I then intend to make keyboard scancode detection configurable as well, and optional.
As I described in https://www.winehq.org/pipermail/wine-devel/2020-October/175641.html, I believe that X11 keyboard keycode to scancode mapping is most of the time a fixed mapping, except in some rare cases.
Trying to detect it from the keyboard layout will never work reliably, especially nowadays where keyboard layouts are completely made up from Linux IME (for instance a GNOME language settings with up to four keyboard layouts translates to a single Xkb mapping using groups for each layout). The X11 keycode are remapped only in some more rarely used implementations, such as XVNC and we should try to detect it only in such cases.
Many Windows applications are depending on accurate scancodes, and making the mapping detection optional (and disabled by default) will solve all the issues we have in the most common case (https://bugs.winehq.org/show_bug.cgi?id=30984, https://bugs.winehq.org/show_bug.cgi?id=45605).
--
https://gitlab.winehq.org/wine/wine/-/merge_requests/2062
When count = 0, returned value may become -1 which seems wrong in
the case of successful process_events() call. Also MSDN suggests
that `count` may be a valid return value in this case. When -1 is
returned, it may cause SetLastError to -1 as well which is not a
valid error code AFAIK.
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=54405
--
v2: wine32u: move count fixup out of MsgWaitForMultipleObjectsEx drivers
https://gitlab.winehq.org/wine/wine/-/merge_requests/2067
--
v4: wined3d: Disable 64-bit integer support.
wined3d: Require shader cull distance support to create a feature level 10.0 device.
wined3d: Require shader clip distance support to create a feature level 10.0 device.
wined3d: Require gather offset support to create a feature level 11.0 device.
wined3d: Require fragment shader image stores and atomics to create a feature level 11.0 device.
https://gitlab.winehq.org/wine/wine/-/merge_requests/2010
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=53176
1) The async test is broken on Windows 10 1507. This appears to be a trend among WinRT dlls. I'm thinking that we can add macro definitions for each testbot VM to avoid having to skip tests that would otherwise be working fine, and just greater control over tests in general.
2) The provider file that contains `interface IWineAsyncInfoImpl` is likely going to be reused again in the future. Perhaps a new file can be added in the include/wine folder to prevent duplicate code? I can do this in a separate merge request and cleanup the existing provider files.
3) All the check_bool_async tests return a random async_id so I skipped them. Testbot example: https://testbot.winehq.org/JobDetails.pl?Key=127232&f208=exe32.report#k208
--
v8: cryptowinrt/tests: Add IKeyCredentialManagerStatics_IsSupportedAsync tests.
cryptowinrt: Implement IKeyCredentialManagerStatics_IsSupportedAsync.
cryptowinrt: Import IAsyncOperation from windows.gaming.input.
cryptowinrt: Stub IKeyCredentialManagerStatics interface.
cryptowinrt: Add private.h file.
cryptowinrt/tests: Add ICryptographicBufferStatics interface test.
include: Add windows.security.credentials.idl file.
https://gitlab.winehq.org/wine/wine/-/merge_requests/1714
tools.h uses HAVE_SYS_SYSCTL_H as an include guard which, like others
set by configure, is defined in config.h. Make sure we pull that in or
we never get to include sys/sysctl.h.
--
https://gitlab.winehq.org/wine/wine/-/merge_requests/2053