hyprwm / Hyprland

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

Hyprcursor does not fully switch cursor icons #6633

Closed RoshanAH closed 5 days ago

RoshanAH commented 6 days ago

Regression?

No

System Info and Version

System/Version info ```sh Hyprland, built from branch main at commit 9e781040d9067c2711ec2e9f5b47b76ef70762b3 (props: bump version to 0.41.1). Date: 2024-06-13 Tag: v0.41.1, commits: 9e781040d9067c2711ec2e9f5b47b76ef70762b3 flags: (if any) System Information: System name: Linux Node name: razer Release: 6.6.34 Version: #1-NixOS SMP PREEMPT_DYNAMIC Sun Jun 16 11:47:49 UTC 2024 GPU information: 01:00.0 VGA compatible controller [0300]: NVIDIA Corporation GA106M [GeForce RTX 3060 Mobile / Max-Q] [10de:2520] (rev a1) (prog-if 00 [VGA controller]) 04:00.0 VGA compatible controller [0300]: Advanced Micro Devices, Inc. [AMD/ATI] Cezanne [Radeon Vega Series / Radeon Vega Mobile Series] [1002:1638] (rev c4) (prog-if 00 [VGA controller]) os-release: ANSI_COLOR="1;34" BUG_REPORT_URL="https://github.com/NixOS/nixpkgs/issues" BUILD_ID="24.11.20240620.d603719" DOCUMENTATION_URL="https://nixos.org/learn.html" HOME_URL="https://nixos.org/" ID=nixos IMAGE_ID="" IMAGE_VERSION="" LOGO="nix-snowflake" NAME=NixOS PRETTY_NAME="NixOS 24.11 (Vicuna)" SUPPORT_URL="https://nixos.org/community.html" VERSION="24.11 (Vicuna)" VERSION_CODENAME=vicuna VERSION_ID="24.11" plugins: ======Config-Start====== Config File: /home/myuser/.config/hypr/hyprland.conf: Read Succeeded exec-once = /nix/store/y29cbwfiwb9nyi4db4apk9dgylzdjm1v-dbus-1.14.10/bin/dbus-update-activation-environment --systemd DISPLAY HYPRLAND_INSTANCE_SIGNATURE WAYLAND_DISPLAY XDG_CURRENT_DESKTOP && systemctl --user stop graphical-session.target && systemctl --user start hyprland-session.target animations { bezier=snap,0.2,1,.5,1 bezier=fling,.4,-0.5,1,.8 bezier=push,.5,0,.5,1 animation=windowsIn,1,3,snap,popin animation=windowsOut,1,3,push,slide animation=windowsMove,1,3,snap animation=workspaces,0,2,snap,slide animation=fadeIn,1,3,snap animation=fadeOut,1,3,snap animation=fadeSwitch,1,3,snap animation=fadeShadow,1,3,snap animation=fadeDim,1,3,snap animation=border,1,3,snap enabled=true } cursor { inactive_timeout=4 } decoration { blur { enabled=true ignore_opacity=false new_optimizations=true passes=3 size=5 } active_opacity=1.000000 drop_shadow=false fullscreen_opacity=1.000000 inactive_opacity=1.000000 rounding=0 } device { name=razer-razer-viper-v2-pro-1 accel_profile=flat sensitivity=0.000000 } device { name=razer-razer-viper-v2-pro accel_profile=flat sensitivity=0.000000 } dwindle { force_split=2 no_gaps_when_only=1 preserve_split=true } general { border_size=2 col.active_border=rgba(d3869bff) rgba(d5c4a1ff) 60deg col.inactive_border=rgba(282828ff) gaps_in=5 gaps_out=10 } input { touchpad { disable_while_typing=false natural_scroll=true } accel_profile=adaptive force_no_accel=false natural_scroll=false repeat_delay=200 repeat_rate=50 sensitivity=0.000000 } misc { close_special_on_empty=true disable_hyprland_logo=true disable_splash_rendering=true focus_on_activate=true initial_workspace_tracking=2 new_window_takes_over_fullscreen=2 render_ahead_of_time=false vfr=true vrr=0 } bind=ALTSHIFT,c,killactive bind=ALT,space,fullscreen, bind=ALTSHIFT,space,fakefullscreen, bind=ALT,u,togglefloating bind=ALT,tab,layoutmsg,swapsplit bind=ALTSHIFT,tab,layoutmsg,togglesplit bind=ALT,1,workspace,name:1 bind=ALT,2,workspace,name:2 bind=ALT,3,workspace,name:3 bind=ALT,4,workspace,name:4 bind=ALT,5,workspace,name:5 bind=ALT,q,workspace,name:q bind=ALT,w,workspace,name:w bind=ALT,e,workspace,name:e bind=ALT,r,workspace,name:r bind=ALT,t,workspace,name:t bind=ALTSHIFT,1,movetoworkspacesilent,name:1 bind=ALTSHIFT,2,movetoworkspacesilent,name:2 bind=ALTSHIFT,3,movetoworkspacesilent,name:3 bind=ALTSHIFT,4,movetoworkspacesilent,name:4 bind=ALTSHIFT,5,movetoworkspacesilent,name:5 bind=ALTSHIFT,q,movetoworkspacesilent,name:q bind=ALTSHIFT,w,movetoworkspacesilent,name:w bind=ALTSHIFT,e,movetoworkspacesilent,name:e bind=ALTSHIFT,r,movetoworkspacesilent,name:r bind=ALTSHIFT,t,movetoworkspacesilent,name:t bind=ALT,down,movefocus,d bind=ALT,h,movefocus,l bind=ALT,j,movefocus,d bind=ALT,k,movefocus,u bind=ALT,l,movefocus,r bind=ALT,left,movefocus,l bind=ALT,right,movefocus,r bind=ALT,up,movefocus,u bind=ALTCONTROL,down,swapwindow,d bind=ALTCONTROL,h,swapwindow,l bind=ALTCONTROL,j,swapwindow,d bind=ALTCONTROL,k,swapwindow,u bind=ALTCONTROL,l,swapwindow,r bind=ALTCONTROL,left,swapwindow,l bind=ALTCONTROL,right,swapwindow,r bind=ALTCONTROL,up,swapwindow,u bind=ALT,Return,exec,/nix/store/vlnwl89j1bnwffhjzz6lrd2nxavdlmkr-alacritty-0.13.2/bin/alacritty bind=ALT,f,exec,/nix/store/ivddxq7p2nqynprs12ngfscxbyj9xvyk-firefox-127.0.1/bin/firefox bind=ALT,g,exec,qutebrowser bind=ALT,d,exec, discord --enable-features=UseOzonePlatform --ozone-platform=wayland bind=SUPER,s,exec,grimblast copy area binde=ALTSHIFT,down,resizeactive,0 15 binde=ALTSHIFT,h,resizeactive,-15 0 binde=ALTSHIFT,j,resizeactive,0 15 binde=ALTSHIFT,k,resizeactive,0 -15 binde=ALTSHIFT,l,resizeactive,15 0 binde=ALTSHIFT,left,resizeactive,-15 0 binde=ALTSHIFT,right,resizeactive,15 0 binde=ALTSHIFT,up,resizeactive,0 -15 binde=,XF86MonBrightnessUp,exec,/nix/store/2jzm4kd83c27ssk78bc7c38hxm25swid-brightnessctl-0.5.1/bin/brightnessctl s 5%+ binde=,XF86MonBrightnessDown,exec,/nix/store/2jzm4kd83c27ssk78bc7c38hxm25swid-brightnessctl-0.5.1/bin/brightnessctl s 5%- binde=,XF86AudioRaiseVolume,exec,/nix/store/7nn37nyc4g01ckp7hlw7bqy4kwmz35va-pamixer-1.6/bin/pamixer -i 5 binde=,XF86AudioLowerVolume,exec,/nix/store/7nn37nyc4g01ckp7hlw7bqy4kwmz35va-pamixer-1.6/bin/pamixer -d 5 binde=,XF86AudioMute,exec,/nix/store/7nn37nyc4g01ckp7hlw7bqy4kwmz35va-pamixer-1.6/bin/pamixer -t bindl=,switch:on:Lid Switch,exec,/nix/store/cnrc0b6qdprqs8cmif1mkvkbddg36s72-monitor-check/bin/monitor-check hyprctl keyword monitor eDP-1,disable bindl=,switch:off:Lid Switch,exec,/nix/store/cnrc0b6qdprqs8cmif1mkvkbddg36s72-monitor-check/bin/monitor-check hyprctl keyword monitor eDP-1,1920x1080@144,0x0,1 bindm=ALT,mouse:272,movewindow bindm=ALT,mouse:273,resizewindow env=HYPRCURSOR_THEME,Bibata-Modern-Ice env=HYPRCURSOR_SIZE,32 env=WLR_NO_HARDWARE_CURSORS=1 exec-once=hyprctl setcursor Bibata-Modern-Ice 32 exec-once=hyprpaper monitor=eDP-1,1920x1080@144,0x0,1 monitor=,highrr,auto,1 ======Config-End======== ```

