diff --git a/scene/2d/screen_button.cpp b/scene/2d/screen_button.cpp index 92d6954d97e..b606634819a 100644 --- a/scene/2d/screen_button.cpp +++ b/scene/2d/screen_button.cpp @@ -92,7 +92,10 @@ void TouchScreenButton::_notification(int p_what) { if (!get_scene()->is_editor_hint() && !OS::get_singleton()->has_touchscreen_ui_hint() && visibility==VISIBILITY_TOUCHSCREEN_ONLY) return; update(); - set_process_input(true); + + if (!get_scene()->is_editor_hint()) + set_process_input(true); + if (action.operator String()!="" && InputMap::get_singleton()->has_action(action)) { action_id=InputMap::get_singleton()->get_action_id(action); } else { @@ -170,7 +173,8 @@ void TouchScreenButton::_input(const InputEvent& p_event) { } } else { - touched=Rect2(Point2(),texture->get_size()).has_point(coord); + if (texture.is_valid()) + touched=Rect2(Point2(),texture->get_size()).has_point(coord); }