Later patches are on https://gitlab.winehq.org/giomasce/wine/-/commits/chianti, though they still require some cleanup and cosmetic changes.
Currently the D3D12 swapchain accesses the low level Vulkan queue backing a vkd3d `ID3D12CommandQueue` using the `vkd3d_acquire_vk_queue()` call in order to submit frames for presentation. This causes a number of bugs because `vkd3d_acquire_vk_queue()` lets the caller submit to the Vulkan queue even if some operations are enqueued in the vkd3d internal op queue, which can lead to a frame being presented even if drawing work on it isn't finished (and not even queued, from the viewpoint of Vulkan!).
In order to fix this, I propose to introduce to add a few calls to vkd3d (currently [in this branch](https://gitlab.winehq.org/giomasce/vkd3d/-/commits/mongibello)), to allow the caller to enqueue calls to `vkQueueSubmit()` and `vkQueuePresentKHR()` through the vkd3d internal queue. The D3D12 swapchain would then use this new API instead of directly calling `vkQueueSubmit()` and `vkQueuePresentKHR()` as it does now.
Patches in this MR don't implement those changes yet, but prepare the ground with some tests and light refactoring.
--
https://gitlab.winehq.org/wine/wine/-/merge_requests/3165
--
v3: winegstreamer: Lookup stream handler result using a dedicated helper.
winegstreamer: Rename winegstreamer_stream_handler to stream_handler.
winegstreamer: Create and destroy result entries using dedicated helpers.
winegstreamer: Lookup stream descriptors before starting streams.
winegstreamer: Keep a reference on the media source start descriptor.
maintainers: Assume GStreamer media source maintainership.
https://gitlab.winehq.org/wine/wine/-/merge_requests/3100
This MR supercedes !1895 and !3073 as a solution to bug [#50771](https://bugs.winehq.org/show_bug.cgi?id=50771). Rather than fixing the problem of Wine's inability to modify the attributes of read-only files, this patch set instead implements `FileDispositionInformationEx` which the Msys2 and Cygwin runtime libriries can use to avoid needing to modify attributes.
All the flags of `FileDispositionInformationEx` are implemented with the exception of `FILE_DISPOSITION_FORCE_IMAGE_SECTION_CHECK`.
This MR improves upon !3073 by implementing `FILE_DISPOSITION_POSIX_SEMANTICS` and `FILE_DISPOSITION_ON_CLOSE` where the previous MR only implemented `FILE_DISPOSITION_DELETE` and `FILE_DISPOSITION_IGNORE_READONLY_ATTRIBUTE`.
--
v3: ntdll: Implement FILE_DISPOSITION_POSIX_SEMANTICS
server: Replace unlink member of closed_fd with disp_flags
ntdll/tests: Add tests for FILE_DISPOSITION_POSIX_SEMANTICS
ntdll: Implement FILE_DISPOSITION_ON_CLOSE
ntdll/tests: Add tests for FILE_DISPOSITION_ON_CLOSE
ntdll: Implement FILE_DISPOSITION_IGNORE_READONLY_ATTRIBUTE
ntdll/tests: Add tests for FILE_DISPOSITION_IGNORE_READONLY_ATTRIBUTE
ntdll: Initial implementation of FileDispositionInformationEx
include: Define FILE_DISPOSITION_INFORMATION_EX and friends
https://gitlab.winehq.org/wine/wine/-/merge_requests/3122
Required for !1857 to not break when comctl32 version 6 isn't requested by application (in particular, found this in [qapitrace](https://github.com/apitrace/apitrace)).
Manifest resource id and assembly identity name match with Windows.
For isolation purposes, activation context is disabled while emitting events.
--
v9: comdlg32: Enable visual styles when showing IFileDialog.
comdlg32: Return E_UNEXPECTED if IFileDialog is already shown.
https://gitlab.winehq.org/wine/wine/-/merge_requests/2068