Bug 159910 - Buttons in navigator not properly announced by Orca screen reader (gtk3 VCL plugin)
Summary: Buttons in navigator not properly announced by Orca screen reader (gtk3 VCL p...
Status: RESOLVED FIXED
Alias: None
Product: LibreOffice
Classification: Unclassified
Component: UI (show other bugs)
Version:
(earliest affected)
24.8.0.0 alpha0+
Hardware: All All
: medium normal
Assignee: Not Assigned
URL:
Whiteboard: target:24.8.0 target:24.2.2
Keywords: accessibility
Depends on:
Blocks: a11y, Accessibility GTK3
  Show dependency treegraph
 
Reported: 2024-02-26 15:15 UTC by Michael Weghorn
Modified: 2024-04-20 13:33 UTC (History)
4 users (show)

See Also:
Crash report or crash signature:


Attachments
Screencast demonstrating the issue with Orca (7.26 MB, video/x-matroska)
2024-02-26 15:15 UTC, Michael Weghorn
Details
GTK_DEBUG=interactive screenshot (144.21 KB, image/png)
2024-02-26 16:16 UTC, Caolán McNamara
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Michael Weghorn 2024-02-26 15:15:18 UTC
Created attachment 192795 [details]
Screencast demonstrating the issue with Orca

This was originally reported and discussed on the a11y mailing list.
Thread starts here:
https://listarchives.libreoffice.org/global/accessibility/msg01102.html

When moving focus to/between the buttons in the Navigator in Writer, Orca only announces their role and state (like "toggle button, not pressed", "push button"), but not what these buttons are for.

Steps to reproduce:

1) start Orca screen reader
2) start LO Writer with the gtk3 VCL plugin
3) press F5 to open Navigator
4) move focus to and between the buttons at the top of the navigator

Actual result:

Most buttons are not properly announced by Orca, making it impossible for blind users to know what they are for.

Expected result:

Buttons should be properly announced.

Screencast showing the current behavior is attached.

Version: 24.8.0.0.alpha0+ (X86_64) / LibreOffice Community
Build ID: 4114b916102d7df76f7a59b4d82435d9ab0ffec6
CPU threads: 12; OS: Linux 6.6; UI render: default; VCL: gtk3
Locale: en-GB (en_GB.UTF-8); UI: en-US
Calc: threaded
Comment 1 Michael Weghorn 2024-02-26 15:20:01 UTC
Setting to confirmed, since it was originally reported by another user, s. the referenced a11y mailing list discussion.

Quoting from https://listarchives.libreoffice.org/global/accessibility/msg01104.html :


>> There are unlabelled toggle buttons, (...)
>
> I can reproduce this for many of the UI elements above the tree view in the
> navigator with the gtk3 variant of LibreOffice (which uses native Gtk widgets),
> but not when non-native VCL widgets are used, e.g. when using the qt6
> variant. In the latter case, the quick help/tooltip text is used for
> the accessible name as well (code pointer:
> VCLXAccessibleToolBoxItem::getAccessibleName and
> VCLXAccessibleToolBoxItem::GetText).
Comment 2 Caolán McNamara 2024-02-26 16:16:33 UTC
Created attachment 192802 [details]
GTK_DEBUG=interactive screenshot

They are GtkToggleToolButtons (etc) inside a GtkToolbar so nothing "special" as far as I know.
Comment 3 Commit Notification 2024-02-26 21:37:49 UTC
Michael Weghorn committed a patch related to this issue.
It has been pushed to "master":

https://git.libreoffice.org/core/commit/492a683c70d98d005bcb472770be33d3277499d7

tdf#159910 a11y: Slightly simplify VCLXAccessibleToolBoxItem::GetText

It will be available in 24.8.0.

The patch should be included in the daily builds available at
https://dev-builds.libreoffice.org/daily/ in the next 24-48 hours. More
information about daily builds can be found at:
https://wiki.documentfoundation.org/Testing_Daily_Builds

