Browse Source

Examples: Fixed SDL+OpenGL2 and SDL+Vulkan examples not processing SDL_WINDOWEVENT_CLOSE events which tends to be needed in multi-viewport setting.

omar 5 years ago
parent
commit
6461fd40ab
2 changed files with 4 additions and 0 deletions
  1. 2 0
      examples/example_sdl_opengl2/main.cpp
  2. 2 0
      examples/example_sdl_vulkan/main.cpp

+ 2 - 0
examples/example_sdl_opengl2/main.cpp

@@ -87,6 +87,8 @@ int main(int, char**)
             ImGui_ImplSDL2_ProcessEvent(&event);
             if (event.type == SDL_QUIT)
                 done = true;
+            if (event.type == SDL_WINDOWEVENT && event.window.event == SDL_WINDOWEVENT_CLOSE && event.window.windowID == SDL_GetWindowID(window))
+                done = true;
         }
 
         // Start the Dear ImGui frame

+ 2 - 0
examples/example_sdl_vulkan/main.cpp

@@ -454,6 +454,8 @@ int main(int, char**)
             ImGui_ImplSDL2_ProcessEvent(&event);
             if (event.type == SDL_QUIT)
                 done = true;
+            if (event.type == SDL_WINDOWEVENT && event.window.event == SDL_WINDOWEVENT_CLOSE && event.window.windowID == SDL_GetWindowID(window))
+                done = true;
         }
 
         // Resize swap chain?