### Enumeration

# Atspi KeyListenerSyncType

#### Declaration

    flags Atspi.KeyListenerSyncType

#### Description [src]

Specifies the type of a key listener event. The values above can and should be bitwise-‘OR’-ed together, observing the compatibility limitations specified in the description of each value. For instance, #ATSPI_KEYLISTENER_ALL_WINDOWS | #ATSPI_KEYLISTENER_CANCONSUME is a commonly used combination which gives the AT complete control over the delivery of matching events. However, such filters should be used sparingly as they may have a negative impact on system performance.

#### Members

`ATSPI_KEYLISTENER_NOSYNC`

  Events may be delivered asynchronously, which means in some cases they may already have been delivered to the application before the AT client receives the notification.

  - Value: `0`
  - Available since: 2.0
`ATSPI_KEYLISTENER_SYNCHRONOUS`

  Events are delivered synchronously, before the currently focused application sees them.

  - Value: `1`
  - Available since: 2.0
`ATSPI_KEYLISTENER_CANCONSUME`

  Events may be consumed by the AT client. Presumes and requires #ATSPI_KEYLISTENER_SYNCHRONOUS, incompatible with #ATSPI_KEYLISTENER_NOSYNC.

  - Value: `2`
  - Available since: 2.0
`ATSPI_KEYLISTENER_ALL_WINDOWS`

  Events are received not from the application toolkit layer, but from the device driver or windowing system subsystem; such notifications are ‘global’ in the sense that they are not broken or defeated by applications that participate poorly in the accessibility APIs, or not at all; however because of the intrusive nature of such snooping, it can have side-effects on certain older platforms. If unconditional event notifications, even when inaccessible or “broken” applications have focus, are not required, it may be best to avoid this enum value/flag.

  - Value: `4`
  - Available since: 2.0