Script Pidgin com Python / Get Focus Signal

3

Estou criando um script em Python para integrar o Pidgin com o Unity (12.04). Consegui fazer o sistema de contagem de notificações usando o API do iniciador . Mas eu não sei qual evento ou sinal é ativado quando a janela de conversa ganha foco (para limpar o contador de mensagens). Eu tentei alguns dos sinais disponíveis na documentação do Pidgin , mas nenhum deles funcionou. Existe algum evento GTK (ou qualquer coisa) que é acionado quando o bate-papo da janela recebe foco?

    
por Mr Alles 24.09.2012 / 22:21

1 resposta

1

Aviso: eu não testei este método

Eu vejo que você já cobre a parte referente à API do Launcher, se não é bem parecido com o que você já fez.

Sobre a integração do Pidgin, olhando para a API, descobri que o Pidgin notifica via DBus quase tudo o que acontece com o cliente.

Com cuidado, você pode ver que há uma lista dos sinais disponíveis. Uma delas é a conversação relacionada . Um deles é o conversation-updated sinal . Detalhado por:

% bl0ck_qu0te%

Analisando os tipos de atualizações que podem vir com esse sinal, encontre PURPLE_CONV_UPDATE_UNSEEN que é acionado quando o estado invisível é atualizado.

Agora, tudo que você precisa fazer é adaptar seu código para lidar com esse sinal.

Editar:

Eu testei o método e ele funciona. Em este pastebin é o meu código de exemplo, se você quiser dar uma olhada.

    
por Angel Araya 25.09.2012 / 03:14