From 5213eb183509909275398eb53801142977678cdb Mon Sep 17 00:00:00 2001 From: Ivan Habunek Date: Wed, 28 Aug 2019 17:04:45 +0200 Subject: [PATCH] Focus status after posting --- toot/tui/app.py | 4 ++++ toot/tui/timeline.py | 4 ++++ 2 files changed, 8 insertions(+) diff --git a/toot/tui/app.py b/toot/tui/app.py index 044a08c..b80998b 100644 --- a/toot/tui/app.py +++ b/toot/tui/app.py @@ -280,7 +280,11 @@ class TUI(urwid.Frame): data = api.post_status(self.app, self.user, content, spoiler_text=warning, visibility=visibility) status = Status(data, self.app.instance) + + # TODO: instead of this, fetch new items from the timeline? self.timeline.prepend_status(status) + self.timeline.focus_status(status) + self.footer.set_message("Status posted {} \\o/".format(status.id)) self.close_overlay() diff --git a/toot/tui/timeline.py b/toot/tui/timeline.py index 6bbdd33..184f997 100644 --- a/toot/tui/timeline.py +++ b/toot/tui/timeline.py @@ -150,6 +150,10 @@ class Timeline(urwid.Columns): return n raise ValueError("Status with ID {} not found".format(id)) + def focus_status(self, status): + index = self.get_status_index(status.id) + self.status_list.body.set_focus(index) + def update_status(self, status): """Overwrite status in list with the new instance and redraw.""" index = self.get_status_index(status.id)