aboutsummaryrefslogtreecommitdiff
path: root/main/src/ui/avatar_image.vala
diff options
context:
space:
mode:
authorfiaxh <git@lightrise.org>2020-03-08 22:15:53 +0100
committerfiaxh <git@lightrise.org>2020-03-08 22:21:09 +0100
commited6eda129edd94e07f9cdf8d8446576d50460031 (patch)
tree73f2575c5423b6f6bef8e50cec4de86d0354cd82 /main/src/ui/avatar_image.vala
parentf099def5b659527475b22021f730bd085c83e60c (diff)
downloaddino-ed6eda129edd94e07f9cdf8d8446576d50460031.tar.gz
dino-ed6eda129edd94e07f9cdf8d8446576d50460031.zip
Update live whether encryption is possible in MUC (lock icon visible)
Diffstat (limited to 'main/src/ui/avatar_image.vala')
-rw-r--r--main/src/ui/avatar_image.vala7
1 files changed, 7 insertions, 0 deletions
diff --git a/main/src/ui/avatar_image.vala b/main/src/ui/avatar_image.vala
index a3b386e3..ab64f5b9 100644
--- a/main/src/ui/avatar_image.vala
+++ b/main/src/ui/avatar_image.vala
@@ -83,6 +83,7 @@ public class AvatarImage : Misc {
stream_interactor.connection_manager.connection_state_changed.disconnect(on_connection_changed);
stream_interactor.get_module(RosterManager.IDENTITY).updated_roster_item.disconnect(on_roster_updated);
muc_manager.private_room_occupant_updated.disconnect(on_private_room_occupant_updated);
+ muc_manager.room_info_updated.disconnect(on_room_info_updated);
stream_interactor = null;
}
}
@@ -125,6 +126,11 @@ public class AvatarImage : Misc {
update_avatar_if_jid(room);
}
+ private void on_room_info_updated(Account account, Jid muc_jid) {
+ if (!account.equals(this.account)) return;
+ update_avatar_if_jid(muc_jid);
+ }
+
private bool is_self_online() {
if (connection_manager != null) {
return connection_manager.get_state(account) == ConnectionManager.ConnectionState.CONNECTED;
@@ -167,6 +173,7 @@ public class AvatarImage : Misc {
stream_interactor.connection_manager.connection_state_changed.connect(on_connection_changed);
stream_interactor.get_module(RosterManager.IDENTITY).updated_roster_item.connect(on_roster_updated);
muc_manager.private_room_occupant_updated.connect(on_private_room_occupant_updated);
+ muc_manager.room_info_updated.connect(on_room_info_updated);
}
this.cached_surface = null;
this.conversation = conversation;