Mercurial > libervia-web
diff src/browser/sat_browser/contact_list.py @ 640:75715f5c95e3 frontends_multi_profiles
browser side(contact list): added nick listener
author | Goffi <goffi@goffi.org> |
---|---|
date | Tue, 24 Feb 2015 16:49:07 +0100 |
parents | 8da4735a3c81 |
children | f5145881723a |
line wrap: on
line diff
--- a/src/browser/sat_browser/contact_list.py Tue Feb 24 16:48:41 2015 +0100 +++ b/src/browser/sat_browser/contact_list.py Tue Feb 24 16:49:07 2015 +0100 @@ -112,6 +112,14 @@ 'contact': contact_html} self.setHTML(html) + def updateNick(self, new_nick): + """Change the current nick + + @param new_nick(unicode): new nick to use + """ + self.nick = new_nick + self.refresh() + def setAlert(self, alert): """Show a visual indicator @@ -171,6 +179,13 @@ """ self.avatar.setUrl(url) + def updateNick(self, new_nick): + """Update the nickname. + + @param new_nick (unicode): new nickname to use + """ + self.label.updateNick(new_nick) + def onClick(self, sender): try: self.parent.onClick(self.jid) @@ -296,6 +311,17 @@ except TypeError: pass + def updateNick(self, jid_, new_nick): + """Update the avatar of the given contact + + @param jid_ (jid.JID): contact jid + @param new_nick (unicode): new nick of the contact + """ + try: + self.getContactBox(jid_).updateNick(new_nick) + except TypeError: + pass + class ContactsPanel(BaseContactsPanel): """The contact list that is displayed on the left side.""" @@ -554,14 +580,6 @@ if contact.jid in jids: contact.label.removeStyleName("selected") - def updateAvatar(self, jid_s, url): - """Update the avatar of the given contact - - @param jid_s (unicode): contact jid - @param url (unicode): image url - """ - self._contacts_panel.updateAvatar(jid_s, url) - def onAvatarUpdate(self, jid_, hash_, profile): """Called on avatar update events @@ -571,6 +589,9 @@ """ self._contacts_panel.updateAvatar(jid_, self.host.getAvatarURL(jid_)) + def onNickUpdate(self, jid_, new_nick, profile): + self._contacts_panel.updateNick(jid_, new_nick) + def hasVisibleMembers(self, group): """Tell if the given group actually has visible members