From fc7d6da3faf46c70f247824487dc872776ed2b74 Mon Sep 17 00:00:00 2001 From: StamLord <42681607+StamLord@users.noreply.github.com> Date: Wed, 24 Sep 2025 03:38:04 +0300 Subject: [PATCH] FoldableContainer: Override `has_point` to use title rect when folded --- scene/gui/foldable_container.cpp | 7 +++++++ scene/gui/foldable_container.h | 1 + 2 files changed, 8 insertions(+) diff --git a/scene/gui/foldable_container.cpp b/scene/gui/foldable_container.cpp index 20c0a5db93..0c948dddb5 100644 --- a/scene/gui/foldable_container.cpp +++ b/scene/gui/foldable_container.cpp @@ -255,6 +255,13 @@ String FoldableContainer::get_tooltip(const Point2 &p_pos) const { return String(); } +bool FoldableContainer::has_point(const Point2 &p_point) const { + if (folded) { + return _get_title_rect().has_point(p_point); + } + return Control::has_point(p_point); +} + void FoldableContainer::_notification(int p_what) { switch (p_what) { case NOTIFICATION_DRAW: { diff --git a/scene/gui/foldable_container.h b/scene/gui/foldable_container.h index 7b93a5094f..03d38deed0 100644 --- a/scene/gui/foldable_container.h +++ b/scene/gui/foldable_container.h @@ -102,6 +102,7 @@ private: protected: virtual void gui_input(const Ref &p_event) override; virtual String get_tooltip(const Point2 &p_pos) const override; + virtual bool has_point(const Point2 &p_point) const override; void _notification(int p_what); static void _bind_methods();