# HG changeset patch
# Node ID 8612a6889046
# Parent  ff0346f63e8c
diff --git a/pidgin/meson.build b/pidgin/meson.build
--- a/pidgin/meson.build
+++ b/pidgin/meson.build
@@ -51,7 +51,6 @@ libpidgin_SOURCES = [
 	'pidginnotificationauthorizationrequest.c',
 	'pidginnotificationconnectionerror.c',
 	'pidginnotificationlist.c',
-	'pidginplugininfo.c',
 	'pidginpluginsdialog.c',
 	'pidginpluginsmenu.c',
 	'pidginpresenceicon.c',
@@ -120,7 +119,6 @@ libpidgin_headers = [
 	'pidginnotificationauthorizationrequest.h',
 	'pidginnotificationconnectionerror.h',
 	'pidginnotificationlist.h',
-	'pidginplugininfo.h',
 	'pidginpluginsdialog.h',
 	'pidginpluginsmenu.h',
 	'pidginpresenceicon.h',
diff --git a/pidgin/pidginplugininfo.h b/pidgin/pidginplugininfo.h
deleted file mode 100644
--- a/pidgin/pidginplugininfo.h
+++ /dev/null
@@ -1,86 +0,0 @@
-/* pidgin
- *
- * Pidgin 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 program 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., 51 Franklin Street, Fifth Floor, Boston, MA  02111-1301  USA
- */
-
-#if !defined(PIDGIN_GLOBAL_HEADER_INSIDE) && !defined(PIDGIN_COMPILATION)
-# error "only <pidgin.h> may be included directly"
-#endif
-
-#ifndef PIDGIN_PLUGIN_INFO_H
-#define PIDGIN_PLUGIN_INFO_H
-
-#include <gtk/gtk.h>
-
-#include <gplugin.h>
-
-#include <purple.h>
-
-G_BEGIN_DECLS
-
-/**
- * PidginPluginInfo:
- *
- * A #GPluginPluginInfo subclass that adds some Pidgin specific properties.
- *
- * Since: 3.0.0
- */
-
-#define PIDGIN_TYPE_PLUGIN_INFO (pidgin_plugin_info_get_type())
-G_DECLARE_FINAL_TYPE(PidginPluginInfo, pidgin_plugin_info, PIDGIN, PLUGIN_INFO, PurplePluginInfo)
-
-/**
- * PidginPluginInfoGetConfigFrameFunc:
- * @plugin: The instance of the plugin.
- *
- * Gets the [class@Gtk.Widget] for configruing @plugin.
- *
- * Returns: (transfer full): The widget used to configure @plugin.
- *
- * Since: 3.0.0
- */
-typedef GtkWidget *(*PidginPluginInfoGetConfigFrameFunc)(PurplePlugin *plugin);
-
-/**
- * pidgin_plugin_info_new:
- * @first_property:  The first property name
- * @...:  The value of the first property, followed optionally by more
- *        name/value pairs, followed by %NULL
- *
- * Creates a new #PidginPluginInfo instance to be returned from
- * #plugin_query of a pidgin plugin, using the provided name/value
- * pairs.
- *
- * See purple_plugin_info_new() for a list of available property names.
- * Additionally, you can provide the property
- * <literal>"gtk-config-frame-cb"</literal>, which should be a callback that
- * returns a #GtkWidget for the plugin's configuration
- * (see #PidginPluginConfigFrameCb).
- *
- * See purple_plugin_info_new().
- *
- * Returns: A new #PidginPluginInfo instance.
- *
- * Since: 3.0.0
- */
-GPluginPluginInfo *pidgin_plugin_info_new(const char *first_property, ...) G_GNUC_NULL_TERMINATED;
-
-G_END_DECLS
-
-#endif /* PIDGIN_PLUGIN_INFO_H */
diff --git a/pidgin/pidginplugininfo.c b/pidgin/pidginplugininfo.c
deleted file mode 100644
--- a/pidgin/pidginplugininfo.c
+++ /dev/null
@@ -1,118 +0,0 @@
-/* pidgin
- *
- * Pidgin 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 program 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., 51 Franklin Street, Fifth Floor, Boston, MA  02111-1301  USA
- */
-#include "pidginplugininfo.h"
-
-#include "pidgincore.h"
-
-enum {
-	PROP_0,
-	PROP_GTK_CONFIG_FRAME,
-	N_PROPERTIES,
-};
-static GParamSpec *properties[N_PROPERTIES] = {NULL, };
-
-struct _PidginPluginInfo {
-	PurplePluginInfo parent;
-
-	PidginPluginInfoGetConfigFrameFunc get_config_frame;
-};
-
-/******************************************************************************
- * GObject Implementation
- *****************************************************************************/
-G_DEFINE_TYPE(PidginPluginInfo, pidgin_plugin_info, PURPLE_TYPE_PLUGIN_INFO)
-
-static void
-pidgin_plugin_info_get_property(GObject *obj, guint param_id, GValue *value,
-                                GParamSpec *pspec)
-{
-	PidginPluginInfo *info = PIDGIN_PLUGIN_INFO(obj);
-
-	switch(param_id) {
-		case PROP_GTK_CONFIG_FRAME:
-			g_value_set_pointer(value, info->get_config_frame);
-			break;
-		default:
-			G_OBJECT_WARN_INVALID_PROPERTY_ID(obj, param_id, pspec);
-			break;
-	}
-}
-
-static void
-pidgin_plugin_info_set_property(GObject *obj, guint param_id,
-                                const GValue *value, GParamSpec *pspec)
-{
-	PidginPluginInfo *info = PIDGIN_PLUGIN_INFO(obj);
-
-	switch(param_id) {
-		case PROP_GTK_CONFIG_FRAME:
-			info->get_config_frame = g_value_get_pointer(value);
-			break;
-		default:
-			G_OBJECT_WARN_INVALID_PROPERTY_ID(obj, param_id, pspec);
-			break;
-	}
-}
-
-static void
-pidgin_plugin_info_init(G_GNUC_UNUSED PidginPluginInfo *info) {
-}
-
-static void
-pidgin_plugin_info_class_init(PidginPluginInfoClass *klass) {
-	GObjectClass *obj_class = G_OBJECT_CLASS(klass);
-
-	obj_class->get_property = pidgin_plugin_info_get_property;
-	obj_class->set_property = pidgin_plugin_info_set_property;
-
-	/**
-	 * PidginPluginInfo:gtk-config-frame-cb:
-	 *
-	 * A function to call to create the configuration widget for the plugin.
-	 */
-	properties[PROP_GTK_CONFIG_FRAME] = g_param_spec_pointer(
-		"gtk-config-frame-cb", "gtk-config-frame-cb",
-		"The callback function to create a configuration widget.",
-		G_PARAM_READWRITE | G_PARAM_CONSTRUCT_ONLY | G_PARAM_STATIC_STRINGS);
-
-	g_object_class_install_properties(obj_class, N_PROPERTIES, properties);
-}
-
-/******************************************************************************
- * API
- *****************************************************************************/
-GPluginPluginInfo *
-pidgin_plugin_info_new(const char *first_property, ...) {
-	GObject *info;
-	va_list var_args;
-
-	/* at least ID is required */
-	if (!first_property) {
-		return NULL;
-	}
-
-	va_start(var_args, first_property);
-	info = g_object_new_valist(PIDGIN_TYPE_PLUGIN_INFO, first_property,
-	                           var_args);
-	va_end(var_args);
-
-	return GPLUGIN_PLUGIN_INFO(info);
-}
diff --git a/pidgin/plugins/disco/xmppdisco.c b/pidgin/plugins/disco/xmppdisco.c
--- a/pidgin/plugins/disco/xmppdisco.c
+++ b/pidgin/plugins/disco/xmppdisco.c
@@ -663,7 +663,7 @@ xmpp_disco_query(G_GNUC_UNUSED GError **
 	menu = g_menu_new();
 	g_menu_append(menu, _("XMPP Service Discovery"), "dialog");
 
-	return pidgin_plugin_info_new(
+	return purple_plugin_info_new(
 		"id",           PLUGIN_ID,
 		"name",         N_("XMPP Service Discovery"),
 		"version",      DISPLAY_VERSION,
diff --git a/pidgin/plugins/gestures/gestures.c b/pidgin/plugins/gestures/gestures.c
--- a/pidgin/plugins/gestures/gestures.c
+++ b/pidgin/plugins/gestures/gestures.c
@@ -143,7 +143,7 @@ gestures_query(GError **error)
 		NULL
 	};
 
-	return pidgin_plugin_info_new(
+	return purple_plugin_info_new(
 		"id",                   GESTURES_PLUGIN_ID,
 		"name",                 N_("Mouse Gestures"),
 		"version",              DISPLAY_VERSION,
diff --git a/pidgin/plugins/iconaway/iconaway.c b/pidgin/plugins/iconaway/iconaway.c
--- a/pidgin/plugins/iconaway/iconaway.c
+++ b/pidgin/plugins/iconaway/iconaway.c
@@ -60,7 +60,7 @@ icon_away_query(G_GNUC_UNUSED GError **e
 		NULL
 	};
 
-	return pidgin_plugin_info_new(
+	return purple_plugin_info_new(
 		"id",           ICONAWAY_PLUGIN_ID,
 		"name",         N_("Minimize on Away"),
 		"version",      DISPLAY_VERSION,
diff --git a/pidgin/plugins/transparency/transparency.c b/pidgin/plugins/transparency/transparency.c
--- a/pidgin/plugins/transparency/transparency.c
+++ b/pidgin/plugins/transparency/transparency.c
@@ -318,7 +318,7 @@ transparency_query(G_GNUC_UNUSED GError 
 		NULL
 	};
 
-	return pidgin_plugin_info_new(
+	return purple_plugin_info_new(
 		"id", WINTRANS_PLUGIN_ID,
 		"name", N_("Transparency"),
 		"version", DISPLAY_VERSION,
diff --git a/pidgin/plugins/unity/unity.c b/pidgin/plugins/unity/unity.c
--- a/pidgin/plugins/unity/unity.c
+++ b/pidgin/plugins/unity/unity.c
@@ -486,7 +486,7 @@ unity_query(G_GNUC_UNUSED GError **error
 		NULL
 	};
 
-	return pidgin_plugin_info_new(
+	return purple_plugin_info_new(
 		"id",                   UNITY_PLUGIN_ID,
 		"name",                 N_("Unity Integration"),
 		"version",              DISPLAY_VERSION,
diff --git a/pidgin/plugins/xmppconsole/xmppconsole.c b/pidgin/plugins/xmppconsole/xmppconsole.c
--- a/pidgin/plugins/xmppconsole/xmppconsole.c
+++ b/pidgin/plugins/xmppconsole/xmppconsole.c
@@ -638,7 +638,7 @@ xmpp_console_query(G_GNUC_UNUSED GError 
 	menu = g_menu_new();
 	g_menu_append(menu, _("XMPP Console"), "console");
 
-	return pidgin_plugin_info_new(
+	return purple_plugin_info_new(
 		"id",           PLUGIN_ID,
 		"name",         N_("XMPP Console"),
 		"version",      DISPLAY_VERSION,
diff --git a/po/POTFILES.in b/po/POTFILES.in
--- a/po/POTFILES.in
+++ b/po/POTFILES.in
@@ -271,7 +271,6 @@ pidgin/pidginiconname.c
 pidgin/pidgininfopane.c
 pidgin/pidgininvitedialog.c
 pidgin/pidginkeypad.c
-pidgin/pidginplugininfo.c
 pidgin/pidginpluginsdialog.c
 pidgin/pidginpluginsmenu.c
 pidgin/pidginpresenceicon.c
