Звуковая справка интеграции Индикатора

Я пытался добавить свое приложение на меню Sound Indicator в Единице приблизительно в течение недели теперь. Отсутствие документации относительно предмета честно ужасно. Любые ссылки, которые я могу найти, какое требование быть документацией мертво.

Вот то, где я: Я использовал mopidy-mpris источник в качестве руководства для того, как создать сервис DBus, который выполняет спецификацию MPRIS. Я могу выполнить этот сервис и связаться с/управлять им с помощью изящного Python клиент MPRIS (https://github.com/airtower-luna/mpris-python). Я могу запросить все свойства с qdbus и все, кажется, работает к спецификации насколько MPRIS идет.

Я читал в нескольких сообщениях, что для добавления приложения на Звуковой Индикатор, что необходимо добавить его к /com/canonical/indicator/sound/interested-media-players ключ в dconf (этому также был нужен a .desktop файл в ~/.local/share/applications). Я сделал это, и мое приложение обнаружилось в Звуковом Индикаторе после входа в. Этот выглядел большим, но когда я нажал на свое Приложение, оно просто начало скручиваться по кнопке воспроизведения. Мое приложение запускается, но я не могу взаимодействовать с ним с помощью меню. Я использовал dbus-monitor смотреть на dbus сообщение то, чтобы быть отправило/получило, и я ничего не получил. Я отправил некоторые ручные с помощью вышеупомянутого клиент MPRIS, и я видел их в dbus-мониторе, и они успешно управляли плеером, настолько по крайней мере, который работал.

Я просмотрел mopidy источник еще немного и нашел, что они упоминают, что отправили уведомление о запуске звуковому индикатору путем создания сервиса Индикатора. Конечно, они использовали старое, указывают на модуль, но я использовал gi.repository.Indicate вместо этого, и это в основном встало на свое место. Я инициализирую указать сервер как так:

from gi.repository import Indicate
indicate_server = Indicate.Server()
indicate_server.set_type('music.myapp')
indicate_server.set_desktop_file(os.path.abspath('myapp.desktop'))
indicate_server.show()

Это ничего не сделало. Я все еще добираюсь, прикреплял/вращал/загружал анимацию на кнопку воспроизведения, и не имейте никакого контроля.

Любая справка значительно ценится. Лучший случай: ссылка на фактическую документацию была бы большой.

2
задан 6 March 2016 в 17:35

0 ответов

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

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