def grab(self, accelerator):
keyVal, modifiers = Gtk.accelerator_parse(accelerator)
if not accelerator or (not keyVal and not modifiers):
return
keyCode = self.keymap.get_entries_for_keyval(keyVal)[1][0].keycode
modifiers = int(modifiers)
catch = error.CatchError(error.BadAccess)
for ignored_mask in self.ignored_masks:
mod = modifiers | ignored_mask
self.root.grab_key(keyCode, mod, True, X.GrabModeAsync, X.GrabModeSync, onerror=catch)
self.display.sync()
if catch.get_error():
return False
self.hotKeyList.append(HotKey().set(keyVal=keyVal, keyCode=keyCode, modifiers=modifiers))
return True
评论列表
文章目录