2003-08-15  Richard Hult  <richard@imendio.com>

	* configure.in: Bump version to 0.5, require loudmouth 0.13.2

	Release 0.5

2003-08-13  Richard Hult  <richard@imendio.com>

	* 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  <richard@imendio.com>

	* src/gossip-app.c (app_pop_message): Compare JID without
	resource, should fix the stuck flashing icon.

2003-08-11  Richard Hult  <richard@imendio.se>

	* 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  <micke@imendio.com>

	* gossip.spec.in: 
	- Fixed the description line. Thanks to JR Boyens for spotting.

2003-08-08  Danilo Šegan  <dsegan@gmx.net>

	* configure.in: Added "sr" and "sr@Latn" to ALL_LINGUAS.

2003-08-06  Mikael Hallendal  <micke@imendio.com>

	* 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
	  <show/> in that case which is wrong.

2003-08-05  Richard Hult  <richard@imendio.com>

	* ui/main.glade: Add icon for Add Contact... item, patch from
	Thomas Reynolds <thomasr@infograph.com>.

2003-08-05  Mikael Hallendal  <micke@imendio.com>

	* 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  <richard@imendio.com>

	* 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  <richard@imendio.com>

	* 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  <micke@imendio.com>

	* 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  <richard@imendio.com>

	* 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  <richard@imendio.com>

	* 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  <richard@imendio.com>

	* 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  <richard@imendio.com>

	* 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  <richard@imendio.com>

	* 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  <richard@imendio.com>

	* 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  <richard@imendio.com>

	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  <richard@imendio.com>

	* 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 <happyguy_pt@hotmail.com>

        * configure.in: Added Portuguese (pt) to ALL_LINGUAS.

2003-07-27  Richard Hult  <richard@imendio.com>

	* 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  <daf@parnassus.ath.cx>

	* src/gossip-chat.c: Marked chat window title strings
	translatable.

2003-07-18  Richard Hult  <richard@imendio.com>

	* 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  <micke@imendio.com>

	* src/Makefile.am: removed unused XSS_LIBS

2003-07-17  Mikael Hallendal  <micke@imendio.com>
  
        * configure.in: Bumped to 0.4

	* NEWS: Added with information for 0.4

2003-07-17  Mikael Hallendal  <micke@imendio.com>

	* 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  <richard@imendio.com>

	* 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  <micke@imendio.com>

	* 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  <micke@imendio.com>

	* src/gossip-contact-info.c: (gossip_contact_info_new):
	* ui/main.glade: Remove additional information and address fields.

2003-07-17  Richard Hult  <richard@imendio.com>

	* 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  <micke@imendio.com>

	* 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  <richard@imendio.com>

	* ui/main.glade: Make labels selectable in add contact
	dialog. Fixes bug #116991.

2003-07-17  Richard Hult  <richard@imendio.com>

	* 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  <richard@imendio.com>

 	* 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  <richard@imendio.com>

	* 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  <daf@parnassus.ath.cx>

	* configure.in: Added "cy" (Welsh) to ALL_LINGUAS.

2003-07-16  Thomas Reynolds  <thomasr@infograph.com>

	* 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  <richard@imendio.com>

	* 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  <richard@imendio.com>

	* 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  <jordi@sindominio.net>

	* gossip.schemas.in: Try to improve some strings removing redundant
	words.

2003-07-10  Richard Hult  <richard@imendio.com>

	* 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 <gossip@kdough.net>.
	
	* 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  <richard@imendio.com>

	* configure.in: Add es.

2003-07-09  Richard Hult  <richard@imendio.com>

	* 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  <richard@imendio.com>

	* 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  <mitr@volny.cz>

	* configure.in: Added cs (Czech) to ALL_LINGUAS.

2003-07-07  Richard Hult  <richard@imendio.com>

	* configure.in: Add nl to ALL_LINGUAS.

	* Release 0.3.

2003-07-07  Mikael Hallendal  <micke@imendio.com>

	* configure.in: 
	- Bumped to 0.3
	- Updated loudmouth dep

2003-07-07  Mikael Hallendal  <micke@imendio.com>

	* src/gossip-utils.c: Include sys/types.h, fixes build on FreeBSD.

