mirror of
https://github.com/DreamMaoMao/maomaowm.git
synced 2025-11-04 13:29:56 -05:00
feat: add option to disable trackpad
This commit is contained in:
parent
7f314254f3
commit
dadbccbac0
4 changed files with 12 additions and 0 deletions
|
|
@ -89,6 +89,7 @@ xkb_rules_layout=us
|
||||||
|
|
||||||
# Trackpad
|
# Trackpad
|
||||||
# need relogin to make it apply
|
# need relogin to make it apply
|
||||||
|
disable_trackpad=0
|
||||||
tap_to_click=1
|
tap_to_click=1
|
||||||
tap_and_drag=1
|
tap_and_drag=1
|
||||||
drag_lock=1
|
drag_lock=1
|
||||||
|
|
|
||||||
|
|
@ -192,6 +192,7 @@ typedef struct {
|
||||||
unsigned int numlockon;
|
unsigned int numlockon;
|
||||||
|
|
||||||
/* Trackpad */
|
/* Trackpad */
|
||||||
|
int disable_trackpad;
|
||||||
int tap_to_click;
|
int tap_to_click;
|
||||||
int tap_and_drag;
|
int tap_and_drag;
|
||||||
int drag_lock;
|
int drag_lock;
|
||||||
|
|
@ -1101,6 +1102,8 @@ void parse_config_line(Config *config, const char *line) {
|
||||||
config->repeat_rate = atoi(value);
|
config->repeat_rate = atoi(value);
|
||||||
} else if (strcmp(key, "repeat_delay") == 0) {
|
} else if (strcmp(key, "repeat_delay") == 0) {
|
||||||
config->repeat_delay = atoi(value);
|
config->repeat_delay = atoi(value);
|
||||||
|
} else if (strcmp(key, "disable_trackpad") == 0) {
|
||||||
|
config->disable_trackpad = atoi(value);
|
||||||
} else if (strcmp(key, "tap_to_click") == 0) {
|
} else if (strcmp(key, "tap_to_click") == 0) {
|
||||||
config->tap_to_click = atoi(value);
|
config->tap_to_click = atoi(value);
|
||||||
} else if (strcmp(key, "tap_and_drag") == 0) {
|
} else if (strcmp(key, "tap_and_drag") == 0) {
|
||||||
|
|
@ -2111,6 +2114,7 @@ void override_config(void) {
|
||||||
numlockon = CLAMP_INT(config.numlockon, 0, 1);
|
numlockon = CLAMP_INT(config.numlockon, 0, 1);
|
||||||
|
|
||||||
// 触控板设置
|
// 触控板设置
|
||||||
|
disable_trackpad = CLAMP_INT(config.disable_trackpad, 0, 1);
|
||||||
tap_to_click = CLAMP_INT(config.tap_to_click, 0, 1);
|
tap_to_click = CLAMP_INT(config.tap_to_click, 0, 1);
|
||||||
tap_and_drag = CLAMP_INT(config.tap_and_drag, 0, 1);
|
tap_and_drag = CLAMP_INT(config.tap_and_drag, 0, 1);
|
||||||
drag_lock = CLAMP_INT(config.drag_lock, 0, 1);
|
drag_lock = CLAMP_INT(config.drag_lock, 0, 1);
|
||||||
|
|
@ -2248,6 +2252,7 @@ void set_value_default() {
|
||||||
config.repeat_delay = repeat_delay;
|
config.repeat_delay = repeat_delay;
|
||||||
|
|
||||||
/* Trackpad */
|
/* Trackpad */
|
||||||
|
config.disable_trackpad = disable_trackpad;
|
||||||
config.tap_to_click = tap_to_click;
|
config.tap_to_click = tap_to_click;
|
||||||
config.tap_and_drag = tap_and_drag;
|
config.tap_and_drag = tap_and_drag;
|
||||||
config.drag_lock = drag_lock;
|
config.drag_lock = drag_lock;
|
||||||
|
|
|
||||||
|
|
@ -119,6 +119,7 @@ int repeat_rate = 25;
|
||||||
int repeat_delay = 600;
|
int repeat_delay = 600;
|
||||||
|
|
||||||
/* Trackpad */
|
/* Trackpad */
|
||||||
|
int disable_trackpad = 0;
|
||||||
int tap_to_click = 1;
|
int tap_to_click = 1;
|
||||||
int tap_and_drag = 1;
|
int tap_and_drag = 1;
|
||||||
int drag_lock = 1;
|
int drag_lock = 1;
|
||||||
|
|
|
||||||
|
|
@ -2961,6 +2961,11 @@ void createpointer(struct wlr_pointer *pointer) {
|
||||||
if (wlr_input_device_is_libinput(&pointer->base) &&
|
if (wlr_input_device_is_libinput(&pointer->base) &&
|
||||||
(device = wlr_libinput_get_device_handle(&pointer->base))) {
|
(device = wlr_libinput_get_device_handle(&pointer->base))) {
|
||||||
|
|
||||||
|
if (libinput_device_config_tap_get_finger_count(device) &&
|
||||||
|
disable_trackpad) {
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
if (libinput_device_config_tap_get_finger_count(device)) {
|
if (libinput_device_config_tap_get_finger_count(device)) {
|
||||||
libinput_device_config_tap_set_enabled(device, tap_to_click);
|
libinput_device_config_tap_set_enabled(device, tap_to_click);
|
||||||
libinput_device_config_tap_set_drag_enabled(device, tap_and_drag);
|
libinput_device_config_tap_set_drag_enabled(device, tap_and_drag);
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue