#include "content/public/browser/download_manager_delegate.h"
#include "base/functional/bind.h"
#include "base/functional/callback_helpers.h"
#include "base/task/single_thread_task_runner.h"
#include "components/download/public/common/download_item.h"
#include "components/download/public/common/download_item_rename_handler.h"
#include "content/public/browser/web_contents_delegate.h"
namespace content {
SavePackagePathPickedParams::SavePackagePathPickedParams() = default;
SavePackagePathPickedParams::~SavePackagePathPickedParams() = default;
SavePackagePathPickedParams::SavePackagePathPickedParams(
const SavePackagePathPickedParams& other) = default;
SavePackagePathPickedParams& SavePackagePathPickedParams::operator=(
const SavePackagePathPickedParams& other) = default;
SavePackagePathPickedParams::SavePackagePathPickedParams(
SavePackagePathPickedParams&& other) = default;
SavePackagePathPickedParams& SavePackagePathPickedParams::operator=(
SavePackagePathPickedParams&& other) = default;
void DownloadManagerDelegate::GetNextId(DownloadIdCallback callback) { … }
bool DownloadManagerDelegate::DetermineDownloadTarget(
download::DownloadItem* item,
download::DownloadTargetCallback* callback) { … }
bool DownloadManagerDelegate::ShouldAutomaticallyOpenFile(
const GURL& url,
const base::FilePath& path) { … }
bool DownloadManagerDelegate::ShouldAutomaticallyOpenFileByPolicy(
const GURL& url,
const base::FilePath& path) { … }
bool DownloadManagerDelegate::ShouldCompleteDownload(
download::DownloadItem* item,
base::OnceClosure callback) { … }
bool DownloadManagerDelegate::ShouldOpenDownload(
download::DownloadItem* item,
DownloadOpenDelayedCallback callback) { … }
bool DownloadManagerDelegate::InterceptDownloadIfApplicable(
const GURL& url,
const std::string& user_agent,
const std::string& content_disposition,
const std::string& mime_type,
const std::string& request_origin,
int64_t content_length,
bool is_transient,
WebContents* web_contents) { … }
std::string DownloadManagerDelegate::ApplicationClientIdForFileScanning() { … }
void DownloadManagerDelegate::CheckDownloadAllowed(
const WebContents::Getter& web_contents_getter,
const GURL& url,
const std::string& request_method,
std::optional<url::Origin> request_initiator,
bool from_download_cross_origin_redirect,
bool content_initiated,
const std::string& mime_type,
std::optional<ui::PageTransition> page_transition,
CheckDownloadAllowedCallback check_download_allowed_cb) { … }
download::QuarantineConnectionCallback
DownloadManagerDelegate::GetQuarantineConnectionCallback() { … }
std::unique_ptr<download::DownloadItemRenameHandler>
DownloadManagerDelegate::GetRenameHandlerForDownload(
download::DownloadItem* download_item) { … }
DownloadManagerDelegate::~DownloadManagerDelegate() { … }
download::DownloadItem* DownloadManagerDelegate::GetDownloadByGuid(
const std::string& guid) { … }
void DownloadManagerDelegate::CheckSavePackageAllowed(
download::DownloadItem* download_item,
base::flat_map<base::FilePath, base::FilePath> save_package_files,
SavePackageAllowedCallback callback) { … }
#if BUILDFLAG(IS_ANDROID)
bool DownloadManagerDelegate::IsFromExternalApp(download::DownloadItem* item) {
return false;
}
bool DownloadManagerDelegate::ShouldOpenPdfInline() {
return false;
}
#endif
}