diff options
author | Frederik Gladhorn <frederik.gladhorn@nokia.com> | 2012-03-05 16:56:55 +0100 |
---|---|---|
committer | Qt by Nokia <qt-info@nokia.com> | 2012-03-07 00:03:10 +0100 |
commit | 1c438f104815e670afd94bfb396922dae09e7dcd (patch) | |
tree | 6d42a976bf4d376fc9a55b1357716cc69ec1ff3e /src | |
parent | 53bbea232830af3f056cd8253c4ff4dd33f525c7 (diff) |
Fix off by one in updateAccessibility.
Now that indexOfChild is 0-based, the update notifications should follow.
Change-Id: I5e0303516d503d5e23061df5894b2428c00da2ce
Reviewed-by: Jan-Arve Sæther <jan-arve.saether@nokia.com>
Reviewed-by: Frederik Gladhorn <frederik.gladhorn@nokia.com>
Diffstat (limited to 'src')
-rw-r--r-- | src/plugins/platforms/windows/qwindowsaccessibility.cpp | 14 | ||||
-rw-r--r-- | src/widgets/widgets/qmenu.cpp | 2 | ||||
-rw-r--r-- | src/widgets/widgets/qmenubar.cpp | 1 | ||||
-rw-r--r-- | src/widgets/widgets/qtabbar.cpp | 4 |
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); |