From 2f00fc51bf27708a9c0ac1ce186043059f93923e Mon Sep 17 00:00:00 2001 From: Konstantinos Sideris Date: Sat, 21 Apr 2018 16:34:50 +0300 Subject: Cache refactoring --- src/dialogs/ReadReceipts.cc | 22 +++++++++++++++------- 1 file changed, 15 insertions(+), 7 deletions(-) (limited to 'src/dialogs') diff --git a/src/dialogs/ReadReceipts.cc b/src/dialogs/ReadReceipts.cc index 63ce68e6..a2e1faf2 100644 --- a/src/dialogs/ReadReceipts.cc +++ b/src/dialogs/ReadReceipts.cc @@ -6,17 +6,21 @@ #include #include +#include "ChatPage.h" #include "Config.h" #include "Utils.h" #include "Avatar.h" #include "AvatarProvider.h" +#include "Cache.h" #include "dialogs/ReadReceipts.h" -#include "timeline/TimelineViewManager.h" using namespace dialogs; -ReceiptItem::ReceiptItem(QWidget *parent, const QString &user_id, uint64_t timestamp) +ReceiptItem::ReceiptItem(QWidget *parent, + const QString &user_id, + uint64_t timestamp, + const QString &room_id) : QWidget(parent) { topLayout_ = new QHBoxLayout(this); @@ -29,7 +33,7 @@ ReceiptItem::ReceiptItem(QWidget *parent, const QString &user_id, uint64_t times QFont font; font.setPixelSize(conf::receipts::font); - auto displayName = TimelineViewManager::displayName(user_id); + auto displayName = Cache::displayName(room_id, user_id); avatar_ = new Avatar(this); avatar_->setSize(40); @@ -51,8 +55,10 @@ ReceiptItem::ReceiptItem(QWidget *parent, const QString &user_id, uint64_t times topLayout_->addWidget(avatar_); topLayout_->addLayout(textLayout_, 1); - AvatarProvider::resolve( - user_id, this, [this](const QImage &img) { avatar_->setImage(img); }); + AvatarProvider::resolve(ChatPage::instance()->currentRoom(), + user_id, + this, + [this](const QImage &img) { avatar_->setImage(img); }); } QString @@ -104,8 +110,10 @@ ReadReceipts::addUsers(const std::multimapclear(); for (const auto &receipt : receipts) { - auto user = - new ReceiptItem(this, QString::fromStdString(receipt.second), receipt.first); + auto user = new ReceiptItem(this, + QString::fromStdString(receipt.second), + receipt.first, + ChatPage::instance()->currentRoom()); auto item = new QListWidgetItem(userList_); item->setSizeHint(user->minimumSizeHint()); -- cgit 1.5.1