Data Structures | Macros | Typedefs | Enumerations | Functions | Variables
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_Window Ecore_Wl2_Window
 
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. More...
 
EAPI int ecore_wl2_shutdown (void)
 Shutdown the Ecore_Wl2 Library. More...
 
EAPI Ecore_Wl2_Display * ecore_wl2_display_create (const char *name)
 Create a new Wayland display. More...
 
EAPI void ecore_wl2_display_destroy (Ecore_Wl2_Display *display)
 Destroy an existing Wayland display. More...
 
EAPI Ecore_Wl2_Display * ecore_wl2_display_connect (const char *name)
 Connect to an existing Wayland display. More...
 
EAPI void ecore_wl2_display_disconnect (Ecore_Wl2_Display *display)
 Disconnect an existing Wayland display. More...
 
EAPI struct wl_display * ecore_wl2_display_get (Ecore_Wl2_Display *display)
 Retrieve the existing Wayland display. More...
 
EAPI struct wl_shm * ecore_wl2_display_shm_get (Ecore_Wl2_Display *display)
 Retrieve the wl_shm from a given Ecore_Wl2_Display. More...
 
EAPI void * ecore_wl2_display_dmabuf_get (Ecore_Wl2_Display *display)
 Retrieve the wl_dmabuf from a given Ecore_Wl2_Display. More...
 
EAPI Eina_Iteratorecore_wl2_display_globals_get (Ecore_Wl2_Display *display)
 Return an Eina_Iterator that can be used to iterate through globals. More...
 
EAPI void ecore_wl2_display_screen_size_get (Ecore_Wl2_Display *display, int *w, int *h)
 Retrieves the size of the current screen. More...
 
EAPI Eina_Iteratorecore_wl2_display_inputs_get (Ecore_Wl2_Display *display)
 Get all the Ecore_Wl2_Input from the display. More...
 
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. More...
 
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. More...
 
EAPI struct wl_registry * ecore_wl2_display_registry_get (Ecore_Wl2_Display *display)
 Retrieves the Wayland Registry used for the current Wayland display. More...
 
EAPI Eina_Bool ecore_wl2_display_sync_is_done (const Ecore_Wl2_Display *display)
 Check if the display has performed a sync. More...
 
EAPI const char * ecore_wl2_display_name_get (const Ecore_Wl2_Display *display)
 Get the name of the display object. More...
 
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. More...
 
EAPI Ecore_Wl2_Display * ecore_wl2_connected_display_get (const char *name)
 Gets the connected display object. More...
 
EAPI struct wl_compositor * ecore_wl2_display_compositor_get (Ecore_Wl2_Display *display)
 Gets the wl_compositor which belongs to this display. More...
 
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. More...
 
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. More...
 
EAPI struct wl_surface * ecore_wl2_window_surface_get (Ecore_Wl2_Window *window)
 Get the wl_surface which belongs to this window. More...
 
EAPI int ecore_wl2_window_surface_id_get (Ecore_Wl2_Window *window)
 Get the id of a given Ecore_Wl2_Window. More...
 
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. More...
 
EAPI void ecore_wl2_window_hide (Ecore_Wl2_Window *window)
 Hide a given Ecore_Wl2_Window. More...
 
EAPI void ecore_wl2_window_free (Ecore_Wl2_Window *window)
 Free a given Ecore_Wl2_Window. More...
 
EAPI void ecore_wl2_window_move (Ecore_Wl2_Window *window, Ecore_Wl2_Input *input)
 Begin moving a given Ecore_Wl2_Window. More...
 
EAPI void ecore_wl2_window_resize (Ecore_Wl2_Window *window, Ecore_Wl2_Input *input, int location)
 Begin resizing a given window. More...
 
EAPI Eina_Bool ecore_wl2_window_alpha_get (Ecore_Wl2_Window *window)
 Get if a given window is alpha. More...
 
EAPI void ecore_wl2_window_alpha_set (Ecore_Wl2_Window *window, Eina_Bool alpha)
 Set a given window's alpha property. More...
 
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. More...
 
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. More...
 
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. More...
 
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. More...
 
EAPI Eina_Bool ecore_wl2_window_maximized_get (Ecore_Wl2_Window *window)
 Get if a given window is maximized. More...
 
EAPI void ecore_wl2_window_maximized_set (Ecore_Wl2_Window *window, Eina_Bool maximized)
 Set the maximized state of a given window. More...
 
EAPI Eina_Bool ecore_wl2_window_fullscreen_get (Ecore_Wl2_Window *window)
 Get if a given window is fullscreen. More...
 
