diff --git a/src/gui/src/MainWindow.cpp b/src/gui/src/MainWindow.cpp index f25cf11f..fc73c281 100644 --- a/src/gui/src/MainWindow.cpp +++ b/src/gui/src/MainWindow.cpp @@ -121,19 +121,19 @@ void MainWindow::start(bool firstRun) { createTrayIcon(); - // always show. auto-hide only happens when we have a connection. showNormal(); m_VersionChecker.checkLatest(); + + if (appConfig().processMode() == Desktop) { + startSynergy(); + } } void MainWindow::onModeChanged(bool startDesktop, bool applyService) { if (appConfig().processMode() == Service) { - // form is always enabled in service mode. - setFormEnabled(true); - // ensure that the apply button actually does something, since desktop // mode screws around with connecting/disconnecting the action. disconnect(m_pButtonToggleStart, SIGNAL(clicked()), m_pActionStartSynergy, SLOT(trigger())); @@ -445,8 +445,11 @@ void MainWindow::startSynergy() if (desktopMode) { synergyProcess()->start(app, args); - if (!synergyProcess()->waitForStarted()) + if (synergyProcess()->waitForStarted()) { + hide(); + } + else { stopSynergy(); show(); QMessageBox::warning(this, tr("Program can not be started"), QString(tr("The executable

%1

could not be successfully started, although it does exist. Please check if you have sufficient permissions to run this program.").arg(app))); @@ -650,12 +653,6 @@ void MainWindow::setSynergyState(qSynergyState state) bool connected = state == synergyConnected; - // only disable controls in desktop mode. in service mode, we can use the apply button. - if (appConfig().processMode() == Desktop) - { - setFormEnabled(!connected); - } - m_pActionStartSynergy->setEnabled(!connected); m_pActionStopSynergy->setEnabled(connected); @@ -678,12 +675,6 @@ void MainWindow::setSynergyState(qSynergyState state) m_SynergyState = state; } -void MainWindow::setFormEnabled(bool enabled) -{ - m_pGroupClient->setEnabled(enabled); - m_pGroupServer->setEnabled(enabled); -} - void MainWindow::setVisible(bool visible) { QMainWindow::setVisible(visible); diff --git a/src/gui/src/MainWindow.h b/src/gui/src/MainWindow.h index 0db6420a..37956bd1 100644 --- a/src/gui/src/MainWindow.h +++ b/src/gui/src/MainWindow.h @@ -140,7 +140,6 @@ class MainWindow : public QMainWindow, public Ui::MainWindowBase QString getScreenName(); void stopService(); void stopDesktop(); - void setFormEnabled(bool enabled); void changeEvent(QEvent* event); void retranslateMenuBar(); void updatePremiumInfo();