summaryrefslogtreecommitdiff
path: root/scene/main/canvas_item.cpp
diff options
context:
space:
mode:
authorRémi Verschelde <remi@verschelde.fr>2022-02-05 16:05:53 +0100
committerGitHub <noreply@github.com>2022-02-05 16:05:53 +0100
commitaecff478b71ccc4b8a6017ea896563fb0a95c002 (patch)
treed963e7a0567b16aa623fabd156044e15db8db38d /scene/main/canvas_item.cpp
parent69d7d1ec52c610a618265e48f26bd3d4bb1a1083 (diff)
parent189dab2d765dcc9ad74e7392fa0b239ea70a9513 (diff)
Merge pull request #48006 from KoBeWi/incognito_layer
Add visibility to CanvasLayer
Diffstat (limited to 'scene/main/canvas_item.cpp')
-rw-r--r--scene/main/canvas_item.cpp9
1 files changed, 9 insertions, 0 deletions
diff --git a/scene/main/canvas_item.cpp b/scene/main/canvas_item.cpp
index a0916c6291..a62bbb146c 100644
--- a/scene/main/canvas_item.cpp
+++ b/scene/main/canvas_item.cpp
@@ -72,6 +72,15 @@ bool CanvasItem::is_visible_in_tree() const {
p = p->get_parent_item();
}
+ const Node *n = get_parent();
+ while (n) {
+ const CanvasLayer *c = Object::cast_to<CanvasLayer>(n);
+ if (c && !c->is_visible()) {
+ return false;
+ }
+ n = n->get_parent();
+ }
+
return true;
}