changeset 25538:69cb4582b513

propagate from branch 'im.pidgin.pidgin' (head 82f657fd45abe5db78920f196a8a795c730c78cc) to branch 'im.pidgin.pidgin.yaz' (head 249d4c86517c508241bfc4da293c5fdb11cc1de7)
author Yoshiki Yazawa <yaz@honeyplanet.jp>
date Fri, 27 Jul 2007 04:44:44 +0000
parents e9abf085d519 (current diff) ddb7212a8794 (diff)
children 536ee8e459ef
files libpurple/protocols/yahoo/yahoo.c pidgin/gtkconv.c pidgin/gtkprefs.c
diffstat 9 files changed, 157 insertions(+), 145 deletions(-) [+]
line wrap: on
line diff
--- a/finch/gntconv.c	Wed Jul 25 04:36:02 2007 +0000
+++ b/finch/gntconv.c	Fri Jul 27 04:44:44 2007 +0000
@@ -259,7 +259,7 @@
 			gnt_text_view_scroll(GNT_TEXT_VIEW(ggc->tv), 0);
  	} else {
 		title = get_conversation_title(conv, account);
-		gnt_text_view_tag_change(GNT_TEXT_VIEW(ggc->tv), "typing", NULL, TRUE);
+		gnt_text_view_tag_change(GNT_TEXT_VIEW(ggc->tv), "typing", " ", TRUE);
 	}
 	gnt_screen_rename_widget(ggc->window, title);
 	g_free(title);
@@ -588,7 +588,6 @@
 	char *strip, *newline;
 	GntTextFormatFlags fl = 0;
 	int pos;
-	gboolean notify;
 
 	g_return_if_fail(ggconv != NULL);
 
@@ -601,7 +600,7 @@
 
 	pos = gnt_text_view_get_lines_below(GNT_TEXT_VIEW(ggconv->tv));
 
-	notify = !!gnt_text_view_tag_change(GNT_TEXT_VIEW(ggconv->tv), "typing", NULL, TRUE);
+	gnt_text_view_tag_change(GNT_TEXT_VIEW(ggconv->tv), "typing", NULL, TRUE);
 	gnt_text_view_append_text_with_flags(GNT_TEXT_VIEW(ggconv->tv), "\n", GNT_TEXT_FLAG_NORMAL);
 
 	/* Unnecessary to print the timestamp for delayed message */
@@ -643,7 +642,8 @@
 	g_free(newline);
 	g_free(strip);
 
