diff --git a/UI/log-viewer.cpp b/UI/log-viewer.cpp index f95cb0265..b1e2bf535 100644 --- a/UI/log-viewer.cpp +++ b/UI/log-viewer.cpp @@ -37,8 +37,11 @@ OBSLogViewer::OBSLogViewer(QWidget *parent) : QDialog(parent) QPushButton *closeButton = new QPushButton(QTStr("Close")); connect(closeButton, &QPushButton::clicked, this, &QDialog::hide); + bool showLogViewerOnStartup = config_get_bool( + App()->GlobalConfig(), "LogViewer", "ShowLogStartup"); + QCheckBox *showStartup = new QCheckBox(QTStr("ShowOnStartup")); - showStartup->setChecked(ShowOnStartup()); + showStartup->setChecked(showLogViewerOnStartup); connect(showStartup, SIGNAL(toggled(bool)), this, SLOT(ToggleShowStartup(bool))); @@ -81,12 +84,6 @@ void OBSLogViewer::ToggleShowStartup(bool checked) checked); } -bool OBSLogViewer::ShowOnStartup() -{ - return config_get_bool(App()->GlobalConfig(), "LogViewer", - "ShowLogStartup"); -} - extern QPointer obsLogViewer; void OBSLogViewer::InitLog() diff --git a/UI/log-viewer.hpp b/UI/log-viewer.hpp index ed43828cf..2ca753745 100644 --- a/UI/log-viewer.hpp +++ b/UI/log-viewer.hpp @@ -20,6 +20,4 @@ private slots: public: OBSLogViewer(QWidget *parent = 0); ~OBSLogViewer(); - - bool ShowOnStartup(); }; diff --git a/UI/window-basic-main.cpp b/UI/window-basic-main.cpp index 83a41e627..16b5960c3 100644 --- a/UI/window-basic-main.cpp +++ b/UI/window-basic-main.cpp @@ -193,9 +193,6 @@ extern void RegisterRestreamAuth(); OBSBasic::OBSBasic(QWidget *parent) : OBSMainWindow(parent), ui(new Ui::OBSBasic) { - /* setup log viewer */ - logView = new OBSLogViewer(); - qRegisterMetaTypeStreamOperators>( "SignalContainer"); @@ -1955,8 +1952,14 @@ void OBSBasic::OnFirstLoad() Auth::Load(); - if (logView && logView->ShowOnStartup()) + bool showLogViewerOnStartup = config_get_bool( + App()->GlobalConfig(), "LogViewer", "ShowLogStartup"); + + if (showLogViewerOnStartup) { + if (!logView) + logView = new OBSLogViewer(); logView->show(); + } } void OBSBasic::DeferredSysTrayLoad(int requeueCount) @@ -5331,6 +5334,9 @@ void OBSBasic::on_actionUploadLastLog_triggered() void OBSBasic::on_actionViewCurrentLog_triggered() { + if (!logView) + logView = new OBSLogViewer(); + if (!logView->isVisible()) { logView->setVisible(true); } else { diff --git a/UI/window-basic-main.hpp b/UI/window-basic-main.hpp index 8e960c675..c4d3bb777 100644 --- a/UI/window-basic-main.hpp +++ b/UI/window-basic-main.hpp @@ -214,7 +214,7 @@ private: QPointer statsDock; QPointer about; - OBSLogViewer *logView; + OBSLogViewer *logView = nullptr; QPointer cpuUsageTimer; QPointer diskFullTimer;