Ecore_Wayland.h File Reference

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

Data Structures

struct  _Ecore_Wl_Display
 
struct  _Ecore_Wl_Output
 
struct  _Ecore_Wl_Input
 
struct  _Ecore_Wl_Window
 
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_Data_Source_Send
 
struct  _Ecore_Wl_Event_Selection_Data_Ready
 
struct  _Ecore_Wl_Event_Interfaces_Bound
 

Typedefs

typedef enum _Ecore_Wl_Window_Type Ecore_Wl_Window_Type
 
typedef enum
_Ecore_Wl_Window_Buffer_Type 
Ecore_Wl_Window_Buffer_Type
 
typedef struct _Ecore_Wl_Display Ecore_Wl_Display
 
typedef struct _Ecore_Wl_Output Ecore_Wl_Output
 
typedef struct _Ecore_Wl_Input Ecore_Wl_Input
 
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_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
 

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_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

int ecore_wl_init (const char *name)
 Initialize the Wayland display connection to the given display.
 
int ecore_wl_shutdown (void)
 Shuts down the Ecore Wayland Library.
 
void ecore_wl_flush (void)
 Sends all Wayland commands to the Wayland Display.
 
void ecore_wl_sync (void)
 Flushes the command buffer and waits until all requests have been processed by the server.
 
struct wl_shm * ecore_wl_shm_get (void)
 Retrieves the Wayland Shm Interface used for the current Wayland connection.
 
struct wl_display * ecore_wl_display_get (void)
 Retrieves the Wayland Display Interface used for the current Wayland connection.
 
void ecore_wl_screen_size_get (int *w, int *h)
 Retrieves the size of the current screen.
 
void ecore_wl_pointer_xy_get (int *x, int *y)
 
int ecore_wl_dpi_get (void)
 Return the screen DPI.
 
void ecore_wl_display_iterate (void)
 
struct wl_cursor * ecore_wl_cursor_get (const char *cursor_name)
 Retrieves the requested cursor from the cursor theme.
 
void ecore_wl_input_grab (Ecore_Wl_Input *input, Ecore_Wl_Window *win, unsigned int button)
 
void ecore_wl_input_ungrab (Ecore_Wl_Input *input)
 
void ecore_wl_input_pointer_set (Ecore_Wl_Input *input, struct wl_surface *surface, int hot_x, int hot_y)
 
void ecore_wl_input_cursor_from_name_set (Ecore_Wl_Input *input, const char *cursor_name)
 
void ecore_wl_input_cursor_default_restore (Ecore_Wl_Input *input)
 
struct wl_list ecore_wl_outputs_get (void)
 
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.
 
void ecore_wl_window_free (Ecore_Wl_Window *win)
 Deletes the given window.
 
void ecore_wl_window_move (Ecore_Wl_Window *win, int x, int y)
 Signals for Wayland to initiate a window move.
 
void ecore_wl_window_resize (Ecore_Wl_Window *win, int w, int h, int location)
 Signals for Wayland to initiate a window resize.
 
void ecore_wl_window_damage (Ecore_Wl_Window *win, int x, int y, int w, int h)
 
void ecore_wl_window_buffer_attach (Ecore_Wl_Window *win, struct wl_buffer *buffer, int x, int y)
 
void ecore_wl_window_show (Ecore_Wl_Window *win)
 Shows a window.
 
void ecore_wl_window_hide (Ecore_Wl_Window *win)
 Hides a window.
 
void ecore_wl_window_raise (Ecore_Wl_Window *win)
 Raises a window.
 
void ecore_wl_window_maximized_set (Ecore_Wl_Window *win, Eina_Bool maximized)
 
void ecore_wl_window_fullscreen_set (Ecore_Wl_Window *win, Eina_Bool fullscreen)
 
void ecore_wl_window_transparent_set (Ecore_Wl_Window *win, Eina_Bool transparent)
 
void ecore_wl_window_update_size (Ecore_Wl_Window *win, int w, int h)
 
void ecore_wl_window_update_location (Ecore_Wl_Window *win, int x, int y)
 
struct wl_surface * ecore_wl_window_surface_get (Ecore_Wl_Window *win)
 
struct wl_shell_surface * ecore_wl_window_shell_surface_get (Ecore_Wl_Window *win)
 
Ecore_Wl_Windowecore_wl_window_find (unsigned int id)
 
void ecore_wl_window_type_set (Ecore_Wl_Window *win, Ecore_Wl_Window_Type type)
 
void ecore_wl_window_pointer_set (Ecore_Wl_Window *win, struct wl_surface *surface, int hot_x, int hot_y)
 
void ecore_wl_window_cursor_from_name_set (Ecore_Wl_Window *win, const char *cursor_name)
 
void ecore_wl_window_cursor_default_restore (Ecore_Wl_Window *win)
 
void ecore_wl_window_parent_set (Ecore_Wl_Window *win, Ecore_Wl_Window *parent)
 
Eina_Bool ecore_wl_dnd_set_selection (Ecore_Wl_Dnd *dnd, const char **types_offered)
 
Eina_Bool ecore_wl_dnd_get_selection (Ecore_Wl_Dnd *dnd, const char *type)
 
Ecore_Wl_Dndecore_wl_dnd_get ()
 
Eina_Bool ecore_wl_dnd_start_drag ()
 
Eina_Bool ecore_wl_dnd_selection_has_owner (Ecore_Wl_Dnd *dnd)
 

Variables

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

Detailed Description

Ecore functions for dealing with the Wayland window system.

Ecore_Wl provides a wrapper and convenience functions for using the Wayland window system. Function groups for this part of the library include the following:

Typedef Documentation

Since
1.7

Function Documentation

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 ecore_wl_dpi_get(), and _Eina_Rectangle::w.

Referenced by ecore_wl_dpi_get().

struct wl_cursor* ecore_wl_cursor_get ( const char *  cursor_name)
read

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 ecore_wl_cursor_get().

Referenced by ecore_wl_cursor_get().

Eina_Bool ecore_wl_dnd_set_selection ( Ecore_Wl_Dnd dnd,
const char **  types_offered 
)
Since
1.7

References ecore_wl_dnd_set_selection(), and EINA_TRUE.

Referenced by ecore_wl_dnd_set_selection().

Variable Documentation

int ECORE_WL_EVENT_DATA_SOURCE_SEND
Since
1.7

Referenced by ecore_wl_init().

int ECORE_WL_EVENT_DATA_SOURCE_CANCELLED
Since
1.7

Referenced by ecore_wl_init().

int ECORE_WL_EVENT_SELECTION_DATA_READY
Since
1.7

Referenced by ecore_wl_init().

int ECORE_WL_EVENT_INTERFACES_BOUND
Since
1.7

Referenced by ecore_wl_init().