Closed Bug 1901461 Opened 1 year ago Closed 1 year ago

[UIA] Support text attributes

Categories

(Core :: Disability Access APIs, task)

Desktop
Windows
task

Tracking

()

RESOLVED FIXED
134 Branch
Tracking Status
firefox134 --- fixed

People

(Reporter: Jamie, Assigned: nlapre)

References

(Blocks 1 open bug)

Details

Attachments

(3 files)

This will allow for exposing formatting information, headings, spelling errors, etc. We need to support ITextRangeProvider::GetAttributeValue.

Blocks: 1901467

We should first add support for TextUnit_Format, so we have an established way to navigate text runs.

Depends on: 1927001

This revision implements GetAttributeValue on UiaTextRange. It does not add
support for every UIA text attribute, but does implement eight and lays the
groundwork to implement the rest. To keep GetAttributeValue straightforward, it
mainly contains a switch statement that dispatches a templated GetAttribute
function which makes use of an templated AttributeTraits struct to determine
whether the text attribute is uniform throughout the text range. Finally, this
revision adds a bunch of tests for this new functionality.

Assignee: nobody → nlapre
Status: NEW → ASSIGNED
Attachment #9434955 - Attachment description: Bug 1901461: Implement ITextRangeProvider::GetAttributeValue, r?jamie → Bug 1901461 - Part 1: Implement ITextRangeProvider::GetAttributeValue, r?jamie

This revision implements the annotation types attribute and a few of its
associated annotation types. Namely, implemented here are SpellingError,
GrammarError, DataValidationError, and Highlighted. This revision also
implements tests for this new functionality.

Pushed by nlapre@mozilla.com: https://hg.mozilla.org/integration/autoland/rev/1ae684a5469e Part 1: Implement ITextRangeProvider::GetAttributeValue, r=Jamie https://hg.mozilla.org/integration/autoland/rev/e8c3edcb4cc5 Part 2: Implement UIA_AnnotationTypesAttributeId, r=Jamie

Marking leave-open so we can use this bug to track one more forthcoming patch which will implement UIA_StyleIdAttributeId (heading, block quote, and so on).

Keywords: leave-open
Regressions: 1929755

This revision implements supportable styles covered by
UIA_StyleIdAttributeId. Namely, this includes the heading levels,
quotes, and emphasis. These are implemented with Accessible role checks.
To get the levels, this revision makes GetLevel a public function. It
also adds constant definitions for MinGW builds. Finally, this revision
adds tests to the existing GetAttributeValue tests.

Pushed by nlapre@mozilla.com: https://hg.mozilla.org/integration/autoland/rev/81eb8aff9982 Implement UIA_StyleIdAttributeId, r=Jamie
Keywords: leave-open
Status: ASSIGNED → RESOLVED
Closed: 1 year ago
Resolution: --- → FIXED
Target Milestone: --- → 134 Branch
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Creator:
Created:
Updated:
Size: