diff options
author | Drew DeVault <sir@cmpwn.com> | 2017-10-06 09:34:41 -0400 |
---|---|---|
committer | GitHub <noreply@github.com> | 2017-10-06 09:34:41 -0400 |
commit | d1c26059d2c901d5b53f6d5738c2e9708144bad3 (patch) | |
tree | 0d5db76aa24876dd8549236150a94e3946cc258b /include/wlr | |
parent | bcbf78ddaf1fc219b477faf3b9e5e410c62c1d0d (diff) | |
parent | 641d08ce7eba1464c535feb04513374cde22ed17 (diff) |
Merge pull request #219 from versusvoid/cursor-bounds
Transform hotspot with cursor
Diffstat (limited to 'include/wlr')
-rw-r--r-- | include/wlr/interfaces/wlr_output.h | 3 | ||||
-rw-r--r-- | include/wlr/types/wlr_output.h | 4 |
2 files changed, 5 insertions, 2 deletions
diff --git a/include/wlr/interfaces/wlr_output.h b/include/wlr/interfaces/wlr_output.h index 7ed19ed9..7d2821e0 100644 --- a/include/wlr/interfaces/wlr_output.h +++ b/include/wlr/interfaces/wlr_output.h @@ -10,7 +10,8 @@ struct wlr_output_impl { void (*transform)(struct wlr_output *output, enum wl_output_transform transform); bool (*set_cursor)(struct wlr_output *output, const uint8_t *buf, - int32_t stride, uint32_t width, uint32_t height); + int32_t stride, uint32_t width, uint32_t height, + int32_t hotspot_x, int32_t hotspot_y); bool (*move_cursor)(struct wlr_output *output, int x, int y); void (*destroy)(struct wlr_output *output); void (*make_current)(struct wlr_output *output); diff --git a/include/wlr/types/wlr_output.h b/include/wlr/types/wlr_output.h index 3208acac..1fa6ad9e 100644 --- a/include/wlr/types/wlr_output.h +++ b/include/wlr/types/wlr_output.h @@ -45,6 +45,7 @@ struct wlr_output { bool is_sw; int32_t x, y; uint32_t width, height; + int32_t hotspot_x, hotspot_y; struct wlr_renderer *renderer; struct wlr_texture *texture; } cursor; @@ -58,7 +59,8 @@ bool wlr_output_set_mode(struct wlr_output *output, void wlr_output_transform(struct wlr_output *output, enum wl_output_transform transform); bool wlr_output_set_cursor(struct wlr_output *output, - const uint8_t *buf, int32_t stride, uint32_t width, uint32_t height); + const uint8_t *buf, int32_t stride, uint32_t width, uint32_t height, + int32_t hotspot_x, int32_t hotspot_y); bool wlr_output_move_cursor(struct wlr_output *output, int x, int y); void wlr_output_destroy(struct wlr_output *output); void wlr_output_effective_resolution(struct wlr_output *output, |