Mercurial > pidgin.yaz
view plugins/gaiminc.c @ 6122:914f2d5da21c
[gaim-migrate @ 6596]
Fix 2 compiler warnings.
Make auto-login for IRC accounts without passwords work. Thanks to Luke for
finding this and making a kick-assingly correct guess as to the cause.
Fix the MSN sign-off-infinite-loops-after-getting-info-about-mail bug.
Fix "Yahoo smilies for the "angel" smiley are incorrect"
http://sourceforge.net/tracker/index.php?func=detail&aid=728663&group_id=235&atid=100235
Fix a bug that I introduced yesterday freaking afternoon. I would have
commited the fix yesterday, but SF CVS was not working.
<faceprint> KingAnt: you just broke the ticker
<KingAnt> faceprint: How so?
<KingAnt> Oh, event_signon?
<faceprint> the ticker is what needs event_buddy_signon to get called twice
<faceprint> i don't know what is the right behavior, but i'm in bootloader hell,
just thought i'd alert you
<KingAnt> faceprint: So that it doesn't always show people with the open door?
<faceprint> KingAnt: right
I just added an ugly little timeout that updates the icon after 11 seconds.
The icon in the blist gets updated after 10.
committer: Tailor Script <tailor@pidgin.im>
author | Mark Doliner <mark@kingant.net> |
---|---|
date | Mon, 14 Jul 2003 22:09:42 +0000 |
parents | 5239a3b4ab33 |
children | 8f94cce8faa5 |
line wrap: on
line source
//#include <gtk/gtk.h> #include <time.h> #include <stdio.h> #include <fcntl.h> #include <string.h> #include "gaim.h" #define GAIMINC_PLUGIN_ID "core-gaiminc" void echo_hi(void *m) { /* this doesn't do much, just lets you know who we are :) */ show_about(NULL, NULL); } void reverse(struct gaim_connection *gc, char **who, char **message, void *m) { /* this will drive you insane. whenever you receive a message, * the text of the message (HTML and all) will be reversed. */ int i, l; char tmp; /* this check is necessary in case bad plugins do bad things */ if (message == NULL || *message == NULL) return; l = strlen(*message); if (!strcmp(*who, gc->username)) return; for (i = 0; i < l/2; i++) { tmp = (*message)[i]; (*message)[i] = (*message)[l - i - 1]; (*message)[l - i - 1] = tmp; } } void bud(struct gaim_connection *gc, char *who, void *m) { /* whenever someone comes online, it sends them a message. if i * cared more, i'd make it so it popped up on your screen too */ serv_send_im(gc, who, "Hello!", -1, 0); } /* * EXPORTED FUNCTIONS */ static gboolean plugin_load(GaimPlugin *plugin) { /* this is for doing something fun when we sign on */ gaim_signal_connect(plugin, event_signon, echo_hi, NULL); /* this is for doing something fun when we get a message */ gaim_signal_connect(plugin, event_im_recv, reverse, NULL); /* this is for doing something fun when a buddy comes online */ gaim_signal_connect(plugin, event_buddy_signon, bud, NULL); return TRUE; } static GaimPluginInfo info = { 2, /**< api_version */ GAIM_PLUGIN_STANDARD, /**< type */ NULL, /**< ui_requirement */ 0, /**< flags */ NULL, /**< dependencies */ GAIM_PRIORITY_DEFAULT, /**< priority */ GAIMINC_PLUGIN_ID, /**< id */ N_("Gaim Demonstration Plugin"), /**< name */ VERSION, /**< version */ /** summary */ N_("An example plugin that does stuff - see the description."), /** description */ N_("This is a really cool plugin that does a lot of stuff:\n" "- It tells you who wrote the program when you log in\n" "- It reverses all incoming text\n" "- It sends a message to people on your list immediately" " when they sign on"), "Eric Warmenhoven <eric@warmenhoven.org>", /**< author */ WEBSITE, /**< homepage */ plugin_load, /**< load */ NULL, /**< unload */ NULL, /**< destroy */ NULL, /**< ui_info */ NULL /**< extra_info */ }; static void init_plugin(GaimPlugin *plugin) { } GAIM_INIT_PLUGIN(gaiminc, init_plugin, info)