Răsfoiți Sursa

Merge pull request #48609 from akien-mga/3.x-fix-tileset-signal-error

TileSet: Fix signal disconnect error in some situation
Rémi Verschelde 4 ani în urmă
părinte
comite
71f8b910ff
1 a modificat fișierele cu 6 adăugiri și 2 ștergeri
  1. 6 2
      editor/plugins/tile_set_editor_plugin.cpp

+ 6 - 2
editor/plugins/tile_set_editor_plugin.cpp

@@ -3602,11 +3602,15 @@ void TileSetEditorPlugin::make_visible(bool p_visible) {
 	if (p_visible) {
 	if (p_visible) {
 		tileset_editor_button->show();
 		tileset_editor_button->show();
 		editor->make_bottom_panel_item_visible(tileset_editor);
 		editor->make_bottom_panel_item_visible(tileset_editor);
-		get_tree()->connect("idle_frame", tileset_editor, "_on_workspace_process");
+		if (!get_tree()->is_connected("idle_frame", tileset_editor, "_on_workspace_process")) {
+			get_tree()->connect("idle_frame", tileset_editor, "_on_workspace_process");
+		}
 	} else {
 	} else {
 		editor->hide_bottom_panel();
 		editor->hide_bottom_panel();
 		tileset_editor_button->hide();
 		tileset_editor_button->hide();
-		get_tree()->disconnect("idle_frame", tileset_editor, "_on_workspace_process");
+		if (get_tree()->is_connected("idle_frame", tileset_editor, "_on_workspace_process")) {
+			get_tree()->disconnect("idle_frame", tileset_editor, "_on_workspace_process");
+		}
 	}
 	}
 }
 }