-	if (notify) {
+	if (purple_conversation_get_type(conv) == PURPLE_CONV_TYPE_IM &&
+			purple_conv_im_get_typing_state(PURPLE_CONV_IM(conv)) == PURPLE_TYPING) {
 		strip = g_strdup_printf(_("\n%s is typing..."), purple_conversation_get_name(conv));
 		gnt_text_view_append_text_with_tag(GNT_TEXT_VIEW(ggconv->tv),
 					strip, GNT_TEXT_FLAG_DIM, "typing");
--- a/libpurple/idle.c	Wed Jul 25 04:36:02 2007 +0000
+++ b/libpurple/idle.c	Fri Jul 27 04:44:44 2007 +0000
@@ -30,8 +30,6 @@
 #include "savedstatuses.h"
 #include "signals.h"
 
-#define IDLEMARK 600 /* 10 minutes! */
-
 typedef enum
 {
 	PURPLE_IDLE_NOT_AWAY = 0,
@@ -121,7 +119,7 @@
 	gboolean report_idle = TRUE;
 	gint away_seconds = 0;
 	gint idle_recheck_interval = 0;
-
+	gint idle_poll_seconds = purple_prefs_get_int("/purple/away/mins_before_away") * 60;
 	purple_signal_emit(purple_blist_get_handle(), "update-idle");
 
 	idle_reporting = purple_prefs_get_string("/purple/away/idle_reporting");
@@ -132,7 +130,7 @@
 	{
 		/* Use system idle time (mouse or keyboard movement, etc.) */
 		time_idle = idle_ui_ops->get_time_idle();
-		idle_recheck_interval = 60;
+		idle_recheck_interval = 1;
 	}
 	else if (!strcmp(idle_reporting, "purple"))
 	{
@@ -153,7 +151,7 @@
 			if ((idle_ui_ops != NULL) && (idle_ui_ops->get_time_idle != NULL))
 			{
 				time_idle = idle_ui_ops->get_time_idle();
-				idle_recheck_interval = 60;
+				idle_recheck_interval = 1;
 			}
 			else
 			{
@@ -173,7 +171,7 @@
 		}
 	}
 
-	time_until_next_idle_event = IDLEMARK - time_idle;
+	time_until_next_idle_event = idle_poll_seconds - time_idle;
 	if (time_until_next_idle_event < 0)
 	{
 		/* If we're already idle, check again as appropriate. */
@@ -197,7 +195,7 @@
 	}
 
 	/* Idle reporting stuff */
-	if (report_idle && (time_idle >= IDLEMARK))
+	if (report_idle && (time_idle >= idle_poll_seconds))
 	{
 		GList *l;
 		for (l = purple_connections_get_all(); l != NULL; l = l->next)
@@ -206,7 +204,7 @@
 			set_account_idle(purple_connection_get_account(gc), time_idle);
 		}
 	}
-	else if (!report_idle || (time_idle < IDLEMARK))
+	else if (!report_idle || (time_idle < idle_poll_seconds ))
 	{
 		while (idled_accts != NULL)
 			set_account_unidle(idled_accts->data);
@@ -306,6 +304,11 @@
 
 static gboolean _do_purple_idle_touch_cb(gpointer data)
 {
+	int idle_poll_minutes = purple_prefs_get_int("/purple/away/mins_before_away");
+
+	 /* +1 more for g_timeout_add_seconds rounding. */
+	idle_timer = purple_timeout_add_seconds((idle_poll_minutes * 60) + 2, check_idleness_timer, NULL);
+
 	purple_idle_touch();
 
 	return FALSE;
@@ -315,11 +318,6 @@
 void
 purple_idle_init()
 {
-	/* Add the timer to check if we're idle.
-	 * IDLEMARK + 1 as the boundary,
-	 * +1 more for g_timeout_add_seconds rounding. */
-	idle_timer = purple_timeout_add_seconds((IDLEMARK + 2), check_idleness_timer, NULL);
-
 	purple_signal_connect(purple_conversations_get_handle(), "sent-im-msg",
 						purple_idle_get_handle(),
 						PURPLE_CALLBACK(im_msg_sent_cb), NULL);
--- a/libpurple/plugins/perl/common/Account.xs	Wed Jul 25 04:36:02 2007 +0000
+++ b/libpurple/plugins/perl/common/Account.xs	Fri Jul 27 04:44:44 2007 +0000
@@ -307,6 +307,9 @@
     }
     g_list_free(list);
 
+void
+purple_accounts_restore_current_statuses()
+
 Purple::Account
 purple_accounts_find(name, protocol)
     const char * name
--- a/libpurple/plugins/perl/common/BuddyIcon.xs	Wed Jul 25 04:36:02 2007 +0000
+++ b/libpurple/plugins/perl/common/BuddyIcon.xs	Fri Jul 27 04:44:44 2007 +0000
@@ -45,6 +45,10 @@
 	int *width
 	int *height
 
+char *
+purple_buddy_icon_get_full_path(icon);
+	Purple::Buddy::Icon icon
+
 MODULE = Purple::Buddy::Icon PACKAGE = Purple::Buddy::Icons   PREFIX = purple_buddy_icons_
 PROTOTYPES: ENABLE
 
--- a/libpurple/protocols/bonjour/jabber.c	Wed Jul 25 04:36:02 2007 +0000
+++ b/libpurple/protocols/bonjour/jabber.c	Fri Jul 27 04:44:44 2007 +0000
@@ -350,7 +350,6 @@
 	PurpleAccount *account = pb->account;
 	BonjourBuddy *bb = pb->proto_data;
 	gboolean closed_conversation = FALSE;
-	xmlnode *message_node;
 
 	/* Read the data from the socket */
 	if ((message_length = _read_data(socket, &message)) == -1) {
@@ -374,9 +373,6 @@
 		}
 	}
 
-	/* Parse the message into an XMLnode for analysis */
-	message_node = xmlnode_from_str(message, strlen(message));
-
 	/*
 	 * Check that this is not the end of the conversation.  This is
 	 * using a magic string, but xmlnode won't play nice when just
@@ -396,16 +392,22 @@
 			purple_conversation_write(conv, NULL, tmp, PURPLE_MESSAGE_SYSTEM, time(NULL));
 			g_free(tmp);
 		}
-	} else if (message_node != NULL) {
-		/* Parse the message to get the data and send to the ui */
-		_jabber_parse_and_write_message_to_ui(message_node, account->gc, pb);
 	} else {
-		/* TODO: Deal with receiving only a partial message */
+		xmlnode *message_node;
+
+		/* Parse the message into an XMLnode for analysis */
+		message_node = xmlnode_from_str(message, strlen(message));
+
+		if (message_node != NULL) {
+			/* Parse the message to get the data and send to the ui */
+			_jabber_parse_and_write_message_to_ui(message_node, account->gc, pb);
+			xmlnode_free(message_node);
+		} else {
+			/* TODO: Deal with receiving only a partial message */
+		}
 	}
 
 	g_free(message);
-	if (message_node != NULL)
-		xmlnode_free(message_node);
 }
 
 struct _stream_start_data {
@@ -638,7 +640,7 @@
 	PurpleBuddy *pb = data;
 	BonjourBuddy *bb = pb->proto_data;
 	int len, ret;
-	char *stream_start = g_strdup_printf(DOCTYPE, purple_account_get_username(pb->account), purple_buddy_get_name(pb));
+	char *stream_start;
 
 	bb->conversation->connect_data = NULL;
 
@@ -659,6 +661,7 @@
 		return;
 	}
 
+	stream_start = g_strdup_printf(DOCTYPE, purple_account_get_username(pb->account), purple_buddy_get_name(pb));
 	len = strlen(stream_start);
 
 	/* Start the stream and send queued messages */
--- a/libpurple/protocols/yahoo/yahoo.c	Wed Jul 25 04:36:02 2007 +0000
+++ b/libpurple/protocols/yahoo/yahoo.c	Fri Jul 27 04:44:44 2007 +0000
@@ -1917,6 +1917,7 @@
 	char *msg;
 	char *url = NULL;
 	char *fullmsg;
+	PurpleAccount *account = gc->account;
 
 	while (l) {
 		struct yahoo_pair *pair = l->data;
@@ -1949,6 +1950,9 @@
 			return;
 		}
 #endif
+		if (!purple_account_get_remember_password(account))
+			purple_account_set_password(account, NULL);
+
 		msg = g_strdup(_("Incorrect password."));
 		break;
 	case 14:
--- a/pidgin/gtkconv.c	Wed Jul 25 04:36:02 2007 +0000
+++ b/pidgin/gtkconv.c	Fri Jul 27 04:44:44 2007 +0000
@@ -2369,6 +2369,8 @@
 			&(gtkconv->infopane_iter),
 			CONV_EMBLEM_COLUMN, emblem, -1);
 
