summaryrefslogtreecommitdiffstats
path: root/src/widgets/accessible/complexwidgets.cpp
diff options
context:
space:
mode:
authorQt Forward Merge Bot <qt_forward_merge_bot@qt-project.org>2019-12-27 01:00:05 +0100
committerAllan Sandfeld Jensen <allan.jensen@qt.io>2019-12-27 09:29:30 +0100
commit4054c0d6ed8bafe7ca68d981daf1be51a55fe6f1 (patch)
treeb4e000e7db3ef633983fab4dc1957721fd904657 /src/widgets/accessible/complexwidgets.cpp
parent3ea7caed6f949953706aaa6ce00d79aa8ca15a60 (diff)
parent25101f0984e86aa30f34773eb5b2025f58086b71 (diff)
Merge remote-tracking branch 'origin/5.14' into 5.15
Conflicts: .qmake.conf src/plugins/platforms/xcb/qxcbscreen.cpp src/widgets/accessible/qaccessiblewidget.cpp Change-Id: Ib3138e61ba7981610940509a7ff02ba2dd281bf0
Diffstat (limited to 'src/widgets/accessible/complexwidgets.cpp')
-rw-r--r--src/widgets/accessible/complexwidgets.cpp15
1 files changed, 14 insertions, 1 deletions
diff --git a/src/widgets/accessible/complexwidgets.cpp b/src/widgets/accessible/complexwidgets.cpp
index 4d9a629ab6..ce2ceac938 100644
--- a/src/widgets/accessible/complexwidgets.cpp
+++ b/src/widgets/accessible/complexwidgets.cpp
@@ -108,7 +108,10 @@ public:
s.invalid = true;
return s;
}
- return parent()->state();
+
+ QAccessible::State s = parent()->state();
+ s.focused = (m_index == m_parent->currentIndex());
+ return s;
}
QRect rect() const override {
if (!isValid())
@@ -216,6 +219,16 @@ QTabBar *QAccessibleTabBar::tabBar() const
return qobject_cast<QTabBar*>(object());
}
+QAccessibleInterface* QAccessibleTabBar::focusChild() const
+{
+ for (int i = 0; i < childCount(); ++i) {
+ if (child(i)->state().focused)
+ return child(i);
+ }
+
+ return nullptr;
+}
+
QAccessibleInterface* QAccessibleTabBar::child(int index) const
{
if (QAccessible::Id id = m_childInterfaces.value(index))