4 ms·
I've long been curious how non native UI libraries may assist with accessibility frameworks. Does anyone have any good resources?
by dagmx 6y ago
I've long been curious how non native UI libraries may assist with accessibility frameworks.
Does anyone have any good resources?
- layoutIfNeeded 6y agoOn macOS one would create a hierarchy of custom accessibility objects representing the application's state via NSAccessibilityElements: https://developer.apple.com/documentation/appkit/nsaccessibilityelement?language=objc https://developer.apple.com/documentation/appkit/nsaccessibi...
- dagmx 6y agoThanks. That makes sense.
- pqb 6y agoI have no experience with assistive software but I suppose non-native UI libraries should be using native OS toolkit (e.g. [0][1]) or specific APIs libraries, which targets NVDA, JAWS, Orca and others (this is one of the same idea shared in the one answer on SO [2]). I guess web browsers and other native GUIs just do that behind the scene. [0]: https://en.wikipedia.org/wiki/Microsoft_Active_Accessibility https://en.wikipedia.org/wiki/Microsoft_Active_Accessibility [1]: https://en.wikipedia.org/wiki/Microsoft_UI_Automation https://en.wikipedia.org/wiki/Microsoft_UI_Automation [2]: https://stackoverflow.com/questions/65168795/make-non-native-application-accessible-to-screen-readers-for-the-visually-impair https://stackoverflow.com/questions/65168795/make-non-native... Edit: IAccessible2 [3] seems to be compliant to both Windows and Linux. Whether Apple AppKit provides specific accessibility-focused UI elements [4]. Flutter has also similar one, it is called Semantics [5]. [3]: https://wiki.linuxfoundation.org/accessibility/iaccessible2/start https://wiki.linuxfoundation.org/accessibility/iaccessible2/... [4]: https://developer.apple.com/documentation/appkit/nsaccessibility?language=objc https://developer.apple.com/documentation/appkit/nsaccessibi... [5]: https://api.flutter.dev/flutter/widgets/Semantics-class.html https://api.flutter.dev/flutter/widgets/Semantics-class.html
- dagmx 6y agoThanks for the links