From 0f5ce017c5be265f7eef1716e142ab00e8422a5f Mon Sep 17 00:00:00 2001 From: thankyouverycool <66646555+thankyouverycool@users.noreply.github.com> Date: Thu, 15 Dec 2022 19:48:06 -0500 Subject: [PATCH] LibGUI: Implement calculated_min_size() for GlyphMapWidget --- Userland/Libraries/LibGUI/GlyphMapWidget.cpp | 8 ++++++++ Userland/Libraries/LibGUI/GlyphMapWidget.h | 1 + 2 files changed, 9 insertions(+) diff --git a/Userland/Libraries/LibGUI/GlyphMapWidget.cpp b/Userland/Libraries/LibGUI/GlyphMapWidget.cpp index 6ddc8319d21..eff4612537a 100644 --- a/Userland/Libraries/LibGUI/GlyphMapWidget.cpp +++ b/Userland/Libraries/LibGUI/GlyphMapWidget.cpp @@ -498,4 +498,12 @@ ErrorOr GlyphMapWidget::set_font(Gfx::Font const& font) return {}; } +Optional GlyphMapWidget::calculated_min_size() const +{ + auto scrollbar = vertical_scrollbar().effective_min_size().height().as_int(); + auto min_height = max(font().glyph_height() + m_vertical_spacing, scrollbar); + auto min_width = font().max_glyph_width() + m_horizontal_spacing + width_occupied_by_vertical_scrollbar(); + return { { min_width + frame_thickness() * 2, min_height + frame_thickness() * 2 } }; +} + } diff --git a/Userland/Libraries/LibGUI/GlyphMapWidget.h b/Userland/Libraries/LibGUI/GlyphMapWidget.h index acc0c7a19aa..ffd312527c4 100644 --- a/Userland/Libraries/LibGUI/GlyphMapWidget.h +++ b/Userland/Libraries/LibGUI/GlyphMapWidget.h @@ -88,6 +88,7 @@ private: virtual void resize_event(ResizeEvent&) override; virtual void did_change_font() override; virtual void context_menu_event(ContextMenuEvent&) override; + virtual Optional calculated_min_size() const override; Gfx::IntRect get_outer_rect(int glyph) const; Optional glyph_at_position(Gfx::IntPoint) const;