Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

use wx.Accessible to improve accessibility of our settings panels and checkable list controls #12215

Merged
merged 5 commits into from Mar 25, 2021

Conversation

LeonarddeR
Copy link
Collaborator

@LeonarddeR LeonarddeR commented Mar 23, 2021

Link to issue number:

Closes #12209

Summary of the issue:

To fix some accessibility issues in our settings panel and checkable lists, we had to use a custom com server with comtypes. However, wx has built-in functionality to manipulate accessibility properties.

Description of how this pull request fixes the issue:

This pr removes our own accprop server in favour of wx' native support.

Testing strategy:

Tested that:

  • Settings panels still have the role of property page
  • Settings panels with a description have it set on the accessible object
  • Check boxes for the NVDA modifier key list items are still read correctly
  • Check boxes for a custom instance of AutoWidthColumnCheckListCtrl are still read correctly, tested by using it temporarily in place of the categories list control in NVDA"s settings dialog

Known issues with pull request:

None known

Change log entry:

  • Changes for developers
    • the gui.accPropServer module as well as the AccPropertyOverride and ListCtrlAccPropServer classes from the gui.nvdaControls module have been removed in favor of WX' native support for overriding accessibility properties. When enhancing accessibility of WX controls, implement wx.Accessible instead

Code Review Checklist:

This checklist is a reminder of things commonly forgotten in a new PR.
Authors, please do a self-review and confirm you have considered the following items.
Mark items you have considered by checking them.
You can do this when editing the Pull request description with an x: [ ] becomes [x].
You can also check the checkboxes after the PR is created.

  • Pull Request description is up to date.
  • Unit tests.
  • System (end to end) tests.
  • Manual tests.
  • User Documentation.
  • Change log entry.
  • Context sensitive help for GUI changes.

source/gui/nvdaControls.py Outdated Show resolved Hide resolved
GetRole should call super().GetRole, not super().GetState
@AppVeyorBot

This comment has been minimized.

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.

Consider dropping gui.accPropServer based GUI annotations in favour of wx.Accessible
4 participants