diff --git a/src/timeline/TimelineItem.cpp b/src/timeline/TimelineItem.cpp
index 1094bde5..80153026 100644
--- a/src/timeline/TimelineItem.cpp
+++ b/src/timeline/TimelineItem.cpp
@@ -731,7 +731,9 @@ TimelineItem::generateUserName(const QString &user_id, const QString &displaynam
userName_->setToolTipDuration(1500);
userName_->setAttribute(Qt::WA_Hover);
userName_->setAlignment(Qt::AlignLeft | Qt::AlignTop);
- userName_->setFixedWidth(QFontMetrics(userName_->font()).width(userName_->text()));
+ // width deprecated in 5.13:
+ // userName_->setFixedWidth(QFontMetrics(userName_->font()).width(userName_->text()));
+ userName_->setFixedWidth(QFontMetrics(userName_->font()).horizontalAdvance(userName_->text()));
// Set the user color asynchronously if it hasn't been generated yet,
// otherwise this will just set it.
@@ -877,9 +879,11 @@ TimelineItem::replyAction()
return;
RelatedInfo related;
+ related.type = message_type_;
related.quoted_body = body_->toPlainText();
related.quoted_user = descriptionMsg_.userid;
related.related_event = eventId().toStdString();
+ related.room = room_id_;
emit ChatPage::instance()->messageReply(related);
}
diff --git a/src/timeline/TimelineItem.h b/src/timeline/TimelineItem.h
index 6fe4a6f2..4db36c07 100644
--- a/src/timeline/TimelineItem.h
+++ b/src/timeline/TimelineItem.h
@@ -28,6 +28,8 @@
#include <QtConcurrent>
+#include "mtx/events.hpp"
+
#include "AvatarProvider.h"
#include "RoomInfoListItem.h"
#include "Utils.h"
@@ -276,6 +278,7 @@ private:
QString replaceEmoji(const QString &body);
QString event_id_;
+ mtx::events::MessageType message_type_;
QString room_id_;
DescInfo descriptionMsg_;
@@ -349,6 +352,11 @@ TimelineItem::setupWidgetLayout(Widget *widget, const Event &event, bool withSen
{
init();
+ //if (event.type == mtx::events::EventType::RoomMessage) {
+ // message_type_ = mtx::events::getMessageType(event.content.msgtype);
+ //}
+ // TODO: Fix this.
+ message_type_ = mtx::events::MessageType::Unknown;
event_id_ = QString::fromStdString(event.event_id);
const auto sender = QString::fromStdString(event.sender);
diff --git a/src/timeline/widgets/AudioItem.cpp b/src/timeline/widgets/AudioItem.cpp
index 72332174..8cc2ba8f 100644
--- a/src/timeline/widgets/AudioItem.cpp
+++ b/src/timeline/widgets/AudioItem.cpp
@@ -163,7 +163,7 @@ AudioItem::resizeEvent(QResizeEvent *event)
QFontMetrics fm(font);
const int computedWidth = std::min(
- fm.width(text_) + 2 * IconRadius + VerticalPadding * 2 + TextPadding, (double)MaxWidth);
+ fm.horizontalAdvance(text_) + 2 * IconRadius + VerticalPadding * 2 + TextPadding, (double)MaxWidth);
resize(computedWidth, Height);
diff --git a/src/timeline/widgets/FileItem.cpp b/src/timeline/widgets/FileItem.cpp
index e97554e2..903fc4b2 100644
--- a/src/timeline/widgets/FileItem.cpp
+++ b/src/timeline/widgets/FileItem.cpp
@@ -154,7 +154,7 @@ FileItem::resizeEvent(QResizeEvent *event)
QFontMetrics fm(font);
const int computedWidth = std::min(
- fm.width(text_) + 2 * IconRadius + VerticalPadding * 2 + TextPadding, (double)MaxWidth);
+ fm.horizontalAdvance(text_) + 2 * IconRadius + VerticalPadding * 2 + TextPadding, (double)MaxWidth);
resize(computedWidth, Height);
diff --git a/src/timeline/widgets/ImageItem.cpp b/src/timeline/widgets/ImageItem.cpp
index 4ee9e42a..79a66c4d 100644
--- a/src/timeline/widgets/ImageItem.cpp
+++ b/src/timeline/widgets/ImageItem.cpp
@@ -192,7 +192,7 @@ ImageItem::paintEvent(QPaintEvent *event)
if (image_.isNull()) {
QString elidedText = metrics.elidedText(text_, Qt::ElideRight, max_width_ - 10);
- setFixedSize(metrics.width(elidedText), fontHeight);
+ setFixedSize(metrics.horizontalAdvance(elidedText), fontHeight);
painter.setFont(font);
painter.setPen(QPen(QColor(66, 133, 244)));
|