# HG changeset patch
# Node ID f438e3b58c11
# Parent  4be2eda9548a
diff --git a/ChangeLog.API b/ChangeLog.API
--- a/ChangeLog.API
+++ b/ChangeLog.API
@@ -801,6 +801,7 @@
 		* pidgin_mini_dialog_links_supported
 		* pidgin_pixbuf_button_from_stock
 		* pidgin_pixbuf_toolbar_button_from_stock
+		* pidgin_dialogs_plugins_info
 		* pidgin_pounce_editor_show
 		* pidgin_pounces_get_handle
 		* pidgin_pounces_init
diff --git a/pidgin/gtkdialogs.h b/pidgin/gtkdialogs.h
--- a/pidgin/gtkdialogs.h
+++ b/pidgin/gtkdialogs.h
@@ -38,14 +38,7 @@
 
 /* Functions in gtkdialogs.c (these should actually stay in this file) */
 void pidgin_dialogs_destroy_all(void);
-/**
- * pidgin_dialogs_plugins_info:
- *
- * This should not be used by anything but Pidgin.
- *
- * Since: 2.10.0
- */
-void pidgin_dialogs_plugins_info(void);
+
 void pidgin_dialogs_im(void);
 void pidgin_dialogs_im_with_user(PurpleAccount *account, const char *username);
 void pidgin_dialogs_info(void);
diff --git a/pidgin/gtkdialogs.c b/pidgin/gtkdialogs.c
--- a/pidgin/gtkdialogs.c
+++ b/pidgin/gtkdialogs.c
@@ -57,196 +57,6 @@
 	dialogwindows = NULL;
 }
 
