Ecore_Wl2.h File Reference

Ecore functions for dealing with the Wayland display protocol. More...

## Data Structures

struct | _Ecore_Wl2_Event_Connection
struct | _Ecore_Wl2_Global
struct | _Ecore_Wl2_Event_Global
struct | _Ecore_Wl2_Event_Focus_In
struct | _Ecore_Wl2_Event_Focus_Out
struct | _Ecore_Wl2_Event_Dnd_Enter
struct | _Ecore_Wl2_Event_Dnd_Leave
struct | _Ecore_Wl2_Event_Dnd_Motion
struct | _Ecore_Wl2_Event_Dnd_Drop
struct | _Ecore_Wl2_Event_Dnd_End
struct | _Ecore_Wl2_Event_Data_Source_Event
struct | Ecore_Wl2_Event_Data_Source_End
struct | _Ecore_Wl2_Event_Data_Source_Target
struct | _Ecore_Wl2_Event_Data_Source_Send
struct | Ecore_Wl2_Event_Seat_Selection
struct | _Ecore_Wl2_Event_Seat_Name
struct | _Ecore_Wl2_Event_Seat_Capabilities
struct | _Ecore_Wl2_Event_Device
struct | _Ecore_Wl2_Event_Window_Configure
struct | _Ecore_Wl2_Event_Window_Configure_Complete
struct | _Ecore_Wl2_Event_Input_Keymap_Changed
struct | Ecore_Wl2_Event_Seat_Keyboard_Repeat_Changed
struct | _Ecore_Wl2_Event_Sync_Done
struct | _Ecore_Wl2_Event_Offer_Data_Ready
struct | _Ecore_Wl2_Event_Output_Transform
struct | _Ecore_Wl2_Event_Window_Rotation
struct | _Ecore_Wl2_Event_Window_Show
struct | _Ecore_Wl2_Event_Window_Hide
struct | _Ecore_Wl2_Event_Window_Activate
struct | _Ecore_Wl2_Event_Window_Deactivate
struct | _Ecore_Wl2_Event_Window_Common
struct | _Ecore_Wl2_Event_Window_Iconify_State_Change
struct | _Ecore_Wl2_Event_Aux_Hint_Allowed
struct | _Ecore_Wl2_Event_Aux_Hint_Supported
struct | Ecore_Wl2_Event_Aux_Message
struct | Ecore_Wl2_Event_Window_Offscreen
struct | _Ecore_Wl2_Surface_Interface

## Macros

#define | WL_HIDE_DEPRECATED
#define | EAPI
#define | ECORE_WL2_SURFACE_INTERFACE_VERSION 1
#define | EAPI

## Typedefs

