This MR uses the cursor-shapes-v1 protocol to tell the compositor which system
cursor shape to use. If a shape match is not found (or cursor-shapes-v1
is not available) we fall back to setting the cursor buffer from the
Windows cursor data as before.
The second commit implements support for a "UseSystemCursors" driver option, similar
to what winex11 has. Since this is the first winewayland driver option we also introduce
all the related registry reading code.
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=57648
--
Side note: The registry code is a copy from winex11, and is the third copy in the
codebase (x11, mac, wayland). Perhaps it's worth introducing a common
ntuser function to perform the option reading for the drivers, something like
`NtUserGetDriverOption("X11 Driver", buffer, buffer_size, TRUE /* whether to read app specific option if present */)`.
With such a function there is the concern about each call reopening the registry, but we can see if that's actually a problem and how a different API (or some sort of caching) may help.
--
v6: winewayland: Use system cursor shapes when possible.
https://gitlab.winehq.org/wine/wine/-/merge_requests/7678
In kernel32/tests/loader.c, child_process will try to write to stdout after
calling LdrShutdownProcess. LdrShutdownProcess calls DLL_PROCESS_DETACH on
msvcrt, which calls msvcrt_free_io, which frees the ioinfo blocks. So to
prevent use after free in this case, we don't free them.
* * *
Supersedes !8273
--
v4: msvcrt: Don't release io memory in msvcrt_free_io during shutdown.
https://gitlab.winehq.org/wine/wine/-/merge_requests/8288
These patches replace the existing libtxc_dxtn texture compression/decompression source files with new libraries that can handle more formats. This is will be helpful when we begin to share code with d3dx10/d3dx11, as we will be able to use bcdec to decode all supported compressed formats, and stb_dxt to compress BC1-BC5.
--
v3: d3dx9: Replace txc_compress_dxtn with stb_dxt.
d3dx9: Replace txc_fetch_dxtn with bcdec.
https://gitlab.winehq.org/wine/wine/-/merge_requests/8226