micro-wm/include/main.h

51 lines
1.2 KiB
C

#ifndef _MAIN_H
#define _MAIN_H
#include <stdio.h>
#include <signal.h>
#include <stdlib.h>
#include <assert.h>
#include <wayland-server-core.h>
#include <wlr/backend.h>
#include <wlr/render/wlr_renderer.h>
#include <wlr/render/allocator.h>
#include <wlr/types/wlr_compositor.h>
#include <wlr/types/wlr_data_control_v1.h>
#include <wlr/types/wlr_data_device.h>
#include <wlr/types/wlr_export_dmabuf_v1.h>
#include <wlr/types/wlr_gamma_control_v1.h>
#include <wlr/types/wlr_primary_selection_v1.h>
#include <wlr/types/wlr_screencopy_v1.h>
#include <wlr/types/wlr_cursor.h>
#include <wlr/types/wlr_output_layout.h>
#include <wlr/types/wlr_scene.h>
#include <wlr/types/wlr_seat.h>
#include <wlr/types/wlr_xdg_shell.h>
#include <wlr/util/log.h>
#include "config.h"
#include "die.h"
struct server {
struct wl_display *wl_display;
struct wl_event_loop *wl_event_loop;
struct wlr_backend *backend;
struct wlr_renderer *renderer;
/* Monitors */
struct wl_list outputs;
struct wl_listener new_output;
};
struct output {
struct wlr_output *wlr_output;
struct server *server;
struct timespec last_frame;
struct wl_listener destroy;
struct wl_listener frame;
struct wl_list link;
};
#endif