notashelf /
ebdc3fe08e4cdde737abc0080b067fd6c86e093c
chroma
publicLightweight wallpaper daemon for Wayland
clone
ssh://git@git.notashelf.dev:33/notashelf/chroma.gitCommit ebdc3fe08e4c
tarballunverified2 files changed+20-0
@@ -238,6 +238,9 @@ void chroma_output_remove(chroma_state_t *state, uint32_t id); chroma_output_t *chroma_output_find_by_id(chroma_state_t *state, uint32_t id); chroma_output_t *chroma_output_find_by_name(chroma_state_t *state, const char *name);+// Output methods+int32_t chroma_output_width(chroma_output_t* output);+int32_t chroma_output_height(chroma_output_t* output); // Output event handlers void chroma_output_geometry(void *data, struct wl_output *output, int32_t x,@@ -253,6 +256,7 @@ void chroma_output_description(void *data, struct wl_output *output, const char *description); void chroma_output_done(void *data, struct wl_output *output); + // Rendering and surface management int chroma_surface_create(chroma_state_t *state, chroma_output_t *output); void chroma_surface_destroy(chroma_output_t *output);@@ -491,3 +491,19 @@ void chroma_format_memory_size(size_t bytes, char *buffer, size_t buffer_size) { // Cleanup utility functions void chroma_utils_cleanup(void) { chroma_cleanup_signals(); }++// Returns width of monitor accounting for transform+int32_t chroma_output_width(chroma_output_t *output) {+ if (output->transform & 1)+ return output->height;+ else+ return output->width;+}++// Returns height of monitor accounting for transform+int32_t chroma_output_height(chroma_output_t *output) {+ if (output->transform & 1)+ return output->width;+ else+ return output->height;+}