diff --git a/src/gajim.py b/src/gajim.py index 544c3f6d0..04abb7e7c 100644 --- a/src/gajim.py +++ b/src/gajim.py @@ -774,6 +774,14 @@ class Interface: self.roster.draw_contact(contact1.jid, account) gobject.timeout_add_seconds(5, self.roster.remove_to_be_removed, contact1.jid, account) + + # unset custom status + if (old_show == 0 and new_show > 1) or (old_show > 1 and new_show == 0\ + and conn.connected > 1): + if account in self.status_sent_to_users and \ + jid in self.status_sent_to_users[account]: + del self.status_sent_to_users[account][jid] + contact1.show = array[1] contact1.status = status_message contact1.priority = priority diff --git a/src/roster_window.py b/src/roster_window.py index 1bbd79b32..07fef1fda 100644 --- a/src/roster_window.py +++ b/src/roster_window.py @@ -2043,11 +2043,6 @@ class RosterWindow: if ctrl: ctrl.update_status_display(name, uf_show, status) - # unset custom status - if account in gajim.interface.status_sent_to_users and \ - contact.jid in gajim.interface.status_sent_to_users[account]: - del gajim.interface.status_sent_to_users[account][contact.jid] - # Delete pep if needed keep_pep = any(c.show not in ('error', 'offline') for c in contact_instances)