2006-03-03 Xavier Claessens * protocols/telepathy/gossip-telepathy-contact-list.c: * protocols/telepathy/gossip-telepathy-group.c: Fix a variable not initialised and add some debug messages when a contact is added/removed from a group. 2006-03-03 Xavier Claessens * protocols/telepathy/gossip-telepathy-contact-list.c: Make sure to create new groups. 2006-03-03 Xavier Claessens * protocols/telepathy/gossip-telepathy-group.h: * protocols/telepathy/gossip-telepathy-contact-list.c: * protocols/telepathy/gossip-telepathy-contact-list.h: * protocols/telepathy/gossip-telepathy-group.c: Correctly update groups, do not remove a contact from all groups and add him again in group he is still member of. Fixes bug #400165. 2007-03-02 Martyn Russell * src/gossip-contact-list.c: (contact_list_action_rename_group_selected): Change the rename group dialog buttons to have Cancel and Rename instead of Cancel and OK, fixes bug #412591. 2007-03-02 Martyn Russell * src/gossip-galago.c: (galago_get_account), (galago_contact_removed_cb), (galago_contact_presence_updated_cb): Fixed up Galago code which broke with the new GossipAccount changes we made, fixes bug #413631 (Lionel H.). 2006-03-02 Xavier Claessens * protocols/telepathy/gossip-telepathy-marshal-main.c: * protocols/telepathy/gossip-telepathy-marshal.list: Missing files in last commit. 2006-03-02 Xavier Claessens * protocols/telepathy/gossip-telepathy-chatrooms.c: * protocols/telepathy/gossip-telepathy-group.h: * protocols/telepathy/gossip-telepathy.c: * protocols/telepathy/gossip-telepathy-chatrooms.h: * protocols/telepathy/gossip-telepathy-contact-list.c: * protocols/telepathy/gossip-telepathy.h: * protocols/telepathy/Makefile.am: * protocols/telepathy/gossip-telepathy-group.c: Implement Chatroom invitation and make joining async. Fixes bug #405719 (Xavier Claessens, Sjoerd Simons). * libgossip/gossip-chatroom.c: Do no remove contacts that are not in the chatroom and do not add contact that already joined. * libgossip/gossip-message.c: Fix a warning because INVITE was not a property. 2006-03-01 Xavier Claessens * protocols/telepathy/gossip-telepathy-chatrooms.c: * protocols/telepathy/gossip-telepathy.c: * protocols/telepathy/gossip-telepathy-contact-list.c: * protocols/telepathy/gossip-telepathy-contacts.c: * protocols/telepathy/gossip-telepathy-message.c: Disconnect everything and set proxies to NULL as soon as "disconnecting" signal is emitted, do not wait for "disconnected" signal because in some cases it can lead to a crash. Fixes bug #400301, #401027. Directly return from telepathy_login() if we are already connecting. Fixes bug #409718 2007-02-28 Richard Hult * configure.ac: * gossip.desktop.in.in: Bring back the telepathy component for bugzilla like before it was merged. 2006-02-28 Xavier Claessens * protocols/telepathy/gossip-telepathy-chatrooms.c: * protocols/telepathy/gossip-telepathy.c: * protocols/telepathy/gossip-telepathy-contact-list.c: * protocols/telepathy/gossip-telepathy-contacts.c: * protocols/telepathy/gossip-telepathy-message.c: * protocols/telepathy/gossip-telepathy-group.c: * configure.ac: Remove some unused code and don't use deprecated symbols from libtelepathy. Depends on libtelepathy >= 0.0.51. 2006-02-28 Xavier Claessens * protocols/telepathy/gossip-telepathy.c: * protocols/telepathy/gossip-telepathy-message.c: * protocols/telepathy/gossip-telepathy-message.h: * configure.ac: Add composing state support, requires libtelepathy >= 0.0.42. Fixes bug #407846 (Guillaume Desmottes). 2006-02-22 Xavier Claessens * protocols/telepathy/gossip-telepathy.c: remove a useless debug msg. * libgossip/Makefile.am: remove gossip.h from source files. 2006-02-22 Xavier Claessens * protocols/telepathy/gossip-telepathy-chatrooms.c: * protocols/telepathy/gossip-telepathy.c: * protocols/telepathy/gossip-telepathy-chatrooms.h: * protocols/telepathy/gossip-telepathy-contact-list.c: * protocols/telepathy/gossip-telepathy.h: * protocols/telepathy/gossip-telepathy-contacts.c: * protocols/telepathy/gossip-telepathy-private.h: * protocols/telepathy/gossip-telepathy-contacts.h: * protocols/telepathy/gossip-telepathy-message.c: * protocols/telepathy/gossip-telepathy-cmgr.c: * protocols/telepathy/gossip-telepathy-group.c: Fix build with new includes and new GossipProtocol API. * libgossip/gossip.h: * libgossip/gossip-types.h: Removed. 2006-02-22 Xavier Claessens * libgossip/*.[ch]: * src/*.[ch]: * protocols/jabber/*.[ch]: * peekaboo/src/*.[ch]: Remove gossip-types.h and gossip.h. Fixes bug #408006 2007-02-21 Martyn Russell * configure.ac: * src/gossip-notify.c: (notify_closed_cb): Only unref the the notification if we are using libnotify > 0.4.3.90, this is a bug in libnotify, fixes bug #395588 (Dimitur Kirov). 2006-02-21 Xavier Claessens * po/POTFILES.in: Add Add the file protocols/telepathy/gossip-telepathy-cmgr.c. Fixes bug #408953 (Claude Paroz) 2007-02-20 Richard Hult * autogen.sh: Update some version numbers to make it easier to build, fixes bug #409074. 2007-02-20 Richard Hult * src/gossip-chat-window.c: (chat_window_close_button_style_set_cb), (chat_window_update_title): Fix a runtime warning. (chat_window_create_label): Use the style set signal to update the close button size when the theme changes (also used to get the initial size correctly). Fixes bug #409393. 2007-02-18 Richard Hult * libgossip/gossip-log.c: (gossip_log_manager_new), (log_move_contact_dirs): Fix build on OSX. The real fix is probably to not use GnomeVFS for moving the old log files. 2006-02-15 Xavier Claessens * protocols/jabber/gossip-jabber.c: * src/gossip-log-window.c: * libgossip/gossip-contact-manager.c: * libgossip/gossip-contact-manager.h: * libgossip/gossip-contact.dtd: * libgossip/gossip-log.c: * libgossip/gossip-log.h: * libgossip/gossip-contact.c: Don't use the "account" parameter and various fixes. Fixes bug #407953. 2007-02-15 Martyn Russell * src/gossip-chat.c: (chat_text_view_size_allocate_cb): Long entries expand the chat window automatically, infinitely, fixes bug #398852 (Marcus Leyman). 2007-02-15 Martyn Russell * libgossip/gossip-chatroom.c: (gossip_chatroom_get_id_str): Crashes when inviting to a group with no room name, fixes bug #405701 (Sjoerd Simons). 2007-02-13 Martyn Russell * libgossip/Makefile.am: * libgossip/gossip-account-manager.[ch]: * libgossip/gossip-chatroom-manager.[ch]: * libgossip/gossip-contact-manager.[ch]: * libgossip/gossip-log.[ch]: * libgossip/gossip-private.h: Add _new() functions into -private.h since we don't need these outside libgossip and this fixes the circular dep issue I have been trying to figure out for a while now, stupid fooool :( * libgossip/gossip-contact-manager.c: Fixed DTD issues by making sure we always put the "self" xml element after the "type" element instead of inserting it randomly. * libgossip/gossip-log.c: Fixed unref on own_contact when logging chatroom messages. * libgossip/gossip-session.c: Updated the calls to the _new() functions for the chatroom, account, contact and log managers so we don't pass in other managers, instead we can get those from the session. * protocols/jabber/gossip-jabber.c: Make sure we emit the "contact-added" signal even if the contact wasn't created after logging on - due to the new gossip-contact-manager code, contacts were being created pre-connection and not emitted due to already existing. 2007-02-13 Richard Hult * src/gossip-chat-window.c (chat_window_update_title): Tweak the strings a bit. 2007-02-12 Martyn Russell * src/*.[ch]: Updated to work with new libgossip format. * libgossip/*.[ch]: Updated library to comply to the GIMP's devel-docs/includes.txt so that all typedefs are defined in one place and you remove the issue of circular dependencies. Added GossipContactManager to write names for all contacts for offline use in logging. Updated the logging to now have a GossipLogManager which is associated with the session, fixes bug #397213. * protocols/jabber/*.[ch]: Now all contacts are created in the backend instead of all over the code. * all: Updated copyright information. 2007-02-12 Richard Hult * src/gossip-chat-window.c: (chat_window_update_title), (chat_window_composing_cb), (chat_window_new_message_cb), (chat_window_page_removed_cb), (chat_window_focus_in_event_cb): Rework the patch for bug #400265: Don't show the presence icon in the window title, add back info on who has sent new messages, but add it as a comma separated list. This might not always fit in the window title, but when it does, it's helpful and more consistent than just keeping the last one, and we also keep all unread ones until they are read. Hopefully will satisfy everone... 2007-02-08 Martyn Russell * src/gossip-chat-window.c: Improvements to the window title and icons, fixes bug #400265 (Alex Jones, Martyn Russell). 2007-02-05 Richard Hult * ui/pixmaps: Use the old icons again, the new ones need some more work. 2007-02-03 Martyn Russell * ui/pixmaps/gossip-extended-away.png: * ui/svg/gossip-extended-away.png: Updated to a version that is less bright and easier on the eyes. 2007-02-03 Richard Hult * ui/pixmaps: Remove some old unused images, and add new tangofied icons by Andreas Nilsson. We might need a few more but this is a good start. 2007-02-01 Martyn Russell * src/gossip-notify.c: Don't unref the NotifyNotification on the "closed" signal since this has caused crashes with what seems to be newer versions of libnotify, fixes bug #395588 (Dimitur Kirov). 2006-01-25 Xavier Claessens * libgossip/gossip-chatroom-contact.c * libgossip/gossip-chatroom-contact.h: Removed. * protocols/telepathy/gossip-telepathy-chatrooms.c * protocols/telepathy/gossip-telepathy.c * protocols/telepathy/gossip-telepathy-contacts.c * protocols/jabber/gossip-jabber.c * protocols/jabber/gossip-jabber-chatrooms.c * src/gossip-group-chat.c * libgossip/gossip-chatroom.c * libgossip/gossip-chatroom.h * libgossip/gossip-chatroom-provider.c * libgossip/Makefile.am: Store role and affiliation in GossipChatroom instead if GossipChatroomContact. Fixes bug #398846 * protocols/telepathy/gossip-telepathy.c: Ask the password to the user only if the "password" parameter is required. 2006-01-25 Xavier Claessens * protocols/telepathy/gossip-telepathy.c * protocols/telepathy/gossip-telepathy-contacts.c * protocols/telepathy/gossip-telepathy-contacts.h * protocols/jabber/gossip-jabber.c * src/gossip-account-widget-jabber.c * src/gossip-new-chatroom-dialog.c * src/gossip-app.c * src/gossip-notify.c * src/gossip-ui-utils.c * src/gossip-sound.c * src/gossip-accounts-dialog.c * libgossip/gossip-account.c * libgossip/gossip-account.h * libgossip/gossip-account-manager.c * libgossip/gossip-account-manager.h * libgossip/gossip-chatroom.c * libgossip/gossip-log.c: Remove GossipAccount's id property and use the name property instead for unique identifier. Fixes bug #397733 2007-01-25 Martyn Russell * libgossip/Makefile.am: * src/gossip-accounts-dialog.c: (accounts_dialog_button_remove_clicked_cb): Don't use "Yes" and "No" in the account removal confirmation dialog, instead use "Cancel" and "Remove", this is more in line with the HIG and it fixes bug #398081 (Joel Dimbernat). 2006-01-25 Xavier Claessens * protocols/telepathy/gossip-telepathy-contacts.c: Do not set status message if none is specified by the user. (Sjoerd Simons) 2006-01-24 Xavier Claessens * protocols/telepathy/gossip-telepathy.c: Request the password to the user if the "password" account parameter is empty. (Sjoerd Simons) 2006-01-24 Xavier Claessens * src/gossip-vcard-dialog.c: Set requesting_vcard=TRUE before calling _get_vcard(). Fixes bug #400176. 2006-01-23 Xavier Claessens * protocols/telepathy/gossip-telepathy-contacts.c: Hold handles when adding them in the hash table. We still need to release handles. Fixes bug #399194. 2006-01-23 Xavier Claessens * protocols/telepathy/gossip-telepathy-message.c: Set timeout_id to 0 otherwise we remove some random g_source. (Sjoerd Simons) 2006-01-23 Xavier Claessens * libgossip/gossip-account.c: * libgossip/gossip-utils.c: * libgossip/gossip-account.h: * libgossip/gossip-account-manager.c: * libgossip/gossip-utils.h: Don't save account parameters that are not changed to keep default value. Fix bug #399715. 2006-01-22 Xavier Claessens * protocols/telepathy/gossip-telepathy.c: Workaround to get existing connections of telepatyh-salut which has no "account" parameter. (Sjoerd Simons) 2007-01-21 Martyn Russell * src/gossip-account-widget-jabber.c: Don't reset the port in the Jabber account entry if the entry is empty, this means that you can actually delete the text before you enter a new port, fixes bug #396846 (Joel Dimbernat). 2007-01-18 Martyn Russell * configure.ac: Updated copyright years. 2006-01-16 Xavier Claessens * protocols/telepathy/gossip-telepathy.c: Add debug message when setting the account ID. * src/gossip-app.c: Comment out debug messages spammed when away. 2006-01-16 Xavier Claessens * src/gossip-account-chooser.c: unref the session and the account manager. * src/gossip-contact-list.c: useless to have a session variable when we have priv->session * src/gossip-app.c: account manager isn't used and it seems dangerous to use priv->session after unreffing it. 2006-01-15 Xavier Claessens * protocols/telepathy/gossip-telepathy.c: Print the channel type in the debug message. * src/gossip-account-widget-generic.c: Fix bug #395708 (Sjoerd Simons). 2007-01-15 Martyn Russell * src/gossip-about-dialog.c: Include the backend used (i.e. if we are using Telepathy or the original Jabber backend, fixes bug #393913 (Vincent Untz). 2007-01-12 Martyn Russell * configure.ac: Bumped version. 2007-01-11 Martyn Russell * libgossip/gossip-account.[ch]: Make it possible to get a list of params sorted alphabetically. * src/gossip-account-widget-generic.c: Actually make this widget look nice by aligning the labels nicely and doing some trickery with the param names so they look nicer and less hacked up. 2006-01-11 Xavier Claessens * Merged TELEPATHY branch to TRUNK. Fixes bug #391284. Thanks to all contributors (Xavier Claessens, Eitan Isaacson, Raphael Slinckx, Sjoerd Simons). 2007-01-11 Martyn Russell * Release 0.22. * NEWS: Updated for release. 2007-01-09 Richard Hult * src/gossip-chat-window.c: (gossip_chat_window_add_chat): Don't try to set a 0 size, fixes a critical warning introduced recently. * src/gossip-geometry.c: (gossip_geometry_load_for_chat): Let -1 mean unset/invalid, otherwise we end up at (0,0) for unknown/uninitialized coords. * src/gossip-group-chat.c: (group_chat_finalize), (group_chat_topic_changed_cb), (group_chat_get_tooltip): * ui/group-chat.glade: Keep track of the topic and use it for the tooltip for group chats. Make the topic label a single line label. 2007-01-08 Richard Hult * src/gossip-chat-window.c (chat_window_focus_in_event_cb): Remove left over test code, fixes problem where windows wouldn't clear the "new message" window icon on focus in, fixes bug #393835. 2007-01-06 Martyn Russell * configure.ac: Bumped version to 0.22. 2007-01-06 Martyn Russell * Release 0.21. * NEWS: Updated. 2007-01-06 Martyn Russell * src/gossip-chat-window.c: * src/gossip-chat.c: * src/gossip-group-chat.c: * src/gossip-private-chat.c:: Revert the HAS_FOCUS flag change on the input text view to try and get it to have focus when new group chats or chats are created. Now we do this properly by grabbing focus when the input text view is realized and also when it is made sensitive again after joining, fixes bug #387923. 2007-01-05 Martyn Russell * libgossip/gossip-async.h: * libgossip/gossip-protocol.[ch]: * libgossip/gossip-session.[ch]: * protocols/jabber/gossip-jabber.c: * src/gossip-account-widget-jabber.c: * ui/main.glade: Make it possible to change your Jabber password, fixed bug #142085. * src/gossip-accounts-dialog.c: Move the "Register" button to the protocol specific widget page. 2007-01-03 Richard Hult * libgossip/gossip-log.c: Protect GnomeVFS using code with HAVE_GNOME. 2007-01-03 Richard Hult * src/gossip-vcard-dialog.c: (vcard_dialog_birthday_parse_string), (vcard_dialog_birthday_string_to_server), (vcard_dialog_get_vcard_cb), (vcard_dialog_set_vcard_cb), (vcard_dialog_set_vcard): Convert the date we get from the server to the locale format before showing it in the UI. 2007-01-03 Richard Hult * src/gossip-vcard-dialog.c: (gossip_vcard_dialog_show): * ui/main.glade: Add back the sizegroup to make Martyn happy ;) 2007-01-03 Richard Hult * src/Makefile.am: * src/gossip-popup-button.c: * src/gossip-popup-button.h: Add new files for a popup button. * src/gossip-marshal.list: Add marshallers for the popup button. * src/gossip-vcard-dialog.c: * ui/main.glade: Use a popup button and popup the calendar widget instead of embedding it in the vcard dialog. Also add an entry so you can type in the date instead of going back 20-30 years (since most people are not born yesterday). Fixes bug #387924. 2007-01-03 Martyn Russell * src/gossip-chat-window.c: * src/gossip-chat.c: * src/gossip-group-chat.c: Removed all unnecessary grabs, set up the focus chain properly and now make the input text view have the widget flag GTK_HAS_FOCUS set on creation so it automatically gets focus. 2007-01-03 Richard Hult * ui/chat.glade: Change a string to make it easier to translate. 2007-01-03 Martyn Russell * src/gossip-chat-window.c: * src/gossip-chat.c: * src/gossip-group-chat.c: * ui/group-chat.glade: Fix memory leak with the list we use for the focus chain in the group chat UI setup. Make the focus ring more usable (i.e. allow focus for the topic and the contact list secondary to the actual input scrolled window. Partially fixes for bug #387923. 2007-01-02 Martyn Russell * src/gossip-app.c: (app_setup), (gossip_app_toggle_visibility): consistently maintain the main window's location, fixes bug #380171 (Thomas Andersen). 2007-01-01 Martyn Russell * ui/main.glade: Don't use my name in the personal information dialog by default - must have been left in there from testing. * src/gossip-new-chatroom-dialog.c: Removed some unnecessary comments that had been left in the code. 2007-01-01 Martyn Russell * src/gossip-image-chooser.c: (image_chooser_scale_pixbuf), (image_chooser_set_image_from_data): Updated the code here so it is more safe and less susceptible to producing the crash in bug #388033. * src/gossip-vcard-dialog.c: Don't warn about NULL avatars when we set NO avatar in image chooser. 2006-12-31 Martyn Russell * C/gossip.xml: Updated help to fix bug #391329 (Brian Pepple). * help/C/figures/gossip_personal_details.png: * help/C/figures/gossip_roster.png: Removed to use "-" in file names instead (for consistency). * help/C/figures/gossip-personal-details.png: * help/C/figures/gossip-roster.png: Added. 2006-12-31 Martyn Russell * protocols/jabber/gossip-jabber-vcard.c: (gossip_jabber_vcard_set): Don't set xml elements when the strings are empty (e.g. with no birthday set). * ui/main.glade: * src/gossip-contact-info-dialog.c: (contact_info_dialog_init), (contact_info_dialog_get_vcard_cb): Create a style for the link buttons so we have NO padding and it doesn't look silly spacing wise. Make sure the birthday stub label is visible when the birthday is shown. * src/gossip-vcard-dialog.c: Make it possible to NOT save your birthday, since some people may not want this and by default, if you have no birthday, you don't save today's date. Fixes bug #388306. 2006-12-31 Martyn Russell * src/gossip-accounts-dialog.c: When connecting, accounts dialog shows account to be disconnected, fixes bug #390924. 2006-12-31 Martyn Russell * .cvsignore: * libgossip/.cvsignore: * peekaboo/.cvsignore: * peekaboo/data/.cvsignore: * peekaboo/src/.cvsignore: * protocols/.cvsignore: * protocols/jabber/.cvsignore: * src/.cvsignore: * src/sounds/.cvsignore: * ui/.cvsignore: * ui/pixmaps/.cvsignore: Removed .cvsignore files now they are obsolete with the move to svn. 2006-12-28 Martyn Russell * src/gossip-chat-window.c: (gossip_chat_window_init), (chat_window_update_menu), (chat_window_room_set_topic_activate_cb), (chat_window_room_join_new_activate_cb): * ui/chat.glade: Provide way to join another group chat from group chat window, fixes bug #346465. 2006-12-28 Xavier Claessens * src/gossip-contact-list.c: Don't add & remove a contact from the roster for presence updates. Fixes bug #388275. 2006-12-28 Martyn Russell * libgossip/gossip-chatroom-manager.c: (gossip_chatroom_manager_remove): Don't emit the chatroom removed signal from the manager unless it was actually found in the first place, partially fixes bug #387652 (Xavier Claessens). 2006-12-28 Martyn Russell * libgossip/gossip-account-manager.[ch]: * libgossip/gossip-log.c: * src/gossip-new-chatroom-dialog.c: Added another sub directory before the account ID, so now we have the account type (MSN, etc) so allow us to have the same id for multiple protocols without confusion. I have added a contingency plan so that old logs are moved into the right place for the new infrastructure. Fixes bug #361898 (Xavier Claessens, Martyn Russell). 2006-12-25 Martyn Russell * src/*.h: * libgossip/*.h: * protocols/jabber/*.h: Added G_BEGIN_DECLS and G_END_DECLS, it was inconsistent across all header files. * configure.ac: * src/Makefile.am: * src/gossip-chat-window.c: * src/gossip-contact-list.c: * src/gossip-group-chat.c: * src/gossip-log-window.c: * src/gossip-private-chat.c: * libgossip/Makefile.am: * libgossip/gossip-log.[ch]: * libgossip/gossip-log.xsl: Moved the gossip-log code to libgossip and added a GnomeVFS dep to libgossip (required for the gossip-log code). * src/gossip-app.c: * src/gossip-main.c: * libgossip/gossip-session.[ch]: * libgossip/gossip-chatroom-manager.[ch]: Updated the session initiation process to initiate the account manager, chatroom manager and the logging. 2006-12-25 Martyn Russell * src/Makefile.am: * src/ephy-spinner.[ch]: * src/ephy-spinner.h: * src/gossip-app.c: * src/gossip-chat.c: * src/gossip-new-chatroom-dialog.c: Updated the throbber to the newer code used by Epiphany, fixes bug #389280 (Christian Persch). 2006-12-21 Mikael Hallendal * src/gossip-private-chat.c: (private_chat_finalize): - Disconnect from the right objects. - Fixes bug #388090. 2006-12-20 Xavier Claessens * libgossip/gossip-chatroom-manager.c: Unref chatroom only if removed from lists. * libgossip/gossip-session.c: Unref account and protocol only if removed from lists. Fixes bug #387652. * src/gossip-edit-contact-dialog.c: "updated" signal doesn't exists anymore, replace by "notify". * src/gossip-notify.c: * src/gossip-sound.c: Disconnect signal when removing from hash table. 2006-12-19 Mikael Hallendal * libgossip/gossip-contact.c: Reverted unnecessary updated signal. 2006-12-17 Xavier Claessens * libgossip/gossip-session.c: Fix refcounting of priv->presence. * src/gossip-sound.c: Fix refcounting of account. * src/gossip-notify.c: Fix refcounting of account. 2006-12-17 Martyn Russell * protocols/jabber/gossip-jabber.c: Unref the contact when we are done, leak spotted by Xavier. * src/gossip-private-chat.c: Clean up signal handling and fix a potential crasher with the composing signal. 2006-12-17 Martyn Russell * src/gossip-chat-window.c: * src/gossip-contact-list.c: Use async dialogs instead of gtk_dialog_run() for renaming groups and removing contacts. * src/gossip-group-chat.[ch]: * ui/chat.glade: * ui/group-chat.glade: Make the topic a label and set it from the menu or by the /topic command in the input GtkTextView. 2006-12-17 Martyn Russell * src/gossip-group-chat.c: Added "foo has joined" and "bar has left" messages in the chatroom, fixes bug #352066. 2006-12-17 Martyn Russell * libgossip/gossip-account.c: * libgossip/gossip-event-manager.c: * protocols/jabber/gossip-jabber-chatrooms.c: * protocols/jabber/gossip-jabber-vcard.c: * protocols/jabber/gossip-jabber-disco.c: * protocols/jabber/gossip-jid.c: * src/gossip-contact-list.c: * src/gossip-spell.c: Use g_slice_new0() in appropriate places. * protocols/jabber/gossip-jabber.c: Added "connecting" and "disconnecting" signals. Renamed "logged-in" and "logged-out" signals to connected and connecting. * libgossip/gossip-session.c: Removed "presence-updated" signal, it was unused. Fixed a regression where we would call protocol->setup function on session_connect() which meant that Jabber backend protocols would throw up warnings because private data was not initialised when disconnecting. Instead of doing our own "connecting" and "disconnecting" signals, we listen for the protocol signals. * src/gossip-sound.c: Use the "protocol-disconnecting" signal for the session so we don't play sounds to people going offline because we disconnected. 2006-12-17 Martyn Russell * ui/chat.glade: * ui/file-transfer.glade: * ui/group-chat.glade: * ui/main.glade: * ui/transports.glade: HIGify dialogs, fixes bug #383504 (Christian Persch). 2006-12-16 Xavier Claessens * libgossip/gossip-avatar.c: * libgossip/gossip-chatroom-contact.c: * libgossip/gossip-chatroom-contact.h: * libgossip/gossip-contact.c: * libgossip/gossip-contact.h: * libgossip/gossip-vcard.c: * protocols/jabber/gossip-jabber-chatrooms.c: Add warnings when ref/unref GossipAvatar, check to not pass NULL to gossip_avatar_(un)ref. gossip_contact_copy now copy properties to one contact to another and gossip_contact_dup create a new contact and copy properties from another contact. 2006-12-15 Mikael Hallendal * src/gossip-chat-window.c: (chat_window_create_label), (gossip_chat_window_add_chat): - Reverted change that turned off ellipsizing in chat windows. 2006-12-10 Xavier Claessens * libgossip/Makefile.am: * libgossip/gossip-contact.c: * libgossip/gossip-contact.h: * libgossip/gossip-utils.c: * libgossip/gossip-utils.h: * libgossip/gossip-vcard.c: * libgossip/gossip-vcard.h: * protocols/jabber/gossip-jabber-vcard.c: * protocols/jabber/gossip-jabber.c: * src/gossip-vcard-dialog.c: GossipAvatar is now ref-counted and moved into his own module. * libgossip/gossip-avatar.c * libgossip/gossip-avatar.h: New files. 2006-12-11 Richard Hult * src/gossip-contact-info-dialog.c: (contact_info_dialog_destroy_cb), (gossip_contact_info_dialog_show): Remove references to unused contact_signal_handler. Disconnect the presence_signal_handler from the contact, not the session. - Make the signal id a gulong, not guint. 2006-12-11 Richard Hult * src/gossip-vcard-dialog.c (vcard_dialog_get_vcard_cb): Don't crash if there is no avatar. 2006-12-10 Xavier Claessens * src/gossip-group-chat.c: Don't emit a "contact-presence-updated" and "contact-updated" on the chat, those signals don't exist anymore. 2006-12-10 Xavier Claessens * src/gossip-galago.c: Fix compilation error. 2006-12-10 Xavier Claessens * libgossip/gossip-chatroom-provider.c: * libgossip/gossip-contact.c: * libgossip/gossip-contact.h: * libgossip/gossip-protocol.c: * libgossip/gossip-session.c: * libgossip/gossip-utils.c: * libgossip/gossip-utils.h: * libgossip/gossip-vcard.c: * libgossip/gossip-vcard.h: * protocols/jabber/gossip-jabber-chatrooms.c: * protocols/jabber/gossip-jabber-vcard.c: * protocols/jabber/gossip-jabber.c: * src/gossip-contact-info-dialog.c: * src/gossip-contact-list-iface.c: * src/gossip-contact-list-iface.h: * src/gossip-contact-list.c: * src/gossip-edit-contact-dialog.c: * src/gossip-galago.c: * src/gossip-group-chat.c: * src/gossip-image-chooser.c: * src/gossip-image-chooser.h: * src/gossip-notify.c: * src/gossip-private-chat.c: * src/gossip-sound.c: * src/gossip-ui-utils.c: * src/gossip-ui-utils.h: * src/gossip-vcard-dialog.c: Use GossipContact property notifications and use GossipAvatar to store avatar's info (data, size, format). See bug #384013. 2006-12-09 Martyn Russell * libgossip/gossip-vcard.[ch]: * protocols/jabber/gossip-jabber-vcard.c: Added birthday to the vcard. * src/gossip-contact-info-dialog.c: * src/gossip-vcard-dialog.c: * ui/main.glade: Make it possible to get and set your own birthday in the contact information, fixes bug #380373 (Laurent Bigonville, Martyn Russell). 2006-12-08 Martyn Russell * configure.ac: Bump version. 2006-12-08 Martyn Russell * Release 0.20. 2006-12-08 Martyn Russell * src/gossip-new-chatroom-dialog.c: Since we don't have a way to cancel the browse request yet, make sure we don't crash when closing the dialog before the response comes back. 2006-12-08 Martyn Russell * src/gossip-chatrooms-window.c: Make it possible to sort columns. 2006-12-08 Xavier Claessens * libgossip/gossip-chatroom-contact.c: gossip_chatroom_contact_new() should create a GOSSIP_TYPE_CHATROOM_CONTACT instead of GOSSIP_TYPE_CONTACT. 2006-12-06 Martyn Russell * src/gossip-chat-window.c: After speaking with Richard about completely desensitising menus like Edit and Tab in a chat window, it is better to show all items as insensitive than just the menu parent itself. 2006-12-05 Martyn Russell * src/gossip-chat-window.c: * src/gossip-chat.[ch]: * src/gossip-group-chat.[ch]: * src/gossip-private-chat.c: * ui/chat.glade: Move the Insert Smiley to Conversation menu. Added gossip_chat_is_connected(). Update menus properly now depending on connection state. 2006-12-04 Martyn Russell * src/gossip-private-chat.c: Fixed a crasher in private_chat_other_avatar_notify_cb() where the user_data (a GossipPrivateChat object) was no longer valid, use g_signal_connect_object() instead of g_signal_connect() here. 2006-12-04 Martyn Russell * src/gossip-chat-view.[ch]: * src/gossip-group-chat.c: Add a "Retry Connection" button in the GtkTextView if we fail to join group chat for various reasons. 2006-12-04 Martyn Russell * libgossip/gossip-chatroom-manager.c: * src/gossip-app.c: * src/gossip-chat-manager.c: * src/gossip-chat-view.c: * src/gossip-chat-window.c: * src/gossip-group-chat.c: * src/gossip-new-chatroom-dialog.c: * src/gossip-private-chat.c: Sort out the reference counting nightmare with private/group chats and the chat window. Now we don't keep the private chats around for the duration of the time you use Gossip, instead remove them when the tab closes. This means we now free GossipPrivateChat objects when they are closed and this should also mean Peekaboo updates better with current chats. The commit also fixes some issues with reopening GossipGroupChat objects because of internal hash table issues. 2006-12-04 Martyn Russell * libgossip/gossip-chatroom-manager.c: * src/gossip-app.c: Make the chatroom manager signal when we can auto connect chatrooms and pass the chatroom so we just need to call gossip_group_chat_new () with it. 2006-12-04 Xavier Claessens * libgossip/gossip-account-manager.c: (gossip_account_manager_find_by_id): Fix a litle bug in the previous commit. account_id wasn't used. 2006-12-04 Martyn Russell * libgossip/gossip-account-manager.c: (gossip_account_manager_find_by_id): Use gossip_account_get_id() instead of gossip_account_get_param() to get the ID which was failing and causing crashes and general things not working in the log viewer. 2006-12-04 Martyn Russell * libgossip/gossip-chatroom-provider.h: * protocols/jabber/gossip-jabber-chatrooms.c: * protocols/jabber/gossip-jabber-disco.c: * src/gossip-new-chatroom-dialog.c: Handle disco error conditions and returned from the server in the event that the service can't be found or some other issue occurs (this is an issue for Google users that default to conference.talk.google.com). 2006-12-03 Martyn Russell * libgossip/gossip-chatroom-manager.c: * libgossip/gossip-chatroom-provider.[ch]: * protocols/jabber/gossip-jabber-chatrooms.[ch]: * protocols/jabber/gossip-jabber.c: * src/gossip-chat-invite.c: Moved the _find() function to _find_by_id() so we can find chatrooms by a candidate chatroom and the backend should know what to check to know if it is the same (like the JID for the Jabber backend). * src/gossip-chat-view.c: * src/gossip-chat-window.[ch]: Added a function to move tabs between windows by adding a reference before and removing one after to make sure we don't loose tabs in transaction. * src/gossip-app.c: * src/gossip-chat.c: * src/gossip-group-chat.[ch]: Maintain a reference to a GossipChatroom* and also do the joining when we create a new group chat keeping the current status and any errors that occur all inside the input GtkTextView instead of having a dialog with popups for errors. * src/gossip-new-chatroom-dialog.c: Removed all the "joining" crap in this dialog, just create new group chat objects for each room we want to join, the gossip-group-chat.c module does the rest now. * src/gossip-spell-dialog.c: Removed some unnecessary code. * src/gossip-ui-utils.c: Use the GTK_STOCK_DIALOG_QUESTION icon for group chat errors because the GTK_STOCK_DIALOG_ERROR icon is too big for use in the tab. * ui/group-chat.glade: Make group chat widgets insensitive by default so they are not available while joining. 2006-11-29 Xavier Claessens * libgossip/gossip-protocol.c: * libgossip/gossip-protocol.h: * libgossip/gossip-session.c: * libgossip/gossip-session.h: * protocols/jabber/gossip-jabber.c: * src/gossip-image-chooser.c: * src/gossip-image-chooser.h: * src/gossip-vcard-dialog.c:Make sure the UI loads avatars in a format/size supported by the protocol. Fixes bug #380466. 2006-11-28 Martyn Russell * src/gossip-chat-window.c: (gossip_chat_window_add_chat): Don't segregate private chat and group chat tabs. 2006-11-26 Martyn Russell * ui/main.glade: Change the semantics of the add contact dialog so it is not a fixed width and doesn't cut off the infomation label depending on your LANG, fixes bug #359813. 2006-11-26 Martyn Russell * src/gossip-contact-info-dialog.c: * src/gossip-edit-contact-dialog.c: * ui/main.glade: Move the subscription information from the contact info to the edit contact dialog, this is more appropriate and fixes bug #305371. 2006-11-26 Martyn Russell * libgossip/gossip-contact.c: (gossip_contact_add_presence), (gossip_contact_remove_presence): * libgossip/gossip-presence.c: (gossip_presence_init), (gossip_presence_sort_func): * libgossip/gossip-presence.h: Improve the presence sorting function so that we don't just compare the priority (which in an Ideal world with just the Jabber protocol would be fine). Now we compare 1. state, 2. priority, 3. time we received it. This fixes bug #369330. 2006-11-26 Martyn Russell * src/gossip-app.c: (app_setup), (app_status_icon_create), (app_status_icon_check_embedded_cb): After discovering that the GtkStatusIcon doesn't have an "embedded" signal, just a function to call, and that you may have to wait some time before it is embedded (which sucks badly) we now have a time out to check periodically during startup. Fixes bug #379079. 2006-11-26 Martyn Russell * src/gossip-chat-window.c: (chat_window_page_added_cb), (chat_window_page_removed_cb), (chat_window_drag_data_received): Make sure we don't remove the tab when dragging it back into the same window it came from. Last fix before closing bug #377867 (Xavier Claessens, Martyn Russell). 2006-11-25 Martyn Russell * src/gossip-chat-view.c: (gossip_chat_view_class_init), (chat_view_drag_motion): Returned FALSE instead of TRUE here so that dragging tabs between windows isn't random any more. The drag was being disruppted whenever the GossipChatView received a drag motion event. . * src/gossip-chat-window.c: Cleaned up the code a little and made some minor improvements such as: group chat tabs are now shown on the right hand side of the chat window and normal chats on the left. Tabs are now the exact width they need to be, (i.e. no ellipsizing) which isn't final but I want to see how much better it is than using fixed widths and possibly fix it up to do a bit of both somehow. * src/gossip-group-chat.c (group_chat_create_gui): Fixed a crasher with the priv->widget group chat widget not being referenced, so when you would drag a group chat tab out to a new window it was crashing (which worked perfectly with normal chats of course). * src/gossip-ui-utils.c: (gossip_window_get_is_visible), (gossip_window_present): NULL check these functions so we don't crash with random crap. 2006-11-22 Richard Hult * src/gossip-chat-window.c: (chat_window_tab_added_cb), (chat_window_tab_removed_cb), (gossip_chat_window_add_chat), (gossip_chat_window_remove_chat): Connect/disconnect the avatar changed callback in the right place so it covers all the cases. Fixes crash when someone changes avatar after dragging the tab. 2006-11-22 Martyn Russell * src/gossip-chat-window.c: * src/gossip-contact-list.c: Make it possible to drag from the roster into the chat window again. 2006-11-21 Xavier Claessens * src/Makefile.am: * src/gossip-chat-window.c: * src/gossip-notebook.c: * src/gossip-notebook.h: Use new GTK 2.10 API for DnD tabs. GossipNotebook is now useless. Fixes bug #377867 (Xavier Claessens, Martyn Russell). 2006-11-21 Martyn Russell * src/gossip-chat-window.c: * src/gossip-chatrooms-window.c: * src/gossip-edit-chatroom-dialog.c: * src/gossip-new-chatroom-dialog.c: * ui/group-chat.glade: Clean up the chatroom management window and make things a lot smoother to use. 2006-11-20 Martyn Russell * libgossip/*.[ch]: * src/*.[ch]: * protocols/jabber/*.[ch]: * ui/*.glade: Many many things: - Added G_STR_EMPTY macro to do the incredibly frequent job of checking if a string is NULL or "" and use it everywhere. - Move the group chat menu to a new position of its own since it is big enough and common enough. - Implemented browsing chatrooms (this is dodgy with SSL on conference.jabber.org with its 1000+ rooms). 2006-11-17 Xavier Claessens * libgossip/gossip-account.[ch]: Add gossip_account_param_new_g_value() from TELEPATHY but it's not teleapthy-specific. * src/gossip-ui-utils.c: Add missing case GOSSIP_ACCOUNT_TYPE_UNKNOWN in gossip_pixbuf_from_account_type(), was fixed in TELEPATHY branch were it can happen to have an unknown account. 2006-11-17 Xavier Claessens * libgossip/gossip-contact.c * libgossip/gossip-contact.h * libgossip/gossip-session.c * src/gossip-contact-list.c: Remove unused and wrong gossip_contact_compare(). Now contacts from two different account are different. Fixes bug #322110. 2006-11-16 Mikael Hallendal * libgossip/gossip-account-manager.c: (account_manager_parse_account): - Add compatibility with old settings files after moving the ID. - Patch from Xavier Claessens. 2006-11-16 Mikael Hallendal * libgossip/gossip-account.[ch]: (account_class_init), (account_init), (account_finalize), (account_get_property), (account_set_property), (gossip_account_get_id), (account_set_type), (gossip_account_set_id): Make "id" a property that already exists and should be set by the backend. * libgossip/gossip-account-manager.c: (account_manager_parse_account), (account_manager_file_save): * protocols/jabber/gossip-jabber.c: (jabber_setup), (jabber_connection_open_cb), (jabber_new_account), (jabber_register_connection_open_cb): * src/gossip-account-widget-jabber.c: (account_widget_jabber_save), (account_widget_jabber_entry_focus_cb), (account_widget_jabber_setup): * src/gossip-app.c: (app_session_protocol_connecting_cb), (app_session_protocol_connected_cb), (app_session_protocol_disconnected_cb), (app_session_protocol_error_cb): * src/gossip-galago.c: (galago_get_account): * src/gossip-log.c: (log_get_filename_by_date_for_contact), (log_get_filename_by_date_for_chatroom), (log_get_contacts_filename), (gossip_log_get_own_contact), (gossip_log_get_contacts), (gossip_log_get_chatrooms), (gossip_log_get_dates_for_contact), (gossip_log_get_dates_for_chatroom): * src/gossip-new-chatroom-dialog.c: (new_chatroom_dialog_set_defaults): * src/gossip-notify.c: (notify_protocol_connected_cb): * src/gossip-sound.c: (sound_protocol_connected_cb): * src/gossip-ui-utils.c: (gossip_password_dialog_run): - Adapt to the new id-API - Patch from Eitan Isaacson and Xavier Claessens. - Fixes bug #368644 (Eitan Isaacson, Xavier Claessens). 2006-11-11 Richard Hult * configure.ac: Bump version and use the full bugzilla link for bug reporting. 2006-11-09 Martyn Russell * Release 0.19. 2006-11-09 Martyn Russell * help/C/figures/gossip-group-message.png: * help/C/figures/gossip-message.png: * help/C/figures/gossip-typing.png: * help/C/figures/gossip_first_start_window.png: * help/C/figures/gossip_new_chat_room.png: * help/C/figures/gossip_roster.png: * help/C/figures/gossip_status_message.png: * help/C/gossip.xml: * help/ChangeLog: * help/Makefile.am: Updated the help and the roster image, removed older images no longer used, fixes bug #372158 (Brian Pepple). 2006-11-09 Martyn Russell * src/gossip-chat-view.[ch]: Added a backward search capability but also updated the forward searching so it works from the last place irrespective of the last search direction. * src/gossip-log-window.c: * ui/main.glade: Added Next and Previous buttons to the log window and made the "Find" button state more reliable. * src/gossip-log.c: Fixed warnings and a potential crasher when an unrelated directory in the logs directory exists but is not related to any logging at all (i.e. it is added by something else). * src/gossip-ui-utils.[ch]: Added GtkTextView backward searching functions. 2006-10-31 Richard Hult * src/gossip-chat-window.c (chat_window_update_title): Fix warning for group chats. 2006-10-30 Mikael Hallendal * protocols/jabber/gossip-jabber-vcard.c: (jabber_vcard_get_cb): - Check that the vcard value is not NULL before trying to decode it. - Fix #367823. 2006-10-29 Martyn Russell * src/gossip-chat-window.c: Use avatars as window icons, fixes bug #362218. 2006-10-18 Martyn Russell * protocols/jabber/gossip-jabber-disco.[ch]: * protocols/jabber/Makefile.am: Added disco work I did for transports into the backend so they can be used for other disco stuff. 2006-10-16 Martyn Russell * configure.ac: Bumped version to 0.19. 2006-10-16 Martyn Russell * Released 0.18. 2006-10-16 Martyn Russell * protocols/jabber/gossip-jabber.c: (jabber_connection_open_cb), (jabber_send_message): Don't use an empty resource when sending a message, the server returns a malformed JID error. This fixes bug #362661 (Michele Campeotto). 2006-10-16 Martyn Russell * peekaboo/src/Makefile.am: * po/POTFILES.in: Fixed make distcheck failures. 2006-10-11 Richard Hult * libgossip/gossip-account.c: (gossip_account_has_param): Add, fixes bug #361278 (Xavier Claessens). 2006-10-11 Richard Hult * src/gossip-galago.c: (galago_set_status): Fix crash when using galago, bug #361272 (Eitan Isaacson). 2006-10-10 Richard Hult * configure.ac: Add back the optional galago check so that peekaboo builds both with and without galago. Fixes bug #361244. 2006-10-10 Richard Hult * src/gossip-contact-list.c: Break a line. * src/gossip-galago.c: (galago_get_account): Fix build, bug #361235 (Xavier Claessens). 2006-10-08 Martyn Russell * src/gossip-ui-utils.c: (link_button_hook), (gossip_link_button_new): Use new gtk link widget to launch URIs instead of the gnomeui widget, fixes bug #360348 (Xavier Claessens). 2006-10-08 Martyn Russell * src/gossip-account-widget-generic.[ch]: * src/gossip-account-widget-jabber.h.[ch]: Forgot to add these. 2006-10-07 Martyn Russell * libgossip/gossip-account-manager.c: * libgossip/gossip-account.[ch]: * libgossip/gossip-account.dtd: * libgossip/gossip-protocol.[ch]: * libgossip/gossip-session.[ch]: * protocols/jabber/gossip-jabber.c: * src/Makefile.am: * src/gossip-accounts-dialog.[ch]: * src/gossip-app.[ch]: * src/gossip-log.c: * src/gossip-new-account-window.[ch]: * src/gossip-new-chatroom-dialog.c: * src/gossip-notify.c: * src/gossip-sound.c: * src/gossip-ui-utils.c: * ui/main.glade: Remove the old druid for adding accounts and use the accounts dialog instead. This also makes the 'Settings' part of the dialog protocol specific according to the new GossipAccount API that Xavier has worked on. Fixes bug #358099 (Xavier Claessens, Martyn Russell). This also fixes bug #359619 (Xavier Claessens). 2006-10-07 Martyn Russell * configure.ac: * peekaboo/src/Makefile.am: * peekaboo/src/peekaboo-applet.c: Removed the need for Galago with Peekaboo, since we don't use it at the moment. 2006-10-06 Martyn Russell * libgossip/gossip-contact.c: (gossip_contact_copy): Use a more efficient method to copy presences/groups when copying a contact, fixes bug #360121. 2006-10-06 Richard Hult * configure.ac: * libgossip/gossip-utils.c: * libgossip/gossip-utils.h: * protocols/jabber/gossip-jabber-vcard.c: (jabber_vcard_get_cb), (gossip_jabber_vcard_set): Use the base64 API in glib and remove our version. Fixes bug #359725 (Xavier Claessens). 2006-10-06 Martyn Russell * src/gossip-cell-renderer-expander.c: Fixed the expander cell renderer animation when the scrolled window adjustments are in use (patch by Kristian Rietveld). * src/gossip-contact-list.c: Fixed class property description type and removed an extraneous gtk_tree_model_row_changed() call both spotted by Kristian Rietveld. 2006-10-04 Richard Hult * src/gossip-add-contact-dialog.c: (add_contact_dialog_vcard_cb): Use italic instead of bold for the information label, style fix. (add_contact_dialog_id_entry_focus_cb): No need to check for focus in, we'll never get that. Don't leak the account. Use italic. (gossip_add_contact_dialog_show): Style fix. * ui/main.glade: Move the information label a bit to make it look better. We still have a problem with a cut off label though. 2006-10-04 Richard Hult * src/gossip-add-contact-dialog.c (add_contact_dialog_vcard_cb): Don't check if we have ANY dialog, check if we have the right one, otherwise a slow response can arrive when we have a new dialog up. (add_contact_dialog_destroy_cb): Remove the complete idle. 2006-10-03 Martyn Russell * src/gossip-add-contact-dialog.c: Don't lookup example ID vcard and don't assume the first group should be used. 2006-10-02 Martyn Russell * src/Makefile.am: * src/gossip-add-contact-dialog.[ch]: * src/gossip-add-contact-window.[ch]: * src/gossip-app.c: * src/gossip-chat-window.c: * src/gossip-contact-info-dialog.c: * src/gossip-vcard-dialog.c: * ui/main.glade: Update the add contact experience, fixes bug #357457 (Xavier Claessens, Martyn Russell). * protocols/jabber/gossip-jabber-vcard.c (jabber_vcard_get_cb): Fixed the vcard handling code so it will check for a '@' instead of accept any old crap and also make sure it works with old broken vcards that use %s instead of %s. 2006-09-30 Richard Hult * src/gossip-notify.c (notify_new_message_contact_cb): Only use the contact list as parent window if it's visible on the current desktop. Fixes bug #358101. 2006-09-30 Martyn Russell * ui/main.glade: Updated the label for the new "Compact contact list" preference that Mikael added so it doesn't double up on the mnemonic. Also add a separate tab for themeing since the "General" tab is looking a little crowded. NOTE: Do not use glade-3 for Gossip UI editing, it breaks translations. 2006-09-30 Martyn Russell * libgossip/gossip-account-manager.c: * libgossip/gossip-account.[ch]: * libgossip/gossip-async.h: * libgossip/gossip-chatroom-contact.c: * libgossip/gossip-chatroom-manager.[ch]: * libgossip/gossip-chatroom-provider.[ch]: * libgossip/gossip-chatroom.[ch]: * libgossip/gossip-conf-cocoa.c: * libgossip/gossip-conf-gnome.c: * libgossip/gossip-contact.c: * libgossip/gossip-debug.c: * libgossip/gossip-event-manager.[ch]: * libgossip/gossip-event.[ch]: * libgossip/gossip-ft-provider.[ch]: * libgossip/gossip-ft.[ch]: * libgossip/gossip-message.[ch]: * libgossip/gossip-paths-cocoa.c: * libgossip/gossip-presence.[ch]: * libgossip/gossip-protocol.[ch]: * libgossip/gossip-session.[ch]: * libgossip/gossip-time.c: * libgossip/gossip-utils.c: * libgossip/gossip-vcard.c: * libgossip/gossip-version-info.[ch]: * protocols/jabber/gossip-jabber-chatrooms.[ch]: * protocols/jabber/gossip-jabber-ft-utils.c: * protocols/jabber/gossip-jabber-ft.c: * protocols/jabber/gossip-jabber-private.h: * protocols/jabber/gossip-jabber-services.c: * protocols/jabber/gossip-jabber-utils.[ch]: * protocols/jabber/gossip-jabber-vcard.c: * protocols/jabber/gossip-jabber.[ch]: * protocols/jabber/gossip-jid.[ch]: * protocols/jabber/gossip-sha.c: * protocols/jabber/gossip-transport-accounts.c: * protocols/jabber/gossip-transport-discover.[ch]: * protocols/jabber/gossip-transport-protocol.[ch]: * protocols/jabber/gossip-transport-register.[ch]: * src/gossip-about-dialog.c: * src/gossip-account-button.[ch]: * src/gossip-account-chooser.[ch]: * src/gossip-accounts-dialog.c: * src/gossip-add-contact-window.c: * src/gossip-app.[ch]: * src/gossip-async.h: * src/gossip-avatar-image.c: * src/gossip-cell-renderer-expander.c: * src/gossip-cell-renderer-text.c: * src/gossip-chat-invite.c: * src/gossip-chat-manager.c: * src/gossip-chat-view.[ch]: * src/gossip-chat-window.[ch]: * src/gossip-chat.[ch]: * src/gossip-chatrooms-window.c: * src/gossip-contact-groups.[ch]: * src/gossip-contact-info-dialog.c: * src/gossip-contact-list-iface.[ch]: * src/gossip-contact-list.c: * src/gossip-dbus.c: * src/gossip-edit-chatroom-dialog.c: * src/gossip-edit-contact-dialog.c: * src/gossip-ft-window.c: * src/gossip-galago.c: * src/gossip-geometry.c: * src/gossip-group-chat.[ch]: * src/gossip-idle.c: * src/gossip-image-chooser.[ch]: * src/gossip-log-window.c: * src/gossip-log.[ch]: * src/gossip-main.c: * src/gossip-new-account-window.c: * src/gossip-new-chatroom-dialog.c: * src/gossip-new-message-dialog.c: * src/gossip-notebook.[ch]: * src/gossip-notify.[ch]: * src/gossip-preferences.c: * src/gossip-presence-chooser.[ch]: * src/gossip-private-chat.[ch]: * src/gossip-sound.c: * src/gossip-spell-dialog.[ch]: * src/gossip-spell.c: * src/gossip-status-presets.[ch]: * src/gossip-stock.c: * src/gossip-subscription-dialog.c: * src/gossip-theme-manager.c: * src/gossip-throbber.[ch]: * src/gossip-transport-accounts-window.c: * src/gossip-transport-add-window.c: * src/gossip-tray.[ch]: * src/gossip-ui-utils.[ch]: * src/gossip-vcard-dialog.c: Fixed all the white space issues with Xavier's python script, fixes bug #357244 (Xavier Claessens). 2006-09-29 Martyn Russell * src/gossip-log-window.c: (log_window_contacts_set_selected): Scroll the contact's name in the history window, fixes bug #358036 (Wouter Bolsterlee). 2006-09-29 Martyn Russell * MAINTAINERS: * gossip-about-dialog.c: Updated information and included Xavier Claessens & Eitan Isaacson since they have made large contributions to Gossip. 2006-09-27 Mikael Hallendal * gossip.schemas.in: * src/gossip-app.c: (app_setup), (app_notify_show_avatars_cb), (app_notify_compact_contact_list_cb): * src/gossip-preferences.c: (preferences_setup_widgets), (gossip_preferences_show): * src/gossip-preferences.h: * ui/main.glade: - Added a setting for compact contact list. * src/gossip-cell-renderer-text.c: (gossip_cell_renderer_text_class_init), (gossip_cell_renderer_text_init), (cell_renderer_text_get_property), (cell_renderer_text_set_property), (cell_renderer_text_update_text): - Added a show-status property on the text cell renderer. * src/gossip-contact-list.[ch]: (gossip_contact_list_class_init), (gossip_contact_list_init), (contact_list_get_property), (contact_list_set_property), (contact_list_add_contact), (contact_list_create_model), (contact_list_text_cell_data_func), (contact_list_update_list_mode_foreach), (gossip_contact_list_get_show_avatars), (gossip_contact_list_set_show_avatars), (gossip_contact_list_get_is_compact), (gossip_contact_list_set_is_compact): - Added a is-compact property on the contact list. - Make the is-compact property decide whether to show status and avatar. - If is-compact is FALSE, the show-avatars property will be used to decide if avatars should be shown or not. (This might be better to try to scale down the avatars but that's not tried). * src/gossip-group-chat.c: (group_chat_contacts_setup), (group_chat_cl_text_cell_data_func), (group_chat_cl_expander_cell_data_func): - Added an expander to the group chat contact list. * ui/group-chat.glade: - Increased the width of the contact list in group chats. 2006-09-27 Richard Hult * configure.ac: Bail out if xss isn't found, fixes bug #357736. 2006-09-26 Mikael Hallendal * libgossip/gossip-chatroom.[ch]: (gossip_chatroom_role_to_string), (gossip_chatroom_affiliation_to_string): - Changed to take a number argument to determine format of returned string. * src/gossip-group-chat.c: (group_chat_cl_text_cell_data_func): Now also used for the name string. And makes use of the modified role_to_string function to use plural if more than one contact of each role exists. (group_chat_get_role_iter): - No need to set the name of the group here, it's fetched from the data func. 2006-09-26 Mikael Hallendal * libgossip/gossip-chatroom.[ch]: (gossip_chatroom_role_to_string), (gossip_chatroom_affiliation_to_string): - Added to convert a role and affiliation to a translated string. * src/gossip-group-chat.c: (group_chat_row_activated_cb), (group_chat_contacts_sort_func), (group_chat_contacts_setup), (group_chat_contacts_find_foreach), (group_chat_joined_cb), (group_chat_contact_joined_cb), (group_chat_cl_test_collapse_row_cb), (group_chat_cl_pixbuf_cell_data_func), (group_chat_cl_text_cell_data_func), (group_chat_cl_set_background), (group_chat_contact_left_cb), (group_chat_contact_presence_updated_cb), (group_chat_contact_updated_cb), (group_chat_get_nick_list_foreach), (group_chat_get_role_iter_foreach), (group_chat_get_role_iter): - Converted the contact list in group chats to a "tree". - Show roles a headers in contact list. - This really should be shared with the roster code as was intended from the beginning. 2006-09-25 Richard Hult * src/gossip-presence-chooser.c (presence_chooser_dialog_response_cb): Always allow the status string to be used, even if it's not a new one. 2006-09-25 Richard Hult * src/Makefile.am: Make --as-needed linking work, fixes bug #357501 (Fryderyk Dziarmagowski). 2006-09-24 Martyn Russell * Bumped version to 0.18. 2006-09-24 Martyn Russell * Release 0.17. 2006-09-24 Richard Hult * libgossip/gossip-account-manager.c: Staticify a variable. * protocols/jabber/gossip-jabber.c: (jabber_setup_connection), (jabber_set_proxy): Remove old "NONE" type proxy, workaround for pre-0.17 loudmouth versions, just set the proxy to NULL. Also reset the proxy when the setting is to use direct connection. Fixes the last bit of bug #346432. 2006-09-24 Martyn Russell * src/gossip-contact-list.c: (contact_list_row_activated_cb): Remove the old double-click expand/collapse code I forgot to clean up yesterday. 2006-09-23 Martyn Russell * configure.ac: Bumped glib dependency to 2.10 since the new accounts rework that Xavier did uses g_hash_table_unref() which is new in glib 2.10. * src/Makefile.am: * src/gossip-cell-renderer-expander.[ch]: * src/gossip-cell-renderer-text.c: * src/gossip-contact-list.c: Added the expander cell renderer which Kris kindly worked on today, fixes bug #357160 (Kristian Rietveld, Martyn Russell). 2006-09-23 Richard Hult * src/gossip-app.c: * src/gossip-chat.c: * src/gossip-ui-utils.c (gossip_window_present): Use the current event time if there is one to allow us to steal focus when we want to (as a result of user interaction). Metacity seems to work now, yay :) Fixes bug #333110. 2006-09-23 Martyn Russell * libgossip/gossip-account-manager.[ch]: * libgossip/gossip-account.[ch]: * libgossip/gossip-account.dtd: * libgossip/gossip-utils.[ch]: Reworked GossipAccount to be more agreeable to Telepathy, fixes bug #355797 (Xavier Claessens). 2006-09-23 Richard Hult * protocols/jabber/gossip-jabber-vcard.c (jabber_vcard_get_cb): Handle error 503 (service unavailable), fixes bug #333188. 2006-09-23 Richard Hult * protocols/jabber/gossip-jabber-vcard.c (jabber_vcard_get_cb) (gossip_jabber_vcard_set): Do as the spec says: require that the email is put inside a USERID and not as CDATA in the EMAIL tag. Also do the same when setting the vcard. Fixes bug #343339. 2006-09-22 Martyn Russell * configure.ac: * src/Makefile.am: * src/eggtrayicon.[ch]: * src/gossip-app.c: * src/gossip-notify.[ch]: * src/gossip-ui-utils.[ch]: Removed EggTrayIcon to use GtkStatusIcon instead and bumped version of libnotify we depend on to 0.4.1, fixes bug #351421 (Xavier Claessens). 2006-09-21 Richard Hult * src/gossip-app.c (app_session_protocol_disconnected_cb): Fix build without dbus. 2006-09-19 Richard Hult * src/gossip-image-chooser.c (image_chooser_set_image_from_data): Close the loader before trying to get the pixbuf so that all the data gets processed. Fixes bug #353090. 2006-09-19 Richard Hult * src/gossip-accounts-dialog.c (accounts_dialog_destroy_cb): Disconnect the error handler too, fixes bug #356647. 2006-09-18 Richard Hult * src/gossip-cell-renderer-text.c: (cell_renderer_text_update_text): Set xpad and ypad differently for groups and contacts, improves appearance. * src/gossip-contact-list.c: (contact_list_setup_view): Don't set the padding here. * src/gossip-chat-view.c: (chat_view_setup_tags): Don't connect to event, we're only interested in motion notify. 2006-09-17 Martyn Russell * src/gossip-contact-list.c: (contact_list_setup_view), (contact_list_cell_set_background), (contact_list_row_activated_cb): Updated the padding and added a flat view approach to the roster so we don't waste space on the left making the contacts look like a tree. * src/gossip-presence-chooser.c: (gossip_presence_chooser_init): Updated the padding and spacing so things look nice and lined up as you look down the roster. 2006-09-17 Richard Hult * src/Makefile.am: Don't build the old account button. * src/gossip-app.c: (app_setup), (app_tray_update_tooltip), (app_presence_updated): * src/gossip-group-chat.c: (group_chat_protocol_connected_cb), (group_chat_protocol_disconnected_cb): * src/gossip-private-chat.c: (private_chat_protocol_connected_cb), (private_chat_protocol_disconnected_cb): Add some comments for translators and tweak some strings to help translators. 2006-09-17 Martyn Russell * configure.ac: Bumped version to 0.17 and depend on GTK+ 2.10. 2006-09-16 Martyn Russell * Release 0.16. 2006-09-16 Martyn Russell * libgossip/gossip-protocol.c: * libgossip/gossip-session.[ch]: * libgossip/libgossip-marshal.list: * protocols/jabber/gossip-jabber-chatrooms.c: * protocols/jabber/gossip-jabber.c: * src/gossip-account-button.c: * src/gossip-account-chooser.c: * src/gossip-accounts-dialog.c: * src/gossip-app.c: * src/gossip-ft-window.c: * src/gossip-group-chat.c: * src/gossip-notify.c: * src/gossip-private-chat.c: * src/gossip-sound.c: * src/gossip-subscription-dialog.c: Added the disconnect reason up and down the stack and reconnect when not disconnected normally. Patch by Xavier Claessens, fixes bug #121003 (Xavier Claessens). 2006-09-16 Richard Hult * src/gossip-ui-utils.c: (gossip_password_dialog_run): * ui/chat.glade: * ui/group-chat.glade: * ui/main.glade: * ui/transports.glade: Revert patch for #355117, that's an Ubuntu specific thing (setting invalid char). 2006-09-16 Richard Hult * src/gossip-presence-chooser.c: (presence_chooser_dialog_response_cb), (presence_chooser_show_dialog): Fill in the status dialog with exiting strings. Fixes bug #354771 (Xavier Claessens). 2006-09-16 Richard Hult * src/gossip-new-chatroom-dialog.c: (new_chatroom_dialog_update_join_button): Remove debug output, fixes bug #355999 (Xavier Claessens). 2006-09-11 Martyn Russell * src/gossip-ui-utils.c: * ui/group-chat.glade: * ui/main.glade: * ui/transports.glade: Changed the default password character from the asterisk to the black circle, fixes bug #355117 (Xavier Claessens). 2006-09-09 Richard Hult * src/gossip-app.c: (app_setup): Don't set the small mode on the throbber. * src/gossip-throbber.c: (scale_to_real_size), (gossip_throbber_load_images), (gossip_throbber_size_request): Use an icon size that is available in the new icon theme for GNOME 2.16. Only scale when the right size is not available (older GNOME versions). This makes the throbber work in both 2.16 and earlier versions. Also remove the extra horizontal padding, looks better. 2006-09-09 Richard Hult * src/gossip-accounts-dialog.c (accounts_dialog_protocol_error_cb): Add error handler, for now just does the same as disconnect, might need to show an error icon or something like that. Fixes bug #349515, since it resets the connecting state on error. Also remove some pointless comments that just says exactly what the code already says, remove some assignments from declarations. 2006-09-07 Martyn Russell * src/gossip-chat-window.c: Keep the 'x' on chat tabs permanently on, it is a bit shit flashing away as it does, fixes bug #354304 (Xavier Claessens). 2006-09-07 Richard Hult * src/gossip-chat.c: (gossip_chat_init), (chat_text_view_scroll_hide_cb), (chat_text_view_size_allocate_cb): Set max height on the input text view, fixes bug #132514 (Xavier Claessens). 2006-09-07 Martyn Russell * src/gossip-app.c: (gossip_app_set_visibility): Make sure clicking on the 'x' which hides the window actually saves that setting so that when you quit from the tray and restart Gossip it starts hidden. Fixes #354735 (Xavier Claessens). 2006-09-07 Richard Hult * protocols/jabber/gossip-jabber.c (jabber_request_version): Don't use the id if there is none (id is optional for iq), fixes warning with new loudmouth. 2006-09-07 Mikael Hallendal * src/gossip-group-chat.c: (group_chat_contacts_sort_func): - Sort moderators at the top. 2006-09-07 Martyn Russell * ui/group-chat.glade: Made contact list a little wider. 2006-09-07 Mikael Hallendal * libgossip/gossip-chatroom-contact.c: (gossip_chatroom_contact_class_init): Correct property name typo. * src/gossip-group-chat.c: (group_chat_contacts_setup), (group_chat_is_group_chat), (group_chat_roster_name_data_func): - Prepend a @ on moderator names in group chat contact lists. - This will be changed when we start depending on GTK+ 2.10. 2006-09-06 Martyn Russell * libgossip/gossip-event.c: Added some debugging. * libgossip/gossip-session.c: Fixed a crasher with inbound file transfer requests (spotted by Alex Jones). * src/gossip-app.c: * src/gossip-contact-list.c: Fix file transfer requests so they are actually shown in the tray and contact list. 2006-09-05 Mikael Hallendal * libgossip/gossip-chatroom.c: (gossip_chatroom_role_get_gtype), (gossip_chatroom_affiliation_get_gtype): - Changed the value nick to just be the attribute values. * protocols/jabber/gossip-jabber-chatrooms.c: (jabber_chatrooms_presence_handler), (jabber_chatrooms_set_presence_foreach), (jabber_chatrooms_find_muc_user_node), (jabber_chatrooms_get_role), (jabber_chatrooms_get_affiliation): - Set the role and affiliation on the chatroom contacts. 2006-09-04 Mikael Hallendal * libgossip/Makefile.am: * libgossip/gossip-chatroom.[ch]: - Added Role and Affiliation enums. * libgossip/gossip-chatroom-contact.[ch]: - Subclass of GossipContact that adds Role and Affiliation properties. * protocols/jabber/gossip-jabber-chatrooms.c: - Create GossipChatroomContacts instead of GossipContacts. - Not hooked up to get the information about role and affiliation yet. 2006-09-03 Martyn Russell * src/gossip-app.c: * ui/main.glade: Favorite chatrooms should be accessible in group_chat menu, fixes #354002 (Xavier Claessens). 2006-09-03 Martyn Russell * src/gossip-edit-contact-dialog.c: You can now retrieve the user's vcard name and nickname in the Edit Contact dialog, fixes #353243 (Xavier Claessens). 2006-09-03 Martyn Russell * configure.ac: Bumped version to 0.16. * src/gossip-subscription-dialog.c: Don't crash when closing subscribe dialog and the vcard hasn't arrived yet, fixes #353576 (Xavier Claessens). 2006-08-25 Martyn Russell * Release 0.15. 2006-08-25 Martyn Russell * protocols/jabber/gossip-jabber.c: Unsubscribe contacts when removing them, not just remove them from our roster. Removed internal references for contacts in the Jabber backend when removing the contact, this makes sure that when they are added again during the same session, they are not just sent silent subscribed responses. * src/gossip-galago.c: Since we warn a lot here, ALL warnings are now debug statements. To see them turn on GOSSIP_DEBUG=Galago. This should also stop the crash reports on Edgy since warnings are critical there (we think). * src/gossip-notify.c: Added notifications when subscription requests arrive (Xavier Claessens). * src/gossip-subscription-dialog.c: * ui/main.glade: Show "requesting information..." label in the subscription dialog and show the dialog imendiately instead of waiting for the vcard first, fixes #314555 (Xavier Claessens). 2006-08-24 Martyn Russell * libgossip/gossip-session.c: Actually unsubscribe someone when we remove them from our roster. 2006-08-24 Richard Hult * src/gossip-vcard-dialog.c (vcard_dialog_get_vcard_cb): Check the global dialog variable, not the one passed as argument. Fixes a crash when there is no vcard retrieved from the server. 2006-08-23 Martyn Russell * src/gossip-contact-list.c: Re-arrange the context menu so it is grouped a bit better and makes more sence order wise. 2006-08-23 Richard Hult * src/gossip-contact-list.c: (gossip_contact_list_get_contact_menu): Remove spurious unref, fixes bug #352377. (contact_list_button_press_event_cb), (contact_list_action_cb): Check that we have a contact before doing anything. 2006-08-22 Richard Hult * libgossip/gossip-time.c: (gossip_time_parse), (gossip_time_to_string_utc), (gossip_time_to_string_local): * libgossip/gossip-time.h: * src/gossip-log.c: (gossip_log_get_date_readable): Parse the dates for the log window correctly, fixes bug #352385. 2006-08-21 Martyn Russell * protocols/jabber/gossip-jabber.c: (jabber_get_default_server): If the Jabber ID is a Google Jabber ID, then replace the connecting server for the talk.google.com, fixes #352228 (Patch by Xavier Claessens). 2006-08-20 Daniel Nylander * help/sv/sv.po: Added initial Swedish translation. * help/sv/figures: Added directory. * help/Makefile.am: Added sv to DOC_LINGUAS 2006-08-20 Richard Hult * src/gossip-chat-window.c (chat_window_create_label): Try with 0 space padding between the close button and label, since there is some padding already due to the button relief. * src/Makefile.am: Remove -export-dynamic, not needed anymore. * src/gossip-chat-window.c: (gossip_chat_window_class_init): Remove whitespace. (gossip_chat_window_init) * src/gossip-edit-contact-dialog.c: (gossip_edit_contact_dialog_show): * src/gossip-vcard-dialog.c: (vcard_dialog_create_avatar_chooser), (gossip_vcard_dialog_show): * ui/chat.glade: * ui/main.glade: Don't use glade custom creation functions, we don't want to force -export-dynamic and it's just a really ugly hack. Also make the vcard and edit contact dialogs not visible from start and show them by code instead. Make the avatar button not change size after showing it. 2006-08-20 Richard Hult * src/gossip-about-dialog.c: Update link. 2006-08-19 Martyn Russell * src/gossip-contact-list.c: Added some debugging and make sure we always show contacts if they have event data to show (messages, subscription requests, etc), fixes #312293 (Marcel Moreaux). 2006-08-19 Martyn Russell * README: Added a blurb about how to use D-Bus with Gossip. * peekaboo/data/GNOME_Peekaboo_Applet.xml: Removed the "Toggle roster visibility" option here. * peekaboo/src/peekaboo-applet.c: * peekaboo/src/peekaboo-dbus.[ch]: * src/gossip-dbus.c: * src/gossip-dbus.xml: Added GetPresence and GetName interfaces and don't crash in Peekaboo if Gossip isn't running, fixes #349585 (Daniel Holbach). 2006-08-19 Richard Hult * libgossip/gossip-conf-cocoa.c (gossip_conf_init): Add new hint preference. 2006-08-19 Martyn Russell * src/gossip-presence-chooser.c: Make sure we show the clear presets dialog on the right desktop AND only set the parent if the window is clearly visible and on the same desktop, fixes #351479 (Xavier Claessens), again. * src/gossip-status-presets-dialog.[ch]: Removed, not longer used. 2006-08-18 Martyn Russell * src/gossip-app.c: * src/gossip-status-presets.[ch]: Added an API to remove the default presence state, fixes #350699 (Richard). 2006-08-18 Martyn Russell * configure.ac: Bumped version to 0.15. * src/gossip-notify.[ch]: Make it possible to show hints using libnotify as well as a dialog. * src/gossip-ui-utils.[ch]: Use a dialog if libnotify is not available, otherwise use the notify API to tell users about hints, fixes #351967 (Xavier Claessens). 2006-08-18 Martyn Russell * src/gossip-app.c: (app_setup): * ui/main.glade: Remove the "Hide Contact List" item but keep the Show/Hide roster item in the tray menu, fixes #346861 (Wouter Bolsterlee). 2006-08-18 Martyn Russell * src/gossip-vcard-dialog.c: Don't crash with a race condition when saving vcards, fixes 350936 (Johan Dahlin). 2006-08-18 Richard Hult * ui/main.glade: Patch from Xavier Claessens to add stock icon for the Quit menu item in the tray menu. Fixes bug #351964. 2006-08-18 Martyn Russell * src/gossip-notify.c: * src/gossip-contact-list.c: * src/gossip-chat-window.c: Send parent for transient call with contact-info and edit-contact. * src/gossip-contact-info-dialog.[ch]: Clean up in places. * ui/main.glade: * src/gossip-edit-contact-dialog.[ch]: Don't make this modal, and allow one per contact like the contact-info dialog. * src/gossip-vcard-dialog.[ch]: Try to fix #350936, still a problem though. 2006-08-18 Martyn Russell * ui/main.glade: Don't use images for the buttons in the edit contact dialog, it looks less weird. 2006-08-18 Martyn Russell * NEWS: * src/Makefile.am: * src/gossip-contact-list.c: Removed the rename contact code here. * ui/main.glade: * src/gossip-edit-contact-dialog.[ch]: Added to edit the contacts name and groups. This is not yet finished, it really needs to get the contact's name from their vcard with the "Retrieve" button. This should take no time to implement. * src/gossip-edit-groups-dialog.[ch]: Removed. 2006-08-16 Martyn Russell * src/gossip-chat-invite.[ch]: * src/gossip-chat-window.c: * src/gossip-contact-list.c: * src/gossip-group-chat.c: * src/gossip-spell-dialog.c: * ui/chat.glade: Show a dialog instead of using a menu to invite people to group chats, fixes bug #339650 (Paul van Tilburg). * src/gossip-vcard-dialog.c: Fix a race condition where clicking the Save button quickly more than once will crash the application. This is a temporary fix, we need to cancel the set_vcard() call. 2006-08-15 Martyn Russell * src/gossip-presence-chooser.c: (presence_chooser_clear_activate_cb): Don't use a parent for the clear status messages confirmation dialog, if you are on another desktop, the dialog is not shown. Fixes bug #351479 (Xavier Claessens). 2006-08-15 Martyn Russell * gossip.schemas.in: * libgossip/gossip-conf-gnome.c: * src/gossip-app.c: * src/gossip-preferences.h: * src/gossip-ui-utils.[ch]: Don't quit when clicking the 'x' on the roster window, fixes bug #351407 (Xavier Claessens). 2006-08-14 Martyn Russell * src/gossip-theme-manager.c: (theme_manager_apply_theme_simple): Updated to use the selected colour for the /me actions and darkgrey for events/time, etc. 2006-08-13 Richard Hult * src/gossip-contact-list.c: (gossip_contact_list_init), (contact_list_find_contact_foreach): Mark everything for translation and set the translation domain. 2006-08-11 Martyn Russell * src/gossip-app.c: * src/gossip-contact-list.[ch]: * ui/main.glade: Make the context menu for the contact list available in the main menu, fixes #121001 (Mark Finlay). 2006-08-08 Martyn Russell * src/gossip-contact-list.c: Remove all the GtkItemFactory code which is now pretty obsolete and replace it with the new GtkUIManager and GtkAction code. Fixes #349345 (Wouter Bolsterlee) and #347055 (Aredridel). 2006-08-08 Richard Hult * src/gossip-notify.c (notify_contact_online): Make the avatars a bit smaller. (notify_new_message): Change here as well. 2006-08-08 Martyn Russell * src/gossip-notify.c: Show avatars in notifications, fixes #350416 (krischan). 2006-08-08 Martyn Russell * src/gossip-app.c: (app_setup): Call gtk_widget_show() on "Hide Contact List" widget if we have a tray. 2006-08-06 Richard Hult * src/gossip-app.c (app_finalize): Work around bug #349872. 2006-08-03 Martyn Russell * Release 0.14. 2006-08-03 Richard Hult * src/gossip-chat-view.c (chat_view_event_cb): Fix the beam cursor. * configure.ac: Lower the galago dep to 0.5.0. 2006-08-03 Richard Hult * src/gossip-dbus.c: (gossip_dbus_finalize_for_session), (nm_proxy_notify_cb), (dbus_nm_init), (gossip_dbus_nm_get_state): Fix bug #349329, crash on exit with D-Bus. 2006-08-03 Richard Hult * src/gossip-dbus.c: (gossip_dbus_finalize_for_session), (dbus_freedesktop_init): * src/gossip-galago.c: * src/gossip-main.c: (main): * src/gossip-notify.c: (gossip_notify_init), (gossip_notify_finalize): Fix bug #349649, handle missing D-Bus. 2006-08-03 Richard Hult * configure.ac: Patch from Paul van Tilburg to use the right name for D-Bus, and fix the galago check. 2006-08-03 Martyn Russell * src/gossip-subscription-dialog.c: (subscription_dialog_request_cb): Don't show subscribe request dialog for contacts already on your roster, just silently subscribe them, fixes #349530 (Johan Dahlin). 2006-08-03 Martyn Russell * libgossip/gossip-utils.c: (regex_init): Make regex used to highlight URIs case insensitive, fixes #349810 (patch by Wouter Bolsterlee). 2006-08-03 Richard Hult * protocols/jabber/Makefile.am: * protocols/jabber/gossip-sha.c: Fix for PPC and don't expose the sha functions. Thanks to Paul van Tilburg for helping spot this one. 2006-08-01 Richard Hult * gossip.schemas.in: * libgossip/gossip-conf-cocoa.c: (gossip_conf_init): * src/gossip-chat-view.c: (chat_view_theme_changed_cb), (gossip_chat_view_set_is_group_chat): * src/gossip-preferences.c: (preferences_setup_widgets), (gossip_preferences_show): * src/gossip-preferences.h: * src/gossip-theme-manager.c: (gossip_theme_manager_init), (theme_manager_finalize), (theme_manager_notify_name_cb), (theme_manager_notify_room_cb): Handle the new pref for chat room theme. - Also make the list of languages insensitive when the feature is disabled. * ui/main.glade: Add (at least as a try) a checkbox to decide if the theme should apply for chat rooms as well. Also move the "enable spell checking" checkbox above the list of language since it's the more logical order (and change the capitalization to sentence style as the HIG says). 2006-08-01 Richard Hult * ui/main.glade: Remove the question icon from the Forget button, it makes the row look odd since it's heigher than the rest, and the question icon doesn't really mean forget. 2006-07-31 Martyn Russell * Release 0.13. 2006-07-31 Martyn Russell * src/gossip-chat-view.[ch]: * src/gossip-group-chat.c: * src/gossip-theme-manager.[ch]: Don't apply the chat theme to group chats, only to private chats. 2006-07-29 Martyn Russell * src/gossip-spell-dialog.c: Accept the suggested spelling replacement with double click or by pressing enter from using the "row-activated" signal, fixed #347929 (Johan Dalin). * src/gossip-spell.c: Added some debugging. * gossip.schemas.in: * src/gossip-preferences.[ch]: * ui/main.glade: Added an option to turn off spell checking directly instead of having to uncheck all languages (which didn't work anyway). 2006-07-29 Martyn Russell * src/gossip-group-chat.c: * src/gossip-private-chat.c: Disable the input textview when we are disconnected in group chat for the right account, don't wait until we are disconnected from ALL accounts before doing it. Fixes #346944 (Keywan Najafi Tonekaboni). 2006-07-29 Martyn Russell * src/gossip-app.c: * src/gossip-status-presets.[ch]: * src/gossip-status-presets.dtd: Save the last status and use it when we connect again, fixes #137800 (seeder@pf.pl, Jaime Frutos Morales). * gossip.schemas.in: * libgossip/gossip-utils.[ch]: Removed old status preset code that hasn't been used in a while because we use an XML file. * libgossip/gossip-account-manager.c: * libgossip/gossip-account.[ch]: * libgossip/gossip-chatroom-manager.c: * libgossip/gossip-contact.c: * protocols/jabber/gossip-jabber-ft-utils.c: * protocols/jabber/gossip-jabber-ft.c: * protocols/jabber/gossip-jabber-services.c: * protocols/jabber/gossip-jabber-vcard.c: * src/gossip-log-window.c: * src/gossip-presence-chooser.c: Use gossip-debug instead of DEBUG_MSG, now Peekaboo is all that doesn't use the new debugging. 2006-07-29 Martyn Russell * src/gossip-app.c (gossip_app_set_presence): Fixed bug with NULL status being used causing a crash. 2006-07-28 Richard Hult * libgossip/gossip-utils.c: (gossip_xml_validate): Escape to make libxml love me again. 2006-07-27 Richard Hult * configure.ac: * peekaboo/src/Makefile.am: * peekaboo/src/peekaboo-applet.c: Remove checks for older panel, we need 2.10 or newer anyway. * src/gossip-notebook.c: (button_release_cb): Return TRUE if we handle the event, fixes bug #341243. 2006-07-27 Richard Hult * src/gossip-add-contact-window.c: * src/gossip-ft-window.c: * src/gossip-new-account-window.c: * src/gossip-status-presets-dialog.c: * src/gossip-transport-accounts-window.c: * src/gossip-transport-add-window.c: * src/gossip-tray.c: Fix build. 2006-07-26 Richard Hult * libgossip/gossip-session.c: (session_get_accounts_foreach_cb), (gossip_session_get_accounts), (session_count_accounts_foreach_cb), (gossip_session_count_accounts), (gossip_session_add_account), (gossip_session_remove_account), (session_find_account_foreach_cb), (gossip_session_find_account), (session_find_account_for_own_contact_foreach_cb), (gossip_session_find_account_for_own_contact), (session_connect_match_foreach_cb), (session_connect_foreach_cb), (gossip_session_connect), (gossip_session_disconnect), (gossip_session_send_message): * protocols/jabber/gossip-jabber.c: (jabber_send_message): Clean up; use typedefs instead of struct foo everywhere. - Also add function to find the account for the "own contact", and use this to send messages from, fixes bug #347383. 2006-07-26 Richard Hult * Touch a lot of files: get the data paths through an API instead of using defines setup in the makefiles. When saving XML files, don't put a DTD pointer in them pointing to a local absolute path (we are still validating when loading them). Don't create the directories we look for files in when loading, only when saving. * ui/pixmaps/Makefile.am: Install the logo. 2006-07-22 Richard Hult * configure.ac: Make backend check automatic and fix the output of the dbus check. 2006-07-22 Richard Hult * src/gossip-sound.c (gossip_sound_init): Init the sounds and pre-load the samples, fixes the sound playing that has been broken for a while, bug #347670. Patch by Sam Morris. * configure.ac: Add carbon and iokit frameworks. * src/gossip-app.c: (app_status_flash_start), (app_event_added_cb): Try bouncing when events are added instead of when flashing the tray. * src/gossip-idle.c: (gossip_idle_get_seconds): Implement for the mac backend so that I can go auto-away. 2006-07-21 Richard Hult * src/gossip-app.c: Make this work better without a tray. Move help showing code to the ui utils. Fixup ngettext usage and plug a few leaks. Use "request user attention" API in ui utils. * src/gossip-chat-window.c: (chat_window_new_message_cb): Request user attention. * src/gossip-ui-utils.c: (gossip_help_show), (gossip_have_tray), (gossip_request_user_attention): Move some stuff from app here. 2006-07-21 Richard Hult reviewed by: * src/gossip-app.c: (app_setup), (app_main_window_quit_confirm), (app_help_cb), (app_accels_load), (app_accels_save), (gossip_app_toggle_visibility), (app_tray_destroy_cb), (app_tray_create), (app_tray_update_tooltip), (app_status_flash_start), (app_presence_updated), (configure_event_timeout_cb), (app_tray_flash_timeout_func), (app_tray_flash_maybe_stop): * src/gossip-chat-window.c: (chat_window_new_message_cb): * src/gossip-ui-utils.c: (gossip_help_show), (gossip_have_tray), (gossip_request_user_attention): * src/gossip-ui-utils.h: 2006-07-21 Richard Hult * protocols/jabber/gossip-jabber.c: * protocols/jabber/gossip-sha.c: (gossip_sha_hash): * protocols/jabber/gossip-sha.h: Fix warnings and make distcheck. 2006-07-21 Richard Hult * src/Makefile.am: Don't try to generate the dbus bindings when we don't have dbus, and conditionally include eggtray. 2006-07-21 Richard Hult * libgossip/gossip-time.c: (gossip_time_get_current), (gossip_time_parse), (gossip_time_to_string_utc), (gossip_time_to_string_local): * protocols/jabber/gossip-jabber-utils.c: (gossip_jabber_get_message_timestamp): * src/gossip-chat-view.c: (chat_view_maybe_append_date_and_time): * src/gossip-log-window.c: (log_window_contacts_is_today_selected), * src/gossip-log.c: (log_get_timestamp_from_message), (log_get_timestamp_filename), (gossip_log_get_date_readable), (gossip_log_get_messages_for_contact), (gossip_log_get_messages_for_chatroom): Rework how we handle times, always keep them in UTC and only go to local time for display. Should fix bug #338463. 2006-07-21 Ric0hard Hult * src/gossip-cell-renderer-text.c: Fix bug I introduced the other day, that broke the contact list for group chats. Try to do a bit less work unless necessary. 2006-07-20 Richard Hult * src/gossip-main.c: * src/gossip-ui-utils.c: Move setting the window icon here. 2006-07-20 Richard Hult * protocols/jabber/Makefile.am: Remove unsed bits. * protocols/jabber/gossip-jabber-ft.c: Add backend ifdefs. * src/gossip-add-contact-window.c: Fix build. 2006-07-20 Richard Hult * src/gossip-avatar-image.c: Add backend ifdefs. 2006-07-20 Richard Hult * src/gossip-image-chooser.c: Add backend ifdefs. 2006-07-20 Richard Hult * src/gossip-ui-utils.c: Add gossip_link_button_new(). * src/gossip-subscription-dialog.c: * src/gossip-contact-info-dialog.c: Use it here. 2006-07-20 Richard Hult * src/gossip-main.c: Only use gnome program when available. * src/gossip-transport-add-window.c: * src/gossip-transport-accounts-window.c: * src/gossip-accounts-dialog.c: Remove unused includes. * src/gossip-new-account-window.c: Protect with HAVE_GNOME until we have GtkAssistant. Remove unused includes. 2006-07-20 Richard Hult * src/gossip-cell-renderer-text.c: Simplify a bit and try to get the cell always show two lines... probably won't help. 2006-07-20 Richard Hult * src/gossip-contact-groups.c: Remove unused includes. * src/gossip-throbber.c: Use G_DEFINE_TYPE, remove gnome includes. * src/gossip-geometry.c: Tweak the positioning so that it won't put windows outside the screen. 2006-07-20 Richard Hult * src/gossip-status-presets.c: Remove unused includes and clean up a bit. 2006-07-20 Richard Hult * src/gossip-vcard-dialog.c: Only use the thumbnail stuff with GNOME (should probably remove it completely...). Remove unused includes. * src/gossip-about-dialog.c: Make the authors etc info static. * configure.ac: Fix the gnome backend checks. * src/Makefile.am: Use backend flags. * src/gossip-main.c: Work a bit better without dbus. 2006-07-20 Richard Hult * libgossip/gossip-utils.[ch]: Remove sha. * libgossip/gossip-account-manager.c: * libgossip/gossip-chatroom-manager.c: Don't include gnome-vfs, it's not used here. 2006-07-20 Richard Hult * configure.ac: Remove gcrypt check and fix the xss check. 2006-07-20 Richard Hult * configure.ac: Make the lack of xss non-fatal. * protocols/jabber/Makefile.am: * protocols/jabber/gossip-jabber.c: (jabber_set_presence), (jabber_contact_is_avatar_latest): Use gossip_sha. * src/gossip-idle.c: Use HAVE_XSS. 2006-07-20 Richard Hult * src/gossip-theme-manager.c: (theme_manager_apply_theme_clean): Tweak the size of the lines for the header. * src/gossip-idle.c: Dummy implementation for xss-less systems. * src/gossip-sound.c: Protect with HAVE_GNOME for now. 2006-07-20 Richard Hult * src/gossip-log.c: Put escaping/unescaping in functions so that we can easily change the implementation (I doubt that they are needed actually). 2006-07-19 Richard Hult * src/gossip-ui-utils.c: Include the gnome includes when appropriate. * src/gossip-about-dialog.c (about_dialog_activate_link_cb): * src/gossip-chat-view.c (chat_view_url_event_cb) (chat_view_open_address_cb): Use gossip_url_show. * src/gossip-ui-utils.c (fixup_url, gossip_url_show): Move here from the various places it was used before and add cocoa impl. 2006-07-19 Richard Hult * src/gossip-chat-window.c (chat_window_configure_event_cb) (chat_window_save_geometry_timeout_cb): Use gtk_window_get_size/position, not the configure event values, since we need to take the window frame in consideration. Fixes saving chat window positions. 2006-07-19 Richard Hult * libgossip/gossip-conf-cocoa.c (gossip_conf_init): Setup defaults. * src/gossip-preferences.c: Fixup getting NULL strings. 2006-07-18 Richard Hult * configure.ac: Only require gconf when building with gnome. 2006-07-18 Richard Hult * libgossip/gossip-conf-gnome.c: Add string list... * libgossip/gossip-utils.c: ...and use it here. 2006-07-18 Richard Hult * configure.ac: Don't AC_SUBST the verison numbers, we're not using those outside configure. - Add a backend option. - Remove lib(e)xslt, since we're not using that for the logs anymore. - Remove gconf as dependency on the UI, it's pulled in by libgossip now. * libgossip/gossip-conf*.[ch]: * libgossip/Makefile.am: Add gossip-conf.h and gossip-conf-gnome.c. * src/gossip-app.c: * src/gossip-chat-view.c: * src/gossip-chat-window.c: * src/gossip-chat.c: * src/gossip-group-chat.c: * src/gossip-notify.c: * src/gossip-preferences.c: * src/gossip-private-chat.c: * src/gossip-sound.c: * src/gossip-spell.c: * src/gossip-theme-manager.c: * src/gossip-vcard-dialog.c: Move all the direct gconf use to gossip-conf. - Also remove the old unused accounts toolbar code. * src/gossip-log.c: Remove the old unused log transformation code. * protocols/jabber/gossip-jabber.c (jabber_set_proxy): Use gossip_conf to get the proxy settings. 2006-07-18 Francisco Javier F. Serrador * src/gossip-about-dialog.c: Updated FSF snail mail address on license [] 2006-07-17 Richard Hult * ui/chat.glade: * ui/group-chat.glade: * ui/main.glade: Don't use gnome stock items for the menus, since we get mnemonic conflicts and to start (slowly) getting rid of the libgnome* dependency. 2006-07-09 Richard Hult * src/gossip-log.c: (log_get_account_id_from_filename), (log_get_all_log_files), (gossip_log_get_chatrooms), (gossip_log_get_dates_for_contact), (gossip_log_get_dates_for_chatroom), (gossip_log_search_new): Fix some leaks and mmap the logs files when searching. 2006-07-09 Richard Hult * src/gossip-chat-view.c (gossip_chat_view_find): Put the mark/wrapped variables in the priv struct instead of in a static variable so this works properly. Also reset the highlighting when we search for an empty string. 2006-07-09 Richard Hult * src/gossip-new-chatroom-dialog.c (new_chatroom_dialog_response_cb): Cancel any ongoing join attempts when the dialog is dismissed, fixes a crash when the join timeout is triggered. 2006-07-09 Richard Hult * src/gossip-new-message-dialog.c (new_message_dialog_setup_view): Unref the tree model and filter model here... (new_message_dialog_destroy): not here. (new_message_dialog_response): Always unref the contact here, the chat window/manager etc will keep their own refs. (new_message_dialog_name_entry_changed): Select the first one even if there are more than one match, fixes bug #346931. * src/gossip-group-chat.c (group_chat_send): Don't send empty messages, bug #346929. 2006-07-09 Richard Hult * src/gossip-dbus.c: (nm_proxy_restart_timeout_cb), (nm_proxy_notify_cb), (dbus_nm_init), (gossip_dbus_nm_get_state): Add the usual workaround to survive a restart system bus to cope with braindead distro behavior of restarting the system bus when installing packages that provide services. Fixes bug #347006. 2006-07-09 Richard Hult * src/gossip-chat-manager.[ch]: Remove unused, unimplemented function. 2006-07-07 Martyn Russell * configure.ac: Bumped version to 0.13. 2006-07-07 Richard Hult * src/gossip-spell.c: (spell_setup_languages), (gossip_spell_check): Patch from Tommi Komulainen to fix bug #346763, crash when no dictionaries are installed. 2006-07-07 Richard Hult * src/gossip-dbus.c (gossip_dbus_init_for_session): Complete the startup notification, fixes bug #346770. 2006-07-06 Richard Hult * src/gossip-chat-view.c: (chat_view_insert_text_with_emoticons): Fix a bug I introduced yesterday where whitespace was eaten. Also fix the longstanding bug where the smiley detection was a bit too eager, for example converting "do:" into a smiley. 2006-07-05 Martyn Russell * src/gossip-account-button.c: * src/gossip-chat-window.c: * src/gossip-chat.c: * src/gossip-contact-groups.c: * src/gossip-ft-window.c: * src/gossip-geometry.c: * src/gossip-image-chooser.c: * src/gossip-notify.c: * src/gossip-sound.c: * src/gossip-spell.c: * src/gossip-subscription-dialog.c: * src/gossip-vcard-dialog.c: Updated to use new libgossip/gossip-debug.c API. 2006-07-05 Richard Hult * src/gossip-contact-list.c (contact_list_sort_func): Use g_utf8_collate, the names are not ascii. (gossip_contact_list_get_selected_group): Free name. (contact_list_finalize): Free stuff. (contact_list_contact_presence_updated_cb): Only unref if there was an account. 2006-07-05 Richard Hult * libgossip/gossip-account-manager.c: (gossip_account_manager_get_default): Fix bug where we sometimes returned an increased refcount account, sometimes not. Now we never do. * libgossip/gossip-chatroom-manager.c: (chatroom_manager_file_save): Don't unref since gossip_chatroom_get_account doesn't increase the refcount now. * libgossip/gossip-chatroom.c: (gossip_chatroom_get_account): Don't increase the refcount. * libgossip/gossip-contact.c: (contact_finalize): Tweak style. * libgossip/gossip-session.c: (session_finalize): No need to check for NULL when dealing with lists since NULL is a valid list. Also don't check for things that we know are there (since they are created in init). Makes the code a bit less verbose. (session_protocol_logged_in): Don't call g_timer_start since creating the timer does just that. * src/gossip-accounts-dialog.c: (accounts_dialog_setup): Revert earlier change, now don't unref the default account. * src/gossip-app.c: Some style tweaks. * src/gossip-main.c: Don't use the default account if there isn't one. 2006-07-05 Richard Hult * src/gossip-main.c (main): Put the options inside main. * src/gossip-accounts-dialog.c (accounts_dialog_setup): Unref the accounts. 2006-07-05 Richard Hult * src/gossip-group-chat.c: Make drop_types const. * src/gossip-chat-window.c (gossip_chat_window_init): Unref the accel_group. - Make accel keys and drop type const. * src/gossip-chat-view.c: Make the smiley data const, stop searching when a matching smiley has been found. Delete the marks we create in the text view. Unref the last_contact on finalize. 2006-07-05 Richard Hult * src/gossip-contact-list.c (contact_list_contact_presence_updated_cb): Unref account. (contact_list_create_model): Unref tree model. - Make drag_types source and dest and item factory data const. * src/gossip-ui-utils.c (get_glade_file): Remove the unsed "boldify" stuff and some unused defines and includes. * src/gossip-image-chooser.c: Make data const. 2006-07-05 Richard Hult * src/gossip-theme-manager.c (theme_manager_add_tag): Unref the tag after adding it to the tag table. * src/gossip-contact-info-dialog.c (gossip_contact_info_dialog_show) (contact_info_dialog_subscribe_clicked_cb): Unref the account here. 2006-07-05 Richard Hult * src/gossip-dbus.c: Refactor a bit so that we can free all the proxies when quitting. 2006-07-05 Richard Hult * src/gossip-main.c (main): Free stuff when exiting, the session and account manager, stock items, the app, our dbus stuff. This makes it easier to spot real leaks. 2006-07-05 Richard Hult * ui/main.glade: Hide the accounts toolbar by default (since it's unused now), and also the accounts dialog and the log window (we show them with code). * src/gossip-app.c (app_finalize): Destroy the popup menu and the tray icon. Unref the gconf client, finalize the notify and sound code, unref the presence and away presence, unref the chatroom manager and session. (app_setup): Put some more code inside USE_ORIGINAL_TOOLBAR_CODE ifdefs. (app_show_offline_cb): Adapt to change in the gossip_sound_* API. * src/gossip-notify.c (gossip_notify_finalize) (notify_disconnected_message_foreach) (notify_disconnected_contact_foreach) (notify_protocol_disconnected_cb): Free data on disconnect. - Also make it possible to free everything before we exit. * src/gossip-sound.[ch] (sound_protocol_disconnected_cb) (sound_disconnected_contact_foreach, gossip_sound_finalize): Remove accounts/presence/etc when we get disconnected. Make it possible to free everything when we exit. (gossip_sound_set_enabled): Change name from _toggle(). * src/gossip-preferences.c (preferences_themes_setup): Reindent. * protocols/jabber/gossip-jabber.c (jabber_finalize): Free the presence. 2006-07-05 Richard Hult * src/gossip-stock.[ch] (gossip_stock_init, gossip_stock_finalize): Unref the factory and icon set, make it possible to remove the icons at exit time to make it easier to find leaks. 2006-07-05 Richard Hult * src/gossip-ft-window.c (gossip_ft_window_init) (gossip_ft_window_finalize): Keep a ref to the session while using it. * src/gossip-subscription-dialog.c (gossip_subscription_dialog_finalize) (gossip_subscription_dialog_init): Dito. 2006-07-05 Richard Hult * libgossip/gossip-session.c (session_finalize): Make consistent with the rest of the code. (gossip_session_new): Unref the accounts. * libgossip/gossip-chatroom-manager.c (chatroom_manager_finalize): Unref the session only after we are done using it. 2006-07-05 Martyn Russell * Release 0.12. 2006-07-04 Richard Hult * src/gossip-app.c: (gossip_app_connect): * src/gossip-dbus.c: (gossip_dbus_nm_get_state): Tweak the logic so autoconnect still works without network manager. 2006-07-04 Richard Hult * src/gossip-notify.c (notify_event_remove_foreach) (notify_message_remove_foreach): Split up in two and close the notification bubble when removing events, fixes a bug introduced yesterday. 2006-07-04 Richard Hult * src/gossip-log.c (gossip_log_message_for_contact): Don't "urlify", just escape and do it as late as possible to avoid a leak on failure. Also fixes bug #346496. (gossip_log_message_for_chatroom): Don't log empty messages. - Also some small cleanups. 2006-07-04 Martyn Russell * src/gossip-main.c: (main): Fix a small error when compiling with Galago support. 2006-07-04 Richard Hult * src/gossip-notify.c: (notify_closed_cb), (notify_contact_online), (notify_new_message), (notify_event_added_cb), (gossip_notify_init): Don't leak all notify objects. 2006-07-03 Richard Hult * src/gossip-contact-list.c: Remove debug output, break some long lines, don't create and free the temporary structs for finding groups/contacts, use the stack instead. * src/gossip-main.c: (main): Unref the session when quitting. * src/gossip-notify.c: Coding style. 2006-07-03 Richard Hult * src/gossip-chat-window.c (gossip_chat_window_finalize) (gossip_chat_window_init): Plug leak of tooltips object. * src/gossip-app.c (gossip_app_init): Don't use g_object_ref_sink since it's only in glib 2.10. * src/gossip-chat-view.c (chat_view_event_cb): Only create the mouse cursor if needed. * src/gossip-log.c (gossip_log_get_messages_for_contact): Plug another per-message leak. 2006-07-02 Richard Hult * src/gossip-dbus.[ch]: (gossip_dbus_init_for_session): Don't queue up the name. * src/gossip-app.[ch]: Move dbus stuff from here... * src/gossip-main.c: (main): To here to make the single instance code not have to setup the whole app just to quit. * src/gossip-chat-view.c: (gossip_chat_view_append_event): Remove duplicate spacing that happens in some cases when adding timestamps. 2006-07-02 Richard Hult * src/gossip-theme-manager.c: Add new theme and change the name of the old clear to simple, use clear for the new one. * src/gossip-chat-view.c (chat_view_event_cb): Be more defensive to try and fix a crash when switching avatars on and off. 2006-07-02 Martyn Russell * src/gossip-log.c: Use gossip_debug() and DON'T log messages from temporary contacts, since I was getting a lot of ICQ weirdos send me messages and my log window shows all their crap IDs at the top because they are numbers :( 2006-07-02 Martyn Russell * src/gossip-main.c: * src/gossip-app.[ch]: Check if Gossip already running over dbus before starting another instance. This can be by-passed with the "-m" command line flag. If a previous instance already exists, the other one is shown (this ONLY works with DBUS support). This fixes #158440 (Keywan Najafi Tonekaboni). * src/gossip-dbus.[ch]: Reworked the code so that the bus proxy is returned by dbus_nm_init() and dbus_freedesktop_init() so we make sure there is only one instance of each DBusGProxy*. * src/gossip-dbus.xml: Added "SetRosterVisible" method. 2006-07-02 Richard Hult * src/gossip-theme-manager.c (theme_manager_apply_theme): Tweak the side margins for the themes. * protocols/jabber/gossip-jabber-chatrooms.c (jabber_chatrooms_presence_handler): Plug leak (presence object). 2006-07-02 Richard Hult * src/gossip-notify.c (notify_new_message): Change the respond button to say show. * src/gossip-theme-manager.c (theme_manager_init_tag_by_name): Clear the old values when changing themes. * src/gossip-chat-view.c (chat_view_theme_changed_cb): Update the avatar tags as a workaround for now, needs to be done a bit nicer later on. Makes the "rise" property of the name tag to be set properly when changing themes. 2006-07-02 Richard Hult * src/gossip-chat-window.c (URGENCY_TIMEOUT): Raise to a minute. * src/gossip-preferences.c (preferences_themes_setup): Translate the theme names. 2006-07-01 Richard Hult * libgossip/gossip-message.c (gossip_message_set_sender) (gossip_message_set_subject, gossip_message_set_body) (gossip_message_set_thread, gossip_message_set_timestamp) (gossip_message_set_invite, gossip_message_request_composing, gossip_message_set_recipient): Notify when setting properties. * libgossip/gossip-presence.c (gossip_presence_set_priority) (gossip_presence_set_status, gossip_presence_set_state) (gossip_presence_set_resource): Notify. 2006-06-30 Richard Hult * src/gossipb-notify.c (notify_new_message): Only show "get contact info" button if the contact is not in the contact list. 2006-06-30 Richard Hult * libgossip/gossip-contact.c: (gossip_contact_set_id), (gossip_contact_set_name), (gossip_contact_set_avatar), (gossip_contact_set_account), (gossip_contact_set_subscription): Notify when changing properties through setters. * src/gossip-theme-manager.c: (theme_manager_fixup_tag_table), (theme_manager_apply_theme_clear), (theme_manager_apply_theme_blue), (theme_manager_apply_theme): * src/gossip-chat-view.[ch]: (chat_view_maybe_append_fancy_header), (gossip_chat_view_set_irc_style), (gossip_chat_view_set_margin): Refactor a bit and make it possible for themes to set the margins and split the header lines into two, one for the top and one for the bottom. * src/gossip-dbus.c: (gossip_dbus_init_for_session): Use the generated API instead of the raw proxy API. 2006-06-30 Martyn Russell * src/gossip-status-presets.c: Use gossip_debug(). * src/gossip-presence-chooser.[ch]: * ui/main.glade: Use a combo box entry and remember all the presence status' for the current session. 2006-06-30 Mikael Hallendal * src/gossip-accounts-dialog.c: (accounts_dialog_treeview_row_activated_cb), (gossip_accounts_dialog_show): - Connect/Disconnect when double clicking on an account in the accounts list. - Fixes #346294. 2006-06-30 Mikael Hallendal * src/gossip-log.c: (gossip_log_message_for_contact): - Don't log empty messages. - Fixes #346298. 2006-06-29 Martyn Russell * src/gossip-preferences.c: * src/gossip-theme-manager.[ch]: Added a clear theme which uses the same foreground and background colours and the avatars in chats. Also added the ability to request a list of themes from the theme manager for the preferences combo box. 2006-06-29 Richard Hult * src/gossip-accounts-dialog.c (accounts_dialog_protocol_connected_cb) (accounts_dialog_protocol_disconnected_cb): Check the id before removing the source. * src/gossip-app.c (app_setup): Remove trailing period from tooltip. 2006-06-29 Martyn Russell * libgossip/gossip-protocol.[ch]: * libgossip/gossip-session.[ch]: * protocols/jabber/gossip-jabber.c: Added _is_connecting() function. * src/gossip-accounts-dialog.c: Actually provide feedback when connecting by flashing the account image. * src/gossip-app.c: Fixed a bug where you couldn't connect to localhost if network manager said your network was disconnected. * ui/main.glade: Added shortcut for accounts (F4). 2006-06-28 Martyn Russell * src/gossip-theme-manager.c: (theme_manager_apply_theme): Make sure we check name before comparing it to known themes. 2006-06-22 Richard Hult * src/gossip-app.c: (gossip_app_toggle_visibility), (configure_event_timeout_cb), (app_window_configure_event_cb): Half the time of the timeout used when saving the contact list geometry and also save right before hiding. Fixes bug #345636. 2006-06-22 Richard Hult * src/gossip-private-chat.c: (gossip_private_chat_init), (private_chat_protocol_connected_cb), (private_chat_protocol_disconnected_cb): Use the per protocol connected/disconnected signals and make sure it's the right one before acting, and update the status when we get disconnected. 2006-06-22 Martyn Russell * src/gossip-app.c: (gossip_app_init), (app_finalize), (app_accounts_error_display): Make sure we initialise the errors hash table in gossip_app_init() so we don't crash, fixes 345657 (Wouter Bolsterlee). 2006-06-22 Martyn Russell * src/gossip-app.c: (gossip_app_net_up): If there are no accounts from the network being down the last time, just connect as if we are starting Gossip for the first time, i.e. autoconnect accounts get connected. This means Gossip should connect when starting the computer once the network is available. 2006-06-22 Martyn Russell * libgossip/gossip-session.c: Cleverly connect accounts based on auto-connect setting and if ALL accounts have the same value. This way we don't need an "Enable" option per account and it works quite nicely with the Chat->Connect and Chat->Disconnect actions. Also updated this module to use gossip_debug. * protocols/jabber/gossip-jabber.c: Don't require the connection to be open to call lm_connection_close(). Also, fixed a bug in Loudmouth related to this where lm_connection_close() doesn't clean up the connection properly if you are pending. * src/gossip-account-button.c: Updated the ::protocol-connecting and :: protocol-disconnecting signals to include the protocol object. * src/gossip-accounts-dialog.c: Updated to actually make it possible to stop connections pending and show a Stop button while they are. * src/gossip-app.c: - Updated the error messages we show when connections fail to use a smaller icon and the GTK_STOCK_DISCONNECT. - Change the "Clear" button to a small 'x' like we have for chat windows. - Added a tooltip for the throbber. - Make clicking on the throbber show the accounts window. 2006-06-22 Richard Hult * peekaboo/src/Makefile.am: * peekaboo/src/peekaboo-applet.c: Add warning flags and fix a couple of warnings. - Use size-allocate to get the right size, the one provided by the applet API doesn't seem to do the trick. * peekaboo/src/peekaboo-dbus.c: Fix a few warnings. * protocols/jabber/gossip-jabber-chatrooms.c (gossip_jabber_chatrooms_leave, gossip_jabber_chatrooms_cancel): Remove g_warning about unknown chatroom because it will happen if we reconnect and close an old window for example. - Remove unneccesary casts. 2006-06-22 Richard Hult * src/gossip-group-chat.c (group_chat_get_status_pixbuf): Handle the case when a chatroom can't be found. 2006-06-22 Martyn Russell * help/C/gossip.xml: * src/Makefile.am: Fixed make dist check errors. 2006-06-22 Martyn Russell * libgossip/gossip-session.[ch]: Added a "connecting" counter. * src/gossip-throbber.[ch]: Taken from Nautilus and cleaned up. * src/Makefile.am: * src/gossip-app.c: * ui/main.glade: Loads of stuff: - Added gossip_debug. - Added the gnome throbber for "connecting" states. - #ifdef'd the old account toolbar work out and replaced it with something much better. - TODO: make it possible to show accounts from throbber. - TODO: make it possible to stop connecting from accounts window. 2006-06-21 Martyn Russell * src/gossip-chatrooms-window.c: (chatrooms_window_row_activated_cb): - Fixed #343687, Don't allow joining group chats already open by double clicking on the chat room in the join window, fixes #343687 (Kristian Rietveld). 2006-06-21 Martyn Russell * protocols/jabber/gossip-jabber-chatrooms.c: * protocols/jabber/gossip-jabber.c: * src/gossip-group-chat.c: Move these files to gossip_debug. * protocols/jabber/gossip-jabber.c: Make sure we set our presence in chatrooms. 2006-06-21 Richard Hult * src/gossip-private-chat.c (private_chat_finalize): Free the name and resources. * protocols/jabber/gossip-jabber.c (jabber_message_handler): Get the name from the resource of the sender for group chat messages. This makes priv chats from group chats have the right sender name, fixes bug #319713. * src/gossip-contact-list.c: (contact_list_search_equal_func), (contact_list_setup_view): Setup a search function so that the typehead search actually does something. 2006-06-21 Martyn Russell * help/C/figures/gossip-available.png: * help/C/figures/gossip-away.png: * help/C/figures/gossip-busy.png: * help/C/figures/gossip-extended-away.png: * help/C/figures/gossip-group-message.png: * help/C/figures/gossip-message.png: * help/C/figures/gossip-offline.png: * help/C/figures/gossip-typing.png: * help/C/figures/gossip_new_chat_room.png: * help/C/figures/gossip_personal_details.png: * help/C/figures/gossip_roster.png: * help/C/figures/gossip_status_message.png: * help/C/gossip.xml: * help/Makefile.am: Update help documentation, fixes #345492 (patch by Brian Pepple, Keywan Najafi Tonekaboni). 2006-06-21 Martyn Russell * configure.ac: Make dbus support automatic by default instead of disabled. * peekaboo/src/peekaboo-applet.c: * peekaboo/src/peekaboo-dbus.[ch]: * src/gossip-dbus.c: * src/gossip-dbus.xml: Support "New Message" interface. 2006-06-20 Richard Hult * src/gossip-app.c (app_tray_update_tooltip): Just put the status string in the tooltip. * src/gossip-contact-list.c (contact_list_setup_view): Set the size of the pixuf renderer to 32x32 so we get the same height rows when showing avatars (only affects the size then). - Move this file to gossip_debug. 2006-06-20 Martyn Russell * src/gossip-app.c: (gossip_app_connect): Don't call dbus functions unless we have support for dbus, fixes #345465 (Baptiste Mille-Mathias). 2006-06-20 Martyn Russell * src/gossip-app.c: Add a tooltip for the notification area icon when there is no event waiting, fixes #345326 (Wouter Bolsterlee). 2006-06-20 Richard Hult * ui/main.glade: Fix my earlier breakage, show the presence info again. Thanks Martyn! 2006-06-20 Martyn Russell * configure.ac: Bumped version to 0.12. * src/gossip-app.c: If we have GNOME Network Manager support via dbus, only connect IF we have a connected interface. * src/gossip-dbus.[ch]: Support GNOME Network Manager. We now watch for state changes and disconnect/connect when the interface goes up and down accordingly, fixes #313177 (Diego González). 2006-06-20 Richard Hult * libgossip/gossip-chatroom-manager.c: (gossip_chatroom_manager_get_chatrooms): Small cleanup. (gossip_chatroom_manager_get_count, chatroom_manager_get_all, (chatroom_manager_file_parse): Remove "internal" g_return_if_fail calls. (chatroom_manager_file_save, chatroom_manager_protocol_connected_cb): Plug leaks. * libgossip/gossip-session.c: (session_finalize): Plug leak. (gossip_session_connect): Remove internal precondition. (gossip_session_get_version): Reindent. * libgossip/gossip-version-info.c: (version_info_set_property): * protocols/jabber/gossip-jabber-services.c: (gossip_jabber_services_get_version): Reindent. * protocols/jabber/gossip-jabber.c: (jabber_login): Plug leak. (jabber_message_handler): Don't ref the contact when removing it from the hash table, looks like a cut and paste error. (jabber_request_roster): Plug leak of group list. * src/gossip-account-button.c: (gossip_account_button_init), (account_button_finalize): Don't leak the tooltips. (account_button_update_tooltip): Don't create a tooltip each time we change it. * src/gossip-app.c: (app_tray_destroy_cb), (app_tray_create): Don't leak tooltips. * src/gossip-avatar-image.c: (gossip_avatar_image_init), (avatar_image_finalize): Don't leak tooltips. * src/gossip-chat-view.c: (chat_view_event_cb): Don't set a beam cursor for the text view, just unset the cursor to get the default. * src/gossip-chat-window.c: (chat_window_update_status): Plug leaked pixbuf ref. * src/gossip-contact-info-dialog.c: (contact_info_dialog_get_version_cb): Remove unused size group. * src/gossip-main.c: (main): Plug leak (and don't get the list of accounts when not needed). * src/gossip-presence-chooser.c: Plug leak of status strings when using the scrollwheel. 2006-06-20 Martyn Russell * peekaboo/data/GNOME_Peekaboo_Applet.server.in.in: * peekaboo/data/Makefile.am: Put Peekaboo in the "Internet" group for the applet selector and fix the path to the executable so it will actually load without running it separately on the command line. 2006-06-20 Martyn Russell * peekaboo/data/GNOME_Peekaboo_Applet.xml: Updated the toggle roster visibility label. * peekaboo/src/Makefile.am: * peekaboo/src/peekaboo-dbus.[ch]: * peekaboo/src/peekaboo-stock.[ch]: Put all dbus functions in their own source module. Added a stock icon module and a utils module too. * peekaboo/src/peekaboo-applet.c: Loads of cool stuff: - Hide the GTkEntry. - Make the background transparent. - Make the Gossip icon the size of the panel instead of GTK_ICON_SIZE_MENU. - Show a menu on left click with contacts (and their state) which we have open chat windows for. Clicking on them shows the chat window on your desktop whereever you are. * src/gossip-chat-manager.c: Sort the list of open chats we return alphabetically. * src/gossip-app.[ch]: * src/gossip-dbus.c: * src/gossip-dbus.xml: Added GetRosterVisible dbus interface. 2006-06-19 Richard Hult * src/gossip-presence-chooser.c: Add timeout before updating the presence when scrolling. 2006-06-19 Richard Hult * src/gossip-contact-info-dialog.c: * ui/main.glade: Tweak a bit, set the default width instead of a fixed width, make the window resizable, and hide all sections by default. Also delay showing the window for half a second, in many cases this will be enough to get the info and makes things jump around less. Also fixes problems with cut-off labels. * ui/main.glade: Remove padding from the log window, based on patch from Wouter Bolsterlee. 2006-06-19 Richard Hult * src/gossip-private-chat.c (private_chat_input_key_press_event_cb): Eat tabs to behave like the group chat, bug #337471. * ui/main.glade: Tweak string. * src/gossip-log-window.c (gossip_log_window_show): Remove close button from log window, obsoletes bug #344439. 2006-06-19 Richard Hult * src/gossip-chat.c (chat_text_populate_popup_cb): Fix crash on right-click in the entry. 2006-06-18 Richard Hult * src/gossip-chat-view.[ch]: Insert avatar images in the chat view, still needs some more work. - Move to gossip_debug. * src/gossip-group-chat.c: (group_chat_new_message_cb): * src/gossip-log-window.c: Adapt to changed chat view API. * src/gossip-contact-list.c: (contact_list_add_contact): Use pixel sizes instead of GtkIconSize for the avatar. * src/gossip-private-chat.c: Keep a scaled and padded version of the avatar for the own contac and the other contact. Update when it changes (doesn't work yet for the own contact). - Move to gossip_debug. - Fix leaked contact in the finalizer. * src/gossip-theme-manager.[ch]: Remove the half-cooked dark theme for now. - Add code to setup the avatar styles, and adapt to font changes etc. * src/gossip-ui-utils.c: (gossip_pixbuf_avatar_from_contact_scaled): Use pixels instead of GtkIconSize (the avatar is not an icon, it's just an arbitrary image). * src/gossip-avatar-image.c: (avatar_image_finalize): Use the parent class pointer defined by G_DEFINE_TYPE. 2006-06-18 Martyn Russell * peekaboo/data/GNOME_Peekaboo_Applet.xml: Added separator between applet functions and general panel functions. * src/gossip-dbus.c: * src/gossip-dbus.xml: * peekaboo/src/peekaboo-applet.c: Added dbus call to get a list of open chat windows. * peekaboo/src/peekaboo-galago.[ch]: Added functions to get the name and Gossip presence state from galago by contact id. So now we can get a list of open chat windows with the contact ids and their presence details. This will be used in a menu of some kind soon. * src/gossip-chat-manager.[ch]: Added a function to get a list of chat windows currently created. * src/gossip-galago.c: Reworked the code a little but and fixed the presence update function so we ONLY say we are online for accounts which are connected NOT all accounts. 2006-06-18 Richard Hult * src/gossip-chat-manager.c: Move to gossip_debug. * libgossip/gossip-debug.c (debug_init): Add space and comma as separators. * libgossip/gossip-chatroom-manager.c (gossip_chatroom_manager_find_extended): Skip the room if there is no account, fixes critical warnings. * libgossip/gossip-account.c (gossip_account_equal): No need to check if the priv data exists. 2006-06-17 Richard Hult * src/gossip-presence-chooser.c (gossip_presence_chooser_init) (presence_chooser_button_press_event_cb): Fix bug #344637, popup menu on mouse down. 2006-06-17 Richard Hult * src/gossip-contact-list.c (contact_list_drag_data_received): Plug leak. (contact_list_drag_motion): Keep the timeout id and remove the drag motion timeeout source only when necessary. (contact_list_drag_data_received): Don't insert a null group name in the groups list. Fixes bug #345000. * libgossip/gossip-contact.c (gossip_contact_set_groups): Make this work for set_groups (get_groups ()), and free old list. * protocols/jabber/gossip-jabber-ft.c (jabber_ft_handle_error): Check if there is a filetransfer before trying to do something else. Fixes crash when we get any error (unrelated to file tranfers). 2006-06-17 Richard Hult * protocols/jabber/gossip-jid.c (gossip_jid_new, gossip_jid_set_without_resource): Casefold the node part, to bring us a bit closer to the spec. Should also fix bug #306369. * protocols/jabber/gossip-jabber.c: (jabber_setup): Don't include the resource as part of the id, it's kept separetely. (gossip_jid_equals), (gossip_jid_equals_without_resource), (gossip_jid_equal), (gossip_jid_hash): Add comments about some problems. * src/gossip-chat.c: Remove obsolete defines. * src/gossip-group-chat.c: (group_chat_finalize), (group_chat_drag_data_received), (group_chat_scroll_down_idle_func), (jid_casefold_node), (gossip_group_chat_new): Remove debug output, make sure we remove the scroll idle on finalize and casefold the room jid when entering a room. Makes group chats work better with spec-following servers. * src/gossip-private-chat.c: (private_chat_finalize), (private_chat_create_ui), (private_chat_scroll_down_idle_func), (gossip_private_chat_new): Limit the backlog to the last 10 messages, and scroll to the bottom after inserting them. Remove the disabled avatar support. Also clean out some g_return_ in static functions. * ui/chat.glade: Remove the avatar-in-chat-window support in preparation for another variant. 2006-06-17 Martyn Russell * peekaboo/src/Makefile.am: * peekaboo/src/peekaboo-applet.c: * src/gossip-galago.c: Made a start on listing contacts in the applet using Galago. 2006-06-17 Martyn Russell * Makefile.am: * configure.ac: * peekaboo/Makefile.am: * peekaboo/data/GNOME_Peekaboo_Applet.server.in.in: * peekaboo/data/GNOME_Peekaboo_Applet.xml: * peekaboo/data/Makefile.am: * peekaboo/src/Makefile.am: * peekaboo/src/peekaboo-applet.[ch]: * protocols/jabber/gossip-jabber-ft.c: * protocols/jabber/gossip-jabber.[ch]: * src/Makefile.am: * src/gossip-app.[ch]: * src/gossip-dbus.[ch]: * src/gossip-dbus.xml: * src/gossip-group-chat.c: * src/gossip-private-chat.c: Merged changes in from PEEKABOO branch. 2006-06-17 Martyn Russell * configure.ac: * peekaboo/data/GNOME_Peekaboo_Applet.xml: * peekaboo/src/peekaboo-applet.c: * src/gossip-dbus.[ch]: * src/gossip-dbus.xml: Added toggle roster and send message functionality. * protocols/jabber/gossip-jabber-ft.c: * protocols/jabber/gossip-jabber.[ch]: Fixed the way we do the error quark here to make sure it is done properly. * src/gossip-app.[ch]: Make sure when we set the presence via dbus, the application changes too, don't just the Jabber message. Make some API public, like toggling visibility of the roster so it can be done via dbus. 2006-06-16 Martyn Russell * src/gossip-app.h: * src/gossip-dbus.c: * src/gossip-dbus.xml: Update the dbus interface to make sure the original stuff we supported still works. 2006-06-16 Martyn Russell * configure.ac: * src/Makefile.am: * src/gossip-app.c: (app_setup): * src/gossip-dbus.c: (gossip_dbus_init), (gossip_dbus_class_init), (gossip_dbus_set_presence), (gossip_dbus_init_for_session): * src/gossip-dbus.h: * src/gossip-dbus.xml: Updated the dbus stuff to use a gobject so we can have signalling with remote methods and the interface all done with an XML file. 2006-06-16 Martyn Russell * configure.ac: * peekaboo/Makefile.am: Minor build clean ups. Make sure we only build peekaboo when we have DBus, applet support, etc and don't make it compulsory. 2006-06-16 Martyn Russell * peekaboo/data/GNOME_Peekaboo_Applet.server.in.in: * peekaboo/data/GNOME_Peekaboo_Applet.xml: * peekaboo/src/Makefile.am: * peekaboo/src/peekaboo-applet.c: (applet_new), (peekaboo_applet_factory): Fix things up so the applet is now added properly without error and all the relevant files are found correctly. 2006-06-16 Richard Hult * libgossip/gossip-account-manager.c: (account_manager_file_parse), (account_manager_file_save): Fix style. * src/gossip-app.c: (app_chatroom_favourite_update): Plug leak. 2006-06-15 Martyn Russell * src/gossip-log.[ch]: * src/gossip-private-chat.c: Show the chat history in new chat windows to show the previous conversations. 2006-06-15 Richard Hult * src/gossip-chat-view.[ch]: * src/gossip-chat-window.c: * src/gossip-chat.c: * src/gossip-preferences.c: * src/gossip-spell-dialog.[ch]: * src/gossip-spell.[ch]: A bit too much for a detailed log. Reworked the spell shecking code so that we only create one aspell checker per language instead of one per language and chat view. Also update the used languages when the preference changed. - Don't create one tooltips object per smiley * 2, just one per chat window. - Other small changes and cleanups. 2006-06-14 Richard Hult * src/gossip-chat-window.c (chat_window_insert_smiley_activate_cb) (chat_window_set_urgency_hint): Fix bug in the urgency timeout logic that kept the urgency hint from being set more than once per window. * src/gossip-add-contact-window.c (add_contact_window_vcard_handler): * src/gossip-chat.c (gossip_chat_correct_word): Get the number of bytes, not chars. * src/gossip-chat-window.c (chat_window_update_title): Plug leak of a pixbuf. 2006-06-14 Martyn Russell * configure.ac: Bumped version to 0.11.3. * src/gossip-galago.c: Updated to work with the libgalago 0.5.x API, fixes #339333, patch by Brian Pepple. 2006-06-14 Richard Hult * protocols/jabber/gossip-jabber.c (jabber_logout_contact_foreach): Copy the presence list since it's modified during traversal. * src/gossip-contact-groups.c: (contact_groups_file_save): Free dtd filename. * src/gossip-chatrooms-window.c: (gossip_chatrooms_window_show): * src/gossip-log-window.c: (gossip_log_window_show): * src/gossip-new-chatroom-dialog.c: (gossip_new_chatroom_dialog_show): * src/gossip-preferences.c: (gossip_preferences_show): * src/gossip-presence-chooser.c: (presence_chooser_show_dialog): * src/gossip-status-presets-dialog.c: (gossip_status_presets_dialog_show): Unref glade objects. * src/gossip-app.c (app_chatroom_favourite_update): Free the accounts list. * src/gossip-log.c (gossip_log_message_for_contact): Unref own_contact_saved, and free the filename. * src/gossip-contact-info-dialog.c (gossip_contact_info_dialog_show): Remove unused string (plugs leak). 2006-06-14 Richard Hult * configure.ac: Clean up a bit, remove obsolete stuff. 2006-06-11 Martyn Russell * Release 0.11.2. 2006-06-11 Richard Hult * src/gossip-avatar-image.c (avatar_image_button_release_event_cb) (avatar_image_button_press_event_cb): Return TRUE if we handle the event, so that dragging the image doesn't initiate notebook dnd. 2006-06-11 Martyn Russell * protocols/jabber/gossip-jabber-ft.c (jabber_ft_handle_error): Where we get "Could not find GossipFT* from id:'msg_11'", make this a debug warning instead of a g_warning. This occurs for any IQ error so it isn't really a warning. 2006-06-11 Martyn Russell * src/gossip-app.c: * ui/main.glade: Added a "Join New..." option to the group chat submenu in the main window. 2006-06-11 Martyn Russell * libgossip/gossip-protocol.h: * src/gossip-log.c: (gossip_log_message_for_chatroom): * src/gossip-new-chatroom-dialog.c: (new_chatroom_dialog_set_defaults): Fixed 2 memory leaks after putting gossip through valgrind. The filename to use when logging EVERY group chat message was leaking and so was the _get_default_server() pointer when setting up new chat rooms. 2006-06-11 Richard Hult * src/gossip-chat-view.c (chat_view_open_address): Make scheme-less links work again. 2006-06-10 Richard Hult * libgossip/gossip-event-manager.c (gossip_event_manager_activate) (gossip_event_manager_activate_by_id): Ref the event and issuer around the callback into "user" code, so that the data doesn't go away from under us. Fixes a crash when clicking a blinking contact in the contact list. * libgossip/gossip-chatroom-manager.c: (gossip_chatroom_manager_join_favourites), (chatroom_manager_file_save): * libgossip/gossip-chatroom.c: (gossip_chatroom_get_is_favourite): * libgossip/gossip-chatroom.h: * src/gossip-app.c: (app_chatroom_favourite_update): * src/gossip-chatrooms-window.c: (chatrooms_window_model_add), (chatrooms_window_chatroom_changed_foreach): * src/gossip-edit-chatroom-dialog.c: (gossip_edit_chatroom_dialog_show): (gossip_chatroom_get_is_favourite): - Rename from _get_favourite to follow g* style and make it more clear (probably needs doing for some other functions as well). - Only join favorites, not all chatrooms. 2006-06-10 Richard Hult * src/*.c: * protocols/jabber/*.c: * libgossip/*.c: (*_class_init, *_finalize): Make sure we chain up, and use the class pointer supplied by G_DEFINE_TYPE instead of defining our own. 2006-06-10 Richard Hult * src/gossip-contact-list.c (contact_list_setup_view): Set the ypad to 0, makes it somewhat less likely that the row height will be different when there is an avatar. * src/gossip-chat.c: (chat_finalize): * src/gossip-private-chat.c: (private_chat_finalize): Don't free private data added with g_type_class_add_private(). 2006-06-10 Martyn Russell * src/gossip-chat-window.c: Use the gconf path definition in the preferences header instead of a static string for the separate new window lookup. * src/gossip-presence-chooser.c: Change the left and right padding to 2 instead of 4, it looks better against the accounts toolbar now. * src/gossip-private-chat.[ch]: * ui/chat.glade: Added support for showing avatars in the chat window. I am not sure this is the best way yet, but it is a start and it can be turned off in the preferences. Also make sure we use g_type_class_add_private() instead of creating our own private memory, etc. 2006-06-10 Richard Hult * src/gossip-chat-view.c: (chat_view_finalize): Remove unused use_system_fonts stuff. * src/gossip-preferences.c: (preferences_themes_setup): Add commented out test theme. * src/gossip-theme-manager.c: (gossip_theme_manager_init), (theme_manager_finalize), (theme_manager_notify_func), (theme_manager_fixup_tag_table), (theme_manager_apply_theme_classic), (theme_manager_apply_theme_blue), (theme_manager_apply_theme), (gossip_theme_manager_apply): Refactor a bit in preparation for dynamic themes instead of just hard-coded ones. 2006-06-10 Richard Hult * ui/main.glade: Set mnemonic target for the theme combo, bug #344438. 2006-06-10 Richard Hult * src/gossip-chat-window.c: (gossip_chat_window_finalize), (chat_window_update_title), (chat_window_new_message_cb), (chat_window_urgency_timeout_func), (chat_window_set_urgency_hint): Remove the urgency hint after a timeout, to stop driving me crazy. Also try removing the "*" before the window title, since we have the icon and urgency hint now. 2006-06-10 Richard Hult * ui/file-transfer.glade: * ui/group-chat.glade: * ui/main.glade: Remove more periods from tooltip strings, tweak some strings. 2006-06-10 Richard Hult * ui/main.glade: Remove periods in tooltip strings, tweak some strings. 2006-06-09 Martyn Russell * gossip.schemas.in: * src/gossip-app.c: * src/gossip-contact-list.[ch]: * src/gossip-preferences.[ch]: * ui/main.glade: Make avatars a preference. 2006-06-09 Martyn Russell * Makefile.am: * configure.ac: * peekaboo/Makefile.am: * peekaboo/data/GNOME_Peekaboo_Applet.server.in.in: * peekaboo/data/GNOME_Peekaboo_Applet.xml: * peekaboo/data/Makefile.am: * peekaboo/src/Makefile.am: * peekaboo/src/peekaboo-applet.[ch]: Added the initial files for an applet. 2006-06-09 Martyn Russell * Branch PEEKABOO created for Gossip applet work. 2006-06-09 Richard Hult * src/gossip-notify.c (notify_new_message): Strip leading/trailing whitespace from message before cutting of at the max len, and don't cut in the middle of multibyte characters. 2006-06-08 Martyn Russell * src/gossip-presence-chooser.c: (presence_chooser_clear_activate_cb): Use the stock GTK_STOCK_CANCEL instead of _("Cancel"). Naughty Richard! :) 2006-06-06 Mikael Hallendal * src/gossip-account-button.c: (account_button_update_tooltip): - Use the name of the account instead of the ID in the accounts toolbar tooltip. 2006-06-05 Martyn Russell * ui/main.glade: Updated some of the terminology used in the labels and rearranged the options a bit. 2006-06-04 Martyn Russell * gossip.schemas.in: Updated some of the gconf key locations, now sounds are not in a "sounds" parent of their own, they are in a "notifications" parent since we now have popup preferences too. * ui/main.glade: * src/gossip-notify.c: * src/gossip-preferences.[ch]: Reworked the preferences a bit so we have the gconf keys defined in ONE place instead of everywhere and added a preference to be able to disable the "Joe Bloggs has become available" notification. * src/gossip-app.c: * src/gossip-chat.c: * src/gossip-sound.c: * src/gossip-status-presets-dialog.h: * src/gossip-theme-manager.c: * src/gossip-vcard-dialog.c: Use the new defined gconf keys in gossip-preferences.h. 2006-06-04 Richard Hult * src/gossip-presence-chooser.c: (presence_chooser_clear_activate_cb): Ask for confirmation before clearing the list, fixes bug #331773. 2006-06-04 Richard Hult * src/gossip-presence-chooser.c: (gossip_presence_chooser_init): Don't unset CAN_FOCUS, make the button not take focus on click instead, makes keynav work again. (presence_chooser_menu_selection_done_cb), (presence_chooser_menu_destroy_cb), (presence_chooser_menu_popup), (presence_chooser_menu_popdown), (presence_chooser_toggled_cb): Rework how the popping up/down works by using the toggled signal instead of button press to we don't have to sync the toggling manually. (presence_chooser_state_and_status_new), (presence_chooser_get_presets), (presence_chooser_scroll_event_cb): Fix bug #343511, support scroll events in the presence chooser. 2006-06-04 Richard Hult * src/gossip-presence-chooser.c (gossip_presence_chooser_init): Don't unset CAN_FOCUS, but set focus_on_click to FALSE to get keynav working here. * libgossip/gossip-account-manager.c (account_manager_file_save): Plug leak. (gossip_account_manager_get_default): Plug leak. * src/gossip-chat-view.c (gossip_chat_view_find) (gossip_chat_view_highlight): Use the case insensitive search here, fixes bug #339679. * src/gossip-ui-utils.c: Add case insensitive text iter search from gtksourceview. * src/gossip-log.c (gossip_log_search_new): Ref the account, since it's unreffed when freed, fixes crash when searching more than once. 2006-06-03 Martyn Russell * libgossip/gossip-contact.c (gossip_contact_name_case_n_compare): Respect the size parameter. 2006-06-03 Martyn Russell * libgossip/gossip-event-manager.[ch]: Support activating an event by id not just the GObject. * libgossip/gossip-event.[ch]: Cleaned up and made event id a type instead of just a gint. * protocols/jabber/gossip-jabber.c: For the time being, _ALWAYS_ add contacts to the roster when sending subscribed (instead of just when they are a temporary contact) there were some cases where new contacts wouldn't show on the roster. * src/gossip-contact-list.c: * src/gossip-marshal.list: * src/gossip-subscription-dialog.c: Show a flashing question mark for subscription requests in the roster so we don't depend on the notification area for them, fixes #342928 (Martyn) 2006-06-03 Martyn Russell * configure.ac: Bumped version to 0.11.2. * protocols/jabber/gossip-jabber.c: * src/gossip-subscription-dialog.c: Removed debuging. 2006-06-03 Martyn Russell * protocols/jabber/gossip-jabber.c: (jabber_contact_add), (jabber_contact_remove): Revised (according to the XMPP spec for RFC 3921) the adding and removing of contacts, fixes #343375 (Jonatan Magnusson). * src/gossip-subscription-dialog.c: Silently accept subscription requests from contacts that are both on our roster and we have just asked for subscription from anyway, this halves the number of clicks to set up a new contact. * protocols/jabber/gossip-jabber-vcard.c (jabber_vcard_get_cb): Don't return _REMOVE_MESSAGE in loudmouth message handler callback for presence messages, since other things might need that information. 2006-06-03 Richard Hult * autogen.sh: * configure.ac: Apply patch from Przemyslaw Grzegorczyk to move to the LINGAUS method, bug #339285. 2006-06-03 Richard Hult * src/gossip-new-message-dialog.c (new_message_dialog_response): Rearrange to get down the indentation level a bit. 2006-06-02 Martyn Russell * libgossip/gossip-chatroom-manager.[ch]: Add a function to be able to join ALL favourite chatroooms. * libgossip/gossip-chatroom.[ch]: * libgossip/gossip-chatroom.dtd: * libgossip/libgossip-marshal.list: Added "favourite" property * src/gossip-app.c: Make it possible to join all favourites instead of going into the chat room window and selecting the rooms you want to join. * src/gossip-chatrooms-window.c: * src/gossip-edit-chatroom-dialog.c: * ui/group-chat.glade: * ui/main.glade: Updated to handle the new "favourite" property. 2006-05-29 Martyn Russell * Release 0.11.1. 2006-05-29 Martyn Russell * src/gossip-app.c: * src/gossip-presence-chooser.c: Sort out some small alignment issues and set the chooser to expand otherwise when the string is too wide we can't make use of the ellipsize feature, this really sucks that we can't do this - Richard and I spent a few days playing with different methods to do this to no avail :/ 2006-05-29 Richard Hult * src/gossip-chat-window.c: (chat_window_update_title), (chat_window_tabs_left_activate_cb), (chat_window_tabs_right_activate_cb), (chat_window_new_message_cb): Get the name to show from the chat, not the message to get nicks and group chat names to work nicer. Improves my previous changes here. 2006-05-27 Martyn Russell * src/gossip-presence-chooser.c: Use "button-press-event" instead of "clicked" so the mouse can be pressed and dragged onto the menu drop down. Also unset CAN_FOCUS so we don't get focus after clicking on the widget. 2006-05-27 Martyn Russell * src/gossip-account-button.[ch]: Use "selection-done" signal instead of "hide" and destroy the menu when done with it (not sure what was happening to it before? Leaking? Also removed the 1 pixel gap between the button and the menu. * src/gossip-presence-chooser.[ch]: Don't use an entry, instead use a GtkToggleButton so we have a button effect instead of a flat widget with weird highlighting. 2006-05-26 Martyn Russell * src/gossip-app.c: (app_presence_chooser_changed_cb): Only update our presence once instead of twice. 2006-05-26 Richard Hult * src/gossip-private-chat.c (gossip_private_chat_append_message): Check the resource for NULL before using it. * src/gossip-chat-view.c (chat_view_system_font_update): Check the value we get from gconf before using it. 2006-05-26 Martyn Russell * libgossip/gossip-presence.[ch]: * src/gossip-app.c: * src/gossip-presence-chooser.[ch]: * src/gossip-ui-utils.c: * ui/main.glade: Updated the presence chooser to be better looking and more flexible, might need a little work in some places. 2006-05-26 Martyn Russell * gossip.schemas.in: * src/Makefile.am: * src/gossip-app.c: * src/gossip-chat.c: * src/gossip-geometry.[ch]: Added a geometry module to deal with chat window and main window geometry collectively in one method. 2006-05-26 Martyn Russell * gossip.schemas.in: * src/gossip-chat-view.c: * src/gossip-preferences.c: Fixed widget sensitivity issue. Removed the preference to use the system font, just do it :) 2006-05-26 Martyn Russell * libgossip/gossip-session.c: (gossip_session_get_groups): * src/gossip-add-contact-window.c: (add_contact_window_2_prepare): * src/gossip-edit-groups-dialog.c: (edit_groups_add_groups): * src/gossip-subscription-dialog.c: (subscription_dialog_setup_groups): Do not show duplicate groups in add contact assistant, usually from multiple accounts, fixes #339835 (Keywan Najafi Tonekaboni). 2006-05-26 Martyn Russell * protocols/jabber/gossip-jabber.c: Turned debugging off. * src/gossip-chat-view.c: Make sure we update in real time the font used from changes to the system font and the preference to use the system font. * gossip.schemas.in: * src/gossip-preferences.c: * ui/main.glade: Rearranged the preferences and added a "Use System Font" option, fixes #335471 (initial patch by Wouter Bolsterlee). 2006-05-26 Martyn Russell * protocols/jabber/gossip-jabber.c (jabber_contact_add): Escape the group, name and message used in subscriptions to make sure we are not disconnected when using special characters, fixes #342927, unfortunately there is no way to unescape the markup with glib which means the groups/contacts with special characters have "amp;" and "apos;" in their names. This is something Loudmouth should really handle. * src/gossip-app.c: * src/gossip-vcard-dialog.c: Don't use gtk_dialog_run() since async programming is always better practise. * src/gossip-subscription-dialog.c: * src/gossip-ft-window.c: Make sure we free GArray's created when using the gossip_regex_match(). 2006-05-26 Martyn Russell * libgossip/gossip-chatroom-manager.[ch]: * src/gossip-log.c: * src/gossip-new-chatroom-dialog.c: Make sure we can add chatrooms which might also exist on other Jabber accounts, fixes #337184 (Keywan Najafi Tonekaboni). 2006-05-26 Martyn Russell * protocols/jabber/gossip-jabber-vcard.c: * protocols/jabber/gossip-jabber.c: Make sure we advertise our presence after we retrieve our vcard on log in. Set the image type to "image/png" instead of "image/jpeg". * src/gossip-image-chooser.[ch]: * src/gossip-vcard-dialog.c: Move the stock image "stock_person" into the image chooser and use gtk_image_set_from_icon_name() instead of obtaining it from the theme manually. 2006-05-26 Richard Hult Update my status from party hacker to real hacker: * protocols/jabber/gossip-jabber.c: (jabber_get_active_resource), (jabber_message_handler): Correctly set the resource on incoming messages and implement getting the active resource. Fixes bugs #339652 and #127385. 2006-05-26 Richard Hult * src/gossip-chat-window.c: (chat_window_update_title): Add message argument and use it to set the title to the sender. Update all callers. * src/gossip-private-chat.c: (private_chat_update_locked_resource), (private_chat_send): Only set non-away mode if we actually send a message. 2006-05-26 Richard Hult * gossip.schemas.in: * src/gossip-vcard-dialog.c: (vcard_dialog_avatar_clicked_cb): Save the last used directory and use it the next time. 2006-05-25 Martyn Russell * src/gossip-app.c: Save and load accels so users can save their shortcuts, fixes #326206 patch by Caio Marcelo. * src/gossip-app.c: Added some startup debugging and made the GossipAppPriv a private member of the GossipApp GOBject instead of making it public in the header file. * libgossip/*.c: * protocols/jabber/*.c: * src/*.c: Use g_mkdir_with_parents() everywhere. 2006-05-25 Richard Hult * src/gossip-vcard-dialog.c: (vcard_dialog_avatar_clicked_cb), (vcard_dialog_scale_down_to_width), (vcard_dialog_avatar_update_preview_cb): Set the size again on the preview image and scale it down if necessary. Stops the preview from changing the size of the dialog. 2006-05-25 Richard Hult * src/gossip-avatar-image.c: (gossip_avatar_image_init), (avatar_image_finalize) (avatar_image_scale_down_if_necessary), (avatar_image_button_press_event_cb), (gossip_avatar_image_set_pixbuf): Only show tooltip if the image is scaled down, keep aspect ratio when scaling. Add a frame to the popup. 2006-05-25 Martyn Russell * protocols/jabber/gossip-jabber-vcard.c: Turned off debugging. * src/gossip-vcard-dialog.c: Don't resize the preview image for the file chooser when setting avatars, images were only 1/2 shown in some cases. 2006-05-24 Martyn Russell * libgossip/gossip-utils.[ch]: Added gossip_base64_encode(). * protocols/jabber/gossip-jabber-vcard.[ch]: * protocols/jabber/gossip-jabber.[ch]: Make it possible to set avatars and fix some other bugs from the recently added code to retrieve avatars. * src/Makefile.am: * src/gossip-image-chooser.[ch]: Added to display the users avatar and make it possible to select the file you want to use. This also has support for dragging and dropping files onto the widget (based on Novell's e-image-chooser.[ch] but rewritten). * ui/main.glade: * src/gossip-vcard-dialog.c: Added the GossipImageChooser so users can set their avatars, patch by Eitan Isaacson. 2006-05-20 Richard Hult * configure.ac: Fix non-working check for gcrypt. 2006-05-20 Martyn Russell * src/gossip-contact-info-dialog.c: * ui/main.glade: Fixed some issues with the "Personal" information group being visible with no child widgets shown. 2006-05-20 Martyn Russell * src/gossip-chat-window.c: (gossip_chat_window_add_chat): If the x, y, w, h geomtry is < 1 use the window manager and glade defaults for positioning and size, fixes #342246 (Paul Van Tilburg). 2006-05-20 Martyn Russell * src/gossip-ui-utils.c: (gossip_pixbuf_avatar_from_vcard), (gossip_pixbuf_avatar_from_contact), (pixbuf_from_avatar_scaled): Cleaned up some gsize warnings, based on a patch from Eitan Isaacson. 2006-05-20 Martyn Russell * protocols/jabber/gossip-jabber.c: Force avatar/VCard update for contacts that come online because some clients don't support JEP-0153 with the xml tags to tell us if they have an avatar or if it has been updated. This means now that the roster will ALWAYS show the avatars on the roster window. * src/gossip-avatar-image.c (gossip_avatar_image_init): Added a tooltip to let people know they can click on the image to enlarge it. 2006-05-17 Richard Hult * protocols/jabber/gossip-jabber-chatrooms.c: (jabber_chatrooms_message_handler): Don't use the room if it's not found, fixes critical warnings. * protocols/jabber/gossip-jabber.c: (jabber_contact_is_avatar_latest): Check the node's value before using it, fixes critical warnings. * src/Makefile.am: * src/gossip-avatar-image.[ch]: New widget for showing the avatar. * src/gossip-contact-info-dialog.c: (contact_info_dialog_get_vcard_cb): Don't scale the avatar, get the full scaled image and handle scaling in the avatar widget. (gossip_contact_info_dialog_show): Set up the avatar widget. * ui/main.glade: Remove the image and name the box so we can get at it and add the image from code instead. 2006-05-16 Richard Hult * libgossip/gossip-vcard.c: Add PROP_0 so we don't start at 0, fixes critical warning. 2006-05-16 Martyn Russell * configure.ac: * libgossip/gossip-contact.[ch]: * libgossip/gossip-utils.[ch]: * libgossip/gossip-vcard.[ch]: * protocols/jabber/gossip-jabber-vcard.[ch]: * protocols/jabber/gossip-jabber.c: * src/gossip-contact-info-dialog.c: * src/gossip-contact-list.c: * src/gossip-main.c: * src/gossip-ui-utils.[ch]: * ui/main.glade: Added avatar support. Patch by Eitan Isaacson, fixes #141854 (Mikael Hallendal). Some more work is needed to toggle the contact list avatar in the preferences. Also, I reworked the contact information dialog a little to make this look a bit better. 2006-05-14 Martyn Russell * src/gossip-app.c: Make Escape toggle the visibility instead of explicity set it and show the main window if there is no notification area disabling any further method to hide the main window, fixes #338054 (Kristian Rietveld, patch by Caio Marcelo) and #132632 (Frederic Crozat). 2006-05-14 Martyn Russell * src/gossip-chat-window.c: Use the old method of showing an 'x' on the right hand side of a tab, but ONLY when the pointer enters the window. 2006-05-14 Martyn Russell * src/gossip-chat-window.c: * src/gossip-chat.[ch]: * src/gossip-group-chat.c: * src/gossip-private-chat.c: Save the geometry of chat windows and remember it based on the contact ID, fixes #141855 (Mikael Hallendal). 2006-05-04 Richard Hult * libgossip/gossip-presence.c: (presence_get_default_status), (gossip_presence_get_status): Don't try to translate macros, use the real strings. Fixes the non-translated status strings. 2006-05-03 Richard Hult * src/eggtrayicon.c: Apply the transparency patch from bug #150726. 2006-05-01 Martyn Russell * Release 0.11. 2006-05-01 Martyn Russell * protocols/jabber/gossip-jabber-chatrooms.c: * protocols/jabber/gossip-jabber.c: * src/gossip-chat-view.c: Some minor changes to the way the invite text is presented in the chat window. This is a sticky area because of older GC ways of doing this and newer MUC API it means the body CAN be the same as the reason and either could contain the room id. Hopefully, this update means that you should always get the reason/body and the room id but never duplicate information, fixes #340259 (Keywan Najafi Tonekaboni). 2006-05-01 Martyn Russell * src/gossip-contact-info-dialog.c: Fixed some loose ends that I missed yesterday for #332539. * src/gossip-ui-utils.c: Show the GOSSIP_STOCK_PENDING icon when subscription is not BOTH and not FROM (instead of just BOTH). 2006-04-30 Martyn Russell * libgossip/gossip-chatroom-provider.[ch]: * protocols/jabber/gossip-jabber-chatrooms.[ch]: * protocols/jabber/gossip-jabber.c: * src/gossip-chat-invite.c: * src/gossip-chat-view.c: Update the chat invite/decline code to use the MUC methods instead of old GC protocol. Added a "decline" button for chat room invites, fixes #339655 (Keywan Najafi Tonekaboni). * protocols/jabber/gossip-jabber.c: Fixed the way we add contacts to the internal hash table, make sure they are added WITHOUT the resource, find, subscription and contact removal functions were broken because of this. * src/gossip-add-contact-window.c: If we successfully find the other contact's VCard and nick name, fill it in to the name that will be used on the roster (if not already edited by the user). * src/gossip-contact-info-dialog.c: Don't unref the GossipContact in the vcard response function, this was causing crashes when quitting, fixes #332539 (Richard). * src/gossip-contact-list.c: * src/gossip-ui-utils.c: * ui/pixmaps/gossip-pending.png: * ui/svg/gossip-pending.svg: Added the pending icon for contacts on the roster which are still waiting for subscription responses, fixes #116787 (Jordi Mallach, Daniel Taylor). 2006-04-29 Martyn Russell * src/gossip-accounts-dialog.c: * ui/main.glade: Updated the accounts dialog to give it a slightly better look and feel. Also added a confirmation dialog when removing an account incase the button is accidentally pressed since this is quite a serious step. 2006-04-29 Martyn Russell * libgossip/gossip-session.[ch]: * src/gossip-app.[ch]: * src/gossip-account-button.c: * src/gossip-accounts-dialog.c: * src/gossip-main.c: Fix auto-connect which I broke last night. * src/gossip-contact-list.c: * ui/chat.glade: Use "Contact I_nformation" mnemonic. * src/gossip-app.c: Fixed the accounts toolbar so that we hide it properly if there is only one account left instead of showing it with the separator. 2006-04-29 Richard Hult * src/gossip-contact-list.c: Change mnemonic back to c, i is too thin. Consistancy between different menus/widgets is not possible anyway. * src/gossip-log-window.c (log_window_search_populate): Don't crash on empty search strings, just clear the search. (log_window_chatrooms_get_messages): Protect against bad data. * src/gossip-log.c (gossip_log_get_chatrooms): Don't accept old files as chatroom logs. * src/gossip-log-window.c (log_window_search_populate): Protect against invalid data. * src/gossip-log.c (gossip_log_handler_remove): Check if the hash table has been created before using it, fixes a crash. (log_get_all_log_files_for_account_dir): Don't try to traverse the dir if it wasn't found, fixes a crash. (log_get_all_log_files_for_chatroom_dir): Likewise. (log_get_all_log_files_for_chatrooms_dir): Likewise. (log_get_all_log_files_for_contact_dir): Likewise. (gossip_log_get_dates_for_chatroom): Check for account being NULL, can happen when there are old log files around. 2006-04-28 Martyn Russell * src/gossip-notify.c: * src/gossip-sound.c: Only act on presence updates from contact list contacts not every tom, dick and harry. 2006-04-28 Martyn Russell * libgossip/gossip-session.c: * src/gossip-app.c: Connect ALL accounts unless one is provided, NOT just those with auto-connect = TRUE (spotted by Paul Van Tilburg). 2006-04-28 Martyn Russell * protocols/jabber/gossip-jabber-chatrooms.c: (jabber_chatrooms_message_handler), (jabber_chatrooms_get_contact): Fixed group chat so that topics are displayed in the topic entry when entering a room, not just when they are changed while you are there. 2006-04-28 Martyn Russell * ui/main.glade: Use Ctrl+H to show/hide offline contacts instead of Ctrl+O, fixes #340008 (Wouter Bolsterlee). 2006-04-27 Martyn Russell * src/gossip-log-window.c: * src/gossip-log.[ch]: * src/gossip-private-chat.c: Changed the logging directory structure so that contacts have their own directory, this makes things a little faster. Also cleaned up the code. After this update, previous logs will not be recognised because the naming convention will be different. 2006-04-24 Martyn Russell * src/gossip-chat-window.c: * src/gossip-contact-list.c: * ui/chat.glade: Make sure we use the same contact information icon for context menus and windows menus to be consistent, fixes #339183 (Wouter Bolsterlee). 2006-04-24 Martyn Russell * src/gossip-notify.c: Escape text before using it in notifications, fixes #339558 (Paul Van Tilburg). 2006-04-23 Martyn Russell * src/gossip-chatrooms-window.c: * libgossip/gossip-account-manager.c: * libgossip/gossip-account.[ch]: * libgossip/gossip-chatroom.[ch]: Added _get_id_str() which returns 'room@server' since it is regularly needed and constructed elsewhere. * libgossip/gossip-chatroom-manager.[ch]: When finding chatrooms, don't compare the nick because on some occasions we don't have a one. * protocols/jabber/gossip-jabber-chatrooms.[ch]: Our own contact's JID is now 'room@server/nick' instead of 'user@server/resource' which it is everywhere else. Removed the need to synthesis adding ourselves into that chatroom with a presence signal. Most importantly, this now works properly with logging. * src/gossip-app.c: * src/gossip-chat-window.c: * src/gossip-contact-list.c: Support showing the log window for chatrooms similarly to how we do contacts. * src/gossip-group-chat.c: When setting up the own_contact for group chat, don't use the same own_contact we would use for normal chat, again use 'room@server/nick'. * src/gossip-log-window.[ch]: * ui/main.glade: Added a new tab for group chat conversations. * src/gossip-log.[ch]: Added group chat logging, fixes #141564 (Mikael Hallendal). Fixed directory permissions for new directories. Fix the "new-message" signalling so that we actually update the log window when new messages occur. 2006-04-21 Martyn Russell * protocols/jabber/gossip-jabber.c: * src/gossip-chat-window.c: Turned off debugging. * src/gossip-notify.c: * src/gossip-sound.c: Don't spam notifications/sounds when connected, fixes #339147 (Wouter Bolsterlee). 2006-04-21 Martyn Russell * src/gossip-chat-window.c: * src/gossip-chat.c: * src/gossip-group-chat.c: * src/gossip-private-chat.c: Don't hint the window on every message in group chat, fixes #338998 (Ross Burton). 2006-04-19 Martyn Russell * src/gossip-log.c: Make sure we escape ALL strings that we write to log files, including the nickname, fixed bug #339056 (Samuel Hym). 2006-04-17 Martyn Russell * libgossip/gossip-protocol.c: * libgossip/gossip-session.c: * src/gossip-contact-list.c: * src/gossip-private-chat.c: Changed "composing-event" to "composing". * protocols/jabber/gossip-jabber.c: Fixed a bug which was causing crashes because GossipContact objects were being unreferenced when removed from a hash table, but not referenced when being inserted, fixes #338811 (Martyn). 2006-04-17 Martyn Russell * libgossip/gossip-session.c: Don't error when we can't find a protocol associated with a temporary contact for sending composing, just silently return instead of print a load of warnings. * src/gossip-contact-list.c: Fixed warning with the context menu. * src/gossip-new-message-dialog.c: Don't try to create a contact with a NULL account, it just causes all sorts of warnings. 2006-04-17 Martyn Russell * src/gossip-app.c: Initiate the sound module here. * src/gossip-contact-list.c: * src/gossip-notify.[ch]: Detect online/offline users here, not in the contact-list module, there is now no external API to put up an online notification. * src/gossip-contact-list.c: * src/gossip-sound.[ch]: Detect online/offline users here, not in the contact-list module. We really should detect new messages here too, not in the [private|group]-chat modules. 2006-04-17 Martyn Russell * src/gossip-app.c: * src/gossip-chat-view.c: * src/gossip-new-chatroom-dialog.c: Small gossip_group_chat_() API update that is called from these files. * src/gossip-chat-invite.c: Don't create an empty "invite" menu. * src/gossip-chat-window.c: * ui/chat.glade: Moved all group chat items into a separate "Room" menu item on the menu bar. Made sure we don't show the "Contact Info" item when we are in group chat. Added the ability to add a chat room to your favourites from the "Room" menu, fixes #155571 (Keywan Najafi Tonekaboni). * src/gossip-chat.c: (gossip_chat_class_init): * src/gossip-chatrooms-window.c: (chatrooms_window_join_cb): * src/gossip-contact-list.c: * src/gossip-group-chat.[ch]: Instead of waiting for the chat room contacts to get our own contact, we now obtain it first, fixes some issues that were occuring with menus and widgets being out of sync because own_contact was NULL when tabs were added and switched. Updated the code to use g_type_class_add_private (). 2006-04-17 Martyn Russell * src/gossip-chat-window.c: Reworked the 'x' in chat tabs so that it replaces the presence icon when the pointer is hovering over it. Clicking the 'x' will still close the tab. Comments relating to this change can be found against the original bug #322030 (Martyn). 2006-04-15 Martyn Russell * src/gossip-app.c: * src/gossip-chat-window.c: * src/gossip-contact-list.c: * src/gossip-log-window.[ch]: Don't make log window a transient window and only show ONE, not one for each instance the log window is requested. 2006-04-14 Martyn Russell * libgossip/gossip-session.c: Don't decrease the connected_counter when it is already 0, this leads to the G_UMAXINT32 being returned which means we must have that many connections, fixes #336442 (Braden). * src/gossip-account-button.[ch]: * src/gossip-app.c: If we have problems connecting to any accounts we show the account toolbar, this means when we have ONE account and the toolbar is hidden, the error is not hidden too, fixes #335504 (Paul Van Tilburg). * src/gossip-ui-utils.c: Fix up the pixbuf error composition function call to put the error over the top of the account image, it was producing some weird image. 2006-04-14 Martyn Russell * protocols/jabber/gossip-jabber.c: Added a timeout for the composing signal we emit to make sure that we stop composing even if the server doesn't send it to make sure we don't get stuck, fixes #141577 (Richard). Added a hash table of people that have requested the composing information and only send out the composing event to contacts that have requested it, fixes #319080 (Ross Burton). * src/gossip-contact-info-dialog.c (contact_info_dialog_contact_updated_cb): Fixed the "subscribe" button to make it work instead of error, fixes #332254 (Wouter Bolsterlee). 2006-04-09 Martyn Russell * configure.ac: * po/LINGUAS: Added in accordance to the GNOME Goals (http://live.gnome.org/GnomeGoals/PoLinguas), fixes #337837 (patch by Caio Marcelo). 2006-04-09 Martyn Russell * libgossip/gossip-chatroom-provider.[ch]: * src/gossip-app.c: * src/gossip-chat-invite.c: Change the chatroom-provider _get_name() function to _find(), so we can get the actual chatroom and call _get_name() and any other functions on it directly. * protocols/jabber/gossip-jabber-chatrooms.c: When we get the logged-out signal we now call the _leave() function for ALL rooms associated with the account. * protocols/jabber/gossip-jabber.c: When logged out of an account, we now go through ALL contacts and remove all presence information (which effectly puts them all into an offline state. * src/gossip-chat-window.c: Actually let the backends (private chat and group chat) supply the pixbuf for the chat tab instead of assuming an offline pixbuf when we get a disconnected signal. * src/gossip-group-chat.c: Added some debugging and connected the new "chatroom-joined" signal so we can clear the contacts treeview and the chatview (incase we need to join again after a disconnect), fixes bug #335030 (Richard). * ui/chat.glade: * ui/main.glade: Changed the "Ctrl+V" mnemonic for showing previous conversations to F3, since Ctrl+V is commonly used for clipboard paste operations (spotted by Paul Van Tilburg). 2006-04-09 Martyn Russell * protocols/jabber/gossip-jabber-chatrooms.c: Now we handle 404 (not found) when we try to join a server which doesn't exist. * src/gossip-chatrooms-window.c: * src/gossip-new-chatroom-dialog.c: When joining, the Join button is now changed to Stop instead of Cancel (which meant we had two Cancel buttons in the chatrooms window and new chatroom dialog, fixes #337188 (Keywan Najafi Tonekaboni). We also now don't save the new chat room unless successfully joined, fixes #337184 (Keywan Najafi Tonekaboni). * ui/group-chat.glade: Added a "Name" entry when adding new chat rooms, this way you can decide when creating it instead of having to edit it after. 2006-04-08 Brian Pepple * src/gossip-about-dialog.c (gossip_about_dialog_new): Enable website url in the about dialog, fixes bug #337750. 2006-04-08 Martyn Russell * src/gossip-chat-view.[ch]: Added functions _find() and _highlight() so we can now find or highlight ANY word in any chat view (which is any conversation). Added the ability to turn on/off scrolling. * src/gossip-log-window.c: * src/gossip-log.c: Make sure we actually scroll to the first item when searching all log files. Now we highlight all words that match in the chat view. Disable scrolling when adding the messages into the chat view, this improves performance slightly. * ui/main.glade: Added a "Next" button so when we search all our chat logs we can find the next place in the same file and added an adjustable divider. 2006-04-07 Richard Hult * src/gossip-log.c: (log_get_all_log_files_for_account_dir), (log_get_all_log_files): Split up in two functions and only get the files in the actual account directories instead of all files recursively. Makes things work better when there are old style log files. (log_get_contact), (log_get_contact_name_from_id), (log_get_own_contact): Guard against non-parseable key files. 2006-04-07 Richard Hult * src/gossip-contact-list.c: Include config.h first. 2006-04-07 Martyn Russell * NEWS: Spent 10 minutes trying to keep up with all of Richards party bug fixes for the next release :) * src/gossip-contact-list.c: * ui/chat.glade: * ui/main.glade: Changed the "View Message History" to "View Previous Conversations" and fixed the mnemonics to be consistent everywhere, fixes bug #337001 (Wouter Bolsterlee). * src/gossip-log-window.c: Turned off debugging and only make sure the "Browse" tab is shown with your contact's last conversation IF a contact is provided when calling gossip_log_window_show(). * src/gossip-log.c: Fixed a couple of crashers and turned debugging off. * src/gossip-presence-chooser.c: Fixed richards G_CALLBACK (foo_gtk_widget_destroy) for the latest presence menu changes he did :) 2006-04-07 Richard Hult * src/gossip-contact-list.c: * src/gossip-notify.c: (notify_get_is_busy), (gossip_notify_contact_online), (gossip_notify_contact_offline): Please don't bubble so much when I'm busy (don't show bubbles for online/offline events). Bug #337647. 2006-04-07 Richard Hult * src/gossip-presence-chooser.c (presence_chooser_show_popup): Fix the previous fix. Caught by Dimitur Kirov. * src/gossip-log.c (log_set_name, log_set_own_name): Use G_GSIZE_FORMAT, fixes build on 64-bit systems. Bug #336395, patch by Caio Marcelo. * libgossip/gossip-utils.c (utils_regex_init): Silence warning, bug #337623 (Caio Marcelo). * src/gossip-presence-chooser.c (presence_chooser_show_popup): Don't leak the menu, based on patch from Dimitur Kirov, bug #337645. 2006-04-05 Martyn Russell * libgossip/gossip-account-manager.[ch]: Added gossip_account_manager_find_by_id() function. * libgossip/gossip-time.c: Fixed a bug where strptime() was failing to operate because struct tm was full of crap, so we memset this to 0 before using it. * src/gossip-chat-view.c: Turned off debugging. * src/gossip-log-window.c: * src/gossip-log.[ch]: * ui/main.glade: Added the ability to search ALL logs for a given text as well as browse logs. This is still flawed in a few ways, for example, we do case insensitive searching through ALL files to present the list, but when highlighting and scrolling to the text sometimes nothing happens because the search is case sensitive. We need to make searching through the text case insensitive for browsing and searching too. 2006-04-03 Richard Hult * src/gossip-private-chat.c (gossip_private_chat_append_message): Mark string for translation. 2006-04-03 Martyn Russell * ui/pixmaps/Makefile.am: Fixed make distcheck. 2006-04-03 Brian Pepple * src/gossip-chat-window.c: * ui/chat.glade: * ui/file-transfer.glade: * ui/group-chat.glade: * ui/main.glade: Don't put "Gossip" in front of every window title, fixes bug #336456 (Wouter Bolsterlee, Brian Pepple). 2006-04-02 Martyn Russell * libgossip/gossip-message.[ch]: * libgossip/gossip-message.h: * protocols/jabber/gossip-jabber.c: * src/gossip-private-chat.c: Support the "subject" element in a Jabber message, fixes #305370 (Jeremy Nickurak). 2006-04-02 Martyn Russell * src/gossip-chat-view.c: * src/gossip-chat-window.h: Make sure the "Clear" context item for the actual message textview uses GTK_STOCK_CLEAR and add a separator between the open/copy link items and the clear item. * src/gossip-chat.[ch]: Cleaned up code to add a private struct to GossipChat instead of doing it manually. 2006-04-02 Martyn Russell * src/gossip-chat-view.[ch]: * src/gossip-chat-window.c: * src/gossip-chat.c: * ui/chat.glade: Added a smiley menu item and context menu item so it is easy for users to select the smiley they want to use instead of remember the key sequence. Fixed the Copy, Cut and Paste items to only be available when usable (e.g. when text is highlighted) and cleaned up the code in places. 2006-03-31 Martyn Russell * src/gossip-notify.c: Add a "send message" button to online notifications, fixes #336222 (Wouter Bolsterlee). 2006-03-31 Martyn Russell * libgossip/gossip-utils.[ch]: Updated the regular expressions code based on gnome-terminal so more URLs are spotted, including the mailto scheme which was broken before, fixes #163816 (Micke). * src/gossip-about-dialog.c: * src/gossip-chat-view.c: * src/gossip-log.c: Add a definition to switch between gnomevfs and libgnome for showing URLs. 2006-03-31 Martyn Russell * libgossip/gossip-utils.c: 2006-03-31 Martyn Russell * src/gossip-accounts-dialog.c: * ui/main.glade: Fixed the "Add Account" dialog not working. 2006-03-31 Martyn Russell * protocols/jabber/gossip-jabber.c: Don't propergate Jabber messages with no element, fixes #309912 (Ralph Meijer). 2006-03-31 Martyn Russell * src/gossip-notify.c: Use a low priority for presence notifications (online or offline), fixes bug #336611 (Wouter Bolsterlee). 2006-03-30 Martyn Russell * libgossip/gossip-account-manager.c: * libgossip/gossip-chatroom-manager.c: * src/gossip-main.c: * src/gossip-ui-utils.c: Plugged some memory leaks. * src/gossip-chat-window.c: * src/gossip-contact-list.c: * src/gossip-private-chat.c: Fixed up the places that call into the gossip_log_() API and make the "View Message History" menu item consistent everywhere. * src/gossip-log-window.c: * src/gossip-log.[ch]: Fixed various issues and added a whole bunch more, now you can view logs by date. * ui/chat.glade: * ui/group-chat.glade: * ui/main.glade: - For stock dialogs (like New chatroom or Edit chatroom) use the NEW and EDIT stock icons for the window. - Updated the log window quite a bit. 2006-03-29 Richard Hult * src/gossip-stock.c: Remove trailing comma. * src/gossip-chat-window.c (chat_window_create_label): Make the button use less padding. * src/gossip-main.c (main): Fix the previous goption patch to use _(), not N_(). 2006-03-28 Brian Pepple Bug #336375: * src/gossip-about-dialog.c (gossip_about_dialog_new): Drop name property from about dialog, and use "wrap-license" and _("translator-credits"). * src/gossip-about-dialog.c * ui/pixmaps/Makefile.am (icondir): * src/gossip-main.c: * gossip.desktop.in.in: Use icon theme specification. 2006-03-29 Richard Hult * src/gossip-log.c (log_set_nick): Fix compilation on 64-bit systems, bug #336395 (Caio Marcelo). 2006-03-27 Richard Hult * src/gossip-app.c: (app_tray_create): Setup the newly created widget as attach widget for the libnotify stuff. * src/gossip-notify.c: (gossip_notify_contact_online), (gossip_notify_contact_offline), (notify_new_message), (gossip_notify_set_attach_widget), (gossip_notify_init): Use an attach widget and handle when it goes away. 2006-03-27 Richard Hult * src/gossip-app.c (app_connection_items_update): Stop status flashing if there are no connected accounts. Bug #322779. * src/gossip-notify.c: (notify_new_message_default_cb), (notify_new_message_contact_cb): Fix warnings on 64-bit machines (#336011, Caio Marcelo). 2006-03-26 Martyn Russell * src/gossip-chat-window.c: Cleaned up the code here and made use of g_type_class_add_private (). * src/gossip-chat-window.c: * src/gossip-contact-list.c: Make the ->View Log option from the context menu and chat window menu show the new chat history window. * src/gossip-log-window.c: * src/gossip-log.c: Show real names instead of account IDs in the log window and fixed runtime warnings. 2006-03-26 Martyn Russell * libgossip/gossip-protocol.c: * libgossip/gossip-session.c: * libgossip/libgossip-marshal.list: Fixed the types used in signals to use the ACTUAL types (GOSSIP_TYPE_MESSAGE, etc) instead of G_TYPE_POINTER. * protocols/jabber/gossip-jabber.c: Clean up the password request code and don't error when the password is NULL. * src/gossip-ui-utils.c: Fixed the password dialog to show the account name and id when asking for a password so we know which account password to fill in. Fixes #336008 (André Dahlqvist). 2006-03-26 Martyn Russell * po/POTFILES.in: * src/gossip-accounts-dialog.c: * ui/Makefile.am: * ui/connect.glade: * ui/main.glade: Removed connect.glade since there was one dialog in it and it really could be moved into main.glade. 2006-03-26 Martyn Russell * src/gossip-accounts-dialog.c: * src/gossip-preferences.c: * ui/connect.glade: A few more GUI tweaks to make sure Escape closes dialogs. 2006-03-26 Martyn Russell * ui/main.glade: Make sure Escape works for closing Preferences and some other dialogs that have a Close button and not a Cancel button. Made sure the chat theme combo label has a mnemonic, fixes #336064 (Wouter Bolsterlee). 2006-03-26 Martyn Russell * src/gossip-contact-list.c: - Removed the GDK_ACTION_COPY for Drag & Drop so that moves are done by default (copy was default before). - Make sure we don't notify offline contacts as online when switching the view to show offline contacts. Fixes #335464 (Keywan Najafi Tonekaboni). - Cleaned up the code in places. 2006-03-25 Martyn Russell * libgossip/gossip-session.[ch]: * src/gossip-account-button.c: * src/gossip-accounts-dialog.c: * src/gossip-app.[ch]: * src/gossip-main.c: Use GOption instead of popt and fixed --account which is supposed to only connect one account when starting Gossip (and was broken). Fixes bug #335993 (Caio Marcelo). * libgossip/gossip-time.[ch]: * po/POTFILES.in: * src/Makefile.am: * src/gossip-chat-view.[ch]: * src/gossip-chat.c: * src/gossip-log-window.[ch]: * src/gossip-log.[ch]: * ui/main.glade: Added an initial log window implementation. Currently there are a few teething issues: - We won't have a real name to go by, just the account id - Need case-insensitive searching - Need to fix the GOSSIP_IS_CONTACT() warnings - Need to show more than just today's logs. * src/gossip-log.xsl: Improved the CSS here so the font isn't so big. 2006-03-25 Brian Pepple * src/gossip-about-dialog.c: Add license to about dialog. Fixes #335992. 2006-03-25 Martyn Russell * po/ChangeLog: * po/POTFILES.in: * src/Makefile.am: * src/gossip-about-dialog.[ch]: * src/gossip-about.[ch]: * src/gossip-app.c: Deprecated old about dialog and added new about dialog using the new GTK API. 2006-03-22 Richard Hult * protocols/jabber/gossip-jabber-chatrooms.c: (jabber_chatrooms_message_handler): Don't try to use the resource when there isn't one. Fixes critical warning. * src/gossip-chat-view.c: (gossip_chat_view_append_event): * src/gossip-theme-manager.c: (gossip_theme_manager_apply): Tweak the theme appearance a bit. 2006-03-22 Richard Hult * Makefile.am: * configure.ac: * omf.make: * xmldocs.make: Try to fix docs build, bug #335064. 2006-03-20 Richard Hult * src/gossip-spell.c: (gossip_spell_new): Fix build warnings when building without aspell. 2006-03-18 Martyn Russell * Release 0.10.2. 2006-03-18 Martyn Russell * libgossip/gossip-chatroom.c: * protocols/jabber/gossip-jabber-chatrooms.c: * src/gossip-notify.c: * src/gossip-spell.c: Fixed various spelling mistakes or extra unnecessary new lines. * src/gossip-accounts-dialog.c: * src/gossip-new-account-window.c: * ui/connect.glade: * ui/main.glade: Added a button to forget saved passwords for accounts and make it possible to have an empty password in the new account assistant so that passwords don't have to be stored on public machines. Fixed bug #334890 (Paul Van Tilburg). 2006-03-18 Richard Hult * protocols/jabber/gossip-jabber-chatrooms.c: Disable debug. 2006-03-18 Richard Hult * protocols/jabber/gossip-jabber-chatrooms.c: (jabber_chatrooms_message_handler): Fix critical warning introduced recently when joining group chats. 2006-03-18 Richard Hult * src/gossip-chatrooms-window.c: Disable autoconnect checkbutton in the treeview. * ui/group-chat.glade: Fix string, it was referring to a button that had changed. 2006-03-18 Martyn Russell * libgossip/gossip-account-manager.c: Only save the account changes after iterating ALL accounts (the changes between the accounts.xml format now and in the last release). * libgossip/gossip-account.dtd: Change the DTD back to how it was to avoid any DTD validation issues in the next release. 2006-03-18 Richard Hult * libgossip/gossip-debug.c: (debug_init), (gossip_debug_impl): * libgossip/gossip-debug.h: Some small improvements. 2006-03-18 Richard Hult * src/gossip-contact-list.c: * src/gossip-log.c: Remove HAVE_CONFIG stuff, we don't have it anywhere else. 2006-03-18 Richard Hult * libgossip/gossip-account-manager.c: (account_manager_parse_account), (account_manager_file_save): Make the accounts info file not readable by others than the owner, bug #331910. 2006-03-18 Richard Hult * src/gossip-preferences.c: (preferences_languages_setup): Don't set a fixed width on the language checkbox, that looks ugly. 2006-03-18 Richard Hult * configure.ac: * src/gossip-preferences.c: (preferences_languages_add): * src/gossip-spell.c: (gossip_spell_new), (spell_free), (gossip_spell_lang_table_parse_start_tag), (gossip_spell_lang_table_init), (gossip_spell_get_language_name): * src/gossip-spell.h: Based on patch by Nickolay V. Shmyrev, use iso-codes to get the language names for spellchecking, bug #334390. 2006-03-18 Richard Hult * libgossip/Makefile.am: * libgossip/gossip-debug.c: * libgossip/gossip-debug.h: Add runtime controlled debug output. * src/gossip-chat-view.c: (chat_view_maybe_append_date_and_time), (gossip_chat_view_append_event): Tweak the events and timestamp looks a bit. 2006-03-17 Martyn Russell * configure.ac: Removed some crack so make distcheck builds. 2006-03-17 Martyn Russell * src/gossip-chat.[ch]: Make sure the string we want to spell check isn't a command like "/me" before checking it, since it fails the spell check and gets underlined. Fixes bug #332058 (Ross Burton). * src/gossip-spell.c: Don't spell check strings which comprise of digits, fixes bug #332063 (Ross Burton). * src/gossip-chatrooms-window.c: When adding new chatrooms to the list make sure the chatroom account matches the account selected instead of blindly adding it. * src/gossip-log.c: * src/gossip-notify.c: * src/gossip-vcard-dialog.c: Removed debugging. 2006-03-16 Martyn Russell * libgossip/gossip-chatroom-provider.c: * libgossip/libgossip-marshal.list: * src/gossip-group-chat.c: * protocols/jabber/gossip-jabber-chatrooms.c: Pass the contact responsible for changing the topic so we can report it in the group chat window. * src/gossip-chat-view.c: * src/gossip-theme-manager.c: Update the colours for events to be slightly more obvious than the darkgrey for time. Also make events left aligned since I think they look ugly centered with a timestamp :( - please don't kill me richard. I think the colour could be better AND I am not certain of the format with the left alignment like that either - so it will likely to back to how it was. Let's try it for a while. 2006-03-16 Martyn Russell * configure.ac: * src/gossip-notify.c: Update the libnotify module to work with the 0.3.x API. This was been based on a patch from Brian Pepple with some minor alterations. Gossip will now work with libnotify 0.3.2 or above. Fixes bug #332169 (Brian Pepple). 2006-03-15 Martyn Russell * NEWS: Updated for upcoming release. * libgossip/gossip-account-manager.c: Added a check for account IDs to make sure they are in the correct state since we changed the format again for the next release and we don't want the same confusion as last time. Fixes bug #331664. * src/gossip-chatrooms-window.c: Check if any rooms are still joining when we get called back that a room has been joined, if not we hide the window. * src/gossip-ui-utils.c: Use the GTK_STOCK_DISCONNECT for inactive chatrooms, I think it works better than the GTK_STOCK_CLOSE. 2006-03-15 Martyn Russell * src/gossip-spell-dialog.c: * ui/main.glade: Fixed the spell checker dialog not showing and change the "OK" button to "Replace". 2006-03-13 Martyn Russell * src/gossip-account-chooser.[ch]: Make it possible to select accounts that are offline. * src/gossip-accounts-dialog.c: Fixed a bug where accounts could be removed because the Remove button didn't update when they connect using the Connect/Disconnect button. 2006-03-13 Martyn Russell * libgossip/gossip-account-manager.[ch]: * libgossip/gossip-account.[ch]: * libgossip/gossip-account.dtd: * src/gossip-accounts-dialog.c: * ui/connect.glade: Added "resource" back in. * protocols/jabber/gossip-jabber.c: Separate username and resource, so the example username now has no resource and the validation of a username doesn't require the "/resource" part. The account wizzard asks for it separately and the backend uses it where needed. * ui/main.glade: * src/gossip-new-account-window.c: Fixed the wizzard to make sure we actually check all the details are correct on the username page before continuing and accept a username without resource (which is on the follow up page). * src/gossip-vcard-dialog.c: Use Save and Cancel buttons and close when clicking on Save too. Plus, remove the progress and status widgets. 2006-03-12 Martyn Russell * libgossip/gossip-chatroom-manager.c: * src/gossip-app.c: Change the signalling here slightly to better reflect the scenario. * protocols/jabber/gossip-jabber-chatrooms.c: Fix the presence handler here so we actually check the presence message is actually for the join request and not just any presence message - this means we no longer see success when auto-joining on startup (in failure conditions). * src/gossip-chatrooms-window.c: Support selecting multiple rooms to delete, join, etc. Also now the row-activated signal has been hooked up to make it quicker for mouse users to double click and open a room. * src/gossip-edit-chatroom-dialog.[ch]: Pass the GtkWindow parent to set up the transient parent. * src/gossip-new-chatroom-dialog.c: Make sure we save the new chatroom back to the chatrooms.xml file. This was happening by mistake when you select a new item in the list and the default is set (if it worked before). * ui/group-chat.glade: Make the window non-resizable since it is unnecessary and should avoid a problem I have seen where the width of the window is 1/2 the screen width when shown. 2006-03-11 Richard Hult * src/gossip-vcard-dialog.c: (gossip_vcard_dialog_show): * ui/main.glade: Don't set visible to true in glade files, fixes ugly flashing. 2006-03-02 Richard Hult * src/gossip-theme-manager.c (gossip_theme_manager_apply): Use default fg color for text for the classic theme. Fixes bug #332713. 2006-02-27 Martyn Russell * src/gossip-log.c: Cleaned up the logging code and use some convenience functions now available in later version of glib. * src/gossip-log.xsl: - Update the CSS used so the font isn't so big. 2006-02-27 Brian Pepple * src/gossip-contact-list.c: * ui/chat.glade: Change some keyboard mnemonics, fixes bug #332240. 2006-02-27 Richard Hult * configure.ac: Use AC_PATH_XTRA to fix the Xss detection, patch from Tommi Komulainen. * src/gossip-chat-window.c: (chat_window_create_label): Use the eventbox, brings back tooltips on the chat tabs (and add some spacing between the icon and label again). 2006-02-27 Martyn Russell * autogen.sh: Update error for automake to v1.9 from 1.7. 2006-02-26 Richard Hult * Makefile.am: Move the scrollkeeper makefiles from DISTCLEANFILES to EXTRA_DIST, mistake in the previous commit. * configure.ac: Quote more strings and use AM_CONFIG_HEADER instead of AC_CONFIG_HEADERS, fixes build for some reason... 2006-02-26 Richard Hult * Makefile.am: * help/C/gossip.xml: * help/Makefile.am: Move to gnome-doc-utils, based on patch from Brian Pepple . * configure.ac: Add GNOME_DOC_INIT, and don't use all the flags for Gossip for the Xss check since that breaks some cases (replace the check with the one from gnome-control-center). * libgossip/Makefile.am: * protocols/jabber/Makefile.am: * src/Makefile.am: Make these consistent and don't put the warning flags in CFLAGS, use WARN_CFLAGS instead. * autogen.sh: Bring back a "normal" autogen script so that we can make it do what we want. Run gnome-doc-prepare. * src/gossip-chat-window.c: * src/gossip-galago.c: * src/gossip-notify.c: Remove #ifdefs, we always have the urgent hint since we depend on GTK+ 2.8. 2006-02-25 Martyn Russell * Release 0.10.1. 2006-02-25 Richard Hult * src/gossip-spell.c: (gossip_spell_new), (gossip_spell_has_backend), (gossip_spell_get_language_codes), (gossip_spell_check), (gossip_spell_suggestions): Small tweak to follow original gossip coding style. 2006-02-25 Richard Hult * src/gossip-spell.c: Fix typo, bug #331868. * libgossip/gossip-account-manager.c: (account_manager_get_all), (account_manager_parse_account), (account_manager_file_parse), (account_manager_file_save): * libgossip/gossip-chatroom-manager.c: (chatroom_manager_file_parse): * libgossip/gossip-utils.c: (gossip_utils_xml_validate): * libgossip/gossip-utils.h: * src/gossip-contact-groups.c: (contact_groups_file_parse): * src/gossip-status-presets.c: (status_presets_file_parse): Clean up XML code a bit more, add a convenience function to validate against a given DTD file and use that to validate the various files, instead of using the DTD specified in the files. Fixes bug #332052. 2006-02-25 Richard Hult * acinclude.m4: Disable signed pointers warnings. * libgossip/gossip-account-manager.c: (gossip_account_manager_class_init), (account_manager_parse_account), (account_manager_file_save): * libgossip/gossip-chatroom-manager.c: (chatroom_manager_file_save): * src/gossip-contact-groups.c: (contact_groups_file_parse), (contact_groups_file_save): * src/gossip-status-presets.c: (status_presets_file_parse), (status_presets_file_save): Use xmlNewTextChild for user input so that we escape properly, fixes bug #332423. Also remove BAD_CAST since we don't need them anymore with the warning removed. 2006-02-25 Richard Hult * src/gossip-app.c: (app_setup), (app_show_hide_list_cb), (app_tray_button_press_cb), (app_tray_create_menu), (configure_event_idle_cb): * src/gossip-main.c: * ui/main.glade: Don't use a checkbutton in the contact list window for showing/hiding the window, since we can't even see the menu when the window is hidden... 2006-02-25 Richard Hult * libgossip/gossip-chatroom.c: (chatroom_class_init), (chatroom_init), (gossip_chatroom_get_status), (gossip_chatroom_get_status_as_str): * libgossip/gossip-chatroom.h: * protocols/jabber/gossip-jabber-chatrooms.c: (jabber_chatrooms_join_timeout_cb), (gossip_jabber_chatrooms_join), (jabber_chatrooms_join_cb), (gossip_jabber_chatrooms_cancel), (gossip_jabber_chatrooms_leave): Change the names and strings of the chatroom status enums to make them more clear. * src/gossip-chatrooms-window.c: (chatrooms_window_model_pixbuf_cell_data_func), (chatrooms_window_model_text_cell_data_func), (chatrooms_window_model_join_selected), (chatrooms_window_update_buttons), (chatrooms_window_join_clicked_cb): * src/gossip-ui-utils.c: (gossip_pixbuf_for_chatroom_status): * ui/group-chat.glade: Change the strings for chatroom status. * ui/main.glade: Remove extra space after period. 2006-02-25 Martyn Russell * libgossip/gossip-account-manager.c: * libgossip/gossip-account.c: * libgossip/gossip-chatroom-manager.c: * libgossip/gossip-chatroom.c: * libgossip/gossip-contact.c: * libgossip/gossip-session.c: * protocols/jabber/gossip-jabber-chatrooms.c: * protocols/jabber/gossip-jabber-ft-utils.c: * protocols/jabber/gossip-jabber-ft.c: * protocols/jabber/gossip-jabber-services.c: * protocols/jabber/gossip-jabber-vcard.c: * protocols/jabber/gossip-jabber.c: * protocols/jabber/gossip-transport-accounts.c: * protocols/jabber/gossip-transport-discover.c: * protocols/jabber/gossip-transport-protocol.c: * protocols/jabber/gossip-transport-register.c: * src/gossip-account-button.c: * src/gossip-account-chooser.c: * src/gossip-app.c: * src/gossip-chat-manager.c: * src/gossip-chat-view.c: * src/gossip-chat-window.c: * src/gossip-chat.c: * src/gossip-contact-groups.c: * src/gossip-contact-info-dialog.c: * src/gossip-contact-list.c: * src/gossip-edit-groups-dialog.c: * src/gossip-ft-window.c: * src/gossip-galago.c: * src/gossip-new-message-dialog.c: * src/gossip-notify.c: * src/gossip-private-chat.c: * src/gossip-sound.c: * src/gossip-spell-dialog.c: * src/gossip-spell.c: * src/gossip-status-presets.c: * src/gossip-transport-accounts-window.c: * src/gossip-transport-add-window.c: * src/gossip-vcard-dialog.c: Updated the debugging to use DEBUG_MSG and use stderr instead of stdout to write to. Also updated the quality of the debugging in places. * src/gossip-account-button.c: Fixed a bug where the disconnect signal after the error signal would not show an error for an account and only show the account id and the last error that occurred if any in the tooltip. 2006-02-24 Richard Hult * src/gossip-chat-window.c: (gossip_chat_window_class_init), (gossip_chat_window_finalize), (chat_window_create_label), (chat_window_tab_detached_cb), (gossip_chat_window_add_chat): * ui/chat.glade: Don't make the chat window visible by default, only show it after we have set the size and position, gets rid of ugly flickering. Also tweak the close button some more, it was slightly cut off. 2006-02-24 Richard Hult * src/gossip-chat-window.c: (gossip_chat_window_class_init), (chat_window_create_label): Make the close button as small as possible. 2006-02-24 Martyn Russell * src/gossip-chat-window.c: Added the 'x' back into Chat tabs due to popular demand. Fixes bug #322030 (Sjoerd Simons). 2006-02-23 Martyn Russell * libgossip/gossip-account-manager.c: * libgossip/gossip-account.[ch]: * libgossip/gossip-session.[ch]: * src/gossip-account-button.c: * src/gossip-accounts-dialog.c: * src/gossip-app.c: * ui/connect.glade: * ui/main.glade: Removed the "enabled" feature for accounts in the accounts dialog (and libgossip) and also made the Connect / Disconnect button visible on the first tab. 2006-02-23 Richard Hult * src/gossip-contact-list.c: Disable debug. * src/gossip-chat-view.c (chat_view_drag_motion): Don't scroll the text views when dragging stuff past them, fixes bug #142188. 2006-02-22 Richard Hult * src/gossip-group-chat.c: (group_chat_key_press_event_cb): * src/gossip-private-chat.c: (private_chat_input_key_press_event_cb): Fix bug #165565. 2006-02-22 Richard Hult * src/gossip-group-chat.c (gossip_group_chat_show) (group_chat_scroll_down_func): Try to fix bug #172013. 2006-02-22 Martyn Russell * src/gossip-contact-list.c: Added typing notification to the roster so you don't just see it on open chat windows. 2006-02-21 Martyn Russell * src/gossip-preferences.c: (preferences_set_string_combo_from_gconf): Fixed a crasher. 2006-02-21 Martyn Russell * libgossip/gossip-protocol.c: * libgossip/gossip-protocol.h: * protocols/jabber/gossip-jabber.c: Instead of making up the resource if the user ID is incorrect, we signal an error so the user can fix it. 2006-02-21 Richard Hult * src/gossip-preferences.c: (preferences_setup_widgets), (preferences_languages_cell_toggled_cb), (preferences_themes_setup), (preferences_set_string_combo_from_gconf), (preferences_notify_string_combo_cb), (preferences_hookup_string_combo), (preferences_string_combo_changed_cb), (gossip_preferences_show): Implement a string combo prefs type and use it for the theme combo box. * gossip.schemas.in: * src/gossip-theme-manager.c: (gossip_theme_manager_init): Change the gconf key. * ui/main.glade: Add theme combo box. 2006-02-21 Martyn Russell * libgossip/gossip-chatroom-provider.c: * libgossip/gossip-protocol.c: Corrected some typos, fixes bug #332020 (Clytie Siddall). 2006-02-21 Martyn Russell * libgossip/gossip-contact.c: Fixed return value on error to not EQUAL 0, since it means lookups are successful with NULL. * libgossip/gossip-event.[ch]: Added two new states for online/offline contacts. * libgossip/gossip-message.[ch]: Cleaned up a bit. * po/POTFILES.in: Added new file src/gossip-notify.c. * src/gossip-chat-manager.c: * src/gossip-contact-list.c: Make sure new notifications only happen when a sound is played (i.e. you don't get notifications for ALL contacts when you sign in). * src/gossip-notify.[ch]: Added notification for new messages with the message content included and a few links to get contact information or respond to that message. * src/gossip-presence-chooser.c: Don't ellipsize the menu text since most the items are cut off (especially when used from the tray icon). 2006-02-21 Martyn Russell * src/gossip-app.c: * ui/main.glade: Fixed a problem where the window would not start up in the right size as saved (this is with GtkWindow not a GnomeApp). 2006-02-21 Martyn Russell * protocols/jabber/gossip-jabber.c: Don't try to authenticate in the Jabber back end without a resource. Fixes bug #331664 in part (Fryderyk Dziarmagowski). * configure.ac: * src/Makefile.am: * src/gossip-app.c: * src/gossip-contact-list.c: * src/gossip-notify.[ch]: - Added support for libnotify. For now, when a contact comes online, the notification will popup to let you know. * src/gossip-galago.c: Cleaned up in places. * src/gossip-private-chat.c: Updated a translation. 2006-02-20 Martyn Russell * configure.ac: Depend on GTK+ 2.8 instead of 2.6 since we are using some stock items from GTK+ 2.8. Fixes bug #331707 (Brian Pepple). 2006-02-20 Martyn Russell * src/gossip-app.c: * src/gossip-ft-window.c: * src/gossip-spell.c: * ui/group-chat.glade: * ui/main.glade: Corrected some UI typos, fixes bug #331868 (Clytie Siddall). 2006-02-19 Clytie Siddall * configure.in Added vi in ALL_LINGUAS line. 2006-02-18 Martyn Russell * Release 0.10. 2006-02-18 Martyn Russell * protocols/jabber/gossip-jabber.c - Updated the presence debug statement to be more informative. - Turned off debugging ready for release. * protocols/jabber/gossip-jabber-services.c (gossip_jabber_services_get_version): - Check for NULL presence (seen from offline contacts) before calling gossip_contact_get_active_presence(). - Fixes bug #331229 (Wouter Bolsterlee). * src/gossip-account-button.[ch]: * src/gossip-app.c: - Now when adding accounts to the toolbar, they are arranged instead of just being added to the end and looking out of place. - Make sure when rearranging the toolbar (which effective removes from a container and adds back into it), the GossipAccountButton account status is set. Online accounts would be rearranged and suddenly become offline (although the connection was actually up). 2006-02-16 Martyn Russell * src/gossip-contact-list.c: - Make sure we don't try to do file transfer context menu operations on a group context menu. Fixes #331228 (Diego González). - Change the remove contact dialog so the buttons used are "Remove" and "Cancel" instead of "Yes" and "No", more HIG compliant. Fixes #331412 (Wouter Bolsterlee). 2006-02-15 Martyn Russell * protocols/jabber/gossip-jabber-chatrooms.c: * src/gossip-chat-invite.c: - Fixed a crasher when accepting an invitation from another contact to join a chat conference * src/gossip-chatrooms-window.c: - Fixed the button states depending on the selected chatroom state (so now you can't delete or edit a chatroom which is currently open). 2006-02-14 Martyn Russell * src/gossip-chatrooms-window.c: * src/gossip-new-chatroom-dialog.c: * ui/group-chat.glade: - Added a Close button to the chatrooms window. - Changed the format of the treeview listings to show the conference room id and the name (status is only shown if there is an error). - Changed the default name of a new room to just the room name. 2006-02-14 Martyn Russell * src/Makefile.am: - Fixed the header file for gossip-new-chatroom-dialog.h inclusion so make distcheck is successful. 2006-02-14 Martyn Russell * src/Makefile.am: * src/gossip-new-chatroom-dialog.[ch]: * src/gossip-chatrooms-window.[ch]: * src/gossip-edit-chatroom-dialog.[ch]: * po/POTFILES.in: * ui/group-chat.glade: - Split the gossip-chatrooms-window.[ch] into smaller modules to make it easier to maintain and I also changed the layout so we don't have a GtkNotebook here any more. - Fixes bug #330830 (Paul Van Tilburg, Mikael) - Mikael's GUI suggestions in there with Pauls bug fixed as part of that. * libgossip/gossip-contact.[ch]: * protocols/jabber/gossip-jabber-chatrooms.c: - Added gossip_contact_copy() function for our own contact and change the name so we can have a nickname of the users choice per chatroom. - Fixes bug #330828 (Paul Van Tilburg). 2006-02-12 Brian Pepple * POTFILES.in: - Removed src/gossip-chatrooms-dialog.c - Removed src/gossip-register.c - Added src/gosip-chatrooms-window.c - Fixes #330916 (Brian Pepple). 2006-02-12 Martyn Russell * libgossip/gossip-async.h: * libgossip/gossip-protocol.[ch]: * libgossip/gossip-session.[ch]: * protocols/jabber/gossip-jabber.c: * src/gossip-account-button.c: * src/gossip-new-account-window.c: - Added _register_cancel() functionality. - Implemented some additional error conditions for GossipProtocol and make use of them in the Jabber new user registration code. - Make sure we clean up properly when cancelling registration of a new user. - Update the errors returned from registration failure to be more user friendly, fixes #306321 (Joe Shaw). 2006-02-12 Martyn Russell * src/gossip-contact-list.c: - Make sure we don't react to the "contact-updated" signal in the contact list for contacts which are temporary, own contact or chatroom contacts. This should stop our own contact mysterously showing up at the top of the roster due to the changes yesterday. 2006-02-11 Martyn Russell * protocols/jabber/gossip-jabber-vcard.c: * protocols/jabber/gossip-jabber.c: - Fixed _get_vcard() to get own contact vcard if no GossipContact is supplied instead of failing miserably with no warning. 2006-02-11 Martyn Russell * protocols/jabber/gossip-jabber-ft.c: * protocols/jabber/gossip-jabber-vcard.c: * protocols/jabber/gossip-jabber.[ch]: - Fixed a bug from the work just committed where the vcard for every contact on a roster was requested. - Fixed the name used in chat from full name to fall back to names in this order: nickname, name, name part of JID. * src/gossip-new-account-window.c: * ui/connect.glade: - Make the account id (JID) entry wider in the accounts dialog so it is more likely to fit with the resource id. 2006-02-11 Martyn Russell * libgossip/gossip-protocol.[ch]: - Added support for _is_valid_username(), _get_example_username(), _get_default_server() and _get_default_port(). * libgossip/gossip-session.[ch]: - Get own nickname from the protocol not just the first one in the list of protocols for the session. * libgossip/gossip-utils.[ch]: * src/gossip-accounts-dialog.c: * src/gossip-add-contact-window.c: * ui/connect.glade: - Removed ALL notations of Jabber, specifically gossip_jid_get_() functions and port details. * protocols/jabber/gossip-jabber-chatrooms.c: * protocols/jabber/gossip-jabber-ft.c: - Fixed unnecessary warnings when cleaning up GossipJabber objects. * protocols/jabber/gossip-jabber-vcard.c: - Updated to use already available types in libgossip/gossip-async.[ch] instead of reinventing the wheel. * protocols/jabber/gossip-jabber.c: - Cleaned up in places. - Implemented new functions in libgossip/gossip-protocol.[ch]. - Added support for requesting new or unknown contact vcards for use chat windows, etc. - Added support for requesting own vcard on every connect to use in chat windows. Fixes 131290 (Michal Janeczek). * protocols/jabber/gossip-jid.[ch]: - Moved the gossip_jid_string_() functions in here from libgossip/gossip-utils.[ch]. * src/Makefile.am: * src/gossip-register.[ch]: - Removed src/gossip-register.[ch], they are no longer used. * src/gossip-account-button.[ch]: - Fixed the broken tooltip so that it now displays (some would say it is still broken due to its uglyness *cough* Richard *cough*) :P - Added API to get the account associated with this object. * src/gossip-app.c: - Fixed the GossipAccountButton toolbar so it now doesn't crash in conditions when it needs to rearrange the buttons. * src/gossip-chat-manager.[ch]: * src/gossip-chat-view.c: * src/gossip-chat.[ch]: * src/gossip-group-chat.c: * src/gossip-log.[ch]: * src/gossip-private-chat.[ch]: (gossip_private_chat_init), - Own contact is now passed when creating the private chat object, so we now have a real reference to ourselves for proper nicknames in chat windows (instead of being based on the Jabber ID). * src/gossip-new-account-window.[ch]: * ui/main.glade: - Added a page for the account name (as in the toolbar). - Added a page for progress when registering (instead of dialogs). - The server and port can now be set indepentantly of the account id which is now a FULL account id, for example, someone@somewhere.org/resource. Fixes #321569 (Brian Pepple). - Added a password entry so we don't prompt the user with another dialog for it when trying to register. * src/gossip-new-message-dialog.c: - Added a GossipAccountChooser for sending messages so it doesn't just pick the first one connected in GossipSession. 2006-01-25 Martyn Russell * src/gossip-account-button.[ch]: * src/gossip-app.c: * ui/main.glade: - Updated the account buttons so they now are divided into two groups, the first group is enabled accounts which show the icon AND the text horizontally, the second group is disabled accounts which JUST show the icon. - Use a separator to divide enabled/disabled accounts. - Fixed an implementation detail so that the items are not GtkButton's inside GtkToolItem's, they are now just GtkToggleToolButtons so now we get a drop down arrow button when accounts don't fit the width of the window, which is cool. 2006-01-20 Johan Dahlin * src/gossip-presence-chooser.c: (presence_chooser_add_item): Set ellipsize on the label in the menu aswell. 2006-01-18 Martyn Russell * protocols/jabber/gossip-jabber-chatrooms.c: - Fixed group chat join message handler to clean up properly and allow other message handlers to see presence messages. 2006-01-18 Martyn Russell * src/gossip-account-button.[ch]: - Fixed the button part so that it is a derived from a GtkToggleButton and remains toggled until the menu is hidden. This means the account button feels like the menu is part of it, not some side effect by some second rate coder :) 2006-01-18 Martyn Russell * libgossip/libgossip-marshal.list: * libgossip/gossip-chatroom-manager.[ch]: - Pass the session when creating a new object so we can add "protocol-connected" signal hooks for auto joining chat rooms. - New signal "chatroom-auto-connected" created. * libgossip/gossip-chatroom-provider.[ch]: - Added some convience functions for i18n translations on GossipChatroomJoinResult. * libgossip/gossip-chatroom.[ch]: - Added properties and functions for the chat room status. * libgossip/gossip-session.c: - Fixed not accepting NULL for one or more parameters in gossip_session_count_accounts(). * protocols/jabber/gossip-jabber.c: * protocols/jabber/gossip-jabber-chatrooms.[ch]: - Fixed a whole bunch of stuff here, making sure that the callback is called in every error condition so the caller gets some response and cleaning up properly. * src/Makefile.am: * src/gossip-chat-window.[ch]: - Added in favour of gossip-chatrooms-dialog.[ch] * src/gossip-chat-dialog.[ch]: - Removed. * src/gossip-app.c: - Added code to handle auto-join signal from the chatroom manager. * src/gossip-account-button.c: * src/gossip-account-chooser.c: * src/gossip-accounts-dialog.c: * src/gossip-add-contact-window.c: * src/gossip-chat-view.c: * src/gossip-chat.c: * src/gossip-chatrooms-dialog.c: * src/gossip-contact-info-dialog.c: * src/gossip-contact-list.c: * src/gossip-group-chat.c: * src/gossip-new-message-dialog.c: * src/gossip-presence-chooser.c: * src/gossip-private-chat.c: * src/gossip-ui-utils.[ch]: - Added function to get pixbuf from GossipChatroom state. - Changed the function stub to not include _ui_utils because functions were getting too long. * src/gossip-stock.[ch]: - Added GOSSIP_STOCK_GROUP_MESSAGE for the group chat icon, now also used in the join group chat window. * ui/group-chat.glade: - New and improved :) chat room window. - Fixes bug #325841 (Martyn, Ross Burton). 2006-01-14 Chao-Hsiung Liao * configure.ac: Added "zh_HK" to ALL_LINGUAS. 2006-01-08 Martyn Russell * src/gossip-group-chat.c (group_chat_get_status_pixbuf): - Fixed static gossip-group-message.png lookup and made it a stock item since it is used in a couple of places. 2006-01-08 Martyn Russell * libgossip/gossip-chatroom-manager.c: (gossip_chatroom_manager_get_chatrooms): - Fixed variable initialisation error. 2006-01-08 Martyn Russell * libgossip/gossip-account.c: * libgossip/gossip-chatroom-manager.[ch]: * libgossip/gossip-chatroom.[ch]: * libgossip/gossip-chatroom.dtd: * src/gossip-app.c: * src/gossip-chatrooms-dialog.c: * ui/group-chat.glade: - Every chat room is now associated with an account instead of being available across ALL accounts. This is the first step towards auto connecting group chats on startup, next is a GUI update. 2006-01-07 Martyn Russell * src/gossip-group-chat.c: (group_chat_finalize): - Make sure we clean up all signals. - Fixes bug #325740. 2006-01-02 Richard Hult * src/gossip-chat.c: (gossip_chat_should_highlight_nick): Fix crash. 2005-12-31 Brian Pepple * help/C/gossip.xml: - Updated help documentation to reflect the latest GUI changes. - Fixes bug #325378 (Brian Pepple). 2005-12-30 Martyn Russell * src/gossip-app.c: * ui/main.glade: - Made the show/hide contact list a toggle based check menu item in the notification area. - Added the same check menu item into the main menu (Chat->Show Contact List) so it is configurable without the need of a notification area. - Fixes bug #308041 (Radomir Dopieralski). 2005-12-30 Martyn Russell * libgossip/gossip-session.c: - Only send "composing" notification from the account a contact is attached to instead of from every connected account. - Fixes bug #321801 (Ross Burton). 2005-12-30 Martyn Russell * libgossip/gossip-presence.c: - Return NULL resource instead of "" on error or if not set. * protocols/jabber/gossip-jabber-ft.c: - Make sure NULL resource is handled. * protocols/jabber/gossip-jabber.c: - When creating GossipContact's include the resource in the ID. * src/gossip-chat-manager.c: * src/gossip-group-chat.c: * src/gossip-private-chat.[ch]: - Cleaned up the code and fixed some memory leaks along the way. - Handle private chats from group chat roster. - Fixes bug #319713 (Ross Burton). 2005-12-29 Martyn Russell * src/gossip-vcard-dialog.c: - Make sure we look up the first vcard selected in the GossipAccountChooser. - Fixes bug #325258 (Brian Pepple). 2005-12-29 Martyn Russell * src/gossip-contact-info-dialog.[ch]: * ui/main.glade: - Reworked the code here, no need for the contact info dialog to be a type in its own right as it was since nothing outside uses it. - Added resource states into the contact info dialog. - Fixes bug #141225 (jon@tgpsolutions.com). * src/gossip-chat-window.c: * src/gossip-contact-list.c - Updated API to call _show() instead of _new(). 2005-12-29 Martyn Russell * libgossip/gossip-chatroom-provider.[ch]: * protocols/jabber/gossip-jabber-chatrooms.[ch]: * protocols/jabber/gossip-jabber.c: - Changed _set_title to _change_topic. * src/gossip-group-chat.c: - Hook up the "/topic" command with the _change_topic function. * NEWS: - Added all the bugs fixes and all the major changes for the next release that we do. 2005-12-29 Martyn Russell * src/gossip-chat-view.c: * src/gossip-chat.[ch]: * src/gossip-group-chat.c: * src/gossip-private-chat.c: - Made gossip_chat_should_play_sound() public so it can be used by private chat and group chat modules. - Made gossip_chat_should_highlight_nick() public so it can be used from inside the gossip-chat-view.c and from the group chat module. - Play sound when our nick is mentioned in group chat conversations. 2005-12-18 Richard Hult * Makefile.am: * omf.make: Fix build and distcheck. 2005-12-04 Martyn Russell * src/gossip-new-message-dialog.c - If there is only one contact after the filter, select it. - Chat with contact on "row-activated" signal from treeview. 2005-12-04 Martyn Russell * src/Makefile.am: * src/gossip-app.c: * src/gossip-contact-list.c: * src/gossip-new-message-dialog.[ch]: * ui/main.glade: - Fixed a crasher when using the combo box in the new message dialog which was in GossipApp and has now been moved into gossip-new-message-dialog.[ch]. - The new message dialog is a new implementation which lists all your contacts and filters based on the text you put into the entry box. This can be used to list everyone on "jabber.org" OR everyone with the name "Martyn". - Fixes bug #322775 (Brian Pepple). * src/gossip-app.c: * src/gossip-contact-list.c: - Cleaned up in places. 2005-12-03 Martyn Russell * src/gossip-subscription-dialog.c: * ui/main.glade: - Allow the name and group to be customisable when receiving a subscription request from another contact instead of using the VCard name and no group. - Fixes bug #323099 (Maciej Katafiasz). 2005-12-01 Martyn Russell * src/gossip-chatrooms-dialog.c (chatrooms_dialog_chatrooms_setup): - Remember to set the entry details when setting up the chatrooms for the first time. This was broken meaning you would have to select a room before it would fill the details in. * src/gossip-galago.c (galago_contact_removed_cb): - Added test to avoid unnecessary warnings. * protocols/jabber/gossip-jabber-ft.c: - Fixed using g_object_[un]ref on an LmConnection, this was causing GLib-GObject-CRITICAL messages on startup. 2005-11-29 Martyn Russell * src/gossip-transport-accounts-window.c: - Fixed translation bug, now ngettext is used. - Patch by Gabor Kelemen, fixes #305103 (Gabor Kelemen). 2005-11-29 Martyn Russell * configure.ac: - Fixed build when including dbus and galago, patch by Brian Pepple, this fixes bug #322712 (Brian Pepple). 2005-11-29 Martyn Russell * src/gossip-account-chooser.[ch]: - More specific about what we include (i.e. not all of GTK). 2005-11-29 Martyn Russell * libgossip/gossip-chatroom-manager.c: * libgossip/gossip-chatroom.c: * protocols/jabber/gossip-jabber-ft-utils.c: * protocols/jabber/gossip-jabber-ft.c: * protocols/jabber/gossip-jabber.c: * src/gossip-account-button.c: * src/gossip-contact-list.c: * src/gossip-ft-window.c: - Disabled debugging. * src/Makefile.am: * src/gossip-add-contact-window.c: * src/gossip-chatrooms-dialog.c: * src/gossip-vcard-dialog.c: * ui/group-chat.glade: * ui/main.glade: - Added GossipAccountChooser. - The GossipAccountChooser is used when adding contacts, changing personal information and when joining a chatroom, it is derived from a GtkComboBox but handles accounts connecting/disconnecting, name changes and being added or removed all dynamically. * src/gossip-galago.c: - Fixed some memory leaks. * libgossip/gossip-session.[ch]: * src/gossip-app.c: - Fixed gossip_session_count_accounts() API. * src/gossip-chatrooms-dialog.c: - Don't show the separator when there is just the "Custom" entry. - Add the separator entry when you add the first chatroom. - Cleaned up some other minor usability issues. * libgossip/gossip-chatroom.dtd: - Fixed so you can have NO chatrooms and it is valid. 2005-11-27 Martyn Russell * libgossip/gossip-event.h: - Added File Transfer event type. * libgossip/Makefile.am: * libgossip/gossip-ft.[ch]: * libgossip/gossip-ft-provider.[ch]: - Added. * libgossip/gossip-protocol.[ch]: * libgossip/gossip-session.[ch]: * libgossip/libgossip-marshal.list: - Added file transfer initiation API. * protocols/jabber/gossip-jabber-ft-utils.[ch]: * protocols/jabber/gossip-jabber-ft.[ch]: - Added. * protocols/jabber/gossip-jabber-private.h: * protocols/jabber/gossip-jabber.[ch]: - Added file transfer infrastructure (like the chatroom provider work). - Use the FULL JID instead of a JID without the resource. We needed this in so many places (after using it for a while it didn't seem to break anything :). * protocols/jabber/gossip-jabber-chatrooms.c - Now using a ref from own contact on the GossipJabber object instead of creating a new GossipContact. * src/gossip-contact-list.c: - Added context menu item for sending files (currently not visible since this is not available yet). * src/Makefile.am: * src/gossip-ft-window.[ch]: - Added, this handles inbound requests so far and shows a dialog like the subscription dialog and so far you can only Deny requests. * src/gossip-app.c: * src/gossip-subscription-dialog.[ch]: - Added, this code has been moved out of gossip-app. * ui/Makefile.am: * ui/file-transfer.glade: * ui/file-transfer.gladep: - Added for file transfer windows/dialogs. * ui/main.glade: - Use "ID" instead of "Jabber ID" on the subscription dialog. - Removed the transport item on the main "Chat" menu. * ALL: - This adds very basic file transfer initiation support. - That means that you will get a dialog pop up when someone tries to send you a file, and you have the chance to deny it ONLY. - At present, more work is needed to do the actual file transfer back end (SOCKS) work. - You can follow the progress on this by watching bug #141569. 2005-11-27 Martyn Russell * libgossip/gossip-account.c: * libgossip/gossip-chatroom.c: * libgossip/gossip-session.c: - Fixed account and chatroom code to use a unique ID for hash comparison since using "name" doesn't work because it can change and isn't unique. - Fixed bug where you connect, change an account name, then can't do anything with that account (like disconnect) because the name changed and the hash tables were not up to date. * src/gossip-accounts-dialog.c: * src/gossip-add-contact-window.c: * src/gossip-app.c: * src/gossip-contact-list.c: * src/gossip-group-chat.c: * src/gossip-status-presets-dialog.c: * src/gossip-transport-accounts-window.c: * src/gossip-vcard-dialog.c: - Cleaned up my misuse of gtk_tree_model_get () and gtk_list/tree_store_set () API. A lot of GObjects were being referenced as I used _set() and not being unreferenced every time I did _get(). - Fixed some other memory leaks along the way, so if anything crashes, it is probably my fault :) 2005-11-26 Martyn Russell * src/gossip-chatrooms-dialog.c: * protocols/jabber/gossip-jabber-chatrooms.c: - Fixed a crasher by making sure things are properly referenced and the join a chatroom loudmouth handler is properly cleaned up. 2005-11-24 Martyn Russell * libgossip/gossip-account-manager.c: - Switched from hash tables to lists, this is because the hash table uses name which changes and cocks everything up (this is not finished, the hash table in GossipSession needs to be updated to work this way too). * libgossip/Makefile.am: * libgossip/gossip-chatroom-manager.[ch]: - Added. * libgossip/gossip-chatroom-provider.h: - Move the GossipChatroomId to the GossipChatroom module. * libgossip/Makefile.am: * libgossip/gossip-chatroom.[ch]: * libgossip/gossip-chatroom.dtd: - This replaces the old back end (gconf) with the same method we are using everywhere else (XML files). - THIS DOES MEAN GROUP CHATS WILL NEED TO BE SET UP AGAIN! * src/gossip-app.[ch]: - Added chatroom manager object to the stack of other managers. * src/gossip-chatrooms-dialog.[ch]: - Use gossip_chatroom_() and gossip_chatroom_manager_() APIs. - Make the code more efficient to avoid unnecessary disk writes. - Fix some issues and probably created a whole load more :) * src/Makefile.am: * src/gossip-edit-favorite-dialog.[ch]: * src/gossip-favorite.[ch]: * src/gossip-join-dialog.[ch]: - Removed. * ui/group-chat.glade: - An expander is now used to hide the chatroom details unless you are configuring a custom room. 2005-11-23 Richard Hult * src/Makefile.am: * src/gossip-theme-manager.[ch]: New files that handles theme switching. Just the hardcoded themes for now. * src/gossip-chat-view.c: Move the themes from here to the manager. 2005-11-22 Richard Hult * src/gossip-app.c: * src/gossip-app.h: Setup a gconf_client here and add a getter for it. * gossip.schemas.in: * src/gossip-chat-view.c: * src/gossip-chat-view.h: Add support for using different sets of tags in the text view, and clean up the text insertion code. * src/gossip-group-chat.c: * src/gossip-private-chat.c: Adapt to the changes in the chat view above. * src/gossip-main.c: (setup_default_window_icon): Set one default icon, not a list. (main): Don't setup the gconf client here. * src/gossip-about.c: * src/gossip-chat.c: * src/gossip-preferences.c: * src/gossip-sound.c: * src/gossip-ui-utils.c: Cleanup: use the gconf client in GossipApp instead of poking at an external one. 2005-11-22 Richard Hult * protocols/jabber/gossip-jabber.c (jabber_set_proxy): Don't poke at the gconf_client from the app here, create our own. * ui/pixmaps/Makefile.am (imagedir): Don't install the smiley images now that we use the ones from the icon theme. 2005-11-18 Martyn Russell * po/POTFILES.in: * src/Makefile.am: * src/gossip-add-contact-window.[ch]: * src/gossip-add-contact.[ch]: - Renamed module to be consistent. * src/gossip-app.c: * src/gossip-accounts-dialog.[ch]: * src/gossip-add-contact-window.[ch]: * src/gossip-chat-window.c: * src/gossip-new-account-window.[ch]: * src/gossip-vcard-dialog.[ch]: * ui/main.glade: - Fixed usability so that transient parents are used and windows are positioned centered on their parents (patch by Christian Neumair). - Fixes bug 321538 (Christian Neumair, Martyn Russell). 2005-11-13 Martyn Russell * configure.ac: - Added Scrollkeeper dependency since we need it to build the help (patch by Brian Pepple). * help/C/gossip.xml: - Use entities for app name, etc. - Fix some small errors (patch by Keywan Najafi Tonekaboni). 2005-11-12 Martyn Russell * Makefile.am: * configure.ac: * help/.cvsignore: * help/C/.cvsignore: * help/C/Makefile.am: * help/C/figures/gossip_first_start_window.png: * help/C/figures/gossip_roster.png: * help/C/gossip-C.omf: * help/C/gossip.xml: * help/C/legal.xml: * help/Makefile.am: * src/gossip-app.c: * ui/main.glade: * xmldocs.make: * omf.make: - Add Help section using Gnome Help (patch from Brian Pepple). - Fixes bug #155140 (Brian Pepple). 2005-11-05 Martyn Russell * libgossip/gossip-session.[ch]: * src/gossip-account-button.c: * src/gossip-app.c: - Used a cleaner API to return the count of accounts enabled/disable and connected/disconnected. - Used cleaner signaling so instead of "protocol-connecting" with a TRUE or FALSE, now we have another signal "protocol-disconnecting". * ui/group-chat.glade: - Made the treeview minimum width smaller since Richard said it was too big. Need a better solution for this since for I can see 1/2 the contact's names and for others it is fine depending on the font sizes, etc. 2005-11-04 Mikael Hallendal * src/gossip-app.[ch]: (gossip_app_net_down), (gossip_app_net_up): - Added to test new D-BUS API for pre-net-down and post-net-up. - Saves a list of online accounts when pre-net-down is received and restores them when post-net-up is received. * src/gossip-dbus.[ch]: (dbus_handle_pre_net_down), (dbus_handle_post_net_up), (dbus_message_func): - Added methods for signalling from outside that the net is about to go down and that it's online again. 2005-11-03 Martyn Russell * src/gossip-chat-view.c: (chat_view_setup_tags): - Trying another variation of the chat colours. 2005-11-02 Martyn Russell * src/gossip-ui-utils.[ch]: - Added gossip_ui_utils_get_pixbuf_from_smiley() to get the theme smileys instead of using our own packaged up smileys. * src/gossip-chat-view.[ch]: - Added a whole bunch of new smileys which we use from the installed theme, some of these include kiss, confused, angel, oooh, lookaway, blush, silly and sick. * ui/group-chat.glade: - Made the roster treeview a minimum width which works better. 2005-11-02 Ross Burton * configure.ac: Rename --enable-galago to --with-galago. * src/gossip-galago.c: Fix presence handling. 2005-11-01 Martyn Russell * ui/connect.glade: - Some tweaks to the accounts dialog sizing. 2005-11-01 Martyn Russell * src/gossip-app.c: - Fixed the widgets that are updated by connection so you can still do things to accounts that are not enabled but ARE online. We have still maintained the fact that the connect and disconnect menu items will only operate on enabled accounts. * src/gossip-galago.[ch]: - Updated init function so we pass GossipSession to it like we do the dbus module. 2005-11-01 Martyn Russell * configure.ac: * src/gossip-app.c: * src/gossip-galago.[ch]: - Added support for Galago into Gossip (patch by Ross). - Tested with "libgalago/tests/get-presence jabber " - Fixes bug #316925 (Ross Burton). * libgossip/gossip-session.c: * src/gossip-account-button.c: * src/gossip-contact-list.c: * src/gossip-sound.c: - Disabled debugging. 2005-11-01 Martyn Russell * libgossip/gossip-session.[ch]: - Added _get_connected_time () API. * src/gossip-accounts-dialog.c: - Don't include resource label in size group for connection labels, server and port. * src/gossip-app.c: * src/gossip-contact-list.c: * src/gossip-sound.[ch]: - Don't play online/offline sounds within 10 seconds of the account becoming connected. - Disable sound when showing/hiding offline contacts. - Fixes bug #314848. 2005-11-01 Martyn Russell * ui/connect.glade: - Moved the SSL checkbutton to the "Connection" tab in the Accounts dialog. * ui/group-chat.glade: - Removed old edit favourites dialog. 2005-11-01 Martyn Russell * libgossip/gossip-account-manager.c: * libgossip/gossip-account.[ch]: * libgossip/gossip-account.dtd: - Implemented "Enabled" property. - Added "account-enabled" signal to the manager. - Removed the "account-changed" signal from the manager. * libgossip/gossip-protocol.[ch]: * libgossip/gossip-session.[ch]: * libgossip/libgossip-marshal.list: - Include GossipAccount in protocol-error signal. - More powerfull search for accounts dis/connected and enabled. - Watch account manager for account_added|removed signals for updates. - Clean up logic for dis/connecting accounts. - Emit "protocol-connecting" signal (with FALSE) when we disconnect. - Removed a lot of unnecessary GOSSIP_IS_PROTOCOL checks in GossipSession. * protocols/jabber/gossip-jabber.c: - Added a connect timeout to get around a Loudmouth bug. If you try to connect to port 5222 using SSL, it fails but doesn't error it back up the stack. - Don't error after we have requested to disconnect (say on a timeout). * src/Makefile.am: * src/gossip-account-info-dialog.[ch]: * src/gossip-accounts-window.[ch]: - Removed. * src/Makefile.am: * src/gossip-accounts-dialog.[ch]: - Added. * src/gossip-ui-utils.[ch]: * src/gossip-account-button.c: - Update tooltips and include connection state and last error so we no longer present the user with an error dialog. - Show a "Stop Connecting" option when in a connecting state. - For errors, compose the error stock image over the theme protocol image (in this case always Jabber). * src/gossip-app.c: - Update the dis/connected widgets on "account-enabled" signal. - Use the new gossip_session_count_accounts() API to only show connect when there are *enabled* accounts to connect and only show disconnect when there are *enabled* accounts to disconnect. - Disable the error dialog on "protocol-error" signals. * src/gossip-new-account-window.c: - Don't allow the back button when on the first page. - Don't allow the back button when it is not a first time assistant (which would show the Welcome to Gossip page). - Set focus to the server GtkComboBoxEntry on "prepare" signal. * src/gossip-spell.c: - Make sure we return a translated string in _get_language_name(). * src/gossip-accounts-dialog.[ch]: * ui/connect.glade: - Reworked the accounts dialog to show a list and a notebook so it is all configurable from one place. 2005-10-31 Richard Hult * src/gossip-presence-chooser.c: (gossip_presence_chooser_create_menu): Allow 5 presets per status. * src/gossip-status-presets.c: Save 15 presets each. * ui/main.glade: Make the checkbutton for saving status presets disabled by default again. 2005-10-18 Richard Hult * ui/main.glade: Make "add to list" enabled by default. 2005-10-17 Richard Hult * ui/connect.glade: Change hscroll policy back to never now that the columns aren't resizable. * ui/main.glade: Add "add to list" checkbutton for the status message dialog. * src/gossip-presence-chooser.c (presence_chooser_dialog_response_cb) (presence_chooser_show_dialog): Only save if the user wants to. 2005-10-16 Pawan Chitrakar * configure.ac: Added ne in ALL_LINGUAS 2005-10-15 Martyn Russell * src/gossip-add-contact.c: * src/gossip-join-dialog.c: * src/gossip-vcard-dialog.c: * src/gossip-account-button.c: * src/gossip-accounts-window.c - Use gossip-ui-utils functions to get the IM theme Pixbuf instead of repeating the same code. * src/gossip-accounts-window.c - Sort names. - Remove clickable sortable columns, clutters the UI. * src/gossip-edit-groups-dialog.c: - Sort names. * ui/main.glade: * src/gossip-vcard-dialog.c (gossip_vcard_dialog_show): - Added some polish so we inform the user when details are saved with multiple accounts. - Use 'Close' instead of Cancel with multiple accounts. * src/gossip-ui-utils.[ch]: - Use new code Richard worked on in here. * ui/connect.glade: - Added correct spacing for new VButtonBox. 2005-10-15 Richard Hult * ui/connect.glade: Make the hscroll policy automatic again. * src/gossip-accounts-window.c (accounts_window_model_add_columns): Don't make the columns resizable. * src/gossip-spell.c: Turn debugging off. * src/gossip-log.c (gossip_log_show, log_show, our_mkstemps): Make the logs have an .html extension to get the mime type detection working better and also make the UI look less locked-up while transforming. * ui/connect.glade: * src/gossip-accounts-window.c: Don't edit pixbufs returned from the icon theme, plug leak. Only saturate and pixelate when needed. Don't use the label contents to decide when to connect/disconnect. Add a column for the default property and remove the button for that. Make the account name ellipsized, use a button box for the buttons. 2005-10-15 Martyn Russell * libgossip/gossip-session.c: - Added signals for "connecting" and "protocol-connecting". * src/gossip-account-button.c: (gossip_account_button_init), - Moved the code that was setting the status based on connected/disconnected signals to here. - Added visual effect of flashing when we receive the "connecting" signal. * ui/main.glade: * src/gossip-app.c: - Use the GTK stock images for connect/disconnect. - Only connect accounts which are set to autoconnect and NOT all accounts when clicking Chat->Connect. 2005-10-10 Martyn Russell * libgossip/gossip-session.c: * protocols/jabber/gossip-jabber.c: * src/gossip-private-chat.c: - Fixed composing being stuck, was passing GossipContact which is not needed by the GossipChat "composing" signal. - Turned off debugging. - Only signal "composing" if the contact is associated with the GossipPrivateChat. 2005-10-09 Martyn Russell * libgossip/gossip-protocol.c: * libgossip/gossip-session.c: - Make sure composing event is traversed up/down the stack. * protocols/jabber/gossip-jabber-utils.[ch]: (gossip_jabber_get_message_is_event), (gossip_jabber_get_message_is_composing): - Added to identify jabber event notifications. * protocols/jabber/gossip-jabber.c: - Added composing feature back. - Don't send a new-message event on jabber x events. - Fixes bug #316172 (Ross Burton). * src/gossip-private-chat.c: - Clean up composing code and removed unused functions. 2005-09-27 Martyn Russell * src/gossip-app.c: * src/gossip-account-button.[ch]: * ui/main.glade: - Added new widget (based on GtkButton) to deal with accounts and their menus. - Use a GtkToolbar instead of that monstrosity GtkMenu I did on the w/e, I think it looks and works much better. - Simplified the code in gossip-app. * libgossip/gossip-account.[ch]: - Removed gossip_account_compare() since it did the same as _equals(), plus fixed _equals() to return a boolean not a guint, this is why using it in hash tables was failing. 2005-09-25 Martyn Russell * src/gossip-app.c: * src/gossip-contact-list.c: * src/gossip-group-chat.c: * src/gossip-presence-chooser.c: * src/gossip-private-chat.c: * src/gossip-ui-utils.c: * src/gossip-ui-utils.h: * ui/main.glade: - Moved common code to get the protocol online/offline pixbuf into the ui-utils file. - Cleaned up the ui-utils API too. - Applied parts of a patch by Tommi Komulainen to use a menu for each connection shown at the top of the main window (reworked it to use a GtkMenu instead of popping up a menu from a normal button). There is no longer a tooltip, so some work is still needed to be able to identify the account without using the menu. - Fixes bug #317107 (Tommi Komulainen). 2005-09-24 Martyn Russell * src/gossip-app.c (app_main_window_key_press_event_cb): - Added shortcut (Escape) to hide main window. - Fixes bug #135472 (Edd Dumbill). 2005-09-24 Martyn Russell * src/gossip-ui-utils.c: - Removed the gossip_option_menu_ functions which are no longer used in Gossip. - Fixed bug where double clicking on a contact on the roster would show a new chat window but would not present focus to the chat window. This happens if there is already a window and the contact is a second, third, etc tab being added. - Fixes bug #316340 (Keywan Najafi Tonekaboni) 2005-09-23 Ross Burton * configure.ac: * src/Makefile.am: * src/gossip-chat-window.c: Re-apply urgency hint patch from the Gossip 0.8 branch. 2005-09-22 Ross Burton * libgossip/gossip-session.c: - Added "presence-changed" signal needed for Galago work. - Fixes bug #316917 (Ross Burton). 2005-09-18 Tommi Komulainen * configure.ac: * libgossip/Makefile.am: * src/Makefile.am: - Use `pkg-config` instead of $(shell pkg-config ...) to stop autoreconf complaining. - Fixes bug #316625 (Tommi Komulainen). 2005-09-18 Martyn Russell * src/gossip-accounts-window.c: * src/gossip-add-contact.c: * src/gossip-app.c: * src/gossip-join-dialog.c: * src/gossip-vcard-dialog.c: - As requested by Tommi Komulainen, improved on the pixelation/saturation for showing online/offline accounts in Gossip. This was mainly to have a clearer distinction between the icons and now things look much better. - Fixes bug #316621 (Tommi Komulainen). 2005-09-12 Martyn Russell * gossip.schemas.in: - Added list of spell checker languages used. * src/gossip-chat.c: * src/gossip-spell.[ch]: - Use multiple languages instead of a singular language to check spelling when chatting. * ui/main.glade: * src/gossip-preferences.c: - Updated to show a list of languages install on the machine which the user will choose to check against when chatting. 2005-09-11 Richard Hult * src/gossip-transport-accounts-window.c: * src/gossip-transport-add-window.c: * ui/main.glade: * ui/transports.glade: Split out unused transport stuff to their own glade files so translators don't need to deal with them now. 2005-09-11 Richard Hult * src/gossip-presence-chooser.c: (presence_chooser_show_dialog), (gossip_presence_chooser_create_menu): Get all presets for the completion entry, only the most recent 4 for the menu. * src/gossip-status-presets.c: (gossip_status_presets_get_all), (status_presets_file_parse), (status_presets_file_save), (gossip_status_presets_get), (gossip_status_presets_set_last): * src/gossip-status-presets.h: Add an argument for specifying how many presets to get, and allow saving 10 per type instead of 4. 2005-09-06 Martyn Russell * src/gossip-app.c (app_setup): - Added dbus init, removed this from libgossip. - Fixes bug #315181 (Brian Pepple). 2005-09-06 Richard Hult * src/gossip-app.c (app_accounts_set_status): Unref the icon. * src/Makefile.am: * src/eggtreemodelfilter.c: * src/eggtreemodelfilter.h: * src/eel-ellipsizing-label.c: * src/eel-ellipsizing-label.h: Remove old unused files. * src/eggtrayicon.c: * src/eggtrayicon.h: Update from libegg. * src/gossip-app.c: (app_setup), (app_accounts_cb): * ui/main.glade: Remove the status presets dialog. We can add it back if needed, but it needs some work. 2005-09-02 Richard Hult * src/Makefile.am: Add presence chooser. * src/gossip-app.c: Remove lots of code that handles the presence chooser button and put it into its own class. Clean up some long lines and similar. * src/gossip-status-presets.c: Rework a bit to better fit the new presence chooser. Remove dups, put the last used one at the top. * src/gossip-status-presets.dtd: Don't require statuses to be saved, don't use a name property. * ui/main.glade: Change to use the new presence chooser. 2005-09-01 Richard Hult * src/gossip-chat-window.c: (chat_window_invite_menu_setup): Get rid of critical warning. * src/gossip-chat-view.c: (gossip_chat_view_init): Wrap on words and chars, instead of just words. * src/gossip-chat.c: (gossip_chat_init): Likewise. * ui/group-chat.glade: * src/gossip-group-chat.c: (group_chat_create_gui), (group_chat_set_show_contacts): Try to improve the input entry and its interaction with the contact list. Now the window doesn't grow when you type a lot of text. - Fixes bug #153110 (Sven Salzwedel). (group_chat_get_tooltip): Use the name as temporary tooltip instead of a hardcoded English string. (group_chat_setup_tree): Don't use two columns, use one and pack the icon and text into it, makes things look better and use less space. 2005-08-29 Richard Hult * libgossip/gossip-account-manager.c: * src/gossip-contact-groups.c: * src/gossip-status-presets.c: Gah, use BAD_CAST. 2005-08-27 Richard Hult * configure.ac: Set the libml requirement back to 2.6.16. * libgossip/gossip-account-manager.c: (account_manager_get_all), (account_manager_parse_account), (account_manager_file_parse): Use the regular DOM API instead of xmlReader to read the accounts XML. Simpplify a bit and do DTD validation and parsing at the same time. * src/gossip-contact-groups.c: (gossip_contact_groups_get_all), (contact_groups_file_parse): As above. * src/gossip-status-presets.c: (gossip_status_presets_get_all), (status_presets_file_parse): As above. 2005-08-27 Mikael Hallendal * gossip.schemas.in: * src/gossip-chat-window.c: (gossip_chat_window_get_default): - Modified to give a new window or not depending on the new setting. * src/gossip-chat-window.h: * src/gossip-chat.c: (gossip_chat_present): * src/gossip-preferences.c: (preferences_setup_widgets), (gossip_preferences_show): * ui/main.glade: - Added setting on whether to always open chats in new window or not. 2005-08-24 Martyn Russell * protocols/jabber/gossip-jabber-helper.[ch]: - Removed. * protocols/jabber/gossip-jabber-services.[ch]: * protocols/jabber/gossip-jabber-utils.[ch]: * protocols/jabber/gossip-jabber-vcard.[ch]: - Added. * libgossip/gossip-async.h: * libgossip/gossip-protocol.[ch]: * libgossip/gossip-session.c: * src/gossip-app.c: - Small updates to the API. * protocols/jabber/gossip-jabber.[ch]: * protocols/jabber/gossip-transport-accounts.c: - Cleaned up the code and things are grouped better . 2005-08-24 Martyn Russell * libgossip/Makefile.am (EXTRA_DIST): - Added dtd_DATA to EXTRA_DIST (Paul van Tilburg). 2005-08-24 Martyn Russell * libgossip/gossip-session.[ch]: - Added gossip_session_count_connected() and gossip_session_count_disconnected(). * src/gossip-app.c (app_connection_items_update): - Still show connect and disconnect menu items if there are accounts left to connect or disconnect. - Don't disconnect before we connect. 2005-08-24 Martyn Russell * ui/main.glade: * src/gossip-new-account-window.c: * protocols/jabber/gossip-jabber.c: - Added some SSL debugging. - Fixed not registering with SSL in Jabber back end. - Added use SSL / use proxy options into new account wizard (or welcome druid). - Fixes bug #165404 (Mikael). - Fixes bug #117856 (skadz@mindstorm.com). * libgossip/gossip-session.c: - Added some checks before sending presence and messages to offline accounts, stops expected warnings. 2005-08-23 Martyn Russell * ui/connect.glade: * src/gossip-accounts-window.c: - You can now connect/disconnect individule accounts. - You can now edit the auto connect property in this window. - Account state is followed. * src/gossip-add-contact.c: * src/gossip-app.c: * src/gossip-join-dialog.c: * src/gossip-vcard-dialog.c: - Account state is reflected and you can not select offline accounts now. - Used bigger size icon (GTK_ICON_SIZE_BUTTON), instead of MENU. * libgossip/gossip-session.[ch]: - gossip_session_connect() and gossip_session_disconnect() now take an account if you don't want to connect or disconnect ALL accounts. 2005-08-23 Martyn Russell * src/gossip-notebook.c (button_release_cb): - Fixed drag to detach a tab, spotted by Richard. 2005-08-23 Martyn Russell * src/gossip-app.c: - Make use of gdk_pixbuf_saturate_and_pixelate() as suggested by Ross to show the account protocol image in black and white or colour. - Clicking on the accounts now shows the accounts window. * src/gossip-accounts-window.c (accounts_window_model_add_columns): - Removed some unused code. 2005-08-22 Richard Hult * src/gossip-app.c (app_connection_items_setup): Fix runtime warning. 2005-08-22 Martyn Russell * ui/main.glade: * src/gossip-app.c: - If we have more than 2 accounts configured, show an online/offline status in the top righ of the window so we know which ones are connected. - Add/Remove accounts based on account-manager signals. * protocols/jabber/gossip-jabber.c: * libgossip/gossip-session.[ch]: * libgossip/gossip-protocol.[ch]: - Return the GossipAccount with connected/disconnected signals. * libgossip/gossip-account.[ch]: * libgossip/gossip-account-manager.c (gossip_account_manager_get_default): - Fixed getting the default account. * ui/connect.glade: - We can now set the default account (window doesn't update yet). 2005-08-22 Martyn Russell * libgossip/Makefile.am: * libgossip/gossip-account.[ch]: * libgossip/gossip-account-manager.[ch]: * libgossip/gossip-session.[ch]: - Removed all the file parsing and multiple account handling out and put it into gossip-account-manager. - Linked the account manager to the session. * src/gossip-account-info-dialog.c * src/gossip-accounts-window.c: * src/gossip-add-contact.c: * src/gossip-app.[ch]: * src/gossip-main.c: * src/gossip-new-account-window.c: * src/gossip-register.c: * src/gossip-ui-utils.c: - Changes to reflect account work. * ui/connect.glade: * ui/main.glade: - Cleaned up some duplicate mnemonics. - Made use of CAN_DEFAULT. - Added close button to accounts window. 2005-08-19 Martyn Russell * protocols/jabber/gossip-jabber-helper.c (gossip_jabber_helper_get_vcard): - Clean up loose reference. * src/gossip-app.c: * src/gossip-chat-window.c: * src/gossip-sound.c: * libgossip/gossip-session.[ch]: - If GossipAccount is supplied, get connected status of that, if not get overall connected status based on connection logged in count. * src/gossip-vcard-dialog.c (vcard_dialog_setup_accounts): - Set active first connected account. - Disable any disconnected accounts. * ui/connect.glade: - Better positioning for accounts window/dialog. 2005-08-19 Martyn Russell * src/gossip-account-info-dialog.[ch]: * src/gossip-accounts-window.[ch]: - Added to handle multiple accounts. - Fixes bug #165519 (Martyn). * src/gossip-accounts-dialog.[ch]: * src/gossip-startup-druid.[ch]: - Removed. * src/gossip-new-account-window.[ch]: - Added to replace gossip-startup-druid since we use the same wizard when adding new accounts now (except we skip the welcome page). * ui/connect.glade: * ui/main.glade: - Reflect new files gossip-account-info-dialog and gossip-accounts-window. - Fixes bug #314140 (Adam Weinberger). * src/gossip-app.c: * src/gossip-main.c: * libgossip/gossip-session.c: - Only start accounts on startup if they have the "auto_connect" flag is set. * src/gossip-register.c: * src/gossip-ui-utils.c: * libgossip/gossip-account.[ch]: - Improved API to be able to add/remove accounts. - Fixed xml parser to read in the auto_connect flag properly. * protocols/jabber/gossip-jabber-chatrooms.c: - Added a lot of checks before dereferencing pointers. * protocols/jabber/gossip-jid.c (gossip_jid_get_part_name): - Fixed crash when returning "" instead of g_strdup("") on error. * src/gossip-join-dialog.c: - Improved method for only showing one join dialog. 2005-08-18 Martyn Russell * protocols/jabber/gossip-jid.c (gossip_jid_get_part_name): - On error "" is returned and it is not allocated memory, g_free doesn't like this :) 2005-08-18 Martyn Russell * libgossip/gossip-account.c: (gossip_accounts_get_default): - Check name in this special case, prevents an expected warning. * src/gossip-chat-window.c: - Added some debugging. * src/gossip-app.c: - Fixed quitting from the menu when there are NO events pending. * src/gossip-contact-groups.c: * src/gossip-status-presets.c: - Renamed files to include .xml - This has been done so there is a distinction between the old gconf config files and the new XML files and should mean Gossip 0.9 and other versions can co-exist. 2005-08-17 Martyn Russell * src/gossip-app.c: - Use OK/Cancel for quitting with unread events, makes more sence. - If quitting from the Chat->Quit menu use the same path as closing the window. 2005-08-17 Martyn Russell * configure.ac: - Bumped requirement of libxml2 to 2.6.18 after Ross reported problems with 2.6.17 (Unimplemented block at xmlreader.c:1610). * src/gossip-app.c (app_main_window_destroy_cb): - Ask user if they really want to quit when unread events are pending in the event manager. - Partly fixes bug #155135 (Keywan Najafi Tonekaboni). * libgossip/gossip-event-manager.[ch]: * libgossip/gossip-event.c (gossip_event_get_event_type): - Added implementation for gossip_event_manager_get_event_count() and gossip_event_manager_get_events(). - Check object is an event before returning type. 2005-08-17 Martyn Russell * src/gossip-notebook.c: - Fixed up the gossip notebook so it would actually show the target you are going to drag to and ONLY commit when the button is released instead of immediately. - Fixes bug #142192 (Sjoerd Simons). * src/gossip-chat-window.c: - Added debugging definition d(x). 2005-08-17 Martyn Russell * src/gossip-chat-window.c (chat_window_drag_data_received): - Stop flashing when dragging a contact to a chat window. - Fixes bug #151859 (Paul van Tilburg). 2005-08-17 Martyn Russell * src/gossip-vcard-dialog.c: * src/gossip-transport-add-window.c: * src/gossip-transport-accounts-window.c: * src/gossip-spell.c: * protocols/jabber/gossip-jabber-chatrooms.c: * protocols/jabber/gossip-jabber-helper.c: * protocols/jabber/gossip-transport-accounts.c: * protocols/jabber/gossip-transport-discover.c: * protocols/jabber/gossip-transport-protocol.c: * protocols/jabber/gossip-transport-register.c * libgossip/gossip-contact.c: * libgossip/gossip-account.c: - Turned off debugging d(x) x * libgossip/gossip-session.c (session_protocol_logged_out): - Fixed counting issue, caused unnecessary warnings. * ui/main.glade: * src/gossip-add-contact.c (gossip_add_contact_new): - Set the next button to be default when pressing enter. - Fixes bug #160216 (bram@luon.net). - Fix adding contacts from chat windows with multiple acocunts. * ui/chat.glade: * src/gossip-chat-window.c: - Add ability to add contacts from a chat conversation window. - Fixes bug #141787 (Brad Taylor). 2005-08-17 Martyn Russell * libgossip/gossip-account.c (ACCOUNTS_DTD_FILENAME): - Was incorrect. 2005-08-16 Martyn Russell * src/gossip-app.c (app_status_show_status_dialog): - Added completion as well as a combo option for the last 5 status'. - Fixes bug #156285 (Martyn). 2005-08-16 Martyn Russell * libgossip/gossip-account.dtd: - Forgot to cvs add this file. 2005-08-16 Martyn Russell * libgossip/gossip-account.[ch]: * libgossip/gossip-session.[ch]: - Added gossip_session_get_contacts_by_account(). - Added gossip_account_equal() * src/Makefile.am: * src/gossip-chat-invite.[ch]: * src/gossip-chat-window.[ch]: * src/gossip-chat.[ch]: * src/gossip-contact-list.[ch]: * src/gossip-private-chat.c: - Added to handle invite message dialog and invite menu generation instead of repeating the code in 3/4 different places. - Added support to invite contact to a group chat from the chat window using a the menu bar. * src/gossip-main.c: - Only get accounts once. 2005-08-16 Martyn Russell * ui/connect.glade: * ui/group-chat.glade: * ui/main.glade: * src/gossip-vcard-dialog.c: * src/gossip-ui-utils.c: * src/gossip-startup-druid.c: * src/gossip-register.c: * src/gossip-private-chat.c: * src/gossip-main.c: * src/gossip-join-dialog.c: * src/gossip-group-chat.c: * src/gossip-contact-list.c: * src/gossip-contact-info.c: * src/gossip-chat-view.[ch]: * src/gossip-app.c: * src/gossip-add-contact.c * protocols/jabber/gossip-jabber.c: * protocols/jabber/gossip-jabber-chatrooms.c: - Repercussions of updates to libgossip. * libgossip/gossip-session.[ch]: - Updated to work with n accounts instead of just ONE account. * libgossip/gossip-contact.[ch]: - Added account property, to tie contacts to an account. * libgossip/gossip-account.[ch]: - Reworked GossipAccount to make better use of GObject and to use an XML file which is DTD verified. * libgossip/Makefile.am: - Added DTD details for accounts XML work. * configure.ac: - Added libxml dependency for libgossip. * src/gossip-status-presets.c: * src/gossip-main.c: * src/gossip-log.c: * src/gossip-contact-groups.c: * src/gossip-about.c: * protocols/jabber/gossip-transport-protocol.c: - Use PACKAGE_NAME instead of "Gossip". 2005-08-14 Martyn Russell * src/gossip-join-dialog.c (gossip_join_dialog_show): - Fixed a bug where the join group chat dialog crashes if you click Cancel after immediately loading it. This is due to the weak reference to the dialog added at setup time. - Fixes bug #313486 (Brian Pepple). 2005-08-14 Mikael Hallendal * src/gossip-chat-manager.c: (chat_manager_new_message_cb), (gossip_chat_manager_get_chat): * src/gossip-contact-list.c: * src/sounds/.cvsignore: - Turn of printouts. 2005-08-14 Mikael Hallendal * Release 0.9 2005-08-14 Martyn Russell * ui/main.glade: - Last minute fix to disable transports since we are not using them at the moment. 2005-08-14 Mikael Hallendal * acinclude.m4: * configure.ac: * libgossip/Makefile.am: * src/sounds/Makefile.am: - Dist check 2005-08-14 Mikael Hallendal * NEWS: Updated for 0.9. 2005-08-14 Richard Hult * src/gossip-contact-list.c (contact_list_contact_presence_updated_cb): - Only update pertinent information for contact, not the active status, this is done is contact_list_contact_set_active() anyway. - Some servers send presence after sending available which meant the active state would be set to FALSE immediately after it was set TRUE and nothing appears to happen on the roster. - Fixes bug #312906 (again). 2005-08-14 Mikael Hallendal * configure.ac: - Bumped Loudmouth requirement to 1.0 - Bumped version to 0.9 * src/gossip-about.c: (button_press_event_cb): * ui/pixmaps/gossip-about.png: - Updated project URL. 2005-08-12 Martyn Russell * src/gossip-contact-list.c (contact_list_contact_presence_updated_cb): - Only update presence for contacts which are on our roster to stop receiving presence from people we don't want to see presence from. - Fixes bug #312906 (Richard). 2005-08-12 Martyn Russell * src/gossip-chat-window.c (gossip_chat_window_finalize): - Disconnect the the "disconnected" function callback properly. - Fixes bug #306381 (again). 2005-08-11 Martyn Russell * src/gossip-contact-list.c (contact_list_contact_presence_updated_cb): - Earlier code change to ONLY highlight online/offline contacts on the roster was not working when showing offline contacts. I have retested the code and it seems to work better. - Fixes bug #312407 (Richard). 2005-08-11 Martyn Russell * src/gossip-chat-window.c (gossip_chat_window_init): - Connect disconnected signal to session not app, so now we get the disconnected signal and update the chat window contact states. This should really operate on a per protocol basis not a per session (since contacts are bound to accounts not the whole session which may have 3 accounts). - Fixes bug #306381 (Paul van Tilburg). * libgossip/gossip-session.c: - Turn off debugging output. 2005-08-10 Martyn Russell * libgossip/gossip-message.[ch]: * src/gossip-chat-view.[ch]: * src/gossip-group-chat.c: * src/gossip-private-chat.c: - Added message subject support. - Fixes bug #305370. 2005-08-10 Martyn Russell * src/gossip-chat-view.c (chat_view_copy_address_cb): - "Copy Link Address" context menu now copies to both PRIMARY and CLIPBOARD. - Fixes bug #152479 (Christian Borup). 2005-08-10 Martyn Russell * src/gossip-app.c (app_subscription_request_cb): - Make use of the event manager for subscriptions (instead of just popping a dialog). - Fixes bug #120245 (Richard). 2005-08-02 Martyn Russell * src/gossip-contact-list.c (contact_list_contact_presence_updated_cb): - changed roster behaviour so we don't highlight the roster for simple presence changes, only online/offline changes. 2005-08-01 Martyn Russell * protocols/jabber/gossip-jabber-chatrooms.c (jabber_chatrooms_presence_handler): - Removed warning about invalid chatroom ID since a lot of presence messages will NOT be for a chatroom. * protocols/jabber/gossip-jabber.c (jabber_setup): - #ifdef'd out the transport initiation code since it serves no purpose at the moment and generates a lot of extra unnecessary traffic. 2005-07-22 Martyn Russell * src/gossip-account-dialog.c: - Fixed register button not actually doing anything. 2005-07-21 Martyn Russell * protocols/jabber/gossip-jabber-helper.c: - Fixed 2 instances of the compiler complaining about uninitialised variables. 2005-07-21 Martyn Russell * src/gossip-status-presets.[ch]: * src/gossip-status-presets.dtd: - Added to handle XML file .gnome2/Gossip/StatusPresets * ui/main.glade: * src/gossip-app.c (app_status_show_status_dialog): - Changed the operation to use async callbacks with response signals, etc instead of using gtk_dialog_run. - Use a GtkComboBoxEntry now with 5 presets in the drop down. 2005-07-21 Martyn Russell * libgossip/gossip-async.h: * protocols/jabber/gossip-jabber.c: * protocols/jabber/gossip-jabber-helper.c: - Actually set the subscription type for a contact, this also fixes the subscription being NONE and every contact info dialog having the resubscribe text/buttons, etc. - Look at the errors returned for vcard/version lookups and provide that back to the async callback. * src/gossip-contact-list.c: * src/gossip-stock.[ch]: * ui/pixmaps/vcard_16.png: * ui/pixmaps/Makefile.am: - Added vcard_16.png for contact information context menu. * src/gossip-contact-info.[ch]: - Added subscribe functionality back. * ui/chat.glade: * ui/connect.glade: * ui/group-chat.glade: * ui/main.glade: - Make sure dialogs/windows look consistent. - Removed send_message_dialog and recv_message_dialog since they are no longer in use. - Improved the contact-info dialog. 2005-07-19 Mikael Hallendal * protocols/jabber/gossip-jabber-chatrooms.c: (jabber_chattroms_join_cb): Initialize room. 2005-07-16 Martyn Russell * src/gossip-contact-list.c: - Added support to invite contacts to a chat room. - Updated the context menu so things are more logically grouped. - Edit Groups now uses the Edit stock item. * ui/chat.glade: * src/gossip-chat-window.c: - Added the beginings of an Invite menu to the chat window. * protocols/jabber/gossip-jabber-chatrooms.c: - Added backend support for get_rooms function. * libgossip/gossip-contact.h (gossip_contact_get_status): - Cleaned up. 2005-07-15 Martyn Russell * protocols/jabber/gossip-jabber-chatrooms.c: - Do nothing if there is no room, but actually work. - Make sure if we cancel the join that we clean up the message handlers associated with the join. 2005-07-15 Martyn Russell * src/gossip-join-dialog.c: - Added support for most conditions (including NICK_IN_USE, NEED_PASSWORD, TIMED_OUT, UNKNOWN_HOST, UNKNOWN_ERROR, ALREADY_OPEN and OK). - Fixed a crash reported by Paul van Tilburg, fixes bug #306382. - Fixed condition where some servers don't reply to joining group chat with the ID in the presence message they were sent with (reproducible with Paul van Tilburg's server). - When adding as a favourite, make it the_last_ favourite and select it in the combobox. - Cancel join process properly when closing the dialog during joining or when actually clicking cancel. - Cleaned up the code. * src/gossip-edit-favorite-dialog.c: - Moved the 'delete' button for group chat favourites from this dialog to the main join dialog. * protocols/jabber/gossip-jabber.c: - Cleaned the code up in places. - Changed all message handler priorities to NORMAL as ALL handlers were using HIGH. * libgossip/gossip-chatroom-provider.[ch]: - Added gossip_chatroom_provider_cancel (stops joining). - Return GossipChatroomId directly from _join. - Added a bunch of join result conditions including TIMED_OUT, UNKNOWN_HOST, UNKNOWN_ERROR, ALREADY_OPEN. * ui/group-chat.glade: - Improved the join group chat dialog. 2005-07-12 Martyn Russell * protocols/jabber/gossip-jabber-chatrooms.c (gossip_jabber_chatrooms_join): - Added checks for already open chat rooms before blindly opening a new room. If one already exists, we just return _ALREADY_OPEN with the currently open room id. 2005-07-11 Martyn Russell * protocols/jabber/gossip-jabber.c (jabber_unknown_request): - Added error code for legacy support. * protocols/jabber/gossip-jabber-chatrooms.c (gossip_jabber_chatrooms_invite_accept): - Added to push the invite_id back to the backend so they know how to connect to it (e.g. if it is room@conference.jabber.org, then the jabber backend will know how to connect to it). - Use no tag if there is no invite message. * src/gossip-chat-view.c (gossip_chat_view_append_chat_message): - Added a bit more logic to show the invite id only if it is not in the message body. - Use a generic message in the recipients language if there is no invitiation message and support a custom message from the sender. * src/gossip-group-chat.c: - Added a message dialog to ask the user for the invite text when asking a contact to a join a group chat session. 2005-07-09 Martyn Russell * src/gossip-chat-view.[ch]: * src/gossip-private-chat.c: - Added basics to show a button for a conference invite, this still needs a bit of work and some checking in places. Plus it is not completely abstract and needs to be. * src/gossip-group-view.[ch]: - Added DND so you can drag someone off your roster into the contacts list in a group chat window and it will send an invite. - Cleaned up the code. * libgossip/gossip-chatroom-provider.[ch]: - Provided _invite and _get_rooms functions. - Cleaned up the code. * libgossip/gossip-message.[ch]: - Added _get_invite and _set_invite. * protocols/jabber/gossip-jabber-helper.[ch]: - Added gossip_jabber_helper_get_conference_from_lm_message to get the jabber:x:conference part of a Jabber message. * protocols/jabber/gossip-jabber.c (jabber_unknown_request): - Respond with error if we don't recognise the jabber:iq:... namespace. - Fixes bug #128358. 2005-07-09 Martyn Russell * src/gossip-contact-groups.c (contact_groups_file_save): * src/gossip-contact-list.c (contact_list_drag_data_get): - Fixed GCC4 Warnings since it is more pedantic now especially about signed and unsigned differences. 2005-06-26 Martyn Russell * src/gossip-app.c: * libgossip/gossip-session.c: - Moved dbus initiation to session creation. * configure.ac: * src/gossip-dbus.c: - Require dbus 0.34 when enabled. - Cleaned the code up in places and make sure it compiles with todays code since it didn't due to code reorgs. - Fix build issues with the latest dbus API (based on a patch from Julien Puydt). - Fixes bug #303187. 2005-06-26 Martyn Russell * src/gossip-contact-list.c (contact_list_drag_data_received): - Respect the MOVE and COPY actions (was doing COPY every time before). 2005-06-26 Martyn Russell * src/gossip-ui-utils.c: - Removed DINGUS for regex work as it is already defined in gossip-utils.c * libgossip/gossip-protocol.[ch]: - Added error handling with gossip_protocol_error() which emits the new "error" signal with a GError. * libgossip/gossip-session.c: - Added "protocol-error" signal which is propagated by listening to protocol "error" signals. * protocols/jabber/gossip-jabber.c: - Added calls into gossip_protocol_error() where needed so that now we get all errors reflected up the code stack. - Cleaned up the code in places. * src/Makefile.am: * src/gossip-connect-dialog.c: * ui/connect.glade: - Removed gossip-connect-dialog and all references to it; this has not been in use for some time now. * src/gossip-app.[ch]: - Removed the need for GossipAccount to be saved in the GossipApp priv. - Added handler for "protocol-error" signal so we can present dialogs for authentication failures and other connection errors. - Cleaned up the code in places. 2005-06-07 Frank Arnold * ui/group-chat.glade.h: * ui/main.glade.h: * src/gossip-transport-add-window.c: - Fixed typos. - Fixes bug #305123. 2005-06-05 Martyn Russell * src/gossip-join-dialog.c (join_dialog_timeout_cb): - Added message dialog if joining a group chat times out after 20 seconds. - Fixes bug #306507. 2005-06-05 Martyn Russell * src/Makefile.am (AM_CPPFLAGS): - Include new files - Add DTDDIR definition. * src/gossip-contact-groups.[ch]: * src/gossip-contact-groups.dtd: - Added. * src/gossip-contact-list.c: - Hooked up new code to expand/collapse callbacks. - Fixes bug #305198. 2005-06-04 Richard Hult * src/gossip-app.c (app_subscription_request_dialog_cb): Only use the vcard if there is one, otherwise use the ID as name. Don't unref the vcard if there is none. (app_subscription_vcard_cb): Likewise, only access the vcard if there is one. 2005-06-04 Martyn Russell * src/gossip-app.c (app_set_away): - Thought this bug was fixed, but not in all cases it would seem. As Paul van Tilburg pointed out, if you were in a busy state and waited to go into an auto away state, it would set you too Available instead. - Fixes bug #306374. 2005-06-04 Martyn Russell * src/gossip-app.c (app_status_show_status_dialog): - Set presence status even if it is NULL since gossip-presence can now handle a NULL value. Now setting presence to the default will actually change the status text. - Fixes bug #306367. 2005-06-03 Mikael Hallendal * configure.ac: - Make aspell configuration default to auto not, yes. Otherwise build fails when aspell is not installed. 2005-05-30 Paul van Tilburg * src/gossip-app.c (app_idle_check_cb): - Fixed a bug where starting xscreensaver would set your state to extended away and Gossip would presume to be in an Away state. The up shot of this was Gossip would send Available constantly every second or so. Now the user goes into the correct Away state (reported by Sjoerd Simons & Paul van Tilburg). 2005-05-30 Martyn Russell * src/gossip-join-dialog.c (gossip_join_dialog_show): - Fixed crash when clicking properties on the separator. - Separator now not shown when there are no favorites. 2005-05-19 Martyn Russell * src/gossip-preferences.c: * ui/main.glade: - Actually hide the "Enable Spell Checker" option when there is no spell checking available. * src/gossip-chat.c (chat_input_text_buffer_changed_cb): - Added extra check to make sure there are errors on each key press when there is no spell backend. * configure.ac: - Based on a patch from Fryderyk Dziarmagowski, the ASpell feature can now be turned off. - I have not made it default to disable aspell as the bug reporter suggests. - Fixes bug #304301. 2005-05-19 Martyn Russell * src/gossip-chat-view.c: - Added support for backwards smileys. - Fixes bug #304096. 2005-05-19 Martyn Russell * ui/main.glade: * src/gossip-status-presets-dialog.c: - Reverted the changes so the dialog looks like it did. After further talks with Micke usability wise, it is better the way it was. 2005-05-18 Mikael Hallendal * MAINTAINERS: Updated * libgossip/Makefile.am: Don't install libgossip 2005-05-17 Martyn Russell * src/gossip-status-presets-dialog.c: - Forgot to cvs add the files lastnight. 2005-05-17 Martyn Russell * src/Makefile.am: - Added gossip-status-presets-dialog.[ch]. * ui/main.glade: * src/gossip-app.c: * src/gossip-preferences.c: * src/gossip-status-presets-dialog.[ch]: - Moves the status presets out of the preferences module and into its own module. - Updated the status presets dialog to be better looking and made use of the GtkCellRendererCombo for the list of presets when configuring the type of presence (the status message is also editable). 2005-05-15 Martyn Russell * po/POTFILES.in: * src/Makefile.am: - Added new gossip-edit-favorite. * src/gossip-favorites-dialog.[ch]: - No longer used. * src/gossip-edit-favorite.[ch]: * src/gossip-favorite.c (gossip_favorite_find): - Added. * src/gossip-group-chat.c (group_chat_widget_destroy_cb): - Disconnect signal handlers when we destroy the chat object. Fixes a crash calling a disconnect handler when exiting. * ui/group-chat.glade: * src/gossip-join-dialog.c: - Reworked the group chat join dialog and its favourites. - Show progressbar after 2 seconds if we are not successfully set up. - Fixes bug #141579. 2005-05-15 Richard Hult * protocols/jabber/gossip-jabber.c: (jabber_login): Initialize the GError, fixes login crash when there's no network. 2005-05-14 Jonatan Magnusson * src/gossip-contact-list.c (contact_list_contact_presence_updated_cb): - Added sound triggers for online/offline. * src/gossip-sound.c: - Make use of gnome_trigger_do() instead of playing sounds directly with gnome_sound_play this way it is configurable in Gnome what sounds are played for which events. - Added debugging (off by default). * src/sounds/Makefile.am: * src/sounds/gossip.soundlist.in: - Added soundlist which is installed to $(sysconfig)/sound/events, unfortunately, from my investigation into this, when you change the preferences and install the sound file, you need to restart gdm for the changes to occur (on Gnome 2.8). - Fixes bug #171044. 2005-05-13 Martyn Russell * src/gossip-contact-list.c (contact_list_setup_view): - Removed use of MODEL_COL_IS_ACTIVE being associated with an attribute for the renderer. * src/gossip-app.c (app_subscription_request_dialog_cb): - Don't depend on a Vcard here, if we do and we couldn't get it, then you can't do anything in the dialog - Doh! 2005-05-13 Martyn Russell * src/gossip-cell-renderer-text.c: - Cleaned up the code a little and added the i18n header for glib that Richard forgot to add to this file. * src/gossip-contact-list.c: - Re-added and reimplemented in places the feature where contacts that change state or come online/offline are highlighted for 5 seconds or so as an indication to the user. 2005-05-12 Richard Hult * libgossip/*: * src/*: Use the i18n headers from glib instead of libgnome. * src/gossip-main.c: Don't use the tarball package name as gettext domain, makes translations work again. 2005-05-12 Martyn Russell * gossip.desktop.in.in: - Updated the name to reflect what type of application Gossip is. - Fixes bug #303602. 2005-05-08 Martyn Russell * libgossip/gossip-account.[ch]: - Added gossip_account_remove. - Don't set default account if already the default. * libgossip/gossip-protocol.[ch]: * libgossip/gossip-session.[ch]: * protocol/jabber/gossip-jabber.c: - Added _setup() functions. The init() functions used the default account before, now they use the account passed in _setup() but would be better passed on init(). Restarting Gossip after changing account details is no longer needed to use them. * src/gossip-account-dialog.c: - Updated the code and fixed a bug where changing an entry and clicking OK would not use the new value unless moving to another widget prior to that. * src/gossip-app.c: - Added a message dialog when trying to connect with no IM acounts set up. Added this instead of disabling the "connect" item because this connect is attempted after the startup druid finishes. - Fixes bug #172029. 2005-05-08 Martyn Russell * MAINTAINERS: * AUTHORS: - Updated name. * protocols/jabber/gossip-jabber.c: * libgossip/gossip-protocol.[ch]: * libgossip/gossip-session.c: - Implemented the _find_contact functions for chat drag and drop. * src/gossip-contact-list.c: * src/gossip-chat-window.c: - Added support for drag and drop to chat windows and to move contacts between groups on the roster (based on the patch from #300586). - Fixes bug #300586. - Fixed bug #142521. 2005-05-07 Mikael Hallendal * MAINTAINERS: Added a maintainers file with me and Martyn. * AUTHORS: Added Martyn. 2005-05-05 Mikael Hallendal * protocols/jabber/gossip-transport-protocol.c: (transport_protocol_file_parse): - Fix some casts caught by gcc-4 - Patch from Thomas Reynolds. 2005-05-05 Martyn Russell * libgossip/gossip-protocol.[ch]: * libgossip/gossip-session.c: * protocols/jabber/gossip-jabber.c: * src/gossip-app.c: * ui/main.glade: - Readd subscription requests which has been disabled since large rewrite earlier this year. - Reworked the subscription request dialog and the add contact dialogs. - Fixes bug #162619 2005-05-05 Martyn Russell * libgossip/gossip-contact.c: * libgossip/gossip-protocol.[ch] * libgossip/gossip-session.h: * protocols/jabber/gossip-jabber.c: * src/gossip-contact-list.[ch] * src/gossip-edit-groups-dialog.c: * ui/main.glade: - Fixed group editing after code restructure and move to libgossip. - Fixes bug #155735 2005-05-05 Martyn Russell * src/gossip-log.c: (gossip_log_message): - Fixes bug #163145 - Don't set the same name for both contacts in logs. 2005-05-05 Mikael Hallendal * libgossip/gossip-session.c: (gossip_session_init), (session_protocol_logged_in), (session_protocol_logged_out), (gossip_session_is_connected): * protocols/jabber/gossip-jabber.c: (jabber_logout): * src/gossip-group-chat.c: (gossip_group_chat_show), (group_chat_connected_cb), (group_chat_disconnected_cb): - Fixed the connect/disconnect for group chats - Also fixed some issues when disconnecting from the server. - Based on patch from Martyn with some changes. - Fixes bug #127464. 2005-05-01 Mikael Hallendal * src/gossip-accounts-dialog.[ch]: Unused, removed. 2005-05-01 Martyn Russell * src/gossip-add-contact.c: (add_contact_last_page_finished), (gossip_add_contact_new): * ui/main.glade: - Remove the reason field from the add new contact wizard. - Fixes #157866 2005-05-01 Martyn Russell * src/gossip-chat-view.c: (gossip_chat_view_init), (chat_view_populate_popup), (chat_view_buffer_changed_cb): - Set chat buffer to 500 lines. - Fixes #141292 2005-05-01 Mikael Hallendal * libgossip/.cvsignore: * libgossip/Makefile.am: * libgossip/gossip-marshal-main.c: * libgossip/gossip-marshal.list: * libgossip/libgossip-marshal-main.c: * libgossip/libgossip-marshal.list: - Renamed to libgossip-marshal.* * protocols/jabber/gossip-jabber.c: - Remove include of gossip-marshal.h * src/Makefile.am: * src/gossip-marshal-main.c: * src/gossip-marshal.list: - Added this for the UI. 2005-04-30 Mikael Hallendal * src/gossip-log.c: (log_transform): - Fix for gcc 4. 2005-04-30 Mikael Hallendal * configure.ac: - Added GOSSIP_JABBER check for the jabber module. * libgossip/Makefile.am: * libgossip/gossip-account.[ch]: - Don't use GossipJID, it's now private in the jabber module. * libgossip/gossip-utils.[ch]: - Finished the split of gossip-ui-utils and gossip-utils. * src/Makefile.am: * src/*.[ch]: - Removed code that has been move to libgossip/ and protocols/jabber. - Make all code use libgossip instead of using the files that has been removed. - Temporarily disable the transports (again...) - Everything has now been brought up after the refactoring except transports which requires adding an interface in libgossip that can be implement by the Jabber backend (which will most likely be the only backend ever implementing this interface). 2005-04-30 Mikael Hallendal * Makefile.am: * configure.ac: * libgossip/Makefile.am: * libgossip/gossip-protocol.c: (gossip_protocol_get_contacts): * libgossip/gossip-protocol.h: * libgossip/gossip-session.c: (gossip_session_init), (gossip_session_get_nickname): - More work, on the refactoring out of libgossip. - Now builds, next step will be to make the gossip app use this. * protocols/Makefile.am: * protocols/jabber/Makefile.am: * protocols/jabber/gossip-jabber-chatrooms.[ch]: * protocols/jabber/gossip-jabber-helper.[ch]: * protocols/jabber/gossip-jabber-private.h: added temporarily * protocols/jabber/gossip-jabber.[ch]: * protocols/jabber/gossip-jabber.h: * protocols/jabber/gossip-jid.c: * protocols/jabber/gossip-transport-accounts.c: * protocols/jabber/gossip-transport-discover.[ch]: * protocols/jabber/gossip-transport-protocol.c: * protocols/jabber/gossip-transport-register.c: - Fixed lots of include issues that shows when splitting out into own directory. 2005-04-25 Mikael Hallendal * configure.ac: - Added LIBGOSSIP pkg check * libgossip/Makefile.am: * libgossip/gossip-account.[ch]: - Don't use GossipJID. * libgossip/gossip-contact.[ch]: * libgossip/gossip-presence.[ch]: - Removed GUI dependency. * libgossip/gossip-utils.[ch]: - Added - The non-GUI parts from src/gossip-utils.[ch] * src/gossip-ui-utils.[ch]: - The GUI parts from gossip-utils.[ch] 2005-04-24 Mikael Hallendal * configure.ac: * libgossip/Makefile.am: * libgossip/gossip-marshal-main.c: * libgossip/gossip-marshal.list: * protocols/jabber/Makefile.am: * src/Makefile.am: - Started working on second phase of my long-term Gossip code restructuring. Thanks Anders with help on moving the files. - Splitting code into three different parts, the core in libgossip, the ui in src and the jabber implementation in protocols/jabber. 2005-04-24 Mikael Hallendal * src/gossip-disco-register.c: * src/gossip-disco-register.h: * src/gossip-disco-servers.c: * src/gossip-disco-servers.h: * src/gossip-disco-window.c: * src/gossip-disco-window.h: * src/gossip-disco.c: * src/gossip-disco.h: - Removed, not used any more * src/gossip-favorite.c: * src/gossip-favorite.h: * src/gossip-idle.h: * src/gossip-jabber.c: - Removed unneccessary includes. 2005-04-24 Mikael Hallendal * src/gossip-chat-window.c: (chat_window_drag_data_received): - Added a cast to make gcc 4 happy. 2005-04-22 Mikael Hallendal * src/gossip-add-contact.c: (add_contact_prepare_page_2), (add_contact_page_2_vcard_handler), (gossip_add_contact_new): * ui/main.glade: - Fixes bug #117554. - Have a retreiving information label when adding a contact and requesting vcard. 2005-04-20 Mikael Hallendal * autogen.sh: Use automake 1.9 2005-04-08 Martyn Russell * src/gossip-cell-renderer-text.c: (cell_renderer_text_update_text): * src/gossip-chat-window.c: (gossip_chat_window_init), (chat_window_update_menu), (chat_window_conv_activate_cb), (chat_window_show_contacts_toggled_cb): * src/gossip-chat.c: (gossip_chat_get_show_contacts), (gossip_chat_set_show_contacts): * src/gossip-chat.h: * src/gossip-group-chat.c: (gossip_group_chat_class_init), (gossip_group_chat_init), (group_chat_create_gui), (group_chat_setup_tree), (group_chat_get_group_chat), (group_chat_get_show_contacts), (group_chat_set_show_contacts): * ui/chat.glade: * ui/group-chat.glade: - Make group chat contacts list width adjustable. - Make it possible to fully hide the contacts. - Fixes #130977. 2005-04-06 Richard Hult * src/gossip-group-chat.c (group_chat_create_gui): Put the chat entry before the topic entry in the focus chain. 2005-04-05 Richard Hult * src/gossip-chat-window.c: (chat_window_create_label): Try an even smaller label for the tabs. * src/gossip-cell-renderer-text.c: (gossip_cell_renderer_text_init), (cell_renderer_text_update_text): Remove ellipsizing hack and use pango instead. * src/gossip-contact-list.c: (contact_list_add_contact): Only expand groups that are newly created (restores behavior from the 0.8 branch). * src/gossip-notebook.c (button_release_cb): Always remove the grab if we have it, not only if the pointer grab is effective, since we don't always have that. Fixes stuck grab when dragging chats. (gossip_notebook_move_page): Remove the label from its old parent before reinserting it. 2005-04-04 Richard Hult * src/gossip-main.c (main): Set application name, makes the window list look better when windows are grouped. * src/gossip-utils.c: (utils_window_get_is_on_current_workspace), (gossip_utils_window_get_is_visible), (gossip_utils_window_present): New functions to handle presenting a window. * src/gossip-app.c: (app_toggle_visibility), (app_tray_button_press_cb): * src/gossip-chat.c: (gossip_chat_present): Use common hide/show functionality from gossip-utils.c. Makes things work better with recent metacity. * src/gossip-chat-window.c: (chat_window_create_label), (chat_window_update_status), (chat_window_tab_added_cb), (chat_window_create_notebook): Tweak the tab look; ellipsize the labels, make the font a bit smaller and remove the close button to waste less space. Make the tabs expand so the labels use as much space as they need. The last part might need some additional tweaking in case it doesn't feel good. 2005-04-04 Mikael Hallendal * src/gossip-chatroom-provider.[ch]: (gossip_chatroom_provider_get_room_name): - Get the room name * src/gossip-group-chat.c: - Removed the nick private variable and added own_contact instead. - The user nick can now be retrieved from own contact name field. * src/gossip-jabber-chatrooms.[ch]: (gossip_jabber_chatrooms_get_room_name): Added. * src/gossip-jabber.c: (jabber_chatroom_get_room_name): Added 2005-04-04 Martyn Russell * src/gossip-transport-accounts-window.c (transport_accounts_window_destroy): - Uncommented out code?? to disconnect the signal for contact-removed on the GOSSIP_PROTOCOL when the window closes, was calling back with a invalid pointer to an GossipTransportAccountsWindow causing a crash on Quit. 2005-04-04 Mikael Hallendal * src/gossip-jabber-chatrooms.c: (jabber_chatrooms_presence_handler): - Handle joined correctly even if we have earlier received a backlog from a contact. - Remove contact from list when contact leaves group chat. 2005-04-04 Mikael Hallendal * src/gossip-app.c: (app_event_added_cb), (app_event_removed_cb): * src/gossip-group-chat.c: (group_chat_new_room_event_cb): * src/gossip-private-chat.c: (gossip_private_chat_init), (gossip_private_chat_append_message): - Hide a bunch of print outs. 2005-04-04 Mikael Hallendal * src/gossip-chat-view.[ch]: (gossip_chat_view_append_event_message): Renamed to be more consistent * src/gossip-chatroom-provider.c: (chatroom_provider_base_init): - Added chatroom event signal * src/gossip-group-chat.c: (group_chat_new_room_event_cb): Added to handle room events (like someone joining). * src/gossip-jabber-chatrooms.[ch]: - More work on adding own contact, more work on presences, emitting room events etc. - Fixes bug #166259. 2005-04-04 Mikael Hallendal * src/gossip-app.[ch]: (app_create_status_menu), (app_tray_flash_timeout_func), (app_tray_flash_maybe_stop): - Refactored to use GossipPresence instead of GossipShow and strings for statuses. - Use gossip_session_set_presence, instead of Loudmouth directly to set presence. * src/gossip-contact.[ch]: (gossip_contact_get_status): - Return default status if presence doesn't have it set. * src/gossip-jabber-chatrooms.c: (jabber_chatrooms_message_handler): - Emit chatroom-title-changed. (jabber_chatrooms_get_contact): - Take an argument to see if the contact was just added (jabber_chatrooms_presence_handler): - Implemented, based on patch from Aurelien Naldi. - Added emitting of new contacts to the patch. * src/gossip-preferences.c: - Updated to not use GossipShow API. * src/gossip-presence.[ch]: (gossip_presence_get_status): - Return NULL if not set instead of default value. (gossip_presence_state_get_default_status): - Added, can be used to get default value if presence doesn't have status set. (gossip_presence_state_get_pixbuf): - Added, should be replaced by a function that returns stock id instead. * src/gossip-session.c: (gossip_session_set_presence): Implemented by Aurelien Naldi * src/gossip-utils.[ch]: - DIE GossipShow, DIE!!!!!!!!!!!!!!!!!! - Did a lot of refactoring to remove some old cruft and make GossipApp use more of the new code instead. * CONTRIBUTORS: Added Aurelien 2005-04-03 Mikael Hallendal * src/gossip-chat-manager.c: (chat_manager_new_message_cb): - Only add a new event if one doesn't already exist. This solves the issue where the notification doesn't go away event though you opened the window. 2005-03-31 Mikael Hallendal * src/gossip-contact-list.c: (contact_list_contact_updated_cb): * src/gossip-contact.[ch]: * src/gossip-jabber-helper.c: (gossip_jabber_helper_async_get_version): * src/gossip-jabber.c: (jabber_presence_handler): - Added support for multiple connections to GossipContact so that presence stuff works as intended in Jabber. * src/gossip-presence.[ch]: (gossip_presence_resource_equal): Added (gossip_presence_priority_sort_func): Added 2005-03-31 Mikael Hallendal * AUTHORS: * CONTRIBUTORS: * Makefile.am: - Added contributors file 2005-03-30 Bastien Nocera * src/gossip-app.c: (gossip_app_init): stop the startup notification ourselves if we won't be creating a main window 2005-03-30 Bastien Nocera * .cvsignore: upd 2005-03-29 Bastien Nocera * src/gossip-app.c: (app_main_window_destroy_cb): Fix warnings on exit when no connections or account exist 2005-03-29 Bastien Nocera * autogen.sh: Fix missing po/Makefile.in.in on first build * configure.ac: Fix XScreenSaver compile check, by adding the X11/Xlib.h header to the test * src/gossip-jabber.c: (gossip_jabber_init), (jabber_is_connected): Fix crash on startup, and some warnings when no accounts have ever been setup 2005-03-29 Mikael Hallendal * acinclude.m4: * autogen.sh: * configure.ac: * configure.in: - Fixed configure check for XScreenSaver extensions. - Cleaned up the auto* files a bit. 2005-03-15 Richard Hult * ui/pixmaps/gossip-group-message.png: Use slightly better icon for now. * src/gossip-jabber-chatrooms.c: Add debug define. * src/gossip-group-chat.c (group_chat_new_message_cb): Emit new-message so the window get notified and can change the icon. * src/gossip-chat-view.c (chat_view_is_scrolled_down): Remove hack that disabled this feature for GTK+ < 2.3. 2005-03-11 Mikael Hallendal * src/gossip-jabber.c: (gossip_jabber_init): - Set keep alive rate on Loudmouth connection, reported by Richard. 2005-01-27 Martyn Russell * src/gossip-session.[ch]: * src/gossip-protocol.[ch]: - Change the parameters for registering to use a GossipAccount, this way each protocol can independently use whatever details that are required from that interface instead of trying to generically have a common interface here. * src/gossip-register.c: - Fix bug where the data is not passed as user_data resulting in a NULL dereference in the async call back. * src/gossip-jabber.c (jabber_register), (jabber_register_connection_open_cb), (jabber_register_error_to_str) (jabber_register_message_handler): - Added the capability to register new users. This opens a new connection independent of any connection already open. 2005-01-21 Mikael Hallendal * src/gossip-contact-info.[ch]: - Objectified - Don't crash if closed before callbacks. * src/gossip-jabber-helper.c: (jabber_helper_async_get_version_cb): - GOSSIP_ASYNC_OK when actually ok. (gossip_jabber_helper_async_get_version): - Include resource when asking for version. * src/gossip-jabber.c: - Support replying to version requests. * src/gossip-version-info.c: - Fixed a bunch of issues. - Fixes bug #162620 2005-01-20 Mikael Hallendal * src/*.[ch]: Updated Imendio HB -> Imendio AB. 2005-01-20 Martyn Russell * src/gossip-spell-dialog.c: - Added to present a list of suggestions. * configure.in: - Added checks for aspell, Gossip does not depend on it. * src/gossip-spell.c: - Added code to call use aspell library and provide generic API for the GossipChat object to use. * src/gossip-chat.c: - Added menu items to the context menu of the input textview to list suggestions for misspelled words. * src/gossip-preferences.c: - Added ability to disable spell checking. - Fixes bug #127338 2005-01-20 Mikael Hallendal * src/gossip-app.c: (app_complete_name_response_cb): - Create temporary contact if contact doesn't exist. - Fixes a bunch of bugs regarding sending messages to contacts not in list. * src/gossip-contact-info.c: - Fixed a crash. * src/gossip-jabber-helper.c: (jabber_helper_async_get_vcard_cb): - Support for email in vcard. * src/gossip-vcard.c: - support unsetting values. * ui/main.glade: - Make labels selectable in contact info - Fixes bug #156108 2005-01-19 Mikael Hallendal,,, reviewed by: * src/gossip-app.c: (app_new_message_presence_data_func), (app_complete_name_response_cb): * src/gossip-private-chat.c: (private_chat_get_status_pixbuf): 2005-01-19 Mikael Hallendal * src/gossip-jabber.c: (gossip_jabber_init), (jabber_logout), (jabber_disconnect_func): (jabber_signal_logged_out): - Refactor some and signal disconnect on disconnect message from loudmouth. * src/gossip-session.c: (session_protocol_logged_out): - Signal disconnected always on protocol disconnected for now, we only have support for one protocol at this point. 2005-01-19 Martyn Russell * src/gossip-contact-list.c: - Update the messaging to make it more consistent with other modules (namely GossipSession). * src/gossip-jabber.c (jabber_logout): - Clean up roster when disconnected. - Signal logged out when we have called lm_connection_close. - Fixes bug #164255 2005-01-16 Martyn Russell * src/gossip-cell-renderer-text.c (cell_renderer_text_update_text): - Added some of the old code to show the roster with italic grey text for the status'. - Silently accept setting the Status or Name to NULL. * src/gossip-contact-list.c (contact_list_add_contact): - Added groups support. - Updated the contact_find function to return a GList of iterators which can be used to remove contacts, etc if they are in more than one group. * src/gossip-jabber.c (jabber_update_contact), (jabber_iq_handler): - Do not dup the strings before setting a contacts groups. - Set groups on roster setting. * src/gossip-contact.c (gossip_contact_set_groups): - Implemented this function. 2005-01-11 Mikael Hallendal * autogen.sh: Match correctly whether to run autoheader or not. 2005-01-08 Mikael Hallendal * acinclude.m4: * autogen.sh: * configure.in: * src/Makefile.am: * src/gossip-about.c: (gossip_about_new): * src/gossip-main.c: (main): - Updated to automake 1.9 - Patch from Julio M. Merino Vidal - Fixes bug #152241 2005-01-03 Martyn Russell * src/gossip-transport-accounts.c: - Updated to reflect the new GError pointer returned for disco items. * src/gossip-transport-add-window.c: - If we get a 404 Not Found when initiating service discovery, we now look to 3rd party servers for transport support instead of doing nothing. - JEP 0070 now allows registering without a "key" xml element, legacy services still require it so we use it when available. * src/gossip-transport-discover.c: - Add error checking, this is vital to know if the local server supports service discovery. 2005-01-03 Mikael Hallendal * src/Makefile.am: * src/gossip-chat-view.c: (chat_view_maybe_append_timestamp), (gossip_chat_view_append_chat_message), (gossip_chat_view_append_event_msg): * src/gossip-chat-view.h: * src/gossip-jabber-chatrooms.c: (jabber_chatrooms_message_handler): * src/gossip-jabber-helper.c: (gossip_jabber_helper_get_timestamp_from_lm_message): * src/gossip-jabber-helper.h: * src/gossip-jabber.c: (jabber_message_handler): * src/gossip-log.c: (log_get_timestamp): * src/gossip-message.c: (message_class_init), (message_init), (gossip_message_get_timestamp), (gossip_message_set_timestamp): * src/gossip-message.h: * src/gossip-private-chat.c: (private_chat_send): * src/gossip-time.c: (time_set_tz_utc), (time_reset_tz), (gossip_time_from_tm), (gossip_time_to_tm), (gossip_time_get_current), (gossip_time_to_timestamp), (gossip_time_to_timestamp_full): * src/gossip-time.h: * src/gossip-utils.c: * src/gossip-utils.h: - Reshuffled code for time stamp handling - Added gossip-time.[ch] for utility functions regarding gossip times. - Readd timestamps to chats. - Fixes bug #162563 2005-01-02 Mikael Hallendal * src/gossip-jabber.c: (gossip_jabber_init): - Set own contact name * src/gossip-session.c: (gossip_session_get_nickname): - Get name from JID as we used to do. - Fixes bug #162564 2004-12-31 Mikael Hallendal * src/gossip-jabber.c: (jabber_presence_handler): - Handle contacts going offline correctly. 2004-12-31 Martyn Russell * src/gossip-protocol.c: - Added subscribe-request signal. * src/gossip-transport-register.c: - Added 'cancel' functions to stop registering, unregistering and requesting requirements for registering. * src/gossip-transport-add-window.c: - Fixed the bug where the add transport window is closed before the requirements have returned, and the now invalid window is dereferenced. * src/gossip-transport-discover.c: - Made the disco timeout for the initial request 20 seconds instead of 30 seconds which seems too long. * src/gossip-transport-accounts-window.c: - Moved subscription gui out of the GossipJabber module and into this module instead. 2004-12-31 Mikael Hallendal * src/gossip-contact-list.c: (contact_list_contact_added_cb), (contact_list_contact_presence_updated_cb), (contact_list_contact_removed_cb), (contact_list_add_contact), (contact_list_remove_contact): - Added support to hide/show offline contacts. 2004-12-31 Mikael Hallendal * src/gossip-app.c: (app_new_message): - Updated for new GossipSession API. * src/gossip-contact-list.c: (gossip_contact_list_set_show_offline): - Started working on this. * src/gossip-session.[ch]: (gossip_session_get_contacts): - Returns a const list, also replaced internally with a list instead of a hash table for now. * src/gossip-transport-accounts.c: (gossip_transport_account_count_contacts), (gossip_transport_account_remove): - Updated for new GossipSession API. 2004-12-30 Mikael Hallendal * src/gossip-jabber.c: (gossip_jabber_init): - Work when JID-host isn't the same as connection server. 2004-12-30 Mikael Hallendal * configure.in: * gossip.desktop.in: - Removed again, had forgotten the patch from Christoffer Olsen * src/gossip-jabber.c: (jabber_iq_handler): - Readded my patch to not reply to error messages. 2004-12-30 Mikael Hallendal * AUTHORS: Added Martyn * configure.in: * protocols/aim.protocol: * protocols/gossip-protocol.dtd: * protocols/icq.protocol: * protocols/msn.protocol: * protocols/yahoo.protocol: * src/Makefile.am: * src/gossip-account.c: * src/gossip-add-contact.[ch]: * src/gossip-app.[ch]: * src/gossip-async.h: New file * src/gossip-cell-renderer-text.[ch]: New files * src/gossip-chat-manager.[ch]: New files * src/gossip-chat-view.c: * src/gossip-chat-window.[ch]: * src/gossip-chat.[ch]: * src/gossip-chatroom-provider.[ch]: New files * src/gossip-contact-info.[ch]: * src/gossip-contact-list-iface.[ch]: New files * src/gossip-contact-list.[ch]: * src/gossip-contact.[ch]: * src/gossip-disco-servers.[ch]: * src/gossip-disco-window.c: * src/gossip-disco.[ch]: * src/gossip-edit-groups-dialog.[ch]: * src/gossip-event-manager.[ch]: New files * src/gossip-event.[ch]: New files * src/gossip-favorites-dialog.[ch]: * src/gossip-group-chat.[ch]: * src/gossip-jabber-chatrooms.[ch]: New files * src/gossip-jabber-helper.[ch]: * src/gossip-jabber.[ch]: * src/gossip-join-dialog.c: * src/gossip-log.[ch]: * src/gossip-message.[ch]: New files * src/gossip-presence.[ch]: * src/gossip-private-chat.[ch]: * src/gossip-protocol.[ch]: New files * src/gossip-register.c: * src/gossip-session.[ch]: * src/gossip-sound.c: * src/gossip-stock.h: * src/gossip-transport-accounts-window.[ch]: New files * src/gossip-transport-accounts.[ch]: New files * src/gossip-transport-add-window.[ch]: New files * src/gossip-transport-discover.[ch]: New files * src/gossip-transport-protocol.[ch]: New files * src/gossip-transport-register.[ch]: New files * src/gossip-tray.[ch]: New files * src/gossip-utils.[ch]: New files * src/gossip-vcard-dialog.c: * src/gossip-vcard.[ch]: New files * src/gossip-version-info.[ch]: New files * ui/main.glade: - Major branch of both gossip-session-rewrite and gossip-transports. - This code is still very young and a lot of know regressions and bugs but we will focus on fixing these during the development phase of Gossip 0.9. 2004-12-27 Mikael Hallendal * Release 0.8 * NEWS: Updated for 0.8 * configure.in: Bumped to 0.8 * ui/main.glade: Disable service discovery for release 2004-12-10 Alexander Shopov * configure.in (ALL_LINGUAS): Added "bg" (Bulgarian 2004-11-25 Christoffer Olsen * configure.in: Added gossip.desktop.in.in to AC_OUTPUT * gossip.desktop.in: Moved to gossip.desktop.in.in * gossip.desktop.in.in: Added X-GNOME-Bugzilla-Version header * po/POTFILES.in: Now lists gossip.desktop.in.in instead - Added support for Bug Buddy version number autocompletion 2004-11-18 Mikael Hallendal * src/gossip-app.c: (app_init), (app_show_offline_cb): - Use the correct gconf key 2004-11-16 Mikael Hallendal * src/gossip-app.c: (app_iq_handler): Don't reply to error messages. 2004-09-28 Abel Cheung * configure.in: Added "tr" to ALL_LINGUAS. 2004-09-18 Martyn Russell * src/gossip-disco.c: - Added a function to get the number of disco items in total. * src/gossip-disco-register.c: - Fixed some memory leaks where things were not being cleaned up. - Improved the debugging. * src/gossip-disco-window.c: - Fixed calculations with progress bar. - Removed code that uses the jabber.org list for disco requests. - Fixed the server label under the expander so it has a value. - Added a limit to the number of servers used from the protocol files, currently this is 5. - Was calling the registration requirements function twice. - Re-worked the cell pixbuf function to use the gnome images for AIM, ICQ, MSN and Yahoo via the GtkIconTheme API. * src/gossip-stock.c: - Removed AIM, ICQ, MSN, Yahoo stock definitions. * protocols/Makefile.am: - Removed PNG files. * protocols/aim.protocol: * protocols/icq.protocol: * protocols/msn.protocol: * protocols/yahoo.protocol: - Changed the stock-icon to be the gnome theme icon filename. This is slightly redundent because we don't use stock-icon or icon for core protocols. It should be possible to overide this, but currently you can't. 2004-09-18 Kjartan Maraas * configure.in: Add «nb» to ALL_LINGUAS. 2004-09-16 Martyn Russell * protocols/Makefile.am (stock_DATA): - Quick fix to stop the pixbuf loading warnings. This occurs because the stock images are in a different location to the protocol stock images. 2004-09-16 Martyn Russell * src/gossip-group-chat.c * src/gossip-chat-window.c: * src/gossip-chat.c: - Group chats and normal chats now appear in their own windows instead of sometimes appearing together in separate tabs. 2004-09-16 Martyn Russell * Makefile.am (SUBDIRS): - Added new protocols directory into the mix. * protocols/Makefile.am (image_DATA): - Added AIM/ICQ/MSN/Yahoo images into the build. - Added the DTD from Paul van Tilburg (v0.4). * src/Makefile.am (INCLUDES): - Added a PROTOCOLSDIR definition. * src/gossip-disco-servers.c: - Added these functions to deal with the XML protocol files which will be installed into /share/gossip/protocols or /.gnome2/Gossip/protocols. These XML files are now used instead of the server list from jabber.org. * src/gossip-disco-window.c: - Added a message for when all discos have returned and there is nothing more to do. - Added a progress bar for the user to have some feed back. * src/gossip-disco-window.c: - Changed the option buttons for the protocols to a list * src/gossip-stock.c: - Added AIM/ICQ/MSN/Yahoo stock items. 2004-09-15 Mikael Hallendal * gossip.desktop.in: Updated name * ui/main.glade: Changed window title 2004-09-11 Martyn Russell * src/gossip-chat.c (gossip_chat_present): - Use the ONE chat window already open if there is one. * src/gossip-chat-window.[ch] (gossip_chat_window_get_default): - Added this function to return the default window if only one window is in the chat window list. If there is more than one window, there is no default. 2004-09-06 Geert-Jan Van den Bogaerde * src/gossip-private-chat.c: Added * src/gossip-private-chat.h: Added * src/gossip-chat.c: * src/gossip-chat.h: * src/gossip-group-chat.c: * src/gossip-group-chat.h: * src/gossip-chat-window.c: * src/gossip-app.c: - Implemented tabbed group chat windows. GossipChat is now an abstract base class for GossipPrivateChat and GossipGroupChat. 2004-09-04 Martyn Russell * src/gossip-roster-view.c (roster_view_item_active_cb): - Fixed bug #151737 which kept contacts highlighted when they go offline but only when the preference "showing offline contacts" was used. 2004-09-02 Mikael Hallendal * Release 0.7.8 * configure.in: Bumped to 0.7.8 * NEWS: Updated for 0.7.8 2004-09-02 Ross Burton * ui/connect.glade: Add a Use Proxy check button. * src/gossip-account.[ch]: Add a use_proxy field. * src/gossip-account-dialog.c: Set the use_proxy field in the account. * src/gossip-startup-druid.c: Default to not using the proxy. * src/gossip-app.c: Configure the proxy on reconnect, not once. 2004-08-31 Richard Hult * ui/main.glade: Fix two typos. 2004-08-28 Mikael Hallendal * src/eggtrayicon.[ch]: - Synced with libegg. * src/gossip-disco.c: Some style tweaking. * ui/main.glade: Renabled transport item. 2004-08-27 Mikael Hallendal * Release 0.7.7 * src/gossip-app.c: (app_main_window_destroy_cb): - Compile fix for update in Loudmouth 2004-08-27 Mikael Hallendal * NEWS: Updated for 0.7.7 * configure.in: Bumped the version to 0.7.7 * ui/main.glade: - Disable the unfinished transport support for the release. 2004-08-25 Mikael Hallendal * configure.in: - Removed 'ga' translation since the po-file was missed in commit. * src/gossip-app.c: (app_create_connection): - Set a keep alive rate of 30 seconds for the loudmouth connection. 2004-08-24 Alastair McKinstry * configure.in: Added 'ga' (Irish) to ALL_LINGUAS 2004-08-22 Martyn Russell * src/gossip-roster-view.c (roster_view_pixbuf_cell_data_func), (roster_view_name_cell_data_func), (roster_view_item_active_cb), (roster_view_item_presence_updated), (roster_view_connected_cb), (roster_view_show_active_users_cb), (roster_view_set_cell_background): - Added a background colour to contacts when they are in an "active" state (set by the gossip_roster_item_set_active function) to show what has changed on the roster for 5 seconds or so. - Make sure the active user background is not done when we change between showing offline contacts and during the first 5 seconds (after the connection is successful). * src/gossip-roster.c (gossip_roster_item_set_flash_stock), (gossip_roster_item_get_flash_stock), - Added the ability to associate the flash stock icon used with a roster item. 2004-08-19 Mikael Hallendal * src/gossip-dbus.c: (gossip_dbus_init): * src/gossip-dbus.h: - Patch from Sjoerd Simons to compile against D-BUS 0.22 * configure.in: Bumped D-BUS requirement to be 0.22 2004-08-18 Mikael Hallendal * src/gossip-disco-register.c: (disco_register_new), (disco_register_request), (disco_register_message_handler), (disco_register_handle_response): * src/gossip-disco-window.c: (disco_window_check_others_1_cb), (disco_window_register), (disco_window_register_1_cb), (disco_window_register_2_cb), (disco_window_entry_details_changed): * src/gossip-disco.c: (disco_new), (gossip_disco_request), (disco_request_items), (disco_message_handler), (disco_request_info), (disco_handle_info), (gossip_disco_get_category), (gossip_disco_get_category_and_type), (gossip_disco_get_item), (gossip_disco_item_has_category), (gossip_disco_item_has_type), (gossip_disco_item_has_feature): - Style fixes 2004-08-18 Mikael Hallendal * src/gossip-disco-servers.c: (gossip_disco_servers_fetch): Don't need to call gnome_vfs_init here. (disco_servers_print_error), (disco_servers_parse): - Fixed style 2004-08-18 Martyn Russell * src/gossip-disco.c: * src/gossip-disco-register.c: - Added these modules to handle the back end of discovering services and registering them. * src/gossip-disco-servers.c: - Added this module to handle the look up of the http://www.jabber.org/servers.xml and to parse it. It makes use of GnomeVFS. * src/gossip-disco-window.c: - Added for my test harness of the gossip-disco module. This is a simple wizard that registers transports. (gossip_jid_is_service): - Added to check each roster item and see if it is a service or a contact. We need this so we can test to see if we are registered or not with JID's on the roster. 2004-08-13 Mikael Hallendal * src/gossip-jid.c: (jid_free), (jid_locate_resource), (gossip_jid_new), (gossip_jid_set_without_resource), (gossip_jid_set_resource): - Fix some weirdness noticed by richard 2004-08-09 Mikael Hallendal * src/gossip-app.c: (gossip_app_connect), (app_create_connection): - Updated to the lm_connection_set_jid API. 2004-08-08 Mikael Hallendal * src/gossip-jid.c: Fixed some bugs when resource wasn't set. 2004-08-08 Mikael Hallendal * configure.in: Bumped loudmouth requirement to 0.17 * src/gossip-app.c: (gossip_app_connect), (app_create_connection): - Set the host to connect to. * src/gossip-jid.[ch]: (gossip_jid_get_part_host): Added - Allow connecting to another host than the host part of the jid. 2004-08-08 Mikael Hallendal * src/gossip-app.c: (app_create_connection): * src/gossip-register.c: (gossip_register_account): - Set proxy if user has set HTTP proxy in GNOME. * src/gossip-utils.[ch]: (gossip_utils_set_proxy): - Added, reads GConf settings for desktop settings to see if user specified a HTTP proxy. 2004-08-08 Mikael Hallendal * src/gossip-account-dialog.c: * src/gossip-account.[ch]: * src/gossip-app.c: * src/gossip-chat.c: * src/gossip-connect-dialog.c: * src/gossip-jid.[ch]: (gossip_jid_set_without_resource): Added (gossip_jid_set_resource): Added * src/gossip-log.c: * src/gossip-register.c: * src/gossip-startup-druid.c: * ui/connect.glade: - Started work to support having a different server set than the one in the JID. Needed to be able to tunnel Gossip traffic through for example an SSH tunnel and to be able to connect when the server part of your jid isn't the same as the DNS name of that server. 2004-08-08 Mikael Hallendal * src/gossip-chat-window.c: (chat_window_create_label): - Don't set static width on tabs. 2004-07-29 Mikael Hallendal * src/gossip-chat.c: (chat_input_key_press_event_cb): * src/gossip-group-chat.c: (group_chat_key_press_event_cb): - Fix the enter for input method. 2004-07-29 Mikael Hallendal * src/gossip-chat.c: (chat_input_key_press_event_cb): - Propagate enter to the input method, kinput2 uses it to submit letters. - See http://bugzilla.redhat.com/bugzilla/show_bug.cgi?id=104299 2004-07-29 Mikael Hallendal * src/gossip-presence.c: (gossip_presence_get_pixbuf): - Modified to handle Offline preferences... 2004-07-29 Mikael Hallendal * src/gossip-presence.c: (gossip_presence_get_pixbuf): - Cleaned up and moved this function from gossip-utils. 2004-07-29 Mikael Hallendal * src/gossip-chat-window.c: (gossip_chat_window_init), (chat_window_close_activate_cb) (chat_window_cut_activate_cb): - Added code to handle cut. * src/gossip-chat.c: (gossip_chat_cut): - Cut from the input area if text is selected. - Patch from Thomas Reynolds. - Fixes bug #145469 2004-07-28 Mikael Hallendal * src/gossip-roster-view.c: - Remove unused parent_class. Fixes bug #147360 - Patch from Heikki Taurianinen. 2004-07-09 Mikael Hallendal * src/gossip-contact.c: (gossip_contact_get_name): - Set name to be the JID if name is not set. - Should fix bug #145565 2004-07-07 Mikael Hallendal * src/gossip-about.c: (gossip_about_new): * src/gossip-app.c: (app_iq_handler): * ui/group-chat.glade: * ui/main.glade: - Some branding... 2004-07-03 Mikael Hallendal * src/gossip-utils.c: - Include {} in url regexp. - Patch from Johan Hammar. 2004-07-02 Mikael Hallendal * src/Makefile.am: * src/disclosure-widget.c: * src/disclosure-widget.h: - Removed the unused disclosure widget. 2004-07-02 Geert-Jan Van den Bogaerde * src/gossip-group-chat.c: * ui/group-chat.glade: - Make text input field in group chat the same as in regular chat windows (no longer uses the disclosure widget) - Fixes bug #136830 2004-06-24 Mikael Hallendal * Release 0.7.6 * NEWS: Updated for 0.7.6 * configure.in: Bumped to 0.7.6 2004-06-20 Arafat Medini * ar.po: Added Arabic locale ar to ALL_LINGUAS. 2004-06-17 Mikael Hallendal * src/gossip-vcard-dialog.c: (vcard_dialog_get_vcard): Fixed two strings (vcard_dialog_set_vcard): - Shouldn't send to attribute when requesting ones own vCard. - Fixed some style 2004-06-16 Martyn Russell * src/gossip-vcard-dialog.c: - Added the ability to set personal details (jep-0054) * src/Makefile.am (gossip_SOURCES): * src/gossip-app.c (app_personal_details_cb): - Added gossip-vcard-dialog.[ch] * src/gossip-contact-info.h: - Fixed incorrect #ifdef name. 2004-06-16 Mikael Hallendal * src/gossip-app.c: (app_new_message_presence_data_func): Added (app_new_message): - Show presence icon in popup list in new message dialog. - Fixes bug #133194 2004-06-16 Mikael Hallendal * src/gossip-app.c: (app_new_message): - Use a GtkComboBoxEntry instead of deprecated GtkCombo * src/gossip-contact-info.c: (contact_info_update_subscription_ui): * ui/main.glade: - Set the string from the glade file instead. 2004-06-16 Mikael Hallendal * src/gossip-app.c: - Cleaned out some unused code. (app_new_message): - This was acidently broken in CVS. - Sort names alphabetically in list. (app_complete_name_response_cb): - Don't try to start a chat if no contact is selected, prevents crash. (app_complete_name_activate_cb): * src/gossip-contact.[ch]: (gossip_contact_compare): Make case insensitive (gossip_contact_name_compare), (gossip_contact_name_case_compare), (gossip_contact_name_case_n_compare): Added * src/gossip-jid.[ch]: (gossip_jid_case_compare): Added * src/gossip-utils.[ch]: (gossip_utils_str_case_cmp), (gossip_utils_str_n_case_cmp): Added 2004-06-16 Mikael Hallendal * src/gossip-app.c: (app_handle_subscription_request): - Fixed a string that was a bit jabberish. - Fixes bug #120790 2004-06-16 Mikael Hallendal * src/gossip-contact-info.c: - Implemented resubscription if you are not subscribed to the other contact. - Patch from Ross Burton - Fixes bug #116403 (contact_info_resubscribe_cb): Added (contact_info_update_subscription_ui): Added (contact_info_presence_updated_cb): Added (gossip_contact_info_new): Setup the new UI. * ui/main.glade: Update the UI to include resubscription button. 2004-06-16 Mikael Hallendal * configure.in: Added dependency on GnomeVFS * src/gossip-log.c: (log_get_filename): - Store log files as lowercase jid - Fixes bug #142821 and bug #143035 2004-06-16 Mikael Hallendal * src/gossip-chat.c: - Hopefully fixes bug #143797 finally this time. 2004-06-15 Mikael Hallendal * src/gossip-chat.c: - Automatically resize window after input text view shrinks. - Based on a patch from Lionel Henry - Fixes bug #143797 2004-06-15 Geert-Jan Van den Bogaerde * src/gossip-chat-window.c: (chat_window_create_label): - Make eventbox used for the toolip invisible. - Fixes bug #143671 2004-06-12 Mikael Hallendal * gossip.desktop.in: - Added InstantMessaging to categories. - Fixes bug #144299 2004-06-07 Mikael Hallendal * configure.in: Added Esperanto translation from Brient Hess. 2004-06-05 Geert-Jan Van den Bogaerde * ui/main.glade: - Fix duplicate shortcut in subscription request dialog. - Fixes bug #143779. 2004-05-20 Mikael Hallendal * src/gossip-chat-view.[ch]: (gossip_chat_view_get_selection_bounds): Added (gossip_chat_view_copy_clipboard): Added * src/gossip-chat-window.c: (gossip_chat_window_init): Connect to copy&paste. (chat_window_copy_activate_cb): Added (chat_window_paste_activate_cb): Added * src/gossip-chat.[ch]: (gossip_chat_copy): Added (gossip_chat_paste): Added * ui/chat.glade: Added Edit menu to chat windows. - Added support for Copy in chat windows. 2004-05-18 Mikael Hallendal * autogen.sh: Hard code automake 1.7 2004-05-18 Mikael Hallendal * configure.in: Added ukrainian translation. 2004-05-18 Mikael Hallendal * src/gossip-jid.c: (gossip_jid_string_is_valid_jid): - Allow IP-numbers as JID's - Patch from Fabio Bonelli. - Fixes bug #135614 2004-05-18 Mikael Hallendal * src/gossip-chat-window.c: (chat_window_create_label), (chat_window_update_tooltip): - Have tooltip both on label and presence icon in chat window. - Append Typing a message to tooltip when the other person is replying. - Based on a patch from Fabio Bonelli. - Fixes bug #120284 2004-05-18 Mikael Hallendal * src/gossip-roster-view.c: (gossip_roster_view_flash_contact): - Fix a crash 2004-05-11 Mikael Hallendal * src/gossip-chat-window.c: (chat_window_update_title): - Show the new message icon as window icon on chat window when new message has arrived. Patch from Sergey Dolgopolov. 2004-05-03 Mikael Hallendal * src/gossip-chat-window.c: (gossip_chat_window_init): Setup drag & drop (chat_window_drag_data_received): Added. * src/gossip-roster-view.c: (roster_view_setup_tree): Setup drag & drop (roster_view_drag_begin): Added (roster_view_drag_data_get): Added (roster_view_drag_end): Added - Support dragging contacts to chat windows to open chat with them - Fixes bug #133864 2004-05-02 Mikael Hallendal * src/gossip-roster.c (roster_item_update): - Update GossipContact with new name. 2004-05-02 Mikael Hallendal * configure.in: Require GLib/GTK+ 2.4 2004-05-02 Mikael Hallendal * src/gossip-chat.c: * src/gossip-group-chat.c: - First cut at emitting contact_* signals from group chat. - Nick name when private chatting with someone in group chat works again. (Been broken for a long time). Fixes bug #141565 2004-05-02 Mikael Hallendal * src/Makefile.am: - Added gossip-contact-list.[ch] * src/gossip-app.c: * src/gossip-chat-window.c: * src/gossip-chat.c: * src/gossip-contact-list.c: * src/gossip-contact.c: * src/gossip-group-chat.c: * src/gossip-presence.c: * src/gossip-roster-view.c: * src/gossip-roster.c: * src/gossip-utils.c: - Start using the new GossipContact/GossipPresence API imported from mp-branch. This will make it much easier to get the group chat stuff working. * src/gossip-jabber.[ch]: - Removed left overs * src/gossip-session.[ch]: - Removed left overs 2004-05-01 Mikael Hallendal * src/gossip-group-chat.[ch]: - Objectified. * src/gossip-roster.c: (gossip_roster_item_get_name): - Default name to name-part of jid if nickname not set or "". 2004-04-28 Adam Weinberger * configure.in: Added en_CA to ALL_LINGUAS. 2004-04-28 Mikael Hallendal * Released 0.7.5 * NEWS: Updated for 0.7.5 2004-04-28 Mikael Hallendal * Makefile.am: * configure.in: Bumped version number to 0.7.5 * gossip.spec.in: Removed the spec-file from here. 2004-04-28 Ross Burton * src/gossip-register.c: - Use SSL when registering if we need to. Closes bug #141273. 2004-04-27 Mikael Hallendal * src/gossip-register.c: (register_connection_open_cb): - Patch from Sjoerd Simons to fix issue when registering against jabberd2. Fixes bug #141001 2004-04-21 Mikael Hallendal * src/gossip-app.c (app_new_message): - Don't make dialog text selectable, fixes bug #121056 * src/gossip-group-chat.c (group_chat_key_press_event_cb): - Fix case bug in group chat nick completion. Fixes bug #120876 * src/gossip-group-chat.c (group_chat_row_activated_cb): - Re-enabled support for bringing up private chat with another person in a group chat. Fixes bug #130978 * src/gossip-chat-view.c (chat_view_check_nick_highlight): Added * src/gossip-chat-view.c (gossip_chat_view_append_chat_message): - More sophisticated nick highlighting code. - Fixes bug #132634 2004-04-14 Richard Hult * src/gossip-log.c (gossip_log_message): Handle no or empty body. Fixes bug #138443. 2004-04-11 Gareth Owen * configure.in: Added en_GB to ALL_LINGUAS 2004-04-04 Žygimantas Beručka * configure.in: Added "lt" (Lithuanian) to ALL_LINGUAS. 2004-03-30 Gustavo Maciel Dias Vieira * configure.in: Added pt_BR to ALL_LINGUAS. 2004-03-19 Richard Hult * Release 0.7.4. * configure.in: Bump version. * src/gossip-about.c: Gah, fix stupid bug. 2004-03-18 Richard Hult * Release 0.7.3. 2004-03-09 Richard Hult * src/gossip-log.c (log_transform): Plug leak. 2004-03-04 Richard Hult * src/gossip-chat.c (gossip_chat_init): Use _connect_object so we get disconnected when the data object dies. Fixes a rare crash on exit. 2004-03-02 Richard Hult * src/gossip-app.c (app_idle_check_cb): Fix bug #135944, don't do anything if we're not connected. (app_disconnect): Stop flashing the status when disconnected. 2004-03-02 Mikael Hallendal * src/gossip-app.c: (app_new_message), (app_new_message_cb), (app_popup_new_message_cb): - Only make new message dialog transient if activated from roster window. 2004-03-01 Richard Hult * src/gossip-app.c: (app_authentication_cb): Fix string. (app_idle_check_cb): Remove the delay before starting to flash, since it was more annoying than helpful. (gossip_app_connect): Make this build with debug output enabled. (app_status_clear_away): Stop the flashing here. (app_tray_flash_timeout_func): ifdef out debug code. * src/gossip-roster-view.c: (gossip_roster_view_flash_item): Use the same timeout as app. 2004-02-27 Martyn Russell * src/gossip-join-dialog.c (join_dialog_response_cb): - Added fix that sends your status when connecting instead of just available. * src/gossip-app.c (app_update_show): - Added fix for bug #128362. Group Chat now gets status updates. 2004-02-26 Richard Hult * src/gossip-app.c (app_authentication_cb): Show dialog when authentication fails. Based on patch from Martyn Russell. (app_tray_destroy_cb, app_tray_create): Use the correct signal to catch when the tray is removed. Based on patch from Qball Cow. 2004-02-10 Richard Hult * configure.in: Gah, revert the exslt change and really release. * Release 0.7.2. * configure.in: Bump version to 0.7.2, add libexslt to pkgconfig checks. * NEWS: Updated for 0.7.1 and 0.7.2. 2004-02-09 Richard Hult * src/gossip-app.c: Remove debugging defines for leave/back times. 2004-02-07 Richard Hult * src/gossip-app.c (app_new_message): Grab focus on the entry. (app_client_disconnected_cb): Revert the no separator flag since you can't set that on message dialogs. * src/gossip-chat-view.c (chat_view_is_scrolled_down): Fix version check. * src/gossip-app.c: Flash the notification area when going to and from away. Don't make the status popup transient when invoked from the notification icon, fixes bug #133486. 2004-02-07 Richard Hult * src/gossip-roster-view.c (roster_view_ellipsize_item_string): Limit the length of the status text where trying to ellipsize. People using a string of 1688 (!) chars made this really slow :). 2004-02-02 Richard Hult * src/gossip-chat.c: Disable debug spew. 2004-02-02 Mikael Hallendal * src/gossip-chat.c: (chat_update_locked_resource), (chat_message_handler), (gossip_chat_get_for_item), (gossip_chat_get_for_group_chat): - Fix so that private chats through group chats works a bit better, free FOSDEM beer, HERE I COME!! 2004-02-01 Richard Hult * src/gossip-app.c (gossip_app_set_presence): * src/gossip-dbus.c (handle_set_presence): More stuff in the dbus interface. 2004-01-31 Richard Hult * configure.in: * src/Makefile.am: * src/gossip-app.c: (app_init), (gossip_app_set_away): * src/gossip-dbus.c: Add some experimental, optional dbus stuff. 2004-01-30 Richard Hult * src/gossip-preferences.c (gossip_preferences_show_status_editor): * src/gossip-app.c: (app_client_disconnected_cb): Don't set transient, doesn't work since they can both be shown when the contact list is on another workspace. (app_init): Revert fix for now, see bug #132632. * src/gossip-join-dialog.c: * src/gossip-preferences.c: * ui/main.glade: Add status submenu to the notification area icon popup menu, create the menu with glade instead of with code, add a few icons, clean up a bit while at it (remove cruft from the pre 0.3 days). 2004-01-29 Richard Hult * src/gossip-chat-view.c (chat_view_finalize) (gossip_chat_view_append_chat_message): * src/gossip-app.c (app_tray_push_message): Plug leaks. 2004-01-28 Richard Hult * src/gossip-app.c (add_status_image_menu_item): * src/gossip-log.c (log_get_filename): Plug leaks. 2004-01-27 Richard Hult * src/gossip-chat-window.c (chat_window_tab_detached_cb): When detaching a tab, put the new window at the pointer. * src/gossip-log.c (log_urlify): Escape the href value. * src/gossip-log.xsl: Disable output escaping for the href value. 2004-01-26 Richard Hult * src/gossip-app.c (app_authentication_cb): (app_setup_conn_dependent_menu_items): Handle the sensitivity of the status button automatically instead. 2004-01-26 Richard Hult * src/gossip-app.c: (app_finalize), (app_idle_check_cb), (app_update_show), (app_status_clear_away), (app_status_flash_timeout_func), (app_status_flash_start), (app_status_flash_stop), (gossip_app_status_force_nonaway), (app_status_available_activate_cb), (app_status_busy_activate_cb), (app_status_away_activate_cb), (app_status_show_status_dialog): Make the status icon flash when going from and to away state, and add some slack so we don't go immediately to available status on activity. (app_tray_destroy_event_cb): Only show the window if the tray was removed. * src/gossip-app.c: (app_update_show): Set the label for the status button to Offline when we're offline. * src/gossip-idle.c: (gossip_idle_get_seconds), (gossip_idle_reset): Sanitize, and make it possible to read out non-idletime as well. * configure.in: Bail out if XSS isn't found, we are really depending on it, things don't work at all without it. 2004-01-25 Richard Hult * src/gossip-app.c (app_authentication_cb): Only make the status button sensitive when auth succeeds. 2004-01-24 Richard Hult * src/gossip-chat.c (chat_input_key_press_event_cb): Do nothing on ctrl-enter, insert newline for shift-enter, and send on enter. * src/gossip-app.c (app_init): * src/gossip-idle.c (gossip_idle_get_seconds): Lower the autoback time to 15 seconds. * src/gossip-app.c (app_toggle_visibility, app_is_visible) (app_tray_button_press_cb): Show the contact list if it's visible but on another workspace. Fixes bug #127208. * src/gossip-chat-view.c (chat_view_size_allocate): Scroll down the window if it was scrolled down before we resized. Fixes bug #128011. (chat_view_finalize): Chain up. * src/gossip-utils.c: (gossip_utils_url_regex_match): Move here from chat view. * src/gossip-log.xsl: * src/gossip-chat-view.c: (gossip_chat_view_append_chat_message): * src/gossip-log.c: (log_urlify), (gossip_log_message): And use it here, make links clickable. Fixes bug #127156. 2004-01-23 Richard Hult * ui/main.glade: Don't expand the buttons, fixes bug #132310. * src/gossip-chat-window.c (chat_window_tab_added_cb): Scroll the textview all the way down. * src/gossip-chat.c (gossip_chat_scroll_down): Add. * src/gossip-chat-view.c (gossip_chat_view_scroll_down): Refactor. (gossip_chat_view_append_chat_message) (gossip_chat_view_append_event_msg): Use the above. * src/gossip-main.c (setup_default_window_icon): * ui/chat.glade: Use the logo instead. Fixes bug #125663. * src/gossip-app.c (app_init, app_have_tray): Only hide window if there is a notification area. (app_init): Don't let the window be too narrow. * gossip.schemas.in: Add short/long description to preset_messages, get rid of warning. 2004-01-22 Richard Hult * Release 0.7.1. * gossip.schemas.in: Remove unused schemas, remove duplicate entry, fix y position entry, add preset status messages. * configure.in: AC_SUBST the libxml and libxslt version requirement variables. * src/gossip-app.c (app_idle_check_cb): Reset away message when we get auto-back. 2004-01-21 Richard Hult * Release 0.7. 2004-01-21 Richard Hult * NEWS: Add updated translations. Update some more. 2004-01-21 Mikael Hallendal * NEWS: - Updated for 0.7 * configure.in: - Bumped version to 0.7 - Updated Loudmouth deps to 0.15 2004-01-21 Richard Hult * gossip.spec.in (BuildRequires): Add missing file. * ui/main.glade: Resave with an older glade so we don't get warnings when running with an older gtk+. * src/gossip-app.c: * ui/main.glade: Use dialog instead of weird entry for setting status. 2004-01-20 Richard Hult * src/gossip-app.c (app_status_popup_show): Make the popup as wide as the button. * src/gossip-edit-groups-dialog.c (edit_groups_set):. * src/gossip-roster-view.c (roster_view_group_menu_rename_cb): (roster_view_add_item): * src/gossip-roster.c: (gossip_roster_rename_item), (gossip_roster_rename_group): * src/gossip-contact-info.c (gossip_contact_info_new): Escape the name. Fixes bug #131960. 2004-01-19 Richard Hult * src/gossip-edit-groups-dialog.c (gossip_edit_groups_new): Escape the name. * src/gossip-app.c: (gossip_app_status_force_nonaway), (app_status_available_activate_cb), (app_status_busy_activate_cb): Fix silly bug when going from away manually. (app_status_button_clicked_cb): Popup on clicked as well to get keyboard nav working. 2004-01-19 Richard Hult * src/gossip-app.c: (gossip_app_status_force_nonaway): * src/gossip-chat.c: (chat_send): * src/gossip-group-chat.c: (group_chat_send): Return from away status when we send something. * src/gossip-preferences.c: Fix style. * ui/main.glade: Tweak. 2004-01-19 Richard Hult * src/gossip-chat-window.c (chat_window_update_tooltip): Remove the "Status:" from the tooltip. * src/gossip-app.c: (app_authentication_cb), (app_client_disconnected_cb): Make the presence button sensitive only when we're connected. (app_status_entry_timeout_cb), (app_status_show_status_entry), (app_status_hide_status_entry), (app_status_entry_set_from_entry), (app_status_entry_activate_cb), (app_status_entry_key_press_event_cb): Hide the entry if it's not touched. * src/gossip-preferences.c: (status_add_clicked_cb), (status_entry_changed_cb), (status_entry_activate_cb), (gossip_preferences_show_status_editor): * ui/main.glade: Tweak the editor some more. 2004-01-19 Richard Hult * src/gossip-preferences.c: (status_add_clicked_cb), (status_entry_changed_cb), (status_entry_activate_cb), (gossip_preferences_show_status_editor): * ui/main.glade: Tweak the presence editor. 2004-01-19 Richard Hult * src/gossip-app.c: * src/gossip-idle.c: * src/gossip-preferences.c: * src/gossip-utils.c: * ui/main.glade: Lots of changes. Implement editing of the new status strings, support them in the popup, fix explicit away, and fix a few bugs when entering custom messages. 2004-01-18 Richard Hult * src/gossip-app.c: Implement the new presence stuff. * src/gossip-chat-window.c: (chat_window_update_tooltip): Fix. * src/gossip-utils.c: (gossip_utils_get_stock_from_show): Add. (gossip_utils_get_pixbuf_from_show): Use the above. * ui/main.glade: Tweak the presence entry. 2004-01-18 Richard Hult * src/gossip-app.c: (app_init), (app_status_available_activate_cb): * src/gossip-utils.c: (gossip_option_image_menu_setup): * src/gossip-utils.h: * ui/main.glade: Prepare to implement the new presence design. * src/gossip-chat-window.c: (gossip_chat_window_init), (chat_window_create_label), (chat_window_presence_updated_cb), (chat_window_update_tooltip): * src/gossip-chat.c: (chat_create_gui): Add a tooltip on the name label with the jid and status. 2004-01-17 Richard Hult * src/gossip-roster-view.c (roster_view_add_item): Expand groups by default, fixes bug #130979. * src/gossip-edit-groups-dialog.c: Clean up, namespace functions, remove unecessary casts, don't set treeview properties with code. Add support for applying and reverting changes. Don't display both the name AND jid if they are the same. Don't mark markup as translatable. Make the add entry activate the add button. * src/gossip-roster.c: (roster_group_remove): Remove empty groups. * ui/main.glade: Add apply and cancel buttons to the group edit dialog since it's not instant apply. 2004-01-17 Richard Hult * src/gossip-idle.c: (gossip_idle_get_seconds), (gossip_idle_reset): * src/gossip-idle.h: * src/gossip-app.c: (app_init), (app_idle_check_cb), (app_status_available_activate_cb): Don't return from away until 30 seconds of non-idleness. Make it possible to return manually quicker. * ui/main.glade: * src/gossip-edit-groups-dialog.c: (groups_setup), (groups_populate_columns), (groups_save), (groups_add_groups), (groups_find_name_foreach), (groups_find_selected_foreach), (groups_cell_toggled), (add_entry_changed), (add_button_clicked): Tweak style. * src/gossip-roster-view.c: (roster_view_item_updated): Stop looping if there are no more items. 2004-01-15 Mikael Hallendal * src/gossip-account-dialog.c: * src/gossip-app.c: - updated for new SSL API in Loudmouth 2004-01-14 Richard Hult * src/gossip-edit-groups-dialog.c (groups_add_groups): Compare with the translated unsorted string. 2004-01-13 Mikael Hallendal * src/gossip-app.c: (app_about_cb): - Added an Artwork by line with Daniel Taylor. 2004-01-13 Mikael Hallendal * ui/main.glade: Ctrl-N for sending new messages from main menu. Also changed the message text. 2004-01-13 Martyn Russell * src/gossip-edit-groups-dialog.c: - New module for editing groups. 2004-01-12 Mikael Hallendal * src/gossip-app.c: (app_about_cb): Updated gossip page url. 2004-01-11 Richard Hult * src/gossip-roster-view.c: (roster_view_item_added), (roster_view_item_updated), (roster_view_item_presence_updated), (roster_view_item_removed), (roster_view_group_added), (roster_view_pixbuf_cell_data_func), (roster_view_add_item), (roster_view_remove_item_with_iter), (roster_view_remove_item), (gossip_roster_view_new): Don't show empty groups. 2004-01-09 Richard Hult * ui/pixmaps: Add large gossip logo. * src/gossip-app.c (app_about_cb): Spiffy about box. * src/gossip-chat.c (chat_message_handler): Move sound handling here... * src/gossip-chat-window.c (chat_window_new_message_cb): ...from here. Fixes #130991. 2004-01-08 Richard Hult * src/gossip-app.c (app_status_custom_available_activate_cb) (app_status_custom_busy_activate_cb): Set the status message to the current string. Patch from Krzysztof Luks and Thomas Reynolds. Fixes bug #129264. * src/gossip-log.c (gossip_log_message): Do log messages from contacts not in the roster. * ui/main.glade: Don't ploink and schwosh (don't show the window until we've set the checkbuttons, gets rid of some sound events for Ralph). * src/gossip-chat.c (gossip_chat_get_for_item): Add create bool and only create chat if specified. (gossip_chat_get_history): Add. * src/gossip-app.c: Adapt to the above change. 2004-01-07 Richard Hult * src/gossip-chat.c: (gossip_chat_finalize): Remove composing timeout. We never finalize the windows, but theoretically nice. (chat_disconnected_cb): Reset the composing event sending variables when we get disconnected. (chat_handle_composing_event): Rename from chat_event_handler to better reflect its function. Only enable composing events if the sending party is online. Should fix bug #127592 (chat_message_handler): Update for name change. 2004-01-06 Richard Hult * src/gossip-chat.c (chat_input_key_press_event_cb): Page up/down scrolls. Fixes bug #127595. 2004-01-06 Geert-Jan Van den Bogaerde * src/gossip-chat.c: (chat_item_added): Added (chat_connected_cb): Added (chat_disconnected_cb): Added (gossip_chat_init) * src/gossip-chat-window.c: (chat_window_disconnected_cb): Added (gossip_chat_window_init), (gossip_chat_window_finalize), (chat_window_get_status_pixbuf): - Fixed bug #128010. - Show "(Dis)connected" event message in chat view. - Show contacts in open chat windows as offline when disconnected. 2004-01-06 Geert-Jan Van den Bogaerde * src/gossip-chat-window.c: (chat_window_presence_changed_cb): Removed (chat_window_presence_updated_cb): Added (chat_window_tab_added_cb), (chat_window_tab_removed_cb): * src/gossip-chat.c: (gossip_chat_class_init), (gossip_chat_init), (chat_presence_handler): * src/gossip-chat.h: - Get rid of PRESENCE_UPDATED signal on GossipChat. 2003-12-28 Mikael Hallendal * src/gossip-app.c: (gossip_app_connect): - Use the fixed SSL API in Loudmouth 2003-12-21 Mikael Hallendal * ui/main.glade: - Use stock icons for add and remove in status editor. - Patch from Thomas Reynolds - Fixes bug #129765 2003-12-20 Richard Hult * src/gossip-chat-view.c (chat_view_is_scrolled_down): If we've scrolled up just a tiny bit (half a page), treat that as if we've scrolled down. This makes the scrolling behave nicer with the expanding text entry. 2003-12-20 Mikael Hallendal * src/gossip-chat-view.c: (gossip_chat_view_append_chat_message): - Don't set highligh if to is NULL (private chat) * src/gossip-chat.c: (chat_message_handler): - Send NULL as 'to', it's obvious that it's to yourself. - Fixed bug #126189 2003-12-20 Mike Gratton * src/gossip-preferences.c: (status_busy_dnd_row_deleted_cb): Added (status_away_dnd_row_deleted_cb): Added (gossip_preferences_show_status_editor): connect to row-deleted functions * ui/main.glade: Set reordable - Adds drag-n-drop to the status message lists. - Fixes bug #127206 2003-12-20 Mikael Hallendal * src/gossip-chat-window.c: (chat_window_create_label): set data on chat, not hbox (chat_window_name_changed_cb): Added (chat_window_tab_added_cb): Connect to name-changed (chat_window_tab_removed_cb): Disconnect from name-changed * src/gossip-chat.c: (gossip_chat_class_init): Added name-changed signal (gossip_chat_init): Listen to item-updated and item-removed (chat_item_updated): Added (chat_item_removed): Added, not implemented - Fixed bug #121254 2003-12-20 Mikael Hallendal * src/gossip-app.c: (app_main_window_destroy_cb): - exit instead of quitting main loop 2003-12-19 Mikael Hallendal * src/gossip-app.c: (app_main_window_destroy_cb): - Cancel connection if it's in progress. 2003-12-19 Mikael Hallendal * src/gossip-app.c: (app_name_complete_cmp_func): Added, does case insensitive completion. (app_send_chat_message): - Use names instead of jid's in the completion and drop down. * src/gossip-roster.[ch]: (gossip_roster_find_item): Added, tries to match the string as a JID if it's a valid JID, otherwise does a comparison on the items names. - Fixes bug #116786 2003-12-17 Mikael Hallendal * gossip.schemas.in: - Added main_window_hidden, and x,y position of main-window. - moved main window width/height keys. - Based on patch from Kim Andersen. * src/gossip-app.c: (app_init), (app_toggle_visibility), (configure_event_idle_cb): - Store the visability state of the main window so that we can start without showing the roster. Useful when starting from session. - Store location of main window and open it in the same place when restarted. - Based on patch from Kim Andersen - Fixes bug #121120 2003-12-15 Mikael Hallendal * src/gossip-app.c: (app_connection_ssl_func), (gossip_app_connect), (app_create_connection): Updated to compile with the new SSL-API in Loudmouth, please report any problems with the SSL parts. 2003-12-15 Mikael Hallendal * gossip.desktop.in: * ui/pixmaps/Makefile.am: * ui/pixmaps/gossip.png: * ui/svg/gossip.svg: Added new application icon from Dan Taylor. 2003-12-13 Martyn Russell * src/gossip-chat.c (chat_input_key_press_event_cb): - Fixes event->state && GDK_CONTROL_MASK to one &. 2003-12-13 Jonatan Magnusson * src/gossip-chat-view.c: (chat_view_url_regex_match): (gossip_chat_view_append_chat_message): - Match correctly when two URL's are separated by space. - Fixes bug #126730 2003-12-13 Mikael Hallendal * src/gossip-chat-view.c: (chat_view_populate_popup), (chat_view_clear_view_cb), (gossip_chat_view_clear): * src/gossip-chat-view.h: * src/gossip-chat-window.c: (gossip_chat_window_init), (chat_window_clear_activate_cb), (chat_window_log_activate_cb), (chat_window_info_activate_cb): * src/gossip-chat.c: (chat_send), (gossip_chat_clear): * src/gossip-chat.h: * ui/chat.glade: - Added a Clear to right click menu in chat windows - Added a Conversation->Clear menu item aswell - Based on a patch from Jonatan Magnusson - Fixes bug #127383 2003-12-13 Martyn Russell * src/gossip-app.c (app_complete_jid_response_cb): - Handle when the JID is not in the roster - Fixes bug 127462 reported by Ralph Meijer. 2003-12-13 Mikael Hallendal * src/gossip-app.c: (app_subscription_request_dialog_response_cb): - Don't send reply if user chose to ignore it for now - Based on patch from Martyn Russel - Fixes bug #127461 2003-12-13 Mikael Hallendal * src/gossip-chat-window.c: (gossip_chat_window_init), (chat_window_conv_activate_cb): * ui/chat.glade: - moved view log and show contact information to conversation menu and removed the view menu. - Based on patch from Thomas Reynolds - Fixes bug #127569 2003-12-12 Geert-Jan Van den Bogaerde * src/gossip-chat-window.h: * src/gossip-chat-window.c: - Remove some declarations left over from when we had both tabs and treeview layout. - Correct cast in GOSSIP_CHAT_WINDOW_GET_CLASS. 2003-12-12 Geert-Jan Van den Bogaerde * src/gossip-chat.c: (chat_input_key_press_event_cb): - Don't handle ctrl-enter. 2003-12-11 Mikael Hallendal * src/gossip-chat.c: (chat_create_gui), (chat_input_text_view_send), (chat_input_key_press_event_cb): * ui/chat.glade: - Removed the send button, not needed. 2003-12-11 Mikael Hallendal * src/gossip-chat.c: (chat_create_gui), (chat_send_clicked_cb), (chat_input_key_press_event_cb), (chat_input_text_buffer_changed_cb), (chat_text_view_focus_in_event_cb), (gossip_chat_present): - Removed the disclosure widget and always use an expanding text view. - Fixes bug #127596 * ui/chat.glade: - Removed the entry and disclosure widget. 2003-12-11 Andreas Lööw * src/gossip-app.c: (app_tray_button_press_cb): - Don't handle double clicks and tripple clicks. - Fixes bug #128730 2003-12-11 Thomas Reynolds * src/gossip-app.c: (app_init), (app_show_offline_key_changed_cb): - Listen to show_offline gconf key. Fixes bug #127985 2003-12-11 Iñaki Larrañaga * configure.in: Added "eu" (Basque) to ALL_LINGUAS. 2003-12-10 Richard Hult * src/gossip-log.c (gossip_log_message): Fix namespace, thanks Edd. Fixes bug #128280. 2003-12-08 Richard Hult * src/gossip-app.c: (app_idle_check_cb), (app_update_show), (app_leave_flash_stop), (app_cancel_pending_leave): Fix bug that appeared with the new idle checking. 2003-12-06 Sjoerd Simons * src/gossip-app.c: (app_idle_check_cb), (app_cancel_pending_leave): * src/gossip-idle.c: (gossip_idle_get_seconds): Let gossip detect how long you have been active, sortof. It reports the time in which you have not been idle 3 or more seconds. 2003-11-29 Hasbullah Bin Pit * configure.in: Added 'ms' (Malay) to ALL_LINGUAS. 2003-11-24 Mikael Hallendal * ui/pixmaps/gossip-offline.png: * ui/svg/gossip-offline.svg: Updated with new icons from Daniel Taylor. 2003-11-23 Richard Hult * src/gossip-chat-view.c (chat_view_open_address): Only prepend http:// if there is no protocol specified at all. Fixes bug #127571. (gossip_chat_view_append_chat_message): Try enabling the don't-scroll-down thing for recent gtk+ versions. (gossip_chat_view_append_event_msg): Add it here too. * src/gossip-chat-window.c (chat_window_accel_cb) (gossip_chat_window_init): Add Alt-num accels for switching tabs, fixes bug #127157. 2003-11-20 Ross Burton * src/gossip-chat.c (chat_error_dialog): Don't get the dialog of a NULL window. * src/gossip-chat-window.c (gossip_chat_window_get_dialog): Sanity check the parameter. 2003-11-20 Mikael Hallendal * src/gossip-group-chat.c: (group_chat_priv_chat_new): - build fix for #127350, reported and fixed by Adrian Bunk 2003-11-18 Richard Hult * Release 0.6. * NEWS: Update. * configure.in: Bump version, lower requirement of libxml. * src/gossip-chat-window.c (chat_window_tab_removed_cb): Update sensitivity when removing a tab too. 2003-11-18 Geert-Jan Van den Bogaerde * src/gossip-chat-window.c: (gossip_chat_window_init), (chat_window_tabs_reordered_cb): Update menu item sensitivity on tabs_reordered. 2003-11-17 Richard Hult * ui/svg/gossip-busy.svg: * ui/svg/gossip-offline.svg: Update to the version we're using now. 2003-11-17 Richard Hult * src/gossip-chat.c: (chat_update_locked_resource), (chat_send), (chat_composing_send_start_event), (chat_message_handler), (chat_event_handler): Don't relock on error messages, don't send typing notification to offline contacts, and don't request typing notification from them either. Also handle when we don't get a resource, it seems to happen with some transports(?). 2003-11-17 Richard Hult * src/gossip-chat-window.c: (tab_notebook_size_request_cb), (tab_label_size_request_cb), (chat_window_create_label): Set minimum size for tab labels, and add some experimental commented code for resizing the labels when the window is resized. (chat_window_create_notebook): Set scrollable to TRUE. 2003-11-17 Richard Hult * configure.in: Set Loudmouth requirement to 0.14.1. * ui/main.glade: Use a border width of 2 pixels for the main window. * ui/chat.glade: * ui/group-chat.glade: Set window icons. * ui/pixmaps/Makefile.am (image_DATA): Add group chat icon from Michael Gratton . 2003-11-17 Frederic Crozat * autogen.sh: Handle GNOME2_DIR for aclocal path. 2003-11-17 Mikael Hallendal * src/gossip-roster-view.c: (gossip_roster_view_flash_item): - Always remove from inbox if flash = FALSE. 2003-11-17 Richard Hult * src/gossip-contact-info.c (gossip_contact_info_new): Don't make this one transient. * src/gossip-roster-view.c (roster_view_item_menu_remove_cb): Make the remove dialog transient. * ui/main.glade: Make status editor resizable. * src/gossip-chat-window.c: (gossip_chat_window_init), (chat_window_update_menu), (chat_window_view_activate_cb), (chat_window_tab_left_activate_cb), (chat_window_tab_right_activate_cb), (chat_window_create_notebook): Fix tab navigation and menu sensitivization. Set log item sensitivity each time we open the menu since there might be a log or it might be removed since the last time. * ui/pixmaps/gossip-offline.png: Update from Dan. 2003-11-17 Richard Hult * src/gossip-chat-window.c (gossip_chat_window_init): Connect after so the switch is actually done when weget the callback. * src/gossip-roster-view.c (roster_view_name_cell_data_func): Reset attributes for inbox items. 2003-11-16 Mikael Hallendal * Fixes #126981 * src/gossip-chat-window.c: (chat_window_update_menu): - Make View->Log unsensitive if no log exists. * src/gossip-roster-view.c: (roster_view_button_press_event_cb): - Make Right click->View Log unsensitive when no log exists. 2003-11-16 Mikael Hallendal * src/gossip-chat-window.c: (gossip_chat_window_add_chat): ref the chat (gossip_chat_window_remove_chat): unref the chat * src/gossip-chat.[ch]: (gossip_chat_get_for_group_chat): updated some for the new roster item stuff. * src/gossip-group-chat.c: - did some work to fix private chats in a group chat but decided that we need to look over this code some in the future instead. 2003-11-16 Richard Hult * src/gossip-roster-view.c (roster_view_ellipsize_item_string): Take smaller size in consideration. 2003-11-16 Mikael Hallendal * src/gossip-roster-view.c: (roster_view_name_cell_data_func): - Turned on smaller font for status string. 2003-11-16 Geert-Jan Van den Bogaerde * src/Makefile.am: * src/gossip-chat-window.c: * src/gossip-chat.c: * ui/chat.glade: Use notebook tabs instead of a list to manage multiple chats in one window. 2003-11-15 Richard Hult * src/gossip-roster-view.c (roster_view_name_cell_data_func): Use text_aa in normal state instead of text in insensitive, seems to work better with some themes. Fix problem with multibyte char names. (roster_view_setup_tree): Try a tiny bit less vertical padding. 2003-11-14 Richard Hult * src/gossip-roster-view.c (roster_view_name_cell_data_func): Get the real width of menu sized stock icons instead of hardcoding it to 16. Don't include the tree indentation when ellipsizing "inbox" items. * gossip.schemas.in: Fix typo. 2003-11-14 Mikael Hallendal * ui/main.glade: Make Ctrl-O toggle Show Offline contacts. 2003-11-14 Richard Hult * gossip.schemas.in: Remove open_in_list. Don't translate away_messages and busy_messages, the user can do that with the status editor if needed. This can never be perfect, unless we all start speaking Esperanto. 2003-11-14 Mikael Hallendal * src/gossip-chat.c: (gossip_chat_get_for_item): - Initialize is_online correctly. Fixes #126760 * src/gossip-preferences.c: (preferences_setup_widgets), (gossip_preferences_show): * ui/main.glade: Removed show new chats in list option. 2003-11-14 Mikael Hallendal * src/gossip-roster-view.c: (roster_view_button_press_event_cb): - Don't popup items right-click menu on empty groups. - Fixes #126556 2003-11-14 Vincent Untz * src/gossip-preferences.c: (status_add_away_clicked_cb): - don't try to add a new away message in gconf if the user did not type a message. 2003-11-14 Richard Hult * src/gossip-chat-window.c: (chat_window_delete_event_cb): * src/gossip-chat.c: (gossip_chat_finalize), (chat_create_gui), (chat_update_locked_resource), (chat_get_jid_with_resource), (chat_send), (chat_composing_send_start_event), (chat_composing_send_stop_event), (chat_message_handler), (chat_item_presence_updated), (chat_event_handler), (gossip_chat_present): Always send messages to a specific resource. Lock the resource to the last received message, change resource when the resource has changed in the roster. Don't send composing events to a resource that didn't request any. * src/gossip-roster-view.c: (roster_view_name_cell_data_func): Move a comment. * src/gossip-roster.c: (roster_item_sort_connections): Sort according to show as well. 2003-11-14 Mikael Hallendal * Fixes, #120997, #125434, #126954 * src/gossip-app.c: * src/gossip-chat.c: * src/gossip-roster-view.c: - Handle messages from contacts not in the roster - Send the RosterItem around more instead of converting to and from jid. * src/gossip-log.c: (gossip_log_message): - Don't log from people not on the list. * src/gossip-roster.c: (gossip_roster_item_compare), (gossip_roster_item_new): Added, need when message arrives from someone who is not in your roster. 2003-11-14 Mikael Hallendal * src/gossip-chat.c: (gossip_chat_init): Listen to new presence_updated signal (chat_item_presence_updated): renamed from _item_updated * src/gossip-roster-view.c: (roster_view_iter_compare_func): - Sort items before groups (for inbox functionality). (roster_view_pixbuf_cell_data_func): - Always show message bubble for inbox items. (roster_view_ellipsize_item_string): - Splitted out of _ellipsize_item_strings. (roster_view_name_cell_data_func): - Don't print status on inbox items. (roster_view_find_item): (roster_view_add_item): - Support group == NULL for messages in inbox (above the groups in the roster) (gossip_roster_view_flash_item): - Add the item to the inbox. 2003-11-14 Richard Hult * autogen.sh: Define CONFIGURE. * src/gossip-app.c: (app_idle_check_cb), (app_cancel_pending_leave), (app_status_available_activate_cb): Fix bug where autoaway got stuck. Check idleness a bit more often. * src/gossip-roster-view.c: (roster_view_setup_tree), (roster_view_name_cell_data_func): Tweak padding for the presence icon and use theme friendly colors for the status text. * ui/main.glade: Add missing mnemonics. 2003-11-13 Richard Hult * src/gossip-app.c (app_show_offline_cb): Get the actual value from the menu item, and store it in gconf. (app_init): Connect to the toggled signal instead of activate for the show offline check menu item. Set the initial state from gconf. * gossip.schemas.in: Add show_offline key. * src/gossip-app.c (app_init): Don't set status text here. 2003-11-14 Mikael Hallendal * src/gossip-roster-view.c: - Do the offline/online-filter myself. Probably fixes #126472 * src/gossip-roster.c: - Removed group_item_added/group_item_removed signals - Added "item-presence-updated" signal * src/Makefile.am: Don't compile eggtreemodelfilter 2003-11-13 Mikael Hallendal * src/gossip-roster-view.c: fixed asserts. * src/gossip-roster.c: (gossip_roster_item_get_subscription): added (gossip_roster_item_get_ask): added 2003-11-12 Mikael Hallendal * src/gossip-roster-view.c: (roster_view_group_item_added): return if we can't find group. (roster_view_group_item_removed): same. * src/gossip-roster.c: removed unused variable 2003-11-12 Ross Burton * src/gossip-app.c: (app_init), (app_show_offline_cb): * src/gossip-roster-view.c: (roster_view_init), (roster_view_filter_visible_func), (gossip_roster_view_set_show_offline), (gossip_roster_view_get_show_offline): Implement showing/hiding offline contacts. 2003-11-12 Richard Hult * src/gossip-preferences.c (gossip_preferences_show_status_editor): Set transient, just for Ross. * src/gossip-sound.c (gossip_sound_play): Use silent_busy preference. * src/gossip-app.c (app_init): Deconfuse some more (send chat message -> send message). * ui/main.glade: Fix #121000 and #125566, unnecessary space and confusing menu item. 2003-11-12 Richard Hult * src/gossip-chat-window.c: Include config.h, fixes #126569. * src/gossip-roster-view.c (roster_view_name_cell_data_func): Replace any occurances \n, \r and \t in name and status with space, fixes #126767. * src/gossip-app.c: (app_status_messages_cb), (app_idle_check_cb), (app_update_show), (app_cancel_pending_leave), (app_status_available_activate_cb), (app_status_custom_leave_activate_cb), (add_status_image_menu_item), (show_popup): * src/gossip-preferences.c: (hookup_entry), (preferences_setup_widgets), (gossip_preferences_show), (get_new_message), (status_destroy_cb), (status_add_busy_clicked_cb), (status_add_away_clicked_cb), (status_remove_busy_clicked_cb), (status_remove_away_clicked_cb), (status_response_cb), (status_busy_selection_changed_cb), (status_away_selection_changed_cb), (gossip_preferences_show_status_editor): Add status messages editing and split the "silent away" option into silent away and silent busy. * src/gossip-utils.c: (gossip_utils_get_busy_messages), (gossip_utils_get_away_messages): Add a small workaround for an intltool bug (#121330). * ui/main.glade: Add status message editor and remove the notebook in the preferences dialog. * ui/pixmaps/gossip-busy.png: Yellowify. 2003-11-11 Richard Hult * gossip.schemas.in: Add silent_busy key. * src/gossip-app.c (app_idle_check_cb): Don't interrupt the leaving mode if there's activity. Revert debug code that set the leaving time to a very small number. 2003-11-11 Abel Cheung * configure.in: Added "hr" to ALL_LINGUAS. 2003-11-11 Ross Burton * gossip-contact-info.c: * gossip-join-dialog.c: * gossip-roster-view.c: Everyone loves transient dialogs! Yet more calls to set_transient_for! Yay! 2003-11-11 Johan Hammar * src/gossip-roster-view.c: (roster_view_item_menu_info_cb): Added Show Log. (roster_view_item_menu_log_cb): - Added, shows the log for selected particular contact 2003-11-11 Ross Burton * src/gossip-account-dialog.c: * src/gossip-connect-dialog.c: * src/gossip-preferences.c: Add yet more set_transient_for() calls. 2003-11-11 Ross Burton * src/gossip-roster.c: (roster_iq_handler): - Don't return on duplicate items. Fixes problem when not all contacts show up in the roster. 2003-11-10 Mikael Hallendal * src/gossip-chat-view.c: * src/gossip-preferences.c: * ui/main.glade: - 7364f311ecb3e091649d3f45375d25bd - Fixes #126650 2003-11-10 Mikael Hallendal * src/gossip-chat-window.c: (gossip_chat_window_add_chat): - Use gossip_chat_set_window instead of object property. (gossip_chat_window_remove_chat): same * src/gossip-chat.[ch]: - Added Geert-Jan to copyright. - Removed the rest of the properties. (gossip_chat_handle_message): Make sure hashtables are initiated. (gossip_chat_set_window): added, use instead of object property. * src/gossip-roster.c: (roster_item_update_presence): - Set status to NULL if none where sent. 2003-11-10 Ross Burton * src/gossip-app.c: Add calls to gtk_window_set_transient_for(). 2003-11-10 Mikael Hallendal reviewed by: * src/gossip-chat-window.c: (gossip_chat_window_add_chat), (gossip_chat_window_remove_chat): * src/gossip-chat-window.h: * src/gossip-chat.c: (gossip_chat_class_init), (gossip_chat_set_window): * src/gossip-chat.h: 2003-11-10 Mikael Hallendal * src/gossip-app.c: - Use GossipRosterItem to do things with GossipChat. * src/gossip-chat-window.c: - Changed so that it uses functions instead of object properties on GossipChat. - Use chat_get_item and get stuff of the item instead of duplicating the API in GossipChat. * src/gossip-chat.c: - Connect on item_updated on the roster instead of handling the presence message with own presence callback. - Fixed issue where chat window had wrong icon after someone sent 'composing' event. - Don't override object constructor, do the stuff in _init and in get_for_item functions. - Removed JID and PRIV_GROUP_CHAT properties. - External API's use RosterItem instead of JID. * src/gossip-jid.[ch] (gossip_jid_equal), (gossip_jid_hash): - Added, to be used in hash tables to be able to use JID's as keys. * src/gossip-roster-view.c (roster_view_group_item_added): - Fixed a compile error reported by Edwin Mons, thanks! * src/gossip-roster.c: - Use JID's as keys in item hashtable. - Fixes a problem where jid wheren't case insensitive reported by Paul van Tilburg * src/gossip-utils.c: (gossip_utils_show_to_string),(gossip_utils_show_from_string): - Fixed the names of two functions. 2003-11-10 Richard Hult * src/gossip-roster-view.c (roster_view_name_cell_data_func): Escape name and status strings properly. * src/gossip-app.c: (configure_event_idle_cb), (app_window_configure_event_cb): Tweak the window size saving code a bit, don't save until we've stopped resizing. (app_init): Set the size request, part of roster item ellipsizing hack. * src/gossip-roster-view.c: (roster_view_setup_tree), (ellipsize_string), (ellipsize_roster_item_strings), (roster_view_name_cell_data_func): Weird hack to ellipsize the name and status strings in the roster. Needs a bit more work. * ui/main.glade: Add placeholder and menu item for status message editor. 2003-11-09 Richard Hult * src/gossip-app.c: (app_update_show), (app_status_custom_leave_activate_cb), (app_status_custom_busy_activate_cb), (app_status_custom_available_activate_cb), (add_status_image_menu_item), (show_popup): * ui/main.glade: Add support for custom available message and remove some dead test code. * src/gossip-app.c (app_update_show): Send status message even when available. We need to decide on how to handle this later. * src/gossip-roster-view.c: (roster_view_name_cell_data_func): Don't try to print a NULL status string. 2003-11-09 Richard Hult * src/gossip-chat.c (gossip_chat_present): Grab focus on the entry. * src/gossip-chat-window.c (chat_window_focus_in_event_cb): Event handlers must return a boolean, fixes the weird focus problems. 2003-11-07 Mikael Hallendal * src/gossip-roster.c (roster_clear_foreach_item): - Signal item removed, not added. Wonder how this worked. 2003-11-07 Mikael Hallendal * src/gossip-roster.c (roster_item_update): - Don't crash on empty groups. Patch from Sjoerd Simons. Fixes #126436 2003-11-07 Richard Hult * configure.in: Add missing -I to the X includes when checking for Xss. Fixes autoaway. 2003-11-07 Mikael Hallendal * Merged with roster-rewrite branch - Fixes #121265, #116412, #119919, #116396, #125536 * src/Makefile.am: - Added gossip-roster-view.[ch] - Added eggtreemodelfilter.[ch] * src/eggtreemodelfilter.[ch]: Added, used in the new roster view. * src/gossip-add-contact.c: (add_contact_prepare_page_2): Use the new roster to get groups. * src/gossip-app.[ch]: - Updated to work with the new roster. - Moved the hard coded status strings (used in the option menu) to gossip-utils.[ch]. - Moved GossipShow to gossip-utils.h * src/gossip-chat-view.c: * src/gossip-chat.c: - Updated for new roster, still needs a lot of work. * src/gossip-chat-window.c: (chat_window_get_status_pixbuf), - updated for new roster, still needs a lot of work. uses JID's when it should use roster item and so. (chat_window_get_name): - renamed from _get_nick and updated to use roster item. * src/gossip-contact-info.[ch]: (gossip_contact_info_new): - removed the GossipApp argument, pretty useless. * src/gossip-log.c: (gossip_log_message): Use GossipRosterItem to get name of contact. * src/gossip-marshal.list: Added VOID:POINTER,POINTER * src/gossip-roster-view.[ch]: - This is the new Roster View. - Currently listens to signals from GossipRoster to update the tree. - It uses a GtkTreeStore put in a EggTreeModelFilter to filter out offline contacts. - Currently shows the status messages on one row under the name. Will have a preference for this. - Still need some work but I think most of the work is otherwise to get the rest of the code to work with the new roster backend. * src/gossip-roster.[ch]: - Implemented now - The GossipRoster object holds a hash table for all items and one for all groups. It is responsible for parsing incoming presence messages aswell as roster pushes. - Other code should probably listen on "item_updated" rather than implementing there own presence message handler. - Adds a GossipRosterItem and a GossipRosterGroup to represent a contact and the various groups. - This implementation handles when your contacts have logged in multiple times. This wasn't handled in the other roster. - Contacts can now be in multiple groups (you can't set them to be so in the the view/or a group editor at this point. This can however be useful for users that normally use other clients to setup groups. * src/gossip-utils.[ch]: (gossip_utils_get_pixbuf_from_stock): moved here from old roster. (gossip_utils_get_pixbuf_offline): added (gossip_utils_get_pixbuf_from_show): moved here from old roster. (gossip_utils_get_default_status): - added, needed by GossipApp and GossipRosterView * ui/main.glade: added a check menu option for showing/hiding offline contacts. Not implemented yet though. 2003-11-06 Richard Hult * configure.in: Add libxml/libxslt dependencies. * gossip.spec.in: Add libxslt requirement. * src/Makefile.am: * src/gossip-chat-window.c: (gossip_chat_window_init), (chat_window_update_menu), (chat_window_log_activate_cb): * src/gossip-chat.c: (chat_send), (chat_message_handler): * src/gossip-log.c: (log_ensure_dir), (log_get_filename), (log_get_timestamp), (gossip_log_message), (log_transform), (gossip_log_exists), (gossip_log_show): * ui/chat.glade: More logging stuff and rearrange the menu slightly. 2003-11-06 Ross Burton * ui/main.glade: (contact_information): Make the JID selectable, forgot this. 2003-11-06 Ross Burton * ui/main.glade: (contact_information): Add a label for the JID, and make the Description area fill and expand. * src/gossip-contact-info.c: Set the JID in the Contact Information dialogue. * configure.in: Fix setting of CFLAGS. 2003-11-04 Abel Cheung * configure.in: Added "zh_TW" to ALL_LINGUAS. 2003-11-04 Richard Hult * src/gossip-chat-window.c: (gossip_chat_window_init): * src/gossip-chat.c: (chat_create_gui), (chat_composing_cb): * ui/chat.glade: Fix paddings etc and remove the info button, move the composing icon. 2003-11-04 Mikael Hallendal * Tabbed window patch from Geert-Jan Van den Bogaerde, you rock! * gossip.schemas.in: open_in_list gconf-key. * src/Makefile.am: Added new files gossip-chat-window.[ch] * src/gossip-app.c: Updated to work with tabbed chat windows. * src/gossip-chat.[ch]: Made into an object - This is now an object. - Represenents a single chat. * src/gossip-group-chat.c: Updated for tabbed chat windows. * src/gossip-preferences.c: Added setting for tabbed chat windows. * src/gossip-chat-window.[ch]: added * ui/chat.glade: tabbed window support * ui/main.glade: added tabbed chat window setting to pref dialog 2003-11-04 Richard Hult * src/gossip-app.c: (app_tray_destroy_event_cb), (app_tray_create): Try a bit harder not to crash when the notification area disappears. 2003-11-03 Richard Hult * src/Makefile.am: Add gossip-log.[ch] * src/gossip-chat-view.c: (chat_view_maybe_append_timestamp), (gossip_chat_view_append_event_msg): * src/gossip-chat.c: (chat_send), (chat_message_handler): * src/gossip-utils.c: (gossip_utils_get_timestamp): * src/gossip-utils.h: Refactor timestamp code and add logging stuff from Johan Wallenborg. Need to implement viewing of logs and finalize the format. * src/gossip-app.c: (app_status_leave_activate_cb), (show_popup): Tweak more. Don't treat away/leave the same as busy. 2003-11-02 Richard Hult * gossip.schemas.in: * src/gossip-app.c: (app_init), (app_update_show), (app_cancel_pending_leave), (app_leave_flash_timeout_func), (app_leave_flash_start), (app_status_available_activate_cb), (app_status_busy_activate_cb), (app_status_leave_activate_cb), (app_status_custom_leave_activate_cb), (app_status_custom_busy_activate_cb), (add_status_image_menu_item), (show_popup), (app_status_button_clicked_cb): * ui/main.glade: Tweak status setting, we're hopefully getting closer to the final thing. 2003-10-30 Richard Hult * src/gossip-chat-view.c: Include sys/types.h for FreeBSD and others. Reported by Edwin Mons . 2003-10-30 Mikael Hallendal * gossip.desktop.in: - Changed the GenericName suggested by Thomas Reynolds. 2003-10-28 Richard Hult * src/gossip-app.c: (app_cancel_pending_leave), (app_idle_check_cb), (app_status_activate_cb), (status_entry_activate_cb): Cancel leave if the status is changed. (app_leaving_cb): Remove some unused text buffer code. 2003-10-28 Richard Hult * src/gossip-app.c: (app_idle_check_cb), (app_update_show): Implement simple "leaving timeout". * src/gossip-preferences.c: (set_string_from_gconf), (entry_value_changed_cb), (string_notify_func), (hookup_entry), (preferences_setup_widgets), (gossip_preferences_show): Add support for string/entry widget and hookup status messages. 2003-10-28 Richard Hult * gossip.schemas.in: Clean up some old obsolete schemas. * src/gossip-app.c (app_update_show): Use away message when away. (app_idle_check_cb): Remove stale autoaway preferences code, it's all hardcoded now. * ui/main.glade: Set hscroll automatic for the roster tree, to stop the window from growing horizontally and get stuck very wide. Also add a very simple (for now) leave dialog. Move around preferences and add some experimental status message preferences. 2003-10-27 Richard Hult * src/gossip-app.c: (app_init), (app_status_edit_cb), (app_status_align_menu), (app_status_entry_grab_cb), (app_status_custom_activate_cb), (app_status_activate_cb), (ellipsize_string), (add_status_image_menu_item), (show_popup), (status_button_clicked_cb), (status_entry_activate_cb), (status_entry_key_press_event_cb), (status_entry_focus_out_event_cb), (status_busy_toggled_cb): * ui/main.glade: Try another variation of status handling. * src/gossip-app.c (configure_event_idle_cb) (app_window_configure_event_cb, app_init): Remember the size of the roster window. * gossip.schemas.in: Add width/height and messages for away, available, busy and "leaving". 2003-10-27 Mikael Hallendal * src/gossip-chat-view.[ch]: (gossip_chat_view_append_event_msg): - Added 'timestamp' argument to specify if the message should be timestamped. 2003-10-27 Mikael Hallendal * src/gossip-app.c: (app_update_show): - Set priority depending on your show value. Patch from Sjoerd Simons. - Fixes #121002 2003-10-27 Mikael Hallendal * src/gossip-chat-view.c: (chat_view_finalize): Unref the buffer (chat_view_maybe_append_datestamp): - Don't append timestamp on event messages. (gossip_chat_view_append_event_msg): Append timestamps. 2003-10-26 Mikael Hallendal * src/gossip-chat.c: (chat_presence_handler): - Don't append online/offline messages if chat window is hidden. * src/gossip-chat-view.c: - Added the buffer to priv, use priv->buffer instead of getting from the view all the time. (chat_view_init): Set wrap mode, this also solves the center justification on the event-tag. Sounds like a bug. (chat_view_setup_tags): (chat_view_populate_popup), (chat_view_get_timestamp): renamed from _get_stamp (chat_view_maybe_append_timestamp): - renamed from _view_append_timestamp - use append_event_msg to display timestamps. (chat_view_maybe_append_datestamp): - added to date stamping when chat goes on over midnight. - Fixes #124069 (gossip_chat_view_append_chat_message): - maybe append datestamp. (gossip_chat_view_append_event_msg): - outputs text centered in dark gray. * src/gossip-chat.c: (chat_create_gui): keep track on if user is offline or not (chat_presence_handler): - output offline/online noticed in chat window. * src/gossip-roster-old.c: (gossip_roster_old_get_is_offline): - added, used when creating a gossip-chat window. 2003-10-26 Mikael Hallendal * src/gossip-chat-view.[ch]: Missed adding these * Long time planned cleanup. Now the chat text views are of the class * GossipChatView which is a sub class of GtkTextView. All functions * used from GossipChat and GossipGroupChat was put in gossip-utils. * src/Makefile.am: - Added gossip-chat-view.[ch] - Removed gossip-message.[ch] * src/gossip-chat.c: * src/gossip-group-chat.c: - Use GossipChatView instead of a GtkTextView directly. * src/gossip-message.[ch]: Removed * src/gossip-utils.c: (gossip_utils_substring): Made external, used to be static for use only within the text view functions. Might become handy in other places and is now used in GossipChatView. * ui/chat.glade: - Removed the message dialogs (unused, old and ugly) - Removed the chat text view, created from C now * ui/group-chat.glade: - Removed the chat text view, created from C now 2003-10-25 Mikael Hallendal * src/gossip-utils.c: (gossip_text_view_setup_tags): - missed to update tag names * gossip.schemas.in: - Changed timestamp all messages to default to false * src/gossip-chat.c: * src/gossip-group-chat.c: * src/gossip-utils.c: - Added last_timestamp to keep track of last timestamp. - ichat-like timestamps, half fixes #121004 - group-chat and chat now keep track on when the last timestamp was added. 2003-10-25 Richard Hult * src/gossip-utils.c: (open_address), (open_address_cb), (copy_address_cb), (utils_url_event_cb), (utils_text_view_populate_popup), (gossip_text_view_setup_tags): Add open and copy link items to the text view's context menu, based on patch from Ross Burton. Also fix a small bug that made protocol-less links not to work. * src/gossip-utils.c (utils_url_event_cb): Don't show the url if it's just being selected. * ui/main.glade: Remove padding on Ross' orders. 2003-10-16 Richard Hult * acinclude.m4: Remove -sign-promo since that's not usable for C. 2003-10-15 Mikael Hallendal * ui/svg/emoticon-face1.svg: * ui/svg/emoticon-face10.svg: * ui/svg/emoticon-face11.svg: * ui/svg/emoticon-face12.svg: * ui/svg/emoticon-face2.svg: * ui/svg/emoticon-face3.svg: * ui/svg/emoticon-face4.svg: * ui/svg/emoticon-face5.svg: * ui/svg/emoticon-face6.svg: * ui/svg/emoticon-face7.svg: * ui/svg/emoticon-face8.svg: * ui/svg/emoticon-face9.svg: * ui/svg/face-template.svg: * ui/svg/gossip-away.svg: * ui/svg/gossip-busy.svg: * ui/svg/gossip-extended-away.svg: * ui/svg/gossip-offline.svg: * ui/svg/gossip-online.svg: * ui/svg/id.svg: * ui/svg/license: * ui/svg/message.svg: - More art work from Daniel Taylor. Here are the SVG's. * ui/pixmaps/gossip-available.png: * ui/pixmaps/gossip-away.png: * ui/pixmaps/gossip-busy.png: * ui/pixmaps/gossip-extended-away.png: * ui/pixmaps/gossip-offline.png: - Added great new icons by Daniel Taylor. Rock on dude! Let's attack the emoticons next ;) 2003-10-14 Mikael Hallendal * src/gossip-chat.c: (chat_message_handler): Don't resend compose request. * autogen.sh: Added LIBTOOL, couldn't autogen. * configure.in: Require CVS Loudmouth * src/gossip-chat.c: (chat_input_activate_cb): - don't send end-of-compose-event when clearing text entry. (chat_send_multi_clicked_cb): same (chat_message_handler): request compose events. (chat_request_composing): Don't invent message id's here. 2003-10-13 Mikael Hallendal * autogen.sh: Added patch from Edwin Mons to make it easier to use various versions of auto* tools. 2003-10-07 Mikael Hallendal * src/Makefile.am: Fixed build problem reported by Jonathan Taylor. 2003-10-03 Mikael Hallendal * src/gossip-roster.c: - More work done. Starting to get there, soon I'll be able to start hacking on the GUI parts. * src/gossip-utils.[ch] (gossip_show_from_string): Added 2003-09-09 Jordi Mallach * ui/main.glade: Add mnemonics to the Edit menu items and Prefs dialog. 2003-09-03 Mikael Hallendal * src/gossip-app.c (app_update_show): Send that we are away and extended away to the server, don't just update the local icon :) 2003-09-03 Martyn Russell * src/gossip-add-contact.c: (add_contact_prepare_page_2), (add_contact_page_2_vcard_handler), (gossip_add_contact_new): * ui/main.glade: - Show a label to tell the user that we have requested information. - Fixes bug #120606 2003-09-01 Mikael Hallendal * src/gossip-app.c: (app_idle_check_cb): Make compile 2003-09-01 Richard Hult * src/gossip-app.c: (app_idle_check_cb): Don't use the preferences. * src/gossip-roster-old.c (roster_presence_handler): Fix bug that was introduced with the new status stuff. * src/gossip-utils.c: Remove dead code. 2003-09-01 Metin Amiroff configure.in: Added "az" in ALL_LINGUAS. 2003-08-30 Richard Hult * src/gossip-chat.c (chat_create_gui): Use stock icon for typing notification. * src/gossip-main.c: (setup_default_window_icon): * ui/main.glade: Fix stale references to old image. Thanks boyens! 2003-08-30 Christophe Merlet * configure.in: Added "fr" to ALL_LINGUAS. 2003-08-30 Wang Jian * configure.in: Added "zh_CN" to ALL_LINGUAS. 2003-08-30 Richard Hult * src/gossip-add-contact.c (add_contact_prepare_page_2): Reset name, email and country labels when we don't have the info. Patch from Martyn Russell. * src/Makefile.am: * src/eel-ellipsizing-label.h: * src/eel-ellipsizing-label.c: Add. * src/gossip-app.c: * ui/main.glade: Use an ellipsizing label for the status string. 2003-08-29 Martyn Russell * src/gossip-app.c (app_subscription_request_dialog_response_cb): Only add a user if we accept their request. 2003-08-29 Richard Hult * src/gossip-utils.c (gossip_hig_dialog_new): Add. * src/gossip-app.c: (gossip_app_connect): Use if here for the error message mentioned below. 2003-08-29 Martyn Russell * src/gossip-app.c: (gossip_app_connect): Display an error message if we can't connect. 2003-08-29 Richard Hult * src/gossip-app.c (app_subscription_request_dialog_response_cb): Remove markup from translations. Don't try to add contact if the user deferred. * src/gossip-stock.[ch]: * src/Makefile.am: Add gossip-stock. * src/gossip-add-contact.c: (add_contact_prepare_page_3), (add_contact_prepare_page_last): Remove unnecessary markup. * src/gossip-app.c: Clean up status handling and separate the jabber-speak "show" from online/offline handling. Implement the design for setting status that was discussed on the list. It's not completed yet, but a good start to work from. * src/gossip-chat.c: (chat_create_gui), (chat_presence_handler): * src/gossip-group-chat.c: (group_chat_presence_handler), (set_status_foreach), (gossip_group_chat_set_show): Use stock icons. * src/gossip-main.c: (main): Register stock icons. * src/gossip-preferences.c: (hookup_spin_button), (preferences_setup_widgets), (gossip_preferences_show): Remove autoaway preferences. * src/gossip-roster-old.c: Add plenty of ugly hacks to work with the new status handling and stock icons. No use to do it nicely since Mikael is working on a new roster anyway. * src/gossip-sound.c: (gossip_sound_play): Make this work with the new status handling. * src/gossip-utils.c: (tagify_bold_labels), (get_glade_file): Experiment a bit with getting less markup in translated strings. * ui/main.glade: Remove some old crap that we don't use, to get less strings to translate. Also try out the tagify stuff on a few strings. * ui/connect.glade: Tweak padding a bit and remove hidden widgets. Make the connect button default button and make the entry active the default. * ui/pixmaps/*: Rename images and play around with some new ones for status icons. Needs tweaking or replacing but still better than the old ones, in that the different statuses are easier to tell apart. 2003-08-29 Richard Hult * src/gossip-utils.c (tagify_bold_labels): Try this out. May work pretty well. * ui/main.glade: Try tagifying with a few dialogs. * gossip.schemas.in: Change default autoaway times to 5 and 30 minutes. * ui/main.glade: Don't mark test string as translatable. 2003-08-29 Richard Hult * ui/group-chat.glade: Fix a few border widths (4 to 0 or 6). 2003-08-29 Mikael Hallendal * ui/*.glade: Higification (some, not full done...). Based on patch from Martyn Russell . 2003-08-27 Ole Laursen * configure.in: Added "da" (Danish) to ALL_LINGUAS. 2003-08-24 Abel Cheung * src/gossip-roster-old.c: Add translator comment. 2003-08-23 Kjartan Maraas * configure.in: Added "no" to ALL_LINGUAS. 2003-08-20 Richard Hult * configure.in: Add de. 2003-08-19 Richard Hult * src/gossip-account-dialog.c: * src/gossip-account.c: * src/gossip-app.c: * src/gossip-join-dialog.c: * src/gossip-main.c: * src/gossip-startup-druid.c: Finish up the new account dialog and do some cleaning that was made possible now that we only have one account visible in the interface. It's still a bit crufty. * src/gossip-connect-dialog.c: Use the specified resource. * src/gossip-chat.c (chat_presence_handler): Update tooltip on presence change (resource might be different). * src/gossip-app.c (app_set_status_indicator): Don't set the window icon depending on the status. 2003-08-19 Richard Hult * ui/connect.glade: Hide priority and edit buttons for now. * src/gossip-utils.c (utils_url_event_cb): Remove unecessary string. Check that we got the right tag, fixes bug #118601. * src/gossip-startup-druid.c (startup_druid_prepare_page_last): Remove markup from two strings. * ui/chat.glade: * ui/main.glade: Remove a string and tweak padding to get rid of uneccesary spaces from a strings. 2003-08-18 Richard Hult * src/Makefile.am: Clean up a bit. * src/gossip-account.c: (gossip_account_get_default), (gossip_account_store), (gossip_account_set_default): * src/gossip-account.h: Always return a default account, fix syncing after changing accounts. * src/gossip-app.c: (app_preferences_cb): Simplify. (app_account_information_cb): Implement. * src/gossip-connect-dialog.c: (account_dialog_destroy_cb), (connect_dialog_destroy_cb), (connect_dialog_response_cb), (gossip_connect_dialog_show): Implement. * src/gossip-startup-druid.c: (startup_druid_get_account_info): Change default name. * src/gossip-utils.c: (gossip_glade_setup_size_group): Add, sets up a size group for a number of named widgets. (gossip_glade_connect): Just skip missing widgets, makes debugging easier. * ui/connect.glade: * ui/main.glade: Add menu item and dialog for editing account information. Simplify the connect dialog. 2003-08-18 Artur Flinta * configure.in: Added "pl" to ALL_LINGUAS. 2003-08-16 Mikael Hallendal * src/gossip-app.c: (app_message_handler): - handle headline messages like any other for now. * src/gossip-roster.c: (gossip_roster_get_type), (roster_class_init), (roster_init), (roster_finalize): * src/gossip-roster.h: WIP 2003-08-15 Mikael Hallendal * src/Makefile.am: * src/gossip-add-contact.c: * src/gossip-app.c: * src/gossip-app.h: * src/gossip-chat.c: * src/gossip-message.c: * src/gossip-roster-old.c: * src/gossip-roster-old.h: - Moved gossip-roster.[ch] to gossip-roster-old.[ch] to make place for hacking on the new implementation. 2003-08-15 Richard Hult * configure.in: Bump version to 0.5, require loudmouth 0.13.2 Release 0.5 2003-08-13 Richard Hult * src/gossip-roster.c (roster_menu_rename_cb): Set the group child node if we have a group. Fixes bug #119629. * src/gossip-chat.c: (chat_dialog_notify_visible_cb): Send stop composing event when the window is closed. (chat_create_gui), (chat_input_key_press_event_cb), (chat_input_entry_changed_cb), (chat_input_text_buffer_changed_cb): Don't send composing events for key presses, but when the text changes. (chat_send), (chat_presence_handler), (chat_composing_send_start_event), (chat_composing_start), (chat_composing_send_stop_event), (chat_composing_stop), (chat_composing_remove_timeout), (chat_composing_stop_timeout_cb): Refactor a bit so we can send a stop event from other places. 2003-08-11 Richard Hult * src/gossip-app.c (app_pop_message): Compare JID without resource, should fix the stuck flashing icon. 2003-08-11 Richard Hult * src/gossip-chat.c: Tweak the composing event code a bit. * ui/chat.glade: Hide composing icon initially. * ui/pixmaps/message.png: Use another icon. 2003-08-11 Mikael Hallendal * gossip.spec.in: - Fixed the description line. Thanks to JR Boyens for spotting. 2003-08-08 Danilo Šegan * configure.in: Added "sr" and "sr@Latn" to ALL_LINGUAS. 2003-08-06 Mikael Hallendal * src/gossip-app.c: (app_set_status): * src/gossip-group-chat.c: (gossip_group_chat_set_status): - Don't set the show value if it's "normal". We were setting it to in that case which is wrong. 2003-08-05 Richard Hult * ui/main.glade: Add icon for Add Contact... item, patch from Thomas Reynolds . 2003-08-05 Mikael Hallendal * ui/chat.glade: Added compose_image to the glade-file. Otherwise you can't open a window, might not be what Richard had in mind... 2003-08-05 Richard Hult * src/gossip-chat.c: (destroy_notify_cb), (chat_dialog_notify_visible_cb), (chat_init), (chat_get_for_jid), (chat_create_gui), (chat_input_key_press_event_cb), (chat_key_press_event_cb), (chat_send), (chat_message_handler), (chat_presence_handler), (gossip_chat_get_dialog), (chat_request_composing), (chat_event_handler), (chat_composing_start), (chat_composing_stop), (chat_composing_timeout), (chat_set_compose_icon): Typing notification based on patch from Nicolas Peninguy. It's disabled for now, since it's not completely finished yet. * ui/chat.glade: * ui/pixmaps/Makefile.am: * ui/pixmaps/typing.png: Add typing image. 2003-08-04 Richard Hult * src/gossip-app.c (app_iq_handler): Don't use PACKAGE for the client name, "Gossip" looks nicer than "gossip". 2003-08-05 Mikael Hallendal * src/gossip-app.c: (app_push_message): compare without resouce. * configure.in: Bumped loudmouth version to 0.13 * src/gossip-app.c: (app_message_handler): Removed bogus sub type check. (app_push_message): Don't push blink if this user is already blinking. * src/gossip-chat.c: (chat_dialog_delete_event_cb): added (chat_get_for_jid): initialize as not hidden. (chat_create_gui): connect to delete_event. (chat_key_press_event_cb): hide chat instead of destroying it. (chat_message_handler): if hidden, allow more handlers. (chat_hide): Added, hides the chat dialog (gossip_chat_append_message): Don't append if message is hidden. * src/gossip-app.c: (app_about_cb): - Commited patch from Thomas Reynolds to add link to project page in about dialog. Fixes bug #117730 2003-08-03 Richard Hult * src/gossip-accounts-dialog.c (accounts_dialog_get_current_account) (accounts_dialog_use_ssl_toggled) (accounts_dialog_remove_account_cb) (accounts_dialog_register_account_cb) (accounts_dialog_update_account_cb): Don't do anything if there is no selected account. Fixes bug #117863 and some more. (accounts_dialog_update_account_cb): Actually get the iter before trying to set the name. * src/gossip-roster.c (gossip_roster_flash_jid) (roster_jid_updated): Finish up the flashing code from last night. 2003-08-02 Richard Hult * src/gossip-app.c (app_pop_message): Do case insensitive compare. * src/gossip-favorites-dialog.c (favorites_dialog_remove_favorite_cb) (favorites_dialog_update_favorite_cb): Don't try to do anything if no favorite is selected. Fixes a crash. 2003-08-02 Richard Hult * src/gossip-app.c: (app_message_handler), (app_user_activated_cb), (app_complete_jid_response_cb), (app_tray_icon_button_press_cb), (app_push_message), (app_pop_message): * src/gossip-roster.c: (roster_create_pixbufs), (roster_update_user), (roster_pixbuf_cell_data_func), (roster_item_free), (gossip_roster_get_status_pixbuf_for_jid), (gossip_roster_get_selected_jid), (flash_timeout_func), (gossip_roster_flash_jid): Flash icons in the roster as well. 2003-08-02 Richard Hult * src/gossip-app.c (app_user_activated_cb): (app_complete_jid_response_cb): Present the window instead of just showing it. 2003-08-01 Richard Hult * src/gossip-app.c: (app_init), (app_show_hide_activate_cb), (app_send_chat_message), (app_send_chat_message_cb), (app_popup_send_chat_message_cb), (app_complete_jid_response_cb), (app_toggle_visibility), (app_tray_icon_destroy_cb), (app_tray_icon_button_press_cb), (app_create_tray_icon), (app_tray_icon_set_status), (app_tray_icon_push_message), (app_tray_icon_pop_message), (app_tray_icon_update_tooltip): Add tooltip for new messages, lower the flash rate, add context menu for the icon. * src/gossip-roster.c: (get_jids_foreach), (gossip_roster_get_jids), (gossip_roster_free_jid_list): Ref and unref the jids. * src/gossip-chat.c (chat_send): Don't send empty messages. 2003-08-01 Richard Hult * src/gossip-app.c: (app_init), (app_authentication_cb), (app_message_handler), (app_user_activated_cb), (app_set_status), (app_tray_icon_button_press_cb), (app_complete_jid_response_cb), (gossip_app_get_status), (flash_timeout_func), (app_tray_icon_push_message), (app_tray_icon_pop_message): * src/gossip-chat.c: (chat_get_for_jid), (chat_create_gui): * ui/pixmaps/Makefile.am: * ui/pixmaps/message.png: Don't popup messages, just blink the notification area. Needs a bit more work like maybe a preference, and making subscription request windows behave the same. 2003-08-01 Richard Hult Clean up a bit: * src/*.[ch]: Don't pass around app since it can always be accessed through gossip_app_get (). * src/gossip-app.c: Remove handling of chat and group chat windows from here. Don't set "Online" as status. * src/gossip-chat.c: Move handling of chat windows here. * src/gossip-group-chat.c: Move handling of group chat windows here. Fix nick completion to not lowercase the result. Make priv chats display the right nick in the chat dialog. Make priv chat dialogs insensitive if their group chat parent is closed. * src/gossip-utils.c (utils_url_event_cb): Add the start of an error dialog for when an URL can't be shown. 2003-07-30 Richard Hult * ui/chat.glade: Don't set the size of the text view and make the default dialog size a bit smaller. 2003-07-30 Duarte Loreto * configure.in: Added Portuguese (pt) to ALL_LINGUAS. 2003-07-27 Richard Hult * ui/group-chat.glade: * ui/chat.glade: Enable word wrap for the input text view. Spotted by Johan. * gossip.spec.in (Summary): Fix description, thanks Johan. 2003-07-22 Dafydd Harries * src/gossip-chat.c: Marked chat window title strings translatable. 2003-07-18 Richard Hult * src/gossip-chat.c (chat_dialog_info_clicked_cb): Use the nick, not the jid. Fixes #117739 patch from thomasr@infograph.com (Thomas Reynolds). * Release 0.4. * gossip.spec.in: Install the schema. 2003-07-17 Mikael Hallendal * src/Makefile.am: removed unused XSS_LIBS 2003-07-17 Mikael Hallendal * configure.in: Bumped to 0.4 * NEWS: Added with information for 0.4 2003-07-17 Mikael Hallendal * src/gossip-add-contact.c: - Cancel pending operation when dialog is destroyed. * configure.in: Bumped loudmouth-dep to 0.12 2003-07-17 Richard Hult * configure.in: Remove --enable-autoaway, just check that we have it and fetch the right libraries. * src/gossip-contact-info.c (gossip_contact_info_new): Set up a size group to align the labels in the two different tables. (contact_info_vcard_reply_cb): Make the hrefs not expand and put them inside alignments to line them up. * ui/main.glade: Set default size, add padding for the close button, make the boxes and tables not expand, enable word wrap for the text view. 2003-07-17 Mikael Hallendal * src/gossip-contact-info.c: (contact_info_vcard_reply_cb), (contact_info_version_reply_cb): (gossip_contact_info_new): * ui/main.glade: More work on the contact information dialog. 2003-07-17 Mikael Hallendal * src/gossip-contact-info.c: (gossip_contact_info_new): * ui/main.glade: Remove additional information and address fields. 2003-07-17 Richard Hult * src/gossip-preferences.c (preferences_setup_widgets): Patch from thomasr@infograph.com (Thomas Reynolds). Fixes bug #117696. * src/gossip-app.c (app_iq_handler): Just use OS name, and not the version or arch. * src/gossip-contact-info.c (contact_info_version_reply_cb): Fix a string. 2003-07-17 Mikael Hallendal * src/gossip-favorites-dialog.c: (favorites_dialog_update_favorite_cb): - Strip nickname before saving. * src/gossip-join-dialog.c: (join_dialog_response_cb): - Strip nickname before connecting. Fixes bug #116990 * src/gossip-contact-info.c: Added support for cancelling requested information if user closes the window before the reply to vCard and version has been received. * src/gossip-account.c: * src/gossip-account.h: * src/gossip-accounts-dialog.c: * src/gossip-app.c: * src/gossip-startup-druid.c: * ui/connect.glade: Added support for SSL. Fixes bug #116421. 2003-07-17 Richard Hult * ui/main.glade: Make labels selectable in add contact dialog. Fixes bug #116991. 2003-07-17 Richard Hult * ui/chat.glade: * src/gossip-chat.c (chat_create, chat_dialog_info_clicked_cb): Add a small button that brings up contact info for the user. Based on patch from Dafydd Harries and fixes bug #116982. Also don't show the full JID in the dialog, just the nickname or username, and add a tooltip with the full JID. 2003-07-17 Richard Hult * src/gossip-chat.c (chat_dialog_focus_in_event_cb) (chat_message_handler, chat_update_title, gossip_chat_new): Prefix window title with an asterisk when new messages has arrived and the window is not focused. Fixes bug #117663. * configure.in: Test for XScreenSaver extension by default. (ALL_LINGUAS): Add ru. * gossip.schemas.in: Add some entries and rearrange the old ones to get a hierarchy instead of a flat structure. * gossip.desktop.in (X-GNOME-Bugzilla-Component): Add bugzilla info, patch from thomasr@infograph.com (Thomas Reynolds). Fixes bug #117646. * src/gossip-utils.c: Remove jid functions that are moved to gossip-jid.c. (gossip_text_view_append_chat_message): Only use timestamps if enabled. * src/gossip-preferences.c: Implement preferences dialog and handling. * src/gossip-sound.c (gossip_sound_play): Use gconf values. * src/gossip-app.c (app_set_status): Don't enable/disable sound here. * src/gossip-utils.c (gossip_password_dialog_run): Set a border on the checkbutton to align it with the rest of the widgets. 2003-07-16 Richard Hult * src/gossip-roster.c (roster_menu_rename_cb): * ui/group-chat.glade: s/nick/nickname/. Patch from daf@parnassus.ath.cx, fixes bug #117314. 2003-07-16 Dafydd Harries * configure.in: Added "cy" (Welsh) to ALL_LINGUAS. 2003-07-16 Thomas Reynolds * src/gossip-app.c: (app_connection_open_cb): * src/gossip-register.c: (gossip_register_account): * src/gossip-utils.c: (gossip_password_dialog_run): * src/gossip-utils.h: * ui/connect.glade: - Added a "remember password"-checkbutton to the password dialog. 2003-07-12 Richard Hult * src/gossip-roster.c (roster_iq_handler): Remove user from the tree store when we get "remove" subscription. (roster_presence_handler): Don't do anything if we don't have the user in the list. (roster_menu_remove_cb): Remove item from roster. 2003-07-11 Richard Hult * src/gossip-roster.c (roster_menu_rename_cb): Popup dialog for entering new name. Send rename message. * src/gossip-utils.c (password_dialog_activate_cb): Fix prototype. 2003-07-11 Jordi Mallach * gossip.schemas.in: Try to improve some strings removing redundant words. 2003-07-10 Richard Hult * Makefile.am: * gossip.schemas.in: * gossip.spec.in: Add schemas. * src/gossip-app.c (app_idle_check_cb): Only use autoaway if enabled, and get time preferences from gconf. * src/gossip-utils.c (utils_insert_with_emoticons): Don't convert smileys unless enabled. * src/gossip-group-chat.c (group_chat_presence_handler): Fix string, suggested by Jordi. * src/gossip-app.c (app_client_disconnected_cb): Clean up the code a bit. Try to fix bug #117134. Add the start of auto-away feature, based on a patch from Kevin Dougherty . * src/Makefile.am: Add gossip-idle.[ch]. * src/gossip-app.c (app_init): Start idle checker. * src/gossip-idle.c (gossip_idle_get_seconds): Add. * configure.in: Add XScreenSaver test. Default to disabled for now. 2003-07-10 Richard Hult * configure.in: Add es. 2003-07-09 Richard Hult * src/gossip-group-chat.c (gossip_group_chat_new): Don't show the window until we know things went OK. (group_chat_presence_handler): Remove message after handling it, fix bug in sub type checking code, handle errors. Show window if it's the first presence message. (group_chat_message_handler): Same fixes as above. (group_chat_iter_compare_func): Do case insensitive compare. * src/gossip-chat.c (chat_message_handler): Check that the message is for the chat before checking for errors. Plug leak. (chat_create): Set margin before showing the window. * src/gossip-utils.c: Add a few more smiley patterns. (gossip_text_view_set_margin): Make this work when the theme changes and if set before a widget is shown. 2003-07-08 Richard Hult * src/gossip-contact-info.c (gossip_contact_info_new): Add window title. * src/gossip-add-contact.c (add_contact_cancel) (add_contact_last_page_finished): Hide the window instead of destroying, workaround until we implement cancelling of reply messages. * src/gossip-chat.c (chat_dialog_send): Send messages to the full JID, don't strip out the resource. 2003-07-08 Miloslav Trmac * configure.in: Added cs (Czech) to ALL_LINGUAS. 2003-07-07 Richard Hult * configure.in: Add nl to ALL_LINGUAS. * Release 0.3. 2003-07-07 Mikael Hallendal * configure.in: - Bumped to 0.3 - Updated loudmouth dep 2003-07-07 Mikael Hallendal * src/gossip-utils.c: Include sys/types.h, fixes build on FreeBSD. 2003-07-07 Mikael Hallendal * configure.in: Added italian translation. 2003-07-06 Richard Hult * src/gossip-app.c: Rework the nick completion dialog to be modeless, fixes bug #116785 for real. * ui/connect-chat.c: Add missing mnemonics. Fixes #116784. * src/gossip-chat.c (chat_dialog_key_press_event_cb, chat_create): Fix bug #112463. * src/gossip-app.c (app_send_chat_message_cb): Remove grab_focus, since it's not needed and also screwed up focus. Fixes bug #116785 reported by Jordi Mallach. * src/gossip-chat.c (chat_message_handler): It doesn't matter how many you strip out of strings, they will always find something else to complain about! ;) * src/gossip-app.c (app_message_handler): Treat normal messages like chat messages for now, so we don't just drop them. * src/gossip-register.c (register_connection_open_cb): Use the real password. (gossip_register_account): Ask for a password if we don't have one. 2003-07-05 Richard Hult * src/gossip-app.c (app_connection_open_cb): Move password dialog from here... * src/gossip-utils.c (gossip_password_dialog_run): ...and move here. * src/gossip-accounts-dialog.c (accounts_dialog_update_account_cb): Plug leak and fix crash when no account was selected.. (accounts_dialog_register_account_cb): Add. * src/gossip-startup-druid.c (startup_druid_get_account_info): Tweak a string. (startup_druid_register_account): Remove registration code from here... * src/gossip-register.c: ...and put it here. 2003-07-05 Richard Hult * src/gossip-startup-druid.c: (startup_druid_get_account_info), (startup_druid_prepare_page_last), (gossip_startup_druid_run): Put the list of servers in the code instead of in the glade file and use the selected one. * ui/main.glade: Remove a double vbox, make spacing consistent and fix a string. * src/gossip-chat.c (chat_message_handler): Handle errors by displaying them in a dialog. * src/gossip-app.c (app_send_chat_message_cb): Open a chat window for the selected JID. 2003-07-05 Richard Hult * src/gossip-app.c: (app_send_chat_message_cb), (app_complete_jid_idle), (app_complete_jid_insert_text_cb), (app_complete_jid_key_press_event_cb), (app_complete_jid_to_string): Implement a dialog for entering the JID of the person to start a chat with. Autocompletes on JID, may change this to include nicks as well. * src/gossip-roster.c: (get_jids_foreach), (gossip_roster_get_jids), (gossip_roster_get_selected_jid): * src/gossip-roster.h: Implement get_selected_jid and get_jids, which is used for the above. * src/gossip-add-contact.c (add_contact_prepare_page_2): Don't pass NULL to g_completion_add_items. 2003-07-04 Richard Hult * src/gossip-add-contact.c (add_contact_prepare_page_2): Don't set NULL list as popdown strings, fixes runtime warning. * src/gossip-app.c (app_message_handler): Don't crash on unhandled messages, print out a warning. * src/gossip-roster.c (roster_iq_handler): Plug leak. * src/gossip-roster.c: Reorder popup menu and use stock items. * src/gossip-app.c (gossip_app_connect): Use the server and port from the specified account. Fixes -n usage. * src/gossip-roster.c (roster_menu_remove_cb): Unsubscribe is presence, not message. Ask for confirmation before removing. * src/gossip-main.c (main): Add -l, --list-accounts option that lists the available accounts and exist. (main): Bail out if the specified account doesn't exist. * ui/main.glade: Add disconnect menu item. * src/gossip-app.c (app_disconnect_cb): Add. Patch from Kevin Dougherty . * src/gossip-app.c (app_finalize) (app_setup_connection_dependent_menu_items, app_init): (app_update_connection_dependent_menu_items): Update sensitivity of menu items depending on connected/disconnected state. * src/gossip-roster.c (roster_finalize): Use roster_reset_connection. * src/gossip-app.c (gossip_app_get_roster): Add missing void. (gossip_app_connect_default): Likewise. * src/gossip-chat.c (gossip_chat_new): Put the name of the other part in the title. Based on patch from Kevin Dougherty . * ui/connect.glade: Hm, why was the response ID changed? Change back to make connect work again. * src/gossip-app.c (app_init): Make it possible to test the druid by setting the environment variable GOSSIP_FORCE_DRUID. (gossip_app_connect): Add warning. * src/gossip-roster.c (roster_disconnected_cb): Disconnect handlers. 2003-07-03 Richard Hult * src/gossip-connect-dialog.c: Remove unsed ACCOUNTS_PATH macro. * gossip.spec.in: Update. * src/gossip-utils.c: Add a few smiley patterns. * src/gossip-accounts-dialog.c: (accounts_dialog_remove_account_cb): Fix comment. * src/gossip-app.c: (app_init): Remove debug message, and only create connection if we have an account. * src/gossip-roster.c: (roster_menu_remove_cb): Add comment about agents. * src/gossip-startup-druid.c: (startup_druid_get_account_info), (startup_druid_last_page_finished), (gossip_startup_druid_run), (startup_druid_progress_dialog_destroy_cb), (startup_druid_register_handler), (startup_druid_connection_open_cb), (startup_druid_register_account): * src/gossip-startup-druid.h: Implement the remaining bits of the startup druid and hook it up. * ui/connect.glade: Remove spurios '5' in the port entry. * src/gossip-jid.c (gossip_jid_get_part_name): Don't return an allocated string for some cases and a static one for some. Always return a copy. * ui/*.glade: Add missing mnemonics, patch from Jordi Mallach . 2003-07-03 Richard Hult * ui/chat.glade: Remove send button from single line entry box. * ui/group-chat.glade: Likewise. * src/gossip-chat.c: (chat_create), (chat_input_activate_cb), (chat_input_key_press_event_cb) * src/gossip-group-chat.c: (group_chat_key_press_event_cb), (gossip_group_chat_new): Remove send button when in single line mode. Ctrl-Enter sends message for multiple line mode. 2003-07-01 Richard Hult * src/gossip-contact-info.c (contact_info_vcard_reply_cb): Don't try to set NULL text in the text buffer. * src/gossip-roster.c (roster_menu_rename_cb): Fix comment. (roster_menu_info_cb): Remove debug output. * src/gossip-contact-info.c (contact_info_dialog_destroy_cb) (gossip_contact_info_new): Free data when the dialog is destroyed. Make debugging output optional. (contact_info_dialog_close_cb): Hide the dialog (we should destroy it when there's a way to cancel a pending reply). 2003-06-30 Richard Hult * ui/chat.glade: * ui/group-chat.glade: Set vscroll policy of the text view to always. Fixes a weird scrolling problem and some jerkyness when the scrollbar appears. 2003-06-29 Jordi Mallach * gossip.desktop.in: Add translation markers and StartupNotify entry. 2003-06-28 Richard Hult * gossip.spec.in: * Makefile.am: * gossip.desktop.in: * configure.in: Prepare for a release some time in the future. * src/gossip-main.c (main): Add option for which account to connect to, fixes bug #495. Also change the short option for no autoconnect to -n. * src/Makefile.am: Make it pass distcheck.. * Makefile.am: Dist intltool. Patch from Ross Burton to fix #590. * src/gossip-app.c (app_iq_handler): Don't hard code OS. Fixes #469. * src/gossip-chat.c (chat_dialog_send): Detect /clear. * src/gossip-group-chat.c (group_chat_send): Add some case insensitivy-foo for /nick detection. Also detect /clear. Fixes #359. 2003-06-23 Mikael Hallendal * src/gossip-add-contact.c: (add_contact_prepare_page_3): - Removed markup from translatable string and added question mark. Reported by Christian Rose. * src/gossip-contact-info.c: (gossip_contact_info_new): - Removed markup from translatable string. Reported by Christian Rose. 2003-06-18 Jordi Mallach * configure.in (ALL_LINGUAS): Added "ca" (Catalan). 2003-06-18 Mikael Hallendal * src/gossip-account.c: (gossip_account_get_default): (gossip_account_store): if there are no default account set, set the one currently storing as default. * src/gossip-app.c: (app_init) - show the druid if you don't have a default account set. (app_tray_icon_button_press_cb): Store and restore position. * src/gossip-startup-druid.c: * src/gossip-startup-druid.h: (startup_druid_destroyed), (gossip_startup_druid_run): Rename gossip_startup_druid_new to _run and make it run the application and save the account when user entered all information. 2003-06-15 Richard Hult Fix #345: * src/gossip-roster.c (roster_str_equal, roster_str_hash): Case insensitive versions for the JID hash. * src/gossip-roster.c (roster_create_store): Use them here. 2003-06-15 Mikael Hallendal * src/gossip-account.c: * src/gossip-account.h: (gossip_account_store): Moved from gossip-accounts-dialog. * src/gossip-accounts-dialog.c: (accounts_dialog_add_account_cb), (accounts_dialog_update_account_cb): - updated to the move of gossip_account_store. * src/gossip-startup-druid.c: (startup_druid_get_account_info), (startup_druid_prepare_page_last), (startup_druid_last_page_finished): store the created account. 2003-06-14 Mikael Hallendal * src/gossip-add-contact.c: (add_contact_page_2_vcard_handler): - fixed bug introduced when make loudmouth case-sensitive. 2003-06-13 Mikael Hallendal * src/gossip-add-contact.c: (add_contact_prepare_page_2): Don't use hardcoded strings * src/gossip-app.c: * src/gossip-app.h: (gossip_app_connect), (gossip_app_connect_default), (gossip_app_create), (app_set_status), (gossip_app_get_roster): Use a static GossipApp, only one anyway. * src/gossip-chat.c: (chat_create), (chat_message_handler): updated to change in gossip-app. * src/gossip-connect-dialog.c: (connect_dialog_response_cb): updated to change in gossip-app. * src/gossip-main.c: (main): same * src/gossip-message.c: (message_new): same * src/gossip-roster.c: * src/gossip-roster.h: (roster_free_string_list): added (roster_finalize), (roster_create_store), (roster_presence_handler), (roster_update_user): fixed internal list of groups. (gossip_roster_get_groups): added 2003-06-13 Mikael Hallendal * src/gossip-jid.c: (gossip_jid_get_resource): - return NULL if resource not set, fix annoying bug in group chats. 2003-06-13 Mikael Hallendal * *: Updated mine and Richards contact information 2003-04-26 Mikael Hallendal * Updated for latest loudmouth. 2003-04-15 Richard Hult * src/gossip-chat.c: (chat_message_handler): Remove debug output. 2003-04-15 Richard Hult * src/gossip-app.c (app_tray_icon_destroy_cb): Show the main window * when the tray icon is destroyed. * src/gossip-app.c (app_tray_icon_button_press_cb): Fix coding style and don't use g_object_get_property, fixes a GValue leak. 2003-04-14 Mikael Hallendal * src/gossip-app.c: Fixes #626 (app_get_chat_for_jid): ref the jid (app_chat_dialog_destroy_cb): unref the jid 2003-04-11 Mikael Hallendal * src/gossip-app.c: (app_message_handler): Use LM_MESSAGE_SUB_TYPE_AVAILABLE instead of LM_MESSAGE_SUB_TYPE_NOT_SET. 2003-04-09 Ross Burton * src/gossip-app.c: Connect to click events on the tray icon and show/hide the main window. 2003-04-09 Mikael Hallendal * src/gossip-contact-info.c: (contact_info_request_information): - use resource when requesting version. (gossip_contact_info_new): use GossipJID * src/gossip-roster.c: (roster_presence_handler): Update JID (roster_item_update): unref correct jid. 2003-04-09 Mikael Hallendal * src/Makefile.am: added gossip-contact-info.[ch] * src/gossip-roster.c: (roster_menu_remove_cb), (roster_menu_info_cb), (roster_menu_rename_cb), (roster_get_selected_item), (roster_presence_handler), (roster_update_user), (roster_item_new): - worked on the contact info * src/gossip-utils.h: * ui/main.glade: 2003-04-09 Mikael Hallendal * src/gossip-app.c: (app_get_group_chat): - use without resource here, I think that is what we want... * src/gossip-group-chat.c: (group_chat_presence_handler): reference the jid we put in the model. 2003-04-08 Mikael Hallendal * src/Makefile.am: * src/gossip-account.c: (gossip_account_get_jid): * src/gossip-account.h: * src/gossip-add-contact.c: (add_contact_prepare_page_1), (add_contact_prepare_page_2), (add_contact_1_id_entry_changed), (gossip_add_contact_new): * src/gossip-add-contact.h: * src/gossip-app.c: (app_init), (app_subscription_request_dialog_response_cb), (app_handle_subscription_request), (app_chat_dialog_destroy_cb), (app_get_chat_for_jid), (app_group_chat_destroy_cb), (app_get_group_chat), (app_message_handler), (app_connection_open_cb), (app_user_activated_cb): * src/gossip-app.h: * src/gossip-chat.c: (chat_create), (chat_dialog_destroy_cb), (chat_dialog_send), (chat_dialog_send_single_clicked_cb), (chat_dialog_send_multi_clicked_cb), (chat_message_handler), (chat_presence_handler), (gossip_chat_new), (gossip_chat_new_from_group_chat): * src/gossip-chat.h: * src/gossip-group-chat.c: (group_chat_send), (group_chat_activate_cb), (group_chat_row_activated_cb), (group_chat_destroy_cb), (group_chat_setup_tree), (group_chat_find_user_foreach), (group_chat_find_user), (group_chat_message_handler), (group_chat_presence_handler), (group_chat_topic_entry_activate_cb), (group_chat_priv_chat_new), (group_chat_priv_chat_incoming), (gossip_group_chat_new): * src/gossip-group-chat.h: * src/gossip-jid.c: (jid_free), (gossip_jid_new), (gossip_jid_get_full), (gossip_jid_get_without_resource), (gossip_jid_get_resource), (gossip_jid_get_part_name), (gossip_jid_ref), (gossip_jid_unref), (gossip_jid_equals), (gossip_jid_equals_without_resource), (gossip_jid_string_is_valid_jid): * src/gossip-jid.h: * src/gossip-message.c: (message_dialog_destroy_cb), (message_send_dialog_response_cb), (gossip_message_send_dialog_new), (message_recv_dialog_response_cb), (message_new): * src/gossip-message.h: * src/gossip-roster.c: (roster_menu_remove_cb), (roster_find_user_foreach), (roster_create_store), (roster_presence_handler), (roster_iq_handler), (roster_update_user), (roster_item_new), (roster_item_update), (roster_item_free), (gossip_roster_get_nick_from_jid), (gossip_roster_get_status_pixbuf_for_jid), (gossip_roster_have_jid): * src/gossip-roster.h: * src/gossip-utils.c: * src/gossip-utils.h: - Added GossipJID and use it everywhere :) 2003-04-05 Mikael Hallendal * src/gossip-roster.c: (roster_presence_handler): - remove old group from hash table, not just the tree model. 2003-03-29 Richard Hult * src/gossip-sound.c (gossip_sound_play): Disable sounds for online/offline for now. We need preferences for this later. 2003-03-26 Richard Hult * src/gossip-roster.c (roster_menu_remove_cb): Implemented. 2003-03-26 Richard Hult * src/gossip-utils.c: (gossip_text_view_append_chat_message): (gossip_text_view_append_normal_message): Turn off scrolling protection (tm). 2003-04-03 Mikael Hallendal * src/gossip-app.c: (app_connection_open_cb): - Removed some old cruft with gotos and horror. (app_client_disconnected_cb): - Don't show dialog if the disconnect was done by the user. (app_disconnect): - Don't emit CONNECTED-signal, *doh* - Only disconnect if we are actually connected. (app_block_until_connected_timeout), (app_block_until_connected): Removed, unused and lm_connection_open_and_block should be used instead * src/gossip-roster.c: (roster_init): Don't create the hashes here. (roster_create_store): - Do it here instead, and destroy them if they exists. 2003-04-02 Mikael Hallendal * src/gossip-startup-druid.c: - Work to get it working. Now collects almost all information. - Still needs to actually register and store account information. * ui/main.glade: Work on the startup druid. 2003-04-01 Mikael Hallendal * src/gossip-roster.c (roster_presence_handler): - notify that the tree changed. Patch by Dirk Dierckx. 2003-03-25 Mikael Hallendal * src/gossip-app.c: - Removed block_until_disconnect stuff - Use app_disconnect instead of lm_connection_close directly. It also signals "disconnected" signal on app. (app_client_disconnected_cb): removed the ifdef around this function and instead use it. (app_disconnect): added 2003-03-14 Mikael Hallendal * src/gossip-app.c (app_create_connection): - updated for API change in Loudmouth * src/gossip-roster.c: use gossip_marshal_* * src/Makefile.am: generate marshals * src/gossip-app.c (app_class_init): use gossip_marshal_* * src/gossip-marshal-main.c: added * src/gossip-marshal.list: added 2003-03-13 Mikael Hallendal * configure.in: updated loudmouth deps. to make sure we have a late enough. 2003-03-09 Richard Hult * src/gossip-add-contact.c (add_contact_prepare_page_2): Use gossip_jid_get_name. * src/gossip-app.c (app_get_group_chat): Remove gpointer hack. (app_get_chat_for_user): Likewise. * src/gossip-chat.c (chat_message_handler): Put nick matching here instead of in gossip_text_view_append_chat_message. * src/gossip-group-chat.c (gossip_group_chat_new): Change to take room, server and nick arguments. (group_chat_presence_handler): Use gossip_jid_ functions. (group_chat_message_handler): Likewise. (group_chat_set_title): Don't mark Gossip for translation. (group_chat_destroy_cb): Free a bit more stuff. Use gossip_jid_ functions. (group_chat_send): Add support for /nick, mostly for making testing easier. Dunno if we want to keep it. * src/gossip-app.c (gossip_app_join_group_chat): Change to take room, server and nick arguments. * src/gossip-join-dialog.c (join_dialog_response_cb): Update for the above change. * src/gossip-utils.c (gossip_jid_get_name): Rename from gossip_username_from_jid. (gossip_jid_get_server): Implement. (gossip_jid_create): Implement. (gossip_text_view_append_chat_message): Don't pass roster, handle that from the outside. Fix the to/from matching so that nick highlighting works for both chat and group chat, and when nick != username. Try to fix the scroll problem. (gossip_text_view_append_normal_message): Try to fix the scroll problem. Remove old unused include. 2003-02-26 Richard Hult * ui/main.glade: Remove file menu and put quit in actions. * src/gossip-roster.c (roster_connected_cb): Don't play roster sounds within the first 5 seconds, instead of 2. 2003-02-25 Richard Hult * src/gossip-utils.c (gossip_text_view_append_chat_message): Don't scroll down if we're not at the bottom before the message is inserted. (gossip_text_view_append_normal_message): Likewise. (gossip_text_view_setup_tags): Don't use bold for nicks. Add a few variants of smileys. (utils_insert_with_emoticons): Strip out the total length of the smiley characters when we get a match. (gossip_text_view_append_chat_message): Use style instead of nick:. 2003-02-11 Mikael Hallendal * src/*.c: Use the new GError API in loudmouth. 2003-02-04 Mikael Hallendal * src/gossip-app.c (app_create_connection): moved code here so that we connect if we make a new connection after the inital one. 2003-02-03 Richard Hult * src/gossip-utils.c (utils_insert_with_emoticons): Loop so we can have more than one smiley in a string. 2003-02-03 Richard Hult * src/gossip-utils.c (utils_insert_with_emoticons): Rewrite from scratch to work properly with utf-8 and to make it stop mangling word and numbers. Also add a cool smiley and make adding smileys a lot easier. 2003-02-02 Richard Hult * src/gossip-utils.c (utils_insert_with_emoticons): Don't insert a smile if it would end up inside a word. * src/gossip-roster.c: Remove extern GossipApp. (roster_item_factory_trans, roster_init): Setup right-click menu. (roster_button_press_event_cb): Handle right-click and bring up context menu. (roster_menu_remove_cb): Add stub, needs implementing. * ui/main.glade: Add startup druid. Needs more work. * src/gossip-startup-druid.c: Add, needs more work. * src/gossip-app.c (app_about_cb): Don't mark copyright for translation and update year. (app_init): Test the startup druid (GOSSIP_DRUID=1 gossip). 2003-02-02 Mikael Hallendal * src/*.c: Updated for sending "to" argument with lm_message_new*. * src/*.c: LmConnection is no longer an object. 2003-02-02 Richard Hult * src/gossip-chat.c (chat_message_handler): Fix sounds on gtk 2.0. 2003-02-02 Mikael hallendal * src/gossip-app.c: Updated to latest changes in loudmouth. 2003-02-01 Richard Hult * src/gossip-app.c (app_set_status): Set silent mode for busy, away, extended away, offline. * src/gossip-sound.c (gossip_sound_set_silent): Add. 2003-01-30 Mikael Hallendal * src/gossip-add-contact.c: (add_contact_prepare_page_2): send a vcard request. (add_contact_page_2_vcard_handler): set the values if they are included in the vcard. requested in prepare_page_2. * src/gossip-chat.c (chat_message_handler): print if we have a thread, would be nice to know if clients actually set the thread field in there clients. * src/gossip-add-contact.c: (add_contact_prepare_page_3): - added, set the label to no hardcode micke. Fixes #492 (add_contact_last_page_finished): - added, called when you click finish. - Sends the request/roster update and closes the dialog. - Fixes #479 2003-01-29 Richard Hult * src/gossip-chat.c (chat_message_handler): Don't play sound if we're focused. 2003-01-29 Mikael Hallendal * src/gossip-app.c (app_init): only set data on connection if we have an account. Fixes crash reported by marcus. * src/gossip-add-contact.c: (add_contact_complete_group_idle): fix warning reported by marcus. (add_contact_prepare_page_last): - don't set group child if group is not set. * src/gossip-roster.c (roster_iq_handler): - Don't just check if group node exists, also check that the value exists. Fixes #494 * src/gossip-accounts-dialog.c: (accounts_dialog_set_account_information): - store passwd in private. * src/gossip-account.c: (account_get_value): use get_string_with_default to always get something (never NULL). (gossip_account_get): read password from private 2003-01-29 Richard Hult * src/Makefile.am: * configure.in: Build the sounds directory. * src/sounds: Add sounds from PSI. * src/gossip-chat.c (chat_message_handler): Play sound. * src/gossip-roster.c (roster_presence_handler): Play sound. (roster_disconnected_cb): Disable sounds. (roster_connected_cb): Run 2 second timeout to enable sounds. (roster_enable_sound_cb): Enable sounds here. (roster_finalize): Remove the timeout if it's running when we finalize. 2003-01-29 Mikael Hallendal * src/gossip-app.c (app_message_handler): don't assert on messages with sub type "error" * src/gossip-roster.c (roster_iq_handler): - add user in group Others if no group is set on them. * src/*.c: - Updated to use the new LmMessageSubType in loudmouth 0.2 * src/gossip-roster.c: - Fixes #481 - Fixes #468 - Store GossipRosterItem's in an hashtable for quick access. - Use set_data_func to set information in the roster - Lots of changes that had to do with this... * src/gossip-app.c: - Fixes #478 (app_subscription_request_dialog_response_cb): - Check to see if the jid already is in the roster and if it is not popup the add user dialog. (app_handle_subscription_request): - Set add to contact list check button insensitive and uncheck it if user already in your contact list. * configure.in: - require loudmouth 0.2 - updated to 0.2 (for fun, so that we can point fingers at Marcus for only running 0.1 :) 2003-01-28 Richard Hult * src/gossip-app.c: Remove duplicate includes. (gossip_app_init): Remove unused gconf favorites code. * ui/group-chat.glade: Add disclosure widget here too. * src/gossip-group-chat.c: Handle single/multi line input. * src/gossip-chat.c: Rework to use a window instead of dialog and also add a disclosure widget so we can switch between single and multiline entry. * src/Makefile.am: Add -export-dynamic to get custom widgets working with libglade. * src/gossip-group-chat.c (group_chat_message_handler): Remove debug output. (group_chat_priv_chat_new): Likewise. * ui/group-chat.glade: Add group chat editing dialog. * src/gossip-join-dialog.c: Update to use the new config UI and data for group chat favorites. * src/gossip-favorites-dialog.[ch}: New, dialog for configuring the group chat favorites. * src/gossip-favorite.[ch]: New, handle group chat favorites config data. * ui/connect.glade: Move the edit button, next to the option menu. * src/gossip-connect-dialog.c: Connect to the edit button instead of handling it in the response callback. 2003-01-27 Mikael Hallendal * src/gossip-accounts-dialog.c: - Fixes #364 - Added support for ports entry. (accounts_dialog_passwd_entry_insert_text_cb): - added to check the input in the port entry. (accounts_dialog_update_account_cb): set port if port entry changed. * src/gossip-account.c: (gossip_account_get): read port from config. * ui/connect.glade: added port entry to accounts-dialog. * src/gossip-utils.c (gossip_text_view_append_chat_message): - removed rhult-warning. * src/gossip-chat.c (chat_presence_handler): - show is a child, not an attribute. Fixes #476 * src/gossip-app.c (app_set_status): - Fixes #454 - send status to all group chats user is currently in. (app_set_status_group_chat_foreach): added. * src/gossip-group-chat.c: - Fixes #449 (group_chat_priv_chat_new): added (group_chat_priv_chat_incoming): added (group_chat_priv_chat_destroyed): added (group_chat_row_activated_cb): call priv_chat_new ... (group_chat_message_handler): - return if message isn't groupchat or chat. - handle chat messages (private messages to a person in the group chat). * src/gossip-chat.c: (chat_create): added. code from gossip_chat_new. (gossip_chat_new): Code moved to chat_create. (gossip_chat_new_from_group_chat): added, used when you are creating a private chat from a group chat. This one doesn't cause the chat to listen to messages but instead requires messages being added with the append_message call. (chat_message_handler): added support to have a nick set instead of using the jid. (Needed in priv chatting in group chats). * src/gossip-message.c: (message_send_dialog_response_cb): - don't free the string before using it! (message_recv_dialog_response_cb): - the body of a message is a subnode, not an attribute. * src/gossip-utils.c (gossip_text_view_append_chat_message): - Set the name to be nick from roster if it's available and roster is passed to the function. * src/gossip-message.c (message_new): - sets the from labe to "Nick ". Fixes #224 - moved set_margin to after gtk_widget_show * src/gossip-chat.c: (chat_message_handler): send the roster to gossip_text_view_append_chat_message. (gossip_chat_new): Sets the from to "Nick ". Fixes #224 * src/gossip-group-chat.c: - Use a list store for users in a group chat. (group_chat_setup_tree): - Set default sort function and set sort column to default sort column. Fixes #387 (group_chat_iter_compare_func): added. (gossip_group_chat_new): moved gossip_text_view_set_margin call to after gtk_widget_show. * src/gossip-chat.c: (gossip_chat_new): changed order in which things were done on the window. It tried to set background before the window was realized. (chat_message_handler): return LM_HANDLER_RESULT_REMOVE_MESSAGE if it's handled by this handler. Fixes #473. * src/*: - Updated for major changes in loudmouth. - Roster handling entirely in gossip-roster now - Added connected and disconnected signals on GossipApp used by the roster. 2003-01-25 Mikael Hallendal * src/*.c: Updated to changes in loudmouth. * src/gossip-add-contact.c: sends some stuff to actually start subscribing ... 2003-01-24 Mikael Hallendal * src/gossip-add-contact.c: (add_contact_complete_group_idle): added, couldn't get the selection-thingy working without doing it in an idle. * src/gossip-utils.c (gossip_utils_is_valid_jid): added * src/app.c: Use the new Add user dialog (not finished) * src/gossip-add-contact.[ch]: Added * src/Makefile.am (gossip_SOURCES): added gossip-add-contact.[ch] 2003-01-23 Mikael Hallendal * src/gossip-app.c: (app_subscription_request_dialog_response_cb): - handle defer and delete event. * src/*.c: - Use gossip_glade_get_file_simple where appropriate - Pass parent widget to all glade_get_file* calls - Unref glade object where gossip_glade_get_file is used. * data/*: Images moved to ui/pixmaps * ui/pixmaps/*: Install in $datadir/gossip * src/*: UI work. * ui/*: Merged UI files * ui/connect-dialog.glade: tweaked a bit * src/gossip-account.c: * src/gossip-accounts-dialog.c: * src/gossip-connect-dialog.c: - Use gnome-config instead of GConf for storing account information. 2002-12-13 Mikael Hallendal * src/gossip-connect-dialog.c: - Start using GossipAccount - Update the entries when they get updated in the account editing dialog - Moved in stuff from gossip-accounts-dialog which was only used here after the move to the new accounts dialog. * src/gossip-app.c: Use GossipAccount * src/gossip-accounts-dialog.c: - Use a list view to the left and edit the entries to the right instead of the old style way. Much more intiutive. - Start using the GossipAccount struct all over. * src/gossip-account.[ch]: Added * src/gossip-account-utils.[ch]: Removed, most of the stuff moved into gossip-connect-dialog.c since it wasn't used in the new account editor dialog. 2002-12-11 Mikael Hallendal * src/gossip-message.c (message_new): don't use g_object_ref on a LmElement. Should fix a crash. 2002-12-10 Mikael Hallendal * Fixed #345, use timestamp when showing messages if jabber:x:delay is included in the message. 2002-12-04 Richard Hult * src/gossip-roster.c (gossip_roster_init): Set cell ypadding to 1 to get the roster list to be slightly more compact. 2002-12-03 Richard Hult * src/gossip-roster.c: Apply modified patch from Anders Carlsson to not show the empty pixbufs for groups. 2002-12-01 Anders Carlsson * src/gossip-app.c: Fix build. 2002-12-01 Richard Hult * src/gossip-utils.c (gossip_status_menu_setup) (gossip_status_menu_set_status, gossip_status_menu_get_status): Rename from gossip_image_.... (gossip_status_menu_setup): Revert part of the change and add a more elaborate comment on why the hack is needed. * src/gossip-app.c (app_tray_icon_set_status) (app_create_tray_icon, app_tray_icon_destroy_cb): Refactor a bit and recreate the tray icon when it's destroyed. * src/Makefile.am (gossip_SOURCES): Add eggtrayicon. * src/gossip-app.c (app_set_status_indicator): Update tray icon. (gossip_app_init): Create tray icon. 2002-11-30 Richard Hult * src/gossip-chat.c (chat_presence_handler): Don't do anything with presence messages from any other than the person we're chatting with (the fix is only a workaround, we need to handle chatting with different resources I think). * src/gossip-roster.c (roster_find_user_foreach): Fix leak. (roster_find_group_foreach): Fix leak. 2002-11-29 Richard Hult * src/gossip-roster.c: Make the group names translatable. * src/gossip-main.c (main): Setup gconf things here. * src/gossip-app.c (gossip_app_init): Add a separator above the offline item. (gossip_app_init): Setup server/username/password/resource from the default account. * src/gossip-utils.c (gossip_image_option_menu_setup): Add support for separator menu items. * src/gossip-app.c (app_set_status_indicator): New function to update the option menu and set the window icon, without changing the status itself. Also block so we don't get signal recursion. (gossip_app_init): Use utility function to get status icon filenames. (app_block_until_disconnected): New function that let's us block using a main loop until we get disconnected. This is needed for when we reconnect. (app_block_until_connected): Like above but for connecting, not sure if it's needed yet. (gossip_app_new): Don't handle connecting here. (gossip_app_connect): Add precondition checks on server, username, resource. Only do connecting, nothing else. (app_client_disconnected): Handle the block-until-disconnected flag here. Reset the roster and status option menu directly on disconnect. * src/gossip-roster.c (roster_presence_handler): Use utility function to get the status icon filenames. 2002-11-29 Mikael Hallendal * src/gossip-app.c (app_subscription_request_dialog_response_cb): - don't use g_object_(set|get|ref|unref) on LmElements. 2002-11-29 Mikael Hallendal * src/gossip-app.c: Updated for new API in loudmouth. 2002-11-28 Richard Hult * src/gossip-main.c: Set a default icon. * src/gossip-app.c (app_set_status): Set the window icon too. 2002-11-27 Richard Hult * src/gossip-app.c (app_client_connected): Make sure we always have a resource. * po/sv.po: Update. * src/*.c: Mark more strings for translation. * src/gossip-app.c (app_client_disconnected): Bring up a dialog and ask if the user wants to reconnect. * ui/chat-dialog.glade: * ui/group-chat-window.glade: Wrap lines at words instead of chars. 2002-11-26 Mikael Hallendal * src/*.c: Updated to the new loudmouth (where LmElements are no longer objects). 2002-11-26 Richard Hult * src/gossip-group-chat.c (group_chat_topic_entry_activate_cb): Remove extra newline from the topic string. (group_chat_set_title): Set the name of the group chat room in the title. * src/gossip-roster.c (gossip_roster_get_status_pixbuf_for_jid): Impl. * src/gossip-chat.c (gossip_chat_new): Get the status pixbuf from the roster. 2002-11-25 Richard Hult * src/gossip-accounts-dialog.c (accounts_dialog_remove_account_cb): Remove duplicate unset on server key. (accounts_dialog_update_account_cb): Add, update changes. (accounts_dialog_set_account_information): Refactor out from add_account and use for updating as well. (accounts_dialog_entries_changed_cb): Update the sensitivity of the update button too. * src/gossip-app.c (app_get_default_account): Don't use NULL as resource, send "" in that case. (app_client_connected): Don't use the resource if it's empty. * src/gossip-utils.c (gossip_text_view_append_chat_message): Remove the g_error on NULL msgs, it's annoying and I couldn't figure out where the NULL msg came from... 2002-11-25 Mikael Hallendal * src/gossip-app.c (app_subscription_request_dialog_response_cb): - reply to the requester (app_default_subscription_request_handler): - don't show dialog if request is unsubscribe - set from-name in bold. - send app as user_data and set presence as data on dialog. 2002-11-24 Richard Hult * src/gossip-app.c (app_subscription_request_dialog_response_cb) (app_default_subscription_request_handler): First cut at subscription request handler. * po/sv.po: Translate to Swedish. * src/gossip-chat.c: Implement presence handler and clean up code. * src/gossip-app.c: Change loudmouth callbacks to not use *. 2002-11-23 Richard Hult * configure.in: Enable compile warnings. * src/*.c: Fix lots of warnings. * src/gossip-utils.c (url_regex_match): Advance to the position after the match. Fixes a few weird url detection bugs. * src/gossip-connect-dialog.c: Remove unused account entry stuff. * src/gossip-group-chat.c (group_chat_topic_entry_activate_cb): Grab focus on the input entry. 2002-11-23 Mikael Hallendal * src/gossip-group-chat.c: (group_chat_topic_entry_activate_cb): added, sets topic when user changes it. (group_chat_message_handler): set topic 2002-11-23 Richard Hult * src/gossip-group-chat.c (group_chat_row_activated_cb): Add comment about gossip_app_show_chat. Needs to be fixed to use that. * src/gossip-app.c (gossip_app_show_chat): Add, shows a chat window for a particular user. 2002-11-23 Mikael Hallendal * src/gossip-app.c (app_get_default_account): get resource too 2002-11-23 Richard Hult * src/gossip-app.c: (app_subscription_request_response_cb) (app_add_contact_dialog_response_cb, app_add_contact_cb): Add very simple subscription add dialog, needs reworking. * src/Makefile.am: * src/gossip-app.c: * src/gossip-account-utils.[ch]: * src/gossip-accounts-dialog.[ch]: * src/gossip-connect-dialog.[ch]: * ui/connect-dialog.glade: * ui/accounts-dialog.glade: Break out accounts editing into its own dialog and clean up a lot. Removing and adding accounts should work properly now. Also add "resource" to the account editing so the user can set the resource. 2002-11-22 Mikael Hallendal * src/gossip-app.c: (app_default_iq_handler): added, handle version * src/*: Use the new API in loudmouth. * Makefile.am (SUBDIRS): changed order on data and src. 2002-11-22 Richard Hult * data/images/Makefile.am (inline-emoticons.h): Emoticons. * src/gossip-utils.c: Add emoticon support stolen from gnomemeeting. 2002-11-22 Mikael Hallendal * src/gossip-app.c: - changes default handlers to use the new API. - Set name, version and os on LmClient, will later be used to answer VERSION requests. 2002-11-21 Mikael Hallendal * src/gossip-group-chat.c: * src/gossip-chat.c: * src/gossip-app.c: GossipApp now inherits LmClient - removed gossip_app_get_client - Don't call lm_client_add_default_* 2002-11-21 Richard Hult * src/gossip-roster.c (roster_presence_handler): Missed one icon. * src/gossip-group-chat.c (group_chat_presence_handler): Change icons here too. * data/images/gossip-*.png: * src/gossip-roster.c (gossip_roster_add_user): * src/gossip-app.c (gossip_app_init): Try a new set of icons. (gossip_app_init): Put busy before away. * src/gossip-utils.c (gossip_text_view_setup_tags): Tweak colors again. 2002-11-20 Richard Hult * src/gossip-utils.c (utils_text_view_event_cb): Use a hand mouse cursor over links. 2002-11-19 Richard Hult * src/gossip-chat.c: * src/gossip-group-chat.c: * src/gossip-utils.c: Clean up by breaking out common code from the group chats and chat and put it here. (group_chat_row_activated_cb): Start to implement double-click in the group chat "roster" to start a one-to-one chat with someone, needs more work to get the jid from the conference jid. * src/gossip-chat.c (gossip_chat_new): Tweak colors. * src/gossip-group-chat.c (gossip_group_chat_new): Tweak colors. * src/gossip-group-chat.c: * src/gossip-utils.c: Add dingus clicking, aka url clicking feature. * src/gossip-group-chat.c (gossip_group_chat_new): Use sea green for highlighting. (group_chat_key_press_event_cb): Don't insert a space after the nick when completing inside sentence. * src/gossip-chat.c (gossip_chat_new): Use sea green for highlighting. * src/gossip-group-chat.c (group_chat_key_press_event_cb): Fix nick completion to complete just to the length that matches all nicks with the same prefix, and also support completing nicks inside sentences. 2002-11-16 Mikael Hallendal * src/gossip-roster.c: (roster_presence_handler): expand groups if they aren't and the group is not the Offline group. * src/gossip-roster.c: (roster_iter_compare_func): added. sorts the roster (puts Offline last and Others just before it). (roster_create_store): set the default sort func and set the default sort function to be used. 2002-11-16 Richard Hult * configure.in: Add libgnomeui dependency. * src/gossip-app.c: Use GnomeApp for the UI. Add About box, add offline to status option menu, handle disconnect/connect through option menu somewhat. 2002-11-16 Mikael Hallendal * src/gossip-roster.c: (gossip_roster_add_user): Add all users to the Offline group (roster_presence_handler): - Create group if it doesn't exist - Remove group if it's empty - DO FUNKY STUFF!!! * src/gossip-app.c: (app_default_message_handler): renamed from message_received. (app_default_presence_handler): renamed from presence_received. (app_presence_received): don't handle presence to roster. (gossip_app_init): create the LmClient here instead of in _new * src/gossip-group-chat.c: (group_chat_destroy_cb): unregister presence handler. (gossip_group_chat_new): register presence handler. (group_chat_presence_handler): renamed from handle_presence and made into a static function. (group_chat_message_handler): renamed from handle_message. * src/gossip-app.c (app_presence_received): don't handle group chat presence events * src/gossip-chat.c: (gossip_chat_handle_message): now a LmMessageHandler. (chat_dialog_destroy_cb): unregister message handler. (gossip_chat_new): register message handler. 2002-11-16 Richard Hult * src/gossip-roster.c (gossip_roster_add_user): Expand the online groups when adding the first user to them (so we don't mess with groups the user has collapsed). 2002-11-16 Mikael Hallendal * src/gossip-group-chat.c (group_chat_destroy_cb): unregister message handler and send a LmPresence about leaving. * src/gossip-app.c (app_message_received): don't take care of group chat messages any more. * src/gossip-group-chat.c: (gossip_group_chat_new): register message handler (group_chat_handle_message): now a LmMessageHandler, returns FALSE if this message didn't belong to this chat room. 2002-11-16 Richard Hult * src/gossip-roster.c: More tweaking. 2002-11-15 Richard Hult * src/gossip-roster.c (gossip_roster_add_user): Handle contacts with no group. (roster_row_activated_cb): Don't emit activated signal on groups. * src/gossip-utils.c (gossip_text_view_append_chat_message): Tweak the style of chat messages. * src/gossip-roster.c (gossip_roster_add_user): Start implementing group handling. 2002-11-15 Mikael Hallendal * src/gossip-app.c: Use callbacks for message and presence. * src/gossip-app.c: Use callbacks for connected and disconnected instead of signals. 2002-11-15 Richard Hult * src/gossip-app.c (gossip_app_init): Use gnomeicu-dnd.png for Busy. * src/gossip-utils.c (gossip_option_menu_set_history): Add, match on the user_data set per menu item and select it if found. * src/gossip-app.c (app_set_status): Remove dead code. Use gossip_option_menu_set_history to make setting the status work properly. 2002-11-14 Mikael Hallendal * src/gossip-app.c (app_status_item_activated_cb): added. (app_set_status): set presence show/type corresponding to gossip status. * configure.in: require loudmouth 0.1.1 * src/gossip-roster.c: (gossip_roster_handle_presence): cleaned up a little. * src/gossip-group-chat.c (gossip_group_chat_handle_presence): - use icons from gnomeicu. * src/gossip-roster.c (gossip_roster_handle_presence): - Use different icons depending on type of show - Set user as offline when presence type == ERROR or UNAVAILABLE. (gossip_roster_list_received_cb): moved from gossip-app. Handles incoming roster list. * src/gossip-app.h: match the GossipStatuses with LmPresenceShows * src/gossip-app.c (gossip_app_init): use icons from gnomeicu (app_set_status): also send the presence. (app_presence_received): don't let the roster handle the presence if it's not of type AVAILABLE or UNAVAILABLE. * data/images/gnomeicu-*: Added from GnomeICU * data/images/Makefile.am (image_DATA): Added gnomeicu-* * src/gossip-app.c (app_auth_cb): added (app_client_connected): don't request roster and set status to available until we have actually authenticated. 2002-10-28 Richard Hult * src/gossip-app.c (app_presence_received): Don't do anything if we get a presence message with type == error. 2002-10-23 Richard Hult * src/gossip-group-chat.c (group_chat_key_press_event_cb): Implement tab completion for nick. (group_chat_key_press_event_cb): Don't complete if control or shift is pressed. * src/gossip-chat.c (gossip_chat_new, chat_focus_in_event_cb): Don't give focus to the text view, only the input entry. * src/gossip-app.c (gossip_app_new): Only connect if the caller told us to. * src/gossip-main.c (main): Add -a option (don't connect on startup). 2002-10-21 Richard Hult * src/gossip-group-chat.c (group_chat_focus_in_event_cb): Grab focus in entry when the text view gets focus, restore cursor position and deselect the text. A bit of a kludge but works ok. (gossip_group_chat_new): Set focus chain. * src/gossip-connect-dialog.c (connect_dialog_update_optionmenu): Refactor. (connect_dialog_add_account_cb): Update the option menu when server is added. * src/gossip-join-dialog.c (join_dialog_response_cb): Plug leak. (join_dialog_update_optionmenu): Refactor so we can use this when a new favorite is added. (join_dialog_add_favorite_cb): Update option menu when favorite is added. * src/gossip-app.c (app_get_default_account): Don't try to use the default account if it's an empty string. 2002-10-02 Richard Hult * src/gossip-app.c (app_get_default_account): Handle the case where no accounts exist. (gossip_app_connect): Only disconnect if we're connected. (gossip_app_init): Work around the lack of a schema for now. (app_get_group_chat_for_room): Casefold so we get matches for CodeFactory etc even if the name is codefactory. (app_get_chat_for_user): Likewise. Add g_return_if... in lots of places. * src/gossip-main.c (main): Run gtk_init before checking cmdline arguments since gtk_init might strip off some. * src/gossip-connect-dialog.c (connect_dialog_entries_changed_cb): Don't set add button insensitive when no password is entered.