# HG changeset patch # User Paul Aurich # Date 1249022149 0 # Node ID cdc294abb21f1166137ef657d7a29ac04c1a9b91 # Parent b131c68822ceff2b964c69a7ca29586ddff7888d# Parent f834ffa7490b141b6bcc7346573e57d36d12fce9 propagate from branch 'im.pidgin.pidgin' (head fa041ec42ae016bc51230865d59a5e06676f3cec) to branch 'im.pidgin.cpw.darkrain42.2.6.1' (head 8d947435c8179d35142622b152f22e6daea1dfd6) diff -r f834ffa7490b -r cdc294abb21f finch/gntmedia.c --- a/finch/gntmedia.c Fri Jul 31 06:35:35 2009 +0000 +++ b/finch/gntmedia.c Fri Jul 31 06:35:49 2009 +0000 @@ -156,7 +156,7 @@ { media->priv = FINCH_MEDIA_GET_PRIVATE(media); - media->priv->calling = gnt_label_new(_("Calling ... ")); + media->priv->calling = gnt_label_new(_("Calling...")); media->priv->hangup = gnt_button_new(_("Hangup")); media->priv->accept = gnt_button_new(_("Accept")); media->priv->reject = gnt_button_new(_("Reject")); diff -r f834ffa7490b -r cdc294abb21f libpurple/certificate.c --- a/libpurple/certificate.c Fri Jul 31 06:35:35 2009 +0000 +++ b/libpurple/certificate.c Fri Jul 31 06:35:49 2009 +0000 @@ -1637,33 +1637,35 @@ if (!ret || now > expiration || now < activation) { gchar *secondary; - if (!ret) + if (!ret) { purple_debug_error("certificate/x509/tls_cached", "Failed to get validity times for certificate %s\n", vrq->subject_name); - else if (now > expiration) + secondary = g_strdup_printf(_("Failed to validate expiration time " + "for %s"), vrq->subject_name); + } else if (now > expiration) { purple_debug_error("certificate/x509/tls_cached", "Certificate %s expired at %s\n", vrq->subject_name, ctime(&expiration)); - else + secondary = g_strdup_printf(_("The certificate for %s is expired."), + vrq->subject_name); + } else { purple_debug_error("certificate/x509/tls_cached", "Certificate %s is not yet valid, will be at %s\n", vrq->subject_name, ctime(&activation)); - - /* FIXME 2.6.1 */ - secondary = g_strdup_printf(_("The certificate chain presented" - " for %s is not valid."), - vrq->subject_name); + secondary = g_strdup_printf(_("The certificate for %s should not " + "yet be in use."), vrq->subject_name); + } purple_notify_error(NULL, /* TODO: Probably wrong. */ - _("SSL Certificate Error"), - _("Invalid certificate chain"), - secondary ); + _("SSL Certificate Error"), + _("Invalid certificate chain"), + secondary ); g_free(secondary); /* Okay, we're done here */ purple_certificate_verify_complete(vrq, - PURPLE_CERTIFICATE_INVALID); + PURPLE_CERTIFICATE_INVALID); return; } diff -r f834ffa7490b -r cdc294abb21f libpurple/ft.c --- a/libpurple/ft.c Fri Jul 31 06:35:35 2009 +0000 +++ b/libpurple/ft.c Fri Jul 31 06:35:49 2009 +0000 @@ -1164,7 +1164,7 @@ if (purple_xfer_get_filename(xfer) != NULL) { - msg = g_strdup_printf(_("You canceled the transfer of %s"), + msg = g_strdup_printf(_("You cancelled the transfer of %s"), purple_xfer_get_filename(xfer)); } else @@ -1227,12 +1227,12 @@ if (purple_xfer_get_filename(xfer) != NULL) { - msg = g_strdup_printf(_("%s canceled the transfer of %s"), + msg = g_strdup_printf(_("%s cancelled the transfer of %s"), buddy ? purple_buddy_get_alias(buddy) : xfer->who, purple_xfer_get_filename(xfer)); } else { - msg = g_strdup_printf(_("%s canceled the file transfer"), + msg = g_strdup_printf(_("%s cancelled the file transfer"), buddy ? purple_buddy_get_alias(buddy) : xfer->who); } purple_xfer_conversation_write(xfer, msg, TRUE); diff -r f834ffa7490b -r cdc294abb21f libpurple/plugin.c diff -r f834ffa7490b -r cdc294abb21f libpurple/protocols/jabber/jabber.c --- a/libpurple/protocols/jabber/jabber.c Fri Jul 31 06:35:35 2009 +0000 +++ b/libpurple/protocols/jabber/jabber.c Fri Jul 31 06:35:49 2009 +0000 @@ -3298,7 +3298,7 @@ PURPLE_CMD_FLAG_CHAT | PURPLE_CMD_FLAG_PRPL_ONLY | PURPLE_CMD_FLAG_ALLOW_WRONG_ARGS, "prpl-jabber", jabber_cmd_chat_role, - _("role <moderator|participant|visitor|none> [nick1] [nick2] ...: Get the users with an role or set users' role with the room."), + _("role <moderator|participant|visitor|none> [nick1] [nick2] ...: Get the users with a role or set users' role with the room."), NULL); jabber_cmds = g_slist_prepend(jabber_cmds, GUINT_TO_POINTER(id)); diff -r f834ffa7490b -r cdc294abb21f libpurple/protocols/oscar/oscar.c --- a/libpurple/protocols/oscar/oscar.c Fri Jul 31 06:35:35 2009 +0000 +++ b/libpurple/protocols/oscar/oscar.c Fri Jul 31 06:35:49 2009 +0000 @@ -6335,6 +6335,44 @@ } static void +oscar_close_directim(gpointer object, gpointer ignored) +{ + PurpleBlistNode *node; + PurpleBuddy *buddy; + PurpleAccount *account; + PurpleConnection *gc; + PurpleConversation *conv; + OscarData *od; + PeerConnection *conn; + const char *name; + + node = object; + + g_return_if_fail(PURPLE_BLIST_NODE_IS_BUDDY(node)); + + buddy = (PurpleBuddy*)node; + name = purple_buddy_get_name(buddy); + account = purple_buddy_get_account(buddy); + gc = purple_account_get_connection(account); + od = gc->proto_data; + conn = peer_connection_find_by_type(od, name, OSCAR_CAPABILITY_DIRECTIM); + + if (conn != NULL) + { + if (!conn->ready) + aim_im_sendch2_cancel(conn); + + peer_connection_destroy(conn, OSCAR_DISCONNECT_LOCAL_CLOSED, NULL); + + /* OSCAR_DISCONNECT_LOCAL_CLOSED doesn't write anything to the convo + * window. Let the user know that we canceled the Direct IM. */ + conv = purple_conversation_new(PURPLE_CONV_TYPE_IM, account, name); + purple_conversation_write(conv, NULL, _("You closed the connection."), + PURPLE_MESSAGE_SYSTEM, time(NULL)); + } +} + +static void oscar_get_aim_info_cb(PurpleBlistNode *node, gpointer ignore) { PurpleBuddy *buddy; @@ -6397,11 +6435,23 @@ oscar_util_name_compare(purple_account_get_username(account), bname) && PURPLE_BUDDY_IS_ONLINE(buddy)) { + PeerConnection *conn; + conn = peer_connection_find_by_type(od, bname, OSCAR_CAPABILITY_DIRECTIM); + if (userinfo->capabilities & OSCAR_CAPABILITY_DIRECTIM) { - act = purple_menu_action_new(_("Direct IM"), - PURPLE_CALLBACK(oscar_ask_directim), - NULL, NULL); + if (conn) + { + act = purple_menu_action_new(_("Cancel Direct IM"), + PURPLE_CALLBACK(oscar_close_directim), + NULL, NULL); + } + else + { + act = purple_menu_action_new(_("Direct IM"), + PURPLE_CALLBACK(oscar_ask_directim), + NULL, NULL); + } menu = g_list_prepend(menu, act); } #if 0 diff -r f834ffa7490b -r cdc294abb21f libpurple/protocols/qq/send_file.c --- a/libpurple/protocols/qq/send_file.c Fri Jul 31 06:35:35 2009 +0000 +++ b/libpurple/protocols/qq/send_file.c Fri Jul 31 06:35:49 2009 +0000 @@ -730,7 +730,7 @@ */ filename = g_path_get_basename(purple_xfer_get_local_filename(qd->xfer)); msg = g_strdup_printf - (_("%d canceled the transfer of %s"), + (_("%d cancelled the transfer of %s"), sender_uid, filename); purple_notify_warning (gc, _("File Send"), msg, NULL); diff -r f834ffa7490b -r cdc294abb21f libpurple/protocols/yahoo/libymsg.c --- a/libpurple/protocols/yahoo/libymsg.c Fri Jul 31 06:35:35 2009 +0000 +++ b/libpurple/protocols/yahoo/libymsg.c Fri Jul 31 06:35:49 2009 +0000 @@ -2075,15 +2075,18 @@ if (!purple_account_get_remember_password(account)) purple_account_set_password(account, NULL); - msg = g_strdup(_("Incorrect password")); + msg = g_strdup(_("Invalid username or password")); reason = PURPLE_CONNECTION_ERROR_AUTHENTICATION_FAILED; break; case 14: - msg = g_strdup(_("Your account is locked, please log in to the Yahoo! website.")); + msg = g_strdup(_("Your account has been locked due to too many failed login attempts." + " Please try logging into the Yahoo! website.")); reason = PURPLE_CONNECTION_ERROR_AUTHENTICATION_FAILED; break; case 1013: - msg = g_strdup(_("Invalid username")); + msg = g_strdup(_("Error 1013: The username you have entered is invalid." + " The most common cause of this error is entering your e-mail" + " address instead of your Yahoo! ID.")); reason = PURPLE_CONNECTION_ERROR_INVALID_USERNAME; break; default: diff -r f834ffa7490b -r cdc294abb21f pidgin/gtkconv.c --- a/pidgin/gtkconv.c Fri Jul 31 06:35:35 2009 +0000 +++ b/pidgin/gtkconv.c Fri Jul 31 06:35:49 2009 +0000 @@ -959,6 +959,12 @@ } static void +menu_join_chat_cb(gpointer data, guint action, GtkWidget *widget) +{ + pidgin_blist_joinchat_show(); +} + +static void savelog_writefile_cb(void *user_data, const char *filename) { PurpleConversation *conv = (PurpleConversation *)user_data; @@ -3133,6 +3139,8 @@ { N_("/Conversation/New Instant _Message..."), "M", menu_new_conv_cb, 0, "", PIDGIN_STOCK_TOOLBAR_MESSAGE_NEW }, + { N_("/Conversation/Join a _Chat..."), "C", menu_join_chat_cb, + 0, "", PIDGIN_STOCK_CHAT }, { "/Conversation/sep0", NULL, NULL, 0, "", NULL }, diff -r f834ffa7490b -r cdc294abb21f pidgin/gtkmedia.c --- a/pidgin/gtkmedia.c Fri Jul 31 06:35:35 2009 +0000 +++ b/pidgin/gtkmedia.c Fri Jul 31 06:35:49 2009 +0000 @@ -554,7 +554,7 @@ gtkmedia->priv->request_type = PURPLE_MEDIA_NONE; - purple_request_accept_cancel(gtkmedia, "Media invitation", + purple_request_accept_cancel(gtkmedia, _("Media invitation"), message, NULL, PURPLE_DEFAULT_ACTION_NONE, (void*)account, gtkmedia->priv->screenname, NULL, gtkmedia->priv->media,