diff --git a/src/backends/meta-color-device.c b/src/backends/meta-color-device.c index 849099596..aa4c6780e 100644 --- a/src/backends/meta-color-device.c +++ b/src/backends/meta-color-device.c @@ -697,6 +697,13 @@ update_color_state (MetaColorDevice *color_device) colorspace = get_color_space_from_monitor (monitor); eotf = get_eotf_from_monitor (monitor); + if (meta_debug_control_is_hdr_forced (debug_control)) + { + colorspace = CLUTTER_COLORSPACE_BT2020; + eotf.type = CLUTTER_EOTF_TYPE_NAMED; + eotf.tf_name = CLUTTER_TRANSFER_FUNCTION_PQ; + } + luminance = clutter_eotf_get_default_luminance (eotf); reference_luminance_factor = diff --git a/src/backends/meta-monitor-manager.c b/src/backends/meta-monitor-manager.c index eb5907469..817caf726 100644 --- a/src/backends/meta-monitor-manager.c +++ b/src/backends/meta-monitor-manager.c @@ -1288,6 +1288,10 @@ on_started (MetaContext *context, G_CALLBACK (meta_monitor_manager_reconfigure), monitor_manager, NULL, G_CONNECT_SWAPPED | G_CONNECT_AFTER); + g_signal_connect_data (debug_control, "notify::force-hdr", + G_CALLBACK (meta_monitor_manager_reconfigure), + monitor_manager, NULL, + G_CONNECT_SWAPPED | G_CONNECT_AFTER); g_signal_connect_data (debug_control, "notify::force-linear-blending", G_CALLBACK (meta_monitor_manager_reconfigure), monitor_manager, NULL,