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

Weird popup issue. Sub-popup works fine. #6663

Closed joelmathewthomas closed 3 days ago

joelmathewthomas commented 3 days ago

Regression?

Yes

System Info and Version

System/Version info ```sh Hyprland, built from branch at commit ed3a888fc274e09a5097ebbe3d206e4bc85bbb87 (hyprpm: fix style). Date: Sat May 11 04:26:54 2024 Tag: v0.40.0-59-ged3a888f, commits: 4665 flags: (if any) System Information: System name: Linux Node name: nitro5 Release: 6.9.6-arch1-1 Version: #1 SMP PREEMPT_DYNAMIC Fri, 21 Jun 2024 19:49:19 +0000 GPU information: 0000:00:02.0 VGA compatible controller [0300]: Intel Corporation TigerLake-H GT1 [UHD Graphics] [8086:9a60] (rev 01) (prog-if 00 [VGA controller]) 0000:01:00.0 VGA compatible controller [0300]: NVIDIA Corporation GA107M [GeForce RTX 3050 Ti Mobile] [10de:25a0] (rev a1) (prog-if 00 [VGA controller]) 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: ```

Description

This is how the popups should normally appear. All popups have background blur.

https://github.com/hyprwm/Hyprland/assets/90510078/473f373f-9544-48fe-ac04-7127898f1656

But after commit 1360677478e867034713e5d43d7a8a8f6bf1343d subcompositor/renderer: fixup handling of subsurfaces below the main one,

the initial popup has no style, no background blur and a weird border, but the subpopups from the main popup looks fine.

https://github.com/hyprwm/Hyprland/assets/90510078/30d761f7-e522-4d94-bcfd-fbc3e82f5f6c

git bisect

git bisect bad
1360677478e867034713e5d43d7a8a8f6bf1343d is the first bad commit
commit 1360677478e867034713e5d43d7a8a8f6bf1343d (HEAD)
Author: Vaxry <vaxry@vaxry.net>
Date:   Mon Jun 17 12:42:32 2024 +0200

    subcompositor/renderer: fixup handling of subsurfaces below the main one

    some apps (notably vlc 4) place a subsurface below the main surface (which is kinda cursed) but we have to accomodate for that

 src/helpers/WLClasses.hpp            |  3 +++
 src/protocols/core/Compositor.cpp    | 23 ++++++++++++++++++++---
 src/protocols/core/Subcompositor.cpp | 48 ++++++++++++++++++++++++++++++++++++++----------
 src/protocols/core/Subcompositor.hpp |  2 ++
 src/render/Renderer.cpp              | 12 +++++++++++-
 5 files changed, 74 insertions(+), 14 deletions(-)

How to reproduce

Update Hyprland to commit 1360677478e867034713e5d43d7a8a8f6bf1343d, and view popups.

Crash reports, logs, images, videos

No logs

vaxerski commented 3 days ago

patch.txt does this help?

joelmathewthomas commented 3 days ago

patch.txt does this help?

This patch fixes it.