workspace: Allow disabling of padding on zoomed panels (#31913)
Cretezy
and
Mikayla Maki
created 2 months ago
Screenshot:
| Before | After |
| -------|------|
|

|

|
|

|

|
Release Notes:
- Added `zoomed_padding` to allow disabling of padding around zoomed
panels
Co-authored-by: Mikayla Maki <mikayla@zed.dev>
Change summary
assets/settings/default.json | 6 ++++++
crates/workspace/src/workspace.rs | 4 ++++
crates/workspace/src/workspace_settings.rs | 7 +++++++
3 files changed, 17 insertions(+)
Detailed changes
@@ -162,6 +162,12 @@
// 2. Always quit the application
// "on_last_window_closed": "quit_app",
"on_last_window_closed": "platform_default",
+ // Whether to show padding for zoomed panels.
+ // When enabled, zoomed center panels (e.g. code editor) will have padding all around,
+ // while zoomed bottom/left/right panels will have padding to the top/right/left (respectively).
+ //
+ // Default: true
+ "zoomed_padding": true,
// Whether to use the system provided dialogs for Open and Save As.
// When set to false, Zed will use the built-in keyboard-first pickers.
"use_system_path_prompts": true,
@@ -6633,6 +6633,10 @@ impl Render for Workspace {
.inset_0()
.shadow_lg();
+ if !WorkspaceSettings::get_global(cx).zoomed_padding {
+ return Some(div);
+ }
+
Some(match self.zoomed_position {
Some(DockPosition::Left) => div.right_2().border_r_1(),
Some(DockPosition::Right) => div.left_2().border_l_1(),
@@ -29,6 +29,7 @@ pub struct WorkspaceSettings {
pub on_last_window_closed: OnLastWindowClosed,
pub resize_all_panels_in_dock: Vec<DockPosition>,
pub close_on_file_delete: bool,
+ pub zoomed_padding: bool,
}
#[derive(Copy, Clone, Default, Serialize, Deserialize, JsonSchema)]
@@ -202,6 +203,12 @@ pub struct WorkspaceSettingsContent {
///
/// Default: false
pub close_on_file_delete: Option<bool>,
+ /// Whether to show padding for zoomed panels.
+ /// When enabled, zoomed bottom panels will have some top padding,
+ /// while zoomed left/right panels will have padding to the right/left (respectively).
+ ///
+ /// Default: true
+ pub zoomed_padding: Option<bool>,
}
#[derive(Deserialize)]