+	/* XXX seanegan Why do I have to do this? */
+	gtk_widget_queue_draw(gtkconv->infopane);
 
 	if (status != NULL)
 		g_object_unref(status);
--- a/pidgin/gtkprefs.c	Wed Jul 25 04:36:02 2007 +0000
+++ b/pidgin/gtkprefs.c	Fri Jul 27 04:44:44 2007 +0000
@@ -997,7 +997,7 @@
 	pidgin_prefs_checkbox(_("Show _formatting on incoming messages"),
 				PIDGIN_PREFS_ROOT "/conversations/show_incoming_formatting", vbox);
 
-	iconpref1 = pidgin_prefs_checkbox(_("Show Buddy _Details"),
+	iconpref1 = pidgin_prefs_checkbox(strchr(_("/Buddies/Show Buddy _Details")+1,'/')+1,
 			PIDGIN_PREFS_ROOT "/conversations/im/show_buddy_icons", vbox);
 	iconpref2 = pidgin_prefs_checkbox(_("Enable buddy ic_on animation"),
 			PIDGIN_PREFS_ROOT "/conversations/im/animate_buddy_icons", vbox);
--- a/pidgin/pixmaps/emotes/default/22/default.theme.in	Wed Jul 25 04:36:02 2007 +0000
+++ b/pidgin/pixmaps/emotes/default/22/default.theme.in	Fri Jul 27 04:44:44 2007 +0000
@@ -29,7 +29,7 @@
 smile.png           :-)     :)
 wink.png            ;-)     ;)
 sad.png             :-(     :(
-tongue.png          :-P     :P      :-p    :p
+tongue.png          :-P     :P
 shock.png           =-O
 kiss.png            :-*
 shout.png           >:o
@@ -90,7 +90,7 @@
 good.png            (Y)     (y)
 bad.png             (N)     (n)
 vampire.png         :[      :-[
-goat.png            (nah)
+goat.png           (nah)
 sun.png             (#)
 rainbow.png         (R)     (r)
 quiet.png           :-#
@@ -122,143 +122,141 @@
 party.png           <:o)
 eyeroll.png         8-)
 yawn.png            |-) 
+goat.png            (nah)
 ! skywalker.png     C:-)    c:-)    C:)     c:)
 ! monkey.png        :-(|)
