Open sonjiku opened 1 year ago
Can you try setting tap_button_map
per-device?
I've already replied but GH doesn't show me anything. I'm getting the same exact behavior with this config:
# Keyboard
input {
# kb_model
# kb_variant
kb_layout = us,gr,ru
kb_options = "grp:alt_caps_toggle"
# kb_rules
# kb_file
numlock_by_default = true
repeat_rate = 25
repeat_delay = 600
}
# Mouse
input {
sensitivity = 1.0
accel_profile = flat
force_no_accel = false
left_handed = false
scroll_method = 2fg
scroll_button = 0
natural_scroll = false
follow_mouse = 1
# mouse_refocus = true
float_switch_override_focus = 1
}
# Touchpad
device:elan0708:00-04f3:30a0-touchpad {
# Touchpad
sensitivity = 0.5
accel_profile = adaptive
left_handed = false
scroll_method = 2fg
scroll_button = 0
natural_scroll = true
# mouse_refocus = true
touchpad {
disable_while_typing = true
natural_scroll = true
middle_button_emulation = false
tap_button_map = lmr
clickfinger_behavior = false
tap-to-click = true
drag_lock = false
tap-and-drag = false
}
}
gestures {
workspace_swipe = true
workspace_swipe_fingers = 3
workspace_swipe_distance = 300
workspace_swipe_invert = true
workspace_swipe_min_speed_to_force = 30
workspace_swipe_cancel_ratio = 0.5
workspace_swipe_create_new = true
workspace_swipe_forever = false
workspace_swipe_numbered = false
}
# Touchpad
device:elan0708:00-04f3:30a0-touchpad {
# Touchpad
sensitivity = 0.5
accel_profile = adaptive
left_handed = false
scroll_method = 2fg
scroll_button = 0
natural_scroll = true
# mouse_refocus = true
touchpad {
disable_while_typing = true
natural_scroll = true
middle_button_emulation = false
tap_button_map = lmr
clickfinger_behavior = false
tap-to-click = true
drag_lock = false
tap-and-drag = false
}
}
This isn't how you should configure a device
. touchpad
has no place in there, just place every option with the same nesting level.
Ok. Though this:
# Keyboard
input {
# kb_model
# kb_variant
kb_layout = us,gr,ru
kb_options = "grp:alt_caps_toggle"
# kb_rules
# kb_file
numlock_by_default = true
repeat_rate = 25
repeat_delay = 600
}
# Mouse
input {
sensitivity = 1.0
accel_profile = flat
force_no_accel = false
left_handed = false
scroll_method = 2fg
scroll_button = 0
natural_scroll = false
follow_mouse = 1
# mouse_refocus = true
float_switch_override_focus = 1
}
# Touchpad
device:elan0708:00-04f3:30a0-touchpad {
# Touchpad
sensitivity = 0.5
accel_profile = adaptive
left_handed = false
scroll_method = 2fg
scroll_button = 0
natural_scroll = true
# mouse_refocus = true
disable_while_typing = true
natural_scroll = true
middle_button_emulation = false
tap_button_map = lmr
clickfinger_behavior = false
tap-to-click = true
drag_lock = false
tap-and-drag = false
}
gestures {
workspace_swipe = true
workspace_swipe_fingers = 3
workspace_swipe_distance = 300
workspace_swipe_invert = true
workspace_swipe_min_speed_to_force = 30
workspace_swipe_cancel_ratio = 0.5
workspace_swipe_create_new = true
workspace_swipe_forever = false
workspace_swipe_numbered = false
}
Doesn't fix the issue.
Very weird that it doesn't work for you, I just did hyprctl keyword input:touchpad:tap_button_map lmr
and it works as expected. Have you tried using hyprctl?
I've actually tried that as well while trying to debug my config before I decided to create the issue. The output of the command is ok
but it doesn't actually do anything. If I then use hyprctl getoption input:touchpad:tap_button_map
, I get the following output:
option input:touchpad:tap_button_map
int: -9223372036854775807
float: -340282346638528859811704183484516925440.000000
str: "[[EMPTY]]"
data: 0
Following your advice and adding the option to the device, doesn't allow me to do it through hyprctl
though, since the name of the device includes a :
character and it is parsed as a delimiter from my understanding. This means I can't use the hyprctl getoption
command to check if the config is parsed correctly for that device. Bellow you can see what hyprctl devices
provides for the touchpad device:
Mouse at 565285bf4530:
elan0708:00-04f3:30a0-touchpad
default speed: 0.000000
Also, bellow are the keyboards the command outputs as well. I noticed that power-button
can be set to other layouts, which is interesting.
Keyboards:
Keyboard at 565285792710:
power-button
rules: r "", m "", l "us,gr,ru", v "", o ""grp:alt_caps_toggle""
active keymap: English (US)
main: no
Keyboard at 5652857d2e70:
video-bus
rules: r "", m "", l "us,gr,ru", v "", o ""grp:alt_caps_toggle""
active keymap: English (US)
main: no
Keyboard at 565285b7f1a0:
power-button-1
rules: r "", m "", l "us,gr,ru", v "", o ""grp:alt_caps_toggle""
active keymap: English (US)
main: no
Keyboard at 5652858458d0:
microsoft-microsoft-nano-transceiver-1.1
rules: r "", m "", l "us,gr,ru", v "", o ""grp:alt_caps_toggle""
active keymap: English (US)
main: no
Keyboard at 565285a34160:
microsoft-microsoft-nano-transceiver-1.1-consumer-control
rules: r "", m "", l "us,gr,ru", v "", o ""grp:alt_caps_toggle""
active keymap: English (US)
main: no
Keyboard at 565285b8adc0:
microsoft-microsoft-nano-transceiver-1.1-system-control
rules: r "", m "", l "us,gr,ru", v "", o ""grp:alt_caps_toggle""
active keymap: English (US)
main: no
Keyboard at 565285b8b270:
microsoft-microsoft-nano-transceiver-1.1-1
rules: r "", m "", l "us,gr,ru", v "", o ""grp:alt_caps_toggle""
active keymap: English (US)
main: no
Keyboard at 565285731f40:
at-translated-set-2-keyboard
rules: r "", m "", l "us,gr,ru", v "", o ""grp:alt_caps_toggle""
active keymap: English (US)
main: no
Keyboard at 5652856ab020:
wireless-hotkeys
rules: r "", m "", l "us,gr,ru", v "", o ""grp:alt_caps_toggle""
active keymap: English (US)
main: no
Keyboard at 5652856aa580:
hp-wmi-hotkeys
rules: r "", m "", l "us,gr,ru", v "", o ""grp:alt_caps_toggle""
active keymap: English (US)
main: no
Keyboard at 5652857d12d0:
keyd-virtual-keyboard
rules: r "", m "", l "us,gr,ru", v "", o ""grp:alt_caps_toggle""
active keymap: English (US)
main: yes
I think that a good idea going forwards, would be providing a way to capture generic input types, instead of specific devices. Checking on the wiki, I didn't find any relevant information on this, so I assume this isn't a feature yet. Sway can do this and it's really useful in my opinion.
I seem to have a very similar issue, except in my case hyperctl
says it's set properly:
╰─$ hyprctl getoption input:touchpad:tap_button_map
option input:touchpad:tap_button_map
int: -9223372036854775807
float: -340282346638528859811704183484516925440.00000
str: "lmr"
data: 0
set: true
It still doesn't work all the same, middle button is still at three fingers.
I'm also facing this issue, my hyprctl also says it is set properly, changing it in sway does work, I can't seem to get this set on any touchpads.
having the same issue with setting middle_button_emulation = false
I tried forcing it on all available input devices (my trackpad shows as a touchpad and a mouse separately) and even the global option, but pressing the middle-bottom of the touchpad still emulates middle-mouse
device {
name = syna2393:00-06cb:7a13-touchpad
middle_button_emulation = false
}
device {
name = syna2393:00-06cb:7a13-mouse
middle_button_emulation = false
}
touchpad {
natural_scroll = true
scroll_factor = 0.25
tap-to-click = false
middle_button_emulation = false
}
}
I decided to try Hyprland again to see if this issue has been solved in anyway since there have been a lot of updates since last time, and it seems like the issue persists.
What I find really weird is how hyprctl or reloading the config, doesnt nag you about putting any other value other than lmr
or lrm
which to me says, this feature is not implemented well at all.
Disable while typing also doesn't seem to work.
tap-and-drag
doesn't work either.
dwt surely works on my laptop, as I use it all the time. Odd.
I think since other people seem to have a similar issue to mine, details need to be obtained about these people's systems, and the systems of people where this issue doesn't appear so we can figure out what is at fault.
I'm personally running NixOS with unstable NixPkgs. Info on my system config can be found in my dotfiles repo.
How about you @vaxerski?
I think it would be really helpful if @Kommynct, @sambow23 and @jaen could provide us with some info as well.
arc lonix
NixOS, with hyprland taken directly from this repo via the included flake (currently @ 60308a2bb576413cbc787d4bde4f8d0e3fa3c9d6
). The disable_while_typing
option seems to be the default for me, disabling it with hyprctl keyword
works, enabling it again also works. The tap_button_map
still doesn't work, honestly gave up on it ever working ¯\(ツ)\/¯
What I have noticed is that hyprctl shows that the options have been set, they just don't work for me. After messing with hyprland for about a day yesterday I gave up as well, as I've noticed some other things that don't work out of the box for me as they do with sway. That is a bit dissapointing as I was hoping that after a year these issues would have hopefully been fixed.
I am starting to have a suspicion that this may be a NixOS isssue...
I am starting to have a suspicion that this may be a NixOS isssue...
Even if, at least in my case I'm using what upstream provides — not what's in nixpkgs — so there should be some expectation of it working TBDesu.
Maybe faulty packaging? I'm pretty new to nix so I wouldn't be able to succesfully audit it.
My issue happened on arch, i haven't had time to test on nixos, I did move to it, but haven't re-tested since, what information would be useful for me to submit? i'll retest the two laptops soon on nixos.
I'm personally running NixOS with unstable NixPkgs. Info on my system config can be found in my dotfiles repo.
How about you @vaxerski?
I think it would be really helpful if @Kommynct, @sambow23 and @jaen could provide us with some info as well.
I'm having this issue on all of my laptops running NixOS, here is my repo: https://github.com/sambow23/nixstuff
My issue happened on arch, i haven't had time to test on nixos, I did move to it, but haven't re-tested since, what information would be useful for me to submit? i'll retest the two laptops soon on nixos.
Do you remember how you had installed it? If it was through nix, I think we have enough evidence to perhaps look at how Hyprland is packaged.
I find it weird that though Hyprland is popular enough to have over 1k issues at this moment, this issue has been left to die and there isn't any more information or reporting on this subject, and other people report not having this issue at all.
As of now, most of us that have had this issue seem to be running NixOS or have installed through nix. If the packaging of the software in nix is the cuplrit it would explain why this issue has been open with minimal activity for about a year since we're talking about a niche of a niche when it comes to the sample of people that can experience this.
Do you remember how you had installed it? If it was through nix, I think we have enough evidence to perhaps look at how Hyprland is packaged.
It was 100% not through nix
the way nixos works likely makes it guaranteed to happen and easily reproducible, however.
Maybe faulty packaging? I'm pretty new to nix so I wouldn't be able to succesfully audit it.
Feel free, but I'm pretty sure we provide all the required dependencies (or else hl wouldn't build).
I'm opening this as suggested by @fufexan.
I am configuring Hyprland. I want to use it on my laptop which has a normal touchpad that supports multifinger gestures. What I want, is to make it so that:
I know this is possible because sway, and x11 window managers allow me to do this. Supposedly the tap_button_map setting should allow me to do it, but nothing changes when I change anything, either from config or hyprctl.
My input config:
Like previously stated, by reading the wiki, what I expect is the behaviour I'm looking for, but what I'm getting is the default.