XUngrabButton(display, button, modifiers, grab_window)
      Display *display;
      unsigned int button;
      unsigned int modifiers;
      Window grab_window;


display Specifies the connection to the X server.
button Specifies the pointer button that is to be released or AnyButton.
modifiers Specifies the set of keymasks or AnyModifier. The mask is the bitwise inclusive OR of the valid keymask bits.
grab_window Specifies the grab window.


The XUngrabButton() function releases the passive button/key combination on the specified window if it was grabbed by this client. A modifiers of AnyModifier is equivalent to issuing the ungrab request for all possible modifier combinations, including the combination of no modifiers. A button of AnyButton is equivalent to issuing the request for all possible buttons. XUngrabButton() has no effect on an active grab.

XUngrabButton() can generate BadValue and BadWindow errors.


BadValue Some numeric value falls outside the range of values accepted by the request. Unless a specific range is specified for an argument, the full range defined by the argument's type is accepted. Any argument defined as a set of alternatives can generate this error.
BadWindow A value for a Window argument does not name a defined Window.

See also

XAllowEvents(), XChangeActivePointerGrab(), XGrabButton(), XGrabKey(), XGrabKeyboard(), XGrabPointer(), XUngrabPointer(), "Pointer Grabbing".
Christophe Tronche, ch@tronche.com