diff options
author | Frederik Gladhorn <frederik.gladhorn@nokia.com> | 2012-01-09 16:06:23 +0100 |
---|---|---|
committer | Qt by Nokia <qt-info@nokia.com> | 2012-01-12 15:12:43 +0100 |
commit | be1534e5df82561842d1847f90f1cab9462e10ef (patch) | |
tree | bfafee21b1039b4dedadbe6fd8709fe8d252828e | |
parent | 612e8ea758891d00c6daf7b15e48a702f713a98d (diff) |
Accessibility: indexOfChild is 0-based.
Also test for it to work.
Change-Id: I3be913984e2dddce241b538c7801f3376acdd1fa
Reviewed-by: Jan-Arve Sæther <jan-arve.saether@nokia.com>
4 files changed, 9 insertions, 6 deletions
diff --git a/src/plugins/accessible/qtquick1/qaccessibledeclarativeview.cpp b/src/plugins/accessible/qtquick1/qaccessibledeclarativeview.cpp index 25034a2532..765e00aeec 100644 --- a/src/plugins/accessible/qtquick1/qaccessibledeclarativeview.cpp +++ b/src/plugins/accessible/qtquick1/qaccessibledeclarativeview.cpp @@ -80,7 +80,7 @@ int QAccessibleDeclarativeView::indexOfChild(const QAccessibleInterface *iface) if (iface) { QDeclarativeItem *declarativeRoot = m_view->accessibleRootItem(); if (declarativeRoot == iface->object()) - return 1; + return 0; } return -1; } diff --git a/src/plugins/accessible/quick/qaccessiblequickitem.cpp b/src/plugins/accessible/quick/qaccessiblequickitem.cpp index 10442b275e..fd087c4e1e 100644 --- a/src/plugins/accessible/quick/qaccessiblequickitem.cpp +++ b/src/plugins/accessible/quick/qaccessiblequickitem.cpp @@ -135,10 +135,7 @@ int QAccessibleQuickItem::navigate(QAccessible::RelationFlag rel, int entry, QAc int QAccessibleQuickItem::indexOfChild(const QAccessibleInterface *iface) const { QList<QQuickItem*> kids = childItems(); - int idx = kids.indexOf(static_cast<QQuickItem*>(iface->object())); - if (idx != -1) - ++idx; - return idx; + return kids.indexOf(static_cast<QQuickItem*>(iface->object())); } QList<QQuickItem *> QAccessibleQuickItem::childItems() const diff --git a/src/plugins/accessible/quick/qaccessiblequickview.cpp b/src/plugins/accessible/quick/qaccessiblequickview.cpp index d15e01d96c..da8c4242d7 100644 --- a/src/plugins/accessible/quick/qaccessiblequickview.cpp +++ b/src/plugins/accessible/quick/qaccessiblequickview.cpp @@ -158,7 +158,7 @@ int QAccessibleQuickView::indexOfChild(const QAccessibleInterface *iface) const if (iface) { QQuickItem *declarativeRoot = view()->rootObject(); if (declarativeRoot == iface->object()) - return 1; + return 0; } return -1; diff --git a/tests/auto/declarative/qdeclarativeaccessibility/tst_qdeclarativeaccessibility.cpp b/tests/auto/declarative/qdeclarativeaccessibility/tst_qdeclarativeaccessibility.cpp index a20094de61..0688edf698 100644 --- a/tests/auto/declarative/qdeclarativeaccessibility/tst_qdeclarativeaccessibility.cpp +++ b/tests/auto/declarative/qdeclarativeaccessibility/tst_qdeclarativeaccessibility.cpp @@ -382,6 +382,7 @@ void tst_QDeclarativeAccessibility::basicPropertiesTest() QCOMPARE(item->childCount(), 2); QCOMPARE(item->rect().size(), QSize(400, 400)); QCOMPARE(item->role(), QAccessible::Pane); + QCOMPARE(iface->indexOfChild(item.data()), 0); QAI text = QAI(item->child(0)); QVERIFY(text.data()); @@ -392,6 +393,7 @@ void tst_QDeclarativeAccessibility::basicPropertiesTest() QCOMPARE(text->rect().x(), item->rect().x() + 100); QCOMPARE(text->rect().y(), item->rect().y() + 20); QCOMPARE(text->role(), QAccessible::StaticText); + QCOMPARE(item->indexOfChild(text.data()), 0); QAI text2 = QAI(item->child(1)); QVERIFY(text2.data()); @@ -402,6 +404,10 @@ void tst_QDeclarativeAccessibility::basicPropertiesTest() QCOMPARE(text2->rect().x(), item->rect().x() + 100); QCOMPARE(text2->rect().y(), item->rect().y() + 40); QCOMPARE(text2->role(), QAccessible::StaticText); + QCOMPARE(item->indexOfChild(text2.data()), 1); + + QCOMPARE(iface->indexOfChild(text2.data()), -1); + QCOMPARE(text2->indexOfChild(item.data()), -1); delete canvas; } |