diff --git a/resources/text/CHANGELOG b/resources/text/CHANGELOG
index 8718de143..1ad0bd8f0 100644
--- a/resources/text/CHANGELOG
+++ b/resources/text/CHANGELOG
@@ -18,6 +18,7 @@
- Brand new "service plugin system" - HIGHLY EXPERIMENTAL and REWRITTEN from scratch. Expect bugs and misunderstandings now! Major parts of RSS Guard were completely rewritten. Note that some functionality might be TEMPORARILY removed.
- Added ability to completely disable notifications (bug #128).
+ - Added ability to hide status bar.
- Added ability to go to next unread message. (partially bug #112)
diff --git a/src/gui/dialogs/formmain.cpp b/src/gui/dialogs/formmain.cpp
index ce207f599..94801af62 100755
--- a/src/gui/dialogs/formmain.cpp
+++ b/src/gui/dialogs/formmain.cpp
@@ -80,8 +80,6 @@ FormMain::FormMain(QWidget *parent, Qt::WindowFlags f)
setupIcons();
loadSize();
- statusBar()->setVisible(false);
-
// Initialize the web factory.
WebFactory::instance()->loadState();
}
@@ -107,6 +105,7 @@ QList FormMain::allActions() {
actions << m_ui->m_actionSwitchMainMenu;
actions << m_ui->m_actionSwitchToolBars;
actions << m_ui->m_actionSwitchListHeaders;
+ actions << m_ui->m_actionSwitchStatusBar;
actions << m_ui->m_actionSwitchMessageListOrientation;
// Add web browser actions
@@ -174,10 +173,6 @@ void FormMain::switchFullscreenMode() {
}
}
-void FormMain::switchMainMenu() {
- m_ui->m_menuBar->setVisible(m_ui->m_actionSwitchMainMenu->isChecked());
-}
-
void FormMain::updateAddItemMenu() {
// NOTE: Clear here deletes items from memory but only those OWNED by the menu.
m_ui->m_menuAddItem->clear();
@@ -328,6 +323,7 @@ void FormMain::setupIcons() {
m_ui->m_actionSwitchMainMenu->setIcon(icon_theme_factory->fromTheme(QSL("view-switch-menu")));
m_ui->m_actionSwitchToolBars->setIcon(icon_theme_factory->fromTheme(QSL("view-switch-list")));
m_ui->m_actionSwitchListHeaders->setIcon(icon_theme_factory->fromTheme(QSL("view-switch-list")));
+ m_ui->m_actionSwitchStatusBar->setIcon(icon_theme_factory->fromTheme(QSL("dialog-information")));
m_ui->m_actionSwitchMessageListOrientation->setIcon(icon_theme_factory->fromTheme(QSL("view-switch-layout-direction")));
m_ui->m_menuShowHide->setIcon(icon_theme_factory->fromTheme(QSL("view-switch")));
@@ -410,6 +406,7 @@ void FormMain::loadSize() {
m_ui->m_tabWidget->feedMessageViewer()->loadSize();
m_ui->m_actionSwitchToolBars->setChecked(settings->value(GROUP(GUI), SETTING(GUI::ToolbarsVisible)).toBool());
m_ui->m_actionSwitchListHeaders->setChecked(settings->value(GROUP(GUI), SETTING(GUI::ListHeadersVisible)).toBool());
+ m_ui->m_actionSwitchStatusBar->setChecked(settings->value(GROUP(GUI), SETTING(GUI::StatusBarVisible)).toBool());
// Make sure that only unread feeds are shown if user has that feature set on.
m_ui->m_actionShowOnlyUnreadItems->setChecked(settings->value(GROUP(Feeds), SETTING(Feeds::ShowOnlyUnreadFeeds)).toBool());
@@ -433,6 +430,7 @@ void FormMain::saveSize() {
settings->setValue(GROUP(GUI), GUI::MainWindowInitialSize, size());
settings->setValue(GROUP(GUI), GUI::MainWindowStartsMaximized, is_maximized);
settings->setValue(GROUP(GUI), GUI::MainWindowStartsFullscreen, is_fullscreen);
+ settings->setValue(GROUP(GUI), GUI::StatusBarVisible, m_ui->m_actionSwitchStatusBar->isChecked());
m_ui->m_tabWidget->feedMessageViewer()->saveSize();
}
@@ -454,8 +452,9 @@ 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_actionSwitchMainMenu, SIGNAL(toggled(bool)), m_ui->m_menuBar, SLOT(setVisible(bool)));
connect(m_ui->m_actionSwitchMainWindow, SIGNAL(triggered()), this, SLOT(switchVisibility()));
+ connect(m_ui->m_actionSwitchStatusBar, SIGNAL(toggled(bool)), statusBar(), SLOT(setVisible(bool)));
// Menu "Tools" connections.
connect(m_ui->m_actionSettings, SIGNAL(triggered()), this, SLOT(showSettings()));
diff --git a/src/gui/dialogs/formmain.h b/src/gui/dialogs/formmain.h
index 1320a832f..140d9ad79 100755
--- a/src/gui/dialogs/formmain.h
+++ b/src/gui/dialogs/formmain.h
@@ -73,9 +73,6 @@ class FormMain : public QMainWindow {
// Turns on/off fullscreen mode
void switchFullscreenMode();
- // Switches visibility of main menu.
- void switchMainMenu();
-
private slots:
void updateAddItemMenu();
void updateRecycleBinMenu();
diff --git a/src/gui/dialogs/formmain.ui b/src/gui/dialogs/formmain.ui
index fe4f645ce..b392a808b 100755
--- a/src/gui/dialogs/formmain.ui
+++ b/src/gui/dialogs/formmain.ui
@@ -85,6 +85,7 @@
+
@@ -742,6 +743,17 @@
+
+
+ true
+
+
+ true
+
+
+ Status bar
+
+
diff --git a/src/miscellaneous/settings.cpp b/src/miscellaneous/settings.cpp
index bc040936e..bf1179f07 100755
--- a/src/miscellaneous/settings.cpp
+++ b/src/miscellaneous/settings.cpp
@@ -105,6 +105,9 @@ DVALUE(bool) GUI::ToolbarsVisibleDef = true;
DKEY GUI::ListHeadersVisible = "enable_list_headers";
DVALUE(bool) GUI::ListHeadersVisibleDef = true;
+DKEY GUI::StatusBarVisible = "enable_status_bar";
+DVALUE(bool) GUI::StatusBarVisibleDef = true;
+
DKEY GUI::HideMainWindowWhenMinimized = "hide_when_minimized";
DVALUE(bool) GUI::HideMainWindowWhenMinimizedDef = false;
diff --git a/src/miscellaneous/settings.h b/src/miscellaneous/settings.h
index b3a977520..35746dd5b 100755
--- a/src/miscellaneous/settings.h
+++ b/src/miscellaneous/settings.h
@@ -120,6 +120,9 @@ namespace GUI {
KEY ListHeadersVisible;
VALUE(bool) ListHeadersVisibleDef;
+ KEY StatusBarVisible;
+ VALUE(bool) StatusBarVisibleDef;
+
KEY HideMainWindowWhenMinimized;
VALUE(bool) HideMainWindowWhenMinimizedDef;