Accessibility support #71
pyscripter
announced in
Announcements
Replies: 0 comments
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
-
Accessibility support has been implemented (#53). Now SynEdit fully supports screen readers such as Windows Narrator and NVDA. The support is much better than, for instance, in Visual Studio Code. The implementation is not based on the older Microsoft Active Accessibility (MSAA), but on the newer Microsoft UI Automation. Microsoft UI Automation has been around since 2005 and is available to all Windows versions since Windows XP. In addition to making applications accessible, it can also be used by automated UI testing tools.
Despite been available for almost 20 years, Delphi does not provide the relevant header translations (See RSP-41898), which complicated the implementation. I also could not find any other complete Delphi implementation of UI automation. So, the SynEdit implementation may serve as a guide to how to implement UI Automation in other controls.
SynEdit implements the Document Control Type and the related control patterns:
Backward compatibility
You do not need to change anything in your code to get accessibility support. A new option eoAccessibility has been added which is included in the default options. You can remove it to disable accessibility features. In any case, there is no performance penalty from the accessibility features, if no screen reader is active.
Beta Was this translation helpful? Give feedback.
All reactions