mirror of https://github.com/ocornut/imgui
InputText: Fixed an edge case crash that would happen if another widget sharing the same ID is being swapped with an InputText that has yet to be activated.
This commit is contained in:
parent
2e9a175057
commit
cc3be5d428
|
@ -38,6 +38,8 @@ Other Changes:
|
|||
- InputInt, InputFloat, InputScalar: Fix to keep the label of the +/- buttons centered when
|
||||
style.FramePadding.x is abnormally larger than style.FramePadding.y. Since the buttons are
|
||||
meant to be square (to align with e.g. color button) we always use FramePadding.y. (#2367)
|
||||
- InputText: Fixed an edge case crash that would happen if another widget sharing the same ID
|
||||
is being swapped with an InputText that has yet to be activated.
|
||||
- Examples: OpenGL: Fix for OSX not supporting OpenGL 4.5, we don't try to read GL_CLIP_ORIGIN
|
||||
even if the OpenGL headers/loader happens to define the value. (#2366, #2186)
|
||||
|
||||
|
|
|
@ -3278,6 +3278,10 @@ bool ImGui::InputTextEx(const char* label, char* buf, int buf_size, const ImVec2
|
|||
clear_active_id = true;
|
||||
}
|
||||
|
||||
// We have an edge case if ActiveId was set through another widget (e.g. widget being swapped)
|
||||
if (g.ActiveId == id && state == NULL)
|
||||
ClearActiveID();
|
||||
|
||||
bool value_changed = false;
|
||||
bool enter_pressed = false;
|
||||
int backup_current_text_length = 0;
|
||||
|
|
Loading…
Reference in New Issue