From: Zebediah Figura zfigura@codeweavers.com
Signed-off-by: Stefan Dösinger stefan@codeweavers.com
---
Comment by Stefan: Analogous to what we do for d3d11, but still awkward. I'll look into better solutions but that's not directly related to this series. --- dlls/dxgi/swapchain.c | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/dlls/dxgi/swapchain.c b/dlls/dxgi/swapchain.c index 9677142e0af..5dd6846d541 100644 --- a/dlls/dxgi/swapchain.c +++ b/dlls/dxgi/swapchain.c @@ -2889,6 +2889,7 @@ static HRESULT d3d12_swapchain_init(struct d3d12_swapchain *swapchain, IWineDXGI VkBool32 supported; VkDevice vk_device; VkFence vk_fence; + bool fullscreen; VkResult vr; HRESULT hr;
@@ -2933,6 +2934,9 @@ static HRESULT d3d12_swapchain_init(struct d3d12_swapchain *swapchain, IWineDXGI return hr; }
+ fullscreen = !wined3d_desc.windowed; + wined3d_desc.windowed = TRUE; + dxgi_factory = unsafe_impl_from_IDXGIFactory((IDXGIFactory *)factory); if (FAILED(hr = wined3d_swapchain_state_create(&wined3d_desc, window, dxgi_factory->wined3d, &swapchain->state_parent, &swapchain->state))) @@ -2941,8 +2945,9 @@ static HRESULT d3d12_swapchain_init(struct d3d12_swapchain *swapchain, IWineDXGI return hr; }
- if (!fullscreen_desc->Windowed) + if (fullscreen) { + wined3d_desc.windowed = FALSE; hr = wined3d_swapchain_state_set_fullscreen(swapchain->state, &wined3d_desc, NULL); if (FAILED(hr)) {