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

window "blur/glows" when having a "improper" fullscreen/pin state? #8578

Open
1 task done
littleblack111 opened this issue Nov 25, 2024 · 3 comments
Open
1 task done
Labels
bug Something isn't working

Comments

@littleblack111
Copy link
Contributor

littleblack111 commented Nov 25, 2024

Already reported ? *

  • I have searched the existing open and closed issues.

Regression?

Yes, No

System Info and Version

System/Version info
Hyprland 0.45.0 built from branch a at commit b3f45e7de8183afa5bb31cbbba109cbbf4bd4ce8  ().
Date: Sat Nov 23 23:38:36 2024
Tag: v0.45.0-72-gb3f45e7d, commits: 5505
built against aquamarine 0.4.5


flags set:
debug


System Information:
System name: Linux
Node name: Arch-Linux
Release: 6.12.1-zen1-1-zen
Version: #1 ZEN SMP PREEMPT_DYNAMIC Fri, 22 Nov 2024 16:04:23 +0000


GPU information: 
00:02.0 VGA compatible controller [0300]: Intel Corporation Raptor Lake-S GT1 [UHD Graphics 770] [8086:a780] (rev 04) (prog-if 00 [VGA controller])
01:00.0 VGA compatible controller [0300]: NVIDIA Corporation AD103 [GeForce RTX 4080 SUPER] [10de:2702] (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/system/.config/hypr/hyprland.conf: Read Succeeded
################
### MONITORS ###
################

# See https://wiki.hyprland.org/Configuring/Monitors/
monitor=,highres@highrr,auto,auto # ,bitdepth,10
# monitor=,preferred,auto,auto,bitdepth,10


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

# Program defaults
$terminal = alacritty
$termfloat = [float; size 40% 40%; workspace +0] alacritty
$editor = lvim
# $browser = thorium-browser
$browser = zen-browser
$fileManager = thunar
$sessionManager = sddm
$menu = rofi -i -dmenu -theme $HOME/.config/rofi/configs.rasi

# Dirs
$HYPRDIR = $HOME/.config/hypr
$WAYBARDIR = $HOME/.config/waybar
$SCRIPTSDIR = $HOME/scripts
$rofiexec = $HOME/.config/rofi/scripts

# global vars
$outer_gaps = 12

source = $HYPRDIR/colors.conf

# misc
$waylandarg = --enable-features=WaylandWindowDecorations,UseOzonePlatform --ozone-platform-hint=auto --enable-wayland-ime


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

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

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

    # https://wiki.hyprland.org/Configuring/Variables/#variable-types for info about colors
    # col.active_border = rgba(33ccffee) rgba(00ff99ee) 45deg # DO THIS LATER
    # col.inactive_border = rgba(595959aa)
    # col.active_border = rgb(00a7f5) rgb(538620) rgb(538620) rgb(00a7f5) 90deg
    # col.inactive_border = rgb(00a7f5) rgb(538620) rgb(538620) rgb(00a7f5) 90deg
    # col.active_border = rgb(00a7f5) rgb(538620)
    # col.inactive_border = rgb(00a7f5) rgb(538620)
    col.inactive_border = $background
    col.active_border = $color15 $color13 $color10 $color8 $color6 $color4 $color2 $color0 # 45deg

    # 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 = true

    layout = dwindle
    snap {
        enabled = true
        # border_overlap = false
    }
}

xwayland {
  force_zero_scaling = true
}

# https://wiki.hyprland.org/Configuring/Variables/#decoration
decoration {
    rounding = 7

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

    shadow {
        enabled = true
        range = 15
        render_power = 4
        # sharp = true
        ignore_window = true
        color = $background
        # color = rgba(1a1a1aee)
    }
    screen_shader = /usr/share/hyprshade/shaders/vibrance.glsl

    # dim_inactive = true
    # dim_strength = 0.4

    # https://wiki.hyprland.org/Configuring/Variables/#blur
    blur {
        enabled = true
        size = 6
        passes = 3
        # vibrancy = 1
        popups = true
        ignore_opacity = true # KEEP THIS, THIS MAKE BLUR ACTUALLY BLUR COOL
        # input_methods = true # broken rn
    }
}

# https://wiki.hyprland.org/Configuring/Variables/#animations
animations {
    enabled = true

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

    bezier = windowovershot, 1, 1, 0, 1.05
    bezier = overshot, 0.5, 1, 0, 1.2
    # bezier = outsideIn, 0.5, 1.1, 0, 0.9
    bezier = slow-fast, 1, 0.33, 0.3, 1
    bezier = fast-slow, 0.33, 0.8, 0, 1
    bezier = linear, 0, 0, 1, 1
    # bezier = linear, 0, 0, 1, 1
    # bezier = md3_standard, 0.2, 0, 0, 1
    bezier = md3_decel, 0.05, 0.7, 0.1, 1
    # bezier = md3_accel, 0.3, 0, 0.8, 0.15
    # bezier = overshot, 0.05, 0.9, 0.1, 1.1
    # bezier = crazyshot, 0.1, 1.5, 0.76, 0.92 
    # bezier = hyprnostretch, 0.05, 0.9, 0.1, 1.0
    # bezier = menu_decel, 0.1, 1, 0, 1
    # bezier = menu_accel, 0.38, 0.04, 1, 0.07
    # bezier = easeInOutCirc, 0.85, 0, 0.15, 1
    # bezier = easeOutCirc, 0, 0.55, 0.45, 1
    # bezier = easeOutExpo, 0.16, 1, 0.3, 1
    # bezier = softAcDecel, 0.26, 0.26, 0.15, 1
    # bezier = md2, 0.4, 0, 0.2, 1 # use with .2s duration

    animation = fade, 1, 4, md3_decel

    animation = windows, 1, 3, overshot
    # animation = windowsOut, 1, 2, slow-fast, popin 15%
    animation = windowsOut, 1, 2, slow-fast, popin 15%
    # animation = windowsMove, 1, 2, md3_accel # when new window appears, it will block it for a while since its slower then windowIn animation
    animation = workspaces, 1, 6, fast-slow, slide
    animation = workspacesIn, 1, 6, fast-slow, slidefade
    animation = borderangle, 1, 100, linear, loop
}

# 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
    force_split = 3
}

master {
    new_status = inherit
}

# https://wiki.hyprland.org/Configuring/Variables/#misc
misc { 
    force_default_wallpaper = 1 # Set to 0 or 1 to disable the anime mascot wallpapers
    focus_on_activate = true
    disable_hyprland_logo = true # If true disables the random hyprland logo / anime girl background. :(
    # vfr = false
    # vrr = 1 # 1 = always, 2 = only in full screen
    mouse_move_enables_dpms = true
    key_press_enables_dpms = true
    # animate_manual_resizes = true
    # animate_mouse_windowdragging = true
    middle_click_paste = false
    enable_swallow = false # true
    swallow_regex = ^(Alacritty)$
    new_window_takes_over_fullscreen = 2
}

group {
    groupbar {
        # enabled = false
        render_titles = false
        text_color = $foreground
        col.active = $color0
        col.inactive = $background
        col.locked_active = $color0
        col.locked_inactive = $background
    }
    col.border_active = $color0 $color15 $foreground $cursor
    col.border_inactive = $background
    col.border_locked_active = $color0 $background
    col.border_locked_inactive = $background
}

# binds {
    # workspace_back_and_forth = true
# }

render {
    explicit_sync = 1
    explicit_sync_kms = 1
    direct_scanout = true
}

opengl {
    # nvidia_anti_flicker = false
    # force_introspection = 0
}

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

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

    follow_mouse = 1
    # scroll_factor = 1.0

    # sensitivity = 0 # -1.0 - 1.0, 0 means no modification.
    numlock_by_default = true
    repeat_delay = 300
    # touchpad {
    #     natural_scroll = false
    # }
}

cursor {
    # use_cpu_buffer = true
    # no_hardware_cursors = false
    no_break_fs_vrr = true
    # zoom_rigid = true
    persistent_warps = true
}

plugin {
    overview {
        enabled = true
        disableGestures = true
        panelHeight = 150
    }
    # hyprfocus {
    #     enabled = yes
    #     focus_animation = shrink
    #     animate_floating = yes
    #     animate_worksapcechange = yes
    # }
    dynamic-cursors {
        mode = stretch
        shake {
            effects = true
        }
        shaperule = text, none
        # shaperule = clientside, none
    }
    # chromakey_background = $background
    # hy3 {
    #     # disable gaps when only one window is onscreen
    #     # 0 - always show gaps
    #     # 1 - hide gaps with a single window onscreen
    #     # 2 - 1 but also show the window border
    #     # no_gaps_when_only = <int> # default: 0

    #     # policy controlling what happens when a node is removed from a group,
    #     # leaving only a group
    #     # 0 = remove the nested group
    #     # 1 = keep the nested group
    #     # 2 = keep the nested group only if its parent is a tab group
    #     # node_collapse_policy = <int> # default: 2

    #     # offset from group split direction when only one window is in a group
    #     # group_inset = <int> # default: 10

    #     # if a tab group will automatically be created for the first window spawned in a workspace
    #     # tab_first_window = <bool>

    #     # tab group settings
    #     tabs {
    #       # height of the tab bar
    #       # height = <int> # default: 15

    #       # padding between the tab bar and its focused node
    #       # padding = <int> # default: 5

    #       # the tab bar should animate in/out from the top instead of below the window
    #       # from_top = <bool> # default: false

    #       # rounding of tab bar corners
    #       # rounding = <int> # default: 3

    #       # render the window title on the bar
    #       # render_text = <bool> # default: true

    #       # center the window title
    #       # text_center = <bool> # default: false

    #       # font to render the window title with
    #       # text_font = <string> # default: Sans

    #       # height of the window title
    #       # text_height = <int> # default: 8

    #       # left padding of the window title
    #       # text_padding = <int> # default: 3

    #       # active tab bar segment color
    #       # col.active = <color> # default: 0xff32b4ff

    #       # urgent tab bar segment color
    #       # col.urgent = <color> # default: 0xffff4f4f

    #       # inactive tab bar segment color
    #       # col.inactive = <color> # default: 0x80808080

    #       # active tab bar text color
    #       # col.text.active = <color> # default: 0xff000000

    #       # urgent tab bar text color
    #       # col.text.urgent = <color> # default: 0xff000000

    #       # inactive tab bar text color
    #       # col.text.inactive = <color> # default: 0xff000000
    #     }

    #     # autotiling settings
    #     autotile {
    #       # enable autotile
    #       # enable = <bool> # default: false

    #       # make autotile-created groups ephemeral
    #       # ephemeral_groups = <bool> # default: true

    #       # if a window would be squished smaller than this width, a vertical split will be created
    #       # -1 = never automatically split vertically
    #       # 0 = always automatically split vertically
    #       # <number> = pixel height to split at
    #       # trigger_width = <int> # default: 0

    #       # if a window would be squished smaller than this height, a horizontal split will be created
    #       # -1 = never automatically split horizontally
    #       # 0 = always automatically split horizontally
    #       # <number> = pixel height to split at
    #       # trigger_height = <int> # default: 0

    #       # a space or comma separated list of workspace ids where autotile should be enabled
    #       # it's possible to create an exception rule by prefixing the definition with "not:"
    #       # workspaces = 1,2 # autotiling will only be enabled on workspaces 1 and 2
    #       # workspaces = not:1,2 # autotiling will be enabled on all workspaces except 1 and 2
    #       # workspaces = <string> # default: all
    #     }
    # }
    # hyprwinwrap {
    #     class = winwrap
    # }
}

