From f92c82ead14152e7ac5c91a3b8febf6ceb430290 Mon Sep 17 00:00:00 2001 From: Daniel Schadt Date: Tue, 20 Dec 2016 14:52:39 +0100 Subject: [PATCH] downloads: don't remember dir for temp downloads Fixes #2173 --- qutebrowser/browser/downloads.py | 8 ++++++-- qutebrowser/browser/webengine/webenginedownloads.py | 3 ++- 2 files changed, 8 insertions(+), 3 deletions(-) diff --git a/qutebrowser/browser/downloads.py b/qutebrowser/browser/downloads.py index 12e766ecb..74fb12edb 100644 --- a/qutebrowser/browser/downloads.py +++ b/qutebrowser/browser/downloads.py @@ -564,13 +564,16 @@ class AbstractDownloadItem(QObject): """Set a temporary file when opening the download.""" raise NotImplementedError - def _set_filename(self, filename, *, force_overwrite=False): + def _set_filename(self, filename, *, force_overwrite=False, + remember_directory=True): """Set the filename to save the download to. Args: filename: The full filename to save the download to. None: special value to stop the download. force_overwrite: Force overwriting existing files. + remember_directory: If True, remember the directory for future + downloads. """ global last_used_directory filename = os.path.expanduser(filename) @@ -600,7 +603,8 @@ class AbstractDownloadItem(QObject): os.path.expanduser('~')) self.basename = os.path.basename(self._filename) - last_used_directory = os.path.dirname(self._filename) + if remember_directory: + last_used_directory = os.path.dirname(self._filename) log.downloads.debug("Setting filename to {}".format(filename)) if force_overwrite: diff --git a/qutebrowser/browser/webengine/webenginedownloads.py b/qutebrowser/browser/webengine/webenginedownloads.py index e78e939e1..44b326d36 100644 --- a/qutebrowser/browser/webengine/webenginedownloads.py +++ b/qutebrowser/browser/webengine/webenginedownloads.py @@ -96,7 +96,8 @@ class DownloadItem(downloads.AbstractDownloadItem): raise downloads.UnsupportedOperationError def _set_tempfile(self, fileobj): - self._set_filename(fileobj.name, force_overwrite=True) + self._set_filename(fileobj.name, force_overwrite=True, + remember_directory=False) def _ensure_can_set_filename(self, filename): state = self._qt_item.state()