Bug 149816 - qt5/qt6/kf5 report incorrect positions for a11y (Accerciser doesn't highlight area covered by the UI element)
Summary: qt5/qt6/kf5 report incorrect positions for a11y (Accerciser doesn't highlight...
Status: RESOLVED FIXED
Alias: None
Product: LibreOffice
Classification: Unclassified
Component: graphics stack (show other bugs)
Version:
(earliest affected)
unspecified
Hardware: All All
: medium normal
Assignee: Michael Weghorn
URL:
Whiteboard: target:7.5.0
Keywords:
Depends on:
Blocks: a11y, Accessibility KDE, KF5
  Show dependency treegraph
 
Reported: 2022-07-02 08:58 UTC by Michael Weghorn
Modified: 2022-07-02 10:43 UTC (History)
1 user (show)

See Also:
Crash report or crash signature:


Attachments
screencast demonstrating the issue (7.22 MB, video/webm)
2022-07-02 08:58 UTC, Michael Weghorn
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Michael Weghorn 2022-07-02 08:58:02 UTC
Created attachment 181080 [details]
screencast demonstrating the issue

Accerciser (a tool to retrieve a11y-related information) has a feature to highlight the item currently selected item in its tree view of the a11y hierarchy. For this, it uses the coordinates as reported by the corresponding a11y object.
However, when using this with the qt5/kf5/qt6 VCL plugins on Linux, the area highlighted by Accerciser is often incorrect, s. attached screencast.

steps to reproduce:

0) use one of the qt5/q6/kf5 VCL plugins on Linux (e.g. by setting env variable SAL_USE_VCLPLUGIN=kf5)
1) start Accerciser
2) start LO Writer
3) click through the a11y hierarchy for Writer
4) observe what area is highlighted in red

Actual behavior:

The highlighted area often doesn't correspond to the one at which the UI element actually is, as can be seen in the attached screencast. (First 6 seconds in the video show correct behavior, but for all subsequent elements, it's wrong.)
In many cases, the highlighted area is even outside of the LibreOffice window altogether.

Version: 7.5.0.0.alpha0+ / LibreOffice Community
Build ID: 870452546a56ce635f36247c44aee6068d70c053
CPU threads: 4; OS: Linux 5.18; UI render: default; VCL: qt6 (qfont+xcb)
Locale: en-GB (en_GB.UTF-8); UI: en-US
Calc: threaded
Comment 1 Michael Weghorn 2022-07-02 09:09:06 UTC
Pending fix: https://gerrit.libreoffice.org/c/core/+/136781
Comment 2 Commit Notification 2022-07-02 10:42:32 UTC
Michael Weghorn committed a patch related to this issue.
It has been pushed to "master":

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

tdf#149816 qt a11y: Report position in screen coordinates

It will be available in 7.5.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.