// Copyright 2018 The Chromium Authors
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
#ifndef CHROME_BROWSER_DOWNLOAD_ANDROID_DOWNLOAD_UTILS_H_
#define CHROME_BROWSER_DOWNLOAD_ANDROID_DOWNLOAD_UTILS_H_
#include <string>
#include "base/files/file_path.h"
#include "chrome/browser/download/android/download_open_source.h"
namespace download {
class DownloadItem;
}
class GURL;
// Native side of DownloadUtils.java.
class DownloadUtils {
public:
static base::FilePath GetUriStringForPath(const base::FilePath& file_path);
static int GetAutoResumptionSizeLimit();
static void OpenDownload(download::DownloadItem* item,
DownloadOpenSource open_source);
static std::string RemapGenericMimeType(const std::string& mime_type,
const GURL& url,
const std::string& file_name);
static bool ShouldAutoOpenDownload(download::DownloadItem* item);
static bool IsOmaDownloadDescription(const std::string& mime_type);
// Called to show the download manager, with a choice to focus on prefetched
// content instead of regular downloads. |download_open_source| is the source
// of the action.
static void ShowDownloadManager(bool show_prefetched_content,
DownloadOpenSource open_source);
static bool IsDownloadUserInitiated(download::DownloadItem* download);
};
#endif // CHROME_BROWSER_DOWNLOAD_ANDROID_DOWNLOAD_UTILS_H_