From f1dfc4d7c4887b09d9cae37f63f52cce1c33418b Mon Sep 17 00:00:00 2001 From: ocornut Date: Tue, 16 Jun 2015 21:17:02 -0600 Subject: [PATCH] InputTextMultiline(): multi-line selection draw fix (#200) --- imgui.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/imgui.cpp b/imgui.cpp index c35c9d03..a6eed5b7 100644 --- a/imgui.cpp +++ b/imgui.cpp @@ -7144,7 +7144,7 @@ static bool InputTextEx(const char* label, char* buf, size_t buf_size, const ImV for (const ImWchar* p = text_selected_begin; p < text_selected_end; ) { ImVec2 rect_size = CalcTextSizeW(edit_state.Font, edit_state.FontSize, FLT_MAX, p, text_selected_end, &p, NULL, true); - ImRect rect(render_pos + rect_pos + ImVec2(-edit_state.ScrollX, -font_offy_up), render_pos + rect_pos + ImVec2(rect_size.x - edit_state.ScrollX, +font_offy_dn)); + ImRect rect(render_pos + rect_pos + ImVec2(-edit_state.ScrollX, (p == text_selected_begin) ? -font_offy_up : -g.FontSize), render_pos + rect_pos + ImVec2(rect_size.x - edit_state.ScrollX, (p == text_selected_end) ? +font_offy_dn : 0.0f)); rect.Clip(clip_rect); window->DrawList->AddRectFilled(rect.Min, rect.Max, font_color); rect_pos.x = 0.0f;