Skip to content

Revert no longer classify (rich) edit classes as bad for UIA#15381

Merged
seanbudd merged 3 commits into
nvaccess:betafrom
LeonarddeR:revertEdit
Sep 6, 2023
Merged

Revert no longer classify (rich) edit classes as bad for UIA#15381
seanbudd merged 3 commits into
nvaccess:betafrom
LeonarddeR:revertEdit

Conversation

@LeonarddeR

Copy link
Copy Markdown
Collaborator

Link to issue number:

Reintroduces #14285
Fixes #15375
Fixes #15330
Reverts #15314

Summary of the issue:

In #15314, edit and rich edit classes were no longer classified as bad for UIA. This caused the following issues:

  1. Read only edit fields in Explorer no longer read correctly, as they inherrit from both UIA and IAccessible
  2. UIA adds a redundant name of RichEdit Control to RichEdit controls.

Generally spoken, removing these classes from the bad UIA classes list meant an API breaking change because Edit objects using UIA instead of legacy Edit support behave differently with regard to overriding and filtering texts, including LTR and RTL marks.

Description of user facing changes

Reverted #15314. Most notably, the lag as reported in #14285 will unfortunately be reintroduced for now.

Description of development approach

  1. Re-add the bad UIA class names again.
  2. Addressed issues in the explorer appmodule as pointed out in Edit controls in explorer fail when they have a native UIA implementation #15375.
    • Most notably, changed class inheritance from IAccessible to Edit
    • Added some small checks to overlay selection to ensure SysListView overlays won't be added on SysListView objects that don't use MSAA

Testing strategy:

Tested str from #15375 and #15330

Known issues with pull request:

None known

Change log entries:

In pr

Code Review Checklist:

  • Pull Request description:
    • description is up to date
    • change log entries
  • Testing:
    • Unit tests
    • System (end to end) tests
    • Manual testing
  • API is compatible with existing add-ons.
  • Documentation:
    • User Documentation
    • Developer / Technical Documentation
    • Context sensitive help for GUI changes
  • UX of all users considered:
    • Speech
    • Braille
    • Low Vision
    • Different web browsers
    • Localization in other languages / culture than English
  • Security precautions taken.

@LeonarddeR LeonarddeR requested a review from a team as a code owner September 6, 2023 06:48
@LeonarddeR LeonarddeR requested review from seanbudd and removed request for a team September 6, 2023 06:48
@seanbudd seanbudd added this to the 2023.3 milestone Sep 6, 2023

@lukaszgo1 lukaszgo1 left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM

seanbudd
seanbudd previously approved these changes Sep 6, 2023

@seanbudd seanbudd left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks @LeonarddeR

@seanbudd seanbudd merged commit 4731401 into nvaccess:beta Sep 6, 2023
@LeonarddeR LeonarddeR deleted the revertEdit branch August 23, 2025 06:28
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants