Skip to content

Overhaul main view accessibility

This merge request is the result of me trying to get the main view of Dolphin into a usable state accessibility-wise. When this is merged, users of screen readers should have a way better experience while browsing files and folders and navigating along the file system hierarchy.

This merge request fixes most of the remaining already-identified accessibility issues listed in teams/accessibility/collaboration#28, but not all. I still plan to try to fix the remaining ones. Here are the ones I would consider fixed:

  1. Orca should read the element type in dolphin (file, folder, device, link to folder, link to file)
  2. Orca should read complete label in icon and compact view mode, currently it only speaks the name, but there could be additional information like the number of elements or the file size.
  3. Orca is not able to announce Selecting / Unselecting files in Dolphin. It also never announces how many items are selected in total. (Announcing the total selection can be done by reading out the view element or by pressing the Tab key to get to the status bar with the relevant information.)
  4. Dolphin opens on the home directory, but Orca doesn't tell you so. Consider enclosing the area in a frame/panel which updates its accessible name each time you modify the current path by entering or leaving a directory.
  5. I don't know what the folder presentation widget is, but it should be presented as a grid view. Currently, we have a terrible experience because the entire row of folders is read at once, with no indication that we can move left and right with the arrows to go between the elements of a row. When I found that out, however, I discovered that when you're on the last icon of the first row and press right arrow, you get to the first icon of the next row, but that's not announced, instead, the whole row is announced at once
  6. Orca should announce the current elements instead of "layered pane" when the Folder / File view gets the focus in dolphin
  7. Orca reads only name in Table View only of Dolphin
  8. Items are sometimes confusingly announced as "collapsed" in contexts in which there is no concept of collapsing/expanding e.g. in icon view mode.

Sorry that this is a bit of a code dump. I changed a lot of stuff around and considering that the accessibility of the main view wasn't a good user experience previously, there was not much I could regress on. I guess for code review it would make the most sense to only care about the changes which aren't exclusive to accessibility i.e. changes outside of the accessibility classes which trigger even if QAccessibility is not active.

This merge request moves the three accessibility classes which all used to be in the same file into separate files.

Acknowledgement

This work is part of a my project funded through the NGI0 Entrust Fund, a fund established by NLnet with financial support from the European Commission's Next Generation Internet programme, under the aegis of DG Communications Networks, Content and Technology. https://kde.org/announcements/2024_ngi_openletter/

Test plan

As a test plan it might make sense to try to use all the features of the main view while using the Orca screen reader and without looking at the screen and check if everything is usable.

Edited by Felix Ernst

Merge request reports