ponty / framebuffer-vncserver

VNC server for Linux framebuffer devices
GNU General Public License v2.0
169 stars 69 forks source link

Mouse scroll not working #24

Open ArthurHDN opened 11 months ago

ArthurHDN commented 11 months ago

Hello.

I'm using framebuffer-vnc in a Yocto based OS for hardware with a touch-screen. The framebuffer-vnc is working very well in general. However, for my application, I need to allow the user to use the mouse scroll. Somehow the mouse scroll is not being recognized by the framebuffer-vnc. I'm passing the touch screen input device, /dev/input/eventX, which allows me to use the left and right buttons of the mouse, but not the scroll.

Does anyone have seen this before or know how to fix it or have any tips on where to start looking for?

Thank you, Arthur

ponty commented 11 months ago

Can you show your log with verbose flag?

    ./framebuffer-vncserver [-f device] [-p port] [-t touchscreen] [-k keyboard] [-r rotation] [-R touchscreen rotation] [-F FPS] [-v] [-h]
    -v: verbose
ArthurHDN commented 11 months ago

Hello. I initialized the VNC with /usr/bin/framebuffer-vncserver -f /dev/fb0 -p 5900 -t /dev/input/event5 -v, where /dev/fb0 is my framebuffer device, 5900 is the VNC port and /dev/input/event5 is my touch screen device. Then, I opened one conection, clicked around with the left mouse button, tried to use the scroll (which didn't work) and disconnected. I'm using RealVNC Viewer in the client side with standard settings.

Here is the output:

Initializing framebuffer device /dev/fb0...
  xres=1280, yres=768, xresv=1280, yresv=768, xoffs=0, yoffs=0, bpp=32
  offset:length red=16:8 green=8:8 blue=0:8
No keyboard device
Initializing touch device /dev/input/event5 ...
  x:(0 4095)  y:(0 4095)
Initializing VNC server:
        width:  1280
        height: 768
        bpp:    32
        port:   5900
        rotate: 0
  mouse/touch rotate: 0
    target FPS: 10
Initializing server...
31/10/2023 06:41:47 Unable to establish connection with systemd socket
31/10/2023 06:41:47 Listening for VNC connections on TCP port 5900
31/10/2023 06:41:47 Listening for VNC connections on TCP6 port 5900
31/10/2023 06:42:14   0 other clients
  fps: 0.000000
31/10/2023 06:42:14 Normal socket connection
31/10/2023 06:42:14 Client Protocol Version 3.8
31/10/2023 06:42:14 Protocol version sent 3.8, using 3.8
31/10/2023 06:42:14 rfbProcessClientSecurityType: executing handler for type 1
31/10/2023 06:42:14 rfbProcessClientSecurityType: returning securityResult for client rfb version >= 3.8
31/10/2023 06:42:14 rfbProcessClientNormalMessage: ignoring unsupported encoding type Enc(0x00000018)
31/10/2023 06:42:14 rfbProcessClientNormalMessage: ignoring unsupported encoding type Enc(0x00000016)
31/10/2023 06:42:14 rfbProcessClientNormalMessage: ignoring unsupported encoding type Enc(0x00000015)
31/10/2023 06:42:14 rfbProcessClientNormalMessage: ignoring unsupported encoding type Enc(0x0000000F)
31/10/2023 06:42:14 rfbProcessClientNormalMessage: ignoring unsupported encoding type Enc(0xFFFFFEC6)
31/10/2023 06:42:14 Enabling full-color cursor updates for client 192.168.200.45
31/10/2023 06:42:14 Enabling NewFBSize protocol extension for client 192.168.200.45
31/10/2023 06:42:14 Using ZRLE encoding for client 192.168.200.45
31/10/2023 06:42:14 Pixel format for client 192.168.200.45:
31/10/2023 06:42:14   8 bpp, depth 6
31/10/2023 06:42:14   true colour: max r 3 g 3 b 3, shift r 4 g 2 b 0
Got ptrevent: 0000 (x=477, y=83)
31/10/2023 06:42:14 rfbProcessClientNormalMessage: ignoring unsupported encoding type Enc(0x00000018)
31/10/2023 06:42:14 rfbProcessClientNormalMessage: ignoring unsupported encoding type Enc(0x00000016)
31/10/2023 06:42:14 rfbProcessClientNormalMessage: ignoring unsupported encoding type Enc(0x00000015)
31/10/2023 06:42:14 rfbProcessClientNormalMessage: ignoring unsupported encoding type Enc(0x0000000F)
31/10/2023 06:42:14 rfbProcessClientNormalMessage: ignoring unsupported encoding type Enc(0xFFFFFEC6)
31/10/2023 06:42:14 Enabling full-color cursor updates for client 192.168.200.45
31/10/2023 06:42:14 Enabling NewFBSize protocol extension for client 192.168.200.45
31/10/2023 06:42:14 Switching from ZRLE to raw Encoding for client 192.168.200.45
Got ptrevent: 0000 (x=478, y=85)
Got ptrevent: 0000 (x=481, y=87)
31/10/2023 06:42:14 rfbProcessClientNormalMessage: ignoring unsupported encoding type Enc(0x00000018)
31/10/2023 06:42:14 rfbProcessClientNormalMessage: ignoring unsupported encoding type Enc(0x00000016)
31/10/2023 06:42:14 rfbProcessClientNormalMessage: ignoring unsupported encoding type Enc(0x00000015)
31/10/2023 06:42:14 rfbProcessClientNormalMessage: ignoring unsupported encoding type Enc(0x0000000F)
31/10/2023 06:42:14 rfbProcessClientNormalMessage: ignoring unsupported encoding type Enc(0xFFFFFEC6)
31/10/2023 06:42:14 Enabling full-color cursor updates for client 192.168.200.45
31/10/2023 06:42:14 Enabling NewFBSize protocol extension for client 192.168.200.45
31/10/2023 06:42:14 Switching from raw to ZRLE Encoding for client 192.168.200.45
31/10/2023 06:42:14 Pixel format for client 192.168.200.45:
31/10/2023 06:42:14   32 bpp, depth 24, little endian
31/10/2023 06:42:14   true colour: max r 255 g 255 b 255, shift r 16 g 8 b 0
Got ptrevent: 0000 (x=482, y=90)
Got ptrevent: 0000 (x=483, y=92)
Got ptrevent: 0000 (x=485, y=94)
Got ptrevent: 0000 (x=487, y=96)
Got ptrevent: 0000 (x=490, y=98)
Got ptrevent: 0000 (x=492, y=100)
Got ptrevent: 0000 (x=497, y=101)
Got ptrevent: 0000 (x=503, y=103)
Got ptrevent: 0000 (x=508, y=103)
Got ptrevent: 0000 (x=514, y=103)
Got ptrevent: 0000 (x=515, y=104)
Dirty page: 1281x768+0+0...
Got ptrevent: 0000 (x=516, y=104)
Got ptrevent: 0000 (x=518, y=103)
Got ptrevent: 0000 (x=520, y=100)
Got ptrevent: 0000 (x=522, y=98)
Got ptrevent: 0000 (x=523, y=96)
Got ptrevent: 0000 (x=524, y=94)
Got ptrevent: 0000 (x=524, y=92)
Got ptrevent: 0000 (x=524, y=91)
Got ptrevent: 0000 (x=523, y=91)
Got ptrevent: 0000 (x=522, y=91)
Got ptrevent: 0000 (x=522, y=90)
Got ptrevent: 0000 (x=522, y=89)
Got ptrevent: 0000 (x=522, y=88)
Got ptrevent: 0000 (x=521, y=88)
Got ptrevent: 0000 (x=521, y=87)
Got ptrevent: 0000 (x=521, y=86)
Got ptrevent: 0000 (x=521, y=85)
Got ptrevent: 0000 (x=521, y=84)
Got ptrevent: 0000 (x=521, y=83)
Got ptrevent: 0000 (x=520, y=83)
Got ptrevent: 0000 (x=520, y=82)
Got ptrevent: 0000 (x=520, y=81)
Got ptrevent: 0000 (x=520, y=80)
Got ptrevent: 0000 (x=520, y=79)
Got ptrevent: 0000 (x=520, y=78)
Got ptrevent: 0000 (x=520, y=77)
Got ptrevent: 0000 (x=520, y=76)
Dirty page: 11x13+706+14...
Got ptrevent: 0000 (x=520, y=75)
Got ptrevent: 0000 (x=520, y=74)
Got ptrevent: 0000 (x=520, y=73)
Got ptrevent: 0000 (x=520, y=72)
Got ptrevent: 0000 (x=520, y=71)
Got ptrevent: 0000 (x=521, y=71)
Got ptrevent: 0000 (x=522, y=73)
Got ptrevent: 0000 (x=525, y=86)
Got ptrevent: 0000 (x=528, y=104)
Got ptrevent: 0000 (x=532, y=124)
Got ptrevent: 0000 (x=537, y=147)
Got ptrevent: 0000 (x=541, y=182)
Got ptrevent: 0000 (x=546, y=216)
Got ptrevent: 0000 (x=551, y=259)
Got ptrevent: 0000 (x=565, y=300)
Got ptrevent: 0000 (x=580, y=342)
Got ptrevent: 0000 (x=591, y=379)
Got ptrevent: 0000 (x=603, y=416)
Got ptrevent: 0000 (x=610, y=437)
Got ptrevent: 0000 (x=615, y=450)
Got ptrevent: 0000 (x=619, y=461)
Got ptrevent: 0000 (x=624, y=470)
Got ptrevent: 0000 (x=626, y=475)
Got ptrevent: 0000 (x=628, y=477)
Got ptrevent: 0000 (x=629, y=478)
Got ptrevent: 0000 (x=630, y=478)
Dirty page: 5x12+1235+20...
Dirty page: 11x13+706+14...
Dirty page: 17x12+1148+20...
Dirty page: 11x13+706+14...
Dirty page: 5x16+1241+16...
Dirty page: 11x13+706+14...
Got ptrevent: 0000 (x=630, y=479)
Got ptrevent: 0000 (x=633, y=482)
Got ptrevent: 0000 (x=635, y=486)
Got ptrevent: 0000 (x=640, y=489)
Got ptrevent: 0000 (x=649, y=494)
Got ptrevent: 0000 (x=656, y=499)
Got ptrevent: 0000 (x=665, y=506)
Got ptrevent: 0000 (x=673, y=511)
Got ptrevent: 0000 (x=680, y=515)
Got ptrevent: 0000 (x=687, y=523)
Got ptrevent: 0000 (x=692, y=528)
Got ptrevent: 0000 (x=698, y=532)
Got ptrevent: 0000 (x=701, y=536)
Got ptrevent: 0000 (x=703, y=538)
Got ptrevent: 0000 (x=705, y=540)
Got ptrevent: 0000 (x=708, y=542)
Got ptrevent: 0000 (x=710, y=544)
Got ptrevent: 0000 (x=712, y=549)
Got ptrevent: 0000 (x=714, y=552)
Got ptrevent: 0000 (x=717, y=557)
Got ptrevent: 0000 (x=719, y=561)
Got ptrevent: 0000 (x=721, y=563)
Got ptrevent: 0000 (x=723, y=566)
Got ptrevent: 0000 (x=725, y=568)
Got ptrevent: 0000 (x=728, y=573)
Got ptrevent: 0000 (x=731, y=580)
Got ptrevent: 0000 (x=733, y=586)
Got ptrevent: 0000 (x=736, y=595)
Got ptrevent: 0000 (x=741, y=604)
Got ptrevent: 0000 (x=743, y=613)
Got ptrevent: 0000 (x=748, y=621)
Got ptrevent: 0000 (x=754, y=631)
Got ptrevent: 0000 (x=762, y=640)
Got ptrevent: 0000 (x=769, y=649)
Got ptrevent: 0000 (x=779, y=658)
Got ptrevent: 0000 (x=788, y=666)
Got ptrevent: 0000 (x=795, y=670)
Got ptrevent: 0000 (x=800, y=674)
Got ptrevent: 0000 (x=803, y=676)
Got ptrevent: 0000 (x=805, y=677)
Got ptrevent: 0000 (x=807, y=677)
Got ptrevent: 0000 (x=809, y=678)
Got ptrevent: 0000 (x=811, y=678)
Got ptrevent: 0000 (x=813, y=678)
Got ptrevent: 0000 (x=815, y=676)
Got ptrevent: 0000 (x=818, y=675)
Got ptrevent: 0000 (x=820, y=673)
Got ptrevent: 0000 (x=822, y=672)
Got ptrevent: 0000 (x=824, y=670)
Got ptrevent: 0000 (x=826, y=668)
Got ptrevent: 0000 (x=827, y=666)
Got ptrevent: 0000 (x=829, y=663)
Got ptrevent: 0000 (x=830, y=661)
Got ptrevent: 0000 (x=831, y=659)
Got ptrevent: 0000 (x=832, y=657)
Got ptrevent: 0000 (x=834, y=655)
Got ptrevent: 0000 (x=836, y=653)
Got ptrevent: 0000 (x=839, y=650)
Got ptrevent: 0000 (x=841, y=646)
Got ptrevent: 0000 (x=844, y=643)
Got ptrevent: 0000 (x=847, y=639)
Got ptrevent: 0000 (x=849, y=636)
Got ptrevent: 0000 (x=851, y=634)
Got ptrevent: 0000 (x=852, y=632)
Got ptrevent: 0000 (x=853, y=630)
Got ptrevent: 0000 (x=853, y=629)
Got ptrevent: 0000 (x=853, y=628)
Got ptrevent: 0000 (x=854, y=630)
Got ptrevent: 0000 (x=855, y=636)
Got ptrevent: 0000 (x=855, y=641)
Got ptrevent: 0000 (x=856, y=643)
Got ptrevent: 0000 (x=856, y=645)
Dirty page: 471x20+706+12...
Got ptrevent: 0000 (x=856, y=646)
Got ptrevent: 0000 (x=857, y=646)
Got ptrevent: 0000 (x=857, y=647)
  fps: 2.000000
Got ptrevent: 0001 (x=857, y=647)
injectTouchEvent (screen(857,647) -> touch(2741,3449), mouse=1)
Got ptrevent: 0000 (x=857, y=647)
injectTouchEvent (screen(857,647) -> touch(2741,3449), mouse=0)
Got ptrevent: 0001 (x=857, y=647)
injectTouchEvent (screen(857,647) -> touch(2741,3449), mouse=1)
Got ptrevent: 0000 (x=857, y=647)
injectTouchEvent (screen(857,647) -> touch(2741,3449), mouse=0)
Dirty page: 11x16+1235+16...
Dirty page: 1281x754+0+14...
Dirty page: 1281x181+0+0...
Got ptrevent: 0000 (x=856, y=647)
Got ptrevent: 0000 (x=855, y=645)
Got ptrevent: 0000 (x=854, y=643)
Got ptrevent: 0000 (x=852, y=641)
Got ptrevent: 0000 (x=851, y=639)
Got ptrevent: 0000 (x=849, y=636)
Got ptrevent: 0000 (x=848, y=634)
Got ptrevent: 0000 (x=847, y=632)
Got ptrevent: 0000 (x=847, y=631)
Got ptrevent: 0000 (x=846, y=631)
Got ptrevent: 0000 (x=846, y=630)
Got ptrevent: 0000 (x=846, y=629)
Dirty page: 1281x768+0+0...
Got ptrevent: 0000 (x=846, y=628)
Got ptrevent: 0000 (x=849, y=625)
Got ptrevent: 0000 (x=859, y=616)
Got ptrevent: 0000 (x=870, y=608)
Got ptrevent: 0000 (x=881, y=600)
Got ptrevent: 0000 (x=892, y=592)
Got ptrevent: 0000 (x=903, y=583)
Got ptrevent: 0000 (x=914, y=575)
Got ptrevent: 0000 (x=925, y=567)
Got ptrevent: 0000 (x=936, y=557)
Got ptrevent: 0000 (x=947, y=548)
Got ptrevent: 0000 (x=960, y=536)
Got ptrevent: 0000 (x=971, y=527)
Got ptrevent: 0000 (x=981, y=517)
Got ptrevent: 0000 (x=990, y=508)
Got ptrevent: 0000 (x=998, y=499)
Got ptrevent: 0000 (x=1007, y=489)
Got ptrevent: 0000 (x=1018, y=478)
Got ptrevent: 0000 (x=1028, y=467)
Got ptrevent: 0000 (x=1038, y=456)
Got ptrevent: 0000 (x=1047, y=447)
Got ptrevent: 0000 (x=1055, y=437)
Got ptrevent: 0000 (x=1059, y=430)
Got ptrevent: 0000 (x=1063, y=425)
Got ptrevent: 0000 (x=1065, y=420)
Got ptrevent: 0000 (x=1067, y=417)
Got ptrevent: 0000 (x=1070, y=413)
Got ptrevent: 0000 (x=1073, y=407)
Got ptrevent: 0000 (x=1079, y=398)
Got ptrevent: 0000 (x=1087, y=389)
Got ptrevent: 0000 (x=1097, y=376)
Got ptrevent: 0000 (x=1105, y=365)
Got ptrevent: 0000 (x=1113, y=352)
Got ptrevent: 0000 (x=1119, y=341)
Got ptrevent: 0000 (x=1122, y=332)
Got ptrevent: 0000 (x=1125, y=324)
Got ptrevent: 0000 (x=1128, y=317)
Got ptrevent: 0000 (x=1130, y=314)
Got ptrevent: 0000 (x=1132, y=310)
Got ptrevent: 0000 (x=1133, y=308)
Got ptrevent: 0000 (x=1133, y=306)
Got ptrevent: 0000 (x=1134, y=304)
Got ptrevent: 0000 (x=1134, y=302)
Got ptrevent: 0000 (x=1134, y=300)
Got ptrevent: 0000 (x=1134, y=298)
Got ptrevent: 0000 (x=1134, y=296)
Got ptrevent: 0000 (x=1134, y=293)
Got ptrevent: 0000 (x=1135, y=288)
Dirty page: 11x13+779+14...
Got ptrevent: 0000 (x=1138, y=282)
Got ptrevent: 0000 (x=1141, y=277)
Got ptrevent: 0000 (x=1142, y=268)
Got ptrevent: 0000 (x=1142, y=260)
Got ptrevent: 0000 (x=1142, y=254)
Got ptrevent: 0000 (x=1142, y=249)
Got ptrevent: 0000 (x=1142, y=246)
Got ptrevent: 0000 (x=1142, y=244)
Got ptrevent: 0000 (x=1142, y=242)
Got ptrevent: 0000 (x=1142, y=240)
Got ptrevent: 0000 (x=1143, y=237)
Got ptrevent: 0000 (x=1144, y=234)
Got ptrevent: 0000 (x=1147, y=227)
Got ptrevent: 0000 (x=1148, y=221)
Got ptrevent: 0000 (x=1151, y=216)
Got ptrevent: 0000 (x=1151, y=211)
Got ptrevent: 0000 (x=1151, y=208)
Got ptrevent: 0000 (x=1151, y=205)
Got ptrevent: 0000 (x=1151, y=202)
Got ptrevent: 0000 (x=1151, y=199)
Got ptrevent: 0000 (x=1151, y=198)
Got ptrevent: 0000 (x=1151, y=196)
Got ptrevent: 0000 (x=1150, y=195)
Got ptrevent: 0000 (x=1149, y=194)
Got ptrevent: 0000 (x=1148, y=194)
Got ptrevent: 0000 (x=1145, y=194)
Got ptrevent: 0000 (x=1143, y=195)
Got ptrevent: 0000 (x=1140, y=197)
Got ptrevent: 0000 (x=1137, y=200)
Got ptrevent: 0000 (x=1134, y=202)
Got ptrevent: 0000 (x=1132, y=204)
Got ptrevent: 0000 (x=1130, y=206)
Got ptrevent: 0000 (x=1129, y=206)
Got ptrevent: 0000 (x=1128, y=207)
Got ptrevent: 0001 (x=1128, y=207)
injectTouchEvent (screen(1128,207) -> touch(3608,1103), mouse=1)
Got ptrevent: 0000 (x=1128, y=207)
injectTouchEvent (screen(1128,207) -> touch(3608,1103), mouse=0)
Got ptrevent: 0000 (x=1128, y=208)
Got ptrevent: 0000 (x=1128, y=209)
Got ptrevent: 0000 (x=1128, y=215)
Got ptrevent: 0000 (x=1131, y=224)
Got ptrevent: 0000 (x=1132, y=231)
Got ptrevent: 0000 (x=1133, y=239)
Got ptrevent: 0000 (x=1135, y=245)
Got ptrevent: 0000 (x=1135, y=249)
Got ptrevent: 0000 (x=1135, y=252)
Got ptrevent: 0000 (x=1135, y=255)
Got ptrevent: 0000 (x=1135, y=257)
Got ptrevent: 0000 (x=1135, y=259)
Got ptrevent: 0000 (x=1135, y=261)
Dirty page: 29x20+1223+12...
Got ptrevent: 0000 (x=1135, y=262)
Got ptrevent: 0000 (x=1134, y=263)
Got ptrevent: 0000 (x=1134, y=264)
Got ptrevent: 0000 (x=1133, y=264)
  fps: 3.000000
Got ptrevent: 0000 (x=1133, y=265)
Got ptrevent: 0000 (x=1132, y=266)
Got ptrevent: 0000 (x=1131, y=268)
Got ptrevent: 0000 (x=1131, y=270)
Got ptrevent: 0000 (x=1130, y=271)
Got ptrevent: 0000 (x=1130, y=272)
Got ptrevent: 0000 (x=1129, y=272)
Got ptrevent: 0001 (x=1129, y=272)
injectTouchEvent (screen(1129,272) -> touch(3611,1450), mouse=1)
Got ptrevent: 0000 (x=1129, y=272)
injectTouchEvent (screen(1129,272) -> touch(3611,1450), mouse=0)
Got ptrevent: 0000 (x=1129, y=273)
Got ptrevent: 0000 (x=1129, y=280)
Got ptrevent: 0000 (x=1131, y=283)
Got ptrevent: 0000 (x=1133, y=290)
Got ptrevent: 0000 (x=1133, y=298)
Got ptrevent: 0000 (x=1133, y=308)
Got ptrevent: 0000 (x=1133, y=316)
Got ptrevent: 0000 (x=1134, y=324)
Got ptrevent: 0000 (x=1136, y=331)
Got ptrevent: 0000 (x=1136, y=335)
Got ptrevent: 0000 (x=1136, y=341)
Got ptrevent: 0000 (x=1136, y=346)
Got ptrevent: 0000 (x=1136, y=348)
Dirty page: 978x231+271+14...
Got ptrevent: 0000 (x=1136, y=350)
Got ptrevent: 0000 (x=1136, y=351)
Got ptrevent: 0001 (x=1136, y=351)
injectTouchEvent (screen(1136,351) -> touch(3634,1871), mouse=1)
Got ptrevent: 0000 (x=1136, y=351)
injectTouchEvent (screen(1136,351) -> touch(3634,1871), mouse=0)
Got ptrevent: 0000 (x=1136, y=353)
Got ptrevent: 0000 (x=1136, y=359)
Got ptrevent: 0000 (x=1136, y=370)
Got ptrevent: 0000 (x=1136, y=380)
Got ptrevent: 0000 (x=1136, y=388)
Got ptrevent: 0000 (x=1136, y=394)
Got ptrevent: 0000 (x=1136, y=397)
Got ptrevent: 0000 (x=1136, y=400)
Got ptrevent: 0000 (x=1136, y=404)
Got ptrevent: 0000 (x=1136, y=405)
Got ptrevent: 0000 (x=1136, y=407)
Got ptrevent: 0000 (x=1136, y=409)
Got ptrevent: 0000 (x=1136, y=411)
Got ptrevent: 0000 (x=1136, y=413)
Got ptrevent: 0000 (x=1136, y=415)
Got ptrevent: 0000 (x=1136, y=416)
Got ptrevent: 0000 (x=1136, y=417)
Dirty page: 978x220+271+101...
Got ptrevent: 0000 (x=1135, y=417)
Got ptrevent: 0000 (x=1135, y=418)
Got ptrevent: 0000 (x=1135, y=419)
Got ptrevent: 0000 (x=1135, y=420)
Got ptrevent: 0001 (x=1135, y=420)
injectTouchEvent (screen(1135,420) -> touch(3631,2239), mouse=1)
Got ptrevent: 0000 (x=1135, y=420)
injectTouchEvent (screen(1135,420) -> touch(3631,2239), mouse=0)
Got ptrevent: 0000 (x=1135, y=421)
Got ptrevent: 0000 (x=1136, y=428)
Got ptrevent: 0000 (x=1136, y=436)
Got ptrevent: 0000 (x=1136, y=444)
Got ptrevent: 0000 (x=1136, y=452)
Got ptrevent: 0000 (x=1137, y=463)
Got ptrevent: 0000 (x=1137, y=473)
Got ptrevent: 0000 (x=1137, y=485)
Got ptrevent: 0000 (x=1139, y=497)
Got ptrevent: 0000 (x=1142, y=509)
Got ptrevent: 0000 (x=1143, y=520)
Got ptrevent: 0000 (x=1145, y=528)
Dirty page: 978x716+271+14...
Got ptrevent: 0000 (x=1147, y=537)
Got ptrevent: 0000 (x=1149, y=547)
Got ptrevent: 0000 (x=1150, y=559)
Got ptrevent: 0000 (x=1153, y=570)
Got ptrevent: 0000 (x=1153, y=578)
Got ptrevent: 0000 (x=1153, y=586)
Got ptrevent: 0000 (x=1155, y=595)
Got ptrevent: 0000 (x=1155, y=603)
Got ptrevent: 0000 (x=1155, y=606)
Got ptrevent: 0000 (x=1155, y=609)
Got ptrevent: 0000 (x=1156, y=611)
Got ptrevent: 0000 (x=1156, y=613)
Got ptrevent: 0000 (x=1157, y=615)
Got ptrevent: 0000 (x=1157, y=616)
Dirty page: 978x373+271+100...
Got ptrevent: 0000 (x=1158, y=617)
Got ptrevent: 0000 (x=1159, y=617)
Got ptrevent: 0000 (x=1162, y=621)
Got ptrevent: 0000 (x=1164, y=623)
Got ptrevent: 0000 (x=1164, y=624)
Got ptrevent: 0000 (x=1165, y=625)
Got ptrevent: 0000 (x=1165, y=626)
Got ptrevent: 0000 (x=1166, y=627)
Got ptrevent: 0000 (x=1166, y=628)
Got ptrevent: 0000 (x=1166, y=629)
Got ptrevent: 0000 (x=1166, y=630)
Got ptrevent: 0000 (x=1166, y=631)
Got ptrevent: 0000 (x=1166, y=632)
Got ptrevent: 0000 (x=1166, y=634)
Got ptrevent: 0000 (x=1166, y=635)
Got ptrevent: 0000 (x=1166, y=636)
Got ptrevent: 0000 (x=1166, y=637)
Got ptrevent: 0000 (x=1167, y=639)
Got ptrevent: 0000 (x=1167, y=640)
Got ptrevent: 0000 (x=1168, y=641)
Got ptrevent: 0000 (x=1168, y=643)
Dirty page: 11x13+779+14...
Got ptrevent: 0000 (x=1168, y=644)
Got ptrevent: 0000 (x=1169, y=646)
Got ptrevent: 0000 (x=1170, y=648)
Got ptrevent: 0000 (x=1171, y=650)
Got ptrevent: 0000 (x=1173, y=652)
Got ptrevent: 0000 (x=1173, y=654)
Got ptrevent: 0000 (x=1176, y=658)
Got ptrevent: 0000 (x=1176, y=661)
Got ptrevent: 0000 (x=1176, y=663)
Got ptrevent: 0000 (x=1177, y=665)
Got ptrevent: 0000 (x=1177, y=666)
Got ptrevent: 0000 (x=1177, y=667)
Got ptrevent: 0000 (x=1178, y=670)
Got ptrevent: 0000 (x=1179, y=674)
Got ptrevent: 0000 (x=1179, y=676)
Got ptrevent: 0000 (x=1179, y=678)
Got ptrevent: 0000 (x=1180, y=680)
Got ptrevent: 0000 (x=1180, y=682)
Got ptrevent: 0000 (x=1180, y=684)
Got ptrevent: 0000 (x=1180, y=686)
Got ptrevent: 0000 (x=1181, y=688)
Got ptrevent: 0000 (x=1182, y=690)
Got ptrevent: 0000 (x=1182, y=692)
Got ptrevent: 0000 (x=1182, y=693)
Got ptrevent: 0000 (x=1182, y=694)
Got ptrevent: 0000 (x=1182, y=695)
Got ptrevent: 0000 (x=1182, y=697)
Got ptrevent: 0000 (x=1182, y=698)
Got ptrevent: 0000 (x=1182, y=699)
Got ptrevent: 0000 (x=1182, y=700)
Got ptrevent: 0001 (x=1182, y=700)
injectTouchEvent (screen(1182,700) -> touch(3781,3732), mouse=1)
Got ptrevent: 0000 (x=1182, y=700)
injectTouchEvent (screen(1182,700) -> touch(3781,3732), mouse=0)
Dirty page: 1281x756+0+12...
Dirty page: 1281x413+0+60...
Got ptrevent: 0000 (x=1181, y=699)
Got ptrevent: 0000 (x=1179, y=698)
Got ptrevent: 0000 (x=1178, y=696)
Got ptrevent: 0000 (x=1178, y=695)
Got ptrevent: 0000 (x=1176, y=695)
Got ptrevent: 0000 (x=1175, y=693)
Got ptrevent: 0000 (x=1174, y=693)
Got ptrevent: 0000 (x=1173, y=692)
Got ptrevent: 0000 (x=1172, y=691)
Got ptrevent: 0000 (x=1171, y=691)
Got ptrevent: 0000 (x=1170, y=690)
Got ptrevent: 0000 (x=1170, y=689)
Got ptrevent: 0000 (x=1169, y=688)
Got ptrevent: 0000 (x=1168, y=687)
Got ptrevent: 0000 (x=1167, y=686)
Got ptrevent: 0000 (x=1165, y=685)
Got ptrevent: 0000 (x=1164, y=684)
Got ptrevent: 0000 (x=1162, y=683)
Got ptrevent: 0000 (x=1162, y=682)
Got ptrevent: 0000 (x=1160, y=680)
Got ptrevent: 0000 (x=1159, y=679)
Got ptrevent: 0000 (x=1157, y=677)
Got ptrevent: 0000 (x=1155, y=675)
Got ptrevent: 0000 (x=1153, y=673)
Got ptrevent: 0000 (x=1150, y=671)
Got ptrevent: 0000 (x=1148, y=668)
Got ptrevent: 0000 (x=1146, y=666)
Got ptrevent: 0000 (x=1144, y=664)
Got ptrevent: 0000 (x=1141, y=662)
Got ptrevent: 0000 (x=1137, y=660)
Got ptrevent: 0000 (x=1132, y=656)
Got ptrevent: 0000 (x=1129, y=654)
Got ptrevent: 0000 (x=1121, y=650)
Got ptrevent: 0000 (x=1114, y=644)
Got ptrevent: 0000 (x=1103, y=638)
Got ptrevent: 0000 (x=1092, y=630)
Got ptrevent: 0000 (x=1079, y=623)
Got ptrevent: 0000 (x=1064, y=617)
Got ptrevent: 0000 (x=1050, y=610)
Got ptrevent: 0000 (x=1037, y=606)
Got ptrevent: 0000 (x=1023, y=599)
Got ptrevent: 0000 (x=1010, y=593)
Got ptrevent: 0000 (x=997, y=588)
Got ptrevent: 0000 (x=985, y=583)
Got ptrevent: 0000 (x=974, y=579)
Got ptrevent: 0000 (x=965, y=574)
Got ptrevent: 0000 (x=956, y=570)
Got ptrevent: 0000 (x=949, y=566)
Got ptrevent: 0000 (x=944, y=563)
Got ptrevent: 0000 (x=941, y=561)
Got ptrevent: 0000 (x=938, y=559)
Got ptrevent: 0000 (x=935, y=558)
Got ptrevent: 0000 (x=933, y=556)
Got ptrevent: 0000 (x=932, y=555)
Dirty page: 11x20+1241+12...
Got ptrevent: 0000 (x=932, y=554)
Got ptrevent: 0000 (x=930, y=553)
Got ptrevent: 0000 (x=928, y=552)
Got ptrevent: 0000 (x=924, y=550)
Got ptrevent: 0000 (x=920, y=547)
Got ptrevent: 0000 (x=913, y=546)
Got ptrevent: 0000 (x=904, y=543)
Got ptrevent: 0000 (x=892, y=542)
Got ptrevent: 0000 (x=880, y=540)
Got ptrevent: 0000 (x=864, y=540)
Got ptrevent: 0000 (x=848, y=540)
Got ptrevent: 0000 (x=828, y=542)
Got ptrevent: 0000 (x=808, y=546)
Got ptrevent: 0000 (x=785, y=549)
Got ptrevent: 0000 (x=758, y=553)
Got ptrevent: 0000 (x=738, y=556)
Got ptrevent: 0000 (x=718, y=556)
Got ptrevent: 0000 (x=699, y=556)
Got ptrevent: 0000 (x=677, y=558)
Got ptrevent: 0000 (x=647, y=558)
Got ptrevent: 0000 (x=618, y=558)
Got ptrevent: 0000 (x=580, y=557)
Got ptrevent: 0000 (x=542, y=555)
Got ptrevent: 0000 (x=516, y=553)
Got ptrevent: 0000 (x=497, y=553)
Got ptrevent: 0000 (x=483, y=553)
Got ptrevent: 0000 (x=471, y=553)
Got ptrevent: 0000 (x=460, y=553)
Got ptrevent: 0000 (x=452, y=553)
Got ptrevent: 0000 (x=446, y=553)
Got ptrevent: 0000 (x=444, y=552)
Got ptrevent: 0000 (x=441, y=552)
Got ptrevent: 0000 (x=439, y=552)
Got ptrevent: 0000 (x=437, y=551)
Got ptrevent: 0000 (x=435, y=551)
Got ptrevent: 0000 (x=434, y=550)
Got ptrevent: 0000 (x=433, y=550)
Got ptrevent: 0000 (x=432, y=550)
Got ptrevent: 0000 (x=432, y=549)
Got ptrevent: 0000 (x=430, y=547)
Got ptrevent: 0000 (x=427, y=545)
Got ptrevent: 0000 (x=424, y=543)
Got ptrevent: 0000 (x=422, y=542)
Got ptrevent: 0000 (x=417, y=539)
Dirty page: 12x13+778+14...
Got ptrevent: 0000 (x=414, y=537)
Got ptrevent: 0000 (x=406, y=536)
Got ptrevent: 0000 (x=399, y=533)
Got ptrevent: 0000 (x=393, y=530)
Got ptrevent: 0000 (x=388, y=530)
Got ptrevent: 0000 (x=382, y=531)
Got ptrevent: 0000 (x=377, y=532)
Got ptrevent: 0000 (x=374, y=534)
Got ptrevent: 0000 (x=371, y=535)
Got ptrevent: 0000 (x=369, y=536)
Got ptrevent: 0000 (x=368, y=537)
Got ptrevent: 0000 (x=366, y=537)
Got ptrevent: 0000 (x=365, y=537)
Got ptrevent: 0000 (x=363, y=537)
Got ptrevent: 0000 (x=362, y=537)
Got ptrevent: 0000 (x=361, y=537)
Got ptrevent: 0000 (x=359, y=538)
Got ptrevent: 0000 (x=358, y=538)
Got ptrevent: 0000 (x=356, y=538)
Got ptrevent: 0000 (x=355, y=539)
Got ptrevent: 0000 (x=354, y=539)
Got ptrevent: 0000 (x=353, y=540)
Got ptrevent: 0000 (x=351, y=541)
Got ptrevent: 0000 (x=348, y=542)
Got ptrevent: 0000 (x=340, y=544)
Got ptrevent: 0000 (x=329, y=547)
Got ptrevent: 0000 (x=319, y=550)
Got ptrevent: 0000 (x=306, y=553)
Got ptrevent: 0000 (x=298, y=556)
Got ptrevent: 0000 (x=289, y=559)
Got ptrevent: 0000 (x=286, y=560)
Got ptrevent: 0000 (x=284, y=560)
  fps: 2.000000
Got ptrevent: 0000 (x=283, y=561)
Got ptrevent: 0000 (x=282, y=562)
Got ptrevent: 0000 (x=280, y=564)
Got ptrevent: 0000 (x=278, y=565)
Got ptrevent: 0000 (x=277, y=566)
Got ptrevent: 0001 (x=277, y=566)
injectTouchEvent (screen(277,566) -> touch(886,3017), mouse=1)
Dirty page: 11x13+779+14...
Got ptrevent: 0000 (x=277, y=566)
injectTouchEvent (screen(277,566) -> touch(886,3017), mouse=0)
Got ptrevent: 0000 (x=280, y=565)
Got ptrevent: 0000 (x=283, y=565)
Got ptrevent: 0000 (x=286, y=563)
Got ptrevent: 0000 (x=288, y=563)
Got ptrevent: 0000 (x=292, y=562)
Got ptrevent: 0000 (x=295, y=561)
Got ptrevent: 0000 (x=300, y=559)
Got ptrevent: 0000 (x=308, y=558)
Got ptrevent: 0000 (x=316, y=558)
Got ptrevent: 0000 (x=325, y=557)
Got ptrevent: 0000 (x=333, y=557)
Got ptrevent: 0000 (x=341, y=555)
Got ptrevent: 0000 (x=350, y=554)
Got ptrevent: 0000 (x=358, y=551)
Got ptrevent: 0000 (x=369, y=548)
Got ptrevent: 0000 (x=377, y=545)
Got ptrevent: 0000 (x=388, y=542)
Got ptrevent: 0000 (x=397, y=539)
Got ptrevent: 0000 (x=407, y=536)
Got ptrevent: 0000 (x=414, y=533)
Got ptrevent: 0000 (x=417, y=531)
Got ptrevent: 0000 (x=419, y=530)
Got ptrevent: 0000 (x=420, y=529)
Got ptrevent: 0000 (x=421, y=528)
Got ptrevent: 0000 (x=422, y=528)
Got ptrevent: 0000 (x=423, y=528)
Got ptrevent: 0000 (x=424, y=527)
Got ptrevent: 0001 (x=424, y=527)
injectTouchEvent (screen(424,527) -> touch(1356,2809), mouse=1)
Dirty page: 13x17+741+414...
Got ptrevent: 0000 (x=424, y=527)
injectTouchEvent (screen(424,527) -> touch(1356,2809), mouse=0)
Got ptrevent: 0000 (x=427, y=528)
Got ptrevent: 0000 (x=435, y=530)
Got ptrevent: 0000 (x=444, y=533)
Got ptrevent: 0000 (x=454, y=536)
Got ptrevent: 0000 (x=469, y=541)
Got ptrevent: 0000 (x=487, y=548)
Got ptrevent: 0000 (x=513, y=553)
Got ptrevent: 0000 (x=542, y=562)
Got ptrevent: 0000 (x=569, y=565)
Got ptrevent: 0000 (x=592, y=569)
Got ptrevent: 0000 (x=615, y=572)
Got ptrevent: 0000 (x=635, y=576)
Got ptrevent: 0000 (x=660, y=579)
Got ptrevent: 0000 (x=687, y=583)
Got ptrevent: 0000 (x=707, y=587)
Got ptrevent: 0000 (x=722, y=590)
Got ptrevent: 0000 (x=740, y=593)
Got ptrevent: 0000 (x=756, y=596)
Got ptrevent: 0000 (x=766, y=598)
Got ptrevent: 0000 (x=779, y=599)
Got ptrevent: 0000 (x=789, y=601)
Got ptrevent: 0000 (x=797, y=602)
Got ptrevent: 0000 (x=806, y=605)
Got ptrevent: 0000 (x=813, y=606)
Got ptrevent: 0000 (x=815, y=606)
Got ptrevent: 0000 (x=817, y=607)
Got ptrevent: 0000 (x=818, y=607)
Got ptrevent: 0000 (x=819, y=608)
Got ptrevent: 0000 (x=821, y=609)
Got ptrevent: 0000 (x=823, y=610)
Got ptrevent: 0000 (x=825, y=611)
Got ptrevent: 0000 (x=827, y=612)
Got ptrevent: 0000 (x=831, y=615)
Got ptrevent: 0000 (x=834, y=617)
Got ptrevent: 0000 (x=840, y=619)
Got ptrevent: 0000 (x=844, y=622)
Got ptrevent: 0000 (x=847, y=623)
Got ptrevent: 0000 (x=852, y=625)
Got ptrevent: 0000 (x=855, y=626)
Got ptrevent: 0000 (x=860, y=629)
Got ptrevent: 0000 (x=865, y=631)
Got ptrevent: 0000 (x=870, y=634)
Got ptrevent: 0000 (x=876, y=636)
Got ptrevent: 0000 (x=885, y=639)
Got ptrevent: 0000 (x=890, y=642)
Got ptrevent: 0000 (x=895, y=643)
Got ptrevent: 0000 (x=899, y=644)
Got ptrevent: 0000 (x=903, y=644)
Got ptrevent: 0000 (x=906, y=644)
Dirty page: 457x419+720+12...
Got ptrevent: 0000 (x=913, y=644)
Got ptrevent: 0000 (x=920, y=645)
Got ptrevent: 0000 (x=928, y=645)
Got ptrevent: 0000 (x=936, y=645)
Got ptrevent: 0000 (x=946, y=647)
Got ptrevent: 0000 (x=957, y=648)
Got ptrevent: 0000 (x=965, y=648)
Got ptrevent: 0000 (x=975, y=650)
Got ptrevent: 0000 (x=983, y=650)
Got ptrevent: 0000 (x=988, y=651)
Got ptrevent: 0000 (x=991, y=652)
Got ptrevent: 0000 (x=994, y=652)
Got ptrevent: 0000 (x=996, y=652)
Got ptrevent: 0000 (x=997, y=652)
Got ptrevent: 0000 (x=999, y=652)
Got ptrevent: 0000 (x=1000, y=652)
Got ptrevent: 0000 (x=1000, y=651)
Got ptrevent: 0000 (x=1001, y=651)
Got ptrevent: 0000 (x=1002, y=651)
Got ptrevent: 0000 (x=1002, y=650)
Got ptrevent: 0000 (x=1003, y=649)
Got ptrevent: 0000 (x=1003, y=648)
Got ptrevent: 0001 (x=1003, y=648)
injectTouchEvent (screen(1003,648) -> touch(3208,3455), mouse=1)
Got ptrevent: 0000 (x=1003, y=648)
injectTouchEvent (screen(1003,648) -> touch(3208,3455), mouse=0)
Got ptrevent: 0000 (x=992, y=645)
Got ptrevent: 0000 (x=979, y=643)
Got ptrevent: 0000 (x=963, y=640)
Got ptrevent: 0000 (x=940, y=637)
Got ptrevent: 0000 (x=905, y=630)
Got ptrevent: 0000 (x=864, y=618)
Got ptrevent: 0000 (x=820, y=608)
Got ptrevent: 0000 (x=775, y=596)
Got ptrevent: 0000 (x=732, y=589)
Got ptrevent: 0000 (x=689, y=584)
Got ptrevent: 0000 (x=646, y=577)
Got ptrevent: 0000 (x=604, y=572)
Got ptrevent: 0000 (x=568, y=565)
Got ptrevent: 0000 (x=545, y=562)
Got ptrevent: 0000 (x=515, y=560)
Got ptrevent: 0000 (x=491, y=560)
Got ptrevent: 0000 (x=471, y=558)
Got ptrevent: 0000 (x=451, y=556)
Got ptrevent: 0000 (x=434, y=553)
Got ptrevent: 0000 (x=422, y=553)
Got ptrevent: 0000 (x=410, y=552)
Got ptrevent: 0000 (x=398, y=550)
Got ptrevent: 0000 (x=386, y=549)
Got ptrevent: 0000 (x=377, y=546)
Dirty page: 484x668+768+12...
Got ptrevent: 0000 (x=370, y=544)
Got ptrevent: 0000 (x=366, y=544)
Got ptrevent: 0000 (x=364, y=543)
Got ptrevent: 0000 (x=361, y=543)
Got ptrevent: 0000 (x=357, y=542)
Got ptrevent: 0000 (x=354, y=541)
Got ptrevent: 0000 (x=349, y=540)
Got ptrevent: 0000 (x=346, y=538)
Got ptrevent: 0000 (x=341, y=535)
Got ptrevent: 0000 (x=337, y=534)
Got ptrevent: 0000 (x=333, y=532)
Got ptrevent: 0000 (x=327, y=529)
Got ptrevent: 0000 (x=318, y=527)
Got ptrevent: 0000 (x=310, y=524)
Got ptrevent: 0000 (x=301, y=522)
Got ptrevent: 0000 (x=295, y=521)
Got ptrevent: 0000 (x=290, y=521)
Got ptrevent: 0000 (x=287, y=521)
Got ptrevent: 0000 (x=285, y=521)
Got ptrevent: 0000 (x=282, y=521)
Got ptrevent: 0000 (x=279, y=521)
Got ptrevent: 0000 (x=277, y=521)
Got ptrevent: 0000 (x=276, y=521)
Got ptrevent: 0000 (x=275, y=521)
Got ptrevent: 0000 (x=274, y=521)
Got ptrevent: 0000 (x=272, y=521)
Got ptrevent: 0000 (x=269, y=522)
Got ptrevent: 0000 (x=266, y=524)
Got ptrevent: 0000 (x=261, y=527)
Got ptrevent: 0000 (x=256, y=529)
Got ptrevent: 0000 (x=253, y=531)
Got ptrevent: 0000 (x=249, y=534)
Got ptrevent: 0000 (x=244, y=536)
Got ptrevent: 0000 (x=242, y=538)
Got ptrevent: 0000 (x=239, y=541)
Got ptrevent: 0000 (x=237, y=542)
Got ptrevent: 0000 (x=235, y=543)
Got ptrevent: 0000 (x=234, y=543)
Got ptrevent: 0000 (x=234, y=544)
Got ptrevent: 0000 (x=233, y=544)
Got ptrevent: 0000 (x=233, y=545)
Got ptrevent: 0000 (x=233, y=546)
Got ptrevent: 0000 (x=232, y=547)
Got ptrevent: 0000 (x=232, y=548)
Got ptrevent: 0000 (x=231, y=550)
Got ptrevent: 0000 (x=231, y=551)
Got ptrevent: 0000 (x=231, y=553)
Got ptrevent: 0000 (x=231, y=555)
Got ptrevent: 0000 (x=231, y=557)
Got ptrevent: 0000 (x=231, y=559)
Got ptrevent: 0000 (x=231, y=560)
Got ptrevent: 0000 (x=231, y=561)
Got ptrevent: 0000 (x=232, y=561)
Dirty page: 450x666+714+14...
Got ptrevent: 0001 (x=232, y=561)
injectTouchEvent (screen(232,561) -> touch(742,2991), mouse=1)
Got ptrevent: 0001 (x=233, y=561)
injectTouchEvent (screen(233,561) -> touch(745,2991), mouse=-1)
Got ptrevent: 0000 (x=233, y=561)
injectTouchEvent (screen(233,561) -> touch(745,2991), mouse=0)
Got ptrevent: 0000 (x=235, y=561)
Got ptrevent: 0000 (x=241, y=561)
Got ptrevent: 0000 (x=249, y=561)
Got ptrevent: 0000 (x=260, y=563)
Got ptrevent: 0000 (x=278, y=571)
Got ptrevent: 0000 (x=303, y=582)
Got ptrevent: 0000 (x=340, y=594)
Got ptrevent: 0000 (x=381, y=609)
Got ptrevent: 0000 (x=418, y=618)
Got ptrevent: 0000 (x=462, y=628)
Got ptrevent: 0000 (x=504, y=632)
Got ptrevent: 0000 (x=538, y=643)
Got ptrevent: 0000 (x=574, y=652)
Got ptrevent: 0000 (x=609, y=657)
Got ptrevent: 0000 (x=645, y=666)
Got ptrevent: 0000 (x=672, y=670)
Got ptrevent: 0000 (x=702, y=672)
Got ptrevent: 0000 (x=726, y=672)
Got ptrevent: 0000 (x=748, y=673)
Got ptrevent: 0000 (x=768, y=673)
Got ptrevent: 0000 (x=784, y=673)
Got ptrevent: 0000 (x=794, y=673)
Got ptrevent: 0000 (x=805, y=671)
Got ptrevent: 0000 (x=811, y=670)
Got ptrevent: 0000 (x=814, y=669)
Got ptrevent: 0000 (x=816, y=669)
Got ptrevent: 0000 (x=816, y=668)
Got ptrevent: 0000 (x=818, y=670)
Got ptrevent: 0000 (x=822, y=680)
Got ptrevent: 0000 (x=827, y=689)
Got ptrevent: 0000 (x=829, y=694)
Got ptrevent: 0000 (x=832, y=696)
Got ptrevent: 0000 (x=833, y=698)
Got ptrevent: 0000 (x=834, y=700)
Got ptrevent: 0000 (x=834, y=701)
Dirty page: 57x17+707+414...
Got ptrevent: 0000 (x=834, y=704)
Got ptrevent: 0000 (x=833, y=708)
Got ptrevent: 0000 (x=832, y=710)
Got ptrevent: 0000 (x=831, y=711)
Got ptrevent: 0001 (x=831, y=711)
injectTouchEvent (screen(831,711) -> touch(2658,3791), mouse=1)
Dirty page: 11x13+779+14...
Got ptrevent: 0000 (x=831, y=711)
injectTouchEvent (screen(831,711) -> touch(2658,3791), mouse=0)
Dirty page: 1281x756+0+12...
Dirty page: 1281x740+0+14...
Got ptrevent: 0000 (x=833, y=710)
Got ptrevent: 0000 (x=835, y=708)
Got ptrevent: 0000 (x=837, y=705)
Got ptrevent: 0000 (x=840, y=703)
Got ptrevent: 0000 (x=843, y=701)
Got ptrevent: 0000 (x=849, y=698)
Got ptrevent: 0000 (x=858, y=696)
Got ptrevent: 0000 (x=869, y=693)
Got ptrevent: 0000 (x=879, y=693)
Got ptrevent: 0000 (x=891, y=693)
Got ptrevent: 0000 (x=903, y=695)
Got ptrevent: 0000 (x=914, y=698)
Got ptrevent: 0000 (x=924, y=701)
Got ptrevent: 0000 (x=934, y=702)
Got ptrevent: 0000 (x=945, y=702)
Got ptrevent: 0000 (x=953, y=702)
Got ptrevent: 0000 (x=961, y=702)
Got ptrevent: 0000 (x=969, y=702)
Got ptrevent: 0000 (x=977, y=704)
Got ptrevent: 0000 (x=988, y=705)
Got ptrevent: 0000 (x=996, y=705)
Got ptrevent: 0000 (x=1006, y=707)
Got ptrevent: 0000 (x=1017, y=710)
Got ptrevent: 0000 (x=1025, y=712)
  fps: 2.000000
Got ptrevent: 0000 (x=1036, y=715)
Got ptrevent: 0000 (x=1046, y=718)
Got ptrevent: 0000 (x=1055, y=721)
Got ptrevent: 0000 (x=1065, y=723)
Got ptrevent: 0000 (x=1074, y=726)
Got ptrevent: 0000 (x=1081, y=727)
Got ptrevent: 0000 (x=1087, y=728)
Got ptrevent: 0000 (x=1092, y=728)
Got ptrevent: 0000 (x=1096, y=728)
Got ptrevent: 0000 (x=1099, y=728)
Got ptrevent: 0000 (x=1101, y=728)
Got ptrevent: 0000 (x=1102, y=728)
Got ptrevent: 0000 (x=1103, y=728)
Got ptrevent: 0000 (x=1105, y=728)
Got ptrevent: 0000 (x=1106, y=727)
Got ptrevent: 0000 (x=1107, y=727)
Got ptrevent: 0000 (x=1108, y=727)
Got ptrevent: 0000 (x=1109, y=727)
Got ptrevent: 0000 (x=1110, y=727)
Got ptrevent: 0000 (x=1111, y=727)
Got ptrevent: 0000 (x=1112, y=727)
Got ptrevent: 0000 (x=1114, y=727)
Got ptrevent: 0000 (x=1116, y=727)
Got ptrevent: 0000 (x=1117, y=727)
Got ptrevent: 0000 (x=1119, y=727)
Got ptrevent: 0000 (x=1119, y=726)
Got ptrevent: 0000 (x=1120, y=726)
Got ptrevent: 0000 (x=1121, y=726)
Got ptrevent: 0000 (x=1121, y=725)
Got ptrevent: 0000 (x=1122, y=725)
Got ptrevent: 0000 (x=1124, y=725)
Got ptrevent: 0000 (x=1126, y=725)
Got ptrevent: 0000 (x=1128, y=725)
Got ptrevent: 0000 (x=1131, y=725)
Got ptrevent: 0000 (x=1133, y=725)
Got ptrevent: 0000 (x=1136, y=725)
Got ptrevent: 0000 (x=1138, y=725)
Got ptrevent: 0000 (x=1140, y=725)
Got ptrevent: 0000 (x=1144, y=725)
Dirty page: 12x13+778+14...
Got ptrevent: 0000 (x=1145, y=725)
Got ptrevent: 0000 (x=1147, y=726)
Got ptrevent: 0000 (x=1148, y=726)
Got ptrevent: 0000 (x=1149, y=726)
Got ptrevent: 0001 (x=1149, y=726)
injectTouchEvent (screen(1149,726) -> touch(3675,3871), mouse=1)
Got ptrevent: 0000 (x=1149, y=726)
injectTouchEvent (screen(1149,726) -> touch(3675,3871), mouse=0)
Dirty page: 184x752+1097+16...
Got ptrevent: 0000 (x=1148, y=725)
Got ptrevent: 0000 (x=1147, y=725)
Got ptrevent: 0000 (x=1146, y=725)
Got ptrevent: 0000 (x=1145, y=724)
Got ptrevent: 0000 (x=1144, y=723)
Got ptrevent: 0000 (x=1143, y=723)
Got ptrevent: 0000 (x=1143, y=722)
Got ptrevent: 0000 (x=1142, y=721)
Got ptrevent: 0000 (x=1140, y=720)
Got ptrevent: 0000 (x=1139, y=719)
Got ptrevent: 0000 (x=1137, y=718)
Got ptrevent: 0000 (x=1135, y=716)
Got ptrevent: 0000 (x=1132, y=714)
Got ptrevent: 0000 (x=1128, y=712)
Got ptrevent: 0000 (x=1125, y=710)
Got ptrevent: 0000 (x=1120, y=707)
Got ptrevent: 0000 (x=1117, y=705)
Got ptrevent: 0000 (x=1113, y=703)
Got ptrevent: 0000 (x=1107, y=700)
Got ptrevent: 0000 (x=1100, y=697)
Got ptrevent: 0000 (x=1092, y=695)
Got ptrevent: 0000 (x=1085, y=692)
Got ptrevent: 0000 (x=1078, y=689)
Got ptrevent: 0000 (x=1071, y=686)
Got ptrevent: 0000 (x=1063, y=683)
Got ptrevent: 0000 (x=1056, y=681)
Got ptrevent: 0000 (x=1047, y=675)
Got ptrevent: 0000 (x=1038, y=667)
Got ptrevent: 0000 (x=1027, y=659)
Got ptrevent: 0000 (x=1016, y=651)
Got ptrevent: 0000 (x=1003, y=642)
Got ptrevent: 0000 (x=989, y=632)
Got ptrevent: 0000 (x=976, y=622)
Got ptrevent: 0000 (x=963, y=612)
Got ptrevent: 0000 (x=954, y=601)
Got ptrevent: 0000 (x=945, y=592)
Got ptrevent: 0000 (x=935, y=583)
Got ptrevent: 0000 (x=926, y=573)
Got ptrevent: 0000 (x=919, y=567)
Got ptrevent: 0000 (x=911, y=560)
Got ptrevent: 0000 (x=904, y=554)
Got ptrevent: 0000 (x=899, y=549)
Got ptrevent: 0000 (x=895, y=547)
Got ptrevent: 0000 (x=892, y=543)
Got ptrevent: 0000 (x=889, y=538)
Got ptrevent: 0000 (x=886, y=535)
Got ptrevent: 0000 (x=884, y=533)
Got ptrevent: 0000 (x=882, y=530)
Got ptrevent: 0000 (x=880, y=528)
Got ptrevent: 0000 (x=876, y=525)
Got ptrevent: 0000 (x=873, y=523)
Got ptrevent: 0000 (x=869, y=520)
Got ptrevent: 0000 (x=866, y=518)
Got ptrevent: 0000 (x=863, y=516)
Got ptrevent: 0000 (x=859, y=514)
Got ptrevent: 0000 (x=857, y=512)
Got ptrevent: 0000 (x=855, y=509)
Got ptrevent: 0000 (x=852, y=507)
Got ptrevent: 0000 (x=850, y=505)
Got ptrevent: 0000 (x=847, y=503)
Got ptrevent: 0000 (x=845, y=501)
Got ptrevent: 0000 (x=843, y=500)
Got ptrevent: 0000 (x=841, y=498)
Got ptrevent: 0000 (x=839, y=497)
Got ptrevent: 0000 (x=837, y=494)
Got ptrevent: 0000 (x=836, y=494)
Got ptrevent: 0000 (x=834, y=494)
Got ptrevent: 0000 (x=834, y=493)
Got ptrevent: 0000 (x=832, y=493)
Got ptrevent: 0000 (x=830, y=492)
Got ptrevent: 0000 (x=829, y=492)
Got ptrevent: 0000 (x=829, y=491)
Got ptrevent: 0000 (x=827, y=490)
Got ptrevent: 0000 (x=825, y=490)
Got ptrevent: 0000 (x=823, y=490)
Got ptrevent: 0000 (x=821, y=489)
Got ptrevent: 0000 (x=820, y=489)
Got ptrevent: 0000 (x=819, y=489)
Got ptrevent: 0000 (x=817, y=489)
Got ptrevent: 0000 (x=816, y=489)
Got ptrevent: 0000 (x=815, y=489)
Got ptrevent: 0000 (x=813, y=489)
Got ptrevent: 0000 (x=811, y=489)
Got ptrevent: 0000 (x=809, y=489)
Got ptrevent: 0000 (x=807, y=489)
Got ptrevent: 0000 (x=805, y=489)
Got ptrevent: 0000 (x=803, y=488)
Got ptrevent: 0000 (x=800, y=488)
Got ptrevent: 0000 (x=795, y=487)
Got ptrevent: 0000 (x=791, y=486)
Got ptrevent: 0000 (x=786, y=484)
Got ptrevent: 0000 (x=783, y=482)
Got ptrevent: 0000 (x=779, y=480)
Got ptrevent: 0000 (x=777, y=479)
Got ptrevent: 0000 (x=775, y=477)
Got ptrevent: 0000 (x=773, y=476)
Got ptrevent: 0000 (x=771, y=475)
Got ptrevent: 0000 (x=769, y=474)
Got ptrevent: 0000 (x=767, y=474)
Got ptrevent: 0000 (x=765, y=473)
Got ptrevent: 0000 (x=764, y=473)
Got ptrevent: 0000 (x=763, y=473)
Got ptrevent: 0000 (x=762, y=473)
Got ptrevent: 0000 (x=762, y=472)
Got ptrevent: 0000 (x=761, y=472)
Got ptrevent: 0000 (x=760, y=472)
Got ptrevent: 0000 (x=759, y=472)
Got ptrevent: 0000 (x=758, y=472)
Got ptrevent: 0000 (x=756, y=471)
Got ptrevent: 0000 (x=754, y=471)
Got ptrevent: 0000 (x=753, y=471)
Got ptrevent: 0000 (x=753, y=470)
Got ptrevent: 0000 (x=752, y=470)
Got ptrevent: 0000 (x=750, y=469)
Got ptrevent: 0000 (x=749, y=469)
Got ptrevent: 0000 (x=748, y=469)
Got ptrevent: 0000 (x=747, y=468)
Got ptrevent: 0000 (x=746, y=467)
Got ptrevent: 0000 (x=744, y=465)
Got ptrevent: 0000 (x=742, y=465)
Got ptrevent: 0000 (x=740, y=464)
Dirty page: 1281x768+0+0...
Got ptrevent: 0000 (x=738, y=463)
Got ptrevent: 0000 (x=736, y=462)
Got ptrevent: 0000 (x=734, y=462)
Got ptrevent: 0000 (x=732, y=461)
Got ptrevent: 0000 (x=730, y=460)
Got ptrevent: 0000 (x=728, y=459)
Got ptrevent: 0000 (x=725, y=458)
Got ptrevent: 0000 (x=723, y=457)
Got ptrevent: 0000 (x=721, y=456)
Got ptrevent: 0000 (x=720, y=455)
Got ptrevent: 0000 (x=718, y=455)
Got ptrevent: 0000 (x=716, y=453)
Got ptrevent: 0000 (x=714, y=451)
Got ptrevent: 0000 (x=712, y=449)
Got ptrevent: 0000 (x=710, y=447)
Got ptrevent: 0000 (x=707, y=445)
Got ptrevent: 0000 (x=705, y=443)
Got ptrevent: 0000 (x=702, y=441)
Got ptrevent: 0000 (x=700, y=440)
Got ptrevent: 0000 (x=699, y=437)
Got ptrevent: 0000 (x=697, y=435)
Got ptrevent: 0000 (x=696, y=435)
Got ptrevent: 0000 (x=695, y=435)
Got ptrevent: 0000 (x=695, y=434)
Got ptrevent: 0000 (x=694, y=434)
Got ptrevent: 0000 (x=693, y=433)
Got ptrevent: 0000 (x=692, y=433)
Got ptrevent: 0010 (x=692, y=433)
Got ptrevent: 0000 (x=692, y=433)
Got ptrevent: 0010 (x=692, y=433)
Got ptrevent: 0000 (x=692, y=433)
Got ptrevent: 0010 (x=692, y=433)
Got ptrevent: 0000 (x=692, y=433)
Got ptrevent: 0010 (x=692, y=433)
Got ptrevent: 0000 (x=692, y=433)
Got ptrevent: 0010 (x=692, y=433)
Got ptrevent: 0000 (x=692, y=433)
Got ptrevent: 0010 (x=692, y=433)
Got ptrevent: 0000 (x=692, y=433)
Dirty page: 1246x672+0+16...
Got ptrevent: 0010 (x=692, y=433)
Got ptrevent: 0000 (x=692, y=433)
Got ptrevent: 0010 (x=692, y=433)
Got ptrevent: 0000 (x=692, y=433)
Got ptrevent: 0010 (x=692, y=433)
Got ptrevent: 0000 (x=692, y=433)
Got ptrevent: 0010 (x=692, y=433)
Got ptrevent: 0000 (x=692, y=433)
Got ptrevent: 0010 (x=692, y=433)
Got ptrevent: 0000 (x=692, y=433)
Got ptrevent: 0010 (x=692, y=433)
Got ptrevent: 0000 (x=692, y=433)
Got ptrevent: 0010 (x=692, y=433)
Got ptrevent: 0000 (x=692, y=433)
Got ptrevent: 0010 (x=692, y=433)
Got ptrevent: 0000 (x=692, y=433)
Got ptrevent: 0010 (x=692, y=433)
Got ptrevent: 0000 (x=692, y=433)
Got ptrevent: 0010 (x=692, y=433)
Got ptrevent: 0000 (x=692, y=433)
Got ptrevent: 0010 (x=692, y=433)
Got ptrevent: 0000 (x=692, y=433)
Got ptrevent: 0010 (x=692, y=433)
Got ptrevent: 0000 (x=692, y=433)
Got ptrevent: 0010 (x=692, y=433)
Got ptrevent: 0000 (x=692, y=433)
Dirty page: 855x674+0+14...
Got ptrevent: 0010 (x=692, y=433)
Got ptrevent: 0000 (x=692, y=433)
Got ptrevent: 0010 (x=692, y=433)
Got ptrevent: 0000 (x=692, y=433)
Got ptrevent: 0010 (x=692, y=433)
Got ptrevent: 0000 (x=692, y=433)
Got ptrevent: 0010 (x=692, y=433)
Got ptrevent: 0000 (x=692, y=433)
Got ptrevent: 0010 (x=692, y=433)
Got ptrevent: 0000 (x=692, y=433)
Got ptrevent: 0010 (x=692, y=433)
Got ptrevent: 0000 (x=692, y=433)
Dirty page: 753x568+0+120...
Got ptrevent: 0010 (x=692, y=433)
Got ptrevent: 0000 (x=692, y=433)
Got ptrevent: 0010 (x=692, y=433)
Got ptrevent: 0000 (x=692, y=433)
Got ptrevent: 0010 (x=692, y=433)
Got ptrevent: 0000 (x=692, y=433)
  fps: 2.000000
Got ptrevent: 0010 (x=692, y=433)
Got ptrevent: 0000 (x=692, y=433)
Got ptrevent: 0010 (x=692, y=433)
Got ptrevent: 0000 (x=692, y=433)
Got ptrevent: 0010 (x=692, y=433)
Got ptrevent: 0000 (x=692, y=433)
Got ptrevent: 0010 (x=692, y=433)
Got ptrevent: 0000 (x=692, y=433)
Got ptrevent: 0010 (x=692, y=433)
Got ptrevent: 0000 (x=692, y=433)
Got ptrevent: 0010 (x=692, y=433)
Got ptrevent: 0000 (x=692, y=433)
Got ptrevent: 0010 (x=692, y=433)
Got ptrevent: 0000 (x=692, y=433)
Got ptrevent: 0010 (x=692, y=433)
Got ptrevent: 0000 (x=692, y=433)
Got ptrevent: 0010 (x=692, y=433)
Got ptrevent: 0000 (x=692, y=433)
Got ptrevent: 0010 (x=692, y=433)
Got ptrevent: 0000 (x=692, y=433)
Got ptrevent: 0010 (x=692, y=433)
Got ptrevent: 0000 (x=692, y=433)
Got ptrevent: 0010 (x=692, y=433)
Got ptrevent: 0000 (x=692, y=433)
Dirty page: 1228x674+0+14...
Got ptrevent: 0010 (x=692, y=433)
Got ptrevent: 0000 (x=692, y=433)
Got ptrevent: 0010 (x=692, y=433)
Got ptrevent: 0000 (x=692, y=433)
Got ptrevent: 0010 (x=692, y=433)
Got ptrevent: 0000 (x=692, y=433)
Got ptrevent: 0010 (x=692, y=433)
Got ptrevent: 0000 (x=692, y=433)
Got ptrevent: 0010 (x=692, y=433)
Got ptrevent: 0000 (x=692, y=433)
Got ptrevent: 0010 (x=692, y=433)
Got ptrevent: 0000 (x=692, y=433)
Got ptrevent: 0010 (x=692, y=433)
Got ptrevent: 0000 (x=692, y=433)
Got ptrevent: 0010 (x=692, y=433)
Got ptrevent: 0000 (x=692, y=433)
Got ptrevent: 0010 (x=692, y=433)
Got ptrevent: 0000 (x=692, y=433)
Got ptrevent: 0010 (x=692, y=433)
Got ptrevent: 0000 (x=692, y=433)
Got ptrevent: 0010 (x=692, y=433)
Got ptrevent: 0000 (x=692, y=433)
Got ptrevent: 0010 (x=692, y=433)
Got ptrevent: 0000 (x=692, y=433)
Got ptrevent: 0010 (x=692, y=433)
Got ptrevent: 0000 (x=692, y=433)
Got ptrevent: 0010 (x=692, y=433)
Got ptrevent: 0000 (x=692, y=433)
Dirty page: 1171x672+0+16...
Got ptrevent: 0008 (x=692, y=433)
Got ptrevent: 0000 (x=692, y=433)
Got ptrevent: 0008 (x=692, y=433)
Got ptrevent: 0000 (x=692, y=433)
Got ptrevent: 0008 (x=692, y=433)
Got ptrevent: 0000 (x=692, y=433)
Got ptrevent: 0008 (x=692, y=433)
Got ptrevent: 0000 (x=692, y=433)
Got ptrevent: 0008 (x=692, y=433)
Got ptrevent: 0000 (x=692, y=433)
Got ptrevent: 0008 (x=692, y=433)
Got ptrevent: 0000 (x=692, y=433)
Got ptrevent: 0008 (x=692, y=433)
Got ptrevent: 0000 (x=692, y=433)
Got ptrevent: 0008 (x=692, y=433)
Got ptrevent: 0000 (x=692, y=433)
Got ptrevent: 0008 (x=692, y=433)
Got ptrevent: 0000 (x=692, y=433)
Got ptrevent: 0008 (x=692, y=433)
Got ptrevent: 0000 (x=692, y=433)
Got ptrevent: 0008 (x=692, y=433)
Got ptrevent: 0000 (x=692, y=433)
Got ptrevent: 0008 (x=692, y=433)
Got ptrevent: 0000 (x=692, y=433)
Got ptrevent: 0008 (x=692, y=433)
Got ptrevent: 0000 (x=692, y=433)
Got ptrevent: 0008 (x=692, y=433)
Got ptrevent: 0000 (x=692, y=433)
Got ptrevent: 0008 (x=692, y=433)
Got ptrevent: 0000 (x=692, y=433)
Got ptrevent: 0008 (x=692, y=433)
Got ptrevent: 0000 (x=692, y=433)
Got ptrevent: 0008 (x=692, y=433)
Got ptrevent: 0000 (x=692, y=433)
Got ptrevent: 0008 (x=692, y=433)
Got ptrevent: 0000 (x=692, y=433)
Got ptrevent: 0008 (x=692, y=433)
Got ptrevent: 0000 (x=692, y=433)
Got ptrevent: 0008 (x=692, y=433)
Got ptrevent: 0000 (x=692, y=433)
Got ptrevent: 0008 (x=692, y=433)
Got ptrevent: 0000 (x=692, y=433)
Dirty page: 753x638+37+14...
Got ptrevent: 0008 (x=692, y=433)
Got ptrevent: 0000 (x=692, y=433)
Got ptrevent: 0008 (x=692, y=433)
Got ptrevent: 0000 (x=692, y=433)
Got ptrevent: 0008 (x=692, y=433)
Got ptrevent: 0000 (x=692, y=433)
Got ptrevent: 0008 (x=692, y=433)
Got ptrevent: 0000 (x=692, y=433)
Got ptrevent: 0008 (x=692, y=433)
Got ptrevent: 0000 (x=692, y=433)
Got ptrevent: 0008 (x=692, y=433)
Got ptrevent: 0000 (x=692, y=433)
Got ptrevent: 0008 (x=692, y=433)
Got ptrevent: 0000 (x=692, y=433)
Got ptrevent: 0008 (x=692, y=433)
Got ptrevent: 0000 (x=692, y=433)
Got ptrevent: 0008 (x=692, y=433)
Got ptrevent: 0000 (x=692, y=433)
Got ptrevent: 0008 (x=692, y=433)
Got ptrevent: 0000 (x=692, y=433)
Got ptrevent: 0008 (x=692, y=433)
Got ptrevent: 0000 (x=692, y=433)
Got ptrevent: 0008 (x=692, y=433)
Got ptrevent: 0000 (x=692, y=433)
Got ptrevent: 0008 (x=692, y=433)
Got ptrevent: 0000 (x=692, y=433)
Got ptrevent: 0008 (x=692, y=433)
Got ptrevent: 0000 (x=692, y=433)
Got ptrevent: 0008 (x=692, y=433)
Got ptrevent: 0000 (x=692, y=433)
Got ptrevent: 0008 (x=692, y=433)
Got ptrevent: 0000 (x=692, y=433)
Got ptrevent: 0008 (x=692, y=433)
Got ptrevent: 0000 (x=692, y=433)
Got ptrevent: 0008 (x=692, y=433)
Got ptrevent: 0000 (x=692, y=433)
Got ptrevent: 0008 (x=692, y=433)
Got ptrevent: 0000 (x=692, y=433)
Dirty page: 753x638+37+14...
Got ptrevent: 0008 (x=692, y=433)
Got ptrevent: 0000 (x=692, y=433)
Got ptrevent: 0008 (x=692, y=433)
Got ptrevent: 0000 (x=692, y=433)
Got ptrevent: 0008 (x=692, y=433)
Got ptrevent: 0000 (x=692, y=433)
Got ptrevent: 0008 (x=692, y=433)
Got ptrevent: 0000 (x=692, y=433)
Got ptrevent: 0008 (x=692, y=433)
Got ptrevent: 0000 (x=692, y=433)
Got ptrevent: 0008 (x=692, y=433)
Got ptrevent: 0000 (x=692, y=433)
Got ptrevent: 0000 (x=692, y=432)
Got ptrevent: 0000 (x=694, y=429)
Got ptrevent: 0000 (x=717, y=402)
Got ptrevent: 0000 (x=734, y=374)
Got ptrevent: 0000 (x=751, y=350)
Got ptrevent: 0000 (x=770, y=324)
Got ptrevent: 0000 (x=805, y=289)
Got ptrevent: 0000 (x=864, y=236)
Got ptrevent: 0000 (x=918, y=190)
Got ptrevent: 0000 (x=972, y=148)
Got ptrevent: 0000 (x=1013, y=117)
Got ptrevent: 0000 (x=1055, y=86)
Got ptrevent: 0000 (x=1087, y=65)
Got ptrevent: 0000 (x=1120, y=44)
Got ptrevent: 0000 (x=1145, y=25)
Got ptrevent: 0000 (x=1160, y=12)
Got ptrevent: 0000 (x=1175, y=2)
Got ptrevent: 0000 (x=1184, y=0)
Dirty page: 1200x632+40+20...
Dirty page: 1161x638+45+14...
31/10/2023 06:42:43 Client 192.168.200.45 gone
31/10/2023 06:42:43 Statistics             events    Transmit/ RawEquiv ( saved)
31/10/2023 06:42:43  FramebufferUpdate   :     48 |         0/        0 (  0.0%)
31/10/2023 06:42:43  raw                 :      1 |     16652/    16652 (  0.0%)
31/10/2023 06:42:43  ZRLE                :     47 |    320575/ 68693412 ( 99.5%)
31/10/2023 06:42:43  RichCursor          :      3 |       429/      429 (  0.0%)
31/10/2023 06:42:43  TOTALS              :     99 |    337656/ 68710493 ( 99.5%)
31/10/2023 06:42:43 Statistics             events    Received/ RawEquiv ( saved)
31/10/2023 06:42:43  PointerEvent        :   1182 |      7092/     7092 (  0.0%)
31/10/2023 06:42:43  FramebufferUpdate   :     49 |       490/      490 (  0.0%)
31/10/2023 06:42:43  SetPixelFormat      :      2 |        40/       40 (  0.0%)
31/10/2023 06:42:43  SetEncodings        :      3 |       168/      168 (  0.0%)
31/10/2023 06:42:43  TOTALS              :   1236 |      7790/     7790 (  0.0%)
Dirty page: 1159x674+48+14...

Thank you

ponty commented 11 months ago

The wheel up/down events are arrived:

Got ptrevent: 0008 Got ptrevent: 0010

But they are not converted to touch events (injectTouchEvent) because this is a simulation of a touch device so only the left mouse button is used as a touch event.

https://github.com/ponty/framebuffer-vncserver/blob/4a137257358d7e5b2b669ef7bba4a1efa257ae1f/src/framebuffer-vncserver.c#L184-L205

There is also a mouse device which handles the wheel, you can try it. Help: framebuffer-vncserver -h (README is older) Mouse: framebuffer-vncserver -m /dev/input/event2

ArthurHDN commented 11 months ago

Hello. This is the command line that I used in the previous comment /usr/bin/framebuffer-vncserver -f /dev/fb0 -p 5900 -t /dev/input/event5 -v. If I change the -t to -m, from the logs apparently the mouse is initialized and the events are injected via injectMouseEvent. However, nothing happens. The mouse scrolls neither the left button (that works with -t) works if I use -m.

Apparently -m and -t can't be used at the same time, so I have to pick if my input device will be used for touch or mouse. If I pick touch, inputs work in general but I can't use mouse scroll. If I pick mouse, no inputs work at all even though they all seem to be injected.

I also tried using -k, for the keyboard, combining -k with -m or -t but yielded the same result. Trying other input devices didn't make the mouse initialize.

Log below:

hexagon@NUAR:~$ sudo /usr/bin/framebuffer-vncserver -f /dev/fb0 -p 5900 -m /dev/input/event5 -v
Initializing framebuffer device /dev/fb0...
  xres=1280, yres=768, xresv=1280, yresv=768, xoffs=0, yoffs=0, bpp=32
  offset:length red=16:8 green=8:8 blue=0:8
No keyboard device
Initializing mouse device /dev/input/event5 ...
  x:(0 4095)  y:(0 4095)
Initializing VNC server:
        width:  1280
        height: 768
        bpp:    32
        port:   5900
        rotate: 0
  mouse/touch rotate: 0
    target FPS: 10
Initializing server...
01/11/2023 05:46:37 Unable to establish connection with systemd socket
01/11/2023 05:46:37 Listening for VNC connections on TCP port 5900
01/11/2023 05:46:37 Listening for VNC connections on TCP6 port 5900
01/11/2023 05:46:39   0 other clients
  fps: 0.000000
01/11/2023 05:46:40 Normal socket connection
01/11/2023 05:46:40 Client Protocol Version 3.8
01/11/2023 05:46:40 Protocol version sent 3.8, using 3.8
01/11/2023 05:46:40 rfbProcessClientSecurityType: executing handler for type 1
01/11/2023 05:46:40 rfbProcessClientSecurityType: returning securityResult for client rfb version >= 3.8
01/11/2023 05:46:40 rfbProcessClientNormalMessage: ignoring unsupported encoding type Enc(0x00000018)
01/11/2023 05:46:40 rfbProcessClientNormalMessage: ignoring unsupported encoding type Enc(0x00000016)
01/11/2023 05:46:40 rfbProcessClientNormalMessage: ignoring unsupported encoding type Enc(0x00000015)
01/11/2023 05:46:40 rfbProcessClientNormalMessage: ignoring unsupported encoding type Enc(0x0000000F)
01/11/2023 05:46:40 rfbProcessClientNormalMessage: ignoring unsupported encoding type Enc(0xFFFFFEC6)
01/11/2023 05:46:40 Enabling full-color cursor updates for client 192.168.200.45
01/11/2023 05:46:40 Enabling NewFBSize protocol extension for client 192.168.200.45
01/11/2023 05:46:40 Using ZRLE encoding for client 192.168.200.45
01/11/2023 05:46:40 Pixel format for client 192.168.200.45:
01/11/2023 05:46:40   8 bpp, depth 6
01/11/2023 05:46:40   true colour: max r 3 g 3 b 3, shift r 4 g 2 b 0
Got mouse: 0000 (x=480, y=163)
injectMouseEvent (screen(480,163) -> mouse(1535,869), button=0, wheel tick=0)
01/11/2023 05:46:40 rfbProcessClientNormalMessage: ignoring unsupported encoding type Enc(0x00000018)
01/11/2023 05:46:40 rfbProcessClientNormalMessage: ignoring unsupported encoding type Enc(0x00000016)
01/11/2023 05:46:40 rfbProcessClientNormalMessage: ignoring unsupported encoding type Enc(0x00000015)
01/11/2023 05:46:40 rfbProcessClientNormalMessage: ignoring unsupported encoding type Enc(0x0000000F)
01/11/2023 05:46:40 rfbProcessClientNormalMessage: ignoring unsupported encoding type Enc(0xFFFFFEC6)
01/11/2023 05:46:40 Enabling full-color cursor updates for client 192.168.200.45
01/11/2023 05:46:40 Enabling NewFBSize protocol extension for client 192.168.200.45
01/11/2023 05:46:40 Switching from ZRLE to raw Encoding for client 192.168.200.45
01/11/2023 05:46:40 rfbProcessClientNormalMessage: ignoring unsupported encoding type Enc(0x00000018)
01/11/2023 05:46:40 rfbProcessClientNormalMessage: ignoring unsupported encoding type Enc(0x00000016)
01/11/2023 05:46:40 rfbProcessClientNormalMessage: ignoring unsupported encoding type Enc(0x00000015)
01/11/2023 05:46:40 rfbProcessClientNormalMessage: ignoring unsupported encoding type Enc(0x0000000F)
01/11/2023 05:46:40 rfbProcessClientNormalMessage: ignoring unsupported encoding type Enc(0xFFFFFEC6)
01/11/2023 05:46:40 Enabling full-color cursor updates for client 192.168.200.45
01/11/2023 05:46:40 Enabling NewFBSize protocol extension for client 192.168.200.45
01/11/2023 05:46:40 Switching from raw to ZRLE Encoding for client 192.168.200.45
01/11/2023 05:46:40 Pixel format for client 192.168.200.45:
01/11/2023 05:46:40   32 bpp, depth 24, little endian
01/11/2023 05:46:40   true colour: max r 255 g 255 b 255, shift r 16 g 8 b 0
Dirty page: 1281x768+0+0...
Got mouse: 0000 (x=481, y=167)
injectMouseEvent (screen(481,167) -> mouse(1538,890), button=0, wheel tick=0)
Got mouse: 0000 (x=491, y=180)
injectMouseEvent (screen(491,180) -> mouse(1570,959), button=0, wheel tick=0)
Got mouse: 0000 (x=504, y=192)
injectMouseEvent (screen(504,192) -> mouse(1612,1023), button=0, wheel tick=0)
Got mouse: 0000 (x=515, y=201)
injectMouseEvent (screen(515,201) -> mouse(1647,1071), button=0, wheel tick=0)
Got mouse: 0000 (x=528, y=211)
injectMouseEvent (screen(528,211) -> mouse(1689,1125), button=0, wheel tick=0)
Got mouse: 0000 (x=539, y=221)
injectMouseEvent (screen(539,221) -> mouse(1724,1178), button=0, wheel tick=0)
Got mouse: 0000 (x=552, y=232)
injectMouseEvent (screen(552,232) -> mouse(1765,1237), button=0, wheel tick=0)
Got mouse: 0000 (x=564, y=243)
injectMouseEvent (screen(564,243) -> mouse(1804,1295), button=0, wheel tick=0)
Got mouse: 0000 (x=577, y=255)
injectMouseEvent (screen(577,255) -> mouse(1845,1359), button=0, wheel tick=0)
Got mouse: 0000 (x=590, y=266)
injectMouseEvent (screen(590,266) -> mouse(1887,1418), button=0, wheel tick=0)
Got mouse: 0000 (x=603, y=276)
injectMouseEvent (screen(603,276) -> mouse(1929,1471), button=0, wheel tick=0)
Got mouse: 0000 (x=616, y=286)
injectMouseEvent (screen(616,286) -> mouse(1970,1524), button=0, wheel tick=0)
Got mouse: 0000 (x=627, y=295)
injectMouseEvent (screen(627,295) -> mouse(2005,1572), button=0, wheel tick=0)
Got mouse: 0000 (x=636, y=305)
injectMouseEvent (screen(636,305) -> mouse(2034,1626), button=0, wheel tick=0)
Got mouse: 0000 (x=646, y=314)
injectMouseEvent (screen(646,314) -> mouse(2066,1674), button=0, wheel tick=0)
Got mouse: 0000 (x=655, y=323)
injectMouseEvent (screen(655,323) -> mouse(2095,1722), button=0, wheel tick=0)
Got mouse: 0000 (x=662, y=329)
injectMouseEvent (screen(662,329) -> mouse(2117,1754), button=0, wheel tick=0)
Got mouse: 0000 (x=669, y=335)
injectMouseEvent (screen(669,335) -> mouse(2140,1786), button=0, wheel tick=0)
Got mouse: 0000 (x=677, y=342)
injectMouseEvent (screen(677,342) -> mouse(2165,1823), button=0, wheel tick=0)
Got mouse: 0000 (x=681, y=349)
injectMouseEvent (screen(681,349) -> mouse(2178,1860), button=0, wheel tick=0)
Got mouse: 0000 (x=687, y=356)
injectMouseEvent (screen(687,356) -> mouse(2197,1898), button=0, wheel tick=0)
Got mouse: 0000 (x=692, y=364)
injectMouseEvent (screen(692,364) -> mouse(2213,1940), button=0, wheel tick=0)
Got mouse: 0000 (x=696, y=369)
injectMouseEvent (screen(696,369) -> mouse(2226,1967), button=0, wheel tick=0)
Got mouse: 0000 (x=699, y=374)
injectMouseEvent (screen(699,374) -> mouse(2236,1994), button=0, wheel tick=0)
Got mouse: 0000 (x=701, y=376)
injectMouseEvent (screen(701,376) -> mouse(2242,2004), button=0, wheel tick=0)
Got mouse: 0000 (x=702, y=378)
injectMouseEvent (screen(702,378) -> mouse(2245,2015), button=0, wheel tick=0)
Got mouse: 0000 (x=704, y=380)
injectMouseEvent (screen(704,380) -> mouse(2252,2026), button=0, wheel tick=0)
Got mouse: 0000 (x=706, y=382)
injectMouseEvent (screen(706,382) -> mouse(2258,2036), button=0, wheel tick=0)
Got mouse: 0000 (x=708, y=384)
injectMouseEvent (screen(708,384) -> mouse(2265,2047), button=0, wheel tick=0)
Got mouse: 0000 (x=711, y=387)
injectMouseEvent (screen(711,387) -> mouse(2274,2063), button=0, wheel tick=0)
Got mouse: 0000 (x=713, y=390)
injectMouseEvent (screen(713,390) -> mouse(2281,2079), button=0, wheel tick=0)
Got mouse: 0000 (x=715, y=392)
injectMouseEvent (screen(715,392) -> mouse(2287,2090), button=0, wheel tick=0)
Got mouse: 0000 (x=717, y=394)
injectMouseEvent (screen(717,394) -> mouse(2293,2100), button=0, wheel tick=0)
Dirty page: 1217x640+35+12...
Got mouse: 0000 (x=719, y=396)
injectMouseEvent (screen(719,396) -> mouse(2300,2111), button=0, wheel tick=0)
Got mouse: 0000 (x=721, y=398)
injectMouseEvent (screen(721,398) -> mouse(2306,2122), button=0, wheel tick=0)
Got mouse: 0000 (x=722, y=400)
injectMouseEvent (screen(722,400) -> mouse(2309,2132), button=0, wheel tick=0)
Got mouse: 0000 (x=722, y=402)
injectMouseEvent (screen(722,402) -> mouse(2309,2143), button=0, wheel tick=0)
Got mouse: 0000 (x=723, y=403)
injectMouseEvent (screen(723,403) -> mouse(2313,2148), button=0, wheel tick=0)
Got mouse: 0000 (x=723, y=404)
injectMouseEvent (screen(723,404) -> mouse(2313,2154), button=0, wheel tick=0)
Got mouse: 0000 (x=723, y=405)
injectMouseEvent (screen(723,405) -> mouse(2313,2159), button=0, wheel tick=0)
Got mouse: 0000 (x=724, y=406)
injectMouseEvent (screen(724,406) -> mouse(2316,2164), button=0, wheel tick=0)
Got mouse: 0000 (x=724, y=407)
injectMouseEvent (screen(724,407) -> mouse(2316,2170), button=0, wheel tick=0)
Got mouse: 0000 (x=724, y=408)
injectMouseEvent (screen(724,408) -> mouse(2316,2175), button=0, wheel tick=0)
Got mouse: 0000 (x=724, y=409)
injectMouseEvent (screen(724,409) -> mouse(2316,2180), button=0, wheel tick=0)
Got mouse: 0000 (x=723, y=417)
injectMouseEvent (screen(723,417) -> mouse(2313,2223), button=0, wheel tick=0)
Dirty page: 607x517+38+135...
Got mouse: 0000 (x=721, y=426)
injectMouseEvent (screen(721,426) -> mouse(2306,2271), button=0, wheel tick=0)
Got mouse: 0000 (x=721, y=434)
injectMouseEvent (screen(721,434) -> mouse(2306,2314), button=0, wheel tick=0)
Got mouse: 0000 (x=721, y=442)
injectMouseEvent (screen(721,442) -> mouse(2306,2356), button=0, wheel tick=0)
Got mouse: 0000 (x=721, y=450)
injectMouseEvent (screen(721,450) -> mouse(2306,2399), button=0, wheel tick=0)
Got mouse: 0000 (x=722, y=456)
injectMouseEvent (screen(722,456) -> mouse(2309,2431), button=0, wheel tick=0)
Got mouse: 0000 (x=723, y=463)
injectMouseEvent (screen(723,463) -> mouse(2313,2468), button=0, wheel tick=0)
Got mouse: 0000 (x=724, y=469)
injectMouseEvent (screen(724,469) -> mouse(2316,2500), button=0, wheel tick=0)
Got mouse: 0000 (x=726, y=478)
injectMouseEvent (screen(726,478) -> mouse(2322,2548), button=0, wheel tick=0)
Got mouse: 0000 (x=727, y=488)
injectMouseEvent (screen(727,488) -> mouse(2325,2602), button=0, wheel tick=0)
Got mouse: 0000 (x=730, y=499)
injectMouseEvent (screen(730,499) -> mouse(2335,2660), button=0, wheel tick=0)
Got mouse: 0000 (x=732, y=509)
injectMouseEvent (screen(732,509) -> mouse(2341,2714), button=0, wheel tick=0)
Got mouse: 0000 (x=735, y=520)
injectMouseEvent (screen(735,520) -> mouse(2351,2772), button=0, wheel tick=0)
Got mouse: 0000 (x=735, y=532)
injectMouseEvent (screen(735,532) -> mouse(2351,2836), button=0, wheel tick=0)
Got mouse: 0000 (x=736, y=540)
injectMouseEvent (screen(736,540) -> mouse(2354,2879), button=0, wheel tick=0)
Got mouse: 0000 (x=736, y=548)
injectMouseEvent (screen(736,548) -> mouse(2354,2921), button=0, wheel tick=0)
Got mouse: 0000 (x=736, y=556)
injectMouseEvent (screen(736,556) -> mouse(2354,2964), button=0, wheel tick=0)
Got mouse: 0000 (x=736, y=563)
injectMouseEvent (screen(736,563) -> mouse(2354,3001), button=0, wheel tick=0)
Got mouse: 0000 (x=736, y=567)
injectMouseEvent (screen(736,567) -> mouse(2354,3023), button=0, wheel tick=0)
Got mouse: 0000 (x=737, y=573)
injectMouseEvent (screen(737,573) -> mouse(2357,3055), button=0, wheel tick=0)
Got mouse: 0000 (x=738, y=578)
injectMouseEvent (screen(738,578) -> mouse(2361,3081), button=0, wheel tick=0)
Got mouse: 0000 (x=738, y=581)
injectMouseEvent (screen(738,581) -> mouse(2361,3097), button=0, wheel tick=0)
Got mouse: 0000 (x=740, y=584)
injectMouseEvent (screen(740,584) -> mouse(2367,3113), button=0, wheel tick=0)
Got mouse: 0000 (x=741, y=586)
injectMouseEvent (screen(741,586) -> mouse(2370,3124), button=0, wheel tick=0)
Got mouse: 0000 (x=742, y=588)
injectMouseEvent (screen(742,588) -> mouse(2373,3135), button=0, wheel tick=0)
Got mouse: 0000 (x=742, y=590)
injectMouseEvent (screen(742,590) -> mouse(2373,3145), button=0, wheel tick=0)
Got mouse: 0000 (x=742, y=591)
injectMouseEvent (screen(742,591) -> mouse(2373,3151), button=0, wheel tick=0)
Got mouse: 0000 (x=742, y=592)
injectMouseEvent (screen(742,592) -> mouse(2373,3156), button=0, wheel tick=0)
Got mouse: 0000 (x=742, y=593)
injectMouseEvent (screen(742,593) -> mouse(2373,3161), button=0, wheel tick=0)
Dirty page: 751x638+39+14...
Dirty page: 1170x623+43+29...
Dirty page: 1232x640+49+12...
Dirty page: 1236x674+45+14...
Dirty page: 1241x648+40+40...
Dirty page: 1242x674+39+14...
  fps: 1.000000
Dirty page: 1213x640+39+12...
Dirty page: 906x479+2+209...
Dirty page: 900x674+0+14...
Got mouse: 0008 (x=742, y=593)
WHEEL 1
injectMouseEvent (screen(742,593) -> mouse(2373,3161), button=8, wheel tick=1)
Got mouse: 0000 (x=742, y=593)
injectMouseEvent (screen(742,593) -> mouse(2373,3161), button=0, wheel tick=0)
Dirty page: 1252x676+0+12...
Dirty page: 1177x676+0+12...
Dirty page: 790x674+0+14...
Dirty page: 650x645+27+40...
Dirty page: 1190x638+38+14...
  fps: 1.000000
Dirty page: 752x638+38+14...
Dirty page: 1119x628+40+24...
Got mouse: 0001 (x=742, y=593)
Button BTN_LEFT=0110
injectMouseEvent (screen(742,593) -> mouse(2373,3161), button=1, wheel tick=0)
Got mouse: 0000 (x=742, y=593)
Button BTN_LEFT=0110
injectMouseEvent (screen(742,593) -> mouse(2373,3161), button=0, wheel tick=0)
Got mouse: 0000 (x=742, y=594)
injectMouseEvent (screen(742,594) -> mouse(2373,3167), button=0, wheel tick=0)
Got mouse: 0000 (x=742, y=600)
injectMouseEvent (screen(742,600) -> mouse(2373,3199), button=0, wheel tick=0)
Got mouse: 0000 (x=744, y=609)
injectMouseEvent (screen(744,609) -> mouse(2380,3247), button=0, wheel tick=0)
Got mouse: 0000 (x=744, y=621)
injectMouseEvent (screen(744,621) -> mouse(2380,3311), button=0, wheel tick=0)
Got mouse: 0000 (x=744, y=633)
injectMouseEvent (screen(744,633) -> mouse(2380,3375), button=0, wheel tick=0)
Got mouse: 0000 (x=744, y=647)
injectMouseEvent (screen(744,647) -> mouse(2380,3449), button=0, wheel tick=0)
Got mouse: 0000 (x=742, y=661)
injectMouseEvent (screen(742,661) -> mouse(2373,3524), button=0, wheel tick=0)
Got mouse: 0000 (x=738, y=679)
injectMouseEvent (screen(738,679) -> mouse(2361,3620), button=0, wheel tick=0)
Got mouse: 0000 (x=735, y=692)
injectMouseEvent (screen(735,692) -> mouse(2351,3689), button=0, wheel tick=0)
Got mouse: 0000 (x=732, y=702)
injectMouseEvent (screen(732,702) -> mouse(2341,3743), button=0, wheel tick=0)
Got mouse: 0000 (x=729, y=713)
injectMouseEvent (screen(729,713) -> mouse(2332,3801), button=0, wheel tick=0)
Got mouse: 0000 (x=726, y=725)
injectMouseEvent (screen(726,725) -> mouse(2322,3865), button=0, wheel tick=0)
Got mouse: 0000 (x=723, y=736)
injectMouseEvent (screen(723,736) -> mouse(2313,3924), button=0, wheel tick=0)
Got mouse: 0000 (x=720, y=750)
injectMouseEvent (screen(720,750) -> mouse(2303,3999), button=0, wheel tick=0)
Got mouse: 0000 (x=717, y=763)
injectMouseEvent (screen(717,763) -> mouse(2293,4068), button=0, wheel tick=0)
Got mouse: 0000 (x=714, y=767)
injectMouseEvent (screen(714,767) -> mouse(2284,4089), button=0, wheel tick=0)
Dirty page: 1201x638+43+14...

Thank you

ponty commented 11 months ago

Your input device may not support wheel events. Check it with evtest /dev/input/event5

My touch device supports only BTN_TOUCH. (README)

More log with evtest (examples in README)

(evtest /dev/input/event5 &) ;./framebuffer-vncserver -m /dev/input/event5 -v

You need a mouse input device for wheel events.