Browse Source

Fixed SetKeyboardFocusHere() not working when current nav focus is in different scope. (#7226)

Amend 70f2aaff
pull/7228/head
ocornut 10 months ago
parent
commit
dd0efdc637
  1. 2
      docs/CHANGELOG.txt
  2. 6
      imgui.cpp

2
docs/CHANGELOG.txt

@ -46,6 +46,8 @@ Breaking changes:
Other changes: Other changes:
- Fixed SetKeyboardFocusHere() not working when current nav focus is in different scope,
regression from 1.90.1 related to code scoping Tab presses to local scope. (#7226) [@bratpilz]
- Backends: Vulkan: Fixed vkMapMemory() calls unnecessarily using full buffer size. (#3957) - Backends: Vulkan: Fixed vkMapMemory() calls unnecessarily using full buffer size. (#3957)
- Backends: Vulkan: Fixed handling of ImGui_ImplVulkan_InitInfo::MinAllocationSize field. (#7189, #4238) - Backends: Vulkan: Fixed handling of ImGui_ImplVulkan_InitInfo::MinAllocationSize field. (#7189, #4238)

6
imgui.cpp

@ -11383,10 +11383,12 @@ void ImGui::NavProcessItemForTabbingRequest(ImGuiID id, ImGuiItemFlags item_flag
ImGuiContext& g = *GImGui; ImGuiContext& g = *GImGui;
if ((move_flags & ImGuiNavMoveFlags_FocusApi) == 0) if ((move_flags & ImGuiNavMoveFlags_FocusApi) == 0)
{
if (g.NavLayer != g.CurrentWindow->DC.NavLayerCurrent) if (g.NavLayer != g.CurrentWindow->DC.NavLayerCurrent)
return; return;
if (g.NavFocusScopeId != g.CurrentFocusScopeId) if (g.NavFocusScopeId != g.CurrentFocusScopeId)
return; return;
}
// - Can always land on an item when using API call. // - Can always land on an item when using API call.
// - Tabbing with _NavEnableKeyboard (space/enter/arrows): goes through every item. // - Tabbing with _NavEnableKeyboard (space/enter/arrows): goes through every item.

Loading…
Cancel
Save