aboutsummaryrefslogtreecommitdiffstats
path: root/include
diff options
context:
space:
mode:
authorLibravatar Alexander Orzechowski <alex@ozal.ski>2023-12-04 06:33:57 -0500
committerLibravatar Kirill Primak <vyivel@eclair.cafe>2024-01-18 18:36:54 +0300
commit9c17cba0b29979ae23c4521b884f7419fd558770 (patch)
treedb563b9ebcc9eda7afed3e5cd263fb13f531caac /include
parentscene_graph: Introduce sway_scene_descriptor (diff)
downloadsway-9c17cba0b29979ae23c4521b884f7419fd558770.tar.gz
sway-9c17cba0b29979ae23c4521b884f7419fd558770.tar.zst
sway-9c17cba0b29979ae23c4521b884f7419fd558770.zip
renderer: Render scene_graph
Diffstat (limited to 'include')
-rw-r--r--include/sway/output.h3
-rw-r--r--include/sway/scene_descriptor.h1
-rw-r--r--include/sway/server.h2
-rw-r--r--include/sway/surface.h14
4 files changed, 1 insertions, 19 deletions
diff --git a/include/sway/output.h b/include/sway/output.h
index 691ac8dd..b35f1366 100644
--- a/include/sway/output.h
+++ b/include/sway/output.h
@@ -41,7 +41,6 @@ struct sway_output {
41 struct wl_list shell_layers[4]; // sway_layer_surface::link 41 struct wl_list shell_layers[4]; // sway_layer_surface::link
42 struct wlr_box usable_area; 42 struct wlr_box usable_area;
43 43
44 struct timespec last_frame;
45 struct wlr_damage_ring damage_ring; 44 struct wlr_damage_ring damage_ring;
46 45
47 int lx, ly; // layout coords 46 int lx, ly; // layout coords
@@ -58,9 +57,7 @@ struct sway_output {
58 struct wl_listener destroy; 57 struct wl_listener destroy;
59 struct wl_listener commit; 58 struct wl_listener commit;
60 struct wl_listener present; 59 struct wl_listener present;
61 struct wl_listener damage;
62 struct wl_listener frame; 60 struct wl_listener frame;
63 struct wl_listener needs_frame;
64 struct wl_listener request_state; 61 struct wl_listener request_state;
65 62
66 struct { 63 struct {
diff --git a/include/sway/scene_descriptor.h b/include/sway/scene_descriptor.h
index 13ae81a3..9761c2c0 100644
--- a/include/sway/scene_descriptor.h
+++ b/include/sway/scene_descriptor.h
@@ -11,6 +11,7 @@
11#include <wlr/types/wlr_scene.h> 11#include <wlr/types/wlr_scene.h>
12 12
13enum sway_scene_descriptor_type { 13enum sway_scene_descriptor_type {
14 SWAY_SCENE_DESC_BUFFER_TIMER,
14}; 15};
15 16
16bool scene_descriptor_assign(struct wlr_scene_node *node, 17bool scene_descriptor_assign(struct wlr_scene_node *node,
diff --git a/include/sway/server.h b/include/sway/server.h
index b0e8dfd6..f3d25980 100644
--- a/include/sway/server.h
+++ b/include/sway/server.h
@@ -41,7 +41,6 @@ struct sway_server {
41 struct wlr_allocator *allocator; 41 struct wlr_allocator *allocator;
42 42
43 struct wlr_compositor *compositor; 43 struct wlr_compositor *compositor;
44 struct wl_listener compositor_new_surface;
45 44
46 struct wlr_linux_dmabuf_v1 *linux_dmabuf_v1; 45 struct wlr_linux_dmabuf_v1 *linux_dmabuf_v1;
47 46
@@ -170,7 +169,6 @@ void server_run(struct sway_server *server);
170 169
171void restore_nofile_limit(void); 170void restore_nofile_limit(void);
172 171
173void handle_compositor_new_surface(struct wl_listener *listener, void *data);
174void handle_new_output(struct wl_listener *listener, void *data); 172void handle_new_output(struct wl_listener *listener, void *data);
175 173
176void handle_idle_inhibitor_v1(struct wl_listener *listener, void *data); 174void handle_idle_inhibitor_v1(struct wl_listener *listener, void *data);
diff --git a/include/sway/surface.h b/include/sway/surface.h
index a7a8ec3f..81eb80d5 100644
--- a/include/sway/surface.h
+++ b/include/sway/surface.h
@@ -2,20 +2,6 @@
2#define _SWAY_SURFACE_H 2#define _SWAY_SURFACE_H
3#include <wlr/types/wlr_compositor.h> 3#include <wlr/types/wlr_compositor.h>
4 4
5struct sway_surface {
6 struct wlr_surface *wlr_surface;
7
8 struct wl_listener destroy;
9
10 /**
11 * This timer can be used for issuing delayed frame done callbacks (for
12 * example, to improve presentation latency). Its handler is set to a
13 * function that issues a frame done callback to this surface.
14 */
15 struct wl_event_source *frame_done_timer;
16};
17
18void surface_update_outputs(struct wlr_surface *surface);
19void surface_enter_output(struct wlr_surface *surface, 5void surface_enter_output(struct wlr_surface *surface,
20 struct sway_output *output); 6 struct sway_output *output);
21void surface_leave_output(struct wlr_surface *surface, 7void surface_leave_output(struct wlr_surface *surface,