changeset 18965:7e6950797a17

propagate from branch 'im.pidgin.pidgin' (head 6526dd22033b4ab26156c07b7a84e53e092b4a21) to branch 'im.pidgin.soc.2007.certmgr' (head 053aa1d2f896af8fc75868b2eba1baf1e6b54c36)
author William Ehlhardt <williamehlhardt@gmail.com>
date Wed, 27 Jun 2007 04:17:13 +0000
parents 7b03727b10b4 (current diff) 5c6f019e48f8 (diff)
children a7808973dea8
files libpurple/Makefile.am
diffstat 30 files changed, 164 insertions(+), 16 deletions(-) [+]
line wrap: on
line diff
--- a/Doxyfile.in	Wed Jun 27 04:14:16 2007 +0000
+++ b/Doxyfile.in	Wed Jun 27 04:17:13 2007 +0000
@@ -432,8 +432,9 @@
 # with spaces.
 
 INPUT                  = libpurple \
-						 finch \
-						 pidgin \
+	                     finch \
+	                     finch/libgnt \
+	                     pidgin \
                          doc
 
 # If the value of the INPUT tag contains directories, you can use the 
--- a/finch/libgnt/gnt-skel.h	Wed Jun 27 04:14:16 2007 +0000
+++ b/finch/libgnt/gnt-skel.h	Wed Jun 27 04:17:13 2007 +0000
@@ -1,4 +1,8 @@
 /**
+ * @file gnt-skel.h -skel API
+ * @ingroup gnt
+ */
+/*
  * GNT - The GLib Ncurses Toolkit
  *
  * GNT is the legal property of its developers, whose names are too numerous
--- a/finch/libgnt/gnt.h	Wed Jun 27 04:14:16 2007 +0000
+++ b/finch/libgnt/gnt.h	Wed Jun 27 04:17:13 2007 +0000
@@ -1,4 +1,14 @@
 /**
+ * @defgroup gnt GNT (GLib Ncurses Toolkit)
+ *
+ * GNT is an ncurses toolkit for creating text-mode graphical user interfaces
+ * in a fast and easy way.
+ */
+/**
+ * @file gnt.h GNT API
+ * @ingroup gnt
+ */
+/*
  * GNT - The GLib Ncurses Toolkit
  *
  * GNT is the legal property of its developers, whose names are too numerous
--- a/finch/libgnt/gntbindable.h	Wed Jun 27 04:14:16 2007 +0000
+++ b/finch/libgnt/gntbindable.h	Wed Jun 27 04:17:13 2007 +0000
@@ -1,4 +1,8 @@
 /**
+ * @file gntbindable.h Bindable API
+ * @ingroup gnt
+ */
+/*
  * GNT - The GLib Ncurses Toolkit
  *
  * GNT is the legal property of its developers, whose names are too numerous
--- a/finch/libgnt/gntbox.h	Wed Jun 27 04:14:16 2007 +0000
+++ b/finch/libgnt/gntbox.h	Wed Jun 27 04:17:13 2007 +0000
@@ -1,4 +1,8 @@
 /**
+ * @file gntbox.h Box API
+ * @ingroup gnt
+ */
+/*
  * GNT - The GLib Ncurses Toolkit
  *
  * GNT is the legal property of its developers, whose names are too numerous
--- a/finch/libgnt/gntbutton.h	Wed Jun 27 04:14:16 2007 +0000
+++ b/finch/libgnt/gntbutton.h	Wed Jun 27 04:17:13 2007 +0000
@@ -1,4 +1,8 @@
 /**
+ * @file gntbutton.h Button API
+ * @ingroup gnt
+ */
+/*
  * GNT - The GLib Ncurses Toolkit
  *
  * GNT is the legal property of its developers, whose names are too numerous
--- a/finch/libgnt/gntcheckbox.h	Wed Jun 27 04:14:16 2007 +0000
+++ b/finch/libgnt/gntcheckbox.h	Wed Jun 27 04:17:13 2007 +0000
@@ -1,4 +1,8 @@
 /**
+ * @file gntcheckbox.h Checkbox API
+ * @ingroup gnt
+ */
+/*
  * GNT - The GLib Ncurses Toolkit
  *
  * GNT is the legal property of its developers, whose names are too numerous
--- a/finch/libgnt/gntclipboard.h	Wed Jun 27 04:14:16 2007 +0000
+++ b/finch/libgnt/gntclipboard.h	Wed Jun 27 04:17:13 2007 +0000
@@ -1,4 +1,8 @@
 /**
+ * @file gntclipboard.h Clipboard API
+ * @ingroup gnt
+ */
+/*
  * GNT - The GLib Ncurses Toolkit
  *
  * GNT is the legal property of its developers, whose names are too numerous
--- a/finch/libgnt/gntcolors.h	Wed Jun 27 04:14:16 2007 +0000
+++ b/finch/libgnt/gntcolors.h	Wed Jun 27 04:17:13 2007 +0000
@@ -1,4 +1,8 @@
 /**
+ * @file gntcolors.h Colors API
+ * @ingroup gnt
+ */
+/*
  * GNT - The GLib Ncurses Toolkit
  *
  * GNT is the legal property of its developers, whose names are too numerous
--- a/finch/libgnt/gntcombobox.h	Wed Jun 27 04:14:16 2007 +0000
+++ b/finch/libgnt/gntcombobox.h	Wed Jun 27 04:17:13 2007 +0000
@@ -1,4 +1,8 @@
 /**
+ * @file gntcombobox.h Combobox API
+ * @ingroup gnt
+ */
+/*
  * GNT - The GLib Ncurses Toolkit
  *
  * GNT is the legal property of its developers, whose names are too numerous
--- a/finch/libgnt/gntentry.h	Wed Jun 27 04:14:16 2007 +0000
+++ b/finch/libgnt/gntentry.h	Wed Jun 27 04:17:13 2007 +0000
@@ -1,4 +1,8 @@
 /**
+ * @file gntentry.h Entry API
+ * @ingroup gnt
+ */
+/*
  * GNT - The GLib Ncurses Toolkit
  *
  * GNT is the legal property of its developers, whose names are too numerous
--- a/finch/libgnt/gntfilesel.h	Wed Jun 27 04:14:16 2007 +0000
+++ b/finch/libgnt/gntfilesel.h	Wed Jun 27 04:17:13 2007 +0000
@@ -1,4 +1,8 @@
 /**
+ * @file gntfilesel.h File selector API
+ * @ingroup gnt
+ */
+/*
  * GNT - The GLib Ncurses Toolkit
  *
  * GNT is the legal property of its developers, whose names are too numerous
--- a/finch/libgnt/gntkeys.h	Wed Jun 27 04:14:16 2007 +0000
+++ b/finch/libgnt/gntkeys.h	Wed Jun 27 04:17:13 2007 +0000
@@ -1,4 +1,8 @@
 /**
+ * @file gntkeys.h Keys API
+ * @ingroup gnt
+ */
+/*
  * GNT - The GLib Ncurses Toolkit
  *
  * GNT is the legal property of its developers, whose names are too numerous
--- a/finch/libgnt/gntlabel.h	Wed Jun 27 04:14:16 2007 +0000
+++ b/finch/libgnt/gntlabel.h	Wed Jun 27 04:17:13 2007 +0000
@@ -1,4 +1,8 @@
 /**
+ * @file gntlabel.h Label API
+ * @ingroup gnt
+ */
+/*
  * GNT - The GLib Ncurses Toolkit
  *
  * GNT is the legal property of its developers, whose names are too numerous
--- a/finch/libgnt/gntline.h	Wed Jun 27 04:14:16 2007 +0000
+++ b/finch/libgnt/gntline.h	Wed Jun 27 04:17:13 2007 +0000
@@ -1,4 +1,8 @@
 /**
+ * @file gntline.h Line API
+ * @ingroup gnt
+ */
+/*
  * GNT - The GLib Ncurses Toolkit
  *
  * GNT is the legal property of its developers, whose names are too numerous
--- a/finch/libgnt/gntmenu.h	Wed Jun 27 04:14:16 2007 +0000
+++ b/finch/libgnt/gntmenu.h	Wed Jun 27 04:17:13 2007 +0000
@@ -1,4 +1,8 @@
 /**
+ * @file gntmenu.h Menu API
+ * @ingroup gnt
+ */
+/*
  * GNT - The GLib Ncurses Toolkit
  *
  * GNT is the legal property of its developers, whose names are too numerous
--- a/finch/libgnt/gntmenuitem.h	Wed Jun 27 04:14:16 2007 +0000
+++ b/finch/libgnt/gntmenuitem.h	Wed Jun 27 04:17:13 2007 +0000
@@ -1,4 +1,8 @@
 /**
+ * @file gntmenuitem.h Menuitem API
+ * @ingroup gnt
+ */
+/*
  * GNT - The GLib Ncurses Toolkit
  *
  * GNT is the legal property of its developers, whose names are too numerous
--- a/finch/libgnt/gntmenuitemcheck.h	Wed Jun 27 04:14:16 2007 +0000
+++ b/finch/libgnt/gntmenuitemcheck.h	Wed Jun 27 04:17:13 2007 +0000
@@ -1,4 +1,8 @@
 /**
+ * @file gntmenuitemcheck.h Check Menuitem API
+ * @ingroup gnt
+ */
+/*
  * GNT - The GLib Ncurses Toolkit
  *
  * GNT is the legal property of its developers, whose names are too numerous
--- a/finch/libgnt/gntstyle.h	Wed Jun 27 04:14:16 2007 +0000
+++ b/finch/libgnt/gntstyle.h	Wed Jun 27 04:17:13 2007 +0000
@@ -1,4 +1,8 @@
 /**
+ * @file gntstyle.h Style API
+ * @ingroup gnt
+ */
+/*
  * GNT - The GLib Ncurses Toolkit
  *
  * GNT is the legal property of its developers, whose names are too numerous
--- a/finch/libgnt/gnttextview.h	Wed Jun 27 04:14:16 2007 +0000
+++ b/finch/libgnt/gnttextview.h	Wed Jun 27 04:17:13 2007 +0000
@@ -1,4 +1,8 @@
 /**
+ * @file gnttextview.h Textview API
+ * @ingroup gnt
+ */
+/*
  * GNT - The GLib Ncurses Toolkit
  *
  * GNT is the legal property of its developers, whose names are too numerous
--- a/finch/libgnt/gnttree.h	Wed Jun 27 04:14:16 2007 +0000
+++ b/finch/libgnt/gnttree.h	Wed Jun 27 04:17:13 2007 +0000
@@ -1,4 +1,8 @@
 /**
+ * @file gnttree.h Tree API
+ * @ingroup gnt
+ */
+/*
  * GNT - The GLib Ncurses Toolkit
  *
  * GNT is the legal property of its developers, whose names are too numerous
--- a/finch/libgnt/gntutils.h	Wed Jun 27 04:14:16 2007 +0000
+++ b/finch/libgnt/gntutils.h	Wed Jun 27 04:17:13 2007 +0000
@@ -1,4 +1,8 @@
 /**
+ * @file gntutils.h Some utility functions
+ * @ingroup gnt
+ */
+/*
  * GNT - The GLib Ncurses Toolkit
  *
  * GNT is the legal property of its developers, whose names are too numerous
--- a/finch/libgnt/gntwidget.h	Wed Jun 27 04:14:16 2007 +0000
+++ b/finch/libgnt/gntwidget.h	Wed Jun 27 04:17:13 2007 +0000
@@ -1,4 +1,8 @@
 /**
+ * @file gntwidget.h Widget API
+ * @ingroup gnt
+ */
+/*
  * GNT - The GLib Ncurses Toolkit
  *
  * GNT is the legal property of its developers, whose names are too numerous
--- a/finch/libgnt/gntwindow.h	Wed Jun 27 04:14:16 2007 +0000
+++ b/finch/libgnt/gntwindow.h	Wed Jun 27 04:17:13 2007 +0000
@@ -1,4 +1,8 @@
 /**
+ * @file gntwindow.h Window API
+ * @ingroup gnt
+ */
+/*
  * GNT - The GLib Ncurses Toolkit
  *
  * GNT is the legal property of its developers, whose names are too numerous
--- a/finch/libgnt/gntwm.h	Wed Jun 27 04:14:16 2007 +0000
+++ b/finch/libgnt/gntwm.h	Wed Jun 27 04:17:13 2007 +0000
@@ -1,4 +1,8 @@
 /**
+ * @file gntwm.h Window-manager API
+ * @ingroup gnt
+ */
+/*
  * GNT - The GLib Ncurses Toolkit
  *
  * GNT is the legal property of its developers, whose names are too numerous
--- a/finch/libgnt/gntws.h	Wed Jun 27 04:14:16 2007 +0000
+++ b/finch/libgnt/gntws.h	Wed Jun 27 04:17:13 2007 +0000
@@ -1,3 +1,29 @@
+/**
+ * @file gntws.h Workspace API
+ * @ingroup gnt
+ */
+/*
+ * GNT - The GLib Ncurses Toolkit
+ *
+ * GNT is the legal property of its developers, whose names are too numerous
+ * to list here.  Please refer to the COPYRIGHT file distributed with this
+ * source distribution.
+ *
+ * This library is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
+ */
+
 #ifndef GNTWS_H
 #define GNTWS_H
 
