From 81a9cb74c355bd0ce98f044f11c46d05f119dac2 Mon Sep 17 00:00:00 2001 From: Matthias Melcher Date: Fri, 8 Dec 2023 15:09:32 +0100 Subject: #862: Fixes Fl_Shortut to swallow all FL_SHORCUT events if hot. --- src/Fl_Shortcut_Button.cxx | 4 ++++ 1 file changed, 4 insertions(+) (limited to 'src/Fl_Shortcut_Button.cxx') diff --git a/src/Fl_Shortcut_Button.cxx b/src/Fl_Shortcut_Button.cxx index f7d1d5b25..555371e0b 100644 --- a/src/Fl_Shortcut_Button.cxx +++ b/src/Fl_Shortcut_Button.cxx @@ -213,6 +213,7 @@ int Fl_Shortcut_Button::handle(int e) { if (hot_) { // Note: we can't really handle non-Latin shortcuts in the Fl_Shortcut // type, so we don't handle them here either + // Todo: use fl_utf_tolower and fl_utf_toupper int v = fl_utf8decode(Fl::event_text(), 0, 0); if ( (v > 32 && v < 0x7f) || (v > 0xa0 && v <= 0xff) ) { if (isupper(v)) { @@ -251,6 +252,9 @@ int Fl_Shortcut_Button::handle(int e) { } } break; + case FL_SHORTCUT: + if (hot_) return 1; + break; } return Fl_Button::handle(e); } -- cgit v1.2.3