Browse Source

UI: Fix reset ui warning showing on first start

If a plugin adds a dock and the program is run for the
first time, the reset ui warning would show up.
Clayton Groeneveld 3 years ago
parent
commit
873ee8e7ba
2 changed files with 5 additions and 5 deletions
  1. 4 4
      UI/window-basic-main.cpp
  2. 1 1
      UI/window-basic-main.hpp

+ 4 - 4
UI/window-basic-main.cpp

@@ -1980,12 +1980,12 @@ void OBSBasic::OBSInit()
 		App()->GlobalConfig(), "BasicWindow", "DockState");
 
 	if (!dockStateStr) {
-		on_resetDocks_triggered();
+		on_resetDocks_triggered(true);
 	} else {
 		QByteArray dockState =
 			QByteArray::fromBase64(QByteArray(dockStateStr));
 		if (!restoreState(dockState))
-			on_resetDocks_triggered();
+			on_resetDocks_triggered(true);
 	}
 
 	bool pre23Defaults = config_get_bool(App()->GlobalConfig(), "General",
@@ -8781,7 +8781,7 @@ int OBSBasic::GetProfilePath(char *path, size_t size, const char *file) const
 	return snprintf(path, size, "%s/%s/%s", profiles_path, profile, file);
 }
 
-void OBSBasic::on_resetDocks_triggered()
+void OBSBasic::on_resetDocks_triggered(bool force)
 {
 	/* prune deleted extra docks */
 	for (int i = extraDocks.size() - 1; i >= 0; i--) {
@@ -8790,7 +8790,7 @@ void OBSBasic::on_resetDocks_triggered()
 		}
 	}
 
-	if (extraDocks.size()) {
+	if (extraDocks.size() && !force) {
 		QMessageBox::StandardButton button = QMessageBox::question(
 			this, QTStr("ResetUIWarning.Title"),
 			QTStr("ResetUIWarning.Text"));

+ 1 - 1
UI/window-basic-main.hpp

@@ -1083,7 +1083,7 @@ private slots:
 	void on_stats_triggered();
 
 	void on_resetUI_triggered();
-	void on_resetDocks_triggered();
+	void on_resetDocks_triggered(bool force = false);
 	void on_lockDocks_toggled(bool lock);
 
 	void PauseToggled();