diff --git a/imgui.cpp b/imgui.cpp index 207993c4..99741746 100644 --- a/imgui.cpp +++ b/imgui.cpp @@ -2191,22 +2191,22 @@ static void NavProcessItem(ImGuiWindow* window, const ImRect& nav_bb, const ImGu } // Scoring for navigation - bool new_best = false; -#if IMGUI_DEBUG_NAV - // [DEBUG] Score items at all times - if (!g.NavMoveRequest) - g.NavMoveDir = g.NavMoveDirLast; if (g.NavId != id) - new_best = NavScoreItem(nav_bb) && g.NavMoveRequest; + { +#if IMGUI_DEBUG_NAV + // [DEBUG] Score all items in NavWindow at all times + if (!g.NavMoveRequest) + g.NavMoveDir = g.NavMoveDirLast; + bool new_best = NavScoreItem(nav_bb) && g.NavMoveRequest; #else - if (g.NavMoveRequest && g.NavId != id) - new_best = NavScoreItem(nav_bb); + bool new_best = g.NavMoveRequest && NavScoreItem(nav_bb); #endif - if (new_best) - { - g.NavMoveResultId = id; - g.NavMoveResultParentId = window->IDStack.back(); - g.NavMoveResultRectRel = nav_bb_rel; + if (new_best) + { + g.NavMoveResultId = id; + g.NavMoveResultParentId = window->IDStack.back(); + g.NavMoveResultRectRel = nav_bb_rel; + } } // Update window-relative bounding box of navigated item