Mercurial > pidgin
diff src/away.c @ 1044:77b6bc7288d3
[gaim-migrate @ 1054]
Thanks to Ryan C. Gordon for the Away message patch!
committer: Tailor Script <tailor@pidgin.im>
author | Rob Flynn <gaim@robflynn.com> |
---|---|
date | Wed, 01 Nov 2000 11:22:04 +0000 |
parents | 91b7377e7b45 |
children | c73736fa0b7c |
line wrap: on
line diff
--- a/src/away.c Wed Nov 01 09:32:34 2000 +0000 +++ b/src/away.c Wed Nov 01 11:22:04 2000 +0000 @@ -65,6 +65,28 @@ plugin_event(event_back, 0, 0, 0, 0); } + +/* + * rcg10312000 This could be more robust, but it works for my current + * goal: to remove those annoying <BR> tags. :) + */ +static void strncpy_nohtml(gchar *dest, const gchar *src, size_t destsize) +{ + gchar *ptr; + g_snprintf(dest, destsize, "%s", src); + + while (1) { + ptr = strstr(dest, "<BR>"); + if (ptr == NULL) /* done? */ + return; + + /* replace <BR> with a newline. */ + *ptr = '\n'; + memmove(ptr + 1, ptr + 4, strlen(ptr + 4) + 1); + } +} + + void do_away_message(GtkWidget *w, struct away_message *a) { GtkWidget *back; @@ -102,8 +124,13 @@ vbox = gtk_vbox_new(FALSE, 5); awaytext = gtk_text_new(NULL, NULL); + + /* rcg10312000 Convert basic HTML (<BR>, etc) to plain text. g_snprintf(buf, sizeof(buf), "%s", a->message); - vscrollbar = gtk_vscrollbar_new(GTK_TEXT(awaytext)->vadj); + */ + strncpy_nohtml(buf, a->message, sizeof (buf)); + + vscrollbar = gtk_vscrollbar_new(GTK_TEXT(awaytext)->vadj); gtk_widget_show(vscrollbar); gtk_widget_set_usize(awaytext, 225, 75); gtk_text_set_word_wrap(GTK_TEXT(awaytext), TRUE);