Merge pull request #90639 from YeldhamDev/stay_open_please

Fix submenus erroneously closing on some occasions
This commit is contained in:
Rémi Verschelde 2024-04-17 10:58:46 +02:00
commit fad6897af0
No known key found for this signature in database
GPG key ID: C3336907360768E1

View file

@ -640,11 +640,17 @@ void PopupMenu::_input_from_window_internal(const Ref<InputEvent> &p_event) {
for (const Rect2 &E : autohide_areas) {
if (!Rect2(Point2(), get_size()).has_point(m->get_position()) && E.has_point(m->get_position())) {
// The mouse left the safe area, prepare to close.
_close_pressed();
return;
}
}
if (!minimum_lifetime_timer->is_stopped()) {
// The mouse left the safe area, but came back again, so cancel the auto-closing.
minimum_lifetime_timer->stop();
}
if (!item_clickable_area.has_point(m->get_position())) {
return;
}