Ecore_Wayland.h File Reference

Ecore functions for dealing with the Wayland window system. More...

Data Structures

struct  _Ecore_Wl_Global
 
struct  _Ecore_Wl_Event_Mouse_In
 
struct  _Ecore_Wl_Event_Mouse_Out
 
struct  _Ecore_Wl_Event_Focus_In
 
struct  _Ecore_Wl_Event_Focus_Out
 
struct  _Ecore_Wl_Event_Window_Configure
 
struct  _Ecore_Wl_Event_Dnd_Enter
 
struct  _Ecore_Wl_Event_Dnd_Position
 
struct  _Ecore_Wl_Event_Dnd_Leave
 
struct  _Ecore_Wl_Event_Dnd_Drop
 
struct  _Ecore_Wl_Event_Dnd_End
 
struct  _Ecore_Wl_Event_Data_Source_Send
 
struct  _Ecore_Wl_Event_Selection_Data_Ready
 
struct  _Ecore_Wl_Event_Interfaces_Bound
 

Typedefs

typedef struct _Ecore_Wl_Display Ecore_Wl_Display
 
typedef struct _Ecore_Wl_Output Ecore_Wl_Output
 FIXME: move to private.
 
typedef struct _Ecore_Wl_Input Ecore_Wl_Input
 
typedef struct _Ecore_Wl_Global Ecore_Wl_Global
 
typedef struct _Ecore_Wl_Subsurf Ecore_Wl_Subsurf
 
typedef struct _Ecore_Wl_Window Ecore_Wl_Window
 
typedef struct _Ecore_Wl_Dnd Ecore_Wl_Dnd
 
typedef struct _Ecore_Wl_Dnd_Source Ecore_Wl_Dnd_Source
 
typedef struct _Ecore_Wl_Dnd_Target Ecore_Wl_Dnd_Target
 
typedef struct _Ecore_Wl_Event_Mouse_In Ecore_Wl_Event_Mouse_In
 
typedef struct _Ecore_Wl_Event_Mouse_Out Ecore_Wl_Event_Mouse_Out
 
typedef struct _Ecore_Wl_Event_Focus_In Ecore_Wl_Event_Focus_In
 
typedef struct _Ecore_Wl_Event_Focus_Out Ecore_Wl_Event_Focus_Out
 
typedef struct _Ecore_Wl_Event_Window_Configure Ecore_Wl_Event_Window_Configure
 
typedef struct _Ecore_Wl_Event_Dnd_Enter Ecore_Wl_Event_Dnd_Enter
 
typedef struct _Ecore_Wl_Event_Dnd_Position Ecore_Wl_Event_Dnd_Position
 
typedef struct _Ecore_Wl_Event_Dnd_Leave Ecore_Wl_Event_Dnd_Leave
 
typedef struct _Ecore_Wl_Event_Dnd_Drop Ecore_Wl_Event_Dnd_Drop
 
typedef struct _Ecore_Wl_Event_Dnd_End Ecore_Wl_Event_Dnd_End
 
typedef struct _Ecore_Wl_Event_Data_Source_Send Ecore_Wl_Event_Data_Source_Send
 
typedef struct _Ecore_Wl_Event_Selection_Data_Ready Ecore_Wl_Event_Selection_Data_Ready
 
typedef struct _Ecore_Wl_Event_Interfaces_Bound Ecore_Wl_Event_Interfaces_Bound
 
typedef enum _Ecore_Wl_Window_Type Ecore_Wl_Window_Type
 
typedef enum _Ecore_Wl_Window_Buffer_Type Ecore_Wl_Window_Buffer_Type
 

Enumerations

enum  _Ecore_Wl_Window_Type {
  ECORE_WL_WINDOW_TYPE_NONE,
  ECORE_WL_WINDOW_TYPE_TOPLEVEL,
  ECORE_WL_WINDOW_TYPE_FULLSCREEN,
  ECORE_WL_WINDOW_TYPE_MAXIMIZED,
  ECORE_WL_WINDOW_TYPE_TRANSIENT,
  ECORE_WL_WINDOW_TYPE_MENU,
  ECORE_WL_WINDOW_TYPE_DND,
  ECORE_WL_WINDOW_TYPE_CUSTOM
}
 
