by roundabout, Tuesday, 6 October 2026, 15:43:37 (1791301417), pushed by roundabout, Tuesday, 6 October 2026, 15:43:40 (1791301420)
Author identity: Vlad <vlad.muntoiu@gmail.com>
792889f0df2a67ce170bd0ee21833736d7427999
main.py
@@ -323,18 +323,24 @@ def register_client(client_id: str):
class ModifierButton(Gtk.ToggleButton):
def __init__(self, app, mask, **kwargs):
def __init__(self, app, mask, shift_feedback, unshift_feedback, **kwargs):
super().__init__(**kwargs)
self.app = app
self.mask = mask
self.shift_feedback = shift_feedback
self.unshift_feedback = unshift_feedback
self.connect("toggled", self.toggle_modifier)
def toggle_modifier(self, button):
if button.get_active():
self.app.depressed_modifiers |= self.mask
if self.shift_feedback:
self.shift_feedback.trigger_feedback()
else:
self.app.depressed_modifiers &= ~self.mask
if self.unshift_feedback:
self.unshift_feedback.trigger_feedback()
self.app.send_modifiers()
@@ -543,10 +549,10 @@ class Kineboard(Gtk.Application):
escape_button = Gtk.Button(label="Escape")
escape_button.connect("clicked", lambda x: self.send_keysym(0xFF5))
self.extra_controls.append(escape_button)
self.extra_controls.append(ModifierButton(self, 1 << xkb_keymap.mod_get_index("Control"), label="Control"))
self.extra_controls.append(ModifierButton(self, 1 << xkb_keymap.mod_get_index("Mod1"), label="Alt"))
self.extra_controls.append(ModifierButton(self, 1 << xkb_keymap.mod_get_index("Shift"), label="Shift"))
self.extra_controls.append(ModifierButton(self, 1 << xkb_keymap.mod_get_index("Mod4"), label="Super"))
self.extra_controls.append(ModifierButton(self, 1 << xkb_keymap.mod_get_index("Control"), self.shift_feedback, self.unshift_feedback, label="Control"))
self.extra_controls.append(ModifierButton(self, 1 << xkb_keymap.mod_get_index("Mod1"), self.shift_feedback, self.unshift_feedback, label="Alt"))
self.extra_controls.append(ModifierButton(self, 1 << xkb_keymap.mod_get_index("Shift"), self.shift_feedback, self.unshift_feedback, label="Shift"))
self.extra_controls.append(ModifierButton(self, 1 << xkb_keymap.mod_get_index("Mod4"), self.shift_feedback, self.unshift_feedback, label="Super"))
tab_button = Gtk.Button(label="Tab")
tab_button.connect("clicked", lambda x: self.send_keysym(0xFF0))
self.extra_controls.append(tab_button)