Jinjing
128a39f7f8
Add host and project filtering to worktree jump palette ( #12638 )
...
* Add host and project filtering to the worktree jump palette
Filter the search results by execution host (local, SSH, runtime) and project/repo, with a drill-down options menu, chips for active selections, and overflow hints for large result sets. Filters reset on open to prevent silently hiding results, and stale selections auto-prune. Caps rendered rows per section to prevent DOM bloat from single-character queries. Host badges appear when filtering to clarify which rows survived the cut.
* Add E2E test for worktree jump-palette host filtering
Tests filter interaction via keyboard, filter/project intersection, empty state when filters exclude all results, and ephemeral filter reset on modal close.
* Fix worktree jump-palette filter persistence and search UX
- Persist filter state when filter model changes to prevent dropped IDs from silently re-activating
- Fix result count to distinguish between query matches (all items) vs. empty list (capped sections)
- Improve filter field options: use state for scroller to handle unmount/remount, clamp highlight index to valid range, only reset on query/field change, not re-ranks
- Context-aware space key: allow toggle in listbox only, not in search input (preserves for typing)
- Replace generic "Clear field" translation with field-specific strings to preserve capitalization in non-English languages
* fix(cmd-j): reset filter highlight without prop-change effect
Derive the active option index from field/query identity instead of
resetting it in a useEffect so React Doctor and first-paint stay correct.
* fix static analysis issue
* fix(e2e): rename project entity in jump-palette filter seed
Filter options use project.displayName when a Project exists, so only
renaming the repo left the local option labeled with the path basename.
2026-08-05 00:11:47 -07:00
..
2026-07-29 01:47:20 -07:00
2026-08-03 17:32:13 -07:00
2026-07-20 01:14:17 -07:00
2026-07-06 02:12:32 -07:00
2026-06-29 22:38:29 -07:00
2026-07-15 13:25:24 -07:00
2026-07-28 12:33:17 -07:00
2026-07-13 19:13:19 -07:00
2026-07-28 12:33:17 -07:00
2026-06-10 17:23:12 -07:00
2026-06-19 17:14:55 -07:00
2026-06-11 12:46:43 -07:00
2026-07-13 00:48:51 -07:00
2026-07-10 17:27:47 -07:00
2026-07-10 17:27:47 -07:00
2026-07-30 18:51:11 -07:00
2026-07-30 18:51:11 -07:00
2026-06-07 18:16:53 -07:00
2026-07-20 03:04:28 -04:00
2026-06-08 01:00:29 -07:00
2026-07-30 18:51:11 -07:00
2026-06-28 23:13:03 -07:00
2026-07-28 00:22:22 -07:00
2026-07-20 22:04:01 -04:00
2026-08-03 13:02:56 -07:00
2026-08-03 13:02:56 -07:00
2026-08-03 13:02:56 -07:00
2026-07-16 19:11:34 -07:00
2026-08-03 13:02:56 -07:00
2026-08-01 21:07:58 -07:00
2026-06-29 23:37:30 -07:00
2026-08-03 02:21:56 -07:00
2026-07-25 20:06:19 -07:00
2026-08-04 22:07:30 -07:00
2026-07-20 18:18:11 -07:00
2026-06-07 17:49:01 -07:00
2026-06-07 17:49:01 -07:00
2026-06-07 17:49:01 -07:00
2026-06-29 22:38:29 -07:00
2026-06-17 20:05:55 -07:00
2026-07-27 15:22:55 -07:00
2026-07-21 20:51:28 -07:00
2026-07-19 19:38:44 -07:00
2026-06-29 22:38:29 -07:00
2026-07-25 13:42:28 -07:00
2026-06-29 22:38:29 -07:00
2026-05-13 18:48:14 -07:00
2026-05-13 18:48:14 -07:00
2026-08-03 22:55:17 -07:00
2026-05-30 22:46:38 -07:00
2026-05-30 22:46:38 -07:00
2026-07-26 23:48:20 -07:00
2026-07-06 02:12:32 -07:00
2026-06-19 17:14:55 -07:00
2026-07-20 14:34:53 -07:00
2026-05-25 22:21:39 -07:00
2026-07-28 20:52:09 -07:00
2026-04-27 20:55:47 -07:00
2026-06-22 16:27:33 -07:00
2026-07-29 21:43:45 -07:00
2026-07-29 21:43:45 -07:00
2026-06-09 20:57:43 -07:00
2026-06-10 13:41:05 -07:00
2026-06-29 22:38:29 -07:00
2026-06-29 22:38:29 -07:00
2026-06-29 22:38:29 -07:00
2026-07-05 19:46:49 -07:00
2026-07-22 15:10:29 -07:00
2026-07-29 11:31:35 -07:00
2026-07-10 17:27:47 -07:00
2026-06-29 22:38:29 -07:00
2026-07-31 00:22:53 -07:00
2026-07-29 20:04:55 -07:00
2026-07-30 19:20:02 -07:00
2026-07-29 16:12:20 -07:00
2026-07-31 18:01:24 -07:00
2026-06-29 22:38:29 -07:00
2026-08-04 22:07:30 -07:00
2026-07-20 14:50:12 -07:00
2026-08-04 12:37:59 -07:00
2026-08-03 11:11:14 -07:00
2026-07-22 16:10:53 -07:00
2026-07-17 18:57:26 -07:00
2026-07-23 23:18:03 -07:00
2026-05-25 16:43:22 -07:00
2026-07-04 23:29:05 -07:00
2026-07-31 01:57:41 -07:00
2026-06-22 12:29:18 -07:00
2026-07-20 21:36:15 -07:00
2026-08-04 00:48:58 -07:00
2026-07-13 12:45:46 -07:00
2026-07-22 18:25:05 -07:00
2026-07-22 18:25:05 -07:00
2026-07-30 03:05:10 -07:00
2026-05-19 00:28:55 -07:00
2026-07-25 15:58:40 -07:00
2026-07-09 02:13:13 -07:00
2026-07-19 11:27:29 -07:00
2026-07-29 11:31:35 -07:00
2026-07-30 00:49:23 -07:00
2026-07-30 00:49:23 -07:00
2026-07-30 00:49:23 -07:00
2026-07-29 11:31:35 -07:00
2026-08-04 16:56:43 -07:00
2026-08-04 22:59:06 -07:00
2026-08-03 19:44:30 -07:00
2026-07-30 18:27:06 -07:00
2026-07-30 03:05:10 -07:00
2026-07-31 16:01:44 -07:00
2026-07-29 20:04:55 -07:00
2026-07-29 20:04:55 -07:00
2026-07-27 17:56:07 -07:00
2026-07-27 17:56:07 -07:00
2026-07-28 12:33:17 -07:00
2026-07-27 17:56:07 -07:00
2026-07-31 04:32:23 -07:00
2026-07-31 04:32:23 -07:00
2026-07-05 19:46:49 -07:00
2026-07-15 17:14:10 -07:00
2026-08-01 00:00:12 -07:00
2026-07-23 01:45:24 -07:00
2026-07-23 20:20:00 -07:00
2026-08-03 02:18:05 -07:00
2026-07-22 21:44:30 -07:00
2026-07-12 22:40:57 -07:00
2026-08-03 23:00:02 -07:00
2026-08-03 22:48:37 -07:00
2026-07-27 19:04:56 -07:00
2026-06-29 22:38:29 -07:00
2026-07-17 17:18:36 -07:00
2026-07-17 17:18:36 -07:00
2026-07-12 22:40:57 -07:00
2026-05-21 01:19:49 -04:00
2026-07-28 20:51:14 -07:00
2026-06-29 22:38:29 -07:00
2026-07-05 19:46:49 -07:00
2026-06-29 22:38:29 -07:00
2026-07-16 19:20:05 -07:00
2026-06-02 22:31:57 -07:00
2026-07-06 02:12:32 -07:00
2026-06-10 21:14:53 -07:00
2026-08-04 17:06:50 -07:00
2026-07-05 19:46:49 -07:00
2026-07-25 19:31:44 -07:00
2026-07-30 21:45:44 -07:00
2026-06-20 18:47:39 -07:00
2026-06-16 18:56:52 -07:00
2026-07-20 14:50:12 -07:00
2026-07-30 21:45:44 -07:00
2026-07-25 19:31:44 -07:00
2026-07-04 22:56:55 -07:00
2026-06-22 16:42:20 -07:00
2026-06-22 16:42:20 -07:00
2026-08-03 16:17:00 -07:00
2026-06-22 16:42:20 -07:00
2026-06-22 16:42:20 -07:00
2026-07-31 20:45:52 -07:00
2026-08-03 17:32:13 -07:00
2026-08-03 17:32:13 -07:00
2026-08-03 17:32:13 -07:00
2026-08-03 02:18:05 -07:00
2026-07-29 17:03:15 -07:00
2026-07-12 23:50:00 -07:00
2026-07-24 12:05:38 -07:00
2026-08-02 20:43:27 -07:00
2026-07-11 03:20:55 -07:00
2026-07-11 03:20:55 -07:00
2026-07-31 00:36:09 -07:00
2026-07-29 00:47:18 -07:00
2026-07-20 18:54:44 -07:00
2026-07-20 18:54:44 -07:00
2026-08-04 17:11:18 -07:00
2026-07-10 17:27:47 -07:00
2026-07-05 21:51:32 -07:00
2026-06-19 17:14:55 -07:00
2026-06-10 21:14:53 -07:00
2026-05-16 11:50:26 -07:00
2026-06-25 18:36:11 -07:00
2026-06-18 00:11:32 -07:00
2026-08-03 21:00:57 -07:00
2026-06-29 22:38:29 -07:00
2026-07-20 03:04:28 -04:00
2026-05-25 15:07:40 -07:00
2026-07-25 20:06:19 -07:00
2026-07-27 20:54:02 -07:00
2026-07-14 02:58:34 -07:00
2026-07-05 21:51:32 -07:00
2026-06-20 02:03:24 -07:00
2026-06-10 21:14:53 -07:00
2026-06-19 19:43:42 -07:00
2026-08-01 23:38:46 -07:00
2026-08-01 14:10:27 -07:00
2026-07-10 21:00:31 -07:00
2026-07-10 19:50:44 -07:00
2026-07-20 03:04:28 -04:00
2026-07-29 01:47:20 -07:00
2026-07-12 22:40:57 -07:00
2026-07-29 16:12:20 -07:00
2026-06-09 13:52:58 -07:00
2026-07-29 16:12:20 -07:00
2026-07-29 16:12:20 -07:00
2026-07-29 16:12:20 -07:00
2026-07-29 16:12:20 -07:00
2026-07-19 22:54:39 -04:00
2026-06-19 17:14:55 -07:00
2026-07-27 03:29:35 -07:00
2026-07-30 03:05:10 -07:00
2026-07-10 17:27:47 -07:00
2026-08-03 03:07:52 -07:00
2026-08-01 00:25:35 -07:00
2026-06-20 01:27:41 -07:00
2026-06-20 01:27:41 -07:00
2026-06-27 09:30:29 -07:00
2026-07-06 02:12:32 -07:00
2026-07-12 22:40:57 -07:00
2026-07-16 13:07:44 -07:00
2026-06-21 23:09:01 -07:00
2026-07-14 00:15:34 -07:00
2026-07-29 00:47:18 -07:00
2026-07-14 14:40:40 -07:00
2026-07-15 20:28:39 -07:00
2026-06-24 20:16:14 -07:00
2026-07-17 17:18:36 -07:00
2026-07-17 17:18:36 -07:00
2026-06-20 02:03:24 -07:00
2026-07-16 13:26:15 -07:00
2026-06-22 16:42:20 -07:00
2026-07-10 17:27:47 -07:00
2026-07-13 00:48:51 -07:00
2026-06-22 16:42:20 -07:00
2026-07-17 17:18:36 -07:00
2026-07-29 00:47:18 -07:00
2026-07-06 20:17:35 -07:00
2026-07-13 14:17:49 -07:00
2026-06-23 00:23:34 -07:00
2026-07-15 20:28:39 -07:00
2026-07-16 16:38:20 -07:00
2026-07-22 00:22:36 -07:00
2026-06-19 17:14:55 -07:00
2026-08-01 03:26:30 -07:00
2026-07-10 17:27:47 -07:00
2026-07-28 12:33:17 -07:00
2026-08-03 22:48:22 -07:00
2026-08-03 22:48:22 -07:00
2026-06-23 00:23:34 -07:00
2026-07-20 03:04:28 -04:00
2026-07-25 15:58:40 -07:00
2026-07-05 21:51:32 -07:00
2026-07-05 21:51:32 -07:00
2026-06-12 16:31:24 -07:00
2026-07-16 12:38:31 -07:00
2026-07-17 16:16:17 -07:00
2026-06-22 16:42:20 -07:00
2026-07-13 21:30:10 -07:00
2026-07-20 18:54:44 -07:00
2026-07-14 14:40:40 -07:00
2026-08-03 01:00:58 -07:00
2026-06-19 17:14:55 -07:00
2026-05-15 23:52:37 -07:00
2026-06-07 17:49:01 -07:00
2026-08-02 16:25:56 -07:00
2026-06-29 22:38:29 -07:00
2026-05-17 15:43:53 -04:00
2026-06-18 00:11:32 -07:00
2026-08-03 20:58:25 -07:00
2026-07-05 19:46:49 -07:00
2026-08-04 23:58:36 -07:00
2026-08-05 00:11:47 -07:00
2026-04-19 15:50:19 -07:00
2026-07-13 16:15:44 -07:00
2026-07-22 15:52:42 -07:00
2026-07-31 16:15:20 -07:00
2026-06-29 22:38:29 -07:00
2026-06-18 00:11:32 -07:00
2026-07-10 03:00:51 -07:00
2026-06-18 00:11:32 -07:00
2026-07-10 03:00:51 -07:00
2026-08-01 00:40:47 -07:00