mirror of
https://github.com/swaywm/sway.git
synced 2025-04-04 03:17:46 +03:00
renderer: Render scene_graph
This commit is contained in:
parent
0e1a02bf0a
commit
9c17cba0b2
7 changed files with 101 additions and 427 deletions
|
@ -41,7 +41,6 @@ struct sway_output {
|
|||
struct wl_list shell_layers[4]; // sway_layer_surface::link
|
||||
struct wlr_box usable_area;
|
||||
|
||||
struct timespec last_frame;
|
||||
struct wlr_damage_ring damage_ring;
|
||||
|
||||
int lx, ly; // layout coords
|
||||
|
@ -58,9 +57,7 @@ struct sway_output {
|
|||
struct wl_listener destroy;
|
||||
struct wl_listener commit;
|
||||
struct wl_listener present;
|
||||
struct wl_listener damage;
|
||||
struct wl_listener frame;
|
||||
struct wl_listener needs_frame;
|
||||
struct wl_listener request_state;
|
||||
|
||||
struct {
|
||||
|
|
|
@ -11,6 +11,7 @@
|
|||
#include <wlr/types/wlr_scene.h>
|
||||
|
||||
enum sway_scene_descriptor_type {
|
||||
SWAY_SCENE_DESC_BUFFER_TIMER,
|
||||
};
|
||||
|
||||
bool scene_descriptor_assign(struct wlr_scene_node *node,
|
||||
|
|
|
@ -41,7 +41,6 @@ struct sway_server {
|
|||
struct wlr_allocator *allocator;
|
||||
|
||||
struct wlr_compositor *compositor;
|
||||
struct wl_listener compositor_new_surface;
|
||||
|
||||
struct wlr_linux_dmabuf_v1 *linux_dmabuf_v1;
|
||||
|
||||
|
@ -170,7 +169,6 @@ void server_run(struct sway_server *server);
|
|||
|
||||
void restore_nofile_limit(void);
|
||||
|
||||
void handle_compositor_new_surface(struct wl_listener *listener, void *data);
|
||||
void handle_new_output(struct wl_listener *listener, void *data);
|
||||
|
||||
void handle_idle_inhibitor_v1(struct wl_listener *listener, void *data);
|
||||
|
|
|
@ -2,20 +2,6 @@
|
|||
#define _SWAY_SURFACE_H
|
||||
#include <wlr/types/wlr_compositor.h>
|
||||
|
||||
struct sway_surface {
|
||||
struct wlr_surface *wlr_surface;
|
||||
|
||||
struct wl_listener destroy;
|
||||
|
||||
/**
|
||||
* This timer can be used for issuing delayed frame done callbacks (for
|
||||
* example, to improve presentation latency). Its handler is set to a
|
||||
* function that issues a frame done callback to this surface.
|
||||
*/
|
||||
struct wl_event_source *frame_done_timer;
|
||||
};
|
||||
|
||||
void surface_update_outputs(struct wlr_surface *surface);
|
||||
void surface_enter_output(struct wlr_surface *surface,
|
||||
struct sway_output *output);
|
||||
void surface_leave_output(struct wlr_surface *surface,
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue