aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorBrian Ashworth <bosrsf04@gmail.com>2019-02-07 01:52:58 -0500
committerDrew DeVault <sir@cmpwn.com>2019-02-11 10:22:53 -0500
commit32f790bd15e1a96f214ac2783bf66837dc0e9682 (patch)
tree8628735f74dd5cd446745a9a937c3fd5c40845c6
parent8229814e7a8122b022e5f92fb4d925b00d0d4b1c (diff)
downloadsway-32f790bd15e1a96f214ac2783bf66837dc0e9682.zip
sway-32f790bd15e1a96f214ac2783bf66837dc0e9682.tar.gz
sway-32f790bd15e1a96f214ac2783bf66837dc0e9682.tar.bz2
seat_configure_tablet_tool: configure xcursor
Since a tablet tool provides the WL_SEAT_CAPABILITY_POINTER capability, sway will attempt to use the xcursor manager to set a cursor image. If the tablet tool was the first (and possibly only) device to provide the capability for the seat, the xcursor manager was not being configured before attempting to set a cursor image. This was due to `seat_configure_xcursor` only being called in `seat_configure_pointer`. Since the xcursor manager was NULL in this case, it would cause a segfault when attempting to set a cursor image. This adds a call to `seat_configure_xcursor` in `seat_configure_tablet_tool` to ensure that the seat has a xcursor manager.
-rw-r--r--sway/input/seat.c1
1 files changed, 1 insertions, 0 deletions
diff --git a/sway/input/seat.c b/sway/input/seat.c
index d159da2..18664d7 100644
--- a/sway/input/seat.c
+++ b/sway/input/seat.c
@@ -525,6 +525,7 @@ static void seat_configure_touch(struct sway_seat *seat,
static void seat_configure_tablet_tool(struct sway_seat *seat,
struct sway_seat_device *sway_device) {
+ seat_configure_xcursor(seat);
wlr_cursor_attach_input_device(seat->cursor->cursor,
sway_device->input_device->wlr_device);
seat_apply_input_config(seat, sway_device);