RetroArch
Classes | Macros | Typedefs | Functions | Variables
wayland_ctx.c File Reference
#include <sys/poll.h>
#include <unistd.h>
#include <wayland-client.h>
#include <wayland-cursor.h>
#include <string/stdstring.h>
#include "../common/wayland_common.h"
#include "../../frontend/frontend_driver.h"
#include "../../input/input_driver.h"
#include "../../input/input_keymaps.h"
#include "../common/wayland/idle-inhibit-unstable-v1.h"
#include "../common/wayland/xdg-shell-unstable-v6.h"
#include "../common/wayland/xdg-shell.h"
#include "../common/wayland/xdg-decoration-unstable-v1.h"
Include dependency graph for wayland_ctx.c:

Classes

struct  touch_pos
 
struct  gfx_ctx_wayland_data
 

Macros

#define EGL_OPENGL_ES3_BIT_KHR   0x0040
 
#define EGL_PLATFORM_WAYLAND_KHR   0x31D8
 
#define DEFAULT_WINDOWED_WIDTH   640
 
#define DEFAULT_WINDOWED_HEIGHT   480
 

Typedefs

typedef struct touch_pos touch_pos_t
 
typedef struct gfx_ctx_wayland_data gfx_ctx_wayland_data_t
 

Functions

static void keyboard_handle_keymap (void *data, struct wl_keyboard *keyboard, uint32_t format, int fd, uint32_t size)
 
static void keyboard_handle_enter (void *data, struct wl_keyboard *keyboard, uint32_t serial, struct wl_surface *surface, struct wl_array *keys)
 
static void keyboard_handle_leave (void *data, struct wl_keyboard *keyboard, uint32_t serial, struct wl_surface *surface)
 
static void keyboard_handle_key (void *data, struct wl_keyboard *keyboard, uint32_t serial, uint32_t time, uint32_t key, uint32_t state)
 
static void keyboard_handle_modifiers (void *data, struct wl_keyboard *keyboard, uint32_t serial, uint32_t modsDepressed, uint32_t modsLatched, uint32_t modsLocked, uint32_t group)
 
void keyboard_handle_repeat_info (void *data, struct wl_keyboard *wl_keyboard, int32_t rate, int32_t delay)
 
static void gfx_ctx_wl_show_mouse (void *data, bool state)
 
static void pointer_handle_enter (void *data, struct wl_pointer *pointer, uint32_t serial, struct wl_surface *surface, wl_fixed_t sx, wl_fixed_t sy)
 
static void pointer_handle_leave (void *data, struct wl_pointer *pointer, uint32_t serial, struct wl_surface *surface)
 
static void pointer_handle_motion (void *data, struct wl_pointer *pointer, uint32_t time, wl_fixed_t sx, wl_fixed_t sy)
 
static void pointer_handle_button (void *data, struct wl_pointer *wl_pointer, uint32_t serial, uint32_t time, uint32_t button, uint32_t state)
 
static void pointer_handle_axis (void *data, struct wl_pointer *wl_pointer, uint32_t time, uint32_t axis, wl_fixed_t value)
 
static void touch_handle_down (void *data, struct wl_touch *wl_touch, uint32_t serial, uint32_t time, struct wl_surface *surface, int32_t id, wl_fixed_t x, wl_fixed_t y)
 
static void reorder_touches (void)
 
static void touch_handle_up (void *data, struct wl_touch *wl_touch, uint32_t serial, uint32_t time, int32_t id)
 
static void touch_handle_motion (void *data, struct wl_touch *wl_touch, uint32_t time, int32_t id, wl_fixed_t x, wl_fixed_t y)
 
static void touch_handle_frame (void *data, struct wl_touch *wl_touch)
 
static void touch_handle_cancel (void *data, struct wl_touch *wl_touch)
 
static void seat_handle_capabilities (void *data, struct wl_seat *seat, unsigned caps)
 
static void seat_handle_name (void *data, struct wl_seat *seat, const char *name)
 
bool wayland_context_gettouchpos (void *data, unsigned id, unsigned *touch_x, unsigned *touch_y)
 
static void xdg_shell_ping (void *data, struct xdg_wm_base *shell, uint32_t serial)
 
static void handle_surface_config (void *data, struct xdg_surface *surface, uint32_t serial)
 
