Skip to content
Snippets Groups Projects
Commit e0df92a4 authored by Dicson's avatar Dicson
Browse files

ClientsIconsPlugin. Fix icon if contact in several groups

parent 854734f0
No related branches found
No related tags found
No related merge requests found
......@@ -366,12 +366,13 @@ class ClientsIconsPlugin(GajimPlugin):
roster.model)
if not child_iters:
return
if roster.model[child_iters[0]][self.renderer_num] is None:
caps = contact.client_caps._node
if not caps:
caps = self.check_jid(jid)
self.set_icon(roster.model, child_iters[0], self.renderer_num,
caps)
for iter_ in child_iters:
if roster.model[iter_][self.renderer_num] is None:
caps = contact.client_caps._node
if not caps:
caps = self.check_jid(jid)
self.set_icon(roster.model, iter_, self.renderer_num,
caps)
@log_calls('ClientsIconsPlugin')
def connect_with_groupchat_control(self, chat_control):
......@@ -505,8 +506,9 @@ class ClientsIconsPlugin(GajimPlugin):
# zeroconf
return
iter_ = roster._get_contact_iter(iq_obj.jid, iq_obj.conn.name, contact,
roster.model)[0]
iters = roster._get_contact_iter(iq_obj.jid, iq_obj.conn.name, contact,
roster.model)
iter_ = iters[0]
if contact.show == 'error':
self.set_icon(roster.model, iter_, self.renderer_num, None)
......@@ -534,7 +536,8 @@ class ClientsIconsPlugin(GajimPlugin):
if caps_from_jid:
caps = caps_from_jid
self.set_icon(roster.model, iter_, self.renderer_num, caps)
for iter_ in iters:
self.set_icon(roster.model, iter_, self.renderer_num, caps)
def gc_presence_received(self, iq_obj):
if not self.config['show_in_groupchats']:
......
[info]
name: Clients icons
short_name: clients_icons
version: 4.1
version: 4.2
description: Shows the client icons in the roster
and in groupchats.
For icons in tooltip support, you need to install Gajim r14117 or above.
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment