Bug 504065 - Kwin lacks icc_file support for wp_image_description_info_v1
Summary: Kwin lacks icc_file support for wp_image_description_info_v1
Status: CLOSED INTENTIONAL
Alias: None
Product: kwin
Classification: Plasma
Component: colour-management (other bugs)
Version First Reported In: unspecified
Platform: unspecified Linux
: NOR wishlist
Target Milestone: ---
Assignee: KWin default assignee
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2025-05-11 16:56 UTC by Shengyu Qu
Modified: 2025-05-14 17:18 UTC (History)
2 users (show)

See Also:
Latest Commit:
Version Fixed/Implemented In:
Sentry Crash Report:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Shengyu Qu 2025-05-11 16:56:41 UTC
SUMMARY

Currently, kwin's wp_image_description_info_v1 implementation doesn't support icc_file as it's not mandatory. However, this broke FIrefox's internal color management as it requires the ICC file of the monitor for SDR color management. So currently with Firefox 138 all SDR colors are limited to sRGB range. So we need to implement icc_file for kwin.
Comment 1 Zamundaaa 2025-05-12 20:26:29 UTC
Firefox will have to add support for parametric image descriptions. Even if we were to support the icc stuff from the protocol (which I'd really rather not), there simply isn't always an ICC profile to send.
Comment 2 Shengyu Qu 2025-05-13 00:32:22 UTC
(In reply to Zamundaaa from comment #1)
> Firefox will have to add support for parametric image descriptions. Even if
> we were to support the icc stuff from the protocol (which I'd really rather
> not), there simply isn't always an ICC profile to send.

I think wine would also need this feature as windows have similar api? https://learn.microsoft.com/en-us/windows/win32/api/wingdi/nf-wingdi-geticmprofilea
Comment 3 Zamundaaa 2025-05-13 13:28:16 UTC
Windows APIs don't change the information we have. If Wine needs ICC profiles for anything, they will have to generate them from parametric information.
Windows Advanced Color also doesn't support ICC profiles btw, they too generate profiles for backwards compatibility.
Comment 4 Shengyu Qu 2025-05-14 17:18:16 UTC
(In reply to Zamundaaa from comment #3)
> Windows APIs don't change the information we have. If Wine needs ICC
> profiles for anything, they will have to generate them from parametric
> information.
> Windows Advanced Color also doesn't support ICC profiles btw, they too
> generate profiles for backwards compatibility.

Windows have a blacklist for softwares that do self color management, and will automatically fall back to traditional color management implementation when ACM is enabled. https://learn.microsoft.com/en-us/windows/win32/wcs/advanced-color-icc-profiles#enabling-the-display-icc-compatibility-helper

Seems currently clients don’t have a method to get monitor’s detailed transfer curve data but only a curve name or power value, unless reading the ICC file? This might affect clients’ color space conversion quality.