Removed icons

Mikayla Maki created

Change summary

assets/keymaps/default.json               |  2 
crates/context_menu/src/context_menu.rs   | 85 +++++++-----------------
crates/editor/src/mouse_context_menu.rs   |  9 +-
crates/project_panel/src/project_panel.rs | 18 ++--
crates/search/src/project_search.rs       |  8 +
crates/workspace/src/pane.rs              | 19 ++--
crates/workspace/src/workspace.rs         |  1 
crates/zed/src/menus.rs                   |  2 
8 files changed, 55 insertions(+), 89 deletions(-)

Detailed changes

assets/keymaps/default.json 🔗

@@ -300,7 +300,7 @@
                 8
             ],
             "cmd-b": "workspace::ToggleLeftSidebar",
-            "cmd-shift-f": "project_search::Deploy",
+            "cmd-shift-f": "workspace::NewSearch",
             "cmd-k cmd-t": "theme_selector::Toggle",
             "cmd-k cmd-s": "zed::OpenKeymap",
             "cmd-t": "project_symbols::Toggle",

crates/context_menu/src/context_menu.rs 🔗

@@ -22,21 +22,20 @@ pub fn init(cx: &mut MutableAppContext) {
     cx.add_action(ContextMenu::cancel);
 }
 
+//
 pub enum ContextMenuItem {
     Item {
         label: String,
         action: Box<dyn Action>,
-        icon: Option<String>,
     },
     Separator,
 }
 
 impl ContextMenuItem {
-    pub fn item(label: impl ToString, icon: Option<&str>, action: impl 'static + Action) -> Self {
+    pub fn item(label: impl ToString, action: impl 'static + Action) -> Self {
         Self::Item {
             label: label.to_string(),
             action: Box::new(action),
-            icon: icon.map(|item| item.to_string()),
         }
     }
 
@@ -256,31 +255,15 @@ impl ContextMenu {
                 Flex::column()
                     .with_children(self.items.iter().enumerate().map(|(ix, item)| {
                         match item {
-                            ContextMenuItem::Item { label, icon, .. } => {
+                            ContextMenuItem::Item { label, .. } => {
                                 let style = style
                                     .item
                                     .style_for(Default::default(), Some(ix) == self.selected_index);
-                                let mut line = Flex::row();
-                                if let Some(_) = icon {
-                                    line.add_child(
-                                        Empty::new()
-                                            .constrained()
-                                            .with_width(style.icon_width)
-                                            .boxed(),
-                                    );
-                                }
-                                line.add_child(
-                                    Label::new(label.to_string(), style.label.clone())
-                                        .contained()
-                                        .with_style(style.container)
-                                        .with_margin_left(if icon.is_some() {
-                                            style.icon_spacing
-                                        } else {
-                                            0.
-                                        })
-                                        .boxed(),
-                                );
-                                line.boxed()
+
+                                Label::new(label.to_string(), style.label.clone())
+                                    .contained()
+                                    .with_style(style.container)
+                                    .boxed()
                             }
                             ContextMenuItem::Separator => Empty::new()
                                 .collapsed()
@@ -333,50 +316,30 @@ impl ContextMenu {
             Flex::column()
                 .with_children(self.items.iter().enumerate().map(|(ix, item)| {
                     match item {
-                        ContextMenuItem::Item {
-                            label,
-                            action,
-                            icon,
-                        } => {
+                        ContextMenuItem::Item { label, action } => {
                             let action = action.boxed_clone();
                             MouseEventHandler::new::<MenuItem, _, _>(ix, cx, |state, _| {
                                 let style =
                                     style.item.style_for(state, Some(ix) == self.selected_index);
 
-                                let mut line = Flex::row();
-                                if let Some(icon_file) = icon {
-                                    line.add_child(
-                                        Svg::new(format!("icons/{}", icon_file))
-                                            .with_color(style.label.color)
-                                            .constrained()
-                                            .with_width(style.icon_width)
-                                            .aligned()
+                                Flex::row()
+                                    .with_child(
+                                        Label::new(label.to_string(), style.label.clone())
+                                            .contained()
                                             .boxed(),
                                     )
-                                }
-
-                                line.with_child(
-                                    Label::new(label.to_string(), style.label.clone())
-                                        .contained()
-                                        .with_margin_left(if icon.is_some() {
-                                            style.icon_spacing
-                                        } else {
-                                            0.
-                                        })
-                                        .boxed(),
-                                )
-                                .with_child({
-                                    KeystrokeLabel::new(
-                                        action.boxed_clone(),
-                                        style.keystroke.container,
-                                        style.keystroke.text.clone(),
-                                    )
-                                    .flex_float()
+                                    .with_child({
+                                        KeystrokeLabel::new(
+                                            action.boxed_clone(),
+                                            style.keystroke.container,
+                                            style.keystroke.text.clone(),
+                                        )
+                                        .flex_float()
+                                        .boxed()
+                                    })
+                                    .contained()
+                                    .with_style(style.container)
                                     .boxed()
-                                })
-                                .contained()
-                                .with_style(style.container)
-                                .boxed()
                             })
                             .with_cursor_style(CursorStyle::PointingHand)
                             .on_click(MouseButton::Left, move |_, cx| {

crates/editor/src/mouse_context_menu.rs 🔗

@@ -48,13 +48,12 @@ pub fn deploy_context_menu(
         menu.show(
             position,
             vec![
-                ContextMenuItem::item("Rename Symbol", None, Rename),
-                ContextMenuItem::item("Go To Definition", None, GoToDefinition),
-                ContextMenuItem::item("Go To Type Definition", None, GoToTypeDefinition),
-                ContextMenuItem::item("Find All References", None, FindAllReferences),
+                ContextMenuItem::item("Rename Symbol", Rename),
+                ContextMenuItem::item("Go To Definition", GoToDefinition),
+                ContextMenuItem::item("Go To Type Definition", GoToTypeDefinition),
+                ContextMenuItem::item("Find All References", FindAllReferences),
                 ContextMenuItem::item(
                     "Code Actions",
-                    None,
                     ToggleCodeActions {
                         deployed_from_indicator: false,
                     },

crates/project_panel/src/project_panel.rs 🔗

@@ -269,32 +269,30 @@ impl ProjectPanel {
             if !project.is_remote() {
                 menu_entries.push(ContextMenuItem::item(
                     "Add Folder to Project",
-                    None,
                     workspace::AddFolderToProject,
                 ));
                 if is_root {
                     menu_entries.push(ContextMenuItem::item(
                         "Remove from Project",
-                        None,
                         workspace::RemoveWorktreeFromProject(worktree_id),
                     ));
                 }
             }
-            menu_entries.push(ContextMenuItem::item("New File", None, AddFile));
-            menu_entries.push(ContextMenuItem::item("New Folder", None, AddDirectory));
+            menu_entries.push(ContextMenuItem::item("New File", AddFile));
+            menu_entries.push(ContextMenuItem::item("New Folder", AddDirectory));
             menu_entries.push(ContextMenuItem::Separator);
-            menu_entries.push(ContextMenuItem::item("Copy", None, Copy));
-            menu_entries.push(ContextMenuItem::item("Copy Path", None, CopyPath));
-            menu_entries.push(ContextMenuItem::item("Cut", None, Cut));
+            menu_entries.push(ContextMenuItem::item("Copy", Copy));
+            menu_entries.push(ContextMenuItem::item("Copy Path", CopyPath));
+            menu_entries.push(ContextMenuItem::item("Cut", Cut));
             if let Some(clipboard_entry) = self.clipboard_entry {
                 if clipboard_entry.worktree_id() == worktree.id() {
-                    menu_entries.push(ContextMenuItem::item("Paste", None, Paste));
+                    menu_entries.push(ContextMenuItem::item("Paste", Paste));
                 }
             }
             menu_entries.push(ContextMenuItem::Separator);
-            menu_entries.push(ContextMenuItem::item("Rename", None, Rename));
+            menu_entries.push(ContextMenuItem::item("Rename", Rename));
             if !is_root {
-                menu_entries.push(ContextMenuItem::item("Delete", None, Delete));
+                menu_entries.push(ContextMenuItem::item("Delete", Delete));
             }
         }
 

crates/search/src/project_search.rs 🔗

@@ -24,7 +24,7 @@ use workspace::{
     Item, ItemHandle, ItemNavHistory, Pane, ToolbarItemLocation, ToolbarItemView, Workspace,
 };
 
-actions!(project_search, [Deploy, SearchInNew, ToggleFocus]);
+actions!(project_search, [SearchInNew, ToggleFocus]);
 
 #[derive(Default)]
 struct ActiveSearches(HashMap<WeakModelHandle<Project>, WeakViewHandle<ProjectSearchView>>);
@@ -431,7 +431,11 @@ impl ProjectSearchView {
 
     // Re-activate the most recently activated search or the most recent if it has been closed.
     // If no search exists in the workspace, create a new one.
-    fn deploy(workspace: &mut Workspace, _: &Deploy, cx: &mut ViewContext<Workspace>) {
+    fn deploy(
+        workspace: &mut Workspace,
+        _: &workspace::NewSearch,
+        cx: &mut ViewContext<Workspace>,
+    ) {
         // Clean up entries for dropped projects
         cx.update_global(|state: &mut ActiveSearches, cx| {
             state.0.retain(|project, _| project.is_upgradable(cx))

crates/workspace/src/pane.rs 🔗

@@ -1,5 +1,5 @@
 use super::{ItemHandle, SplitDirection};
-use crate::{toolbar::Toolbar, Item, NewFile, NewTerminal, WeakItemHandle, Workspace};
+use crate::{toolbar::Toolbar, Item, NewFile, NewSearch, NewTerminal, WeakItemHandle, Workspace};
 use anyhow::Result;
 use collections::{HashMap, HashSet, VecDeque};
 use context_menu::{ContextMenu, ContextMenuItem};
@@ -188,7 +188,7 @@ pub struct NavigationEntry {
 impl Pane {
     pub fn new(cx: &mut ViewContext<Self>) -> Self {
         let handle = cx.weak_handle();
-        let split_menu = cx.add_view(|cx| ContextMenu::new(cx));
+        let context_menu = cx.add_view(|cx| ContextMenu::new(cx));
         Self {
             items: Vec::new(),
             is_active: true,
@@ -203,7 +203,7 @@ impl Pane {
                 pane: handle.clone(),
             })),
             toolbar: cx.add_view(|_| Toolbar::new(handle)),
-            context_menu: split_menu,
+            context_menu,
         }
     }
 
@@ -841,10 +841,10 @@ impl Pane {
             menu.show(
                 action.position,
                 vec![
-                    ContextMenuItem::item("Split Right", None, SplitRight),
-                    ContextMenuItem::item("Split Left", None, SplitLeft),
-                    ContextMenuItem::item("Split Up", None, SplitUp),
-                    ContextMenuItem::item("Split Down", None, SplitDown),
+                    ContextMenuItem::item("Split Right", SplitRight),
+                    ContextMenuItem::item("Split Left", SplitLeft),
+                    ContextMenuItem::item("Split Up", SplitUp),
+                    ContextMenuItem::item("Split Down", SplitDown),
                 ],
                 cx,
             );
@@ -856,8 +856,9 @@ impl Pane {
             menu.show(
                 action.position,
                 vec![
-                    ContextMenuItem::item("New File", Some("circle_info_12.svg"), NewFile),
-                    ContextMenuItem::item("New Terminal", Some("terminal_12.svg"), NewTerminal),
+                    ContextMenuItem::item("New File", NewFile),
+                    ContextMenuItem::item("New Terminal", NewTerminal),
+                    ContextMenuItem::item("New Search", NewSearch),
                 ],
                 cx,
             );

crates/zed/src/menus.rs 🔗

@@ -136,7 +136,7 @@ pub fn menus() -> Vec<Menu<'static>> {
                 },
                 MenuItem::Action {
                     name: "Find In Project",
-                    action: Box::new(search::project_search::Deploy),
+                    action: Box::new(workspace::NewSearch),
                 },
                 MenuItem::Separator,
                 MenuItem::Action {