EAPI void ecore_wl2_window_fullscreen_set (Ecore_Wl2_Window *window, Eina_Bool fullscreen)
 Set the fullscreen state of a given window. More...
 
EAPI int ecore_wl2_window_rotation_get (Ecore_Wl2_Window *window)
 Get if a given window is rotated. More...
 
EAPI void ecore_wl2_window_rotation_set (Ecore_Wl2_Window *window, int rotation)
 Set the rotation of a given window. More...
 
EAPI void ecore_wl2_window_title_set (Ecore_Wl2_Window *window, const char *title)
 Set the title of a given window. More...
 
EAPI const char * ecore_wl2_window_title_get (Ecore_Wl2_Window *window)
 Get the title of a given window. More...
 
EAPI void ecore_wl2_window_class_set (Ecore_Wl2_Window *window, const char *clas)
 Set the class of a given window. More...
 
EAPI const char * ecore_wl2_window_class_get (Ecore_Wl2_Window *window)
 Get the class of a given window. More...
 
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. More...
 
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. More...
 
EAPI void ecore_wl2_window_type_set (Ecore_Wl2_Window *window, Ecore_Wl2_Window_Type type)
 Set the type of a given window. More...
 
EAPI Ecore_Wl2_Window_Type ecore_wl2_window_type_get (Ecore_Wl2_Window *window)
 Get the type of a given window. More...
 
EAPI Ecore_Wl2_Output * ecore_wl2_window_output_find (Ecore_Wl2_Window *window)
 Find the output that a given window is on. More...
 
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. More...
 
EAPI Eina_Bool ecore_wl2_window_wm_rotation_supported_get (Ecore_Wl2_Window *window)
 Get if window rotation is supported by the window manager. More...
 
EAPI void ecore_wl2_window_rotation_app_set (Ecore_Wl2_Window *window, Eina_Bool set)
 Set if an application has set window rotation. More...
 
EAPI Eina_Bool ecore_wl2_window_rotation_app_get (Ecore_Wl2_Window *window)
 Get if an application has set window rotation. More...
 
EAPI void ecore_wl2_window_preferred_rotation_set (Ecore_Wl2_Window *window, int rot)
 Set preferred rotation on a given window. More...
 
EAPI int ecore_wl2_window_preferred_rotation_get (Ecore_Wl2_Window *window)
 Get preferred rotation for a given window. More...
 
EAPI void ecore_wl2_window_available_rotations_set (Ecore_Wl2_Window *window, const int *rots, unsigned int count)
 Set a windows available rotations. More...
 
EAPI Eina_Bool ecore_wl2_window_available_rotations_get (Ecore_Wl2_Window *window, int **rots, unsigned int *count)
 Get a windows available rotations. More...
 
EAPI Eina_Bool ecore_wl2_window_activated_get (const Ecore_Wl2_Window *window)
 Get the activated state of a window. More...
 
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. More...
 
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. More...
 
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. More...
 
EAPI Ecore_Wl2_Display * ecore_wl2_window_display_get (const Ecore_Wl2_Window *window)
 Get which display a given window is using. More...
 
EAPI void ecore_wl2_window_focus_skip_set (Ecore_Wl2_Window *window, Eina_Bool focus_skip)
 Set if this window should ignore focus requests. More...
 
EAPI Eina_Bool ecore_wl2_window_focus_skip_get (Ecore_Wl2_Window *window)
 Get if this window ignores focus requests. More...
 
EAPI void ecore_wl2_window_role_set (Ecore_Wl2_Window *window, const char *role)
 Set the role of a given window. More...
 
EAPI const char * ecore_wl2_window_role_get (Ecore_Wl2_Window *window)
 Get the role of a given window. More...
 
EAPI void ecore_wl2_window_floating_mode_set (Ecore_Wl2_Window *window, Eina_Bool floating)
 Set if a given window is in floating mode. More...
 
EAPI Eina_Bool ecore_wl2_window_floating_mode_get (Ecore_Wl2_Window *window)
 Get if a given window is in floating mode. More...
 
EAPI Ecore_Wl2_Window * ecore_wl2_window_surface_find (struct wl_surface *surface)
 Finds a window by surface. More...
 
EAPI struct wl_seat * ecore_wl2_input_seat_get (Ecore_Wl2_Input *input)
 Get the wl_seat that an input is using. More...
 
EAPI Ecore_Wl2_Seat_Capabilities ecore_wl2_input_seat_capabilities_get (Ecore_Wl2_Input *input)
 Get the seat capabilities for a given input. More...
 
EAPI unsigned int ecore_wl2_input_seat_id_get (Ecore_Wl2_Input *input)
 Get the wayland's seat id from an input. More...
 
