filechooserdialog: Stop using ::response-requested

Replace the ::response-requested signal by an action.
This commit is contained in:
Matthias Clasen
2020-07-12 12:14:32 -04:00
parent 2e6b8810c0
commit 0145809a94
3 changed files with 10 additions and 6 deletions

View File

@@ -263,8 +263,9 @@ static void gtk_file_chooser_dialog_size_allocate (GtkWidget *wid
int width,
int height,
int baseline);
static void file_chooser_widget_response_requested (GtkWidget *widget,
GtkFileChooserDialog *dialog);
static void gtk_file_chooser_dialog_activate_response (GtkWidget *widget,
const char *action_name,
GVariant *parameters);
static void response_cb (GtkDialog *dialog,
gint response_id);
@@ -304,7 +305,8 @@ gtk_file_chooser_dialog_class_init (GtkFileChooserDialogClass *class)
gtk_widget_class_bind_template_child_private (widget_class, GtkFileChooserDialog, widget);
gtk_widget_class_bind_template_child_private (widget_class, GtkFileChooserDialog, buttons);
gtk_widget_class_bind_template_callback (widget_class, response_cb);
gtk_widget_class_bind_template_callback (widget_class, file_chooser_widget_response_requested);
gtk_widget_class_install_action (widget_class, "response.activate", NULL, gtk_file_chooser_dialog_activate_response);
}
static void
@@ -360,9 +362,11 @@ is_accept_response_id (gint response_id)
}
static void
file_chooser_widget_response_requested (GtkWidget *widget,
GtkFileChooserDialog *dialog)
gtk_file_chooser_dialog_activate_response (GtkWidget *widget,
const char *action_name,
GVariant *parameters)
{
GtkFileChooserDialog *dialog = GTK_FILE_CHOOSER_DIALOG (widget);
GtkFileChooserDialogPrivate *priv = gtk_file_chooser_dialog_get_instance_private (dialog);
GtkWidget *button;

View File

@@ -5700,6 +5700,7 @@ add_custom_button_to_dialog (GtkDialog *dialog,
static void
request_response_and_add_to_recent_list (GtkFileChooserWidget *impl)
{
gtk_widget_activate_action (GTK_WIDGET (impl), "response.activate", NULL);
g_signal_emit_by_name (impl, "response-requested");
add_selection_to_recent_list (impl);
}

View File

@@ -20,7 +20,6 @@
<object class="GtkFileChooserWidget" id="widget">
<property name="hexpand">1</property>
<property name="vexpand">1</property>
<signal name="response-requested" handler="file_chooser_widget_response_requested" swapped="no"/>
</object>
</child>
</object>