diff options
author | Tim Jenssen <tim.jenssen@qt.io> | 2022-10-27 18:11:48 +0200 |
---|---|---|
committer | Tim Jenssen <tim.jenssen@qt.io> | 2022-10-28 08:02:55 +0000 |
commit | 564298bba5a4c830d8e14a9e59360c23ee6c5e0d (patch) | |
tree | aa6158b6d5fa08087c09b37874c842bbf37487e4 | |
parent | ad3169bedd3953941d1e6fd82c2db5e1385919ae (diff) |
qmldesigner: fix crash while switching modes
Task-number: QDS-7984
Change-Id: Ia1803ce062c3956390c12f0da5b86577593fd721
Reviewed-by: Mahmoud Badri <mahmoud.badri@qt.io>
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
Reviewed-by: Miikka Heikkinen <miikka.heikkinen@qt.io>
-rw-r--r-- | src/plugins/qmldesigner/components/materialbrowser/materialbrowserview.cpp | 7 |
1 files changed, 2 insertions, 5 deletions
diff --git a/src/plugins/qmldesigner/components/materialbrowser/materialbrowserview.cpp b/src/plugins/qmldesigner/components/materialbrowser/materialbrowserview.cpp index fcb52882f1..8993520537 100644 --- a/src/plugins/qmldesigner/components/materialbrowser/materialbrowserview.cpp +++ b/src/plugins/qmldesigner/components/materialbrowser/materialbrowserview.cpp @@ -302,7 +302,7 @@ void MaterialBrowserView::modelAttached(Model *model) // Project load is already very busy and may even trigger puppet reset, so let's wait a moment // before refreshing the model - QTimer::singleShot(1000, this, [this]() { + QTimer::singleShot(1000, model, [this]() { refreshModel(true); loadPropertyGroups(); // Needs the delay because it uses metaInfo }); @@ -310,9 +310,6 @@ void MaterialBrowserView::modelAttached(Model *model) void MaterialBrowserView::refreshModel(bool updateImages) { - if (!model() || !model()->nodeInstanceView()) - return; - ModelNode matLib = modelNodeForId(Constants::MATERIAL_LIB_ID); QList <ModelNode> materials; @@ -581,7 +578,7 @@ void MaterialBrowserView::customNotification(const AbstractView *view, const QSt if (idx != -1) m_widget->materialBrowserModel()->selectMaterial(idx); } else if (identifier == "refresh_material_browser") { - QTimer::singleShot(0, this, [this]() { + QTimer::singleShot(0, model(), [this]() { refreshModel(true); }); } else if (identifier == "delete_selected_material") { |