From 9e9da416c7053fac0db2d5f99dcf591f79c09e7e Mon Sep 17 00:00:00 2001 From: Eism Date: Tue, 31 Aug 2021 15:00:13 +0200 Subject: [PATCH] Fixed roles for menu --- src/appshell/qml/AppMenuBar.qml | 4 ++-- src/appshell/qml/AppTitleBar.qml | 2 +- src/framework/accessibility/iaccessible.h | 1 + .../accessibility/internal/accessibleiteminterface.cpp | 1 + src/framework/ui/view/qmlaccessible.h | 1 + .../qml/MuseScore/UiComponents/StyledMenuItem.qml | 3 ++- 6 files changed, 8 insertions(+), 4 deletions(-) diff --git a/src/appshell/qml/AppMenuBar.qml b/src/appshell/qml/AppMenuBar.qml index de47efa709..31be6eac78 100644 --- a/src/appshell/qml/AppMenuBar.qml +++ b/src/appshell/qml/AppMenuBar.qml @@ -54,7 +54,7 @@ ListView { id: navPanel name: "AppMenuBar" enabled: root.enabled && root.visible - accessible.name: qsTrc("appshell", "App menu bar") + " " + navPanel.directionInfo + accessible.name: qsTrc("appshell", "App menu bar") } delegate: FlatButton { @@ -71,7 +71,7 @@ ListView { navigation.name: text navigation.panel: navPanel navigation.order: index - navigation.accessible.name: { + accessible.name: { return text.replace('&', '') } diff --git a/src/appshell/qml/AppTitleBar.qml b/src/appshell/qml/AppTitleBar.qml index 3d8721cf07..7a164611ac 100644 --- a/src/appshell/qml/AppTitleBar.qml +++ b/src/appshell/qml/AppTitleBar.qml @@ -93,7 +93,7 @@ Rectangle { name: "AppControl" section: navSec order: 1 - accessible.name: qsTrc("appshell", "App control") + " " + navAppControlPanel.directionInfo + accessible.name: qsTrc("appshell", "App control") } FlatButton { diff --git a/src/framework/accessibility/iaccessible.h b/src/framework/accessibility/iaccessible.h index 1331604c14..a79593dd56 100644 --- a/src/framework/accessibility/iaccessible.h +++ b/src/framework/accessibility/iaccessible.h @@ -49,6 +49,7 @@ public: RadioButton, ComboBox, ListItem, + MenuItem, // Custom roles Information, // just text diff --git a/src/framework/accessibility/internal/accessibleiteminterface.cpp b/src/framework/accessibility/internal/accessibleiteminterface.cpp index cf465f4a6c..24b0a028ff 100644 --- a/src/framework/accessibility/internal/accessibleiteminterface.cpp +++ b/src/framework/accessibility/internal/accessibleiteminterface.cpp @@ -189,6 +189,7 @@ QAccessible::Role AccessibleItemInterface::role() const case IAccessible::Role::RadioButton: return QAccessible::RadioButton; case IAccessible::Role::ComboBox: return QAccessible::ComboBox; case IAccessible::Role::ListItem: return QAccessible::ListItem; + case IAccessible::Role::MenuItem: return QAccessible::MenuItem; case IAccessible::Role::Information: { #ifdef Q_OS_WIN return QAccessible::StaticText; diff --git a/src/framework/ui/view/qmlaccessible.h b/src/framework/ui/view/qmlaccessible.h index 4ab01013e8..25a446ced4 100644 --- a/src/framework/ui/view/qmlaccessible.h +++ b/src/framework/ui/view/qmlaccessible.h @@ -57,6 +57,7 @@ public: RadioButton, ComboBox, ListItem, + MenuItem, Information }; Q_ENUM(Role) diff --git a/src/framework/uicomponents/qml/MuseScore/UiComponents/StyledMenuItem.qml b/src/framework/uicomponents/qml/MuseScore/UiComponents/StyledMenuItem.qml index 20ab025b8a..c7bb57bd3f 100644 --- a/src/framework/uicomponents/qml/MuseScore/UiComponents/StyledMenuItem.qml +++ b/src/framework/uicomponents/qml/MuseScore/UiComponents/StyledMenuItem.qml @@ -59,10 +59,11 @@ ListItemBlank { isSelected: Boolean(itemPrv.showedSubMenu) || (itemPrv.isSelectable && itemPrv.isSelected) || navigation.active navigation.name: titleLabel.text + navigation.accessible.role: MUAccessible.MenuItem navigation.accessible.name: { var text = titleLabel.text if (itemPrv.isCheckable) { - text += " " + (itemPrv.isChecked ? qsTrc("appshell", "checked") : qsTrc("appshell", "not checked")) + text += " " + (itemPrv.isChecked ? qsTrc("appshell", "checked") : qsTrc("appshell", "unchecked")) } else if (itemPrv.isSelectable) { text += " " + (itemPrv.isSelected ? qsTrc("appshell", "selected") : qsTrc("appshell", "not selected")) }