From 62d41d58d613b22caa5a3324c278511f8678c8d6 Mon Sep 17 00:00:00 2001 From: offtkp Date: Sun, 8 May 2022 04:02:53 +0300 Subject: [PATCH] LibGUI: Consider TextEditor icon size when scrolling text horizontally If an icon exists and the horizontal scroll value is larger than 0, translate the TextEditor painter by the icon size and padding. The text would scroll over the icon when the text was long enough to trigger a horizontal scroll. Fixes #13669. --- Userland/Libraries/LibGUI/TextEditor.cpp | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/Userland/Libraries/LibGUI/TextEditor.cpp b/Userland/Libraries/LibGUI/TextEditor.cpp index 1852b683991..31d76c82d44 100644 --- a/Userland/Libraries/LibGUI/TextEditor.cpp +++ b/Userland/Libraries/LibGUI/TextEditor.cpp @@ -452,7 +452,10 @@ void TextEditor::paint_event(PaintEvent& event) painter.draw_line(ruler_rect.top_right(), ruler_rect.bottom_right(), palette().ruler_border()); } - painter.translate(-horizontal_scrollbar().value(), -vertical_scrollbar().value()); + auto horizontal_scrollbar_value = horizontal_scrollbar().value(); + painter.translate(-horizontal_scrollbar_value, -vertical_scrollbar().value()); + if (m_icon && horizontal_scrollbar_value > 0) + painter.translate(min(icon_size() + icon_padding(), horizontal_scrollbar_value), 0); painter.translate(gutter_width(), 0); painter.translate(ruler_width(), 0);