Nav: clear activeid on menu toggle (so pressing Alt leaving an InputText will steal ActiveID. Previously wouldn't not, but ButtonBehavior() hover logic would not show Menu layer item as hovered when ActiveId != 0). (#787)

(Adjacent to #370)
This commit is contained in:
ocornut 2021-04-23 18:37:15 +02:00
parent e61e8aea9c
commit 4540177ce7
2 changed files with 3 additions and 0 deletions

View File

@ -44,6 +44,7 @@ Other Changes:
- Scrolling: Fix mouse wheel axis swap when using SHIFT on macOS (system already does it). (#4010) - Scrolling: Fix mouse wheel axis swap when using SHIFT on macOS (system already does it). (#4010)
- Window: Fix IsWindowAppearing() from returning true twice in most cases. (#3982, #1497, #1061) - Window: Fix IsWindowAppearing() from returning true twice in most cases. (#3982, #1497, #1061)
- Nav: Fixed using SetItemDefaultFocus() on windows with _NavFlattened flag. - Nav: Fixed using SetItemDefaultFocus() on windows with _NavFlattened flag.
- Nav: Fixed toggling menu layer while an InputText() is active not stealing active id.
- Tables: Expose TableSetColumnEnabled() in public api. (#3935) - Tables: Expose TableSetColumnEnabled() in public api. (#3935)
- Tables: Better preserve widths when columns count changes. (#4046) - Tables: Better preserve widths when columns count changes. (#4046)
- TabBar: Fixed mouse reordering with very fast movements (e.g. crossing multiple tabs in a single - TabBar: Fixed mouse reordering with very fast movements (e.g. crossing multiple tabs in a single

View File

@ -9648,6 +9648,8 @@ static void ImGui::NavUpdateWindowing()
// Apply menu/layer toggle // Apply menu/layer toggle
if (apply_toggle_layer && g.NavWindow) if (apply_toggle_layer && g.NavWindow)
{ {
ClearActiveID();
// Move to parent menu if necessary // Move to parent menu if necessary
ImGuiWindow* new_nav_window = g.NavWindow; ImGuiWindow* new_nav_window = g.NavWindow;
while (new_nav_window->ParentWindow while (new_nav_window->ParentWindow