diff --git a/UI/window-basic-main.cpp b/UI/window-basic-main.cpp index fe128a37d..586456bdf 100644 --- a/UI/window-basic-main.cpp +++ b/UI/window-basic-main.cpp @@ -729,6 +729,8 @@ void OBSBasic::Save(const char *file) obs_data_set_double(saveData, "scaling_off_y", ui->preview->GetScrollY()); + OBSBasicVCamConfig::SaveData(saveData, true); + if (api) { OBSDataAutoRelease moduleObj = obs_data_create(); api->on_save(moduleObj); @@ -1141,6 +1143,8 @@ retryScene: ui->preview->SetFixedScaling(fixedScaling); emit ui->preview->DisplayResized(); + OBSBasicVCamConfig::SaveData(data, false); + /* ---------------------- */ if (api) diff --git a/UI/window-basic-vcam-config.cpp b/UI/window-basic-vcam-config.cpp index 59dc47f35..b2286c2b9 100644 --- a/UI/window-basic-vcam-config.cpp +++ b/UI/window-basic-vcam-config.cpp @@ -133,7 +133,7 @@ void OBSBasicVCamConfig::Save() UpdateOutputSource(); } -static void SaveCallback(obs_data_t *data, bool saving, void *) +void OBSBasicVCamConfig::SaveData(obs_data_t *data, bool saving) { if (saving) { OBSDataAutoRelease obj = obs_data_create(); @@ -189,7 +189,6 @@ void OBSBasicVCamConfig::Init() vCamConfig = &staticConfig; - obs_frontend_add_save_callback(SaveCallback, nullptr); obs_frontend_add_event_callback(EventCallback, nullptr); } diff --git a/UI/window-basic-vcam-config.hpp b/UI/window-basic-vcam-config.hpp index bc3639976..03cbdb0c9 100644 --- a/UI/window-basic-vcam-config.hpp +++ b/UI/window-basic-vcam-config.hpp @@ -17,6 +17,7 @@ public: static void DestroyView(); static void UpdateOutputSource(); + static void SaveData(obs_data_t *data, bool saving); explicit OBSBasicVCamConfig(QWidget *parent = 0);