source = ~/.config/hypr/env.conf
source = ~/.config/hypr/rules.conf
source = ~/.config/hypr/binds.conf
source = ~/.config/hypr/autostart.conf

debug {
    # disable_logs = false
    # overlay = true # show fps
    suppress_errors = true
    error_position = 1
}



Config File: /home/system/.config/hypr/colors.conf: Read Succeeded
$wallpaper = /home/system/.cache/magic-snowflakes.3840x2160.mp4.png
$background = rgb(131318)
$foreground = rgb(F5F5FD)
$cursor = rgb(F5F5FD)
$color0 = rgb(3B3B40)
$color1 = rgb(0E1229)
$color2 = rgb(263239)
$color3 = rgb(333953)
$color4 = rgb(BAC7E7)
$color5 = rgb(CDD4E9)
$color6 = rgb(E3E2F9)
$color7 = rgb(E8E8F3)
$color8 = rgb(A3A2AA)
$color9 = rgb(0E1229)
$color10 = rgb(263239)
$color11 = rgb(333953)
$color12 = rgb(BAC7E7)
$color13 = rgb(CDD4E9)
$color14 = rgb(E3E2F9)
$color15 = rgb(E8E8F3)


Config File: /home/system/.config/hypr/env.conf: Read Succeeded
#############################
### ENVIRONMENT VARIABLES ###
#############################

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

env = XCURSOR_SIZE,24
env = HYPRCURSOR_SIZE,24
env = HYPRCURSOR_THEME,Bibata-Rainbow-Modern

# Nvidia
env = LIBVA_DRIVER_NAME,nvidia
env = GBM_BACKEND,nvidia-drm
env = __GLX_VENDOR_LIBRARY_NAME,nvidia
# env = __GL_GSYNC_ALLOWED,1
env = VDPAU_DRIVER,nvidia
env = NVD_BACKEND,direct
# just in case if it tried to use igpu for hardware accel
# env = AQ_DRM_DEVICES,/dev/dri/card1:/dev/dri/card0

# XDG
env = XDG_CURRENT_DESKTOP,Hyprland
env = XDG_SESSION_TYPE,wayland
env = XDG_SESSION_DESKTOP,Hyprland

# QT
env = QT_AUTO_SCREEN_SCALE_FACTOR,1
# env = QT_QPA_PLATFORM=wayland;xcb    # Not yet working for onlyoffice-editor
env = QT_QPA_PLATFORM = xcb
env = QT_WAYLAND_DISABLE_WINDOWDECORATION,1
env = QT_QPA_PLATFORMTHEME,qt6ct
# env = SDL_VIDEODRIVER,wayland 
# java fix
env = _JAVA_AWT_WM_NONREPARENTING,1

# Scale
env = QT_AUTO_SCREEN_SCALE_FACTOR,1
# env = GDK_DPI_SCALE,1.5
# env = QT_SCALE_FACTOR,2
# Electron blurry etc fix
env = ELECTRON_OZONE_PLATFORM_HINT,auto

# Input method
# env = GTK_IM_MODULE,fcitx
env = QT_IM_MODULE,fcitx
env = QT_IM_MODULES,wayland;fcitx;ibus
env = XMODIFIERS,@im=fcitx
env = SDL_IM_MODULE,fcitx
env = GLFW_IM_MODULE,fcitx
env = INPUT_METHOD,fcitx
env = XMODIFIERS,fcitx
env = IMSETTINGS_MODULE,fcitx

# wine
env = WINEPREFIX, /opt/windows.wine

# howdy avoid spam from gstreamer
env = OPENCV_LOG_LEVEL, ERROR

# temp fix for gtk apps seg fault
# env = GSK_RENDERER, ngl

# Toolkit backend
env = GDK_BACKEND,wayland,x11,*
env = QT_QPA_PLATFORM,wayland;xcb
env = SDL_VIDEODRIVER,wayland # Remove or set to x11 if games that provide older versions of SDL cause compatibility issues

# QT
env = QT_WAYLAND_DISABLE_WINDOWDECORATION,1
env = QT_QPA_PLATFORM,wayland;xcb

# firefox
env = MOZ_DISABLE_RDD_SANDBOX, 1
env = MOZ_ENABLE_WAYLAND,1


Config File: /home/system/.config/hypr/rules.conf: Read Succeeded
##############################
### WINDOWS AND WORKSPACES ###
##############################

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

