diff --git a/src/core/mainwindow.cpp b/src/core/mainwindow.cpp
index bd2b3e0da..10f96660f 100644
--- a/src/core/mainwindow.cpp
+++ b/src/core/mainwindow.cpp
@@ -220,9 +220,11 @@ MainWindow::MainWindow(Application *app, SystemTrayIcon *tray_icon, OSD *osd, co
was_maximized_(true),
saved_playback_position_(0),
saved_playback_state_(Engine::Empty),
+ playing_widget_(true),
doubleclick_addmode_(AddBehaviour_Append),
doubleclick_playmode_(PlayBehaviour_Never),
- menu_playmode_(PlayBehaviour_Never) {
+ menu_playmode_(PlayBehaviour_Never)
+ {
qLog(Debug) << "Starting";
@@ -820,6 +822,8 @@ void MainWindow::ReloadSettings() {
#endif
settings.beginGroup(BehaviourSettingsPage::kSettingsGroup);
+ playing_widget_ = settings.value("playing_widget", true).toBool();
+ if (playing_widget_ != ui_->widget_playing->IsEnabled()) TabSwitched();
doubleclick_addmode_ = AddBehaviour(settings.value("doubleclick_addmode", AddBehaviour_Append).toInt());
doubleclick_playmode_ = PlayBehaviour(settings.value("doubleclick_playmode", PlayBehaviour_IfStopped).toInt());
doubleclick_playlist_addmode_ = PlaylistAddBehaviour(settings.value("doubleclick_playlist_addmode", PlaylistAddBehaviour_Play).toInt());
@@ -1013,10 +1017,12 @@ void MainWindow::resizeEvent(QResizeEvent *event) {
void MainWindow::TabSwitched() {
- if (ui_->tabs->tabBar()->tabData(ui_->tabs->currentIndex()).toString().toLower() == "context")
- ui_->widget_playing->SetDisabled();
- else
+ if (playing_widget_ && ui_->tabs->tabBar()->tabData(ui_->tabs->currentIndex()).toString().toLower() != "context") {
ui_->widget_playing->SetEnabled();
+ }
+ else {
+ ui_->widget_playing->SetDisabled();
+ }
if (!initialised_) return;
diff --git a/src/core/mainwindow.h b/src/core/mainwindow.h
index 640a3018e..e97d6735c 100644
--- a/src/core/mainwindow.h
+++ b/src/core/mainwindow.h
@@ -371,6 +371,7 @@ signals:
bool was_maximized_;
int saved_playback_position_;
Engine::State saved_playback_state_;
+ bool playing_widget_;
AddBehaviour doubleclick_addmode_;
PlayBehaviour doubleclick_playmode_;
PlaylistAddBehaviour doubleclick_playlist_addmode_;
diff --git a/src/settings/behavioursettingspage.cpp b/src/settings/behavioursettingspage.cpp
index a7f93c62a..d13a66a2a 100644
--- a/src/settings/behavioursettingspage.cpp
+++ b/src/settings/behavioursettingspage.cpp
@@ -148,6 +148,8 @@ void BehaviourSettingsPage::Load() {
}
#endif
+ ui_->checkbox_playingwidget->setChecked(s.value("playing_widget", true).toBool());
+
MainWindow::StartupBehaviour behaviour = MainWindow::StartupBehaviour(s.value("startupbehaviour", MainWindow::Startup_Remember).toInt());
switch (behaviour) {
case MainWindow::Startup_AlwaysHide: ui_->radiobutton_alwayshide->setChecked(true); break;
@@ -191,6 +193,7 @@ void BehaviourSettingsPage::Save() {
s.setValue("scrolltrayicon", ui_->checkbox_scrolltrayicon->isChecked());
s.setValue("keeprunning", ui_->checkbox_keeprunning->isChecked());
s.setValue("resumeplayback", ui_->checkbox_resumeplayback->isChecked());
+ s.setValue("playing_widget", ui_->checkbox_playingwidget->isChecked());
s.setValue("startupbehaviour", int(behaviour));
s.setValue("doubleclick_addmode", doubleclick_addmode);
s.setValue("doubleclick_playmode", doubleclick_playmode);
diff --git a/src/settings/behavioursettingspage.ui b/src/settings/behavioursettingspage.ui
index dc2dcbfee..311f41889 100644
--- a/src/settings/behavioursettingspage.ui
+++ b/src/settings/behavioursettingspage.ui
@@ -54,6 +54,13 @@
+ -
+
+
+ Show playing widget
+
+
+
-
diff --git a/src/widgets/playingwidget.cpp b/src/widgets/playingwidget.cpp
index 8be32f57e..a39a957da 100644
--- a/src/widgets/playingwidget.cpp
+++ b/src/widgets/playingwidget.cpp
@@ -156,6 +156,10 @@ void PlayingWidget::SetApplication(Application *app, AlbumCoverChoiceController
}
+void PlayingWidget::SetEnabled(bool enabled) {
+ if (enabled) SetEnabled();
+ else SetDisabled();
+}
void PlayingWidget::SetEnabled() {
enabled_ = true;
diff --git a/src/widgets/playingwidget.h b/src/widgets/playingwidget.h
index eb003b9c3..d915fcbe0 100644
--- a/src/widgets/playingwidget.h
+++ b/src/widgets/playingwidget.h
@@ -67,6 +67,8 @@ class PlayingWidget : public QWidget {
~PlayingWidget();
void SetApplication(Application *app, AlbumCoverChoiceController *album_cover_choice_controller);
+ bool IsEnabled() { return enabled_; }
+ void SetEnabled(bool enabled);
void SetEnabled();
void SetDisabled();
void set_ideal_height(int height);