Missing SCREEN_TOUCH events for more than one touches

:information_source: Attention Topic was automatically imported from the old Question2Answer platform.
:bust_in_silhouette: Asked By fractile
:warning: Old Version Published before Godot 3 was released.

I have one panel and a few TouchScreenButton nodes on it. In the panel script I log events in the _input_event() function.

On Android, the event function receives SCREEN_TOUCH event whenever I touch the screen (on a touch button or on the panel). Also, if I touch and hold on the panel outside the buttons and then touch a button, it changes state to pressed. All good so far.

If I touch and hold on the panel and then touch at another point, the function does not receive another SCREEN_TOUCH event. Based on the events it looks like Godot only recognizes one touch, but then again, the touch buttons work fine with multiple touches.

Shouldn’t the event function receive one event per every new touch?

Godot supports multitouch (at least _input and _unhandled_input does), but some older devices might not have it.
What do you mean by inputevent() function? CollisionObject2D._input_event() or what?

Kermer | 2016-03-20 16:07

I mean Control._input_event() re-implemented in my in script for the panel (of type Panel).

And the device definitely supports multi touch. It does work with multiple TouchScreenButtons, but I just don’t receive events for more than one touches at a time in the _input_event() function.

fractile | 2016-03-20 16:25

:bust_in_silhouette: Reply From: fractile

I’m answering my own question: It seems that Control._input_event() does not receive multiple events, but Node._input() does. I’ll just use that then. Thanks for the hint, Kermer.