diff options
author | Michael Weghorn <m.weghorn@posteo.de> | 2023-03-06 15:52:44 +0100 |
---|---|---|
committer | Michael Weghorn <m.weghorn@posteo.de> | 2023-03-06 19:48:09 +0000 |
commit | 02266202e5e5a97d3c97a3d502c59db884a99901 (patch) | |
tree | 8e2bfb8375438b054c18b0b9165be592aa6c4c02 /lotuswordpro | |
parent | 79aed20c3d48b2be5cdee5de42559649db0eb5fa (diff) |
qt a11y: Handle all QAccessible::Relation flags
The bits/flags in `QAccessible::Relation` can be set in
any combination, while the previous code would only properly
handle the case that `QAccessible::AllRelations` is set.
This would e.g. mean that
QtAccessibleWidget::relations(QAccessible::FlowsTo | QAccessible::FlowsFrom)
would not return both relations as it should.
The previous handling of the case that just a single flag is set
also looks odd, since it would use the sal_Int16 value of the
UNO relation as an index into the set of relations...
Fix this by always iterating over all relations and
applying the filter in `lcl_appendRelation` (only
append those that match the filter).
(At least for AT-SPI, the previous handling should not have
caused any issues in practice, since Qt's AT-SPI bridge always
passes `QAccessible::AllRelations` from what I can see.)
Change-Id: Icc21ac252db026f607fe8d6041252916b1d9e3a9
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/148352
Tested-by: Jenkins
Reviewed-by: Michael Weghorn <m.weghorn@posteo.de>
Diffstat (limited to 'lotuswordpro')
0 files changed, 0 insertions, 0 deletions