#include "content/browser/background_fetch/background_fetch_delegate_proxy.h"
#include <utility>
#include "base/functional/bind.h"
#include "components/download/public/common/download_item.h"
#include "components/download/public/common/download_url_parameters.h"
#include "content/browser/background_fetch/background_fetch_job_controller.h"
#include "content/browser/renderer_host/render_frame_host_impl.h"
#include "content/browser/storage_partition_impl.h"
#include "content/public/browser/background_fetch_description.h"
#include "content/public/browser/background_fetch_response.h"
#include "content/public/browser/browser_context.h"
#include "content/public/browser/browser_thread.h"
#include "content/public/browser/download_manager.h"
#include "content/public/browser/download_manager_delegate.h"
#include "content/public/browser/permission_controller.h"
#include "content/public/browser/web_contents.h"
#include "third_party/blink/public/common/permissions/permission_utils.h"
#include "third_party/blink/public/mojom/blob/serialized_blob.mojom.h"
#include "third_party/skia/include/core/SkBitmap.h"
#include "ui/gfx/geometry/size.h"
namespace content {
BackgroundFetchDelegateProxy::BackgroundFetchDelegateProxy(
base::WeakPtr<StoragePartitionImpl> storage_partition)
: … { … }
BackgroundFetchDelegateProxy::~BackgroundFetchDelegateProxy() { … }
void BackgroundFetchDelegateProxy::SetClickEventDispatcher(
DispatchClickEventCallback callback) { … }
void BackgroundFetchDelegateProxy::GetIconDisplaySize(
BackgroundFetchDelegate::GetIconDisplaySizeCallback callback) { … }
void BackgroundFetchDelegateProxy::GetPermissionForOrigin(
const url::Origin& origin,
RenderProcessHost* rph,
RenderFrameHostImpl* rfh,
GetPermissionForOriginCallback callback) { … }
void BackgroundFetchDelegateProxy::CreateDownloadJob(
base::WeakPtr<Controller> controller,
std::unique_ptr<BackgroundFetchDescription> fetch_description) { … }
void BackgroundFetchDelegateProxy::StartRequest(
const std::string& job_unique_id,
const url::Origin& origin,
const scoped_refptr<BackgroundFetchRequestInfo>& request) { … }
void BackgroundFetchDelegateProxy::UpdateUI(
const std::string& job_unique_id,
const std::optional<std::string>& title,
const std::optional<SkBitmap>& icon,
blink::mojom::BackgroundFetchRegistrationService::UpdateUICallback
update_ui_callback) { … }
void BackgroundFetchDelegateProxy::Abort(const std::string& job_unique_id) { … }
void BackgroundFetchDelegateProxy::MarkJobComplete(
const std::string& job_unique_id) { … }
void BackgroundFetchDelegateProxy::OnJobCancelled(
const std::string& job_unique_id,
const std::string& download_guid,
blink::mojom::BackgroundFetchFailureReason reason_to_abort) { … }
void BackgroundFetchDelegateProxy::OnDownloadStarted(
const std::string& job_unique_id,
const std::string& guid,
std::unique_ptr<BackgroundFetchResponse> response) { … }
void BackgroundFetchDelegateProxy::OnUIActivated(
const std::string& job_unique_id) { … }
void BackgroundFetchDelegateProxy::OnUIUpdated(
const std::string& job_unique_id) { … }
void BackgroundFetchDelegateProxy::OnDownloadUpdated(
const std::string& job_unique_id,
const std::string& guid,
uint64_t bytes_uploaded,
uint64_t bytes_downloaded) { … }
void BackgroundFetchDelegateProxy::OnDownloadComplete(
const std::string& job_unique_id,
const std::string& guid,
std::unique_ptr<BackgroundFetchResult> result) { … }
void BackgroundFetchDelegateProxy::GetUploadData(
const std::string& job_unique_id,
const std::string& download_guid,
BackgroundFetchDelegate::GetUploadDataCallback callback) { … }
BrowserContext* BackgroundFetchDelegateProxy::GetBrowserContext() { … }
BackgroundFetchDelegate* BackgroundFetchDelegateProxy::GetDelegate() { … }
PermissionController* BackgroundFetchDelegateProxy::GetPermissionController() { … }
void BackgroundFetchDelegateProxy::DidGetPermissionFromDownloadRequestLimiter(
GetPermissionForOriginCallback callback,
bool has_permission) { … }
}