Advanced Color ICC profile should not be used
Categories
(Core :: Graphics, defect)
Tracking
()
People
(Reporter: dogelition, Unassigned)
Details
User Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:126.0) Gecko/20100101 Firefox/126.0
Steps to reproduce:
- Open Windows's Color Management settings (colorcpl.exe)
- Assign an Advanced Color ICC profile to the display: click Add..., select a display ICC profile with a wider gamut than sRGB, check "Add as Advanced Color Profile", and click OK.
- Enable Windows HDR
- Start Firefox
Actual results:
Firefox uses the Advanced Color profile for color management. This causes the output on the display to be undersaturated (below sRGB), as Firefox maps colors from sRGB to the color space of the Advanced Color profile, while Windows treats Firefox as targetting the sRGB color space.
Expected results:
Firefox should use the default sRGB profile for color management, which would result in colors being displayed accurately (as Windows performs the mapping from sRGB to the HDR color space expected by the display).
According to Microsoft's own documentation (https://learn.microsoft.com/en-us/windows/win32/wcs/advanced-color-icc-profiles#icc-profile-default-behavior-with-advanced-color), any queries for the current ICC profile with Windows HDR active should return "no profile" or the sRGB profile, unless the user enabled the "Use legacy display ICC color management" compatibility setting for the application.
From my testing on Windows 10 and 11, this only seems to hold for the Wcs APIs such as WcsGetDefaultColorProfile. The API used by Firefox, GetICMProfile, returns the Advanced Color profile despite the documentation suggesting otherwise. Therefore, a possible fix for this issue would be to switch to using this Wcs API for retrieving the current ICC profile.
Updated•2 years ago
|
Comment 1•1 year ago
|
||
Clear a needinfo that is pending on an inactive user.
Inactive users most likely will not respond; if the missing information is essential and cannot be collected another way, the bug maybe should be closed as INCOMPLETE.
For more information, please visit BugBot documentation.
Description
•