aboutsummaryrefslogtreecommitdiffstats
path: root/src/plugins/qmldesigner/components/itemlibrary/itemlibrarywidget.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/plugins/qmldesigner/components/itemlibrary/itemlibrarywidget.cpp')
-rw-r--r--src/plugins/qmldesigner/components/itemlibrary/itemlibrarywidget.cpp21
1 files changed, 16 insertions, 5 deletions
diff --git a/src/plugins/qmldesigner/components/itemlibrary/itemlibrarywidget.cpp b/src/plugins/qmldesigner/components/itemlibrary/itemlibrarywidget.cpp
index caf0663dce..6dee5a6d3a 100644
--- a/src/plugins/qmldesigner/components/itemlibrary/itemlibrarywidget.cpp
+++ b/src/plugins/qmldesigner/components/itemlibrary/itemlibrarywidget.cpp
@@ -384,7 +384,19 @@ void ItemLibraryWidget::updateModel()
{
QTC_ASSERT(m_itemLibraryModel, return);
+ if (m_compressionTimer.isActive()) {
+ m_updateRetry = false;
+ m_compressionTimer.stop();
+ }
+
m_itemLibraryModel->update(m_itemLibraryInfo.data(), m_model.data());
+
+ if (m_itemLibraryModel->rowCount() == 0 && !m_updateRetry) {
+ m_updateRetry = true; // Only retry once to avoid endless loops
+ m_compressionTimer.start();
+ } else {
+ m_updateRetry = false;
+ }
updateImports();
updateSearch();
}
@@ -518,11 +530,10 @@ void ItemLibraryWidget::addResources()
static QString lastDir;
const QString currentDir = lastDir.isEmpty() ? document->fileName().parentDir().toString() : lastDir;
- const auto fileNames = QFileDialog::getOpenFileNames(Core::ICore::mainWindow(),
- tr("Add Assets"),
- currentDir,
- filters.join(";;"));
-
+ const auto fileNames = QFileDialog::getOpenFileNames(Core::ICore::dialogParent(),
+ tr("Add Assets"),
+ currentDir,
+ filters.join(";;"));
if (!fileNames.isEmpty())
lastDir = QFileInfo(fileNames.first()).absolutePath();