enum  _Ecore_Wl_Window_Buffer_Type {
  ECORE_WL_WINDOW_BUFFER_TYPE_EGL_WINDOW,
  ECORE_WL_WINDOW_BUFFER_TYPE_EGL_IMAGE,
  ECORE_WL_WINDOW_BUFFER_TYPE_SHM
}
 

Functions

EAPI int ecore_wl_init (const char *name)
 Initialize the Wayland display connection to the given display. More...
 
EAPI int ecore_wl_shutdown (void)
 Shuts down the Ecore Wayland Library. More...
 
EAPI void ecore_wl_flush (void)
 Sends all Wayland commands to the Wayland Display. More...
 
EAPI void ecore_wl_sync (void)
 Flushes the command buffer and waits until all requests have been processed by the server. More...
 
EAPI struct wl_shm * ecore_wl_shm_get (void)
 Retrieves the Wayland Shm Interface used for the current Wayland connection. More...
 
EAPI struct wl_display * ecore_wl_display_get (void)
 Retrieves the Wayland Display Interface used for the current Wayland connection. More...
 
EAPI void ecore_wl_screen_size_get (int *w, int *h)
 Retrieves the Compositor interface. More...
 
EAPI void ecore_wl_pointer_xy_get (int *x, int *y)
 
EAPI int ecore_wl_dpi_get (void)
 Return the screen DPI. More...
 
EAPI void ecore_wl_display_iterate (void)
 
EAPI Eina_Bool ecore_wl_animator_source_set (Ecore_Animator_Source source)
 
EAPI struct wl_cursor * ecore_wl_cursor_get (const char *cursor_name)
 Retrieves the requested cursor from the cursor theme. More...
 
EAPI Ecore_Wl_Input * ecore_wl_input_get (void)
 
EAPI void ecore_wl_input_grab (Ecore_Wl_Input *input, Ecore_Wl_Window *win, unsigned int button)
 
EAPI void ecore_wl_input_ungrab (Ecore_Wl_Input *input)
 
EAPI void ecore_wl_input_pointer_set (Ecore_Wl_Input *input, struct wl_surface *surface, int hot_x, int hot_y)
 
EAPI void ecore_wl_input_cursor_from_name_set (Ecore_Wl_Input *input, const char *cursor_name)
 
EAPI void ecore_wl_input_cursor_default_restore (Ecore_Wl_Input *input)
 
EAPI struct wl_seat * ecore_wl_input_seat_get (Ecore_Wl_Input *input)
 
EAPI Eina_Inlistecore_wl_outputs_get (void)
 
EAPI Eina_Inlistecore_wl_globals_get (void)
 Retrieves the Wayland Globals Interface list used for the current Wayland connection. More...
 
EAPI struct wl_registry * ecore_wl_registry_get (void)
 Retrieves the Wayland Registry used for the current Wayland connection. More...
 
EAPI Ecore_Wl_Windowecore_wl_window_new (Ecore_Wl_Window *parent, int x, int y, int w, int h, int buffer_type)
 Creates a new window. More...
 
EAPI void ecore_wl_window_free (Ecore_Wl_Window *win)
 Deletes the given window. More...
 
EAPI void ecore_wl_window_move (Ecore_Wl_Window *win, int x, int y)
 Signals for Wayland to initiate a window move. More...
 
EAPI void ecore_wl_window_resize (Ecore_Wl_Window *win, int w, int h, int location)
 Signals for Wayland to initiate a window resize. More...
 
EAPI void ecore_wl_window_damage (Ecore_Wl_Window *win, int x, int y, int w, int h)
 
EAPI void ecore_wl_window_buffer_attach (Ecore_Wl_Window *win, struct wl_buffer *buffer, int x, int y)
 
EAPI void ecore_wl_window_commit (Ecore_Wl_Window *win)
 
EAPI void ecore_wl_window_show (Ecore_Wl_Window *win)
 Shows a window. More...
 
EAPI void ecore_wl_window_hide (Ecore_Wl_Window *win)
 Hides a window. More...
 
EAPI void ecore_wl_window_raise (Ecore_Wl_Window *win)
 Raises a window. More...
 
