aboutsummaryrefslogtreecommitdiffstats
path: root/src/plugins/accessible/shared/qqmlaccessible.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/plugins/accessible/shared/qqmlaccessible.cpp')
-rw-r--r--src/plugins/accessible/shared/qqmlaccessible.cpp9
1 files changed, 6 insertions, 3 deletions
diff --git a/src/plugins/accessible/shared/qqmlaccessible.cpp b/src/plugins/accessible/shared/qqmlaccessible.cpp
index c4daa3e014..d08f9bdb2c 100644
--- a/src/plugins/accessible/shared/qqmlaccessible.cpp
+++ b/src/plugins/accessible/shared/qqmlaccessible.cpp
@@ -129,7 +129,8 @@ QStringList QQmlAccessible::actionNames() const
break;
case QAccessible::RadioButton:
case QAccessible::CheckBox:
- actions << QAccessibleActionInterface::toggleAction();
+ actions << QAccessibleActionInterface::toggleAction()
+ << QAccessibleActionInterface::pressAction();
break;
case QAccessible::Slider:
case QAccessible::SpinBox:
@@ -153,7 +154,7 @@ void QQmlAccessible::doAction(const QString &actionName)
return;
}
- // Role-specific default action handling follows. Items are excepted to provide
+ // Role-specific default action handling follows. Items are expected to provide
// properties according to role conventions. These will then be read and/or updated
// by the accessibility system.
// Checkable roles : checked
@@ -163,7 +164,9 @@ void QQmlAccessible::doAction(const QString &actionName)
case QAccessible::CheckBox: {
QVariant checked = object()->property("checked");
if (checked.isValid()) {
- if (actionName == QAccessibleActionInterface::toggleAction()) {
+ if (actionName == QAccessibleActionInterface::toggleAction() ||
+ actionName == QAccessibleActionInterface::pressAction()) {
+
object()->setProperty("checked", QVariant(!checked.toBool()));
}
}