output: pass cursor as layer when set_cursor is unimplemented

This commit is contained in:
Simon Ser 2023-06-06 20:02:50 +02:00
parent bf4c20a05d
commit 9c442c7fd8
4 changed files with 99 additions and 11 deletions

View file

@ -17,6 +17,9 @@ bool output_ensure_buffer(struct wlr_output *output,
bool output_cursor_set_texture(struct wlr_output_cursor *cursor,
struct wlr_texture *texture, bool own_texture, float scale,
enum wl_output_transform transform, int32_t hotspot_x, int32_t hotspot_y);
bool output_get_cursor_layer_state(struct wlr_output *output,
struct wlr_buffer *buffer, int x, int y, int hotspot_x, int hotspot_y,
struct wlr_output_layer_state *out);
struct wlr_output_layer_state *output_state_get_cursor_layer(
const struct wlr_output_state *state);

View file

@ -189,6 +189,8 @@ struct wlr_output {
struct wlr_swapchain *cursor_swapchain;
struct wlr_buffer *cursor_front_buffer;
int software_cursor_locks; // number of locks forcing software cursors
struct wlr_output_layer *cursor_layer;
bool cursor_layer_changed;
struct wl_list layers; // wlr_output_layer.link