feat: search hit-highlight renderer + F3/Ctrl+F/Ctrl+H keybindings#104
Conversation
…it invalidation - Implement SearchHitRenderer : IBackgroundRenderer that paints viewport matches using VisualRole.Highlight attribute - Auto-register/unregister renderer via SearchStrategy setter - Cache matches by (document version, strategy, viewport range) - Add F3 → FindNext, Shift+F3 → FindPrevious keybindings - Add Ctrl+F → FindRequested event, Ctrl+H → ReplaceRequested event - Wire ted to respond to new events - Invalidate hit cache on Document.Changed - Add unit and integration tests Agent-Logs-Url: https://github.com/gui-cs/Editor/sessions/076dfb9e-393d-4e1f-81cc-1e23ff734a1f Co-authored-by: tig <585482+tig@users.noreply.github.com>
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: 91c3d6c7e9
ℹ️ About Codex in GitHub
Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you
- Open a pull request for review
- Mark a draft as ready
- Comment "@codex review".
If Codex has suggestions, it will comment; otherwise it will react with 👍.
Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".
|
@copilot see CR feedback. Ensure there's a test that proves the CR feedback (or not) and then fix. |
…aming - Rename variables for clarity: lineStart→lineStartOffset, hitStart→hitStartOffset, elemStart→elemStartOffset (and their End counterparts) - Fix selection check from fully-contained to partial-overlap, matching the same logic VisualLineBuilder.ApplySelection uses (robust for multi-char elements like tabs) - Add integration test for partial-selection overlapping a search hit Agent-Logs-Url: https://github.com/gui-cs/Editor/sessions/7a05fc57-c007-4ab4-8ab1-1096eb7e8c29 Co-authored-by: tig <585482+tig@users.noreply.github.com>
|
Codex usage limits have been reached for code reviews. Please check with the admins of this repo to increase the limits by adding credits. |
Fixed in
|
|
@copilot resolve the merge conflicts in this pull request |
…eplace-hit-highlight-renderer-keybinding # Conflicts: # src/Terminal.Gui.Editor/Editor.cs Co-authored-by: tig <585482+tig@users.noreply.github.com>
|
Codex usage limits have been reached for code reviews. Please check with the admins of this repo to increase the limits by adding credits. |
Resolved in |
…rvey All four beta features (find-and-replace #104, clipboard #107, word-wrap #106, multi-caret #105) plus vertical-multi-caret #133 and syntax-theme Phase 2 #134 have merged since the 2026-05-13 plan snapshot. Bring the spec set back in line with develop: - Per-feature status lines -> Done with PR/issue refs (clipboard, multi-caret, find-and-replace, word-wrap, vertical-multi-caret, syntax-theme). - plan.md rescoped to the beta endgame: new "Done (beta)" table, a "Remaining for beta" that reflects no feature work is left (only external/verification/cut items), evidence-checked DoD boxes, refreshed dependency graph and header. - decisions.md: OPEN-005 annotated as settled by syntax-theme; add OPEN-006 (single-line/input-mode decision). - codex-autonomous-sprint.md: flag stale work pool. - New specs/textview-parity-gap/spec.md: survey of TextView capabilities Editor lacks (autocomplete, overwrite mode, single-line mode, kill-ring, context menu) with dispositions; wired into plan.md follow-ups. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
SearchHitRenderer : IBackgroundRendererthat paints viewport matches usingVisualRole.HighlightattributeSearchStrategysetterEditorlevelFindRequestedevent, Ctrl+H →ReplaceRequestedevent atEditorlevelAppFixture_searchHitRenderer?.Invalidate()and_wrapMap = null;)