From 15a6a27dc6a31d98671fe1b352a092dd397146bf Mon Sep 17 00:00:00 2001 From: Andrew Nelless Date: Mon, 3 Oct 2016 17:23:10 +0100 Subject: [PATCH] #5629 Show activation dialog only after main window --- src/gui/src/ActivationDialog.cpp | 3 ++- src/gui/src/MainWindow.cpp | 15 ++++++++------- src/gui/src/MainWindow.h | 2 ++ src/gui/src/SettingsDialog.cpp | 1 + 4 files changed, 13 insertions(+), 8 deletions(-) diff --git a/src/gui/src/ActivationDialog.cpp b/src/gui/src/ActivationDialog.cpp index 3950d198..a0221fec 100644 --- a/src/gui/src/ActivationDialog.cpp +++ b/src/gui/src/ActivationDialog.cpp @@ -152,6 +152,7 @@ void ActivationDialog::accept() } m_appConfig->setEdition(edition); + m_appConfig->activationHasRun(true); m_appConfig->saveSettings(); message.information (this, "Activated!", @@ -159,7 +160,7 @@ void ActivationDialog::accept() MainWindow& mainWindow = dynamic_cast(*this->parent()); mainWindow.setEdition(edition); mainWindow.updateLocalFingerprint(); - mainWindow.settings().sync(); + mainWindow.saveSettings(); QDialog::accept(); } diff --git a/src/gui/src/MainWindow.cpp b/src/gui/src/MainWindow.cpp index 971bd880..0c64b6b4 100644 --- a/src/gui/src/MainWindow.cpp +++ b/src/gui/src/MainWindow.cpp @@ -139,19 +139,20 @@ MainWindow::MainWindow(QSettings& settings, AppConfig& appConfig) : m_pLabelPadlock->hide(); - if (!appConfig.activationHasRun() && (appConfig.edition() == Unregistered)) { - ActivationDialog activationDialog (this, appConfig); - activationDialog.exec(); - appConfig.activationHasRun(true); - } - if (appConfig.getCryptoEnabled()) { m_pSslCertificate = new SslCertificate(this); m_pSslCertificate->generateCertificate(); } updateLocalFingerprint(); - appConfig.saveSettings(); +} + +void +MainWindow::showEvent(QShowEvent*) { + if (!m_AppConfig.activationHasRun() && (m_AppConfig.edition() == Unregistered)) { + ActivationDialog activationDialog (this, m_AppConfig); + activationDialog.exec(); + } } MainWindow::~MainWindow() diff --git a/src/gui/src/MainWindow.h b/src/gui/src/MainWindow.h index 650b05d1..d66201e3 100644 --- a/src/gui/src/MainWindow.h +++ b/src/gui/src/MainWindow.h @@ -66,6 +66,7 @@ class MainWindow : public QMainWindow, public Ui::MainWindowBase friend class QSynergyApplication; friend class SetupWizard; friend class ActivationDialog; + friend class SettingsDialog; public: enum qSynergyState @@ -181,6 +182,7 @@ class MainWindow : public QMainWindow, public Ui::MainWindowBase void restartSynergy(); void proofreadInfo(); + void showEvent(QShowEvent *event); private: QSettings& m_Settings; AppConfig& m_AppConfig; diff --git a/src/gui/src/SettingsDialog.cpp b/src/gui/src/SettingsDialog.cpp index 813eac36..14cd1fc7 100644 --- a/src/gui/src/SettingsDialog.cpp +++ b/src/gui/src/SettingsDialog.cpp @@ -151,5 +151,6 @@ void SettingsDialog::on_m_pCheckBoxEnableCrypto_toggled(bool checked) sslCertificate.generateCertificate(); MainWindow& mainWindow = dynamic_cast (*this->parent()); mainWindow.updateLocalFingerprint(); + mainWindow.saveSettings(); } }