-
-### Hidden MSN emotes
 sigarette.png      	(ci)    (CI)
 handcuffs.png       (%)
-console.png			(xx)    (XX)
+console.png	     		(xx)    (XX)
 fingers-crossed.png	(yn)    (YN)
 
 ### Following QQ 2006
 [QQ]
-shock.png           /惊讶   /:O      /jy       /surprised
-curl-lip.png        /撇嘴   /:~      /pz       /curl_lip
-desire.png          /色     /:*      /se       /desire
-dazed.png           /发呆   /:|      /dazed
-party.png           /得意   /8-)     /dy       /revel
-crying.png          /流泪   /:<      /ll       /cry
-bashful.png         /害羞   /:$      /hx       /bashful
-shut-mouth.png      /闭嘴   /:X      /bz       /shut_mouth
-sleepy.png          /睡     /:Z      /shui     /sleep
-weep.png            /大哭   /:'(     /dk       /weep
-embarrassed.png     /尴尬   /:-|     /gg       /embarassed
-pissed-off.png      /发怒   /:@      /fn       /pissed_off
-act-up.png          /调皮   /:P      /tp       /act_up
-smile-big.png       /呲牙   /:D      /cy       /toothy_smile
-smile.png           /微笑   /:)      /wx       /small_smile
-sad.png             /难过   /:(      /ng       /sad
-glasses-cool.png    /酷     /:+      /kuk      /cool
-doctor.png          /非典   /:#      /feid     /SARS
-silly.png           /抓狂   /:Q      /zk       /crazy
-sick.png            /吐     /:T      /tu       /vomit
-snicker.png         /偷笑   /;p      /tx       /titter
-cute.png            /可爱   /;-D     /ka       /cute
-disdain.png         /白眼   /;d      /by       /disdain
-arrogant.png        /傲慢   /;o      /am       /arrogant
-starving.png        /饥饿   /:g      /jie      /starving
-yawn.png            /困     /|-)     /kun      /sleepy
-terror.png          /惊恐   /:!      /jk       /terror
-sweat.png           /流汗   /:L      /sweat
-smirk.png           /憨笑   /:>      /hanx     /smirk
-soldier.png         /大兵   /:;      /db       /soldier
-struggle.png        /奋斗   /;f      /fendou   /struggle
-curse.png           /咒骂   /:-S     /zhm      /curse
-question.png        /疑问   /?       /yiw      /question
-quiet.png           /嘘...  /;x      /xu       /shh
-hypnotized.png      /晕     /;@      /yun      /dizzy
-excruciating.png    /折磨   /:8      /zhem     /excrutiating
-freaked-out.png     /衰     /;!      /shuai    /freaked_out
-skeleton.png        /骷髅   /!!!     /kl       /skeleton
-hammer.png          /敲打   /xx      /qiao     /hammer
-bye.png             /再见   /bye     /zj       /bye
-go-away.png         /闪人   /go      /shan     /go
-tremble.png         /发抖   /shake   /fad      /shake
-in-love.png         /爱情   /love    /aiq      /love
-jump.png            /跳     /jump    /tiao     /jump
-search.png          /找     /find    /zhao     /search
-lashes.png          /美眉   /&       /mm       /beautiful_eyebrows
-pig.png             /猪头   /pig     /zt       /pig
-cat.png             /猫咪   /cat     /mm       /cat
-dog.png             /小狗   /dog     /xg       /dog
-hug-left.png        /拥抱   /hug     /yb       /hug
-coins.png           /钱     /$       /qianc    /money
-lamp.png            /灯泡   /!       /dp       /lightbulb
-bowl.png            /酒杯   /cup     /bei      /cup
-cake.png            /蛋糕   /cake    /dg       /cake
-thunder.png         /闪电   /li      /shd      /lightning
-bomb.png            /炸弹   /bome    /zhd      /bomb
-knife.png           /刀     /kn      /dao      /knife
-soccerball.png      /足球   /footb   /zq       /soccer
-musical-note.png    /音乐   /music   /yy       /music
-poop.png            /便便   /shit    /bb       /shit
-coffee.png          /咖啡   /coffee  /kf       /coffee
-eat.png             /饭     /eat     /fan      /eat
-pill.png            /药丸   /pill    /yw       /pill
-rose.png            /玫瑰   /rose    /mg       /rose
-wilt.png            /凋谢   /fade    /dx       /wilt
-kiss.png            /吻     /kiss    /wen      /kiss
-love.png            /爱心   /heart   /xin      /heart
-love-over.png       /心碎   /break   /xs       /broken_heart
-meeting.png         /会议   /meeting /hy       /meeting
-present.png         /礼物   /gift    /lw       /gift
-phone.png           /电话   /phone   /dh       /phone
-clock.png           /时间   /time    /sj       /time
-mail.png            /邮件   /email   /yj       /email
-tv.png              /电视   /TV      /ds       /TV
-sun.png             /太阳   /sun     /ty       /sun
-moon.png            /月亮   /moon    /yl       /moon
-good.png            /强     /strong  /qiang    /thumbs_up
-bad.png             /弱     /weak    /ruo      /thumbs_down
-handshake.png       /握手   /share   /ws       /handshake
-victory.png         /胜利   /v       /shl      /victory
-beauty.png          /美女   /<J>     /mn       /beauty
-qq.png              /Q仔    /<QQ>    /qz       /qq
-blowkiss.png        /飞吻   /<L>     /fw       /blow_kiss
-angry.png           /怄火   /<O>     /oh       /angry
-liquor.png          /白酒   /<B>     /bj       /baijiu
-can.png             /汽水   /<U>     /qsh      /soda
-watermelon.png      /西瓜   /<W>     /xigua    /watermelon
-rain.png            /下雨   /<!!>    /xy       /rain
-cloudy.png          /多云   /<~>     /duoy     /cloudy
-snowman.png         /雪人   /<Z>     /xr       /snowman
-star.png            /星星   /<*>     /xixing   /star
-girl.png            /女     /<00>    /nv       /woman
-boy.png             /男     /<11>    /nan      /man
+shock.png             /:O      /jy       /surprised
+curl-lip.png          /:~      /pz       /curl_lip
+desire.png            /:*      /se       /desire
+dazed.png             /:|      /dazed
+party.png             /8-)     /dy       /revel
+crying.png            /:<      /ll       /cry
+bashful.png           /:$      /hx       /bashful
+shut-mouth.png        /:X      /bz       /shut_mouth
+sleepy.png            /:Z      /shui     /sleep
+weep.png              /:'(     /dk       /weep
+embarrassed.png       /:-|     /gg       /embarassed
+pissed-off.png        /:@      /fn       /pissed_off
+act-up.png            /:P      /tp       /act_up
+smile-big.png         /:D      /cy       /toothy_smile
+smile.png             /:)      /wx       /small_smile
+sad.png               /:(      /ng       /sad
+glasses-cool.png      /:+      /kuk      /cool
+doctor.png            /:#      /feid     /SARS
+silly.png             /:Q      /zk       /crazy
+sick.png              /:T      /tu       /vomit
+snicker.png           /;p      /tx       /titter
+cute.png              /;-D     /ka       /cute
+disdain.png           /;d      /by       /disdain
+arrogant.png          /;o      /am       /arrogant
+starving.png          /:g      /jie      /starving
+yawn.png              /|-)     /kun      /sleepy
+terror.png            /:!      /jk       /terror
+sweat.png             /:L      /sweat
+smirk.png             /:>      /hanx     /smirk
+soldier.png           /:;      /db       /soldier
+struggle.png          /;f      /fendou   /struggle
+curse.png             /:-S     /zhm      /curse
+question.png          /?       /yiw      /question
+quiet.png             /;x      /xu       /shh
+hypnotized.png        /;@      /yun      /dizzy
+excruciating.png      /:8      /zhem     /excrutiating
+freaked-out.png       /;!      /shuai    /freaked_out
+skeleton.png          /!!!     /kl       /skeleton
+hammer.png            /xx      /qiao     /hammer
+bye.png               /bye     /zj       /bye
+go-away.png           /go      /shan     /go
+tremble.png           /shake   /fad      /shake
+in-love.png           /love    /aiq      /love
+jump.png              /jump    /tiao     /jump
+search.png            /find    /zhao     /search
+lashes.png            /&       /mm       /beautiful_eyebrows
+pig.png               /pig     /zt       /pig
+cat.png               /cat     /mm       /cat
+dog.png               /dog     /xg       /dog
+hug-left.png          /hug     /yb       /hug
+coins.png             /$       /qianc    /money
+lamp.png              /!       /dp       /lightbulb
+bowl.png              /cup     /bei      /cup
+cake.png              /cake    /dg       /cake
+thunder.png           /li      /shd      /lightning
+bomb.png              /bome    /zhd      /bomb
+knife.png             /kn      /dao      /knife
+soccerball.png        /footb   /zq       /soccer
+musical-note.png      /music   /yy       /music
+poop.png              /shit    /bb       /shit
+coffee.png            /coffee  /kf       /coffee
+eat.png               /eat     /fan      /eat
+pill.png              /pill    /yw       /pill
+rose.png              /rose    /mg       /rose
+wilt.png              /fade    /dx       /wilt
+kiss.png              /kiss    /wen      /kiss
+love.png              /heart   /xin      /heart
+love-over.png         /break   /xs       /broken_heart
+meeting.png           /meeting /hy       /meeting
+present.png           /gift    /lw       /gift
+phone.png             /phone   /dh       /phone
+clock.png             /time    /sj       /time
+mail.png              /email   /yj       /email
+tv.png                /TV      /ds       /TV
+sun.png               /sun     /ty       /sun
+moon.png              /moon    /yl       /moon
+good.png              /strong  /qiang    /thumbs_up
+bad.png               /weak    /ruo      /thumbs_down
+handshake.png         /share   /ws       /handshake
+victory.png           /v       /shl      /victory
+beauty.png            /<J>     /mn       /beauty
+qq.png                /<QQ>    /qz       /qq
+blowkiss.png          /<L>     /fw       /blow_kiss
+angry.png             /<O>     /oh       /angry
+liquor.png            /<B>     /bj       /baijiu
+can.png               /<U>     /qsh      /soda
+watermelon.png        /<W>     /xigua    /watermelon
+rain.png              /<!!>    /xy       /rain
+cloudy.png            /<~>     /duoy     /cloudy
+snowman.png           /<Z>     /xr       /snowman
+star.png              /<*>     /xixing   /star
+girl.png              /<00>    /nv       /woman
+boy.png               /<11>    /nan      /man
 ! skywalker.png     C:-)    c:-)    C:)     c:)
 ! monkey.png        :-(|)
 
