aboutsummaryrefslogtreecommitdiff
path: root/src/qmmpui/uihelper.cpp
diff options
context:
space:
mode:
authortrialuser02 <trialuser02@90c681e8-e032-0410-971d-27865f9a5e38>2017-11-25 18:00:06 +0000
committertrialuser02 <trialuser02@90c681e8-e032-0410-971d-27865f9a5e38>2017-11-25 18:00:06 +0000
commit8453224119a4c5ff7d47d9cd4924d0b1ccb99b3a (patch)
tree15d339b62e98d5858a57aa787334e14f0e2f0ad7 /src/qmmpui/uihelper.cpp
parent6fc05db7c6de9a51beba754f12ff4ac32859977d (diff)
downloadqmmp-8453224119a4c5ff7d47d9cd4924d0b1ccb99b3a.tar.gz
qmmp-8453224119a4c5ff7d47d9cd4924d0b1ccb99b3a.tar.bz2
qmmp-8453224119a4c5ff7d47d9cd4924d0b1ccb99b3a.zip
copy 1.2 branch to trunk
git-svn-id: http://svn.code.sf.net/p/qmmp-dev/code/trunk/qmmp@7772 90c681e8-e032-0410-971d-27865f9a5e38
Diffstat (limited to 'src/qmmpui/uihelper.cpp')
-rw-r--r--src/qmmpui/uihelper.cpp31
1 files changed, 5 insertions, 26 deletions
diff --git a/src/qmmpui/uihelper.cpp b/src/qmmpui/uihelper.cpp
index 44b450bad..4a6bd6bc2 100644
--- a/src/qmmpui/uihelper.cpp
+++ b/src/qmmpui/uihelper.cpp
@@ -23,6 +23,7 @@
#include <QWidget>
#include <QAction>
#include <QSettings>
+#include <QApplication>
#include <qmmp/soundcore.h>
#include <qmmp/metadatamanager.h>
#include "filedialog.h"
@@ -245,34 +246,12 @@ void UiHelper::showMainWindow()
void UiHelper::exit()
{
-#if QT_VERSION < 0x040700
- bool closed = true;
- QWidget *w;
+ //send non-spontaneous close event
+ //for all windows
+ foreach (QWidget *widget, qApp->topLevelWidgets())
+ widget->close();
- while ((w = qApp->activeModalWidget()) && closed)
- {
- if (!w->isVisible())
- break;
-
- closed = w->close();
- }
-
- QWidgetList list = qApp->topLevelWidgets();
-
- while (closed && !list.isEmpty())
- {
- w = list.takeLast();
-
- if (w->isVisible() && w->windowType() != Qt::Desktop)
- {
- closed = w->close();
- list = qApp->topLevelWidgets();
- list.removeOne(w);
- }
- }
-#else
qApp->closeAllWindows();
-#endif
qApp->quit();
}