hyprwm / Hyprland

Hyprland is an independent, highly customizable, dynamic tiling Wayland compositor that doesn't sacrifice on its looks.
https://hyprland.org
BSD 3-Clause "New" or "Revised" License
19.6k stars 827 forks source link

Cursor cant reach border #7376

Open tinytempmouse opened 3 weeks ago

tinytempmouse commented 3 weeks ago

Regression?

Yes

System Info and Version

hyprctl systeminfo -c Hyprland, built from branch main at commit c5feee1e357f3c3c59ebe406630601c627807963 (xcursormgr: dont apply scale on gsettings (7316)). Date: Fri Aug 16 17:00:59 2024 Tag: v0.42.0-29-gc5feee1e, commits: 5098

flags: (if any)

System Information: System name: Linux Node name: tinymouse Release: 6.6.42-1-uconsole-rpi64-g485d11cfa7df Version: #1 SMP PREEMPT Tue, 30 Jul 2024 13:44:29 +0000

GPU information:

os-release: NAME="Arch Linux ARM" PRETTY_NAME="Arch Linux ARM" ID=archarm ID_LIKE=arch BUILD_ID=rolling ANSI_COLOR="38;2;23;147;209" HOME_URL="https://archlinuxarm.org/" DOCUMENTATION_URL="https://archlinuxarm.org/wiki" SUPPORT_URL="https://archlinuxarm.org/forum" BUG_REPORT_URL="https://github.com/archlinuxarm/PKGBUILDs/issues" LOGO=archlinux-logo

plugins:

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

Config File: /home/tinymouse/.config/hypr/hyprland.conf: Read Succeeded

AUTOGENERATED HYPR CONFIG.

PLEASE USE THE CONFIG PROVIDED IN THE GIT REPO /examples/hypr.conf AND EDIT IT,

OR EDIT THIS ONE ACCORDING TO THE WIKI INSTRUCTIONS.

autogenerated = 1 # remove this line to remove the warning

This is an example Hyprland config file.

Refer to the wiki for more information.

https://wiki.hyprland.org/Configuring/Configuring-Hyprland/

Please note not all available settings / options are set here.

For a full list, see the wiki

You can split this configuration into multiple files

Create your files separately and then link them to this file like this:

source = $HOME/.config/hypr/mocha.conf

################

MONITORS

################

See https://wiki.hyprland.org/Configuring/Monitors/

monitor=DSI-1,720x1280,auto,1,transform,3

monitor=,preferred,auto,auto

###################

MY PROGRAMS

###################

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

Set programs that you use

$term = kitty $editor = code $file = dolphin $browser = firefox

$srcPath = $HOME/.local/share/bin

#################

AUTOSTART

#################

Autostart necessary processes (like notifications daemons, status bars, etc.)

Or execute your favorite apps at launch like this:

exec-once = $terminal

exec-once = nm-applet &

exec-once = waybar & hyprpaper & firefox

exec-once = $scrPath/resetxdgportal.sh # reset XDPH for screenshare

exec-once = dbus-update-activation-environment --systemd WAYLAND_DISPLAY XDG_CURRENT_DESKTOP # for XDPH

exec-once = dbus-update-activation-environment --systemd --all # for XDPH

exec-once = systemctl --user import-environment WAYLAND_DISPLAY XDG_CURRENT_DESKTOP # for XDPH

exec-once = $scrPath/polkitkdeauth.sh # authentication dialogue for GUI apps exec-once = input-remapper-control --command autoload exec-once = waybar # launch the system bar exec-once = blueman-applet # systray app for Bluetooth exec-once = udiskie --no-automount --smart-tray # front-end that allows to manage removable media exec-once = nm-applet --indicator # systray app for Network/Wifi exec-once = dunst # start notification demon exec-once = wl-paste --type text --watch cliphist store # clipboard store text data exec-once = wl-paste --type image --watch cliphist store # clipboard store image data exec-once = hyprpaper

