From 4ca1e77fdbbf559a5bb28d4936afa6ade63985cd Mon Sep 17 00:00:00 2001
From: Drew DeVault <sir@cmpwn.com>
Date: Wed, 22 Nov 2017 21:06:08 -0500
Subject: Add views to tree and render them

---
 include/sway/container.h | 4 ++++
 include/sway/server.h    | 2 ++
 include/sway/view.h      | 2 ++
 3 files changed, 8 insertions(+)

(limited to 'include/sway')

diff --git a/include/sway/container.h b/include/sway/container.h
index 2a96165f..96e4db69 100644
--- a/include/sway/container.h
+++ b/include/sway/container.h
@@ -125,7 +125,11 @@ struct sway_container {
 	list_t *marks;
 };
 
+void swayc_descendants_of_type(swayc_t *root, enum swayc_types type,
+		void (*func)(swayc_t *item, void *data), void *data);
+
 swayc_t *new_output(struct sway_output *sway_output);
 swayc_t *new_workspace(swayc_t *output, const char *name);
+swayc_t *new_view(swayc_t *sibling, struct sway_view *sway_view);
 
 #endif
diff --git a/include/sway/server.h b/include/sway/server.h
index 60f35190..b0684d15 100644
--- a/include/sway/server.h
+++ b/include/sway/server.h
@@ -4,6 +4,7 @@
 #include <wayland-server.h>
 #include <wlr/backend.h>
 #include <wlr/backend/session.h>
+#include <wlr/types/wlr_compositor.h>
 #include <wlr/types/wlr_data_device.h>
 #include <wlr/types/wlr_xdg_shell_v6.h>
 #include <wlr/render.h>
@@ -18,6 +19,7 @@ struct sway_server {
 	struct wlr_backend *backend;
 	struct wlr_renderer *renderer;
 
+	struct wlr_compositor *compositor;
 	struct wlr_data_device_manager *data_device_manager;
 
 	struct sway_input *input;
diff --git a/include/sway/view.h b/include/sway/view.h
index 979b20a8..2675a6f5 100644
--- a/include/sway/view.h
+++ b/include/sway/view.h
@@ -1,6 +1,7 @@
 #ifndef _SWAY_VIEW_H
 #define _SWAY_VIEW_H
 #include <wayland-server.h>
+#include <wlr/types/wlr_surface.h>
 #include <wlr/types/wlr_xdg_shell_v6.h>
 
 struct sway_container;
@@ -38,6 +39,7 @@ struct sway_view {
 	struct wl_listener destroy;
 	enum sway_view_type type;
 	struct sway_container *swayc;
+	struct wlr_surface *surface;
 
 	union {
 		struct wlr_xdg_surface_v6 *wlr_xdg_surface_v6;
-- 
cgit v1.2.3