focus_in and focus_out Events

The fields that can be unified in focus_in and focus_out events are:

  1. type(T) unifies T with focus_in or focus_out according to the event.
  2. serial(S) unifies S with the serial number of the last request processed by the server.
  3. send_event(B) unifies B, a boolean value, with one of

    If the event was sent by another client.
    If the event was sent by the server.
  4. display(D) unifies D with the ProXL Display the event was read from.
  5. window(W) unifies W with the ProXL Window receiving the event.
  6. mode(M) unifies M with one of

    If the keyboard is not grabbed.
    If the event is triggered by the start of a keyboard grab.
    If the event is triggered by the keyboard being ungrabbed.
    If the focus changes while the keyboard is grabbed.
  7. detail(D) unifies D with an atom identifying the relationship between the window that receives the event, the window that lost the focus, the window that got the focus, and the window that contained the pointer at the time of the focus change . One of: