From 360e58a276e4dd79e15430ff012054c690d9f0e5 Mon Sep 17 00:00:00 2001 From: thankyouverycool <66646555+thankyouverycool@users.noreply.github.com> Date: Thu, 15 Dec 2022 11:56:06 -0500 Subject: [PATCH] LibGUI: Disallow GlyphMapWidget selection sizes equal to zero This is a bogus size as the map must always have at least 1 glyph selected, and it was causing occasional desync between selection contents and the focused glyph when manipulating selections with the keyboard. --- Userland/Libraries/LibGUI/GlyphMapWidget.cpp | 2 +- Userland/Libraries/LibGUI/GlyphMapWidget.h | 1 - 2 files changed, 1 insertion(+), 2 deletions(-) diff --git a/Userland/Libraries/LibGUI/GlyphMapWidget.cpp b/Userland/Libraries/LibGUI/GlyphMapWidget.cpp index 344e653bb7..be2ca8a094 100644 --- a/Userland/Libraries/LibGUI/GlyphMapWidget.cpp +++ b/Userland/Libraries/LibGUI/GlyphMapWidget.cpp @@ -44,7 +44,7 @@ bool GlyphMapWidget::Selection::contains(int i) const void GlyphMapWidget::Selection::extend_to(int glyph) { m_size = glyph - m_start; - if (m_size > 0) + if (m_size >= 0) m_size++; } diff --git a/Userland/Libraries/LibGUI/GlyphMapWidget.h b/Userland/Libraries/LibGUI/GlyphMapWidget.h index c184e76fd2..acc0c7a19a 100644 --- a/Userland/Libraries/LibGUI/GlyphMapWidget.h +++ b/Userland/Libraries/LibGUI/GlyphMapWidget.h @@ -58,7 +58,6 @@ public: void set_active_range(Unicode::CodePointRange); void set_active_glyph(int, ShouldResetSelection = ShouldResetSelection::Yes); void set_selection(int start, int size, Optional active_glyph = {}); - void clear_selection() { m_selection.set_size(0); } void scroll_to_glyph(int); void update_glyph(int);