static void handle_toplevel_config (void *data, struct xdg_toplevel *toplevel, int32_t width, int32_t height, struct wl_array *states)
 
static void handle_toplevel_close (void *data, struct xdg_toplevel *xdg_toplevel)
 
static void zxdg_shell_ping (void *data, struct zxdg_shell_v6 *shell, uint32_t serial)
 
static void handle_zxdg_surface_config (void *data, struct zxdg_surface_v6 *surface, uint32_t serial)
 
static void handle_zxdg_toplevel_config (void *data, struct zxdg_toplevel_v6 *toplevel, int32_t width, int32_t height, struct wl_array *states)
 
static void handle_zxdg_toplevel_close (void *data, struct zxdg_toplevel_v6 *zxdg_toplevel)
 
static void shell_surface_handle_ping (void *data, struct wl_shell_surface *shell_surface, uint32_t serial)
 
static void shell_surface_handle_configure (void *data, struct wl_shell_surface *shell_surface, uint32_t edges, int32_t width, int32_t height)
 
static void shell_surface_handle_popup_done (void *data, struct wl_shell_surface *shell_surface)
 
static void display_handle_geometry (void *data, struct wl_output *output, int x, int y, int physical_width, int physical_height, int subpixel, const char *make, const char *model, int transform)
 
static void display_handle_mode (void *data, struct wl_output *output, uint32_t flags, int width, int height, int refresh)
 
static void display_handle_done (void *data, struct wl_output *output)
 
static void display_handle_scale (void *data, struct wl_output *output, int32_t factor)
 
static void registry_handle_global (void *data, struct wl_registry *reg, uint32_t id, const char *interface, uint32_t version)
 
static void registry_handle_global_remove (void *data, struct wl_registry *registry, uint32_t id)
 
static void gfx_ctx_wl_get_video_size (void *data, unsigned *width, unsigned *height)
 
static void gfx_ctx_wl_destroy_resources (gfx_ctx_wayland_data_t *wl)
 
void flush_wayland_fd (void *data)
 
static void gfx_ctx_wl_check_window (void *data, bool *quit, bool *resize, unsigned *width, unsigned *height, bool is_shutdown)
 
static bool gfx_ctx_wl_set_resize (void *data, unsigned width, unsigned height)
 
static void gfx_ctx_wl_update_title (void *data, void *data2)
 
static bool gfx_ctx_wl_get_metrics (void *data, enum display_metric_types type, float *value)
 
static voidgfx_ctx_wl_init (video_frame_info_t *video_info, void *video_driver)
 
static void gfx_ctx_wl_destroy (void *data)
 
static void gfx_ctx_wl_set_swap_interval (void *data, int swap_interval)
 
static bool gfx_ctx_wl_set_video_mode (void *data, video_frame_info_t *video_info, unsigned width, unsigned height, bool fullscreen)
 
bool input_wl_init (void *data, const char *joypad_name)
 
static void gfx_ctx_wl_input_driver (void *data, const char *joypad_name, const input_driver_t **input, void **input_data)
 
static bool gfx_ctx_wl_has_focus (void *data)
 
static bool gfx_ctx_wl_suppress_screensaver (void *data, bool state)
 
static bool gfx_ctx_wl_has_windowed (void *data)
 
static enum gfx_ctx_api gfx_ctx_wl_get_api (void *data)
 
static bool gfx_ctx_wl_bind_api (void *video_driver, enum gfx_ctx_api api, unsigned major, unsigned minor)
 
static void gfx_ctx_wl_swap_buffers (void *data, void *data2)
 
static gfx_ctx_proc_t gfx_ctx_wl_get_proc_address (const char *symbol)
 
static void gfx_ctx_wl_bind_hw_render (void *data, bool enable)
 
static uint32_t gfx_ctx_wl_get_flags (void *data)
 
static void gfx_ctx_wl_set_flags (void *data, uint32_t flags)
 
static float gfx_ctx_wl_get_refresh_rate (void *data)
 

Variables

static int num_active_touches
 
static touch_pos_t active_touch_positions [MAX_TOUCHES]
 
static enum gfx_ctx_api wl_api = GFX_CTX_NONE
 
static const struct wl_keyboard_listener keyboard_listener
 
