Revise and clean up some icons (#35582)

This is really just a small beginning, as there are many other icons to
be revised and cleaned up. Our current set is a bit of a mess in terms
of dimension, spacing, stroke width, and terminology. I'm sure there are
more non-used icons I'm not covering here, too. We'll hopefully tackle
it all soon leading up to 1.0.

Closes https://github.com/zed-industries/zed/issues/35576

Release Notes:

- N/A
This commit is contained in:
Danilo Leal
2025-08-04 11:58:31 -03:00
committed by GitHub
parent 8b573d4395
commit 0609c8b953
58 changed files with 154 additions and 271 deletions
@@ -483,7 +483,7 @@ impl ManageProfilesModal {
let icon = match mode.profile_id.as_str() {
"write" => IconName::Pencil,
"ask" => IconName::MessageBubbles,
"ask" => IconName::Chat,
_ => IconName::UserRoundPen,
};
+24 -24
View File
@@ -1911,27 +1911,6 @@ impl AgentPanel {
.when(cx.has_flag::<feature_flags::AcpFeatureFlag>(), |this| {
this.header("Zed Agent")
})
.item(
ContextMenuEntry::new("New Thread")
.icon(IconName::NewThread)
.icon_color(Color::Muted)
.action(NewThread::default().boxed_clone())
.handler(move |window, cx| {
window.dispatch_action(
NewThread::default().boxed_clone(),
cx,
);
}),
)
.item(
ContextMenuEntry::new("New Text Thread")
.icon(IconName::NewTextThread)
.icon_color(Color::Muted)
.action(NewTextThread.boxed_clone())
.handler(move |window, cx| {
window.dispatch_action(NewTextThread.boxed_clone(), cx);
}),
)
.when_some(active_thread, |this, active_thread| {
let thread = active_thread.read(cx);
@@ -1939,7 +1918,7 @@ impl AgentPanel {
let thread_id = thread.id().clone();
this.item(
ContextMenuEntry::new("New From Summary")
.icon(IconName::NewFromSummary)
.icon(IconName::ThreadFromSummary)
.icon_color(Color::Muted)
.handler(move |window, cx| {
window.dispatch_action(
@@ -1954,6 +1933,27 @@ impl AgentPanel {
this
}
})
.item(
ContextMenuEntry::new("New Thread")
.icon(IconName::Thread)
.icon_color(Color::Muted)
.action(NewThread::default().boxed_clone())
.handler(move |window, cx| {
window.dispatch_action(
NewThread::default().boxed_clone(),
cx,
);
}),
)
.item(
ContextMenuEntry::new("New Text Thread")
.icon(IconName::TextThread)
.icon_color(Color::Muted)
.action(NewTextThread.boxed_clone())
.handler(move |window, cx| {
window.dispatch_action(NewTextThread.boxed_clone(), cx);
}),
)
.when(cx.has_flag::<feature_flags::AcpFeatureFlag>(), |this| {
this.separator()
.header("External Agents")
@@ -2558,7 +2558,7 @@ impl AgentPanel {
NewThreadButton::new(
"new-thread-btn",
"New Thread",
IconName::NewThread,
IconName::Thread,
)
.keybinding(KeyBinding::for_action_in(
&NewThread::default(),
@@ -2579,7 +2579,7 @@ impl AgentPanel {
NewThreadButton::new(
"new-text-thread-btn",
"New Text Thread",
IconName::NewTextThread,
IconName::TextThread,
)
.keybinding(KeyBinding::for_action_in(
&NewTextThread,
+1 -1
View File
@@ -148,7 +148,7 @@ impl ContextPickerMode {
Self::File => IconName::File,
Self::Symbol => IconName::Code,
Self::Fetch => IconName::Globe,
Self::Thread => IconName::MessageBubbles,
Self::Thread => IconName::Thread,
Self::Rules => RULES_ICON,
}
}
@@ -423,7 +423,7 @@ impl ContextPickerCompletionProvider {
let icon_for_completion = if recent {
IconName::HistoryRerun
} else {
IconName::MessageBubbles
IconName::Thread
};
let new_text = format!("{} ", MentionLink::for_thread(&thread_entry));
let new_text_len = new_text.len();
@@ -436,7 +436,7 @@ impl ContextPickerCompletionProvider {
source: project::CompletionSource::Custom,
icon_path: Some(icon_for_completion.path().into()),
confirm: Some(confirm_completion_callback(
IconName::MessageBubbles.path().into(),
IconName::Thread.path().into(),
thread_entry.title().clone(),
excerpt_id,
source_range.start,
@@ -253,7 +253,7 @@ pub fn render_thread_context_entry(
.gap_1p5()
.max_w_72()
.child(
Icon::new(IconName::MessageBubbles)
Icon::new(IconName::Thread)
.size(IconSize::XSmall)
.color(Color::Muted),
)
+1 -1
View File
@@ -541,7 +541,7 @@ impl<T: 'static> PromptEditor<T> {
match &self.mode {
PromptEditorMode::Terminal { .. } => vec![
accept,
IconButton::new("confirm", IconName::Play)
IconButton::new("confirm", IconName::PlayOutlined)
.icon_color(Color::Info)
.shape(IconButtonShape::Square)
.tooltip(|window, cx| {
+1 -1
View File
@@ -701,7 +701,7 @@ impl RenderOnce for HistoryEntryElement {
.on_hover(self.on_hover)
.end_slot::<IconButton>(if self.hovered || self.selected {
Some(
IconButton::new("delete", IconName::TrashAlt)
IconButton::new("delete", IconName::Trash)
.shape(IconButtonShape::Square)
.icon_size(IconSize::XSmall)
.icon_color(Color::Muted)