| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836 |
- /* SCANNER TEST */
- #ifndef WAYLAND_ENUM_PROTOCOL_H
- #define WAYLAND_ENUM_PROTOCOL_H
- #ifdef __cplusplus
- extern "C" {
- #endif
- #ifndef WL_DISPLAY_ERROR_ENUM
- #define WL_DISPLAY_ERROR_ENUM
- /**
- * @ingroup iface_wl_display
- * global error values
- *
- * These errors are global and can be emitted in response to any
- * server request.
- */
- enum wl_display_error {
- /**
- * server couldn't find object
- */
- WL_DISPLAY_ERROR_INVALID_OBJECT = 0,
- /**
- * method doesn't exist on the specified interface
- */
- WL_DISPLAY_ERROR_INVALID_METHOD = 1,
- /**
- * server is out of memory
- */
- WL_DISPLAY_ERROR_NO_MEMORY = 2,
- };
- #endif /* WL_DISPLAY_ERROR_ENUM */
- #ifndef WL_SHM_ERROR_ENUM
- #define WL_SHM_ERROR_ENUM
- /**
- * @ingroup iface_wl_shm
- * wl_shm error values
- *
- * These errors can be emitted in response to wl_shm requests.
- */
- enum wl_shm_error {
- /**
- * buffer format is not known
- */
- WL_SHM_ERROR_INVALID_FORMAT = 0,
- /**
- * invalid size or stride during pool or buffer creation
- */
- WL_SHM_ERROR_INVALID_STRIDE = 1,
- /**
- * mmapping the file descriptor failed
- */
- WL_SHM_ERROR_INVALID_FD = 2,
- };
- #endif /* WL_SHM_ERROR_ENUM */
- #ifndef WL_SHM_FORMAT_ENUM
- #define WL_SHM_FORMAT_ENUM
- /**
- * @ingroup iface_wl_shm
- * pixel formats
- *
- * This describes the memory layout of an individual pixel.
- *
- * All renderers should support argb8888 and xrgb8888 but any other
- * formats are optional and may not be supported by the particular
- * renderer in use.
- *
- * The drm format codes match the macros defined in drm_fourcc.h.
- * The formats actually supported by the compositor will be
- * reported by the format event.
- */
- enum wl_shm_format {
- /**
- * 32-bit ARGB format, [31:0] A:R:G:B 8:8:8:8 little endian
- */
- WL_SHM_FORMAT_ARGB8888 = 0,
- /**
- * 32-bit RGB format, [31:0] x:R:G:B 8:8:8:8 little endian
- */
- WL_SHM_FORMAT_XRGB8888 = 1,
- /**
- * 8-bit color index format, [7:0] C
- */
- WL_SHM_FORMAT_C8 = 0x20203843,
- /**
- * 8-bit RGB format, [7:0] R:G:B 3:3:2
- */
- WL_SHM_FORMAT_RGB332 = 0x38424752,
- /**
- * 8-bit BGR format, [7:0] B:G:R 2:3:3
- */
- WL_SHM_FORMAT_BGR233 = 0x38524742,
- /**
- * 16-bit xRGB format, [15:0] x:R:G:B 4:4:4:4 little endian
- */
- WL_SHM_FORMAT_XRGB4444 = 0x32315258,
- /**
- * 16-bit xBGR format, [15:0] x:B:G:R 4:4:4:4 little endian
- */
- WL_SHM_FORMAT_XBGR4444 = 0x32314258,
- /**
- * 16-bit RGBx format, [15:0] R:G:B:x 4:4:4:4 little endian
- */
- WL_SHM_FORMAT_RGBX4444 = 0x32315852,
- /**
- * 16-bit BGRx format, [15:0] B:G:R:x 4:4:4:4 little endian
- */
- WL_SHM_FORMAT_BGRX4444 = 0x32315842,
- /**
- * 16-bit ARGB format, [15:0] A:R:G:B 4:4:4:4 little endian
- */
- WL_SHM_FORMAT_ARGB4444 = 0x32315241,
- /**
- * 16-bit ABGR format, [15:0] A:B:G:R 4:4:4:4 little endian
- */
- WL_SHM_FORMAT_ABGR4444 = 0x32314241,
- /**
- * 16-bit RBGA format, [15:0] R:G:B:A 4:4:4:4 little endian
- */
- WL_SHM_FORMAT_RGBA4444 = 0x32314152,
- /**
- * 16-bit BGRA format, [15:0] B:G:R:A 4:4:4:4 little endian
- */
- WL_SHM_FORMAT_BGRA4444 = 0x32314142,
- /**
- * 16-bit xRGB format, [15:0] x:R:G:B 1:5:5:5 little endian
- */
- WL_SHM_FORMAT_XRGB1555 = 0x35315258,
- /**
- * 16-bit xBGR 1555 format, [15:0] x:B:G:R 1:5:5:5 little endian
- */
- WL_SHM_FORMAT_XBGR1555 = 0x35314258,
- /**
- * 16-bit RGBx 5551 format, [15:0] R:G:B:x 5:5:5:1 little endian
- */
- WL_SHM_FORMAT_RGBX5551 = 0x35315852,
- /**
- * 16-bit BGRx 5551 format, [15:0] B:G:R:x 5:5:5:1 little endian
- */
- WL_SHM_FORMAT_BGRX5551 = 0x35315842,
- /**
- * 16-bit ARGB 1555 format, [15:0] A:R:G:B 1:5:5:5 little endian
- */
- WL_SHM_FORMAT_ARGB1555 = 0x35315241,
- /**
- * 16-bit ABGR 1555 format, [15:0] A:B:G:R 1:5:5:5 little endian
- */
- WL_SHM_FORMAT_ABGR1555 = 0x35314241,
- /**
- * 16-bit RGBA 5551 format, [15:0] R:G:B:A 5:5:5:1 little endian
- */
- WL_SHM_FORMAT_RGBA5551 = 0x35314152,
- /**
- * 16-bit BGRA 5551 format, [15:0] B:G:R:A 5:5:5:1 little endian
- */
- WL_SHM_FORMAT_BGRA5551 = 0x35314142,
- /**
- * 16-bit RGB 565 format, [15:0] R:G:B 5:6:5 little endian
- */
- WL_SHM_FORMAT_RGB565 = 0x36314752,
- /**
- * 16-bit BGR 565 format, [15:0] B:G:R 5:6:5 little endian
- */
- WL_SHM_FORMAT_BGR565 = 0x36314742,
- /**
- * 24-bit RGB format, [23:0] R:G:B little endian
- */
- WL_SHM_FORMAT_RGB888 = 0x34324752,
- /**
- * 24-bit BGR format, [23:0] B:G:R little endian
- */
- WL_SHM_FORMAT_BGR888 = 0x34324742,
- /**
- * 32-bit xBGR format, [31:0] x:B:G:R 8:8:8:8 little endian
- */
- WL_SHM_FORMAT_XBGR8888 = 0x34324258,
- /**
- * 32-bit RGBx format, [31:0] R:G:B:x 8:8:8:8 little endian
- */
- WL_SHM_FORMAT_RGBX8888 = 0x34325852,
- /**
- * 32-bit BGRx format, [31:0] B:G:R:x 8:8:8:8 little endian
- */
- WL_SHM_FORMAT_BGRX8888 = 0x34325842,
- /**
- * 32-bit ABGR format, [31:0] A:B:G:R 8:8:8:8 little endian
- */
- WL_SHM_FORMAT_ABGR8888 = 0x34324241,
- /**
- * 32-bit RGBA format, [31:0] R:G:B:A 8:8:8:8 little endian
- */
- WL_SHM_FORMAT_RGBA8888 = 0x34324152,
- /**
- * 32-bit BGRA format, [31:0] B:G:R:A 8:8:8:8 little endian
- */
- WL_SHM_FORMAT_BGRA8888 = 0x34324142,
- /**
- * 32-bit xRGB format, [31:0] x:R:G:B 2:10:10:10 little endian
- */
- WL_SHM_FORMAT_XRGB2101010 = 0x30335258,
- /**
- * 32-bit xBGR format, [31:0] x:B:G:R 2:10:10:10 little endian
- */
- WL_SHM_FORMAT_XBGR2101010 = 0x30334258,
- /**
- * 32-bit RGBx format, [31:0] R:G:B:x 10:10:10:2 little endian
- */
- WL_SHM_FORMAT_RGBX1010102 = 0x30335852,
- /**
- * 32-bit BGRx format, [31:0] B:G:R:x 10:10:10:2 little endian
- */
- WL_SHM_FORMAT_BGRX1010102 = 0x30335842,
- /**
- * 32-bit ARGB format, [31:0] A:R:G:B 2:10:10:10 little endian
- */
- WL_SHM_FORMAT_ARGB2101010 = 0x30335241,
- /**
- * 32-bit ABGR format, [31:0] A:B:G:R 2:10:10:10 little endian
- */
- WL_SHM_FORMAT_ABGR2101010 = 0x30334241,
- /**
- * 32-bit RGBA format, [31:0] R:G:B:A 10:10:10:2 little endian
- */
- WL_SHM_FORMAT_RGBA1010102 = 0x30334152,
- /**
- * 32-bit BGRA format, [31:0] B:G:R:A 10:10:10:2 little endian
- */
- WL_SHM_FORMAT_BGRA1010102 = 0x30334142,
- /**
- * packed YCbCr format, [31:0] Cr0:Y1:Cb0:Y0 8:8:8:8 little endian
- */
- WL_SHM_FORMAT_YUYV = 0x56595559,
- /**
- * packed YCbCr format, [31:0] Cb0:Y1:Cr0:Y0 8:8:8:8 little endian
- */
- WL_SHM_FORMAT_YVYU = 0x55595659,
- /**
- * packed YCbCr format, [31:0] Y1:Cr0:Y0:Cb0 8:8:8:8 little endian
- */
- WL_SHM_FORMAT_UYVY = 0x59565955,
- /**
- * packed YCbCr format, [31:0] Y1:Cb0:Y0:Cr0 8:8:8:8 little endian
- */
- WL_SHM_FORMAT_VYUY = 0x59555956,
- /**
- * packed AYCbCr format, [31:0] A:Y:Cb:Cr 8:8:8:8 little endian
- */
- WL_SHM_FORMAT_AYUV = 0x56555941,
- /**
- * 2 plane YCbCr Cr:Cb format, 2x2 subsampled Cr:Cb plane
- */
- WL_SHM_FORMAT_NV12 = 0x3231564e,
- /**
- * 2 plane YCbCr Cb:Cr format, 2x2 subsampled Cb:Cr plane
- */
- WL_SHM_FORMAT_NV21 = 0x3132564e,
- /**
- * 2 plane YCbCr Cr:Cb format, 2x1 subsampled Cr:Cb plane
- */
- WL_SHM_FORMAT_NV16 = 0x3631564e,
- /**
- * 2 plane YCbCr Cb:Cr format, 2x1 subsampled Cb:Cr plane
- */
- WL_SHM_FORMAT_NV61 = 0x3136564e,
- /**
- * 3 plane YCbCr format, 4x4 subsampled Cb (1) and Cr (2) planes
- */
- WL_SHM_FORMAT_YUV410 = 0x39565559,
- /**
- * 3 plane YCbCr format, 4x4 subsampled Cr (1) and Cb (2) planes
- */
- WL_SHM_FORMAT_YVU410 = 0x39555659,
- /**
- * 3 plane YCbCr format, 4x1 subsampled Cb (1) and Cr (2) planes
- */
- WL_SHM_FORMAT_YUV411 = 0x31315559,
- /**
- * 3 plane YCbCr format, 4x1 subsampled Cr (1) and Cb (2) planes
- */
- WL_SHM_FORMAT_YVU411 = 0x31315659,
- /**
- * 3 plane YCbCr format, 2x2 subsampled Cb (1) and Cr (2) planes
- */
- WL_SHM_FORMAT_YUV420 = 0x32315559,
- /**
- * 3 plane YCbCr format, 2x2 subsampled Cr (1) and Cb (2) planes
- */
- WL_SHM_FORMAT_YVU420 = 0x32315659,
- /**
- * 3 plane YCbCr format, 2x1 subsampled Cb (1) and Cr (2) planes
- */
- WL_SHM_FORMAT_YUV422 = 0x36315559,
- /**
- * 3 plane YCbCr format, 2x1 subsampled Cr (1) and Cb (2) planes
- */
- WL_SHM_FORMAT_YVU422 = 0x36315659,
- /**
- * 3 plane YCbCr format, non-subsampled Cb (1) and Cr (2) planes
- */
- WL_SHM_FORMAT_YUV444 = 0x34325559,
- /**
- * 3 plane YCbCr format, non-subsampled Cr (1) and Cb (2) planes
- */
- WL_SHM_FORMAT_YVU444 = 0x34325659,
- };
- #endif /* WL_SHM_FORMAT_ENUM */
- #ifndef WL_DATA_OFFER_ERROR_ENUM
- #define WL_DATA_OFFER_ERROR_ENUM
- enum wl_data_offer_error {
- /**
- * finish request was called untimely
- */
- WL_DATA_OFFER_ERROR_INVALID_FINISH = 0,
- /**
- * action mask contains invalid values
- */
- WL_DATA_OFFER_ERROR_INVALID_ACTION_MASK = 1,
- /**
- * action argument has an invalid value
- */
- WL_DATA_OFFER_ERROR_INVALID_ACTION = 2,
- /**
- * offer doesn't accept this request
- */
- WL_DATA_OFFER_ERROR_INVALID_OFFER = 3,
- };
- #endif /* WL_DATA_OFFER_ERROR_ENUM */
- #ifndef WL_DATA_SOURCE_ERROR_ENUM
- #define WL_DATA_SOURCE_ERROR_ENUM
- enum wl_data_source_error {
- /**
- * action mask contains invalid values
- */
- WL_DATA_SOURCE_ERROR_INVALID_ACTION_MASK = 0,
- /**
- * source doesn't accept this request
- */
- WL_DATA_SOURCE_ERROR_INVALID_SOURCE = 1,
- };
- #endif /* WL_DATA_SOURCE_ERROR_ENUM */
- #ifndef WL_DATA_DEVICE_ERROR_ENUM
- #define WL_DATA_DEVICE_ERROR_ENUM
- enum wl_data_device_error {
- /**
- * given wl_surface has another role
- */
- WL_DATA_DEVICE_ERROR_ROLE = 0,
- };
- #endif /* WL_DATA_DEVICE_ERROR_ENUM */
- #ifndef WL_DATA_DEVICE_MANAGER_DND_ACTION_ENUM
- #define WL_DATA_DEVICE_MANAGER_DND_ACTION_ENUM
- /**
- * @ingroup iface_wl_data_device_manager
- * drag and drop actions
- *
- * This is a bitmask of the available/preferred actions in a
- * drag-and-drop operation.
- *
- * In the compositor, the selected action is a result of matching the
- * actions offered by the source and destination sides. "action" events
- * with a "none" action will be sent to both source and destination if
- * there is no match. All further checks will effectively happen on
- * (source actions ∩ destination actions).
- *
- * In addition, compositors may also pick different actions in
- * reaction to key modifiers being pressed. One common design that
- * is used in major toolkits (and the behavior recommended for
- * compositors) is:
- *
- * - If no modifiers are pressed, the first match (in bit order)
- * will be used.
- * - Pressing Shift selects "move", if enabled in the mask.
- * - Pressing Control selects "copy", if enabled in the mask.
- *
- * Behavior beyond that is considered implementation-dependent.
- * Compositors may for example bind other modifiers (like Alt/Meta)
- * or drags initiated with other buttons than BTN_LEFT to specific
- * actions (e.g. "ask").
- */
- enum wl_data_device_manager_dnd_action {
- /**
- * no action
- */
- WL_DATA_DEVICE_MANAGER_DND_ACTION_NONE = 0,
- /**
- * copy action
- */
- WL_DATA_DEVICE_MANAGER_DND_ACTION_COPY = 1,
- /**
- * move action
- */
- WL_DATA_DEVICE_MANAGER_DND_ACTION_MOVE = 2,
- /**
- * ask action
- */
- WL_DATA_DEVICE_MANAGER_DND_ACTION_ASK = 4,
- };
- #endif /* WL_DATA_DEVICE_MANAGER_DND_ACTION_ENUM */
- #ifndef WL_SHELL_ERROR_ENUM
- #define WL_SHELL_ERROR_ENUM
- enum wl_shell_error {
- /**
- * given wl_surface has another role
- */
- WL_SHELL_ERROR_ROLE = 0,
- };
- #endif /* WL_SHELL_ERROR_ENUM */
- #ifndef WL_SHELL_SURFACE_RESIZE_ENUM
- #define WL_SHELL_SURFACE_RESIZE_ENUM
- /**
- * @ingroup iface_wl_shell_surface
- * edge values for resizing
- *
- * These values are used to indicate which edge of a surface
- * is being dragged in a resize operation. The server may
- * use this information to adapt its behavior, e.g. choose
- * an appropriate cursor image.
- */
- enum wl_shell_surface_resize {
- /**
- * no edge
- */
- WL_SHELL_SURFACE_RESIZE_NONE = 0,
- /**
- * top edge
- */
- WL_SHELL_SURFACE_RESIZE_TOP = 1,
- /**
- * bottom edge
- */
- WL_SHELL_SURFACE_RESIZE_BOTTOM = 2,
- /**
- * left edge
- */
- WL_SHELL_SURFACE_RESIZE_LEFT = 4,
- /**
- * top and left edges
- */
- WL_SHELL_SURFACE_RESIZE_TOP_LEFT = 5,
- /**
- * bottom and left edges
- */
- WL_SHELL_SURFACE_RESIZE_BOTTOM_LEFT = 6,
- /**
- * right edge
- */
- WL_SHELL_SURFACE_RESIZE_RIGHT = 8,
- /**
- * top and right edges
- */
- WL_SHELL_SURFACE_RESIZE_TOP_RIGHT = 9,
- /**
- * bottom and right edges
- */
- WL_SHELL_SURFACE_RESIZE_BOTTOM_RIGHT = 10,
- };
- #endif /* WL_SHELL_SURFACE_RESIZE_ENUM */
- #ifndef WL_SHELL_SURFACE_TRANSIENT_ENUM
- #define WL_SHELL_SURFACE_TRANSIENT_ENUM
- /**
- * @ingroup iface_wl_shell_surface
- * details of transient behaviour
- *
- * These flags specify details of the expected behaviour
- * of transient surfaces. Used in the set_transient request.
- */
- enum wl_shell_surface_transient {
- /**
- * do not set keyboard focus
- */
- WL_SHELL_SURFACE_TRANSIENT_INACTIVE = 0x1,
- };
- #endif /* WL_SHELL_SURFACE_TRANSIENT_ENUM */
- #ifndef WL_SHELL_SURFACE_FULLSCREEN_METHOD_ENUM
- #define WL_SHELL_SURFACE_FULLSCREEN_METHOD_ENUM
- /**
- * @ingroup iface_wl_shell_surface
- * different method to set the surface fullscreen
- *
- * Hints to indicate to the compositor how to deal with a conflict
- * between the dimensions of the surface and the dimensions of the
- * output. The compositor is free to ignore this parameter.
- */
- enum wl_shell_surface_fullscreen_method {
- /**
- * no preference, apply default policy
- */
- WL_SHELL_SURFACE_FULLSCREEN_METHOD_DEFAULT = 0,
- /**
- * scale, preserve the surface's aspect ratio and center on output
- */
- WL_SHELL_SURFACE_FULLSCREEN_METHOD_SCALE = 1,
- /**
- * switch output mode to the smallest mode that can fit the surface, add black borders to compensate size mismatch
- */
- WL_SHELL_SURFACE_FULLSCREEN_METHOD_DRIVER = 2,
- /**
- * no upscaling, center on output and add black borders to compensate size mismatch
- */
- WL_SHELL_SURFACE_FULLSCREEN_METHOD_FILL = 3,
- };
- #endif /* WL_SHELL_SURFACE_FULLSCREEN_METHOD_ENUM */
- #ifndef WL_SURFACE_ERROR_ENUM
- #define WL_SURFACE_ERROR_ENUM
- /**
- * @ingroup iface_wl_surface
- * wl_surface error values
- *
- * These errors can be emitted in response to wl_surface requests.
- */
- enum wl_surface_error {
- /**
- * buffer scale value is invalid
- */
- WL_SURFACE_ERROR_INVALID_SCALE = 0,
- /**
- * buffer transform value is invalid
- */
- WL_SURFACE_ERROR_INVALID_TRANSFORM = 1,
- };
- #endif /* WL_SURFACE_ERROR_ENUM */
- #ifndef WL_SEAT_CAPABILITY_ENUM
- #define WL_SEAT_CAPABILITY_ENUM
- /**
- * @ingroup iface_wl_seat
- * seat capability bitmask
- *
- * This is a bitmask of capabilities this seat has; if a member is
- * set, then it is present on the seat.
- */
- enum wl_seat_capability {
- /**
- * the seat has pointer devices
- */
- WL_SEAT_CAPABILITY_POINTER = 1,
- /**
- * the seat has one or more keyboards
- */
- WL_SEAT_CAPABILITY_KEYBOARD = 2,
- /**
- * the seat has touch devices
- */
- WL_SEAT_CAPABILITY_TOUCH = 4,
- };
- #endif /* WL_SEAT_CAPABILITY_ENUM */
- #ifndef WL_POINTER_ERROR_ENUM
- #define WL_POINTER_ERROR_ENUM
- enum wl_pointer_error {
- /**
- * given wl_surface has another role
- */
- WL_POINTER_ERROR_ROLE = 0,
- };
- #endif /* WL_POINTER_ERROR_ENUM */
- #ifndef WL_POINTER_BUTTON_STATE_ENUM
- #define WL_POINTER_BUTTON_STATE_ENUM
- /**
- * @ingroup iface_wl_pointer
- * physical button state
- *
- * Describes the physical state of a button that produced the button
- * event.
- */
- enum wl_pointer_button_state {
- /**
- * the button is not pressed
- */
- WL_POINTER_BUTTON_STATE_RELEASED = 0,
- /**
- * the button is pressed
- */
- WL_POINTER_BUTTON_STATE_PRESSED = 1,
- };
- #endif /* WL_POINTER_BUTTON_STATE_ENUM */
- #ifndef WL_POINTER_AXIS_ENUM
- #define WL_POINTER_AXIS_ENUM
- /**
- * @ingroup iface_wl_pointer
- * axis types
- *
- * Describes the axis types of scroll events.
- */
- enum wl_pointer_axis {
- /**
- * vertical axis
- */
- WL_POINTER_AXIS_VERTICAL_SCROLL = 0,
- /**
- * horizontal axis
- */
- WL_POINTER_AXIS_HORIZONTAL_SCROLL = 1,
- };
- #endif /* WL_POINTER_AXIS_ENUM */
- #ifndef WL_POINTER_AXIS_SOURCE_ENUM
- #define WL_POINTER_AXIS_SOURCE_ENUM
- /**
- * @ingroup iface_wl_pointer
- * axis source types
- *
- * Describes the source types for axis events. This indicates to the
- * client how an axis event was physically generated; a client may
- * adjust the user interface accordingly. For example, scroll events
- * from a "finger" source may be in a smooth coordinate space with
- * kinetic scrolling whereas a "wheel" source may be in discrete steps
- * of a number of lines.
- */
- enum wl_pointer_axis_source {
- /**
- * a physical wheel rotation
- */
- WL_POINTER_AXIS_SOURCE_WHEEL = 0,
- /**
- * finger on a touch surface
- */
- WL_POINTER_AXIS_SOURCE_FINGER = 1,
- /**
- * continuous coordinate space
- *
- * A device generating events in a continuous coordinate space,
- * but using something other than a finger. One example for this
- * source is button-based scrolling where the vertical motion of a
- * device is converted to scroll events while a button is held
- * down.
- */
- WL_POINTER_AXIS_SOURCE_CONTINUOUS = 2,
- /**
- * a physical wheel tilt
- *
- * Indicates that the actual device is a wheel but the scroll
- * event is not caused by a rotation but a (usually sideways) tilt
- * of the wheel.
- * @since 6
- */
- WL_POINTER_AXIS_SOURCE_WHEEL_TILT = 3,
- };
- /**
- * @ingroup iface_wl_pointer
- */
- #define WL_POINTER_AXIS_SOURCE_WHEEL_TILT_SINCE_VERSION 6
- #endif /* WL_POINTER_AXIS_SOURCE_ENUM */
- #ifndef WL_KEYBOARD_KEYMAP_FORMAT_ENUM
- #define WL_KEYBOARD_KEYMAP_FORMAT_ENUM
- /**
- * @ingroup iface_wl_keyboard
- * keyboard mapping format
- *
- * This specifies the format of the keymap provided to the
- * client with the wl_keyboard.keymap event.
- */
- enum wl_keyboard_keymap_format {
- /**
- * no keymap; client must understand how to interpret the raw keycode
- */
- WL_KEYBOARD_KEYMAP_FORMAT_NO_KEYMAP = 0,
- /**
- * libxkbcommon compatible; to determine the xkb keycode, clients must add 8 to the key event keycode
- */
- WL_KEYBOARD_KEYMAP_FORMAT_XKB_V1 = 1,
- };
- #endif /* WL_KEYBOARD_KEYMAP_FORMAT_ENUM */
- #ifndef WL_KEYBOARD_KEY_STATE_ENUM
- #define WL_KEYBOARD_KEY_STATE_ENUM
- /**
- * @ingroup iface_wl_keyboard
- * physical key state
- *
- * Describes the physical state of a key that produced the key event.
- */
- enum wl_keyboard_key_state {
- /**
- * key is not pressed
- */
- WL_KEYBOARD_KEY_STATE_RELEASED = 0,
- /**
- * key is pressed
- */
- WL_KEYBOARD_KEY_STATE_PRESSED = 1,
- };
- #endif /* WL_KEYBOARD_KEY_STATE_ENUM */
- #ifndef WL_OUTPUT_SUBPIXEL_ENUM
- #define WL_OUTPUT_SUBPIXEL_ENUM
- /**
- * @ingroup iface_wl_output
- * subpixel geometry information
- *
- * This enumeration describes how the physical
- * pixels on an output are laid out.
- */
- enum wl_output_subpixel {
- /**
- * unknown geometry
- */
- WL_OUTPUT_SUBPIXEL_UNKNOWN = 0,
- /**
- * no geometry
- */
- WL_OUTPUT_SUBPIXEL_NONE = 1,
- /**
- * horizontal RGB
- */
- WL_OUTPUT_SUBPIXEL_HORIZONTAL_RGB = 2,
- /**
- * horizontal BGR
- */
- WL_OUTPUT_SUBPIXEL_HORIZONTAL_BGR = 3,
- /**
- * vertical RGB
- */
- WL_OUTPUT_SUBPIXEL_VERTICAL_RGB = 4,
- /**
- * vertical BGR
- */
- WL_OUTPUT_SUBPIXEL_VERTICAL_BGR = 5,
- };
- #endif /* WL_OUTPUT_SUBPIXEL_ENUM */
- #ifndef WL_OUTPUT_TRANSFORM_ENUM
- #define WL_OUTPUT_TRANSFORM_ENUM
- /**
- * @ingroup iface_wl_output
- * transform from framebuffer to output
- *
- * This describes the transform that a compositor will apply to a
- * surface to compensate for the rotation or mirroring of an
- * output device.
- *
- * The flipped values correspond to an initial flip around a
- * vertical axis followed by rotation.
- *
- * The purpose is mainly to allow clients to render accordingly and
- * tell the compositor, so that for fullscreen surfaces, the
- * compositor will still be able to scan out directly from client
- * surfaces.
- */
- enum wl_output_transform {
- /**
- * no transform
- */
- WL_OUTPUT_TRANSFORM_NORMAL = 0,
- /**
- * 90 degrees counter-clockwise
- */
- WL_OUTPUT_TRANSFORM_90 = 1,
- /**
- * 180 degrees counter-clockwise
- */
- WL_OUTPUT_TRANSFORM_180 = 2,
- /**
- * 270 degrees counter-clockwise
- */
- WL_OUTPUT_TRANSFORM_270 = 3,
- /**
- * 180 degree flip around a vertical axis
- */
- WL_OUTPUT_TRANSFORM_FLIPPED = 4,
- /**
- * flip and rotate 90 degrees counter-clockwise
- */
- WL_OUTPUT_TRANSFORM_FLIPPED_90 = 5,
- /**
- * flip and rotate 180 degrees counter-clockwise
- */
- WL_OUTPUT_TRANSFORM_FLIPPED_180 = 6,
- /**
- * flip and rotate 270 degrees counter-clockwise
- */
- WL_OUTPUT_TRANSFORM_FLIPPED_270 = 7,
- };
- #endif /* WL_OUTPUT_TRANSFORM_ENUM */
- #ifndef WL_OUTPUT_MODE_ENUM
- #define WL_OUTPUT_MODE_ENUM
- /**
- * @ingroup iface_wl_output
- * mode information
- *
- * These flags describe properties of an output mode.
- * They are used in the flags bitfield of the mode event.
- */
- enum wl_output_mode {
- /**
- * indicates this is the current mode
- */
- WL_OUTPUT_MODE_CURRENT = 0x1,
- /**
- * indicates this is the preferred mode
- */
- WL_OUTPUT_MODE_PREFERRED = 0x2,
- };
- #endif /* WL_OUTPUT_MODE_ENUM */
- #ifndef WL_SUBCOMPOSITOR_ERROR_ENUM
- #define WL_SUBCOMPOSITOR_ERROR_ENUM
- enum wl_subcompositor_error {
- /**
- * the to-be sub-surface is invalid
- */
- WL_SUBCOMPOSITOR_ERROR_BAD_SURFACE = 0,
- };
- #endif /* WL_SUBCOMPOSITOR_ERROR_ENUM */
- #ifndef WL_SUBSURFACE_ERROR_ENUM
- #define WL_SUBSURFACE_ERROR_ENUM
- enum wl_subsurface_error {
- /**
- * wl_surface is not a sibling or the parent
- */
- WL_SUBSURFACE_ERROR_BAD_SURFACE = 0,
- };
- #endif /* WL_SUBSURFACE_ERROR_ENUM */
- #ifdef __cplusplus
- }
- #endif
- #endif
|