Fix push_input only working the first time
Subviewports didn't update their parent's local_input_handled correctly. Fixes #76439.
This commit is contained in:
parent
a83eb16fba
commit
7957354091
1 changed files with 10 additions and 0 deletions
|
@ -2945,6 +2945,16 @@ void Viewport::push_input(const Ref<InputEvent> &p_event, bool p_local_coords) {
|
|||
}
|
||||
|
||||
local_input_handled = false;
|
||||
if (!handle_input_locally) {
|
||||
Viewport *vp = this;
|
||||
while (true) {
|
||||
if (Object::cast_to<Window>(vp) || !vp->get_parent()) {
|
||||
break;
|
||||
}
|
||||
vp = vp->get_parent()->get_viewport();
|
||||
}
|
||||
vp->local_input_handled = false;
|
||||
}
|
||||
|
||||
Ref<InputEvent> ev;
|
||||
if (!p_local_coords) {
|
||||
|
|
Loading…
Reference in a new issue