aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--embed/ephy-download.c9
-rw-r--r--embed/ephy-download.h3
2 files changed, 9 insertions, 3 deletions
diff --git a/embed/ephy-download.c b/embed/ephy-download.c
index a1821f208..5d77c0e29 100644
--- a/embed/ephy-download.c
+++ b/embed/ephy-download.c
@@ -674,6 +674,10 @@ ephy_download_do_download_action (EphyDownload *download,
LOG ("ephy_download_do_download_action: none");
ret = TRUE;
break;
+ case EPHY_DOWNLOAD_ACTION_DO_NOTHING:
+ LOG ("ephy_download_do_download_action: nothing");
+ ret = TRUE;
+ break;
default:
LOG ("ephy_download_do_download_action: unhandled action");
ret = FALSE;
@@ -916,10 +920,11 @@ download_status_changed_cb (GObject *object,
if (status == WEBKIT_DOWNLOAD_STATUS_FINISHED) {
g_signal_emit_by_name (download, "completed");
- if (g_settings_get_boolean (EPHY_SETTINGS_MAIN, EPHY_PREFS_AUTO_DOWNLOADS)) {
+ if (g_settings_get_boolean (EPHY_SETTINGS_MAIN, EPHY_PREFS_AUTO_DOWNLOADS) &&
+ priv->action == EPHY_DOWNLOAD_ACTION_NONE) {
ephy_download_do_download_action (download, EPHY_DOWNLOAD_ACTION_AUTO);
} else {
- ephy_download_do_download_action (download, EPHY_DOWNLOAD_ACTION_NONE);
+ ephy_download_do_download_action (download, priv->action);
}
ephy_embed_shell_remove_download (embed_shell, download);
diff --git a/embed/ephy-download.h b/embed/ephy-download.h
index 34cbbca83..a4592b806 100644
--- a/embed/ephy-download.h
+++ b/embed/ephy-download.h
@@ -74,7 +74,8 @@ typedef enum
EPHY_DOWNLOAD_ACTION_NONE,
EPHY_DOWNLOAD_ACTION_AUTO,
EPHY_DOWNLOAD_ACTION_BROWSE_TO,
- EPHY_DOWNLOAD_ACTION_OPEN
+ EPHY_DOWNLOAD_ACTION_OPEN,
+ EPHY_DOWNLOAD_ACTION_DO_NOTHING
} EphyDownloadActionType;
GType ephy_download_get_type (void) G_GNUC_CONST;