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

Accessibility: check at-spi & speech output #156

Open
vvillenave opened this issue Jun 23, 2021 · 6 comments
Open

Accessibility: check at-spi & speech output #156

vvillenave opened this issue Jun 23, 2021 · 6 comments

Comments

@vvillenave
Copy link

As a keyboard-centric launcher, Kupfer can be hugely useful for visually-impaired users.

However, that’s currently not possible because its output isn’t transmitted via the at-spi bridge, thus preventing speech-dispatcher and Orca output (either vocalized or in Braille). Even worse, without visual cues, there is no way to guess that Kupfer has taken the focus so users who accidentally hit the launching key combo they may end up launching anything and wreaking havoc on their desktop without realizing it.

As a pure GTK app, there ought to be a rather straightforward possibility for Kupfer to be made entirely accessible!

@Ryuno-Ki
Copy link

Pinging @joanmarie as Orca maintainer.
https://help.gnome.org/users/gnome-help/stable/a11y.html isn't giving clues on how to make a GTK app accessible.

I was expecting some hints like for KDE: https://userbase.kde.org/Accessibility/Getting_Started#Running_KDE.2FQt_applications

Before starting an application you will have to set the environment variables as mentioned above if you build your own Qt. Otherwise just set:

export QT_ACCESSIBILITY=1

Then start the application in the same terminal.

Perhaps even with some hints like https://develop.kde.org/hig/accessibility/index.html#fixing-accessible-name-and-description

Do you have something similiar for GTK, Joanmarie?

@bluss
Copy link
Member

bluss commented Jun 23, 2021

Sounds intriguing, are you @vvillenave someone who could work with a dev to make this possible? We need information from someone who knows accessibility. I would naively think that we're using GTK and should already be mostly setup for a11y support - only need to implement special cases for the non standard parts of the interface? The global keyboard shortcut for example, and maybe the hidden keyboard input is another.

And if Kupfer is truly unusable like that right now, is it feasible to make a significant improvement?

@joanmarie
Copy link

GTK+ 3 has accessibility enabled by default. In a terminal, having launched Kupfer, does it show up in the list of accessible apps obtained by typing orca -l?

@vvillenave
Copy link
Author

vvillenave commented Jun 24, 2021

@joanmarie Yes, it does. Exploring it with Accerciser isn’t straightforward though, as its tree’s constantly rewritten (and disappearing whenever it loses focus).

@bluss Yes, the team I work with would be happy to give a hand! Also ccing @cwendling :-)

@vvillenave
Copy link
Author

To be more precise:

  • the Preferences dialog is fully accessible.
  • keystrokes (e.g. letters) are vocalized in “text mode” but not in normal mode.
  • the main part that’s not accessible appears to be the central widget(s) where
    the large icons and the apps’ names are printed, and the “Launch” icon
    on the right.
  • Hitting Tab or Shift-Tab only switches between the editable area and the
    “Launch” icon (which is by design I guess), but that won’t ever allow you
    to access the Preferences button in the top right corner. For people who
    don’t already know the keyboard shortcut, there should be a way to open
    this dialog (I suggest F6 for example, or easier yet: add it to the context
    menu, that can be opened with either the Menu key or Shift-F10).

@cwendling
Copy link

I haven't tested yet, but at first glance I'd guess that the UI doesn't use an input widget, and simply captures events and processes it in a custom fashion. This most likely confuses Orca, or outright ignores focus navigation and such. But again, that's a guess, I didn't investigate this yet at all.

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

No branches or pull requests

5 participants