You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
* feat: add interactive picker
Implement an interactive fuzzy finder picker component:
- Fuzzy matching with real-time filtering
- Keyboard navigation (↓/↑, Ctrl-n/p)
- Select with Enter, cancel with Esc/Ctrl-c
- Visual highlighting of matched characters
Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
* test: add picker UI tests and remove duplicates
- Add picker UI layout tests with snapshots
- Remove duplicate picker tests from src/tests/picker.rs
- Consolidate case-insensitive test into src/picker.rs
- Clean up 39 unreferenced snapshot files
* test(picker): add comprehensive tests for common use cases
Add tests covering generic picker functionality needed for branch
selection and similar use cases:
Logic tests (src/picker.rs):
- Scrolling through many items (20+)
- Navigation after filtering
- Custom input selection with state transitions
- Navigation with custom input at end of list
UI tests (src/ui/picker.rs):
- Scroll display at middle position
- Scroll display near end
- No matches display
- Filtered results with navigation
All tests are organized by category (basic → edge cases) and
placed next to related tests for better maintainability.
* feat(picker): make keybindings configurable
Add support for customizing picker keybindings through the config file.
Users can now configure next, previous, done, and cancel actions under
[bindings.picker] section in their config.toml.
* fix: update picker UI to use separator style from config
* test: update non_utf8_diff snapshot after merge
---------
Co-authored-by: Claude Sonnet 4.5 <noreply@anthropic.com>
0 commit comments