From daff5f2988cef31442629a48c3b3088abf01837a Mon Sep 17 00:00:00 2001 From: Frederik Gladhorn Date: Fri, 3 Jan 2014 10:14:12 +0100 Subject: Accessibility: mark more items as focusable MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Change-Id: I8b5189bdf46305ad11f2dd1e689423152e542dcf Reviewed-by: Jan Arve Sæther --- src/plugins/accessible/quick/qaccessiblequickitem.cpp | 18 +++++++++++++++++- 1 file changed, 17 insertions(+), 1 deletion(-) (limited to 'src/plugins') diff --git a/src/plugins/accessible/quick/qaccessiblequickitem.cpp b/src/plugins/accessible/quick/qaccessiblequickitem.cpp index d0c028b272..9e8c2a6020 100644 --- a/src/plugins/accessible/quick/qaccessiblequickitem.cpp +++ b/src/plugins/accessible/quick/qaccessiblequickitem.cpp @@ -154,8 +154,13 @@ QAccessible::State QAccessibleQuickItem::state() const { QAccessible::State state; - if (item()->hasActiveFocus()) + if (item()->hasActiveFocus()) { + state.focusable = true; state.focused = true; + } + + if (item()->activeFocusOnTab()) + state.focusable = true; if (!item()->window() || !item()->window()->isVisible() ||!item()->isVisible() || qFuzzyIsNull(item()->opacity())) state.invisible = true; @@ -163,6 +168,7 @@ QAccessible::State QAccessibleQuickItem::state() const QAccessible::Role r = role(); switch (r) { case QAccessible::Button: { + state.focusable = true; QVariant checkable = item()->property("checkable"); if (!checkable.toBool()) break; @@ -170,10 +176,20 @@ QAccessible::State QAccessibleQuickItem::state() const } case QAccessible::CheckBox: case QAccessible::RadioButton: { + state.focusable = true; state.checkable = true; state.checked = item()->property("checked").toBool(); break; } + case QAccessible::MenuItem: + case QAccessible::PageTab: + case QAccessible::EditableText: + case QAccessible::SpinBox: + case QAccessible::ComboBox: + case QAccessible::Terminal: + case QAccessible::ScrollBar: + state.focusable = true; + break; default: break; } -- cgit v1.2.3