diff options
Diffstat (limited to 'src/widgets/accessible/itemviews.cpp')
-rw-r--r-- | src/widgets/accessible/itemviews.cpp | 17 |
1 files changed, 15 insertions, 2 deletions
diff --git a/src/widgets/accessible/itemviews.cpp b/src/widgets/accessible/itemviews.cpp index 677e56806a..a7b536ae54 100644 --- a/src/widgets/accessible/itemviews.cpp +++ b/src/widgets/accessible/itemviews.cpp @@ -934,10 +934,23 @@ QStringList QAccessibleTableCell::actionNames() const void QAccessibleTableCell::doAction(const QString& actionName) { if (actionName == toggleAction()) { - if (isSelected()) +#if defined(Q_OS_ANDROID) + QAccessibleInterface *parentInterface = parent(); + while (parentInterface){ + if (parentInterface->role() == QAccessible::ComboBox) { + selectCell(); + parentInterface->actionInterface()->doAction(pressAction()); + return; + } else { + parentInterface = parentInterface->parent(); + } + } +#endif + if (isSelected()) { unselectCell(); - else + } else { selectCell(); + } } } |