Added basic tap-to-click for touchpad users
This commit is contained in:
parent
bfbfe9f2b2
commit
4f1e557d3d
2
Makefile
2
Makefile
@ -5,7 +5,7 @@ CFLAGS += -I. -DWLR_USE_UNSTABLE -std=c99 -Werror=declaration-after-statement
|
|||||||
WAYLAND_PROTOCOLS=$(shell pkg-config --variable=pkgdatadir wayland-protocols)
|
WAYLAND_PROTOCOLS=$(shell pkg-config --variable=pkgdatadir wayland-protocols)
|
||||||
WAYLAND_SCANNER=$(shell pkg-config --variable=wayland_scanner wayland-scanner)
|
WAYLAND_SCANNER=$(shell pkg-config --variable=wayland_scanner wayland-scanner)
|
||||||
|
|
||||||
PKGS = wlroots wayland-server xcb xkbcommon
|
PKGS = wlroots wayland-server xcb xkbcommon libinput
|
||||||
CFLAGS += $(foreach p,$(PKGS),$(shell pkg-config --cflags $(p)))
|
CFLAGS += $(foreach p,$(PKGS),$(shell pkg-config --cflags $(p)))
|
||||||
LDLIBS += $(foreach p,$(PKGS),$(shell pkg-config --libs $(p)))
|
LDLIBS += $(foreach p,$(PKGS),$(shell pkg-config --libs $(p)))
|
||||||
|
|
||||||
|
@ -41,6 +41,10 @@ static const struct xkb_rule_names xkb_rules = {
|
|||||||
.options = "ctrl:nocaps",
|
.options = "ctrl:nocaps",
|
||||||
*/
|
*/
|
||||||
};
|
};
|
||||||
|
|
||||||
|
/* Trackpad */
|
||||||
|
int tap_to_click = 1;
|
||||||
|
|
||||||
static const int repeat_rate = 25;
|
static const int repeat_rate = 25;
|
||||||
static const int repeat_delay = 600;
|
static const int repeat_delay = 600;
|
||||||
|
|
||||||
|
6
dwl.c
6
dwl.c
@ -10,6 +10,7 @@
|
|||||||
#include <sys/wait.h>
|
#include <sys/wait.h>
|
||||||
#include <time.h>
|
#include <time.h>
|
||||||
#include <unistd.h>
|
#include <unistd.h>
|
||||||
|
#include <libinput.h>
|
||||||
#include <wayland-server-core.h>
|
#include <wayland-server-core.h>
|
||||||
#include <wlr/backend.h>
|
#include <wlr/backend.h>
|
||||||
#include <wlr/render/wlr_renderer.h>
|
#include <wlr/render/wlr_renderer.h>
|
||||||
@ -38,6 +39,7 @@
|
|||||||
#include <wlr/types/wlr_xdg_decoration_v1.h>
|
#include <wlr/types/wlr_xdg_decoration_v1.h>
|
||||||
#include <wlr/types/wlr_xdg_output_v1.h>
|
#include <wlr/types/wlr_xdg_output_v1.h>
|
||||||
#include <wlr/types/wlr_xdg_shell.h>
|
#include <wlr/types/wlr_xdg_shell.h>
|
||||||
|
#include <wlr/backend/libinput.h>
|
||||||
#include <wlr/util/log.h>
|
#include <wlr/util/log.h>
|
||||||
#include <xkbcommon/xkbcommon.h>
|
#include <xkbcommon/xkbcommon.h>
|
||||||
#ifdef XWAYLAND
|
#ifdef XWAYLAND
|
||||||
@ -970,6 +972,10 @@ createlayersurface(struct wl_listener *listener, void *data)
|
|||||||
void
|
void
|
||||||
createpointer(struct wlr_input_device *device)
|
createpointer(struct wlr_input_device *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);
|
||||||
/* We don't do anything special with pointers. All of our pointer handling
|
/* 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
|
* is proxied through wlr_cursor. On another compositor, you might take this
|
||||||
* opportunity to do libinput configuration on the device to set
|
* opportunity to do libinput configuration on the device to set
|
||||||
|
Loading…
Reference in New Issue
Block a user