cagebreak/server.h
project-repo ce9b68d448 Squashed commit of the following:
commit 27fa2b70b9
Merge: 1a87477 6fdc55c
Author: Cagebreak Signing Key 1 <cagebreak_signing_key_1@cagebreak>
Date:   Mon Mar 2 18:45:11 2020 +0000

    Merge branch 'output_config' of https://github.com/project-repo/cagebreak into output_config

commit 6fdc55c9a5
Author: project-repo <cagebreak_signing_key_2@cagebreak>
Date:   Fri Feb 28 17:30:06 2020 +0100

    Add missing functionality to output configuration

commit 33d245b60b
Author: project-repo <cagebreak_signing_key_2@cagebreak>
Date:   Wed Feb 26 07:56:28 2020 +0100

    Add example of "output" command usage

commit 0d4bb36068
Author: project-repo <cagebreak_signing_key_2@cagebreak>
Date:   Wed Feb 26 07:55:25 2020 +0100

    Add documentation for "output" command

commit a2cc047132
Author: project-repo <cagebreak_signing_key_2@cagebreak>
Date:   Sun Feb 23 16:53:47 2020 +0100

    Add support for output layout configuration
2020-04-04 21:33:54 +02:00

58 lines
1.2 KiB
C

#ifndef CG_SERVER_H
#define CG_SERVER_H
#include "config.h"
#include <wayland-server-core.h>
#include <wlr/types/wlr_xdg_decoration_v1.h>
struct cg_seat;
struct cg_output;
struct keybinding_list;
struct wlr_output_layout;
struct wlr_idle_inhibit_manager_v1;
struct cg_output_config;
struct cg_server {
struct wl_display *wl_display;
struct wl_event_loop *event_loop;
struct cg_seat *seat;
struct wlr_backend *backend;
struct wlr_idle *idle;
struct wlr_idle_inhibit_manager_v1 *idle_inhibit_v1;
struct wl_listener new_idle_inhibitor_v1;
struct wl_list inhibitors;
struct wlr_output_layout *output_layout;
struct wl_list outputs;
struct cg_output *curr_output;
struct wl_listener new_output;
struct wl_listener xdg_toplevel_decoration;
struct wl_listener new_xdg_shell_surface;
#if CG_HAS_XWAYLAND
struct wl_listener new_xwayland_surface;
#endif
struct keybinding_list *keybindings;
struct wl_list output_config;
enum wl_output_transform output_transform;
bool running;
char **modes;
uint16_t nws;
uint16_t message_timeout;
float *bg_color;
#ifdef DEBUG
bool debug_damage_tracking;
#endif
};
void
display_terminate(struct cg_server *server);
int
get_mode_index_from_name(char *const *modes, const char *mode_name);
#endif