From f07dfe8a3fd8f70523bdd1406e2b5d3baa02d828 Mon Sep 17 00:00:00 2001 From: PouleyKetchoupp Date: Thu, 21 Feb 2019 00:47:17 +0100 Subject: [PATCH] Fixed TextureButton click mask when no other texture is set --- scene/gui/texture_button.cpp | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/scene/gui/texture_button.cpp b/scene/gui/texture_button.cpp index 95aab95253..c8338c72db 100644 --- a/scene/gui/texture_button.cpp +++ b/scene/gui/texture_button.cpp @@ -64,7 +64,9 @@ bool TextureButton::has_point(const Point2 &p_point) const { Rect2 rect = Rect2(); Size2 mask_size = click_mask->get_size(); - if (_tile) { + if (_position_rect.no_area()) { + rect.size = mask_size; + } else if (_tile) { // if the stretch mode is tile we offset the point to keep it inside the mask size rect.size = mask_size; if (_position_rect.has_point(point)) { @@ -216,6 +218,8 @@ void TextureButton::_notification(int p_what) { draw_texture_rect(texdraw, _position_rect, _tile); else draw_texture_rect_region(texdraw, _position_rect, _texture_region); + } else { + _position_rect = Rect2(); } if (has_focus() && focused.is_valid()) {