XAllowEvents - release queued events
int XAllowEvents(Display *display, int
    event_mode, Time time);
  - display
- Specifies the connection to the X server.
- event_mode
- Specifies the event mode. You can pass AsyncPointer,
      SyncPointer, AsyncKeyboard, SyncKeyboard,
      ReplayPointer, ReplayKeyboard, AsyncBoth, or
      SyncBoth.
- time
- Specifies the time. You can pass either a timestamp or
    CurrentTime.
The XAllowEvents function releases some queued events if the client has
  caused a device to freeze. It has no effect if the specified time is earlier
  than the last-grab time of the most recent active grab for the client or if
  the specified time is later than the current X server time.XAllowEvents can generate a BadValue error.
  - 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.
Xlib - C Language X Interface