UI: Add option for only one fullscreen projector per screen

This option is added for users who want to have only one
projector on a screen and want to save gpu resources.
This commit is contained in:
Clayton Groeneveld
2021-08-06 01:42:29 -05:00
committed by Jim
parent 54a808c34a
commit 6a0348cf64
4 changed files with 29 additions and 0 deletions

View File

@@ -396,6 +396,7 @@ OBSBasicSettings::OBSBasicSettings(QWidget *parent)
HookWidget(ui->systemTrayWhenStarted,CHECK_CHANGED, GENERAL_CHANGED);
HookWidget(ui->systemTrayAlways, CHECK_CHANGED, GENERAL_CHANGED);
HookWidget(ui->saveProjectors, CHECK_CHANGED, GENERAL_CHANGED);
HookWidget(ui->closeProjectors, CHECK_CHANGED, GENERAL_CHANGED);
HookWidget(ui->snappingEnabled, CHECK_CHANGED, GENERAL_CHANGED);
HookWidget(ui->screenSnapping, CHECK_CHANGED, GENERAL_CHANGED);
HookWidget(ui->centerSnapping, CHECK_CHANGED, GENERAL_CHANGED);
@@ -1259,6 +1260,10 @@ void OBSBasicSettings::LoadGeneralSettings()
"SaveProjectors");
ui->saveProjectors->setChecked(saveProjectors);
bool closeProjectors = config_get_bool(GetGlobalConfig(), "BasicWindow",
"CloseExistingProjectors");
ui->closeProjectors->setChecked(closeProjectors);
bool snappingEnabled = config_get_bool(GetGlobalConfig(), "BasicWindow",
"SnappingEnabled");
ui->snappingEnabled->setChecked(snappingEnabled);
@@ -3172,6 +3177,11 @@ void OBSBasicSettings::SaveGeneralSettings()
"SaveProjectors",
ui->saveProjectors->isChecked());
if (WidgetChanged(ui->closeProjectors))
config_set_bool(GetGlobalConfig(), "BasicWindow",
"CloseExistingProjectors",
ui->closeProjectors->isChecked());
if (WidgetChanged(ui->studioPortraitLayout)) {
config_set_bool(GetGlobalConfig(), "BasicWindow",
"StudioPortraitLayout",