seat: avoid unneeded reloading xcursor theme

Load xcursor theme on configuring pointer or tablet tool only if
there was no pointer cap before.
This commit is contained in:
xdavidwu 2019-08-31 20:42:08 +08:00 committed by Drew DeVault
parent 3dcfa2ee90
commit afde6369b8

View File

@ -593,7 +593,9 @@ static void seat_apply_input_config(struct sway_seat *seat,
static void seat_configure_pointer(struct sway_seat *seat,
struct sway_seat_device *sway_device) {
seat_configure_xcursor(seat);
if ((seat->wlr_seat->capabilities & WL_SEAT_CAPABILITY_POINTER) == 0) {
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);
@ -633,7 +635,9 @@ 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);
if ((seat->wlr_seat->capabilities & WL_SEAT_CAPABILITY_POINTER) == 0) {
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);