mirror of
https://github.com/overte-org/overte.git
synced 2025-08-14 03:21:19 +02:00
Fix crashing if manually close Clara download status message box
This commit is contained in:
parent
7ebdc6d387
commit
fa9aef8b22
2 changed files with 18 additions and 1 deletions
|
@ -5909,6 +5909,7 @@ void Application::addAssetToWorldInfo(QString modelName, QString infoText) {
|
|||
if (!_addAssetToWorldMessageBox) {
|
||||
_addAssetToWorldMessageBox = DependencyManager::get<OffscreenUi>()->createMessageBox(OffscreenUi::ICON_INFORMATION,
|
||||
"Downloading Asset", "", QMessageBox::NoButton, QMessageBox::NoButton);
|
||||
connect(_addAssetToWorldMessageBox, SIGNAL(destroyed()), this, SLOT(onAssetToWorldMessageBoxClosed()));
|
||||
}
|
||||
|
||||
_addAssetToWorldMessageBox->setProperty("text", "\n" + infoText);
|
||||
|
@ -5964,6 +5965,7 @@ void Application::addAssetToWorldInfoTimeout() {
|
|||
if (_addAssetToWorldInfoKeys.length() > 0) {
|
||||
_addAssetToWorldMessageBox->setProperty("text", "\n" + _addAssetToWorldInfoMessages.last());
|
||||
} else {
|
||||
disconnect(_addAssetToWorldMessageBox);
|
||||
_addAssetToWorldMessageBox->setVisible(false);
|
||||
_addAssetToWorldMessageBox->deleteLater();
|
||||
_addAssetToWorldMessageBox = nullptr;
|
||||
|
@ -5991,6 +5993,7 @@ void Application::addAssetToWorldError(QString modelName, QString errorText) {
|
|||
if (!_addAssetToWorldMessageBox) {
|
||||
_addAssetToWorldMessageBox = DependencyManager::get<OffscreenUi>()->createMessageBox(OffscreenUi::ICON_INFORMATION,
|
||||
"Downloading Asset", "", QMessageBox::NoButton, QMessageBox::NoButton);
|
||||
connect(_addAssetToWorldMessageBox, SIGNAL(destroyed()), this, SLOT(onAssetToWorldMessageBoxClosed()));
|
||||
}
|
||||
|
||||
_addAssetToWorldMessageBox->setProperty("text", "\n" + errorText);
|
||||
|
@ -6008,9 +6011,11 @@ void Application::addAssetToWorldErrorTimeout() {
|
|||
If list is not empty, display message from last entry.
|
||||
If list is empty, close the message box.
|
||||
*/
|
||||
|
||||
if (_addAssetToWorldInfoKeys.length() > 0) {
|
||||
_addAssetToWorldMessageBox->setProperty("text", "\n" + _addAssetToWorldInfoMessages.last());
|
||||
} else {
|
||||
disconnect(_addAssetToWorldMessageBox);
|
||||
_addAssetToWorldMessageBox->setVisible(false);
|
||||
_addAssetToWorldMessageBox->deleteLater();
|
||||
_addAssetToWorldMessageBox = nullptr;
|
||||
|
@ -6022,8 +6027,9 @@ void Application::addAssetToWorldMessageClose() {
|
|||
// Clear messages, e.g., if Interface is being closed or domain changes.
|
||||
|
||||
/*
|
||||
Call if application is shutting down.
|
||||
Call if user manually closes message box.
|
||||
Call if domain changes.
|
||||
Call if application is shutting down.
|
||||
|
||||
Stop timers.
|
||||
Close the message box if open.
|
||||
|
@ -6034,6 +6040,7 @@ void Application::addAssetToWorldMessageClose() {
|
|||
_addAssetToWorldErrorTimer.stop();
|
||||
|
||||
if (_addAssetToWorldMessageBox) {
|
||||
disconnect(_addAssetToWorldMessageBox);
|
||||
_addAssetToWorldMessageBox->setVisible(false);
|
||||
_addAssetToWorldMessageBox->deleteLater();
|
||||
_addAssetToWorldMessageBox = nullptr;
|
||||
|
@ -6043,6 +6050,15 @@ void Application::addAssetToWorldMessageClose() {
|
|||
_addAssetToWorldInfoMessages.clear();
|
||||
}
|
||||
|
||||
void Application::onAssetToWorldMessageBoxClosed() {
|
||||
// User manually closed message box.
|
||||
|
||||
qInfo(interfaceapp) << "User manually closed download status message box";
|
||||
disconnect(_addAssetToWorldMessageBox);
|
||||
_addAssetToWorldMessageBox = nullptr;
|
||||
addAssetToWorldMessageClose();
|
||||
}
|
||||
|
||||
|
||||
void Application::handleUnzip(QString zipFile, QString unzipFile, bool autoAdd) {
|
||||
if (autoAdd) {
|
||||
|
|
|
@ -417,6 +417,7 @@ private slots:
|
|||
|
||||
void addAssetToWorldCheckModelSize();
|
||||
|
||||
void onAssetToWorldMessageBoxClosed();
|
||||
void addAssetToWorldInfoTimeout();
|
||||
void addAssetToWorldErrorTimeout();
|
||||
|
||||
|
|
Loading…
Reference in a new issue