From 3533f104bd32419bfc9031267cd73e9715119b83 Mon Sep 17 00:00:00 2001 From: Nicolas Werner Date: Sun, 9 Jun 2024 15:30:30 +0200 Subject: [PATCH] Properly restore room mentions state after edit --- src/timeline/InputBar.h | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/src/timeline/InputBar.h b/src/timeline/InputBar.h index c38de662..2b1c84e4 100644 --- a/src/timeline/InputBar.h +++ b/src/timeline/InputBar.h @@ -197,12 +197,14 @@ public slots: textBeforeEdit = text(); mentionsBefore = mentions_; mentionTextsBefore = mentionTexts_; + containsAtRoomBefore = containsAtRoom_; emit mentionsChanged(); } void restoreAfterEdit() { mentions_ = mentionsBefore; mentionTexts_ = mentionTextsBefore; + containsAtRoom_ = containsAtRoomBefore; mentionsBefore.clear(); mentionTextsBefore.clear(); setText(textBeforeEdit); @@ -216,6 +218,9 @@ public slots: mentions_ = newMentions; mentionTexts_ = newMentionTexts; + + this->containsAtRoom_ = newMentions.contains(u"@room"); + emit mentionsChanged(); } @@ -331,6 +336,7 @@ private: // store stuff during edits QStringList mentionsBefore, mentionTextsBefore; QString textBeforeEdit; + bool containsAtRoomBefore = false; using UploadHandle = std::unique_ptr; std::vector unconfirmedUploads;