You've already forked godot
mirror of
https://github.com/godotengine/godot.git
synced 2025-12-02 16:48:55 +00:00
Make Menu/OptionButton item auto-highlight behave better
(cherry picked from commit 50506e19a6)
This commit is contained in:
committed by
Rémi Verschelde
parent
5c9ced191b
commit
4744a8a1a9
@@ -64,6 +64,8 @@ void BaseButton::_gui_input(Ref<InputEvent> p_event) {
|
||||
|
||||
bool button_masked = mouse_button.is_valid() && ((1 << (mouse_button->get_button_index() - 1)) & button_mask) > 0;
|
||||
if (button_masked || ui_accept) {
|
||||
was_mouse_pressed = button_masked;
|
||||
|
||||
on_action_event(p_event);
|
||||
return;
|
||||
}
|
||||
@@ -388,6 +390,10 @@ Ref<ButtonGroup> BaseButton::get_button_group() const {
|
||||
return button_group;
|
||||
}
|
||||
|
||||
bool BaseButton::_was_pressed_by_mouse() const {
|
||||
return was_mouse_pressed;
|
||||
}
|
||||
|
||||
void BaseButton::_bind_methods() {
|
||||
ClassDB::bind_method(D_METHOD("_gui_input"), &BaseButton::_gui_input);
|
||||
ClassDB::bind_method(D_METHOD("_unhandled_input"), &BaseButton::_unhandled_input);
|
||||
@@ -449,6 +455,7 @@ BaseButton::BaseButton() {
|
||||
toggle_mode = false;
|
||||
shortcut_in_tooltip = true;
|
||||
keep_pressed_outside = false;
|
||||
was_mouse_pressed = false;
|
||||
status.pressed = false;
|
||||
status.press_attempt = false;
|
||||
status.hovering = false;
|
||||
|
||||
Reference in New Issue
Block a user