X Window System core protocol: Difference between revisions

Content deleted Content added
Overview: Formatting cleanup, per MOS:BOLD
Grabs: Small layout cleanup
Line 216:
 
== Grabs ==
 
A ''grab'' is a condition in which all keyboard or mouse events are sent to a single client. A client can request a grab of the keyboard, the mouse, or both: if the request is fulfilled by the server, all keyboard/mouse events are sent to the grabbing client until the grab is released. The other clients will not receive these events.
 
When requesting a grab, a client specifies a ''grab window'': all events are sent to the grabbing client as if they were relative to the grab window. However, the other clients do not receive events even if they have selected them in the grab window. There are two kinds of grabs:
 
;* ''active :'' the grab takes place immediately
;* ''passive :'' the grab takes place only when a previously specified key or mouse button is pressed and terminates when it is released
 
[[Image:Xgrab.svg|thumb|450px|If the pointer or the keyboard are frozen, the events they generate are blocked in a queue. If they are grabbed, their events are rerouted to the grabbing client instead of the window that normally receives them. Pointer events can be discarded depending on an event mask.]]