XkbSetDeviceButtonActions man page

XkbSetDeviceButtonActions — Change only the button actions for an input extension device

Synopsis

Bool XkbSetDeviceButtonActions (Display *dpy, XkbDeviceInfoPtr device, unsigned int first_button, unsigned int num_buttons);

Arguments

- dpy

connection to X server

- device

structure defining the device and modifications

- first_button

number of first button to update, 0 relative

- num_buttons

number of buttons to update

Description

XkbSetDeviceButtonActions assigns actions to the buttons of the device specified in device_info->device_spec. Actions are assigned to num_buttons buttons beginning with first_button and are taken from the actions specified in device_info->btn_acts.

If the server does not support assignment of Xkb actions to extension device buttons, XkbSetDeviceButtonActions has no effect and returns False. If the device has no buttons or if first_button or num_buttons specify buttons outside of the valid range as determined by device_info->num_btns, the function has no effect and returns False. Otherwise, XkbSetDeviceButtonActions sends a request to the server to change the actions for the specified buttons and returns  True.

If the actual request sent to the server involved illegal button numbers, a BadValue protocol  error is generated. If an invalid device identifier is specified in device_info->device_spec, a BadKeyboard protocol error results. If the actual device specified in device_info->device_spec does not contain buttons and a request affecting buttons is made, a BadMatch protocol error is  generated.

Diagnostics

BadKeyboard

The device specified was not a valid core or input extension device

BadMatch

A compatible version of Xkb was not available in the server or an argument has correct type  and range, but is otherwise invalid

BadValue

An argument is out of range

Info

libX11 1.6.5 X Version 11 XKB FUNCTIONS