diff --git a/Userland/Libraries/LibGUI/TextBox.cpp b/Userland/Libraries/LibGUI/TextBox.cpp index 3ed50ff81f..139671cffc 100644 --- a/Userland/Libraries/LibGUI/TextBox.cpp +++ b/Userland/Libraries/LibGUI/TextBox.cpp @@ -22,8 +22,8 @@ namespace GUI { TextBox::TextBox() : TextEditor(TextEditor::SingleLine) { - set_min_size({ 40, 22 }); - set_preferred_size({ SpecialDimension::OpportunisticGrow, 22 }); + set_min_size({ SpecialDimension::Shrink }); + set_preferred_size({ SpecialDimension::OpportunisticGrow, SpecialDimension::Shrink }); } void TextBox::keydown_event(GUI::KeyEvent& event) diff --git a/Userland/Libraries/LibGUI/TextEditor.cpp b/Userland/Libraries/LibGUI/TextEditor.cpp index 29df2c4c68..0981534a44 100644 --- a/Userland/Libraries/LibGUI/TextEditor.cpp +++ b/Userland/Libraries/LibGUI/TextEditor.cpp @@ -893,8 +893,11 @@ Optional TextEditor::calculated_min_size() const { if (is_multi_line()) return AbstractScrollableWidget::calculated_min_size(); + auto constexpr cursor_padding = 4; auto m = content_margins(); - return UISize { m.left() + m.right(), m.top() + m.bottom() }; + auto width = max(40, m.horizontal_total()); + auto height = max(22, line_height() + m.vertical_total() + cursor_padding); + return UISize { width, height }; } void TextEditor::select_all()