From ebe54833a9425ca5bed21def64d3e8aa66b1b788 Mon Sep 17 00:00:00 2001 From: Nikolay Neupokoev Date: Thu, 18 Apr 2019 15:50:35 -0700 Subject: Fix popup visibility for OptionButton, MenuButton and ColorPickerButton Hide popup when its button or another parent object is hidden Fixes #26937 --- scene/gui/menu_button.cpp | 10 ++++++++++ 1 file changed, 10 insertions(+) (limited to 'scene/gui/menu_button.cpp') diff --git a/scene/gui/menu_button.cpp b/scene/gui/menu_button.cpp index b67d8c00d6..73367aadea 100644 --- a/scene/gui/menu_button.cpp +++ b/scene/gui/menu_button.cpp @@ -91,6 +91,16 @@ bool MenuButton::is_switch_on_hover() { return switch_on_hover; } +void MenuButton::_notification(int p_what) { + + if (p_what == NOTIFICATION_VISIBILITY_CHANGED) { + + if (!is_visible_in_tree()) { + popup->hide(); + } + } +} + void MenuButton::_bind_methods() { ClassDB::bind_method(D_METHOD("get_popup"), &MenuButton::get_popup); -- cgit v1.2.3