Persist settings nav across every settings sub-page

Each ely://settings/* route used to render its content alone, with no
nav column — so clicking a sidebar item replaced the entire page and
read to users as a brand-new tab opening. Move the nav column into a
shared render_settings_shell wrapper and route every settings/* URL
through it. ely://sync/status reuses the sync route highlight.

Also stop in-place navigation from stealing focus to the omnibar so
the destination page keeps focus for scroll and interaction.
This commit is contained in:
2026-05-10 00:45:21 -04:00
parent fcac3268ad
commit 2352d4658d
5 changed files with 77 additions and 24 deletions
+1 -1
View File
@@ -22,7 +22,7 @@ pub(crate) use brand_glyph::{accent_color_for_host, render_glyph_for};
pub(crate) use command_overlay::render_command_overlay;
pub(crate) use home::render_home_page;
pub(crate) use plugin_detail_view::render_plugin_detail_view;
pub(crate) use settings_layout::render_settings_landing;
pub(crate) use settings_layout::render_settings_shell;
pub(crate) use sidebar::{panel_bg, panel_shadow};
pub(crate) use sidebar_header::{
render_sidebar_header, render_workspace_disclosure, render_workspace_disclosure_backdrop,