int DMXChangeDesktopAttributes(Display *dpy, unsigned int mask, DMXDesktopAttributes *attr);
The values that are used to compute mask are as follows:
DMXDesktopWidth DMXDesktopHeight DMXDesktopShiftX DMXDesktopShiftY
The DMXDesktopAttributes structure is:
typedef struct { unsigned int width; unsigned int height; int shiftX; int shiftY; } DMXDesktopAttributes;
width and height specify the new width and height for the bounding box. shiftX and shiftY specify where the Xinerama origin will be placed with respect to the origin of the new bounding box. This allows the left and upper edges of the bounding box to be changed without changing the visual position of the windows on the desktop. If width or height is not specified, the current values will be used. If shiftX or shiftY is not specified, 0 will be used.
All coordinants are in the global DMX coordinant system. If Xinerama is not active, an error will be generated.
DMXChangeDesktopAttributes() can generate BadLength (if the request is malformed, which should never happen when using this library interface), and BadValue (if any values are out of range).