summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--src/plugins/platforms/windows/qwindowsaccessibility.cpp14
-rw-r--r--src/widgets/widgets/qmenu.cpp2
-rw-r--r--src/widgets/widgets/qmenubar.cpp1
-rw-r--r--src/widgets/widgets/qtabbar.cpp4
4 files changed, 9 insertions, 12 deletions
diff --git a/src/plugins/platforms/windows/qwindowsaccessibility.cpp b/src/plugins/platforms/windows/qwindowsaccessibility.cpp
index 1a8f593609..134b1c81ce 100644
--- a/src/plugins/platforms/windows/qwindowsaccessibility.cpp
+++ b/src/plugins/platforms/windows/qwindowsaccessibility.cpp
@@ -844,14 +844,12 @@ HRESULT STDMETHODCALLTYPE QWindowsAccessible::get_accChild(VARIANT varChildID, I
QPair<QObject*, int> ref = qAccessibleRecentSentEvents()->value(entry);
if (ref.first) {
acc = QAccessible::queryAccessibleInterface(ref.first);
- if (acc && ref.second) {
- if (ref.second) {
- QAccessibleInterface *res = acc->child(ref.second - 1);
- delete acc;
- if (!res)
- return E_INVALIDARG;
- acc = res;
- }
+ if (acc && ref.second >= 0) {
+ QAccessibleInterface *res = acc->child(ref.second);
+ delete acc;
+ if (!res)
+ return E_INVALIDARG;
+ acc = res;
}
}
} else {
diff --git a/src/widgets/widgets/qmenu.cpp b/src/widgets/widgets/qmenu.cpp
index 3fb2a6122c..fd030a5383 100644
--- a/src/widgets/widgets/qmenu.cpp
+++ b/src/widgets/widgets/qmenu.cpp
@@ -1075,7 +1075,7 @@ void QMenuPrivate::activateAction(QAction *action, QAction::ActionEvent action_e
if (action_e == QAction::Hover) {
#ifndef QT_NO_ACCESSIBILITY
if (QAccessible::isActive()) {
- int actionIndex = indexOf(action) + 1;
+ int actionIndex = indexOf(action);
QAccessible::updateAccessibility(QAccessibleEvent(QAccessible::Focus, q, actionIndex));
QAccessible::updateAccessibility(QAccessibleEvent(QAccessible::Selection, q, actionIndex));
}
diff --git a/src/widgets/widgets/qmenubar.cpp b/src/widgets/widgets/qmenubar.cpp
index 11f6592cc9..0efa6caebc 100644
--- a/src/widgets/widgets/qmenubar.cpp
+++ b/src/widgets/widgets/qmenubar.cpp
@@ -531,7 +531,6 @@ void QMenuBarPrivate::_q_actionHovered()
#ifndef QT_NO_ACCESSIBILITY
if (QAccessible::isActive()) {
int actionIndex = actions.indexOf(action);
- ++actionIndex;
QAccessible::updateAccessibility(QAccessibleEvent(QAccessible::Focus, q, actionIndex));
QAccessible::updateAccessibility(QAccessibleEvent(QAccessible::Selection, q, actionIndex));
}
diff --git a/src/widgets/widgets/qtabbar.cpp b/src/widgets/widgets/qtabbar.cpp
index ca94854d11..ce25a22847 100644
--- a/src/widgets/widgets/qtabbar.cpp
+++ b/src/widgets/widgets/qtabbar.cpp
@@ -1183,8 +1183,8 @@ void QTabBar::setCurrentIndex(int index)
d->layoutTab(index);
#ifndef QT_NO_ACCESSIBILITY
if (QAccessible::isActive()) {
- QAccessible::updateAccessibility(QAccessibleEvent(QAccessible::Focus, this, index + 1));
- QAccessible::updateAccessibility(QAccessibleEvent(QAccessible::Selection, this, index + 1));
+ QAccessible::updateAccessibility(QAccessibleEvent(QAccessible::Focus, this, index));
+ QAccessible::updateAccessibility(QAccessibleEvent(QAccessible::Selection, this, index));
}
#endif
emit currentChanged(index);