Commit log

2309721 Fix panic when expanding a deletion hunk with blame open (cherry-pick #26130) (#26142)

Click to expand commit body
Cherry-picked Fix panic when expanding a deletion hunk with blame open
(#26130)

Closes #26118

Release Notes:

- Fixed a panic when expanding diff hunks while git blame is open

Co-authored-by: Cole Miller <cole@zed.dev>

gcp-cherry-pick-bot[bot] and Cole Miller created

fa2f982 Fix language model selector (#26138)

Click to expand commit body
This PR fixes the language model selector.

I tried to piece together the state prior to #25697 (the state it was in
at 11838cf89e0b96531f90f22432b3df6859587871) while retaining unrelated
changes that happened since then.

Release Notes:

- Fixed an issue where language models would not be authenticated until
after the model selector was opened (Preview only).

Marshall Bowers created

78b460f Clean up language model selector (#26134)

Click to expand commit body
This PR does some cleanup for the language model selector after
https://github.com/zed-industries/zed/pull/26090.

Release Notes:

- N/A

Marshall Bowers created

2d5063b zed 0.177.3

Cole Miller created

a87929c Bump Tree-sitter to 0.25.3 for error recovery fixes (#26092)

Click to expand commit body
For https://github.com/tree-sitter/tree-sitter/pull/4257

Release Notes:

- Fixed a hang that could occur when editing certain Zig files.

Max Brunsfeld created

535c949 Fix performance regression in multibuffer diff syncing (cherry-pick #26137) (#26139)

Click to expand commit body
Cherry-picked Fix performance regression in multibuffer diff syncing
(#26137)

This fixes a performance problem introduced in #25906 and caused by
calling `BufferDiff::snapshot` too frequently.

Release Notes:

- Fixed a performance regression related to buffer diffs

Co-authored-by: Conrad <conrad@zed.dev>

Co-authored-by: Cole Miller <cole@zed.dev>
Co-authored-by: Conrad <conrad@zed.dev>

gcp-cherry-pick-bot[bot] , Cole Miller , and Conrad created

4b6fcef zed 0.177.2

Joseph T. Lyons created

dc37471 Fix diff_hunk_before in a multibuffer (cherry-pick #26059) (#26102)

Click to expand commit body
Cherry-picked Fix diff_hunk_before in a multibuffer (#26059)

Also simplify it to avoid doing a bunch of unnecessary work.

Co-Authored-By: Cole <cole@zed.dev>

Closes #ISSUE

Release Notes:

- git: Fix jumping to the previous diff hunk

---------

Co-authored-by: Cole <cole@zed.dev>

Co-authored-by: Conrad Irwin <conrad.irwin@gmail.com>
Co-authored-by: Cole <cole@zed.dev>

gcp-cherry-pick-bot[bot] , Conrad Irwin , and Cole created

c084706 git: Improvements to fetch/push/pull (cherry-pick #26041) (#26051)

Click to expand commit body
Cherry-picked git: Improvements to fetch/push/pull (#26041)

- Add global handlers so these actions can be invoked from the command
palette, etc.
- Tweak spinner to not show itself until a remote has been selected

Release Notes:

- N/A

Co-authored-by: Cole Miller <cole@zed.dev>

gcp-cherry-pick-bot[bot] and Cole Miller created

578c9f8 Synchronize modal commit editor with panel editor (cherry-pick #26068) (#26093)

Click to expand commit body
Cherry-picked Synchronize modal commit editor with panel editor (#26068)

Release Notes:

- Git Beta: Synchronized selections between the modal editor and the
panel editor
- Git Beta: Allow opening the commit modal even if we're unable to
commit.

Co-authored-by: Mikayla Maki <mikayla@zed.dev>

gcp-cherry-pick-bot[bot] and Mikayla Maki created

f06cee4 Fix focus handle leak (cherry-pick #26090) (#26094)

Click to expand commit body
Cherry-picked Fix focus handle leak (#26090)

This fixes a major performance issue in the current git beta.
This PR also removes the PopoverButton component, which was easy to
misuse.

Release Notes:

- Git Beta: Fix frame drops caused by opening the git panel

---------

Co-authored-by: Mikayla Maki <mikayla.c.maki@gmail.com>

Co-authored-by: Conrad Irwin <conrad.irwin@gmail.com>
Co-authored-by: Mikayla Maki <mikayla.c.maki@gmail.com>

gcp-cherry-pick-bot[bot] , Conrad Irwin , and Mikayla Maki created

1f936ec Fix lag when large diff hunk intersects the viewport (#26088)

Click to expand commit body
We were iterating over the row range of a hunk, and inserting into a
hash map for every row.

Release Notes:

- Fixed a performance problem when a large diff hunk was displayed in an
editor.

Max Brunsfeld created

1516ee3 zed 0.177.1

Joseph T. Lyons created

53af68a git: Fix project diff shortcuts (cherry-pick #26045) (#26049)

Click to expand commit body
Cherry-picked git: Fix project diff shortcuts (#26045)

Release Notes:

- git: Fix keyboard shortcut display in project diff view
- vim: add git keyboard shortcuts: `d u/d U` for staging/unstaging in
the project diff view. `d o/d O` to show hide/toggle staged in the
editor and `d p` for restoring the hunk.

Co-authored-by: Conrad Irwin <conrad.irwin@gmail.com>

gcp-cherry-pick-bot[bot] and Conrad Irwin created

e897f19 Git Beta: Fix a few cases of empty toasts showing up (cherry-pick #25985) (#25987)

Click to expand commit body
Cherry-picked Git Beta: Fix a few cases of empty toasts showing up
(#25985)

Improve parsing of git remote outputs

Release Notes:

- N/A

Co-authored-by: Mikayla Maki <mikayla@zed.dev>

gcp-cherry-pick-bot[bot] and Mikayla Maki created

aba10b7 Git fix repo selection (cherry-pick #25996) (#25998)

Click to expand commit body
Cherry-picked Git fix repo selection (#25996)

Release Notes:

- git: Fixed a bug where staging/unstaging of hunks could use the wrong
git repository if you had many open

Co-authored-by: Conrad Irwin <conrad.irwin@gmail.com>

gcp-cherry-pick-bot[bot] and Conrad Irwin created

46190bd git: Fix race condition loading project diff (cherry-pick #25992) (#25999)

Click to expand commit body
Cherry-picked git: Fix race condition loading project diff (#25992)

Release Notes:

- git: Fixed a race condition where some files would be missing from
project diff

Co-authored-by: Conrad Irwin <conrad.irwin@gmail.com>

gcp-cherry-pick-bot[bot] and Conrad Irwin created

0b360fe git: Add `hunk_style` setting (#26038)

Click to expand commit body
This PR adds the `git.hunk_style` setting, allowing setting an alternate
style for hunks – specifically the rendering of unstaged hunks.

It has 2 options:

- `transparent` (unstaged hunks are more transparent/less opaque than
staged hunks)
- `pattern (unstaged hunks are indicated by a visual pattern)

We'll possibly explore a VSCode-style "don't show staged hunks", but the
complexity it adds is a bit out of scope for now.

Transparent:

![CleanShot 2025-03-04 at 09 07
09@2x](https://github.com/user-attachments/assets/a74c4286-8264-48a2-bd58-0c582efb4e22)

Pattern:

![CleanShot 2025-03-04 at 09 10
12@2x](https://github.com/user-attachments/assets/4dd3040e-fb36-4670-9279-fcc7a4f12ced)

Release Notes:

- Git Beta: Added `git.hunk_style` setting to allow toggling between git
hunk visual styles.

Nate Butler created

11d75c4 Disable diff hunks for untracked files, even w/ no newline at eof (cherry-pick #25980) (#26004)

Click to expand commit body
Cherry-picked Disable diff hunks for untracked files, even w/ no newline
at eof (#25980)

This fixes an issue where diff hunks were shown for untracked files, but
only if the files did not end with a newline.

Release Notes:

- N/A

Co-authored-by: Max Brunsfeld <maxbrunsfeld@gmail.com>

gcp-cherry-pick-bot[bot] and Max Brunsfeld created

b3de2bf Reuse existing logic used to generate commit messages to disable commit buttons (#26034)

Click to expand commit body
Also
- Recomputes `suggested_commit_message` and no longer stores it, to
ensure things are always up to date
- Reduces indentation in `render_footer`

Release Notes:

- N/A

Joseph T. Lyons created

b2f174a Revert "git: Use worktree paths in the panel (#25950)" (#25995)

Click to expand commit body
This reverts commit e7b3b8bf03f5f8693f8c330b98b656b16ab8f931.

Release Notes:

- N/A

Cole Miller created

a3b7c1d Fix a panic on Linux theme appearance change (cherry-pick #26019) (#26028)

Click to expand commit body
Cherry-picked Fix a panic on Linux theme appearance change (#26019)

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



https://github.com/zed-industries/zed/blob/21484a2e9d07b6285f112ba49ca413cdb8e360e4/crates/gpui/src/platform/linux/platform.rs#L517-L519

`with_common` panicked at `borrow_mut` which is the way it's implemented
for X11, Wayland and Headless Linux counterparts.



https://github.com/zed-industries/zed/blob/21484a2e9d07b6285f112ba49ca413cdb8e360e4/crates/gpui/src/platform/linux/wayland/client.rs#L722-L724

By accessing the appearance global instead of a `RefCell` with it, the
panic goes away with one notable side-effect, on Linux only: the first
global's value on `Dark` appearance would be `Light`: it becomes normal
instantly, thanks to



https://github.com/zed-industries/zed/blob/21484a2e9d07b6285f112ba49ca413cdb8e360e4/crates/workspace/src/workspace.rs#L1083-L1090

Things work without flickering:



[linux_theme_toggle.webm](https://github.com/user-attachments/assets/0e39ddc0-b4ff-4475-93ff-7b2bd7233628)


Release Notes:

- Fixed a panic on Linux theme appearance change

Co-authored-by: Kirill Bulatov <kirill@zed.dev>

gcp-cherry-pick-bot[bot] and Kirill Bulatov created

f4b83d1 Make suggested commits placeholders and allow them to be committed (#26006)

Click to expand commit body
This does not fix the bug where, when the commit editor modal is open,
changing the staged file does not update the suggested message in the
commit editor. Conrad mentioned he thought we shouldn't be allowed to
change those when the modal is open, so I'm not attempting to fix that.

Release Notes:

- Made suggested commits placeholders and allow them to be committed.

Joseph T. Lyons created

5de7f1b Skip .git/lfs FS events (cherry-pick #25927) (#26005)

Click to expand commit body
Cherry-picked Skip .git/lfs FS events (#25927)

Closes https://github.com/zed-industries/zed/issues/25865
Closes https://github.com/zed-industries/zed/pull/25915

In the issue, Zed had caused `.git/lfs/tmp/466102258`-like files to
appear in the directory, which lead to background FS event listener to
handle this as an update, incrementing snapshot's `scan_id`, which lead
to git status rescan, which caused another increment to `status_scan_id`
— incrementing either of the IDs causes the related repo data to be
considered "changed:



https://github.com/zed-industries/zed/blob/41b45eaba798a56e596857fa497c862050788bc7/crates/worktree/src/worktree.rs#L1590-L1605

hence propagating events to the other parts of the system (e.g. git
blame, which was also active in the issue's case)

```
[2025-03-01T20:01:08+01:00 DEBUG worktree] ignoring event ".git/lfs/tmp/466102258" within unloaded directory
[2025-03-01T20:01:08+01:00 DEBUG worktree] received fs events []
[2025-03-01T20:01:08+01:00 DEBUG worktree] reloading repositories: ["/Users/alex/dev/monorepo/.git"]
[2025-03-01T20:01:08+01:00 DEBUG editor::git::blame] Status of git repositories updated. Regenerating blame data...
[2025-03-01T20:01:08+01:00 DEBUG editor::git::blame] Status of git repositories updated. Regenerating blame data...
[2025-03-01T20:01:08+01:00 DEBUG editor::git::blame] Status of git repositories updated. Regenerating blame data...
```

Due to repo update events sent, another `.git/lfs/tmp/` entry is
created, things start over...

The PR fixes this by ignoring any `.git/lfs/` directory-related FS
events, as needed for the current git status update heuristics.

https://github.com/zed-industries/zed/pull/25915 tried to follow further
and `scan_id` and `status_scan_id` but we do not store all git state in
memory, e.g. head


https://github.com/zed-industries/zed/blob/e0060b92cc862c4d926652e1a01f0991ccb3a805/crates/editor/src/editor_tests.rs#L13686
as

[tests](https://github.com/zed-industries/zed/actions/runs/13631960559/job/38101504549?pr=25915)
show.

Release Notes:

- Improved `.git` scan heuristics

Co-authored-by: Kirill Bulatov <kirill@zed.dev>

gcp-cherry-pick-bot[bot] and Kirill Bulatov created

375885e Disable Git panel button to open commit editor in certain cases (cherry-pick #26000) (#26001)

Click to expand commit body
Cherry-picked Disable Git panel button to open commit editor in certain
cases (#26000)

Also:

- Internally renames a bit of code to make it easy to identify between
when we are disabling the buttons that open and close the modal editor
(in Git Panel and Project Diff) vs when we are disabling the commit
buttons (in Git Panel and Git commit editor modal).
- Deletes some unused code.

Release Notes:

- Unified disabling / enabling the button to open the Git commit editor
modal in the Git panel with the Project Diff commit button.
- Unified disabling / enabling the commit buttons, for the same cases,
between the Git panel and Git commit editor modal.

Co-authored-by: Joseph T. Lyons <JosephTLyons@gmail.com>

gcp-cherry-pick-bot[bot] and Joseph T. Lyons created

7ab9ec9 git: New enter behaviour (cherry-pick #25986) (#25993)

Click to expand commit body
Cherry-picked git: New enter behaviour (#25986)

Closes #25951

Release Notes:

- git: Update "enter" in the list of changed files to preserve focus. If
you want the old behaviour, hit enter twice.
- git: Follow the cursor, not the scroll anchor, in the list. Although
the scroll anchor was nice for passive scrolling, it broke if you had
changed the overflow scroll settings.

Co-authored-by: Conrad Irwin <conrad.irwin@gmail.com>

gcp-cherry-pick-bot[bot] and Conrad Irwin created

9442505 Improve consistency with commit button tooltip between Git panel and modal (cherry-pick #25990) (#25991)

Click to expand commit body
Cherry-picked Refactor more code around commit button text (#25990)

Missed this when doing https://github.com/zed-industries/zed/pull/25988

Release Notes:

- N/A

Co-authored-by: Joseph T. Lyons <JosephTLyons@gmail.com>

gcp-cherry-pick-bot[bot] and Joseph T. Lyons created

7bd4a85 Use same commit button text in panel and modal (cherry-pick #25988) (#25989)

Click to expand commit body
Cherry-picked Use same commit button text in panel and modal (#25988)

Release Notes:

- Fixed inconsistencies in commit button text between Git panel and
modal.

Co-authored-by: Joseph T. Lyons <JosephTLyons@gmail.com>

gcp-cherry-pick-bot[bot] and Joseph T. Lyons created

7d1b50e vim: Fix key navigation on folded buffer headers (cherry-pick #25944) (#25972)

Click to expand commit body
Cherry-picked vim: Fix key navigation on folded buffer headers (#25944)

Closes #24243

Release Notes:

- vim: Fix j/k on folded multibuffer headers

---------

Co-authored-by: João Marcos <marcospb19@hotmail.com>

Co-authored-by: Conrad Irwin <conrad.irwin@gmail.com>
Co-authored-by: João Marcos <marcospb19@hotmail.com>

gcp-cherry-pick-bot[bot] , Conrad Irwin , and João Marcos created

96ce87d Fix toggle fold in deleted hunk (cherry-pick #25967) (#25982)

Click to expand commit body
Cherry-picked Fix toggle fold in deleted hunk (#25967)

Updates #25835
Updates #25951

Closes #ISSUE

Release Notes:

- Fixed toggling folds from within deleted hunks

Co-authored-by: Conrad Irwin <conrad.irwin@gmail.com>

gcp-cherry-pick-bot[bot] and Conrad Irwin created

1c6bf1f Show git panel footer even when on a detached HEAD (#25968)

Click to expand commit body
Previously, the git panel footer would accidentally hide when not on a
branch.

Release Notes:

- N/A

Co-authored-by: Ben Kunkle <ben.kunkle@gmail.com>

Max Brunsfeld and Ben Kunkle created

8d9d14c git: Use worktree paths in the panel (#25950)

Click to expand commit body
This PR changes the git panel to use worktree-relative paths for its
entries, instead of repository-relative paths as before. Paths that lie
outside the active repository's worktree are no longer shown in the
panel. Note that in both respects this is how the project diff editor
already works, so this PR brings those two pieces of UI into harmony.

Release Notes:

- N/A

Cole Miller created

46944b6 git_ui: horizontal is not vertical (#25961)

Click to expand commit body
Fixes an issue where I was missing some brain cells and changed the git
panel's `render_entries` to a `v_flex` instead of an `h_flex`.

But actually, fixes the git panel entries from disappearing when a
scrollbar is rendered.

**Before**

![CleanShot 2025-03-03 at 16 36
52@2x](https://github.com/user-attachments/assets/9dca7b9c-318d-4b3f-ab3e-e7242fa7f73a)

**After**

![CleanShot 2025-03-03 at 16 35
59@2x](https://github.com/user-attachments/assets/c1fe5fb1-ad57-4bca-ace4-365e70a74066)


Closes #25955

Release Notes:

- Git Beta: Fixed an issue where when the git panel would need to scroll
all the items are pushed off the screen.

Nate Butler created

b1386bf git_ui: Prevent button overflow due to long names (#25940)

Click to expand commit body
- Fix component preview widths for git panel
- Fix buttons getting pushed off the screen in git  panel

Release Notes:

- N/A

---------

Co-authored-by: Mikayla Maki <mikayla.c.maki@gmail.com>

Nate Butler and Mikayla Maki created

02204de git: Don't consider $HOME as containing git repository unless it's opened directly (cherry-pick #25948) (#25952)

Click to expand commit body
Cherry-picked git: Don't consider $HOME as containing git repository
unless it's opened directly (#25948)

When a worktree is created, we walk up the ancestors of the root path
trying to find a git repository. In particular, if your `$HOME` is a git
repository and you open some subdirectory of `$HOME` that's *not* a git
repository, we end up scanning `$HOME` and everything under it looking
for changed and untracked files, which is often pretty slow. Consistency
here is not very useful and leads to a bad experience.

This PR adds a special case to not consider `$HOME` as a containing git
repository, unless you ask for it by doing the equivalent of `zed ~`.

Release Notes:

- Changed the behavior of git features to not treat `$HOME` as a git
repository unless opened directly

Co-authored-by: Cole Miller <cole@zed.dev>

gcp-cherry-pick-bot[bot] and Cole Miller created

a1e6138 Add some logging to debug missing parent git repositories (cherry-pick #25943) (#25946)

Click to expand commit body
Cherry-picked Add some logging to debug missing parent git repositories
(#25943)

We've had some issues reported with git repositories not getting
detected when they're a strict parent of the worktree root. Add a bit
more logging to understand what's going on here.

Release Notes:

- N/A

Co-authored-by: Cole Miller <cole@zed.dev>

gcp-cherry-pick-bot[bot] and Cole Miller created

5852f2e Fix missing hunks in project diff after revert (cherry-pick #25906) (#25947)

Click to expand commit body
Cherry-picked Fix missing hunks in project diff after revert (#25906)

Release Notes:

- N/A

Co-authored-by: Cole Miller <cole@zed.dev>

gcp-cherry-pick-bot[bot] and Cole Miller created

3130b46 v0.177.x preview

Joseph T. Lyons created

669082d assistant2: Fix keyboard navigation issues when a picker is open (#25928)

Click to expand commit body
This fixes:
- Bug: Using "up" in model selector triggers assistant2::FocusUp not
menu::SelectPrev
- Bug: Pressing arrow up/down in the model selector opened in the inline
assistant doesn't work
- Bug: Dismissing the model selector with Esc is not working
- Bug: Dismissing context pickers with Esc no longer working

Release Notes:

- N/A

Bennet Bo Fenner created

d5bc7b9 extension_cli: Make use of `scrollbar_thumb.background` a hard error (#25932)

Click to expand commit body
This PR updates the extension CLI to make the use of
`scrollbar_thumb.background` in a theme a hard error.

We're working to eradicate usage of this theme property, so this will
prevent new extensions from being published that use it.

Release Notes:

- N/A

Marshall Bowers created

8bb2739 keymap: Update `Prev` to `Previous` follow-up (#25931)

Click to expand commit body
Follow-up for https://github.com/zed-industries/zed/pull/25909

Add three more action replacements:

```
1. "pane::ActivatePrevItem" -> "pane::ActivatePreviousItem"
2. "vim::MoveToPrev" -> "vim::MoveToPrevious"
3. "vim:MoveToPrevMatch" -> "vim:MoveToPreviousMatch" 
```

Release Notes:

- N/A

smit created

466be14 Revert "Use multi-line regex for '\s'" (#25926)

Click to expand commit body
Reverts zed-industries/zed#19241
Closes: https://github.com/zed-industries/zed/issues/25901

Although `\s` contains `\n` it is widely used in non-multiline regexes (unlike `\n`).

Peter Tripp created

9544619 Skip .git/lfs FS events (#25927)

Click to expand commit body
Closes https://github.com/zed-industries/zed/issues/25865
Closes https://github.com/zed-industries/zed/pull/25915

In the issue, Zed had caused `.git/lfs/tmp/466102258`-like files to
appear in the directory, which lead to background FS event listener to
handle this as an update, incrementing snapshot's `scan_id`, which lead
to git status rescan, which caused another increment to `status_scan_id`
— incrementing either of the IDs causes the related repo data to be
considered "changed:


https://github.com/zed-industries/zed/blob/41b45eaba798a56e596857fa497c862050788bc7/crates/worktree/src/worktree.rs#L1590-L1605

hence propagating events to the other parts of the system (e.g. git
blame, which was also active in the issue's case)

```
[2025-03-01T20:01:08+01:00 DEBUG worktree] ignoring event ".git/lfs/tmp/466102258" within unloaded directory
[2025-03-01T20:01:08+01:00 DEBUG worktree] received fs events []
[2025-03-01T20:01:08+01:00 DEBUG worktree] reloading repositories: ["/Users/alex/dev/monorepo/.git"]
[2025-03-01T20:01:08+01:00 DEBUG editor::git::blame] Status of git repositories updated. Regenerating blame data...
[2025-03-01T20:01:08+01:00 DEBUG editor::git::blame] Status of git repositories updated. Regenerating blame data...
[2025-03-01T20:01:08+01:00 DEBUG editor::git::blame] Status of git repositories updated. Regenerating blame data...
```

Due to repo update events sent, another `.git/lfs/tmp/` entry is
created, things start over...

The PR fixes this by ignoring any `.git/lfs/` directory-related FS
events, as needed for the current git status update heuristics.

https://github.com/zed-industries/zed/pull/25915 tried to follow further
and `scan_id` and `status_scan_id` but we do not store all git state in
memory, e.g. head

https://github.com/zed-industries/zed/blob/e0060b92cc862c4d926652e1a01f0991ccb3a805/crates/editor/src/editor_tests.rs#L13686
as
[tests](https://github.com/zed-industries/zed/actions/runs/13631960559/job/38101504549?pr=25915)
show.

Release Notes:

- Improved `.git` scan heuristics

Kirill Bulatov created

b34c0fd git_ui: Fix item heights in git panel (#25833)

Click to expand commit body
- Fixes items slightly overlapping in the git panel
- Fixes commit button in the project diff not opening modal

Release Notes:

- N/A

---------

Co-authored-by: Nate Butler <iamnbutler@gmail.com>
Co-authored-by: Cole Miller <m@cole-miller.net>

Max Brunsfeld , Nate Butler , and Cole Miller created

e0060b9 assistant: Adjust slash command picker (#25920)

Click to expand commit body
Mostly just fine-tuning its positioning. Other changes are mainly using
the Label's `buffer_font` method instead of using a div for that.

Release Notes:

- N/A

Danilo Leal created

06bcc42 Revert "assistant_context_editor: Close menus on send (#25440)" (#25916)

Click to expand commit body
Reverting https://github.com/zed-industries/zed/pull/25440

This is a good change, but given the PR was open for a while, I guess it
didn't catch conflicts with main, and so it broke it. Will revert it for
now, to keep main fresh, but will look into adding this behavior back
again.

Release Notes:

- N/A

Danilo Leal created

f24c226 assistant_context_editor: Close menus on send (#25440)

Click to expand commit body
Closes #ISSUE

Before:


https://github.com/user-attachments/assets/e63b6207-0c80-4fd6-99c0-febe3d639ba1

After:


https://github.com/user-attachments/assets/870f2c6d-9b7f-456d-a1e3-26e1c31b129d

Release Notes:

- N/A

brian tan created

593f3dc keymap: Update `Prev` to `Previous` for consistency (#25909)

Click to expand commit body
Closes #10167

This is take 2 on https://github.com/zed-industries/zed/pull/2341 which
was closed due to lack of migrator.

This PR contains rename of following keymap actions: 
```sh
1. ["editor::GoToPrevHunk", { "center_cursor": true }] -> ["editor::GoToPreviousHunk", { "center_cursor": true }]
2. "editor::GoToPrevDiagnostic" -> "editor::GoToPreviousDiagnostic"
3. "editor::ContextMenuPrev" -> "editor::ContextMenuPrevious"
4. "search::SelectPrevMatch" -> "search::SelectPreviousMatch"
5. "file_finder::SelectPrev" -> "file_finder::SelectPrevious"
6. "menu::SelectPrev" -> "menu::SelectPrevious"
7. "editor::TabPrev" -> "editor::Backtab"
```

Release Notes:

- Renamed several keymap actions for consistency (e.g., `GoToPrevHunk` →
`GoToPreviousHunk`, `TabPrev` → `Backtab`). Your existing configured
keybindings will still work. You can click **"Backup and Update"** at
the top of your keymap file to easily update to the new actions.


Co-authored-by: Joseph T. Lyons <JosephTLyons@gmail.com>

smit and Joseph T. Lyons created

61d584d context menu: Adjust item disabled state when there is docs aside (#25860)

Click to expand commit body
When a context menu item has a documentation aside element attached to
it, we're now hiding the keybinding (which wouldn't trigger anything
anyway) to make room for displaying an info icon, with the purpose of
indicating the existence of the docs aside, which will typically explain
the reason why the item’s disabled in the first place.

Also, changed the label color to use the `Disabled` token; more
appropriate for this, and just slightly darker, which is great!

<img
src="https://github.com/user-attachments/assets/a7f9f022-16d1-41d5-b1b5-3cbcc9630cc8"
width="500px"/>

Release Notes:

- N/A

Danilo Leal created

c37f616 gpui: Maintain `img` aspect ratio when `max_width` is set (#25632)

Click to expand commit body
Release Notes:

- Fixed Markdown preview to display image with max width 100%.

## Before

<img width="1202" alt="image"
src="https://github.com/user-attachments/assets/359628df-8746-456f-a768-b3428923c937"
/>
<img width="750" alt="SCR-20250226-napv"
src="https://github.com/user-attachments/assets/f6154516-470e-41b2-84f5-ef0612c447ad"
/>


## After

<img width="1149" alt="image"
src="https://github.com/user-attachments/assets/2279347d-9c69-4a47-bb62-ccc8e55a98f6"
/>
<img width="520" alt="SCR-20250226-ngyz"
src="https://github.com/user-attachments/assets/03af5f14-1935-472e-822f-4c7f62630780"
/>

Jason Lee created