rofi 2.0.0
wayland-internal.h
Go to the documentation of this file.
1#ifndef ROFI_WAYLAND_INTERNAL_H
2#define ROFI_WAYLAND_INTERNAL_H
3
4#include <cairo.h>
5#include <glib.h>
6#include <libgwater-wayland.h>
7#include <nkutils-bindings.h>
8#include <wayland-client.h>
9#include <xkbcommon/xkbcommon.h>
10
11#include "wayland.h"
12
21
22typedef struct {
23 uint32_t button;
25 gint x, y;
26 gboolean pressed;
27 guint32 time;
29
30typedef struct {
31 gint x, y;
32 guint32 time;
34
36
37typedef struct {
38 void *offer;
40
41typedef struct {
42 GMainLoop *main_loop;
43 GWaterWaylandSource *main_loop_source;
44 struct wl_display *display;
45 struct wl_registry *registry;
47 struct wl_compositor *compositor;
48
49#ifdef HAVE_WAYLAND_CURSOR_SHAPE
50 struct wp_cursor_shape_manager_v1 *cursor_shape_manager;
51#endif
52
53 struct wl_data_device_manager *data_device_manager;
54 struct zwp_primary_selection_device_manager_v1
56
57 struct zwlr_layer_shell_v1 *layer_shell;
58
59 struct zwp_keyboard_shortcuts_inhibit_manager_v1 *kb_shortcuts_inhibit_manager;
60
61 struct wl_shm *shm;
63 struct {
66 struct wl_cursor_theme *theme;
67 struct wl_cursor *cursor;
68 struct wl_cursor_image *image;
69 struct wl_surface *surface;
70 struct wl_callback *frame_cb;
71 guint scale;
72 } cursor;
73 GHashTable *seats;
74 GHashTable *seats_by_name;
76 GHashTable *outputs;
77 struct wl_surface *surface;
78 struct zwlr_layer_surface_v1 *wlr_surface;
79 struct wl_callback *frame_cb;
80 size_t scales[3];
81 int32_t scale;
82 NkBindingsSeat *bindings_seat;
83
85
86 uint32_t layer_width;
87 uint32_t layer_height;
89
92 uint32_t global_name;
93 struct wl_seat *seat;
94 gchar *name;
95 struct {
96 xkb_keycode_t key;
97 GSource *source;
98 int32_t rate;
99 int32_t delay;
101 uint32_t serial;
103 struct wl_keyboard *keyboard;
104 struct wl_pointer *pointer;
105
106#ifdef HAVE_WAYLAND_CURSOR_SHAPE
107 struct wp_cursor_shape_device_v1 *cursor_shape_device;
108#endif
109 struct wl_data_device *data_device;
110 struct zwp_primary_selection_device_v1 *primary_selection_device;
111
112 enum wl_pointer_axis_source axis_source;
115 struct {
119 struct {
120 double vertical;
123};
124
125/* Supported interface versions */
126#define WL_COMPOSITOR_INTERFACE_VERSION 3
127#define WL_SHM_INTERFACE_VERSION 1
128#define WL_SEAT_INTERFACE_MIN_VERSION 5
129#define WL_SEAT_INTERFACE_MAX_VERSION 8
130#define WL_OUTPUT_INTERFACE_MIN_VERSION 2
131#define WL_OUTPUT_INTERFACE_MAX_VERSION 4
132#define WL_LAYER_SHELL_INTERFACE_VERSION 1
133#define WL_KEYBOARD_SHORTCUTS_INHIBITOR_INTERFACE_VERSION 1
134
135extern wayland_stuff *wayland;
136
137#endif
RofiCursorType
Definition rofi-types.h:147
wayland_stuff * context
widget_motion_event motion
struct zwp_primary_selection_device_v1 * primary_selection_device
struct wl_data_device * data_device
uint32_t pointer_serial
enum wl_pointer_axis_source axis_source
xkb_keycode_t key
struct _wayland_seat::@343227211112372105005173305133123375230264171047 repeat
struct _wayland_seat::@313335272333100233226263113233303355264201246036 wheel_continuous
struct wl_pointer * pointer
struct wl_keyboard * keyboard
struct _wayland_seat::@304276237306320361362211175300054320337005042177 wheel
widget_button_event button
struct wl_seat * seat
RofiCursorType type
struct wl_cursor * cursor
GHashTable * seats
uint32_t layer_height
uint32_t global_names[_WAYLAND_GLOBAL_SIZE]
GMainLoop * main_loop
struct zwp_primary_selection_device_manager_v1 * primary_selection_device_manager
struct zwp_keyboard_shortcuts_inhibit_manager_v1 * kb_shortcuts_inhibit_manager
struct zwlr_layer_surface_v1 * wlr_surface
struct wl_display * display
struct zwlr_layer_shell_v1 * layer_shell
wayland_seat * last_seat
struct wl_compositor * compositor
struct wl_shm * shm
NkBindingsSeat * bindings_seat
struct wl_registry * registry
struct wl_callback * frame_cb
struct wl_data_device_manager * data_device_manager
struct wl_cursor_theme * theme
struct wl_cursor_image * image
GHashTable * outputs
clipboard_data clipboards[2]
struct wl_surface * surface
GWaterWaylandSource * main_loop_source
GHashTable * seats_by_name
struct _wayland_seat wayland_seat
wayland_global_name
@ WAYLAND_GLOBAL_CURSOR_SHAPE
@ WAYLAND_GLOBAL_LAYER_SHELL
@ WAYLAND_GLOBAL_KEYBOARD_SHORTCUTS_INHIBITOR
@ WAYLAND_GLOBAL_COMPOSITOR
@ WAYLAND_GLOBAL_SHM
@ _WAYLAND_GLOBAL_SIZE
wayland_stuff * wayland
Definition display.c:114