Alternar modo de iniciador de unidade usando Python?

0

Estou tentando fazer um indicador de aplicativo que alterna o modo de inicialização: normal ou de ocultação automática. Agora eu posso alternar a chave gconf

/ apps / compiz-1 / plugins / unityshell / screen0 / opções / launcher_hide_mode

que é 0 ou 1. No entanto, o lançador não altera seu modo. Como posso fazer a unidade reconhecer que o valor da chave gconf mudou?

    
por functionptr 24.06.2012 / 03:07

1 resposta

2

Com a inclusão do Gnome 3, a partir do Ubuntu 11.10, o mecanismo gconf é obsoleto e, enquanto alguns aplicativos ainda o honram, o Unity não é um deles.

O gconf foi substituído por gsettings, então, para fazer o que você quer, você precisa:

  • Descubra qual caminho e chave você precisa definir e para qual valor você precisa defini-lo.

Isso pode ser feito com o comando gsettings . Para ver todas , as chaves usam gsettings list-recursively . Nesse caso, eu fiz gsettings list-recursively |grep hide e criei o com.canonical.Unity2d.Launcher schema, a chave é hide-mode .

Você pode testar isso fazendo

gsettings set com.canonical.Unity2d.Launcher hide-mode 1

Altere o 1 para 0 para ver os diferentes efeitos da chave.

  • No seu código Python, use o Gio.settings para manipular os gsettings diretamente.

Veja um exemplo:

from gi.repository import Gio
launcher_settings = Gio.Settings.new("com.canonical.Unity2d.Launcher")
launcher_settings.set_int("hide-mode", 1)

Não tenho certeza se você precisa usar set_int ou set_boolean. Você deve experimentar um pouco para obter os resultados desejados.

    
por roadmr 24.06.2012 / 06:52