diff --git a/resources/qml/dialogs/ConfirmJoinRoomDialog.qml b/resources/qml/dialogs/ConfirmJoinRoomDialog.qml index eb33cfc3..74208e3e 100644 --- a/resources/qml/dialogs/ConfirmJoinRoomDialog.qml +++ b/resources/qml/dialogs/ConfirmJoinRoomDialog.qml @@ -65,7 +65,7 @@ ApplicationWindow { } TextEdit { readOnly: true - textFormat: TextEdit.RichText + textFormat: TextEdit.PlainText text: summary.roomid font.pixelSize: fontMetrics.font.pixelSize * 0.8 color: palette.text diff --git a/resources/qml/dialogs/RoomSettingsDialog.qml b/resources/qml/dialogs/RoomSettingsDialog.qml index 283ad129..696cd9c9 100644 --- a/resources/qml/dialogs/RoomSettingsDialog.qml +++ b/resources/qml/dialogs/RoomSettingsDialog.qml @@ -656,6 +656,7 @@ ApplicationWindow { Label { // TextEdit does not trigger onClicked id: idLabel text: roomSettings.roomId + textFormat: Text.PlainText font.pixelSize: Math.floor(fontMetrics.font.pixelSize * 0.8) color: palette.text width: parent.width @@ -666,6 +667,7 @@ ApplicationWindow { } TextEdit{ // label does not allow selection id: textEdit + textFormat: TextEdit.PlainText visible: false text: roomSettings.roomId } diff --git a/src/ui/RoomSummary.cpp b/src/ui/RoomSummary.cpp index edef8339..35971b1c 100644 --- a/src/ui/RoomSummary.cpp +++ b/src/ui/RoomSummary.cpp @@ -9,6 +9,7 @@ #include "Cache.h" #include "ChatPage.h" #include "MatrixClient.h" +#include "Utils.h" RoomSummary::RoomSummary(std::string roomIdOrAlias_, std::vector vias_, @@ -76,6 +77,22 @@ RoomSummary::RoomSummary(std::string roomIdOrAlias_, vias); } +QString +RoomSummary::roomName() const +{ + return utils::replaceEmoji( + QString::fromStdString(room ? room->name : roomIdOrAlias).toHtmlEscaped()); +} +QString +RoomSummary::roomTopic() const +{ + return room ? utils::replaceEmoji( + utils::linkifyMessage(QString::fromStdString(room->topic) + .toHtmlEscaped() + .replace(QLatin1String("\n"), QLatin1String("
")))) + : ""; +} + void RoomSummary::join() { diff --git a/src/ui/RoomSummary.h b/src/ui/RoomSummary.h index 8225f0ae..8a8b293e 100644 --- a/src/ui/RoomSummary.h +++ b/src/ui/RoomSummary.h @@ -55,8 +55,8 @@ public: QString reason() const { return reason_; } QString roomid() const { return room ? QString::fromStdString(room->room_id) : ""; } - QString roomName() const { return QString::fromStdString(room ? room->name : roomIdOrAlias); } - QString roomTopic() const { return room ? QString::fromStdString(room->topic) : ""; } + QString roomName() const; + QString roomTopic() const; QString roomAvatarUrl() const { return room ? QString::fromStdString(room->avatar_url) : ""; } bool isInvite() const {