i mean, there are too many changes to even comment it
This commit is contained in:
@@ -1,9 +0,0 @@
|
||||
#pragma once
|
||||
|
||||
void absinthe_toplevel_map(struct wl_listener *listener, void *data);
|
||||
void absinthe_toplevel_unmap(struct wl_listener *listener, void *data);
|
||||
void absinthe_toplevel_destroy(struct wl_listener *listener, void *data);
|
||||
void absinthe_toplevel_request_move(struct wl_listener *listener, void *data);
|
||||
void absinthe_toplevel_request_resize(struct wl_listener *listener, void *data);
|
||||
void absinthe_toplevel_request_maximize(struct wl_listener *listener, void *data);
|
||||
void absinthe_toplevel_request_fullscreen(struct wl_listener *listener, void *data);
|
||||
@@ -1,16 +0,0 @@
|
||||
#pragma once
|
||||
|
||||
#include "types.h"
|
||||
|
||||
struct absinthe_toplevel *absinthe_toplevel_at(struct absinthe_server *server, double lx, double ly,
|
||||
struct wlr_surface **surface, double *sx, double *sy);
|
||||
|
||||
bool absinthe_toplevel_is_unmanaged(struct absinthe_toplevel *toplevel);
|
||||
|
||||
void absinthe_toplevel_update_geometry(struct absinthe_toplevel *toplevel);
|
||||
void absinthe_toplevel_update_borders_geometry(struct absinthe_toplevel *toplevel);
|
||||
|
||||
void absinthe_toplevel_set_position(struct absinthe_toplevel *toplevel, int32_t x, int32_t y);
|
||||
void absinthe_toplevel_set_size(struct absinthe_toplevel *toplevel, int32_t width, int32_t height);
|
||||
void absinthe_toplevel_set_fullscreen(struct absinthe_toplevel *toplevel, bool fullscreen);
|
||||
void absinthe_toplevel_set_border_color(struct absinthe_toplevel *toplevel, const float color[4]);
|
||||
+14
-12
@@ -1,17 +1,19 @@
|
||||
#pragma once
|
||||
#ifndef __CONFIG_H_
|
||||
#define __CONFIG_H_
|
||||
|
||||
#define ABSINTHE_CURSOR_MOD WLR_MODIFIER_ALT
|
||||
#define ABSINTHE_CURSOR_MOVE_BUTTON BTN_LEFT
|
||||
#define ABSINTHE_CURSOR_RESIZE_BUTTON BTN_RIGHT
|
||||
#define CURSOR_MOD WLR_MODIFIER_ALT
|
||||
#define CURSOR_MOVE_BUTTON BTN_LEFT
|
||||
#define CURSOR_RESIZE_BUTTON BTN_RIGHT
|
||||
|
||||
#define ABSINTHE_TOPLEVEL_BORDER_WIDTH 1
|
||||
#define TOPLEVEL_BW 1
|
||||
|
||||
static const float focused_border_color[4] = {0.64, 0.75, 0.55, 1.0};
|
||||
static const float urgent_border_color[4] = {0.84, 0.47, 0.5, 1.0};
|
||||
static const float unfocused_border_color[4] = {0.39, 0.42, 0.46, 1.0};
|
||||
static const float focused_bc[4] = { 0.64, 0.75, 0.55, 1.0 };
|
||||
static const float urgent_bc[4] = { 0.84, 0.47, 0.5, 1.0 };
|
||||
static const float unfocused_bc[4] = { 0.39, 0.42, 0.46, 1.0 };
|
||||
|
||||
#define ABSINTHE_MAIN_STACK_SIZE 1;
|
||||
#define ABSINTHE_MAIN_STACK_WIDTH 0.5;
|
||||
#define MSTACK_SIZE 1
|
||||
#define MSTACK_WIDTH 0.5
|
||||
|
||||
#define ABSINTHE_OUTPUT_GAP 0
|
||||
#define ABSINTHE_LAYOUT_GAP 0
|
||||
#define OUTPUT_GAP 0
|
||||
#define LAYOUT_GAP 0
|
||||
#endif
|
||||
|
||||
+4
-1
@@ -1,4 +1,5 @@
|
||||
#pragma once
|
||||
#ifndef __FOCUS_H_
|
||||
#define __FOCUS_H_
|
||||
|
||||
#include "types.h"
|
||||
|
||||
@@ -8,3 +9,5 @@ struct absinthe_toplevel *focus_get_topmost(struct absinthe_server *server);
|
||||
|
||||
void focus_next(struct absinthe_server *server);
|
||||
void focus_prev(struct absinthe_server *server);
|
||||
|
||||
#endif
|
||||
|
||||
@@ -1,3 +1,4 @@
|
||||
#pragma once
|
||||
#ifndef __KEYBINDS_CALLBACKS_H
|
||||
#define __KEYBINDS_CALLBACKS_H
|
||||
|
||||
void run_command();
|
||||
#endif
|
||||
|
||||
+7
-4
@@ -1,7 +1,10 @@
|
||||
#pragma once
|
||||
#ifndef __KEYBOARD_H_
|
||||
#define __KEYBOARD_H_
|
||||
|
||||
#include <wayland-server-core.h>
|
||||
|
||||
void keyboard_handle_modifiers(struct wl_listener *listener, void *data);
|
||||
void keyboard_handle_key(struct wl_listener *listener, void *data);
|
||||
void keyboard_handle_destroy(struct wl_listener *listener, void *data);
|
||||
void handle_modifiers(struct wl_listener *listener, void *data);
|
||||
void handle_key(struct wl_listener *listener, void *data);
|
||||
void handle_destroy(struct wl_listener *listener, void *data);
|
||||
|
||||
#endif
|
||||
|
||||
@@ -0,0 +1,11 @@
|
||||
#ifndef __LAYER_SURFACE_H_
|
||||
#define __LAYER_SURFACE_H_
|
||||
|
||||
#include <wayland-server-core.h>
|
||||
|
||||
void layer_surface_map(struct wl_listener *listener, void *data);
|
||||
void layer_surface_unmap(struct wl_listener *listener, void *data);
|
||||
void layer_surface_commit(struct wl_listener *listener, void *data);
|
||||
void layer_surface_destroy(struct wl_listener *listener, void *data);
|
||||
|
||||
#endif
|
||||
+4
-1
@@ -1,5 +1,8 @@
|
||||
#pragma once
|
||||
#ifndef __LAYOUT_H_
|
||||
#define __LAYOUT_H_
|
||||
|
||||
#include "types.h"
|
||||
|
||||
void layout_arrange(struct absinthe_output *output);
|
||||
|
||||
#endif
|
||||
|
||||
+5
-2
@@ -1,4 +1,5 @@
|
||||
#pragma once
|
||||
#ifndef __OUTPUT_H_
|
||||
#define __OUTPUT_H_
|
||||
|
||||
#include <wayland-server-core.h>
|
||||
|
||||
@@ -7,6 +8,8 @@
|
||||
void output_frame(struct wl_listener *listener, void *data);
|
||||
void output_request_state(struct wl_listener *listener, void *data);
|
||||
void output_destroy(struct wl_listener *listener, void *data);
|
||||
void outputs_update(struct wl_listener *listener, void *data);
|
||||
void output_layout_change(struct wl_listener *listener, void *data);
|
||||
|
||||
void update_focused_output(struct absinthe_server *server);
|
||||
|
||||
#endif
|
||||
|
||||
+7
-4
@@ -1,7 +1,10 @@
|
||||
#pragma once
|
||||
#ifndef __SEAT_H_
|
||||
#define __SEAT_H_
|
||||
|
||||
#include <wayland-server-core.h>
|
||||
|
||||
void seat_request_cursor(struct wl_listener *listener, void *data);
|
||||
void seat_pointer_focus_change(struct wl_listener *listener, void *data);
|
||||
void seat_request_set_selection(struct wl_listener *listener, void *data);
|
||||
void request_cursor(struct wl_listener *listener, void *data);
|
||||
void pointer_focus_change(struct wl_listener *listener, void *data);
|
||||
void request_set_selection(struct wl_listener *listener, void *data);
|
||||
|
||||
#endif
|
||||
|
||||
+18
-13
@@ -1,22 +1,27 @@
|
||||
#pragma once
|
||||
#ifndef __SERVER_H_
|
||||
#define __SERVER_H_
|
||||
|
||||
#include <wayland-server-core.h>
|
||||
|
||||
void server_new_output(struct wl_listener *listener, void *data);
|
||||
void new_output(struct wl_listener *listener, void *data);
|
||||
|
||||
void server_new_xdg_toplevel(struct wl_listener *listener, void *data);
|
||||
void server_new_xdg_popup(struct wl_listener *listener, void *data);
|
||||
void server_new_xdg_decoration(struct wl_listener *listener, void *data);
|
||||
void new_xdg_toplevel(struct wl_listener *listener, void *data);
|
||||
void new_xdg_popup(struct wl_listener *listener, void *data);
|
||||
void new_xdg_decoration(struct wl_listener *listener, void *data);
|
||||
|
||||
void new_layer_surface(struct wl_listener *listener, void *data);
|
||||
|
||||
#ifdef XWAYLAND
|
||||
void server_xwayland_ready(struct wl_listener *listener, void *data);
|
||||
void server_xwayland_new_surface(struct wl_listener *listener, void *data);
|
||||
void xwayland_ready(struct wl_listener *listener, void *data);
|
||||
void xwayland_new_surface(struct wl_listener *listener, void *data);
|
||||
#endif
|
||||
|
||||
void server_cursor_motion(struct wl_listener *listener, void *data);
|
||||
void server_cursor_motion_absolute(struct wl_listener *listener, void *data);
|
||||
void server_cursor_button(struct wl_listener *listener, void *data);
|
||||
void server_cursor_axis(struct wl_listener *listener, void *data);
|
||||
void server_cursor_frame(struct wl_listener *listener, void *data);
|
||||
void cursor_motion(struct wl_listener *listener, void *data);
|
||||
void cursor_motion_abs(struct wl_listener *listener, void *data);
|
||||
void cursor_button(struct wl_listener *listener, void *data);
|
||||
void cursor_axis(struct wl_listener *listener, void *data);
|
||||
void cursor_frame(struct wl_listener *listener, void *data);
|
||||
|
||||
void server_new_input(struct wl_listener *listener, void *data);
|
||||
void new_input(struct wl_listener *listener, void *data);
|
||||
|
||||
#endif
|
||||
|
||||
@@ -0,0 +1,14 @@
|
||||
#ifndef __TOPLEVLE_HANDLERS_H_
|
||||
#define __TOPLEVLE_HANDLERS_H_
|
||||
|
||||
#include <wayland-server-core.h>
|
||||
|
||||
void toplevel_map(struct wl_listener *listener, void *data);
|
||||
void toplevel_unmap(struct wl_listener *listener, void *data);
|
||||
void toplevel_destroy(struct wl_listener *listener, void *data);
|
||||
void toplevel_request_move(struct wl_listener *listener, void *data);
|
||||
void toplevel_request_resize(struct wl_listener *listener, void *data);
|
||||
void toplevel_request_maximize(struct wl_listener *listener, void *data);
|
||||
void toplevel_request_fullscreen(struct wl_listener *listener, void *data);
|
||||
|
||||
#endif
|
||||
@@ -0,0 +1,22 @@
|
||||
#ifndef __TOPLEVEL_H_
|
||||
#define __TOPLEVEL_H_
|
||||
|
||||
#include "types.h"
|
||||
|
||||
struct absinthe_toplevel *toplevel_at(struct absinthe_server *server, double lx,
|
||||
double ly, struct wlr_surface **surface, double *sx, double *sy);
|
||||
|
||||
bool toplevel_is_unmanaged(struct absinthe_toplevel *toplevel);
|
||||
|
||||
void toplevel_update_geom(struct absinthe_toplevel *toplevel);
|
||||
void toplevel_update_borders_geom(struct absinthe_toplevel *toplevel);
|
||||
|
||||
void toplevel_set_pos(struct absinthe_toplevel *toplevel, int32_t x, int32_t y);
|
||||
void toplevel_set_size(struct absinthe_toplevel *toplevel, int32_t width,
|
||||
int32_t height);
|
||||
void toplevel_set_fullscreen(struct absinthe_toplevel *toplevel,
|
||||
bool fullscreen);
|
||||
void toplevel_set_border_color(struct absinthe_toplevel *toplevel,
|
||||
const float color[4]);
|
||||
|
||||
#endif
|
||||
+87
-57
@@ -1,4 +1,5 @@
|
||||
#pragma once
|
||||
#ifndef __TYPES_H_
|
||||
#define __TYPES_H_
|
||||
|
||||
#include <linux/input-event-codes.h>
|
||||
#include <wayland-server-core.h>
|
||||
@@ -21,39 +22,43 @@
|
||||
#include <xcb/xcb_icccm.h>
|
||||
#endif
|
||||
|
||||
#include "config.h"
|
||||
#define MAX(A, B) (A) > (B) ? (A) : (B)
|
||||
#define MIN(A, B) (A) < (B) ? (A) : (B)
|
||||
#define LISTEN(L, C, E) \
|
||||
do { \
|
||||
(L).notify = (C); \
|
||||
wl_signal_add(&(E), &(L)); \
|
||||
} while (0);
|
||||
#define UNUSED(X) (void)(X)
|
||||
|
||||
#define UNUSED(x) (void)(x)
|
||||
|
||||
enum absinthe_cursor_mode {
|
||||
ABSINTHE_CURSOR_PASSTHROUGH,
|
||||
ABSINTHE_CURSOR_MOVE,
|
||||
ABSINTHE_CURSOR_RESIZE,
|
||||
enum {
|
||||
CURSOR_PASSTHROUGH,
|
||||
CURSOR_MOVE,
|
||||
CURSOR_RESIZE,
|
||||
};
|
||||
|
||||
enum absinthe_cursor_resize_corner {
|
||||
ABSINTHE_CURSOR_RESIZE_CORNER_TOP_LEFT,
|
||||
ABSINTHE_CURSOR_RESIZE_CORNER_TOP_RIGHT,
|
||||
ABSINTHE_CURSOR_RESIZE_CORNER_BOTTOM_LEFT,
|
||||
ABSINTHE_CURSOR_RESIZE_CORNER_BOTTOM_RIGHT,
|
||||
enum {
|
||||
TOP_LEFT,
|
||||
TOP_RIGHT,
|
||||
BOTTOM_LEFT,
|
||||
BOTTOM_RIGHT,
|
||||
};
|
||||
|
||||
enum absinthe_toplevel_type {
|
||||
ABSINTHE_TOPLEVEL_XDG,
|
||||
ABSINTHE_TOPLEVEL_LAYER_SHELL,
|
||||
ABSINTHE_TOPLEVEL_X11,
|
||||
enum {
|
||||
TOPLEVEL_XDG,
|
||||
TOPLEVEL_X11,
|
||||
};
|
||||
|
||||
enum absinthe_layers {
|
||||
ABSINTHE_LAYER_BACKGROUND,
|
||||
ABSINTHE_LAYER_BOTTOM,
|
||||
ABSINTHE_LAYER_TILE,
|
||||
ABSINTHE_LAYER_FLOAT,
|
||||
ABSINTHE_LAYER_TOP,
|
||||
ABSINTHE_LAYER_FULLSCREEN,
|
||||
ABSINTHE_LAYER_OVERLAY,
|
||||
ABSINTHE_LAYER_LOCK,
|
||||
ABSINTHE_LAYERS_COUNT,
|
||||
LAYER_BACKGROUND,
|
||||
LAYER_BOTTOM,
|
||||
LAYER_TILE,
|
||||
LAYER_FLOAT,
|
||||
LAYER_TOP,
|
||||
LAYER_FULLSCREEN,
|
||||
LAYER_OVERLAY,
|
||||
LAYER_LOCK,
|
||||
LAYERS_COUNT,
|
||||
};
|
||||
|
||||
struct absinthe_output;
|
||||
@@ -70,19 +75,23 @@ struct absinthe_server {
|
||||
struct wlr_xdg_shell *xdg_shell;
|
||||
struct wl_listener new_xdg_toplevel;
|
||||
struct wl_listener new_xdg_popup;
|
||||
struct wlr_xdg_decoration_manager_v1 *xdg_decoration_mgr;
|
||||
struct wl_listener new_xdg_decoration;
|
||||
struct wlr_xdg_decoration_manager_v1 *xdg_deco_mgr;
|
||||
struct wl_listener new_xdg_deco;
|
||||
|
||||
struct wlr_layer_shell *layer_shell;
|
||||
struct wl_listener new_layer_surface;
|
||||
struct wlr_scene_tree *layers[LAYERS_COUNT];
|
||||
|
||||
#ifdef XWAYLAND
|
||||
struct wlr_xwayland *xwayland;
|
||||
struct wl_listener xwayland_new_surface;
|
||||
struct wl_listener xwayland_ready;
|
||||
struct wl_listener xw_new_surface;
|
||||
struct wl_listener xw_ready;
|
||||
#endif
|
||||
|
||||
struct wlr_cursor *cursor;
|
||||
struct wlr_xcursor_manager *cursor_mgr;
|
||||
struct wl_listener cursor_motion;
|
||||
struct wl_listener cursor_motion_absolute;
|
||||
struct wl_listener cursor_motion_abs;
|
||||
struct wl_listener cursor_button;
|
||||
struct wl_listener cursor_axis;
|
||||
struct wl_listener cursor_frame;
|
||||
@@ -94,10 +103,10 @@ struct absinthe_server {
|
||||
struct wl_listener request_set_selection;
|
||||
struct wl_list keyboards;
|
||||
|
||||
enum absinthe_cursor_mode cursor_mode;
|
||||
struct wlr_box grabbed_geometry;
|
||||
int cursor_mode;
|
||||
int resize_corner;
|
||||
struct wlr_box grab_geom;
|
||||
int32_t grab_x, grab_y;
|
||||
enum absinthe_cursor_resize_corner cursor_resize_corner;
|
||||
|
||||
struct wl_list toplevels;
|
||||
struct wl_list focus_stack;
|
||||
@@ -107,49 +116,68 @@ struct absinthe_server {
|
||||
struct wl_list outputs;
|
||||
struct wl_listener new_output;
|
||||
struct wlr_output_layout *output_layout;
|
||||
struct wl_listener output_layout_change;
|
||||
struct wl_listener layout_change;
|
||||
struct wlr_output_manager_v1 *output_mgr;
|
||||
struct wl_listener output_mgr_apply;
|
||||
struct wl_listener output_mgr_test;
|
||||
struct wl_listener mgr_apply;
|
||||
struct wl_listener mgr_test;
|
||||
};
|
||||
|
||||
struct absinthe_output {
|
||||
struct wl_list link;
|
||||
struct absinthe_server *server;
|
||||
struct wlr_box geometry;
|
||||
struct wlr_output *wlr_output;
|
||||
|
||||
struct wlr_box geom;
|
||||
struct wlr_box usable_area;
|
||||
|
||||
struct wlr_output *wlr;
|
||||
struct wl_listener frame;
|
||||
struct wl_listener request_state;
|
||||
struct wl_listener destroy;
|
||||
|
||||
float main_stack_width;
|
||||
float main_stack_size;
|
||||
float mstack_width;
|
||||
float mstack_size;
|
||||
};
|
||||
|
||||
struct absinthe_layer_surface {
|
||||
struct absinthe_server *server;
|
||||
struct absinthe_output *output;
|
||||
|
||||
struct wlr_scene_tree *scene_tree;
|
||||
struct wlr_scene_tree *scene_layer;
|
||||
struct wlr_scene_tree *popups;
|
||||
|
||||
struct wlr_layer_surface_v1 *wlr;
|
||||
struct wl_listener map;
|
||||
struct wl_listener unmap;
|
||||
struct wl_listener commit;
|
||||
struct wl_listener destroy;
|
||||
};
|
||||
|
||||
struct absinthe_toplevel {
|
||||
enum absinthe_toplevel_type type;
|
||||
int type;
|
||||
|
||||
struct wl_list link;
|
||||
struct wl_list flink;
|
||||
struct absinthe_server *server;
|
||||
struct absinthe_output *output;
|
||||
|
||||
struct wlr_scene_tree *scene_tree;
|
||||
struct wlr_scene_tree *scene_surface;
|
||||
|
||||
int32_t border_width;
|
||||
int32_t bw;
|
||||
struct wlr_scene_rect *border[4];
|
||||
struct wlr_xdg_toplevel_decoration_v1 *decoration;
|
||||
struct wlr_xdg_toplevel_decoration_v1 *deco;
|
||||
|
||||
bool tiled, floating, fullscreen, maximized;
|
||||
bool urgent;
|
||||
uint32_t resizing;
|
||||
|
||||
struct wlr_box geometry;
|
||||
struct wlr_box prev_geometry;
|
||||
struct wlr_box geom;
|
||||
struct wlr_box prev_geom;
|
||||
|
||||
union {
|
||||
struct wlr_xdg_toplevel *xdg_toplevel;
|
||||
struct wlr_xwayland_surface *xwayland_surface;
|
||||
struct wlr_xdg_toplevel *xdg;
|
||||
struct wlr_xwayland_surface *xw;
|
||||
};
|
||||
struct wl_listener map;
|
||||
struct wl_listener unmap;
|
||||
@@ -159,20 +187,20 @@ struct absinthe_toplevel {
|
||||
struct wl_listener request_resize;
|
||||
struct wl_listener request_maximize;
|
||||
struct wl_listener request_fullscreen;
|
||||
struct wl_listener decoration_request_mode;
|
||||
struct wl_listener decoration_destroy;
|
||||
struct wl_listener deco_request_mode;
|
||||
struct wl_listener deco_destroy;
|
||||
|
||||
#ifdef XWAYLAND
|
||||
struct wl_listener xwayland_activate;
|
||||
struct wl_listener xwayland_associate;
|
||||
struct wl_listener xwayland_dissociate;
|
||||
struct wl_listener xwayland_configure;
|
||||
struct wl_listener xwayland_set_hints;
|
||||
struct wl_listener xw_activate;
|
||||
struct wl_listener xw_associate;
|
||||
struct wl_listener xw_dissociate;
|
||||
struct wl_listener xw_configure;
|
||||
struct wl_listener xw_set_hints;
|
||||
#endif
|
||||
};
|
||||
|
||||
struct absinthe_popup {
|
||||
struct wlr_xdg_popup *xdg_popup;
|
||||
struct wlr_xdg_popup *wlr;
|
||||
struct wl_listener commit;
|
||||
struct wl_listener destroy;
|
||||
};
|
||||
@@ -180,8 +208,10 @@ struct absinthe_popup {
|
||||
struct absinthe_keyboard {
|
||||
struct wl_list link;
|
||||
struct absinthe_server *server;
|
||||
struct wlr_keyboard *wlr_keyboard;
|
||||
struct wlr_keyboard *wlr;
|
||||
struct wl_listener modifiers;
|
||||
struct wl_listener key;
|
||||
struct wl_listener destroy;
|
||||
};
|
||||
|
||||
#endif /* __TYPES_H_ */
|
||||
|
||||
@@ -1,6 +1,9 @@
|
||||
#pragma once
|
||||
#ifndef __XDG_DECORATION_H_
|
||||
#define __XDG_DECORATION_H_
|
||||
|
||||
#include <wayland-server-core.h>
|
||||
|
||||
void xdg_decoration_request_mode(struct wl_listener *listener, void *data);
|
||||
void xdg_decoration_destroy(struct wl_listener *listener, void *data);
|
||||
void deco_request_mode(struct wl_listener *listener, void *data);
|
||||
void deco_destroy(struct wl_listener *listener, void *data);
|
||||
|
||||
#endif
|
||||
|
||||
+4
-1
@@ -1,6 +1,9 @@
|
||||
#pragma once
|
||||
#ifndef __XDG_POPUP_H_
|
||||
#define __XDG_POPUP_H_
|
||||
|
||||
#include <wayland-server-core.h>
|
||||
|
||||
void xdg_popup_commit(struct wl_listener *listener, void *data);
|
||||
void xdg_popup_destroy(struct wl_listener *listener, void *data);
|
||||
|
||||
#endif
|
||||
|
||||
@@ -1,5 +1,8 @@
|
||||
#pragma once
|
||||
#ifndef __XDG_TOPLEVEL_H_
|
||||
#define __XDG_TOPLEVEL_H_
|
||||
|
||||
#include <wayland-server-core.h>
|
||||
|
||||
void xdg_toplevel_commit(struct wl_listener *listener, void *data);
|
||||
void toplevel_commit(struct wl_listener *listener, void *data);
|
||||
|
||||
#endif
|
||||
|
||||
+5
-2
@@ -1,9 +1,12 @@
|
||||
#pragma once
|
||||
#ifndef __XWAYLAND_H_
|
||||
#define __XWAYLAND_H_
|
||||
|
||||
#include <wayland-server.h>
|
||||
#include <wayland-server-core.h>
|
||||
|
||||
void xwayland_activate(struct wl_listener *listener, void *data);
|
||||
void xwayland_associate(struct wl_listener *listener, void *data);
|
||||
void xwayland_dissociate(struct wl_listener *listener, void *data);
|
||||
void xwayland_configure(struct wl_listener *listener, void *data);
|
||||
void xwayland_set_hints(struct wl_listener *listener, void *data);
|
||||
|
||||
#endif
|
||||
|
||||
Reference in New Issue
Block a user