Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/owncloud/client.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorHannah von Reth <vonreth@kde.org>2019-11-27 16:23:23 +0300
committerHannah von Reth <vonreth@kde.org>2019-12-04 21:58:54 +0300
commit93ac380492fd6f7a00e2ce8d2e9df9b94554b83e (patch)
treea596ec2df2e1f72f292885b18094c2090593769a /src/gui/settingsdialog.cpp
parentfb0c147fbbafd94f2bd27ef303b1aeed8be3d5ca (diff)
[Settings] Add a quit button
Fixes : #7547
Diffstat (limited to 'src/gui/settingsdialog.cpp')
-rw-r--r--src/gui/settingsdialog.cpp17
1 files changed, 17 insertions, 0 deletions
diff --git a/src/gui/settingsdialog.cpp b/src/gui/settingsdialog.cpp
index 1b47ce984..3b18eacd8 100644
--- a/src/gui/settingsdialog.cpp
+++ b/src/gui/settingsdialog.cpp
@@ -41,6 +41,7 @@
#include <QWidgetAction>
#include <QPainter>
#include <QPainterPath>
+#include <QMessageBox>
namespace {
const QString TOOLBAR_CSS()
@@ -132,6 +133,22 @@ SettingsDialog::SettingsDialog(ownCloudGui *gui, QWidget *parent)
NetworkSettings *networkSettings = new NetworkSettings;
_ui->stack->addWidget(networkSettings);
+ QWidget *spacer = new QWidget();
+ spacer->setSizePolicy(QSizePolicy::Expanding, QSizePolicy::Preferred);
+ _toolBar->addWidget(spacer);
+
+ QAction *quitAction = createColorAwareAction(QLatin1String(":/client/resources/quit.png"), tr("Quit %1").arg(qApp->applicationName()));
+ quitAction->setCheckable(false);
+ connect(quitAction, &QAction::triggered, this, [this] {
+ const auto reply = QMessageBox::question(this, tr("Quit %1").arg(qApp->applicationName()),
+ tr("Are you sure you want to quit %1?").arg(qApp->applicationName()),
+ QMessageBox::Yes | QMessageBox::No);
+ if (reply == QMessageBox::Yes) {
+ qApp->quit();
+ }
+ });
+ _toolBar->addAction(quitAction);
+
_actionGroupWidgets.insert(_activityAction, _activitySettings);
_actionGroupWidgets.insert(generalAction, generalSettings);
_actionGroupWidgets.insert(networkAction, networkSettings);