Gimp accessibility for screen readers

Although it seems as if Gimp should be accessible to a screen reading application such as narrator, which is included in windows by default, or NVDA, it isn’t. None of the menus or dialogs can be read natively, but the text can be read with OCR, although this does not create a very good experience. While making a photo editor accessible to the blind sounds like a rather pointless waste of time, I would appreciate it. If it were accessible, I could at least help my girlfriend learn and use it by exploring some of the options mentioned in the documentation, and checking to insure that various plugins were installed properly, giving her the freedom to get on with editing.

Although it seems as if Gimp should be accessible to a screen reading
application such as narrator, which is included in windows by
default, or NVDA, it isn’t.

I’m sorry to hear that - i tried on Linux and although there were some
irritations, most notably Orca reading out the image title multiple
times for every brush-stroke, it should have at least basic
accessibility.

Can you try with gimp 2.99?

What do “read natively” mean in this context? Isn’t the ability to have screen readers read text of menus, dialogs and whatnot usually the main usage for screen readers?

It’s definitely not pointless. Blind people too have the right to edit images (and it’s not for us to judge whether this is appropriate or not; if someone has a use case, who are we to tell them they don’t!). GIMP is for everyone.

Now GIMP is built with GTK which should have at least some level of accessibility support (screen readers, etc.), i.e. in theory we should not have much to do for the software to be accessible. In practice, we unfortunately haven’t had many contributors in the last 11 years at least (and probably more, but I’ve only been here for this time frame) who worked for long enough on the accessibility of GIMP. So I’m not surprised at all to hear there might be various misses and issues.

Myself have always been interested in the topic of accessibility but I barely find the time to work on all the biggest priority we require for our own work, though if we ever had a contributor wanting to improve GIMP in this regard, I would definitely support this work.

In other words: GIMP developers are absolutely not against improving our software accessibility (quite the contrary, so don’t worry, there is no need to convince us :wink:), though we can’t make promises on this topic. This is a fully community-developed software so all I can ensure is that if someone wants to work on this, they will be warmly welcomed and accompanied by the other developers (me at least, definitely). :hugs:

It’s probably an issue of gtk not implementing IA2 or UIA for Windows.

I am using windows 10, and am running gimp 2.10 at present.
Please provide a link to the exact version you’d like me to try so that you know we’d be on the same page.
Thanks in advance.

Although I am not a developer, I know enough to be confident that the implementation of UIA would more than likely solve all of the problems, especially considering the extensive keyboard navigation already present.

Narrator has a development mode which highlights elements which are accessible, and you can read about it here.
https://tink.uk/using-narrator-dev-mode/

Also, if you want some extensive info on accessibility testing for windows, this may help.
Accessibility testing - Windows apps | Microsoft Learn

Hope this helps.

In the mean time, I did find an installer for gimp 2.99.14 and found the same lack of accessibility.

AFAIK on Windows Gimp uses its own widget/controls library (actually a port to Windows of a rather common Linux one) that doesn’t rely on the native Windows controls, so other applications do not have a standard way to access text carried by these widgets/controls (all they see is a bitmap).

GIMP uses GTK: GNOME / gtk · GitLab

To my knowledge, the lack of any sort of direct accessiblity support on the Windows platform is a known problem there (certainly for GTK 2.x, and, given the same seem to happen with GIMP 2.99.14, for GTK 3.x as well)

GTK uses ATK and/or AT-SPI2 to make its interface accessible to interface with applications like screen readers - this is how Orca is able to work with GIMP on e.g. the Linux platforms.

GTK, ATK and/or AT-SPI2 is roughly where accessibility support for the Windows platform would have to be added, and then all application using GTK would benefit from it - but don’t ask me for details, writing this is pretty much the extent of my knowledge here (I don’t know whether ATK and AT-SPI2 build upon each other, or are effectively the same).

In the mean time, I did find an installer for gimp 2.99.14 and found
the same lack of accessibility.

Thank you for checking!

Unfortunately, the Gtk toolkit we use for GIMP does not appear to
support the accessible reader APIs on Windows or MacOS, only on Linux -
https://blog.gtk.org/tag/accessibility/

I had thought that was fixed, but apparently not, so sorry for asking
you to try gimp 2.99.14. I don’t have access to a Windows system here.

I’m aware too, there’s a lot of improvements we could make even on
Linux.

It was no trouble at all for me to check, in fact I was glad to be able to do that for you.

That having been said, the Gtk toolkit accessibility issues are now the barrier to get around. Who do I need to contact in order to raise awareness of the need for the implementation of accessibility APIs of various operating systems?

I understand that Linux is priority with these tools, and seems to be the most evolved in terms of screen reader support, so I completely understand if a more reasonable request is to improve that first, then work on everything else when possible.

I love the ideas behind all of this open source software, and look forward to the possible snowball effect this could have in terms of the number of programs that could be accessible by default.

You’re assuming that the GTK developers don’t know about this, or that there’s somebody that tasks developers to work on specific functionality; both assumptions are wrong.

The GTK team knows about the lack of accessibility on non-Linux/non-Unix platforms. That’s one of the reasons why the accessibility implementation in GTK4 was rewritten entirely, to ensure it’s easier to port to other platforms, compared to the implementation in GTK2 and GTK3.

GTK is volunteer-driven, which means: people who need something have to contribute it, or have to find somebody who can contribute it, either through volunteer work or through fundraising. The GNOME Foundation tried to get funding for a single developer doing accessibility work for nearly a year without success, so it’s not really trivial to just fundraise for that.

As a side note: GTK3 is feature frozen, which means it can’t change its API, or add new functionality. Adding support for other accessibility platforms may be possible within the confines of the other accessibility API, but I would recommend against it. This, of course, implies that GIMP would need to be ported to GTK4 in order to access any new accessibility implementation.