-### Following ICQ 6.0
+### Following ICQ 5.1
 [ICQ]
 smile.png           :-)     :)
-neutral.png         :-$
 sad.png             :-(     :(
-shock.png           =-O
 wink.png            ;-)     ;)
-tongue.png          :-P     :P      :-p     :p
-#[:-}
+tongue.png          :-P     :P
 laugh.png           *JOKINGLY*
-sleepy.png          *TIRED*
 crying.png          :'(
-sick.png            :-!
 #*KISSED*
-#*STOP*
 kiss.png            :-*
-#*KISSING* 
 embarrassed.png     :-[
-devil.png           ]:->
 angel.png           O:-)
-rose.png            @}->--
-shut-mouth.png      :-X     :X      :-x     :x
-bomb.png            @=
+shut-mouth.png      :-X     :X
 thinking.png        :-\\    :-/
-good.png            *THUMBS\ UP*
 shout.png           >:o     >:O
-beer.png            *DRINK*
 smile-big.png       :-D     :D
 moneymouth.png      :-$
+shock.png           =-O
 glasses-cool.png    8-)
+#[:-}
+sleepy.png          *TIRED*
+sick.png            :-!
+#*STOP*
+#*KISSING* 
+devil.png           ]:->
+rose.png            @}->--
+bomb.png            @=
+good.png            *THUMBS\ UP*
+beer.png            *DRINK*
 in-love.png         *IN\ LOVE*
 ! skywalker.png     C:-)    c:-)    C:)     c:)
 ! monkey.png        :-(|)
@@ -314,7 +312,7 @@
 love-over.png       =((
 sweat.png           #:-S    #:-s
 rotfl.png           =))    
-#loser              L-)     l-)     MISSING/YAHOO 6: "Loser!"
+loser.png           L-)     l-)
 party.png           <:-P    <:-p
 nailbiting.png      :-SS	:-Ss	:-sS	:-ss
 cowboy.png          <):)
@@ -351,8 +349,8 @@
 #youkiddingme.png   :-j :-J
 
 ### These only work in a certain IMvironment
-#male-fighter1.png  o->     O->
-#male-fighter2.png  o=>     O=>
+male-fighter.png   o->     O->
+#malefighter2.png   o=>     O=>
 female-fighter.png  o-+     O-+
 yin-yang.png        (%)