typedef struct _Ecore_Wl2_Subsurface | Ecore_Wl2_Subsurface
typedef struct _Ecore_Wl2_Display | Ecore_Wl2_Display
typedef struct _Ecore_Wl2_Output | Ecore_Wl2_Output
typedef struct _Ecore_Wl2_Input | Ecore_Wl2_Input
typedef struct _Ecore_Wl2_Seat | Ecore_Wl2_Seat
typedef struct _Ecore_Wl2_Pointer | Ecore_Wl2_Pointer
typedef struct _Ecore_Wl2_Keyboard | Ecore_Wl2_Keyboard
typedef struct _Ecore_Wl2_Touch | Ecore_Wl2_Touch
typedef struct _Ecore_Wl2_Offer | Ecore_Wl2_Offer
typedef struct _Ecore_Wl2_Surface | Ecore_Wl2_Surface
typedef struct _Ecore_Wl2_Event_Connection | Ecore_Wl2_Event_Connect
typedef struct _Ecore_Wl2_Event_Connection | Ecore_Wl2_Event_Disconnect
typedef struct _Ecore_Wl2_Global | Ecore_Wl2_Global
typedef struct _Ecore_Wl2_Event_Global | Ecore_Wl2_Event_Global
typedef struct _Ecore_Wl2_Event_Focus_In | Ecore_Wl2_Event_Focus_In
typedef struct _Ecore_Wl2_Event_Focus_Out | Ecore_Wl2_Event_Focus_Out
typedef struct _Ecore_Wl2_Event_Dnd_Enter | Ecore_Wl2_Event_Dnd_Enter
typedef struct _Ecore_Wl2_Event_Dnd_Leave | Ecore_Wl2_Event_Dnd_Leave
typedef struct _Ecore_Wl2_Event_Dnd_Motion | Ecore_Wl2_Event_Dnd_Motion
typedef struct _Ecore_Wl2_Event_Dnd_Drop | Ecore_Wl2_Event_Dnd_Drop
typedef struct _Ecore_Wl2_Event_Dnd_End | Ecore_Wl2_Event_Dnd_End
typedef struct Ecore_Wl2_Event_Data_Source_End | Ecore_Wl2_Event_Data_Source_End
typedef struct _Ecore_Wl2_Event_Data_Source_Event | Ecore_Wl2_Event_Data_Source_Drop
typedef struct _Ecore_Wl2_Event_Data_Source_Event | Ecore_Wl2_Event_Data_Source_Action
typedef struct _Ecore_Wl2_Event_Data_Source_Target | Ecore_Wl2_Event_Data_Source_Target
typedef struct _Ecore_Wl2_Event_Data_Source_Send | Ecore_Wl2_Event_Data_Source_Send
typedef struct Ecore_Wl2_Event_Seat_Selection | Ecore_Wl2_Event_Seat_Selection
typedef struct _Ecore_Wl2_Event_Seat_Name | Ecore_Wl2_Event_Seat_Name
typedef struct _Ecore_Wl2_Event_Seat_Capabilities | Ecore_Wl2_Event_Seat_Capabilities
typedef struct _Ecore_Wl2_Event_Device | Ecore_Wl2_Event_Device
typedef struct _Ecore_Wl2_Event_Window_Configure | Ecore_Wl2_Event_Window_Configure
typedef struct _Ecore_Wl2_Event_Window_Configure_Complete | Ecore_Wl2_Event_Window_Configure_Complete
typedef struct _Ecore_Wl2_Event_Input_Keymap_Changed | Ecore_Wl2_Event_Seat_Keymap_Changed
typedef struct Ecore_Wl2_Event_Seat_Keyboard_Repeat_Changed | Ecore_Wl2_Event_Seat_Keyboard_Repeat_Changed
typedef struct _Ecore_Wl2_Event_Sync_Done | Ecore_Wl2_Event_Sync_Done
typedef struct _Ecore_Wl2_Event_Offer_Data_Ready | Ecore_Wl2_Event_Offer_Data_Ready
typedef struct _Ecore_Wl2_Event_Output_Transform | Ecore_Wl2_Event_Output_Transform
typedef struct _Ecore_Wl2_Event_Window_Rotation | Ecore_Wl2_Event_Window_Rotation
typedef struct _Ecore_Wl2_Event_Window_Rotation | Ecore_Wl2_Event_Window_Rotation_Change_Prepare
typedef struct _Ecore_Wl2_Event_Window_Rotation | Ecore_Wl2_Event_Window_Rotation_Change_Prepare_Done
typedef struct _Ecore_Wl2_Event_Window_Rotation | Ecore_Wl2_Event_Window_Rotation_Change_Request
typedef struct _Ecore_Wl2_Event_Window_Rotation | Ecore_Wl2_Event_Window_Rotation_Change_Done
typedef struct _Ecore_Wl2_Event_Window_Show | Ecore_Wl2_Event_Window_Show
typedef struct _Ecore_Wl2_Event_Window_Hide | Ecore_Wl2_Event_Window_Hide
typedef struct _Ecore_Wl2_Event_Window_Activate | Ecore_Wl2_Event_Window_Activate
typedef struct _Ecore_Wl2_Event_Window_Deactivate | Ecore_Wl2_Event_Window_Deactivate
typedef struct _Ecore_Wl2_Event_Window_Common | Ecore_Wl2_Event_Window_Common
typedef struct _Ecore_Wl2_Event_Window_Iconify_State_Change | Ecore_Wl2_Event_Window_Iconify_State_Change
typedef enum _Ecore_Wl2_Window_Type | Ecore_Wl2_Window_Type
typedef struct _Ecore_Wl2_Event_Aux_Hint_Allowed | Ecore_Wl2_Event_Aux_Hint_Allowed
typedef struct _Ecore_Wl2_Event_Aux_Hint_Supported | Ecore_Wl2_Event_Aux_Hint_Supported
typedef struct Ecore_Wl2_Event_Aux_Message | Ecore_Wl2_Event_Aux_Message
typedef struct Ecore_Wl2_Event_Window_Offscreen | Ecore_Wl2_Event_Window_Offscreen
typedef struct _Ecore_Wl2_Buffer | Ecore_Wl2_Buffer
typedef enum _Ecore_Wl2_Buffer_Type | Ecore_Wl2_Buffer_Type
typedef void(* | Ecore_Wl2_Bind_Cb) (struct wl_client *client, void *data, uint32_t version, uint32_t id)
typedef void(* | Ecore_Wl2_Unbind_Cb) (struct wl_resource *resource)
typedef void(* | Ecore_Wl2_Frame_Cb) (Ecore_Wl2_Window *win, uint32_t timestamp, void *data)
typedef struct _Ecore_Wl2_Frame_Cb_Handle | Ecore_Wl2_Frame_Cb_Handle
typedef struct _Ecore_Wl2_Surface_Interface | Ecore_Wl2_Surface_Interface

## Enumerations

