Add a checkmark to messages that have been received by the server (#93)

This commit is contained in:
Konstantinos Sideris 2018-01-14 12:54:17 +02:00
parent dfeb0c833a
commit c4fa8c844d
3 changed files with 14 additions and 1 deletions

View File

@ -84,6 +84,7 @@ public:
DescInfo descriptionMessage() const { return descriptionMsg_; } DescInfo descriptionMessage() const { return descriptionMsg_; }
QString eventId() const { return event_id_; } QString eventId() const { return event_id_; }
void setEventId(const QString &event_id) { event_id_ = event_id; } void setEventId(const QString &event_id) { event_id_ = event_id; }
void markReceived();
~TimelineItem(); ~TimelineItem();

View File

@ -340,6 +340,16 @@ TimelineItem::TimelineItem(const mtx::events::RoomEvent<mtx::events::msg::Text>
mainLayout_->addLayout(messageLayout_); mainLayout_->addLayout(messageLayout_);
} }
void
TimelineItem::markReceived()
{
auto checkmark = new QLabel("", this);
checkmark->setStyleSheet(QString("font-size: %1px;").arg(conf::timeline::fonts::timestamp));
checkmark->setAlignment(Qt::AlignTop);
messageLayout_->insertWidget(1, checkmark);
}
// Only the body is displayed. // Only the body is displayed.
void void
TimelineItem::generateBody(const QString &body) TimelineItem::generateBody(const QString &body)

View File

@ -461,8 +461,10 @@ TimelineView::updatePendingMessage(int txn_id, QString event_id)
auto msg = pending_msgs_.dequeue(); auto msg = pending_msgs_.dequeue();
msg.event_id = event_id; msg.event_id = event_id;
if (msg.widget) if (msg.widget) {
msg.widget->setEventId(event_id); msg.widget->setEventId(event_id);
msg.widget->markReceived();
}
pending_sent_msgs_.append(msg); pending_sent_msgs_.append(msg);
} }