From 25466559bd811c15626714cc69928fabf0b241d4 Mon Sep 17 00:00:00 2001 From: wurstsalat Date: Sun, 3 Dec 2023 13:12:58 +0100 Subject: fix: Shortcuts: Fix focus issues with Ctrl+ shortcuts for Windows and Linux --- gajim/gtk/main.py | 22 ++++++++++------------ 1 file changed, 10 insertions(+), 12 deletions(-) diff --git a/gajim/gtk/main.py b/gajim/gtk/main.py index 4dfe3e089..97b5236a5 100644 --- a/gajim/gtk/main.py +++ b/gajim/gtk/main.py @@ -256,21 +256,19 @@ class MainWindow(Gtk.ApplicationWindow, EventHelper): _window: MainWindow, event: Gdk.EventKey ) -> bool: - + # Filter out modifier not used for shortcuts like Numlock (MOD2) modifier = event.get_state() & Gtk.accelerator_get_default_mod_mask() + accel_name = Gtk.accelerator_name(event.keyval, modifier) - if not modifier: - if event.keyval in ( - Gdk.KEY_Control_L, - Gdk.KEY_Control_R, - Gdk.KEY_Alt_L, - Gdk.KEY_Alt_R, - ): - return False + log.warning('Captured key pressed: %s', accel_name) - if modifier == Gdk.ModifierType.CONTROL_MASK: - if event.keyval == Gdk.KEY_C: - return False + if event.keyval in ( + Gdk.KEY_Control_L, + Gdk.KEY_Control_R, + Gdk.KEY_Alt_L, + Gdk.KEY_Alt_R, + ): + return False focused_widget = self.get_focus() if (isinstance(focused_widget, Gtk.TextView) -- cgit v1.2.3