mirror of
https://github.com/Drezil/imgui.git
synced 2024-11-15 01:17:00 +00:00
Popups: similarly to previous commit, we fix reopening a popup within a popup stack from truncating the whole stack. This is done by properly refocusing the lower level popup. (~#439)
This commit is contained in:
parent
59a89774d7
commit
aca23fd3f0
@ -3567,6 +3567,11 @@ void ImGui::OpenPopupEx(ImGuiID id, bool reopen_existing)
|
|||||||
{
|
{
|
||||||
g.OpenPopupStack.resize(current_stack_size+1);
|
g.OpenPopupStack.resize(current_stack_size+1);
|
||||||
g.OpenPopupStack[current_stack_size] = popup_ref;
|
g.OpenPopupStack[current_stack_size] = popup_ref;
|
||||||
|
|
||||||
|
// When reopening a popup we first refocus its parent, otherwise if its parent is itself a popup it would get closed by CloseInactivePopups().
|
||||||
|
// This is equivalent to what ClosePopupToLevel() does.
|
||||||
|
if (g.OpenPopupStack[current_stack_size].PopupId == id)
|
||||||
|
FocusWindow(window);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user