quick_frontend, primitivus: various fixes (MUC and cached signals):

- actually call the cached signals, everything was there but the call was not done
    - display '[]' instead of '[None]' when group message coming from the room (no resource)
    - catch the exception when trying to delete an occupant who's not in the room
    - do not cache a "main resource" for MUC entities
This commit is contained in:
souliane 2015-03-25 15:25:51 +01:00
commit ff0166e95f

View file

@ -73,7 +73,7 @@ class ChatText(urwid.FlowWidget):
if self.parent.show_short_nick:
render_txt.append(('my_nick' if self.my_mess else 'other_nick', "**" if self.my_mess else "*"))
else:
render_txt.append(('my_nick' if self.my_mess else 'other_nick', "[%s] " % self.nick))
render_txt.append(('my_nick' if self.my_mess else 'other_nick', "[%s] " % (self.nick or '')))
render_txt.append(self.message)
txt_widget = urwid.Text(render_txt, align=self.align)
if self.is_info:
@ -188,7 +188,10 @@ class Chat(PrimitivusWidget, QuickChat):
nick = entity.resource
show = contact_list.getCache(entity, C.PRESENCE_SHOW)
if show == C.PRESENCE_UNAVAILABLE or show is None:
self.occupants_list.deleteValue(nick)
try:
self.occupants_list.deleteValue(nick)
except ValueError:
pass
else:
values = self.occupants_list.getAllValues()
markup = self._buildOccupantMarkup(entity)