view plugins/ChangeLog.API @ 10849:c203cd637f95

[gaim-migrate @ 12521] sf patch #1185449, from Richard Laager "As the comment in gtkconv.c says, saving a duplicate copy of the entire conversation is completely bogus. Saving a copy of a conversation is a UI thing (if the UI is only showing the last five messages, for example, that's all the user would expect to be saved). Therefore, there's no problem having the UI save its own buffer. The GTK+ UI is already doing this with the imhtml object. This patch removes the history from GaimConversation and uses the buffer in the imhtml object when saving a conversation. It also adds <html>, <head>, <title>, and <body> tags to the file to make it a bit more valid. This patch is extremely likely to break plugins because it changes the size of the GaimConversation struct. As such, if this is committed, I recommend the developers recompile non-default plugins. This broke Gaim-Encryption for me, hence the warning." committer: Tailor Script <tailor@pidgin.im>
author Mark Doliner <mark@kingant.net>
date Tue, 19 Apr 2005 04:21:39 +0000
parents 8d52201620d0
children 2409700be3dc
line wrap: on
line source

Gaim: The Pimpin' Penguin IM Client that's good for the soul!

version 2.0.0cvs:
	* Changed: All the status stuff. Yay!
	* Changed: gaim_prefs_connect_callback(), added handle parameter
	* Added:   gaim_prefs_disconnect_by_handle()
	* Removed: gaim_gtk_sound_{get,set}_mute() (replaced by the
	           /gaim/gtk/sound/mute preference)
	* Changed: gtk_imhtml_toolbar now descends from GtkHBox making it
	           easier to add your own widgets to it
	* Changed: gaim_find_conversation_with_account, added a "type" parameter
	* Changed: gaim_gtk_prefs_labeled_spin_button, the "key" parameter is
	           now a const char* instead of just a char*
	* Changed: gaim_gtk_prefs_labeled_entry, the "key" parameter is
	           now a const char* instead of just a char*
	* Changed: the add_buddy perl sub.  The argument now takes the account
	           as the first argument, and buddy and group as the second and
	           third.  It also adds the buddy to the server-side buddy
	           list of the given account.
	* Changed: gaim_blist_node_action_new, added a fourth argument, a GList
	           of GaimBlistNodeActions to be created as a submenu of the item.
	* Removed: gaim_escape_html(const char *html) (use
	           g_markup_escape_text(html, -1) instead)
	* Removed: gaim_accounts_sync, account changes are now scheduled to be saved
	           automatically
	* Removed: gaim_connection_connect
	* Removed: gaim_connection_disconnect
	* Removed: gaim_connection_register
	* Removed: gaim_accounts_auto_login
	* Removed: gaim_find_conversation, use gaim_find_conversation_with_account instead
	* Changed: gaim_connection_new, gaim_account_connect and gaim_account_register
	           no longer return a GaimConnection
	* Added:   a password field to GaimConnection, which only persists for the
	           session (when "remember password" is false, account->password is NEVER set)
	           Use gaim_connection_get_password(GaimConnection *gc)
	* Removed: serv_login
	* Removed: serv_close
	* Removed: serv_finish_login
	* Changed: keep_alive in GaimConnection is renamed to keepalive
	* Removed: gaim_chat_get_display_name
	* Added:   gaim_log_common_writer, gaim_log_common_lister,
	           gaim_log_common_sizer, and gaim_log_get_log_dir
	           to allow log formats that use standard Gaim log directory
	           to use Gaim's built-in code for these purposes.
	* Added:   GaimLogCommonLoggerData struct for a basic logger_data
	           struct to be used with "common" logger functions.
	* Removed: gaim_conversation_set_history, gaim_conversation_get_history,
	           and GaimConversation->history.  Use gtk_imhtml_get_markup
	           instead.

	Signals:
	* Changed: "received-im-msg and "received-chat-msg" to match, both
	           now pass a conversation pointer and flags
	* Changed: "receiving-im-msg" and "receving-chat-msg" to match, both
	           now pass a conversation pointer and a pointer to the flags.
	* Changed: "drawing-tooltip," the second argument is now a GString*
	           instead of a char**
	* Changed: Signal propagation now stops after a handler returns a
	           non-NULL value. This value is now returned. Previously,
	           all registered handlers were called and the value from the
	           last handler was used.
	* Changed: gaim_conv_window_remove_conversation()'s last argument to
	           be a GaimConversation.

version 1.0.0 (09/17/2004):
	* Added: get_chat_name to the GaimPluginProtocolInfo struct
	* Changed: gaim_blist_update_buddy_presence(), presence changed to
	           type gboolean
	* Changed: the versioning scheme, and all the plugin structs

version 0.82 (08/26/2004):
	Gaim API:
	* Removed: gaim_gtk_get_dispstyle(), gaim_gtk_change_text()
	* Removed: multi.h
	* Renamed: ui.h to gtkdialogs.h
	* Renamed: gtkinternal.h to gtkgaim.h
	* Renamed: show_info_dialog to gaim_gtkdialogs_info
	* Renamed: show_log_dialog to gaim_gtkdialogs_log
	* Renamed: show_warn_dialog to gaim_gtkdialogs_warn
	* Renamed: show_im_dialog to gaim_gtkdialogs_im
	* Renamed: gaim_gtkdialogs_new_im to gaim_gtkdialogs_im_with_user
	* Renamed: destroy_all_dialogs to gaim_gtkdialogs_destroy_all
	* Renamed: alias_dialog_bud to gaim_gtkdialogs_alias_buddy
	* Renamed: alias_dialog_contact to gaim_gtkdialogs_alias_contact
	* Renamed: alias_dialog_blist_chat to gaim_gtkdialogs_alias_chat
	* Renamed: show_confirm_del to gaim_gtkdialogs_remove_buddy
	* Renamed: show_confirm_del_group to gaim_gtkdialogs_remove_group
	* Renamed: show_confirm_del_blist_chat to gaim_gtkdialogs_remove_chat
	* Renamed: show_confirm_del_contact to gaim_gtkdialogs_remove_contact
	* Renamed: show_about to gaim_gtkdialogs_about
	* Added: gaim_notify_userinfo() and the associated notify_userinfo() UI op
			 (someone who knows just why we have this can edit here)

	Buddy List API:
	* Changed: gaim_blist_request_add_chat(), added name parameter
	* Added: gaim_contact_on_account()
	* Added: flags parameter to the GaimBlistNode struct

	Conversation API:
	* Added: gaim_gtkconv_button_new()

	Protocol Plugin API: v7
	* Added: chat_info_defaults to the GaimPluginProtocolInfo struct

	Signals:
	* Added: conversation-updated for any update to the data associated
	  with the conversation (topic, icon, adding to buddy list, etc.)

	Conversation API:
	* Changed: gaim_conv_chat_add_user() (added new_arrival parameter)

version 0.81 (08/05/2004):
	Commands API:
	* Most functions now have a void *data argument.

	Blist API:
	* Added: gaim_buddy_get_contact_alias
	* Renamed: gaim_get_buddy_alias to gaim_buddy_get_alias
	* Renamed: gaim_get_buddy_alias_only to gaim_buddy_get_alias_only

	Conversation API:
	* Changed: gaim_conv_chat_add_user(), added flags parameter
	* Changed: gaim_conv_chat_add_users(), added GList of flags parameter
	* Changed: gaim_conv_chat_get_users(), now returns a GList of
	  GaimConvChatBuddy's
	* Changed: gaim_conv_chat_set_users() now expects a GList of
	  GaimConvChatBuddy's
	* Added: gaim_conv_chat_set_user_flags()
	* Added: gaim_conv_chat_get_user_flags()
	* Added: gaim_conv_chat_find_user()
	* Added: gaim_conv_chat_cb_new()
	* Added: gaim_conv_chat_cb_find()
	* Added: gaim_conv_chat_cb_destroy()
	* Added: gaim_conv_chat_cb_get_name()

	Conversation UI ops:
	* Added: chat_update_user()

	Signals:
	* Changed: chat-buddy-joining & chat-buddy-joined now include the user's flags
	* Changed: chat-buddy-joining & chat-buddy-leaving are now booleans, return
	  TRUE if you don't want the join/leave to be displayed in the UI.
	* Added: chat-buddy-flags for when user's flags change
	  gaim_marshal_VOID__POINTER_POINTER_POINTER_UINT_UINT (required for the new
	  chat-buddy-flags signal)
	* Added: account-modified for when account settings have been changed.