# Tag
# workspaces
windowrulev2 = workspace 1, tag:terminal
windowrulev2 = workspace 2, tag:web
windowrulev2 = workspace 3, tag:file
windowrulev2 = workspace 4, tag:code
windowrulev2 = workspace 5, tag:office
windowrulev2 = workspace 6, tag:communication
windowrulev2 = workspace 7, tag:media
windowrulev2 = workspace 8, tag:games
windowrulev2 = workspace 9, tag:system
windowrulev2 = workspace 10, tag:misc

# GUI Utils
windowrulev2 = opacity 0.85 0.75, tag:gui-utils
windowrulev2 = pin, tag:gui-utils
windowrulev2 = size 53% 60%, tag:gui-utils
windowrulev2 = move 46.5% 4.8%, tag:gui-utils
windowrulev2 = animation slide right top, tag:gui-utils

# media contents
windowrulev2 = float, tag:media-contents
windowrulev2 = pin, tag:media-contents
windowrulev2 = move 100%-w-$outer_gaps, tag:media-contents
windowrulev2 = noinitialfocus, tag:media-contents
windowrulev2 = noshadow, tag:media-contents
windowrulev2 = keepaspectratio, tag:media-contents
# It grabs our focus when it change video
windowrulev2 = suppressevent activatefocus, tag:media-contents

# fake fullscreen
windowrulev2 = fullscreenstate 0 2, tag:fakefullscreen

# Games
windowrulev2 = fullscreen, tag:games
# Tearing (for better gaming performance)
windowrulev2 = immediate, tag:games

# time-sensitive app rules
windowrulev2 = stayfocused, tag:time-sensitive
windowrulev2 = pin, tag:time-sensitive
windowrulev2 = dimaround, tag:time-sensitive
windowrulev2 = center, tag:time-sensitive
windowrulev2 = float, tag:time-sensitive

# cli util apps
windowrulev2 = float, tag:cli-utils
windowrulev2 = pin, tag:cli-utils
windowrulev2 = dimaround, tag:cli-utils

# hidden
windowrulev2 = movetoworkspacesilent, special:minimized, tag:hidden

# Group
# windowrule = group, ^virt-manager$

# Terminal applications
windowrulev2 = tag +terminal, class:^(Alacritty|Xfce4-terminal|Kitty)$

# Web browsers
windowrulev2 = tag +web, class:^($browser|Brave-browser|chromium|firefox|thorium|zen-alpha)$

# File managers
windowrulev2 = tag +file, class:^($fileManager|Pcmanfm|Thunar|qBittorrent|Caja)$

# Code editors
windowrulev2 = tag +code, class:^(Geany|code|code-url-handler|cursor-url-handler|code-oss|Code - OSS|install4j-burp-StartBurp|burp-StartBurp|Unity|jetbrains-pycharm-ce|Postman|jetbrains-clion)$

# Office applications
windowrulev2 = tag +office, class:^(Gucharmap|Atril|Evince|LibreOffice.*|libreoffice.*|Soffice|Typora|obsidian|figma-linux|anytype|craft-nativefier-e0958b|evince)$

# Communication apps
windowrulev2 = tag +communication, class:^(Thunderbird|TelegramDesktop|Hexchat|discord|vesktop|VencordDesktop|Chat-gpt|Whatsapp-for-linux|Chatbox)$

# Media applications
windowrulev2 = tag +media, class:^(Audacity|Music|MPlayer|Lxmusic|Inkscape|Gimp|Blender|obs|zoom|Zoom|Pitivi|kdenlive|openshot|vlc|cider|Cider|shotwell|Shotwell|fr.handbrake.ghb|Spotify)$

# Games
windowrulev2 = tag +games, class:^(Minecraft|Badlion|War|steam_proton|steam|csgo_linux64|cs2|minecraft-launcher|lutris|genshinimpact.exe|moe.launcher.an-anime-game-launcher|lunarclient|Lunar Client.*|zenlesszonezero.exe|moe.launcher.sleepy-launcher|org.vinegarhq.Sober)$
windowrule = tag +games, title:.*\.exe

# System/Settings applications
windowrulev2 = tag +system, class:^(virt-manager|blueman-adapters|GParted|Xdm-app|timeshift-gtk|com.nextcloud.desktopclient.nextcloud|gearlever|Lxappearance|Lxtask|Lxrandr|Arandr|System-config-printer.py|Pavucontrol|Exo-helper-1|Protonvpn|Xfce4-power-manager-settings|Mysql-workbench-bin|Grub-customizer|Nitrogen|archlinux-tweak-tool.py|pamac-manager|helvum|Vmware|btrfs-assistant|Bitwarden|wootility-lekker|nwg-look|com.github.wwmm.easyeffects|kvantummanager)$

# Miscellaneous applications
windowrulev2 = tag +misc, class:^(maxautoclicker|os_server|Os_server)$

# floating applications
windowrulev2 = float, class:^(Pcmanfm|Onboard|Yad|zoom|Xdm-app|wechat|WeChat|sxiv|Sxiv|Firefox:Places|Viewnior|feh|Nm-connection-editor|install4j-burp-StartBurp|thorium-app.shortwave.com__-Default|thorium-mdpkiolbdkhdjpekfbkbmhigcaggjagi-Profile_1|float|thorium-lnachpgegbbmnnlgpokibfjlmppeciah-Default|Beeper|electron|com.github.rafostar.Clapper)|Sign in – Google accounts$
windowrulev2 = float, title:^(Steam Settings)$

# pin apps
windowrulev2 = pin, title:^(zoom_linux_float_video_window)$

# specificly sized
# windowrulev2 = size 40% 40%, class:^(alacritty-float)$

# Sticky applicationsp

# App that have menu on top for stayfocused, without this, menus will dissappear when you move ur mouse
windowrulev2 = stayfocused, title:(menu)

# GUI Utils applications
windowrulev2 = tag +gui-utils, class:^(thorium-app.shortwave.com__-Default|thorium-mdpkiolbdkhdjpekfbkbmhigcaggjagi-Profile_1|thorium-lnachpgegbbmnnlgpokibfjlmppeciah-Default|Beeper)$
windowrulev2 = animation slide right top, tag:gui-utils

# bitwarden chrome extension popup
windowrulev2 = pin, class:^(thorium-nngceckbapebfimnlniiiahkandclblb-Default)$
windowrulev2 = float, class:^(thorium-nngceckbapebfimnlniiiahkandclblb-Default)$
windowrulev2 = stayfocused, class:^(thorium-nngceckbapebfimnlniiiahkandclblb-Default)$

# firefox
windowrulev2 = float, title:^Extension

# for media contents
windowrulev2 = tag +media-contents, class:^(blobdrop|dragon)$
# PIP
windowrulev2 = tag +media-contents, title:^(Picture-in-Picture)$
windowrulev2 = size 25% 25%, title:^(Picture-in-Picture)$

# removes title/border
windowrulev2 = tag +fakefullscreen, class:^(thorium-mdpkiolbdkhdjpekfbkbmhigcaggjagi-Profile_1|thorium-lnachpgegbbmnnlgpokibfjlmppeciah-Default)

# Full screen applications
# time-sensitive app rules
windowrulev2 = tag +time-sensitive, class:^(org.freedesktop.impl.portal.desktop.kde|polkit-gnome-authentication-agent-1|pinentry-|xdg-desktop-portal.*|hyprland-share-picker.*|gcr-prompter|io.missioncenter.MissionCenter)$
windowrulev2 = tag +time-sensitive, title:^(Open File|Open|Select a File|Choose wallpaper|Open Folder|Save As|Save File|Library|File Upload|.*- Properties)$
windowrulev2 = dimaround, tag:time-sensitive

# rofi
# windowrulev2 = float, class:^(Rofi)
# windowrulev2 = pin, class:^(Rofi)
# windowrulev2 = dimaround, class:^(Rofi)
# util apps
windowrulev2 = tag +cli-utils, title:^(nmd|cliphist|pulsemixer|ranger|btop)$
windowrulev2 = dimaround, tag:cli-utils
windowrulev2 = stayfocused, title:^(btop)$

# windowrulev2 = stayfocused, title:^(rofi - Command|rofi - Confirmation|rofi - ArchLinux (hyprland))

# No shadow for tiled window
windowrulev2 = noshadow,floating:0

# Opacity rules
# windowrule = opacity 0.89 override 0.89 override, .* set in decoration
# windowrulev2 = opacity 0.95 0.90, class:.+
windowrulev2 = opacity 0.85 0.75, class:^code-oss$
windowrulev2 = opacity 0.85 0.75, class:^code$
windowrulev2 = opacity 0.85 0.75, class:^code-url-handler$
windowrulev2 = opacity 0.85 0.75, class:^cursor-url-handler$
windowrulev2 = opacity 1.00 0.90, class:^TelegramDesktop$
windowrulev2 = opacity 0.90 0.80, class:^Spotify$
windowrulev2 = opacity 0.90 0.80, class:^Cider$
windowrulev2 = opacity 0.50 0.40, class:^fcitx$
windowrulev2 = opacity 0.90 0.80, class:^Brave-browser$
windowrulev2 = opacity 0.90 0.80, class:^thunar$
windowrulev2 = opacity 0.85 0.75, class:^discord$
windowrulev2 = opacity 0.90 0.80, class:^Caja$
windowrulev2 = opacity 0.80 0.70, class:^polkit-gnome-authentication-agent-1$
windowrulev2 = opacity 0.80 0.70, title:^Open$
windowrulev2 = opacity 0.8 0.5, title:^New Tab - Thorium$
# windowrulev2 = ignorezero, title:Annotation - Zoom

# Full screen no idle
windowrulev2 = idleinhibit fullscren, class:.*

# no blurs
windowrulev2 = noblur, title:^(Annotation - Zoom)$


# Layer rules/blur
layerrule = blurpopups

layerrule = blur, rofi
layerrule = ignorezero, rofi
layerrule = dimaround, rofi
layerrule = animation popin 65%, rofi

layerrule = blur,notifications
layerrule = ignorezero,notifications
layerrule = blur,swaync-notification-window
layerrule = ignorezero,swaync-notification-window
layerrule = blur,swaync-control-center
layerrule = animation slide right,swaync-notification-window
layerrule = animation slide right,swaync-control-center
layerrule = ignorezero,swaync-control-center

layerrule = blur,logout_dialog

layerrule = blur,waybar
layerrule = ignorezero, waybar

layerrule = blur,syshud
layerrule = ignorezero, syshud
# layerrule = blur,$browser

# Misc