enum | Ecore_Wl2_Drag_Action { ECORE_WL2_DRAG_ACTION_NONE = 0 , ECORE_WL2_DRAG_ACTION_COPY = 1 , ECORE_WL2_DRAG_ACTION_MOVE = 2 , ECORE_WL2_DRAG_ACTION_ASK = 4 , ECORE_WL2_DRAG_ACTION_LAST = 5 }
enum | Ecore_Wl2_Seat_Capabilities { ECORE_WL2_SEAT_CAPABILITIES_NONE = 0 , ECORE_WL2_SEAT_CAPABILITIES_POINTER = 1 , ECORE_WL2_SEAT_CAPABILITIES_KEYBOARD = 2 , ECORE_WL2_SEAT_CAPABILITIES_TOUCH = 4 }
enum | Ecore_Wl2_Device_Type { ECORE_WL2_DEVICE_TYPE_SEAT , ECORE_WL2_DEVICE_TYPE_POINTER , ECORE_WL2_DEVICE_TYPE_KEYBOARD , ECORE_WL2_DEVICE_TYPE_TOUCH }
enum | Ecore_Wl2_Selection_Type { ECORE_WL2_SELECTION_CNP , ECORE_WL2_SELECTION_DND }
enum | Ecore_Wl2_Window_States { ECORE_WL2_WINDOW_STATE_NONE = 0 , ECORE_WL2_WINDOW_STATE_FULLSCREEN = (1 << 0) , ECORE_WL2_WINDOW_STATE_MAXIMIZED = (1 << 1) }
enum | _Ecore_Wl2_Window_Type { ECORE_WL2_WINDOW_TYPE_NONE , ECORE_WL2_WINDOW_TYPE_TOPLEVEL , ECORE_WL2_WINDOW_TYPE_MENU , ECORE_WL2_WINDOW_TYPE_DND , ECORE_WL2_WINDOW_TYPE_CUSTOM , ECORE_WL2_WINDOW_TYPE_NOTIFICATION , ECORE_WL2_WINDOW_TYPE_UTILITY , ECORE_WL2_WINDOW_TYPE_DIALOG , ECORE_WL2_WINDOW_TYPE_DOCK , ECORE_WL2_WINDOW_TYPE_SPLASH , ECORE_WL2_WINDOW_TYPE_LAST }
enum | _Ecore_Wl2_Buffer_Type { ECORE_WL2_BUFFER_NONE = 0 , ECORE_WL2_BUFFER_SHM = 1 , ECORE_WL2_BUFFER_DMABUF = 2 }

## Functions

