diff options
author | volzhs <volzhs@gmail.com> | 2016-12-28 14:27:27 +0900 |
---|---|---|
committer | volzhs <volzhs@gmail.com> | 2016-12-28 14:27:27 +0900 |
commit | 792ff11642c0bd0d2c2c647a2cc4d828f47d35d0 (patch) | |
tree | 8c62da16382402673341620128ec8e869d23d330 /scene | |
parent | c798ff15510997fdbe6848687804f5e2cb17eefb (diff) |
Able to change visibility when ancestor node is hidden
Diffstat (limited to 'scene')
-rw-r--r-- | scene/2d/canvas_item.cpp | 9 |
1 files changed, 2 insertions, 7 deletions
diff --git a/scene/2d/canvas_item.cpp b/scene/2d/canvas_item.cpp index ed1d606ba8..995120bc99 100644 --- a/scene/2d/canvas_item.cpp +++ b/scene/2d/canvas_item.cpp @@ -261,16 +261,13 @@ void CanvasItem::show() { if (!hidden) return; - hidden=false; VisualServer::get_singleton()->canvas_item_set_visible(canvas_item,true); if (!is_inside_tree()) return; - if (is_visible()) { - _propagate_visibility_changed(true); - } + _propagate_visibility_changed(true); _change_notify("visibility/visible"); } @@ -280,15 +277,13 @@ void CanvasItem::hide() { if (hidden) return; - bool propagate=is_inside_tree() && is_visible(); hidden=true; VisualServer::get_singleton()->canvas_item_set_visible(canvas_item,false); if (!is_inside_tree()) return; - if (propagate) - _propagate_visibility_changed(false); + _propagate_visibility_changed(false); _change_notify("visibility/visible"); } |