From 029d83a1c59e206b9b5a476b67c6fe17489281e1 Mon Sep 17 00:00:00 2001 From: Simon Tatham Date: Sat, 30 Dec 2023 11:25:27 +0000 Subject: [PATCH] Add a couple more primary timelines. --- src/activity_stack.rs | 2 ++ src/file.rs | 18 ++++++++++++++++++ src/menu.rs | 6 ++++-- src/tui.rs | 4 ++++ 4 files changed, 28 insertions(+), 2 deletions(-) diff --git a/src/activity_stack.rs b/src/activity_stack.rs index 21d7af5..ac3b252 100644 --- a/src/activity_stack.rs +++ b/src/activity_stack.rs @@ -2,6 +2,8 @@ pub enum NonUtilityActivity { MainMenu, HomeTimelineFile, + PublicTimelineFile, + LocalTimelineFile, } #[derive(PartialEq, Eq, Debug, Clone)] diff --git a/src/file.rs b/src/file.rs index 181d4c8..d24e04e 100644 --- a/src/file.rs +++ b/src/file.rs @@ -424,3 +424,21 @@ pub fn home_timeline(client: &mut Client) -> "HHHHHHHHHHHHHHHHHKH"))?; Ok(Box::new(file)) } + +pub fn local_timeline(client: &mut Client) -> + Result, ClientError> +{ + let file = FeedFile::new(client, FeedId::Local, ColouredString::general( + "Local public timeline ", + "HHHHHHHHHHHHHHHHHHHHHHHHHKH"))?; + Ok(Box::new(file)) +} + +pub fn public_timeline(client: &mut Client) -> + Result, ClientError> +{ + let file = FeedFile::new(client, FeedId::Public, ColouredString::general( + "Public timeline

", + "HHHHHHHHHHHHHHHHHHHKH"))?; + Ok(Box::new(file)) +} diff --git a/src/menu.rs b/src/menu.rs index b26d494..edd434f 100644 --- a/src/menu.rs +++ b/src/menu.rs @@ -188,9 +188,11 @@ pub fn main_menu() -> Box { NonUtilityActivity::HomeTimelineFile.into())); menu.add_blank_line(); menu.add_action(Pr('P'), "Public timeline (all servers)", - LogicalAction::NYI); + LogicalAction::Goto( + NonUtilityActivity::PublicTimelineFile.into())); menu.add_action(Pr('L'), "Local public timeline (this server)", - LogicalAction::NYI); + LogicalAction::Goto( + NonUtilityActivity::LocalTimelineFile.into())); menu.add_action(Pr('#'), "Timeline for a #hashtag", LogicalAction::NYI); menu.add_blank_line(); diff --git a/src/tui.rs b/src/tui.rs index beaa956..b36fa50 100644 --- a/src/tui.rs +++ b/src/tui.rs @@ -371,6 +371,10 @@ fn new_activity_state(activity: Activity, client: &mut Client) -> Ok(logs_menu_2()), Activity::NonUtil(NonUtilityActivity::HomeTimelineFile) => home_timeline(client), + Activity::NonUtil(NonUtilityActivity::PublicTimelineFile) => + public_timeline(client), + Activity::NonUtil(NonUtilityActivity::LocalTimelineFile) => + local_timeline(client), _ => panic!("FIXME"), }; -- 2.30.2