--- a/libpurple/Makefile.am	Wed Jun 27 04:14:16 2007 +0000
+++ b/libpurple/Makefile.am	Wed Jun 27 04:17:13 2007 +0000
@@ -159,10 +159,10 @@
 purple_build_coreheaders = $(addprefix $(srcdir)/, $(purple_coreheaders))
 dbus_build_exported = $(addprefix $(srcdir)/, $(dbus_exported))
 
-dbus-types.c: dbus-analyze-types.py $(purple_coreheaders)
+dbus-types.c: dbus-analyze-types.py $(purple_build_coreheaders)
 	cat $(purple_build_coreheaders) | $(PYTHON) $(srcdir)/dbus-analyze-types.py --pattern=PURPLE_DBUS_DEFINE_TYPE\(%s\) > $@
 
-dbus-types.h: dbus-analyze-types.py $(dbus_coreheaders)
+dbus-types.h: dbus-analyze-types.py $(purple_build_coreheaders)
 	cat $(purple_build_coreheaders) | $(PYTHON) $(srcdir)/dbus-analyze-types.py --pattern=PURPLE_DBUS_DECLARE_TYPE\(%s\) > $@
 
 dbus-bindings.c: dbus-analyze-functions.py $(dbus_exported)
--- a/libpurple/protocols/oscar/libicq.c	Wed Jun 27 04:14:16 2007 +0000
+++ b/libpurple/protocols/oscar/libicq.c	Wed Jun 27 04:17:13 2007 +0000
@@ -32,7 +32,7 @@
 	OPT_PROTO_MAIL_CHECK | OPT_PROTO_IM_IMAGE,
 	NULL,					/* user_splits */
 	NULL,					/* protocol_options */