EAPI Ecore_Wl2_Display * ecore_wl2_input_display_get (const Ecore_Wl2_Input *input)
 Get the display object of an input. More...
 
EAPI struct xkb_keymap * ecore_wl2_input_keymap_get (const Ecore_Wl2_Input *input)
 Get the xkb_keymap object of an input. More...
 
EAPI Eina_Stringshareecore_wl2_input_name_get (Ecore_Wl2_Input *input)
 Get the name of an input. More...
 
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. More...
 
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. More...
 
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. More...
 
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. More...
 
EAPI void ecore_wl2_input_cursor_from_name_set (Ecore_Wl2_Input *input, const char *cursor)
 Set a specific cursor on a given seat. More...
 
EAPI Ecore_Wl2_Input * ecore_wl2_input_default_input_get (const Ecore_Wl2_Display *ewd)
 Gets default input of a given display. More...
 
EAPI int ecore_wl2_output_dpi_get (Ecore_Wl2_Output *output)
 Return the DPI of a given output. More...
 
EAPI int ecore_wl2_output_transform_get (Ecore_Wl2_Output *output)
 Get the current transform of a given output. More...
 
EAPI int ecore_wl2_display_compositor_version_get (Ecore_Wl2_Display *disp)
 Return the version of the display's compositor object. More...
 
EAPI void ecore_wl2_session_recovery_disable (void)
 Disable session recovery for any further connections. More...
 
EAPI void ecore_wl2_window_commit (Ecore_Wl2_Window *window, Eina_Bool flush)
 Commit the surface of a wayland window. More...
 
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. More...
 
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. More...
 
EAPI void ecore_wl2_display_flush (Ecore_Wl2_Display *display)
 Push buffered wayland protocol to compositor. More...
 
EAPI Eina_Bool ecore_wl2_window_resizing_get (Ecore_Wl2_Window *window)
 Get if a given window is resizing. More...
 
EAPI void ecore_wl2_window_update_begin (Ecore_Wl2_Window *window)
 Latch window state at the start of an update. More...
 

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

Since
1.25

Enumeration Type Documentation

◆ _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
windowThe 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
windowThe window whose surface we want to commit
flushEINA_TRUE if we need to flush immediately.
Since
1.21

References EINA_SAFETY_ON_NULL_RETURN.

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
windowThe window to add a callback on
cbThe callback
dataUser data to provide to the callback handler
Since
1.21

◆ 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
handleThe 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
displayThe 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_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
windowThe 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
Since
1.18

Referenced by ecore_wl2_init(), and ecore_wl2_shutdown().

◆ ECORE_WL2_EVENT_GLOBAL_ADDED

EAPI int ECORE_WL2_EVENT_GLOBAL_ADDED
Since
1.18

◆ ECORE_WL2_EVENT_GLOBAL_REMOVED

EAPI int ECORE_WL2_EVENT_GLOBAL_REMOVED
Since
1.17

◆ ECORE_WL2_EVENT_FOCUS_IN

EAPI int ECORE_WL2_EVENT_FOCUS_IN
Since
1.17

◆ ECORE_WL2_EVENT_FOCUS_OUT

EAPI int ECORE_WL2_EVENT_FOCUS_OUT
Since
1.17

◆ ECORE_WL2_EVENT_DND_ENTER

EAPI int ECORE_WL2_EVENT_DND_ENTER
Since
1.17

◆ ECORE_WL2_EVENT_DND_LEAVE

EAPI int ECORE_WL2_EVENT_DND_LEAVE
Since
1.17

◆ ECORE_WL2_EVENT_DND_MOTION

EAPI int ECORE_WL2_EVENT_DND_MOTION
Since
1.17

◆ ECORE_WL2_EVENT_DND_DROP

EAPI int ECORE_WL2_EVENT_DND_DROP
Since
1.17

◆ ECORE_WL2_EVENT_DND_END

EAPI int ECORE_WL2_EVENT_DND_END
Since
1.17

Referenced by ecore_wl2_dnd_drag_end().

◆ ECORE_WL2_EVENT_DATA_SOURCE_END

EAPI int ECORE_WL2_EVENT_DATA_SOURCE_END
Since
1.17

◆ ECORE_WL2_EVENT_DATA_SOURCE_DROP

EAPI int ECORE_WL2_EVENT_DATA_SOURCE_DROP
Since
1.18

◆ ECORE_WL2_EVENT_DATA_SOURCE_ACTION

EAPI int ECORE_WL2_EVENT_DATA_SOURCE_ACTION
Since
1.18

◆ ECORE_WL2_EVENT_DATA_SOURCE_TARGET

