Merge pull request #711 from emersion/map-unmap

Add map/unmap to xdg-shell
This commit is contained in:
Tony Crisci 2018-03-17 10:00:54 -04:00 committed by GitHub
commit 09413aa7f1
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
14 changed files with 857 additions and 625 deletions

View file

@ -73,14 +73,16 @@ struct roots_output *desktop_output_from_wlr_output(
struct roots_view *desktop_view_at(struct roots_desktop *desktop, double lx,
double ly, struct wlr_surface **surface, double *sx, double *sy);
void view_init(struct roots_view *view, struct roots_desktop *desktop);
void view_finish(struct roots_view *view);
struct roots_view *view_create(struct roots_desktop *desktop);
void view_destroy(struct roots_view *view);
void view_activate(struct roots_view *view, bool activate);
void view_apply_damage(struct roots_view *view);
void view_damage_whole(struct roots_view *view);
void view_update_position(struct roots_view *view, double x, double y);
void view_update_size(struct roots_view *view, uint32_t width, uint32_t height);
void view_initial_focus(struct roots_view *view);
void view_map(struct roots_view *view, struct wlr_surface *surface);
void view_unmap(struct roots_view *view);
void handle_xdg_shell_v6_surface(struct wl_listener *listener, void *data);
void handle_xdg_shell_surface(struct wl_listener *listener, void *data);

View file

@ -39,6 +39,7 @@ struct roots_seat_view {
struct wl_list link; // roots_seat::views
struct wl_listener view_unmap;
struct wl_listener view_destroy;
};

View file

@ -27,6 +27,8 @@ struct roots_xdg_surface_v6 {
struct wl_listener destroy;
struct wl_listener new_popup;
struct wl_listener map;
struct wl_listener unmap;
struct wl_listener request_move;
struct wl_listener request_resize;
struct wl_listener request_maximize;
@ -42,6 +44,8 @@ struct roots_xdg_surface {
struct wl_listener destroy;
struct wl_listener new_popup;
struct wl_listener map;
struct wl_listener unmap;
struct wl_listener request_move;
struct wl_listener request_resize;
struct wl_listener request_maximize;
@ -128,6 +132,7 @@ struct roots_view {
struct wl_listener new_subsurface;
struct {
struct wl_signal unmap;
struct wl_signal destroy;
} events;
@ -140,6 +145,7 @@ struct roots_view {
void (*maximize)(struct roots_view *view, bool maximized);
void (*set_fullscreen)(struct roots_view *view, bool fullscreen);
void (*close)(struct roots_view *view);
void (*destroy)(struct roots_view *view);
};
struct roots_view_child {
@ -181,7 +187,6 @@ struct roots_xdg_popup {
struct wl_listener new_popup;
};
struct roots_view *view_create();
void view_get_box(const struct roots_view *view, struct wlr_box *box);
void view_activate(struct roots_view *view, bool active);
void view_move(struct roots_view *view, double x, double y);