exec-once = $scrPath/swwwallpaper.sh # start wallpaper daemon

exec-once = $scrPath/batterynotify.sh # battery notification

#############################

ENVIRONMENT VARIABLES

#############################

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

env = XCURSOR_SIZE,24

env = HYPRCURSOR_SIZE,24

env = PATH,$PATH:$scrPath env = XDG_CURRENT_DESKTOP,Hyprland env = XDG_SESSION_TYPE,wayland env = XDG_SESSION_DESKTOP,Hyprland env = QT_QPA_PLATFORM,wayland;xcb env = QT_QPA_PLATFORMTHEME,qt6ct env = QT_WAYLAND_DISABLE_WINDOWDECORATION,1 env = QT_AUTO_SCREEN_SCALE_FACTOR,1 env = MOZ_ENABLE_WAYLAND,1 env = GDK_SCALE,1

#####################

LOOK AND FEEL

#####################

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

https://wiki.hyprland.org/Configuring/Variables/#general

general { gaps_in = 5 gaps_out = 20

border_size = 2

# https://wiki.hyprland.org/Configuring/Variables/#variable-types for info about colors
# col.active_border = rgba(33ccffee) rgba(00ff99ee) 45deg
col.active_border = rgba(b4befeee) rgba(cba6f7ee) 45deg
col.inactive_border = rgba(595959aa)

# Set to true enable resizing windows by clicking and dragging on borders and gaps
resize_on_border = false 

# Please see https://wiki.hyprland.org/Configuring/Tearing/ before you turn this on
allow_tearing = false

layout = dwindle

}

https://wiki.hyprland.org/Configuring/Variables/#decoration

decoration { rounding = 10

# Change transparency of focused and unfocused windows
active_opacity = 1.0
inactive_opacity = 1.0

drop_shadow = true
shadow_range = 4
shadow_render_power = 3
col.shadow = rgba(1a1a1aee)

# https://wiki.hyprland.org/Configuring/Variables/#blur
blur {
    enabled = true
    size = 3
    passes = 1

    vibrancy = 0.1696
}

}

https://wiki.hyprland.org/Configuring/Variables/#animations

animations { enabled = true

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

bezier = myBezier, 0.05, 0.9, 0.1, 1.05

animation = windows, 1, 7, myBezier
animation = windowsOut, 1, 7, default, popin 80%
animation = border, 1, 10, default
animation = borderangle, 1, 8, default
animation = fade, 1, 7, default
animation = workspaces, 1, 6, default

}

See https://wiki.hyprland.org/Configuring/Dwindle-Layout/ for more

