[gnome-session] Fix SessionIsActive property thereby fixing screens not going to sleep
Bastien Nocera
hadess at fedoraproject.org
Fri Mar 6 23:32:57 UTC 2015
commit 2a97b6a12aa83f635ed776615d23b6fcb1f84d9d
Author: Bastien Nocera <hadess at hadess.net>
Date: Sat Mar 7 00:32:04 2015 +0100
Fix SessionIsActive property thereby fixing screens not going to sleep
- Disable GConf autostart support
0001-Fix-SessionIsActive-property.patch | 36 +++++++++++++++++++++++++++++++++
gnome-session.spec | 14 ++++++++++---
2 files changed, 47 insertions(+), 3 deletions(-)
---
diff --git a/0001-Fix-SessionIsActive-property.patch b/0001-Fix-SessionIsActive-property.patch
new file mode 100644
index 0000000..e692ee5
--- /dev/null
+++ b/0001-Fix-SessionIsActive-property.patch
@@ -0,0 +1,36 @@
+From f1424cd84dc3488922c91a918d9a4f5bdbfb2756 Mon Sep 17 00:00:00 2001
+From: Matthias Clasen <mclasen at redhat.com>
+Date: Fri, 6 Mar 2015 18:13:40 -0500
+Subject: [PATCH] Fix SessionIsActive property
+
+GsmSystemd emits its cold-plug notify::active signal out of
+init(), giving GsmManager no chance to connect its signal handler
+in time to catch the initial emission. And even if we did,
+the GsmManager handler can only operate once the skeleton object
+exists.
+Therefore, do our own cold-plug after creating the skeleton.
+
+This is fallout from the GDBus port.
+
+https://bugzilla.gnome.org/show_bug.cgi?id=745762
+---
+ gnome-session/gsm-manager.c | 3 +++
+ 1 file changed, 3 insertions(+)
+
+diff --git a/gnome-session/gsm-manager.c b/gnome-session/gsm-manager.c
+index 775873f..70ef94f 100644
+--- a/gnome-session/gsm-manager.c
++++ b/gnome-session/gsm-manager.c
+@@ -3210,6 +3210,9 @@ register_manager (GsmManager *manager)
+ manager->priv->connection = connection;
+ manager->priv->skeleton = skeleton;
+
++ /* cold-plug SessionIsActive */
++ on_gsm_system_active_changed (manager->priv->system, NULL, manager);
++
+ return TRUE;
+ }
+
+--
+2.3.1
+
diff --git a/gnome-session.spec b/gnome-session.spec
index 44f0b0c..474a0e5 100644
--- a/gnome-session.spec
+++ b/gnome-session.spec
@@ -11,7 +11,7 @@
Summary: GNOME session manager
Name: gnome-session
Version: 3.15.90
-Release: 1%{?dist}
+Release: 2%{?dist}
URL: http://www.gnome.org
#VCS: git:git://git.gnome.org/gnome-session
Source0: http://download.gnome.org/sources/gnome-session/3.15/%{name}-%{version}.tar.xz
@@ -21,6 +21,9 @@ Patch1: gnome-session-3.3.92-nv30.patch
Patch2: 0001-main-Set-XDG_MENU_PREFIX.patch
Patch3: gnome-session-3.6.2-swrast.patch
+# https://bugzilla.gnome.org/show_bug.cgi?id=745762
+Patch4: 0001-Fix-SessionIsActive-property.patch
+
License: GPLv2+
Group: User Interface/Desktops
@@ -33,7 +36,6 @@ Requires: gsettings-desktop-schemas >= 0.1.7
# pull in dbus-x11, see bug 209924
Requires: dbus-x11
-BuildRequires: pkgconfig(gconf-2.0)
BuildRequires: pkgconfig(gl)
BuildRequires: pkgconfig(gnome-desktop-3.0)
BuildRequires: pkgconfig(gtk+-3.0) >= 2.99.0
@@ -90,6 +92,7 @@ Desktop file to add GNOME on wayland to display manager session menu.
%patch1 -p1 -b .nv30
%patch2 -p1 -b .set-xdg-menu-prefix
%patch3 -p1 -b .swrast
+%patch4 -p1 -b .session-is-active
echo "ACLOCAL_AMFLAGS = -I m4" >> Makefile.am
@@ -100,7 +103,8 @@ autoreconf -i -f
%if 0%{?with_session_selector}
--enable-session-selector \
%endif
- --enable-systemd
+ --enable-systemd \
+ --disable-gconf
make %{?_smp_mflags} V=1
%install
@@ -146,6 +150,10 @@ glib-compile-schemas %{_datadir}/glib-2.0/schemas &>/dev/null || :
%{_datadir}/glib-2.0/schemas/org.gnome.SessionManager.gschema.xml
%changelog
+* Sat Mar 07 2015 Bastien Nocera <bnocera at redhat.com> 3.15.90-2
+- Fix SessionIsActive property thereby fixing screens not going to sleep
+- Disable GConf autostart support
+
* Thu Feb 19 2015 David King <amigadave at amigadave.com> - 3.15.90-1
- Update to 3.15.90
More information about the scm-commits
mailing list