[fractal] room-history: Use Pills for emotes
- From: Julian Sparber <jsparber src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [fractal] room-history: Use Pills for emotes
- Date: Tue, 31 May 2022 16:15:54 +0000 (UTC)
commit bbd5cef8cc82aeb395bf5445b9000a7fb350964f
Author: Kévin Commaille <zecakeh tedomum fr>
Date: Sun May 15 15:52:29 2022 +0200
room-history: Use Pills for emotes
src/session/content/room_history/message_row/text.rs | 10 +++-------
src/session/user.rs | 6 ++++++
2 files changed, 9 insertions(+), 7 deletions(-)
---
diff --git a/src/session/content/room_history/message_row/text.rs
b/src/session/content/room_history/message_row/text.rs
index 4921985d6..05d379872 100644
--- a/src/session/content/room_history/message_row/text.rs
+++ b/src/session/content/room_history/message_row/text.rs
@@ -105,14 +105,10 @@ impl MessageText {
) {
if let Some(body) = formatted
.filter(is_valid_formatted_body)
- .and_then(|formatted| {
- let body = format!("<b>{}</b> {}", sender.display_name(), formatted.body);
-
- parse_formatted_body(&body).map(|_| formatted.body)
- })
+ .and_then(|formatted| parse_formatted_body(&formatted.body).map(|_| formatted.body))
{
let formatted = FormattedBody {
- body: format!("<b>{}</b> {}", sender.display_name(), strip_reply(&body)),
+ body: format!("{} {}", sender.html_mention(), strip_reply(&body)),
format: MessageFormat::Html,
};
@@ -120,7 +116,7 @@ impl MessageText {
self.build_html(html, room);
} else {
self.build_text(
- format!("<b>{}</b> {}", sender.display_name(), linkify(&body)),
+ format!("{} {}", sender.html_mention(), linkify(&body)),
WithMentions::Yes(room),
);
}
diff --git a/src/session/user.rs b/src/session/user.rs
index 0c62129f8..b6b419067 100644
--- a/src/session/user.rs
+++ b/src/session/user.rs
@@ -272,6 +272,12 @@ pub trait UserExt: IsA<User> {
let user = self.upcast_ref();
Pill::for_user(user)
}
+
+ /// Get the HTML mention representation for this `User`.
+ fn html_mention(&self) -> String {
+ let uri = self.user_id().matrix_to_uri();
+ format!("<a href=\"{uri}\">{}</a>", self.display_name())
+ }
}
impl<T: IsA<User>> UserExt for T {}
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]