Without this patch, dp3 and dp4 map src swizzles to the dst writemask,
which is not correct.
Before b84f560bdf59c35e093e51bfdf9a166c196d3a9b, these ops worked
despite this, because the dst register had, incorrectly, the full
writemask.
To solve this problem, `write_sm1_binary_op_dot()` is introduced,
similarly to `write_sm4_binary_op_dot()`.
This was pointed out by @nsivov in https://bugs.winehq.org/show_bug.cgi?id=54522.
--
https://gitlab.winehq.org/wine/vkd3d/-/merge_requests/107
The extension is now part of Xlib. It might be disabled through the `XKB_DISABLE=1` environment variable (https://gitlab.freedesktop.org/xorg/lib/libx11/-/blob/master/src/xkb/XKBUse…) but I don't see why we have to support that case.
I think assuming that it is always usable will make the keyboard code simpler, though I have no idea if it exists some environment without it nowadays. All recent desktop environment rely on Xkb to support keyboard layouts, especially when multiple layouts are configured (which are grouped four by four in a single X keyboard mapping, using Xkb groups).
--
v3: winex11: Assume that Xkb extension is available.
https://gitlab.winehq.org/wine/wine/-/merge_requests/2297
Introduction
------------
This is the first of (many) parts in the upstreaming of the Wayland driver for Wine. Since the amount of code and commits is large, my approach is to upstream the driver in multiple parts in a serial fashion, with each part being a cohesive (to the degree possible) set of not too many commits. When each part is reviewed and merged, I will move on to proposing the next part. My main goal with this approach is to make reviewing easier and more focused. If you have other ideas about how to improve this process for the reviewers, please let me know.
A lot of pieces need to fall into place before the driver becomes even remotely functional, so, some MRs (especially the initial ones) will be a bit more preparatory in nature. To aid in the understanding of and justification for some of the code introduced in such MRs, all the remaining driver commits are always going to be available at https://gitlab.winehq.org/afrantzis/wine/-/tree/wayland.
Part 1
-------
This MR introduces the Wayland driver PE and unixlib components with some basic code, and prepares the makedep tool to be able to handle Wayland protocol files. Please see the individual commit message for more details.
Some questions I would appreciate some feedback on in the context of this MR:
1. Should the Wayland driver build be enabled by default at this point? (currently it's explicitly opt-in with --with-wayland)
2. How should the Wayland driver build be integrated with CI? (currently piggybacking on gitlab/build-linux by adding --with-wayland)
Note that building the Wayland driver should not affect running/testing on X11/Xwayland etc, since it's placed lower in the driver priority list.
Part 2 preview: We will handle basic Wayland wl_output (i.e., display) events and populate the Wine monitor information.
--
https://gitlab.winehq.org/wine/wine/-/merge_requests/2275
Otherwise it's not clear which clauses in vkd3d_shader_compile() really
apply to other functions. For example, many of the functions currently
refering to vkd3d_shader_compile() don't even take a vkd3d_shader_compile_info
parameter.
--
v2: vkd3d-shader: Make documentation for "messages" parameters self contained.
https://gitlab.winehq.org/wine/vkd3d/-/merge_requests/110
The extension is now part of Xlib. It might be disabled through the `XKB_DISABLE=1` environment variable (https://gitlab.freedesktop.org/xorg/lib/libx11/-/blob/master/src/xkb/XKBUse…) but I don't see why we have to support that case.
I think assuming that it is always usable will make the keyboard code simpler, though I have no idea if it exists some environment without it nowadays. All recent desktop environment rely on Xkb to support keyboard layouts, especially when multiple layouts are configured (which are grouped four by four in a single X keyboard mapping, using Xkb groups).
--
https://gitlab.winehq.org/wine/wine/-/merge_requests/2297