tests/auto/qlistwidget/tst_qlistwidget.cpp
changeset 30 5dc02b23752f
parent 18 2f34d5167611
equal deleted inserted replaced
29:b72c6db6890b 30:5dc02b23752f
   130     void insertUnchanged();
   130     void insertUnchanged();
   131     void setSortingEnabled();
   131     void setSortingEnabled();
   132     void task199503_crashWhenCleared();
   132     void task199503_crashWhenCleared();
   133     void task217070_scrollbarsAdjusted();
   133     void task217070_scrollbarsAdjusted();
   134     void task258949_keypressHangup();
   134     void task258949_keypressHangup();
       
   135     void QTBUG8086_currentItemChangedOnClick();
   135 
   136 
   136 
   137 
   137 protected slots:
   138 protected slots:
   138     void rowsAboutToBeInserted(const QModelIndex &parent, int first, int last)
   139     void rowsAboutToBeInserted(const QModelIndex &parent, int first, int last)
   139         { modelChanged(RowsAboutToBeInserted, parent, first, last); }
   140         { modelChanged(RowsAboutToBeInserted, parent, first, last); }
  1607     QTest::keyPress(&lw, '1'); //this used to freeze
  1608     QTest::keyPress(&lw, '1'); //this used to freeze
  1608     QTest::qWait(30);
  1609     QTest::qWait(30);
  1609     QCOMPARE(lw.currentIndex(), lw.model()->index(0,0));
  1610     QCOMPARE(lw.currentIndex(), lw.model()->index(0,0));
  1610 }
  1611 }
  1611 
  1612 
       
  1613 void tst_QListWidget::QTBUG8086_currentItemChangedOnClick()
       
  1614 {
       
  1615     qRegisterMetaType<QListWidgetItem*>("QListWidgetItem*");
       
  1616     QWidget win;
       
  1617     QHBoxLayout layout(&win);
       
  1618     QListWidget list;
       
  1619     for (int i = 0 ; i < 4; ++i)
       
  1620         new QListWidgetItem(QString::number(i), &list);
       
  1621 
       
  1622     layout.addWidget(&list);
       
  1623 
       
  1624     QLineEdit edit;
       
  1625     layout.addWidget(&edit);
       
  1626 
       
  1627     edit.setFocus();
       
  1628     win.show();
       
  1629 
       
  1630     QSignalSpy spy(&list, SIGNAL(currentItemChanged(QListWidgetItem*, QListWidgetItem*)));
       
  1631 
       
  1632     QTest::qWaitForWindowShown(&win);
       
  1633 
       
  1634     QCOMPARE(spy.count(), 0);
       
  1635 
       
  1636     QTest::mouseClick(list.viewport(), Qt::LeftButton, 0, list.visualItemRect(list.item(2)).center());
       
  1637 
       
  1638     QCOMPARE(spy.count(), 1);
       
  1639 
       
  1640 }
       
  1641 
       
  1642 
  1612 QTEST_MAIN(tst_QListWidget)
  1643 QTEST_MAIN(tst_QListWidget)
  1613 #include "tst_qlistwidget.moc"
  1644 #include "tst_qlistwidget.moc"