~ruther/dwl

d94266df915bf6b0747858aa9f51cb02a481cfaa — Devin J. Pohly 4 years ago 5f3a788
fix crash on non-libinput pointers (e.g. X11 backend)
1 files changed, 7 insertions(+), 5 deletions(-)

M dwl.c
M dwl.c => dwl.c +7 -5
@@ 899,14 899,16 @@ createlayersurface(struct wl_listener *listener, void *data)
void
createpointer(struct wlr_input_device *device)
{
	struct libinput_device *libinput_device =  (struct libinput_device*)
	if (wlr_input_device_is_libinput(device)) {
		struct libinput_device *libinput_device =  (struct libinput_device*)
			wlr_libinput_get_device_handle(device);

	if (tap_to_click && libinput_device_config_tap_get_finger_count(libinput_device))
		libinput_device_config_tap_set_enabled(libinput_device, LIBINPUT_CONFIG_TAP_ENABLED);
		if (tap_to_click && libinput_device_config_tap_get_finger_count(libinput_device))
			libinput_device_config_tap_set_enabled(libinput_device, LIBINPUT_CONFIG_TAP_ENABLED);

	if (libinput_device_config_scroll_has_natural_scroll(libinput_device))
		libinput_device_config_scroll_set_natural_scroll_enabled(libinput_device, natural_scrolling);
		if (libinput_device_config_scroll_has_natural_scroll(libinput_device))
			libinput_device_config_scroll_set_natural_scroll_enabled(libinput_device, natural_scrolling);
	}

	/* We don't do anything special with pointers. All of our pointer handling
	 * is proxied through wlr_cursor. On another compositor, you might take this

Do not follow this link