[Xfce4-commits] <midori:master> Bugfix: "save as" doesn't download anything
Christian Dywan
noreply at xfce.org
Fri Jun 1 00:58:05 CEST 2012
Updating branch refs/heads/master
to f38715efb279e08bb3ddcd941d5d9ff6091b98c8 (commit)
from 25d8b8ddfc8bbcb32ba60d33e3c240c50c5ca43c (commit)
commit f38715efb279e08bb3ddcd941d5d9ff6091b98c8
Author: André Stösel <andre at stoesel.de>
Date: Thu May 31 16:19:54 2012 +0200
Bugfix: "save as" doesn't download anything
Fixes: https://bugs.launchpad.net/midori/+bug/1005881
midori/midori-browser.c | 38 +++++++++++++++++---------------------
1 files changed, 17 insertions(+), 21 deletions(-)
diff --git a/midori/midori-browser.c b/midori/midori-browser.c
index 22d74f5..bae714a 100644
--- a/midori/midori-browser.c
+++ b/midori/midori-browser.c
@@ -1342,24 +1342,6 @@ midori_view_new_view_cb (GtkWidget* view,
}
static void
-midori_view_download_save_as_response_cb (GtkWidget* dialog,
- gint response,
- MidoriBrowser* browser)
-{
- WebKitDownload* download = g_object_get_data (G_OBJECT (dialog), "download");
- if (response == GTK_RESPONSE_OK)
- {
- gchar* uri = gtk_file_chooser_get_uri (GTK_FILE_CHOOSER (dialog));
- if (midori_browser_prepare_download (browser, download, uri))
- webkit_download_start (download);
- g_free (uri);
- }
- else
- g_object_unref (download);
- gtk_widget_hide (dialog);
-}
-
-static void
midori_browser_download_status_cb (WebKitDownload* download,
GParamSpec* pspec,
GtkWidget* widget)
@@ -1515,14 +1497,28 @@ midori_view_download_requested_cb (GtkWidget* view,
g_free (folder);
g_signal_connect (dialog, "destroy",
G_CALLBACK (gtk_widget_destroyed), &dialog);
- g_signal_connect (dialog, "response",
- G_CALLBACK (midori_view_download_save_as_response_cb), browser);
}
g_object_set_data (G_OBJECT (dialog), "download", download);
filename = sokoke_get_download_filename (download);
gtk_file_chooser_set_current_name (GTK_FILE_CHOOSER (dialog), filename);
g_free (filename);
- gtk_widget_show (dialog);
+
+ if (gtk_dialog_run (GTK_DIALOG (dialog)) == GTK_RESPONSE_OK)
+ {
+ gtk_widget_hide (dialog);
+ gchar* uri = gtk_file_chooser_get_uri (GTK_FILE_CHOOSER (dialog));
+ if (!midori_browser_prepare_download (browser, download, uri))
+ {
+ g_free (uri);
+ return FALSE;
+ }
+ g_free (uri);
+ }
+ else
+ {
+ gtk_widget_hide (dialog);
+ return FALSE;
+ }
}
else
{
More information about the Xfce4-commits
mailing list