Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Pressing down on a disabled touchpad locks USB mouse left button input #8558

Open
1 task done
Telescopica577 opened this issue Nov 23, 2024 · 2 comments
Open
1 task done
Labels
bug Something isn't working

Comments

@Telescopica577
Copy link

Already reported ? *

  • I have searched the existing open and closed issues.

Regression?

No

System Info and Version

System/Version info
Hyprland 0.45.2 built from branch  at commit 12f9a0d0b93f691d4d9923716557154d74777b0a  ([gha] Nix: update inputs).
Date: Tue Nov 19 21:47:18 2024
Tag: v0.45.2, commits: 5451
built against aquamarine 0.5.0


flags set:
debug


System Information:
System name: Linux
Node name: TelescopicaLaptop
Release: 6.11.9-arch1-1
Version: #1 SMP PREEMPT_DYNAMIC Sun, 17 Nov 2024 16:06:17 +0000


GPU information: 
01:00.0 VGA compatible controller [0300]: NVIDIA Corporation TU116M [GeForce GTX 1660 Ti Mobile] [10de:2191] (rev a1) (prog-if 00 [VGA controller])
NVRM version: NVIDIA UNIX x86_64 Kernel Module  565.57.01  Thu Oct 10 12:29:05 UTC 2024


os-release: NAME="Arch Linux"
PRETTY_NAME="Arch Linux"
ID=arch
BUILD_ID=rolling
ANSI_COLOR="38;2;23;147;209"
HOME_URL="https://archlinux.org/"
DOCUMENTATION_URL="https://wiki.archlinux.org/"
SUPPORT_URL="https://bbs.archlinux.org/"
BUG_REPORT_URL="https://gitlab.archlinux.org/groups/archlinux/-/issues"
PRIVACY_POLICY_URL="https://terms.archlinux.org/docs/privacy-policy/"
LOGO=archlinux-logo


plugins:

======Config-Start======


Config File: /home/telescopica/.config/hypr/hyprland.conf: Read Succeeded
# Refer to the wiki for more information.
# https://wiki.hyprland.org/Configuring/

source = ~/.config/hypr/colors.conf

################
### MONITORS ###
################

# See https://wiki.hyprland.org/Configuring/Monitors/
monitor = eDP-1, highrr, 1920x0, 1.0
monitor = DP-2, highrr, 0x0, 1.0

###################
### MY PROGRAMS ###
###################

# See https://wiki.hyprland.org/Configuring/Keywords/

# Set programs that you use
$terminal = kitty
$fileManager = nemo
$menu = wofi
$webBrowser = firefox

#################
### AUTOSTART ###
#################

exec-once = waybar & hyprpaper & solaar -w hide & playerctld daemon & sleep 0.5 && newlook s

#############################
### ENVIRONMENT VARIABLES ###
#############################

# See https://wiki.hyprland.org/Configuring/Environment-variables/

env = XCURSOR_SIZE,24
env = HYPRCURSOR_SIZE,24
env = TERM,$terminal
env = BROWSER,$webBrowser
env = GTK_THEME,Qogir-Dark
env = ELECTRON_OZONE_PLATFORM_HINT,wayland

#####################
### LOOK AND FEEL ###
#####################

# Refer to https://wiki.hyprland.org/Configuring/Variables/

# https://wiki.hyprland.org/Configuring/Variables/#general
general {
    gaps_in = 3
    gaps_out = 6

    border_size = 2

    col.active_border = $focusedBorderColors
    col.inactive_border = rgba(303030ee)

    resize_on_border = false

    allow_tearing = true

    layout = dwindle
}

# https://wiki.hyprland.org/Configuring/Variables/#decoration
decoration {
    rounding = 10
    active_opacity = 1.0
    inactive_opacity = 0.75

    shadow {
        enabled = false
    }

    # https://wiki.hyprland.org/Configuring/Variables/#blur
    blur {
        enabled = true
	size = 5
	passes = 3
	noise = 0
	brightness = 0.75
    }
}

