Можно ли изменить и обновить значок состояния апплета индикатора?

Я пытаюсь создать простой индикатор приложения, имитирующий апплет загрузки процессора для панели gnome.

В настоящее время я делаю это, обновляя (перезаписывая) значок состояния индикатора новой информацией о загрузке ЦП и переустанавливая значок состояния на один и тот же значок при каждом обновлении (я знаю, что это глупо, но я не знаю, если в настоящее время можно решить иначе).

К сожалению, это не работает, и я всегда вижу «первое» состояние значка, например.

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

Я также попытался временно установить значок состояния на что-то другое, например.

...
update_icon()
indicator.set_icon("indicator-messages")
indicator.set_icon("indicator-cpu-load")
...

, но это тоже не сработало.

Есть идеи?


ОБНОВЛЕНИЕ:

Действительно возможно сделать то, что я хотел, используя хак, чтобы индикатор перекрасил свой значок ( спасибо Хорхе Кастро и Теду Гулду):

...
update_icon()
indicator.set_status(appindicator.STATUS_ATTENTION)
indicator.set_status(appindicator.STATUS_ACTIVE)
...

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

8
задан 9 March 2017 в 21:04

2 ответа

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

Кажется, что-то не так в кэшировании иконки, так как это должно обновить измененную иконку.

В любом случае, вы, вероятно, захотите использовать что-то вроде « libindicator » для создания своего собственного пользовательского индикатора. Коллекция индикаторов приложения на вашей панели нарисована одним индикатором. При написании пользовательского индикатора в вашем распоряжении гораздо больше функций, чем при использовании ограниченного API индикаторов приложений, который был намеренно ограничен, чтобы не допустить беспорядка.

Также обратите внимание на пакет «libindicator-tools», который содержит несколько удобных утилит для тестирования индикаторов.

0
ответ дан 9 March 2017 в 21:04

Я не думаю, что это возможно, и похоже, что это сделано из отчета об ошибке .

Мы хотели бы побудить людей начать думать как темы значков. Причина этого заключается в том, что она допускает несколько размеров и тематику панели отдельно от приложений. Так, например, приложение может быть тематическим со светлым фоном (таким образом, требуя темных значков), а панель может иметь темный фон (требуя светлых значков). Приложение не должно знать об этом. И с помощью именования иконок эта проблема разрешима на стороне панели вещей.

Для цикла Natty мы также хотим предоставить удобный API для создания настраиваемой темы значков для людей, которые хотят создавать значки. Это не решает всех проблем с темами, но позволяет решить проблему с несколькими размерами.

Обновление: чтобы ответить на ваш комментарий, Тед считает, что это ошибка, и рекомендует подать ошибку в индикаторное приложение , что-то вроде «обновления темы не реализуются индикаторы "

0
ответ дан 9 March 2017 в 21:04

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

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