static const struct wl_pointer_listener pointer_listener
 
static const struct wl_touch_listener touch_listener
 
static const struct wl_seat_listener seat_listener
 
static const struct xdg_wm_base_listener xdg_shell_listener
 
static const struct xdg_surface_listener xdg_surface_listener
 
static const struct xdg_toplevel_listener xdg_toplevel_listener
 
static const struct zxdg_shell_v6_listener zxdg_shell_v6_listener
 
static const struct zxdg_surface_v6_listener zxdg_surface_v6_listener
 
static const struct zxdg_toplevel_v6_listener zxdg_toplevel_v6_listener
 
static const struct wl_shell_surface_listener shell_surface_listener
 
static const struct wl_output_listener output_listener
 
static const struct wl_registry_listener registry_listener
 
const gfx_ctx_driver_t gfx_ctx_wayland
 

Macro Definition Documentation

◆ DEFAULT_WINDOWED_HEIGHT

#define DEFAULT_WINDOWED_HEIGHT   480

◆ DEFAULT_WINDOWED_WIDTH

#define DEFAULT_WINDOWED_WIDTH   640

◆ EGL_OPENGL_ES3_BIT_KHR

#define EGL_OPENGL_ES3_BIT_KHR   0x0040

◆ EGL_PLATFORM_WAYLAND_KHR

#define EGL_PLATFORM_WAYLAND_KHR   0x31D8

Typedef Documentation

◆ gfx_ctx_wayland_data_t

◆ touch_pos_t

typedef struct touch_pos touch_pos_t

Function Documentation

◆ display_handle_done()

static void display_handle_done ( void data,
struct wl_output *  output 
)
static
Here is the call graph for this function:

◆ display_handle_geometry()

static void display_handle_geometry ( void data,
struct wl_output *  output,
int  x,
int  y,
int  physical_width,
int  physical_height,
int  subpixel,
const char *  make,
const char *  model,
int  transform 
)
static
Here is the call graph for this function:

◆ display_handle_mode()

static void display_handle_mode ( void data,
struct wl_output *  output,
uint32_t  flags,
int  width,
int  height,
int  refresh 
)
static
Here is the call graph for this function:

◆ display_handle_scale()

static void display_handle_scale ( void data,
struct wl_output *  output,
int32_t  factor 
)
static
Here is the call graph for this function:

◆ flush_wayland_fd()

void flush_wayland_fd ( void data)
Here is the call graph for this function:
Here is the caller graph for this function:

◆ gfx_ctx_wl_bind_api()

static bool gfx_ctx_wl_bind_api ( void video_driver,
enum gfx_ctx_api  api,
unsigned  major,
unsigned  minor 
)
static

◆ gfx_ctx_wl_bind_hw_render()

static void gfx_ctx_wl_bind_hw_render ( void data,
bool  enable 
)
static
Here is the call graph for this function:

◆ gfx_ctx_wl_check_window()

static void gfx_ctx_wl_check_window ( void data,
bool quit,
bool resize,
unsigned *  width,
unsigned *  height,
bool  is_shutdown 
)
static
Here is the call graph for this function:

◆ gfx_ctx_wl_destroy()

static void gfx_ctx_wl_destroy ( void data)
static
Here is the call graph for this function:
Here is the caller graph for this function:

◆ gfx_ctx_wl_destroy_resources()

static void gfx_ctx_wl_destroy_resources ( gfx_ctx_wayland_data_t wl)
static
Here is the call graph for this function:
Here is the caller graph for this function:

◆ gfx_ctx_wl_get_api()

static enum gfx_ctx_api gfx_ctx_wl_get_api ( void data)
static

◆ gfx_ctx_wl_get_flags()

static uint32_t gfx_ctx_wl_get_flags ( void data)
static

◆ gfx_ctx_wl_get_metrics()

static bool gfx_ctx_wl_get_metrics ( void data,
enum display_metric_types  type,
float *  value 
)
static

◆ gfx_ctx_wl_get_proc_address()

static gfx_ctx_proc_t gfx_ctx_wl_get_proc_address ( const char *  symbol)
static
Here is the call graph for this function:

◆ gfx_ctx_wl_get_refresh_rate()

