# Git status list fix \(\#59155\) · gitcafe/zed

[View on GitCafe](https://git.cafe/gitcafe/zed/commit/13dd39b4e43611f430f90eaf0965a2a652791e2f)

Repository: [gitcafe/zed](https://git.cafe/gitcafe/zed)

Visibility: public

Requested revision: 13dd39b4e43611f430f90eaf0965a2a652791e2f

Requested commit: 13dd39b4e43611f430f90eaf0965a2a652791e2f

Commit: 13dd39b4e43611f430f90eaf0965a2a652791e2f

Tree: 4d19e108c88ac71f7ebed17e958ada2b401ff3db

Author: Eugene

Committer: GitHub

## Message

```
Git status list fix (#59155)

Self-Review Checklist:

- [x] I've reviewed my own diff for quality, security, and reliability
- [x] Unsafe blocks (if any) have justifying comments
- [x] The content adheres to Zed's UI standards
([UX/UI](https://github.com/zed-industries/zed/blob/main/CONTRIBUTING.md#uiux-checklist)
and
[icon](https://github.com/zed-industries/zed/blob/main/crates/icons/README.md)
guidelines)
- [ ] Tests cover the new/changed behavior
- [x] Performance impact has been considered and is acceptable

Closes #ISSUE

Issue:
- Create and/or modify several files.
- Go to GitPanel.
- Stage files you want to commit.
- Select last entry. You may select not last but make sure after list of
entries shrinks, your selection would be "out of visible list" after.
- Commit.
- Entries will be committed and disappear.
- But it seems like `selected_entry` is not updated (or updated
incorrectly) and Zed still have "hidden" selected entry of the last
selected entry. So you need to `Shift-g` (in vim mode) or some other
keybinding to select last entry manually. I used `k` multiple times
before I realized I can use `Shift-g` or `g g` -,-

Release Notes:

- Fixed: stale index (`selected_entry`) of git panel after .

Notes:
- I basically copied logic of function 1 line above but instead of
`first_entry` I used `last_etnry`. So... It should be harmless.
- I didn't find where selection logic is tested. I tried to do something
using `test_amend` as template, but... I'm afraid I won't be able to
understand if I'm using testing framework correctly.
- I couldn't make tests, but I tried to "test" by hand using something
like this:
<img width="358" height="487" alt="image"
src="https://github.com/user-attachments/assets/8575bdcc-f59b-44f2-99e3-fe663e5e61f1"
/>

Flat View seems like working fine, but Tree View has some "bugs" (if we
can call it like that) inherited. For example, if I stage selected file
and commit it, selection jumps to the `asdjfl` instead of the file right
under - `outer_file`. The same behavior in the current release.

---------

Co-authored-by: Christopher Biscardi <chris@christopherbiscardi.com>
```

## Parents

- [9a992ed33c148179204885f6bff8c744dfa1d410](https://git.cafe/gitcafe/zed/commit/9a992ed33c148179204885f6bff8c744dfa1d410?format=markdown)

[Source at this commit](https://git.cafe/gitcafe/zed/tree/13dd39b4e43611f430f90eaf0965a2a652791e2f?format=markdown)
