diff --git a/src/plugins/autotest/testresultdelegate.cpp b/src/plugins/autotest/testresultdelegate.cpp index 9bd01925848..c6401343b17 100644 --- a/src/plugins/autotest/testresultdelegate.cpp +++ b/src/plugins/autotest/testresultdelegate.cpp @@ -181,6 +181,12 @@ void TestResultDelegate::currentChanged(const QModelIndex ¤t, const QModel emit sizeHintChanged(previous); } +void TestResultDelegate::clearCache() +{ + m_lastProcessedIndex = QModelIndex(); + m_lastProcessedFont = QFont(); +} + void TestResultDelegate::recalculateTextLayout(const QModelIndex &index, const QString &output, const QFont &font, int width) const { diff --git a/src/plugins/autotest/testresultdelegate.h b/src/plugins/autotest/testresultdelegate.h index 7d94c76c18d..2161906a606 100644 --- a/src/plugins/autotest/testresultdelegate.h +++ b/src/plugins/autotest/testresultdelegate.h @@ -42,6 +42,7 @@ public: void paint(QPainter *painter, const QStyleOptionViewItem &option, const QModelIndex &index) const override; QSize sizeHint(const QStyleOptionViewItem &option, const QModelIndex &index) const override; void currentChanged(const QModelIndex ¤t, const QModelIndex &previous); + void clearCache(); private: void recalculateTextLayout(const QModelIndex &index, const QString &output, diff --git a/src/plugins/autotest/testresultspane.cpp b/src/plugins/autotest/testresultspane.cpp index 9f2f8431ea1..6324770ca89 100644 --- a/src/plugins/autotest/testresultspane.cpp +++ b/src/plugins/autotest/testresultspane.cpp @@ -275,6 +275,8 @@ int TestResultsPane::priorityInStatusBar() const void TestResultsPane::clearContents() { m_filterModel->clearTestResults(); + if (auto delegate = qobject_cast(m_treeView->itemDelegate())) + delegate->clearCache(); setIconBadgeNumber(0); navigateStateChanged(); m_summaryWidget->setVisible(false);