After an evaluation, GNOME has moved from Bugzilla to GitLab. Learn more about GitLab.
No new issues can be reported in GNOME Bugzilla anymore.
To report an issue in a GNOME project, go to GNOME GitLab.
Do not go to GNOME Gitlab for: Bluefish, Doxygen, GnuCash, GStreamer, java-gnome, LDTP, NetworkManager, Tomboy.
Bug 605925 - Possibility to activate/deactivate IMs in im-status plugin.
Possibility to activate/deactivate IMs in im-status plugin.
Status: RESOLVED OBSOLETE
Product: rhythmbox
Classification: Other
Component: Plugins (other)
0.12.x
Other Linux
: Normal enhancement
: ---
Assigned To: RhythmBox Maintainers
RhythmBox Maintainers
Depends on:
Blocks:
 
 
Reported: 2010-01-02 21:41 UTC by Krzysztof Klinikowski
Modified: 2018-05-24 14:55 UTC
See Also:
GNOME target: ---
GNOME version: ---


Attachments
patch (5.04 KB, patch)
2010-01-02 21:41 UTC, Krzysztof Klinikowski
needs-work Details | Review
Full im-status plugin __init__.py file with my modifications. (13.19 KB, text/x-python)
2010-01-02 21:43 UTC, Krzysztof Klinikowski
  Details
GtkBuilder UI file for im-status. (5.80 KB, application/x-designer)
2010-01-02 21:43 UTC, Krzysztof Klinikowski
  Details

Description Krzysztof Klinikowski 2010-01-02 21:41:46 UTC
Created attachment 150701 [details] [review]
patch

Hello. Today I wrote small patch that adding possibility to chose what IM's should get user tune status from Rhythmbox. My patch added one small dependency - gconf but that should not be a problem because it's part of Gnome platform. I'm using GtkBuilder to display configuration dialog. Enjoy :)
Comment 1 Krzysztof Klinikowski 2010-01-02 21:43:12 UTC
Created attachment 150702 [details]
Full im-status plugin __init__.py file with my modifications.
Comment 2 Krzysztof Klinikowski 2010-01-02 21:43:56 UTC
Created attachment 150704 [details]
GtkBuilder UI file for im-status.
Comment 3 Jonathan Matthew 2010-01-02 22:18:21 UTC
Can you explain why you need this?  It seems like it would only be useful if you run multiple IM clients and you don't want your status updated in some of them.
Comment 4 Krzysztof Klinikowski 2010-01-02 22:21:01 UTC
(In reply to comment #3)
> Can you explain why you need this?  It seems like it would only be useful if
> you run multiple IM clients and you don't want your status updated in some of
> them.

Yes and that's a reason why I made that. Many users for now use both Pidgin and Empathy, like me. Someone ask me could I write something like that so I wrote and I wanted to share it with other people :)
Comment 5 Jonathan Matthew 2010-01-02 23:15:42 UTC
Review of attachment 150701 [details] [review]:

::: code/git/rhythmbox/plugins/im-status/im-status/__init__.py
@@ +31,2 @@
 try:
+  import gconf

I don't think there's any need for the exception handling here any more.  Package dependencies should take care of this for most users, and people who build from source should be smart enough to deal with it themselves.

@@ +40,3 @@
+gconf_keys = {	'use_mc5': '/apps/rhythmbox/plugins/im-status/use_mc5',
+		'use_purple': '/apps/rhythmbox/plugins/im-status/use_purple',
+		'use_gossip': '/apps/rhythmbox/plugins/im-status/use_gossip'

need to add these gconf keys to data/rhythmbox.schemas

@@ +67,3 @@
   def __init__ (self):
+    if not libs:
+      message = "You have no required libraries (dbus or gconf for python). IM-Status plugin cannot work properly."

If we keep this (and I don't think we should), the message needs to be translaed, and it should be specific about which modules are missing.

@@ +313,3 @@
+    return dialog
+
+class IMStatusConfigureDialog (object):

this class should itself be the configuration dialog, rather than a container for it

@@ +323,3 @@
+    self.empathy_checkbutton = builder.get_object('empathy_checkbutton')
+    self.pidgin_checkbutton = builder.get_object('pidgin_checkbutton')
+    self.gossip_checkbutton = builder.get_object('gossip_checkbutton')

This should work similarly to the way the lyrics configuration dialog works now - a single list of supported IM clients, giving their names, user-visible descriptions, gconf keys, and get/set methods.  This would be used to build the configuration dialog and update gconf when the user changes the settings.
Comment 6 Bastien Nocera 2010-01-04 16:33:39 UTC
This seems like a feature creep to me.

Updating status on either backends would use D-Bus. I think it would be better to update them all (plugin enabled) or update none (plugin disabled) and be done with it.
Comment 7 GNOME Infrastructure Team 2018-05-24 14:55:26 UTC
-- GitLab Migration Automatic Message --

This bug has been migrated to GNOME's GitLab instance and has been closed from further activity.

You can subscribe and participate further through the new bug through this link to our GitLab instance: https://gitlab.gnome.org/GNOME/rhythmbox/issues/857.