|
@@ -8373,12 +8373,14 @@ bool ImGui::Begin(const char* name, bool* p_open, ImGuiWindowFlags flags)
|
|
|
NavInitWindow(window, false); // <-- this is in the way for us to be able to defer and sort reappearing FocusWindow() calls
|
|
|
|
|
|
// Close requested by platform window (apply to all windows in this viewport)
|
|
|
+ // FIXME: Investigate removing the 'window->Viewport != GetMainViewport()' test, which seems superfluous.
|
|
|
if (p_open != NULL && window->Viewport->PlatformRequestClose && window->Viewport != GetMainViewport())
|
|
|
- {
|
|
|
- IMGUI_DEBUG_LOG_VIEWPORT("[viewport] Window '%s' closed by PlatformRequestClose\n", window->Name);
|
|
|
- *p_open = false;
|
|
|
- g.NavWindowingToggleLayer = false; // Assume user mapped PlatformRequestClose on ALT-F4 so we disable ALT for menu toggle. False positive not an issue. // FIXME-NAV: Try removing.
|
|
|
- }
|
|
|
+ if (window->DockNode == NULL || (window->DockNode->MergedFlags & ImGuiDockNodeFlags_DockSpace) == 0)
|
|
|
+ {
|
|
|
+ IMGUI_DEBUG_LOG_VIEWPORT("[viewport] Window '%s' closed by PlatformRequestClose\n", window->Name);
|
|
|
+ *p_open = false;
|
|
|
+ g.NavWindowingToggleLayer = false; // Assume user mapped PlatformRequestClose on ALT-F4 so we disable ALT for menu toggle. False positive not an issue. // FIXME-NAV: Try removing.
|
|
|
+ }
|
|
|
|
|
|
// Pressing CTRL+C copy window content into the clipboard
|
|
|
// [EXPERIMENTAL] Breaks on nested Begin/End pairs. We need to work that out and add better logging scope.
|