[PR #3805] [MERGED] UIA Word Navigation: Import Custom Word Delimiters #25511

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

📋 Pull Request Information

Original PR: https://github.com/microsoft/terminal/pull/3805
Author: @carlos-zamora
Created: 12/2/2019
Status: Merged
Merged: 12/10/2019
Merged by: @carlos-zamora

Base: dev/cazamor/acc/word-navHead: dev/cazamor/acc/word-nav-import


📝 Commits (3)

  • e43f41a UIA Word Navigation: allow importing custom delimiters
  • dcf2fbe Created constexpr for default word delimiters
  • 945bb44 switch to UNICODE_SPACE

📊 Changes

14 files changed (+122 additions, -81 deletions)

View changed files

📝 src/buffer/out/textBuffer.cpp (+3 -3)
📝 src/buffer/out/textBuffer.hpp (+3 -3)
📝 src/cascadia/TerminalControl/TermControlUiaProvider.cpp (+10 -7)
📝 src/cascadia/TerminalControl/TermControlUiaProvider.hpp (+5 -2)
📝 src/cascadia/TerminalControl/UiaTextRange.cpp (+13 -9)
📝 src/cascadia/TerminalControl/UiaTextRange.hpp (+9 -4)
📝 src/interactivity/win32/screenInfoUiaProvider.cpp (+10 -7)
📝 src/interactivity/win32/screenInfoUiaProvider.hpp (+5 -2)
📝 src/interactivity/win32/uiaTextRange.cpp (+13 -9)
📝 src/interactivity/win32/uiaTextRange.hpp (+9 -4)
📝 src/types/ScreenInfoUiaProviderBase.cpp (+8 -5)
📝 src/types/ScreenInfoUiaProviderBase.h (+8 -3)
📝 src/types/UiaTextRangeBase.cpp (+11 -11)
📝 src/types/UiaTextRangeBase.hpp (+15 -12)

📄 Description

Summary of the Pull Request

This allows the developer to define word delimiters for our accessibility model via multiple avenues.

  1. import a word delimiter into the constructor of the ScreenInfoUiaProvider (SIUP)
  • this defines a word delimiter for all the UiaTextRanges (UTR) created by in this context
  1. import a word delimiter into the UTR directly
  • this provides more control over what a "word" is
  • this can be useful if you have an idea of what text a particular UTR will encounter and you want to customize the word navigation for it (i.e consider adding / or \\ for file paths)

The default param of " " is scattered throughout because this is the word delimiter used in the English language.

References

#3659
#3161


🔄 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/3805 **Author:** [@carlos-zamora](https://github.com/carlos-zamora) **Created:** 12/2/2019 **Status:** ✅ Merged **Merged:** 12/10/2019 **Merged by:** [@carlos-zamora](https://github.com/carlos-zamora) **Base:** `dev/cazamor/acc/word-nav` ← **Head:** `dev/cazamor/acc/word-nav-import` --- ### 📝 Commits (3) - [`e43f41a`](https://github.com/microsoft/terminal/commit/e43f41a3c812c99966773dedd7dbf6c6ec8e6f12) UIA Word Navigation: allow importing custom delimiters - [`dcf2fbe`](https://github.com/microsoft/terminal/commit/dcf2fbeba13e44a9b95bf5b1984315e52f32d877) Created constexpr for default word delimiters - [`945bb44`](https://github.com/microsoft/terminal/commit/945bb4485aa452e2cb01625dcb0fa6562e4f43a8) switch to UNICODE_SPACE ### 📊 Changes **14 files changed** (+122 additions, -81 deletions) <details> <summary>View changed files</summary> 📝 `src/buffer/out/textBuffer.cpp` (+3 -3) 📝 `src/buffer/out/textBuffer.hpp` (+3 -3) 📝 `src/cascadia/TerminalControl/TermControlUiaProvider.cpp` (+10 -7) 📝 `src/cascadia/TerminalControl/TermControlUiaProvider.hpp` (+5 -2) 📝 `src/cascadia/TerminalControl/UiaTextRange.cpp` (+13 -9) 📝 `src/cascadia/TerminalControl/UiaTextRange.hpp` (+9 -4) 📝 `src/interactivity/win32/screenInfoUiaProvider.cpp` (+10 -7) 📝 `src/interactivity/win32/screenInfoUiaProvider.hpp` (+5 -2) 📝 `src/interactivity/win32/uiaTextRange.cpp` (+13 -9) 📝 `src/interactivity/win32/uiaTextRange.hpp` (+9 -4) 📝 `src/types/ScreenInfoUiaProviderBase.cpp` (+8 -5) 📝 `src/types/ScreenInfoUiaProviderBase.h` (+8 -3) 📝 `src/types/UiaTextRangeBase.cpp` (+11 -11) 📝 `src/types/UiaTextRangeBase.hpp` (+15 -12) </details> ### 📄 Description ## Summary of the Pull Request This allows the developer to define word delimiters for our accessibility model via multiple avenues. 1. import a word delimiter into the constructor of the `ScreenInfoUiaProvider` (SIUP) - this defines a word delimiter for _all_ the `UiaTextRange`s (UTR) created by in this context 2. import a word delimiter into the UTR directly - this provides more control over what a "word" is - this can be useful if you have an idea of what text a particular UTR will encounter and you want to customize the word navigation for it (i.e consider adding `/` or `\\` for file paths) The default param of `" "` is scattered throughout because this is the word delimiter used in the English language. ## References #3659 #3161 --- <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:09:59 +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#25511