diff --git a/UI/window-basic-main.cpp b/UI/window-basic-main.cpp index 387d056fd..205c74b1d 100644 --- a/UI/window-basic-main.cpp +++ b/UI/window-basic-main.cpp @@ -116,6 +116,7 @@ struct QCefCookieManager; QCef *cef = nullptr; QCefCookieManager *panel_cookies = nullptr; +bool cef_js_avail = false; void DestroyPanelCookieManager(); @@ -2022,6 +2023,7 @@ void OBSBasic::OBSInit() #ifdef BROWSER_AVAILABLE cef = obs_browser_init_panel(); + cef_js_avail = cef && obs_browser_qcef_version() >= 3; #endif OBSDataAutoRelease obsData = obs_get_private_data(); @@ -8493,7 +8495,7 @@ YouTubeAppDock *OBSBasic::GetYouTubeAppDock() void OBSBasic::NewYouTubeAppDock() { - if (!cef) + if (!cef_js_avail) return; if (youtubeAppDock) @@ -8504,7 +8506,7 @@ void OBSBasic::NewYouTubeAppDock() void OBSBasic::DeleteYouTubeAppDock() { - if (!cef) + if (!cef_js_avail) return; if (youtubeAppDock) diff --git a/UI/window-basic-main.hpp b/UI/window-basic-main.hpp index 1a1d6be0b..e718230c8 100644 --- a/UI/window-basic-main.hpp +++ b/UI/window-basic-main.hpp @@ -1267,6 +1267,8 @@ public: #endif }; +extern bool cef_js_avail; + class SceneRenameDelegate : public QStyledItemDelegate { Q_OBJECT diff --git a/UI/window-basic-settings-stream.cpp b/UI/window-basic-settings-stream.cpp index e969ea61d..7c452cc23 100644 --- a/UI/window-basic-settings-stream.cpp +++ b/UI/window-basic-settings-stream.cpp @@ -771,7 +771,7 @@ void OBSBasicSettings::on_connectAccount_clicked() if (!!auth) { OnAuthConnected(); #ifdef YOUTUBE_ENABLED - if (cef && IsYouTubeService(service)) { + if (cef_js_avail && IsYouTubeService(service)) { if (!main->GetYouTubeAppDock()) { main->NewYouTubeAppDock(); } @@ -822,7 +822,7 @@ void OBSBasicSettings::on_disconnectAccount_clicked() ui->connectedAccountText->setVisible(false); #ifdef YOUTUBE_ENABLED - if (cef && IsYouTubeService(service)) { + if (cef_js_avail && IsYouTubeService(service)) { if (!main->GetYouTubeAppDock()) { main->NewYouTubeAppDock(); } diff --git a/UI/window-basic-settings.cpp b/UI/window-basic-settings.cpp index 1f74b77cd..61f64dd10 100644 --- a/UI/window-basic-settings.cpp +++ b/UI/window-basic-settings.cpp @@ -4248,7 +4248,7 @@ void OBSBasicSettings::on_listWidget_itemSelectionChanged() void OBSBasicSettings::UpdateYouTubeAppDockSettings() { #if defined(BROWSER_ENABLED) && defined(YOUTUBE_ENABLED) - if (cef) { + if (cef_js_avail) { std::string service = ui->service->currentText().toStdString(); if (IsYouTubeService(service)) { if (!main->GetYouTubeAppDock()) { diff --git a/UI/window-dock-youtube-app.cpp b/UI/window-dock-youtube-app.cpp index 3fddba3f3..505f39eca 100644 --- a/UI/window-dock-youtube-app.cpp +++ b/UI/window-dock-youtube-app.cpp @@ -50,7 +50,7 @@ YouTubeAppDock::~YouTubeAppDock() bool YouTubeAppDock::IsYTServiceSelected() { - if (!cef) + if (!cef_js_avail) return false; obs_service_t *service_obj = OBSBasic::Get()->GetService(); @@ -429,7 +429,7 @@ YoutubeApiWrappers *YouTubeAppDock::GetYTApi() void YouTubeAppDock::CleanupYouTubeUrls() { - if (!cef) + if (!cef_js_avail) return; static constexpr const char *YOUTUBE_VIDEO_URL = diff --git a/plugins/obs-browser b/plugins/obs-browser index 291464d69..7fe8b0b16 160000 --- a/plugins/obs-browser +++ b/plugins/obs-browser @@ -1 +1 @@ -Subproject commit 291464d6988083411e7369fc53eba6d5ef07ff67 +Subproject commit 7fe8b0b16ed092cecec825105d1ebabd0e2167c2