EAPI int | ecore_wl2_init (void)
| Initialize the Ecore_Wl2 library.
EAPI int | ecore_wl2_shutdown (void)
| Shutdown the Ecore_Wl2 Library.
EAPI Ecore_Wl2_Display * | ecore_wl2_display_create (const char *name)
| Create a new Wayland display.
EAPI void | ecore_wl2_display_destroy (Ecore_Wl2_Display *display)
| Destroy an existing Wayland display.
EAPI Ecore_Wl2_Display * | ecore_wl2_display_connect (const char *name)
| Connect to an existing Wayland display.
EAPI void | ecore_wl2_display_disconnect (Ecore_Wl2_Display *display)
| Disconnect an existing Wayland display.
EAPI struct wl_display * | ecore_wl2_display_get (Ecore_Wl2_Display *display)
| Retrieve the existing Wayland display.
EAPI struct wl_shm * | ecore_wl2_display_shm_get (Ecore_Wl2_Display *display)
| Retrieve the wl_shm from a given Ecore_Wl2_Display.
EAPI void * | ecore_wl2_display_dmabuf_get (Ecore_Wl2_Display *display)
| Retrieve the wl_dmabuf from a given Ecore_Wl2_Display.
EAPI Eina_Iterator * | ecore_wl2_display_globals_get (Ecore_Wl2_Display *display)
| Return an Eina_Iterator that can be used to iterate through globals.
EAPI void | ecore_wl2_display_screen_size_get (Ecore_Wl2_Display *display, int *w, int *h)
| Retrieves the size of the current screen.
EAPI Eina_Iterator * | ecore_wl2_display_inputs_get (Ecore_Wl2_Display *display)
| Get all the Ecore_Wl2_Input from the display.
EAPI Ecore_Wl2_Input * | ecore_wl2_display_input_find (const Ecore_Wl2_Display *display, unsigned int id)
| Find a seat for a given display object using the seat id.
EAPI Ecore_Wl2_Input * | ecore_wl2_display_input_find_by_name (const Ecore_Wl2_Display *display, const char *name)
| Find a seat for a given display object using the seat id.
EAPI struct wl_registry * | ecore_wl2_display_registry_get (Ecore_Wl2_Display *display)
| Retrieves the Wayland Registry used for the current Wayland display.
EAPI Eina_Bool | ecore_wl2_display_sync_is_done (const Ecore_Wl2_Display *display)
| Check if the display has performed a sync.
EAPI const char * | ecore_wl2_display_name_get (const Ecore_Wl2_Display *display)
| Get the name of the display object.
EAPI Ecore_Wl2_Window * | ecore_wl2_display_window_find_by_surface (Ecore_Wl2_Display *display, struct wl_surface *surface)
| Finds an Ecore_Wl2_Window based on wl_surface.
EAPI Ecore_Wl2_Display * | ecore_wl2_connected_display_get (const char *name)
| Gets the connected display object.
EAPI struct wl_compositor * | ecore_wl2_display_compositor_get (Ecore_Wl2_Display *display)
| Gets the wl_compositor which belongs to this display.
EAPI Ecore_Wl2_Window * | ecore_wl2_window_new (Ecore_Wl2_Display *display, Ecore_Wl2_Window *parent, int x, int y, int w, int h)
| Create a new Ecore_Wl2_Window.
EAPI void | ecore_wl2_window_close_callback_set (Ecore_Wl2_Window *window, void(*cb)(void *data, Ecore_Wl2_Window *win), void *data)
| Set a callback to be caleld just before the window is closed and freed.
EAPI struct wl_surface * | ecore_wl2_window_surface_get (Ecore_Wl2_Window *window)
| Get the wl_surface which belongs to this window.
EAPI int | ecore_wl2_window_surface_id_get (Ecore_Wl2_Window *window)
| Get the id of a given Ecore_Wl2_Window.
EAPI void | ecore_wl2_window_aspect_set (Ecore_Wl2_Window *window, int w, int h, unsigned int aspect)
EAPI void | ecore_wl2_window_aspect_get (Ecore_Wl2_Window *window, int *w, int *h, unsigned int *aspect)
EAPI void | ecore_wl2_window_show (Ecore_Wl2_Window *window)
| Show a given Ecore_Wl2_Window.
EAPI void | ecore_wl2_window_hide (Ecore_Wl2_Window *window)
| Hide a given Ecore_Wl2_Window.
EAPI void | ecore_wl2_window_free (Ecore_Wl2_Window *window)
| Free a given Ecore_Wl2_Window.
EAPI void | ecore_wl2_window_move (Ecore_Wl2_Window *window, Ecore_Wl2_Input *input)
| Begin moving a given Ecore_Wl2_Window.
EAPI void | ecore_wl2_window_resize (Ecore_Wl2_Window *window, Ecore_Wl2_Input *input, int location)
| Begin resizing a given window.
EAPI Eina_Bool | ecore_wl2_window_alpha_get (Ecore_Wl2_Window *window)
| Get if a given window is alpha.
EAPI void | ecore_wl2_window_alpha_set (Ecore_Wl2_Window *window, Eina_Bool alpha)
| Set a given window's alpha property.
EAPI void | ecore_wl2_window_opaque_region_set (Ecore_Wl2_Window *window, int x, int y, int w, int h)
| Set the opaque region of the Ecore_Wl2_Window.
EAPI void | ecore_wl2_window_opaque_region_get (Ecore_Wl2_Window *window, int *x, int *y, int *w, int *h)
| Get the opaque region of the Ecore_Wl2_Window.
EAPI void | ecore_wl2_window_input_region_set (Ecore_Wl2_Window *window, int x, int y, int w, int h)
| Set the input region of the Ecore_Wl2_Window.
EAPI void | ecore_wl2_window_input_region_get (Ecore_Wl2_Window *window, int *x, int *y, int *w, int *h)
| Get the input region of the Ecore_Wl2_Window.
EAPI Eina_Bool | ecore_wl2_window_maximized_get (Ecore_Wl2_Window *window)
| Get if a given window is maximized.
EAPI void | ecore_wl2_window_maximized_set (Ecore_Wl2_Window *window, Eina_Bool maximized)
| Set the maximized state of a given window.
EAPI Eina_Bool | ecore_wl2_window_fullscreen_get (Ecore_Wl2_Window *window)
| Get if a given window is fullscreen.
EAPI void | ecore_wl2_window_fullscreen_set (Ecore_Wl2_Window *window, Eina_Bool fullscreen)
| Set the fullscreen state of a given window.
EAPI int | ecore_wl2_window_rotation_get (Ecore_Wl2_Window *window)
| Get if a given window is rotated.
EAPI void | ecore_wl2_window_rotation_set (Ecore_Wl2_Window *window, int rotation)
| Set the rotation of a given window.
EAPI void | ecore_wl2_window_title_set (Ecore_Wl2_Window *window, const char *title)
| Set the title of a given window.
EAPI const char * | ecore_wl2_window_title_get (Ecore_Wl2_Window *window)
| Get the title of a given window.
EAPI void | ecore_wl2_window_class_set (Ecore_Wl2_Window *window, const char *clas)
| Set the class of a given window.
EAPI const char * | ecore_wl2_window_class_get (Ecore_Wl2_Window *window)
| Get the class of a given window.
EAPI void | ecore_wl2_window_geometry_get (Ecore_Wl2_Window *window, int *x, int *y, int *w, int *h)
| Get the geometry of a given window.
EAPI void | ecore_wl2_window_geometry_set (Ecore_Wl2_Window *window, int x, int y, int w, int h)
| Set the geometry of a given window.
EAPI void | ecore_wl2_window_type_set (Ecore_Wl2_Window *window, Ecore_Wl2_Window_Type type)
| Set the type of a given window.
EAPI Ecore_Wl2_Window_Type | ecore_wl2_window_type_get (Ecore_Wl2_Window *window)
| Get the type of a given window.
EAPI Ecore_Wl2_Output * | ecore_wl2_window_output_find (Ecore_Wl2_Window *window)
| Find the output that a given window is on.
EAPI void | ecore_wl2_window_wm_rotation_supported_set (Ecore_Wl2_Window *window, Eina_Bool enabled)
| Set if window rotation is supported by the window manager.
EAPI Eina_Bool | ecore_wl2_window_wm_rotation_supported_get (Ecore_Wl2_Window *window)
| Get if window rotation is supported by the window manager.
EAPI void | ecore_wl2_window_rotation_app_set (Ecore_Wl2_Window *window, Eina_Bool set)
| Set if an application has set window rotation.
EAPI Eina_Bool | ecore_wl2_window_rotation_app_get (Ecore_Wl2_Window *window)
| Get if an application has set window rotation.
EAPI void | ecore_wl2_window_preferred_rotation_set (Ecore_Wl2_Window *window, int rot)
| Set preferred rotation on a given window.
EAPI int | ecore_wl2_window_preferred_rotation_get (Ecore_Wl2_Window *window)
| Get preferred rotation for a given window.
EAPI void | ecore_wl2_window_available_rotations_set (Ecore_Wl2_Window *window, const int *rots, unsigned int count)
| Set a windows available rotations.
EAPI Eina_Bool | ecore_wl2_window_available_rotations_get (Ecore_Wl2_Window *window, int **rots, unsigned int *count)
| Get a windows available rotations.
EAPI Eina_Bool | ecore_wl2_window_activated_get (const Ecore_Wl2_Window *window)
| Get the activated state of a window.
EAPI void | ecore_wl2_window_popup_input_set (Ecore_Wl2_Window *window, Ecore_Wl2_Input *input)
| Set the seat for a popup window to be used with grab.
EAPI Ecore_Wl2_Input * | ecore_wl2_window_popup_input_get (Ecore_Wl2_Window *window)
| Get the seat for a popup window to be used with grab.
EAPI Eina_Bool | ecore_wl2_window_shell_surface_exists (Ecore_Wl2_Window *win)
| Check if a window has a shell surface - without one it can't be visible.
EAPI Ecore_Wl2_Display * | ecore_wl2_window_display_get (const Ecore_Wl2_Window *window)
| Get which display a given window is using.
EAPI void | ecore_wl2_window_focus_skip_set (Ecore_Wl2_Window *window, Eina_Bool focus_skip)
| Set if this window should ignore focus requests.
EAPI Eina_Bool | ecore_wl2_window_focus_skip_get (Ecore_Wl2_Window *window)
| Get if this window ignores focus requests.
EAPI void | ecore_wl2_window_role_set (Ecore_Wl2_Window *window, const char *role)
| Set the role of a given window.
EAPI const char * | ecore_wl2_window_role_get (Ecore_Wl2_Window *window)
| Get the role of a given window.
EAPI void | ecore_wl2_window_floating_mode_set (Ecore_Wl2_Window *window, Eina_Bool floating)
| Set if a given window is in floating mode.
EAPI Eina_Bool | ecore_wl2_window_floating_mode_get (Ecore_Wl2_Window *window)
| Get if a given window is in floating mode.
EAPI Ecore_Wl2_Window * | ecore_wl2_window_surface_find (struct wl_surface *surface)
| Finds a window by surface.
EAPI struct wl_seat * | ecore_wl2_input_seat_get (Ecore_Wl2_Input *input)
| Get the wl_seat that an input is using.
EAPI Ecore_Wl2_Seat_Capabilities | ecore_wl2_input_seat_capabilities_get (Ecore_Wl2_Input *input)
| Get the seat capabilities for a given input.
EAPI unsigned int | ecore_wl2_input_seat_id_get (Ecore_Wl2_Input *input)
| Get the wayland's seat id from an input.
EAPI Ecore_Wl2_Display * | ecore_wl2_input_display_get (const Ecore_Wl2_Input *input)
| Get the display object of an input.
EAPI struct xkb_keymap * | ecore_wl2_input_keymap_get (const Ecore_Wl2_Input *input)
| Get the xkb_keymap object of an input.
EAPI Eina_Stringshare * | ecore_wl2_input_name_get (Ecore_Wl2_Input *input)
| Get the name of an input.
EAPI Eina_Bool | ecore_wl2_input_keyboard_repeat_get (const Ecore_Wl2_Input *input, double *rate, double *delay)
| Get the keyboard repeat rate and delay of an input.
EAPI Eina_Bool | ecore_wl2_input_keyboard_repeat_set (Ecore_Wl2_Input *input, double rate, double delay)
| Set the keyboard repeat rate and delay of an input.
EAPI Eina_Bool | ecore_wl2_input_pointer_xy_get (const Ecore_Wl2_Input *input, int *x, int *y)
| Retrieves the mouse position of the seat.
EAPI void | ecore_wl2_input_pointer_set (Ecore_Wl2_Input *input, struct wl_surface *surface, int hot_x, int hot_y)
| Set a given wl_surface to use as the pointer on a seat.
EAPI void | ecore_wl2_input_cursor_from_name_set (Ecore_Wl2_Input *input, const char *cursor)
| Set a specific cursor on a given seat.
EAPI Ecore_Wl2_Input * | ecore_wl2_input_default_input_get (const Ecore_Wl2_Display *ewd)
| Gets default input of a given display.
EAPI int | ecore_wl2_output_dpi_get (Ecore_Wl2_Output *output)
| Return the DPI of a given output.
EAPI int | ecore_wl2_output_transform_get (Ecore_Wl2_Output *output)
| Get the current transform of a given output.
EAPI int | ecore_wl2_display_compositor_version_get (Ecore_Wl2_Display *disp)
| Return the version of the display's compositor object.
EAPI void | ecore_wl2_session_recovery_disable (void)
| Disable session recovery for any further connections.
EAPI void | ecore_wl2_window_commit (Ecore_Wl2_Window *window, Eina_Bool flush)
| Commit the surface of a wayland window.
EAPI Ecore_Wl2_Frame_Cb_Handle * | ecore_wl2_window_frame_callback_add (Ecore_Wl2_Window *window, Ecore_Wl2_Frame_Cb cb, void *data)
| Add a callback that fires when the window's surface_frame callback fires.
EAPI void | ecore_wl2_window_frame_callback_del (Ecore_Wl2_Frame_Cb_Handle *handle)
| Delete a callback that fires when the window's surface_frame callback fires.
EAPI void | ecore_wl2_display_flush (Ecore_Wl2_Display *display)
| Push buffered wayland protocol to compositor.
EAPI Eina_Bool | ecore_wl2_window_resizing_get (Ecore_Wl2_Window *window)
| Get if a given window is resizing.
EAPI void | ecore_wl2_window_update_begin (Ecore_Wl2_Window *window)
| Latch window state at the start of an update.

