Disabled: items more consistently release active id if the active item got disabled. (#211) (amend 2952525)

This commit is contained in:
ocornut 2021-07-12 15:36:54 +02:00
parent 638e1a721b
commit 246ad6c03c
2 changed files with 3 additions and 4 deletions

View File

@ -3234,6 +3234,9 @@ bool ImGui::ItemHoverable(const ImRect& bb, ImGuiID id)
// When disabled we'll return false but still set HoveredId // When disabled we'll return false but still set HoveredId
if (g.CurrentItemFlags & ImGuiItemFlags_Disabled) if (g.CurrentItemFlags & ImGuiItemFlags_Disabled)
{ {
// Release active id if turning disabled
if (g.ActiveId == id)
ClearActiveID();
g.HoveredIdDisabled = true; g.HoveredIdDisabled = true;
return false; return false;
} }

View File

@ -611,10 +611,6 @@ bool ImGui::ButtonBehavior(const ImRect& bb, ImGuiID id, bool* out_hovered, bool
} }
} }
// Release active id if turning disabled
if (g.ActiveId == id && (g.CurrentItemFlags & ImGuiItemFlags_Disabled))
ClearActiveID();
// Process while held // Process while held
bool held = false; bool held = false;
if (g.ActiveId == id) if (g.ActiveId == id)