You are not logged in.

#1 2016-10-26 16:53:58

thblt
Member
From: Paris, Fr
Registered: 2016-02-22
Posts: 3
Website

Simulate click of non-existing button with xdotool

Hi,

I'm trying to have xdotool simulate clicks on buttons absent from my physical peripherals, namely buttons 14 and around (swipe).  It obviously fails:

$ xdotool click 14
X Error of failed request:  BadValue (integer parameter out of range for operation)
  Major opcode of failed request:  132 (XTEST)
  Minor opcode of failed request:  2 (X_XTestFakeInput)
  Value in failed request:  0xe
  Serial number of failed request:  18
  Current serial number in output stream:  19

What I'm actually trying to achieve is to have libinput-gestures send the usual mouse button codes for gestures such as swipe up/down/right/left, four-fingers swipe up/down/right/left and pinch in/out. That's ten extra "buttons" I need.  I prefer to use libinput-gestures  rather than mtrack, since the latter behaves a bit strangely on my computer.

xinput get-button-map on my touchpad reports seven buttons (1 to 7), 10 (1 to 10)  for the XTEST pointer.   

Please note that I can't use xinput set-button-map on any remapping, because I actually need the 1-7 codes.   What I believe I need is to have X allocate more mouse buttons (around 10 more) so that xdotool can send the right codes.

I found a "workaround", which is to `xinput set-button-map "Virtual Core XTEST Pointer" 8 9 10 etc`: `xdotool click 1` then simulates a click with button 8.  But it means I'm unable to use xdotool to click with button 1, and furthermore I'm not sure it's really a good idea to tinker with internal stuff.

I'm not sure this is important, but I'm using a MacBook Air 2011 with the integrated touchpad.

Any hint would be greatly appreciated :-)

Last edited by thblt (2016-10-26 17:06:43)

Offline

Board footer

Powered by FluxBB