## Variables

EAPI int | ECORE_WL2_EVENT_DISCONNECT
EAPI int | ECORE_WL2_EVENT_CONNECT
EAPI int | ECORE_WL2_EVENT_GLOBAL_ADDED
EAPI int | ECORE_WL2_EVENT_GLOBAL_REMOVED
EAPI int | ECORE_WL2_EVENT_FOCUS_IN
EAPI int | ECORE_WL2_EVENT_FOCUS_OUT
EAPI int | ECORE_WL2_EVENT_DND_ENTER
EAPI int | ECORE_WL2_EVENT_DND_LEAVE
EAPI int | ECORE_WL2_EVENT_DND_MOTION
EAPI int | ECORE_WL2_EVENT_DND_DROP
EAPI int | ECORE_WL2_EVENT_DND_END
EAPI int | ECORE_WL2_EVENT_DATA_SOURCE_END
EAPI int | ECORE_WL2_EVENT_DATA_SOURCE_DROP
EAPI int | ECORE_WL2_EVENT_DATA_SOURCE_ACTION
EAPI int | ECORE_WL2_EVENT_DATA_SOURCE_TARGET
EAPI int | ECORE_WL2_EVENT_DATA_SOURCE_SEND
EAPI int | ECORE_WL2_EVENT_WINDOW_CONFIGURE
EAPI int | ECORE_WL2_EVENT_SYNC_DONE
EAPI int | ECORE_WL2_EVENT_OFFER_DATA_READY
EAPI int | ECORE_WL2_EVENT_SEAT_NAME_CHANGED
EAPI int | ECORE_WL2_EVENT_SEAT_CAPABILITIES_CHANGED
EAPI int | ECORE_WL2_EVENT_DEVICE_ADDED
EAPI int | ECORE_WL2_EVENT_DEVICE_REMOVED
EAPI int | ECORE_WL2_EVENT_WINDOW_CONFIGURE_COMPLETE
EAPI int | ECORE_WL2_EVENT_SEAT_KEYMAP_CHANGED
EAPI int | ECORE_WL2_EVENT_SEAT_KEYBOARD_REPEAT_CHANGED
EAPI int | ECORE_WL2_EVENT_SEAT_SELECTION
EAPI int | ECORE_WL2_EVENT_OUTPUT_TRANSFORM
EAPI int | ECORE_WL2_EVENT_WINDOW_ROTATE
EAPI int | ECORE_WL2_EVENT_AUX_HINT_ALLOWED
EAPI int | ECORE_WL2_EVENT_AUX_HINT_SUPPORTED
EAPI int | ECORE_WL2_EVENT_AUX_MESSAGE
EAPI int | ECORE_WL2_EVENT_WINDOW_SHOW
EAPI int | ECORE_WL2_EVENT_WINDOW_HIDE
EAPI int | ECORE_WL2_EVENT_WINDOW_ACTIVATE
EAPI int | ECORE_WL2_EVENT_WINDOW_DEACTIVATE
EAPI int | ECORE_WL2_EVENT_WINDOW_ICONIFY_STATE_CHANGE
EAPI int | ECORE_WL2_EVENT_WINDOW_OFFSCREEN
EAPI int | ECORE_WL2_EVENT_WINDOW_CREATE
EAPI int | ECORE_WL2_EVENT_WINDOW_DESTROY

