Quellcode durchsuchen

Merge pull request #28641 from Chaosus/fix_vs_collapse

Fixed incorrect collapsing visual shader tree
Yuri Roubinsky vor 6 Jahren
Ursprung
Commit
184bd3f6e5
1 geänderte Dateien mit 9 neuen und 3 gelöschten Zeilen
  1. 9 3
      editor/plugins/visual_shader_editor_plugin.cpp

+ 9 - 3
editor/plugins/visual_shader_editor_plugin.cpp

@@ -58,9 +58,15 @@ void VisualShaderNodePlugin::_bind_methods() {
 
 void VisualShaderEditor::edit(VisualShader *p_visual_shader) {
 
-	bool first_init = false;
+	bool changed = false;
 	if (p_visual_shader) {
-		first_init = true;
+		if (visual_shader.is_null()) {
+			changed = true;
+		} else {
+			if (visual_shader.ptr() != p_visual_shader) {
+				changed = true;
+			}
+		}
 		visual_shader = Ref<VisualShader>(p_visual_shader);
 	} else {
 		visual_shader.unref();
@@ -69,7 +75,7 @@ void VisualShaderEditor::edit(VisualShader *p_visual_shader) {
 	if (visual_shader.is_null()) {
 		hide();
 	} else {
-		if (first_init) { // to avoid tree collapse
+		if (changed) { // to avoid tree collapse
 			_update_options_menu();
 		}
 		_update_graph();