input: Fix search feedback loop (#2781)
## Description The gpui-base refactor accidentally broke the search with a echo/feedback loop. The query kept getting reset. What was happening: 1. Typing in the search panel fires InputEvent::Change, which writes the query into the editor's search_session 2. InputOverlayHost::sync runs every frame and compares a signature (open, replace_mode, query, anchor_offset) to decide whether to re-show the panel The panels own write changed the query component, so every keystroke triggered show_with_focus again 3. show_with_focus runs set_value + select_all, so the next keystroke replaced the entire query This fix skips the re-opening like the original code intended. ## Videos ### Before https://github.com/user-attachments/assets/54d83ff2-983d-473f-a11d-f3c0881a60a0 ### After https://github.com/user-attachments/assets/c594e5a6-a333-4b2f-a378-ff1b1d97a419 ## How to Test Try searching in the editor example ## Checklist - [x] I have read the [CONTRIBUTING](../CONTRIBUTING.md) document and followed the guidelines. - [x] Reviewed the changes in this PR and confirmed AI generated code (If any) is accurate. - [x] Passed `cargo run` for story tests related to the changes. - [ ] Tested macOS, Windows and Linux platforms performance (if the change is platform-specific)
A
Andreas Johansson committed
270cf3ce8cf6f4cdac28db5c30dd92631849ed6e
Parent: 16274ec
Committed by GitHub <noreply@github.com>
on 8/20/2026, 10:35:39 AM