version 0.80 (07/15/2004):
	Gaim API:
	* Removed: PRPL numbers : gaim_account_set_protocol(),
	  gaim_account_get_protocol(), gaim_accounts_find_with_prpl_num,
	  gaim_prpl_num_to_id(), gaim_prpl_id_to_num(), GaimProtocol

	Protocol Plugin API: v6
	* Added: can_receive_file & send_file to the GaimPluginProtocolInfo struct

	Signals:
	* Changed "chat-invited" to also include the components hash table so
	  plugins can use serv_join_chat when the signal is emitted.
	* Added "chat-topic-changed" signal plugins know when a topic is changed.

version 0.79 (06/24/2004):
	Gaim API:
	* gaim_url_parse() now takes two additional parameters, which are used
	  for returning the username and password from the URL, if they exist.
	* Added: has_focus UI op to GaimConversationUiOps and
	  GaimConvWindowUiOps.
	* Added: gaim_conversation_has_focus() and gaim_conv_window_has_focus().
	* Removed: gaim_blist_save()

	Protocol Plugin API: v5
	* Changed: add_buddy, add_buddies, remove_buddy, remove_buddies,
	  rename_group and remove_group to take GaimBuddy's and
	  GaimGroup's consistently.
	* Removed: OPT_PROTO_BUDDY_ICON (replaced by icon_spec)
	* Added: icon_spec to the GaimPluginProtocolInfo struct

version 0.78 (05/30/2004):
	Plugin API: v4
	* Added: actions - for plugins to add to the new Plugin Actions menu

	Loader Plugin API: v2 (no changes)

	Protocol Plugin API: v4
	* Removed: set_dir, get_dir and dir_search (not used, AIM-centric)
	* Removed: actions (replaced by generic plugin actions)

	Perl Plugin API: v2 (no changes)
	TCL Plugin API: (no changes)

	Signals:
	* Added: "blist-node-extended-menu" for extending Buddy, Chat and
			 Group right-click menus
	* Added: "drawing-tooltip" for plugins to allow plugins to change text
			 appearing in tooltips
	* Added: "gtkblist-created"
	* Added: "receiving-im-msg" and "receiving-chat-msg" (these behave
			  exactly like received-*-msg used to)
	* Added: "buddy-idle-updated" signal, for when the idle time changes.
	* Changed: "received-im-msg" and "received-chat-msg" no longer pass
			   pointers to who, message and flags, and are now void.
	* Removed: "drawing-menu" - it was UI sepecific and
			   "blist-node-extended-menu" is superior

version 0.77 (04/22/2004):
	Loader & Protocol Plugins independantly versioned
	Plugin loading now checks versioning on plugins (Standard, Loader &
	Protocol)
	new GAIM_{PLUGIN,PRPL,LOADER}_API_VERSION constants

	Plugin API: v3
	* Added: prefs_info for UI independant plugin prefs

	Loader Plugin API: v2
	* Added: api_version at top of GaimPluginLoaderInfo struct

	Protocol Plugin API: v2
	* Added: api_version at top of GaimPluginProtocolInfo struct
	* Added: chat_menu for protocol specific extensions to the chat menu
	* Removed: get_away "Nada used it. Pink elephants on parade."
	* Removed: protocol_prefs (replaced by generic plugin prefs_info)

	Perl Plugin API: v2 (no changes)
	TCL API: (no changes)

	Signals:
	* Added: "conversation-drag-ended"

version 0.76 (04/01/2004):
	Plugin API: v2
	Perl Plugin API: v2
	Loader Plugin API: (not versioned)
	Protocol Plugin API: (not versioned)
	* Added: protocol_prefs for protocol specific preferences
	* Added: reject_chat so protocols can act on chat invite rejection

	TCL Plugin API: (not versioned)
	* Changes to plugin registration to show descriptions