[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