Git: Use Core::AsynchronousMessageBox

Event loops can lead to crashes so it is better to use a dialog which has
not it's own event loop.

Change-Id: Ib703aad698f270b1fa491731adee131ad8b081e6
Reviewed-by: Orgad Shaneh <orgads@gmail.com>
This commit is contained in:
Marco Bubke
2014-11-25 11:45:43 +01:00
committed by Orgad Shaneh
parent e9a6e99011
commit cda1b6d246
4 changed files with 13 additions and 12 deletions

View File

@@ -63,6 +63,7 @@
#include <coreplugin/vcsmanager.h>
#include <coreplugin/coreconstants.h>
#include <coreplugin/messagebox.h>
#include <utils/qtcassert.h>
#include <utils/parameteraction.h>
@@ -81,7 +82,6 @@
#include <QAction>
#include <QFileDialog>
#include <QMessageBox>
#include <QScopedPointer>
#ifdef WITH_TESTS
@@ -1186,19 +1186,18 @@ void GitPlugin::cleanRepository(const QString &directory)
const bool gotFiles = m_gitClient->synchronousCleanList(directory, &files, &ignoredFiles, &errorMessage);
QApplication::restoreOverrideCursor();
QWidget *parent = ICore::mainWindow();
if (!gotFiles) {
QMessageBox::warning(parent, tr("Unable to retrieve file list"), errorMessage);
Core::AsynchronousMessageBox::warning(tr("Unable to retrieve file list"), errorMessage);
return;
}
if (files.isEmpty() && ignoredFiles.isEmpty()) {
QMessageBox::information(parent, tr("Repository Clean"),
tr("The repository is clean."));
Core::AsynchronousMessageBox::information(tr("Repository Clean"),
tr("The repository is clean."));
return;
}
// Show in dialog
CleanDialog dialog(parent);
CleanDialog dialog(ICore::dialogParent());
dialog.setFileList(directory, files, ignoredFiles);
dialog.exec();
}