koreader / koreader

An ebook reader application supporting PDF, DjVu, EPUB, FB2 and many more formats, running on Cervantes, Kindle, Kobo, PocketBook and Android devices
http://koreader.rocks/
GNU Affero General Public License v3.0
16.78k stars 1.26k forks source link

SDL2 and physical touch screens #9091

Closed hrdl-github closed 2 years ago

hrdl-github commented 2 years ago

Issue

I've been trying to make the touch screen work on the Pine64 PineNote, which features both a touchscreen and a pen-based tablet. Pen-based input, which corresponds SDL_MOUSE* events, works just fine. Any touch input gets translated into the same sequence (SDL_MOUSEMOTION, SDL_MOUSEBUTTONDOWN, SDL_FINGERDOWN, SDL_MOUSEBUTTONUP, SDL_FINGERUP) as soon as the finger touches the screen. Any subsequent motion or the up event do not result in an SDL2 input event, effectively translating all touch input to single taps. When using the hint SDL.SDL_SetHint("SDL_TOUCH_MOUSE_EVENTS", "0") I observe all SDL_FINGER* events as expected and all gestures and long presses work as expected. The problem and solution apply to both wayland/sway (libinput) and X11/XFCE (xf86-input-libinput).

Does it make sense to set this hint in general? I don't have any other devices with a touchscreen that support the SDL2 build. If not, should this be made configurable?

Frenzie commented 2 years ago

If you share your changes I'll test the behavior on my touchscreen. I suspect we want that hint as 0 in principle, but of course we want to actually deal with multiple fingers.

hrdl-github commented 2 years ago

I'm not sure where to place this hint, so I've put it here for now: https://github.com/lennonhill/koreader-base/commit/75ca3d67c4bbc37c12e86665e76d2ef9dfbe1c54

Frenzie commented 2 years ago

Oh, I didn't realize that was the full extent of your changes or I wouldn't have asked. :rofl: Suffice it to say I want to do a whole lot more with the finger stuff. ;-)

hrdl-github commented 2 years ago

No worries. Two-finger swipes don't seem to be working for me. I see the SDL events I'd expect, but the gesture is not recognised. I will provide some debug information later today.

Frenzie commented 2 years ago

That's expected. It's precisely actually handling those events properly that has to be added. I think possibly in front, not in base. But as long as single-touch still works with that flag without any additional changes, it should be harmless.

hrdl-github commented 2 years ago

Right, events with type SDL_MULTIGESTURE are ignored at the moment. I get this mixture of SDL_MULTIGESTURE and SDL_FINGERMOTION events, which leads to one long multi-swipe gesture, which makes perfect sense now:

