Index: src/connection.h =================================================================== RCS file: /cvsroot/gaim/gaim/src/connection.h,v retrieving revision 1.29 diff -u -p -r1.29 connection.h --- src/connection.h 22 May 2004 23:08:27 -0000 1.29 +++ src/connection.h 23 May 2004 16:06:35 -0000 @@ -43,7 +43,8 @@ typedef enum GAIM_CONNECTION_AUTO_RESP = 0x0004, /**< Send auto responses when away. */ GAIM_CONNECTION_FORMATTING_WBFO = 0x0008, /**< The text buffer must be formatted as a whole */ GAIM_CONNECTION_NO_NEWLINES = 0x0010, /**< No new lines are allowed in outgoing messages */ - GAIM_CONNECTION_NO_FONTSIZE = 0x0020 /**< Connection does not send/receive font sizes */ + GAIM_CONNECTION_NO_FONTSIZE = 0x0020, /**< Connection does not send/receive font sizes */ + GAIM_CONNECTION_NO_URLDESC = 0x0040 /**< Connection does not support descriptions with links */ } GaimConnectionFlags; typedef enum Index: src/gtkconv.c =================================================================== RCS file: /cvsroot/gaim/gaim/src/gtkconv.c,v retrieving revision 1.379 diff -u -p -r1.379 gtkconv.c --- src/gtkconv.c 23 May 2004 03:54:19 -0000 1.379 +++ src/gtkconv.c 23 May 2004 16:06:37 -0000 @@ -2416,6 +2416,8 @@ gray_stuff_out(GaimConversation *conv) buttons &= ~GTK_IMHTML_GROW; buttons &= ~GTK_IMHTML_SHRINK; } + if (gc->flags & GAIM_CONNECTION_NO_URLDESC) + buttons &= ~GTK_IMHTML_LINKDESC; } else { buttons = GTK_IMHTML_SMILEY; } Index: src/gtkimhtml.h =================================================================== RCS file: /cvsroot/gaim/gaim/src/gtkimhtml.h,v retrieving revision 1.82 diff -u -p -r1.82 gtkimhtml.h --- src/gtkimhtml.h 23 May 2004 08:06:38 -0000 1.82 +++ src/gtkimhtml.h 23 May 2004 16:06:37 -0000 @@ -62,6 +62,7 @@ typedef enum { GTK_IMHTML_LINK = 1 << 8, GTK_IMHTML_IMAGE = 1 << 9, GTK_IMHTML_SMILEY = 1 << 10, + GTK_IMHTML_LINKDESC = 1 << 11, GTK_IMHTML_ALL = -1 } GtkIMHtmlButtons; Index: src/gtkimhtmltoolbar.c =================================================================== RCS file: /cvsroot/gaim/gaim/src/gtkimhtmltoolbar.c,v retrieving revision 1.28 diff -u -p -r1.28 gtkimhtmltoolbar.c --- src/gtkimhtmltoolbar.c 23 May 2004 05:52:24 -0000 1.28 +++ src/gtkimhtmltoolbar.c 23 May 2004 16:06:37 -0000 @@ -358,7 +358,10 @@ do_insert_link_cb(GtkIMHtmlToolbar *tool const char *url, *description; url = gaim_request_fields_get_string(fields, "url"); - description = gaim_request_fields_get_string(fields, "description"); + if (GTK_IMHTML(toolbar->imhtml)->format_functions & GTK_IMHTML_LINKDESC) + description = gaim_request_fields_get_string(fields, "description"); + else + description = NULL; if (description == NULL) description = url; @@ -379,6 +382,7 @@ insert_link_cb(GtkWidget *w, GtkIMHtmlTo GaimRequestFields *fields; GaimRequestFieldGroup *group; GaimRequestField *field; + char *msg; fields = gaim_request_fields_new(); @@ -389,20 +393,27 @@ insert_link_cb(GtkWidget *w, GtkIMHtmlTo gaim_request_field_set_required(field, TRUE); gaim_request_field_group_add_field(group, field); - field = gaim_request_field_string_new("description", _("_Description"), - NULL, FALSE); - gaim_request_field_group_add_field(group, field); + if(GTK_IMHTML(toolbar->imhtml)->format_functions & GTK_IMHTML_LINKDESC) { + field = gaim_request_field_string_new("description", _("_Description"), + NULL, FALSE); + gaim_request_field_group_add_field(group, field); + msg = g_strdup(_("Please enter the URL and description of the " + "link that you want to insert. The description " + "is optional.")); + } else { + msg = g_strdup(_("Please enter the URL of the " + "link that you want to insert.")); + } toolbar->link_dialog = gaim_request_fields(toolbar, _("Insert Link"), NULL, - _("Please enter the URL and description of the " - "link that you want to insert. The description " - "is optional."), + msg, fields, _("_Insert"), G_CALLBACK(do_insert_link_cb), _("Cancel"), G_CALLBACK(cancel_link_cb), toolbar); + g_free(msg); } else { close_link_dialog(toolbar); } Index: src/protocols/msn/msn.c =================================================================== RCS file: /cvsroot/gaim/gaim/src/protocols/msn/msn.c,v retrieving revision 1.286 diff -u -p -r1.286 msn.c --- src/protocols/msn/msn.c 22 May 2004 17:33:34 -0000 1.286 +++ src/protocols/msn/msn.c 23 May 2004 16:06:37 -0000 @@ -494,7 +494,7 @@ msn_login(GaimAccount *account) msn_http_session_init(session); gc->proto_data = session; - gc->flags |= GAIM_CONNECTION_HTML | GAIM_CONNECTION_FORMATTING_WBFO | GAIM_CONNECTION_NO_BGCOLOR | GAIM_CONNECTION_NO_FONTSIZE; + gc->flags |= GAIM_CONNECTION_HTML | GAIM_CONNECTION_FORMATTING_WBFO | GAIM_CONNECTION_NO_BGCOLOR | GAIM_CONNECTION_NO_FONTSIZE | GAIM_CONNECTION_NO_URLDESC; gaim_connection_update_progress(gc, _("Connecting"), 0, MSN_CONNECT_STEPS); Index: src/protocols/yahoo/yahoo.c =================================================================== RCS file: /cvsroot/gaim/gaim/src/protocols/yahoo/yahoo.c,v retrieving revision 1.226 diff -u -p -r1.226 yahoo.c --- src/protocols/yahoo/yahoo.c 22 May 2004 17:33:38 -0000 1.226 +++ src/protocols/yahoo/yahoo.c 23 May 2004 16:06:38 -0000 @@ -2175,7 +2175,7 @@ static void yahoo_login(GaimAccount *acc GaimConnection *gc = gaim_account_get_connection(account); struct yahoo_data *yd = gc->proto_data = g_new0(struct yahoo_data, 1); - gc->flags |= GAIM_CONNECTION_HTML | GAIM_CONNECTION_NO_BGCOLOR; + gc->flags |= GAIM_CONNECTION_HTML | GAIM_CONNECTION_NO_BGCOLOR | GAIM_CONNECTION_NO_URLDESC; gaim_connection_update_progress(gc, _("Connecting"), 1, 2);