From b016f1ad709d6f7d22f43ce7b6e49ea343c70824 Mon Sep 17 00:00:00 2001 From: ocornut Date: Wed, 11 Mar 2020 21:22:18 +0100 Subject: [PATCH] Examples: SDL+DX11: Fixed resizing main window. Amend (#3057) --- docs/CHANGELOG.txt | 3 ++- examples/example_sdl_directx11/main.cpp | 8 +++----- 2 files changed, 5 insertions(+), 6 deletions(-) diff --git a/docs/CHANGELOG.txt b/docs/CHANGELOG.txt index 878ca98b6..b41a18007 100644 --- a/docs/CHANGELOG.txt +++ b/docs/CHANGELOG.txt @@ -67,7 +67,8 @@ Other Changes: - Backends: SDL: Added ImGui_ImplSDL2_InitForMetal() for API consistency (even though the function currently does nothing). - Backends: SDL: Fixed mapping for ImGuiKey_KeyPadEnter. (#3031) [@Davido71] -- Examples: Added SDL2+Metal example application. (#3017) [@coding-jackalope] +- Examples: SDL+DX11: Fixed resizing main window. (#3057) [@joeslay] +- Examples: Added SDL+Metal example application. (#3017) [@coding-jackalope] ----------------------------------------------------------------------- diff --git a/examples/example_sdl_directx11/main.cpp b/examples/example_sdl_directx11/main.cpp index 5b748ed68..eadf8ff73 100644 --- a/examples/example_sdl_directx11/main.cpp +++ b/examples/example_sdl_directx11/main.cpp @@ -101,12 +101,10 @@ int main(int, char**) done = true; if (event.type == SDL_WINDOWEVENT && event.window.event == SDL_WINDOWEVENT_CLOSE && event.window.windowID == SDL_GetWindowID(window)) done = true; - if (event.type == SDL_WINDOWEVENT && event.window.event == SDL_WINDOWEVENT_RESIZED) + if (event.type == SDL_WINDOWEVENT && event.window.event == SDL_WINDOWEVENT_RESIZED && event.window.windowID == SDL_GetWindowID(window)) { - g_pd3dDeviceContext->OMSetRenderTargets(0, 0, 0); - // Release all outstanding references to the swap chain's buffers. - g_mainRenderTargetView->Release(); - + // Release all outstanding references to the swap chain's buffers before resizing. + CleanupRenderTarget(); g_pSwapChain->ResizeBuffers(0, 0, 0, DXGI_FORMAT_UNKNOWN, 0); CreateRenderTarget(); }