dwindle { pseudotile = true # 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 = -1 # Set to 0 or 1 to disable the anime mascot wallpapers disable_hyprland_logo = false # If true disables the random hyprland logo / anime girl background. :( }

#############

INPUT

#############

https://wiki.hyprland.org/Configuring/Variables/#input

input { kb_layout = us 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 }

Example per-device config

See https://wiki.hyprland.org/Configuring/Keywords/#per-device-input-configs for more

device {

name = epic-mouse-v1

sensitivity = -0.5

}

####################

KEYBINDINGSS

####################

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

Window/Session actions

$srcPath = $HOME/.local/share/bin

$mainMod = Super # super / meta / windows key

bind = $mainMod, Q, exec, $scrPath/dontkillsteam.sh # close focused window

bind = $mainMod, Q, killactive bind = Alt, F4, exec, $scrPath/dontkillsteam.sh # close focused window bind = $mainMod, Delete, exit, # kill hyprland session bind = $mainMod, W, togglefloating, # toggle the window between focus and float bind = $mainMod, G, togglegroup, # toggle the window between focus and group bind = Alt, Return, fullscreen, # toggle the window between focus and fullscreen bind = $mainMod, L, exec, swaylock # launch lock screen bind = $mainMod+Shift, F, exec, $scrPath/windowpin.sh # toggle pin on focused window bind = $mainMod, Backspace, exec, $scrPath/logoutlaunch.sh # launch logout menu bind = Ctrl, Escape, exec, killall waybar || waybar # toggle waybar

Application shortcuts

bind = $mainMod, T, exec, $term # launch terminal emulator bind = $mainMod, E, exec, $file # launch file manager bind = $mainMod, C, exec, $editor # launch text editor bind = $mainMod, F, exec, $browser # launch web browser bind = Ctrl+Shift, Escape, exec, $scrPath/sysmonlaunch.sh # launch system monitor (htop/btop or fallback to top)

Rofi menus

bind = $mainMod, A, exec, rofi -show drun #pkill -x rofi || $scrPath/rofilaunch.sh d # launch application launcher bind = $mainMod, Tab, exec, rofi -show window #ipkill -x rofi || $scrPath/rofilaunch.sh w # launch window switcher bind = $mainMod+Shift, E, exec, rofi -show filebrowser #pkill -x rofi || $scrPath/rofilaunch.sh f # launch file explorer bind = $mainMod+Alt, A, exec, ani-cli --dub --rofi

Audio control

bindl = , F10, exec, $scrPath/volumecontrol.sh -o m # toggle audio mute

bindel = , F11, exec, $scrPath/volumecontrol.sh -o d # decrease volume

bindel = , F12, exec, $scrPath/volumecontrol.sh -o i # increase volume

bindl = , XF86AudioMute, exec, pamixer -t #$scrPath/volumecontrol.sh -o m # toggle audio mute bindl = , XF86AudioMicMute, exec, $scrPath/volumecontrol.sh -i m # toggle microphone mute bindel = , XF86AudioLowerVolume, exec, pamixer -d 5 #$scrPath/volumecontrol.sh -o d # decrease volume bindel = , XF86AudioRaiseVolume, exec, pamixer -i 5 #$scrPath/volumecontrol.sh -o i # increase volume

Media control

bindl = , XF86AudioPlay, exec, playerctl play-pause # toggle between media play and pause bindl = , XF86AudioPause, exec, playerctl play-pause # toggle between media play and pause bindl = , XF86AudioNext, exec, playerctl next # media next bindl = , XF86AudioPrev, exec, playerctl previous # media previous

Brightness control

bindel = , XF86MonBrightnessUp, exec, $scrPath/brightnesscontrol.sh i # increase brightness bindel = , XF86MonBrightnessDown, exec, $scrPath/brightnesscontrol.sh d # decrease brightness

Screenshot/Screencapture

bind = $mainMod, P, exec, $scrPath/screenshot.sh s # partial screenshot capture bind = $mainMod+Ctrl, P, exec, $scrPath/screenshot.sh sf # partial screenshot capture (frozen screen) bind = $mainMod+Alt, P, exec, $scrPath/screenshot.sh m # monitor screenshot capture bind = , Print, exec, $scrPath/screenshot.sh p # all monitors screenshot capture

Custom scripts

bind = $mainMod+Alt, G, exec, $scrPath/gamemode.sh # disable hypr effects for gamemode bind = $mainMod+Alt, Right, exec, $scrPath/swwwallpaper.sh -n # next wallpaper bind = $mainMod+Alt, Left, exec, $scrPath/swwwallpaper.sh -p # previous wallpaper bind = $mainMod+Alt, Up, exec, $scrPath/wbarconfgen.sh n # next waybar mode bind = $mainMod+Alt, Down, exec, $scrPath/wbarconfgen.sh p # previous waybar mode bind = $mainMod+Shift, R, exec, pkill -x rofi || $scrPath/wallbashtoggle.sh -m # launch wallbash mode select menu bind = $mainMod+Shift, T, exec, pkill -x rofi || $scrPath/themeselect.sh # launch theme select menu bind = $mainMod+Shift, A, exec, pkill -x rofi || $scrPath/rofiselect.sh # launch select menu bind = $mainMod+Shift, W, exec, pkill -x rofi || $scrPath/swwwallselect.sh # launch wallpaper select menu bind = $mainMod, V, exec, pkill -x rofi || $scrPath/cliphist.sh c # launch clipboard bind = $mainMod, K, exec, $scrPath/keyboardswitch.sh # switch keyboard layout

Move/Change window focus

bind = $mainMod, Left, movefocus, l bind = $mainMod, Right, movefocus, r bind = $mainMod, Up, movefocus, u bind = $mainMod, Down, movefocus, d bind = Alt, Tab, movefocus, d

Switch workspaces

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

Switch workspaces to a relative workspace

bind = $mainMod+Ctrl, Right, workspace, r+1 bind = $mainMod+Ctrl, Left, workspace, r-1

Move to the first empty workspace

bind = $mainMod+Ctrl, Down, workspace, empty

Resize windows

binde = $mainMod+Shift, Right, resizeactive, 30 0 binde = $mainMod+Shift, Left, resizeactive, -30 0 binde = $mainMod+Shift, Up, resizeactive, 0 -30 binde = $mainMod+Shift, Down, resizeactive, 0 30

Move focused window to a workspace

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

Move focused window to a relative workspace

bind = $mainMod+Ctrl+Alt, Right, movetoworkspace, r+1 bind = $mainMod+Ctrl+Alt, Left, movetoworkspace, r-1

Move focused window around the current workspace

bind = $mainMod+Shift+Ctrl, Left, movewindow, l bind = $mainMod+Shift+Ctrl, Right, movewindow, r bind = $mainMod+Shift+Ctrl, Up, movewindow, u bind = $mainMod+Shift+Ctrl, Down, movewindow, d

Scroll through existing workspaces

bind = $mainMod, mouse_down, workspace, e+1 bind = $mainMod, mouse_up, workspace, e-1

Move/Resize focused window

bindm = $mainMod, mouse:272, movewindow bindm = $mainMod, mouse:273, resizewindow bindm = $mainMod, Z, movewindow bindm = $mainMod, X, resizewindow

Move/Switch to special workspace (scratchpad)

bind = $mainMod+Alt, S, movetoworkspacesilent, special bind = $mainMod, S, togglespecialworkspace,

Toggle focused window split

bind = $mainMod, J, togglesplit

Move focused window to a workspace silently

bind = $mainMod+Alt, 1, movetoworkspacesilent, 1 bind = $mainMod+Alt, 2, movetoworkspacesilent, 2 bind = $mainMod+Alt, 3, movetoworkspacesilent, 3 bind = $mainMod+Alt, 4, movetoworkspacesilent, 4 bind = $mainMod+Alt, 5, movetoworkspacesilent, 5 bind = $mainMod+Alt, 6, movetoworkspacesilent, 6 bind = $mainMod+Alt, 7, movetoworkspacesilent, 7 bind = $mainMod+Alt, 8, movetoworkspacesilent, 8 bind = $mainMod+Alt, 9, movetoworkspacesilent, 9 bind = $mainMod+Alt, 0, movetoworkspacesilent, 10

##############################

WINDOWS AND WORKSPACES

##############################

See https://wiki.hyprland.org/Configuring/Window-Rules/ for more

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

Example windowrule v1

windowrule = float, ^(kitty)$

Example windowrule v2

windowrulev2 = float,class:^(kitty)$,title:^(kitty)$

windowrulev2 = suppressevent maximize, class:.* # You'll probably like this.

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

Description

Mouse can't reach the edge of the window

How to reproduce

Upgrading from v0.41.2 to current

Crash reports, logs, images, videos

https://github.com/user-attachments/assets/bd4c1d82-3c1e-40a9-aee3-6e4479649360

vaxerski commented 3 weeks ago

what the hell is that device??

what are you using to move the cursor? is that a touchpad?

Can you bisect this?

tinytempmouse commented 3 weeks ago

Raspberry pi based handheld & its a trackball

vaxerski commented 3 weeks ago

what the fuck

ca you bisect