# Fix macOS find query seeding \(\#56681\) · gitcafe/zed

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

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

Visibility: public

Requested revision: 3a8d012d1a846272c2ba019176352bbd1befa6cf

Requested commit: 3a8d012d1a846272c2ba019176352bbd1befa6cf

Commit: 3a8d012d1a846272c2ba019176352bbd1befa6cf

Tree: b3fa1b9f68ba45189358675f9b5f1bd1646e0681

Author: Nathan Sobo

Committer: GitHub

## Message

```
Fix macOS find query seeding (#56681)

Closes #55619

### Summary

- Route `buffer_search::UseSelectionForFind` through
`BufferSearchBar::deploy` instead of updating the query editor directly.
- Add an explicit seed-query override to `deploy`, so the Cmd-E action
can force `SeedQuerySetting::Always` while regular deploy callers
continue to pass `None` and respect the user’s
`seed_search_query_from_cursor` setting.
- By going through `deploy`, Cmd-E now also runs the search path that
keeps buffer-search navigation state in sync:
  - shows/initializes the search bar for the active searchable item
  - applies the seeded query via `search_suggested`
- calls `search`, which updates the query editor, search options, active
search query, search history, and macOS find pasteboard
  - refreshes `searchable_items_with_matches` and `active_match_index`
  - activates the current match after the search completes
- This ensures the subsequent Cmd-G action has the expected active
query, match list, search token, and active match index to select the
next result.
- Add a macOS-only end-to-end regression test using the default macOS
keymap with `simulate_keystrokes("cmd-e")` and
`simulate_keystrokes("cmd-g")`.

### Validation

- `cargo test -p search test_cmd_e_then_cmd_g_uses_selection_for_find`
- `cargo fmt --check --package search --package zed_actions`
- `./script/check-keymaps`
- `cargo check -p search`
- `cargo check -p workspace`
- `cargo check -p vim`

Release Notes:

- Fixed macOS Cmd-E/Cmd-G find behavior so Cmd-E seeds find from the
cursor or selection and Cmd-G advances through the newly seeded matches.
```

## Parents

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

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