def activate(self,shell):
self.shell = shell
self.copy_selected()
self.action = gtk.Action ('foo','bar','baz',None)
self.activate_id = self.action.connect ('activate', self.call_bk_fn,self.shell)
self.action_group = gtk.ActionGroup ('hot_key_action_group')
self.action_group.add_action_with_accel (self.action, "<control>E")
uim = shell.get_ui_manager ()
uim.insert_action_group (self.action_group, 0)
uim.ensure_update ()
def call_bk_fn():
print('hello world')
Я использую приведенный выше код в плагине для Rhythmbox, и здесь я пытаюсь зарегистрировать ключ Ctrl kbd> + E kbd> так что call_bk_fn
вызывается всякий раз, когда нажимается комбинация клавиш, но она не работает.
Почему это так?
У меня нет знаний о том, какой плагин вы используете.
Однако в Ubuntu есть другое решение для этого: -)
Перейдите в: Система> Предпочтения> Сочетания клавиш
прямо вверху под надписью «звук», вы можете установить клавиши действий, в том числе следующие. дорожка, воспроизведение, пауза, уменьшение громкости и т. д.