aboutsummaryrefslogtreecommitdiffstats
path: root/src/plugins
diff options
context:
space:
mode:
authorFrederik Gladhorn <frederik.gladhorn@digia.com>2014-01-03 10:14:12 +0100
committerThe Qt Project <gerrit-noreply@qt-project.org>2014-01-06 14:39:48 +0100
commitdaff5f2988cef31442629a48c3b3088abf01837a (patch)
treedc527ed5f07f77751c1236a38a036e8dcc1e07bb /src/plugins
parent3147d383821f4da70e7ce70576458a3111e8c84d (diff)
Accessibility: mark more items as focusable
Change-Id: I8b5189bdf46305ad11f2dd1e689423152e542dcf Reviewed-by: Jan Arve Sæther <jan-arve.saether@digia.com>
Diffstat (limited to 'src/plugins')
-rw-r--r--src/plugins/accessible/quick/qaccessiblequickitem.cpp18
1 files changed, 17 insertions, 1 deletions
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;
}