Screen sensitivity masks

Types of sensitivity masks.

Synopsis:

#include <screen/screen.h>
 
 enum {
      SCREEN_SENSITIVITY_MASK_ALWAYS = (1 << 0)   
      SCREEN_SENSITIVITY_MASK_NEVER = (2 << 0)   
      SCREEN_SENSITIVITY_MASK_NO_FOCUS = (1 << 3)   
      SCREEN_SENSITIVITY_MASK_FULLSCREEN = (1 << 4)   
      SCREEN_SENSITIVITY_MASK_CONTINUE = (1 << 5)   
      SCREEN_SENSITIVITY_MASK_STOP = (2 << 5)   
      SCREEN_SENSITIVITY_MASK_POINTER_BRUSH = (1 << 7)   
      SCREEN_SENSITIVITY_MASK_FINGER_BRUSH = (1 << 8)   
      SCREEN_SENSITIVITY_MASK_STYLUS_BRUSH = (1 << 9)   
      SCREEN_SENSITIVITY_MASK_OVERDRIVE = (1 << 10)   
};

Data:

SCREEN_SENSITIVITY_MASK_ALWAYS
Pointer and touch events are always forwarded to the window's context if they interect with the window - regardless of transparency.

The window receives keyboard, gamepad, joystick events if it has input focus. Raising a window, pointer or multi-touch release event in that window will cause it to acquire input focus.

SCREEN_SENSITIVITY_MASK_NEVER
The window never receives pointer or multi-touch events.

The window never acquires input focus, even after it has been raised. The window will only receive input events that are directly injected into it from outside sources.

SCREEN_SENSITIVITY_MASK_NO_FOCUS
Pointer and touch events are forwarded to the window's context if they intersect the window and are in an area of the window that is not fully transparent.

The window does not acquire input focus after being raised or after a pointer or multi-touch release event occurs. Therefore, the window will not receive keyboard, gamepad, or joystick input unless it is sent directly into the window from an outside source.

SCREEN_SENSITIVITY_MASK_FULLSCREEN
Pointer and touch events are forwarded to the window's context no matter where they are on the screen.

The window is considered full screen for the purposes of input hit tests. Transparency is ignored. The window will receive keyboard, gamepad, and joystick events as long as the window is visible.

SCREEN_SENSITIVITY_MASK_CONTINUE
Windows underneath this window can receive pointer or multi-touch events even if this window has input focus.
SCREEN_SENSITIVITY_MASK_STOP
The window never receives pointer or multi-touch events.

The window never acquires input focus, even after it has been raised. The window will only receive input events that are directly injected into it from outside sources.

SCREEN_SENSITIVITY_MASK_POINTER_BRUSH
The window receives pointer events, even in areas of transparency, if the source coordinates of the event are within the brush clip rectangle.

This mode supercedes SCREEN_SENSITIVITY_MASK_NEVER. The windowing system also draws brush strokes based on the pointer events directly onto the screen and the window buffer.

SCREEN_SENSITIVITY_MASK_FINGER_BRUSH
The window receives multi-touch events with a finger contact type, even in areas of transparency, if the source coordinates of the event are within the brush clip rectangle.

This mode supercedes SCREEN_SENSITIVITY_MASK_NEVER. The windowing system also draws brush strokes based on the touch events directly onto the screen and the window buffer. Multiple contacts will cause multiple brush strokes to be drawn.

SCREEN_SENSITIVITY_MASK_STYLUS_BRUSH
The window receives multi-touch events with a stylus contact type, even in areas of transparency, if the source coordinates of the event are within the brush clip rectangle.

This mode supercedes SCREEN_SENSITIVITY_MASK_NEVER. The windowing system also draws brush strokes based on the touch events directly onto the screen and the window buffer. Multiple contacts will cause multiple brush strokes to be drawn.

SCREEN_SENSITIVITY_MASK_OVERDRIVE
Setting this bit causes the system to go into overdrive when the window gets an input event.

The effect of this sensitivity mask depends on the power management algorithms in place and on the platform in general.

Library:

libscreen

Description:

These masks are intended to be combined in a single integer bitmask representing combinations of desired senstivites to be applied to a window.