diff --git a/src/gui/src/SettingsDialog.cpp b/src/gui/src/SettingsDialog.cpp
index 9d8f7b35ad..3be514636a 100644
--- a/src/gui/src/SettingsDialog.cpp
+++ b/src/gui/src/SettingsDialog.cpp
@@ -177,16 +177,6 @@ void SettingsDialog::loadFromConfig() {
m_pCheckBoxEnableCrypto->setChecked(m_appConfig.getCryptoEnabled());
-#ifdef SYNERGY_ENTERPRISE
-
- m_pCheckBoxEnableCrypto->setEnabled(true);
-
-#else
-
- m_pCheckBoxEnableCrypto->setEnabled(m_appConfig.isCryptoAvailable());
-
-#endif
-
#if !defined(SYNERGY_ENTERPRISE) && defined(SYNERGY_AUTOCONFIG)
m_pCheckBoxAutoConfig->setChecked(appConfig().autoConfig());
#else
@@ -233,16 +223,33 @@ void SettingsDialog::on_m_pComboLanguage_currentIndexChanged(int index)
buttonBox->button(QDialogButtonBox::Save)->setEnabled(isModified());
}
-void SettingsDialog::on_m_pCheckBoxEnableCrypto_toggled(bool checked)
+void SettingsDialog::on_m_pCheckBoxEnableCrypto_clicked(bool checked)
{
- m_pLabelKeyLength->setEnabled(checked);
- m_pComboBoxKeyLength->setEnabled(checked);
- m_pLabelCertificate->setEnabled(checked);
- m_pLineEditCertificatePath->setEnabled(checked);
- m_pPushButtonBrowseCert->setEnabled(checked);
- m_pPushButtonRegenCert->setEnabled(checked);
+ if (appConfig().isCryptoAvailable())
+ {
+ m_pLabelKeyLength->setEnabled(checked);
+ m_pComboBoxKeyLength->setEnabled(checked);
+ m_pLabelCertificate->setEnabled(checked);
+ m_pLineEditCertificatePath->setEnabled(checked);
+ m_pPushButtonBrowseCert->setEnabled(checked);
+ m_pPushButtonRegenCert->setEnabled(checked);
- buttonBox->button(QDialogButtonBox::Save)->setEnabled(isModified());
+ buttonBox->button(QDialogButtonBox::Save)->setEnabled(isModified());
+ }
+ else
+ {
+ m_pCheckBoxEnableCrypto->setChecked(false);
+
+ QMessageBox message(this);
+ message.addButton(QObject::tr("Close"), QMessageBox::RejectRole);
+ message.addButton(QObject::tr("Upgrade"), QMessageBox::AcceptRole);
+ message.setText(QObject::tr("TLS encryption is Synergy Pro feature.\nPlease upgrade if this is important to you"));
+
+ if (message.exec() == QMessageBox::Accepted)
+ {
+ QDesktopServices::openUrl(QUrl(QCoreApplication::organizationDomain() + "account"));
+ }
+ }
}
void SettingsDialog::on_m_pLabelInstallBonjour_linkActivated(const QString&)
@@ -342,13 +349,13 @@ void SettingsDialog::enableControls(bool enable) {
m_pLineEditCertificatePath->setEnabled(enable);
m_pComboBoxKeyLength->setEnabled(enable);
m_pPushButtonBrowseCert->setEnabled(enable);
+ m_pCheckBoxEnableCrypto->setEnabled(enable);
m_labelAdminRightsMessage->setVisible(!enable);
if (enable) {
m_pLabelLogPath->setEnabled(m_pCheckBoxLogToFile->isChecked());
m_pLineEditLogFilename->setEnabled(m_pCheckBoxLogToFile->isChecked());
m_pButtonBrowseLog->setEnabled(m_pCheckBoxLogToFile->isChecked());
- m_pCheckBoxEnableCrypto->setEnabled(m_appConfig.isCryptoAvailable());
m_pLabelKeyLength->setEnabled(m_pCheckBoxEnableCrypto->isChecked());
m_pComboBoxKeyLength->setEnabled(m_pCheckBoxEnableCrypto->isChecked());
m_pLabelCertificate->setEnabled(m_pCheckBoxEnableCrypto->isChecked());
@@ -360,7 +367,6 @@ void SettingsDialog::enableControls(bool enable) {
m_pLabelLogPath->setEnabled(enable);
m_pLineEditLogFilename->setEnabled(enable);
m_pButtonBrowseLog->setEnabled(enable);
- m_pCheckBoxEnableCrypto->setEnabled(enable);
m_pLabelKeyLength->setEnabled(enable);
m_pComboBoxKeyLength->setEnabled(enable);
m_pLabelCertificate->setEnabled(enable);
diff --git a/src/gui/src/SettingsDialog.h b/src/gui/src/SettingsDialog.h
index 6ea7ea3544..298a9c146a 100644
--- a/src/gui/src/SettingsDialog.h
+++ b/src/gui/src/SettingsDialog.h
@@ -77,7 +77,7 @@ class SettingsDialog : public QDialog, public Ui::SettingsDialogBase
bool m_isSystemAtStart = false;
private slots:
- void on_m_pCheckBoxEnableCrypto_toggled(bool checked);
+ void on_m_pCheckBoxEnableCrypto_clicked(bool checked);
void on_m_pComboLanguage_currentIndexChanged(int index);
void on_m_pCheckBoxLogToFile_stateChanged(int );
void on_m_pButtonBrowseLog_clicked();
diff --git a/src/gui/src/SettingsDialogBase.ui b/src/gui/src/SettingsDialogBase.ui
index c47ad17375..43eb1e3c32 100644
--- a/src/gui/src/SettingsDialogBase.ui
+++ b/src/gui/src/SettingsDialogBase.ui
@@ -473,7 +473,7 @@ background-color: rgba(192,192,192, 0.1);
-
- false
+ true
Enable &TLS encryption
@@ -948,8 +948,42 @@ font-weight: bold;
+ -
+
+
+ Qt::Horizontal
+
+
+
+ 40
+ 20
+
+
+
+
-
+
+
+ 0
+ 0
+
+
+
+
+ 0
+ 0
+
+
+
+
+ 16777215
+ 16777215
+
+
+
+ Qt::LeftToRight
+
Minimize to system &tray