static float gfx_ctx_wl_get_refresh_rate ( void data)
static

◆ gfx_ctx_wl_get_video_size()

static void gfx_ctx_wl_get_video_size ( void data,
unsigned *  width,
unsigned *  height 
)
static
Here is the caller graph for this function:

◆ gfx_ctx_wl_has_focus()

static bool gfx_ctx_wl_has_focus ( void data)
static
Here is the call graph for this function:

◆ gfx_ctx_wl_has_windowed()

static bool gfx_ctx_wl_has_windowed ( void data)
static
Here is the call graph for this function:

◆ gfx_ctx_wl_init()

static void* gfx_ctx_wl_init ( video_frame_info_t video_info,
void video_driver 
)
static
Here is the call graph for this function:

◆ gfx_ctx_wl_input_driver()

static void gfx_ctx_wl_input_driver ( void data,
const char *  joypad_name,
const input_driver_t **  input,
void **  input_data 
)
static
Here is the call graph for this function:

◆ gfx_ctx_wl_set_flags()

static void gfx_ctx_wl_set_flags ( void data,
uint32_t  flags 
)
static

◆ gfx_ctx_wl_set_resize()

static bool gfx_ctx_wl_set_resize ( void data,
unsigned  width,
unsigned  height 
)
static
Here is the call graph for this function:

◆ gfx_ctx_wl_set_swap_interval()

static void gfx_ctx_wl_set_swap_interval ( void data,
int  swap_interval 
)
static
Here is the call graph for this function:

◆ gfx_ctx_wl_set_video_mode()

static bool gfx_ctx_wl_set_video_mode ( void data,
video_frame_info_t video_info,
unsigned  width,
unsigned  height,
bool  fullscreen 
)
static
Here is the call graph for this function:

◆ gfx_ctx_wl_show_mouse()

static void gfx_ctx_wl_show_mouse ( void data,
bool  state 
)
static
Here is the caller graph for this function:

◆ gfx_ctx_wl_suppress_screensaver()

static bool gfx_ctx_wl_suppress_screensaver ( void data,
bool  state 
)
static
Here is the call graph for this function:

◆ gfx_ctx_wl_swap_buffers()

static void gfx_ctx_wl_swap_buffers ( void data,
void data2 
)
static
Here is the call graph for this function:

◆ gfx_ctx_wl_update_title()

static void gfx_ctx_wl_update_title ( void data,
void data2 
)
static
Here is the call graph for this function:

◆ handle_surface_config()

static void handle_surface_config ( void data,
struct xdg_surface *  surface,
uint32_t  serial 
)
static

◆ handle_toplevel_close()

static void handle_toplevel_close ( void data,
struct xdg_toplevel *  xdg_toplevel 
)
static

◆ handle_toplevel_config()

static void handle_toplevel_config ( void data,
struct xdg_toplevel *  toplevel,
int32_t  width,
int32_t  height,
struct wl_array *  states 
)
static

◆ handle_zxdg_surface_config()

static void handle_zxdg_surface_config ( void data,
struct zxdg_surface_v6 *  surface,
uint32_t  serial 
)
static

◆ handle_zxdg_toplevel_close()

static void handle_zxdg_toplevel_close ( void data,
struct zxdg_toplevel_v6 *  zxdg_toplevel 
)
static

◆ handle_zxdg_toplevel_config()

static void handle_zxdg_toplevel_config ( void data,
struct zxdg_toplevel_v6 *  toplevel,
int32_t  width,
int32_t  height,
struct wl_array *  states 
)
static

◆ input_wl_init()

bool input_wl_init ( void data,
const char *  joypad_name 
)
Here is the call graph for this function:
Here is the caller graph for this function:

◆ keyboard_handle_enter()

static void keyboard_handle_enter ( void data,
struct wl_keyboard *  keyboard,
uint32_t  serial,
struct wl_surface *  surface,
struct wl_array *  keys 
)
static

◆ keyboard_handle_key()

static void keyboard_handle_key ( void data,
struct wl_keyboard *  keyboard,
uint32_t  serial,
uint32_t  time,
uint32_t  key,
uint32_t  state 
)
static
Here is the call graph for this function:

◆ keyboard_handle_keymap()

