That's color management. A surprisingly fucky area from an application developer's perspective, because pretty much only DirectX 11/12 and Vulkan even have that concept -- and both DXGI and Vulkan are pretty limited [1]. Obviously, HDR and non-sRGB color spaces only work windowed in Windows, because DWM does scRGB, everywhere else your app needs to be in exclusive fullscreen. Note that Wayland on Linux doesn't support exclusive fullscreen, and since Wayland only does 8-bit sRGB, nothing on Wayland can use anything other than 8-bit sRGB. This might be fixed eventually (guess it'll take about as long as it took for GIMP).
As a general rule of thumb, if it has anything to do with colors and comes from either computer or photography people, there's a solid 99 % chance it's broken or doesn't even know what color is. If you want to know how it's done right, you gotta look at how the "moving photos" people do it.
(Note: "everything" for me means "everything that's not Apple", because I cba to care about those snowflakes)
[1] Yes, yes, OpenGL has sRGB types for framebuffers, which doesn't work on half the devices in the wild (on the other half it applies the sRGB gamma function to linear sRGB data) and isn't meaningful anyway, because we _don't_ want to use sRGB. DXGI only does Rec.709 and Rec.2020, no DCI P3, and it also treats everything that's not HDR as sRGB.