2003-07-07  Mikael Hallendal  <micke@imendio.com>
  
        * configure.in: Added italian translation.
	
2003-07-06  Richard Hult  <richard@imendio.com>

	* 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 <b> 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  <richard@imendio.com>

	* 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  <richard@imendio.com>

	* 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  <richard@imendio.com>

	* 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  <richard@imendio.com>

	* 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 <gossip@kdough.net>.

	* 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
	<gossip@kdough.net>.

	* 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  <richard@imendio.com>

	* 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
	<jordi@sindominio.net>.

2003-07-03  Richard Hult  <richard@imendio.com>

	* 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  <richard@imendio.com>

	* 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  <richard@imendio.com>

	* 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  <jordi@sindominio.net>

	* gossip.desktop.in: Add translation markers and StartupNotify entry.

2003-06-28  Richard Hult  <richard@imendio.com>

	* 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
	<ross@burtonini.com> 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  <micke@imendio.com>

	* 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  <jordi@sindominio.net>

	* configure.in (ALL_LINGUAS): Added "ca" (Catalan).

2003-06-18  Mikael Hallendal  <micke@imendio.com>

	* 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  <richard@imendio.com>

	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  <micke@imendio.com>

	* 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  <micke@imendio.com>

	* src/gossip-add-contact.c: (add_contact_page_2_vcard_handler):
	- fixed bug introduced when make loudmouth case-sensitive.

2003-06-13  Mikael Hallendal  <micke@imendio.com>

	* 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  <micke@imendio.com>

	* 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  <micke@imendio.com>

        * *: Updated mine and Richards contact information
	
2003-04-26  Mikael Hallendal  <micke@codefactory.se>

        * Updated for latest loudmouth.
	
2003-04-15  Richard Hult  <rhult@codefactory.se>

	* src/gossip-chat.c: (chat_message_handler): Remove debug output.

2003-04-15  Richard Hult  <rhult@codefactory.se>

	* 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  <micke@codefactory.se>

        * 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  <micke@codefactory.se>

	* 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  <ross@burtonini.com>
       
        * src/gossip-app.c: Connect to click events on the tray icon and
          show/hide the main window.

2003-04-09  Mikael Hallendal  <micke@codefactory.se>

	* 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  <micke@codefactory.se>

	* 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  <micke@codefactory.se>

	* 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  <micke@codefactory.se>

	* 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  <micke@codefactory.se>

	* src/gossip-roster.c:
	(roster_presence_handler): 
	- remove old group from hash table, not just the tree model.

2003-03-29  Richard Hult  <rhult@codefactory.se>

	* 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  <rhult@codefactory.se>

	* src/gossip-roster.c (roster_menu_remove_cb): Implemented.

2003-03-26  Richard Hult  <rhult@localhost.localdomain>

	* 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  <micke@codefactory.se>

	* 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  <micke@codefactory.se>

	* 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  <micke@codefactory.se>

	* src/gossip-roster.c (roster_presence_handler):
	- notify that the tree changed. Patch by Dirk Dierckx.

2003-03-25  Mikael Hallendal  <micke@codefactory.se>

	* 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  <micke@codefactory.se>

	* 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  <micke@codefactory.se>

	* configure.in: updated loudmouth deps. to make sure we have a
	  late enough.

2003-03-09  Richard Hult  <rhult@codefactory.se>

	* 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  <rhult@codefactory.se>

	* 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  <rhult@codefactory.se>

	* 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 <nick> style instead
	of nick:.