Affected users are encouraged to test the fix and report feedback.
Comment 4 Commit Notification 2024-02-26 21:38:52 UTC
Michael Weghorn committed a patch related to this issue.
It has been pushed to "master":

https://git.libreoffice.org/core/commit/625d22600d41a70f5c4a65bc75ef02b17c6cfae2

tdf#159910 VclBuilder: Add helper to identify toolbar item class

It will be available in 24.8.0.

The patch should be included in the daily builds available at
https://dev-builds.libreoffice.org/daily/ in the next 24-48 hours. More
information about daily builds can be found at:
https://wiki.documentfoundation.org/Testing_Daily_Builds

Affected users are encouraged to test the fix and report feedback.
Comment 5 Commit Notification 2024-02-26 21:38:54 UTC
Michael Weghorn committed a patch related to this issue.
It has been pushed to "master":

https://git.libreoffice.org/core/commit/86dff3ca4e994f69bf9ba6656ac3e1164a29ca11

tdf#159910 a11y: Merge VCLXAccessibleToolBoxItem::{,impl}GetText

It will be available in 24.8.0.

The patch should be included in the daily builds available at
https://dev-builds.libreoffice.org/daily/ in the next 24-48 hours. More
information about daily builds can be found at:
https://wiki.documentfoundation.org/Testing_Daily_Builds

