Windows: clicking on a window's empty-space to move/focus a window checks for lack of queued focus request. (#9382)

This commit is contained in:
ocornut
2026-05-15 13:45:03 +02:00
parent 4088a4f40c
commit db161b84c9
2 changed files with 4 additions and 1 deletions

View File

@@ -5363,8 +5363,9 @@ void ImGui::UpdateMouseMovingWindowEndFrame()
// If we try to focus it, FocusWindow() > ClosePopupsOverWindow() will accidentally close any parent popups because they are not linked together any more.
ImGuiWindow* hovered_root = hovered_window ? hovered_window->RootWindow : NULL;
const bool is_closed_popup = hovered_root && (hovered_root->Flags & ImGuiWindowFlags_Popup) && !IsPopupOpen(hovered_root->PopupId, ImGuiPopupFlags_AnyPopupLevel);
const bool is_queued_focus_request = g.NavMoveSubmitted && (g.NavMoveFlags & ImGuiNavMoveFlags_FocusApi);
if (hovered_window != NULL && !is_closed_popup)
if (hovered_window != NULL && !is_closed_popup && !is_queued_focus_request)
{
StartMouseMovingWindow(hovered_window); //-V595