xkbsetdevicebuttonactions(3) - Linux man page

Name

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

Syntax

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