Как добавить информационные индикаторы к значку Launcher из скрипта?

Некоторые приложения помещают информационный текст поверх своих значков в Launcher.

Например, Thunderbird показывает количество непрочитанных сообщений, а менеджер обновлений показывает количество доступных обновлений и индикатор выполнения. Изображение показывает эти два примера:

Launcher icons with information overlay

Я создал несколько скриптов Bash, которые используют yad (форк Zenity), который добавляет иконку к Launcher, в то время как работает.

Я хотел бы знать, как я могу создать собственное наложение информации в моем сценарии для этих значков.

2
задан 7 October 2012 в 18:39

2 ответа

Это для Python, возможно, что-то может быть найдено для другого языка..

Из источника менеджера обновления, UnitySupport.py:

Вы должны:

from gi.repository import Dbusmenu, Unity

получить поддержку Единицы.

Можно затем определить функцию:

def set_launcher_icon_num(self, num_count):
    self._unity.set_property("count", num_count)
    if num_count > 0:
        self._unity.set_property("count-visible", True)
    else:
        self._unity.set_property("count-visible", False)

Кроме того, для проявления безотлагательности (встряхивают значок),

self._unity.set_property("urgent", urgent)

или создать progressbar,

self._unity.set_property("progress", progress/100.0)

где прогресс от 0 до 100. Можно затем использовать:

self._unity.set_property("progress_visible", True)

показать progressbar и использовать Ложь вместо Истинного для сокрытия его.

Как всегда, ища источник программы, которая делает то, что Вы пытаетесь сделать, может стоить.

Они подвержены изменениям в любое время. Можно также видеть Единицу API.

5
ответ дан 7 October 2012 в 18:39

Я не думаю, что вы можете сделать это напрямую через bash, вам нужно взаимодействовать с API. Есть привязки питона через самоанализ gi. Смотрите эту страницу с примерами Python и Vala: https://wiki.ubuntu.com/Unity/LauncherAPI

0
ответ дан 7 October 2012 в 18:39

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

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