From 049f4454d415f7f9ffef0efb76197f7bfb73767d Mon Sep 17 00:00:00 2001 From: tytan652 Date: Fri, 4 Aug 2023 09:20:11 +0200 Subject: [PATCH] UI: Fix YouTubeAppDock restore dock state --- UI/auth-youtube.cpp | 8 ++++++-- UI/window-basic-main.cpp | 12 ++++++------ UI/window-dock-youtube-app.cpp | 9 --------- 3 files changed, 12 insertions(+), 17 deletions(-) diff --git a/UI/auth-youtube.cpp b/UI/auth-youtube.cpp index 16b85594f..e7e748bb2 100644 --- a/UI/auth-youtube.cpp +++ b/UI/auth-youtube.cpp @@ -174,7 +174,12 @@ void YoutubeAuth::LoadUI() if (firstLoad) { chat->setVisible(true); - } else { + } +#endif + + main->NewYouTubeAppDock(); + + if (!firstLoad) { const char *dockStateStr = config_get_string( main->Config(), service(), "DockState"); QByteArray dockState = @@ -183,7 +188,6 @@ void YoutubeAuth::LoadUI() if (main->isVisible() || !main->isMaximized()) main->restoreState(dockState); } -#endif uiLoaded = true; } diff --git a/UI/window-basic-main.cpp b/UI/window-basic-main.cpp index c7f0b8a8e..8bce96aaf 100644 --- a/UI/window-basic-main.cpp +++ b/UI/window-basic-main.cpp @@ -2192,6 +2192,12 @@ void OBSBasic::OBSInit() } #endif +#ifdef YOUTUBE_ENABLED + /* setup YouTube app dock */ + if (YouTubeAppDock::IsYTServiceSelected()) + youtubeAppDock = new YouTubeAppDock(); +#endif + const char *dockStateStr = config_get_string( App()->GlobalConfig(), "BasicWindow", "DockState"); @@ -2336,12 +2342,6 @@ void OBSBasic::OBSInit() UpdatePreviewProgramIndicators(); OnFirstLoad(); -#ifdef YOUTUBE_ENABLED - /* setup YouTube app dock */ - if (YouTubeAppDock::IsYTServiceSelected()) - youtubeAppDock = new YouTubeAppDock(); -#endif - if (!hideWindowOnStart) activateWindow(); diff --git a/UI/window-dock-youtube-app.cpp b/UI/window-dock-youtube-app.cpp index 505f39eca..46ece6762 100644 --- a/UI/window-dock-youtube-app.cpp +++ b/UI/window-dock-youtube-app.cpp @@ -127,15 +127,6 @@ void YouTubeAppDock::AddYouTubeAppDock(const QString &title) if (IsYTServiceSelected()) { const std::string url = InitYTUserUrl(); CreateBrowserWidget(url); - - // reload panel layout - const char *dockStateStr = config_get_string( - App()->GlobalConfig(), "BasicWindow", "DockState"); - if (dockStateStr) { - QByteArray dockState = QByteArray::fromBase64( - QByteArray(dockStateStr)); - OBSBasic::Get()->restoreState(dockState); - } } else { this->setVisible(false); this->toggleViewAction()->setVisible(false);