From a1b64d9566a49d287a8fad122859e8a99ad92151 Mon Sep 17 00:00:00 2001 From: Frederik Gladhorn Date: Wed, 8 Jan 2014 16:15:21 +0100 Subject: On Mac only editable ComboBox should receive tab focus [ChangeLog][QtQuickControls] Mac: ComboBox will only get tab focus when it is editable. Change-Id: Ife04de67b2e3dea77ba878b247ad0b676c879c02 Reviewed-by: Liang Qi Reviewed-by: Jens Bache-Wiig --- src/plugins/accessible/quick/qaccessiblequickitem.cpp | 5 ++++- src/quick/items/qquickitem.cpp | 6 +++++- 2 files changed, 9 insertions(+), 2 deletions(-) diff --git a/src/plugins/accessible/quick/qaccessiblequickitem.cpp b/src/plugins/accessible/quick/qaccessiblequickitem.cpp index 9e8c2a6020..3521d4f98e 100644 --- a/src/plugins/accessible/quick/qaccessiblequickitem.cpp +++ b/src/plugins/accessible/quick/qaccessiblequickitem.cpp @@ -185,11 +185,14 @@ QAccessible::State QAccessibleQuickItem::state() const case QAccessible::PageTab: case QAccessible::EditableText: case QAccessible::SpinBox: - case QAccessible::ComboBox: case QAccessible::Terminal: case QAccessible::ScrollBar: state.focusable = true; break; + case QAccessible::ComboBox: + state.focusable = true; + state.editable = item()->property("editable").toBool(); + break; default: break; } diff --git a/src/quick/items/qquickitem.cpp b/src/quick/items/qquickitem.cpp index c308a7230a..5739d6874e 100644 --- a/src/quick/items/qquickitem.cpp +++ b/src/quick/items/qquickitem.cpp @@ -2067,8 +2067,12 @@ bool QQuickItemPrivate::canAcceptTabFocus(QQuickItem *item) if (role == QAccessible::EditableText || role == QAccessible::Table || role == QAccessible::List - || role == QAccessible::SpinBox) + || role == QAccessible::SpinBox) { result = true; + } else if (role == QAccessible::ComboBox) { + QAccessibleInterface *iface = QAccessible::queryAccessibleInterface(item); + return iface->state().editable; + } } #endif -- cgit v1.2.3