Files
2025-01-29 10:55:49 +01:00

52 lines
1.5 KiB
C

#include "wayland.h"
void kinc_wayland_display_init(void) {
// This is a no-op because displays are already registered in kinc_wayland_init,
// which should be called before this function is ever invoked
}
int kinc_wayland_display_primary(void) {
return 0; // TODO
}
int kinc_wayland_count_displays(void) {
return wl_ctx.num_displays;
}
bool kinc_wayland_display_available(int display_index) {
if (display_index >= MAXIMUM_DISPLAYS) {
return false;
}
struct kinc_wl_display *display = &wl_ctx.displays[display_index];
return display->output != NULL;
}
const char *kinc_wayland_display_name(int display_index) {
if (display_index >= MAXIMUM_DISPLAYS)
display_index = 0;
struct kinc_wl_display *display = &wl_ctx.displays[display_index];
return display->name;
}
kinc_display_mode_t kinc_wayland_display_current_mode(int display_index) {
if (display_index >= MAXIMUM_DISPLAYS)
display_index = 0;
struct kinc_wl_display *display = &wl_ctx.displays[display_index];
return display->modes[display->current_mode];
}
int kinc_wayland_display_count_available_modes(int display_index) {
if (display_index >= MAXIMUM_DISPLAYS)
display_index = 0;
struct kinc_wl_display *display = &wl_ctx.displays[display_index];
return display->num_modes;
}
kinc_display_mode_t kinc_wayland_display_available_mode(int display_index, int mode_index) {
if (display_index >= MAXIMUM_DISPLAYS)
display_index = 0;
struct kinc_wl_display *display = &wl_ctx.displays[display_index];
if (mode_index >= display->num_modes)
mode_index = 0;
return display->modes[mode_index];
}