[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <524e8ee4-52cd-47aa-80ea-7d09ebca05ea@infradead.org>
Date: Sun, 29 Jun 2025 20:20:57 -0700
From: Randy Dunlap <rdunlap@...radead.org>
To: Masahiro Yamada <masahiroy@...nel.org>, linux-kbuild@...r.kernel.org
Cc: linux-kernel@...r.kernel.org
Subject: Re: [PATCH 37/66] kconfig: gconf: use GtkFileChooser in
on_save_as1_activate()
On 6/24/25 8:05 AM, Masahiro Yamada wrote:
> gtk_file_selection_new() is deprecated, and gtk_file_chooser_dialog_new()
> should be used instead. [1]
>
> [1]: https://gitlab.gnome.org/GNOME/gtk/-/blob/2.24.33/docs/reference/gtk/tmpl/gtkfilesel.sgml?ref_type=tags#L156
>
> Signed-off-by: Masahiro Yamada <masahiroy@...nel.org>
Acked-by: Randy Dunlap <rdunlap@...radead.org>
Tested-by: Randy Dunlap <rdunlap@...radead.org>
> ---
>
> scripts/kconfig/gconf.c | 56 ++++++++++++++++++++---------------------
> 1 file changed, 27 insertions(+), 29 deletions(-)
>
> diff --git a/scripts/kconfig/gconf.c b/scripts/kconfig/gconf.c
> index f33f39d50f3d..b019711142c3 100644
> --- a/scripts/kconfig/gconf.c
> +++ b/scripts/kconfig/gconf.c
> @@ -198,38 +198,36 @@ static void on_save_activate(GtkMenuItem *menuitem, gpointer user_data)
> conf_write_autoconf(0);
> }
>
> -
> -static void
> -store_filename(GtkFileSelection * file_selector, gpointer user_data)
> -{
> - const gchar *fn;
> -
> - fn = gtk_file_selection_get_filename(GTK_FILE_SELECTION
> - (user_data));
> -
> - if (conf_write(fn))
> - text_insert_msg("Error", "Unable to save configuration !");
> -
> - gtk_widget_destroy(GTK_WIDGET(user_data));
> -}
> -
> static void on_save_as1_activate(GtkMenuItem *menuitem, gpointer user_data)
> {
> - GtkWidget *fs;
> + GtkWidget *dialog;
> + GtkFileChooser *chooser;
> + gint res;
>
> - fs = gtk_file_selection_new("Save file as...");
> - g_signal_connect(GTK_OBJECT(GTK_FILE_SELECTION(fs)->ok_button),
> - "clicked",
> - G_CALLBACK(store_filename), (gpointer) fs);
> - g_signal_connect_swapped(GTK_OBJECT
> - (GTK_FILE_SELECTION(fs)->ok_button),
> - "clicked", G_CALLBACK(gtk_widget_destroy),
> - (gpointer) fs);
> - g_signal_connect_swapped(GTK_OBJECT
> - (GTK_FILE_SELECTION(fs)->cancel_button),
> - "clicked", G_CALLBACK(gtk_widget_destroy),
> - (gpointer) fs);
> - gtk_widget_show(fs);
> + dialog = gtk_file_chooser_dialog_new("Save file as...",
> + GTK_WINDOW(user_data),
> + GTK_FILE_CHOOSER_ACTION_SAVE,
> + "_Cancel", GTK_RESPONSE_CANCEL,
> + "_Save", GTK_RESPONSE_ACCEPT,
> + NULL);
> +
> + chooser = GTK_FILE_CHOOSER(dialog);
> + gtk_file_chooser_set_filename(chooser, conf_get_configname());
> +
> + res = gtk_dialog_run(GTK_DIALOG(dialog));
> + if (res == GTK_RESPONSE_ACCEPT) {
> + char *filename;
> +
> + filename = gtk_file_chooser_get_filename(chooser);
> +
> + if (conf_write(filename))
> + text_insert_msg("Error",
> + "Unable to save configuration !");
> +
> + g_free(filename);
> + }
> +
> + gtk_widget_destroy(dialog);
> }
>
> static void on_show_name1_activate(GtkMenuItem *menuitem, gpointer user_data)
--
~Randy
Powered by blists - more mailing lists