## Detailed Description

Ecore functions for dealing with the Wayland display protocol.

## Typedef Documentation

## Ecore_Wl2_Surface_Interface

typedef struct _Ecore_Wl2_Surface_Interface Ecore_Wl2_Surface_Interface

Since
  1.25

## Enumeration Type Documentation

## _Ecore_Wl2_Window_Type

enum _Ecore_Wl2_Window_Type

Enumerator

ECORE_WL2_WINDOW_TYPE_UTILITY

Since
  1.20

ECORE_WL2_WINDOW_TYPE_DIALOG

Since
  1.20

ECORE_WL2_WINDOW_TYPE_DOCK

Since
  1.20

ECORE_WL2_WINDOW_TYPE_SPLASH

Since
  1.20

ECORE_WL2_WINDOW_TYPE_LAST

Since
  1.20

## Function Documentation

## ecore_wl2_window_preferred_rotation_get()

EAPI int ecore_wl2_window_preferred_rotation_get | ( | Ecore_Wl2_Window * | window | ) |

Get preferred rotation for a given window.

Parameters

  window | The window to get preferred rotation from

Returns
  Given windows preferred rotation

Since
  1.20

References EINA_SAFETY_ON_NULL_RETURN_VAL.

## ecore_wl2_session_recovery_disable()

EAPI void ecore_wl2_session_recovery_disable | ( | void |  | ) |

Disable session recovery for any further connections.

Must be called before connecting. This is irreversible and not intended for general use.

