#235 added support for changing the target output color space based on the display's capabilities. In that PR, the color space was determined once at the beginning of the application. While this works for most use cases, it is easy to break (e.g. moving the window to a display with other capabilities). Consequently, we should update this such that the color-gamut property in matchmedia is observed.
This will require a some rework in the existing code. color-gamut is determined once a the start and this value is propagates. I would suggest we pass some sort of object (e.g. an observable) to the worker instead and allow it to subscribe to changing color spaces. We could make this object more generic such that other components in the system may also make use of it.
#235 added support for changing the target output color space based on the display's capabilities. In that PR, the color space was determined once at the beginning of the application. While this works for most use cases, it is easy to break (e.g. moving the window to a display with other capabilities). Consequently, we should update this such that the
color-gamutproperty inmatchmediais observed.This will require a some rework in the existing code.
color-gamutis determined once a the start and this value is propagates. I would suggest we pass some sort of object (e.g. an observable) to the worker instead and allow it to subscribe to changing color spaces. We could make this object more generic such that other components in the system may also make use of it.