banshee r4316 - in trunk/banshee: . src/Backends/Banshee.Gnome/Banshee.GnomeBackend
- From: gburt svn gnome org
- To: svn-commits-list gnome org
- Subject: banshee r4316 - in trunk/banshee: . src/Backends/Banshee.Gnome/Banshee.GnomeBackend
- Date: Thu, 31 Jul 2008 21:30:26 +0000 (UTC)
Author: gburt
Date: Thu Jul 31 21:30:25 2008
New Revision: 4316
URL: http://svn.gnome.org/viewvc/banshee?rev=4316&view=rev
Log:
2008-07-31 Gabriel Burt <gabriel burt gmail com>
* src/Backends/Banshee.Gnome/Banshee.GnomeBackend/GnomeScreensaverManager.cs:
Log a friendlier warning when the GNOME screensaver isn't running (BGO
#545600).
Modified:
trunk/banshee/ChangeLog
trunk/banshee/src/Backends/Banshee.Gnome/Banshee.GnomeBackend/GnomeScreensaverManager.cs
Modified: trunk/banshee/src/Backends/Banshee.Gnome/Banshee.GnomeBackend/GnomeScreensaverManager.cs
==============================================================================
--- trunk/banshee/src/Backends/Banshee.Gnome/Banshee.GnomeBackend/GnomeScreensaverManager.cs (original)
+++ trunk/banshee/src/Backends/Banshee.Gnome/Banshee.GnomeBackend/GnomeScreensaverManager.cs Thu Jul 31 21:30:25 2008
@@ -49,31 +49,40 @@
public GnomeScreensaverManager ()
{
- if(!Bus.Session.NameHasOwner (DBUS_INTERFACE)) {
- throw new ApplicationException (String.Format ("Could not find {0}", DBUS_INTERFACE));
+ if (Manager == null) {
+ Hyena.Log.Information ("GNOME screensaver service not found");
}
-
- manager = Bus.Session.GetObject<IGnomeScreensaver> (DBUS_INTERFACE,
- new ObjectPath (DBUS_PATH));
-
- if (manager == null) {
- throw new ApplicationException (String.Format ("The {0} object could not be located on the DBus interface {1}",
- DBUS_PATH, DBUS_INTERFACE));
+ }
+
+ private IGnomeScreensaver Manager {
+ get {
+ if (manager == null) {
+ if (!Bus.Session.NameHasOwner (DBUS_INTERFACE)) {
+ return null;
+ }
+
+ manager = Bus.Session.GetObject<IGnomeScreensaver> (DBUS_INTERFACE, new ObjectPath (DBUS_PATH));
+
+ if (manager == null) {
+ Hyena.Log.ErrorFormat ("The {0} object could not be located on the DBus interface {1}",
+ DBUS_PATH, DBUS_INTERFACE);
+ }
+ }
+ return manager;
}
}
public void Inhibit ()
{
- if (!cookie.HasValue) {
- cookie = manager.Inhibit ("Banshee",
- Catalog.GetString ("Fullscreen video playback active"));
+ if (!cookie.HasValue && Manager != null) {
+ cookie = Manager.Inhibit ("Banshee", Catalog.GetString ("Fullscreen video playback active"));
}
}
public void UnInhibit ()
{
- if (cookie.HasValue) {
- manager.UnInhibit (cookie.Value);
+ if (cookie.HasValue && Manager != null) {
+ Manager.UnInhibit (cookie.Value);
cookie = null;
}
}
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]