-	{"gif,jpeg,bmp,ico", 48, 48, 50, 50, 7168,
+	{"gif,jpeg,bmp,ico", 48, 48, 52, 64, 7168,
 		PURPLE_ICON_SCALE_SEND | PURPLE_ICON_SCALE_DISPLAY},	/* icon_spec */
 	oscar_list_icon_icq,		/* list_icon */
 	oscar_list_emblem,		/* list_emblems */
--- a/pidgin/gtkconv.c	Wed Jun 27 04:14:16 2007 +0000
+++ b/pidgin/gtkconv.c	Wed Jun 27 04:17:13 2007 +0000
@@ -347,15 +347,28 @@
 	}
 }
 
-static PurpleCmdRet
-clear_command_cb(PurpleConversation *conv,
-                 const char *cmd, char **args, char **error, void *data)
+static void clear_conversation_scrollback(PurpleConversation *conv)
 {
 	PidginConversation *gtkconv = NULL;
 
 	gtkconv = PIDGIN_CONVERSATION(conv);
 
 	gtk_imhtml_clear(GTK_IMHTML(gtkconv->imhtml));
+}
+
+static PurpleCmdRet
+clear_command_cb(PurpleConversation *conv,
+                 const char *cmd, char **args, char **error, void *data)
+{
+	clear_conversation_scrollback(conv);
+	return PURPLE_CMD_STATUS_OK;
+}
+
+static PurpleCmdRet
+clearall_command_cb(PurpleConversation *conv,
+                 const char *cmd, char **args, char **error, void *data)
+{
+	purple_conversation_foreach(clear_conversation_scrollback);
 	return PURPLE_CMD_STATUS_OK;
 }
 
