xpra icon
Bug tracker and wiki

This bug tracker and wiki are being discontinued
please use https://github.com/Xpra-org/xpra instead.

Opened 10 years ago

Closed 4 years ago

Last modified 17 months ago

#137 closed enhancement (wontfix)

games rely on precise mouse movements and their timing

Reported by: Antoine Martin Owned by: ahuillet
Priority: major Milestone: future
Component: client Version: trunk
Keywords: Cc: dennis.schridde@…

Description (last modified by Antoine Martin)

effectively, they do their own mouse acceleration, and since we send the mouse movements packets when we feel like it, the games see jerky mouse movements and produce jerky mouse movements in the game...

queue_mouse_position_packet only keeps one mouse "positional" packet at a time, so we only send the last one rather than all the mouse movements.
There will be a high cost when sending all mouse movements, so this will need to be an option.

First thing to do is to try to replace queue_mouse_position_packet with queue_priority_packet client.py's send_mouse_position

Change History (10)

comment:1 Changed 10 years ago by Antoine Martin

Description: modified (diff)
Status: newaccepted

comment:2 Changed 10 years ago by Antoine Martin

Owner: changed from Antoine Martin to ahuillet
Status: acceptedassigned

comment:3 Changed 10 years ago by Antoine Martin

Milestone: 0.4future

comment:4 Changed 10 years ago by Antoine Martin

Some potentially relevant pointers and thoughts:

  • maybe using a different mouse type, a tablet or something that uses absolute positioning would prevent the games/libraries from doing pointer acceleration on our events - which are always lagging by a variable amount of time
  • maybe using a different API than Xtest? see below.
  • a number of api calls below support a delay parameter, we could set our internal target delay to something close to the highest client latency observed (or 90 percentile?) and then adjust the api delay on our simulated events so that all the events have the same gap between them as on the client. (and if we suddenly get a higher client latency.. increase the target delay to accommodate and go back down slowly?) - should work?

comment:5 Changed 10 years ago by Antoine Martin

Version: 0.3.xtrunk

comment:6 Changed 7 years ago by Antoine Martin

See also #770 and in particular r8482 which added XTestFakeMotionEvent and XTestFakeRelativeMotionEvent.

comment:7 Changed 6 years ago by urzds

Cc: dennis.schridde@… added

comment:8 Changed 5 years ago by Antoine Martin

See also #173

comment:9 Changed 4 years ago by Antoine Martin

Resolution: wontfix
Status: assignedclosed

The !XTest extension is being deprecated, so the way forward is going to be #173.

comment:10 Changed 17 months ago by migration script

this ticket has been moved to: https://github.com/Xpra-org/xpra/issues/137

Note: See TracTickets for help on using tickets.