summary refs log tree commit diff
path: root/src/ChatPage.cc
diff options
context:
space:
mode:
authorKonstantinos Sideris <sideris.konstantin@gmail.com>2018-04-24 14:13:05 +0300
committerKonstantinos Sideris <sideris.konstantin@gmail.com>2018-04-24 14:13:05 +0300
commit0028fdfe6c7485515b2535bb73b1d9075f9bf4fe (patch)
tree3f79b29c5ec38d59737a8d8f051c8c0b6ae778d3 /src/ChatPage.cc
parentFix CI errors (diff)
downloadnheko-0028fdfe6c7485515b2535bb73b1d9075f9bf4fe.tar.xz
Remove map from room_id to QPixmap from ChatPage
The avatars are loaded from cache
Diffstat (limited to 'src/ChatPage.cc')
-rw-r--r--src/ChatPage.cc14
1 files changed, 7 insertions, 7 deletions
diff --git a/src/ChatPage.cc b/src/ChatPage.cc

index 58a6fb4b..59fcdc13 100644 --- a/src/ChatPage.cc +++ b/src/ChatPage.cc
@@ -459,7 +459,6 @@ ChatPage::logout() void ChatPage::resetUI() { - roomAvatars_.clear(); room_list_->clear(); top_bar_->reset(); user_info_widget_->reset(); @@ -571,8 +570,6 @@ ChatPage::initialSyncCompleted(const mtx::responses::Sync &response) void ChatPage::updateTopBarAvatar(const QString &roomid, const QPixmap &img) { - roomAvatars_.emplace(roomid, img); - if (current_room_ != roomid) return; @@ -646,15 +643,18 @@ ChatPage::changeTopRoomInfo(const QString &room_id) top_bar_->updateRoomName(name); top_bar_->updateRoomTopic(QString::fromStdString(room_info[room_id].topic)); - if (roomAvatars_.find(room_id) != roomAvatars_.end()) - top_bar_->updateRoomAvatar(roomAvatars_[room_id].toImage()); - else + auto img = cache_->getRoomAvatar(room_id); + + if (img.isNull()) top_bar_->updateRoomAvatarFromName(name); + else + top_bar_->updateRoomAvatar(img); - current_room_ = room_id; } catch (const lmdb::error &e) { qWarning() << "failed to change top bar room info" << e.what(); } + + current_room_ = room_id; } void