From 32b0ff21247a5396868905a06953e0278de9513e Mon Sep 17 00:00:00 2001 From: Michael Weghorn Date: Fri, 26 Jul 2024 11:19:59 +0200 Subject: [PATCH] a11y atspi: Map QAccessible::Border to AT-SPI2 panel role Instead of mapping QAccessible::Border to ATSPI_ROLE_FRAME ("A top level window with a title bar, border, menubar, etc." [1]), map it to ATSPI_ROLE_PANEL ("A generic container that is often used to group objects."), as widgets using that role (in particular QFrame) are not top-level windows, but rather containers for other widgets. [1] https://docs.gtk.org/atspi2/enum.Role.html#frame Fixes: QTBUG-127552 Pick-to: 6.7 6.5 Change-Id: I565793b6e02903402cfc764e2e38d391a2960af1 Reviewed-by: Volker Hilsheimer (cherry picked from commit a19d66385fc9fa13ce5ee811386ad104c0718941) Reviewed-by: Qt Cherry-pick Bot --- src/gui/accessible/linux/qspiaccessiblebridge.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/gui/accessible/linux/qspiaccessiblebridge.cpp b/src/gui/accessible/linux/qspiaccessiblebridge.cpp index 0d18589ac56..db8b1d949d6 100644 --- a/src/gui/accessible/linux/qspiaccessiblebridge.cpp +++ b/src/gui/accessible/linux/qspiaccessiblebridge.cpp @@ -131,7 +131,7 @@ static RoleMapping map[] = { //: Role of an accessible object { QAccessible::Dialog, ATSPI_ROLE_DIALOG, QT_TRANSLATE_NOOP("QSpiAccessibleBridge", "dialog") }, //: Role of an accessible object - { QAccessible::Border, ATSPI_ROLE_FRAME, QT_TRANSLATE_NOOP("QSpiAccessibleBridge", "frame") }, + { QAccessible::Border, ATSPI_ROLE_PANEL, QT_TRANSLATE_NOOP("QSpiAccessibleBridge", "panel") }, //: Role of an accessible object { QAccessible::Grouping, ATSPI_ROLE_PANEL, QT_TRANSLATE_NOOP("QSpiAccessibleBridge", "panel") }, //: Role of an accessible object