EAPI int ECORE_WL2_EVENT_DATA_SOURCE_TARGET
Since
1.18

◆ ECORE_WL2_EVENT_DATA_SOURCE_SEND

EAPI int ECORE_WL2_EVENT_DATA_SOURCE_SEND
Since
1.17

◆ ECORE_WL2_EVENT_WINDOW_CONFIGURE

EAPI int ECORE_WL2_EVENT_WINDOW_CONFIGURE
Since
1.17

◆ ECORE_WL2_EVENT_SYNC_DONE

EAPI int ECORE_WL2_EVENT_SYNC_DONE
Since
1.17

◆ ECORE_WL2_EVENT_OFFER_DATA_READY

EAPI int ECORE_WL2_EVENT_OFFER_DATA_READY
Since
1.17

◆ ECORE_WL2_EVENT_SEAT_NAME_CHANGED

EAPI int ECORE_WL2_EVENT_SEAT_NAME_CHANGED
Since
1.19

◆ ECORE_WL2_EVENT_SEAT_CAPABILITIES_CHANGED

EAPI int ECORE_WL2_EVENT_SEAT_CAPABILITIES_CHANGED
Since
1.19

◆ ECORE_WL2_EVENT_DEVICE_ADDED

EAPI int ECORE_WL2_EVENT_DEVICE_ADDED
Since
1.19

◆ ECORE_WL2_EVENT_DEVICE_REMOVED

EAPI int ECORE_WL2_EVENT_DEVICE_REMOVED
Since
1.19

◆ ECORE_WL2_EVENT_WINDOW_CONFIGURE_COMPLETE

EAPI int ECORE_WL2_EVENT_WINDOW_CONFIGURE_COMPLETE
Since
1.19

◆ ECORE_WL2_EVENT_SEAT_KEYMAP_CHANGED

EAPI int ECORE_WL2_EVENT_SEAT_KEYMAP_CHANGED
Since
1.19

◆ ECORE_WL2_EVENT_SEAT_KEYBOARD_REPEAT_CHANGED

EAPI int ECORE_WL2_EVENT_SEAT_KEYBOARD_REPEAT_CHANGED
Since
1.20

◆ ECORE_WL2_EVENT_SEAT_SELECTION

EAPI int ECORE_WL2_EVENT_SEAT_SELECTION
Since
1.20

◆ ECORE_WL2_EVENT_OUTPUT_TRANSFORM

EAPI int ECORE_WL2_EVENT_OUTPUT_TRANSFORM
Since
1.20

◆ ECORE_WL2_EVENT_WINDOW_ROTATE

EAPI int ECORE_WL2_EVENT_WINDOW_ROTATE
Since
1.20

◆ ECORE_WL2_EVENT_AUX_HINT_ALLOWED

EAPI int ECORE_WL2_EVENT_AUX_HINT_ALLOWED
Since
1.20

◆ ECORE_WL2_EVENT_AUX_HINT_SUPPORTED

EAPI int ECORE_WL2_EVENT_AUX_HINT_SUPPORTED
Since
1.20

◆ ECORE_WL2_EVENT_AUX_MESSAGE

EAPI int ECORE_WL2_EVENT_AUX_MESSAGE
Since
1.20

◆ ECORE_WL2_EVENT_WINDOW_SHOW

EAPI int ECORE_WL2_EVENT_WINDOW_SHOW
Since
1.20

◆ ECORE_WL2_EVENT_WINDOW_HIDE

EAPI int ECORE_WL2_EVENT_WINDOW_HIDE
Since
1.20

◆ ECORE_WL2_EVENT_WINDOW_ACTIVATE

EAPI int ECORE_WL2_EVENT_WINDOW_ACTIVATE
Since
1.20

◆ ECORE_WL2_EVENT_WINDOW_DEACTIVATE

EAPI int ECORE_WL2_EVENT_WINDOW_DEACTIVATE
Since
1.20

◆ ECORE_WL2_EVENT_WINDOW_ICONIFY_STATE_CHANGE

EAPI int ECORE_WL2_EVENT_WINDOW_ICONIFY_STATE_CHANGE
Since
1.20

◆ ECORE_WL2_EVENT_WINDOW_OFFSCREEN

EAPI int ECORE_WL2_EVENT_WINDOW_OFFSCREEN
Since
1.21

◆ ECORE_WL2_EVENT_WINDOW_CREATE

EAPI int ECORE_WL2_EVENT_WINDOW_CREATE
Since
1.21

◆ ECORE_WL2_EVENT_WINDOW_DESTROY

EAPI int ECORE_WL2_EVENT_WINDOW_DESTROY
Since
1.25