From 174bae36bdb5b4fc924c4b92c2716813d85f1d2e Mon Sep 17 00:00:00 2001 From: Danilo Leal <67129314+danilo-leal@users.noreply.github.com> Date: Fri, 10 Oct 2025 20:56:18 -0300 Subject: [PATCH] settings_ui: Fix content page title (#39987) Follow up to https://github.com/zed-industries/zed/pull/39979. The previous PR made it the title would change even if you were on a non-root tree view item. This PR fixes that by fixating the title to show only the root tree view item. Release Notes: - N/A --- crates/settings_ui/src/settings_ui.rs | 15 +++++++++------ 1 file changed, 9 insertions(+), 6 deletions(-) diff --git a/crates/settings_ui/src/settings_ui.rs b/crates/settings_ui/src/settings_ui.rs index e5be0ed570fd82edeeec8092434a9db5181af00f..a9cfd5bc638271857bd910c4b6a185e6d3e0e67f 100644 --- a/crates/settings_ui/src/settings_ui.rs +++ b/crates/settings_ui/src/settings_ui.rs @@ -1881,14 +1881,17 @@ impl SettingsWindow { .find(|(_, (_, item))| !matches!(item, SettingsPageItem::SectionHeader(_))) .map(|(index, _)| index); + let root_nav_label = self + .navbar_entries + .iter() + .find(|entry| entry.is_root && entry.page_index == self.current_page_index()) + .map(|entry| entry.title); + page_content = page_content .when(sub_page_stack().is_empty(), |this| { - this.when_some( - self.navbar_entries - .get(self.navbar_entry) - .map(|entry| entry.title), - |this, title| this.child(Label::new(title).size(LabelSize::Large).mb_3()), - ) + this.when_some(root_nav_label, |this, title| { + this.child(Label::new(title).size(LabelSize::Large).mt_2().mb_3()) + }) }) .children(items.clone().into_iter().enumerate().map( |(index, (actual_item_index, item))| {