* libempathy/Makefile.am:
* libempathy/empathy-tp-roomlist.h:
* libempathy/empathy-tp-roomlist.c:
* libempathy-gtk/empathy-chatrooms-window.c:
* libempathy-gtk/empathy-new-chatroom-dialog.c: Initial room list
support. It does not works yet.
* libempathy-gtk/empathy-account-widget-generic.c: Add support for all
types of integer and float. Fixes bug #457740 (Jamey Hicks).
* libempathy/empathy-tp-chat.c:
* libempathy-gtk/empathy-chat.c: If there is an error sending a message,
show an error message to the user.
* libempathy-gtk/empathy-accounts-dialog.c: Fix a leak, profile should
be unrefed after mc_account_get_profile.
* libempathy/empathy-utils.c:
* libempathy/empathy-utils.h:
* libempathy/empathy-tp-chatroom.c:
* libempathy/empathy-tp-group.h:
* libempathy/empathy-tp-group.c:
* src/empathy.c: Rename empathy_get_channel_id() to
empathy_inspect_channel(). We now have empathy_inspect_handle().
* po/POTFILES.in:
* libempathy/empathy-tp-contact-list.c: Set all contacts from salut
protocol to the "Local Network" group.
* libempathy-gtk/empathy-status-icon.c:
* libempathy-gtk/empathy-ui-utils.c:
* libempathy-gtk/empathy-ui-utils.h:
- Iconify main window to the status icon like in rhythmbox.
Fixes bug #458106 (Jaap A. Haitsma).
- Rounded avatars. Fixes bug #457992 (Raphael Slinckx)
* Makefile.am: Fix distcheck for gtkdoc (Vincent Untz)
* data/empathy.desktop.in.in: Change application description
(Jaap A. Haitsma).
If there is no pending msg when a text channel should be filtered wait for
2007-07-13 Xavier Claessens <xclaesse@gmail.com>
* libempathy-gtk/empathy-status-icon.c: If there is no pending msg
when a text channel should be filtered wait for the first message
instead of not dispatching the channel which may cause messages to be
lost.
Remove unused nickname entry and use a GtkTable for room information. More
2007-07-13 Xavier Claessens <xclaesse@gmail.com>
* libempathy-gtk/empathy-new-chatroom-dialog.c:
* libempathy-gtk/empathy-new-chatroom-dialog.glade: Remove unused
nickname entry and use a GtkTable for room information. More work is
needed here.
* libempathy-gtk/empathy-contact-widget.glade: Change padding to 6.
* libempathy-gtk/empathy-contact-dialogs.c: Set a window title.
* libempathy-gtk/empathy-contact-widget.c: Fix alignment of widgets.
* libempathy/empathy-tp-contact-list.c: Add more debug msg for avatar
handling.
Auto-accept to publish presence to contacts that are in our subscribe
2007-07-12 Xavier Claessens <xclaesse@gmail.com>
* libempathy/empathy-tp-contact-list.c: Auto-accept to publish presence
to contacts that are in our subscribe list. When accepting a pending
contact add it to publish and subscribe list.
* libempathy-gtk/empathy-chat-view.c:
* libempathy/empathy-log-manager.c:
* libempathy/empathy-log-manager.h: Add needed API to show chat logs in
Tracker. Fixes bug #452536.
Xavier Claessens [Sat, 30 Jun 2007 21:12:20 +0000 (21:12 +0000)]
Fix a leaked ref.
2007-06-30 Xavier Claessens <xclaesse@gmail.com>
* libempathy-gtk/empathy-account-widget-generic.c: Fix a leaked ref.
* src/empathy.c: If we get a chatroom we have to create an
EmpathyTpChatroom object.
* src/Makefile.am: Fix build system, programs links to libempathy-gtk
and libempathy.
* configure.ac: libempathy does not depends on libgnome-vfs.
* libempathy-gtk/empathy-status-icon.c:
* libempathy-gtk/empathy-chat.c:
* libempathy/empathy-tp-chat.c:
* libempathy/empathy-tp-chat.h:
* libempathy/empathy-filter.c:
* libempathy/empathy-filter.h:
* libempathy/empathy-filter.xml:
* libempathy/Makefile.am: Filter incoming text channels and make
status icon flash when there we receive a new message. Dispatch the
channel only when we get a message and the user click on the icon.
Xavier Claessens [Fri, 22 Jun 2007 17:46:51 +0000 (17:46 +0000)]
Install libempathy and libempathy-gtk and make their API public.
2007-06-22 Xavier Claessens <xclaesse@gmail.com>
* libempathy-gtk/libempathy-gtk.pc.in:
* libempathy-gtk/Makefile.am:
* libempathy/libempathy.pc.in:
* libempathy/Makefile.am:
* configure.ac: Install libempathy and libempathy-gtk and make their
API public.
Xavier Claessens [Fri, 22 Jun 2007 10:47:42 +0000 (10:47 +0000)]
Rename all filenames starting with "gossip" by "empathy", change namespace
2007-06-22 Xavier Claessens <xclaesse@gmail.com>
* libempathy/*.[ch]:
* libempathy-gtk/*.[ch]:
* src/*.[ch]: Rename all filenames starting with "gossip" by "empathy",
change namespace of all gossip_*() functions to empathy_*().
Fixes bug #444490 (Mario Danic, Xavier Claessens).
Xavier Claessens [Thu, 21 Jun 2007 15:19:49 +0000 (15:19 +0000)]
We show in our roster all contacts members and remote-pending of subscribe
2007-06-21 Xavier Claessens <xclaesse@gmail.com>
* libempathy-gtk/empathy-contact-dialogs.c:
* libempathy-gtk/gossip-contact-list-store.c:
* libempathy-gtk/gossip-contact-list-view.c:
* libempathy/empathy-contact-manager.c:
* libempathy/empathy-tp-contact-list.c:
* libempathy/empathy-contact-list.c:
* libempathy/empathy-contact-list.h:
* libempathy/gossip-contact.c: We show in our roster all contacts
members and remote-pending of subscribe list. Adding/Removing a contact
only add/remove from subscribe list. Accept/Reject a contact in
local-pending of publish list is done using _process_pending().
Xavier Claessens [Fri, 15 Jun 2007 13:02:53 +0000 (13:02 +0000)]
Prepare for slack time when coming back from auto away. Not yet fully
2007-06-15 Xavier Claessens <xclaesse@gmail.com>
* libempathy-gtk/empathy-status-icon.c:
* libempathy-gtk/gossip-presence-chooser.c:
* libempathy-gtk/gossip-presence-chooser.h:
* libempathy/empathy-idle.c:
* libempathy/empathy-idle.h: Prepare for slack time when coming back
from auto away. Not yet fully implemented.
Xavier Claessens [Thu, 14 Jun 2007 13:04:45 +0000 (13:04 +0000)]
Empathy is no more splitted into 2 processes. It makes debugging more
2007-06-14 Xavier Claessens <xclaesse@gmail.com>
* src/org.gnome.Empathy.Chat.service.in:
* src/empathy-accounts.c:
* src/empathy-accounts-main.c:
* src/empathy-chat-main.c:
* src/empathy.c:
* src/Makefile.am:
* src/empathy-main.c:
* libempathy/gossip-chatroom-manager.c:
* autogen.sh: Empathy is no more splitted into 2 processes. It makes
debugging more difficult when emmpathy-chat crashes. It's also more
optimised like that since contact objects can be shared.
Xavier Claessens [Thu, 14 Jun 2007 10:45:38 +0000 (10:45 +0000)]
Do not create log directory for a chat if there is no messages to put in.
2007-06-13 Xavier Claessens <xclaesse@gmail.com>
* libempathy-gtk/gossip-log-window.c:
* libempathy-gtk/gossip-chat-window.c:
* libempathy/empathy-log-manager.c:
* libempathy/empathy-log-manager.h: Do not create log directory for a
chat if there is no messages to put in. Show logs and information for
the contact we are speaking with in the chat window menu.
We can now add a new contact. EmpathyContactWidget can change the contact
2007-06-09 Xavier Claessens <xclaesse@gmail.com>
* libempathy-gtk/empathy-main-window.c:
* libempathy-gtk/empathy-contact-widget.glade:
* libempathy-gtk/empathy-contact-dialogs.c:
* libempathy-gtk/empathy-contact-dialogs.h:
* libempathy-gtk/empathy-contact-widget.c: We can now add a new contact.
EmpathyContactWidget can change the contact it's displaying on-the-fly,
like that we can display info when typing the contact ID we want to
add to our contact list.
* libempathy/empathy-tp-contact-list.c: Fix a refcount bug.
Do not save when closing the dialog. Update information in real-time and
2007-06-08 Xavier Claessens <xclaesse@gmail.com>
* libempathy-gtk/empathy-contact-dialogs.c:
* libempathy-gtk/empathy-contact-widget.c:
* libempathy-gtk/empathy-contact-widget.h: Do not save when closing the
dialog. Update information in real-time and just provides a "Close"
button. That's more GNOME spirite.
* libempathy/empathy-tp-contact-list.c:
* libempathy/gossip-contact.h:
* libempathy/gossip-contact.c: New methods:
gossip_contact_add/remove_group(). This fixes leaks when a contact is
added/removed from a group.
New dialog: EmpathySubscriptionDialog. It uses EmpathyContactWidget to
2007-06-06 Xavier Claessens <xclaesse@gmail.com>
* libempathy-gtk/empathy-status-icon.c:
* libempathy-gtk/empathy-subscription-dialog.glade:
* libempathy-gtk/empathy-contact-widget.c:
* libempathy-gtk/gossip-contact-list-view.c:
* libempathy-gtk/empathy-subscription-dialog.c:
* libempathy-gtk/Makefile.am:
* libempathy-gtk/empathy-subscription-dialog.h:
* libempathy/empathy-tp-contact-list.c: New dialog:
EmpathySubscriptionDialog. It uses EmpathyContactWidget to display
information about the contact who wants to get your presence. This
dialog appears when clicking on the status icon when it blinks. You
can also remove contacts when right-click on it in the roster.
New widget: EmpathyContactWidget. It displays information about a contact,
2007-06-06 Xavier Claessens <xclaesse@gmail.com>
* libempathy-gtk/empathy-status-icon.c:
* libempathy-gtk/empathy-contact-widget.glade:
* libempathy-gtk/empathy-contact-widget.c:
* libempathy-gtk/empathy-contact-widget.h:
* libempathy-gtk/Makefile.am: New widget: EmpathyContactWidget. It
displays information about a contact, it can be used in any kind of
dialog which needs to display contact information like alias, groups,
avatar, etc. If the contact is the selfcontact information are editable.
* libempathy/empathy-tp-contact-list.c: Do not take care of subscription
changes.
* libempathy/gossip-contact.c: Use
gossip_presence_state_get_default_status (MC_PRESENCE_OFFLINE)
when there is no presence.
Add support for blinking when there is an event. Make use of EmpathyIdle
2007-06-06 Xavier Claessens <xclaesse@gmail.com>
* libempathy-gtk/empathy-status-icon.c: Add support for blinking when
there is an event. Make use of EmpathyIdle for presence handling. Add
an event when a contact requets subscription.
* libempathy-gtk/gossip-contact-list-store.c:
* libempathy-gtk/gossip-contact-list-view.c:
* libempathy/empathy-contact-manager.c:
* libempathy/empathy-tp-contact-list.c:
* libempathy/empathy-tp-chatroom.c:
* libempathy/empathy-contact-list.c:
* libempathy/empathy-contact-list.h: get_contacts() is renamed to
get_members(). Adding a signal and a method for local-pending with
contacts with the message. Rework completely the contact-list handling in
EmpathyTpContactList to follow tp spec.
* libempathy/empathy-idle.c:
* libempathy/empathy-idle.h: Add properties for the state and the
status message. EmpathyIdle is now a singleton to manager self presence.
Set use_stock for button_connect to False, to avoid a crasher when opening
2007-06-03 Xavier Claessens <xclaesse@gmail.com>
* libempathy-gtk/gossip-accounts-dialog.glade: Set use_stock for
button_connect to False, to avoid a crasher when opening the accounts
window with GTK+ trunk. Fixes bug #439931.
* libempathy-gtk/gossip-chat.c: Do not add backlog for chatrooms and
do not log backlog from jabber server.
Add all properties described by TP spec for the Text channel on
2007-06-03 Xavier Claessens <xclaesse@gmail.com>
* libempathy-gtk/gossip-group-chat.c:
* libempathy-gtk/gossip-private-chat.c:
* libempathy-gtk/gossip-chat.c:
* libempathy-gtk/gossip-chat.h:
* libempathy/empathy-tp-chat.c: Add all properties described by TP spec
for the Text channel on EmpathyTpChat. Make use of "name" and "subject"
properties in GossipGroupChat.
Fix crash when there is no log available for a chat. Fix a crash when
2007-06-02 Xavier Claessens <xclaesse@gmail.com>
* libempathy/empathy-log-manager.c: Fix crash when there is no log
available for a chat.
* libempathy/empathy-tp-contact-list.c: Fix a crash when destroy signal
is emitted before StatusChanged.
Set default presence to available if there is no presence iface.
2007-06-02 Xavier Claessens <xclaesse@gmail.com>
* libempathy-gtk/gossip-group-chat.c:
* libempathy/empathy-tp-contact-list.c:
* libempathy/gossip-contact.c: Set default presence to available if
there is no presence iface.
Monitor changes on chatrooms.xml file and relead it when it's modified.
2007-06-01 Xavier Claessens <xclaesse@gmail.com>
* libempathy-gtk/gossip-chatrooms-window.c:
* libempathy-gtk/gossip-chat-window.c:
* libempathy/gossip-chatroom.c:
* libempathy/gossip-chatroom-manager.c:
* configure.ac: Monitor changes on chatrooms.xml file and relead it
when it's modified. connect chatroom-added/removed in some places where
needed.
* libempathy-gtk/gossip-chat-window.h:
* libempathy-gtk/gossip-chat-window.c: Do not use deprecated
gtk_object_sink(). Implement favorite chatroom features. Find a chat
by comparing the account AND the chat ID.
* src/empathy-chat-main.c:
* libempathy/empathy-tp-chat.h:
* libempathy/empathy-tp-chat.c:
* libempathy/gossip-utils.h:
* libempathy/gossip-utils.c: empathy_tp_chat_get_id() returns the Text
channel's name. The chat ID is unique only for a specified account.
* libempathy/empathy-tp-contact-list.c: Fix some leaks and add a FIXME
comment for a leak not yet fixed.
* TODO: Would be cool to have a glade catalog for libempathy-gtk.
Xavier Claessens [Sat, 26 May 2007 14:10:47 +0000 (14:10 +0000)]
Do not highlight contacts already known when creating the contact list. Do
2007-05-26 Xavier Claessens <xclaesse@gmail.com>
* libempathy-gtk/gossip-contact-list-store.c: Do not highlight contacts
already known when creating the contact list.
* libempathy/empathy-tp-contact-list.c: Do not set alias if DBus
returns an error.
* libempathy/empathy-idle.c: Do not set status message to
"Extended autoaway", let user's message unchanged.
Xavier Claessens [Fri, 25 May 2007 11:05:23 +0000 (11:05 +0000)]
Do not use the server entry's value if it's hidden. Do not highlight
2007-05-25 Xavier Claessens <xclaesse@gmail.com>
* libempathy-gtk/gossip-new-chatroom-dialog.c: Do not use the server
entry's value if it's hidden.
* libempathy-gtk/gossip-contact-list-view.c:Do not highlight groups
when adding them in the roster.
* libempathy/empathy-tp-contact-list.c: DO not create new GossipContact
object in presence/avatar/alias changed signal if we don't already know
that contact from a contact list channel. This should fix DBus max
pending calls limit reached in some cases.
Xavier Claessens [Thu, 24 May 2007 21:58:26 +0000 (21:58 +0000)]
Preset the server only for jabber protocol to conference.server. This
2007-05-25 Xavier Claessens <xclaesse@gmail.com>
* libempathy-gtk/gossip-new-chatroom-dialog.c: Preset the server only
for jabber protocol to conference.server. This fixes a warning.
* libempathy-gtk/gossip-group-chat.h:
* libempathy-gtk/gossip-group-chat.c: gossip_group_chat_set_topic() is
a public function.
* libempathy-gtk/empathy-images.h:
* libempathy-gtk/empathy-main-window.glade:
* libempathy-gtk/empathy-status-icon.glade: Make use of
empathy-new-message icon name.
* libempathy-gtk/gossip-contact-list-store.c: By default we sort by
contacts names.
* libempathy-gtk/gossip-chat.c: Do not display composing state if
it's our own contact that is composing.
* src/empathy-chat-main.c:
* libempathy/empathy-tp-chat.c:
* libempathy/empathy-tp-chat.h: Make possible to build the id based on
the account and the channel's name. For private chats that means the
contact's id.
* libempathy-gtk/gossip-chat-window.c: Un-comment the code related to
chatrooms that is now implemented. We can now Show/Hide contact list
for group chats, DnD contact on the window to begin a discussion, join
a new chatroom.
* libempathy-gtk/gossip-account-chooser.c: Add a FIXME message.
* data/22x22/empathy-new-message.png:
* data/22x22/empathy-proto-irc.png:
* data/22x22/Makefile.am:
* data/32x32/empathy-proto-irc.png:
* data/32x32/Makefile.am:
* data/gtalk.profile:
* data/16x16/empathy-new-message:
* data/16x16/empathy-message-new.png:
* data/16x16/empathy-proto-irc.png:
* data/16x16/Makefile.am:
* data/scalable/empathy-proto-irc.svg:
* data/scalable/Makefile.am:
* data/irc.profile: Adding icons for empathy-new-message and IRC
protocol. Make use of the irc icon in the irc profile.
Xavier Claessens [Mon, 21 May 2007 15:27:53 +0000 (15:27 +0000)]
If we are offline do not set away on idle. If we are already away restore
2007-05-21 Xavier Claessens <xclaesse@gmail.com>
* libempathy/empathy-idle.c: If we are offline do not set away on idle.
If we are already away restore to available when we are no mode idle.
Do no modify status message.
Xavier Claessens [Sun, 20 May 2007 22:34:10 +0000 (22:34 +0000)]
Implementing basic chatroom support. Actually it works only if we get
2007-05-21 Xavier Claessens <xclaesse@gmail.com>
* libempathy-gtk/gossip-group-chat.c:
* libempathy-gtk/gossip-group-chat.h:
* libempathy-gtk/gossip-private-chat.c:
* libempathy-gtk/gossip-private-chat.h:
* libempathy-gtk/gossip-group-chat.glade:
* libempathy-gtk/Makefile.am:
* src/empathy-chat-main.c:
* libempathy/empathy-tp-contact-list.c:
* libempathy/gossip-telepathy-group.c:
* libempathy/gossip-telepathy-group.h:
* libempathy/empathy-tp-chatroom.c:
* libempathy/empathy-tp-chatroom.h: Implementing basic chatroom support.
Actually it works only if we get invited in a chatroom.