[Pkg-cli-apps-commits] r3811 - in /packages/banshee/trunk/debian: changelog patches/03_stable-branch-r3481.patch

slomo at users.alioth.debian.org slomo at users.alioth.debian.org
Tue Mar 18 23:29:01 UTC 2008


Author: slomo
Date: Tue Mar 18 23:29:01 2008
New Revision: 3811

URL: http://svn.debian.org/wsvn/pkg-cli-apps/?sc=1&rev=3811
Log:
* debian/patches/03_stable-branch-r3481.patch:
  + Add support for the new DBus interface of gnome-settings-daemon 2.22,
    this makes the MMKeys plugin work again with g-s-d 2.22.

Added:
    packages/banshee/trunk/debian/patches/03_stable-branch-r3481.patch
Modified:
    packages/banshee/trunk/debian/changelog

Modified: packages/banshee/trunk/debian/changelog
URL: http://svn.debian.org/wsvn/pkg-cli-apps/packages/banshee/trunk/debian/changelog?rev=3811&op=diff
==============================================================================
--- packages/banshee/trunk/debian/changelog (original)
+++ packages/banshee/trunk/debian/changelog Tue Mar 18 23:29:01 2008
@@ -1,3 +1,11 @@
+banshee (0.13.2+dfsg-7) unstable; urgency=low
+
+  * debian/patches/03_stable-branch-r3481.patch:
+    + Add support for the new DBus interface of gnome-settings-daemon 2.22,
+      this makes the MMKeys plugin work again with g-s-d 2.22.
+
+ -- Sebastian Dröge <slomo at debian.org>  Wed, 19 Mar 2008 00:27:46 +0100
+
 banshee (0.13.2+dfsg-6) unstable; urgency=low
 
   * debian/patches/02_stable-branch-r3418.patch,

Added: packages/banshee/trunk/debian/patches/03_stable-branch-r3481.patch
URL: http://svn.debian.org/wsvn/pkg-cli-apps/packages/banshee/trunk/debian/patches/03_stable-branch-r3481.patch?rev=3811&op=file
==============================================================================
--- packages/banshee/trunk/debian/patches/03_stable-branch-r3481.patch (added)
+++ packages/banshee/trunk/debian/patches/03_stable-branch-r3481.patch Tue Mar 18 23:29:01 2008
@@ -1,0 +1,107 @@
+Index: ChangeLog
+===================================================================
+--- ChangeLog	(Revision 3480)
++++ ChangeLog	(Arbeitskopie)
+@@ -1,3 +1,8 @@
++2008-03-19  Sebastian Dröge  <slomo at circular-chaos.org>
++
++	* src/Core/Banshee.Base/GnomeMMKeys.cs: Add support for the new DBus
++	  interface of gnome-settings-daemon 2.22.
++
+ 2008-03-12  Sebastian Dröge  <slomo at circular-chaos.org>
+ 
+ 	* src/Plugins/Banshee.Plugins.Audioscrobbler/Queue.cs: Correctly
+Index: src/Core/Banshee.Base/GnomeMMKeys.cs
+===================================================================
+--- src/Core/Banshee.Base/GnomeMMKeys.cs	(Revision 3480)
++++ src/Core/Banshee.Base/GnomeMMKeys.cs	(Arbeitskopie)
+@@ -37,17 +37,27 @@
+     public class GnomeMMKeys : IDisposable
+     {
+         private const string BusName = "org.gnome.SettingsDaemon";
+-        private const string ObjectPath = "/org/gnome/SettingsDaemon";
++        private const string oldObjectPath = "/org/gnome/SettingsDaemon";
++        private const string ObjectPath = "/org/gnome/SettingsDaemon/MediaKeys";
+         
+         private delegate void MediaPlayerKeyPressedHandler(string application, string key);
+         
+         [Interface("org.gnome.SettingsDaemon")]
++        private interface ISettingsDaemonOld
++        {
++            void GrabMediaPlayerKeys(string application, uint time);
++            void ReleaseMediaPlayerKeys(string application);
++            event MediaPlayerKeyPressedHandler MediaPlayerKeyPressed;
++        }
++
++        [Interface("org.gnome.SettingsDaemon.MediaKeys")]
+         private interface ISettingsDaemon
+         {
+             void GrabMediaPlayerKeys(string application, uint time);
+             void ReleaseMediaPlayerKeys(string application);
+             event MediaPlayerKeyPressedHandler MediaPlayerKeyPressed;
+         }
++
+         
+         private static GnomeMMKeys instance;
+ 
+@@ -69,15 +79,22 @@
+         
+         private const string app_name = "Banshee";
+         
+-        private ISettingsDaemon settings_daemon;
++        private object settings_daemon = null;
+         
+         public GnomeMMKeys()
+         {
+-            settings_daemon = Bus.Session.GetObject<ISettingsDaemon>(BusName, new ObjectPath(ObjectPath));;
++            try {
++                ISettingsDaemon sd = Bus.Session.GetObject<ISettingsDaemon>(BusName, new ObjectPath(ObjectPath));
++                sd.GrabMediaPlayerKeys(app_name, 0);
++                sd.MediaPlayerKeyPressed += OnMediaPlayerKeyPressed;
++                settings_daemon = sd;
++            } catch {
++                ISettingsDaemonOld sd = Bus.Session.GetObject<ISettingsDaemonOld>(BusName, new ObjectPath(oldObjectPath));
++                sd.GrabMediaPlayerKeys(app_name, 0);
++                sd.MediaPlayerKeyPressed += OnMediaPlayerKeyPressed;
++                settings_daemon = sd;
++            }
+ 
+-            settings_daemon.GrabMediaPlayerKeys(app_name, 0);
+-            settings_daemon.MediaPlayerKeyPressed += OnMediaPlayerKeyPressed;
+-                
+             Globals.ShutdownRequested += OnShutdownRequested;
+ 
+             if(!Globals.UIManager.IsInitialized) {
+@@ -110,9 +127,17 @@
+                 return;
+             }
+             
+-            settings_daemon.MediaPlayerKeyPressed -= OnMediaPlayerKeyPressed;
+-            settings_daemon.ReleaseMediaPlayerKeys(app_name);
+-            settings_daemon = null;
++            if(settings_daemon is ISettingsDaemon) {
++                ISettingsDaemon sd = (ISettingsDaemon) settings_daemon;
++                sd.MediaPlayerKeyPressed -= OnMediaPlayerKeyPressed;
++                sd.ReleaseMediaPlayerKeys(app_name);
++                settings_daemon = null;
++            } else {
++                ISettingsDaemonOld sd = (ISettingsDaemonOld) settings_daemon;
++                sd.MediaPlayerKeyPressed -= OnMediaPlayerKeyPressed;
++                sd.ReleaseMediaPlayerKeys(app_name);
++                settings_daemon = null;
++            }
+         }
+         
+         private void OnMediaPlayerKeyPressed(string application, string key)
+@@ -140,7 +165,10 @@
+         private void OnFocusInEvent(object o, FocusInEventArgs args)
+         {
+             if(settings_daemon != null) {
+-                settings_daemon.GrabMediaPlayerKeys(app_name, 0);
++                if(settings_daemon is ISettingsDaemon)
++                    ((ISettingsDaemon) settings_daemon).GrabMediaPlayerKeys(app_name, 0);
++                else
++                    ((ISettingsDaemonOld) settings_daemon).GrabMediaPlayerKeys(app_name, 0);
+             }
+         }
+     }




More information about the Pkg-cli-apps-commits mailing list