<feed xmlns='http://www.w3.org/2005/Atom'>
<title>dolphin/src/kitemviews/accessibility, branch master</title>
<subtitle>Patched KDE Dolphin with Pixel Scaling
</subtitle>
<id>https://fiftyfourth.xyz/git/dolphin/atom?h=master</id>
<link rel='self' href='https://fiftyfourth.xyz/git/dolphin/atom?h=master'/>
<link rel='alternate' type='text/html' href='https://fiftyfourth.xyz/git/dolphin/'/>
<updated>2026-01-22T15:14:16Z</updated>
<entry>
<title>clang-tidy: use default for trivial constructor</title>
<updated>2026-01-22T15:14:16Z</updated>
<author>
<name>Méven Car</name>
<email>meven@kde.org</email>
</author>
<published>2026-01-22T15:04:09Z</published>
<link rel='alternate' type='text/html' href='https://fiftyfourth.xyz/git/dolphin/commit/?id=174bc684603326de15e933b3bb24ffb739f3291e'/>
<id>urn:sha1:174bc684603326de15e933b3bb24ffb739f3291e</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Use Q_ASSERT instead of Q_CHECK_PTR for plain checks of pointer value</title>
<updated>2026-01-10T15:14:26Z</updated>
<author>
<name>Friedrich W. H. Kossebau</name>
<email>kossebau@kde.org</email>
</author>
<published>2026-01-09T15:16:48Z</published>
<link rel='alternate' type='text/html' href='https://fiftyfourth.xyz/git/dolphin/commit/?id=5fff1e414a060c0619a97ad8d3f5665e3f5a4878'/>
<id>urn:sha1:5fff1e414a060c0619a97ad8d3f5665e3f5a4878</id>
<content type='text'>
Q_CHECK_PTR (other than the name suggests) is intended only to check the
success of memory allocations.
Using it for any pointers instead can be misleading due to the
"Out of memory" log printed in case of hits.
</content>
</entry>
<entry>
<title>Fix several user-facing and non-user-facing typos</title>
<updated>2025-09-03T12:04:13Z</updated>
<author>
<name>Kunda Ki</name>
<email>luzpaz@pm.me</email>
</author>
<published>2025-09-03T12:04:13Z</published>
<link rel='alternate' type='text/html' href='https://fiftyfourth.xyz/git/dolphin/commit/?id=479ce3a1641398a8506812300834666614013850'/>
<id>urn:sha1:479ce3a1641398a8506812300834666614013850</id>
<content type='text'>
Found via `codespell -S "*.desktop,*.po,*.svg,*.xml,./po" -L aparent,childs,goup,lokal`</content>
</entry>
<entry>
<title>Have special keyboard controls in selection mode</title>
<updated>2024-12-29T11:27:18Z</updated>
<author>
<name>Felix Ernst</name>
<email>felixernst@kde.org</email>
</author>
<published>2024-12-29T11:27:18Z</published>
<link rel='alternate' type='text/html' href='https://fiftyfourth.xyz/git/dolphin/commit/?id=3696213ccbbe27e9ef3fc85eb97dd32fd669066f'/>
<id>urn:sha1:3696213ccbbe27e9ef3fc85eb97dd32fd669066f</id>
<content type='text'>
Prior to this commit keyboard controls and behaviour of Dolphin's main
view were identical no matter if selection mode was enabled or not.
While selection mode makes it impossible to accidentally clear the
selection by singular mouse clicks, any press of an arrow key on the
keyboard would still clear the full selection which goes against
selection mode's objective.

Furthermore, keyboard-only users had no reason to ever enable selection
mode because it made no difference to them.

This commit changes this by offering a changed control scheme for key
presses while in selection mode. Arrow key presses without modifier now
only move focus between items but do no longer clear or change the
selection. Similarly, Page Up/Down, Home, and End key presses only move
keyboard focus. Enter, Return, and Space key presses now only toggle
the selection for the current item.

The above controls are however mostly unchanged when combining them
with Modifier keys like Shift or Control.

The type-ahead feature is also changed in selection mode to only move
keyboard focus without changing the selection.

This way keyboard users are less likely to clear their selection by
mistake. Regression tests are added for these selection mode controls.

The code changes to change this keyboard behaviour are quite minimal.
Most of the added code is for making selection mode accessible. That's
because we need to make sure the changed control scheme is properly
announced and communicated or a blind user will be left utterly
confused why the normal keyboard controls "stopped working".

Enabling or disabling selection mode is announced to accessibility
software. Furthermore whenever focus goes to the main view, the
selection mode state is also mentioned when active.

BUG: 458091
</content>
</entry>
<entry>
<title>Adapt to Orca 47</title>
<updated>2024-12-05T15:42:53Z</updated>
<author>
<name>Felix Ernst</name>
<email>felixernst@zohomail.eu</email>
</author>
<published>2024-11-01T23:39:19Z</published>
<link rel='alternate' type='text/html' href='https://fiftyfourth.xyz/git/dolphin/commit/?id=179e53591b726acc0c5272e728e398de41fb51c9'/>
<id>urn:sha1:179e53591b726acc0c5272e728e398de41fb51c9</id>
<content type='text'>
The screen reader Orca has seen some fundamental changes between
Orca 46 and Orca 47. While they are improvements overall, they do
require changes to Dolphin to preserve the intended user
experience for Orca users.

The biggest change is perhaps that Orca will now not only announce
changes to the currently focused item, but also of its parent,
which means we do not need to pass focus around between file items
and the main view within Dolphin, but can keep focus on the file
items most of the time. This commit implements this.

The only exception of when we cannot have focus on the items within
the main view is when the current location is empty or not loaded
yet. Only then is the focus moved to the view itself and the
placeholderMessage is announced.

This commit worsens the UX for users of Orca 46 or older, so this
should only be merged once most users are on Orca 47 or later.
</content>
</entry>
<entry>
<title>Overhaul main view accessibility</title>
<updated>2024-10-28T13:25:10Z</updated>
<author>
<name>Felix Ernst</name>
<email>felixernst@kde.org</email>
</author>
<published>2024-10-28T13:25:10Z</published>
<link rel='alternate' type='text/html' href='https://fiftyfourth.xyz/git/dolphin/commit/?id=f208acd5f68c8516b9f6a920cc229803637e23e9'/>
<id>urn:sha1:f208acd5f68c8516b9f6a920cc229803637e23e9</id>
<content type='text'>
This commit brings the main view of Dolphin into a usable state
accessibility-wise. Users of screen readers should have a way better
experience while browsing files and folders and navigating along the
file system hierarchy.

This commit fixes most of the remaining already-identified
accessibility issues listed in
https://invent.kde.org/teams/accessibility/collaboration/-/issues/28,
but not all. Namely, these should now be 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.

A lot of code was moved around and renamed. The three accessibility
classes, which all used to be in the same file, are moved into separate
files.

*Acknowledgement*
Thanks to Christian Hempfling and bgt lover for testing as well as
originally identifying a lot of the pain points being addressed here.

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/
</content>
</entry>
</feed>
