mirror of
				https://github.com/Drezil/imgui.git
				synced 2025-10-31 13:11:05 +01:00 
			
		
		
		
	Nav: merged SetNavID() and SetNavIDWithRectRel() to improve sanity, moved flags overwrite off them. (#787)
This commit is contained in:
		| @@ -5913,7 +5913,7 @@ void ImGui::TreePop() | ||||
|     if (g.NavMoveDir == ImGuiDir_Left && g.NavWindow == window && NavMoveRequestButNoResultYet()) | ||||
|         if (g.NavIdIsAlive && (window->DC.TreeJumpToParentOnPopMask & tree_depth_mask)) | ||||
|         { | ||||
|             SetNavID(window->IDStack.back(), g.NavLayer, 0); | ||||
|             SetNavID(window->IDStack.back(), g.NavLayer, 0, ImRect()); | ||||
|             NavMoveRequestCancel(); | ||||
|         } | ||||
|     window->DC.TreeJumpToParentOnPopMask &= tree_depth_mask - 1; | ||||
| @@ -6101,8 +6101,8 @@ bool ImGui::Selectable(const char* label, bool selected, ImGuiSelectableFlags fl | ||||
|     { | ||||
|         if (!g.NavDisableMouseHover && g.NavWindow == window && g.NavLayer == window->DC.NavLayerCurrent) | ||||
|         { | ||||
|             SetNavID(id, window->DC.NavLayerCurrent, window->DC.NavFocusScopeIdCurrent, ImRect(bb.Min - window->Pos, bb.Max - window->Pos)); | ||||
|             g.NavDisableHighlight = true; | ||||
|             SetNavID(id, window->DC.NavLayerCurrent, window->DC.NavFocusScopeIdCurrent); | ||||
|         } | ||||
|     } | ||||
|     if (pressed) | ||||
| @@ -6580,8 +6580,9 @@ void ImGui::EndMenuBar() | ||||
|             const ImGuiNavLayer layer = ImGuiNavLayer_Menu; | ||||
|             IM_ASSERT(window->DC.NavLayerActiveMaskNext & (1 << layer)); // Sanity check | ||||
|             FocusWindow(window); | ||||
|             SetNavIDWithRectRel(window->NavLastIds[layer], layer, 0, window->NavRectRel[layer]); | ||||
|             SetNavID(window->NavLastIds[layer], layer, 0, window->NavRectRel[layer]); | ||||
|             g.NavDisableHighlight = true; // Hide highlight for the current frame so we don't see the intermediary selection. | ||||
|             g.NavDisableMouseHover = g.NavMousePosDirty = true; | ||||
|             g.NavMoveRequestForward = ImGuiNavForward_ForwardQueued; | ||||
|             NavMoveRequestCancel(); | ||||
|         } | ||||
|   | ||||
		Reference in New Issue
	
	Block a user