|
@@ -31,6 +31,7 @@
|
|
|
#include "print_string.h"
|
|
|
#include "button_group.h"
|
|
|
#include "scene/scene_string_names.h"
|
|
|
+#include "scene/main/viewport.h"
|
|
|
|
|
|
void BaseButton::_input_event(InputEvent p_event) {
|
|
|
|
|
@@ -416,6 +417,10 @@ Ref<ShortCut> BaseButton:: get_shortcut() const {
|
|
|
void BaseButton::_unhandled_input(InputEvent p_event) {
|
|
|
|
|
|
if (!is_disabled() && is_visible() && shortcut.is_valid() && shortcut->is_shortcut(p_event)) {
|
|
|
+
|
|
|
+ if (get_viewport()->get_modal_stack_top() && !get_viewport()->get_modal_stack_top()->is_a_parent_of(this))
|
|
|
+ return; //ignore because of modal window
|
|
|
+
|
|
|
if (is_toggle_mode()) {
|
|
|
set_pressed(!is_pressed());
|
|
|
emit_signal("toggled",is_pressed());
|