diff --git a/src/graphics/ui/elements/TextBox.cpp b/src/graphics/ui/elements/TextBox.cpp index 4caab647..1f3a083f 100644 --- a/src/graphics/ui/elements/TextBox.cpp +++ b/src/graphics/ui/elements/TextBox.cpp @@ -576,7 +576,8 @@ void TextBox::setCaret(uint position) { if (offset < 0) { scrolled(1); } else if (offset >= getSize().y) { - scrolled(-1); + offset -= getSize().y; + scrolled(-glm::ceil(offset/static_cast(scrollStep)+0.5f)); } uint lcaret = caret - label->getTextLineOffset(line); int realoffset = font->calcWidth(input, lcaret)-int(textOffset)+2;