2018-12-31 00:12:33 +01:00
|
|
|
#ifndef CG_OUTPUT_H
|
|
|
|
|
#define CG_OUTPUT_H
|
|
|
|
|
|
2019-12-20 17:16:53 +01:00
|
|
|
#include <wayland-server-core.h>
|
2018-12-31 00:12:33 +01:00
|
|
|
#include <wlr/types/wlr_output.h>
|
|
|
|
|
|
|
|
|
|
#include "server.h"
|
2019-01-20 13:42:36 +01:00
|
|
|
#include "view.h"
|
2018-12-31 00:12:33 +01:00
|
|
|
|
|
|
|
|
struct cg_output {
|
|
|
|
|
struct cg_server *server;
|
|
|
|
|
struct wlr_output *wlr_output;
|
2021-08-17 17:09:31 +02:00
|
|
|
struct wlr_scene_output *scene_output;
|
2018-12-31 00:12:33 +01:00
|
|
|
|
2021-01-16 22:20:37 +00:00
|
|
|
struct wl_listener commit;
|
2023-11-25 12:29:57 +01:00
|
|
|
struct wl_listener request_state;
|
2018-12-31 00:12:33 +01:00
|
|
|
struct wl_listener destroy;
|
2021-08-17 17:09:31 +02:00
|
|
|
struct wl_listener frame;
|
2019-12-21 16:10:11 +01:00
|
|
|
|
2019-12-22 01:01:06 +01:00
|
|
|
struct wl_list link; // cg_server::outputs
|
2018-12-31 00:12:33 +01:00
|
|
|
};
|
|
|
|
|
|
2023-07-21 15:37:38 +02:00
|
|
|
void handle_output_manager_apply(struct wl_listener *listener, void *data);
|
|
|
|
|
void handle_output_manager_test(struct wl_listener *listener, void *data);
|
|
|
|
|
void handle_output_layout_change(struct wl_listener *listener, void *data);
|
2018-12-31 00:12:33 +01:00
|
|
|
void handle_new_output(struct wl_listener *listener, void *data);
|
2019-02-16 00:54:04 +01:00
|
|
|
void output_set_window_title(struct cg_output *output, const char *title);
|
2018-12-31 00:12:33 +01:00
|
|
|
|
|
|
|
|
#endif
|