[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