diff options
author | emersion <contact@emersion.fr> | 2018-05-14 22:28:45 +0100 |
---|---|---|
committer | emersion <contact@emersion.fr> | 2018-05-14 22:28:45 +0100 |
commit | 303650746360e69ea880a7f6b6df944d343dee79 (patch) | |
tree | 215c808ce698f8c2f4d966cd1772b2e930751ee6 /include | |
parent | c7480d50847d988b124c0cac458dd992c3ed6f38 (diff) |
xdg-shell: split into multiple files
Diffstat (limited to 'include')
-rw-r--r-- | include/types/wlr_xdg_shell.h | 45 |
1 files changed, 45 insertions, 0 deletions
diff --git a/include/types/wlr_xdg_shell.h b/include/types/wlr_xdg_shell.h new file mode 100644 index 00000000..74f13bbe --- /dev/null +++ b/include/types/wlr_xdg_shell.h @@ -0,0 +1,45 @@ +#ifndef TYPES_WLR_XDG_SHELL_H +#define TYPES_WLR_XDG_SHELL_H + +#include <wayland-server.h> +#include <wlr/types/wlr_xdg_shell.h> +#include "xdg-shell-protocol.h" + +struct wlr_xdg_positioner_resource { + struct wl_resource *resource; + struct wlr_xdg_positioner attrs; +}; + +#define XDG_TOPLEVEL_ROLE "xdg_toplevel" +#define XDG_POPUP_ROLE "xdg_popup" + +uint32_t schedule_xdg_surface_configure(struct wlr_xdg_surface *surface); +struct wlr_xdg_surface *create_xdg_surface( + struct wlr_xdg_client *client, struct wlr_surface *surface, + uint32_t id); +void unmap_xdg_surface(struct wlr_xdg_surface *surface); +void destroy_xdg_surface(struct wlr_xdg_surface *surface); + +void create_xdg_positioner(struct wlr_xdg_client *client, uint32_t id); +struct wlr_xdg_positioner_resource *get_xdg_positioner_from_resource( + struct wl_resource *resource); + +void create_xdg_popup(struct wlr_xdg_surface *xdg_surface, + struct wlr_xdg_surface *parent, + struct wlr_xdg_positioner_resource *positioner, int32_t id); +void handle_xdg_surface_popup_committed(struct wlr_xdg_surface *surface); +struct wlr_xdg_popup_grab *get_xdg_shell_popup_grab_from_seat( + struct wlr_xdg_shell *shell, struct wlr_seat *seat); +void destroy_xdg_popup(struct wlr_xdg_surface *surface); + +void create_xdg_toplevel(struct wlr_xdg_surface *xdg_surface, + uint32_t id); +void handle_xdg_surface_toplevel_committed(struct wlr_xdg_surface *surface); +void send_xdg_toplevel_configure(struct wlr_xdg_surface *surface, + struct wlr_xdg_surface_configure *configure); +void handle_xdg_toplevel_ack_configure(struct wlr_xdg_surface *surface, + struct wlr_xdg_surface_configure *configure); +bool compare_xdg_surface_toplevel_state(struct wlr_xdg_toplevel *state); +void destroy_xdg_toplevel(struct wlr_xdg_surface *surface); + +#endif |