Since
  1.19

References EINA_TRUE.

## ecore_wl2_window_commit()

EAPI void ecore_wl2_window_commit | ( | Ecore_Wl2_Window * | window,
|  | Eina_Bool | flush )

Commit the surface of a wayland window.

If flush is set this generates a wl_surface_commit(), otherwise it is expected that some other call in the very near future (such as eglSwapBuffers) will cause an implicit flush.

A surface that has been commit will be in the "pending" state until the compositor tells us it's time to draw again via a frame callback.

Parameters

  window | The window whose surface we want to commit
  flush | EINA_TRUE if we need to flush immediately.

Since
  1.21

References ecore_wl2_display_flush(), ecore_wl2_window_geometry_get(), EINA_FALSE, EINA_SAFETY_ON_NULL_RETURN, EINA_TRUE, and WRN.

Referenced by ecore_wl2_window_hide().

## ecore_wl2_window_frame_callback_add()

EAPI Ecore_Wl2_Frame_Cb_Handle * ecore_wl2_window_frame_callback_add | ( | Ecore_Wl2_Window * | window,
|  | Ecore_Wl2_Frame_Cb | cb,
|  | void * | data )

Add a callback that fires when the window's surface_frame callback fires.

Parameters

  window | The window to add a callback on
  cb | The callback
  data | User data to provide to the callback handler

Since
  1.21

References eina_inlist_append(), EINA_INLIST_GET, and EINA_SAFETY_ON_NULL_RETURN_VAL.

## ecore_wl2_window_frame_callback_del()

EAPI void ecore_wl2_window_frame_callback_del | ( | Ecore_Wl2_Frame_Cb_Handle * | handle | ) |

Delete a callback that fires when the window's surface_frame callback fires.

Parameters

  handle | The callback handle obtained through ecore_wl2_window_frame_callback_add().

Since
  1.21

References EINA_INLIST_GET, eina_inlist_remove(), and EINA_SAFETY_ON_NULL_RETURN.

## ecore_wl2_display_flush()

EAPI void ecore_wl2_display_flush | ( | Ecore_Wl2_Display * | display | ) |

Push buffered wayland protocol to compositor.

Wayland protocol is only actually sent when a flush occurs, so the display should be flushed at appropriate times, such as after a commit.

Parameters

  display | The display to flush

Since
  1.21

References ECORE_FD_ALWAYS, ECORE_FD_READ, ECORE_FD_WRITE, ecore_main_fd_handler_active_set(), and EINA_SAFETY_ON_NULL_RETURN.

Referenced by ecore_wl2_window_aspect_set(), ecore_wl2_window_aux_hint_add(), ecore_wl2_window_aux_hint_change(), ecore_wl2_window_aux_hint_del(), ecore_wl2_window_class_set(), ecore_wl2_window_commit(), ecore_wl2_window_fullscreen_set(), ecore_wl2_window_iconified_set(), ecore_wl2_window_maximized_set(), ecore_wl2_window_move(), ecore_wl2_window_resize(), and ecore_wl2_window_title_set().

## ecore_wl2_window_update_begin()

EAPI void ecore_wl2_window_update_begin | ( | Ecore_Wl2_Window * | window | ) |

Latch window state at the start of an update.

When async render takes place we continue to dispatch wayland events from the main loop. We need to defer any changes to window state from those events until the update is complete.

Events deferred during an update will automatically fire immediately after the caller calls ecore_wl2_window_commit.

Parameters

  window | The window whose state we want to latch

Since
  1.21

References EINA_SAFETY_ON_NULL_RETURN, EINA_SAFETY_ON_TRUE_RETURN, and EINA_TRUE.

## Variable Documentation

## ECORE_WL2_EVENT_CONNECT

EAPI int ECORE_WL2_EVENT_CONNECT

extern

Since
  1.18

## ECORE_WL2_EVENT_GLOBAL_ADDED

EAPI int ECORE_WL2_EVENT_GLOBAL_ADDED

extern

Since
  1.18

## ECORE_WL2_EVENT_GLOBAL_REMOVED

EAPI int ECORE_WL2_EVENT_GLOBAL_REMOVED

extern

Since
  1.17

## ECORE_WL2_EVENT_FOCUS_IN

EAPI int ECORE_WL2_EVENT_FOCUS_IN

extern

Since
  1.17

## ECORE_WL2_EVENT_FOCUS_OUT

EAPI int ECORE_WL2_EVENT_FOCUS_OUT

extern

Since
  1.17

## ECORE_WL2_EVENT_DND_ENTER

EAPI int ECORE_WL2_EVENT_DND_ENTER

extern

Since
  1.17

## ECORE_WL2_EVENT_DND_LEAVE

EAPI int ECORE_WL2_EVENT_DND_LEAVE

extern

Since
  1.17

## ECORE_WL2_EVENT_DND_MOTION

EAPI int ECORE_WL2_EVENT_DND_MOTION

extern

Since
  1.17

## ECORE_WL2_EVENT_DND_DROP

EAPI int ECORE_WL2_EVENT_DND_DROP

extern

Since
  1.17

## ECORE_WL2_EVENT_DND_END

EAPI int ECORE_WL2_EVENT_DND_END

extern

Since
  1.17

## ECORE_WL2_EVENT_DATA_SOURCE_END

