key_widget&keymap_editor: fix anykey for masked keycodes

main
Ilya Zhuravlev 2021-07-27 23:14:25 -04:00
parent 5d760330a6
commit f51b6d4c73
2 changed files with 4 additions and 2 deletions

View File

@ -47,9 +47,9 @@ class KeyWidget(KeyboardWidget):
def on_anykey(self):
if self.active_key is None:
return
dlg = AnyKeycodeDialog(self.keycode)
dlg = AnyKeycodeDialog((self.keycode & 0xFF) if self.active_mask else self.keycode)
if dlg.exec_() and dlg.value >= 0:
self.set_keycode(dlg.value)
self.on_keycode_changed(dlg.value)
def set_keycode(self, kc):
if kc == self.keycode:

View File

@ -138,6 +138,8 @@ class KeymapEditor(BasicEditor):
if self.container.active_key is None:
return
current_code = self.code_for_widget(self.container.active_key)
if self.container.active_mask:
current_code &= 0xFF
dlg = AnyKeycodeDialog(current_code)
if dlg.exec_() and dlg.value >= 0:
self.on_keycode_changed(dlg.value)