Nim GTK bindings and screen reader accessibility: Should official helper wrappers be provided?
0 reputation · 15 Jun 2025, 09:00 UTC
The goal is to make Nim GTK applications automatically convey accessible names and roles to assistive technologies such as Orca, reducing the burden on developers to invoke GTK’s Accessible API for every widget.
However, the GTK Accessible API differs significantly between GTK 3 and GTK 4, the current Nim bindings expose only the raw widget interface, and the JavaScript backend lacks any built‑in ARIA helper procedures, leaving developers to write manual JS interop for attributes like aria‑label or role. The Nim community has not yet decided whether to ship official convenience wrappers for these tasks.
Should the Nim GTK binding provide procedures like gtk_set_accessible_name(widget, name) and gtk_set_accessible_role(widget, role) that internally handle version‑specific API differences? Should analogous ARIA helper procedures be added to the Nim DOM wrapper for the JavaScript target? How should version‑guarded wrappers be documented and maintained to remain compatible with both GTK 3 and GTK 4?