Hi, I'm currently attempting to add support for interacting with ART via a macropad by using Gtk's accessibility api (https://docs.gtk.org/atspi2/index.html) from Python, which allows for programatic interaction with UIs. In doing so I found a few shortcomings that I think could benefit this use case but accessibility in general:
- There's no way to interact with panel title's to hide/show and enable/disable the tool (not sure if "panel title" term is correct, I'm refering to the titles such as "Exposure" or "Tone Equalizer" that have the on/off button to the left). These do not appear to register as actual widgets in terms of ATSPI API (I'm guessing they are custom drawn) but neither they have shortcuts associated so only possible interaction is via point and click with mouse
- Something similar happens with tab title buttons (such as "Detail" or "Local Editing") but at least these have shortcuts associated. I'm currently sending the shortcut to active the tab. Ideally this could also have asociated "actions" (https://docs.gtk.org/atspi2/iface.Action.html) to show/hide enable/disable the toolset.
- UI widgets (such as sliders, checkboxes, etc) do not have a unique ID that allows for direct selection (https://docs.gtk.org/atspi2/method.Accessible.get_accessible_id.html). Instead I'm currently traversing the widget tree from the app itself using relative indices. I'm just starting with ATSPI but I understand that this would mean adding some sort of name to widgets in the code when they are instantiated, similar to an HTML identifier. See https://docs.gtk.org/atspi2/method.Accessible.get_accessible_id.html for reference
Hi, I'm currently attempting to add support for interacting with ART via a macropad by using Gtk's accessibility api (https://docs.gtk.org/atspi2/index.html) from Python, which allows for programatic interaction with UIs. In doing so I found a few shortcomings that I think could benefit this use case but accessibility in general: