diff --git a/assets/icons/logo_256.svg b/assets/icons/logo_256.svg new file mode 100644 index 0000000000..4629600b41 --- /dev/null +++ b/assets/icons/logo_256.svg @@ -0,0 +1,41 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/assets/icons/logo_shadow_256.svg b/assets/icons/logo_shadow_256.svg new file mode 100644 index 0000000000..6c331f43ab --- /dev/null +++ b/assets/icons/logo_shadow_256.svg @@ -0,0 +1,23 @@ + + + + + + + + + + + + + + + + + + + + + + + diff --git a/crates/theme/src/theme.rs b/crates/theme/src/theme.rs index d331ca80a9..8ee58a8af2 100644 --- a/crates/theme/src/theme.rs +++ b/crates/theme/src/theme.rs @@ -76,6 +76,8 @@ pub struct Workspace { #[derive(Clone, Deserialize, Default)] pub struct BlankPaneStyle { pub logo: IconStyle, + pub logo_shadow: IconStyle, + pub logo_container: ContainerStyle, pub keyboard_hints: ContainerStyle, pub keyboard_hint: Interactive, pub keyboard_hint_width: f32, diff --git a/crates/workspace/src/pane.rs b/crates/workspace/src/pane.rs index abd410d875..6d20700bcc 100644 --- a/crates/workspace/src/pane.rs +++ b/crates/workspace/src/pane.rs @@ -1429,7 +1429,6 @@ impl Pane { fn render_blank_pane(&mut self, theme: &Theme, cx: &mut RenderContext) -> ElementBox { let background = theme.workspace.background; - let keystroke_style = &theme.context_menu.item; let theme = &theme.workspace.blank_pane; Stack::new() .with_children([ @@ -1440,7 +1439,14 @@ impl Pane { Flex::column() .align_children_center() .with_children([ - theme::ui::icon(&theme.logo).aligned().boxed(), + Stack::new() + .with_children([ + theme::ui::icon(&theme.logo_shadow).aligned().boxed(), + theme::ui::icon(&theme.logo).aligned().boxed(), + ]) + .contained() + .with_style(theme.logo_container) + .boxed(), Flex::column() .with_children({ enum KeyboardHint {} @@ -1453,14 +1459,13 @@ impl Pane { idx, cx, move |state, cx| { + let style = keyboard_hint.style_for(state, false); theme::ui::keystroke_label_for( cx.window_id(), workspace_id, text, - &keyboard_hint.style_for(state, false), - &keystroke_style - .style_for(state, false) - .keystroke, + &style, + &style, hint_action, ) .boxed() diff --git a/crates/zed/src/main.rs b/crates/zed/src/main.rs index 2e2026309f..cbcd1aa1c6 100644 --- a/crates/zed/src/main.rs +++ b/crates/zed/src/main.rs @@ -709,7 +709,7 @@ pub fn dock_default_item_factory( pub fn background_actions() -> &'static [(&'static str, &'static dyn Action)] { &[ ("Go to file", &file_finder::Toggle), - ("Open the command palette", &command_palette::Toggle), + ("Open command palette", &command_palette::Toggle), ("Focus the dock", &FocusDock), ("Open recent projects", &recent_projects::OpenRecent), ("Change your settings", &OpenSettings), diff --git a/styles/src/styleTree/workspace.ts b/styles/src/styleTree/workspace.ts index 1789b523e7..984b6b5ed3 100644 --- a/styles/src/styleTree/workspace.ts +++ b/styles/src/styleTree/workspace.ts @@ -42,38 +42,46 @@ export default function workspace(colorScheme: ColorScheme) { return { background: background(colorScheme.lowest), blankPane: { + logoContainer: { + width: 256, + height: 256, + }, logo: { - color: border(layer, "active").color, - icon: "icons/logo_96.svg", + color: withOpacity("#000000", colorScheme.isLight ? 0.6 : 0.8), + icon: "icons/logo_256.svg", dimensions: { - width: 272, - height: 272, - } + width: 256, + height: 256, + }, + }, + logoShadow: { + color: withOpacity(colorScheme.isLight ? "#FFFFFF" : colorScheme.lowest.base.default.background, colorScheme.isLight ? 1 : 0.6), + icon: "icons/logo_shadow_256.svg", + dimensions: { + width: 256, + height: 256, + }, }, keyboardHints: { margin: { - top: 32, - // bottom: -8. + top: 96, }, - padding: { - top: 8, - left: 8, - right: 8, - }, - background: background(colorScheme.lowest), - border: border(layer, "active"), cornerRadius: 4, }, keyboardHint: { ...text(layer, "sans", "variant", { size: "sm" }), - margin: { - bottom: 8 + padding: { + top: 3, + left: 8, + right: 8, + bottom: 3 }, + cornerRadius: 8, hover: { - ...text(layer, "sans", "hovered", { size: "sm" }), + ...text(layer, "sans", "active", { size: "sm" }), } }, - keyboardHintWidth: 272, + keyboardHintWidth: 320, }, joiningProjectAvatar: { cornerRadius: 40,