[gnome-settings-daemon/f16] Backport brightness fixes for power plugin

Michel Alexandre Salim salimma at fedoraproject.org
Thu Oct 6 21:55:28 UTC 2011


commit a266f8091a5faa2ec0c109d62173af4e680d8f06
Author: Michel Alexandre Salim <salimma at fedoraproject.org>
Date:   Thu Oct 6 23:55:17 2011 +0200

    Backport brightness fixes for power plugin

 ...gs-daemon-3.2.0-power-restore_only_if_set.patch |   53 ++++++++++++++++++++
 ...daemon-3.2.0-power-revert_only_if_dimming.patch |   33 ++++++++++++
 gnome-settings-daemon.spec                         |   11 ++++-
 3 files changed, 96 insertions(+), 1 deletions(-)
---
diff --git a/gnome-settings-daemon-3.2.0-power-restore_only_if_set.patch b/gnome-settings-daemon-3.2.0-power-restore_only_if_set.patch
new file mode 100644
index 0000000..e5d5dde
--- /dev/null
+++ b/gnome-settings-daemon-3.2.0-power-restore_only_if_set.patch
@@ -0,0 +1,53 @@
+From 67785fa2b1043bd5397669f92abbd210dbf23f24 Mon Sep 17 00:00:00 2001
+From: Richard Hughes <richard at hughsie.com>
+Date: Fri, 23 Sep 2011 12:21:51 +0100
+Subject: [PATCH] power: Don't restore the brightness if it's never been set
+
+---
+ plugins/power/gsd-power-manager.c |   23 +++++++++++++----------
+ 1 files changed, 13 insertions(+), 10 deletions(-)
+
+diff --git a/plugins/power/gsd-power-manager.c b/plugins/power/gsd-power-manager.c
+index 57d0b27..7c0de2b 100644
+--- a/plugins/power/gsd-power-manager.c
++++ b/plugins/power/gsd-power-manager.c
+@@ -2706,15 +2706,18 @@ idle_set_mode (GsdPowerManager *manager, GsdPowerIdleMode mode)
+                         g_clear_error (&error);
+                 }
+ 
+-                ret = backlight_set_abs (manager,
+-                                         manager->priv->pre_dim_brightness,
+-                                         &error);
+-                if (!ret) {
+-                        g_warning ("failed to restore backlight to %i: %s",
+-                                   manager->priv->pre_dim_brightness,
+-                                   error->message);
+-                        g_error_free (error);
+-                        return;
++                /* reset brightness if we dimmed */
++                if (manager->priv->pre_dim_brightness >= 0) {
++                        ret = backlight_set_abs (manager,
++                                                 manager->priv->pre_dim_brightness,
++                                                 &error);
++                        if (!ret) {
++                                g_warning ("failed to restore backlight to %i: %s",
++                                           manager->priv->pre_dim_brightness,
++                                           error->message);
++                                g_error_free (error);
++                                return;
++                        }
+                 }
+         }
+ }
+@@ -3266,7 +3269,7 @@ gsd_power_manager_start (GsdPowerManager *manager,
+                           manager);
+ 
+         manager->priv->kbd_brightness_old = -1;
+-        manager->priv->pre_dim_brightness = 100;
++        manager->priv->pre_dim_brightness = -1;
+         manager->priv->settings = g_settings_new (GSD_POWER_SETTINGS_SCHEMA);
+         g_signal_connect (manager->priv->settings, "changed",
+                           G_CALLBACK (engine_settings_key_changed_cb), manager);
+-- 
+1.7.6.4
+
diff --git a/gnome-settings-daemon-3.2.0-power-revert_only_if_dimming.patch b/gnome-settings-daemon-3.2.0-power-revert_only_if_dimming.patch
new file mode 100644
index 0000000..8bfd5e5
--- /dev/null
+++ b/gnome-settings-daemon-3.2.0-power-revert_only_if_dimming.patch
@@ -0,0 +1,33 @@
+From 51ba98ff6346007d252b2450ed4c1a479c41fb19 Mon Sep 17 00:00:00 2001
+From: Richard Hughes <richard at hughsie.com>
+Date: Thu, 29 Sep 2011 14:32:17 +0100
+Subject: [PATCH] power: Do not revert to the pre-idle brightness if idle
+ dimming is disabled
+
+We want to set manager->priv->pre_dim_brightness = -1 to indicate that we're
+restored the value and that no further restoration is required, as the user may
+have already altered the level.
+
+This will only happen if you disable dimming at runtime after having dimmed at
+least once.
+
+Resolves https://bugzilla.gnome.org/show_bug.cgi?id=660434
+---
+ plugins/power/gsd-power-manager.c |    1 +
+ 1 files changed, 1 insertions(+), 0 deletions(-)
+
+diff --git a/plugins/power/gsd-power-manager.c b/plugins/power/gsd-power-manager.c
+index f3c5ffe..5fbf42e 100644
+--- a/plugins/power/gsd-power-manager.c
++++ b/plugins/power/gsd-power-manager.c
+@@ -2733,6 +2733,7 @@ idle_set_mode (GsdPowerManager *manager, GsdPowerIdleMode mode)
+                                 g_error_free (error);
+                                 return;
+                         }
++                        manager->priv->pre_dim_brightness = -1;
+                 }
+         }
+ }
+-- 
+1.7.6.4
+
diff --git a/gnome-settings-daemon.spec b/gnome-settings-daemon.spec
index f059cbf..86777cd 100644
--- a/gnome-settings-daemon.spec
+++ b/gnome-settings-daemon.spec
@@ -1,6 +1,6 @@
 Name:           gnome-settings-daemon
 Version:        3.2.0
-Release:        1%{?dist}
+Release:        2%{?dist}
 Summary:        The daemon sharing settings from GNOME to GTK+/KDE applications
 
 Group:          System Environment/Daemons
@@ -8,6 +8,10 @@ License:        GPLv2+
 URL:            http://download.gnome.org/sources/%{name}
 #VCS: git:git://git.gnome.org/gnome-settings-daemon
 Source:         http://download.gnome.org/sources/%{name}/3.1/%{name}-%{version}.tar.xz
+# post-3.2.0 fixes; remove these when 3.2.1 is released
+Patch0:         %{name}-3.2.0-power-restore_only_if_set.patch
+Patch1:         %{name}-3.2.0-power-revert_only_if_dimming.patch
+# post-3.20 fixes
 
 Requires(pre):    GConf2 >= 2.14
 Requires(preun):  GConf2 >= 2.14
@@ -61,6 +65,8 @@ developing applications that use %{name}.
 
 %prep
 %setup -q
+%patch0 -p1 -b .restore_only_if_set
+%patch1 -p1 -b .revert_only_if_dimming
 
 # autoreconf -i -f
 
@@ -216,6 +222,9 @@ glib-compile-schemas %{_datadir}/glib-2.0/schemas &> /dev/null || :
 %{_datadir}/gnome-settings-daemon-3.0/input-device-example.sh
 
 %changelog
+* Thu Oct  6 2011 Michel Salim <salimma at fedoraproject.org> - 3.2.0-2
+- Backport brightness fixes for power plugin
+
 * Tue Sep 27 2011 Ray <rstrode at redhat.com> - 3.2.0-1
 - Update to 3.2.0
 


More information about the scm-commits mailing list