[Telepathy] Telepathy/Empathy improvements for Gnome Shell

Owen Taylor otaylor at redhat.com
Sat Nov 13 07:09:54 PST 2010


On Fri, 2010-11-12 at 10:08 +0100, Guillaume Desmottes wrote:

> > Finally, Empathy's full name in its desktop file should be changed to 
> > Chat. The design is that applications that are part of the desktop 
> > platform (like File Browser, Calculator, etc.) should always have 
> > unbranded names, and applications that sit on top (such as Firefox, for 
> > instance) should have branded names. Empathy is considered part of the 
> > desktop.
> 
> That's https://bugzilla.gnome.org/show_bug.cgi?id=631476
> 
> I'm still unsure about this. We recently splitted the text handler to
> its own process (empathy-chat) so the "empathy" binary is now purely the
> contact list; renaming it to "Chat" seems a bit weird as the chatting
> part is actually done by empathy-chat.
> 
> Atm, empathy-chat doesn't any UI when it's manually started (it just
> display chats when handling text channels) but we could imagine adding
> one at some point.

In the design of GNOME 3

 Every window must belong to an application
 Every application must have a window, possibly hidden [*]

Since user isn't going to be able to manage the concept of two different
chat applications that handle half of the job, both empathy-chat and
empathy should appear as "Chat" to the user. I think you can do this by
after GTK+ is initialized by calling:

 gdk_set_program_class ("Empathy");

(Where "Empathy" matches empathy.desktop with an initial capital). 

Alternatively, you could on a window basis do:

 gtk_window_set_wmclass (window, "empathy-chat", "Empathy");

You need to do this for all toplevels, but don't need to do it for
dialogs with a parent. (If set_program_class works, I'd just do it that
way.)

When the Empathy desktop file is clicked, currently the Contact list
should appear as the best proxy for a "chat application" window. From
discussion at the summit, it seems like the long term direction here is
likely be to make the main Empathy window more of a "recent
conversations" window and less of a contact list. (GNOME will have it's
own all-sources contact-list in 3.2 or so.)

Another thing that I think is part of the overall picture is that
Empathy should be "sticky":

 - If you run Empathy and it isn't already autostarted, it should add
   itself to the GNOME autostart.

 - If you explicitly quit Empathy, either through the contact list
   window menu or through the application menu [**], it should remove
   itself from autostart.

The idea here is that being online isn't an activity that you "choose to
do" when you log in to the computer, it's a state. You shouldn't have to
think "I want to chat with someone" before someone can chat with you.
And you shouldn't have to find some obscure option to make it autostart.

- Owen

[*] Hidden isn't really worked out yet, but I think the current Empathy
    behavior buddy list behavior in GNOME Shell where if you click the X
    on the window, it "minimizes", and you have to go to the Activities
    Overview or alt-Tab to get to it again is OK for the moment.
    Having clicking the X button sign you out of chat if and only if
    you have no chat windows open would be too weird.

 [**] Currently the quit menu in the application menu just closes all
      the windows, so isn't distinguishable as a "quit" action, but
      a working application is a must-have for 3.0.




More information about the telepathy mailing list