Chromium Code Reviews| Index: content/shell/shell_download_manager_delegate.cc |
| diff --git a/content/shell/shell_download_manager_delegate.cc b/content/shell/shell_download_manager_delegate.cc |
| index 2bb5425f54f1c0aa8979b626aa5d80846e18d997..ed63d27c5c9286e4cad6bc0d62e5e8cf3aff2c33 100644 |
| --- a/content/shell/shell_download_manager_delegate.cc |
| +++ b/content/shell/shell_download_manager_delegate.cc |
| @@ -90,16 +90,14 @@ void ShellDownloadManagerDelegate::RestartDownload( |
| return; |
| // Since we have no download UI, show the user a dialog always. |
| - download->OnTargetPathDetermined(suggested_path, |
| - DownloadItem::TARGET_DISPOSITION_PROMPT, |
| - content::DOWNLOAD_DANGER_TYPE_NOT_DANGEROUS); |
| - download_manager_->RestartDownload(download_id); |
| + ChooseDownloadPath(download, suggested_path); |
|
Randy Smith (Not in Mondays)
2012/07/10 18:33:09
Any reason not to hoist the code in ChooseDownload
asanka
2012/07/11 20:03:32
I left it out since we might need to override it f
|
| } |
| -void ShellDownloadManagerDelegate::ChooseDownloadPath(DownloadItem* item) { |
| +void ShellDownloadManagerDelegate::ChooseDownloadPath( |
| + DownloadItem* item, |
| + const FilePath& suggested_path) { |
| FilePath result; |
| #if defined(OS_WIN) && !defined(USE_AURA) |
| - const FilePath suggested_path(item->GetTargetFilePath()); |
| std::wstring file_part = FilePath(suggested_path).BaseName().value(); |
| wchar_t file_name[MAX_PATH]; |
| base::wcslcpy(file_name, file_part.c_str(), arraysize(file_name)); |
| @@ -125,9 +123,12 @@ void ShellDownloadManagerDelegate::ChooseDownloadPath(DownloadItem* item) { |
| #endif |
| if (result.empty()) { |
| - download_manager_->FileSelectionCanceled(item->GetId()); |
| + item->Cancel(true); |
| } else { |
| - download_manager_->FileSelected(result, item->GetId()); |
| + item->OnTargetPathDetermined(result, |
| + DownloadItem::TARGET_DISPOSITION_PROMPT, |
| + content::DOWNLOAD_DANGER_TYPE_NOT_DANGEROUS); |
| + download_manager_->RestartDownload(download_id); |
| } |
| } |