50326dd
project_panel: Collapse top-level entries in `Collapse all entries` command (#38310)
Click to expand commit body
Closes #11760
The command `project panel: collapse all entries` currently does not
collapse top-level entries (the workspaces themselves). I think this
should be expected behaviour if you only have a single workspace in your
project. However, if you have multiple workspaces, we should collapse
their top-level folders as well. This is the expected behaviour in the
screenshots in #11760.
For more context: Atm the `.retain` function empties the
`self.expanded_dir_ids` Hash Map, because the `expanded_entries` Vec is
(almost) never empty - it contains the id of the `root_entry` of the
workspace.
https://github.com/zed-industries/zed/blob/d48d6a745409a8998998ed59c28493a1aa733ebb/crates/project_panel/src/project_panel.rs#L1148-L1152
We then update the `self.expanded_dir_ids` in the
`update_visible_entries` function, and since the Hash Map is empty, we
execute the `hash_map::Entry::Vacant` arm of the following match
statement.
https://github.com/zed-industries/zed/blob/d48d6a745409a8998998ed59c28493a1aa733ebb/crates/project_panel/src/project_panel.rs#L3062-L3073
This change makes sure that we do not clear the `expanded_dir_ids`
HashMap and always keep the keys for all visible workspaces and
therefore we run the `hash_map::Entry::Occupied` arm, which does not
override the `expanded_dir_ids` anymore.
https://github.com/user-attachments/assets/b607523b-2ea2-4159-8edf-aed7bca05e3a
cc @MrSubidubi
Release Notes:
- N/A *or* Added/Fixed/Improved ...
---------
Co-authored-by: Finn Evers <finn.evers@outlook.de>
Nils Koch
and
Finn Evers
created
52521ef
acp: update to v0.4 of Rust library (#38336)
Click to expand commit body
Release Notes:
- N/A
Ben Brandt
created
4a7784c
Allow opening a local folder inside WSL (#38335)
Click to expand commit body
This PR adds an option to allow opening local folders inside WSL
containers. (wsl_actions::OpenFolderInWsl). It is accessible via the
command palette and should be available to keybind.
- [x] Open wsl from open remote
- [x] Open local folder in wsl action
- [ ] Open wsl shortcut (shortcuts to open remote)
Release Notes:
- N/A
localcc
created
f3b8c61
editor: Fix `unwrap_syntax_node` panicking by not setting selections (#38329)
c54e294
Autosave files on close, when setting is `afterDelay` (#36929)
Click to expand commit body
Closes https://github.com/zed-industries/zed/issues/12149
Closes #35524
Release Notes:
- Improved autosave behavior, to prevent a confirmation dialog when
quickly closing files and using the `afterDelay` setting
---------
Co-authored-by: MrSubidubi <finn@zed.dev>
itsaphel
and
MrSubidubi
created
8683488
editor: Fix completions menu flashes on every keystroke in TSX files with emmet (#38320)
Click to expand commit body
Closes https://github.com/zed-industries/zed/issues/37774
Bug in https://github.com/zed-industries/zed/pull/32927
Instead of using trigger characters to clear cached completions items,
now we check if the query is empty to clear it. Turns out Emmet defines
whole [alphanumeric as trigger
characters](https://github.com/olrtg/emmet-language-server/blob/279be108725fb391c167690b697ce154fd32657b/index.ts#L116)
which causes flickering.
Clear on trigger characters was introduced to get rid of cached
completions like in the case of "Parent.Foo.Bar", where "." is one of
the trigger characters. This works still since "." is not part of
`completion_query_characters` and hence we use it as a boundary while
building the current query. i.e in this case, the query would be empty
after typing ".", clearing cached completions.
Release Notes:
- Fixed issue where completions menu flashed on every keystroke in TSX
files with emmet extension installed.
This PR adds an option to open WSL machines from the UI.
- [x] Open wsl from open remote
- [ ] Open local folder in wsl action
- [ ] Open wsl shortcut (shortcuts to open remote)
Release Notes:
- N/A
localcc
created
c5ac1e6
editor: Fix `select_larget_syntax_node` overflowing in multibuffers (#38308)
The crash occured because we raced against the platform windowing
backend to render a frame, and if we lost the race there would be no
frame on a window that we return, which breaks most of gpui
Release Notes:
- N/A
localcc
created
a2de918
agent_ui: Fix panic on editor changes in inline_assistant (#38303)
5d561aa
agent_ui: Fix agent panel insertion to use cursor position (#38253)
Click to expand commit body
Fix agent panel insertion to use cursor position
Closes #38216
Release Notes:
- Fixed agent panel text insertion to respect cursor position instead of
always appending to the end
## Before
[before.webm](https://github.com/user-attachments/assets/684d3cbe-4710-4724-8d2d-ac08f430dea8)
## After
[output.webm](https://github.com/user-attachments/assets/d1122d99-4efb-4a24-a408-db128814f98c)
Kyrilasa
created
4ee2dae
markdown: Fix indented codeblocks having incorrect content ranges (#38225)
Click to expand commit body
Closes https://github.com/zed-industries/zed/issues/37743
Release Notes:
- Fixed agent panel panicking when streaming indented codeblocks from
agent output
Lukas Wirth
created
c27d8e0
editor: Don't pull diagnostics on excerpts change in diagnostics editors (#38212)
Click to expand commit body
This can lead to an infinite regress when using a language server that
supports pull diagnostics, since the excerpts for the diagnostics editor
are set based on the project's diagnostics.
Closes #36772
Release Notes:
- Fixed a bug that could cause duplicated diagnostics with some language
servers.
This PR removes the user backfiller from Collab.
Release Notes:
- N/A
Marshall Bowers
created
74e5b84
cloud_llm_client: Make `default_model` and `default_fast_model` optional (#38288)
Click to expand commit body
This PR makes the `default_model` and `default_fast_model` fields
optional on the `ListModelsResponse`.
Release Notes:
- N/A
Marshall Bowers
created
ee399eb
macOS: Make it easier to debug NSAutoFillHeuristicControllerEnabled (#38285)
Click to expand commit body
Uses `setObject` instead of `registerDefaults`, so that it can be read
with `defaults read dev.zed.Zed`. Still can be overrided.
Release Notes:
- N/A
Smit Barmase
created
54c82f2
Windows: Unminimize a window when activating it (#38287)
Click to expand commit body
Closes #36287
Release Notes:
- Windows: Fixed an issue where a Zed window would stay minimized when
opening an existing file in that window via the Zed CLI.
0343b5f
Add new crate denoise required by audio (#38217)
Click to expand commit body
The audio crate will use the denoise crate to remove background noises
from microphone input.
We intent to contribute this to rodio. Before that can happen a PR needs
to land in candle. Until then this lives here.
Uses a candle fork which removes the dependency on `protoc` and has the PR's mentioned above already applied.
Release Notes:
- N/A
---------
Co-authored-by: Mikayla <mikayla@zed.dev>
David Kleingeld
and
Mikayla
created
26202e5
language_models: Use `message` field from Cloud error responses, if present (#38286)
Click to expand commit body
This PR updates the Cloud language model provider to use the `message`
field from the Cloud error response, if it is present.
Previously we would always show the entire JSON payload in the error
message, but with this change we can show just the user-facing `message`
the error response is in a shape that we recognize.
Release Notes:
- N/A
Marshall Bowers
created
ee91236
Check if virtual environment is in worktree root (#37510)
Click to expand commit body
The problem from issue #37509 comes from local virtual environments
created with certain approaches (including the 'simple' way of `python
-m venv`) not having a `.project` file with the path to the project's
root directory. When the toolchains are sorted, a virtual environment in
the project is not treated as being for that project and therefore is
not prioritized.
With this change, if a toolchain does not have a `project` associated
with it, we check to see if it is a virtual environment, and if it is we
use its parent directory as the `project`. This will make it the top
priority (i.e. the default) if there are no other virtual environments
for a project, which is what should be expected.
Closes #37509
Release Notes:
- Improved python toolchain prioritization of local virtual
environments.
George Waters
created
673a98a
Fix a number of spelling mistakes (#38281)
Click to expand commit body
My pre push hooks keep failing on these. This is easier then disabling
and re-enabling those hooks all the time :)
Closes #ISSUE
Release Notes:
- N/A
David Kleingeld
created
5674445
Move keyboard shortcut for `pane::GoForward` (#38221)
Click to expand commit body
Move keyboard shortcut for `pane:GoForward` so it's going to be
displayed as a shortcut hint in UI. Currently `Forward` is shown as a
hint, which isn't consistent with `GoBack` action and can be confusing.
Release Notes:
- Improved the displayed keybinding for the `pane::GoForward` action on
Linux.
Release Notes:
- Fixed filled button hover background.
## Before
https://github.com/user-attachments/assets/fbc75890-d1a4-4a0c-b54e-ca2c7e63a661
## After
https://github.com/user-attachments/assets/a3595b01-e143-4cd0-8bc4-90db9ccfbf74
This appears to be a minor calculation error, not an intentional use of
this value.
If we pass `0.92` to `fade_out`, the calculated will be `alpha: 0.08`.
---------
Co-authored-by: Danilo Leal <daniloleal09@gmail.com>
Jason Lee
and
Danilo Leal
created
e885a93
git_ui: Add tooltip for branch picker items (#38261)
Click to expand commit body
Closes #38256
<img width="300" alt="image"
src="https://github.com/user-attachments/assets/5018951f-0f1b-4d5d-b59d-5b5266380e43"
/>
Release Notes:
- Added tooltip to Git branch picker items, making it easier to
distinguish long branch names.
Smit Barmase
created
a01a2ed
languages: Add Tailwind CSS support for TypeScript (#38254)
Click to expand commit body
Closes #37028
I noticed many projects use Tailwind in plain TypeScript (.ts) files, so
it makes sense to support them out of the box, alongside .js and .tsx
files we already handle. For example, see
[supabase](https://github.com/supabase/supabase/blob/master/packages/ui/src/lib/theme/defaultTheme.ts).
Note: You’ll still need to add `"classFunctions": ["cva", "cx"],`
manually for Tailwind completions to work in `cva` type methods. This is
because you don’t want completions on every string, only in specific
methods or regex matches. This is documented.
Release Notes:
- Added out-of-the-box support for Tailwind completions in `.ts` files.
Smit Barmase
created
af3bc45
Drop ellipses from About Zed menu item (#38211)
Click to expand commit body
Follow the macOS app style guideline.
Release Notes:
- N/A
Nathan Sobo
created
173074f
search: Re-issue project search if search query is stale on replacement (#38251)
c0710fa
agent_servers: Set proxy env for all ACP agents (#38247)
Click to expand commit body
- Use ProxySettings::proxy_url to read from settings or env
- Export HTTP(S)_PROXY and NO_PROXY for agent CLIs
- Add read_no_proxy_from_env and move parsing from main
Closes https://github.com/zed-industries/claude-code-acp/issues/46
Release Notes:
- acp: Pass proxy settings through to all ACP agents
Ben Brandt
created
f321d02
auto_update: Show update error on hover and open logs on click (#38241)
Click to expand commit body
Release Notes:
- Improved error reporting when auto-updating fails
Lukas Wirth
created
1c09985
worktree: Add more context to `log_err` calls (#38239)
Click to expand commit body
Release Notes:
- N/A
Lukas Wirth
created
d986077
client: Hide usage when not available (#38234)
6446963
agent: Make assistant panel input size configurable (#37975)
Click to expand commit body
Release Notes:
- Added the `agent. message_editor_min_lines `setting to allow users to
customize the agent panel message editor default size by using a
different minimum number of lines.
<img width="800" height="1316" alt="Screenshot 2025-09-11 at 5 47 18 pm"
src="https://github.com/user-attachments/assets/20990b90-c4f9-4f5c-af59-76358642a273"
/>
---------
Co-authored-by: Danilo Leal <daniloleal09@gmail.com>
Owen Kelly
and
Danilo Leal
created
ceb907e
onboarding: Add scrollbar to pages (#38093)
Click to expand commit body
Closes #37214
This PR adds a scrollbar to the onboarding view and additionally ensures
the scroll state is properly reset when switching between the different
pages each time.
Release Notes:
- N/A
Finn Evers
created
3dbccc8
Fix hover element on ACP thread mode selector (#38204)
Click to expand commit body
Closes #38197
This will render `^ click to also ...` on MacOS and `Ctrl + click to
also ...` on Windows and Linux.
|Before|After|
|-|-|
| <img width="683" height="197" alt="image"
src="https://github.com/user-attachments/assets/09909f1b-3163-40d1-b025-4eb9b159fbf3"
/> | <img width="683" height="197" alt="image"
src="https://github.com/user-attachments/assets/47d0290d-afa2-4b1b-a588-adfe3130d0b1"
/>|
On Mac:
<img width="683" height="197" alt="image"
src="https://github.com/user-attachments/assets/f63103b5-1ceb-4193-ae6c-be55b97106e0"
/>
Release Notes:
- Fixed keymap hint when hovering over mode selector
---------
Co-authored-by: Danilo Leal <daniloleal09@gmail.com>
Release Notes:
- N/A
---------
Co-authored-by: agus <agus@zed.dev>
Michael Sloan
and
agus
created
0784bb8
docs: Add "Copy as Markdown" button to toolbar (#38218)
Click to expand commit body
## Summary
Adds a "Copy as Markdown" button to the documentation toolbar that
allows users to easily copy the raw markdown content of any
documentation page.
This feature is inspired by similar implementations on sites like
[Better Auth docs](https://www.better-auth.com/docs/installation) and
[Cloudflare Workers docs](https://developers.cloudflare.com/workers/)
which provide easy ways for users to copy documentation content.
## Features
- **Button placement**: Positioned between theme toggle and search icon
for optimal UX
- **Content fetching**: Retrieves raw markdown from GitHub's API for the
current page
- **Consistent styling**: Matches existing toolbar button patterns
## Test plan
- [x] Copy functionality works on all documentation pages
- [x] Toast notifications appear and disappear correctly
- [x] Button icon animations work properly (spinner → checkmark → copy)
- [x] Styling matches other toolbar buttons
- [x] Works in both light and dark themes
## Screenshots
The button appears as a copy icon between the theme and search buttons
in the left toolbar.
<img width="798" height="295" alt="image"
src="https://github.com/user-attachments/assets/37d41258-d71b-40f8-b8fe-16eaa46b8d7f"
/>
<img width="1628" height="358" alt="image"
src="https://github.com/user-attachments/assets/fc45bc04-a290-4a07-8d1a-a010a92be033"
/>
---------
Co-authored-by: Danilo Leal <daniloleal09@gmail.com>