When we are clipping (due to fullscreen), certain operations are bugged (such as creating another window on top, grabbing the window during a size-move operation, changing mouse capture, etc) so we must temporarily unclip first.
Seems unclipping it temporarily during such operation is enough to fix this.
This probably wasn't very obvious in practice because most times "fullscreen" means a single non-resizeable window with no menus and so on (e.g. fullscreen games), but that's not always the case.
--
https://gitlab.winehq.org/wine/wine/-/merge_requests/1153
Second version of !33, taking Zeb's suggestions.
The refactoring allowed to encompass all remaining features of the patch series in these 4 patches.
The remaining patches (PART 3/3) just contain additional tests:
https://gitlab.winehq.org/fcasas/vkd3d/-/commits/complex_broadcasts_4/
--
v2: vkd3d-shader/hlsl: Support explicit cast between component-wise compatible types.
vkd3d-shader/hlsl: Support implicit casts between component-wise equal types.
vkd3d-shader/hlsl: Remove incorrect criteria for accepting implicit casts.
vkd3d-shader/hlsl: Handle complex types in add_cast().
tests: Add additional tests for implicit casts that should fail.
vkd3d-shader/hlsl: Rename "t1" and "t2" arguments as "src" and "dst".
https://gitlab.winehq.org/wine/vkd3d/-/merge_requests/35