From: Jérôme Guelfucci Date: Mon, 28 Jun 2010 17:41:13 +0000 (+0200) Subject: Don't always show the "Pending downloads" dialog. X-Git-Url: https://spindle.queued.net/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=7821d61b5c8a0bde2834457ef38161b1e0cb89ec;p=midori Don't always show the "Pending downloads" dialog. If all donwloads are finished, cancelled or errored, the dialog should not be shown. --- diff --git a/toolbars/midori-transferbar.c b/toolbars/midori-transferbar.c index 3309e892..f0fb0304 100644 --- a/toolbars/midori-transferbar.c +++ b/toolbars/midori-transferbar.c @@ -267,9 +267,29 @@ gboolean midori_transferbar_confirm_delete (MidoriTransferbar* transferbar) { GtkWidget* dialog = NULL; + GList* list; gboolean cancel = FALSE; + gboolean all_done = TRUE; + + #if WEBKIT_CHECK_VERSION (1, 1, 3) + for (list = transferbar->infos; list != NULL; list = g_list_next (list)) + { + TransferInfo* info = list->data; + WebKitDownloadStatus status = webkit_download_get_status (info->download); + + if (status != WEBKIT_DOWNLOAD_STATUS_FINISHED + && status != WEBKIT_DOWNLOAD_STATUS_CANCELLED + && status != WEBKIT_DOWNLOAD_STATUS_ERROR) + { + all_done = FALSE; + break; + } + } + if (!all_done) + #else if (transferbar->infos || g_list_nth_data (transferbar->infos, 0)) + #endif { GtkWidget* widget = gtk_widget_get_toplevel (GTK_WIDGET (transferbar)); dialog = gtk_message_dialog_new (GTK_WINDOW (widget),