EAPI void ecore_wl_window_maximized_set (Ecore_Wl_Window *win, Eina_Bool maximized)
 
EAPI Eina_Bool ecore_wl_window_maximized_get (Ecore_Wl_Window *win)
 
EAPI void ecore_wl_window_fullscreen_set (Ecore_Wl_Window *win, Eina_Bool fullscreen)
 
EAPI Eina_Bool ecore_wl_window_fullscreen_get (Ecore_Wl_Window *win)
 
EAPI void ecore_wl_window_transparent_set (Ecore_Wl_Window *win, Eina_Bool transparent)
 
EAPI Eina_Bool ecore_wl_window_transparent_get (Ecore_Wl_Window *win)
 
EAPI void ecore_wl_window_update_size (Ecore_Wl_Window *win, int w, int h)
 
EAPI void ecore_wl_window_update_location (Ecore_Wl_Window *win, int x, int y)
 
EAPI struct wl_surface * ecore_wl_window_surface_get (Ecore_Wl_Window *win)
 
EAPI struct wl_shell_surface * ecore_wl_window_shell_surface_get (Ecore_Wl_Window *win)
 
EAPI Ecore_Wl_Windowecore_wl_window_find (unsigned int id)
 
EAPI void ecore_wl_window_type_set (Ecore_Wl_Window *win, Ecore_Wl_Window_Type type)
 
EAPI void ecore_wl_window_pointer_set (Ecore_Wl_Window *win, struct wl_surface *surface, int hot_x, int hot_y)
 
EAPI void ecore_wl_window_cursor_from_name_set (Ecore_Wl_Window *win, const char *cursor_name)
 
EAPI void ecore_wl_window_cursor_default_restore (Ecore_Wl_Window *win)
 
EAPI void ecore_wl_window_parent_set (Ecore_Wl_Window *win, Ecore_Wl_Window *parent)
 
EAPI int ecore_wl_window_id_get (Ecore_Wl_Window *win)
 
EAPI void ecore_wl_window_title_set (Ecore_Wl_Window *win, const char *title)
 
EAPI void ecore_wl_window_class_name_set (Ecore_Wl_Window *win, const char *class_name)
 
EAPI int ecore_wl_window_surface_id_get (Ecore_Wl_Window *win)
 
EAPI Ecore_Wl_Input * ecore_wl_window_keyboard_get (Ecore_Wl_Window *win)
 
EAPI struct wl_surface * ecore_wl_window_surface_create (Ecore_Wl_Window *win)
 Returns a wl_surface with no association to any wl_shell_surface. More...
 
EAPI void ecore_wl_window_alpha_set (Ecore_Wl_Window *win, Eina_Bool sw_64)
 
EAPI Eina_Bool ecore_wl_window_alpha_get (Ecore_Wl_Window *win)
 
EAPI Ecore_Wl_Windowecore_wl_window_surface_find (struct wl_surface *surface)
 Returns the Ecore_Wl_Window from a wl_surface. More...
 
EAPI void ecore_wl_window_input_region_set (Ecore_Wl_Window *win, int x, int y, int w, int h)
 Set the input region of the Ecore_Wl_Window. More...
 
EAPI void ecore_wl_window_opaque_region_set (Ecore_Wl_Window *win, int x, int y, int w, int h)
 Set the opaque region of the Ecore_Wl_Window. More...
 
EAPI void ecore_wl_window_rotation_set (Ecore_Wl_Window *win, int rotation)
 Set the rotation of the Ecore_Wl_Window. More...
 
EAPI int ecore_wl_window_rotation_get (Ecore_Wl_Window *win)
 Get the rotation of the Ecore_Wl_Window. More...
 
EINA_DEPRECATED EAPI Eina_Bool ecore_wl_dnd_set_selection (Ecore_Wl_Dnd *dnd, const char **types_offered)
 
EINA_DEPRECATED EAPI Eina_Bool ecore_wl_dnd_get_selection (Ecore_Wl_Dnd *dnd, const char *type)
 
EINA_DEPRECATED EAPI Ecore_Wl_Dndecore_wl_dnd_get (void)
 
EINA_DEPRECATED EAPI Eina_Bool ecore_wl_dnd_start_drag (Ecore_Wl_Dnd *dnd)
 
