Pidgin скрипт с Python / Get Focus Signal

Я создаю скрипт на Python для интеграции Pidgin с Unity (12.04), мне удалось сделать подсчет уведомлений с помощью Launcher API . Но я не знаю, какое событие или сигнал активируется, когда окно разговора получает фокус (для очистки счетчика сообщений). Я пробовал некоторые сигналы, доступные в документации Пиджина , но ни один из них не работал. Есть ли какое-либо событие GTK (или что-нибудь еще), которое запускается, когда окно чата становится фокусом?

3
задан 25 September 2012 в 04:54

1 ответ

Отказ от ответственности: я не тестировал этот метод

Я вижу, что вы уже освещаете часть, касающуюся API Launcher, если нет, то она очень похожа на то, что вы уже сделали.

Об интеграции Pidgin, изучая API, я обнаружил, что Pidgin уведомляет через DBus практически обо всем, что происходит с клиентом.

Внимательно посмотрев, вы можете увидеть список доступных сигналов. Одним из них является связанный с беседой . Одним из них является сигнал conversation-updated . Подробно:

Описание: Издается при обновлении разговора.

Параметры:

  • conv: Обновленный диалог.

  • type: Тип обновления, которое было выполнено

Изучите типы обновлений , которые могут поступать с этим сигналом. найти PURPLE_CONV_UPDATE_UNSEEN, который срабатывает при обновлении невидимого состояния.

Итак, теперь все, что вам нужно сделать, это адаптировать свой код для обработки этого сигнала.

Редактировать:

Я проверил метод, и он работает. В этот pastebin - мой пример кода, если вы хотите взглянуть.

0
ответ дан 25 September 2012 в 04:54

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

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