Fixing the theme toggle popover, search results design, and
sidebar/table of contents responsiveness.
Release Notes:
- N/A
Danilo Leal
created
8abf1d3
agent_ui: Fix delete icon event in history panel (#43796)
Click to expand commit body
Summary
Fixed the thread deletion issue by:
1. Click handler conflict between the trash icon and the main ListItem
2. Added `cx.stop_propagation()` to prevent the click event from
bubbling up to the parent ListItem's click handler
3. Followed the established `cx.stop_propagation()` pattern used
throughout the codebase
Now when you click the trash icon to delete a thread:
- ✅ The thread deletion happens immediately on the first click
- ✅ No race condition between deletion and activation
- ✅ No double-clicking required
The fix is minimal, follows established patterns, and addresses the
exact root cause of the issue.
- Stop event propagation in thread removal handler
Release Notes:
- agent: Improved delete thread action in the history view by preventing
it from also triggering the thread activation.
Aero
created
e75e137
Fix the misalignment issue with Inline Assist (#43768)
Click to expand commit body
Easy path to fix the issue #38755
<img width="787" height="157" alt="Screenshot 2025-11-28 at 9 39 55 PM"
src="https://github.com/user-attachments/assets/4943f668-c2d7-4c35-8fa7-a6fea839a99f"
/>
Release Notes:
- agent: Fixed the UI misalignment between old and new lines from the
inline assist.
Closes #43734
Closes #43698
Release Notes:
- Fixed git gutter incorrectly showing up for ignored files.
Jakub Konka
created
200a4a5
docs: Improve table of content responsiveness (#43766)
Click to expand commit body
Release Notes:
- N/A
Danilo Leal
created
be8605b
agent_ui: Make thread loading state clearer (#43765)
Click to expand commit body
Closes https://github.com/zed-industries/zed/issues/43721
This PR makes the loading state clearer by disabling the message editor
while the agent is loading as well as pulsating the icon.
Release Notes:
- agent: Made the thread loading state clearer in the agent panel.
Danilo Leal
created
63eb3ea
docs: Customize view transition and other layout shift improvements (#43763)
Click to expand commit body
Follow up to https://github.com/zed-industries/zed/pull/43762.
Yet another shot at making the navigation between pages flicker less.
Release Notes:
- N/A
Follow up to https://github.com/zed-industries/zed/pull/43758.
This PR uses view transition animations to reduce the page flickering
when navigating between one and the other. Pretty cool CSS-only
solution.
Release Notes:
- N/A
Danilo Leal
created
b11f22b
Fix button in multibuffer header overflowing (#43761)
Click to expand commit body
Closes https://github.com/zed-industries/zed/issues/43726
Note that the truncation strategy on the file path is not yet perfect.
I'm just applying the regular method from the label component, but we
should wrap path text from the start rather than from the end. Some time
in the future!
<img width="500" height="712" alt="Screenshot 2025-11-28 at 7 17@2x"
src="https://github.com/user-attachments/assets/6ebc618a-4b4a-42fd-b5b7-39fec3ae5335"
/>
Release Notes:
- Fixed a bug where the "Open File" button would overflow in the
multibuffer header if the file path was too long.
Danilo Leal
created
6040c0c
agent_ui: Fix activity bar when plan and edited files list is long (#43759)
Click to expand commit body
Closes https://github.com/zed-industries/zed/issues/43728
Release Notes:
- agent: Fixed a bug where the plan and edit files list would consume
the whole space of the thread if they were too long. They're now capped
by a max-height and scrollable.
Danilo Leal
created
e8a3368
docs: Reduce layout shift when navigating between pages (#43758)
Click to expand commit body
This is still not perfect, but it reduces the shift that happens when
navigating between pages that have and don't have the table of contents.
It also tries to reduce the theme flicker that happens by moving its
loading to an earlier moment.
Release Notes:
- N/A
Danilo Leal
created
d4c0b87
agent: Clarify `include_pattern` parameter usage for grep tool (#41225)
Click to expand commit body
Adds clarifying examples and information about the `include_pattern`
parameter for the grep tool, analogous to the `path` parameter of the
read and list tools and others.
The lack of clarity led to unexpected agent behavior described in
#41189. This change is confirmed to improve the precision of Claude
Sonnet 4.5 when searching for code in an empty conversation (without it,
it leaves out the root directory in the query).
Closes #41189.
```
Release Notes:
- Clarify grep tool description to improve agent precision when using it with the `include_pattern` parameter
```
Closes #43040
Release Notes:
- Remove the end-of-support Gemini 1.5 model from the options.
- Remove the older Gemini 2.0 model from the options.
- Please let me know if you think it's better to keep it, as it is still
a usable model.
- Update the incorrect amounts for some input/output tokens.
- Update the default model to Gemini 2.5 Flash-Lite.
- Rename variant `Gemini3ProPreview` to `Gemini3Pro`
When this PR is merged, users will be able to select the following
Gemini models.
- 2.5 Flash
- 2.5 Flash-Lite
- 2.5 Pro
- 3 Pro
Junseong Park
created
557d393
docs: Add sidebar title collapse functionality and design facelift (#43754)
Click to expand commit body
This PR adds the ability to collapse section in the docs sidebar (which
are persistent until you close the tab), and some design facelift to the
docs, which makes its design close to the site as well as polishing up
many elements and interactions (like moving the search to a modal and
making the table of content visible in smaller breakpoints).
<img width="600" height="2270" alt="Screenshot 2025-11-28 at 5 26@2x"
src="https://github.com/user-attachments/assets/3a8606c6-f74f-4bd2-84c8-d7a67ff97564"
/>
Release Notes:
- N/A
Danilo Leal
created
1cc3a4c
settings ui: Add tab_bar.show_tab_bar_buttons to settings UI (#43746)
Click to expand commit body
Release Notes:
- Added "Show Tab Bar Buttons" setting to Settings UI to control
visibility of New, Split Pane, and Zoom buttons in the tab bar.
<img width="899" height="750" alt="Screenshot 2025-11-28 at 12 37 08 PM"
src="https://github.com/user-attachments/assets/9894da7b-9702-4b37-9adb-ae0e43c87edf"
/>
David Baldwin
created
f6ab730
Allow opening settings.json file from Settings UI with keybinding (#43747)
Click to expand commit body
Release Notes:
- Added a keybinding to open the `settings.json` file when the Settings
UI is in focus: `cmd-,` (macOS) / `ctrl-,` (Windows / Linux).
- A tooltip was added to the `Edit in settings.json` button to show this
keybinding.
Joseph T. Lyons
created
6c98003
Tweak the issue template for bugs (#43719)
Click to expand commit body
- shorten some phrases to (hopefully) retain attention better
- move the required field up to not bore people with scrolling
- call it a bug and not an issue to further emphasize we want feature
requests in Discussions where the product managers are
- remove the default from the WSL question since not everyone does
WSL or even Windows
Release Notes:
- N/A
---------
Co-authored-by: Miguel Raz Guzmán Macedo <miguel@zed.dev>
Co-authored-by: Kunall Banerjee <hey@kimchiii.space>
Lena
,
Miguel Raz Guzmán Macedo
, and
Kunall Banerjee
created
7b4e050
Use test db for command palette under vim tests (#43731)
Agus Zubiaga
created
7c967b8
language: Allow support for ESLint working directories (#43677)
Click to expand commit body
Closes #9648 #9755
Release Notes:
- Added way to configure ESLint's working directories in settings. For
example:
`{"lsp":{"eslint":{"settings":{"workingDirectories":["./client","./server"]}}}}`
---------
Co-authored-by: Piotr Osiewicz <24362066+osiewicz@users.noreply.github.com>
Smit Barmase
and
Piotr Osiewicz
created
478bcea
docs: Add configuration explanation in git section (#43637)
Click to expand commit body
Closes https://github.com/zed-industries/zed/issues/33441
Release Notes:
- Added configuration documentation for git-commit settings including preferred-line-length in the git panel
---------
Co-authored-by: Jakub Konka <kubkon@jakubkonka.com>
Matthew Chisolm
and
Jakub Konka
created
c18481e
git: Add UI for deleting branches (#42703)
Click to expand commit body
Closes #42641
Release Notes:
- Added UI for deleting Git branches
---------
Co-authored-by: Jakub Konka <kubkon@jakubkonka.com>
Mayank Verma
and
Jakub Konka
created
87e3d6e
git: Check push config before falling back to branch remote (#41700)
Click to expand commit body
Closes #26649
Release Notes:
- Improved git support for remotes handling. Git will now check pushRemote and pushDefault configurations before
falling back to branch remote.
---------
Co-authored-by: Jakub Konka <kubkon@jakubkonka.com>
Mayank Verma
and
Jakub Konka
created
d877e56
Add a script to label untriaged GH issues (#43711)
Click to expand commit body
Release Notes:
- N/A
Lena
created
b89bcbe
editor: Speed up `colorize_brackets` slightly in large multibuffers (#43713)
Click to expand commit body
There is still room for improvement here as `anchor(s)_in_excerpt` is
generally a bad API here due to it reseeking the entire excerpt tree
from the start on every call which we don't really need. But this at
least cuts the seeks down by a factor of 4 for now.
Release Notes:
- Improved performance of bracket colorization in large multibuffers
Lukas Wirth
created
8f8a92c
editor: Reduce amount of sumtree traversals in `header_and_footer_blocks` (#43709)
Click to expand commit body
Introduces new "mapping point cursors" for the different display map
layers allowing one to map multiple points in increasing order more
efficiently than using the one shot operations.
This is used in the `BlockMap::sync` for `header_and_footer_blocks`
which spends a significant time in sumtree traversal due to repeatedly
transforming points between the different layers. This effectively turns
the complexity of those operations from quadratic in the number of
excerpts to linear, as we only go through the respective sumtrees once
instead of restarting from the start over and over again.
Release Notes:
- Improved performance for editors of large multibuffers with many
different files
Lukas Wirth
created
fc213f1
git_ui: Introduce explicit yield points for project diff (#43706)
Click to expand commit body
These are long running foreground tasks that tend to not have pending
await points, meaning once we start executing them they will never
reschedule themselves, starving the foreground thread.
Release Notes:
- Improved git project diff responsiveness
Lukas Wirth
created
f856a3c
askpass: Use double quotes for script name in helper command (#43689)
Click to expand commit body
Replace single quotes with double quotes when referencing the askpass
script name in the helper command. The Windows command processor
(cmd.exe) requires double quotes for proper string handling, as single
quotes are treated as literal characters.
Error I get when trying to open remote project:
<img width="396" height="390" alt="image"
src="https://github.com/user-attachments/assets/1538ee10-8efc-4f80-a867-b367908091b6"
/>
```
Zed Nightly 0.216.0
c2281779af56bd52c829ccd31aae4eb82b682ebc
0.216.0+nightly.1965.c2281779af56bd52c829ccd31aae4eb82b682ebc
```
Release Notes:
- N/A
Maokaman1
created
65e224c
agent panel: Improve keybindings on Windows (#43692)
Click to expand commit body
Closes https://github.com/zed-industries/zed/issues/43439
Release Notes:
- agent: Fixed keybinding for allowing a command to run in the agent
panel on Windows.
Danilo Leal
created
b17b903
Enhance color logic for phantom elements to improve visual distinction based on collision status (#42710)
Click to expand commit body
This change modifies the color assignment for phantom elements in the
editor. If a phantom element collides with existing elements, it now
uses a custom color based on the theme's debugger accent with reduced
opacity. Otherwise, it defaults to the hint color.
BEFORE:

AFTER:

Release Notes:
- Enhanced color logic for phantom elements to improve visual
distinction based on collision status.
---------
Co-authored-by: Danilo Leal <daniloleal09@gmail.com>
Without this new flag, the Sweep API will actually produce a combination
of UTF-16 and char indices, leading to incorrect edit positions.
Release Notes:
- N/A
Agus Zubiaga
created
05b999b
git: Move git-blame outside of git job queue (#43565)
Click to expand commit body
We restructured `struct Repository` a bit so that it now stores a shared
task of `enum RepositoryState`. This way, we can now re-use it outside
of the git job queue when spawning a git job a standalone bg task. An
example here would be `git-blame` that does not require any file locks
and is not susceptible to git job ordering.
As a result of this change, loading (and modifying) a file that contains
a huge git history will no longer block other git operations on the repo
such as staging/unstaging/committing.
Release Notes:
- Improved overall git experience when loading buffers with massive git
history where they would block other git jobs from running (such as
staging/unstaging/commiting). Now, git-blame will run separately from
the git job queue on the side and the buffer with blame hints when
finished thus unblocking other git operations.
Co-authored-by: Cole Miller <cole@zed.dev>
Jakub Konka
and
Cole Miller
created
d099ea0
docs: Improve content about text threads vs. threads (#43688)
Click to expand commit body
Release Notes:
- N/A
Danilo Leal
created
518ea71
agent_ui: Truncate file path in context completions (#42682)
Click to expand commit body
Closes https://github.com/zed-industries/zed/issues/38753
Followed some prior art here: [a similar calculation
](https://github.com/zed-industries/zed/blob/e80b490ac00bfb5c206d3eb3f5c2dec10e742678/crates/file_finder/src/file_finder.rs#L1105)
in `file_finder.rs`
Release Notes:
- improved visibility of long path names in context completions by
truncating on the left when space is insufficient to render the full
path
Before:
<img width="544" height="251" alt="Screenshot of overflowing file paths"
src="https://github.com/user-attachments/assets/8440710d-3f59-4273-92bb-3db85022b57c"
/>
After:
<img width="544" height="251" alt="Screenshot of truncated file paths"
src="https://github.com/user-attachments/assets/e268ba87-7979-4bc3-8d08-9198b4baea02"
/>
Scott Churchley
created
20b5843
checkbox: Fix showing cursor pointer for edge of the checkbox when it's disabled (#43577)
Click to expand commit body
This PR fixes that you saw the cursor pointer for disabled checkbox.
This is only for the edge of the checkbox component, because we didn't
check for the disabled case.
**Before**
https://github.com/user-attachments/assets/cfebad01-533b-4515-b8d9-4bcb839eaec4
**After**
https://github.com/user-attachments/assets/969600de-081b-42df-a288-ca3db5758d12
Release Notes:
- N/A
Remco Smits
created
28dde14
ui: Fix custom size preview example of vector component (#43633)
Click to expand commit body
In the vector component custom size preview example, the image will
overflow the content box.
| Before | After |
| - | - |
| <img width="1235" height="1042" alt="Before"
src="https://github.com/user-attachments/assets/1c4ff772-2578-41b2-94e8-9e2d625484f8"
/> | <img width="1234" height="1044" alt="After"
src="https://github.com/user-attachments/assets/19d6ab1a-d169-417e-b550-1e422358288e"
/> |
Release Notes:
- N/A
---------
Co-authored-by: Danilo Leal <daniloleal09@gmail.com>
Floyd Wang
and
Danilo Leal
created
f10afd1
component_preview: Pin the filter input at the top (#43636)
Click to expand commit body
When I scroll the page after selecting a component, the filter input
disappears. It would be more helpful if it stayed fixed at the top.
## Before
https://github.com/user-attachments/assets/e26031f1-d6e7-4ae2-a148-88f4c548a5cf
## After
https://github.com/user-attachments/assets/f120355c-74d3-4724-9ffc-71fb7e3a4586
Release Notes:
- N/A
d97d4f3
ui: Remove early return after painting existing menu (#43631)
Click to expand commit body
Release Notes:
- Fixed right-click context menu UX issues
Signed-off-by: Xiaobo Liu <cppcoffee@gmail.com>
Xiaobo Liu
created
64633ba
gpui(windows): Prioritize system messages when exceeding main thread task budget (#43682)
Click to expand commit body
Release Notes:
- Improved responsiveness on windows when there is a lot of tasks
running in the foreground
Lukas Wirth
created
d82be97
acp: Support using @mentions after typing slash command (#43681)
Click to expand commit body
Release Notes:
- acp: Allow using @mentions after typing slash command
Bennet Bo Fenner
created
aa899f6
gpui: Give windows message loop processing chances when we overload the main thread with tasks (#43678)
Click to expand commit body
This reduces hangs on windows when we have many tasks queued up on the
main thread that yield a lot.
Release Notes:
- Reduced hangs on windows in some situations
Lukas Wirth
created
5f0212d
Better promote edit prediction when signed out (#43665)
Click to expand commit body
Introducing this little popover here that's aimed at better
communicating what Zed's built-in edit prediction feature is and how
much people can get of it for free by purely just signing in.
<img width="600" height="1914" alt="Screenshot 2025-11-27 at 9 50@2x"
src="https://github.com/user-attachments/assets/a7013292-f662-4cae-9a6f-0e69a4a4fa1d"
/>
Release Notes:
- N/A
Danilo Leal
created
c228177
auto_update: Tentatively prevent auto-update loop on Nightly again (#43670)
Click to expand commit body
Release Notes:
- N/A
Piotr Osiewicz
created
02fbafc
release_version: Do not use prerelease field (#43669)
Click to expand commit body
- **release_channel: Do not use prerelease channel for build id**
Prerelease channel specifiers always compare as less than to
non-prerelease, which led to 2 auto-update bugs fixed in
https://github.com/zed-industries/zed/pull/43595 and
https://github.com/zed-industries/zed/pull/43611.
We'll use a dot-delimited build specifiers in form:
release-channel.build_number.sha1 instead
- **auto_update: Do not display full build metadata in update
notification**
Release Notes:
- N/A
Piotr Osiewicz
created
007d648
acp: Add a timeout when initializing an ACP agent so the user isn't waiting forever (#43663)
Click to expand commit body
Sometimes we are unable to receive messages at all from an agent. This
puts on upper bound on the `initialize` call so we can at least give a
message to the user that something is wrong here.
30s might feel like too long, but I wanted to avoid some false positives
in case there was something an agent needed to do at startup. This will
still communicate to the user at some point that something is wrong,
rather than leave them waiting forever with no signal that something is
going wrong.
Release Notes:
- agent: Show an error message to the user if we are unable to
initialize an ACP agent in a reasonable amount of time.
Ben Brandt
created
bbdbfe3
Auto-label new bugs/crashes with 'needs triage' (#43658)