From e9c11ba22ab3ed08ddf3ff49646ed21a7608ff65 Mon Sep 17 00:00:00 2001 From: Michael Weghorn Date: Mon, 11 Dec 2023 16:56:29 +0100 Subject: [PATCH] a11y atspi: Map checkable and hasPopup states to AT-SPI These states have direct equivalents in AT-SPI, so map them accordingly. Fixes: QTBUG-119080 Pick-to: 6.6 Change-Id: I5a78a75d135a853b3773c34aa2a45c0791cefebc Reviewed-by: Volker Hilsheimer Reviewed-by: Liang Qi (cherry picked from commit b2ec2e1137ceb0b83978a7fa35485b1b97c73648) Reviewed-by: Qt Cherry-pick Bot --- src/gui/accessible/linux/qspi_constant_mappings.cpp | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/src/gui/accessible/linux/qspi_constant_mappings.cpp b/src/gui/accessible/linux/qspi_constant_mappings.cpp index 4fc7bdf83cb..e5b6e3f6344 100644 --- a/src/gui/accessible/linux/qspi_constant_mappings.cpp +++ b/src/gui/accessible/linux/qspi_constant_mappings.cpp @@ -36,6 +36,8 @@ quint64 spiStatesFromQState(QAccessible::State state) setSpiStateBit(&spiState, ATSPI_STATE_FOCUSED); if (state.pressed) setSpiStateBit(&spiState, ATSPI_STATE_PRESSED); + if (state.checkable) + setSpiStateBit(&spiState, ATSPI_STATE_CHECKABLE); if (state.checked) setSpiStateBit(&spiState, ATSPI_STATE_CHECKED); if (state.checkStateMixed) @@ -75,7 +77,8 @@ quint64 spiStatesFromQState(QAccessible::State state) if (state.extSelectable) setSpiStateBit(&spiState, ATSPI_STATE_SELECTABLE); // if (state.Protected) - // if (state.HasPopup) + if (state.hasPopup) + setSpiStateBit(&spiState, ATSPI_STATE_HAS_POPUP); if (state.modal) setSpiStateBit(&spiState, ATSPI_STATE_MODAL); if (state.multiLine)