Internals, Inputs: Fix for ImGuiInputFlags_RepeatUntilXXX logic when #ifdef IMGUI_DISABLE_OBSOLETE_KEYIO is not set.

Amend 8323a06. Eager to get rid of legacy IMGUI_DISABLE_OBSOLETE_KEYIO stuff: technically it's been two years, may give it another one.
This commit is contained in:
ocornut 2024-01-09 23:04:57 +01:00
parent af00b182e3
commit 69bf3291df

View File

@ -8800,7 +8800,7 @@ static void ImGui::UpdateKeyboardInputs()
key_data->DownDuration = key_data->Down ? (key_data->DownDuration < 0.0f ? 0.0f : key_data->DownDuration + io.DeltaTime) : -1.0f; key_data->DownDuration = key_data->Down ? (key_data->DownDuration < 0.0f ? 0.0f : key_data->DownDuration + io.DeltaTime) : -1.0f;
if (key_data->DownDuration == 0.0f) if (key_data->DownDuration == 0.0f)
{ {
ImGuiKey key = (ImGuiKey)(ImGuiKey_NamedKey_BEGIN + i); ImGuiKey key = (ImGuiKey)(ImGuiKey_KeysData_OFFSET + i);
if (IsKeyboardKey(key)) if (IsKeyboardKey(key))
g.LastKeyboardKeyPressTime = g.Time; g.LastKeyboardKeyPressTime = g.Time;
else if (key == ImGuiKey_ReservedForModCtrl || key == ImGuiKey_ReservedForModShift || key == ImGuiKey_ReservedForModAlt || key == ImGuiKey_ReservedForModSuper) else if (key == ImGuiKey_ReservedForModCtrl || key == ImGuiKey_ReservedForModShift || key == ImGuiKey_ReservedForModAlt || key == ImGuiKey_ReservedForModSuper)