A extensão do Gnome diz para alterar Meta.keybindings_set_custom_handler. O que é isso e como faço para mudar isso

1

Depois que o Ubuntu mudou para o Gnome, instalei a extensão workspace-grid Gnome para ter uma grade de espaços de trabalho como no Unity. Enquanto eu posso mudar para a esquerda e direita usando a tecla de seta ctrl + alt + esquerda / direita , movendo para cima e para baixo é mais complicado. Eu preciso usar a tecla function + super + acima / para baixo . É chocante ter que trocar as chaves pela mesma ação. Além disso, em alguns aplicativos como o Chrome, pressionar a tecla função + super + acima / para baixo desloca para baixo em vez de alterar área de trabalho. Eu gostaria de mudar o atalho para cima / baixo para a tecla de seta ctrl + alt + para cima / para baixo . / p>

Analisando o repositório do github para a extensão, ele diz:

Workspaces can be changed by the user by a number of ways, and the ways this extension overrides are:

  • keybindings (Main.wm.setKeybindingHandler (GNOME 3.2), Meta.keybindings_set_custom_handler (GNOME 3.4))

Então, o que é Meta.keybindings_set_custom_handler e como faço para defini-lo?

    
por quantumbutterfly 20.02.2018 / 07:00

1 resposta

0

Meta.keybindings_set_custom_handler refere-se ao código fonte do gnome3 - isto não é um "ajuste" no sentido normal.

É uma função no código fonte do shell do gnome em javascript, ver aqui

  setCustomKeybindingHandler: function(name, modes, handler) {
        if (Meta.keybindings_set_custom_handler(name, handler))
            this.allowKeybinding(name, modes);
    },

ou em uso, nesta extensão personalizada

function enable() {
    Meta.keybindings_set_custom_handler('switch-group', _doSwitchDesktop);
    Meta.keybindings_set_custom_handler('switch-group-backward', _doSwitchDesktop);
}

function disable() {
    Meta.keybindings_set_custom_handler('switch-group', Lang.bind(Main.wm, Main.wm._startAppSwitcher));
    Meta.keybindings_set_custom_handler('switch-group-backward', Lang.bind(Main.wm, Main.wm._startAppSwitcher));
}

Se você escreve seu próprio ramal ou reescreve um já existente, você pode " definir " ele - se quiser.

    
por Robert Riedl 21.02.2018 / 08:46