FreeRDP
RDPINPUT_CONTACT_POINT Struct Reference

#include <rdpei_main.h>

Data Fields

BOOL dirty
 
BOOL active
 
UINT32 contactId
 
INT32 externalId
 
RDPINPUT_CONTACT_DATA data
 

Detailed Description

Touch Contact State Transitions

ENGAGED -> UPDATE | INRANGE | INCONTACT -> ENGAGED ENGAGED -> UP | INRANGE -> HOVERING ENGAGED -> UP -> OUT_OF_RANGE ENGAGED -> UP | CANCELED -> OUT_OF_RANGE

HOVERING -> UPDATE | INRANGE -> HOVERING HOVERING -> DOWN | INRANGE | INCONTACT -> ENGAGED HOVERING -> UPDATE -> OUT_OF_RANGE HOVERING -> UPDATE | CANCELED -> OUT_OF_RANGE

OUT_OF_RANGE -> DOWN | INRANGE | INCONTACT -> ENGAGED OUT_OF_RANGE -> UPDATE | INRANGE -> HOVERING

When a contact is in the "hovering" or "engaged" state, it is referred to as being "active". "Hovering" contacts are in range of the digitizer, while "engaged" contacts are in range of the digitizer and in contact with the digitizer surface. MS-RDPEI remotes only active contacts and contacts that are transitioning to the "out of range" state; see section 2.2.3.3.1.1 for an enumeration of valid state flags combinations.

When transitioning from the "engaged" state to the "hovering" state, or from the "engaged" state to the "out of range" state, the contact position cannot change; it is only allowed to change after the transition has taken place.

Field Documentation

◆ active

BOOL RDPINPUT_CONTACT_POINT::active

◆ contactId

UINT32 RDPINPUT_CONTACT_POINT::contactId

◆ data

RDPINPUT_CONTACT_DATA RDPINPUT_CONTACT_POINT::data

◆ dirty

BOOL RDPINPUT_CONTACT_POINT::dirty

◆ externalId

INT32 RDPINPUT_CONTACT_POINT::externalId

The documentation for this struct was generated from the following file: