Fixed closing the about dialog when composing messages

This commit is contained in:
Pierre Pronchery 2011-01-05 16:15:22 +00:00
parent 664545366d
commit 4dedbcbb84

View File

@ -703,6 +703,8 @@ void compose_send_cancel(Compose * compose)
/* compose_show_about */ /* compose_show_about */
static gboolean _about_on_closex(gpointer data);
void compose_show_about(Compose * compose, gboolean show) void compose_show_about(Compose * compose, gboolean show)
{ {
GtkWidget * dialog; GtkWidget * dialog;
@ -717,6 +719,8 @@ void compose_show_about(Compose * compose, gboolean show)
} }
dialog = desktop_about_dialog_new(); dialog = desktop_about_dialog_new();
compose->ab_window = dialog; compose->ab_window = dialog;
g_signal_connect_swapped(G_OBJECT(compose->ab_window), "delete-event",
G_CALLBACK(_about_on_closex), compose);
gtk_window_set_transient_for(GTK_WINDOW(dialog), GTK_WINDOW( gtk_window_set_transient_for(GTK_WINDOW(dialog), GTK_WINDOW(
compose->window)); compose->window));
desktop_about_dialog_set_name(dialog, PACKAGE); desktop_about_dialog_set_name(dialog, PACKAGE);
@ -727,3 +731,11 @@ void compose_show_about(Compose * compose, gboolean show)
desktop_about_dialog_set_license(dialog, _license); desktop_about_dialog_set_license(dialog, _license);
gtk_widget_show(dialog); gtk_widget_show(dialog);
} }
static gboolean _about_on_closex(gpointer data)
{
Compose * compose = data;
gtk_widget_hide(compose->ab_window);
return TRUE;
}