Value | Meaning |
---|---|
EXPOSURE_MASK2 | receive expose events |
POINTER_MOTION_MASK4 | receive all pointer motion events |
POINTER_MOTION_HINT_MASK8 | deprecated. see the explanation above |
BUTTON_MOTION_MASK16 | receive pointer motion events while any button is pressed |
BUTTON1_MOTION_MASK32 | receive pointer motion events while 1 button is pressed |
BUTTON2_MOTION_MASK64 | receive pointer motion events while 2 button is pressed |
BUTTON3_MOTION_MASK128 | receive pointer motion events while 3 button is pressed |
BUTTON_PRESS_MASK256 | receive button press events |
BUTTON_RELEASE_MASK512 | receive button release events |
KEY_PRESS_MASK1024 | receive key press events |
KEY_RELEASE_MASK2048 | receive key release events |
ENTER_NOTIFY_MASK4096 | receive window enter events |
LEAVE_NOTIFY_MASK8192 | receive window leave events |
FOCUS_CHANGE_MASK16384 | receive focus change events |
STRUCTURE_MASK32768 | receive events about window configuration change |
PROPERTY_CHANGE_MASK65536 | receive property change events |
VISIBILITY_NOTIFY_MASK131072 | receive visibility change events |
PROXIMITY_IN_MASK262144 | receive proximity in events |
PROXIMITY_OUT_MASK524288 | receive proximity out events |
SUBSTRUCTURE_MASK1048576 | receive events about window configuration changes of child windows |
SCROLL_MASK2097152 | receive scroll events |
TOUCH_MASK4194304 | receive touch events. Since 3.4 |
SMOOTH_SCROLL_MASK8388608 | receive smooth scrolling events. Since 3.4 |
TOUCHPAD_GESTURE_MASK16777216 | receive touchpad gesture events. Since 3.18 |
TABLET_PAD_MASK33554432 | receive tablet pad events. Since 3.22 |
ALL_EVENTS_MASK67108862 | the combination of all the above event masks. |
A set of bit-flags to indicate which events a window is to receive. Most of these masks map onto one or more of the #GdkEventType event types above.
See the [input handling overview][chap-input-handling] for details of [event masks][event-masks] and [event propagation][event-propagation].
%GDK_POINTER_MOTION_HINT_MASK is deprecated. It is a special mask to reduce the number of %GDK_MOTION_NOTIFY events received. When using %GDK_POINTER_MOTION_HINT_MASK, fewer %GDK_MOTION_NOTIFY events will be sent, some of which are marked as a hint (the is_hint member is %TRUE). To receive more motion events after a motion hint event, the application needs to asks for more, by calling gdk_event_request_motions().
Since GTK 3.8, motion events are already compressed by default, independent of this mechanism. This compression can be disabled with gdk_window_set_event_compression(). See the documentation of that function for details.
If %GDK_TOUCH_MASK is enabled, the window will receive touch events from touch-enabled devices. Those will come as sequences of #GdkEventTouch with type %GDK_TOUCH_UPDATE, enclosed by two events with type %GDK_TOUCH_BEGIN and %GDK_TOUCH_END (or %GDK_TOUCH_CANCEL). gdk_event_get_event_sequence() returns the event sequence for these events, so different sequences may be distinguished.