mirror of
https://github.com/hyprwm/wlroots-hyprland.git
synced 2024-11-02 03:45:58 +01:00
implement xdg toplevel stubs
This commit is contained in:
parent
c3f15ea284
commit
15885ab54a
2 changed files with 89 additions and 12 deletions
|
@ -1,11 +0,0 @@
|
||||||
#!/usr/bin/env bash
|
|
||||||
|
|
||||||
# TODO add me to the build system
|
|
||||||
|
|
||||||
set -e
|
|
||||||
|
|
||||||
rm -rf xdg-shell
|
|
||||||
mkdir -p xdg-shell
|
|
||||||
wayland-scanner code /usr/share/wayland-protocols/unstable/xdg-shell/xdg-shell-unstable-v6.xml xdg-shell/xdg-shell.c
|
|
||||||
wayland-scanner server-header /usr/share/wayland-protocols/unstable/xdg-shell/xdg-shell-unstable-v6.xml xdg-shell/xdg-shell.h
|
|
||||||
|
|
|
@ -5,6 +5,90 @@
|
||||||
#include "compositor.h"
|
#include "compositor.h"
|
||||||
#include "compositor/protocols/xdg-shell.h"
|
#include "compositor/protocols/xdg-shell.h"
|
||||||
|
|
||||||
|
static void xdg_toplevel_destroy(struct wl_client *client,
|
||||||
|
struct wl_resource *resource) {
|
||||||
|
wlr_log(L_DEBUG, "TODO: xdg toplevel destroy");
|
||||||
|
}
|
||||||
|
|
||||||
|
static void xdg_toplevel_set_parent(struct wl_client *client,
|
||||||
|
struct wl_resource *resource, struct wl_resource *parent_resource) {
|
||||||
|
wlr_log(L_DEBUG, "TODO: toplevel set parent");
|
||||||
|
}
|
||||||
|
|
||||||
|
static void xdg_toplevel_set_title(struct wl_client *client,
|
||||||
|
struct wl_resource *resource, const char *title) {
|
||||||
|
wlr_log(L_DEBUG, "TODO: toplevel set title");
|
||||||
|
}
|
||||||
|
|
||||||
|
static void xdg_toplevel_set_app_id(struct wl_client *client,
|
||||||
|
struct wl_resource *resource, const char *app_id) {
|
||||||
|
wlr_log(L_DEBUG, "TODO: toplevel set app id");
|
||||||
|
}
|
||||||
|
|
||||||
|
static void xdg_toplevel_show_window_menu(struct wl_client *client,
|
||||||
|
struct wl_resource *resource, struct wl_resource *seat, uint32_t serial,
|
||||||
|
int32_t x, int32_t y) {
|
||||||
|
wlr_log(L_DEBUG, "TODO: toplevel show window menu");
|
||||||
|
}
|
||||||
|
|
||||||
|
static void xdg_toplevel_move(struct wl_client *client, struct wl_resource *resource, struct wl_resource *seat_resource, uint32_t serial) {
|
||||||
|
wlr_log(L_DEBUG, "TODO: toplevel move");
|
||||||
|
}
|
||||||
|
|
||||||
|
static void xdg_toplevel_resize(struct wl_client *client, struct wl_resource
|
||||||
|
*resource, struct wl_resource *seat_resource, uint32_t serial,
|
||||||
|
uint32_t edges) {
|
||||||
|
wlr_log(L_DEBUG, "TODO: toplevel resize");
|
||||||
|
}
|
||||||
|
|
||||||
|
static void xdg_toplevel_set_max_size(struct wl_client *client,
|
||||||
|
struct wl_resource *resource, int32_t width, int32_t height) {
|
||||||
|
wlr_log(L_DEBUG, "TODO: toplevel set max size");
|
||||||
|
}
|
||||||
|
|
||||||
|
static void xdg_toplevel_set_min_size(struct wl_client *client,
|
||||||
|
struct wl_resource *resource, int32_t width, int32_t height) {
|
||||||
|
wlr_log(L_DEBUG, "TODO: toplevel set min size");
|
||||||
|
}
|
||||||
|
|
||||||
|
static void xdg_toplevel_set_maximized(struct wl_client *client,
|
||||||
|
struct wl_resource *resource) {
|
||||||
|
wlr_log(L_DEBUG, "TODO: toplevel set maximized");
|
||||||
|
}
|
||||||
|
|
||||||
|
static void xdg_toplevel_unset_maximized(struct wl_client *client, struct wl_resource *resource) {
|
||||||
|
wlr_log(L_DEBUG, "TODO: toplevel unset maximized");
|
||||||
|
}
|
||||||
|
|
||||||
|
static void xdg_toplevel_set_fullscreen(struct wl_client *client, struct wl_resource *resource, struct wl_resource *output_resource) {
|
||||||
|
wlr_log(L_DEBUG, "TODO: toplevel set fullscreen");
|
||||||
|
}
|
||||||
|
|
||||||
|
static void xdg_toplevel_unset_fullscreen(struct wl_client *client, struct wl_resource *resource) {
|
||||||
|
wlr_log(L_DEBUG, "TODO: toplevel unset fullscreen");
|
||||||
|
}
|
||||||
|
|
||||||
|
static void xdg_toplevel_set_minimized(struct wl_client *client, struct wl_resource *resource) {
|
||||||
|
wlr_log(L_DEBUG, "TODO: toplevel set minimized");
|
||||||
|
}
|
||||||
|
|
||||||
|
static const struct zxdg_toplevel_v6_interface zxdg_toplevel_v6_implementation = {
|
||||||
|
.destroy = xdg_toplevel_destroy,
|
||||||
|
.set_parent = xdg_toplevel_set_parent,
|
||||||
|
.set_title = xdg_toplevel_set_title,
|
||||||
|
.set_app_id = xdg_toplevel_set_app_id,
|
||||||
|
.show_window_menu = xdg_toplevel_show_window_menu,
|
||||||
|
.move = xdg_toplevel_move,
|
||||||
|
.resize = xdg_toplevel_resize,
|
||||||
|
.set_max_size = xdg_toplevel_set_max_size,
|
||||||
|
.set_min_size = xdg_toplevel_set_min_size,
|
||||||
|
.set_maximized = xdg_toplevel_set_maximized,
|
||||||
|
.unset_maximized = xdg_toplevel_unset_maximized,
|
||||||
|
.set_fullscreen = xdg_toplevel_set_fullscreen,
|
||||||
|
.unset_fullscreen = xdg_toplevel_unset_fullscreen,
|
||||||
|
.set_minimized = xdg_toplevel_set_minimized
|
||||||
|
};
|
||||||
|
|
||||||
static void xdg_surface_destroy(struct wl_client *client,
|
static void xdg_surface_destroy(struct wl_client *client,
|
||||||
struct wl_resource *resource) {
|
struct wl_resource *resource) {
|
||||||
wlr_log(L_DEBUG, "TODO xdg surface destroy");
|
wlr_log(L_DEBUG, "TODO xdg surface destroy");
|
||||||
|
@ -17,7 +101,11 @@ static void destroy_xdg_shell_surface(struct wl_resource *resource) {
|
||||||
|
|
||||||
static void xdg_surface_get_toplevel(struct wl_client *client,
|
static void xdg_surface_get_toplevel(struct wl_client *client,
|
||||||
struct wl_resource *resource, uint32_t id) {
|
struct wl_resource *resource, uint32_t id) {
|
||||||
wlr_log(L_DEBUG, "TODO xdg surface get toplevel");
|
struct xdg_surface_state *state = wl_resource_get_user_data(resource);
|
||||||
|
struct wl_resource *toplevel_resource = wl_resource_create(client,
|
||||||
|
&zxdg_toplevel_v6_interface, wl_resource_get_version(resource), id);
|
||||||
|
wl_resource_set_implementation(toplevel_resource,
|
||||||
|
&zxdg_toplevel_v6_implementation, state, destroy_xdg_shell_surface);
|
||||||
}
|
}
|
||||||
|
|
||||||
static void xdg_surface_get_popup(struct wl_client *client,
|
static void xdg_surface_get_popup(struct wl_client *client,
|
||||||
|
|
Loading…
Reference in a new issue