Переключить режим единства запуска с использованием Python?

Я пытаюсь создать индикатор приложения, который переключает режим запуска: либо обычный, либо автоматически скрываемый. Прямо сейчас я могу переключить ключ gconf

/ apps / compiz-1 / plugins / unityshell / screen0 / options / launcher_hide_mode

, который равен 0 или 1. Однако программа запуска не на самом деле изменить свой режим. Как я могу заставить Unity распознать, что значение ключа gconf изменилось?

0
задан 24 June 2012 в 05:07

1 ответ

С включением Gnome 3, начиная с Ubuntu 11.10, механизм gconf устарел, и хотя некоторые приложения по-прежнему соблюдают его, Unity не является одним из них.

Gconf был заменен на gsettings, поэтому, чтобы сделать то, что вы хотите, вам нужно:

  • Определить, какой путь и ключ вам нужно установить, и какое значение вам нужно установить. [ 118]

Это можно сделать с помощью команды gsettings. Для просмотра всех клавиш используйте gsettings list-recursively. В этом случае я сделал gsettings list-recursively |grep hide и придумал схему com.canonical.Unity2d.Launcher, ключ - hide-mode.

Вы можете проверить это, выполнив

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

Измените 1 на 0, чтобы увидеть различные эффекты, которые имеет ключ.

  • В своем коде Python используйте Gio.settings для непосредственного управления настройками.

Вот пример:

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

Я не уверен, нужно ли вам использовать set_int или set_boolean. Вы должны немного поэкспериментировать с ними, чтобы получить желаемые результаты.

0
ответ дан 24 June 2012 в 05:07

Другие вопросы по тегам:

Похожие вопросы: