diff --git a/src/plugins/qmldesigner/designercore/exceptions/exception.cpp b/src/plugins/qmldesigner/designercore/exceptions/exception.cpp index c00b52f024697898dea04f6a78e92f1ed7188302..29d820683d754c2bbf093901b7e7acdddf93851b 100644 --- a/src/plugins/qmldesigner/designercore/exceptions/exception.cpp +++ b/src/plugins/qmldesigner/designercore/exceptions/exception.cpp @@ -39,6 +39,13 @@ #include <QCoreApplication> #include <QMessageBox> +static void showAsyncWarning(const QString &title, const QString &desciption) +{ + QMessageBox *messageBox = new QMessageBox(QMessageBox::Warning, title, desciption, QMessageBox::Ok, Core::ICore::dialogParent()); + messageBox->setAttribute(Qt::WA_DeleteOnClose); + messageBox->setModal(true); + messageBox->show(); +} /*! \defgroup CoreExceptions @@ -156,7 +163,7 @@ QString Exception::description() const void Exception::showException(const QString &title) const { QString t = title.isEmpty() ? QCoreApplication::translate("QmlDesigner", "Error") : title; - QMessageBox::warning(Core::ICore::dialogParent(), t, description()); + showAsyncWarning(t, description()); } /*!