Remove wlr_wl_shell

This commit is contained in:
Drew DeVault 2019-04-26 11:06:45 -04:00 committed by Simon Ser
parent a671fc51d2
commit 736632ad4e
10 changed files with 0 additions and 1287 deletions

View file

@ -24,7 +24,6 @@
#include <wlr/types/wlr_screenshooter.h>
#include <wlr/types/wlr_text_input_v3.h>
#include <wlr/types/wlr_virtual_keyboard_v1.h>
#include <wlr/types/wlr_wl_shell.h>
#include <wlr/types/wlr_xcursor_manager.h>
#include <wlr/types/wlr_xdg_decoration_v1.h>
#include <wlr/types/wlr_xdg_shell_v6.h>
@ -46,7 +45,6 @@ struct roots_desktop {
struct wlr_xcursor_manager *xcursor_manager;
struct wlr_compositor *compositor;
struct wlr_wl_shell *wl_shell;
struct wlr_xdg_shell_v6 *xdg_shell_v6;
struct wlr_xdg_shell *xdg_shell;
struct wlr_gamma_control_manager *gamma_control_manager;
@ -76,7 +74,6 @@ struct roots_desktop {
struct wl_listener layout_change;
struct wl_listener xdg_shell_v6_surface;
struct wl_listener xdg_shell_surface;
struct wl_listener wl_shell_surface;
struct wl_listener layer_shell_surface;
struct wl_listener xdg_toplevel_decoration;
struct wl_listener input_inhibit_activate;
@ -107,7 +104,6 @@ struct wlr_surface *desktop_surface_at(struct roots_desktop *desktop,
void handle_xdg_shell_v6_surface(struct wl_listener *listener, void *data);
void handle_xdg_shell_surface(struct wl_listener *listener, void *data);
void handle_xdg_toplevel_decoration(struct wl_listener *listener, void *data);
void handle_wl_shell_surface(struct wl_listener *listener, void *data);
void handle_layer_shell_surface(struct wl_listener *listener, void *data);
void handle_xwayland_surface(struct wl_listener *listener, void *data);

View file

@ -26,7 +26,6 @@ struct roots_view_interface {
};
enum roots_view_type {
ROOTS_WL_SHELL_VIEW,
ROOTS_XDG_SHELL_V6_VIEW,
ROOTS_XDG_SHELL_VIEW,
#if WLR_HAS_XWAYLAND
@ -78,24 +77,6 @@ struct roots_view {
} events;
};
struct roots_wl_shell_surface {
struct roots_view view;
struct wlr_wl_shell_surface *wl_shell_surface;
struct wl_listener destroy;
struct wl_listener new_popup;
struct wl_listener request_move;
struct wl_listener request_resize;
struct wl_listener request_maximize;
struct wl_listener request_fullscreen;
struct wl_listener set_state;
struct wl_listener set_title;
struct wl_listener set_class;
struct wl_listener surface_commit;
};
struct roots_xdg_surface_v6 {
struct roots_view view;
@ -187,14 +168,6 @@ struct roots_subsurface {
struct wl_listener unmap;
};
struct roots_wl_shell_popup {
struct roots_view_child view_child;
struct wlr_wl_shell_surface *wlr_wl_shell_surface;
struct wl_listener destroy;
struct wl_listener set_state;
struct wl_listener new_popup;
};
struct roots_xdg_popup_v6 {
struct roots_view_child view_child;
struct wlr_xdg_popup_v6 *wlr_popup;
@ -255,8 +228,6 @@ void view_get_deco_box(const struct roots_view *view, struct wlr_box *box);
void view_for_each_surface(struct roots_view *view,
wlr_surface_iterator_func_t iterator, void *user_data);
struct roots_wl_shell_surface *roots_wl_shell_surface_from_view(
struct roots_view *view);
struct roots_xdg_surface *roots_xdg_surface_from_view(struct roots_view *view);
struct roots_xdg_surface_v6 *roots_xdg_surface_v6_from_view(
struct roots_view *view);

View file

@ -45,7 +45,6 @@ install_headers(
'wlr_text_input_v3.h',
'wlr_touch.h',
'wlr_virtual_keyboard_v1.h',
'wlr_wl_shell.h',
'wlr_xcursor_manager.h',
'wlr_xdg_decoration_v1.h',
'wlr_xdg_output_v1.h',

View file

@ -1,183 +0,0 @@
/*
* This protocol is obsolete and will be removed in a future version. The
* recommended replacement is xdg-shell.
*/
/*
* This an unstable interface of wlroots. No guarantees are made regarding the
* future consistency of this API.
*/
#ifndef WLR_USE_UNSTABLE
#error "Add -DWLR_USE_UNSTABLE to enable unstable wlroots features"
#endif
#ifndef WLR_TYPES_WLR_WL_SHELL_H
#define WLR_TYPES_WLR_WL_SHELL_H
#include <stdbool.h>
#include <wayland-server.h>
#include <wlr/types/wlr_seat.h>
/**
* A very basic interface to provide desktop-style user interfaces.
*/
struct wlr_wl_shell {
struct wl_global *global;
struct wl_list resources;
struct wl_list surfaces;
struct wl_list popup_grabs;
uint32_t ping_timeout;
struct wl_listener display_destroy;
struct {
struct wl_signal new_surface;
struct wl_signal destroy;
} events;
void *data;
};
struct wlr_wl_shell_surface_transient_state {
int32_t x;
int32_t y;
enum wl_shell_surface_transient flags;
};
struct wlr_wl_shell_surface_popup_state {
struct wlr_seat *seat;
uint32_t serial;
};
// each seat gets a popup grab
struct wlr_wl_shell_popup_grab {
struct wl_client *client;
struct wlr_seat_pointer_grab pointer_grab;
struct wlr_seat *seat;
struct wl_list popups;
struct wl_list link; // wlr_wl_shell::popup_grabs
};
enum wlr_wl_shell_surface_state {
WLR_WL_SHELL_SURFACE_STATE_NONE,
WLR_WL_SHELL_SURFACE_STATE_TOPLEVEL,
WLR_WL_SHELL_SURFACE_STATE_MAXIMIZED,
WLR_WL_SHELL_SURFACE_STATE_FULLSCREEN,
WLR_WL_SHELL_SURFACE_STATE_TRANSIENT,
WLR_WL_SHELL_SURFACE_STATE_POPUP,
};
struct wlr_wl_shell_surface {
struct wlr_wl_shell *shell;
struct wl_client *client;
struct wl_resource *resource;
struct wlr_surface *surface;
bool configured;
struct wl_list link; // wlr_wl_shell::surfaces
uint32_t ping_serial;
struct wl_event_source *ping_timer;
enum wlr_wl_shell_surface_state state;
struct wlr_wl_shell_surface_transient_state *transient_state;
struct wlr_wl_shell_surface_popup_state *popup_state;
struct wl_list grab_link; // wlr_wl_shell_popup_grab::popups
char *title;
char *class;
struct wl_listener surface_destroy;
struct wlr_wl_shell_surface *parent;
struct wl_list popup_link;
struct wl_list popups;
bool popup_mapped;
struct {
struct wl_signal destroy;
struct wl_signal ping_timeout;
struct wl_signal new_popup;
struct wl_signal request_move;
struct wl_signal request_resize;
struct wl_signal request_fullscreen;
struct wl_signal request_maximize;
struct wl_signal set_state;
struct wl_signal set_title;
struct wl_signal set_class;
} events;
void *data;
};
struct wlr_wl_shell_surface_move_event {
struct wlr_wl_shell_surface *surface;
struct wlr_seat_client *seat;
uint32_t serial;
};
struct wlr_wl_shell_surface_resize_event {
struct wlr_wl_shell_surface *surface;
struct wlr_seat_client *seat;
uint32_t serial;
enum wl_shell_surface_resize edges;
};
struct wlr_wl_shell_surface_set_fullscreen_event {
struct wlr_wl_shell_surface *surface;
enum wl_shell_surface_fullscreen_method method;
uint32_t framerate;
struct wlr_output *output;
};
struct wlr_wl_shell_surface_maximize_event {
struct wlr_wl_shell_surface *surface;
struct wlr_output *output;
};
/**
* Create a wl_shell for this display.
*/
struct wlr_wl_shell *wlr_wl_shell_create(struct wl_display *display);
/**
* Destroy this surface.
*/
void wlr_wl_shell_destroy(struct wlr_wl_shell *wlr_wl_shell);
/**
* Send a ping to the surface. If the surface does not respond with a pong
* within a reasonable amount of time, the ping timeout event will be emitted.
*/
void wlr_wl_shell_surface_ping(struct wlr_wl_shell_surface *surface);
/**
* Request that the surface configure itself to be the given size.
*/
void wlr_wl_shell_surface_configure(struct wlr_wl_shell_surface *surface,
enum wl_shell_surface_resize edges, int32_t width, int32_t height);
/**
* Find a surface within this wl-shell surface tree at the given surface-local
* coordinates. Returns the surface and coordinates in the leaf surface
* coordinate system or NULL if no surface is found at that location.
*/
struct wlr_surface *wlr_wl_shell_surface_surface_at(
struct wlr_wl_shell_surface *surface, double sx, double sy,
double *sub_sx, double *sub_sy);
bool wlr_surface_is_wl_shell_surface(struct wlr_surface *surface);
struct wlr_wl_shell_surface *wlr_wl_shell_surface_from_wlr_surface(
struct wlr_surface *surface);
/**
* Call `iterator` on each surface in the shell surface tree, with the surface's
* position relative to the root xdg-surface. The function is called from root to
* leaves (in rendering order).
*/
void wlr_wl_shell_surface_for_each_surface(struct wlr_wl_shell_surface *surface,
wlr_surface_iterator_func_t iterator, void *user_data);
#endif