diff --git a/imgui.cpp b/imgui.cpp index 2d789695..ffa2b100 100644 --- a/imgui.cpp +++ b/imgui.cpp @@ -4686,6 +4686,7 @@ void ImGui::EndChild() } else { + // Not navigable into ItemAdd(bb, 0); } } @@ -8974,6 +8975,7 @@ bool ImGui::InputTextEx(const char* label, char* buf, int buf_size, const ImVec2 ImGuiWindow* draw_window = window; if (is_multiline) { + ItemAdd(total_bb, id, &frame_bb); if (!BeginChildFrame(id, frame_bb.GetSize())) { EndChildFrame(); @@ -9022,7 +9024,7 @@ bool ImGui::InputTextEx(const char* label, char* buf, int buf_size, const ImVec2 bool clear_active_id = false; - bool select_all = (g.ActiveId != id) && (((flags & ImGuiInputTextFlags_AutoSelectAll) != 0) || (g.NavInputId == id)); + bool select_all = (g.ActiveId != id) && (((flags & ImGuiInputTextFlags_AutoSelectAll) != 0) || (g.NavInputId == id)) && (!is_multiline); if (focus_requested || user_clicked || user_scrolled || g.NavInputId == id) { if (g.ActiveId != id)