From 2074e4e1465f1ac0df8cb372ab4d7953b1d9a77a Mon Sep 17 00:00:00 2001 From: Carlos Garnacho Date: Fri, 30 Aug 2024 19:25:36 +0200 Subject: [PATCH] core: Add debug control setting for session management We will at the moment want it guarded behind a setting. Part-of: --- .../org.gnome.Mutter.DebugControl.xml | 1 + src/core/meta-debug-control-private.h | 2 ++ src/core/meta-debug-control.c | 15 +++++++++++++++ 3 files changed, 18 insertions(+) diff --git a/data/dbus-interfaces/org.gnome.Mutter.DebugControl.xml b/data/dbus-interfaces/org.gnome.Mutter.DebugControl.xml index 326ed3ad4..d7420cdff 100644 --- a/data/dbus-interfaces/org.gnome.Mutter.DebugControl.xml +++ b/data/dbus-interfaces/org.gnome.Mutter.DebugControl.xml @@ -9,6 +9,7 @@ + diff --git a/src/core/meta-debug-control-private.h b/src/core/meta-debug-control-private.h index 956397701..052b69fd4 100644 --- a/src/core/meta-debug-control-private.h +++ b/src/core/meta-debug-control-private.h @@ -27,3 +27,5 @@ gboolean meta_debug_control_is_linear_blending_forced (MetaDebugControl *debug_c gboolean meta_debug_control_is_hdr_enabled (MetaDebugControl *debug_control); unsigned int meta_debug_control_get_luminance_percentage (MetaDebugControl *debug_control); + +gboolean meta_debug_control_is_session_management_protocol_enabled (MetaDebugControl *debug_control); diff --git a/src/core/meta-debug-control.c b/src/core/meta-debug-control.c index 8ed806693..abf2d179d 100644 --- a/src/core/meta-debug-control.c +++ b/src/core/meta-debug-control.c @@ -169,6 +169,7 @@ meta_debug_control_init (MetaDebugControl *debug_control) MetaDBusDebugControl *dbus_debug_control = META_DBUS_DEBUG_CONTROL (debug_control); gboolean enable_hdr, force_linear_blending, color_management_protocol; + gboolean session_management_protocol; color_management_protocol = g_strcmp0 (getenv ("MUTTER_DEBUG_COLOR_MANAGEMENT_PROTOCOL"), "1") == 0; @@ -184,6 +185,11 @@ meta_debug_control_init (MetaDebugControl *debug_control) force_linear_blending); meta_dbus_debug_control_set_luminance_percentage (dbus_debug_control, 100); + + session_management_protocol = + g_strcmp0 (getenv ("MUTTER_DEBUG_SESSION_MANAGEMENT_PROTOCOL"), "1") == 0; + meta_dbus_debug_control_set_session_management_protocol (dbus_debug_control, + session_management_protocol); } gboolean @@ -222,6 +228,15 @@ meta_debug_control_get_luminance_percentage (MetaDebugControl *debug_control) return meta_dbus_debug_control_get_luminance_percentage (dbus_debug_control); } +gboolean +meta_debug_control_is_session_management_protocol_enabled (MetaDebugControl *debug_control) +{ + MetaDBusDebugControl *dbus_debug_control = + META_DBUS_DEBUG_CONTROL (debug_control); + + return meta_dbus_debug_control_get_session_management_protocol (dbus_debug_control); +} + void meta_debug_control_set_exported (MetaDebugControl *debug_control, gboolean exported)