Description

Not all icons are displayed when using a hyprcursor theme. For example, the default hyprland cursor is displayed as the normal pointer, but my hyprcursor theme is displayed when I move a window around. I have attached a video for more detail.

How to reproduce

I am using the theme Bibata-Modern-Ice

My relevant cursor settings are:


env=HYPRCURSOR_THEME,Bibata-Modern-Ice
env=HYPRCURSOR_SIZE,32
env=WLR_NO_HARDWARE_CURSORS=1
exec-once=hyprctl setcursor Bibata-Modern-Ice 32

Crash reports, logs, images, videos

https://github.com/hyprwm/Hyprland/assets/89943827/c903062d-2665-40cf-8a49-2670f0551bf9

ikalco commented 6 days ago

might be that xwayland or gnome isn't using the proper cursors Try setting these env variables aswell

env = HYPRCURSOR_THEME,Bibata-Modern-Ice
env = HYPRCURSOR_SIZE,24
env = XCURSOR_THEME,Bibata-Modern-Ice
env = XCURSOR_SIZE,24

Also what does this command output? gsettings get org.gnome.desktop.interface cursor-theme

vaxerski commented 5 days ago

env=WLR_NO_HARDWARE_CURSORS=1 is wrong on two different levels too. First, it's not used, second, the syntax is wrong

RoshanAH commented 5 days ago

Setting XCURSOR env vars yields the same results. I am running nixOS so gsettings get org.gnome.desktop.interface cursor-theme returns "No schemas installed" as per the wiki. Is there an equivalent I can check for nixOS?

As for env=WLR_NO_HARDWARE_CURSORS=1, I am not sure where I got that from. The issue persists with cursor.no_hardware_cursor set to true and false.

fufexan commented 5 days ago

Have you checked https://wiki.hyprland.org/Nix/Hyprland-on-Home-Manager/#fixing-problems-with-themes?

RoshanAH commented 5 days ago

That did the trick. I thought I had checked the wiki thoroughly enough. Sorry about and thanks for the help