From 45fa03410796db8ac488b781b915e4c80a588f1a Mon Sep 17 00:00:00 2001 From: Finn Evers Date: Fri, 5 Sep 2025 21:50:51 +0200 Subject: [PATCH] Restore notification panel settings (#37661) Follow-up to https://github.com/zed-industries/zed/pull/37489 Notification panel settings were always missing the content, hence this PR adds it. After #37489, the use of the same content twice broke things, which currently makes the notification panel non-configurable on Nightly. This PR fixes this. There once was an issue about the documentation for the panel being wrong as well. However, I was just unable to find that sadly. Release Notes: - N/A --- crates/collab_ui/src/panel_settings.rs | 30 ++++++++++++++++++++------ 1 file changed, 23 insertions(+), 7 deletions(-) diff --git a/crates/collab_ui/src/panel_settings.rs b/crates/collab_ui/src/panel_settings.rs index bae118d819c2e38e7b77e5aa841c084e4c45d6e8..81d441167c06ef75c7e251dffefc55ff099a48e8 100644 --- a/crates/collab_ui/src/panel_settings.rs +++ b/crates/collab_ui/src/panel_settings.rs @@ -44,8 +44,24 @@ pub struct ChatPanelSettingsContent { pub default_width: Option, } -#[derive(Deserialize, Debug, SettingsKey)] -#[settings_key(key = "notification_panel")] +#[derive(Clone, Default, Serialize, Deserialize, JsonSchema, Debug, SettingsUi, SettingsKey)] +#[settings_key(key = "collaboration_panel")] +pub struct PanelSettingsContent { + /// Whether to show the panel button in the status bar. + /// + /// Default: true + pub button: Option, + /// Where to dock the panel. + /// + /// Default: left + pub dock: Option, + /// Default width of the panel in pixels. + /// + /// Default: 240 + pub default_width: Option, +} + +#[derive(Deserialize, Debug)] pub struct NotificationPanelSettings { pub button: bool, pub dock: DockPosition, @@ -53,19 +69,19 @@ pub struct NotificationPanelSettings { } #[derive(Clone, Default, Serialize, Deserialize, JsonSchema, Debug, SettingsUi, SettingsKey)] -#[settings_key(key = "collaboration_panel")] -pub struct PanelSettingsContent { +#[settings_key(key = "notification_panel")] +pub struct NotificationPanelSettingsContent { /// Whether to show the panel button in the status bar. /// /// Default: true pub button: Option, /// Where to dock the panel. /// - /// Default: left + /// Default: right pub dock: Option, /// Default width of the panel in pixels. /// - /// Default: 240 + /// Default: 300 pub default_width: Option, } @@ -106,7 +122,7 @@ impl Settings for ChatPanelSettings { } impl Settings for NotificationPanelSettings { - type FileContent = PanelSettingsContent; + type FileContent = NotificationPanelSettingsContent; fn load( sources: SettingsSources,