# xwaylandvideobridge
windowrulev2 = opacity 0.0 override, class:^(xwaylandvideobridge)$
windowrulev2 = noanim, class:^(xwaylandvideobridge)$
windowrulev2 = noinitialfocus, class:^(xwaylandvideobridge)$
windowrulev2 = maxsize 1 1, class:^(xwaylandvideobridge)$
windowrulev2 = noblur, class:^(xwaylandvideobridge)$

# Roblox join private server
windowrulev2 = float, title:^(Join Friends)$ class:^(org.vinegarhq.Sober)$

# No transparency for fullscreen windows
windowrulev2 = plugin:chromakey,fullscreen:0

# Ignore maximize requests from apps. You'll probably like this.
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/system/.config/hypr/binds.conf: Read Succeeded
####################
### KEYBINDINGSS ###
####################

binds {
#     allow_workspace_cycles = yes
      # movefocus_cycles_fullscreen = true
    allow_pin_fullscreen = true
}

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

# Launching...
bind = $mainMod, return, execr, $terminal
bind = $mainMod shift, return, exec, $termfloat
# bind = $mainMod space, return, execr, $terminal start --class pseudo
bind = $mainMod alt, Delete, execr, $rofiexec/rofi_powermenu
bind = alt, F1, execr, $rofiexec/rofi_launcher
bind = alt, F2, execr, $rofiexec/rofi_runner
bind = alt, F3, execr, $rofiexec/sgpt
bind = $mainMod, period, execr, $rofiexec/rofi_emoji
# utils
bind = $mainMod, c, execr, $rofiexec/rofi_configs
bind = $mainMod, m, execr, $rofiexec/rofi_music
bind = $mainMod, n, execr, nmd
bind = $mainMod, r, execr, $rofiexec/rofi_asroot
# bind = $mainMod, s, execr, $rofiexec/rofi_screenshot
bind = $mainMod, v, execr, $rofiexec/rofi_clipboard
bind = $mainMod, w, execr, $rofiexec/rofi_windows
bind = $mainMod, x, execr, $rofiexec/rofi_powermenu
bind = $mainMod, b, execr, $rofiexec/rofi_bluetooth
# GUI
bind = $mainMod shift, f, execr, $fileManager
# bind = $mainMod shift, w, execr, $browser --restore-last-session
bind = $mainMod shift, w, execr, $browser # -new-tab about:sessionrestore
bind = $mainMod shift, e, execr, code
bind = $mainMod shift, d, execr, discord $waylandarg
bind = $mainMod shift, b, execr, beeper $waylandarg
# CLI
bind = ctrl alt, a, exec, $termfloat -T pulsemixer -e pulsemixer
bind = ctrl alt, r, exec, $termfloat -T ranger -e ranger
bind = ctrl alt, v, exec, $termfloat -e $editor

# Emergency
bindtp = ctrl alt, b, exec, $termfloat -T btop -e sudo nice -n -20 ionice -c 1 sudo btop
bindtp = ctrl alt, delete, execr, $rofiexec/rofi_shutdown_menu
bindtp = ctrl shift, escape, execr, missioncenter

# Misc
# bind = ctrl alt, m, execr, music
bind = $mainMod, p, execr, hyprpicker --autocopy
bindtp = ctrl alt, l, execr, loginctl lock-session
# Misc
bind = $mainMod shift, g, execr, gtk-launch shortwave.desktop
# bind = $mainMod shift, c, execr, gtk-launch google-chat.desktop

# XF86 keys & Misc
bind = ,XF86Print, execr, pidof slurp || $HOME/scripts/sysutil.sh screenshot --now
bind = alt, XF86AudioMute, execr, $HOME/scripts/sysutil.sh screenshot --in5sec
bind = $mainMod shift, s, execr, $HOME/scripts/sysutil.sh screenshot --area

# Volume
binde = ,XF86AudioRaiseVolume, execr, $HOME/scripts/sysutil.sh volume --inc
binde = ,XF86AudioLowerVolume, execr, $HOME/scripts/sysutil.sh volume --dec
bind = ,XF86AudioMute, execr, $HOME/scripts/sysutil.sh volume --toggle
bind = ,XF86AudioMicMute, execr, $HOME/scripts/sysutil.sh volume --toggle-mic
bind = ,XF86AudioNext, execr, playerctl position 5+
bindo = ,XF86AudioNext, execr, playerctl -p spotify next
bind = ,XF86AudioPrev, execr, playerctl position 5-
bindo = ,XF86AudioPrev, execr, playerctl -p spotify previous
bindl = ,XF86AudioPlay, exec, [workspace 7 silent; noinitialfocus] $HOME/scripts/play-pause.sh || LD_PRELOAD=/usr/lib/spotify-adblock.so spotify
bind = ,XF86AudioStop, execr, playerctl -p spotify stop
bind = ,XF86PowerOff, execr, $rofiexec/rofi_shutdown

# Pause
bind = ,Pause, execr, hyprfreeze -s -a

# Print
bind = ,Print, execr, $HOME/scripts/hyprshot --now

# Brightness
bind = ,XF86MonBrightnessUp, execr, $HOME/scripts/sysutil.sh brightness --inc
bind = ,XF86MonBrightnessDown, execr, $HOME/scripts/sysutil.sh brightness --dec