# https://wiki.hyprland.org/Configuring/Variables/#animations
animations {
    enabled = yes, please :)

    # Default animations, see https://wiki.hyprland.org/Configuring/Animations/ for more

    bezier = easeOutQuint,0.23,1,0.32,1
    bezier = easeInOutCubic,0.65,0.05,0.36,1
    bezier = linear,0,0,1,1
    bezier = almostLinear,0.5,0.5,0.75,1.0
    bezier = quick,0.15,0,0.1,1

    animation = global, 1, 10, default
    animation = border, 1, 5.39, easeOutQuint
    animation = windows, 1, 4.79, easeOutQuint
    animation = windowsIn, 1, 4.1, easeOutQuint, popin 87%
    animation = windowsOut, 1, 1.49, linear, popin 87%
    animation = fadeIn, 1, 1.73, almostLinear
    animation = fadeOut, 1, 1.46, almostLinear
    animation = fade, 1, 3.03, quick
    animation = layers, 1, 3.81, easeOutQuint
    animation = layersIn, 1, 4, easeOutQuint, fade
    animation = layersOut, 1, 1.5, linear, fade
    animation = fadeLayersIn, 1, 1.79, almostLinear
    animation = fadeLayersOut, 1, 1.39, almostLinear
    animation = workspaces, 1, 1.94, almostLinear, fade
    animation = workspacesIn, 1, 1.21, almostLinear, fade
    animation = workspacesOut, 1, 1.94, almostLinear, fade
}

# Ref https://wiki.hyprland.org/Configuring/Workspace-Rules/
# "Smart gaps" / "No gaps when only"
# uncomment all if you wish to use that.
# workspace = w[t1], gapsout:0, gapsin:0
# workspace = w[tg1], gapsout:0, gapsin:0
# workspace = f[1], gapsout:0, gapsin:0
# windowrulev2 = bordersize 0, floating:0, onworkspace:w[t1]
# windowrulev2 = rounding 0, floating:0, onworkspace:w[t1]
# windowrulev2 = bordersize 0, floating:0, onworkspace:w[tg1]
# windowrulev2 = rounding 0, floating:0, onworkspace:w[tg1]
# windowrulev2 = bordersize 0, floating:0, onworkspace:f[1]
# windowrulev2 = rounding 0, floating:0, onworkspace:f[1]

# See https://wiki.hyprland.org/Configuring/Dwindle-Layout/ for more
dwindle {
    pseudotile = false # Master switch for pseudotiling. Enabling is bound to mainMod + P in the keybinds section below
    preserve_split = true # You probably want this
}

# See https://wiki.hyprland.org/Configuring/Master-Layout/ for more
master {
    new_status = master
}

# https://wiki.hyprland.org/Configuring/Variables/#misc
misc {
    force_default_wallpaper = 0 # Set to 0 or 1 to disable the anime mascot wallpapers
    disable_hyprland_logo = true # If true disables the random hyprland logo / anime girl background. :(
    vfr = false # Reduces frames sent to GPU when nothing is happening. Fucks up cava, so disabled.
}


#############
### INPUT ###
#############

# https://wiki.hyprland.org/Configuring/Variables/#input
input {
    kb_layout = us
    kb_variant =
    kb_model =
    kb_options =
    kb_rules =

    follow_mouse = 1

    sensitivity = 0 # -1.0 - 1.0, 0 means no modification.

    touchpad {
        natural_scroll = false
    }
}

# https://wiki.hyprland.org/Configuring/Variables/#gestures
gestures {
    workspace_swipe = false
}

# See https://wiki.hyprland.org/Configuring/Keywords/#per-device-input-configs for more
device {
    name = msft0001:01-04f3:304b-touchpad
    enabled = false
}
device {
    name = msft0001:01-04f3:304b-mouse
    enabled = false
}

###################
### KEYBINDINGS ###
###################

# See https://wiki.hyprland.org/Configuring/Keywords/
$mainMod = SUPER # Sets "Windows" key as main modifier

# Standard management binds
bind = $mainMod, C, killactive,
bind = $mainMod, E, exec, $fileManager
bind = $mainMod, V, togglefloating,
bind = $mainMod, Q, exec, $terminal
bind = $mainMod, R, exec, $menu
bind = $mainMod, J, togglesplit, # dwindle
bind = $mainMod, F, exec, $webBrowser
bind = CTRL ALT, backspace, exit,

# Screenshot binds
bind = , print, exec, grim - | wl-copy
bind = CTRL, print, exec, grim -g "$(slurp -b 00000080 -s 00000000 -c 00000000)" - | wl-copy
bind = ALT, print, exec, grim -g "$(slurp -b 00000080 -s 00000000 -c 00000000 -o)" - | wl-copy

# Newlook binds
bind = SUPER ALT SHIFT, s, exec, newlook s
bind = SUPER ALT SHIFT, q, exec, newlook q
bind = SUPER ALT SHIFT, e, exec, newlook e

# Move focus with mainMod + arrow keys
bind = $mainMod, left, movefocus, l
bind = $mainMod, right, movefocus, r
bind = $mainMod, up, movefocus, u
bind = $mainMod, down, movefocus, d

# Move current workspace to specified monitor
bind = $mainMod SHIFT, A, movecurrentworkspacetomonitor, DP-2
bind = $mainMod SHIFT, S, movecurrentworkspacetomonitor, eDP-1 