static void keyboard_handle_keymap ( void data,
struct wl_keyboard *  keyboard,
uint32_t  format,
int  fd,
uint32_t  size 
)
static
Here is the call graph for this function:

◆ keyboard_handle_leave()

static void keyboard_handle_leave ( void data,
struct wl_keyboard *  keyboard,
uint32_t  serial,
struct wl_surface *  surface 
)
static

◆ keyboard_handle_modifiers()

static void keyboard_handle_modifiers ( void data,
struct wl_keyboard *  keyboard,
uint32_t  serial,
uint32_t  modsDepressed,
uint32_t  modsLatched,
uint32_t  modsLocked,
uint32_t  group 
)
static
Here is the call graph for this function:

◆ keyboard_handle_repeat_info()

void keyboard_handle_repeat_info ( void data,
struct wl_keyboard *  wl_keyboard,
int32_t  rate,
int32_t  delay 
)
Here is the call graph for this function:

◆ pointer_handle_axis()

static void pointer_handle_axis ( void data,
struct wl_pointer *  wl_pointer,
uint32_t  time,
uint32_t  axis,
wl_fixed_t  value 
)
static
Here is the call graph for this function:

◆ pointer_handle_button()

static void pointer_handle_button ( void data,
struct wl_pointer *  wl_pointer,
uint32_t  serial,
uint32_t  time,
uint32_t  button,
uint32_t  state 
)
static
Here is the call graph for this function:

◆ pointer_handle_enter()

static void pointer_handle_enter ( void data,
struct wl_pointer *  pointer,
uint32_t  serial,
struct wl_surface *  surface,
wl_fixed_t  sx,
wl_fixed_t  sy 
)
static
Here is the call graph for this function:

◆ pointer_handle_leave()

static void pointer_handle_leave ( void data,
struct wl_pointer *  pointer,
uint32_t  serial,
struct wl_surface *  surface 
)
static
Here is the call graph for this function:

◆ pointer_handle_motion()

static void pointer_handle_motion ( void data,
struct wl_pointer *  pointer,
uint32_t  time,
wl_fixed_t  sx,
wl_fixed_t  sy 
)
static

◆ registry_handle_global()

static void registry_handle_global ( void data,
struct wl_registry *  reg,
uint32_t  id,
const char *  interface,
uint32_t  version 
)
static
Here is the call graph for this function:

◆ registry_handle_global_remove()

static void registry_handle_global_remove ( void data,
struct wl_registry *  registry,
uint32_t  id 
)
static
Here is the call graph for this function:

◆ reorder_touches()

static void reorder_touches ( void  )
static
Here is the caller graph for this function:

◆ seat_handle_capabilities()

static void seat_handle_capabilities ( void data,
struct wl_seat *  seat,
unsigned  caps 
)
static

◆ seat_handle_name()

static void seat_handle_name ( void data,
struct wl_seat *  seat,
const char *  name 
)
static
Here is the call graph for this function:

◆ shell_surface_handle_configure()

static void shell_surface_handle_configure ( void data,
struct wl_shell_surface *  shell_surface,
uint32_t  edges,
int32_t  width,
int32_t  height 
)
static
Here is the call graph for this function:

◆ shell_surface_handle_ping()

static void shell_surface_handle_ping ( void data,
struct wl_shell_surface *  shell_surface,
uint32_t  serial 
)
static
Here is the call graph for this function:

◆ shell_surface_handle_popup_done()

static void shell_surface_handle_popup_done ( void data,
struct wl_shell_surface *  shell_surface 
)
static
Here is the call graph for this function:

◆ touch_handle_cancel()

static void touch_handle_cancel ( void data,
struct wl_touch *  wl_touch 
)
static

◆ touch_handle_down()

static void touch_handle_down ( void data,
struct wl_touch *  wl_touch,
uint32_t  serial,
uint32_t  time,
struct wl_surface *  surface,
int32_t  id,
wl_fixed_t  x,
wl_fixed_t  y 
)
static

◆ touch_handle_frame()

static void touch_handle_frame ( void data,
struct wl_touch *  wl_touch 
)
static

◆ touch_handle_motion()

static void touch_handle_motion ( void data,
struct wl_touch *  wl_touch,
uint32_t  time,
int32_t  id,
wl_fixed_t  x,
wl_fixed_t  y 
)
static

