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 527444 - Newly created account / empty people stock
Newly created account / empty people stock
Status: RESOLVED FIXED
Product: bigboard
Classification: Deprecated
Component: People Stock
unspecified
Other Linux
: Normal normal
: ---
Assigned To: Marco Pesenti Gritti
bigboard-maint
Depends on:
Blocks:
 
 
Reported: 2008-04-10 22:27 UTC by Owen Taylor
Modified: 2008-04-16 17:46 UTC
See Also:
GNOME target: ---
GNOME version: ---


Attachments
bigboard patch as per comment #7 (1.82 KB, patch)
2008-04-16 00:35 UTC, Marco Pesenti Gritti
none Details | Review
od patch as per comment #7 (1.85 KB, patch)
2008-04-16 00:36 UTC, Marco Pesenti Gritti
none Details | Review

Description Owen Taylor 2008-04-10 22:27:03 UTC
If I log in to the Online Desktop and create a new account, I'll get a lonely empty People stock with no obvious way to add more people.

The slick behavior would be:

 - Log in to Online Desktop launches Pidgin if you already have accounts
   configured.

 - If you don't, then Pidgin isn't launched, but, if there is nobody
   in your People stock it shows

    "Configure IM Accounts"

   Which launches Pidgin.

(Extend/switch to Empathy when we add Empathy support)
Comment 1 Marco Pesenti Gritti 2008-04-14 21:39:14 UTC
Taking it.
Comment 2 Marco Pesenti Gritti 2008-04-15 19:39:53 UTC
I see two possible approaches:

1

* Patch pidgin to provide a --silent (or something to that effect) command line option, so that the buddy list and the account manager are not displayed on startup.
* Add "pidgin --silent" to autostart
* Bigboard communicates with pidgin over dbus to check the accounts state and display the account manager when necessary.

2

* Bigboard watches ~/.purple/accounts.xml. If the file exists it launches pidgin, otherwise it displays "Configure IM Accounts".
* Add a little hack to our pidgin dbus plugin or create a separate plugin to reset /pidgin/blist/list_visible to False on startup.

I think 1 is cleaner but I'm inclined to do 2 for now to avoid patching pidgin.
Comment 3 Owen Taylor 2008-04-15 19:44:49 UTC
I agree with going with 2. I'd like to get Colin's input on the details since he created the setup for launching stuff on startup.

In particular, do we want bigboard to launch pidgin, or we should we hvae
some separate script that does the launch if accounts.xml exists in the
od-session autostart directory?
Comment 4 Marco Pesenti Gritti 2008-04-15 19:49:46 UTC
I like the idea of using autostartup and a wrapper script.

What do you think about the plugin? Is it worth to create a separate one or we just stuff it in the dbus one for now?
Comment 5 Owen Taylor 2008-04-15 20:11:13 UTC
Hmm, logically toggling the value of the blist/list_visible would 
seem to live in:

 online-desktop/presession/
 online-desktop/od-reset

But since pidgin doesn't use gconf, it would likely be difficult.

Doing it in a plugin doesn't really make sense to me, since plugins
will be loaded in other desktop sessions as well unless we could
in the plugin get the effect:

 If OD_SESSION is in the environment, don't show the toplevel.
 Otherwise show the toplevel according to the config setting

What we can't do is have it so that when the online-desktop packages
get installed, launching pidgin from the menus in other sessions
starts differently.
Comment 6 Colin Walters 2008-04-15 20:33:17 UTC
Here is a patch for pidgin to not show the blist on startup:
https://bugzilla.redhat.com/show_bug.cgi?id=297021

But I think even outside of the online desktop, Pidgin is still broken; the experience I want is that if I launch it once and set it up, it should automatically re-launch from then on.  This is how GTalk behaves on Windows, and how many other IM clients work as I understand it.

I made a proposal for that here:
http://live.gnome.org/SessionManagement/DesktopServiceAutostart

Comment 7 Marco Pesenti Gritti 2008-04-15 21:03:16 UTC
Colin, that's pretty much what I had in mind with approach 1. Since we are likely switching to empathy after Fedora 9, I'm not sure it's worth to try to get that upstream though.

What I'm proposing instead (revised on the base of Owen feedback):

* Autostart a script which checks ~/.purple/accounts.xml and launches pidgin if it exists.
* Bigboard watches ~/.purple/accounts.xml and displays "Configure IM Accounts" if it doesn't exist. (Clicking on it launches pidgin).
* Our dbus pidgin plugin reset /pidgin/blist/list_visible to False on start if OD_SESSION is defined in the env.

What do you think?
Comment 8 Marco Pesenti Gritti 2008-04-16 00:35:48 UTC
Created attachment 109346 [details] [review]
bigboard patch as per comment #7
Comment 9 Marco Pesenti Gritti 2008-04-16 00:36:34 UTC
Created attachment 109347 [details] [review]
od patch as per comment #7
Comment 10 Owen Taylor 2008-04-16 15:27:39 UTC
Patches look good to me.
Comment 11 Marco Pesenti Gritti 2008-04-16 17:46:42 UTC
Checked in.