# Window management
# bind = $mainMod, d, execr, $HOME/scripts/hyprhide h
# bind = $mainMod, i, execr, $HOME/scripts/hyprhide s
bind = $mainMod, d, movetoworkspacesilent, special:minimized
bind = $mainMod, i, togglespecialworkspace, minimized
bind = $mainMod, i, movetoworkspace, +0
bind = $mainMod, q, killactive
bind = $mainMod shift, q, execr, kill -9 $(hyprctl activewindow | grep pid | tail -1 | awk '{print$2}')
bind = ctrl alt, escape, execr, hyprctl kill
bind = ctrl $mainMod shift, r, execr, systemctl restart $sessionManager
# restart bar
bind = ctrl $mainMod, escape, execr, killall -SIGUSR2 waybar || waybar &
# reload wall
bind = $mainMod alt, b, execr, killall wallust; killall mpvpaper.sh; $SCRIPTSDIR/mpvpaper.sh
# bind = ctrl, up, hyprexpo:expo, on
# bind = ctrl, down, hyprexpo:expo, off
bind = ctrl $mainMod alt, up, overview:open
bind = ctrl $mainMod alt, down, overview:close
# bind = alt, tab, execr, hyprswitch gui
# bind = alt, grave, execr, hyprswitch gui --reverse
# bindr = alt, tab, execr, hyprswitch close
# bindr = alt, grave, execr, hyprswitch close
bind = alt, tab, execr, hyprswitch gui --mod-key alt_l --key tab --close mod-key-release --reverse-key=key=grave && hyprswitch dispatch
bind = alt, grave, execr, hyprswitch gui --mod-key alt_l --key tab --close mod-key-release --reverse-key=key=grave && hyprswitch dispatch -r

binde = ctrl alt, left, workspace, -1
binde = ctrl alt, right, workspace, +1
binde = $mainMod shift, left, movewindow, l
binde = $mainMod shift, right, movewindow, r
binde = $mainMod shift, up, movewindow, u
binde = $mainMod shift, down, movewindow, d
binde = $mainMod shift, h, movewindow, l
binde = $mainMod shift, l, movewindow, r
binde = $mainMod shift, k, movewindow, u
binde = $mainMod shift, j, movewindow, d
# binde = ctrl shift, left, resizeactive, -20 0
# binde = ctrl shift, left, moveactive, 20 0
# binde = ctrl shift, right, resizeactive, -20 0
# binde = ctrl shift, up, resizeactive, 0 -20
# binde = ctrl shift, up, moveactive, 0 20
# binde = ctrl shift, down, resizeactive, 0 -20
binde = ctrl $mainMod, left, resizeactive, 20 0
binde = ctrl $mainMod, left, moveactive, -20 0
binde = ctrl $mainMod, right, resizeactive, 20 0
binde = ctrl $mainMod, up, resizeactive, 0 20
binde = ctrl $mainMod, up, moveactive, 0 -20
binde = ctrl $mainMod, down, resizeactive, 0 20
binde = ctrl $mainMod alt, f, setfloating, 1
binde = ctrl $mainMod alt, f, centerwindow, 1
binde = shift alt, left, moveactive, -20 0
binde = shift alt, right, moveactive, 20 0
binde = shift alt, up, moveactive, 0 -20
binde = shift alt, down, moveactive, 0 20

# zoom
bind = $mainMod, equal, execr, /bin/bash -c "hyprctl keyword cursor:zoom_factor $(($(hyprctl getoption cursor:zoom_factor | awk '/float/ {print $2}')+0.1))"

# window shortcuts
bind = $mainMod, f, fullscreen,
bind = $mainMod, space, togglefloating,
bind = $mainMod shift, space, pseudo, # dwindle
bind = $mainMod shift, m, togglesplit, # dwindle
bind = $mainMod, s, pin

# Move focus with mainMod + arrow keys
binde = $mainMod, left, movefocus, l
binde = $mainMod, right, movefocus, r
binde = $mainMod, up, movefocus, u
binde = $mainMod, down, movefocus, d
# vim binds
binde = $mainMod, h, movefocus, l
binde = $mainMod, l, movefocus, r
binde = $mainMod, k, movefocus, u
binde = $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, movetoworkspacesilent, 10

# Scroll through existing workspaces with mainMod + scroll
# use waybar
# 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

# bind = $mainMod, mouse:272, pin
# bindri = $mainMod, mouse:272, pin, disable


bindi = ,mouse:275, execr, exec -a autoclicker-left zsh -c 'while true; do wlrctl pointer click; sleep $((0.$RANDOM/10)); done'
bindi = ,mouse:276, execr, exec -a autoclicker-right zsh -c 'while true; do wlrctl pointer click right; sleep $((0.$RANDOM/10)); done'
bindri = ,mouse:275, execr, kill $(pgrep -f autoclicker-left)
bindri = ,mouse:276, execr, kill $(pgrep -f autoclicker-right)

# Make group
# bind = $mainMod, g, togglegroup

# bindie = ,mouse:276, execr, wlrctl pointer click
# bindie = ,mouse:275, execr, wlrctl pointer click right
# bindri = ,mouse:276, execr, kill $(pgrep -f autoclicker-left)
# bindri = ,mouse:275, execr, kill $(pgrep -f autoclicker-right)

# chroma
bind = $mainMod, O, togglechromakey

# input capture
bind = $mainMod SHIFT, escape, releaseinputcapture


