/pidgin/main: a687c69fda79: Merge GPlugin branch
Jorge Villase?or <[email protected]>
| Newsgroups | gmane.comp.gnome.gaim.cvs |
|---|---|
| Message-ID | <[email protected]> |
Changeset: a687c69fda799c74cbb95d3be454b3af16706ac8 Author: Jorge Villase?or <[email protected]> Date: 2015-04-27 22:45 -0700 Branch: default URL: https://hg.pidgin.im/pidgin/main/rev/a687c69fda79 Description: Merge GPlugin branch I have been using this code for few weeks now so it is at least as stable as default diffstat: .hgignore | 2 + ChangeLog | 17 + ChangeLog.API | 120 +- Makefile.am | 1 + acinclude.m4 | 5 +- autogen.sh | 2 +- configure.ac | 412 +--- doc/Makefile.am | 2 - doc/PERL-HOWTO.dox | 613 ----- doc/TCL-HOWTO.dox | 362 --- doc/reference/finch/Makefile.am | 4 + doc/reference/libpurple/Makefile.am | 9 +- doc/reference/libpurple/libpurple-docs.xml | 6 +- doc/reference/libpurple/plugin_i18n.xml | 8 +- doc/reference/libpurple/plugin_ids.xml | 11 +- doc/reference/libpurple/signals_protocol.xml | 63 + doc/reference/libpurple/tut_c_plugins.xml | 267 +- doc/reference/libpurple/tut_signals.xml | 2 +- doc/reference/pidgin/Makefile.am | 8 +- finch/Makefile.am | 63 + finch/gntaccount.c | 126 +- finch/gntblist.c | 127 +- finch/gntconv.c | 45 +- finch/gntlog.c | 2 +- finch/gntmedia.c | 2 +- finch/gntplugin.c | 268 +- finch/gntplugin.h | 94 +- finch/gntpounce.c | 2 +- finch/gntroomlist.c | 14 +- finch/gntxfer.c | 2 +- finch/libfinch.c | 21 +- finch/libgnt/Makefile.am | 39 + finch/libgnt/gntkeys.h | 122 +- finch/libgnt/wms/Makefile.am | 1 + finch/plugins/Makefile.am | 1 + finch/plugins/gntclipboard.c | 77 +- finch/plugins/gntgf.c | 111 +- finch/plugins/gnthistory.c | 70 +- finch/plugins/gnttinyurl.c | 129 +- finch/plugins/grouping.c | 109 +- finch/plugins/lastlog.c | 68 +- libpurple/Makefile.am | 80 +- libpurple/Makefile.mingw | 5 +- libpurple/account.c | 188 +- libpurple/account.h | 2 +- libpurple/accountopt.c | 2 +- libpurple/accounts.c | 2 +- libpurple/blistnodetypes.c | 46 +- libpurple/buddyicon.c | 66 +- libpurple/buddyicon.h | 68 +- libpurple/buddylist.c | 16 +- libpurple/cmds.c | 32 +- libpurple/cmds.h | 14 +- libpurple/connection.c | 117 +- libpurple/connection.h | 12 +- libpurple/conversation.c | 22 +- libpurple/conversation.h | 2 +- libpurple/conversationtypes.c | 43 +- libpurple/core.c | 28 +- libpurple/dbus-analyze-functions.py | 5 +- libpurple/dbus-define-api.h | 3 + libpurple/dbus-server.h | 3 +- libpurple/example/Makefile.am | 2 + libpurple/example/nullclient.c | 36 +- libpurple/internal.h | 2 - libpurple/keyring.c | 20 +- libpurple/log.c | 49 +- libpurple/media.c | 30 +- libpurple/media.h | 10 +- libpurple/media/backend-fs2.c | 8 +- libpurple/media/backend-iface.c | 11 +- libpurple/mediamanager.c | 4 +- libpurple/network.h | 2 +- libpurple/notify.h | 2 +- libpurple/plugin.c | 2238 +++++++----------- libpurple/plugin.h | 1259 ++++++---- libpurple/plugins/Makefile.am | 28 +- libpurple/plugins/autoaccept.c | 131 +- libpurple/plugins/buddynote.c | 65 +- libpurple/plugins/caesarcipher.c | 216 + libpurple/plugins/caesarcipher.h | 67 + libpurple/plugins/caesarcipher_consumer.c | 117 + libpurple/plugins/ciphertest.c | 69 +- libpurple/plugins/codeinline.c | 72 +- libpurple/plugins/dbus-example.c | 69 +- libpurple/plugins/debug_example.c | 70 +- libpurple/plugins/filectl.c | 64 +- libpurple/plugins/helloworld.c | 76 +- libpurple/plugins/idle.c | 84 +- libpurple/plugins/ipc-test-client.c | 114 - libpurple/plugins/ipc-test-server.c | 99 - libpurple/plugins/joinpart.c | 159 +- libpurple/plugins/keyrings/Makefile.am | 1 + libpurple/plugins/keyrings/gnomekeyring.c | 69 +- libpurple/plugins/keyrings/internalkeyring.c | 88 +- libpurple/plugins/keyrings/kwallet.cpp | 66 +- libpurple/plugins/keyrings/secretservice.c | 78 +- libpurple/plugins/keyrings/wincred.c | 67 +- libpurple/plugins/log_reader.c | 277 +- libpurple/plugins/mono/loader/Makefile.am | 3 +- libpurple/plugins/mono/loader/mono-helper.h | 2 +- libpurple/plugins/mono/loader/mono.c | 73 +- libpurple/plugins/notify_example.c | 65 +- libpurple/plugins/offlinemsg.c | 95 +- libpurple/plugins/one_time_password.c | 109 +- libpurple/plugins/perl/Makefile.am | 5 +- libpurple/plugins/perl/common/BuddyIcon.xs | 2 +- libpurple/plugins/perl/common/Cmds.xs | 12 +- libpurple/plugins/perl/common/Prpl.xs | 33 +- libpurple/plugins/perl/common/module.h | 10 +- libpurple/plugins/perl/perl-common.h | 2 +- libpurple/plugins/perl/perl-handlers.c | 8 +- libpurple/plugins/perl/perl-handlers.h | 6 +- libpurple/plugins/perl/perl.c | 90 +- libpurple/plugins/perl/scripts/account.pl | 2 +- libpurple/plugins/perl/scripts/buddy_list.pl | 2 +- libpurple/plugins/perl/scripts/conversation.pl | 2 +- libpurple/plugins/perl/scripts/plugin_pref.pl | 2 +- libpurple/plugins/pluginpref_example.c | 80 +- libpurple/plugins/psychic.c | 91 +- libpurple/plugins/signals-test.c | 77 +- libpurple/plugins/simple.c | 71 +- libpurple/plugins/ssl/Makefile.am | 1 + libpurple/plugins/ssl/nss-prefs.c | 106 +- libpurple/plugins/ssl/ssl-gnutls.c | 73 +- libpurple/plugins/ssl/ssl-nss.c | 72 +- libpurple/plugins/ssl/ssl.c | 112 +- libpurple/plugins/statenotify.c | 96 +- libpurple/plugins/tcl/Makefile.am | 3 +- libpurple/plugins/tcl/tcl.c | 87 +- libpurple/plugins/tcl/tcl_cmd.c | 2 +- libpurple/plugins/tcl/tcl_cmds.c | 4 +- libpurple/plugins/tcl/tcl_purple.h | 4 +- libpurple/prefs.c | 2 +- libpurple/presence.c | 18 +- libpurple/protocol.c | 1096 +++++++++ libpurple/protocol.h | 1191 ++++++++++ libpurple/prpl.c | 409 ++- libpurple/prpl.h | 878 ++----- libpurple/protocols/bonjour/Makefile.am | 1 + libpurple/protocols/bonjour/bonjour.c | 259 +- libpurple/protocols/bonjour/bonjour.h | 26 +- libpurple/protocols/bonjour/buddy.c | 8 +- libpurple/protocols/gg/Makefile.am | 1 + libpurple/protocols/gg/chat.c | 4 +- libpurple/protocols/gg/edisc.c | 2 +- libpurple/protocols/gg/gg.c | 340 +- libpurple/protocols/gg/gg.h | 19 + libpurple/protocols/gg/pubdir-prpl.c | 16 +- libpurple/protocols/gg/pubdir-prpl.h | 8 +- libpurple/protocols/gg/status.c | 6 +- libpurple/protocols/irc/Makefile.am | 1 + libpurple/protocols/irc/irc.c | 317 +- libpurple/protocols/irc/irc.h | 21 +- libpurple/protocols/irc/msgs.c | 8 +- libpurple/protocols/irc/parse.c | 23 +- libpurple/protocols/jabber/Makefile.am | 38 +- libpurple/protocols/jabber/Makefile.mingw | 40 +- libpurple/protocols/jabber/adhoccommands.c | 10 +- libpurple/protocols/jabber/buddy.c | 12 +- libpurple/protocols/jabber/buddy.h | 4 +- libpurple/protocols/jabber/caps.c | 4 +- libpurple/protocols/jabber/chat.c | 12 +- libpurple/protocols/jabber/chat.h | 4 +- libpurple/protocols/jabber/libfacebook.c | 288 +- libpurple/protocols/jabber/facebook.h | 54 + libpurple/protocols/jabber/facebook_roster.c | 3 +- libpurple/protocols/jabber/google/google_p2p.c | 23 +- libpurple/protocols/jabber/google/google_p2p.h | 7 +- libpurple/protocols/jabber/google/google_presence.c | 4 +- libpurple/protocols/jabber/google/google_roster.c | 2 +- libpurple/protocols/jabber/google/google_session.c | 6 +- libpurple/protocols/jabber/libgtalk.c | 278 +-- libpurple/protocols/jabber/gtalk.h | 54 + libpurple/protocols/jabber/iq.c | 4 +- libpurple/protocols/jabber/jabber.c | 496 +++- libpurple/protocols/jabber/jabber.h | 32 +- libpurple/protocols/jabber/jingle/content.c | 23 +- libpurple/protocols/jabber/jingle/content.h | 7 +- libpurple/protocols/jabber/jingle/iceudp.c | 23 +- libpurple/protocols/jabber/jingle/iceudp.h | 7 +- libpurple/protocols/jabber/jingle/rawudp.c | 23 +- libpurple/protocols/jabber/jingle/rawudp.h | 7 +- libpurple/protocols/jabber/jingle/rtp.c | 27 +- libpurple/protocols/jabber/jingle/rtp.h | 7 +- libpurple/protocols/jabber/jingle/session.c | 23 +- libpurple/protocols/jabber/jingle/session.h | 7 +- libpurple/protocols/jabber/jingle/transport.c | 23 +- libpurple/protocols/jabber/jingle/transport.h | 7 +- libpurple/protocols/jabber/message.c | 4 +- libpurple/protocols/jabber/presence.c | 16 +- libpurple/protocols/jabber/roster.c | 2 +- libpurple/protocols/jabber/si.c | 6 +- libpurple/protocols/jabber/useravatar.c | 2 +- libpurple/protocols/jabber/usermood.c | 4 +- libpurple/protocols/jabber/usernick.c | 6 +- libpurple/protocols/jabber/usertune.c | 4 +- libpurple/protocols/jabber/libxmpp.c | 261 +-- libpurple/protocols/jabber/xmpp.h | 54 + libpurple/protocols/msn/Makefile.am | 1 + libpurple/protocols/msn/contact.c | 4 +- libpurple/protocols/msn/msg.c | 6 +- libpurple/protocols/msn/msn.c | 408 +- libpurple/protocols/msn/msn.h | 21 + libpurple/protocols/msn/slplink.c | 2 +- libpurple/protocols/msn/slpmsg_part.c | 2 +- libpurple/protocols/msn/soap.c | 2 + libpurple/protocols/msn/user.c | 22 +- libpurple/protocols/mxit/Makefile.am | 5 +- libpurple/protocols/mxit/Makefile.mingw | 2 +- libpurple/protocols/mxit/actions.c | 43 +- libpurple/protocols/mxit/actions.h | 2 +- libpurple/protocols/mxit/chunk.c | 2 +- libpurple/protocols/mxit/protocol.c | 2 +- libpurple/protocols/mxit/protocol.h | 0 libpurple/protocols/mxit/filexfer.c | 2 +- libpurple/protocols/mxit/formcmds.c | 2 +- libpurple/protocols/mxit/formcmds.h | 2 +- libpurple/protocols/mxit/login.c | 2 +- libpurple/protocols/mxit/markup.c | 2 +- libpurple/protocols/mxit/multimx.c | 6 +- libpurple/protocols/mxit/mxit.c | 324 +- libpurple/protocols/mxit/mxit.h | 35 +- libpurple/protocols/mxit/roster.c | 30 +- libpurple/protocols/mxit/splashscreen.c | 2 +- libpurple/protocols/novell/Makefile.am | 4 +- libpurple/protocols/novell/novell.c | 257 +- libpurple/protocols/novell/novell.h | 49 + libpurple/protocols/null/Makefile.am | 7 +- libpurple/protocols/null/README | 8 +- libpurple/protocols/null/nullprpl.c | 533 ++-- libpurple/protocols/null/nullprpl.h | 49 + libpurple/protocols/oscar/Makefile.am | 32 +- libpurple/protocols/oscar/Makefile.mingw | 29 +- libpurple/protocols/oscar/libaim.c | 168 +- libpurple/protocols/oscar/aim.h | 54 + libpurple/protocols/oscar/authorization.c | 4 +- libpurple/protocols/oscar/family_icbm.c | 2 +- libpurple/protocols/oscar/family_icq.c | 2 +- libpurple/protocols/oscar/family_locate.c | 12 +- libpurple/protocols/oscar/libicq.c | 153 +- libpurple/protocols/oscar/icq.h | 54 + libpurple/protocols/oscar/oft.c | 2 +- libpurple/protocols/oscar/oscar.c | 352 ++- libpurple/protocols/oscar/oscar.h | 24 + libpurple/protocols/oscar/oscarcommon.h | 9 +- libpurple/protocols/oscar/visibility.c | 8 +- libpurple/protocols/oscar/visibility.h | 8 +- libpurple/protocols/sametime/Makefile.am | 1 + libpurple/protocols/sametime/sametime.c | 710 +++-- libpurple/protocols/sametime/sametime.h | 27 + libpurple/protocols/silc/Makefile.am | 1 + libpurple/protocols/silc/buddy.c | 6 +- libpurple/protocols/silc/chat.c | 6 +- libpurple/protocols/silc/ops.c | 8 +- libpurple/protocols/silc/silc.c | 514 ++- libpurple/protocols/silc/silcpurple.h | 21 +- libpurple/protocols/simple/Makefile.am | 1 + libpurple/protocols/simple/simple.c | 231 +- libpurple/protocols/simple/simple.h | 21 +- libpurple/protocols/simple/sipmsg.c | 4 +- libpurple/protocols/yahoo/Makefile.am | 42 +- libpurple/protocols/yahoo/Makefile.mingw | 35 +- libpurple/protocols/yahoo/util.c | 4 +- libpurple/protocols/yahoo/libyahoo.c | 374 +- libpurple/protocols/yahoo/yahoo.h | 49 + libpurple/protocols/yahoo/yahoo_aliases.c | 2 +- libpurple/protocols/yahoo/yahoo_aliases.h | 2 +- libpurple/protocols/yahoo/yahoo_doodle.c | 4 +- libpurple/protocols/yahoo/yahoo_filexfer.c | 4 +- libpurple/protocols/yahoo/yahoo_friend.c | 2 +- libpurple/protocols/yahoo/yahoo_friend.h | 2 +- libpurple/protocols/yahoo/yahoo_packet.c | 4 +- libpurple/protocols/yahoo/yahoo_picture.c | 4 +- libpurple/protocols/yahoo/yahoo_profile.c | 4 +- libpurple/protocols/yahoo/yahoochat.c | 8 +- libpurple/protocols/yahoo/libyahoojp.c | 225 +- libpurple/protocols/yahoo/yahoojp.h | 57 + libpurple/protocols/yahoo/ycht.c | 4 +- libpurple/protocols/yahoo/libymsg.c | 54 +- libpurple/protocols/yahoo/libymsg.h | 16 +- libpurple/protocols/zephyr/Makefile.am | 6 +- libpurple/protocols/zephyr/zephyr.c | 400 +- libpurple/protocols/zephyr/zephyr.h | 49 + libpurple/purple-remote | 4 +- libpurple/purple-send | 2 +- libpurple/purple.h.in | 4 +- libpurple/roomlist.c | 60 +- libpurple/savedstatuses.c | 4 +- libpurple/server.c | 216 +- libpurple/server.h | 188 +- libpurple/signals.c | 6 +- libpurple/sslconn.c | 7 +- libpurple/status.c | 2 +- libpurple/tests/Makefile.am | 6 +- libpurple/tests/test_yahoo_util.c | 2 +- libpurple/util.c | 30 +- libpurple/util.h | 6 +- libpurple/whiteboard.c | 94 +- libpurple/whiteboard.h | 8 +- libpurple/xfer.c | 59 +- libpurple/xfer.h | 4 +- m4macros/introspection.m4 | 96 + pidgin/Makefile.am | 54 +- pidgin/gtkaccount.c | 198 +- pidgin/gtkblist.c | 364 +- pidgin/gtkconv-theme-loader.c | 1 + pidgin/gtkconv.c | 215 +- pidgin/gtkdialogs.c | 91 +- pidgin/gtkdocklet.c | 32 +- pidgin/gtklog.c | 12 +- pidgin/gtknotify.c | 8 +- pidgin/gtkplugin.c | 410 ++- pidgin/gtkplugin.h | 69 +- pidgin/gtkpounce.c | 4 +- pidgin/gtkprefs.c | 2 +- pidgin/gtkrequest.c | 16 +- pidgin/gtkroomlist.c | 14 +- pidgin/gtksavedstatuses.c | 2 +- pidgin/gtkstatusbox.c | 89 +- pidgin/gtkutils.c | 152 +- pidgin/gtkutils.h | 18 +- pidgin/gtkwebviewtoolbar.c | 10 +- pidgin/gtkwhiteboard.c | 4 +- pidgin/gtkxfer.c | 6 +- pidgin/libpidgin.c | 23 +- pidgin/plugins/Makefile.am | 8 +- pidgin/plugins/cap/Makefile.am | 1 + pidgin/plugins/cap/cap.c | 126 +- pidgin/plugins/cap/cap.h | 5 +- pidgin/plugins/contact_priority.c | 80 +- pidgin/plugins/crazychat/Makefile.am | 1 + pidgin/plugins/crazychat/cc_pidgin_plugin.c | 2 +- pidgin/plugins/disco/Makefile.am | 3 +- pidgin/plugins/disco/gtkdisco.c | 2 +- pidgin/plugins/disco/xmppdisco.c | 96 +- pidgin/plugins/disco/xmppdisco.h | 7 +- pidgin/plugins/extplacement.c | 102 +- pidgin/plugins/gestures/Makefile.am | 3 +- pidgin/plugins/gestures/gestures.c | 168 +- pidgin/plugins/gevolution/Makefile.am | 5 +- pidgin/plugins/gevolution/add_buddy_dialog.c | 12 +- pidgin/plugins/gevolution/assoc-buddy.c | 4 +- pidgin/plugins/gevolution/eds-utils.c | 2 +- pidgin/plugins/gevolution/gevo-util.c | 22 +- pidgin/plugins/gevolution/gevolution.c | 184 +- pidgin/plugins/gevolution/gevolution.h | 4 +- pidgin/plugins/gtk-signals-test.c | 70 +- pidgin/plugins/gtkbuddynote.c | 109 +- pidgin/plugins/history.c | 67 +- pidgin/plugins/iconaway.c | 70 +- pidgin/plugins/imgupload.c | 176 +- pidgin/plugins/mailchk.c | 75 +- pidgin/plugins/markerline.c | 108 +- pidgin/plugins/musicmessaging/Makefile.am | 1 + pidgin/plugins/musicmessaging/musicmessaging.c | 169 +- pidgin/plugins/notify.c | 127 +- pidgin/plugins/perl/Makefile.am | 1 + pidgin/plugins/pidgininc.c | 82 +- pidgin/plugins/raw.c | 96 +- pidgin/plugins/relnot.c | 76 +- pidgin/plugins/screencap.c | 84 +- pidgin/plugins/sendbutton.c | 70 +- pidgin/plugins/spellchk.c | 144 +- pidgin/plugins/themeedit.c | 79 +- pidgin/plugins/ticker/Makefile.am | 3 +- pidgin/plugins/ticker/gtkticker.c | 34 +- pidgin/plugins/ticker/gtkticker.h | 4 + pidgin/plugins/ticker/ticker.c | 74 +- pidgin/plugins/unity.c | 96 +- pidgin/plugins/webkit.c | 70 +- pidgin/plugins/win32/transparency/win2ktrans.c | 168 +- pidgin/plugins/win32/winprefs/winprefs.c | 132 +- pidgin/plugins/xmppconsole.c | 172 +- pidgin/win32/nsis/pidgin-installer.nsi | 17 +- 375 files changed, 15409 insertions(+), 14003 deletions(-) diffs (truncated from 45247 to 300 lines): diff --git a/.hgignore b/.hgignore --- a/.hgignore +++ b/.hgignore @@ -24,6 +24,7 @@ syntax: regexp .*\.dll$ .*\.exe$ .*\.g?mo$ +.*\.gir$ .*\.la$ \.libs .*\.lo$ @@ -34,6 +35,7 @@ syntax: regexp .*\.pyo$ .*\.rej$ .*\.so$ +.*\.typelib$ .*\.moc$ VERSION$ aclocal.m4 diff --git a/ChangeLog b/ChangeLog --- a/ChangeLog +++ b/ChangeLog @@ -6,6 +6,10 @@ version 3.0.0 (??/??/????): * Ciphers are now built from the libpurple directory. * Doxygen has been replaced by gtk-doc for generating documentation (Ankit Vani). + * Added dependency GPlugin, which is now required to build libpurple with + plugins support. + * Added dependency gobject-introspection, which is now required to enable + non-native plugin support. libpurple: * Specify a different set of encryption ciphers for TLS connections when @@ -72,8 +76,21 @@ version 3.0.0 (??/??/????): * Invalid user moods can no longer be sent to the server. Plugins: + * A new plugin API has been introduced. Plugins are no longer required + to be of a predefined type (such as protocol, standard, loader etc), + and can perform multiple roles. * The Offline Message Emulation plugin now adds a note that the message was an offline message. (Flavius Anton) (#2497) + * Two example plugins, caesarcipher and caesarcipher_consumer, have + been added that demonstrate registering of a dynamic cipher type in + one plugin and using it in another. + * IPC test plugins have been removed, since the new plugin API does not + provide a seperate IPC API. + + Protocols: + * A single oscar plugin provides both AIM and ICQ protocols. + * A single jabber plugin provides XMPP, GTalk and Facebook protocols. + * A single yahoo plugin provides both Yahoo and Yahoo JAPAN protocols. version 2.10.12 (MM/DD/YY): Windows-Specific Changes: diff --git a/ChangeLog.API b/ChangeLog.API --- a/ChangeLog.API +++ b/ChangeLog.API @@ -78,7 +78,74 @@ version 3.0.0 (??/??/????): * purple_menu_action_set_data * purple_menu_action_set_callback * purple_menu_action_set_children - * PurplePluginUiInfo.get_plugin_pref_request + * PurplePluginInfoFlags (PURPLE_PLUGIN_INFO_FLAGS_INTERNAL and + PURPLE_PLUGIN_INFO_FLAGS_AUTO_LOAD) + * purple_plugin_get_dependent_plugins + * purple_plugin_get_filename + * purple_plugin_is_internal + * purple_plugin_info_new + * purple_plugin_get_info + * purple_plugin_info_get_abi_version + * purple_plugin_info_get_actions_cb + * purple_plugin_info_get_category + * purple_plugin_info_get_dependencies + * purple_plugin_info_get_error + * purple_plugin_info_get_extra_cb + * purple_plugin_info_get_flags + * purple_plugin_info_get_icon + * purple_plugin_info_get_license_id + * purple_plugin_info_get_license_text + * purple_plugin_info_get_license_url + * purple_plugin_info_get_pref_frame_cb + * purple_plugin_info_get_pref_request_cb + * purple_plugin_info_get_ui_data + * purple_plugin_info_set_ui_data + * purple_plugin_register_type + * purple_plugin_add_interface + * PURPLE_DEFINE_TYPE + * PURPLE_DEFINE_TYPE_EXTENDED + * PURPLE_IMPLEMENT_INTERFACE_STATIC + * PURPLE_IMPLEMENT_INTERFACE + * PURPLE_DEFINE_DYNAMIC_TYPE + * PURPLE_DEFINE_DYNAMIC_TYPE_EXTENDED + * PURPLE_IMPLEMENT_INTERFACE_DYNAMIC + * PURPLE_DEFINE_STATIC_TYPE + * PURPLE_DEFINE_STATIC_TYPE_EXTENDED + * PurpleProtocol, inherits GObject. Please see the documentation for + details. + * PurpleProtocolAction + * PurpleProtocolOverrideFlags + * PurpleProtocolClientIface + * PurpleProtocolServerIface + * PurpleProtocolIMIface + * PurpleProtocolChatIface + * PurpleProtocolPrivacyIface + * PurpleProtocolXferIface + * PurpleProtocolRoomlistIface + * PurpleProtocolAttentionIface + * PurpleProtocolMediaIface + * PurpleProtocolFactoryIface + * purple_protocol_get_* for PurpleProtocol members + * purple_protocol_class_* for class methods + * purple_protocol_client_iface_* for client interface methods + * purple_protocol_server_iface_* for server interface methods + * purple_protocol_im_iface_* for IM interface methods + * purple_protocol_chat_iface_* for chat interface methods + * purple_protocol_privacy_iface_* for privacy interface methods + * purple_protocol_xfer_iface_* for xfer interface methods + * purple_protocol_roomlist_iface_* for roomlist interface methods + * purple_protocol_attention_iface_* for attention interface methods + * purple_protocol_media_iface_* for media interface methods + * purple_protocol_factory_iface_* for factory interface methods + * purple_protocol_action_new + * purple_protocol_action_free + * purple_protocols_add + * purple_protocols_remove + * purple_protocols_find + * purple_protocols_get_all + * purple_protocols_get_handle + * purple_protocols_init + * purple_protocols_uninit * purple_request_certificate * purple_request_field_certificate_new * purple_request_field_certificate_get_value @@ -132,6 +199,9 @@ version 3.0.0 (??/??/????): * Files in libpurple/ciphers have been renamed. To use a particular cipher, include its header. * Renamed ft.h file to xfer.h + * Renamed plugin.h file to plugins.h + * prpl.h has been split into protocol.h (PurpleProtocol GObject and + protocol interfaces) and protocols.h (protocols subsystem) * status.h has been split into status.h (Status API) and presence.h (Presence API) * account-authorization-requested signal merged with @@ -171,6 +241,7 @@ version 3.0.0 (??/??/????): * purple_find_buddy renamed to purple_blist_find_buddy * purple_find_group renamed to purple_blist_find_group * purple_get_blist renamed to purple_blist_get_buddy_list + * PurpleBuddyIconSpec has been moved to buddyicon.h * purple_certificate_check_signature_chain now returns a list of failing PurpleCertificate*s as the second parameter * PurpleConversation is now an abstract type, and is a GObject. Please @@ -224,11 +295,33 @@ version 3.0.0 (??/??/????): purple_notify_user_info_entry_set_entry_type * purple_notify_user_info_prepend_pair renamed to purple_notify_user_info_prepend_pair_html + * PurplePlugin is now a GObject (alias for GPluginPlugin). Please see + the documentation for details. + * PurplePluginInfo is now a GObject, inherits GPluginPluginInfo. Please + see the documentation for details. + * PurplePluginAction no longer has a context field. Use + PurpleProtocolAction for protocol actions. + * PURPLE_INIT_PLUGIN(pluginname, initfunc, plugininfo) is now + PURPLE_PLUGIN_INIT(pluginname, query_func, load_func, unload_func). + See "C Plugins tutorial" (tut_c_plugins.xml) for an example. + * purple_plugin_load and purple_plugin_unload now use an error argument + to return load/unload errors + * purple_plugins_get_all is now purple_plugins_find_all, and the + returned list of plugins MUST be free'd using g_list_free + * purple_plugin_get_* functions for plugin info are now + purple_plugin_info_get_* + * purple_plugin_get_author is now purple_plugin_info_get_authors, and + returns a NULL-terminated list of authors + * purple_plugins_probe is now purple_plugins_refresh + * purple_plugins_find_with_id renamed to purple_plugins_find_plugin + * purple_plugins_find_with_filename renamed to + purple_plugins_find_by_filename * purple_plugin_pref_get_type renamed to purple_plugin_pref_get_pref_type * purple_plugin_pref_set_type renamed to purple_plugin_pref_set_pref_type * purple_prefs_get_type renamed to purple_prefs_get_pref_type + * proto_chat_entry has been renamed to PurpleProtocolChatEntry * purple_proxy_info_get_type renamed to purple_proxy_info_get_proxy_type * purple_proxy_info_set_type renamed to purple_proxy_info_set_proxy_type * purple_request_field_get_type renamed to @@ -364,12 +457,30 @@ version 3.0.0 (??/??/????): * purple_notify_searchresults_get_columns_count * purple_notify_searchresults_get_rows_count * purple_notify_searchresults_row_get + * PurplePluginType + * PurplePluginPriority + * PurplePluginLoaderInfo + * PurplePluginUiInfo + * purple_plugin_ipc_* + * purple_plugin_is_unloadable + * purple_plugin_new + * purple_plugin_probe + * purple_plugin_register + * purple_plugin_reload + * purple_plugins_destroy_all + * purple_plugins_enabled + * purple_plugins_find_with_basename + * purple_plugins_find_with_name + * purple_plugins_get_protocols + * purple_plugins_get_search_paths * purple_plugins_register_load_notify_cb * purple_plugins_register_probe_notify_cb * purple_plugins_register_unload_notify_cb * purple_plugins_unregister_load_notify_cb * purple_plugins_unregister_probe_notify_cb * purple_plugins_unregister_unload_notify_cb + * purple_plugins_unload + * purple_plugins_unload_all * purple_pounces_load * purple_prefs_set_generic * purple_prefs_update_old @@ -379,6 +490,7 @@ version 3.0.0 (??/??/????): * purple_presence_new * purple_presence_new_for_account * purple_presence_new_for_buddy + * PurplePluginProtocolInfo * purple_proxy_connect_socks5 * purple_request_field_list_add * purple_srv_cancel @@ -409,8 +521,6 @@ version 3.0.0 (??/??/????): * PurplePluginProtocolInfo.add_buddy_with_invite * PurplePluginProtocolInfo.add_buddies_with_invite * PurplePluginProtocolInfo.get_cb_away - * PurplePluginUiInfo.page_num - * PurplePluginUiInfo.frame * PurpleValue, use GValue instead. * serv_got_attention * serv_send_attention @@ -440,6 +550,7 @@ version 3.0.0 (??/??/????): Added: * pidgin_create_webview * PidginDockletFlag + * PidginPluginInfo, inherits PurplePluginInfo * Various WebKit-related functions in gtkwebview.h Changed: @@ -491,6 +602,9 @@ version 3.0.0 (??/??/????): * struct _PidginImPane Finch: + Added: + * FinchPluginInfo, inherits PurplePluginInfo + Changed: * gntft.h file renamed to gntxfer.h * gnt_append_menu_action renamed to finch_append_menu_action diff --git a/Makefile.am b/Makefile.am --- a/Makefile.am +++ b/Makefile.am @@ -11,6 +11,7 @@ EXTRA_DIST = \ intltool-extract.in \ intltool-merge.in \ intltool-update.in \ + m4macros/introspection.m4 \ package_revision.h \ pidgin.apspec.in \ po/Makefile.mingw \ diff --git a/acinclude.m4 b/acinclude.m4 --- a/acinclude.m4 +++ b/acinclude.m4 @@ -6,7 +6,7 @@ AC_DEFUN([AM_GNU_GETTEXT_VERSION], []) # Owen Taylor 1997-2001 dnl AM_PATH_GLIB_2_0([MINIMUM-VERSION, [ACTION-IF-FOUND [, ACTION-IF-NOT-FOUND [, MODULES]]]]) -dnl Test for GLIB, and define GLIB_CFLAGS and GLIB_LIBS, if gmodule, gobject or +dnl Test for GLIB, and define GLIB_CFLAGS and GLIB_LIBS, if gobject or dnl gthread is specified in MODULES, pass to pkg-config dnl AC_DEFUN([AM_PATH_GLIB_2_0], @@ -20,9 +20,6 @@ AC_ARG_ENABLE(glibtest, [ --disable-gli for module in . $4 do case "$module" in - gmodule) - pkg_config_args="$pkg_config_args gmodule-2.0" - ;; gobject) pkg_config_args="$pkg_config_args gobject-2.0" ;; diff --git a/autogen.sh b/autogen.sh --- a/autogen.sh +++ b/autogen.sh @@ -154,7 +154,7 @@ fi check "$libtoolize"; LIBTOOLIZE=${BIN}; check "glib-gettextize"; GLIB_GETTEXTIZE=${BIN}; check "intltoolize"; INTLTOOLIZE=${BIN}; -check "sed"; SED=${BIN}; +check "sed"; SED=${BIN}; check "aclocal"; ACLOCAL=${BIN}; check "autoheader"; AUTOHEADER=${BIN}; check "automake"; AUTOMAKE=${BIN}; diff --git a/configure.ac b/configure.ac --- a/configure.ac +++ b/configure.ac