Affected users are encouraged to test the fix and report feedback.
Comment 6 Michael Weghorn 2024-02-26 21:49:09 UTC
(In reply to Caolán McNamara from comment #2)
> Created attachment 192802 [details]
> GTK_DEBUG=interactive screenshot
> 
> They are GtkToggleToolButtons (etc) inside a GtkToolbar so nothing "special"
> as far as I know.

Yes, indeed. I think the best way forward is setting the accessible name in the .ui file, which just works for gtk3. That needs some adjustments for the VCL implementation in VclBuilder, which would currently set the a11y name for the toolbar parent instead, and I think it makes sense to align the behavior of the Gtk and VCL implementations a bit more along the way..
Comment 7 Commit Notification 2024-02-26 21:54:58 UTC
Michael Weghorn committed a patch related to this issue.
It has been pushed to "master":

https://git.libreoffice.org/core/commit/c455fcd88f950c87c1588859100c1310122980fa

tdf#159910 a11y: Distinguish a11y name and text of toolbar item

It will be available in 24.8.0.

The patch should be included in the daily builds available at
https://dev-builds.libreoffice.org/daily/ in the next 24-48 hours. More
information about daily builds can be found at:
https://wiki.documentfoundation.org/Testing_Daily_Builds

Affected users are encouraged to test the fix and report feedback.
Comment 8 Commit Notification 2024-02-27 18:35:43 UTC
Michael Weghorn committed a patch related to this issue.
It has been pushed to "master":

https://git.libreoffice.org/core/commit/8e456d51a48b4d2461634a41a40a5a3b58bfdef3

tdf#159910 vcl a11y: Allow explicitly setting toolbar item a11y name

It will be available in 24.8.0.

The patch should be included in the daily builds available at
https://dev-builds.libreoffice.org/daily/ in the next 24-48 hours. More
information about daily builds can be found at:
https://wiki.documentfoundation.org/Testing_Daily_Builds

Affected users are encouraged to test the fix and report feedback.
Comment 9 Commit Notification 2024-02-27 18:35:45 UTC
Michael Weghorn committed a patch related to this issue.
It has been pushed to "master":

https://git.libreoffice.org/core/commit/ad1167b92b8b8fdabf6b21e945682c0bafc80946

tdf#159910 a11y VclBuilder: Apply tool item's a11y name to itself

It will be available in 24.8.0.

The patch should be included in the daily builds available at
https://dev-builds.libreoffice.org/daily/ in the next 24-48 hours. More
information about daily builds can be found at:
https://wiki.documentfoundation.org/Testing_Daily_Builds

Affected users are encouraged to test the fix and report feedback.
Comment 10 Commit Notification 2024-02-27 18:35:48 UTC
Michael Weghorn committed a patch related to this issue.
It has been pushed to "master":

https://git.libreoffice.org/core/commit/d31c0fd5ed9fe563386cf317b366a0e739302dd2

tdf#159910 sw a11y: Set a11y names for Navigator items

It will be available in 24.8.0.

The patch should be included in the daily builds available at
https://dev-builds.libreoffice.org/daily/ in the next 24-48 hours. More
information about daily builds can be found at:
https://wiki.documentfoundation.org/Testing_Daily_Builds

Affected users are encouraged to test the fix and report feedback.
Comment 11 Commit Notification 2024-02-28 08:03:16 UTC
Michael Weghorn committed a patch related to this issue.
It has been pushed to "master":

https://git.libreoffice.org/core/commit/8f88aff98c6089140c73437e567e6d78da5f563e

tdf#159910 a11y: Dispose VCLXAccessibleList children

It will be available in 24.8.0.

The patch should be included in the daily builds available at
https://dev-builds.libreoffice.org/daily/ in the next 24-48 hours. More
information about daily builds can be found at:
https://wiki.documentfoundation.org/Testing_Daily_Builds

Affected users are encouraged to test the fix and report feedback.
Comment 12 Commit Notification 2024-02-29 10:13:04 UTC
Michael Weghorn committed a patch related to this issue.
It has been pushed to "libreoffice-24-2":

https://git.libreoffice.org/core/commit/5cb1fa2a98f61f161ff8b3c19919dad539b36d87

tdf#159910 a11y: Dispose VCLXAccessibleList children

It will be available in 24.2.2.

The patch should be included in the daily builds available at
https://dev-builds.libreoffice.org/daily/ in the next 24-48 hours. More
information about daily builds can be found at:
https://wiki.documentfoundation.org/Testing_Daily_Builds

Affected users are encouraged to test the fix and report feedback.
Comment 13 Commit Notification 2024-04-20 13:28:46 UTC
Michael Weghorn committed a patch related to this issue.
It has been pushed to "master":

https://git.libreoffice.org/core/commit/b9f51395bd763d01c8ac2b957ac047ff07fbcdfc

tdf#159910 sw a11y: Set a11y name for Navigator combobox

It will be available in 24.8.0.

The patch should be included in the daily builds available at
https://dev-builds.libreoffice.org/daily/ in the next 24-48 hours. More
information about daily builds can be found at:
https://wiki.documentfoundation.org/Testing_Daily_Builds

Affected users are encouraged to test the fix and report feedback.
Comment 14 Commit Notification 2024-04-20 13:28:48 UTC
Michael Weghorn committed a patch related to this issue.
It has been pushed to "master":

https://git.libreoffice.org/core/commit/9bb46a8e9819fa74dee53b305a4255bb72a89e22

tdf#159910 gtk3: Resave vcl/uiconfig/ui/combobox.ui with glade 3.40

It will be available in 24.8.0.

The patch should be included in the daily builds available at
https://dev-builds.libreoffice.org/daily/ in the next 24-48 hours. More
information about daily builds can be found at:
https://wiki.documentfoundation.org/Testing_Daily_Builds

Affected users are encouraged to test the fix and report feedback.
Comment 15 Commit Notification 2024-04-20 13:29:51 UTC
Michael Weghorn committed a patch related to this issue.
It has been pushed to "master":

https://git.libreoffice.org/core/commit/1e851093f0148d2c55fc3fd377d274f6703c71c9

tdf#159910 gtk3 a11y: Keep a11y props for combobox

It will be available in 24.8.0.

The patch should be included in the daily builds available at
https://dev-builds.libreoffice.org/daily/ in the next 24-48 hours. More
information about daily builds can be found at:
https://wiki.documentfoundation.org/Testing_Daily_Builds

Affected users are encouraged to test the fix and report feedback.
Comment 16 Michael Weghorn 2024-04-20 13:33:59 UTC
Fixed in master now: Toggle buttons have an accessible name set now, and the comboboxes that were previouly incorrectly reported as just "toggle button" now report a combobox role and have a name set.

More testing welcome.