From eadfb74fb14c5dcfde6959d4f5fb7c54e831296f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Guido=20G=C3=BCnther?= Date: Tue, 30 Sep 2025 15:58:49 +0200 Subject: [PATCH 1/2] gsd-power: Make auto brightness a floating point value MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit The percentage `pc` is an int so if we want values different from `0` and `1` we need to use floating point division. While at that make the function argument a double to make it match the DBus value. Fixes: 08ae6461 ("power: Switch from direct mutter backlight handling to Shell.Brightness") Signed-off-by: Guido Günther --- plugins/power/gsd-power-manager.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/plugins/power/gsd-power-manager.c b/plugins/power/gsd-power-manager.c index 490b5536d..ee7bd85f8 100644 --- a/plugins/power/gsd-power-manager.c +++ b/plugins/power/gsd-power-manager.c @@ -1240,7 +1240,7 @@ shell_brightness_set_auto_target_cb (GObject *source_object, static void shell_brightness_set_auto_target (GsdPowerManager *manager, - float target) + double target) { if (!manager->shell_brightness_proxy) return; @@ -2979,7 +2979,7 @@ iio_proxy_changed (GsdPowerManager *manager) manager->ambient_accumulator); pc = manager->ambient_accumulator; - shell_brightness_set_auto_target (manager, pc / 100); + shell_brightness_set_auto_target (manager, pc / 100.0); /* Assume setting worked. */ manager->ambient_percentage_old = pc; -- GitLab From 4e9319541b64559d582a392bfdd65f9e7bfcd88f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Guido=20G=C3=BCnther?= Date: Tue, 30 Sep 2025 16:06:42 +0200 Subject: [PATCH 2/2] gsd-power: Init old brightness percentage MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit When gsd-power controlled the backlight it would init that value from the backlight on startup but we don't have that available anymore so can only pick an arbitrary value. Not doing so makes the backlight never adjust as the value is always -1.0 and thus `ch_backlight_renormalize` exits early. Fixes: 08ae6461 ("power: Switch from direct mutter backlight handling to Shell.Brightness") Signed-off-by: Guido Günther --- plugins/power/gsd-power-manager.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/plugins/power/gsd-power-manager.c b/plugins/power/gsd-power-manager.c index ee7bd85f8..235511167 100644 --- a/plugins/power/gsd-power-manager.c +++ b/plugins/power/gsd-power-manager.c @@ -3108,7 +3108,7 @@ gsd_power_manager_startup (GApplication *app) manager->ambient_norm_required = TRUE; manager->ambient_accumulator = -1.f; manager->ambient_norm_value = -1.f; - manager->ambient_percentage_old = -1.f; + manager->ambient_percentage_old = 75.0f; manager->ambient_last_absolute = -1.f; manager->ambient_last_time = 0; -- GitLab