◆ touch_handle_up()

static void touch_handle_up ( void data,
struct wl_touch *  wl_touch,
uint32_t  serial,
uint32_t  time,
int32_t  id 
)
static
Here is the call graph for this function:

◆ wayland_context_gettouchpos()

bool wayland_context_gettouchpos ( void data,
unsigned  id,
unsigned *  touch_x,
unsigned *  touch_y 
)
Here is the caller graph for this function:

◆ xdg_shell_ping()

static void xdg_shell_ping ( void data,
struct xdg_wm_base *  shell,
uint32_t  serial 
)
static

◆ zxdg_shell_ping()

static void zxdg_shell_ping ( void data,
struct zxdg_shell_v6 *  shell,
uint32_t  serial 
)
static

Variable Documentation

◆ active_touch_positions

touch_pos_t active_touch_positions[MAX_TOUCHES]
static

◆ gfx_ctx_wayland

const gfx_ctx_driver_t gfx_ctx_wayland

◆ keyboard_listener

const struct wl_keyboard_listener keyboard_listener
static
Initial value:
= {
}
static void keyboard_handle_keymap(void *data, struct wl_keyboard *keyboard, uint32_t format, int fd, uint32_t size)
Definition: wayland_ctx.c:153
static void keyboard_handle_modifiers(void *data, struct wl_keyboard *keyboard, uint32_t serial, uint32_t modsDepressed, uint32_t modsLatched, uint32_t modsLocked, uint32_t group)
Definition: wayland_ctx.c:227
void keyboard_handle_repeat_info(void *data, struct wl_keyboard *wl_keyboard, int32_t rate, int32_t delay)
Definition: wayland_ctx.c:248
static void keyboard_handle_key(void *data, struct wl_keyboard *keyboard, uint32_t serial, uint32_t time, uint32_t key, uint32_t state)
Definition: wayland_ctx.c:194
static void keyboard_handle_enter(void *data, struct wl_keyboard *keyboard, uint32_t serial, struct wl_surface *surface, struct wl_array *keys)
Definition: wayland_ctx.c:175
static void keyboard_handle_leave(void *data, struct wl_keyboard *keyboard, uint32_t serial, struct wl_surface *surface)
Definition: wayland_ctx.c:185

◆ num_active_touches

int num_active_touches
static

◆ output_listener

const struct wl_output_listener output_listener
static
Initial value:
= {
}
static void display_handle_geometry(void *data, struct wl_output *output, int x, int y, int physical_width, int physical_height, int subpixel, const char *make, const char *model, int transform)
Definition: wayland_ctx.c:744
static void display_handle_done(void *data, struct wl_output *output)
Definition: wayland_ctx.c:791
static void display_handle_scale(void *data, struct wl_output *output, int32_t factor)
Definition: wayland_ctx.c:798
static void display_handle_mode(void *data, struct wl_output *output, uint32_t flags, int width, int height, int refresh)
Definition: wayland_ctx.c:770

◆ pointer_listener

const struct wl_pointer_listener pointer_listener
static
Initial value:
= {
}
static void pointer_handle_button(void *data, struct wl_pointer *wl_pointer, uint32_t serial, uint32_t time, uint32_t button, uint32_t state)
Definition: wayland_ctx.c:316
static void pointer_handle_motion(void *data, struct wl_pointer *pointer, uint32_t time, wl_fixed_t sx, wl_fixed_t sy)
Definition: wayland_ctx.c:305
static void pointer_handle_leave(void *data, struct wl_pointer *pointer, uint32_t serial, struct wl_surface *surface)
Definition: wayland_ctx.c:293
static void pointer_handle_axis(void *data, struct wl_pointer *wl_pointer, uint32_t time, uint32_t axis, wl_fixed_t value)
Definition: wayland_ctx.c:358
static void pointer_handle_enter(void *data, struct wl_pointer *pointer, uint32_t serial, struct wl_surface *surface, wl_fixed_t sx, wl_fixed_t sy)
Definition: wayland_ctx.c:271

◆ registry_listener

const struct wl_registry_listener registry_listener
static
Initial value:
= {
}
static void registry_handle_global(void *data, struct wl_registry *reg, uint32_t id, const char *interface, uint32_t version)
Definition: wayland_ctx.c:816
static void registry_handle_global_remove(void *data, struct wl_registry *registry, uint32_t id)
Definition: wayland_ctx.c:858

