Shortcuts: fixed priority of route calculation (higher first). (#456, #7618)
diff --git a/imgui.cpp b/imgui.cpp
index 38fb449..230d6b5 100644
--- a/imgui.cpp
+++ b/imgui.cpp
@@ -8633,21 +8633,22 @@
for (int index_in_focus_path = 0; index_in_focus_path < g.NavFocusRoute.Size; index_in_focus_path++)
if (g.NavFocusRoute.Data[index_in_focus_path].ID == focus_scope_id)
return 3 + index_in_focus_path;
-
return 255;
}
- if (flags & ImGuiInputFlags_RouteActive)
+ else if (flags & ImGuiInputFlags_RouteActive)
{
if (owner_id != 0 && g.ActiveId == owner_id)
return 1;
return 255;
}
- if (flags & ImGuiInputFlags_RouteOverFocused)
- return 2;
- if (flags & ImGuiInputFlags_RouteGlobal)
+ else if (flags & ImGuiInputFlags_RouteGlobal)
+ {
+ if (flags & ImGuiInputFlags_RouteOverActive)
+ return 0;
+ if (flags & ImGuiInputFlags_RouteOverFocused)
+ return 2;
return 254;
- if (flags & ImGuiInputFlags_RouteOverActive)
- return 0;
+ }
IM_ASSERT(0);
return 0;
}