Xresponse synthetizes X stylus events and outputs screen update sizes and their timestamps.

Xresponse can catch applications doing screen updates which are not done as a response to user input/request and updates of unnecessary parts of application UIs. These are detrimental to application performance and device use-time.

Xresponse can also be used to time the applications screen updates i.e. their response time.

The screen update areas are output in the "X geometry" format (WIDTH x HEIGHT + X + Y).


source: xresponse

binary: xresponse

Usage Examples

Monitoring screen updates

Xresponse can be used to monitor how large parts of the screen and how often an application is updating them. To run it in the screen update monitoring mode, use:

# xresponse -w 0 -i 

Then just use the applications.

Timing application response / screen updates

Xresponse can synthetize stylus taps; just specify where they should happen with the -c option and how long Xresponse should wait for the screen updates before proceeding with the -w option:

# xresponse -w 5 -c 200x20 

If you want to monitor only part of the screen, e.g. toolbar, you can give which area of the screen is monitored with the -m option:

# xresponse -m 800x80+0+400 -w 20 -c 650x430 

(This is useful for example if an application like Browser can be updating the normal application area also without user interaction.)

To time application startup, open the Task Navigator application menu, synthetize a tap to the menu item starting the application and monitor the screen updates. With most applications the last screen update is the time when the application is fully initialized and ready for use.

Keypress simulation

Xresponse can also simulate pressing single keys and typing strings.

To simulate pressing the Tab key, entering the string 'Foobar' and pressing Enter with a pause of one second between the events:

# xresponse -w 1 -k Tab,100 -w 1 -t Foobar -w 1 -k Return,100


There are a few quirks with the order of the options. The -o or --logfile option has to be given as the first option for it to work.


xresponse man page

See Also