Browse Source

Merge pull request #97187 from KoBeWi/do_not

Don't store project metadata when loading
Rémi Verschelde 10 months ago
parent
commit
0a4aedb360
3 changed files with 13 additions and 6 deletions
  1. 1 1
      editor/action_map_editor.cpp
  2. 11 4
      editor/editor_node.cpp
  3. 1 1
      editor/project_settings_editor.cpp

+ 1 - 1
editor/action_map_editor.cpp

@@ -589,7 +589,7 @@ ActionMapEditor::ActionMapEditor() {
 	add_hbox->add_child(show_builtin_actions_checkbutton);
 
 	show_builtin_actions = EditorSettings::get_singleton()->get_project_metadata("project_settings", "show_builtin_actions", false);
-	show_builtin_actions_checkbutton->set_pressed(show_builtin_actions);
+	show_builtin_actions_checkbutton->set_pressed_no_signal(show_builtin_actions);
 
 	main_vbox->add_child(add_hbox);
 

+ 11 - 4
editor/editor_node.cpp

@@ -4113,7 +4113,9 @@ Error EditorNode::load_scene(const String &p_scene, bool p_ignore_broken_deps, b
 
 	_update_title();
 	scene_tabs->update_scene_tabs();
-	_add_to_recent_scenes(lpath);
+	if (!restoring_scenes) {
+		_add_to_recent_scenes(lpath);
+	}
 
 	return OK;
 }
@@ -7908,9 +7910,14 @@ EditorNode::EditorNode() {
 		title_bar->set_can_move_window(true);
 	}
 
-	String exec = OS::get_singleton()->get_executable_path();
-	// Save editor executable path for third-party tools.
-	EditorSettings::get_singleton()->set_project_metadata("editor_metadata", "executable_path", exec);
+	{
+		const String exec = OS::get_singleton()->get_executable_path();
+		const String old_exec = EditorSettings::get_singleton()->get_project_metadata("editor_metadata", "executable_path", "");
+		// Save editor executable path for third-party tools.
+		if (exec != old_exec) {
+			EditorSettings::get_singleton()->set_project_metadata("editor_metadata", "executable_path", exec);
+		}
+	}
 
 	follow_system_theme = EDITOR_GET("interface/theme/follow_system_theme");
 	use_system_accent_color = EDITOR_GET("interface/theme/use_system_accent_color");

+ 1 - 1
editor/project_settings_editor.cpp

@@ -771,7 +771,7 @@ ProjectSettingsEditor::ProjectSettingsEditor(EditorData *p_data) {
 	bool use_advanced = EditorSettings::get_singleton()->get_project_metadata("project_settings", "advanced_mode", false);
 
 	if (use_advanced) {
-		advanced->set_pressed(true);
+		advanced->set_pressed_no_signal(true);
 	}
 
 	_update_advanced(use_advanced);