diff --git a/src/plugins/qmldesigner/components/contentlibrary/contentlibrarymaterialsmodel.cpp b/src/plugins/qmldesigner/components/contentlibrary/contentlibrarymaterialsmodel.cpp index c25873c77fa..e5ee371002e 100644 --- a/src/plugins/qmldesigner/components/contentlibrary/contentlibrarymaterialsmodel.cpp +++ b/src/plugins/qmldesigner/components/contentlibrary/contentlibrarymaterialsmodel.cpp @@ -332,14 +332,14 @@ void ContentLibraryMaterialsModel::setSearchText(const QString &searchText) m_searchText = lowerSearchText; - bool catVisibilityChanged = false; - for (ContentLibraryMaterialsCategory *cat : std::as_const(m_bundleCategories)) - catVisibilityChanged |= cat->filter(m_searchText); + for (int i = 0; i < m_bundleCategories.size(); ++i) { + ContentLibraryMaterialsCategory *cat = m_bundleCategories.at(i); + bool catVisibilityChanged = cat->filter(m_searchText); + if (catVisibilityChanged) + emit dataChanged(index(i), index(i), {roleNames().keys("bundleCategoryVisible")}); + } updateIsEmpty(); - - if (catVisibilityChanged) - resetModel(); } void ContentLibraryMaterialsModel::updateImportedState(const QStringList &importedMats) diff --git a/src/plugins/qmldesigner/components/contentlibrary/contentlibrarytexturesmodel.cpp b/src/plugins/qmldesigner/components/contentlibrary/contentlibrarytexturesmodel.cpp index 9026d944dab..319ca2686f2 100644 --- a/src/plugins/qmldesigner/components/contentlibrary/contentlibrarytexturesmodel.cpp +++ b/src/plugins/qmldesigner/components/contentlibrary/contentlibrarytexturesmodel.cpp @@ -225,15 +225,14 @@ void ContentLibraryTexturesModel::setSearchText(const QString &searchText) m_searchText = lowerSearchText; - bool catVisibilityChanged = false; - - for (ContentLibraryTexturesCategory *cat : std::as_const(m_bundleCategories)) - catVisibilityChanged |= cat->filter(m_searchText); + for (int i = 0; i < m_bundleCategories.size(); ++i) { + ContentLibraryTexturesCategory *cat = m_bundleCategories.at(i); + bool catVisibilityChanged = cat->filter(m_searchText); + if (catVisibilityChanged) + emit dataChanged(index(i), index(i), {roleNames().keys("bundleCategoryVisible")}); + } updateIsEmpty(); - - if (catVisibilityChanged) - resetModel(); } void ContentLibraryTexturesModel::resetModel()