@@ -528,13 +541,6 @@
 
 	account = purple_conversation_get_account(conv);
 
-	if (!purple_account_is_connected(account))
-		return;
-
-	if ((purple_conversation_get_type(conv) == PURPLE_CONV_TYPE_CHAT) &&
-		purple_conv_chat_has_left(PURPLE_CONV_CHAT(conv)))
-		return;
-
 	if (check_for_and_do_command(conv)) {
 		if (gtkconv->entry_growing) {
 			reset_default_size(gtkconv);
@@ -544,6 +550,13 @@
 		return;
 	}
 
+	if ((purple_conversation_get_type(conv) == PURPLE_CONV_TYPE_CHAT) &&
+		purple_conv_chat_has_left(PURPLE_CONV_CHAT(conv)))
+		return;
+
+	if (!purple_account_is_connected(account))
+		return;
+
 	buf = gtk_imhtml_get_markup(GTK_IMHTML(gtkconv->entry));
 	clean = gtk_imhtml_get_text(GTK_IMHTML(gtkconv->entry), NULL, NULL);
 
@@ -3879,7 +3892,7 @@
 						   CHAT_USERS_ALIAS_COLUMN, &alias,
 						   -1);
 
-				if (strcmp(name, alias))
+				if (name && alias && strcmp(name, alias))
 					tab_complete_process_item(&most_matched, entered, &partial, nick_partial,
 										  &matches, FALSE, alias);
 				g_free(name);
