浏览代码

Fix visibility toggle for Spatials in SceneTreeEditor

Fixes #17722, was a regression from #15239.
Rémi Verschelde 7 年之前
父节点
当前提交
3764cf6245
共有 1 个文件被更改,包括 4 次插入6 次删除
  1. 4 6
      editor/scene_tree_editor.cpp

+ 4 - 6
editor/scene_tree_editor.cpp

@@ -248,15 +248,13 @@ void SceneTreeEditor::_cell_button_pressed(Object *p_item, int p_column, int p_i
 
 void SceneTreeEditor::_toggle_visible(Node *p_node) {
 	if (p_node->is_type("Spatial")) {
-		bool v = bool(p_node->call("is_visible"));
-		p_node->call("set_visible", !v);
-	}
-	else if (p_node->is_type("CanvasItem")) {
+		bool v = !bool(p_node->call("is_hidden"));
+		p_node->call("_set_visible_", !v);
+	} else if (p_node->is_type("CanvasItem")) {
 		bool v = bool(p_node->call("is_visible"));
 		if (v) {
 			p_node->call("hide");
-		}
-		else {
+		} else {
 			p_node->call("show");
 		}
 	}