| Index: chrome/browser/download/download_target_determiner.h
|
| diff --git a/chrome/browser/download/download_target_determiner.h b/chrome/browser/download/download_target_determiner.h
|
| index dcb0d1e4f0c9bde19d2aa9282d0fc6bad73fc0f8..7fd15d427bbb1a03aaadcde32190ed0aeca7d22e 100644
|
| --- a/chrome/browser/download/download_target_determiner.h
|
| +++ b/chrome/browser/download/download_target_determiner.h
|
| @@ -52,6 +52,11 @@ class DownloadTargetDeterminer
|
| public:
|
| // Start the process of determing the target of |download|.
|
| //
|
| + // |initial_virtual_path| if non-empty, defines the initial virtual path for
|
| + // the target determination process. If one isn't specified, one will be
|
| + // generated based on the response data specified in |download| and the
|
| + // users' downloads directory. If the download has a forced path, then
|
| + // initial_virtual_path must be empty or be the forced path.
|
| // |download_prefs| is required and must outlive |download|. It is used for
|
| // determining the user's preferences regarding the default downloads
|
| // directory, prompting and auto-open behavior.
|
| @@ -65,6 +70,7 @@ class DownloadTargetDeterminer
|
| //
|
| // Start() should be called on the UI thread.
|
| static void Start(content::DownloadItem* download,
|
| + const base::FilePath& initial_virtual_path,
|
| DownloadPrefs* download_prefs,
|
| const base::FilePath& last_selected_directory,
|
| DownloadTargetDeterminerDelegate* delegate,
|
| @@ -119,6 +125,7 @@ class DownloadTargetDeterminer
|
| // are as per Start() above.
|
| DownloadTargetDeterminer(
|
| content::DownloadItem* download,
|
| + const base::FilePath& initial_virtual_path,
|
| DownloadPrefs* download_prefs,
|
| const base::FilePath& last_selected_directory,
|
| DownloadTargetDeterminerDelegate* delegate,
|
| @@ -220,7 +227,13 @@ class DownloadTargetDeterminer
|
|
|
| Profile* GetProfile();
|
|
|
| - bool ShouldPromptForDownload(const base::FilePath& filename);
|
| + bool ShouldPromptForDownload(const base::FilePath& filename) const;
|
| +
|
| + // Returns true if the user has been prompted for this download at least once.
|
| + // Can return true for resumed downloads that have prompted the user
|
| + // previously even if no prompting happened during the current run of
|
| + // DownloadTargetDeterminer.
|
| + bool HasPromptedForPath() const;
|
|
|
| // Returns true if this download should show the "dangerous file" warning.
|
| // Various factors are considered, such as the type of the file, whether a
|
| @@ -242,9 +255,10 @@ class DownloadTargetDeterminer
|
| base::FilePath intermediate_path_;
|
|
|
| content::DownloadItem* download_;
|
| + const bool is_resumption_;
|
| DownloadPrefs* download_prefs_;
|
| DownloadTargetDeterminerDelegate* delegate_;
|
| - base::FilePath last_selected_directory_;
|
| + const base::FilePath last_selected_directory_;
|
| content::DownloadTargetCallback completion_callback_;
|
| CancelableRequestConsumer history_consumer_;
|
|
|
|
|