Remove all references to QAccessible::(Covers|Covered)
authorJan-Arve Saether <jan-arve.saether@nokia.com>
Wed, 18 Jan 2012 13:02:23 +0000 (14:02 +0100)
committerQt by Nokia <qt-info@nokia.com>
Wed, 18 Jan 2012 23:17:38 +0000 (00:17 +0100)
These were not used in any bridges, and none of the bridges
(MSAA, Cocoa, AT-SPI/IA2) can hardly make use of this information.

Change-Id: If3cad6b6c1928535dd932f46c9ec6883a4a19c76
Reviewed-by: Frederik Gladhorn <frederik.gladhorn@nokia.com>
src/gui/accessible/qaccessible.h
src/widgets/accessible/qaccessiblewidget.cpp
tests/auto/other/qaccessibility/tst_qaccessibility.cpp

index bafd3a8..8903628 100644 (file)
@@ -307,11 +307,6 @@ public:
     enum RelationFlag {
         Unrelated     = 0x00000000,
         Self          = 0x00000001,
-
-        Covers        = 0x00001000,
-        Covered       = 0x00002000,
-        GeometryMask  = 0x0000ff00,
-
         FocusChild    = 0x00010000,
         Label         = 0x00020000,
         Labelled      = 0x00040000,
index ae09b01..f4b73b5 100644 (file)
@@ -361,34 +361,8 @@ QAccessible::Relation QAccessibleWidget::relationTo(const QAccessibleInterface *
     if (inverse & QAccessible::Label)
         relation |= QAccessible::Labelled;
 
-    if(o == object()) {
-        return relation | QAccessible::Self;
-    }
-
-    QObject *parent = object()->parent();
-    if (o->parent() == parent) {
-        QAccessibleInterface *sibIface = QAccessible::queryAccessibleInterface(o);
-        Q_ASSERT(sibIface);
-        QRect wg = rect();
-        QRect sg = sibIface->rect();
-        if (wg.intersects(sg)) {
-            QAccessibleInterface *pIface = 0;
-            pIface = sibIface->parent();
-            if (pIface && !(sibIface->state().invisible | state().invisible)) {
-                int wi = pIface->indexOfChild(this);
-                int si = pIface->indexOfChild(sibIface);
-
-                if (wi > si)
-                    relation |= QAccessible::Covers;
-                else
-                    relation |= QAccessible::Covered;
-            }
-            delete pIface;
-        }
-        delete sibIface;
-
-        return relation;
-    }
+    if(o == object())
+        relation |= QAccessible::Self;
 
     return relation;
 }
@@ -422,69 +396,6 @@ int QAccessibleWidget::navigate(QAccessible::RelationFlag relation, int entry,
     QObject *targetObject = 0;
 
     switch (relation) {
-    case QAccessible::Covers:
-        if (entry > 0) {
-            QAccessibleInterface *pIface = parent();
-            if (!pIface)
-                return -1;
-
-            QRect r = rect();
-            int sibCount = pIface->childCount();
-            QAccessibleInterface *sibling = 0;
-            // FIXME: this code looks very suspicious
-            // why start at this index?
-            for (int i = pIface->indexOfChild(this) + 2; i <= sibCount && entry; ++i) {
-                sibling = pIface->child(i - 1);
-                if (!sibling || (sibling->state().invisible)) {
-                    delete sibling;
-                    sibling = 0;
-                    continue;
-                }
-                if (sibling->rect().intersects(r))
-                    --entry;
-                if (!entry)
-                    break;
-                delete sibling;
-                sibling = 0;
-            }
-            delete pIface;
-            *target = sibling;
-            if (*target)
-                return 0;
-        }
-        break;
-    case QAccessible::Covered:
-        if (entry > 0) {
-            QAccessibleInterface *pIface = QAccessible::queryAccessibleInterface(parentObject());
-            if (!pIface)
-                return -1;
-
-            QRect r = rect();
-            int index = pIface->indexOfChild(this);
-            QAccessibleInterface *sibling = 0;
-            // FIXME: why end at index?
-            for (int i = 0; i < index && entry; ++i) {
-                sibling = pIface->child(i);
-                Q_ASSERT(sibling);
-                if (!sibling || (sibling->state().invisible)) {
-                    delete sibling;
-                    sibling = 0;
-                    continue;
-                }
-                if (sibling->rect().intersects(r))
-                    --entry;
-                if (!entry)
-                    break;
-                delete sibling;
-                sibling = 0;
-            }
-            delete pIface;
-            *target = sibling;
-            if (*target)
-                return 0;
-        }
-        break;
-
     // Logical
     case QAccessible::FocusChild:
         {
index 90ab5b4..62bc043 100644 (file)
@@ -233,7 +233,6 @@ private slots:
     void statesStructTest();
     void navigateHierarchy();
     void sliderTest();
-    void navigateCovered();
     void textAttributes();
     void hideShowTest();
 
@@ -515,112 +514,6 @@ void tst_QAccessibility::sliderTest()
     QTestAccessibility::clearEvents();
 }
 
-void tst_QAccessibility::navigateCovered()
-{
-    {
-    QWidget *w = new QWidget(0);
-    w->setObjectName(QString("Harry"));
-    QWidget *w1 = new QWidget(w);
-    w1->setObjectName(QString("1"));
-    QWidget *w2 = new QWidget(w);
-    w2->setObjectName(QString("2"));
-    w->show();
-#if defined(Q_OS_UNIX)
-    QCoreApplication::processEvents();
-    QTest::qWait(100);
-#endif
-
-    w->setFixedSize(6, 6);
-    w1->setFixedSize(5, 5);
-    w2->setFixedSize(5, 5);
-    w2->move(0, 0);
-    w1->raise();
-
-    QAccessibleInterface *iface1 = QAccessible::queryAccessibleInterface(w1);
-    QVERIFY(iface1 != 0);
-    QVERIFY(iface1->isValid());
-    QAccessibleInterface *iface2 = QAccessible::queryAccessibleInterface(w2);
-    QVERIFY(iface2 != 0);
-    QVERIFY(iface2->isValid());
-    QAccessibleInterface *iface3 = 0;
-
-    QCOMPARE(iface1->navigate(QAccessible::Covers, -42, &iface3), -1);
-    QVERIFY(iface3 == 0);
-    QCOMPARE(iface1->navigate(QAccessible::Covers, 0, &iface3), -1);
-    QVERIFY(iface3 == 0);
-    QCOMPARE(iface1->navigate(QAccessible::Covers, 2, &iface3), -1);
-    QVERIFY(iface3 == 0);
-
-    for (int loop = 0; loop < 2; ++loop) {
-        for (int x = 0; x < w->width(); ++x) {
-            for (int y = 0; y < w->height(); ++y) {
-                w1->move(x, y);
-                if (w1->geometry().intersects(w2->geometry())) {
-                    QVERIFY(iface1->relationTo(iface2) & QAccessible::Covers);
-                    QVERIFY(iface2->relationTo(iface1) & QAccessible::Covered);
-                    QCOMPARE(iface1->navigate(QAccessible::Covered, 1, &iface3), 0);
-                    QVERIFY(iface3 != 0);
-                    QVERIFY(iface3->isValid());
-                    QCOMPARE(iface3->object(), iface2->object());
-                    delete iface3; iface3 = 0;
-                    QCOMPARE(iface2->navigate(QAccessible::Covers, 1, &iface3), 0);
-                    QVERIFY(iface3 != 0);
-                    QVERIFY(iface3->isValid());
-                    QCOMPARE(iface3->object(), iface1->object());
-                    delete iface3; iface3 = 0;
-                } else {
-                    QVERIFY(!(iface1->relationTo(iface2) & QAccessible::Covers));
-                    QVERIFY(!(iface2->relationTo(iface1) & QAccessible::Covered));
-                    QCOMPARE(iface1->navigate(QAccessible::Covered, 1, &iface3), -1);
-                    QVERIFY(iface3 == 0);
-                    QCOMPARE(iface1->navigate(QAccessible::Covers, 1, &iface3), -1);
-                    QVERIFY(iface3 == 0);
-                    QCOMPARE(iface2->navigate(QAccessible::Covered, 1, &iface3), -1);
-                    QVERIFY(iface3 == 0);
-                    QCOMPARE(iface2->navigate(QAccessible::Covers, 1, &iface3), -1);
-                    QVERIFY(iface3 == 0);
-                }
-            }
-        }
-        if (!loop) {
-            // switch children for second loop
-            w2->raise();
-            QAccessibleInterface *temp = iface1;
-            iface1 = iface2;
-            iface2 = temp;
-        }
-    }
-    delete iface1; iface1 = 0;
-    delete iface2; iface2 = 0;
-    iface1 = QAccessible::queryAccessibleInterface(w1);
-    QVERIFY(iface1 != 0);
-    QVERIFY(iface1->isValid());
-    iface2 = QAccessible::queryAccessibleInterface(w2);
-    QVERIFY(iface2 != 0);
-    QVERIFY(iface2->isValid());
-
-    w1->move(0,0);
-    w2->move(0,0);
-    w1->raise();
-    QVERIFY(iface1->relationTo(iface2) & QAccessible::Covers);
-    QVERIFY(iface2->relationTo(iface1) & QAccessible::Covered);
-    QVERIFY(!iface1->state().invisible);
-    w1->hide();
-    QVERIFY(iface1->state().invisible);
-    QVERIFY(!(iface1->relationTo(iface2) & QAccessible::Covers));
-    QVERIFY(!(iface2->relationTo(iface1) & QAccessible::Covered));
-    QCOMPARE(iface2->navigate(QAccessible::Covered, 1, &iface3), -1);
-    QVERIFY(iface3 == 0);
-    QCOMPARE(iface1->navigate(QAccessible::Covers, 1, &iface3), -1);
-    QVERIFY(iface3 == 0);
-
-    delete iface1; iface1 = 0;
-    delete iface2; iface2 = 0;
-    delete w;
-    }
-    QTestAccessibility::clearEvents();
-}
-
 void tst_QAccessibility::navigateHierarchy()
 {
     {