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
21.94k stars 913 forks source link

weird black margins when shitching between workspaces #8344

Open Masber opened 3 weeks ago

Masber commented 3 weeks ago

Already reported ? *

Regression?

No

System Info and Version

System/Version info ```sh Hyprland, built from branch at commit 4520b30d498daca8079365bdb909a8dea38e8d55 (version: bump to 0.44.1). Date: Wed Oct 9 14:54:39 2024 Tag: v0.44.1, commits: 5309 built against aquamarine 0.4.2 flags: (if any) System Information: System name: Linux Node name: support-ThinkPad-T490s Release: 6.11.0-8-generic Version: #8-Ubuntu SMP PREEMPT_DYNAMIC Mon Sep 16 13:41:20 UTC 2024 GPU information: 00:02.0 VGA compatible controller [0300]: Intel Corporation WhiskeyLake-U GT2 [UHD Graphics 620] [8086:3ea0] (prog-if 00 [VGA controller]) os-release: PRETTY_NAME="Ubuntu 24.10" NAME="Ubuntu" VERSION_ID="24.10" VERSION="24.10 (Oracular Oriole)" VERSION_CODENAME=oracular ID=ubuntu ID_LIKE=debian HOME_URL="https://www.ubuntu.com/" SUPPORT_URL="https://help.ubuntu.com/" BUG_REPORT_URL="https://bugs.launchpad.net/ubuntu/" PRIVACY_POLICY_URL="https://www.ubuntu.com/legal/terms-and-policies/privacy-policy" UBUNTU_CODENAME=oracular LOGO=ubuntu-logo plugins: ======Config-Start====== Config File: /home/msopena/.config/hypr/hyprland.conf: Read Succeeded # CUSTOMIZATION - 12-10-24 - IMPORTANT NOTES # Regarding screen sharing. # I have installed `xdg-desktop-portal-hyprland` (see systemd units as `systemctl --user status xdg-desktop-portal-hyprland`) however, I may have not done all the requirements needed like uninstalling `xdg-desktop-portal-wlr` because I am afraid Gnome may use it... there may be other things to do... if so, then google 'zoom support hyprland' # # Please note not all available settings / options are set here. # For a full list, see the wiki # # autogenerated = 1 # remove this line to remove the warning # See https://wiki.hyprland.org/Configuring/Monitors/ # CUSTOMIZATION - 28/11/23 - disable autoscale ref https://www.youtube.com/watch?v=V7nP-To0630 monitor=,prefered,auto,1 # See https://wiki.hyprland.org/Configuring/Keywords/ for more # Execute your favorite apps at launch # CUSTOMIZATION - 02/11/2024 - to speed up opening apps and to integrate windows communication through dbus (used for screensharing, gcr/gcr-ssh-agent and gnome-keyring-daemon). # refs: # - https://wiki.archlinux.org/title/GNOME/Keyring (see section 5) # - https://wiki.hyprland.org/FAQ/#some-of-my-apps-take-a-really-long-time-to-open # - https://wiki.hyprland.org/Hypr-Ecosystem/xdg-desktop-portal-hyprland/#share-picker-doesnt-use-the-system-theme exec-once = dbus-update-activation-environment --all # CUSTOMIZATION - 02/12/2023 - start apps exec-once=[workspace 1 silent] firefox exec-once=[workspace 2 silent] slack exec-once=[workspace 2 silent] sublime-text.subl exec-once=[workspace 3 silent] keepassxc exec-once=[workspace 5 silent] alacritty # 28/11/23 enable waybar and avoid starting firefox when starting # exec-once=waybar && hyprpaper exec-once=waybar # Source a file (multi-file configs) # source = ~/.config/hypr/myColors.conf # Some default env vars. # CUSTOMIZATION - 02/11/2024 - To integrate gcr (gcr-ssh-agent) with ssh agent so I don't need to type the password to unencrypt my ssh keys everytime I ssh into a remote machine env = SSH_AUTH_SOCK,$XDG_RUNTIME_DIR/gcr/ssh env = XCURSOR_SIZE,24 env = HYPRCURSOR_SIZE,24 # For all categories, see https://wiki.hyprland.org/Configuring/Variables/ input { kb_layout = us kb_variant = kb_model = kb_options = kb_rules = follow_mouse = 1 touchpad { natural_scroll = no } sensitivity = 0 # -1.0 - 1.0, 0 means no modification. } general { # See https://wiki.hyprland.org/Configuring/Variables/ for more gaps_in = 2 gaps_out = 4 border_size = 2 col.active_border = rgba(33ccffee) rgba(00ff99ee) 45deg col.inactive_border = rgba(595959aa) layout = dwindle # Please see https://wiki.hyprland.org/Configuring/Tearing/ before you turn this on allow_tearing = false } decoration { # See https://wiki.hyprland.org/Configuring/Variables/ for more rounding = 0 blur { enabled = false } drop_shadow = false } animations { enabled = no # # Some default animations, see https://wiki.hyprland.org/Configuring/Animations/ for more # # bezier = myBezier, 0.05, 0.9, 0.1, 1.05 # # animation = windows, 1, 3, myBezier # animation = windowsOut, 1, 2, default, popin 80% # # animation = border, 1, 25, default # # animation = borderangle, 1, 8, default # animation = fade, 1, 4, default # animation = workspaces, 1, 2, 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 = true # If true disables the random hyprland logo / anime girl background. :( vfr = true } # Example per-device config # See https://wiki.hyprland.org/Configuring/Keywords/#executing for more device { name = epic-mouse-v1 sensitivity = -0.5 } # Example windowrule v1 # windowrule = float, ^(kitty)$ # Example windowrule v2 # windowrulev2 = float,class:^(kitty)$,title:^(kitty)$ # See https://wiki.hyprland.org/Configuring/Window-Rules/ for more # CUSTOMIZATION - 02/12/2023 - window rules windowrulev2 = workspace 1, class:(firefox) # New instances of firefox created in workspace 1 windowrulev2 = workspace 2, class:(thunderbird) # New instances of thunderbirs created in workspace 2 windowrulev2 = workspace 2, class:(slack) # New instances of slack created in workspace 2 # windowrulev2 = workspace 3, class:(Alacritty) # New instances of Alacritty created in workspace 3 # CUSTOMIZATION - 02/12/23 - workspace rules # workspace = 1, on-created-empty:[noanim] firefox # 03/12/2023 If enabled, then firefox will ask if want to restore previous session. If disabled firefox will just restore previous session w/o asking which seems more convenient # workspace = 2, on-created-empty:[noanim] thunderbird # 03/12/3023 If enabled, then hyprland will create an extra instance of thunderbird upon login # workspace = 3, on-created-empty:[noanim] alacritty # 03/12/2023 If enabled, then hyprland will create an extra instance of alacritty upon login # See https://wiki.hyprland.org/Configuring/Keywords/ for more $mainMod = SUPER # Example binds, see https://wiki.hyprland.org/Configuring/Binds/ for more bind = $mainMod, T, exec, alacritty bind = $mainMod, C, killactive, bind = $mainMod, M, exit, bind = $mainMod, E, exec, nautilus bind = $mainMod, W, exec, firefox bind = $mainMod, V, togglefloating, # bind = $mainMod, R, exec, wofi --show drun --style ~/.config/wofi/macchiato/style.css bind = $mainMod, R, exec, tofi-drun | xargs hyprctl dispatch exec -- bind = , print, exec, grim -g "$(slurp)" - | swappy -f - # Open sniping tool to take screenshots when pressing `Prt SC` key # bind = $mainMod, P, pseudo, # dwindle - CUSTOMIZATION - 12/10/2024 - I don't understand how to use pseudo windows so I am disabling it bind = $mainMod, S, togglesplit, # dwindle bind = $mainMod, F, fullscreen bind = $mainMod, Q, Exit # CUSTOMIZATION - 12/10/24 - Add my vim keymaps for window navigation bind = $mainMod, H, movefocus, l bind = $mainMod, L, movefocus, r bind = $mainMod, K, movefocus, u bind = $mainMod, J, movefocus, d # 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 # Example special workspace (scratchpad) bind = $mainMod, S, togglespecialworkspace, magic bind = $mainMod SHIFT, S, movetoworkspace, special:magic # Scroll through existing workspaces with mainMod + scroll bind = $mainMod, mouse_down, workspace, e+1 bind = $mainMod, mouse_up, workspace, e-1 bindm = $mainMod, mouse:272, movewindow bindm = $mainMod, mouse:273, resizewindow bind = $mainMod, Print, exec, grim -g "$(slurp)" # 28/11/2023 - Screenshot # l -> do stuff even when locked # e -> repeats when key is held # Increase volume bindle = , XF86AudioRaiseVolume, exec, wpctl set-volume @DEFAULT_AUDIO_SINK@ 5%+ # Decrease volume bindle = , XF86AudioLowerVolume, exec, wpctl set-volume @DEFAULT_AUDIO_SINK@ 5%- # Toggle mute sound bindle = , XF86AudioMute, exec, wpctl set-mute @DEFAULT_AUDIO_SINK@ toggle # Toggle mute mic bindle = , XF86AudioMicMute, exec, pactl set-source-mute @DEFAULT_SOURCE@ toggle # Increase screen brightness bindle = , XF86MonBrightnessUp, exec, brightnessctl set 5%+ # Decrease screen brightness bindle = , XF86MonBrightnessDown, exec, brightnessctl set 5%- # trigger when the switch is toggled bindl=,switch:Lid Switch,exec,swaylock # trigger when the switch is turning off bindl=,switch:off:Lid Switch,exec,hyprctl keyword monitor "eDP-1,prefered,auto,1" # trigger when the switch is turning on bindl=,switch:on:Lid Switch,exec,hyprctl keyword monitor "eDP-1, disable" # CUSTOMIZATION - 12-10-24 - Apparently needed for screen sharing ref https://gist.github.com/brunoanc/2dea6ddf6974ba4e5d26c3139ffb7580#editing-the-configuration-file and https://wiki.hyprland.org/Useful-Utilities/Screen-Sharing/#screensharing # exec-once=dbus-update-activation-environment --systemd WAYLAND_DISPLAY XDG_CURRENT_DESKTOP ======Config-End======== ```

Description

When moving to a workspace with firefox and the mouse is not on top of the firefox windows (firefox not focussed), then, the firefox window is rendered with a weird black margin at the top and left sides

How to reproduce

Open firefox and another application into a workspace:

Change workspace

Go back to previous workspace

Notice firefox windows is rendered with a black margin. The margin disappears when firefox windows is focused

Crash reports, logs, images, videos

https://github.com/user-attachments/assets/e626fab0-fb98-45ca-b7ad-99b667cc459b

vaxerski commented 3 weeks ago

this is odd... does this happen on the default config?

Masber commented 3 weeks ago

what do you mean by default configuration? removing the ~/.config/hypr/hyprland.conf file?

vaxerski commented 3 weeks ago

using the default config. See https://github.com/hyprwm/Hyprland/blob/main/example/hyprland.conf

Masber commented 3 weeks ago

yes I can replicate the issue using the default config

vaxerski commented 3 weeks ago

this is very weird, because I can't.