summaryrefslogtreecommitdiff
path: root/Userland/Libraries
diff options
context:
space:
mode:
Diffstat (limited to 'Userland/Libraries')
-rw-r--r--Userland/Libraries/LibGUI/Label.cpp7
-rw-r--r--Userland/Libraries/LibGUI/Label.h3
2 files changed, 6 insertions, 4 deletions
diff --git a/Userland/Libraries/LibGUI/Label.cpp b/Userland/Libraries/LibGUI/Label.cpp
index d41237803a..17045c5e04 100644
--- a/Userland/Libraries/LibGUI/Label.cpp
+++ b/Userland/Libraries/LibGUI/Label.cpp
@@ -34,11 +34,12 @@ Label::Label(String text)
REGISTER_STRING_PROPERTY("icon", icon, set_icon_from_path);
}
-void Label::set_autosize(bool autosize)
+void Label::set_autosize(bool autosize, size_t padding)
{
- if (m_autosize == autosize)
+ if (m_autosize == autosize && m_autosize_padding == padding)
return;
m_autosize = autosize;
+ m_autosize_padding = padding;
if (m_autosize)
size_to_fit();
}
@@ -108,7 +109,7 @@ void Label::paint_event(PaintEvent& event)
void Label::size_to_fit()
{
- set_fixed_width(font().width(m_text));
+ set_fixed_width(font().width(m_text) + m_autosize_padding * 2);
}
int Label::preferred_height() const
diff --git a/Userland/Libraries/LibGUI/Label.h b/Userland/Libraries/LibGUI/Label.h
index dac18da10b..d899231911 100644
--- a/Userland/Libraries/LibGUI/Label.h
+++ b/Userland/Libraries/LibGUI/Label.h
@@ -37,7 +37,7 @@ public:
void set_should_stretch_icon(bool b) { m_should_stretch_icon = b; }
bool is_autosize() const { return m_autosize; }
- void set_autosize(bool);
+ void set_autosize(bool, size_t padding = 0);
int preferred_height() const;
@@ -58,6 +58,7 @@ private:
Gfx::TextWrapping m_text_wrapping { Gfx::TextWrapping::Wrap };
bool m_should_stretch_icon { false };
bool m_autosize { false };
+ size_t m_autosize_padding { 0 };
};
}