diff --git a/src/gui/formmain.cpp b/src/gui/formmain.cpp
index 2e6b3c39e..a84bfdcc6 100755
--- a/src/gui/formmain.cpp
+++ b/src/gui/formmain.cpp
@@ -184,27 +184,31 @@ void FormMain::switchMainMenu() {
}
void FormMain::switchVisibility(bool force_hide) {
- // TODO: Kdyz neni povolena tray ikona, tak je povolena satle polozka "switch window" v menu.
- // v pripade ze tedy neni povolena tray ikona, tak polozku switch bud disabnout
- // nebo upravit jeji chovani aby provedla minimalizaci a ne hide.
- // aktualne nastaveno na tu minimalizaci
if (force_hide || isVisible()) {
if (SystemTrayIcon::isSystemTrayActivated()) {
hide();
-
- m_ui->m_actionSwitchMainWindow->blockSignals(true);
- m_ui->m_actionSwitchMainWindow->setChecked(false);
- m_ui->m_actionSwitchMainWindow->blockSignals(false);
}
else {
+ // Window gets minimized in single-window mode.
showMinimized();
}
}
else {
display();
- m_ui->m_actionSwitchMainWindow->blockSignals(true);
- m_ui->m_actionSwitchMainWindow->setChecked(true);
- m_ui->m_actionSwitchMainWindow->blockSignals(false);
+ }
+}
+
+void FormMain::setApplicationMode(FormMain::ApplicationMode mode) {
+ switch (mode) {
+ case Tray:
+
+ break;
+
+ case SingleWindow:
+ break;
+
+ default:
+ break;
}
}
@@ -386,7 +390,7 @@ void FormMain::createConnections() {
// Menu "View" connections.
connect(m_ui->m_actionFullscreen, SIGNAL(toggled(bool)), this, SLOT(switchFullscreenMode()));
connect(m_ui->m_actionSwitchMainMenu, SIGNAL(toggled(bool)), this, SLOT(switchMainMenu()));
- connect(m_ui->m_actionSwitchMainWindow, SIGNAL(toggled(bool)), this, SLOT(switchVisibility()));
+ connect(m_ui->m_actionSwitchMainWindow, SIGNAL(triggered()), this, SLOT(switchVisibility()));
// Menu "Tools" connections.
connect(m_ui->m_actionSettings, SIGNAL(triggered()), this, SLOT(showSettings()));
diff --git a/src/gui/formmain.h b/src/gui/formmain.h
index e87696ff9..0e36e7407 100644
--- a/src/gui/formmain.h
+++ b/src/gui/formmain.h
@@ -35,6 +35,11 @@ class FormMain : public QMainWindow {
friend class FeedsView;
public:
+ enum ApplicationMode {
+ SingleWindow,
+ Tray
+ };
+
// Constructors and destructors.
explicit FormMain(QWidget *parent = 0);
virtual ~FormMain();
@@ -92,6 +97,8 @@ class FormMain : public QMainWindow {
// Switches visibility of main window.
void switchVisibility(bool force_hide = false);
+ void setApplicationMode(ApplicationMode mode);
+
// Turns on/off fullscreen mode
void switchFullscreenMode();
diff --git a/src/gui/formmain.ui b/src/gui/formmain.ui
index 9bb3ffcce..e88a8b7ae 100644
--- a/src/gui/formmain.ui
+++ b/src/gui/formmain.ui
@@ -75,9 +75,9 @@
-
+