# Switch workspaces with mainMod + [0-9]
bind = $mainMod, 1, workspace, 1
bind = $mainMod, 2, workspace, 2
bind = $mainMod, 3, workspace, 3
bind = $mainMod, 4, workspace, 4
bind = $mainMod, 5, workspace, 5
bind = $mainMod, 6, workspace, 6
bind = $mainMod, 7, workspace, 7
bind = $mainMod, 8, workspace, 8
bind = $mainMod, 9, workspace, 9
bind = $mainMod, 0, workspace, 10

# Move active window to a workspace with mainMod + SHIFT + [0-9]
bind = $mainMod SHIFT, 1, movetoworkspace, 1
bind = $mainMod SHIFT, 2, movetoworkspace, 2
bind = $mainMod SHIFT, 3, movetoworkspace, 3
bind = $mainMod SHIFT, 4, movetoworkspace, 4
bind = $mainMod SHIFT, 5, movetoworkspace, 5
bind = $mainMod SHIFT, 6, movetoworkspace, 6
bind = $mainMod SHIFT, 7, movetoworkspace, 7
bind = $mainMod SHIFT, 8, movetoworkspace, 8
bind = $mainMod SHIFT, 9, movetoworkspace, 9
bind = $mainMod SHIFT, 0, movetoworkspace, 10

# Scroll through existing workspaces with mainMod + scroll
bind = $mainMod, mouse_down, workspace, e+1
bind = $mainMod, mouse_up, workspace, e-1

# Move/resize windows with mainMod + LMB/RMB and dragging
bindm = $mainMod, mouse:272, movewindow
bindm = $mainMod, mouse:273, resizewindow

# Laptop multimedia keys for volume and LCD brightness
bindel = ,XF86AudioRaiseVolume, exec, wpctl set-volume @DEFAULT_AUDIO_SINK@ 5%+
bindel = ,XF86AudioLowerVolume, exec, wpctl set-volume @DEFAULT_AUDIO_SINK@ 5%-
bindel = ,XF86MonBrightnessUp, exec, brightnessctl s 10%+
bindel = ,XF86MonBrightnessDown, exec, brightnessctl s 10%-

# Binds for playerctl
bindl = , XF86AudioNext, exec, playerctl next
bindl = , XF86AudioPause, exec, playerctl play-pause
bindl = , XF86AudioPlay, exec, playerctl play-pause
bindl = , XF86AudioPrev, exec, playerctl previous

##############################
### WINDOWS AND WORKSPACES ###
##############################

# See https://wiki.hyprland.org/Configuring/Window-Rules/ for more
# See https://wiki.hyprland.org/Configuring/Workspace-Rules/ for workspace rules

# Enable tearing for Steam games and Minecraft
windowrulev2 = immediate, class:^(steam_app_\d+)
windowrulev2 = immediate, class:^(Minecraft)(.*)

# Ignore maximize requests from apps
windowrulev2 = suppressevent maximize, class:.*

# Fix some dragging issues with XWayland
windowrulev2 = nofocus,class:^$,title:^$,xwayland:1,floating:1,fullscreen:0,pinned:0


Config File: /home/telescopica/.config/hypr/colors.conf: Read Succeeded
$focusedBorderColors=rgba(67506Bee) rgba(946375ee) 90deg

======Config-End========

Description

I have disabled the touchpad on my laptop in Hyprland config since I don't use it, and instead use an external USB mouse. I've noticed that when I accidentally press-click on the touchpad, the USB mouse is unable to change the state of its left mouse button. For example, if the left mouse button was pressed when the touchpad is pushed down, the mouse will constantly register the left mouse button being down until the touchpad is released and the LMB on the USB mouse is clicked again.

The touchpad is actually disabled, no input from it can do anything on its own aside from locking the USB mouse's button in its current state until the touchpad is no longer pressed down and the state of the external mouse's button is changed again.

How to reproduce

  1. On a laptop with a built-in touchpad, disable the built-in touchpad using Hyprland's configuration file.
  2. Attach an external mouse (USB for certain, possibly Bluetooth).
  3. Physically press down on the touchpad, making it "click," and hold it there.
  4. Try to use LMB on the external mouse.

Crash reports, logs, images, videos

No response

@Telescopica577 Telescopica577 added the bug Something isn't working label Nov 23, 2024
@vaxerski
Copy link
Member

wait, but the touchpad physically cannot click? like if you hover over a button and click with the touchpad?

@Telescopica577
Copy link
Author

It can't click on its own, no. Just freezes LMB on the external mouse

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working
Projects
None yet
Development

No branches or pull requests

2 participants