EINA_DEPRECATED EAPI Eina_Bool ecore_wl_dnd_selection_has_owner (Ecore_Wl_Dnd *dnd)
 
EAPI Eina_Bool ecore_wl_dnd_selection_set (Ecore_Wl_Input *input, const char **types_offered)
 
EAPI Eina_Bool ecore_wl_dnd_selection_get (Ecore_Wl_Input *input, const char *type)
 
EAPI Eina_Bool ecore_wl_dnd_selection_owner_has (Ecore_Wl_Input *input)
 
EAPI Eina_Bool ecore_wl_dnd_selection_clear (Ecore_Wl_Input *input)
 
EAPI void ecore_wl_dnd_drag_start (Ecore_Wl_Input *input, Ecore_Wl_Window *win, Ecore_Wl_Window *dragwin, int x, int y, int w, int h)
 
EAPI void ecore_wl_dnd_drag_end (Ecore_Wl_Input *input)
 
EAPI Eina_Bool ecore_wl_dnd_drag_get (Ecore_Wl_Input *input, const char *type)
 
EAPI void ecore_wl_dnd_drag_types_set (Ecore_Wl_Input *input, const char **types_offered)
 
EAPI struct wl_array * ecore_wl_dnd_drag_types_get (Ecore_Wl_Input *input)
 
EAPI void ecore_wl_server_mode_set (Eina_Bool on)
 
EAPI Ecore_Wl_Subsurfecore_wl_subsurf_create (Ecore_Wl_Window *win)
 Create and return a new subsurface. More...
 
EAPI void ecore_wl_subsurf_del (Ecore_Wl_Subsurf *ess)
 Destroy the given subsurface, as well as the surface associated with it. More...
 
EAPI struct wl_surface * ecore_wl_subsurf_surface_get (Ecore_Wl_Subsurf *ess)
 Return the wl_surface associated with this subsurface. More...
 
EAPI void ecore_wl_subsurf_position_set (Ecore_Wl_Subsurf *ess, int x, int y)
 Set the position of this subsurface, relative to its parent surface. More...
 
EAPI void ecore_wl_subsurf_position_get (Ecore_Wl_Subsurf *ess, int *x, int *y)
 Get the position of this subsurface, relative to its parent surface. More...
 
EAPI void ecore_wl_subsurf_place_above (Ecore_Wl_Subsurf *ess, struct wl_surface *surface)
 
EAPI void ecore_wl_subsurf_place_below (Ecore_Wl_Subsurf *ess, struct wl_surface *surface)
 
EAPI void ecore_wl_subsurf_sync_set (Ecore_Wl_Subsurf *ess, Eina_Bool val)
 
EAPI void ecore_wl_subsurf_opaque_region_set (Ecore_Wl_Subsurf *ess, int x, int y, int w, int h)
 Set an opaque region for the given subsurface. More...
 

Variables

EAPI int ECORE_WL_EVENT_MOUSE_IN
 
EAPI int ECORE_WL_EVENT_MOUSE_OUT
 
EAPI int ECORE_WL_EVENT_FOCUS_IN
 
EAPI int ECORE_WL_EVENT_FOCUS_OUT
 
EAPI int ECORE_WL_EVENT_WINDOW_CONFIGURE
 
EAPI int ECORE_WL_EVENT_DND_ENTER
 
EAPI int ECORE_WL_EVENT_DND_POSITION
 
EAPI int ECORE_WL_EVENT_DND_LEAVE
 
EAPI int ECORE_WL_EVENT_DND_DROP
 
EAPI int ECORE_WL_EVENT_DND_OFFER
 
EAPI int ECORE_WL_EVENT_DND_END
 
EAPI int ECORE_WL_EVENT_DATA_SOURCE_TARGET
 
EAPI int ECORE_WL_EVENT_DATA_SOURCE_SEND
 
EAPI int ECORE_WL_EVENT_DATA_SOURCE_CANCELLED
 
EAPI int ECORE_WL_EVENT_SELECTION_DATA_READY
 
EAPI int ECORE_WL_EVENT_INTERFACES_BOUND
 

Detailed Description

Ecore functions for dealing with the Wayland window system.

Typedef Documentation