EAPI int ECORE_WL2_EVENT_DATA_SOURCE_END

extern

Since
  1.17

## ECORE_WL2_EVENT_DATA_SOURCE_DROP

EAPI int ECORE_WL2_EVENT_DATA_SOURCE_DROP

extern

Since
  1.18

## ECORE_WL2_EVENT_DATA_SOURCE_ACTION

EAPI int ECORE_WL2_EVENT_DATA_SOURCE_ACTION

extern

Since
  1.18

## ECORE_WL2_EVENT_DATA_SOURCE_TARGET

EAPI int ECORE_WL2_EVENT_DATA_SOURCE_TARGET

extern

Since
  1.18

## ECORE_WL2_EVENT_DATA_SOURCE_SEND

EAPI int ECORE_WL2_EVENT_DATA_SOURCE_SEND

extern

Since
  1.17

## ECORE_WL2_EVENT_WINDOW_CONFIGURE

EAPI int ECORE_WL2_EVENT_WINDOW_CONFIGURE

extern

Since
  1.17

## ECORE_WL2_EVENT_SYNC_DONE

EAPI int ECORE_WL2_EVENT_SYNC_DONE

extern

Since
  1.17

## ECORE_WL2_EVENT_OFFER_DATA_READY

EAPI int ECORE_WL2_EVENT_OFFER_DATA_READY

extern

Since
  1.17

## ECORE_WL2_EVENT_SEAT_NAME_CHANGED

EAPI int ECORE_WL2_EVENT_SEAT_NAME_CHANGED

extern

Since
  1.19

## ECORE_WL2_EVENT_SEAT_CAPABILITIES_CHANGED

EAPI int ECORE_WL2_EVENT_SEAT_CAPABILITIES_CHANGED

extern

Since
  1.19

## ECORE_WL2_EVENT_DEVICE_ADDED

EAPI int ECORE_WL2_EVENT_DEVICE_ADDED

extern

Since
  1.19

## ECORE_WL2_EVENT_DEVICE_REMOVED

EAPI int ECORE_WL2_EVENT_DEVICE_REMOVED

extern

Since
  1.19

## ECORE_WL2_EVENT_WINDOW_CONFIGURE_COMPLETE

EAPI int ECORE_WL2_EVENT_WINDOW_CONFIGURE_COMPLETE

extern

Since
  1.19

## ECORE_WL2_EVENT_SEAT_KEYMAP_CHANGED

EAPI int ECORE_WL2_EVENT_SEAT_KEYMAP_CHANGED

extern

Since
  1.19

## ECORE_WL2_EVENT_SEAT_KEYBOARD_REPEAT_CHANGED

EAPI int ECORE_WL2_EVENT_SEAT_KEYBOARD_REPEAT_CHANGED

extern

Since
  1.20

## ECORE_WL2_EVENT_SEAT_SELECTION

EAPI int ECORE_WL2_EVENT_SEAT_SELECTION

extern

Since
  1.20

## ECORE_WL2_EVENT_OUTPUT_TRANSFORM

EAPI int ECORE_WL2_EVENT_OUTPUT_TRANSFORM

extern

Since
  1.20

## ECORE_WL2_EVENT_WINDOW_ROTATE

EAPI int ECORE_WL2_EVENT_WINDOW_ROTATE

extern

Since
  1.20

## ECORE_WL2_EVENT_AUX_HINT_ALLOWED

EAPI int ECORE_WL2_EVENT_AUX_HINT_ALLOWED

extern

Since
  1.20

## ECORE_WL2_EVENT_AUX_HINT_SUPPORTED

EAPI int ECORE_WL2_EVENT_AUX_HINT_SUPPORTED

extern

Since
  1.20

## ECORE_WL2_EVENT_AUX_MESSAGE

EAPI int ECORE_WL2_EVENT_AUX_MESSAGE

extern

Since
  1.20

## ECORE_WL2_EVENT_WINDOW_SHOW

EAPI int ECORE_WL2_EVENT_WINDOW_SHOW

extern

Since
  1.20

## ECORE_WL2_EVENT_WINDOW_HIDE

EAPI int ECORE_WL2_EVENT_WINDOW_HIDE

extern

Since
  1.20

## ECORE_WL2_EVENT_WINDOW_ACTIVATE

EAPI int ECORE_WL2_EVENT_WINDOW_ACTIVATE

extern

Since
  1.20

## ECORE_WL2_EVENT_WINDOW_DEACTIVATE

EAPI int ECORE_WL2_EVENT_WINDOW_DEACTIVATE

extern

Since
  1.20

## ECORE_WL2_EVENT_WINDOW_ICONIFY_STATE_CHANGE

EAPI int ECORE_WL2_EVENT_WINDOW_ICONIFY_STATE_CHANGE

extern

Since
  1.20

## ECORE_WL2_EVENT_WINDOW_OFFSCREEN

EAPI int ECORE_WL2_EVENT_WINDOW_OFFSCREEN

extern

Since
  1.21

## ECORE_WL2_EVENT_WINDOW_CREATE

EAPI int ECORE_WL2_EVENT_WINDOW_CREATE

extern

Since
  1.21

## ECORE_WL2_EVENT_WINDOW_DESTROY

EAPI int ECORE_WL2_EVENT_WINDOW_DESTROY

extern

Since
  1.25