Ecore functions for dealing with the Wayland display protocol. More...
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_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 void | ecore_wl2_display_terminate (Ecore_Wl2_Display *display) |
Terminate a Wayland display's main loop. 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_Iterator * | ecore_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_Iterator * | ecore_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_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_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_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 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 void | ecore_wl2_window_class_set (Ecore_Wl2_Window *window, const char *clas) |
Set 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_iconified_set (Ecore_Wl2_Window *window, Eina_Bool iconified) |
Iconify a 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_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_buffer_transform_set (Ecore_Wl2_Window *window, int transform) |
Set a buffer transform on a given window. 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_List * | ecore_wl2_window_aux_hints_supported_get (Ecore_Wl2_Window *window) |
Get list of supported auxiliary window hints. More... | |
EAPI void | ecore_wl2_window_aux_hint_add (Ecore_Wl2_Window *window, int id, const char *hint, const char *val) |
Add a supported auxiliary hint to a given window. More... | |
EAPI void | ecore_wl2_window_aux_hint_change (Ecore_Wl2_Window *window, int id, const char *val) |
Change an auxiliary hint on a given window. More... | |
EAPI void | ecore_wl2_window_aux_hint_del (Ecore_Wl2_Window *window, int id) |
Delete an auxiliary hint on a given window. 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 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 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 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_Stringshare * | ecore_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 Eo * | ecore_wl2_input_seat_device_get (const Ecore_Wl2_Input *input, const Ecore_Wl2_Window *window) |
Get the Evas_Device for the seat belonging to a window from 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 void | ecore_wl2_dnd_drag_types_set (Ecore_Wl2_Input *input, const char **types) |
Set the types which are supported by a possible drag and drop operation. More... | |
EAPI uint32_t | ecore_wl2_dnd_drag_start (Ecore_Wl2_Input *input, Ecore_Wl2_Window *window, Ecore_Wl2_Window *drag_window) |
Start a drag on the given input. More... | |
EAPI void | ecore_wl2_dnd_set_actions (Ecore_Wl2_Input *input) |
Call wl_data_source.set_actions on an existing source. More... | |
EAPI void | ecore_wl2_dnd_drag_end (Ecore_Wl2_Input *input) |
End a drag started by a call to ecore_wl2_dnd_drag_start. More... | |
EAPI Ecore_Wl2_Offer * | ecore_wl2_dnd_selection_get (Ecore_Wl2_Input *input) |
Get the offer which is currently resposible for the clipboard. More... | |
EAPI uint32_t | ecore_wl2_dnd_selection_set (Ecore_Wl2_Input *input, const char **types) |
Set the types which are available from this client Later the event ECORE_WL2_EVENT_DATA_SOURCE_SEND is emitted, where the caller of this api must write the data (encoded in the given mimetype) to the fd. More... | |
EAPI uint32_t | ecore_wl2_dnd_selection_clear (Ecore_Wl2_Input *input) |
Clear the selection currently setted on this input. More... | |
EAPI Ecore_Wl2_Subsurface * | ecore_wl2_subsurface_new (Ecore_Wl2_Window *window) |
Create and return a new subsurface. More... | |
EAPI void | ecore_wl2_subsurface_del (Ecore_Wl2_Subsurface *subsurface) |
Destroy the given subsurface, as well as the surface associated with it. More... | |
EAPI struct wl_surface * | ecore_wl2_subsurface_surface_get (Ecore_Wl2_Subsurface *subsurface) |
Get the wl_surface for this subsurface. More... | |
EAPI void | ecore_wl2_subsurface_position_set (Ecore_Wl2_Subsurface *subsurface, int x, int y) |
Set the position of this subsurface, relative to its parent surface. More... | |
EAPI void | ecore_wl2_subsurface_position_get (Ecore_Wl2_Subsurface *subsurface, int *x, int *y) |
Get the position of this subsurface, relative to its parent surface. More... | |
EAPI void | ecore_wl2_subsurface_place_above (Ecore_Wl2_Subsurface *subsurface, struct wl_surface *surface) |
Place subsurface on layer above a reference surface. More... | |
EAPI void | ecore_wl2_subsurface_place_below (Ecore_Wl2_Subsurface *subsurface, struct wl_surface *surface) |
Place subsurface on layer below a reference surface. More... | |
EAPI void | ecore_wl2_subsurface_sync_set (Ecore_Wl2_Subsurface *subsurface, Eina_Bool sync) |
Enables or disables sub-surface synchronization. More... | |
EAPI void | ecore_wl2_subsurface_opaque_region_set (Ecore_Wl2_Subsurface *subsurface, int x, int y, int w, int h) |
Set an opaque region for the given subsurface. 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 Ecore_Wl2_Drag_Action | ecore_wl2_offer_actions_get (Ecore_Wl2_Offer *offer) |
Get the actions available from the data source. More... | |
EAPI void | ecore_wl2_offer_actions_set (Ecore_Wl2_Offer *offer, Ecore_Wl2_Drag_Action actions, Ecore_Wl2_Drag_Action action) |
Set the actions which are supported by you. More... | |
EAPI Ecore_Wl2_Drag_Action | ecore_wl2_offer_action_get (Ecore_Wl2_Offer *offer) |
Get action which is set by either the data source or in the last call of actions_set. More... | |
EAPI Eina_Array * | ecore_wl2_offer_mimes_get (Ecore_Wl2_Offer *offer) |
Get the mime types which are given by the source. More... | |
EAPI void | ecore_wl2_offer_mimes_set (Ecore_Wl2_Offer *offer, Eina_Array *mimes) |
Set mimetypes you are accepting under this offer. More... | |
EAPI void | ecore_wl2_offer_accept (Ecore_Wl2_Offer *offer, const char *mime_type) |
Accept a single mime type for an offer. More... | |
EAPI void | ecore_wl2_offer_receive (Ecore_Wl2_Offer *offer, char *mime) |
Request the data from this offer. More... | |
EAPI void | ecore_wl2_offer_proxy_receive (Ecore_Wl2_Offer *offer, const char *mime, int fd) |
Request the data from this offer on an externally managed fd. More... | |
EAPI void | ecore_wl2_offer_proxy_receive_end (Ecore_Wl2_Offer *offer) |
End the use of a proxy received offer. More... | |
EAPI Eina_Bool | ecore_wl2_offer_supports_mime (Ecore_Wl2_Offer *offer, const char *mime) |
Check if the given offer supports the given mimetype. More... | |
EAPI void | ecore_wl2_offer_finish (Ecore_Wl2_Offer *offer) |
Mark this offer as finished This will call the dnd_finished event on the source of the sender. 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 Eina_Bool | ecore_wl2_window_pending_get (Ecore_Wl2_Window *window) |
Check if a wayland window's surface is in the pending state. 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_window_buffer_attach (Ecore_Wl2_Window *win, void *buffer, int x, int y, Eina_Bool implicit) |
Attach a buffer to a window. 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... | |
EAPI void | ecore_wl2_window_damage (Ecore_Wl2_Window *window, Eina_Rectangle *rects, unsigned int count) |
EAPI Eina_Bool | ecore_wl2_buffer_init (Ecore_Wl2_Display *ewd, Ecore_Wl2_Buffer_Type types) |
EAPI Ecore_Wl2_Buffer * | ecore_wl2_buffer_create (Ecore_Wl2_Display *ewd, int w, int h, Eina_Bool alpha) |
EAPI void | ecore_wl2_buffer_destroy (Ecore_Wl2_Buffer *b) |
EAPI struct wl_buffer * | ecore_wl2_buffer_wl_buffer_get (Ecore_Wl2_Buffer *buf) |
EAPI void * | ecore_wl2_buffer_map (Ecore_Wl2_Buffer *buf, int *w, int *h, int *stride) |
EAPI void | ecore_wl2_buffer_unmap (Ecore_Wl2_Buffer *buf) |
EAPI void | ecore_wl2_buffer_discard (Ecore_Wl2_Buffer *buf) |
EAPI void | ecore_wl2_buffer_lock (Ecore_Wl2_Buffer *b) |
EAPI void | ecore_wl2_buffer_unlock (Ecore_Wl2_Buffer *b) |
EAPI Eina_Bool | ecore_wl2_buffer_busy_get (Ecore_Wl2_Buffer *buffer) |
EAPI void | ecore_wl2_buffer_busy_set (Ecore_Wl2_Buffer *buffer) |
EAPI int | ecore_wl2_buffer_age_get (Ecore_Wl2_Buffer *buffer) |
EAPI void | ecore_wl2_buffer_age_set (Ecore_Wl2_Buffer *buffer, int age) |
EAPI void | ecore_wl2_buffer_age_inc (Ecore_Wl2_Buffer *buffer) |
EAPI Ecore_Wl2_Surface * | ecore_wl2_surface_create (Ecore_Wl2_Window *win, Eina_Bool alpha) |
EAPI void | ecore_wl2_surface_destroy (Ecore_Wl2_Surface *surface) |
EAPI void | ecore_wl2_surface_reconfigure (Ecore_Wl2_Surface *surface, int w, int h, uint32_t flags, Eina_Bool alpha) |
EAPI void * | ecore_wl2_surface_data_get (Ecore_Wl2_Surface *surface, int *w, int *h) |
EAPI int | ecore_wl2_surface_assign (Ecore_Wl2_Surface *surface) |
EAPI void | ecore_wl2_surface_post (Ecore_Wl2_Surface *surface, Eina_Rectangle *rects, unsigned int count) |
EAPI void | ecore_wl2_surface_flush (Ecore_Wl2_Surface *surface, Eina_Bool purge) |
EAPI void | ecore_wl2_window_surface_flush (Ecore_Wl2_Window *window, Eina_Bool purge) |
EAPI Ecore_Wl2_Buffer * | ecore_wl2_surface_buffer_create (Ecore_Wl2_Surface *surface) |
EAPI int | ecore_wl2_surface_manager_add (Ecore_Wl2_Surface_Interface *intf) |
EAPI void | ecore_wl2_surface_manager_del (Ecore_Wl2_Surface_Interface *intf) |
EAPI Ecore_Wl2_Window * | ecore_wl2_surface_window_get (Ecore_Wl2_Surface *surface) |
EAPI Eina_Bool | ecore_wl2_surface_alpha_get (Ecore_Wl2_Surface *surface) |
Ecore functions for dealing with the Wayland display protocol.
typedef struct _Ecore_Wl2_Surface_Interface Ecore_Wl2_Surface_Interface |
EAPI int ecore_wl2_window_preferred_rotation_get | ( | Ecore_Wl2_Window * | window | ) |
Get preferred rotation for a given window.
window | The window to get preferred rotation from |
References EINA_SAFETY_ON_NULL_RETURN_VAL.
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.
References EINA_TRUE.
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.
window | The window whose surface we want to commit |
flush | EINA_TRUE if we need to flush immediately. |
References EINA_SAFETY_ON_NULL_RETURN.
Referenced by ecore_wl2_window_hide().
Check if a wayland window's surface is in the pending state.
A surface is pending if it's been commit but we haven't received a frame callback for it yet. This mean's we're not ready to draw yet.
window | The window whose surface we want to check |
References EINA_FALSE, and EINA_SAFETY_ON_NULL_RETURN_VAL.
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.
window | The window to add a callback on |
cb | The callback |
data | User data to provide to the callback handler |
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
window | The window to add a callback on |
cb | The callback handle |
References EINA_INLIST_GET, eina_inlist_remove(), and EINA_SAFETY_ON_NULL_RETURN.
EAPI void ecore_wl2_window_buffer_attach | ( | Ecore_Wl2_Window * | win, |
void * | buffer, | ||
int | x, | ||
int | y, | ||
Eina_Bool | implicit | ||
) |
Attach a buffer to a window.
Note that the GL stack my attach buffers to a surface - we should call this function at that time (with a NULL buffer) to track whether a surface has a valid buffer. That is, call with implicit true and buffer NULL at the time of glSwapBuffers.
window | The target window |
buffer | The buffer to attach |
x | X offset from corner |
y | Y offset from corner |
implicit | True if an external library is doing the actual attaching |
References EINA_FALSE, EINA_SAFETY_ON_NULL_RETURN, and EINA_TRUE.
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.
display | The display to flush |
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().
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.
window | The window whose state we want to latch |
References EINA_SAFETY_ON_NULL_RETURN, EINA_SAFETY_ON_TRUE_RETURN, and EINA_TRUE.
EAPI int ECORE_WL2_EVENT_CONNECT |
Referenced by ecore_wl2_init(), and ecore_wl2_shutdown().
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 |
Referenced by ecore_wl2_dnd_drag_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 |
Referenced by ecore_wl2_offer_accept().
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 |