Mercurial > pidgin.yaz
changeset 27850:6e468ac26aac
propagate from branch 'im.pidgin.pidgin' (head 7be65dacd56b6536cf745747e39a29f4f7f2644b)
to branch 'im.pidgin.pidgin.yaz' (head 8d42840dcd853f866c9e8feb878f1b13f301bf4c)
author | Yoshiki Yazawa <yaz@honeyplanet.jp> |
---|---|
date | Wed, 11 Jun 2008 03:46:30 +0000 |
parents | 9cb1e75854f1 (diff) 81ebe4fac9ce (current diff) |
children | 389b22a4431c |
files | configure.ac libpurple/protocols/oscar/oscar.c pidgin/gtkblist.c pidgin/gtkimhtmltoolbar.c |
diffstat | 22 files changed, 212 insertions(+), 125 deletions(-) [+] |
line wrap: on
line diff
--- a/ChangeLog Mon Jun 09 04:17:31 2008 +0000 +++ b/ChangeLog Wed Jun 11 03:46:30 2008 +0000 @@ -7,9 +7,10 @@ Marcus Lundblad, Jorge Villaseñor and other contributors) * Yahoo! Japan now uses UTF-8, matching the behavior of official clients and restoring compatibility with the web messenger (Yusuke Odate) - * Add a configure option, --with-ssl-certificates to allow packagers - to specify a system-wide SSL CA certificates directory. Also, when - set, we don't install our SSL CA certs. + * Add a configure option, --with-system-ssl-certs to allow packagers + to specify a system-wide SSL CA certificates directory. When set, + we don't install our SSL CA certs, so it's important that the + libpurple package depend on the CA certificates. Pidgin: * Custom buddy icons can now be added to and removed from buddy list
--- a/configure.ac Mon Jun 09 04:17:31 2008 +0000 +++ b/configure.ac Wed Jun 11 03:46:30 2008 +0000 @@ -1561,14 +1561,14 @@ dnl # Thanks go to Evolution for the checks. dnl ####################################################################### -AC_ARG_WITH(ssl-certificates, [AC_HELP_STRING([--with-ssl-certificates=<dir>], [directory containing system-wide SSL CA certificates])]) +AC_ARG_WITH(with-system-ssl-certs, [AC_HELP_STRING([--with-system-ssl-certs=<dir>], [directory containing system-wide SSL CA certificates])]) SSL_CERTIFICATES_DIR="" -if ! test -z "$with_ssl_certificates" ; then - if ! test -d "$with_ssl_certificates" ; then - AC_MSG_ERROR([$with_ssl_certificates does not exist, if this is the correct location please make sure that it exists.]) +if ! test -z "$with_system_ssl_certs" ; then + if ! test -d "$with_system_ssl_certs" ; then + AC_MSG_ERROR([$with_system_ssl_certs does not exist, if this is the correct location please make sure that it exists.]) fi - SSL_CERTIFICATES_DIR="$with_ssl_certificates" + SSL_CERTIFICATES_DIR="$with_system_ssl_certs" fi AC_SUBST(SSL_CERTIFICATES_DIR) AM_CONDITIONAL(INSTALL_SSL_CERTIFICATES, test "x$SSL_CERTIFICATES_DIR" = "x")
--- a/finch/gntblist.c Mon Jun 09 04:17:31 2008 +0000 +++ b/finch/gntblist.c Wed Jun 11 03:46:30 2008 +0000 @@ -3033,9 +3033,6 @@ gnt_widget_set_position(ggblist->window, purple_prefs_get_int(PREF_ROOT "/position/x"), purple_prefs_get_int(PREF_ROOT "/position/y")); - gnt_tree_set_col_width(GNT_TREE(ggblist->tree), 0, - purple_prefs_get_int(PREF_ROOT "/size/width") - 1); - gnt_box_add_widget(GNT_BOX(ggblist->window), ggblist->tree); ggblist->status = gnt_combo_box_new();
--- a/finch/libgnt/gntmenu.c Mon Jun 09 04:17:31 2008 +0000 +++ b/finch/libgnt/gntmenu.c Wed Jun 11 03:46:30 2008 +0000 @@ -283,6 +283,8 @@ do sub = sub->submenu; while (sub->submenu); if (gnt_widget_key_pressed(GNT_WIDGET(sub), text)) return TRUE; + if (menu->type != GNT_MENU_TOPLEVEL) + return FALSE; } if ((text[0] == 27 && text[1] == 0) || @@ -332,10 +334,12 @@ return TRUE; } } + if (gnt_bindable_perform_action_key(GNT_BINDABLE(widget), text)) + return TRUE; return org_key_pressed(widget, text); } - return FALSE; + return gnt_bindable_perform_action_key(GNT_BINDABLE(widget), text); } static void @@ -434,7 +438,7 @@ { GntWidget *widget = GNT_WIDGET(instance); GNT_WIDGET_SET_FLAGS(widget, GNT_WIDGET_NO_SHADOW | GNT_WIDGET_NO_BORDER | - GNT_WIDGET_CAN_TAKE_FOCUS | GNT_WIDGET_TRANSIENT); + GNT_WIDGET_CAN_TAKE_FOCUS | GNT_WIDGET_TRANSIENT | GNT_WIDGET_DISABLE_ACTIONS); GNTDEBUG; }
--- a/finch/libgnt/gnttree.c Mon Jun 09 04:17:31 2008 +0000 +++ b/finch/libgnt/gnttree.c Wed Jun 11 03:46:30 2008 +0000 @@ -110,13 +110,14 @@ gnt_widget_get_size(GNT_WIDGET(tree), &width, NULL); if (!GNT_WIDGET_IS_FLAG_SET(GNT_WIDGET(tree), GNT_WIDGET_NO_BORDER)) width -= 2; + width -= 1; /* Exclude the scrollbar from the calculation */ for (i = 0, total = 0; i < tree->ncol ; i++) { if (tree->columns[i].flags & GNT_TREE_COLUMN_INVISIBLE) continue; if (tree->columns[i].flags & GNT_TREE_COLUMN_FIXED_SIZE) - width -= WIDTH(i) + 1; + width -= WIDTH(i) + (tree->priv->lastvisible != i); else - total += WIDTH(i) + 1; + total += WIDTH(i) + (tree->priv->lastvisible != i); } if (total == 0)
--- a/libpurple/protocols/jabber/xdata.c Mon Jun 09 04:17:31 2008 +0000 +++ b/libpurple/protocols/jabber/xdata.c Wed Jun 11 03:46:30 2008 +0000 @@ -201,7 +201,7 @@ xmlnode *fn, *x; PurpleRequestFields *fields; PurpleRequestFieldGroup *group; - PurpleRequestField *field; + PurpleRequestField *field = NULL; char *title = NULL; char *instructions = NULL;
--- a/libpurple/protocols/msn/notification.c Mon Jun 09 04:17:31 2008 +0000 +++ b/libpurple/protocols/msn/notification.c Wed Jun 11 03:46:30 2008 +0000 @@ -1015,13 +1015,13 @@ MsnSlpLink *slplink; MsnUser *user; + /* Tell libpurple that the user has signed off */ user = msn_userlist_find_user(cmdproc->session->userlist, cmd->params[0]); - user->status = "offline"; msn_user_update(user); + /* If we have an open MsnSlpLink with the user then close it */ slplink = msn_session_find_slplink(cmdproc->session, cmd->params[0]); - if (slplink != NULL) msn_slplink_destroy(slplink);
--- a/libpurple/protocols/msn/notification.h Mon Jun 09 04:17:31 2008 +0000 +++ b/libpurple/protocols/msn/notification.h Wed Jun 11 03:46:30 2008 +0000 @@ -41,6 +41,11 @@ struct _MsnNotification { MsnSession *session; + + /** + * This is a convenience pointer that always points to + * servconn->cmdproc + */ MsnCmdProc *cmdproc; MsnServConn *servconn;
--- a/libpurple/protocols/msn/oim.h Mon Jun 09 04:17:31 2008 +0000 +++ b/libpurple/protocols/msn/oim.h Wed Jun 11 03:46:30 2008 +0000 @@ -1,7 +1,7 @@ /** * @file oim.h Header file for oim.c * Author - * MaYuan<mayuan2006@gmail.com> + * MaYuan<mayuan2006@gmail.com> * purple * * Purple is the legal property of its developers, whose names are too numerous @@ -127,4 +127,3 @@ void msn_oim_send_msg(MsnOim *oim); #endif/* _MSN_OIM_H_*/ -/*endof oim.h*/
--- a/libpurple/protocols/msn/session.h Mon Jun 09 04:17:31 2008 +0000 +++ b/libpurple/protocols/msn/session.h Wed Jun 11 03:46:30 2008 +0000 @@ -104,7 +104,6 @@ int servconns_count; /**< The count of server connections. */ GList *switches; /**< The list of all the switchboards. */ - GList *directconns; /**< The list of all the directconnections. */ GList *slplinks; /**< The list of all the slplinks. */ /*psm info*/
--- a/libpurple/protocols/msn/slplink.c Mon Jun 09 04:17:31 2008 +0000 +++ b/libpurple/protocols/msn/slplink.c Wed Jun 11 03:46:30 2008 +0000 @@ -58,7 +58,7 @@ * Main **************************************************************************/ -MsnSlpLink * +static MsnSlpLink * msn_slplink_new(MsnSession *session, const char *username) { MsnSlpLink *slplink;
--- a/libpurple/protocols/msn/slplink.h Mon Jun 09 04:17:31 2008 +0000 +++ b/libpurple/protocols/msn/slplink.h Wed Jun 11 03:46:30 2008 +0000 @@ -59,11 +59,21 @@ GQueue *slp_msg_queue; }; -MsnSlpLink *msn_slplink_new(MsnSession *session, const char *username); void msn_slplink_destroy(MsnSlpLink *slplink); + +/** + * @return An MsnSlpLink for the given user, or NULL if there is no + * existing MsnSlpLink. + */ MsnSlpLink *msn_session_find_slplink(MsnSession *session, const char *who); + +/** + * @return An MsnSlpLink for the given user. One will be created if + * it does not already exist. + */ MsnSlpLink *msn_session_get_slplink(MsnSession *session, const char *username); + MsnSlpSession *msn_slplink_find_slp_session(MsnSlpLink *slplink, long session_id); void msn_slplink_add_slpcall(MsnSlpLink *slplink, MsnSlpCall *slpcall);
--- a/libpurple/protocols/msn/userlist.h Mon Jun 09 04:17:31 2008 +0000 +++ b/libpurple/protocols/msn/userlist.h Wed Jun 11 03:46:30 2008 +0000 @@ -45,11 +45,8 @@ { MsnSession *session; - /* MsnUsers *users; */ - /* MsnGroups *groups; */ - - GList *users; - GList *groups; + GList *users; /* Contains MsnUsers */ + GList *groups; /* Contains MsnGroups */ GQueue *buddy_icon_requests; int buddy_icon_window;
--- a/libpurple/protocols/oscar/oscar.c Mon Jun 09 04:17:31 2008 +0000 +++ b/libpurple/protocols/oscar/oscar.c Wed Jun 11 03:46:30 2008 +0000 @@ -872,7 +872,7 @@ /* Away messges are HTML, but available messages were originally plain text. * We therefore need to strip away messages but not available messages if we're asked to remove HTML tags. */ - if (is_away) { + if (is_away && message) { gchar *tmp2; tmp = purple_markup_strip_html(message); g_free(message); @@ -882,16 +882,16 @@ } } else { - if (itmsurl) { - tmp = g_strdup_printf("<a href=\"%s\">%s</a>", - itmsurl, message); - g_free(itmsurl); - g_free(message); - message = tmp; - } - } - - if (is_away) { + if (itmsurl) { + tmp = g_strdup_printf("<a href=\"%s\">%s</a>", + itmsurl, message); + g_free(itmsurl); + g_free(message); + message = tmp; + } + } + + if (is_away && message) { tmp = purple_str_sub_away_formatters(message, purple_account_get_username(account)); g_free(message); message = tmp; @@ -1991,7 +1991,11 @@ itmsurl = oscar_encoding_to_utf8(account, info->itmsurl_encoding, info->itmsurl, info->itmsurl_len); - tmp = g_markup_escape_text(message, -1); + tmp = (message ? g_markup_escape_text(message, -1) : NULL); + + if (message == NULL && itmsurl != NULL) + message = ""; + purple_prpl_got_user_status(account, info->sn, status_id, "message", tmp, "itmsurl", itmsurl, NULL); g_free(tmp);
--- a/libpurple/proxy.h Mon Jun 09 04:17:31 2008 +0000 +++ b/libpurple/proxy.h Wed Jun 11 03:46:30 2008 +0000 @@ -239,9 +239,9 @@ * to something descriptive (hopefully). * @param data User-defined data. * - * @return NULL if there was an error, or a reference to a data - * structure that can be used to cancel the pending - * connection, if needed. + * @return NULL if there was an error, or a reference to an + * opaque data structure that can be used to cancel + * the pending connection, if needed. */ PurpleProxyConnectData *purple_proxy_connect(void *handle, PurpleAccount *account, @@ -265,9 +265,9 @@ * to something descriptive (hopefully). * @param data User-defined data. * - * @return NULL if there was an error, or a reference to a data - * structure that can be used to cancel the pending - * connection, if needed. + * @return NULL if there was an error, or a reference to an + * opaque data structure that can be used to cancel + * the pending connection, if needed. */ PurpleProxyConnectData *purple_proxy_connect_socks5(void *handle, PurpleProxyInfo *gpi,
--- a/libpurple/win32/global.mak Mon Jun 09 04:17:31 2008 +0000 +++ b/libpurple/win32/global.mak Wed Jun 11 03:46:30 2008 +0000 @@ -112,4 +112,4 @@ MINGW_MAKEFILE := Makefile.mingw INSTALL_PIXMAPS ?= 1 - +INSTALL_SSL_CERTIFICATES ?= 1
--- a/pidgin/gtkblist.c Mon Jun 09 04:17:31 2008 +0000 +++ b/pidgin/gtkblist.c Wed Jun 11 03:46:30 2008 +0000 @@ -3270,10 +3270,10 @@ { N_("/_Tools"), NULL, NULL, 0, "<Branch>", NULL }, { N_("/Tools/Buddy _Pounces"), NULL, pidgin_pounces_manager_show, 1, "<Item>", NULL }, { N_("/Tools/_Certificates"), NULL, pidgin_certmgr_show, 0, "<Item>", NULL }, - { N_("/Tools/Smile_y"), "<CTL>Y", pidgin_smiley_manager_show, 0, "<StockItem>", PIDGIN_STOCK_TOOLBAR_SMILEY }, { N_("/Tools/Plu_gins"), "<CTL>U", pidgin_plugin_dialog_show, 2, "<StockItem>", PIDGIN_STOCK_TOOLBAR_PLUGINS }, { N_("/Tools/Pr_eferences"), "<CTL>P", pidgin_prefs_show, 0, "<StockItem>", GTK_STOCK_PREFERENCES }, { N_("/Tools/Pr_ivacy"), NULL, pidgin_privacy_dialog_show, 0, "<Item>", NULL }, + { N_("/Tools/Smile_y"), "<CTL>Y", pidgin_smiley_manager_show, 0, "<StockItem>", PIDGIN_STOCK_TOOLBAR_SMILEY }, { "/Tools/sep2", NULL, NULL, 0, "<Separator>", NULL }, { N_("/Tools/_File Transfers"), "<CTL>T", pidgin_xfer_dialog_show, 0, "<StockItem>", PIDGIN_STOCK_TOOLBAR_TRANSFER }, { N_("/Tools/R_oom List"), NULL, pidgin_roomlist_dialog_show, 0, "<Item>", NULL }, @@ -6485,7 +6485,7 @@ /* Offer to merge people with the same alias. */ if (whoalias != NULL) - gtk_blist_auto_personize(g, whoalias); + gtk_blist_auto_personize((PurpleBlistNode *)g, whoalias); /* * XXX @@ -7628,6 +7628,52 @@ for (accounts = purple_accounts_get_all(); accounts; accounts = accounts->next) { char *buf = NULL; + GtkWidget *image = NULL; + PurpleAccount *account = NULL; + GdkPixbuf *pixbuf = NULL; + + account = accounts->data; + + if(!purple_account_get_enabled(account, PIDGIN_UI)) { + if (!disabled_accounts) { + menuitem = gtk_menu_item_new_with_label(_("Enable Account")); + gtk_menu_shell_append(GTK_MENU_SHELL(accountmenu), menuitem); + gtk_widget_show(menuitem); + + submenu = gtk_menu_new(); + gtk_menu_set_accel_group(GTK_MENU(submenu), accel_group); + gtk_menu_set_accel_path(GTK_MENU(submenu), N_("<PurpleMain>/Accounts/Enable Account")); + gtk_menu_item_set_submenu(GTK_MENU_ITEM(menuitem), submenu); + gtk_widget_show(submenu); + + disabled_accounts = TRUE; + } + + buf = g_strconcat(purple_account_get_username(account), " (", + purple_account_get_protocol_name(account), ")", NULL); + menuitem = gtk_image_menu_item_new_with_label(buf); + g_free(buf); + pixbuf = pidgin_create_prpl_icon(account, PIDGIN_PRPL_ICON_SMALL); + if (pixbuf != NULL) + { + if (!purple_account_is_connected(account)) + gdk_pixbuf_saturate_and_pixelate(pixbuf, pixbuf, 0.0, FALSE); + image = gtk_image_new_from_pixbuf(pixbuf); + g_object_unref(G_OBJECT(pixbuf)); + gtk_widget_show(image); + gtk_image_menu_item_set_image(GTK_IMAGE_MENU_ITEM(menuitem), image); + } + g_signal_connect(G_OBJECT(menuitem), "activate", + G_CALLBACK(enable_account_cb), account); + gtk_menu_shell_append(GTK_MENU_SHELL(submenu), menuitem); + gtk_widget_show(menuitem); + } + } + + pidgin_separator(accountmenu); + + for (accounts = purple_accounts_get_all(); accounts; accounts = accounts->next) { + char *buf = NULL; char *accel_path_buf = NULL; GtkWidget *image = NULL; PurpleConnection *gc = NULL; @@ -7697,51 +7743,6 @@ } } - if(disabled_accounts) { - pidgin_separator(accountmenu); - menuitem = gtk_menu_item_new_with_label(_("Enable Account")); - gtk_menu_shell_append(GTK_MENU_SHELL(accountmenu), menuitem); - gtk_widget_show(menuitem); - - submenu = gtk_menu_new(); - gtk_menu_set_accel_group(GTK_MENU(submenu), accel_group); - gtk_menu_set_accel_path(GTK_MENU(submenu), N_("<PurpleMain>/Accounts/Enable Account")); - gtk_menu_item_set_submenu(GTK_MENU_ITEM(menuitem), submenu); - gtk_widget_show(submenu); - - for (accounts = purple_accounts_get_all(); accounts; accounts = accounts->next) { - char *buf = NULL; - GtkWidget *image = NULL; - PurpleAccount *account = NULL; - GdkPixbuf *pixbuf = NULL; - - account = accounts->data; - - if(!purple_account_get_enabled(account, PIDGIN_UI)) { - - disabled_accounts = TRUE; - - buf = g_strconcat(purple_account_get_username(account), " (", - purple_account_get_protocol_name(account), ")", NULL); - menuitem = gtk_image_menu_item_new_with_label(buf); - g_free(buf); - pixbuf = pidgin_create_prpl_icon(account, PIDGIN_PRPL_ICON_SMALL); - if (pixbuf != NULL) - { - if (!purple_account_is_connected(account)) - gdk_pixbuf_saturate_and_pixelate(pixbuf, pixbuf, 0.0, FALSE); - image = gtk_image_new_from_pixbuf(pixbuf); - g_object_unref(G_OBJECT(pixbuf)); - gtk_widget_show(image); - gtk_image_menu_item_set_image(GTK_IMAGE_MENU_ITEM(menuitem), image); - } - g_signal_connect(G_OBJECT(menuitem), "activate", - G_CALLBACK(enable_account_cb), account); - gtk_menu_shell_append(GTK_MENU_SHELL(submenu), menuitem); - gtk_widget_show(menuitem); - } - } - } } static GList *plugin_submenus = NULL;
--- a/pidgin/gtkdialogs.c Mon Jun 09 04:17:31 2008 +0000 +++ b/pidgin/gtkdialogs.c Wed Jun 11 03:46:30 2008 +0000 @@ -75,7 +75,7 @@ {"Thomas Butter", N_("developer"), NULL}, {"Ka-Hing Cheung", N_("developer"), NULL}, {"Sadrul Habib Chowdhury", N_("developer"), NULL}, - {"Mark 'KingAnt' Doliner", N_("developer"), NULL}, + {"Mark 'KingAnt' Doliner", N_("developer"), "mark@kingant.net"}, {"Sean Egan", N_("developer"), "sean.egan@gmail.com"}, {"Casey Harkins", N_("developer"), NULL}, {"Gary 'grim' Kramlich", N_("developer"), NULL},
--- a/pidgin/gtkimhtmltoolbar.c Mon Jun 09 04:17:31 2008 +0000 +++ b/pidgin/gtkimhtmltoolbar.c Wed Jun 11 03:46:30 2008 +0000 @@ -614,8 +614,7 @@ static struct smiley_button_list * sort_smileys(struct smiley_button_list *ls, GtkIMHtmlToolbar *toolbar, - int *width, const GtkIMHtmlSmiley *smiley, - const GSList *custom_smileys) + int *width, const GtkIMHtmlSmiley *smiley) { GtkWidget *image; GtkWidget *button; @@ -625,6 +624,7 @@ const gchar *filename = smiley->file; gchar *face = smiley->smile; PurpleSmiley *psmiley = NULL; + gboolean supports_custom = (gtk_imhtml_get_format_functions(GTK_IMHTML(toolbar->imhtml)) & GTK_IMHTML_CUSTOM_SMILEY); cur = g_new0(struct smiley_button_list, 1); it = ls; @@ -678,10 +678,12 @@ /* If this is a "non-custom" smiley, check to see if its shortcut is "shadowed" by any custom smiley. This can only happen if the connection is custom smiley-enabled */ - if (psmiley && !(smiley->flags & GTK_IMHTML_SMILEY_CUSTOM)) { - gtk_tooltips_set_tip(toolbar->tooltips, button, - _("This smiley is disabled because a custom smiley exists for this shortcut."), - NULL); + if (supports_custom && psmiley && !(smiley->flags & GTK_IMHTML_SMILEY_CUSTOM)) { + gchar tip[128]; + g_snprintf(tip, sizeof(tip), + _("This smiley is disabled because a custom smiley exists for this shortcut:\n %s"), + face); + gtk_tooltips_set_tip(toolbar->tooltips, button, tip, NULL); gtk_widget_set_sensitive(button, FALSE); } else if (psmiley) { /* Remove the button if the smiley is destroyed */ @@ -783,11 +785,14 @@ else smileys = pidgin_themes_get_proto_smileys(NULL); + /* Note: prepend smileys to list to avoid O(n^2) overhead when there is + a large number of smileys... need to revers the list after for the dialog + work... */ while(smileys) { GtkIMHtmlSmiley *smiley = (GtkIMHtmlSmiley *) smileys->data; if(!smiley->hidden) { if(smiley_is_unique(unique_smileys, smiley)) { - unique_smileys = g_slist_append(unique_smileys, smiley); + unique_smileys = g_slist_prepend(unique_smileys, smiley); } } smileys = smileys->next; @@ -800,9 +805,12 @@ for (iterator = custom_smileys ; iterator ; iterator = g_slist_next(iterator)) { GtkIMHtmlSmiley *smiley = (GtkIMHtmlSmiley *) iterator->data; - unique_smileys = g_slist_append(unique_smileys, smiley); + unique_smileys = g_slist_prepend(unique_smileys, smiley); } } + + /* we need to reverse the list to get the smileys in the correct order */ + unique_smileys = g_slist_reverse(unique_smileys); dialog = pidgin_create_dialog(_("Smile!"), 0, "smiley_dialog", FALSE); gtk_window_set_position(GTK_WINDOW(dialog), GTK_WIN_POS_MOUSE); @@ -834,7 +842,7 @@ while (unique_smileys) { GtkIMHtmlSmiley *smiley = (GtkIMHtmlSmiley *) unique_smileys->data; if (!smiley->hidden) { - ls = sort_smileys(ls, toolbar, &max_line_width, smiley, custom_smileys); + ls = sort_smileys(ls, toolbar, &max_line_width, smiley); } unique_smileys = g_slist_delete_link(unique_smileys, unique_smileys); }
--- a/pidgin/plugins/spellchk.c Mon Jun 09 04:17:31 2008 +0000 +++ b/pidgin/plugins/spellchk.c Wed Jun 11 03:46:30 2008 +0000 @@ -1740,6 +1740,7 @@ "BAD wroking\nGOOD working\n" "BAD wtih\nGOOD with\n" "BAD wuould\nGOOD would\n" + "BAD wud\nGOOD would\n" "BAD wut\nGOOD what\n" "BAD wya\nGOOD way\n" "BAD y\nGOOD why\n"
--- a/po/de.po Mon Jun 09 04:17:31 2008 +0000 +++ b/po/de.po Wed Jun 11 03:46:30 2008 +0000 @@ -12,9 +12,9 @@ msgstr "" "Project-Id-Version: de\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2008-05-31 00:16+0200\n" -"PO-Revision-Date: 2008-05-31 00:15+0200\n" -"Last-Translator: Bjoern Voigt <bjoern@cs.tu-berlin.de>\n" +"POT-Creation-Date: 2008-06-09 20:56+0200\n" +"PO-Revision-Date: 2008-06-09 20:55+0200\n" +"Last-Translator: Jochen Kemnade <jochenkemnade@web.de>\n" "Language-Team: Deutsch <de@li.org>\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" @@ -414,6 +414,9 @@ msgid "View Log..." msgstr "Mitschnitt anzeigen..." +msgid "View All Logs" +msgstr "Alle Mitschnitte anzeigen" + msgid "Show" msgstr "Anzeigen" @@ -669,6 +672,20 @@ "zu erhalten.\n" "Die folgenden Kommandos sind in diesem Kontext verfügbar:\n" +#, c-format +msgid "" +"%s is not a valid message class. See '/help msgcolor' for valid message " +"classes." +msgstr "" +"%s ist keine gültige Nachrichtenklasse. Die gültigen Nachrichtenklassen " +"finden Sie unter '/help msgcolor'." + +#, c-format +msgid "%s is not a valid color. See '/help msgcolor' for valid colors." +msgstr "" +"%s ist keine gültige Farbe. Die gültigen Farben finden Sie unter '/help " +"msgcolor'." + msgid "" "say <message>: Send a message normally as if you weren't using a " "command." @@ -715,6 +732,20 @@ msgid "statuses: Show the savedstatuses window." msgstr "statuses: Das Fenster mit gespeicherten Status-Infos anzeigen." +msgid "" +"msgcolor <class> <foreground> <background>: Set the color " +"for different classes of messages in the conversation window.<br> <" +"class>: receive, send, highlight, action, timestamp<br> <foreground/" +"background>: black, red, green, blue, white, gray, darkgray, magenta, " +"cyan, default<br><br>EXAMPLE:<br> msgcolor send cyan default" +msgstr "" +"msgcolor <Klasse> <Vordergrund> <Hintergrund>: Die Farbe " +"für verschiedene Klassen von Nachrichten im Gesprächsfenster festlegen." +"<br> <Klasse>: receive, send, highlight, action, timestamp<br> " +"<Vordergrund/Hintergrund>: black, red, green, blue, white, gray, " +"darkgray, magenta, cyan, default<br><br>BEISPIEL:<br> msgcolor send cyan " +"default" + msgid "Unable to open file." msgstr "Konnte die Datei nicht öffnen." @@ -735,8 +766,10 @@ msgstr "Pause" #, c-format -msgid "File Transfers - %d%% of %d files" -msgstr "Dateiübertragungen - %d%% von %d Dateien" +msgid "File Transfers - %d%% of %d file" +msgid_plural "File Transfers - %d%% of %d files" +msgstr[0] "Dateiübertragungen - %d%% von %d Datei" +msgstr[1] "Dateiübertragungen - %d%% von %d Dateien" #. Create the window. msgid "File Transfers" @@ -851,6 +884,9 @@ msgid "Conversations with %s" msgstr "Unterhaltung mit %s" +msgid "All Conversations" +msgstr "Alle Unterhaltungen" + msgid "System Log" msgstr "System-Mitschnitt" @@ -3198,8 +3234,10 @@ msgstr "Falscher Modus" #, c-format -msgid "Ban on %s by %s, set %ld seconds ago" -msgstr "Verbot zu %s von %s, gesetzt vor %ld Sekunden" +msgid "Ban on %s by %s, set %ld second ago" +msgid_plural "Ban on %s by %s, set %ld seconds ago" +msgstr[0] "Verbot zu %s von %s, gesetzt vor %ld Sekunde" +msgstr[1] "Verbot zu %s von %s, gesetzt vor %ld Sekunden" #, c-format msgid "Ban on %s" @@ -4551,14 +4589,14 @@ msgstr "Standards _akzeptieren" #, c-format +msgid "Error joining chat %s" +msgstr "Fehler beim Betreten des Chats %s" + +#, c-format msgid "Error in chat %s" msgstr "Fehler im Chat %s" #, c-format -msgid "Error joining chat %s" -msgstr "Fehler beim Betreten des Chats %s" - -#, c-format msgid "Unable to send file to %s, user does not support file transfers" msgstr "" "Kann die Datei nicht an %s senden, da der Client des Benutzers keine " @@ -5384,8 +5422,11 @@ msgstr "Logge ein" #, c-format -msgid "Connection to server lost (no data received within %d seconds)" -msgstr "" +msgid "Connection to server lost (no data received within %d second)" +msgid_plural "Connection to server lost (no data received within %d seconds)" +msgstr[0] "" +"Verbindung zum Server verloren (seit %d Sekunde keine Daten empfangen)" +msgstr[1] "" "Verbindung zum Server verloren (seit %d Sekunden keine Daten empfangen)" #. Can't write _()'d strings in array initializers. Workaround. @@ -5485,9 +5526,15 @@ #, c-format msgid "" +"%d buddy was added or updated from the server (including buddies already on " +"the server-side list)" +msgid_plural "" "%d buddies were added or updated from the server (including buddies already " "on the server-side list)" -msgstr "" +msgstr[0] "" +"%d Buddy wurde vom Server hinzugefügt oder aktualisiert (inklusive der " +"Buddys, die schon auf der Serverliste sind)" +msgstr[1] "" "%d Buddys wurden vom Server hinzugefügt oder aktualisiert (inklusive der " "Buddys, die schon auf der Serverliste sind)" @@ -6235,6 +6282,10 @@ msgid "Camera" msgstr "Kamera" +#, fuzzy +msgid "Screen Sharing" +msgstr "Screen Sharing" + msgid "Free For Chat" msgstr "Bereit zum Chatten" @@ -6367,6 +6418,7 @@ msgid "Unable to get a valid login hash." msgstr "Konnte keinen gültigen Login-Hash bekommen." +#. allow multple logins? msgid "Password sent" msgstr "Passwort gesendet" @@ -6560,6 +6612,8 @@ msgid "Personal Web Page" msgstr "Persönliche Webseite" +#. aim_userinfo_t +#. strip_html_tags msgid "Additional Information" msgstr "Zusätzliche Informationen" @@ -6924,6 +6978,9 @@ "Dateiübertragungen und Direkt-IM (langsamer,\n" "aber zeigt Ihre IP-Adresse nicht)" +msgid "Allow multiple simultaneous logins" +msgstr "Mehrere gleichzeitige Logins erlauben" + #, c-format msgid "Asking %s to connect to us at %s:%hu for Direct IM." msgstr "Frage %s, ob er sich zu uns auf %s:%hu für Direkt-IM verbinden möchte." @@ -10193,8 +10250,8 @@ msgid "/_Accounts" msgstr "/_Konten" -msgid "/Accounts/Manage" -msgstr "/Konten/Verwalten" +msgid "/Accounts/Manage Accounts" +msgstr "/Konten/Konten verwalten" #. Tools msgid "/_Tools" @@ -10384,13 +10441,13 @@ "<span weight='bold' size='larger'>Welcome to %s!</span>\n" "\n" "You have no accounts enabled. Enable your IM accounts from the <b>Accounts</" -"b> window at <b>Accounts->Manage</b>. Once you enable accounts, you'll be " -"able to sign on, set your status, and talk to your friends." +"b> window at <b>Accounts->Manage Accounts</b>. Once you enable accounts, " +"you'll be able to sign on, set your status, and talk to your friends." msgstr "" "<span weight='bold' size='larger'>Willkommen bei %s!</span>\n" "\n" "Sie haben keine Konten aktiviert. Aktivieren Sie Ihre IM-Konten vom " -"<b>Konten</b>-Fenster über <b>Konten->Verwalten</b>. Wenn Sie Konten " +"<b>Konten</b>-Fenster über <b>Konten->Konten verwalten</b>. Wenn Sie Konten " "aktiviert haben, können Sie sich anmelden, Ihren Status setzen und mit Ihren " "Freunden reden."
--- a/share/ca-certs/Makefile.mingw Mon Jun 09 04:17:31 2008 +0000 +++ b/share/ca-certs/Makefile.mingw Wed Jun 11 03:46:30 2008 +0000 @@ -8,14 +8,17 @@ include $(PIDGIN_TREE_TOP)/libpurple/win32/global.mak datadir := $(PIDGIN_INSTALL_DIR) -include ./Makefile.am +-include ./Makefile.am.mingw cacertsdir := $(PIDGIN_INSTALL_DIR)/ca-certs .PHONY: install -install: +install: ./Makefile.am.mingw if test '$(cacerts_DATA)'; then \ mkdir -p $(cacertsdir); \ cp $(cacerts_DATA) $(cacertsdir); \ fi; +./Makefile.am.mingw: ./Makefile.am + sed -e 's/^if\ INSTALL_SSL_CERTIFICATES/ifeq (\$$(INSTALL_SSL_CERTIFICATES), 1)/' ./Makefile.am > $@ +