◆ seat_listener

const struct wl_seat_listener seat_listener
static
Initial value:
= {
}
static void seat_handle_name(void *data, struct wl_seat *seat, const char *name)
Definition: wayland_ctx.c:550
static void seat_handle_capabilities(void *data, struct wl_seat *seat, unsigned caps)
Definition: wayland_ctx.c:512

◆ shell_surface_listener

const struct wl_shell_surface_listener shell_surface_listener
static
Initial value:
= {
}
static void shell_surface_handle_popup_done(void *data, struct wl_shell_surface *shell_surface)
Definition: wayland_ctx.c:731
static void shell_surface_handle_configure(void *data, struct wl_shell_surface *shell_surface, uint32_t edges, int32_t width, int32_t height)
Definition: wayland_ctx.c:715
static void shell_surface_handle_ping(void *data, struct wl_shell_surface *shell_surface, uint32_t serial)
Definition: wayland_ctx.c:707

◆ touch_listener

const struct wl_touch_listener touch_listener
static
Initial value:
= {
}
static void touch_handle_up(void *data, struct wl_touch *wl_touch, uint32_t serial, uint32_t time, int32_t id)
Definition: wayland_ctx.c:440
static void touch_handle_frame(void *data, struct wl_touch *wl_touch)
Definition: wayland_ctx.c:481
static void touch_handle_cancel(void *data, struct wl_touch *wl_touch)
Definition: wayland_ctx.c:486
static void touch_handle_motion(void *data, struct wl_touch *wl_touch, uint32_t time, int32_t id, wl_fixed_t x, wl_fixed_t y)
Definition: wayland_ctx.c:462
static void touch_handle_down(void *data, struct wl_touch *wl_touch, uint32_t serial, uint32_t time, struct wl_surface *surface, int32_t id, wl_fixed_t x, wl_fixed_t y)
Definition: wayland_ctx.c:381

◆ wl_api

enum gfx_ctx_api wl_api = GFX_CTX_NONE
static

◆ xdg_shell_listener

const struct xdg_wm_base_listener xdg_shell_listener
static
Initial value:
= {
}
static void xdg_shell_ping(void *data, struct xdg_wm_base *shell, uint32_t serial)
Definition: wayland_ctx.c:579

◆ xdg_surface_listener

const struct xdg_surface_listener xdg_surface_listener
static
Initial value:
= {
}
static void handle_surface_config(void *data, struct xdg_surface *surface, uint32_t serial)
Definition: wayland_ctx.c:588

◆ xdg_toplevel_listener

const struct xdg_toplevel_listener xdg_toplevel_listener
static
Initial value:
= {
}
static void handle_toplevel_close(void *data, struct xdg_toplevel *xdg_toplevel)
Definition: wayland_ctx.c:632
static void handle_toplevel_config(void *data, struct xdg_toplevel *toplevel, int32_t width, int32_t height, struct wl_array *states)
Definition: wayland_ctx.c:598

◆ zxdg_shell_v6_listener

const struct zxdg_shell_v6_listener zxdg_shell_v6_listener
static
Initial value:
= {
}
static void zxdg_shell_ping(void *data, struct zxdg_shell_v6 *shell, uint32_t serial)
Definition: wayland_ctx.c:643

◆ zxdg_surface_v6_listener

const struct zxdg_surface_v6_listener zxdg_surface_v6_listener
static
Initial value:
= {
}
static void handle_zxdg_surface_config(void *data, struct zxdg_surface_v6 *surface, uint32_t serial)
Definition: wayland_ctx.c:652

◆ zxdg_toplevel_v6_listener

const struct zxdg_toplevel_v6_listener zxdg_toplevel_v6_listener
static
Initial value:
= {
}
static void handle_zxdg_toplevel_config(void *data, struct zxdg_toplevel_v6 *toplevel, int32_t width, int32_t height, struct wl_array *states)
Definition: wayland_ctx.c:662
static void handle_zxdg_toplevel_close(void *data, struct zxdg_toplevel_v6 *zxdg_toplevel)
Definition: wayland_ctx.c:696