koreader.log ``` 05/10/22-13:04:54 DEBUG SDL event 1792 05/10/22-13:04:54 DEBUG input event => type: 3 (EV_ABS), code: 57 (ABS_MT_TRACKING_ID), value: 0, time: 1398.488387 05/10/22-13:04:54 DEBUG input event => type: 3 (EV_ABS), code: 53 (ABS_MT_POSITION_X), value: 148.53516072035, time: 1398.488387 05/10/22-13:04:54 DEBUG input event => type: 3 (EV_ABS), code: 54 (ABS_MT_POSITION_Y), value: 1076.3750188351, time: 1398.488387 05/10/22-13:04:54 DEBUG input event => type: 0 (EV_SYN), code: 0 (SYN_REPORT), value: 0, time: 1398.488387 05/10/22-13:04:54 DEBUG in tap state... 05/10/22-13:04:54 DEBUG set up hold timer 05/10/22-13:04:54 DEBUG adjusted ges: touch 05/10/22-13:04:54 DEBUG AutoSuspend: onInputEvent 05/10/22-13:04:54 DEBUG AutoTurn: onInputEvent 05/10/22-13:04:54 DEBUG SDL event 1792 05/10/22-13:04:54 DEBUG input event => type: 3 (EV_ABS), code: 57 (ABS_MT_TRACKING_ID), value: 0, time: 1398.492387 05/10/22-13:04:54 DEBUG input event => type: 3 (EV_ABS), code: 53 (ABS_MT_POSITION_X), value: 182.65625834465, time: 1398.492387 05/10/22-13:04:54 DEBUG input event => type: 3 (EV_ABS), code: 54 (ABS_MT_POSITION_Y), value: 720.66798126698, time: 1398.492387 05/10/22-13:04:54 DEBUG input event => type: 0 (EV_SYN), code: 0 (SYN_REPORT), value: 0, time: 1398.492387 05/10/22-13:04:54 DEBUG in tap state... 05/10/22-13:04:54 DEBUG in pan state... 05/10/22-13:04:54 DEBUG adjusted ges: pan north 05/10/22-13:04:54 DEBUG AutoSuspend: onInputEvent 05/10/22-13:04:54 DEBUG AutoTurn: onInputEvent 05/10/22-13:04:54 DEBUG SDL event 1794 05/10/22-13:04:54 DEBUG input event => type: 3 (EV_ABS), code: 53 (ABS_MT_POSITION_X), value: 192.69140958786, time: 1398.528386 05/10/22-13:04:54 DEBUG input event => type: 3 (EV_ABS), code: 54 (ABS_MT_POSITION_Y), value: 1070.3476104736, time: 1398.528386 05/10/22-13:04:54 DEBUG input event => type: 0 (EV_SYN), code: 0 (SYN_REPORT), value: 0, time: 1398.528386 05/10/22-13:04:54 DEBUG in pan state... 05/10/22-13:04:54 DEBUG adjusted ges: pan east 05/10/22-13:04:54 DEBUG AutoSuspend: onInputEvent 05/10/22-13:04:54 DEBUG AutoTurn: onInputEvent 05/10/22-13:04:54 DEBUG SDL event 2050 05/10/22-13:04:54 DEBUG input event => type: 83 (EV_SDL), code: 2050, value: cdata: 0x7f979d1378, time: 1398.532386 05/10/22-13:04:54 DEBUG SDL event 1794 05/10/22-13:04:54 DEBUG input event => type: 3 (EV_ABS), code: 53 (ABS_MT_POSITION_X), value: 220.792979002, time: 1398.532386 05/10/22-13:04:54 DEBUG input event => type: 3 (EV_ABS), code: 54 (ABS_MT_POSITION_Y), value: 726.69533514977, time: 1398.532386 05/10/22-13:04:54 DEBUG input event => type: 0 (EV_SYN), code: 0 (SYN_REPORT), value: 0, time: 1398.532386 05/10/22-13:04:54 DEBUG in pan state... 05/10/22-13:04:54 DEBUG adjusted ges: pan north 05/10/22-13:04:54 DEBUG AutoSuspend: onInputEvent 05/10/22-13:04:54 DEBUG AutoTurn: onInputEvent 05/10/22-13:04:54 DEBUG SDL event 2050 05/10/22-13:04:54 DEBUG input event => type: 83 (EV_SDL), code: 2050, value: cdata: 0x7fa053b018, time: 1398.536386 05/10/22-13:04:54 DEBUG SDL event 1794 05/10/22-13:04:54 DEBUG input event => type: 3 (EV_ABS), code: 53 (ABS_MT_POSITION_X), value: 221.79688215256, time: 1398.536386 05/10/22-13:04:54 DEBUG input event => type: 3 (EV_ABS), code: 54 (ABS_MT_POSITION_Y), value: 1066.3281760216, time: 1398.536386 05/10/22-13:04:54 DEBUG input event => type: 0 (EV_SYN), code: 0 (SYN_REPORT), value: 0, time: 1398.536386 05/10/22-13:04:54 DEBUG in pan state... 05/10/22-13:04:54 DEBUG adjusted ges: pan east 05/10/22-13:04:54 DEBUG AutoSuspend: onInputEvent 05/10/22-13:04:54 DEBUG AutoTurn: onInputEvent 05/10/22-13:04:54 DEBUG SDL event 2050 05/10/22-13:04:54 DEBUG input event => type: 83 (EV_SDL), code: 2050, value: cdata: 0x7f9c55a680, time: 1398.536386 05/10/22-13:04:54 DEBUG SDL event 1794 05/10/22-13:04:54 DEBUG input event => type: 3 (EV_ABS), code: 53 (ABS_MT_POSITION_X), value: 247.89062440395, time: 1398.540386 05/10/22-13:04:54 DEBUG input event => type: 3 (EV_ABS), code: 54 (ABS_MT_POSITION_Y), value: 728.70701360703, time: 1398.540386 05/10/22-13:04:54 DEBUG input event => type: 0 (EV_SYN), code: 0 (SYN_REPORT), value: 0, time: 1398.540386 05/10/22-13:04:54 DEBUG in pan state... 05/10/22-13:04:54 DEBUG adjusted ges: pan north 05/10/22-13:04:54 DEBUG AutoSuspend: onInputEvent 05/10/22-13:04:54 DEBUG AutoTurn: onInputEvent 05/10/22-13:04:54 DEBUG SDL event 2050 05/10/22-13:04:54 DEBUG input event => type: 83 (EV_SDL), code: 2050, value: cdata: 0x7f9f815bd0, time: 1398.540386 05/10/22-13:04:54 DEBUG SDL event 1794 05/10/22-13:04:54 DEBUG input event => type: 3 (EV_ABS), code: 53 (ABS_MT_POSITION_X), value: 250.90233385563, time: 1398.548386 05/10/22-13:04:54 DEBUG input event => type: 3 (EV_ABS), code: 54 (ABS_MT_POSITION_Y), value: 1062.3086326122, time: 1398.548386 05/10/22-13:04:54 DEBUG input event => type: 0 (EV_SYN), code: 0 (SYN_REPORT), value: 0, time: 1398.548386 05/10/22-13:04:54 DEBUG in pan state... 05/10/22-13:04:54 DEBUG adjusted ges: pan east 05/10/22-13:04:54 DEBUG AutoSuspend: onInputEvent 05/10/22-13:04:54 DEBUG AutoTurn: onInputEvent 05/10/22-13:04:54 DEBUG SDL event 2050 05/10/22-13:04:54 DEBUG input event => type: 83 (EV_SDL), code: 2050, value: cdata: 0x7f979fc5a0, time: 1398.552386 05/10/22-13:04:54 DEBUG SDL event 1794 05/10/22-13:04:54 DEBUG input event => type: 3 (EV_ABS), code: 53 (ABS_MT_POSITION_X), value: 282.01171159744, time: 1398.552386 05/10/22-13:04:54 DEBUG input event => type: 3 (EV_ABS), code: 54 (ABS_MT_POSITION_Y), value: 731.71875655651, time: 1398.552386 05/10/22-13:04:54 DEBUG input event => type: 0 (EV_SYN), code: 0 (SYN_REPORT), value: 0, time: 1398.552386 05/10/22-13:04:54 DEBUG in pan state... 05/10/22-13:04:54 DEBUG adjusted ges: pan north 05/10/22-13:04:54 DEBUG AutoSuspend: onInputEvent 05/10/22-13:04:54 DEBUG AutoTurn: onInputEvent 05/10/22-13:04:54 DEBUG SDL event 2050 05/10/22-13:04:54 DEBUG input event => type: 83 (EV_SDL), code: 2050, value: cdata: 0x7f9c736688, time: 1398.556386 05/10/22-13:04:54 DEBUG SDL event 1794 05/10/22-13:04:54 DEBUG input event => type: 3 (EV_ABS), code: 53 (ABS_MT_POSITION_X), value: 286.0273450613, time: 1398.556386 05/10/22-13:04:54 DEBUG input event => type: 3 (EV_ABS), code: 54 (ABS_MT_POSITION_Y), value: 1061.3047001362, time: 1398.556386 05/10/22-13:04:54 DEBUG input event => type: 0 (EV_SYN), code: 0 (SYN_REPORT), value: 0, time: 1398.556386 05/10/22-13:04:54 DEBUG in pan state... 05/10/22-13:04:54 DEBUG adjusted ges: pan east 05/10/22-13:04:54 DEBUG AutoSuspend: onInputEvent 05/10/22-13:04:54 DEBUG AutoTurn: onInputEvent 05/10/22-13:04:54 DEBUG SDL event 2050 05/10/22-13:04:54 DEBUG input event => type: 83 (EV_SDL), code: 2050, value: cdata: 0x7f9eeb2ae8, time: 1398.556386 05/10/22-13:04:54 DEBUG SDL event 1794 05/10/22-13:04:54 DEBUG input event => type: 3 (EV_ABS), code: 53 (ABS_MT_POSITION_X), value: 317.13672280312, time: 1398.556386 05/10/22-13:04:54 DEBUG input event => type: 3 (EV_ABS), code: 54 (ABS_MT_POSITION_Y), value: 734.73436748981, time: 1398.556386 05/10/22-13:04:54 DEBUG input event => type: 0 (EV_SYN), code: 0 (SYN_REPORT), value: 0, time: 1398.556386 05/10/22-13:04:54 DEBUG in pan state... 05/10/22-13:04:54 DEBUG adjusted ges: pan north 05/10/22-13:04:54 DEBUG AutoSuspend: onInputEvent 05/10/22-13:04:54 DEBUG AutoTurn: onInputEvent 05/10/22-13:04:54 DEBUG SDL event 2050 05/10/22-13:04:54 DEBUG input event => type: 83 (EV_SDL), code: 2050, value: cdata: 0x7f9c3c2248, time: 1398.560386 05/10/22-13:04:54 DEBUG SDL event 1794 05/10/22-13:04:54 DEBUG input event => type: 3 (EV_ABS), code: 53 (ABS_MT_POSITION_X), value: 319.14452910423, time: 1398.568386 05/10/22-13:04:54 DEBUG input event => type: 3 (EV_ABS), code: 54 (ABS_MT_POSITION_Y), value: 1060.3007676601, time: 1398.568386 05/10/22-13:04:54 DEBUG input event => type: 0 (EV_SYN), code: 0 (SYN_REPORT), value: 0, time: 1398.568386 05/10/22-13:04:54 DEBUG in pan state... 05/10/22-13:04:54 DEBUG adjusted ges: pan east 05/10/22-13:04:54 DEBUG AutoSuspend: onInputEvent 05/10/22-13:04:54 DEBUG AutoTurn: onInputEvent 05/10/22-13:04:54 DEBUG SDL event 2050 05/10/22-13:04:54 DEBUG input event => type: 83 (EV_SDL), code: 2050, value: cdata: 0x7f9c762b78, time: 1398.568386 05/10/22-13:04:54 DEBUG SDL event 1794 05/10/22-13:04:54 DEBUG input event => type: 3 (EV_ABS), code: 53 (ABS_MT_POSITION_X), value: 351.25783085823, time: 1398.568386 05/10/22-13:04:54 DEBUG input event => type: 3 (EV_ABS), code: 54 (ABS_MT_POSITION_Y), value: 735.73829996586, time: 1398.568386 05/10/22-13:04:54 DEBUG input event => type: 0 (EV_SYN), code: 0 (SYN_REPORT), value: 0, time: 1398.568386 05/10/22-13:04:54 DEBUG in pan state... 05/10/22-13:04:54 DEBUG adjusted ges: pan northeast 05/10/22-13:04:54 DEBUG AutoSuspend: onInputEvent 05/10/22-13:04:54 DEBUG AutoTurn: onInputEvent 05/10/22-13:04:54 DEBUG SDL event 2050 05/10/22-13:04:54 DEBUG input event => type: 83 (EV_SDL), code: 2050, value: cdata: 0x7f9f692268, time: 1398.572386 05/10/22-13:04:54 DEBUG SDL event 1794 05/10/22-13:04:54 DEBUG input event => type: 3 (EV_ABS), code: 53 (ABS_MT_POSITION_X), value: 353.26563715935, time: 1398.580386 05/10/22-13:04:54 DEBUG input event => type: 3 (EV_ABS), code: 54 (ABS_MT_POSITION_Y), value: 1059.2930216789, time: 1398.580386 05/10/22-13:04:54 DEBUG input event => type: 0 (EV_SYN), code: 0 (SYN_REPORT), value: 0, time: 1398.580386 05/10/22-13:04:54 DEBUG in pan state... 05/10/22-13:04:54 DEBUG adjusted ges: pan east 05/10/22-13:04:54 DEBUG AutoSuspend: onInputEvent 05/10/22-13:04:54 DEBUG AutoTurn: onInputEvent 05/10/22-13:04:54 DEBUG SDL event 2050 05/10/22-13:04:54 DEBUG input event => type: 83 (EV_SDL), code: 2050, value: cdata: 0x7f9ec66c98, time: 1398.580386 05/10/22-13:04:54 DEBUG SDL event 1794 05/10/22-13:04:54 DEBUG input event => type: 3 (EV_ABS), code: 53 (ABS_MT_POSITION_X), value: 385.37889719009, time: 1398.580386 05/10/22-13:04:54 DEBUG input event => type: 3 (EV_ABS), code: 54 (ABS_MT_POSITION_Y), value: 738.75391089916, time: 1398.580386 05/10/22-13:04:54 DEBUG input event => type: 0 (EV_SYN), code: 0 (SYN_REPORT), value: 0, time: 1398.580386 05/10/22-13:04:54 DEBUG in pan state... 05/10/22-13:04:54 DEBUG adjusted ges: pan northeast 05/10/22-13:04:54 DEBUG AutoSuspend: onInputEvent 05/10/22-13:04:54 DEBUG AutoTurn: onInputEvent 05/10/22-13:04:54 DEBUG SDL event 2050 05/10/22-13:04:54 DEBUG input event => type: 83 (EV_SDL), code: 2050, value: cdata: 0x7f9f823190, time: 1398.580386 05/10/22-13:04:54 DEBUG SDL event 1794 05/10/22-13:04:54 DEBUG input event => type: 3 (EV_ABS), code: 53 (ABS_MT_POSITION_X), value: 382.36718773842, time: 1398.588386 05/10/22-13:04:54 DEBUG input event => type: 0 (EV_SYN), code: 0 (SYN_REPORT), value: 0, time: 1398.588386 05/10/22-13:04:54 DEBUG in pan state... 05/10/22-13:04:54 DEBUG adjusted ges: pan northeast 05/10/22-13:04:54 DEBUG AutoSuspend: onInputEvent 05/10/22-13:04:54 DEBUG AutoTurn: onInputEvent 05/10/22-13:04:54 DEBUG SDL event 2050 05/10/22-13:04:54 DEBUG input event => type: 83 (EV_SDL), code: 2050, value: cdata: 0x7f9fa6aab8, time: 1398.588386 05/10/22-13:04:54 DEBUG SDL event 1794 05/10/22-13:04:54 DEBUG input event => type: 3 (EV_ABS), code: 53 (ABS_MT_POSITION_X), value: 414.48436975479, time: 1398.588386 05/10/22-13:04:54 DEBUG input event => type: 3 (EV_ABS), code: 54 (ABS_MT_POSITION_Y), value: 740.7617213726, time: 1398.588386 05/10/22-13:04:54 DEBUG input event => type: 0 (EV_SYN), code: 0 (SYN_REPORT), value: 0, time: 1398.588386 05/10/22-13:04:54 DEBUG in pan state... 05/10/22-13:04:54 DEBUG adjusted ges: pan northeast 05/10/22-13:04:54 DEBUG AutoSuspend: onInputEvent 05/10/22-13:04:54 DEBUG AutoTurn: onInputEvent 05/10/22-13:04:54 DEBUG SDL event 2050 05/10/22-13:04:54 DEBUG input event => type: 83 (EV_SDL), code: 2050, value: cdata: 0x7f9ed24678, time: 1398.588386 05/10/22-13:04:54 DEBUG SDL event 1794 05/10/22-13:04:54 DEBUG input event => type: 3 (EV_ABS), code: 53 (ABS_MT_POSITION_X), value: 409.464854002, time: 1398.596386 05/10/22-13:04:54 DEBUG input event => type: 0 (EV_SYN), code: 0 (SYN_REPORT), value: 0, time: 1398.596386 05/10/22-13:04:54 DEBUG in pan state... 05/10/22-13:04:54 DEBUG adjusted ges: pan northeast 05/10/22-13:04:54 DEBUG AutoSuspend: onInputEvent 05/10/22-13:04:54 DEBUG AutoTurn: onInputEvent 05/10/22-13:04:54 DEBUG SDL event 2050 05/10/22-13:04:54 DEBUG input event => type: 83 (EV_SDL), code: 2050, value: cdata: 0x7f9ee92eb0, time: 1398.596386 05/10/22-13:04:54 DEBUG SDL event 1794 05/10/22-13:04:54 DEBUG input event => type: 3 (EV_ABS), code: 53 (ABS_MT_POSITION_X), value: 448.60547780991, time: 1398.596386 05/10/22-13:04:54 DEBUG input event => type: 3 (EV_ABS), code: 54 (ABS_MT_POSITION_Y), value: 744.78126478195, time: 1398.596386 05/10/22-13:04:54 DEBUG input event => type: 0 (EV_SYN), code: 0 (SYN_REPORT), value: 0, time: 1398.596386 05/10/22-13:04:54 DEBUG in pan state... 05/10/22-13:04:54 DEBUG adjusted ges: pan northeast 05/10/22-13:04:54 DEBUG AutoSuspend: onInputEvent 05/10/22-13:04:54 DEBUG AutoTurn: onInputEvent 05/10/22-13:04:54 DEBUG SDL event 2050 05/10/22-13:04:54 DEBUG input event => type: 83 (EV_SDL), code: 2050, value: cdata: 0x7f9ed318f8, time: 1398.600386 05/10/22-13:04:54 DEBUG SDL event 1794 05/10/22-13:04:54 DEBUG input event => type: 3 (EV_ABS), code: 53 (ABS_MT_POSITION_X), value: 437.56642341614, time: 1398.604386 05/10/22-13:04:54 DEBUG input event => type: 3 (EV_ABS), code: 54 (ABS_MT_POSITION_Y), value: 1060.3007676601, time: 1398.604386 05/10/22-13:04:54 DEBUG input event => type: 0 (EV_SYN), code: 0 (SYN_REPORT), value: 0, time: 1398.604386 05/10/22-13:04:54 DEBUG in pan state... 05/10/22-13:04:54 DEBUG adjusted ges: pan east 05/10/22-13:04:54 DEBUG AutoSuspend: onInputEvent 05/10/22-13:04:54 DEBUG AutoTurn: onInputEvent 05/10/22-13:04:54 DEBUG SDL event 2050 05/10/22-13:04:54 DEBUG input event => type: 83 (EV_SDL), code: 2050, value: cdata: 0x7f9ed40228, time: 1398.604386 05/10/22-13:04:54 DEBUG SDL event 1794 05/10/22-13:04:54 DEBUG input event => type: 3 (EV_ABS), code: 53 (ABS_MT_POSITION_X), value: 476.70312523842, time: 1398.604386 05/10/22-13:04:54 DEBUG input event => type: 3 (EV_ABS), code: 54 (ABS_MT_POSITION_Y), value: 746.79294323921, time: 1398.604386 05/10/22-13:04:54 DEBUG input event => type: 0 (EV_SYN), code: 0 (SYN_REPORT), value: 0, time: 1398.604386 05/10/22-13:04:54 DEBUG in pan state... 05/10/22-13:04:54 DEBUG adjusted ges: pan northeast 05/10/22-13:04:54 DEBUG AutoSuspend: onInputEvent 05/10/22-13:04:54 DEBUG AutoTurn: onInputEvent 05/10/22-13:04:54 DEBUG SDL event 2050 05/10/22-13:04:54 DEBUG input event => type: 83 (EV_SDL), code: 2050, value: cdata: 0x7f9ed32ef0, time: 1398.608386 05/10/22-13:04:54 DEBUG SDL event 1794 05/10/22-13:04:54 DEBUG input event => type: 3 (EV_ABS), code: 53 (ABS_MT_POSITION_X), value: 463.66014480591, time: 1398.616386 05/10/22-13:04:54 DEBUG input event => type: 0 (EV_SYN), code: 0 (SYN_REPORT), value: 0, time: 1398.616386 05/10/22-13:04:54 DEBUG in pan state... 05/10/22-13:04:54 DEBUG adjusted ges: pan northeast 05/10/22-13:04:54 DEBUG AutoSuspend: onInputEvent 05/10/22-13:04:54 DEBUG AutoTurn: onInputEvent 05/10/22-13:04:54 DEBUG SDL event 2050 05/10/22-13:04:54 DEBUG input event => type: 83 (EV_SDL), code: 2050, value: cdata: 0x7f9c786c50, time: 1398.616386 05/10/22-13:04:54 DEBUG SDL event 1794 05/10/22-13:04:54 DEBUG input event => type: 3 (EV_ABS), code: 53 (ABS_MT_POSITION_X), value: 509.82421040535, time: 1398.616386 05/10/22-13:04:54 DEBUG input event => type: 3 (EV_ABS), code: 54 (ABS_MT_POSITION_Y), value: 748.8008081913, time: 1398.616386 05/10/22-13:04:54 DEBUG input event => type: 0 (EV_SYN), code: 0 (SYN_REPORT), value: 0, time: 1398.616386 05/10/22-13:04:54 DEBUG in pan state... 05/10/22-13:04:54 DEBUG adjusted ges: pan northeast 05/10/22-13:04:54 DEBUG AutoSuspend: onInputEvent 05/10/22-13:04:54 DEBUG AutoTurn: onInputEvent 05/10/22-13:04:54 DEBUG SDL event 2050 05/10/22-13:04:54 DEBUG input event => type: 83 (EV_SDL), code: 2050, value: cdata: 0x7f9f8037f8, time: 1398.620386 05/10/22-13:04:54 DEBUG SDL event 1794 05/10/22-13:04:54 DEBUG input event => type: 3 (EV_ABS), code: 53 (ABS_MT_POSITION_X), value: 490.75388908386, time: 1398.628385 05/10/22-13:04:54 DEBUG input event => type: 3 (EV_ABS), code: 54 (ABS_MT_POSITION_Y), value: 1061.3047001362, time: 1398.628385 05/10/22-13:04:54 DEBUG input event => type: 0 (EV_SYN), code: 0 (SYN_REPORT), value: 0, time: 1398.628385 05/10/22-13:04:54 DEBUG in pan state... 05/10/22-13:04:54 DEBUG adjusted ges: pan east 05/10/22-13:04:54 DEBUG AutoSuspend: onInputEvent 05/10/22-13:04:54 DEBUG AutoTurn: onInputEvent 05/10/22-13:04:54 DEBUG SDL event 2050 05/10/22-13:04:54 DEBUG input event => type: 83 (EV_SDL), code: 2050, value: cdata: 0x7f9ee8cfe8, time: 1398.628385 05/10/22-13:04:54 DEBUG SDL event 1794 05/10/22-13:04:54 DEBUG input event => type: 3 (EV_ABS), code: 53 (ABS_MT_POSITION_X), value: 535.91405153275, time: 1398.628385 05/10/22-13:04:54 DEBUG input event => type: 3 (EV_ABS), code: 54 (ABS_MT_POSITION_Y), value: 750.81248664856, time: 1398.628385 05/10/22-13:04:54 DEBUG input event => type: 0 (EV_SYN), code: 0 (SYN_REPORT), value: 0, time: 1398.628385 05/10/22-13:04:54 DEBUG in pan state... 05/10/22-13:04:54 DEBUG adjusted ges: pan northeast 05/10/22-13:04:54 DEBUG AutoSuspend: onInputEvent 05/10/22-13:04:54 DEBUG AutoTurn: onInputEvent 05/10/22-13:04:54 DEBUG SDL event 2050 05/10/22-13:04:54 DEBUG input event => type: 83 (EV_SDL), code: 2050, value: cdata: 0x7f9ec71f98, time: 1398.628385 05/10/22-13:04:54 DEBUG SDL event 1794 05/10/22-13:04:54 DEBUG input event => type: 3 (EV_ABS), code: 53 (ABS_MT_POSITION_X), value: 512.83203959465, time: 1398.632385 05/10/22-13:04:54 DEBUG input event => type: 0 (EV_SYN), code: 0 (SYN_REPORT), value: 0, time: 1398.632385 05/10/22-13:04:54 DEBUG in pan state... 05/10/22-13:04:54 DEBUG adjusted ges: pan northeast 05/10/22-13:04:54 DEBUG AutoSuspend: onInputEvent 05/10/22-13:04:54 DEBUG AutoTurn: onInputEvent 05/10/22-13:04:54 DEBUG SDL event 2050 05/10/22-13:04:54 DEBUG input event => type: 83 (EV_SDL), code: 2050, value: cdata: 0x7f9c72d0f0, time: 1398.636385 05/10/22-13:04:54 DEBUG SDL event 1794 05/10/22-13:04:54 DEBUG input event => type: 3 (EV_ABS), code: 53 (ABS_MT_POSITION_X), value: 557.99608230591, time: 1398.636385 05/10/22-13:04:54 DEBUG input event => type: 3 (EV_ABS), code: 54 (ABS_MT_POSITION_Y), value: 751.8164191246, time: 1398.636385 05/10/22-13:04:54 DEBUG input event => type: 0 (EV_SYN), code: 0 (SYN_REPORT), value: 0, time: 1398.636385 05/10/22-13:04:54 DEBUG in pan state... 05/10/22-13:04:54 DEBUG adjusted ges: pan northeast 05/10/22-13:04:54 DEBUG AutoSuspend: onInputEvent 05/10/22-13:04:54 DEBUG AutoTurn: onInputEvent 05/10/22-13:04:54 DEBUG SDL event 2050 05/10/22-13:04:54 DEBUG input event => type: 83 (EV_SDL), code: 2050, value: cdata: 0x7f9f6825c8, time: 1398.636385 05/10/22-13:04:54 DEBUG SDL event 1794 05/10/22-13:04:54 DEBUG input event => type: 3 (EV_ABS), code: 53 (ABS_MT_POSITION_X), value: 533.91016721725, time: 1398.648385 05/10/22-13:04:54 DEBUG input event => type: 0 (EV_SYN), code: 0 (SYN_REPORT), value: 0, time: 1398.648385 05/10/22-13:04:54 DEBUG in pan state... 05/10/22-13:04:54 DEBUG adjusted ges: pan northeast 05/10/22-13:04:54 DEBUG AutoSuspend: onInputEvent 05/10/22-13:04:54 DEBUG AutoTurn: onInputEvent 05/10/22-13:04:54 DEBUG SDL event 2050 05/10/22-13:04:54 DEBUG input event => type: 83 (EV_SDL), code: 2050, value: cdata: 0x7f9c53ee18, time: 1398.648385 05/10/22-13:04:54 DEBUG SDL event 1794 05/10/22-13:04:54 DEBUG input event => type: 3 (EV_ABS), code: 53 (ABS_MT_POSITION_X), value: 580.0742328167, time: 1398.648385 05/10/22-13:04:54 DEBUG input event => type: 3 (EV_ABS), code: 54 (ABS_MT_POSITION_Y), value: 752.820297122, time: 1398.648385 05/10/22-13:04:54 DEBUG input event => type: 0 (EV_SYN), code: 0 (SYN_REPORT), value: 0, time: 1398.648385 05/10/22-13:04:54 DEBUG in pan state... 05/10/22-13:04:54 DEBUG adjusted ges: pan northeast 05/10/22-13:04:54 DEBUG AutoSuspend: onInputEvent 05/10/22-13:04:54 DEBUG AutoTurn: onInputEvent 05/10/22-13:04:54 DEBUG SDL event 2050 05/10/22-13:04:54 DEBUG input event => type: 83 (EV_SDL), code: 2050, value: cdata: 0x7f9f810ff8, time: 1398.648385 05/10/22-13:04:54 DEBUG SDL event 1794 05/10/22-13:04:54 DEBUG input event => type: 3 (EV_ABS), code: 53 (ABS_MT_POSITION_X), value: 553.98046970367, time: 1398.652385 05/10/22-13:04:54 DEBUG input event => type: 0 (EV_SYN), code: 0 (SYN_REPORT), value: 0, time: 1398.652385 05/10/22-13:04:54 DEBUG in pan state... 05/10/22-13:04:54 DEBUG adjusted ges: pan northeast 05/10/22-13:04:54 DEBUG AutoSuspend: onInputEvent 05/10/22-13:04:54 DEBUG AutoTurn: onInputEvent 05/10/22-13:04:54 DEBUG SDL event 2050 05/10/22-13:04:54 DEBUG input event => type: 83 (EV_SDL), code: 2050, value: cdata: 0x7f9c7948e8, time: 1398.656385 05/10/22-13:04:54 DEBUG SDL event 1794 05/10/22-13:04:54 DEBUG input event => type: 3 (EV_ABS), code: 53 (ABS_MT_POSITION_X), value: 601.14843845367, time: 1398.656385 05/10/22-13:04:54 DEBUG input event => type: 3 (EV_ABS), code: 54 (ABS_MT_POSITION_Y), value: 753.82422959805, time: 1398.656385 05/10/22-13:04:54 DEBUG input event => type: 0 (EV_SYN), code: 0 (SYN_REPORT), value: 0, time: 1398.656385 05/10/22-13:04:54 DEBUG in pan state... 05/10/22-13:04:54 DEBUG adjusted ges: pan northeast 05/10/22-13:04:54 DEBUG AutoSuspend: onInputEvent 05/10/22-13:04:54 DEBUG AutoTurn: onInputEvent 05/10/22-13:04:54 DEBUG SDL event 2050 05/10/22-13:04:54 DEBUG input event => type: 83 (EV_SDL), code: 2050, value: cdata: 0x7f9c743170, time: 1398.656385 05/10/22-13:04:54 DEBUG SDL event 1794 05/10/22-13:04:54 DEBUG input event => type: 3 (EV_ABS), code: 53 (ABS_MT_POSITION_X), value: 573.04686903954, time: 1398.664385 05/10/22-13:04:54 DEBUG input event => type: 3 (EV_ABS), code: 54 (ABS_MT_POSITION_Y), value: 1062.3086326122, time: 1398.664385 05/10/22-13:04:54 DEBUG input event => type: 0 (EV_SYN), code: 0 (SYN_REPORT), value: 0, time: 1398.664385 05/10/22-13:04:54 DEBUG in pan state... 05/10/22-13:04:54 DEBUG adjusted ges: pan east 05/10/22-13:04:54 DEBUG AutoSuspend: onInputEvent 05/10/22-13:04:54 DEBUG AutoTurn: onInputEvent 05/10/22-13:04:54 DEBUG SDL event 2050 05/10/22-13:04:54 DEBUG input event => type: 83 (EV_SDL), code: 2050, value: cdata: 0x7f9c72d3e8, time: 1398.664385 05/10/22-13:04:54 DEBUG SDL event 1794 05/10/22-13:04:54 DEBUG input event => type: 3 (EV_ABS), code: 53 (ABS_MT_POSITION_X), value: 620.21483778954, time: 1398.664385 05/10/22-13:04:54 DEBUG input event => type: 0 (EV_SYN), code: 0 (SYN_REPORT), value: 0, time: 1398.664385 05/10/22-13:04:54 DEBUG in pan state... 05/10/22-13:04:54 DEBUG adjusted ges: pan east 05/10/22-13:04:54 DEBUG AutoSuspend: onInputEvent 05/10/22-13:04:54 DEBUG AutoTurn: onInputEvent 05/10/22-13:04:54 DEBUG SDL event 2050 05/10/22-13:04:54 DEBUG input event => type: 83 (EV_SDL), code: 2050, value: cdata: 0x7f9c3fdcd8, time: 1398.668385 05/10/22-13:04:54 DEBUG SDL event 1794 05/10/22-13:04:54 DEBUG input event => type: 3 (EV_ABS), code: 53 (ABS_MT_POSITION_X), value: 589.10548090935, time: 1398.676385 05/10/22-13:04:54 DEBUG input event => type: 0 (EV_SYN), code: 0 (SYN_REPORT), value: 0, time: 1398.676385 05/10/22-13:04:54 DEBUG in pan state... 05/10/22-13:04:54 DEBUG adjusted ges: pan east 05/10/22-13:04:54 DEBUG AutoSuspend: onInputEvent 05/10/22-13:04:54 DEBUG AutoTurn: onInputEvent 05/10/22-13:04:54 DEBUG SDL event 2050 05/10/22-13:04:54 DEBUG input event => type: 83 (EV_SDL), code: 2050, value: cdata: 0x7f9c3fc6a0, time: 1398.676385 05/10/22-13:04:54 DEBUG SDL event 1794 05/10/22-13:04:54 DEBUG input event => type: 3 (EV_ABS), code: 53 (ABS_MT_POSITION_X), value: 635.26954650879, time: 1398.676385 05/10/22-13:04:54 DEBUG input event => type: 3 (EV_ABS), code: 54 (ABS_MT_POSITION_Y), value: 754.83203005791, time: 1398.676385 05/10/22-13:04:54 DEBUG input event => type: 0 (EV_SYN), code: 0 (SYN_REPORT), value: 0, time: 1398.676385 05/10/22-13:04:54 DEBUG in pan state... 05/10/22-13:04:54 DEBUG adjusted ges: pan northeast 05/10/22-13:04:54 DEBUG AutoSuspend: onInputEvent 05/10/22-13:04:54 DEBUG AutoTurn: onInputEvent 05/10/22-13:04:54 DEBUG SDL event 2050 05/10/22-13:04:54 DEBUG input event => type: 83 (EV_SDL), code: 2050, value: cdata: 0x7f9fbbd890, time: 1398.676385 05/10/22-13:04:54 DEBUG SDL event 1794 05/10/22-13:04:54 DEBUG input event => type: 3 (EV_ABS), code: 53 (ABS_MT_POSITION_X), value: 602.15234160423, time: 1398.684385 05/10/22-13:04:54 DEBUG input event => type: 3 (EV_ABS), code: 54 (ABS_MT_POSITION_Y), value: 1063.312456131, time: 1398.684385 05/10/22-13:04:54 DEBUG input event => type: 0 (EV_SYN), code: 0 (SYN_REPORT), value: 0, time: 1398.684385 05/10/22-13:04:54 DEBUG in pan state... 05/10/22-13:04:54 DEBUG adjusted ges: pan east 05/10/22-13:04:54 DEBUG AutoSuspend: onInputEvent 05/10/22-13:04:54 DEBUG AutoTurn: onInputEvent 05/10/22-13:04:54 DEBUG SDL event 2050 05/10/22-13:04:54 DEBUG input event => type: 83 (EV_SDL), code: 2050, value: cdata: 0x7f9ec64260, time: 1398.684385 05/10/22-13:04:54 DEBUG SDL event 1794 05/10/22-13:04:54 DEBUG input event => type: 3 (EV_ABS), code: 53 (ABS_MT_POSITION_X), value: 648.31640720367, time: 1398.684385 05/10/22-13:04:54 DEBUG input event => type: 0 (EV_SYN), code: 0 (SYN_REPORT), value: 0, time: 1398.684385 05/10/22-13:04:54 DEBUG in pan state... 05/10/22-13:04:54 DEBUG adjusted ges: pan east 05/10/22-13:04:54 DEBUG AutoSuspend: onInputEvent 05/10/22-13:04:54 DEBUG AutoTurn: onInputEvent 05/10/22-13:04:54 DEBUG SDL event 2050 05/10/22-13:04:54 DEBUG input event => type: 83 (EV_SDL), code: 2050, value: cdata: 0x7faed21598, time: 1398.688385 05/10/22-13:04:54 DEBUG SDL event 1794 05/10/22-13:04:54 DEBUG input event => type: 3 (EV_ABS), code: 53 (ABS_MT_POSITION_X), value: 613.191395998, time: 1398.696385 05/10/22-13:04:54 DEBUG input event => type: 0 (EV_SYN), code: 0 (SYN_REPORT), value: 0, time: 1398.696385 05/10/22-13:04:54 DEBUG in pan state... 05/10/22-13:04:54 DEBUG adjusted ges: pan east 05/10/22-13:04:54 DEBUG AutoSuspend: onInputEvent 05/10/22-13:04:54 DEBUG AutoTurn: onInputEvent 05/10/22-13:04:54 DEBUG SDL event 2050 05/10/22-13:04:54 DEBUG input event => type: 83 (EV_SDL), code: 2050, value: cdata: 0x7f9ed97140, time: 1398.696385 05/10/22-13:04:54 DEBUG SDL event 1794 05/10/22-13:04:54 DEBUG input event => type: 3 (EV_ABS), code: 53 (ABS_MT_POSITION_X), value: 659.35546159744, time: 1398.696385 05/10/22-13:04:54 DEBUG input event => type: 0 (EV_SYN), code: 0 (SYN_REPORT), value: 0, time: 1398.696385 05/10/22-13:04:54 DEBUG in pan state... 05/10/22-13:04:54 DEBUG adjusted ges: pan east 05/10/22-13:04:54 DEBUG AutoSuspend: onInputEvent 05/10/22-13:04:54 DEBUG AutoTurn: onInputEvent 05/10/22-13:04:54 DEBUG SDL event 2050 05/10/22-13:04:54 DEBUG input event => type: 83 (EV_SDL), code: 2050, value: cdata: 0x7f9c3c45e0, time: 1398.700385 05/10/22-13:04:54 DEBUG SDL event 1794 05/10/22-13:04:54 DEBUG input event => type: 3 (EV_ABS), code: 53 (ABS_MT_POSITION_X), value: 621.21874094009, time: 1398.704385 05/10/22-13:04:54 DEBUG input event => type: 0 (EV_SYN), code: 0 (SYN_REPORT), value: 0, time: 1398.704385 05/10/22-13:04:54 DEBUG in pan state... 05/10/22-13:04:54 DEBUG adjusted ges: pan east 05/10/22-13:04:54 DEBUG AutoSuspend: onInputEvent 05/10/22-13:04:54 DEBUG AutoTurn: onInputEvent 05/10/22-13:04:54 DEBUG SDL event 2050 05/10/22-13:04:54 DEBUG input event => type: 83 (EV_SDL), code: 2050, value: cdata: 0x7f9c3fea68, time: 1398.704385 05/10/22-13:04:54 DEBUG SDL event 1794 05/10/22-13:04:54 DEBUG input event => type: 3 (EV_ABS), code: 53 (ABS_MT_POSITION_X), value: 668.38670969009, time: 1398.704385 05/10/22-13:04:54 DEBUG input event => type: 0 (EV_SYN), code: 0 (SYN_REPORT), value: 0, time: 1398.704385 05/10/22-13:04:54 DEBUG in pan state... 05/10/22-13:04:54 DEBUG adjusted ges: pan east 05/10/22-13:04:54 DEBUG AutoSuspend: onInputEvent 05/10/22-13:04:54 DEBUG AutoTurn: onInputEvent 05/10/22-13:04:54 DEBUG SDL event 2050 05/10/22-13:04:54 DEBUG input event => type: 83 (EV_SDL), code: 2050, value: cdata: 0x7f9ee85da0, time: 1398.704385 05/10/22-13:04:54 DEBUG SDL event 1794 05/10/22-13:04:54 DEBUG input event => type: 3 (EV_ABS), code: 53 (ABS_MT_POSITION_X), value: 626.23829841614, time: 1398.712385 05/10/22-13:04:54 DEBUG input event => type: 3 (EV_ABS), code: 54 (ABS_MT_POSITION_Y), value: 1064.3203110695, time: 1398.712385 05/10/22-13:04:54 DEBUG input event => type: 0 (EV_SYN), code: 0 (SYN_REPORT), value: 0, time: 1398.712385 05/10/22-13:04:54 DEBUG in pan state... 05/10/22-13:04:54 DEBUG adjusted ges: pan east 05/10/22-13:04:54 DEBUG AutoSuspend: onInputEvent 05/10/22-13:04:54 DEBUG AutoTurn: onInputEvent 05/10/22-13:04:54 DEBUG SDL event 2050 05/10/22-13:04:54 DEBUG input event => type: 83 (EV_SDL), code: 2050, value: cdata: 0x7f9ef03eb0, time: 1398.716385 05/10/22-13:04:54 DEBUG SDL event 1794 05/10/22-13:04:54 DEBUG input event => type: 3 (EV_ABS), code: 53 (ABS_MT_POSITION_X), value: 675.41407346725, time: 1398.716385 05/10/22-13:04:54 DEBUG input event => type: 3 (EV_ABS), code: 54 (ABS_MT_POSITION_Y), value: 755.83596253395, time: 1398.716385 05/10/22-13:04:54 DEBUG input event => type: 0 (EV_SYN), code: 0 (SYN_REPORT), value: 0, time: 1398.716385 05/10/22-13:04:54 DEBUG in pan state... 05/10/22-13:04:54 DEBUG adjusted ges: pan northeast 05/10/22-13:04:54 DEBUG AutoSuspend: onInputEvent 05/10/22-13:04:54 DEBUG AutoTurn: onInputEvent 05/10/22-13:04:54 DEBUG SDL event 2050 05/10/22-13:04:54 DEBUG input event => type: 83 (EV_SDL), code: 2050, value: cdata: 0x7f9fa630b8, time: 1398.716385 05/10/22-13:04:54 DEBUG SDL event 1794 05/10/22-13:04:54 DEBUG input event => type: 3 (EV_ABS), code: 53 (ABS_MT_POSITION_X), value: 630.24998903275, time: 1398.724385 05/10/22-13:04:54 DEBUG input event => type: 0 (EV_SYN), code: 0 (SYN_REPORT), value: 0, time: 1398.724385 05/10/22-13:04:54 DEBUG in pan state... 05/10/22-13:04:54 DEBUG adjusted ges: pan northeast 05/10/22-13:04:54 DEBUG AutoSuspend: onInputEvent 05/10/22-13:04:54 DEBUG AutoTurn: onInputEvent 05/10/22-13:04:54 DEBUG SDL event 2050 05/10/22-13:04:54 DEBUG input event => type: 83 (EV_SDL), code: 2050, value: cdata: 0x7f979e5c28, time: 1398.724385 05/10/22-13:04:54 DEBUG SDL event 1794 05/10/22-13:04:54 DEBUG input event => type: 3 (EV_ABS), code: 53 (ABS_MT_POSITION_X), value: 680.42966723442, time: 1398.724385 05/10/22-13:04:54 DEBUG input event => type: 0 (EV_SYN), code: 0 (SYN_REPORT), value: 0, time: 1398.724385 05/10/22-13:04:54 DEBUG in pan state... 05/10/22-13:04:54 DEBUG adjusted ges: pan northeast 05/10/22-13:04:54 DEBUG AutoSuspend: onInputEvent 05/10/22-13:04:54 DEBUG AutoTurn: onInputEvent 05/10/22-13:04:54 DEBUG SDL event 2050 05/10/22-13:04:54 DEBUG input event => type: 83 (EV_SDL), code: 2050, value: cdata: 0x7f9c3feee8, time: 1398.724385 05/10/22-13:04:54 DEBUG SDL event 1794 05/10/22-13:04:54 DEBUG input event => type: 3 (EV_ABS), code: 53 (ABS_MT_POSITION_X), value: 632.25779533386, time: 1398.736384 05/10/22-13:04:54 DEBUG input event => type: 0 (EV_SYN), code: 0 (SYN_REPORT), value: 0, time: 1398.736384 05/10/22-13:04:54 DEBUG in pan state... 05/10/22-13:04:54 DEBUG adjusted ges: pan northeast 05/10/22-13:04:54 DEBUG AutoSuspend: onInputEvent 05/10/22-13:04:54 DEBUG AutoTurn: onInputEvent 05/10/22-13:04:54 DEBUG SDL event 2050 05/10/22-13:04:54 DEBUG input event => type: 83 (EV_SDL), code: 2050, value: cdata: 0x7f9c79c1f0, time: 1398.736384 05/10/22-13:04:54 DEBUG SDL event 1794 05/10/22-13:04:54 DEBUG input event => type: 3 (EV_ABS), code: 53 (ABS_MT_POSITION_X), value: 682.43751525879, time: 1398.736384 05/10/22-13:04:54 DEBUG input event => type: 0 (EV_SYN), code: 0 (SYN_REPORT), value: 0, time: 1398.736384 05/10/22-13:04:54 DEBUG in pan state... 05/10/22-13:04:54 DEBUG adjusted ges: pan northeast 05/10/22-13:04:54 DEBUG AutoSuspend: onInputEvent 05/10/22-13:04:54 DEBUG AutoTurn: onInputEvent 05/10/22-13:04:54 DEBUG SDL event 2050 05/10/22-13:04:54 DEBUG input event => type: 83 (EV_SDL), code: 2050, value: cdata: 0x7f9c3e0110, time: 1398.736384 05/10/22-13:04:54 DEBUG SDL event 1794 05/10/22-13:04:54 DEBUG input event => type: 3 (EV_ABS), code: 53 (ABS_MT_POSITION_X), value: 634.26564335823, time: 1398.740384 05/10/22-13:04:54 DEBUG input event => type: 0 (EV_SYN), code: 0 (SYN_REPORT), value: 0, time: 1398.740384 05/10/22-13:04:54 DEBUG in pan state... 05/10/22-13:04:54 DEBUG adjusted ges: pan northeast 05/10/22-13:04:54 DEBUG AutoSuspend: onInputEvent 05/10/22-13:04:54 DEBUG AutoTurn: onInputEvent 05/10/22-13:04:54 DEBUG SDL event 2050 05/10/22-13:04:54 DEBUG input event => type: 83 (EV_SDL), code: 2050, value: cdata: 0x7f9c54b0b0, time: 1398.744384 05/10/22-13:04:54 DEBUG SDL event 1794 05/10/22-13:04:54 DEBUG input event => type: 3 (EV_ABS), code: 53 (ABS_MT_POSITION_X), value: 684.44532155991, time: 1398.744384 05/10/22-13:04:54 DEBUG input event => type: 0 (EV_SYN), code: 0 (SYN_REPORT), value: 0, time: 1398.744384 05/10/22-13:04:54 DEBUG in pan state... 05/10/22-13:04:54 DEBUG adjusted ges: pan northeast 05/10/22-13:04:54 DEBUG AutoSuspend: onInputEvent 05/10/22-13:04:54 DEBUG AutoTurn: onInputEvent 05/10/22-13:04:54 DEBUG SDL event 2050 05/10/22-13:04:54 DEBUG input event => type: 83 (EV_SDL), code: 2050, value: cdata: 0x7f9c7d7df8, time: 1398.744384 05/10/22-13:04:54 DEBUG SDL event 1794 05/10/22-13:04:54 DEBUG input event => type: 3 (EV_ABS), code: 54 (ABS_MT_POSITION_Y), value: 1062.3086326122, time: 1398.784384 05/10/22-13:04:54 DEBUG input event => type: 0 (EV_SYN), code: 0 (SYN_REPORT), value: 0, time: 1398.784384 05/10/22-13:04:54 DEBUG in pan state... 05/10/22-13:04:54 DEBUG adjusted ges: pan east 05/10/22-13:04:54 DEBUG AutoSuspend: onInputEvent 05/10/22-13:04:54 DEBUG AutoTurn: onInputEvent 05/10/22-13:04:54 DEBUG SDL event 2050 05/10/22-13:04:54 DEBUG input event => type: 83 (EV_SDL), code: 2050, value: cdata: 0x7f979beae0, time: 1398.784384 05/10/22-13:04:54 DEBUG SDL event 1794 05/10/22-13:04:54 DEBUG input event => type: 3 (EV_ABS), code: 54 (ABS_MT_POSITION_Y), value: 1061.3047001362, time: 1398.788384 05/10/22-13:04:54 DEBUG input event => type: 0 (EV_SYN), code: 0 (SYN_REPORT), value: 0, time: 1398.788384 05/10/22-13:04:54 DEBUG in pan state... 05/10/22-13:04:54 DEBUG adjusted ges: pan east 05/10/22-13:04:54 DEBUG AutoSuspend: onInputEvent 05/10/22-13:04:54 DEBUG AutoTurn: onInputEvent 05/10/22-13:04:54 DEBUG SDL event 2050 05/10/22-13:04:54 DEBUG input event => type: 83 (EV_SDL), code: 2050, value: cdata: 0x7f979ea9c8, time: 1398.792384 05/10/22-13:04:54 DEBUG SDL event 1793 05/10/22-13:04:54 DEBUG input event => type: 3 (EV_ABS), code: 57 (ABS_MT_TRACKING_ID), value: -1, time: 1398.812384 05/10/22-13:04:54 DEBUG input event => type: 0 (EV_SYN), code: 0 (SYN_REPORT), value: 0, time: 1398.812384 05/10/22-13:04:54 DEBUG in pan state... 05/10/22-13:04:54 DEBUG multiswipe north south north south north south north south north south north south north east south north south north east south north south east north south 05/10/22-13:04:54 DEBUG swipe east 536.12201502715 detected in slot 0 05/10/22-13:04:54 DEBUG adjusted ges: multiswipe north south north south north south north south north south north south north east south north south north east south north south east north south 05/10/22-13:04:54 DEBUG AutoSuspend: onInputEvent 05/10/22-13:04:54 DEBUG AutoTurn: onInputEvent 05/10/22-13:04:54 DEBUG SDL event 1793 05/10/22-13:04:54 DEBUG input event => type: 3 (EV_ABS), code: 57 (ABS_MT_TRACKING_ID), value: -1, time: 1398.820384 05/10/22-13:04:54 DEBUG input event => type: 0 (EV_SYN), code: 0 (SYN_REPORT), value: 0, time: 1398.820384 ```
Frenzie commented 2 years ago

Alright, I'll probably be able to give it a try tonight. You can ping me by Friday or Saturday if I didn't get around to it and forgot in the meantime. ^_^

hrdl-github commented 2 years ago

I'm not in a hurry, but I'm still curious if your work can make it into the 2022.05 release, @Frenzie

Frenzie commented 2 years ago

Is it necessary before init? It feels more in flow to me around line 109 or 115.

It makes no difference either way, on 2.0.20.

hrdl-github commented 2 years ago

Either position is fine, I think. I couldn't find anything relevant in the documentation.

hrdl-github commented 2 years ago

Looking at SDL's current code: setting this hint affects all touch events once it's set, so any of the positions suggested should be fine. It looks like it can even be used to change SDL's behaviour at runtime.

Frenzie commented 2 years ago

Sorry, I forgot about this one (but you can also submit a PR ;-) ). Done in https://github.com/koreader/koreader-base/pull/1491.

Frenzie commented 1 year ago

Incidentally, I added SDL multitouch support in https://github.com/koreader/koreader-base/pull/1599.