microsoft / microsoft/react-native-windows

Complete Support for ITextProvider and ITextRangeProvider

Open
#14,333 0 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Area: Accessibility Area: Fabric Area: Text enhancement New Architecture Workstream: Accessibility
Dominant language
C++
Stars
17.3k
Forks
1.2k
Avg merge
1d 13h
Merged PRs (30d)
33

Description

Basic implementation of ITextProvider and ITextRangeProvider can be found in #14332. Several methods remain unimplemented. Waiting on accessibility results to determines which methods are most critical to accessibility compliance.

  • TextProvider::GetSelection
  • TextProvider::RangeFromChild
  • TextProvider2::GetCaretRange
  • TextProvider2::RangeFromAnnotation
  • TextRangeProvider::Clone
  • TextRangeProvider::Compare
  • TextRangeProvider::ExpandToEnclosingUnit
  • TextRangeProvider::FindAttribute
  • TextRangeProvider::FindText
  • TextRangeProvider::GetEnclosingElement
  • TextRangeProvider::MoveEndpointByRange
  • TextRangeProvider::MoveEndpointByUnit
  • extRangeProvider::ScrollIntoView
  • TextRangeProvider::RemoveFromSelection
  • TextRangeProvider::Select

Other scenarios:

  • Nested Text
  • Other React Native components nested inside text
  • Text expanding offscreen

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start with the basic ITextProvider and ITextRangeProvider implementation in issue #14332, then review the accessibility results to identify the most critical unimplemented methods. The work is complete when the selected provider methods and listed scenarios, including nested text and offscreen text, are supported.

Written by the indexing model from the issue text.

Assessment

Tech stack
cpp, react-native
Domain
accessibility
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
25/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.