diff --git a/launcher/Application.cpp b/launcher/Application.cpp
index cfede9dc1..ff5eb2a66 100644
--- a/launcher/Application.cpp
+++ b/launcher/Application.cpp
@@ -668,6 +668,8 @@ Application::Application(int& argc, char** argv) : QApplication(argc, argv)
// The cat
m_settings->registerSetting("TheCat", false);
+ m_settings->registerSetting("StatusBarVisible", true);
+
m_settings->registerSetting("ToolbarsLocked", false);
m_settings->registerSetting("InstSortMode", "Name");
diff --git a/launcher/ui/MainWindow.cpp b/launcher/ui/MainWindow.cpp
index 7b4d1c8a5..42de6c2c0 100644
--- a/launcher/ui/MainWindow.cpp
+++ b/launcher/ui/MainWindow.cpp
@@ -186,6 +186,7 @@ MainWindow::MainWindow(QWidget* parent) : QMainWindow(parent), ui(new Ui::MainWi
ui->instanceToolBar->addContextMenuAction(ui->newsToolBar->toggleViewAction());
ui->instanceToolBar->addContextMenuAction(ui->instanceToolBar->toggleViewAction());
+ ui->instanceToolBar->addContextMenuAction(ui->actionToggleStatusBar);
ui->instanceToolBar->addContextMenuAction(ui->actionLockToolbars);
}
@@ -319,6 +320,14 @@ MainWindow::MainWindow(QWidget* parent) : QMainWindow(parent), ui(new Ui::MainWi
setCatBackground(cat_enable);
}
+ // Togglable status bar
+ {
+ bool statusBarVisible = APPLICATION->settings()->get("StatusBarVisible").toBool();
+ ui->actionToggleStatusBar->setChecked(statusBarVisible);
+ connect(ui->actionToggleStatusBar, &QAction::toggled, this, &MainWindow::setStatusBarVisibility);
+ setStatusBarVisibility(statusBarVisible);
+ }
+
// Lock toolbars
{
bool toolbarsLocked = APPLICATION->settings()->get("ToolbarsLocked").toBool();
@@ -451,10 +460,16 @@ QMenu* MainWindow::createPopupMenu()
QMenu* filteredMenu = QMainWindow::createPopupMenu();
filteredMenu->removeAction(ui->mainToolBar->toggleViewAction());
+ filteredMenu->addAction(ui->actionToggleStatusBar);
filteredMenu->addAction(ui->actionLockToolbars);
return filteredMenu;
}
+void MainWindow::setStatusBarVisibility(bool state)
+{
+ statusBar()->setVisible(state);
+ APPLICATION->settings()->set("StatusBarVisible", state);
+}
void MainWindow::lockToolbars(bool state)
{
ui->mainToolBar->setMovable(!state);
diff --git a/launcher/ui/MainWindow.h b/launcher/ui/MainWindow.h
index d2e154643..07a6e1eba 100644
--- a/launcher/ui/MainWindow.h
+++ b/launcher/ui/MainWindow.h
@@ -205,6 +205,8 @@ class MainWindow : public QMainWindow {
void globalSettingsClosed();
+ void setStatusBarVisibility(bool);
+
void lockToolbars(bool);
#ifndef Q_OS_MAC
diff --git a/launcher/ui/MainWindow.ui b/launcher/ui/MainWindow.ui
index 1ee3a5632..889012105 100644
--- a/launcher/ui/MainWindow.ui
+++ b/launcher/ui/MainWindow.ui
@@ -176,6 +176,7 @@
+
@@ -257,6 +258,14 @@
It's a fluffy kitty :3
+
+
+ true
+
+
+ Status Bar
+
+
true