[PR #3279] [MERGED] Migrate Search module as a shared component for Terminal Search #25301

Open
opened 2026-01-31 09:08:37 +00:00 by claunia · 0 comments
Owner

📋 Pull Request Information

Original PR: https://github.com/microsoft/terminal/pull/3279
Author: @KaiyuWang16
Created: 10/22/2019
Status: ✅ Merged
Merged: 11/14/2019
Merged by: @KaiyuWang16

Base: master ← Head: dev/kawa/605-Search-Experice-Implementation


📝 Commits (10+)

  • 66aeec0 Make search a shared component for conhost and terminal
  • 02a280c Remove inclusion of deprecated interface file
  • 030961e Code review changes, remove text buffer modification in Terminal
  • 7eb30f6 remove unreferenced objects to fix build errors
  • fd0090e Fix test failure, guarantee uiaData object is correctly initialized in Search
  • c45ef9c minor comment typo fix and format fix
  • 1d7361a minor PR comments change
  • 285e1ab ColorSeclection directly throw and return
  • 28cb43f remove coordAnchor initialization
  • 316e283 minor method signature change

📊 Changes

16 files changed (+124 additions, -74 deletions)

View changed files

📝 src/buffer/out/lib/bufferout.vcxproj (+2 -0)
📝 src/buffer/out/search.cpp (+32 -26)
📝 src/buffer/out/search.h (+12 -6)
📝 src/buffer/out/sources.inc (+1 -0)
📝 src/cascadia/TerminalCore/Terminal.hpp (+2 -0)
📝 src/cascadia/TerminalCore/TerminalSelection.cpp (+23 -0)
📝 src/host/host-common.vcxitems (+0 -2)
📝 src/host/lib/hostlib.vcxproj.filters (+1 -7)
📝 src/host/renderData.cpp (+24 -0)
📝 src/host/renderData.hpp (+2 -0)
📝 src/host/selectionInput.cpp (+2 -2)
📝 src/host/sources.inc (+0 -1)
📝 src/host/ut_host/SearchTests.cpp (+17 -25)
📝 src/interactivity/win32/find.cpp (+2 -2)
📝 src/interactivity/win32/uiaTextRange.cpp (+2 -3)
📝 src/types/IUiaData.h (+2 -0)

📄 Description

This PR is the implementation of feature request #605
Search in the Terminal. For the first version, we realize case sensitive/insensitive exact text match in the text buffer of the Terminal screen.

For now, the PR only include the first necessary step - making the search module originally in host/ a shared component between Terminal and console host.

PR Checklist

  • Closes Add fallback fonts to display more Unicode codepoints (#605)
  • CLA signed. If not, go over here and sign the CLA
  • Tests added/passed
  • Requires documentation to be updated
  • I've discussed this with core contributors already. If not checked, I'm ready to accept this work might be rejected in favor of a different grand plan. Issue number where discussion took place: #xxx

Detailed Description of the Pull Request / Additional comments

Validation Steps Performed


🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.

## 📋 Pull Request Information **Original PR:** https://github.com/microsoft/terminal/pull/3279 **Author:** [@KaiyuWang16](https://github.com/KaiyuWang16) **Created:** 10/22/2019 **Status:** ✅ Merged **Merged:** 11/14/2019 **Merged by:** [@KaiyuWang16](https://github.com/KaiyuWang16) **Base:** `master` ← **Head:** `dev/kawa/605-Search-Experice-Implementation` --- ### 📝 Commits (10+) - [`66aeec0`](https://github.com/microsoft/terminal/commit/66aeec07ba1c6f0fa37162f5e3dfd8f6debcd597) Make search a shared component for conhost and terminal - [`02a280c`](https://github.com/microsoft/terminal/commit/02a280c61f8e67ad22a77516d53045c38461043a) Remove inclusion of deprecated interface file - [`030961e`](https://github.com/microsoft/terminal/commit/030961e6a3bd4bd4d2cf88e4167e2f202f4f3129) Code review changes, remove text buffer modification in Terminal - [`7eb30f6`](https://github.com/microsoft/terminal/commit/7eb30f604cdc0e6d4e94b21f92f12810cb942ab1) remove unreferenced objects to fix build errors - [`fd0090e`](https://github.com/microsoft/terminal/commit/fd0090e990bab1ecd7140eb963935b17dc09cf70) Fix test failure, guarantee uiaData object is correctly initialized in Search - [`c45ef9c`](https://github.com/microsoft/terminal/commit/c45ef9c69b9c587f7ae3e3ac61c75005663b5a7c) minor comment typo fix and format fix - [`1d7361a`](https://github.com/microsoft/terminal/commit/1d7361a2c024f22acca27c326859def7d6e5a9a6) minor PR comments change - [`285e1ab`](https://github.com/microsoft/terminal/commit/285e1ab9d2be0d3cba3d201e88bc23791e96af7d) ColorSeclection directly throw and return - [`28cb43f`](https://github.com/microsoft/terminal/commit/28cb43f646c67123b8a55d382c59450183565521) remove coordAnchor initialization - [`316e283`](https://github.com/microsoft/terminal/commit/316e2836ced26e4731543ed38ce193666ff3fa3a) minor method signature change ### 📊 Changes **16 files changed** (+124 additions, -74 deletions) <details> <summary>View changed files</summary> 📝 `src/buffer/out/lib/bufferout.vcxproj` (+2 -0) 📝 `src/buffer/out/search.cpp` (+32 -26) 📝 `src/buffer/out/search.h` (+12 -6) 📝 `src/buffer/out/sources.inc` (+1 -0) 📝 `src/cascadia/TerminalCore/Terminal.hpp` (+2 -0) 📝 `src/cascadia/TerminalCore/TerminalSelection.cpp` (+23 -0) 📝 `src/host/host-common.vcxitems` (+0 -2) 📝 `src/host/lib/hostlib.vcxproj.filters` (+1 -7) 📝 `src/host/renderData.cpp` (+24 -0) 📝 `src/host/renderData.hpp` (+2 -0) 📝 `src/host/selectionInput.cpp` (+2 -2) 📝 `src/host/sources.inc` (+0 -1) 📝 `src/host/ut_host/SearchTests.cpp` (+17 -25) 📝 `src/interactivity/win32/find.cpp` (+2 -2) 📝 `src/interactivity/win32/uiaTextRange.cpp` (+2 -3) 📝 `src/types/IUiaData.h` (+2 -0) </details> ### 📄 Description <!-- Enter a brief description/summary of your PR here. What does it fix/what does it change/how was it tested (even manually, if necessary)? --> This PR is the implementation of feature request #605 Search in the Terminal. For the first version, we realize case sensitive/insensitive exact text match in the text buffer of the Terminal screen. For now, the PR only include the first necessary step - making the search module originally in host/ a shared component between Terminal and console host. <!-- Please review the items on the PR checklist before submitting--> ## PR Checklist * [x] Closes #605 * [ ] CLA signed. If not, go over [here](https://cla.opensource.microsoft.com/microsoft/Terminal) and sign the CLA * [ ] Tests added/passed * [ ] Requires documentation to be updated * [ ] I've discussed this with core contributors already. If not checked, I'm ready to accept this work might be rejected in favor of a different grand plan. Issue number where discussion took place: #xxx <!-- Provide a more detailed description of the PR, other things fixed or any additional comments/features here --> ## Detailed Description of the Pull Request / Additional comments <!-- Describe how you validated the behavior. Add automated tests wherever possible, but list manual validation steps taken as well --> ## Validation Steps Performed --- <sub>🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.</sub>
claunia added the pull-request label 2026-01-31 09:08:37 +00:00
Sign in to join this conversation.
No Label pull-request
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: starred/terminal#25301