,
) -> Option {
let icon = if token_usage_ratio == TokenUsageRatio::Exceeded {
- Icon::new(IconName::X)
+ Icon::new(IconName::Close)
.color(Color::Error)
.size(IconSize::XSmall)
} else {
diff --git a/crates/agent_ui/src/slash_command_picker.rs b/crates/agent_ui/src/slash_command_picker.rs
index a757a2f50a..678562e059 100644
--- a/crates/agent_ui/src/slash_command_picker.rs
+++ b/crates/agent_ui/src/slash_command_picker.rs
@@ -306,7 +306,7 @@ where
)
.child(
Icon::new(IconName::ArrowUpRight)
- .size(IconSize::XSmall)
+ .size(IconSize::Small)
.color(Color::Muted),
),
)
diff --git a/crates/agent_ui/src/text_thread_editor.rs b/crates/agent_ui/src/text_thread_editor.rs
index 4836a95c8e..49a37002f7 100644
--- a/crates/agent_ui/src/text_thread_editor.rs
+++ b/crates/agent_ui/src/text_thread_editor.rs
@@ -2233,7 +2233,7 @@ fn render_thought_process_fold_icon_button(
let button = match status {
ThoughtProcessStatus::Pending => button
.child(
- Icon::new(IconName::LightBulb)
+ Icon::new(IconName::ToolThink)
.size(IconSize::Small)
.color(Color::Muted),
)
@@ -2248,7 +2248,7 @@ fn render_thought_process_fold_icon_button(
),
ThoughtProcessStatus::Completed => button
.style(ButtonStyle::Filled)
- .child(Icon::new(IconName::LightBulb).size(IconSize::Small))
+ .child(Icon::new(IconName::ToolThink).size(IconSize::Small))
.child(Label::new("Thought Process").single_line()),
};
diff --git a/crates/agent_ui/src/ui/onboarding_modal.rs b/crates/agent_ui/src/ui/onboarding_modal.rs
index 9e04171ec9..b8b038bdfc 100644
--- a/crates/agent_ui/src/ui/onboarding_modal.rs
+++ b/crates/agent_ui/src/ui/onboarding_modal.rs
@@ -139,7 +139,7 @@ impl Render for AgentOnboardingModal {
.child(Headline::new("Agentic Editing in Zed").size(HeadlineSize::Large)),
)
.child(h_flex().absolute().top_2().right_2().child(
- IconButton::new("cancel", IconName::X).on_click(cx.listener(
+ IconButton::new("cancel", IconName::Close).on_click(cx.listener(
|_, _: &ClickEvent, _window, cx| {
agent_onboarding_event!("Cancelled", trigger = "X click");
cx.emit(DismissEvent);
diff --git a/crates/agent_ui/src/ui/preview/usage_callouts.rs b/crates/agent_ui/src/ui/preview/usage_callouts.rs
index 64869a6ec7..eef878a9d1 100644
--- a/crates/agent_ui/src/ui/preview/usage_callouts.rs
+++ b/crates/agent_ui/src/ui/preview/usage_callouts.rs
@@ -81,7 +81,7 @@ impl RenderOnce for UsageCallout {
};
let icon = if is_limit_reached {
- Icon::new(IconName::X)
+ Icon::new(IconName::Close)
.color(Color::Error)
.size(IconSize::XSmall)
} else {
diff --git a/crates/ai_onboarding/src/ai_onboarding.rs b/crates/ai_onboarding/src/ai_onboarding.rs
index b9a1e49a4a..75177d4bd2 100644
--- a/crates/ai_onboarding/src/ai_onboarding.rs
+++ b/crates/ai_onboarding/src/ai_onboarding.rs
@@ -110,7 +110,7 @@ impl ZedAiOnboarding {
.style(ButtonStyle::Outlined)
.icon(IconName::ArrowUpRight)
.icon_color(Color::Muted)
- .icon_size(IconSize::XSmall)
+ .icon_size(IconSize::Small)
.on_click(move |_, _window, cx| {
telemetry::event!("Review Terms of Service Clicked");
cx.open_url(&zed_urls::terms_of_service(cx))
diff --git a/crates/assistant_slash_commands/src/fetch_command.rs b/crates/assistant_slash_commands/src/fetch_command.rs
index 5e586d4f23..4e0bb3d05a 100644
--- a/crates/assistant_slash_commands/src/fetch_command.rs
+++ b/crates/assistant_slash_commands/src/fetch_command.rs
@@ -112,7 +112,7 @@ impl SlashCommand for FetchSlashCommand {
}
fn icon(&self) -> IconName {
- IconName::Globe
+ IconName::ToolWeb
}
fn menu_text(&self) -> String {
@@ -171,7 +171,7 @@ impl SlashCommand for FetchSlashCommand {
text,
sections: vec![SlashCommandOutputSection {
range,
- icon: IconName::Globe,
+ icon: IconName::ToolWeb,
label: format!("fetch {}", url).into(),
metadata: None,
}],
diff --git a/crates/assistant_tools/src/edit_file_tool.rs b/crates/assistant_tools/src/edit_file_tool.rs
index dce9f49abd..54431ee1d7 100644
--- a/crates/assistant_tools/src/edit_file_tool.rs
+++ b/crates/assistant_tools/src/edit_file_tool.rs
@@ -857,7 +857,7 @@ impl ToolCard for EditFileToolCard {
)
.child(
Icon::new(IconName::ArrowUpRight)
- .size(IconSize::XSmall)
+ .size(IconSize::Small)
.color(Color::Ignored),
),
)
diff --git a/crates/assistant_tools/src/find_path_tool.rs b/crates/assistant_tools/src/find_path_tool.rs
index affc019417..6cdf58eac8 100644
--- a/crates/assistant_tools/src/find_path_tool.rs
+++ b/crates/assistant_tools/src/find_path_tool.rs
@@ -257,7 +257,7 @@ impl ToolCard for FindPathToolCard {
Button::new(("path", index), button_label)
.icon(IconName::ArrowUpRight)
- .icon_size(IconSize::XSmall)
+ .icon_size(IconSize::Small)
.icon_position(IconPosition::End)
.label_size(LabelSize::Small)
.color(Color::Muted)
diff --git a/crates/assistant_tools/src/web_search_tool.rs b/crates/assistant_tools/src/web_search_tool.rs
index d4a12f22c5..c6c37de472 100644
--- a/crates/assistant_tools/src/web_search_tool.rs
+++ b/crates/assistant_tools/src/web_search_tool.rs
@@ -45,7 +45,7 @@ impl Tool for WebSearchTool {
}
fn icon(&self) -> IconName {
- IconName::Globe
+ IconName::ToolWeb
}
fn input_schema(&self, format: LanguageModelToolSchemaFormat) -> Result {
@@ -177,7 +177,7 @@ impl ToolCard for WebSearchToolCard {
.label_size(LabelSize::Small)
.color(Color::Muted)
.icon(IconName::ArrowUpRight)
- .icon_size(IconSize::XSmall)
+ .icon_size(IconSize::Small)
.icon_position(IconPosition::End)
.truncate(true)
.tooltip({
diff --git a/crates/collab_ui/src/collab_panel.rs b/crates/collab_ui/src/collab_panel.rs
index 51e4ff8965..430b447580 100644
--- a/crates/collab_ui/src/collab_panel.rs
+++ b/crates/collab_ui/src/collab_panel.rs
@@ -2931,7 +2931,7 @@ impl CollabPanel {
.visible_on_hover(""),
)
.child(
- IconButton::new("channel_notes", IconName::FileText)
+ IconButton::new("channel_notes", IconName::Reader)
.style(ButtonStyle::Filled)
.shape(ui::IconButtonShape::Square)
.icon_size(IconSize::Small)
diff --git a/crates/debugger_ui/src/debugger_panel.rs b/crates/debugger_ui/src/debugger_panel.rs
index 0ac419580b..91382c74ae 100644
--- a/crates/debugger_ui/src/debugger_panel.rs
+++ b/crates/debugger_ui/src/debugger_panel.rs
@@ -649,7 +649,7 @@ impl DebugPanel {
.tooltip(Tooltip::text("Open Documentation"))
};
let logs_button = || {
- IconButton::new("debug-open-logs", IconName::ScrollText)
+ IconButton::new("debug-open-logs", IconName::Notepad)
.icon_size(IconSize::Small)
.on_click(move |_, window, cx| {
window.dispatch_action(debugger_tools::OpenDebugAdapterLogs.boxed_clone(), cx)
@@ -788,7 +788,7 @@ impl DebugPanel {
)
.child(
IconButton::new("debug-step-out", IconName::ArrowUpRight)
- .icon_size(IconSize::XSmall)
+ .icon_size(IconSize::Small)
.shape(ui::IconButtonShape::Square)
.on_click(window.listener_for(
&running_state,
@@ -812,7 +812,7 @@ impl DebugPanel {
)
.child(Divider::vertical())
.child(
- IconButton::new("debug-restart", IconName::DebugRestart)
+ IconButton::new("debug-restart", IconName::RotateCcw)
.icon_size(IconSize::XSmall)
.on_click(window.listener_for(
&running_state,
diff --git a/crates/debugger_ui/src/onboarding_modal.rs b/crates/debugger_ui/src/onboarding_modal.rs
index c9fa009940..2a9f68d0c9 100644
--- a/crates/debugger_ui/src/onboarding_modal.rs
+++ b/crates/debugger_ui/src/onboarding_modal.rs
@@ -131,7 +131,7 @@ impl Render for DebuggerOnboardingModal {
.child(Headline::new("Zed's Debugger").size(HeadlineSize::Large)),
)
.child(h_flex().absolute().top_2().right_2().child(
- IconButton::new("cancel", IconName::X).on_click(cx.listener(
+ IconButton::new("cancel", IconName::Close).on_click(cx.listener(
|_, _: &ClickEvent, _window, cx| {
debugger_onboarding_event!("Cancelled", trigger = "X click");
cx.emit(DismissEvent);
diff --git a/crates/debugger_ui/src/session/running/breakpoint_list.rs b/crates/debugger_ui/src/session/running/breakpoint_list.rs
index a6defbbf35..326fb84e20 100644
--- a/crates/debugger_ui/src/session/running/breakpoint_list.rs
+++ b/crates/debugger_ui/src/session/running/breakpoint_list.rs
@@ -681,7 +681,7 @@ impl BreakpointList {
}),
)
.child(
- IconButton::new("remove-breakpoint-breakpoint-list", IconName::X)
+ IconButton::new("remove-breakpoint-breakpoint-list", IconName::Close)
.icon_size(IconSize::XSmall)
.icon_color(ui::Color::Error)
.when_some(remove_breakpoint_tooltip, |this, tooltip| {
@@ -1439,7 +1439,7 @@ impl RenderOnce for BreakpointOptionsStrip {
.child(
IconButton::new(
SharedString::from(format!("{id}-log-toggle")),
- IconName::ScrollText,
+ IconName::Notepad,
)
.icon_size(IconSize::XSmall)
.style(style_for_toggle(ActiveBreakpointStripMode::Log, has_logs))
diff --git a/crates/debugger_ui/src/session/running/console.rs b/crates/debugger_ui/src/session/running/console.rs
index 1385bec54e..daf4486f81 100644
--- a/crates/debugger_ui/src/session/running/console.rs
+++ b/crates/debugger_ui/src/session/running/console.rs
@@ -352,7 +352,7 @@ impl Console {
.child(
div()
.px_1()
- .child(Icon::new(IconName::ChevronDownSmall).size(IconSize::XSmall)),
+ .child(Icon::new(IconName::ChevronDown).size(IconSize::XSmall)),
),
)
.when(
diff --git a/crates/debugger_ui/src/session/running/stack_frame_list.rs b/crates/debugger_ui/src/session/running/stack_frame_list.rs
index 2149502f4a..8b44c231c3 100644
--- a/crates/debugger_ui/src/session/running/stack_frame_list.rs
+++ b/crates/debugger_ui/src/session/running/stack_frame_list.rs
@@ -493,7 +493,7 @@ impl StackFrameList {
.child(
IconButton::new(
("restart-stack-frame", stack_frame.id),
- IconName::DebugRestart,
+ IconName::RotateCcw,
)
.icon_size(IconSize::Small)
.on_click(cx.listener({
diff --git a/crates/diagnostics/src/toolbar_controls.rs b/crates/diagnostics/src/toolbar_controls.rs
index 9a7dcbe62f..e77b80115f 100644
--- a/crates/diagnostics/src/toolbar_controls.rs
+++ b/crates/diagnostics/src/toolbar_controls.rs
@@ -54,7 +54,7 @@ impl Render for ToolbarControls {
.map(|div| {
if is_updating {
div.child(
- IconButton::new("stop-updating", IconName::StopFilled)
+ IconButton::new("stop-updating", IconName::Stop)
.icon_color(Color::Info)
.shape(IconButtonShape::Square)
.tooltip(Tooltip::for_action_title(
@@ -73,7 +73,7 @@ impl Render for ToolbarControls {
)
} else {
div.child(
- IconButton::new("refresh-diagnostics", IconName::Update)
+ IconButton::new("refresh-diagnostics", IconName::ArrowCircle)
.icon_color(Color::Info)
.shape(IconButtonShape::Square)
.disabled(!has_stale_excerpts && !fetch_cargo_diagnostics)
diff --git a/crates/editor/src/items.rs b/crates/editor/src/items.rs
index ca635a2132..231aaa1d00 100644
--- a/crates/editor/src/items.rs
+++ b/crates/editor/src/items.rs
@@ -1825,7 +1825,7 @@ pub fn entry_diagnostic_aware_icon_name_and_color(
diagnostic_severity: Option,
) -> Option<(IconName, Color)> {
match diagnostic_severity {
- Some(DiagnosticSeverity::ERROR) => Some((IconName::X, Color::Error)),
+ Some(DiagnosticSeverity::ERROR) => Some((IconName::Close, Color::Error)),
Some(DiagnosticSeverity::WARNING) => Some((IconName::Triangle, Color::Warning)),
_ => None,
}
diff --git a/crates/extensions_ui/src/components/feature_upsell.rs b/crates/extensions_ui/src/components/feature_upsell.rs
index e2e65f1598..573b0b992d 100644
--- a/crates/extensions_ui/src/components/feature_upsell.rs
+++ b/crates/extensions_ui/src/components/feature_upsell.rs
@@ -58,7 +58,7 @@ impl RenderOnce for FeatureUpsell {
el.child(
Button::new("open_docs", "View Documentation")
.icon(IconName::ArrowUpRight)
- .icon_size(IconSize::XSmall)
+ .icon_size(IconSize::Small)
.icon_position(IconPosition::End)
.on_click({
let docs_url = docs_url.clone();
diff --git a/crates/git_ui/src/branch_picker.rs b/crates/git_ui/src/branch_picker.rs
index b74fa649b0..6bb84db834 100644
--- a/crates/git_ui/src/branch_picker.rs
+++ b/crates/git_ui/src/branch_picker.rs
@@ -473,7 +473,7 @@ impl PickerDelegate for BranchListDelegate {
&& entry.is_new
{
Some(
- IconButton::new("branch-from-default", IconName::GitBranchSmall)
+ IconButton::new("branch-from-default", IconName::GitBranchAlt)
.on_click(cx.listener(move |this, _, window, cx| {
this.delegate.set_selected_index(ix, window, cx);
this.delegate.confirm(true, window, cx);
diff --git a/crates/git_ui/src/commit_modal.rs b/crates/git_ui/src/commit_modal.rs
index 5dfa800ae5..5e7430ebc6 100644
--- a/crates/git_ui/src/commit_modal.rs
+++ b/crates/git_ui/src/commit_modal.rs
@@ -272,7 +272,7 @@ impl CommitModal {
.child(
div()
.px_1()
- .child(Icon::new(IconName::ChevronDownSmall).size(IconSize::XSmall)),
+ .child(Icon::new(IconName::ChevronDown).size(IconSize::XSmall)),
),
)
.menu({
diff --git a/crates/git_ui/src/git_panel.rs b/crates/git_ui/src/git_panel.rs
index 44222b8299..e4f445858d 100644
--- a/crates/git_ui/src/git_panel.rs
+++ b/crates/git_ui/src/git_panel.rs
@@ -2900,10 +2900,10 @@ impl GitPanel {
use remote_output::SuccessStyle::*;
match style {
Toast { .. } => {
- this.icon(ToastIcon::new(IconName::GitBranchSmall).color(Color::Muted))
+ this.icon(ToastIcon::new(IconName::GitBranchAlt).color(Color::Muted))
}
ToastWithLog { output } => this
- .icon(ToastIcon::new(IconName::GitBranchSmall).color(Color::Muted))
+ .icon(ToastIcon::new(IconName::GitBranchAlt).color(Color::Muted))
.action("View Log", move |window, cx| {
let output = output.clone();
let output =
@@ -2915,7 +2915,7 @@ impl GitPanel {
.ok();
}),
PushPrLink { text, link } => this
- .icon(ToastIcon::new(IconName::GitBranchSmall).color(Color::Muted))
+ .icon(ToastIcon::new(IconName::GitBranchAlt).color(Color::Muted))
.action(text, move |_, cx| cx.open_url(&link)),
}
});
@@ -3109,7 +3109,7 @@ impl GitPanel {
.justify_center()
.border_l_1()
.border_color(cx.theme().colors().border)
- .child(Icon::new(IconName::ChevronDownSmall).size(IconSize::XSmall)),
+ .child(Icon::new(IconName::ChevronDown).size(IconSize::XSmall)),
),
)
.menu({
@@ -4561,7 +4561,7 @@ impl Panel for GitPanel {
}
fn icon(&self, _: &Window, cx: &App) -> Option {
- Some(ui::IconName::GitBranchSmall).filter(|_| GitPanelSettings::get_global(cx).button)
+ Some(ui::IconName::GitBranchAlt).filter(|_| GitPanelSettings::get_global(cx).button)
}
fn icon_tooltip(&self, _window: &Window, _cx: &App) -> Option<&'static str> {
@@ -4808,7 +4808,7 @@ impl RenderOnce for PanelRepoFooter {
.items_center()
.child(
div().child(
- Icon::new(IconName::GitBranchSmall)
+ Icon::new(IconName::GitBranchAlt)
.size(IconSize::Small)
.color(if single_repo {
Color::Disabled
diff --git a/crates/git_ui/src/git_ui.rs b/crates/git_ui/src/git_ui.rs
index 0163175eda..bde867bcd2 100644
--- a/crates/git_ui/src/git_ui.rs
+++ b/crates/git_ui/src/git_ui.rs
@@ -356,7 +356,7 @@ mod remote_button {
"Publish",
0,
0,
- Some(IconName::ArrowUpFromLine),
+ Some(IconName::ExpandUp),
keybinding_target.clone(),
move |_, window, cx| {
window.dispatch_action(Box::new(git::Push), cx);
@@ -383,7 +383,7 @@ mod remote_button {
"Republish",
0,
0,
- Some(IconName::ArrowUpFromLine),
+ Some(IconName::ExpandUp),
keybinding_target.clone(),
move |_, window, cx| {
window.dispatch_action(Box::new(git::Push), cx);
@@ -438,7 +438,7 @@ mod remote_button {
.child(
div()
.px_1()
- .child(Icon::new(IconName::ChevronDownSmall).size(IconSize::XSmall)),
+ .child(Icon::new(IconName::ChevronDown).size(IconSize::XSmall)),
),
)
.menu(move |window, cx| {
diff --git a/crates/git_ui/src/onboarding.rs b/crates/git_ui/src/onboarding.rs
index d721b21a2a..d1709e043b 100644
--- a/crates/git_ui/src/onboarding.rs
+++ b/crates/git_ui/src/onboarding.rs
@@ -110,7 +110,7 @@ impl Render for GitOnboardingModal {
.child(Headline::new("Native Git Support").size(HeadlineSize::Large)),
)
.child(h_flex().absolute().top_2().right_2().child(
- IconButton::new("cancel", IconName::X).on_click(cx.listener(
+ IconButton::new("cancel", IconName::Close).on_click(cx.listener(
|_, _: &ClickEvent, _window, cx| {
git_onboarding_event!("Cancelled", trigger = "X click");
cx.emit(DismissEvent);
diff --git a/crates/icons/README.md b/crates/icons/README.md
new file mode 100644
index 0000000000..5fbd6d4948
--- /dev/null
+++ b/crates/icons/README.md
@@ -0,0 +1,29 @@
+# Zed Icons
+
+## Guidelines
+
+Icons are a big part of Zed, and they're how we convey hundreds of actions without relying on labeled buttons.
+When introducing a new icon to the set, it's important to ensure it is consistent with the whole set, which follows a few guidelines:
+
+1. The SVG view box should be 16x16.
+2. For outlined icons, use a 1.5px stroke width.
+3. Not all icons are mathematically aligned; there's quite a bit of optical adjustment. But try to keep the icon within an internal 12x12 bounding box as much as possible while ensuring proper visibility.
+4. Use the `filled` and `outlined` terminology when introducing icons that will have the two variants.
+5. Icons that are deeply contextual may have the feature context as their name prefix. For example, `ToolWeb`, `ReplPlay`, `DebugStepInto`, etc.
+6. Avoid complex layer structure in the icon SVG, like clipping masks and whatnot. When the shape ends up too complex, we recommend running the SVG in [SVGOMG](https://jakearchibald.github.io/svgomg/) to clean it up a bit.
+
+## Sourcing
+
+Most icons are created by sourcing them from [Lucide](https://lucide.dev/).
+Then, they're modified, adjusted, cleaned up, and simplified depending on their use and overall fit with Zed.
+
+Sometimes, we may use other sources like [Phosphor](https://phosphoricons.com/), but we also design many of them completely from scratch.
+
+## Contributing
+
+To introduce a new icon, add the `.svg` file in the `assets/icon` directory and then add its corresponding item in the `icons.rs` file within the `crates` directory.
+
+- SVG files in the assets folder follow a snake case name format.
+- Icons in the `icons.rs` file follow the pascal case name format.
+
+Ensure you tag a member of Zed's design team so we can adjust and double-check any newly introduced icon.
diff --git a/crates/icons/src/icons.rs b/crates/icons/src/icons.rs
index 12805e62e0..f5c2a83fec 100644
--- a/crates/icons/src/icons.rs
+++ b/crates/icons/src/icons.rs
@@ -28,16 +28,12 @@ pub enum IconName {
ArrowCircle,
ArrowDown,
ArrowDown10,
- ArrowDownFromLine,
ArrowDownRight,
ArrowLeft,
ArrowRight,
ArrowRightLeft,
ArrowUp,
- ArrowUpAlt,
- ArrowUpFromLine,
ArrowUpRight,
- ArrowUpRightAlt,
AudioOff,
AudioOn,
Backspace,
@@ -51,28 +47,22 @@ pub enum IconName {
BoltFilled,
Book,
BookCopy,
- BugOff,
CaseSensitive,
Chat,
Check,
CheckDouble,
ChevronDown,
- /// This chevron indicates a popover menu.
- ChevronDownSmall,
ChevronLeft,
ChevronRight,
ChevronUp,
ChevronUpDown,
Circle,
- CircleOff,
CircleHelp,
Close,
- Cloud,
CloudDownload,
Code,
Cog,
Command,
- Context,
Control,
Copilot,
CopilotDisabled,
@@ -93,16 +83,12 @@ pub enum IconName {
DebugIgnoreBreakpoints,
DebugLogBreakpoint,
DebugPause,
- DebugRestart,
DebugStepBack,
DebugStepInto,
DebugStepOut,
DebugStepOver,
- DebugStop,
- Delete,
Diff,
Disconnected,
- DocumentText,
Download,
EditorAtom,
EditorCursor,
@@ -113,59 +99,50 @@ pub enum IconName {
Ellipsis,
EllipsisVertical,
Envelope,
- Equal,
Eraser,
Escape,
Exit,
ExpandDown,
ExpandUp,
ExpandVertical,
- ExternalLink,
Eye,
File,
FileCode,
- FileCreate,
FileDiff,
FileDoc,
FileGeneric,
FileGit,
FileLock,
+ FileMarkdown,
FileRust,
- FileSearch,
- FileText,
+ FileTextFilled,
+ FileTextOutlined,
FileToml,
FileTree,
Filter,
Flame,
Folder,
FolderOpen,
- FolderX,
+ FolderSearch,
Font,
FontSize,
FontWeight,
ForwardArrow,
- Function,
GenericClose,
GenericMaximize,
GenericMinimize,
GenericRestore,
GitBranch,
- GitBranchSmall,
+ GitBranchAlt,
Github,
- Globe,
- Hammer,
Hash,
HistoryRerun,
Image,
Indicator,
Info,
- InlayHint,
Keyboard,
- Layout,
Library,
- LightBulb,
LineHeight,
- Link,
ListCollapse,
ListTodo,
ListTree,
@@ -173,35 +150,28 @@ pub enum IconName {
LoadCircle,
LocationEdit,
LockOutlined,
- LspDebug,
- LspRestart,
- LspStop,
MagnifyingGlass,
- MailOpen,
Maximize,
Menu,
MenuAlt,
Mic,
MicMute,
Minimize,
+ Notepad,
Option,
PageDown,
PageUp,
- PanelLeft,
- PanelRight,
Pencil,
Person,
- PersonCircle,
- PhoneIncoming,
Pin,
PlayOutlined,
PlayFilled,
Plus,
- PocketKnife,
Power,
Public,
PullRequest,
Quote,
+ Reader,
RefreshTitle,
Regex,
ReplNeutral,
@@ -213,28 +183,18 @@ pub enum IconName {
Return,
RotateCcw,
RotateCw,
- Route,
- Save,
Scissors,
Screen,
- ScrollText,
- SearchSelection,
SelectAll,
Send,
Server,
Settings,
- SettingsAlt,
ShieldCheck,
Shift,
Slash,
- SlashSquare,
Sliders,
- SlidersVertical,
- Snip,
Space,
Sparkle,
- SparkleAlt,
- SparkleFilled,
Split,
SplitAlt,
SquareDot,
@@ -243,7 +203,6 @@ pub enum IconName {
Star,
StarFilled,
Stop,
- StopFilled,
Supermaven,
SupermavenDisabled,
SupermavenError,
@@ -279,18 +238,13 @@ pub enum IconName {
TriangleRight,
Undo,
Unpin,
- Update,
UserCheck,
UserGroup,
UserRoundPen,
- Visible,
- Wand,
Warning,
WholeWord,
- X,
XCircle,
ZedAssistant,
- ZedAssistantFilled,
ZedBurnMode,
ZedBurnModeOn,
ZedMcpCustom,
diff --git a/crates/language_models/src/provider/cloud.rs b/crates/language_models/src/provider/cloud.rs
index 40dd120761..ba110be9c5 100644
--- a/crates/language_models/src/provider/cloud.rs
+++ b/crates/language_models/src/provider/cloud.rs
@@ -437,7 +437,7 @@ fn render_accept_terms(
.style(ButtonStyle::Subtle)
.icon(IconName::ArrowUpRight)
.icon_color(Color::Muted)
- .icon_size(IconSize::XSmall)
+ .icon_size(IconSize::Small)
.when(thread_empty_state, |this| this.label_size(LabelSize::Small))
.on_click(move |_, _window, cx| cx.open_url("https://zed.dev/terms-of-service"));
diff --git a/crates/language_models/src/provider/lmstudio.rs b/crates/language_models/src/provider/lmstudio.rs
index 9792b4f27b..36a32ab941 100644
--- a/crates/language_models/src/provider/lmstudio.rs
+++ b/crates/language_models/src/provider/lmstudio.rs
@@ -690,7 +690,7 @@ impl Render for ConfigurationView {
Button::new("lmstudio-site", "LM Studio")
.style(ButtonStyle::Subtle)
.icon(IconName::ArrowUpRight)
- .icon_size(IconSize::XSmall)
+ .icon_size(IconSize::Small)
.icon_color(Color::Muted)
.on_click(move |_, _window, cx| {
cx.open_url(LMSTUDIO_SITE)
@@ -705,7 +705,7 @@ impl Render for ConfigurationView {
)
.style(ButtonStyle::Subtle)
.icon(IconName::ArrowUpRight)
- .icon_size(IconSize::XSmall)
+ .icon_size(IconSize::Small)
.icon_color(Color::Muted)
.on_click(move |_, _window, cx| {
cx.open_url(LMSTUDIO_DOWNLOAD_URL)
@@ -718,7 +718,7 @@ impl Render for ConfigurationView {
Button::new("view-models", "Model Catalog")
.style(ButtonStyle::Subtle)
.icon(IconName::ArrowUpRight)
- .icon_size(IconSize::XSmall)
+ .icon_size(IconSize::Small)
.icon_color(Color::Muted)
.on_click(move |_, _window, cx| {
cx.open_url(LMSTUDIO_CATALOG_URL)
@@ -744,7 +744,7 @@ impl Render for ConfigurationView {
Button::new("retry_lmstudio_models", "Connect")
.icon_position(IconPosition::Start)
.icon_size(IconSize::XSmall)
- .icon(IconName::PlayOutlined)
+ .icon(IconName::PlayFilled)
.on_click(cx.listener(move |this, _, _window, cx| {
this.retry_connection(cx)
})),
diff --git a/crates/language_models/src/provider/ollama.rs b/crates/language_models/src/provider/ollama.rs
index c845c97b09..0c2b1107b1 100644
--- a/crates/language_models/src/provider/ollama.rs
+++ b/crates/language_models/src/provider/ollama.rs
@@ -608,7 +608,7 @@ impl Render for ConfigurationView {
Button::new("ollama-site", "Ollama")
.style(ButtonStyle::Subtle)
.icon(IconName::ArrowUpRight)
- .icon_size(IconSize::XSmall)
+ .icon_size(IconSize::Small)
.icon_color(Color::Muted)
.on_click(move |_, _, cx| cx.open_url(OLLAMA_SITE))
.into_any_element(),
@@ -621,7 +621,7 @@ impl Render for ConfigurationView {
)
.style(ButtonStyle::Subtle)
.icon(IconName::ArrowUpRight)
- .icon_size(IconSize::XSmall)
+ .icon_size(IconSize::Small)
.icon_color(Color::Muted)
.on_click(move |_, _, cx| {
cx.open_url(OLLAMA_DOWNLOAD_URL)
@@ -634,7 +634,7 @@ impl Render for ConfigurationView {
Button::new("view-models", "View All Models")
.style(ButtonStyle::Subtle)
.icon(IconName::ArrowUpRight)
- .icon_size(IconSize::XSmall)
+ .icon_size(IconSize::Small)
.icon_color(Color::Muted)
.on_click(move |_, _, cx| cx.open_url(OLLAMA_LIBRARY_URL)),
),
@@ -658,7 +658,7 @@ impl Render for ConfigurationView {
Button::new("retry_ollama_models", "Connect")
.icon_position(IconPosition::Start)
.icon_size(IconSize::XSmall)
- .icon(IconName::PlayOutlined)
+ .icon(IconName::PlayFilled)
.on_click(cx.listener(move |this, _, _, cx| {
this.retry_connection(cx)
})),
diff --git a/crates/language_models/src/provider/open_ai.rs b/crates/language_models/src/provider/open_ai.rs
index ee74562687..7a6c8e09ed 100644
--- a/crates/language_models/src/provider/open_ai.rs
+++ b/crates/language_models/src/provider/open_ai.rs
@@ -869,7 +869,7 @@ impl Render for ConfigurationView {
.child(
Button::new("docs", "Learn More")
.icon(IconName::ArrowUpRight)
- .icon_size(IconSize::XSmall)
+ .icon_size(IconSize::Small)
.icon_color(Color::Muted)
.on_click(move |_, _window, cx| {
cx.open_url("https://zed.dev/docs/ai/llm-providers#openai-api-compatible")
diff --git a/crates/language_models/src/ui/instruction_list_item.rs b/crates/language_models/src/ui/instruction_list_item.rs
index 794a85b400..3dee97aff6 100644
--- a/crates/language_models/src/ui/instruction_list_item.rs
+++ b/crates/language_models/src/ui/instruction_list_item.rs
@@ -47,7 +47,7 @@ impl IntoElement for InstructionListItem {
Button::new(unique_id, button_label)
.style(ButtonStyle::Subtle)
.icon(IconName::ArrowUpRight)
- .icon_size(IconSize::XSmall)
+ .icon_size(IconSize::Small)
.icon_color(Color::Muted)
.on_click(move |_, _window, cx| cx.open_url(&link)),
)
diff --git a/crates/notifications/src/status_toast.rs b/crates/notifications/src/status_toast.rs
index ffd87e0b8b..7affa93f5a 100644
--- a/crates/notifications/src/status_toast.rs
+++ b/crates/notifications/src/status_toast.rs
@@ -205,7 +205,7 @@ impl Component for StatusToast {
let pr_example =
StatusToast::new("`zed/new-notification-system` created!", cx, |this, _cx| {
- this.icon(ToastIcon::new(IconName::GitBranchSmall).color(Color::Muted))
+ this.icon(ToastIcon::new(IconName::GitBranchAlt).color(Color::Muted))
.action("Open Pull Request", |_, cx| {
cx.open_url("https://github.com/")
})
diff --git a/crates/onboarding/src/ai_setup_page.rs b/crates/onboarding/src/ai_setup_page.rs
index 00f2d5fc8b..0397bcbd9b 100644
--- a/crates/onboarding/src/ai_setup_page.rs
+++ b/crates/onboarding/src/ai_setup_page.rs
@@ -95,7 +95,7 @@ fn render_privacy_card(tab_index: &mut isize, disabled: bool, cx: &mut App) -> i
.style(ButtonStyle::Outlined)
.label_size(LabelSize::Small)
.icon(IconName::ArrowUpRight)
- .icon_size(IconSize::XSmall)
+ .icon_size(IconSize::Small)
.icon_color(Color::Muted)
.on_click(|_, _, cx| {
cx.open_url("https://zed.dev/docs/ai/privacy-and-security");
diff --git a/crates/onboarding/src/onboarding.rs b/crates/onboarding/src/onboarding.rs
index 342b52bdda..145cb07a1c 100644
--- a/crates/onboarding/src/onboarding.rs
+++ b/crates/onboarding/src/onboarding.rs
@@ -694,7 +694,7 @@ pub async fn handle_import_vscode_settings(
"Failed to import settings. See log for details",
cx,
|this, _| {
- this.icon(ToastIcon::new(IconName::X).color(Color::Error))
+ this.icon(ToastIcon::new(IconName::Close).color(Color::Error))
.action("Open Log", |window, cx| {
window.dispatch_action(workspace::OpenLog.boxed_clone(), cx)
})
diff --git a/crates/recent_projects/src/ssh_connections.rs b/crates/recent_projects/src/ssh_connections.rs
index 5a38e1aadb..7b58792178 100644
--- a/crates/recent_projects/src/ssh_connections.rs
+++ b/crates/recent_projects/src/ssh_connections.rs
@@ -357,7 +357,7 @@ impl RenderOnce for SshConnectionHeader {
.rounded_t_sm()
.w_full()
.gap_1p5()
- .child(Icon::new(IconName::Server).size(IconSize::XSmall))
+ .child(Icon::new(IconName::Server).size(IconSize::Small))
.child(
h_flex()
.gap_1()
diff --git a/crates/repl/src/components/kernel_options.rs b/crates/repl/src/components/kernel_options.rs
index 0623fd7ea5..cd73783b4c 100644
--- a/crates/repl/src/components/kernel_options.rs
+++ b/crates/repl/src/components/kernel_options.rs
@@ -235,8 +235,8 @@ impl PickerDelegate for KernelPickerDelegate {
.gap_4()
.child(
Button::new("kernel-docs", "Kernel Docs")
- .icon(IconName::ExternalLink)
- .icon_size(IconSize::XSmall)
+ .icon(IconName::ArrowUpRight)
+ .icon_size(IconSize::Small)
.icon_color(Color::Muted)
.icon_position(IconPosition::End)
.on_click(move |_, _, cx| cx.open_url(KERNEL_DOCS_URL)),
diff --git a/crates/repl/src/notebook/cell.rs b/crates/repl/src/notebook/cell.rs
index 18851417c0..15179a632c 100644
--- a/crates/repl/src/notebook/cell.rs
+++ b/crates/repl/src/notebook/cell.rs
@@ -38,7 +38,7 @@ pub enum CellControlType {
impl CellControlType {
fn icon_name(&self) -> IconName {
match self {
- CellControlType::RunCell => IconName::PlayOutlined,
+ CellControlType::RunCell => IconName::PlayFilled,
CellControlType::RerunCell => IconName::ArrowCircle,
CellControlType::ClearCell => IconName::ListX,
CellControlType::CellOptions => IconName::Ellipsis,
diff --git a/crates/repl/src/notebook/notebook_ui.rs b/crates/repl/src/notebook/notebook_ui.rs
index 2efa51e0cc..b53809dff0 100644
--- a/crates/repl/src/notebook/notebook_ui.rs
+++ b/crates/repl/src/notebook/notebook_ui.rs
@@ -321,7 +321,7 @@ impl NotebookEditor {
.child(
Self::render_notebook_control(
"run-all-cells",
- IconName::PlayOutlined,
+ IconName::PlayFilled,
window,
cx,
)
diff --git a/crates/repl/src/outputs.rs b/crates/repl/src/outputs.rs
index e13e569c2a..ed252b239f 100644
--- a/crates/repl/src/outputs.rs
+++ b/crates/repl/src/outputs.rs
@@ -163,7 +163,7 @@ impl Output {
el.child(
IconButton::new(
ElementId::Name("open-in-buffer".into()),
- IconName::FileText,
+ IconName::FileTextOutlined,
)
.style(ButtonStyle::Transparent)
.tooltip(Tooltip::text("Open in Buffer"))
diff --git a/crates/search/src/buffer_search.rs b/crates/search/src/buffer_search.rs
index 5d77a95027..14703be7a2 100644
--- a/crates/search/src/buffer_search.rs
+++ b/crates/search/src/buffer_search.rs
@@ -336,7 +336,7 @@ impl Render for BufferSearchBar {
this.child(
IconButton::new(
"buffer-search-bar-toggle-search-selection-button",
- IconName::SearchSelection,
+ IconName::Quote,
)
.style(ButtonStyle::Subtle)
.shape(IconButtonShape::Square)
diff --git a/crates/search/src/project_search.rs b/crates/search/src/project_search.rs
index 15c1099aec..96194cdad2 100644
--- a/crates/search/src/project_search.rs
+++ b/crates/search/src/project_search.rs
@@ -2268,7 +2268,7 @@ impl Render for ProjectSearchBar {
.min_w_64()
.gap_1()
.child(
- IconButton::new("project-search-opened-only", IconName::FileSearch)
+ IconButton::new("project-search-opened-only", IconName::FolderSearch)
.shape(IconButtonShape::Square)
.toggle_state(self.is_opened_only_enabled(cx))
.tooltip(Tooltip::text("Only Search Open Files"))
diff --git a/crates/settings_ui/src/keybindings.rs b/crates/settings_ui/src/keybindings.rs
index 599bb0b18f..a62c669488 100644
--- a/crates/settings_ui/src/keybindings.rs
+++ b/crates/settings_ui/src/keybindings.rs
@@ -2473,7 +2473,7 @@ impl Render for KeybindingEditorModal {
.label_size(LabelSize::Small)
.icon(IconName::ArrowUpRight)
.icon_color(Color::Muted)
- .icon_size(IconSize::XSmall)
+ .icon_size(IconSize::Small)
.on_click(cx.listener(
|this, _, window, cx| {
this.show_matching_bindings(
diff --git a/crates/settings_ui/src/ui_components/keystroke_input.rs b/crates/settings_ui/src/ui_components/keystroke_input.rs
index ee5c4036ea..f23d80931c 100644
--- a/crates/settings_ui/src/ui_components/keystroke_input.rs
+++ b/crates/settings_ui/src/ui_components/keystroke_input.rs
@@ -590,7 +590,7 @@ impl Render for KeystrokeInput {
.map(|this| {
if is_recording {
this.child(
- IconButton::new("stop-record-btn", IconName::StopFilled)
+ IconButton::new("stop-record-btn", IconName::Stop)
.shape(IconButtonShape::Square)
.map(|this| {
this.tooltip(Tooltip::for_action_title(
@@ -629,7 +629,7 @@ impl Render for KeystrokeInput {
}
})
.child(
- IconButton::new("clear-btn", IconName::Delete)
+ IconButton::new("clear-btn", IconName::Backspace)
.shape(IconButtonShape::Square)
.tooltip(Tooltip::for_action_title(
"Clear Keystrokes",
diff --git a/crates/snippets_ui/src/snippets_ui.rs b/crates/snippets_ui/src/snippets_ui.rs
index a8710d1672..bf0ef63bff 100644
--- a/crates/snippets_ui/src/snippets_ui.rs
+++ b/crates/snippets_ui/src/snippets_ui.rs
@@ -330,7 +330,7 @@ impl PickerDelegate for ScopeSelectorDelegate {
.and_then(|available_language| self.scope_icon(available_language.matcher(), cx))
.or_else(|| {
Some(
- Icon::from_path(IconName::Globe.path())
+ Icon::from_path(IconName::ToolWeb.path())
.map(|icon| icon.color(Color::Muted)),
)
})
diff --git a/crates/terminal_view/src/terminal_view.rs b/crates/terminal_view/src/terminal_view.rs
index 361cdd0b1c..0c05aec85e 100644
--- a/crates/terminal_view/src/terminal_view.rs
+++ b/crates/terminal_view/src/terminal_view.rs
@@ -1591,7 +1591,7 @@ impl Item for TerminalView {
let (icon, icon_color, rerun_button) = match terminal.task() {
Some(terminal_task) => match &terminal_task.status {
TaskStatus::Running => (
- IconName::PlayOutlined,
+ IconName::PlayFilled,
Color::Disabled,
TerminalView::rerun_button(&terminal_task),
),
diff --git a/crates/theme_selector/src/icon_theme_selector.rs b/crates/theme_selector/src/icon_theme_selector.rs
index 2d0b9480d5..af7abdee62 100644
--- a/crates/theme_selector/src/icon_theme_selector.rs
+++ b/crates/theme_selector/src/icon_theme_selector.rs
@@ -318,7 +318,7 @@ impl PickerDelegate for IconThemeSelectorDelegate {
Button::new("docs", "View Icon Theme Docs")
.icon(IconName::ArrowUpRight)
.icon_position(IconPosition::End)
- .icon_size(IconSize::XSmall)
+ .icon_size(IconSize::Small)
.icon_color(Color::Muted)
.on_click(|_event, _window, cx| {
cx.open_url("https://zed.dev/docs/icon-themes");
diff --git a/crates/theme_selector/src/theme_selector.rs b/crates/theme_selector/src/theme_selector.rs
index ba8bde243b..8c48f295dd 100644
--- a/crates/theme_selector/src/theme_selector.rs
+++ b/crates/theme_selector/src/theme_selector.rs
@@ -376,7 +376,7 @@ impl PickerDelegate for ThemeSelectorDelegate {
Button::new("docs", "View Theme Docs")
.icon(IconName::ArrowUpRight)
.icon_position(IconPosition::End)
- .icon_size(IconSize::XSmall)
+ .icon_size(IconSize::Small)
.icon_color(Color::Muted)
.on_click(cx.listener(|_, _, _, cx| {
cx.open_url("https://zed.dev/docs/themes");
diff --git a/crates/title_bar/src/collab.rs b/crates/title_bar/src/collab.rs
index d026b4de14..74d60a6d66 100644
--- a/crates/title_bar/src/collab.rs
+++ b/crates/title_bar/src/collab.rs
@@ -518,7 +518,7 @@ impl TitleBar {
.mx_neg_0p5()
.h_full()
.justify_center()
- .child(Icon::new(IconName::ChevronDownSmall).size(IconSize::XSmall)),
+ .child(Icon::new(IconName::ChevronDown).size(IconSize::XSmall)),
)
.toggle_state(self.screen_share_popover_handle.is_deployed()),
)
diff --git a/crates/title_bar/src/title_bar.rs b/crates/title_bar/src/title_bar.rs
index a8b16d881f..d11d3b7081 100644
--- a/crates/title_bar/src/title_bar.rs
+++ b/crates/title_bar/src/title_bar.rs
@@ -344,7 +344,7 @@ impl TitleBar {
.child(
IconWithIndicator::new(
Icon::new(IconName::Server)
- .size(IconSize::XSmall)
+ .size(IconSize::Small)
.color(icon_color),
Some(Indicator::dot().color(indicator_color)),
)
diff --git a/crates/ui/src/components/banner.rs b/crates/ui/src/components/banner.rs
index d88905d466..d493e8a0d3 100644
--- a/crates/ui/src/components/banner.rs
+++ b/crates/ui/src/components/banner.rs
@@ -24,7 +24,7 @@ pub enum Severity {
/// .action_slot(
/// Button::new("learn-more", "Learn More")
/// .icon(IconName::ArrowUpRight)
-/// .icon_size(IconSize::XSmall)
+/// .icon_size(IconSize::Small)
/// .icon_position(IconPosition::End),
/// )
/// ```
@@ -150,7 +150,7 @@ impl Component for Banner {
.action_slot(
Button::new("learn-more", "Learn More")
.icon(IconName::ArrowUpRight)
- .icon_size(IconSize::XSmall)
+ .icon_size(IconSize::Small)
.icon_position(IconPosition::End),
)
.into_any_element(),
diff --git a/crates/ui/src/components/callout.rs b/crates/ui/src/components/callout.rs
index 9c1c9fb1a9..abb03198ab 100644
--- a/crates/ui/src/components/callout.rs
+++ b/crates/ui/src/components/callout.rs
@@ -207,7 +207,7 @@ impl Component for Callout {
"Error with Multiple Actions",
Callout::new()
.icon(
- Icon::new(IconName::X)
+ Icon::new(IconName::Close)
.color(Color::Error)
.size(IconSize::Small),
)
diff --git a/crates/ui/src/components/context_menu.rs b/crates/ui/src/components/context_menu.rs
index 21ab283d88..25575c4f1e 100644
--- a/crates/ui/src/components/context_menu.rs
+++ b/crates/ui/src/components/context_menu.rs
@@ -561,7 +561,7 @@ impl ContextMenu {
action: Some(action.boxed_clone()),
handler: Rc::new(move |_, window, cx| window.dispatch_action(action.boxed_clone(), cx)),
icon: Some(IconName::ArrowUpRight),
- icon_size: IconSize::XSmall,
+ icon_size: IconSize::Small,
icon_position: IconPosition::End,
icon_color: None,
disabled: false,
diff --git a/crates/ui/src/components/indicator.rs b/crates/ui/src/components/indicator.rs
index d319547bed..59d69a068b 100644
--- a/crates/ui/src/components/indicator.rs
+++ b/crates/ui/src/components/indicator.rs
@@ -164,7 +164,7 @@ impl Component for Indicator {
),
single_example(
"Error",
- Indicator::icon(Icon::new(IconName::X))
+ Indicator::icon(Icon::new(IconName::Close))
.color(Color::Error)
.into_any_element(),
),
diff --git a/crates/ui/src/components/keybinding.rs b/crates/ui/src/components/keybinding.rs
index 5779093ccc..56be867796 100644
--- a/crates/ui/src/components/keybinding.rs
+++ b/crates/ui/src/components/keybinding.rs
@@ -188,7 +188,7 @@ fn icon_for_key(keystroke: &Keystroke, platform_style: PlatformStyle) -> Option<
"up" => Some(IconName::ArrowUp),
"down" => Some(IconName::ArrowDown),
"backspace" => Some(IconName::Backspace),
- "delete" => Some(IconName::Delete),
+ "delete" => Some(IconName::Backspace),
"return" => Some(IconName::Return),
"enter" => Some(IconName::Return),
"tab" => Some(IconName::Tab),
diff --git a/crates/ui/src/components/stories/icon_button.rs b/crates/ui/src/components/stories/icon_button.rs
index ad6886252d..166297eabc 100644
--- a/crates/ui/src/components/stories/icon_button.rs
+++ b/crates/ui/src/components/stories/icon_button.rs
@@ -90,7 +90,7 @@ impl Render for IconButtonStory {
let selected_with_tooltip_button = StoryItem::new(
"Selected with `tooltip`",
- IconButton::new("selected_with_tooltip_button", IconName::InlayHint)
+ IconButton::new("selected_with_tooltip_button", IconName::CaseSensitive)
.toggle_state(true)
.tooltip(Tooltip::text("Toggle inlay hints")),
)
diff --git a/crates/welcome/src/multibuffer_hint.rs b/crates/welcome/src/multibuffer_hint.rs
index ea64cab9df..3a20cbb6bd 100644
--- a/crates/welcome/src/multibuffer_hint.rs
+++ b/crates/welcome/src/multibuffer_hint.rs
@@ -159,7 +159,7 @@ impl Render for MultibufferHint {
.child(
Button::new("open_docs", "Learn More")
.icon(IconName::ArrowUpRight)
- .icon_size(IconSize::XSmall)
+ .icon_size(IconSize::Small)
.icon_color(Color::Muted)
.icon_position(IconPosition::End)
.on_click(move |_event, _, cx| {
diff --git a/crates/zed/src/zed/component_preview.rs b/crates/zed/src/zed/component_preview.rs
index db75b544f6..ac889a7ad9 100644
--- a/crates/zed/src/zed/component_preview.rs
+++ b/crates/zed/src/zed/component_preview.rs
@@ -697,7 +697,7 @@ impl ComponentPreview {
workspace.update(cx, |workspace, cx| {
let status_toast =
StatusToast::new("`zed/new-notification-system` created!", cx, |this, _cx| {
- this.icon(ToastIcon::new(IconName::GitBranchSmall).color(Color::Muted))
+ this.icon(ToastIcon::new(IconName::GitBranchAlt).color(Color::Muted))
.action("Open Pull Request", |_, cx| {
cx.open_url("https://github.com/")
})
diff --git a/crates/zed/src/zed/quick_action_bar/repl_menu.rs b/crates/zed/src/zed/quick_action_bar/repl_menu.rs
index 12e5cf1b76..5d1a6c8887 100644
--- a/crates/zed/src/zed/quick_action_bar/repl_menu.rs
+++ b/crates/zed/src/zed/quick_action_bar/repl_menu.rs
@@ -212,7 +212,7 @@ impl QuickActionBar {
.trigger_with_tooltip(
ButtonLike::new_rounded_right(element_id("dropdown"))
.child(
- Icon::new(IconName::ChevronDownSmall)
+ Icon::new(IconName::ChevronDown)
.size(IconSize::XSmall)
.color(Color::Muted),
)
diff --git a/crates/zeta/src/onboarding_modal.rs b/crates/zeta/src/onboarding_modal.rs
index 1d59f36b05..c2886f2864 100644
--- a/crates/zeta/src/onboarding_modal.rs
+++ b/crates/zeta/src/onboarding_modal.rs
@@ -141,7 +141,7 @@ impl Render for ZedPredictModal {
)),
)
.child(h_flex().absolute().top_2().right_2().child(
- IconButton::new("cancel", IconName::X).on_click(cx.listener(
+ IconButton::new("cancel", IconName::Close).on_click(cx.listener(
|_, _: &ClickEvent, _window, cx| {
onboarding_event!("Cancelled", trigger = "X click");
cx.emit(DismissEvent);