typedef struct _Ecore_Wl_Subsurf Ecore_Wl_Subsurf
Since
1.7.6
typedef struct _Ecore_Wl_Window Ecore_Wl_Window
Since
1.8
typedef struct _Ecore_Wl_Dnd Ecore_Wl_Dnd
Deprecated:
Do Not Use
Since
1.7

Function Documentation

EAPI int ecore_wl_dpi_get ( void  )

Return the screen DPI.

This is a simplistic call to get DPI. It does not account for differing DPI in the x and y axes nor does it account for multihead or xinerama and xrandr where different parts of the screen may have different DPI etc.

Returns
the general screen DPI (dots/pixels per inch).
Since
1.2

References EAPI, ecore_animator_custom_source_tick_begin_callback_set(), ecore_animator_custom_source_tick_end_callback_set(), ECORE_ANIMATOR_SOURCE_CUSTOM, ecore_animator_source_set(), ECORE_ANIMATOR_SOURCE_TIMER, and EINA_TRUE.

EAPI struct wl_cursor* ecore_wl_cursor_get ( const char *  cursor_name)

Retrieves the requested cursor from the cursor theme.

Parameters
cursor_nameThe desired cursor name to be looked up in the theme
Returns
the cursor or NULL if the cursor cannot be found
Since
1.2

References EAPI.

EINA_DEPRECATED EAPI Eina_Bool ecore_wl_dnd_set_selection ( Ecore_Wl_Dnd dnd,
const char **  types_offered 
)
Deprecated:
use ecore_wl_dnd_selection_set
Since
1.7
Deprecated:
use ecore_wl_dnd_selection_set
Since
1.7

References EAPI, ecore_wl_dnd_selection_set(), and EINA_DEPRECATED.

EINA_DEPRECATED EAPI Eina_Bool ecore_wl_dnd_get_selection ( Ecore_Wl_Dnd dnd,
const char *  type 
)
Deprecated:
use ecore_wl_dnd_selection_get
Since
1.7
Deprecated:
use ecore_wl_dnd_selection_get
Since
1.7

References EAPI, ecore_wl_dnd_selection_get(), and EINA_DEPRECATED.

EINA_DEPRECATED EAPI Ecore_Wl_Dnd* ecore_wl_dnd_get ( void  )
Deprecated:
Do Not Use
Since
1.7
Deprecated:
Do Not Use
Since
1.7

References EAPI, and EINA_DEPRECATED.

EINA_DEPRECATED EAPI Eina_Bool ecore_wl_dnd_start_drag ( Ecore_Wl_Dnd dnd)
Deprecated:
use ecore_wl_dnd_drag_start
Since
1.7
Deprecated:
use ecore_wl_dnd_drag_start
Since
1.7

References EAPI, EINA_DEPRECATED, and EINA_FALSE.

EINA_DEPRECATED EAPI Eina_Bool ecore_wl_dnd_selection_has_owner ( Ecore_Wl_Dnd dnd)
Deprecated:
use ecore_wl_dnd_selection_owner_has
Since
1.7
Deprecated:
use ecore_wl_dnd_selection_owner_has
Since
1.7

References EAPI, and ecore_wl_dnd_selection_owner_has().

Variable Documentation

EAPI int ECORE_WL_EVENT_DND_END
Since
1.8

Referenced by ecore_wl_dnd_drag_end(), and ecore_wl_init().

EAPI int ECORE_WL_EVENT_DATA_SOURCE_TARGET
Since
1.8

Referenced by ecore_wl_init().

EAPI int ECORE_WL_EVENT_DATA_SOURCE_SEND
Since
1.7

Referenced by ecore_wl_dnd_drag_types_get(), and ecore_wl_init().

EAPI int ECORE_WL_EVENT_DATA_SOURCE_CANCELLED
Since
1.7

Referenced by ecore_wl_init().

EAPI int ECORE_WL_EVENT_SELECTION_DATA_READY
Since
1.7

Referenced by ecore_wl_dnd_drag_types_get(), and ecore_wl_init().

EAPI int ECORE_WL_EVENT_INTERFACES_BOUND
Since
1.7

Referenced by ecore_wl_init(), and ecore_wl_server_mode_set().