notedeck

One damus client to rule them all
git clone git://jb55.com/notedeck
Log | Files | Refs | README | LICENSE

commit 3297ad988c2c9c1505dcc3ef746a61563ec7f5e6
parent 4586d8638785ee5d383a7bc1e3c9c0eecfb9c211
Author: William Casarin <jb55@jb55.com>
Date:   Sun, 25 Jan 2026 15:13:15 -0800

nav: reset toolbar visibility on navigation

Fixes a bug where the toolbar would remain hidden after navigation.
The toolbar visibility state persisted across navigation events, so if
you scrolled down to hide the toolbar then navigated to a new route,
the toolbar would stay hidden and scrolling wouldn't bring it back.

Now we reset the toolbar to visible when navigation occurs (both
forward navigation and when returning/going back), ensuring a
consistent UX where the toolbar always appears when entering a new
route.

Fixes: 293262d5536b ("columns: auto-hide toolbar+header when scrolling")
Tested-by: William Casarin <jb55@jb55.com>
Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>

Diffstat:
Mcrates/notedeck_columns/src/nav.rs | 10++++++++++
1 file changed, 10 insertions(+), 0 deletions(-)

diff --git a/crates/notedeck_columns/src/nav.rs b/crates/notedeck_columns/src/nav.rs @@ -277,6 +277,11 @@ fn process_nav_resp( if let Some(action) = response.action { match action { NavAction::Returned(return_type) => { + // Reset toolbar visibility when returning from a route + let toolbar_visible_id = egui::Id::new("toolbar_visible"); + ui.ctx() + .data_mut(|d| d.insert_temp(toolbar_visible_id, true)); + let r = app .columns_mut(ctx.i18n, ctx.accounts) .column_mut(col) @@ -303,6 +308,11 @@ fn process_nav_resp( } NavAction::Navigated => { + // Reset toolbar visibility when navigating to a new route + let toolbar_visible_id = egui::Id::new("toolbar_visible"); + ui.ctx() + .data_mut(|d| d.insert_temp(toolbar_visible_id, true)); + handle_navigating_edit_profile(ctx.ndb, ctx.accounts, app, col); handle_navigating_timeline( ctx.ndb,