diff options
Diffstat (limited to 'include/sway')
-rw-r--r-- | include/sway/extensions.h | 56 | ||||
-rw-r--r-- | include/sway/server.h | 31 |
2 files changed, 31 insertions, 56 deletions
diff --git a/include/sway/extensions.h b/include/sway/extensions.h deleted file mode 100644 index 5212eb3a..00000000 --- a/include/sway/extensions.h +++ /dev/null @@ -1,56 +0,0 @@ -#ifndef _SWAY_EXTENSIONS_H -#define _SWAY_EXTENSIONS_H - -#include <wayland-server.h> -#include <wlc/wlc-wayland.h> -#include "wayland-desktop-shell-server-protocol.h" -#include "list.h" - -struct background_config { - wlc_handle output; - wlc_resource surface; - // we need the wl_resource of the surface in the destructor - struct wl_resource *wl_surface_res; - struct wl_client *client; - wlc_handle handle; -}; - -struct panel_config { - // wayland resource used in callbacks, is used to track this panel - struct wl_resource *wl_resource; - wlc_handle output; - wlc_resource surface; - // we need the wl_resource of the surface in the destructor - struct wl_resource *wl_surface_res; - enum desktop_shell_panel_position panel_position; - // used to determine if client is a panel - struct wl_client *client; - // wlc handle for this panel's surface, not set until panel is created - wlc_handle handle; -}; - -struct desktop_shell_state { - list_t *backgrounds; - list_t *panels; - list_t *lock_surfaces; - bool is_locked; -}; - -struct swaylock_state { - bool active; - wlc_handle output; - wlc_resource surface; -}; - -struct decoration_state { - list_t *csd_resources; -}; - -extern struct desktop_shell_state desktop_shell; -extern struct decoration_state decoration_state; - -void register_extensions(void); - -void server_decoration_enable_csd(wlc_handle handle); - -#endif diff --git a/include/sway/server.h b/include/sway/server.h new file mode 100644 index 00000000..471a0270 --- /dev/null +++ b/include/sway/server.h @@ -0,0 +1,31 @@ +#ifndef _SWAY_SERVER_H +#define _SWAY_SERVER_H +#include <stdbool.h> +#include <wayland-server.h> +#include <wlr/backend.h> +#include <wlr/backend/session.h> +#include <wlr/types/wlr_data_device_manager.h> +#include <wlr/render.h> +// TODO WLR: make Xwayland optional +#include <wlr/xwayland.h> + +struct sway_server { + // TODO WLR + //struct roots_desktop *desktop; + //struct roots_input *input; + + struct wl_display *wl_display; + struct wl_event_loop *wl_event_loop; + + struct wlr_backend *backend; + struct wlr_renderer *renderer; + + struct wlr_data_device_manager *data_device_manager; +}; + +bool server_init(struct sway_server *server); +void server_fini(struct sway_server *server); + +struct sway_server server; + +#endif |