summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--src/gui/accessible/qaccessible.h1
-rw-r--r--src/gui/accessible/qaccessibleobject.cpp4
-rw-r--r--src/plugins/platforms/windows/qwindowsaccessibility.cpp4
-rw-r--r--src/widgets/accessible/qaccessiblewidget.cpp3
4 files changed, 2 insertions, 10 deletions
diff --git a/src/gui/accessible/qaccessible.h b/src/gui/accessible/qaccessible.h
index 89036281b8..2e502915a7 100644
--- a/src/gui/accessible/qaccessible.h
+++ b/src/gui/accessible/qaccessible.h
@@ -306,7 +306,6 @@ public:
enum RelationFlag {
Unrelated = 0x00000000,
- Self = 0x00000001,
FocusChild = 0x00010000,
Label = 0x00020000,
Labelled = 0x00040000,
diff --git a/src/gui/accessible/qaccessibleobject.cpp b/src/gui/accessible/qaccessibleobject.cpp
index c9b01c7050..313bff35a5 100644
--- a/src/gui/accessible/qaccessibleobject.cpp
+++ b/src/gui/accessible/qaccessibleobject.cpp
@@ -231,10 +231,6 @@ QAccessible::Relation QAccessibleApplication::relationTo(const QAccessibleInterf
if (!o)
return QAccessible::Unrelated;
- if(o == object()) {
- return QAccessible::Self;
- }
-
return QAccessible::Unrelated;
}
diff --git a/src/plugins/platforms/windows/qwindowsaccessibility.cpp b/src/plugins/platforms/windows/qwindowsaccessibility.cpp
index fdf6c9116e..4cc08c7f76 100644
--- a/src/plugins/platforms/windows/qwindowsaccessibility.cpp
+++ b/src/plugins/platforms/windows/qwindowsaccessibility.cpp
@@ -694,7 +694,7 @@ HRESULT STDMETHODCALLTYPE QWindowsAccessible::accNavigate(long navDir, VARIANT v
case NAVDIR_LEFT:
case NAVDIR_RIGHT:
if (QAccessibleInterface *pIface = accessible->parent()) {
-
+ const int indexOfOurself = pIface->indexOfChild(accessible);
QRect startg = accessible->rect();
QPoint startc = startg.center();
QAccessibleInterface *candidate = 0;
@@ -704,7 +704,7 @@ HRESULT STDMETHODCALLTYPE QWindowsAccessible::accNavigate(long navDir, VARIANT v
QAccessibleInterface *sibling = 0;
sibling = pIface->child(i);
Q_ASSERT(sibling);
- if ((accessible->relationTo(sibling) & QAccessible::Self) || sibling->state().invisible) {
+ if (i == indexOfOurself || sibling->state().invisible) {
//ignore ourself and invisible siblings
delete sibling;
continue;
diff --git a/src/widgets/accessible/qaccessiblewidget.cpp b/src/widgets/accessible/qaccessiblewidget.cpp
index f4b73b5d3c..67b9f17020 100644
--- a/src/widgets/accessible/qaccessiblewidget.cpp
+++ b/src/widgets/accessible/qaccessiblewidget.cpp
@@ -361,9 +361,6 @@ QAccessible::Relation QAccessibleWidget::relationTo(const QAccessibleInterface *
if (inverse & QAccessible::Label)
relation |= QAccessible::Labelled;
- if(o == object())
- relation |= QAccessible::Self;
-
return relation;
}