summary refs log tree commit diff
path: root/src/timeline2
diff options
context:
space:
mode:
authorNicolas Werner <nicolas.werner@hotmail.de>2019-09-07 22:22:07 +0200
committerNicolas Werner <nicolas.werner@hotmail.de>2019-11-23 20:06:14 +0100
commitebeb1eb7721f357b016f6e914509918b6bee5356 (patch)
tree57ab5d3588cf6d01b497cba762056ea132044cf6 /src/timeline2
parentFix new messages not arriving in qml timeline (diff)
downloadnheko-ebeb1eb7721f357b016f6e914509918b6bee5356.tar.xz
Implement avatars in qml timeline
Diffstat (limited to 'src/timeline2')
-rw-r--r--src/timeline2/TimelineModel.cpp6
-rw-r--r--src/timeline2/TimelineModel.h1
-rw-r--r--src/timeline2/TimelineViewManager.cpp2
3 files changed, 9 insertions, 0 deletions
diff --git a/src/timeline2/TimelineModel.cpp b/src/timeline2/TimelineModel.cpp

index 28820205..310494b4 100644 --- a/src/timeline2/TimelineModel.cpp +++ b/src/timeline2/TimelineModel.cpp
@@ -326,6 +326,12 @@ TimelineModel::displayName(QString id) const } QString +TimelineModel::avatarUrl(QString id) const +{ + return Cache::avatarUrl(room_id_, id); +} + +QString TimelineModel::formatDateSeparator(QDate date) const { auto now = QDateTime::currentDateTime(); diff --git a/src/timeline2/TimelineModel.h b/src/timeline2/TimelineModel.h
index e37c6542..954da5eb 100644 --- a/src/timeline2/TimelineModel.h +++ b/src/timeline2/TimelineModel.h
@@ -90,6 +90,7 @@ public: Q_INVOKABLE QColor userColor(QString id, QColor background); Q_INVOKABLE QString displayName(QString id) const; + Q_INVOKABLE QString avatarUrl(QString id) const; Q_INVOKABLE QString formatDateSeparator(QDate date) const; Q_INVOKABLE QString escapeEmoji(QString str) const; diff --git a/src/timeline2/TimelineViewManager.cpp b/src/timeline2/TimelineViewManager.cpp
index 0e0e74e4..eb9bea54 100644 --- a/src/timeline2/TimelineViewManager.cpp +++ b/src/timeline2/TimelineViewManager.cpp
@@ -4,6 +4,7 @@ #include <QQmlContext> #include "Logging.h" +#include "MxcImageProvider.h" TimelineViewManager::TimelineViewManager(QWidget *parent) { @@ -18,6 +19,7 @@ TimelineViewManager::TimelineViewManager(QWidget *parent) container = QWidget::createWindowContainer(view, parent); container->setMinimumSize(200, 200); view->rootContext()->setContextProperty("timelineManager", this); + view->engine()->addImageProvider("MxcImage", new MxcImageProvider()); view->setSource(QUrl("qrc:///qml/TimelineView.qml")); }