浏览代码

Docking+Viewport: Fixed PlatformRequestClose (e.g. ALT-F4) being redrected to the first window of the docking node instead of the selected one.

omar 7 年之前
父节点
当前提交
79c075ca09
共有 1 个文件被更改,包括 6 次插入3 次删除
  1. 6 3
      imgui.cpp

+ 6 - 3
imgui.cpp

@@ -5422,9 +5422,12 @@ bool ImGui::Begin(const char* name, bool* p_open, ImGuiWindowFlags flags)
         // Close from platform window
         if (p_open != NULL && window->Viewport->PlatformRequestClose && window->Viewport != GetMainViewport())
         {
-            window->Viewport->PlatformRequestClose = false;
-            g.NavWindowingToggleLayer = false; // Assume user mapped PlatformRequestClose on ALT-F4 so we disable ALT for menu toggle. False positive not an issue.
-            *p_open = false;
+            if (!window->DockIsActive || window->DockTabIsVisible)
+            {
+                window->Viewport->PlatformRequestClose = false;
+                g.NavWindowingToggleLayer = false; // Assume user mapped PlatformRequestClose on ALT-F4 so we disable ALT for menu toggle. False positive not an issue.
+                *p_open = false;
+            }
         }
 
         // Title bar