mirror of
https://github.com/obsproject/obs-studio.git
synced 2024-09-20 04:42:18 +02:00
UI: Fix undo delete scene that is used as source
This commit is contained in:
parent
95b92f6de3
commit
08d9069201
@ -3737,6 +3737,24 @@ void OBSBasic::RemoveSelectedScene()
|
||||
obs_data_array_push_back(array, scene_data);
|
||||
obs_data_release(scene_data);
|
||||
|
||||
/* ----------------------------------------------- */
|
||||
/* save all scenes and groups the scene is used in */
|
||||
|
||||
for (int i = 0; i < ui->scenes->count(); i++) {
|
||||
QListWidgetItem *widget_item = ui->scenes->item(i);
|
||||
auto item_scene = GetOBSRef<OBSScene>(widget_item);
|
||||
if (scene == item_scene)
|
||||
continue;
|
||||
auto *item = obs_scene_find_source_recursive(
|
||||
item_scene, obs_source_get_name(source));
|
||||
if (item) {
|
||||
scene_data = obs_save_source(obs_scene_get_source(
|
||||
obs_sceneitem_get_scene(item)));
|
||||
obs_data_array_push_back(array, scene_data);
|
||||
obs_data_release(scene_data);
|
||||
}
|
||||
}
|
||||
|
||||
/* --------------------------- */
|
||||
/* undo/redo */
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user