Backends: DX10, DX11, DX12: Disabled DXGI's Alt+Enter default behavior on secondary viewports. (#4350)

Removed use of DXGI_MWA_NO_PRINT_SCREEN from original PR.
This commit is contained in:
David Maas
2021-07-21 16:59:34 -05:00
committed by ocornut
parent 28837ec642
commit 15c88c4941
4 changed files with 6 additions and 0 deletions

View File

@@ -708,6 +708,7 @@ static void ImGui_ImplDX10_CreateWindow(ImGuiViewport* viewport)
IM_ASSERT(vd->SwapChain == nullptr && vd->RTView == nullptr);
bd->pFactory->CreateSwapChain(bd->pd3dDevice, &sd, &vd->SwapChain);
bd->pFactory->MakeWindowAssociation(hwnd, DXGI_MWA_NO_ALT_ENTER | DXGI_MWA_NO_WINDOW_CHANGES); // Disable e.g. Alt+Enter
// Create the render target
if (vd->SwapChain)

View File

@@ -738,6 +738,7 @@ static void ImGui_ImplDX11_CreateWindow(ImGuiViewport* viewport)
break;
}
IM_ASSERT(SUCCEEDED(hr));
bd->pFactory->MakeWindowAssociation(hwnd, DXGI_MWA_NO_ALT_ENTER | DXGI_MWA_NO_WINDOW_CHANGES); // Disable e.g. Alt+Enter
// Create the render target
if (vd->SwapChain != nullptr)

View File

@@ -1087,6 +1087,8 @@ static void ImGui_ImplDX12_CreateWindow(ImGuiViewport* viewport)
IDXGISwapChain1* swap_chain = nullptr;
res = dxgi_factory->CreateSwapChainForHwnd(vd->CommandQueue, hwnd, &sd1, nullptr, nullptr, &swap_chain);
IM_ASSERT(res == S_OK);
res = dxgi_factory->MakeWindowAssociation(hwnd, DXGI_MWA_NO_ALT_ENTER | DXGI_MWA_NO_WINDOW_CHANGES); // Disable e.g. Alt+Enter
IM_ASSERT(res == S_OK);
dxgi_factory->Release();

View File

@@ -88,6 +88,8 @@ Docking+Viewports Branch:
- Viewports: DestroyContext() does not call DestroyPlatformWindows() anymore at
it assumed to be unnecessary as backensd should have done it and we check that
backends have been shutdown since 1.90.4. Changed into asserts. (#7175, #8945)
- Backends: DX10, DX11, DX12: Disabled DXGI's Alt+Enter default behavior on secondary
viewports managed by the backend. (#4350) [@PathogenDavid]
- Backends: Vulkan: Added ImGui_ImplVulkanH_GetWindowDataFromViewport() accessor/helper.
(#8946, #8940) [@olivier-gerard]