diff --git a/src/components/comment_row.rs b/src/components/comment_row.rs index 1dadf4a..3366f56 100644 --- a/src/components/comment_row.rs +++ b/src/components/comment_row.rs @@ -77,6 +77,7 @@ impl FactoryComponent for CommentRow { #[watch] set_markup: &markdown_to_pango_markup(self.comment.comment.content.clone()), set_halign: gtk::Align::Start, + set_wrap: true, set_use_markup: true, }, diff --git a/src/components/community_page.rs b/src/components/community_page.rs index 06c134d..4b5402d 100644 --- a/src/components/community_page.rs +++ b/src/components/community_page.rs @@ -66,6 +66,7 @@ impl SimpleComponent for CommunityPage { #[watch] set_markup: &markdown_to_pango_markup(model.info.community.description.clone().unwrap_or("".to_string())), set_use_markup: true, + set_wrap: true, }, gtk::Box { set_orientation: gtk::Orientation::Horizontal, diff --git a/src/components/mention_row.rs b/src/components/mention_row.rs index dadf590..2bc419b 100644 --- a/src/components/mention_row.rs +++ b/src/components/mention_row.rs @@ -47,6 +47,7 @@ impl FactoryComponent for MentionRow { set_label: &self.comment.post.name, add_css_class: "font-bold", set_halign: gtk::Align::Start, + set_wrap: true, add_controller = gtk::GestureClick { connect_pressed[sender] => move |_, _, _, _| { sender.input(MentionRowMsg::OpenCommunity); @@ -98,6 +99,7 @@ impl FactoryComponent for MentionRow { gtk::Label { #[watch] set_markup: &markdown_to_pango_markup(self.comment.comment.content.clone()), + set_wrap: true, set_halign: gtk::Align::Start, set_use_markup: true, }, diff --git a/src/components/moderates_row.rs b/src/components/moderates_row.rs index b4614a1..f24ff88 100644 --- a/src/components/moderates_row.rs +++ b/src/components/moderates_row.rs @@ -3,7 +3,7 @@ use lemmy_api_common::lemmy_db_views_actor::structs::CommunityModeratorView; use relm4::prelude::*; use relm4_components::web_image::WebImage; -use crate::util::get_web_image_url; +use crate::util::{get_web_image_url, markdown_to_pango_markup}; #[derive(Debug)] pub struct ModeratesRow { @@ -65,11 +65,15 @@ impl FactoryComponent for ModeratesRow { }, gtk::Label { - set_label: &self.community.community.description.clone().unwrap_or("".to_string()), + set_label: &markdown_to_pango_markup(self.community.community.description.clone().unwrap_or("".to_string())), + set_use_markup: true, + set_wrap: true, set_halign: gtk::Align::Start, }, - gtk::Separator {} + gtk::Separator { + set_margin_bottom: 10, + } } } diff --git a/src/components/post_page.rs b/src/components/post_page.rs index 7166477..2f85424 100644 --- a/src/components/post_page.rs +++ b/src/components/post_page.rs @@ -70,11 +70,13 @@ impl SimpleComponent for PostPage { gtk::Label { #[watch] set_text: &model.info.post_view.post.name, + set_wrap: true, add_css_class: "font-very-bold", }, gtk::Label { #[watch] set_markup: &markdown_to_pango_markup(model.info.post_view.post.body.clone().unwrap_or("".to_string())), + set_wrap: true, set_margin_top: 10, set_use_markup: true, }, diff --git a/src/components/post_row.rs b/src/components/post_row.rs index 3bfda50..10840d4 100644 --- a/src/components/post_row.rs +++ b/src/components/post_row.rs @@ -79,6 +79,7 @@ impl FactoryComponent for PostRow { gtk::Label { set_halign: gtk::Align::Start, set_text: &self.post.post.name, + set_wrap: true, add_css_class: "font-bold", add_controller = gtk::GestureClick { connect_pressed[sender] => move |_, _, _, _| { diff --git a/src/components/private_message_row.rs b/src/components/private_message_row.rs index b731ce5..3929138 100644 --- a/src/components/private_message_row.rs +++ b/src/components/private_message_row.rs @@ -60,6 +60,7 @@ impl FactoryComponent for PrivateMessageRow { gtk::Label { #[watch] set_markup: &markdown_to_pango_markup(self.message.private_message.content.clone()), + set_wrap: true, set_halign: gtk::Align::Start, set_use_markup: true, }, diff --git a/src/components/profile_page.rs b/src/components/profile_page.rs index 6356b92..9fef5df 100644 --- a/src/components/profile_page.rs +++ b/src/components/profile_page.rs @@ -63,6 +63,7 @@ impl SimpleComponent for ProfilePage { gtk::Label { #[watch] set_markup: &markdown_to_pango_markup(model.info.person_view.person.bio.clone().unwrap_or("".to_string())), + set_wrap: true, set_use_markup: true, }, diff --git a/src/main.rs b/src/main.rs index e89ab59..5011dd2 100644 --- a/src/main.rs +++ b/src/main.rs @@ -13,7 +13,7 @@ use components::{ instances_page::{InstancesPage, InstancesPageInput}, post_page::{self, PostPage}, post_row::PostRow, - profile_page::{ProfilePage, ProfileInput}, + profile_page::{ProfileInput, ProfilePage}, }; use dialogs::about::AboutDialog; use gtk::prelude::*; @@ -206,6 +206,7 @@ impl SimpleComponent for App { gtk::Label { #[watch] set_text: &model.message.clone().unwrap_or("".to_string()), + set_wrap: true, }, gtk::Button { set_label: "Go back", @@ -406,7 +407,9 @@ impl SimpleComponent for App { } AppMsg::OpenPerson(person_id) => { self.state = AppState::Loading; - self.profile_page.sender().emit(ProfileInput::FetchPerson(Some(person_id))); + self.profile_page + .sender() + .emit(ProfileInput::FetchPerson(Some(person_id))); } AppMsg::OpenCommunity(community_id) => { self.state = AppState::Loading;