#ifndef _ROOTSTON_XCURSOR_H #define _ROOTSTON_XCURSOR_H #include #include #include #include #define ROOTS_XCURSOR_SIZE 16 struct roots_xcursor_scaled_theme { uint32_t scale; struct wlr_xcursor_theme *theme; struct wl_list link; }; struct roots_xcursor_theme { char *name; struct wl_list scaled_themes; // roots_xcursor_scaled_theme::link }; struct roots_xcursor_theme *roots_xcursor_theme_create(const char *name); void roots_xcursor_theme_destroy(struct roots_xcursor_theme *theme); int roots_xcursor_theme_load(struct roots_xcursor_theme *theme, uint32_t scale); void roots_xcursor_theme_set_default(struct roots_xcursor_theme *theme, struct wlr_cursor *cursor); void roots_xcursor_theme_set_move(struct roots_xcursor_theme *theme, struct wlr_cursor *cursor); void roots_xcursor_theme_set_resize(struct roots_xcursor_theme *theme, struct wlr_cursor *cursor, uint32_t edges); void roots_xcursor_theme_set_rotate(struct roots_xcursor_theme *theme, struct wlr_cursor *cursor); void roots_xcursor_theme_xwayland_set_default(struct roots_xcursor_theme *theme, struct wlr_xwayland *xwayland); #endif