diff options
| author | Michael Weghorn <m.weghorn@posteo.de> | 2023-11-11 00:03:48 +0100 |
|---|---|---|
| committer | Michael Weghorn <m.weghorn@posteo.de> | 2024-05-23 01:12:32 +0200 |
| commit | bd0a6e83079efd8a26d9ece6055f584a8c89c1fd (patch) | |
| tree | a3c89a5c0d7db568e1f16c5f2f7d74f6bad97f43 /src/network/kernel/qnetworkinterface_unix.cpp | |
| parent | 2d4993899f0dfda1288e891bc4d9a890af851a4f (diff) | |
a11y uia: Bridge QAccessibleAttributesInterface to UIA
This bridges the 2 currently existing attribute types for
the newly added QAccessibleAttributesInterface to UIA.
As described in the AT-SPI bridge implementation already,
QAccessible::Attribute::Level semantically matches
the "aria-level" ARIA attribute, and is mapped to
a "level" property for the UIA_AriaPropertiesPropertyId
as described in the Core Accessibility API Mappings
specification for both, headings [1] and non-headings [2].
Map all attributes set in QAccessible::Attribute::Custom
to that property as well, keeping key and value as they
are.
As described in the UIA Element Properties Identifiers
doc [3] for UIA_AriaPropertiesPropertyId:
> AriaProperties is a collection of Name/Value pairs with
> delimiters of = (equals) and ; (semicolon), for example,
> "checked=true;disabled=false".
In addition, if the level attribute is set for an object
of role heading, report the corresponding
StyleId_Heading for UIA_StyleIdAttributeId, as also
described in the Core Accessibility API Mappings spec [1].
For MingW, add UIA_StyleIdAttributeId and
StyleId_Heading<NUMBER> defines
to qwindowsuiautomation.h, as the MingW headers
apparently don't have them yet (see log of
failed MingW builds without those defines: [4] [5]).
[1] https://www.w3.org/TR/core-aam-1.2/#ariaLevelHeading
[2] https://www.w3.org/TR/core-aam-1.2/#ariaLevel
[3] https://learn.microsoft.com/en-us/windows/win32/winauto/uiauto-automation-element-propids
[4] https://testresults.qt.io/logs/qt/qtbase/95edcdf493fedcc1ea8f8e824952bdb7c3a34ade/WindowsWindows_11_23H2x86_64WindowsWindows_11_23H2x86_64Clangqtci-windows-11_23H2-x86_64-52-70a4f4Sccache_UseConfigure/051e46739b880c22b4046471996739d0ea38dfd2/build_1716364832/log.txt.gz
[5] https://testresults.qt.io/logs/qt/qtbase/c62cb39d9177e0ea724751e6346717855c91b2c7/WindowsWindows_10_22H2x86_64WindowsWindows_10_22H2x86_64Mingwqtci-windows-10_22H2-x86_64-51-30b063Sccache_UseConfigure_WarningsAreErrors/b8e624167842d77c2f66d5bb28543b39336b4b80/build_1716370445/log.txt.gz
Fixes: QTBUG-119057
Change-Id: I00b15e95c35c0f31ba34161bc061a3085fc28682
Reviewed-by: Volker Hilsheimer <volker.hilsheimer@qt.io>
Diffstat (limited to 'src/network/kernel/qnetworkinterface_unix.cpp')
0 files changed, 0 insertions, 0 deletions
