Already reported ? *
Regression?
Definitely a regression - something broke after update (requires bisect)
System Info and Hyprland Version
System/Version info
Hyprland 0.48.0 built from branch main at commit d1a59ec39eb4c0d6a7d3d38a26f8924e6bca5cef (renderer: render tiled fading out above other tiled windows).
Date: Mon Mar 31 16:25:09 2025
Tag: v0.48.0-33-gd1a59ec3, commits: 5955
built against:
aquamarine 0.8.0
hyprlang 0.6.0
hyprutils 0.5.2
hyprcursor 0.1.12
hyprgraphics 0.1.2
no flags were set
System Information:
System name: Linux
Node name: archy
Release: 6.13.8-arch1-1
Version: #1 SMP PREEMPT_DYNAMIC Sun, 23 Mar 2025 17:17:30 +0000
GPU information:
09:00.0 VGA compatible controller [0300]: Advanced Micro Devices, Inc. [AMD/ATI] Navi 21 [Radeon RX 6800/6800 XT / 6900 XT] [1002:73bf] (rev c0) (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
The cm_fs_passthrough doc says this:
cm_fs_passthrough | Passthrough color settings for fullscreen apps when possible. 0 - off, 1 - always, 2 - hdr only
So setting cm_fs_passthrough = 2, the expectation is that the cm is only passed through for a window that is fullscreen and when the window's content is HDR. However, when I playback an HDR video using MPV in fullscreen, I only see the video in SDR until I set cm_fs_passthrough = 1. My guess is the "hdr only" detection is not working when cm_fs_passthrough = 2 and that's why HDR content appears SDR until I set it to 1.
I did a git bisect of the issue and it gave me this result:
6ab5a0befb45e90eb45b8d6582e68d13147297dc is the first bad commit
commit 6ab5a0befb45e90eb45b8d6582e68d13147297dc
Author: UjinT34 <41110182+UjinT34@users.noreply.github.com>
Date: Sat Mar 22 20:34:01 2025 +0300
renderer: fix cm_fs_passthrough (#9698)
src/config/ConfigDescriptions.hpp | 4 ++--
src/config/ConfigManager.cpp | 2 +-
src/render/OpenGL.cpp | 16 +++++++++-------
src/render/Renderer.cpp | 5 +++--
4 files changed, 15 insertions(+), 12 deletions(-)
How to reproduce
- Set
cm_fs_passthrough = 2
- Open an HDR video with
mpv my_hdr_video and set the opened window to fullscreen. You can find the HDR video I used here.
- The content should be shown in HDR, but shows in SDR instead.
Attach not paste
Checklist of files to include below
Additional info & File uploads
hyprland_config_dump.txt
Already reported ? *
Regression?
Definitely a regression - something broke after update (requires bisect)
System Info and Hyprland Version
System/Version info
Description
The
cm_fs_passthroughdoc says this:So setting
cm_fs_passthrough = 2, the expectation is that the cm is only passed through for a window that is fullscreen and when the window's content is HDR. However, when I playback an HDR video using MPV in fullscreen, I only see the video in SDR until I setcm_fs_passthrough = 1. My guess is the "hdr only" detection is not working whencm_fs_passthrough = 2and that's why HDR content appears SDR until I set it to1.I did a
git bisectof the issue and it gave me this result:How to reproduce
cm_fs_passthrough = 2mpv my_hdr_videoand set the opened window to fullscreen. You can find the HDR video I used here.Attach not paste
Checklist of files to include below
hyprctl systeminfo -c(always include)Additional info & File uploads
hyprland_config_dump.txt