Config File: /home/system/.config/hypr/autostart.conf: Read Succeeded
#################
### AUTOSTART ###
#################

# Autostart necessary processes (like notifications daemons, status bars, etc.)
# Or execute your favorite apps at launch like this:

# seems to be builtin?
# exec-once = dbus-update-activation-environment --all && dbus-update-activation-environment --systemd WAYLAND_DISPLAY XDG_CURRENT_DESKTOP
# exec-once = systemctl --user import-environment XDG_SESSION_TYPE XDG_CURRENT_DESKTOP WAYLAND_DISPLAY QT_QPA_PLATFORMTHEME
# FIX CURSOR because keep reseting(see: https://www.reddit.com/r/hyprland/comments/1fgfmqb/gtk_apps_not_respecting_cursor_theme/)
# exec-once = gsettings set org.gnome.desktop.interface cursor-theme Bibata-Rainbow-Modern
exec-once = hyprctl setcursor Bibata-Rainbow-Modern 24

# Launch hyprland plugins
exec-once = hyprpm reload || hyprpm update
# Start pyprland daemon
exec-once = pyprland

# Waybar
exec-once = waybar
# Hypr-Eco
# exec-once = hyprpaper
# exec-once = $SCRIPTSDIR/hyprpaper.sh
# exec-once = $SCRIPTSDIR/swww.sh
exec-once = $SCRIPTSDIR/mpvpaper.sh
exec-once = hypridle

# XWayland
exec-once = xrdb -merge ~/.Xresources

# Auth agent
# exec-once = systemctl --user start plasma-polkit-agent # doesnt respect themeing
# exec-once = /usr/lib/polkit-gnome/polkit-gnome-authentication-agent-1
exec-once = systemctl --user start hyprpolkitagent
# keyring agent
exec-once = gnome-keyring-daemon --start --components=pkcs11,secrets,ssh
# Location service
exec-once = /usr/lib/geoclue-2.0/demos/agent &
# input method
exec-once = fcitx5 -d
# app armor notifications
# exec-once = aa-notify -p -s 1 -w 60 -f /var/log/audit/audit.log &

# Clipboard history
# exec-once = wl-paste --watch cliphist store
exec-once = wl-paste --type text --watch cliphist store
exec-once = wl-paste --type image --watch cliphist store
# exec-once = wl-clip-persist --clipboard regular

# Notification agent
exec-once = swaync

# window swicher daemon
exec-once = hyprswitch init --size-factor 5

# audio auto adjust
exec-once = $HOME/scripts/audio-autoAdjust.sh --daemon

# effect for audio
exec-once = while true; do easyeffects --gapplication-service; done

# startup sound
exec-once = $HOME/scripts/startupsound.sh

# misc
# sys hud
exec-once = syshud -M audio_in,audio_out,brightness -b /sys/bus/ddcci/devices/ddcci13/backlight/ddcci13/
# night light
exec-once = gammastep -l geoclue2
# exec-once = $HOME/scripts/hyprsunset.sh

# user applications
exec-once = udiskie
exec-once = bitwarden-desktop
# exec-once = kdeconnectd
exec-once = input-leap # works with https://github.com/3l0w/Hyprland/tree/feat/input-capture-impl
exec-once = nextcloud --background
exec-once = [workspace 6 silent; noinitialfocus] discord --start-minimized
exec-once = beeper --no-sandbox --hidden --default-frame --enable-wayland-ime
# exec-once = echo 'ddcci 0x37' | sudo tee /sys/bus/i2c/devices/i2c-13/new_device

# Notify if stuff is already started
exec-once = warp-cli status | grep Connect && notify-send 'warp-vpn' 'connected'
exec-once = pactl get-source-mute @DEFAULT_SOURCE@ | grep 'Mute: yes' >/dev/null && notify-send 'microphone' 'muted'
exec-once = modprobe uvcvideo || notify-send 'uvcvideo' 'disabled'
exec-once = pgrep -f gpu-screen-recorder && notify-send 'recorder' 'recording'

# restore session
exec-once = hyprsession

# restore stuff like music etc
exec-once = $SCRIPTSDIR/hypridle.sh --stopidle

# spam of notification at start(e.g. chromium)
exec-once = swaync-client --dnd-on && sleep 3 && swaync-client --dnd-off

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

Description

currently, if you have a fullscreen window and open a new floating pinned window, it'd be glowing? not sure how you would describe it, just try it and you'll know what i mean. the bg will also become opaque if its supposingly translucent

How to reproduce

  1. open a fullscreen window
  2. open a floating pinned window

Crash reports, logs, images, videos

this specific trigger cause mentioned is maybe caused by #8526, need proper checks? also, it still does this even if that config option is off
but it does this generally when the code is kind of glitchy regarding fullscreen stuff

@littleblack111 littleblack111 added the bug Something isn't working label Nov 25, 2024
@littleblack111 littleblack111 changed the title window acting weird when "improperly" pinned? window "blur/glows" when "improperly" pinned? Nov 25, 2024
@littleblack111 littleblack111 changed the title window "blur/glows" when "improperly" pinned? window "blur/glows" when having a "improper" fullscreen/pin state? Nov 25, 2024
@vaxerski
Copy link
Member

I need a screrenshot

@soufhehe
Copy link

similar to #8573 ?

@littleblack111
Copy link
Contributor Author

similar to #8573 ?

yes

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

3 participants