2003-02-11  Mikael Hallendal  <micke@codefactory.se>

	* src/*.c: Use the new GError API in loudmouth.
	
2003-02-04  Mikael Hallendal  <micke@codefactory.se>

	* 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  <rhult@codefactory.se>

	* 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  <rhult@codefactory.se>

	* 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  <rhult@codefactory.se>

	* 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  <micke@codefactory.se>

	* src/*.c: Updated for sending "to" argument with lm_message_new*.
	
	* src/*.c: LmConnection is no longer an object.
	
2003-02-02  Richard Hult  <rhult@codefactory.se>

	* src/gossip-chat.c (chat_message_handler): Fix sounds on gtk 2.0.

2003-02-02  Mikael hallendal  <micke@codefactory.se>

	* src/gossip-app.c: Updated to latest changes in loudmouth.
	
2003-02-01  Richard Hult  <rhult@codefactory.se>

	* 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  <micke@codefactory.se>

	* 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  <rhult@codefactory.se>

	* src/gossip-chat.c (chat_message_handler): Don't play sound if
	we're focused.

2003-01-29  Mikael Hallendal  <micke@codefactory.se>

	* 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  <rhult@codefactory.se>

	* 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  <micke@codefactory.se>

	* 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  <rhult@codefactory.se>

	* 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  <micke@codefactory.se>

	* 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 <jid>". 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 <jid>". 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  <micke@codefactory.se>

	* src/*.c: Updated to changes in loudmouth.

	* src/gossip-add-contact.c: sends some stuff to actually start
	  subscribing ...

2003-01-24  Mikael Hallendal  <micke@codefactory.se>

	* 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  <micke@codefactory.se>

	* 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  <micke@codefactory.se>

	* 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  <micke@codefactory.se>

	* src/gossip-message.c (message_new): don't use g_object_ref on a
	  LmElement. Should fix a crash.

2002-12-10  Mikael Hallendal <micke@codefactory.se>

	* Fixed #345, use timestamp when showing messages if
	  jabber:x:delay is included in the message.
	
2002-12-04  Richard Hult  <rhult@codefactory.se>

	* 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  <rhult@codefactory.se>

	* src/gossip-roster.c: Apply modified patch from Anders Carlsson
	to not show the empty pixbufs for groups.

2002-12-01  Anders Carlsson  <andersca@codefactory.se>

	* src/gossip-app.c: Fix build.
	
2002-12-01  Richard Hult  <rhult@codefactory.se>

	* 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  <rhult@codefactory.se>

	* 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  <rhult@codefactory.se>

	* 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  <micke@codefactory.se>

	* 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 <micke@codefactory.se>

	* src/gossip-app.c: Updated for new API in loudmouth.
	
2002-11-28  Richard Hult  <rhult@codefactory.se>

	* 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  <rhult@codefactory.se>

	* 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 <micke@codefactory.se>

	* src/*.c: Updated to the new loudmouth (where LmElements are no
	  longer objects).

2002-11-26  Richard Hult  <rhult@codefactory.se>

	* 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  <rhult@codefactory.se>

	* 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  <micke@codefactory.se>

	* 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  <rhult@codefactory.se>

	* 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  <rhult@codefactory.se>

	* 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  <micke@codefactory.se>

	* 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  <rhult@codefactory.se>

	* 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  <micke@codefactory.se>

	* src/gossip-app.c (app_get_default_account): get resource too

2002-11-23  Richard Hult  <rhult@codefactory.se>

	* 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  <micke@codefactory.se>

	* 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  <rhult@codefactory.se>

	* data/images/Makefile.am (inline-emoticons.h): Emoticons.

	* src/gossip-utils.c: Add emoticon support stolen from
	gnomemeeting.

2002-11-22  Mikael Hallendal  <micke@codefactory.se>

	* 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  <micke@codefactory.se>

	* 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  <rhult@codefactory.se>

	* 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  <rhult@codefactory.se>

	* src/gossip-utils.c (utils_text_view_event_cb): Use a hand mouse
	cursor over links.

2002-11-19  Richard Hult  <rhult@codefactory.se>

	* 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  <micke@codefactory.se>

	* 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  <rhult@codefactory.se>

	* 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  <micke@codefactory.se>

	* 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  <rhult@codefactory.se>

	* 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  <micke@codefactory.se>

	* 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  <rhult@codefactory.se>

	* src/gossip-roster.c: More tweaking.

2002-11-15  Richard Hult  <rhult@codefactory.se>

	* 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  <micke@codefactory.se>

	* 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  <rhult@codefactory.se>

	* 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  <micke@codefactory.se>

	* 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  <rhult@codefactory.se>

	* 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  <rhult@codefactory.se>

	* 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  <rhult@codefactory.se>

	* 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  <rhult@codefactory.se>

	* 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.