-static void destroy_win(GtkWidget *button, GtkWidget *win)
-{
-	gtk_widget_destroy(win);
-}
-
-#if 0
-/* This function puts the version number onto the pixmap we use in the 'about'
- * screen in Pidgin. */
-static void
-pidgin_logo_versionize(GdkPixbuf **original, GtkWidget *widget) {
-	GdkPixmap *pixmap;
-	GtkStyle *style;
-	PangoContext *context;
-	PangoLayout *layout;
-	gchar *markup;
-	gint width, height;
-	gint lwidth = 0, lheight = 0;
-
-	style = gtk_widget_get_style(widget);
-
-	gdk_pixbuf_render_pixmap_and_mask(*original, &pixmap, NULL, 255);
-	width = gdk_pixbuf_get_width(*original);
-	height = gdk_pixbuf_get_height(*original);
-	g_object_unref(G_OBJECT(*original));
-
-	context = gtk_widget_get_pango_context(widget);
-	layout = pango_layout_new(context);
-
-	markup = g_strdup_printf("<span foreground=\"#000000\">%s</span>", DISPLAY_VERSION);
-	pango_layout_set_font_description(layout, style->font_desc);
-	pango_layout_set_markup(layout, markup, strlen(markup));
-	g_free(markup);
-
-	pango_layout_get_pixel_size(layout, &lwidth, &lheight);
-	gdk_draw_layout(GDK_DRAWABLE(pixmap), style->bg_gc[GTK_STATE_NORMAL],
-					width - (lwidth + 3), 1, layout);
-	g_object_unref(G_OBJECT(layout));
-
-	*original = gdk_pixbuf_get_from_drawable(NULL, pixmap, NULL,
-											 0, 0, 0, 0,
-											 width, height);
-	g_object_unref(G_OBJECT(pixmap));
-}
-#endif
-
-/* Note: Frees 'string' */
-static GtkWidget *
-pidgin_build_help_dialog(const char *title, const char *role, GString *string)
-{
-	GtkWidget *win, *vbox, *logo, *view, *button;
-	GdkPixbuf *pixbuf;
-	GtkTextBuffer *buffer;
-	AtkObject *obj;
-	char *filename, *tmp;
-
-	win = pidgin_dialog_new(title, 0, role, TRUE);
-	vbox = pidgin_dialog_get_vbox_with_properties(GTK_DIALOG(win), FALSE, 0);
-	gtk_window_set_default_size(GTK_WINDOW(win), 475, 450);
-
-	/* Generate a logo with a version number */
-	filename = g_build_filename(PURPLE_DATADIR,
-		"pixmaps", "pidgin", "logo.png", NULL);
-	pixbuf = pidgin_pixbuf_new_from_file(filename);
-	g_free(filename);
-
-	/* Insert the logo */
-	logo = gtk_image_new_from_pixbuf(pixbuf);
-	if (pixbuf)
-		g_object_unref(G_OBJECT(pixbuf));
-	obj = gtk_widget_get_accessible(logo);
-	tmp = g_strconcat(PIDGIN_NAME, " " DISPLAY_VERSION, NULL);
-	atk_object_set_description(obj, tmp);
-	g_free(tmp);
-	gtk_box_pack_start(GTK_BOX(vbox), logo, FALSE, FALSE, 0);
-
-	buffer = talkatu_html_buffer_new();
-	talkatu_markup_append_html(TALKATU_BUFFER(buffer), string->str, -1);
-
-	view = talkatu_view_new_with_buffer(buffer);
-	gtk_box_pack_start(GTK_BOX(vbox), view, TRUE, TRUE, 0);
-
-	button = pidgin_dialog_add_button(GTK_DIALOG(win), _("_Close"),
-	                G_CALLBACK(destroy_win), win);
-
-	gtk_widget_set_can_default(button, TRUE);
-	gtk_widget_grab_default(button);
-
-	gtk_widget_show_all(win);
-	gtk_window_present(GTK_WINDOW(win));
-
-	g_string_free(string, TRUE);
-
-	return win;
-}
-
-void pidgin_dialogs_plugins_info(void)
-{
-	GString *str;
-	GList *plugins, *l = NULL;
-	PurplePlugin *plugin = NULL;
-	PurplePluginInfo *info;
-	GPluginPluginInfo *ginfo;
-	PurplePluginExtraCb extra_cb;
-	char *title = g_strdup_printf(_("%s Plugin Information"), PIDGIN_NAME);
-	char *pname = NULL, *authors, *pauthors, *pextra;
-	const char *pver, *plicense, *pwebsite, *pid;
-	gboolean ploaded, ploadable;
-	const char * const *authorlist;
-	guint n_authors;
-	static GtkWidget *plugins_info = NULL;
-
-	str = g_string_sized_new(4096);
-
-	g_string_append_printf(str, "<h2>%s</h2><dl>", _("Plugin Information"));
-
-	plugins = purple_plugins_find_all();
-
-	for(l = plugins; l; l = l->next) {
-		plugin = PURPLE_PLUGIN(l->data);
-		info = purple_plugin_get_info(plugin);
-		ginfo = GPLUGIN_PLUGIN_INFO(info);
-		extra_cb = purple_plugin_info_get_extra_cb(info);
-
-		pname = g_markup_escape_text(
-		        gplugin_plugin_info_get_name(ginfo), -1);
-		authorlist = gplugin_plugin_info_get_authors(ginfo);
-
-		if (authorlist) {
-			authors = g_strjoinv(", ", (gchar **)authorlist);
-			n_authors = g_strv_length((gchar **)authorlist);
-		} else {
-			authors = NULL;
-			n_authors = 0;
-		}
-
-		if (authors)
-			pauthors = g_markup_escape_text(authors, -1);
-		else
-			pauthors = NULL;
-
-		pver = gplugin_plugin_info_get_version(ginfo);
-		plicense = gplugin_plugin_info_get_license_id(ginfo);
-		pwebsite = gplugin_plugin_info_get_website(ginfo);
-		pid = gplugin_plugin_info_get_id(ginfo);
-		ploadable = !purple_plugin_info_get_error(info);
-		ploaded = purple_plugin_is_loaded(plugin);
-
-		if (ploaded && extra_cb)
-			pextra = extra_cb(plugin);
-		else
-			pextra = NULL;
-
-		g_string_append_printf(str, "<dt>%s</dt><dd>", pname);
-		if (pauthors) {
-			g_string_append_printf(str, "<b>%s:</b> %s<br/>",
-			                       (n_authors > 1 ? "Authors" : "Author"),
-			                       pauthors);
-		}
-		g_string_append_printf(str,
-				"<b>Version:</b> %s<br/>"
-				"<b>License:</b> %s<br/>"
-				"<b>Website:</b> %s<br/>"
-				"<b>ID String:</b> %s<br/>"
-				"<b>Extra:</b> %s<br/>"
-				"<b>Loadable:</b> %s<br/>"
-				"<b>Loaded:</b> %s"
-				"</dd><br/>",
-				pver     ? pver     : "",
-				plicense ? plicense : "",
-				pwebsite ? pwebsite : "",
-				pid,
-				pextra    ? pextra  : "",
-				ploadable ? "Yes" : "<span style=\"color: #FF0000;\"><b>No</b></span>",
-				ploaded   ? "Yes" : "No");
-
-		g_free(pname);
-		g_free(pextra);
-		g_free(pauthors);
-		g_free(authors);
-	}
-	g_list_free(plugins);
-
-	g_string_append(str, "</dl><br/>");
-
-	plugins_info = pidgin_build_help_dialog(title, "plugins_info", str);
-	g_signal_connect(G_OBJECT(plugins_info), "destroy",
-			G_CALLBACK(gtk_widget_destroyed), &plugins_info);
-	g_free(title);
-}
-
 static void
 pidgin_dialogs_im_cb(gpointer data, PurpleRequestFields *fields)
 {
