UI: Don't modify theme if already set

This includes reselecting the existing selection, and cancelling out of
settings altogether. Takes a long time (7 seconds) in debug builds.
This commit is contained in:
jpark37
2019-12-07 10:20:57 -08:00
parent 5d5afc463f
commit bb04c961bc

View File

@@ -3509,7 +3509,8 @@ void OBSBasicSettings::on_theme_activated(int idx)
if (currT == defaultTheme)
currT = DEFAULT_THEME;
App()->SetTheme(currT.toUtf8().constData());
if (currT != App()->GetTheme())
App()->SetTheme(currT.toUtf8().constData());
}
void OBSBasicSettings::on_listWidget_itemSelectionChanged()
@@ -3535,7 +3536,8 @@ void OBSBasicSettings::on_buttonBox_clicked(QAbstractButton *button)
if (val == QDialogButtonBox::AcceptRole ||
val == QDialogButtonBox::RejectRole) {
if (val == QDialogButtonBox::RejectRole) {
App()->SetTheme(savedTheme);
if (savedTheme != App()->GetTheme())
App()->SetTheme(savedTheme);
#ifdef _WIN32
if (toggleAero)
SetAeroEnabled(!aeroWasDisabled);