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
@ -2945,6 +2945,16 @@ void Viewport::push_input(const Ref<InputEvent> &p_event, bool p_local_coords) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
local_input_handled = false;
|
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;
|
Ref<InputEvent> ev;
|
||||||
if (!p_local_coords) {
|
if (!p_local_coords) {
|
||||||
|
Loading…
Reference in New Issue
Block a user