#include "chrome/browser/download/bubble/download_bubble_utils.h"
#include "base/containers/fixed_flat_map.h"
#include "base/strings/string_util.h"
#include "base/time/time.h"
#include "chrome/browser/devtools/devtools_window.h"
#include "chrome/browser/download/download_ui_model.h"
#include "chrome/browser/ui/browser.h"
#include "chrome/browser/ui/browser_finder.h"
#include "chrome/browser/ui/download/download_item_mode.h"
#include "chrome/browser/ui/web_applications/app_browser_controller.h"
#include "chrome/grit/generated_resources.h"
#include "components/download/public/common/download_danger_type.h"
#include "components/download/public/common/download_item.h"
#include "components/offline_items_collection/core/offline_item.h"
#include "components/offline_items_collection/core/offline_item_state.h"
#include "content/public/browser/download_item_utils.h"
#include "content/public/browser/web_contents.h"
#include "content/public/browser/web_contents_delegate.h"
#include "ui/base/l10n/l10n_util.h"
base::Time GetItemStartTime(const download::DownloadItem* item) { … }
base::Time GetItemStartTime(const offline_items_collection::OfflineItem& item) { … }
const std::string& GetItemId(const download::DownloadItem* item) { … }
const offline_items_collection::ContentId& GetItemId(
const offline_items_collection::OfflineItem& item) { … }
bool ItemIsRecent(const download::DownloadItem* item, base::Time cutoff_time) { … }
bool ItemIsRecent(const offline_items_collection::OfflineItem& item,
base::Time cutoff_time) { … }
bool DownloadUIModelIsRecent(const DownloadUIModel* model,
base::Time cutoff_time) { … }
bool IsPendingDeepScanning(const download::DownloadItem* item) { … }
bool IsPendingDeepScanning(const DownloadUIModel* model) { … }
bool IsItemInProgress(const download::DownloadItem* item) { … }
bool IsItemInProgress(const offline_items_collection::OfflineItem& item) { … }
bool IsModelInProgress(const DownloadUIModel* model) { … }
bool IsItemPaused(const download::DownloadItem* item) { … }
bool IsItemPaused(const offline_items_collection::OfflineItem& item) { … }
DownloadBubbleAccessibleAlertsMap::Alert GetAccessibleAlertForModel(
const DownloadUIModel& model) { … }
Browser* FindBrowserToShowAnimation(download::DownloadItem* item,
Profile* profile) { … }
const webapps::AppId* GetWebAppIdForBrowser(const Browser* browser) { … }