@@ -7202,6 +7215,9 @@
 	purple_cmd_register("clear", "", PURPLE_CMD_P_DEFAULT,
 	                  PURPLE_CMD_FLAG_CHAT | PURPLE_CMD_FLAG_IM, NULL,
 	                  clear_command_cb, _("clear: Clears the conversation scrollback."), NULL);
+	purple_cmd_register("clearall", "", PURPLE_CMD_P_DEFAULT,
+	                  PURPLE_CMD_FLAG_CHAT | PURPLE_CMD_FLAG_IM, NULL,
+	                  clearall_command_cb, _("clear: Clears all conversation scrollbacks."), NULL);
 	purple_cmd_register("help", "w", PURPLE_CMD_P_DEFAULT,
 	                  PURPLE_CMD_FLAG_CHAT | PURPLE_CMD_FLAG_IM | PURPLE_CMD_FLAG_ALLOW_WRONG_ARGS, NULL,
 	                  help_command_cb, _("help &lt;command&gt;:  Help on a specific command."), NULL);
--- a/pidgin/gtkutils.c	Wed Jun 27 04:14:16 2007 +0000
+++ b/pidgin/gtkutils.c	Wed Jun 27 04:17:13 2007 +0000
@@ -1147,6 +1147,9 @@
 	acc = gtk_widget_get_accessible (w);
 	label = gtk_widget_get_accessible (l);
 
+	/* Make sure mnemonics work */
+        gtk_label_set_mnemonic_widget(GTK_LABEL(l), w);
+	
 	/* If this object has no name, set it's name with the label text */
 	existing_name = atk_object_get_name (acc);
 	if (!existing_name) {