# HG changeset patch # User Gary Kramlich # Date 1661484590 18000 # Node ID 6928f02e807a584df15f320dcb960d53b2f87c9a # Parent 8e279e150bce7d4ffacd0b9385e043e9117da741 Make the plugins dialog work under GTK4 Testing Done: Opened the plugins dialog and made sure it showed them plugins Reviewed at https://reviews.imfreedom.org/r/1650/ diff -r 8e279e150bce -r 6928f02e807a pidgin/pidginpluginsdialog.c --- a/pidgin/pidginpluginsdialog.c Thu Aug 25 21:36:19 2022 -0500 +++ b/pidgin/pidginpluginsdialog.c Thu Aug 25 22:29:50 2022 -0500 @@ -35,9 +35,25 @@ struct _PidginPluginsDialog { GtkDialog parent; + + GtkWidget *view; }; /****************************************************************************** + * Callbacks + *****************************************************************************/ +static void +pidgin_plugins_dialog_response_cb(GtkDialog* self, gint response_id, + G_GNUC_UNUSED gpointer data) +{ + switch(response_id) { + case GTK_RESPONSE_DELETE_EVENT: + gtk_window_destroy(GTK_WINDOW(self)); + break; + } +} + +/****************************************************************************** * GObject Implementation *****************************************************************************/ G_DEFINE_TYPE(PidginPluginsDialog, pidgin_plugins_dialog, GTK_TYPE_DIALOG); @@ -50,11 +66,22 @@ widget_class, "/im/pidgin/Pidgin3/Plugins/dialog.ui" ); + + gtk_widget_class_bind_template_child(widget_class, PidginPluginsDialog, + view); + + gtk_widget_class_bind_template_callback(widget_class, + pidgin_plugins_dialog_response_cb); } static void pidgin_plugins_dialog_init(PidginPluginsDialog *dialog) { + GPluginManager *manager = NULL; + gtk_widget_init_template(GTK_WIDGET(dialog)); + + manager = gplugin_manager_get_default(); + gplugin_gtk_view_set_manager(GPLUGIN_GTK_VIEW(dialog->view), manager); } /****************************************************************************** diff -r 8e279e150bce -r 6928f02e807a pidgin/resources/Plugins/dialog.ui --- a/pidgin/resources/Plugins/dialog.ui Thu Aug 25 21:36:19 2022 -0500 +++ b/pidgin/resources/Plugins/dialog.ui Thu Aug 25 22:29:50 2022 -0500 @@ -14,7 +14,7 @@ GNU General Public License for more details. You should have received a copy of the GNU General Public License -along with this library; if not, see . +along with this program; if not, see . --> @@ -25,10 +25,17 @@