Welcome to mirror list, hosted at ThFree Co, Russian Federation.

dev.gajim.org/gajim/gajim.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorwurstsalat <mailtrash@posteo.de>2023-12-03 15:12:58 +0300
committerwurstsalat <mailtrash@posteo.de>2023-12-03 15:12:58 +0300
commit25466559bd811c15626714cc69928fabf0b241d4 (patch)
treec1516da610d32fe87caebf7a07694fcbdb58b3a0
parent6069d5a67872b12032091a324dff62d0d26b738c (diff)
fix: Shortcuts: Fix focus issues with Ctrl+ shortcuts for Windows and Linux
-rw-r--r--gajim/gtk/main.py22
1 files 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)