1
0
mirror of https://github.com/emersion/kanshi synced 2024-09-19 18:35:44 +02:00
kanshi/include/config.h

43 lines
767 B
C
Raw Normal View History

2019-05-30 13:59:25 +02:00
#ifndef KANSHI_CONFIG_H
#define KANSHI_CONFIG_H
2019-05-31 22:52:18 +02:00
#include <stdbool.h>
2019-05-30 14:18:15 +02:00
#include <wayland-client.h>
enum kanshi_output_field {
KANSHI_OUTPUT_ENABLED = 1 << 0,
KANSHI_OUTPUT_MODE = 1 << 1,
KANSHI_OUTPUT_POSITION = 1 << 2,
KANSHI_OUTPUT_SCALE = 1 << 3,
KANSHI_OUTPUT_TRANSFORM = 1 << 4,
};
2019-05-30 13:59:25 +02:00
struct kanshi_profile_output {
char *name;
2019-05-30 14:18:15 +02:00
unsigned int fields; // enum kanshi_output_field
struct wl_list link;
bool enabled;
struct {
int width, height;
int refresh; // mHz
} mode;
struct {
int x, y;
} position;
float scale;
enum wl_output_transform transform;
2019-05-30 13:59:25 +02:00
};
struct kanshi_profile {
struct wl_list link;
2019-05-31 22:52:18 +02:00
// Wildcard outputs are stored at the end of the list
2019-05-30 13:59:25 +02:00
struct wl_list outputs;
};
struct kanshi_config {
struct wl_list profiles;
};
#endif