From 9a64adb4d1994f7ea1a30a5db2a0d105192f8b85 Mon Sep 17 00:00:00 2001 From: Richard Stanway Date: Sun, 1 Nov 2020 00:26:15 +0100 Subject: [PATCH] UI: Don't update source context bar when hidden --- UI/window-basic-main.cpp | 10 +++++++--- UI/window-basic-main.hpp | 2 +- 2 files changed, 8 insertions(+), 4 deletions(-) diff --git a/UI/window-basic-main.cpp b/UI/window-basic-main.cpp index e2ca1eb47..a77363cdd 100644 --- a/UI/window-basic-main.cpp +++ b/UI/window-basic-main.cpp @@ -360,8 +360,6 @@ OBSBasic::OBSBasic(QWidget *parent) QPoint curPos; - UpdateContextBar(); - //restore parent window geometry const char *geometry = config_get_string(App()->GlobalConfig(), "BasicWindow", "geometry"); @@ -1755,6 +1753,8 @@ void OBSBasic::OBSInit() "ShowContextToolbars"); ui->toggleContextBar->setChecked(visible); ui->contextContainer->setVisible(visible); + if (visible) + UpdateContextBar(true); } else { ui->toggleContextBar->setChecked(true); ui->contextContainer->setVisible(true); @@ -2929,8 +2929,11 @@ static bool is_network_media_source(obs_source_t *source, const char *id) return !is_local_file; } -void OBSBasic::UpdateContextBar() +void OBSBasic::UpdateContextBar(bool force) { + if (!ui->contextContainer->isVisible() && !force) + return; + OBSSceneItem item = GetCurrentSceneItem(); ClearContextBar(); @@ -7362,6 +7365,7 @@ void OBSBasic::on_toggleContextBar_toggled(bool visible) config_set_bool(App()->GlobalConfig(), "BasicWindow", "ShowContextToolbars", visible); this->ui->contextContainer->setVisible(visible); + UpdateContextBar(true); } void OBSBasic::on_toggleStatusBar_toggled(bool visible) diff --git a/UI/window-basic-main.hpp b/UI/window-basic-main.hpp index 9d3601b61..42bd8e628 100644 --- a/UI/window-basic-main.hpp +++ b/UI/window-basic-main.hpp @@ -1023,7 +1023,7 @@ public slots: bool ReplayBufferActive(); void ClearContextBar(); - void UpdateContextBar(); + void UpdateContextBar(bool force = false); public: explicit OBSBasic(QWidget *parent = 0);