summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorjam@chromium.org <jam@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2012-01-24 17:24:38 +0000
committerjam@chromium.org <jam@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2012-01-24 17:24:38 +0000
commita62d42908f4fcb66a60808025435ecd67b89cf0a (patch)
treeeefa595673e6ddc566f0b2078352b005e35561c9
parent3d0824177f14eba2dbc775dc35ea9c5a5cac1f0f (diff)
downloadchromium_src-a62d42908f4fcb66a60808025435ecd67b89cf0a.zip
chromium_src-a62d42908f4fcb66a60808025435ecd67b89cf0a.tar.gz
chromium_src-a62d42908f4fcb66a60808025435ecd67b89cf0a.tar.bz2
Move DownloadDangerType to its own file.
BUG=98716 Review URL: https://chromiumcodereview.appspot.com/9141031 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@118852 0039d316-1c4b-4281-b951-d872f2087c98
-rw-r--r--chrome/browser/download/chrome_download_manager_delegate.cc10
-rw-r--r--chrome/browser/download/download_extension_api.cc13
-rw-r--r--chrome/browser/download/download_extension_api.h1
-rw-r--r--chrome/browser/download/download_item_unittest.cc6
-rw-r--r--chrome/browser/download/download_manager_unittest.cc54
-rw-r--r--chrome/browser/download/download_shelf_context_menu.cc7
-rw-r--r--chrome/browser/download/download_util.cc18
-rw-r--r--chrome/browser/ui/cocoa/download/download_item_controller.mm5
-rw-r--r--chrome/browser/ui/gtk/custom_drag.cc1
-rw-r--r--chrome/browser/ui/gtk/download/download_item_gtk.cc17
-rw-r--r--chrome/browser/ui/views/download/download_item_view.cc32
-rw-r--r--content/browser/download/download_create_info.cc4
-rw-r--r--content/browser/download/download_create_info.h4
-rw-r--r--content/browser/download/download_item_impl.cc31
-rw-r--r--content/browser/download/download_item_impl.h4
-rw-r--r--content/browser/download/download_manager_impl.cc9
-rw-r--r--content/browser/download/download_query.cc13
-rw-r--r--content/browser/download/download_query.h2
-rw-r--r--content/browser/download/download_query_unittest.cc15
-rw-r--r--content/browser/download/download_state_info.cc21
-rw-r--r--content/browser/download/download_state_info.h33
-rw-r--r--content/browser/download/mock_download_item.h4
-rw-r--r--content/content_browser.gypi1
-rw-r--r--content/public/browser/download_danger_type.h39
-rw-r--r--content/public/browser/download_item.h7
25 files changed, 188 insertions, 163 deletions
diff --git a/chrome/browser/download/chrome_download_manager_delegate.cc b/chrome/browser/download/chrome_download_manager_delegate.cc
index e430200..4c3cd71 100644
--- a/chrome/browser/download/chrome_download_manager_delegate.cc
+++ b/chrome/browser/download/chrome_download_manager_delegate.cc
@@ -137,7 +137,7 @@ void ChromeDownloadManagerDelegate::ChooseDownloadPath(
bool ChromeDownloadManagerDelegate::OverrideIntermediatePath(
DownloadItem* item,
FilePath* intermediate_path) {
- if (item->GetDangerType() != DownloadStateInfo::NOT_DANGEROUS) {
+ if (item->GetDangerType() != content::DOWNLOAD_DANGER_TYPE_NOT_DANGEROUS) {
if (item->PromptUserForSaveLocation()) {
// When we prompt the user, we overwrite the FullPath with what the user
// wanted to use. Construct a file path using the previously determined
@@ -458,7 +458,7 @@ void ChromeDownloadManagerDelegate::CheckVisitedReferrerBeforeDone(
if (!state.prompt_user_for_save_location &&
state.force_file_name.empty() &&
IsDangerousFile(*download, state, visited_referrer_before)) {
- state.danger = DownloadStateInfo::DANGEROUS_FILE;
+ state.danger = content::DOWNLOAD_DANGER_TYPE_DANGEROUS_FILE;
}
#if defined(ENABLE_SAFE_BROWSING)
@@ -470,7 +470,7 @@ void ChromeDownloadManagerDelegate::CheckVisitedReferrerBeforeDone(
// TODO(noelutz): if the user changes the extension name in the UI to
// something like .exe SafeBrowsing will currently *not* check if the
// download is malicious.
- state.danger = DownloadStateInfo::MAYBE_DANGEROUS_CONTENT;
+ state.danger = content::DOWNLOAD_DANGER_TYPE_MAYBE_DANGEROUS_CONTENT;
}
#endif
@@ -508,7 +508,7 @@ void ChromeDownloadManagerDelegate::CheckIfSuggestedPathExists(
}
// If the download is possibly dangerous, we'll use a temporary name for it.
- if (state.danger != DownloadStateInfo::NOT_DANGEROUS) {
+ if (state.danger != content::DOWNLOAD_DANGER_TYPE_NOT_DANGEROUS) {
state.target_name = FilePath(state.suggested_path).BaseName();
// Create a temporary file to hold the file until the user approves its
// download.
@@ -560,7 +560,7 @@ void ChromeDownloadManagerDelegate::CheckIfSuggestedPathExists(
// See: http://code.google.com/p/chromium/issues/detail?id=3662
if (!state.prompt_user_for_save_location &&
state.force_file_name.empty()) {
- if (state.danger != DownloadStateInfo::NOT_DANGEROUS)
+ if (state.danger != content::DOWNLOAD_DANGER_TYPE_NOT_DANGEROUS)
file_util::WriteFile(state.suggested_path, "", 0);
else
file_util::WriteFile(download_util::GetCrDownloadPath(
diff --git a/chrome/browser/download/download_extension_api.cc b/chrome/browser/download/download_extension_api.cc
index 24ccfd4..9a8bf61 100644
--- a/chrome/browser/download/download_extension_api.cc
+++ b/chrome/browser/download/download_extension_api.cc
@@ -34,7 +34,6 @@
#include "chrome/browser/ui/browser_list.h"
#include "chrome/browser/ui/webui/web_ui_util.h"
#include "content/browser/download/download_id.h"
-#include "content/browser/download/download_state_info.h"
#include "content/browser/download/download_types.h"
#include "content/browser/download/interrupt_reasons.h"
#include "content/browser/renderer_host/render_view_host.h"
@@ -94,13 +93,13 @@ const char kStateKey[] = "state";
const char kTotalBytesKey[] = "totalBytes";
const char kUrlKey[] = "url";
-const char* DangerString(DownloadStateInfo::DangerType danger) {
+const char* DangerString(content::DownloadDangerType danger) {
switch (danger) {
- case DownloadStateInfo::MAYBE_DANGEROUS_CONTENT:
- case DownloadStateInfo::NOT_DANGEROUS: return kDangerSafe;
- case DownloadStateInfo::DANGEROUS_FILE: return kDangerFile;
- case DownloadStateInfo::DANGEROUS_URL: return kDangerUrl;
- case DownloadStateInfo::DANGEROUS_CONTENT: return kDangerContent;
+ case content::DOWNLOAD_DANGER_TYPE_MAYBE_DANGEROUS_CONTENT:
+ case content::DOWNLOAD_DANGER_TYPE_NOT_DANGEROUS: return kDangerSafe;
+ case content::DOWNLOAD_DANGER_TYPE_DANGEROUS_FILE: return kDangerFile;
+ case content::DOWNLOAD_DANGER_TYPE_DANGEROUS_URL: return kDangerUrl;
+ case content::DOWNLOAD_DANGER_TYPE_DANGEROUS_CONTENT: return kDangerContent;
default:
NOTREACHED();
return "";
diff --git a/chrome/browser/download/download_extension_api.h b/chrome/browser/download/download_extension_api.h
index dea8e67..4ea5e08 100644
--- a/chrome/browser/download/download_extension_api.h
+++ b/chrome/browser/download/download_extension_api.h
@@ -14,7 +14,6 @@
#include "base/memory/singleton.h"
#include "base/string16.h"
#include "chrome/browser/extensions/extension_function.h"
-#include "content/browser/download/download_state_info.h"
#include "content/public/browser/download_item.h"
#include "content/public/browser/download_manager.h"
diff --git a/chrome/browser/download/download_item_unittest.cc b/chrome/browser/download/download_item_unittest.cc
index bb8ee214..41c6cf6 100644
--- a/chrome/browser/download/download_item_unittest.cc
+++ b/chrome/browser/download/download_item_unittest.cc
@@ -228,7 +228,7 @@ TEST_F(DownloadItemTest, NotificationAfterSetFileCheckResults) {
MockObserver safe_observer(safe_item);
DownloadStateInfo state = safe_item->GetStateInfo();;
- state.danger = DownloadStateInfo::NOT_DANGEROUS;
+ state.danger = content::DOWNLOAD_DANGER_TYPE_NOT_DANGEROUS;
safe_item->SetFileCheckResults(state);
ASSERT_FALSE(safe_observer.CheckUpdated());
@@ -237,7 +237,7 @@ TEST_F(DownloadItemTest, NotificationAfterSetFileCheckResults) {
MockObserver unsafeurl_observer(unsafeurl_item);
state = unsafeurl_item->GetStateInfo();;
- state.danger = DownloadStateInfo::DANGEROUS_URL;
+ state.danger = content::DOWNLOAD_DANGER_TYPE_DANGEROUS_URL;
unsafeurl_item->SetFileCheckResults(state);
ASSERT_TRUE(unsafeurl_observer.CheckUpdated());
@@ -248,7 +248,7 @@ TEST_F(DownloadItemTest, NotificationAfterSetFileCheckResults) {
MockObserver unsafefile_observer(unsafefile_item);
state = unsafefile_item->GetStateInfo();;
- state.danger = DownloadStateInfo::DANGEROUS_FILE;
+ state.danger = content::DOWNLOAD_DANGER_TYPE_DANGEROUS_FILE;
unsafefile_item->SetFileCheckResults(state);
ASSERT_TRUE(unsafefile_observer.CheckUpdated());
diff --git a/chrome/browser/download/download_manager_unittest.cc b/chrome/browser/download/download_manager_unittest.cc
index 2cdd5b8..2b303e8 100644
--- a/chrome/browser/download/download_manager_unittest.cc
+++ b/chrome/browser/download/download_manager_unittest.cc
@@ -386,29 +386,31 @@ const struct {
const struct {
FilePath::StringType suggested_path;
- DownloadStateInfo::DangerType danger;
+ content::DownloadDangerType danger;
bool finish_before_rename;
int expected_rename_count;
} kDownloadRenameCases[] = {
// Safe download, download finishes BEFORE file name determined.
// Renamed twice (linear path through UI). Crdownload file does not need
// to be deleted.
- { FILE_PATH_LITERAL("foo.zip"), DownloadStateInfo::NOT_DANGEROUS, true, 2, },
+ { FILE_PATH_LITERAL("foo.zip"), content::DOWNLOAD_DANGER_TYPE_NOT_DANGEROUS,
+ true, 2, },
// Potentially dangerous download (e.g., file is dangerous), download finishes
// BEFORE file name determined. Needs to be renamed only once.
{ FILE_PATH_LITERAL("Unconfirmed xxx.crdownload"),
- DownloadStateInfo::MAYBE_DANGEROUS_CONTENT, true, 1, },
+ content::DOWNLOAD_DANGER_TYPE_MAYBE_DANGEROUS_CONTENT, true, 1, },
{ FILE_PATH_LITERAL("Unconfirmed xxx.crdownload"),
- DownloadStateInfo::DANGEROUS_FILE, true, 1, },
+ content::DOWNLOAD_DANGER_TYPE_DANGEROUS_FILE, true, 1, },
// Safe download, download finishes AFTER file name determined.
// Needs to be renamed twice.
- { FILE_PATH_LITERAL("foo.zip"), DownloadStateInfo::NOT_DANGEROUS, false, 2, },
+ { FILE_PATH_LITERAL("foo.zip"), content::DOWNLOAD_DANGER_TYPE_NOT_DANGEROUS,
+ false, 2, },
// Potentially dangerous download, download finishes AFTER file name
// determined. Needs to be renamed only once.
{ FILE_PATH_LITERAL("Unconfirmed xxx.crdownload"),
- DownloadStateInfo::MAYBE_DANGEROUS_CONTENT, false, 1, },
+ content::DOWNLOAD_DANGER_TYPE_MAYBE_DANGEROUS_CONTENT, false, 1, },
{ FILE_PATH_LITERAL("Unconfirmed xxx.crdownload"),
- DownloadStateInfo::DANGEROUS_FILE, false, 1, },
+ content::DOWNLOAD_DANGER_TYPE_DANGEROUS_FILE, false, 1, },
};
// This is an observer that records what download IDs have opened a select
@@ -548,7 +550,7 @@ const struct DownloadFilenameTestCase {
const FilePath::CharType* suggested_path;
const FilePath::CharType* target_name;
PromptForSaveLocation prompt_user_for_save_location;
- DownloadStateInfo::DangerType danger_type;
+ content::DownloadDangerType danger_type;
// If we receive a ChooseDownloadPath() call to prompt the user for a download
// location, |prompt_path| is the expected prompt path. The
@@ -571,7 +573,7 @@ const struct DownloadFilenameTestCase {
FILE_PATH_LITERAL("$dl/foo.txt"),
FILE_PATH_LITERAL(""),
DONT_PROMPT,
- DownloadStateInfo::NOT_DANGEROUS,
+ content::DOWNLOAD_DANGER_TYPE_NOT_DANGEROUS,
FILE_PATH_LITERAL(""),
FILE_PATH_LITERAL("$dl/foo.txt.crdownload"),
FILE_PATH_LITERAL("$dl/foo.txt"),
@@ -582,7 +584,7 @@ const struct DownloadFilenameTestCase {
FILE_PATH_LITERAL("$dl/foo.txt"),
FILE_PATH_LITERAL(""),
PROMPT,
- DownloadStateInfo::NOT_DANGEROUS,
+ content::DOWNLOAD_DANGER_TYPE_NOT_DANGEROUS,
FILE_PATH_LITERAL("$dl/foo.txt"),
FILE_PATH_LITERAL("$dl/foo.txt.crdownload"),
FILE_PATH_LITERAL("$dl/foo.txt"),
@@ -594,7 +596,7 @@ const struct DownloadFilenameTestCase {
FILE_PATH_LITERAL("$dl/foo.txt"),
FILE_PATH_LITERAL(""),
PROMPT,
- DownloadStateInfo::NOT_DANGEROUS,
+ content::DOWNLOAD_DANGER_TYPE_NOT_DANGEROUS,
FILE_PATH_LITERAL("$dl/foo.txt"),
FILE_PATH_LITERAL("$dl/bar.txt.crdownload"),
FILE_PATH_LITERAL("$dl/bar.txt"),
@@ -606,7 +608,7 @@ const struct DownloadFilenameTestCase {
FILE_PATH_LITERAL("$dl/foo.txt"),
FILE_PATH_LITERAL(""),
PROMPT,
- DownloadStateInfo::NOT_DANGEROUS,
+ content::DOWNLOAD_DANGER_TYPE_NOT_DANGEROUS,
FILE_PATH_LITERAL("$dl/foo.txt"),
FILE_PATH_LITERAL("$alt/bar.txt.crdownload"),
FILE_PATH_LITERAL("$alt/bar.txt"),
@@ -617,7 +619,7 @@ const struct DownloadFilenameTestCase {
FILE_PATH_LITERAL("$dl/Unconfirmed xxx.download"),
FILE_PATH_LITERAL("foo.exe"),
DONT_PROMPT,
- DownloadStateInfo::MAYBE_DANGEROUS_CONTENT,
+ content::DOWNLOAD_DANGER_TYPE_MAYBE_DANGEROUS_CONTENT,
FILE_PATH_LITERAL(""),
FILE_PATH_LITERAL("$dl/Unconfirmed xxx.download"),
FILE_PATH_LITERAL("$dl/foo.exe"),
@@ -628,7 +630,7 @@ const struct DownloadFilenameTestCase {
FILE_PATH_LITERAL("$dl/Unconfirmed xxx.download"),
FILE_PATH_LITERAL("foo.exe"),
PROMPT,
- DownloadStateInfo::MAYBE_DANGEROUS_CONTENT,
+ content::DOWNLOAD_DANGER_TYPE_MAYBE_DANGEROUS_CONTENT,
FILE_PATH_LITERAL("$dl/foo.exe"),
FILE_PATH_LITERAL("$dl/Unconfirmed xxx.download"),
FILE_PATH_LITERAL("$dl/foo.exe"),
@@ -640,7 +642,7 @@ const struct DownloadFilenameTestCase {
FILE_PATH_LITERAL("$dl/Unconfirmed xxx.download"),
FILE_PATH_LITERAL("foo.exe"),
PROMPT,
- DownloadStateInfo::MAYBE_DANGEROUS_CONTENT,
+ content::DOWNLOAD_DANGER_TYPE_MAYBE_DANGEROUS_CONTENT,
FILE_PATH_LITERAL("$dl/foo.exe"),
FILE_PATH_LITERAL("$dl/Unconfirmed xxx.download"),
FILE_PATH_LITERAL("$dl/bar.exe"),
@@ -652,7 +654,7 @@ const struct DownloadFilenameTestCase {
FILE_PATH_LITERAL("$dl/Unconfirmed xxx.download"),
FILE_PATH_LITERAL("foo.exe"),
PROMPT,
- DownloadStateInfo::MAYBE_DANGEROUS_CONTENT,
+ content::DOWNLOAD_DANGER_TYPE_MAYBE_DANGEROUS_CONTENT,
FILE_PATH_LITERAL("$dl/foo.exe"),
FILE_PATH_LITERAL("$alt/Unconfirmed xxx.download"),
FILE_PATH_LITERAL("$alt/bar.exe"),
@@ -663,7 +665,7 @@ const struct DownloadFilenameTestCase {
FILE_PATH_LITERAL("$dl/Unconfirmed xxx.download"),
FILE_PATH_LITERAL("foo.exe"),
PROMPT,
- DownloadStateInfo::DANGEROUS_URL,
+ content::DOWNLOAD_DANGER_TYPE_DANGEROUS_URL,
FILE_PATH_LITERAL(""),
FILE_PATH_LITERAL("$dl/Unconfirmed xxx.download"),
FILE_PATH_LITERAL("$dl/foo.exe"),
@@ -674,7 +676,7 @@ const struct DownloadFilenameTestCase {
FILE_PATH_LITERAL("$dl/Unconfirmed xxx.download"),
FILE_PATH_LITERAL("foo.exe"),
DONT_PROMPT,
- DownloadStateInfo::DANGEROUS_URL,
+ content::DOWNLOAD_DANGER_TYPE_DANGEROUS_URL,
FILE_PATH_LITERAL(""),
FILE_PATH_LITERAL("$dl/Unconfirmed xxx.download"),
FILE_PATH_LITERAL(""),
@@ -686,7 +688,7 @@ const struct DownloadFilenameTestCase {
FILE_PATH_LITERAL("$dl/Unconfirmed xxx.download"),
FILE_PATH_LITERAL("foo.exe"),
PROMPT,
- DownloadStateInfo::DANGEROUS_URL,
+ content::DOWNLOAD_DANGER_TYPE_DANGEROUS_URL,
FILE_PATH_LITERAL("$dl/foo.exe"),
FILE_PATH_LITERAL("$alt/Unconfirmed xxx.download"),
FILE_PATH_LITERAL("$alt/bar.exe"),
@@ -699,7 +701,7 @@ const struct DownloadFilenameTestCase {
FILE_PATH_LITERAL("$dl/exists.txt"),
FILE_PATH_LITERAL(""),
DONT_PROMPT,
- DownloadStateInfo::NOT_DANGEROUS,
+ content::DOWNLOAD_DANGER_TYPE_NOT_DANGEROUS,
FILE_PATH_LITERAL(""),
FILE_PATH_LITERAL("$dl/exists.txt.crdownload"),
FILE_PATH_LITERAL("$dl/exists.txt"),
@@ -711,7 +713,7 @@ const struct DownloadFilenameTestCase {
FILE_PATH_LITERAL("$dl/Unconfirmed xxx.download"),
FILE_PATH_LITERAL("exists.exe"),
DONT_PROMPT,
- DownloadStateInfo::MAYBE_DANGEROUS_CONTENT,
+ content::DOWNLOAD_DANGER_TYPE_MAYBE_DANGEROUS_CONTENT,
FILE_PATH_LITERAL(""),
FILE_PATH_LITERAL("$dl/Unconfirmed xxx.download"),
FILE_PATH_LITERAL("$dl/exists (1).exe"),
@@ -723,7 +725,7 @@ const struct DownloadFilenameTestCase {
FILE_PATH_LITERAL("$dl/Unconfirmed xxx.download"),
FILE_PATH_LITERAL("exists.exe"),
DONT_PROMPT,
- DownloadStateInfo::DANGEROUS_CONTENT,
+ content::DOWNLOAD_DANGER_TYPE_DANGEROUS_CONTENT,
FILE_PATH_LITERAL(""),
FILE_PATH_LITERAL("$dl/Unconfirmed xxx.download"),
FILE_PATH_LITERAL("$dl/exists (1).exe"),
@@ -736,7 +738,7 @@ const struct DownloadFilenameTestCase {
FILE_PATH_LITERAL("$dl/Unconfirmed xxx.download"),
FILE_PATH_LITERAL("exists.exe"),
PROMPT,
- DownloadStateInfo::MAYBE_DANGEROUS_CONTENT,
+ content::DOWNLOAD_DANGER_TYPE_MAYBE_DANGEROUS_CONTENT,
FILE_PATH_LITERAL("$dl/exists.exe"),
FILE_PATH_LITERAL("$dl/Unconfirmed xxx.download"),
FILE_PATH_LITERAL("$dl/exists.exe"),
@@ -815,10 +817,10 @@ TEST_F(DownloadManagerTest, DownloadFilenameTest) {
state.prompt_user_for_save_location =
(kDownloadFilenameTestCases[i].prompt_user_for_save_location == PROMPT);
state.target_name = FilePath(kDownloadFilenameTestCases[i].target_name);
- if (state.danger == DownloadStateInfo::DANGEROUS_CONTENT) {
+ if (state.danger == content::DOWNLOAD_DANGER_TYPE_DANGEROUS_CONTENT) {
// DANGEROUS_CONTENT will only be known once we have all the data. We let
// our TestDownloadManagerDelegate handle it.
- state.danger = DownloadStateInfo::MAYBE_DANGEROUS_CONTENT;
+ state.danger = content::DOWNLOAD_DANGER_TYPE_MAYBE_DANGEROUS_CONTENT;
download_manager_delegate_->SetMarkContentsDangerous(true);
}
download->SetFileCheckResults(state);
@@ -898,7 +900,7 @@ TEST_F(DownloadManagerTest, DownloadRenameTest) {
OnResponseCompleted(i, 1024, std::string("fake_hash"));
}
// Validating the download item, so it will complete.
- if (state.danger == DownloadStateInfo::DANGEROUS_FILE)
+ if (state.danger == content::DOWNLOAD_DANGER_TYPE_DANGEROUS_FILE)
download->DangerousDownloadValidated();
message_loop_.RunAllPending();
}
diff --git a/chrome/browser/download/download_shelf_context_menu.cc b/chrome/browser/download/download_shelf_context_menu.cc
index b676e4c..d667b09 100644
--- a/chrome/browser/download/download_shelf_context_menu.cc
+++ b/chrome/browser/download/download_shelf_context_menu.cc
@@ -31,9 +31,10 @@ ui::SimpleMenuModel* DownloadShelfContextMenu::GetMenuModel() {
ui::SimpleMenuModel* model = NULL;
if (download_item_->GetSafetyState() == DownloadItem::DANGEROUS) {
- if (download_item_->GetDangerType() == DownloadStateInfo::DANGEROUS_URL ||
+ if (download_item_->GetDangerType() ==
+ content::DOWNLOAD_DANGER_TYPE_DANGEROUS_URL ||
download_item_->GetDangerType() ==
- DownloadStateInfo::DANGEROUS_CONTENT) {
+ content::DOWNLOAD_DANGER_TYPE_DANGEROUS_CONTENT) {
model = GetMaliciousMenuModel();
} else {
NOTREACHED();
@@ -53,7 +54,7 @@ bool DownloadShelfContextMenu::IsCommandIdEnabled(int command_id) const {
return download_item_->CanShowInFolder();
case ALWAYS_OPEN_TYPE:
return download_item_->CanOpenDownload() &&
- !Extension::IsExtension(download_item_->GetStateInfo().target_name);
+ !Extension::IsExtension(download_item_->GetTargetName());
case CANCEL:
return download_item_->IsPartialDownload();
case TOGGLE_PAUSE:
diff --git a/chrome/browser/download/download_util.cc b/chrome/browser/download/download_util.cc
index 56301bf..e58897a 100644
--- a/chrome/browser/download/download_util.cc
+++ b/chrome/browser/download/download_util.cc
@@ -33,7 +33,6 @@
#include "chrome/common/chrome_paths.h"
#include "chrome/common/time_format.h"
#include "content/browser/download/download_create_info.h"
-#include "content/browser/download/download_state_info.h"
#include "content/browser/download/download_types.h"
#include "content/browser/renderer_host/render_view_host.h"
#include "content/browser/renderer_host/resource_dispatcher_host.h"
@@ -93,13 +92,13 @@ namespace {
// CreateDownloadItemValue(). We only return strings for DANGEROUS_FILE,
// DANGEROUS_URL and DANGEROUS_CONTENT because the |danger_type| value is only
// defined if the value of |state| is |DANGEROUS|.
-const char* GetDangerTypeString(DownloadStateInfo::DangerType danger_type) {
+const char* GetDangerTypeString(content::DownloadDangerType danger_type) {
switch (danger_type) {
- case DownloadStateInfo::DANGEROUS_FILE:
+ case content::DOWNLOAD_DANGER_TYPE_DANGEROUS_FILE:
return "DANGEROUS_FILE";
- case DownloadStateInfo::DANGEROUS_URL:
+ case content::DOWNLOAD_DANGER_TYPE_DANGEROUS_URL:
return "DANGEROUS_URL";
- case DownloadStateInfo::DANGEROUS_CONTENT:
+ case content::DOWNLOAD_DANGER_TYPE_DANGEROUS_CONTENT:
return "DANGEROUS_CONTENT";
default:
// We shouldn't be returning a danger type string if it is
@@ -458,9 +457,12 @@ DictionaryValue* CreateDownloadItemValue(DownloadItem* download, int id) {
file_value->SetString("state", "DANGEROUS");
// These are the only danger states we expect to see (and the UI is
// equipped to handle):
- DCHECK(download->GetDangerType() == DownloadStateInfo::DANGEROUS_FILE ||
- download->GetDangerType() == DownloadStateInfo::DANGEROUS_URL ||
- download->GetDangerType() == DownloadStateInfo::DANGEROUS_CONTENT);
+ DCHECK(download->GetDangerType() ==
+ content::DOWNLOAD_DANGER_TYPE_DANGEROUS_FILE ||
+ download->GetDangerType() ==
+ content::DOWNLOAD_DANGER_TYPE_DANGEROUS_URL ||
+ download->GetDangerType() ==
+ content::DOWNLOAD_DANGER_TYPE_DANGEROUS_CONTENT);
const char* danger_type_value =
GetDangerTypeString(download->GetDangerType());
file_value->SetString("danger_type", danger_type_value);
diff --git a/chrome/browser/ui/cocoa/download/download_item_controller.mm b/chrome/browser/ui/cocoa/download/download_item_controller.mm
index 22ab1e0..aa896e5 100644
--- a/chrome/browser/ui/cocoa/download/download_item_controller.mm
+++ b/chrome/browser/ui/cocoa/download/download_item_controller.mm
@@ -22,7 +22,6 @@
#import "chrome/browser/ui/cocoa/download/download_shelf_controller.h"
#import "chrome/browser/ui/cocoa/themed_window.h"
#import "chrome/browser/ui/cocoa/ui_localizer.h"
-#include "content/browser/download/download_state_info.h"
#include "content/public/browser/download_item.h"
#include "grit/generated_resources.h"
#include "grit/theme_resources.h"
@@ -177,7 +176,7 @@ class DownloadShelfContextMenuMac : public DownloadShelfContextMenu {
// The dangerous download label, button text and icon are different under
// different cases.
if (downloadModel->download()->GetDangerType() ==
- DownloadStateInfo::DANGEROUS_URL) {
+ content::DOWNLOAD_DANGER_TYPE_DANGEROUS_URL) {
// TODO(noelutz): add support for malicious content.
// Safebrowsing shows the download URL leads to malicious file.
alertIcon = rb.GetNativeImageNamed(IDR_SAFEBROWSING_WARNING);
@@ -188,7 +187,7 @@ class DownloadShelfContextMenuMac : public DownloadShelfContextMenu {
} else {
// It's a dangerous file type (e.g.: an executable).
DCHECK_EQ(downloadModel->download()->GetDangerType(),
- DownloadStateInfo::DANGEROUS_FILE);
+ content::DOWNLOAD_DANGER_TYPE_DANGEROUS_FILE);
alertIcon = rb.GetNativeImageNamed(IDR_WARNING);
if (ChromeDownloadManagerDelegate::IsExtensionDownload(
downloadModel->download())) {
diff --git a/chrome/browser/ui/gtk/custom_drag.cc b/chrome/browser/ui/gtk/custom_drag.cc
index 21746d5..5cc5ee8 100644
--- a/chrome/browser/ui/gtk/custom_drag.cc
+++ b/chrome/browser/ui/gtk/custom_drag.cc
@@ -4,6 +4,7 @@
#include "chrome/browser/ui/gtk/custom_drag.h"
+#include "base/file_path.h"
#include "base/utf_string_conversions.h"
#include "chrome/browser/ui/gtk/bookmarks/bookmark_utils_gtk.h"
#include "content/public/browser/download_item.h"
diff --git a/chrome/browser/ui/gtk/download/download_item_gtk.cc b/chrome/browser/ui/gtk/download/download_item_gtk.cc
index 1664516..bfe5768 100644
--- a/chrome/browser/ui/gtk/download/download_item_gtk.cc
+++ b/chrome/browser/ui/gtk/download/download_item_gtk.cc
@@ -562,7 +562,8 @@ void DownloadItemGtk::UpdateDangerWarning() {
string16 dangerous_warning;
// The dangerous download label text is different for different cases.
- if (get_download()->GetDangerType() == DownloadStateInfo::DANGEROUS_URL) {
+ if (get_download()->GetDangerType() ==
+ content::DOWNLOAD_DANGER_TYPE_DANGEROUS_URL) {
// TODO(noelutz): handle malicious content warning.
// Safebrowsing shows the download URL leads to malicious file.
dangerous_warning =
@@ -570,7 +571,7 @@ void DownloadItemGtk::UpdateDangerWarning() {
} else {
// It's a dangerous file type (e.g.: an executable).
DCHECK(get_download()->GetDangerType() ==
- DownloadStateInfo::DANGEROUS_FILE);
+ content::DOWNLOAD_DANGER_TYPE_DANGEROUS_FILE);
if (ChromeDownloadManagerDelegate::IsExtensionDownload(get_download())) {
dangerous_warning =
l10n_util::GetStringUTF16(IDS_PROMPT_DANGEROUS_DOWNLOAD_EXTENSION);
@@ -619,17 +620,17 @@ void DownloadItemGtk::UpdateDangerWarning() {
void DownloadItemGtk::UpdateDangerIcon() {
if (theme_service_->UsingNativeTheme()) {
- const char* stock =
- get_download()->GetDangerType() == DownloadStateInfo::DANGEROUS_URL ?
- GTK_STOCK_DIALOG_ERROR : GTK_STOCK_DIALOG_WARNING;
+ const char* stock = get_download()->GetDangerType() ==
+ content::DOWNLOAD_DANGER_TYPE_DANGEROUS_URL ?
+ GTK_STOCK_DIALOG_ERROR : GTK_STOCK_DIALOG_WARNING;
gtk_image_set_from_stock(
GTK_IMAGE(dangerous_image_), stock, GTK_ICON_SIZE_SMALL_TOOLBAR);
} else {
// Set the warning icon.
ui::ResourceBundle& rb = ui::ResourceBundle::GetSharedInstance();
- int pixbuf_id =
- get_download()->GetDangerType() == DownloadStateInfo::DANGEROUS_URL ?
- IDR_SAFEBROWSING_WARNING : IDR_WARNING;
+ int pixbuf_id = get_download()->GetDangerType() ==
+ content::DOWNLOAD_DANGER_TYPE_DANGEROUS_URL ?
+ IDR_SAFEBROWSING_WARNING : IDR_WARNING;
GdkPixbuf* download_pixbuf = rb.GetNativeImageNamed(pixbuf_id);
gtk_image_set_from_pixbuf(GTK_IMAGE(dangerous_image_), download_pixbuf);
}
diff --git a/chrome/browser/ui/views/download/download_item_view.cc b/chrome/browser/ui/views/download/download_item_view.cc
index 29421ec..c77c613 100644
--- a/chrome/browser/ui/views/download/download_item_view.cc
+++ b/chrome/browser/ui/views/download/download_item_view.cc
@@ -23,7 +23,6 @@
#include "chrome/browser/themes/theme_service.h"
#include "chrome/browser/ui/views/download/download_shelf_context_menu_view.h"
#include "chrome/browser/ui/views/download/download_shelf_view.h"
-#include "content/browser/download/download_state_info.h"
#include "grit/generated_resources.h"
#include "grit/theme_resources.h"
#include "ui/base/accessibility/accessible_view_state.h"
@@ -1005,11 +1004,14 @@ void DownloadItemView::ClearWarningDialog() {
void DownloadItemView::ShowWarningDialog() {
DCHECK(mode_ != DANGEROUS_MODE && mode_ != MALICIOUS_MODE);
- if (download_->GetDangerType() == DownloadStateInfo::DANGEROUS_URL ||
- download_->GetDangerType() == DownloadStateInfo::DANGEROUS_CONTENT) {
+ if (download_->GetDangerType() ==
+ content::DOWNLOAD_DANGER_TYPE_DANGEROUS_URL ||
+ download_->GetDangerType() ==
+ content::DOWNLOAD_DANGER_TYPE_DANGEROUS_CONTENT) {
mode_ = MALICIOUS_MODE;
} else {
- DCHECK(download_->GetDangerType() == DownloadStateInfo::DANGEROUS_FILE);
+ DCHECK(download_->GetDangerType() ==
+ content::DOWNLOAD_DANGER_TYPE_DANGEROUS_FILE);
mode_ = DANGEROUS_MODE;
}
body_state_ = NORMAL;
@@ -1060,33 +1062,39 @@ void DownloadItemView::ShowWarningDialog() {
if (mode_ == MALICIOUS_MODE) {
warning_icon_ = rb.GetBitmapNamed(IDR_SAFEBROWSING_WARNING);
} else {
- DCHECK(download_->GetDangerType() == DownloadStateInfo::DANGEROUS_FILE);
+ DCHECK(download_->GetDangerType() ==
+ content::DOWNLOAD_DANGER_TYPE_DANGEROUS_FILE);
// The download file has dangerous file type (e.g.: an executable).
warning_icon_ = rb.GetBitmapNamed(IDR_WARNING);
}
string16 dangerous_label;
- if (download_->GetDangerType() == DownloadStateInfo::DANGEROUS_URL) {
+ if (download_->GetDangerType() ==
+ content::DOWNLOAD_DANGER_TYPE_DANGEROUS_URL) {
// Safebrowsing shows the download URL or content leads to malicious file.
dangerous_label = l10n_util::GetStringUTF16(
IDS_PROMPT_MALICIOUS_DOWNLOAD_URL);
- } else if (download_->GetDangerType() == DownloadStateInfo::DANGEROUS_FILE &&
+ } else if (download_->GetDangerType() ==
+ content::DOWNLOAD_DANGER_TYPE_DANGEROUS_FILE &&
ChromeDownloadManagerDelegate::IsExtensionDownload(download_)) {
dangerous_label =
l10n_util::GetStringUTF16(IDS_PROMPT_DANGEROUS_DOWNLOAD_EXTENSION);
} else {
// The download file has dangerous file type (e.g.: an executable) or the
// file content is known to be malicious.
- DCHECK(download_->GetDangerType() == DownloadStateInfo::DANGEROUS_FILE ||
- download_->GetDangerType() == DownloadStateInfo::DANGEROUS_CONTENT);
+ DCHECK(download_->GetDangerType() ==
+ content::DOWNLOAD_DANGER_TYPE_DANGEROUS_FILE ||
+ download_->GetDangerType() ==
+ content::DOWNLOAD_DANGER_TYPE_DANGEROUS_CONTENT);
ui::ElideString(rootname,
kFileNameMaxLength - extension.length(),
&rootname);
string16 filename = rootname + ASCIIToUTF16(".") + extension;
filename = base::i18n::GetDisplayStringInLTRDirectionality(filename);
dangerous_label = l10n_util::GetStringFUTF16(
- download_->GetDangerType() == DownloadStateInfo::DANGEROUS_FILE ?
- IDS_PROMPT_DANGEROUS_DOWNLOAD :
- IDS_PROMPT_MALICIOUS_DOWNLOAD_CONTENT,
+ download_->GetDangerType() ==
+ content::DOWNLOAD_DANGER_TYPE_DANGEROUS_FILE ?
+ IDS_PROMPT_DANGEROUS_DOWNLOAD :
+ IDS_PROMPT_MALICIOUS_DOWNLOAD_CONTENT,
filename);
}
diff --git a/content/browser/download/download_create_info.cc b/content/browser/download/download_create_info.cc
index afd95a7..fbcd175 100644
--- a/content/browser/download/download_create_info.cc
+++ b/content/browser/download/download_create_info.cc
@@ -20,7 +20,6 @@ DownloadCreateInfo::DownloadCreateInfo(const FilePath& path,
content::PageTransition transition_type)
: path(path),
url_chain(1, url),
- path_uniquifier(0),
start_time(start_time),
received_bytes(received_bytes),
total_bytes(total_bytes),
@@ -33,8 +32,7 @@ DownloadCreateInfo::DownloadCreateInfo(const FilePath& path,
}
DownloadCreateInfo::DownloadCreateInfo()
- : path_uniquifier(0),
- received_bytes(0),
+ : received_bytes(0),
total_bytes(0),
state(-1),
download_id(DownloadId::Invalid()),
diff --git a/content/browser/download/download_create_info.h b/content/browser/download/download_create_info.h
index 90f9160..9be00c1 100644
--- a/content/browser/download/download_create_info.h
+++ b/content/browser/download/download_create_info.h
@@ -50,10 +50,6 @@ struct CONTENT_EXPORT DownloadCreateInfo {
// The URL that referred us.
GURL referrer_url;
- // A number that should be added to the suggested path to make it unique.
- // 0 means no number should be appended. Not actually stored in the db.
- int path_uniquifier;
-
// The time when the download started.
base::Time start_time;
diff --git a/content/browser/download/download_item_impl.cc b/content/browser/download/download_item_impl.cc
index 505fea3..cc48515 100644
--- a/content/browser/download/download_item_impl.cc
+++ b/content/browser/download/download_item_impl.cc
@@ -34,6 +34,7 @@ using content::BrowserThread;
using content::DownloadFile;
using content::DownloadItem;
using content::DownloadManager;
+using content::WebContents;
// A DownloadItem normally goes through the following states:
// * Created (when download starts)
@@ -201,8 +202,7 @@ DownloadItemImpl::DownloadItemImpl(
bool is_otr)
: state_info_(info.original_name, info.save_info.file_path,
info.has_user_gesture, info.transition_type,
- info.prompt_user_for_save_location, info.path_uniquifier,
- DownloadStateInfo::NOT_DANGEROUS),
+ info.prompt_user_for_save_location),
request_handle_(request_handle),
download_id_(info.download_id),
full_path_(info.path),
@@ -360,7 +360,7 @@ void DownloadItemImpl::DangerousDownloadValidated() {
UMA_HISTOGRAM_ENUMERATION("Download.DangerousDownloadValidated",
GetDangerType(),
- DownloadStateInfo::DANGEROUS_TYPE_MAX);
+ content::DOWNLOAD_DANGER_TYPE_MAX);
safety_state_ = DANGEROUS_BUT_VALIDATED;
UpdateObservers();
@@ -547,12 +547,14 @@ void DownloadItemImpl::Delete(DeleteReason reason) {
switch (reason) {
case DELETE_DUE_TO_USER_DISCARD:
- UMA_HISTOGRAM_ENUMERATION("Download.UserDiscard", GetDangerType(),
- DownloadStateInfo::DANGEROUS_TYPE_MAX);
+ UMA_HISTOGRAM_ENUMERATION(
+ "Download.UserDiscard", GetDangerType(),
+ content::DOWNLOAD_DANGER_TYPE_MAX);
break;
case DELETE_DUE_TO_BROWSER_SHUTDOWN:
- UMA_HISTOGRAM_ENUMERATION("Download.Discard", GetDangerType(),
- DownloadStateInfo::DANGEROUS_TYPE_MAX);
+ UMA_HISTOGRAM_ENUMERATION(
+ "Download.Discard", GetDangerType(),
+ content::DOWNLOAD_DANGER_TYPE_MAX);
break;
default:
NOTREACHED();
@@ -651,8 +653,9 @@ void DownloadItemImpl::OnDownloadCompleting(DownloadFileManager* file_manager) {
// If we prompted the user for save location, then we should overwrite the
// target. Otherwise, if the danger state was NOT_DANGEROUS, we already
// uniquified the path and should overwrite.
- bool should_overwrite = (PromptUserForSaveLocation() ||
- GetDangerType() == DownloadStateInfo::NOT_DANGEROUS);
+ bool should_overwrite =
+ (PromptUserForSaveLocation() ||
+ GetDangerType() == content::DOWNLOAD_DANGER_TYPE_NOT_DANGEROUS);
if (NeedsRename()) {
BrowserThread::PostTask(BrowserThread::FILE, FROM_HERE,
base::Bind(&DownloadFileManager::RenameCompletingDownloadFile,
@@ -725,7 +728,7 @@ void DownloadItemImpl::SetFileCheckResults(const DownloadStateInfo& state) {
UpdateSafetyState();
}
-DownloadStateInfo::DangerType DownloadItemImpl::GetDangerType() const {
+content::DownloadDangerType DownloadItemImpl::GetDangerType() const {
return state_info_.danger;
}
@@ -736,21 +739,21 @@ bool DownloadItemImpl::IsDangerous() const {
void DownloadItemImpl::MarkFileDangerous() {
// TODO(rdsmith): Change to DCHECK after http://crbug.com/85408 resolved.
CHECK(BrowserThread::CurrentlyOn(BrowserThread::UI));
- state_info_.danger = DownloadStateInfo::DANGEROUS_FILE;
+ state_info_.danger = content::DOWNLOAD_DANGER_TYPE_DANGEROUS_FILE;
UpdateSafetyState();
}
void DownloadItemImpl::MarkUrlDangerous() {
// TODO(rdsmith): Change to DCHECK after http://crbug.com/85408 resolved.
CHECK(BrowserThread::CurrentlyOn(BrowserThread::UI));
- state_info_.danger = DownloadStateInfo::DANGEROUS_URL;
+ state_info_.danger = content::DOWNLOAD_DANGER_TYPE_DANGEROUS_URL;
UpdateSafetyState();
}
void DownloadItemImpl::MarkContentDangerous() {
// TODO(rdsmith): Change to DCHECK after http://crbug.com/85408 resolved.
CHECK(BrowserThread::CurrentlyOn(BrowserThread::UI));
- state_info_.danger = DownloadStateInfo::DANGEROUS_CONTENT;
+ state_info_.danger = content::DOWNLOAD_DANGER_TYPE_DANGEROUS_CONTENT;
UpdateSafetyState();
}
@@ -767,7 +770,7 @@ DownloadPersistentStoreInfo DownloadItemImpl::GetPersistentStoreInfo() const {
GetOpened());
}
-TabContents* DownloadItemImpl::GetTabContents() const {
+WebContents* DownloadItemImpl::GetWebContents() const {
// TODO(rdsmith): Remove null check after removing GetTabContents() from
// paths that might be used by DownloadItems created from history import.
// Currently such items have null request_handle_s, where other items
diff --git a/content/browser/download/download_item_impl.h b/content/browser/download/download_item_impl.h
index dca9c0f..87c7d31 100644
--- a/content/browser/download/download_item_impl.h
+++ b/content/browser/download/download_item_impl.h
@@ -171,7 +171,7 @@ class CONTENT_EXPORT DownloadItemImpl : public content::DownloadItem {
virtual void SetOpenWhenComplete(bool open) OVERRIDE;
virtual bool GetFileExternallyRemoved() const OVERRIDE;
virtual SafetyState GetSafetyState() const OVERRIDE;
- virtual DownloadStateInfo::DangerType GetDangerType() const OVERRIDE;
+ virtual content::DownloadDangerType GetDangerType() const OVERRIDE;
virtual bool IsDangerous() const OVERRIDE;
virtual void MarkFileDangerous() OVERRIDE;
virtual void MarkUrlDangerous() OVERRIDE;
@@ -190,7 +190,7 @@ class CONTENT_EXPORT DownloadItemImpl : public content::DownloadItem {
virtual DownloadPersistentStoreInfo GetPersistentStoreInfo() const OVERRIDE;
virtual DownloadStateInfo GetStateInfo() const OVERRIDE;
virtual content::BrowserContext* GetBrowserContext() const OVERRIDE;
- virtual TabContents* GetTabContents() const OVERRIDE;
+ virtual content::WebContents* GetWebContents() const OVERRIDE;
virtual FilePath GetTargetFilePath() const OVERRIDE;
virtual FilePath GetFileNameToReportUser() const OVERRIDE;
virtual FilePath GetUserVerifiedFilePath() const OVERRIDE;
diff --git a/content/browser/download/download_manager_impl.cc b/content/browser/download/download_manager_impl.cc
index 82c61e3..d391e56 100644
--- a/content/browser/download/download_manager_impl.cc
+++ b/content/browser/download/download_manager_impl.cc
@@ -334,7 +334,7 @@ void DownloadManagerImpl::RestartDownload(int32 download_id) {
if (download->PromptUserForSaveLocation()) {
// We must ask the user for the place to put the download.
- WebContents* contents = download->GetTabContents();
+ WebContents* contents = download->GetWebContents();
// |id_ptr| will be deleted in either FileSelected() or
// FileSelectionCancelled().
@@ -344,7 +344,8 @@ void DownloadManagerImpl::RestartDownload(int32 download_id) {
// If |download| is a potentially dangerous file, then |suggested_path|
// contains the intermediate name instead of the final download
// filename. The latter is GetTargetName().
- if (download->GetDangerType() != DownloadStateInfo::NOT_DANGEROUS)
+ if (download->GetDangerType() !=
+ content::DOWNLOAD_DANGER_TYPE_NOT_DANGEROUS)
target_path = suggested_path.DirName().Append(download->GetTargetName());
else
target_path = suggested_path;
@@ -600,7 +601,7 @@ void DownloadManagerImpl::OnDownloadRenamedToFinalName(
if (!item)
return;
- if (item->GetDangerType() == DownloadStateInfo::NOT_DANGEROUS ||
+ if (item->GetDangerType() == content::DOWNLOAD_DANGER_TYPE_NOT_DANGEROUS ||
item->PromptUserForSaveLocation()) {
DCHECK_EQ(0, uniquifier)
<< "We should not uniquify user supplied filenames or safe filenames "
@@ -1011,7 +1012,7 @@ void DownloadManagerImpl::OnDownloadItemAddedToPersistentStore(
void DownloadManagerImpl::ShowDownloadInBrowser(DownloadItem* download) {
// The 'contents' may no longer exist if the user closed the tab before we
// get this start completion event.
- WebContents* content = download->GetTabContents();
+ WebContents* content = download->GetWebContents();
// If the contents no longer exists, we ask the embedder to suggest another
// tab.
diff --git a/content/browser/download/download_query.cc b/content/browser/download/download_query.cc
index 74e7470..cc14b18a 100644
--- a/content/browser/download/download_query.cc
+++ b/content/browser/download/download_query.cc
@@ -10,6 +10,7 @@
#include "base/bind.h"
#include "base/callback.h"
+#include "base/file_path.h"
#include "base/logging.h"
#include "base/memory/scoped_ptr.h"
#include "base/stl_util.h"
@@ -22,6 +23,7 @@
#include "googleurl/src/gurl.h"
#include "unicode/regex.h"
+using content::DownloadDangerType;
using content::DownloadItem;
namespace {
@@ -74,7 +76,7 @@ static DownloadItem::DownloadState GetState(const DownloadItem& item) {
return item.GetState();
}
-static DownloadStateInfo::DangerType GetDangerType(const DownloadItem& item) {
+static DownloadDangerType GetDangerType(const DownloadItem& item) {
return item.GetDangerType();
}
@@ -208,10 +210,9 @@ void DownloadQuery::AddFilter(DownloadItem::DownloadState state) {
InnerCallback<DownloadItem::DownloadState>(base::Bind(&GetState))));
}
-void DownloadQuery::AddFilter(DownloadStateInfo::DangerType danger) {
- AddFilter(base::Bind(&FieldMatches<DownloadStateInfo::DangerType>, danger, EQ,
- InnerCallback<DownloadStateInfo::DangerType>(base::Bind(
- &GetDangerType))));
+void DownloadQuery::AddFilter(DownloadDangerType danger) {
+ AddFilter(base::Bind(&FieldMatches<DownloadDangerType>, danger, EQ,
+ InnerCallback<content::DownloadDangerType>(base::Bind(&GetDangerType))));
}
bool DownloadQuery::AddFilter(DownloadQuery::FilterType type,
@@ -339,7 +340,7 @@ void DownloadQuery::AddSorter(DownloadQuery::SortType type,
sorters_.push_back(Sorter::Build<string16>(direction, &GetFilename));
break;
case SORT_DANGER:
- sorters_.push_back(Sorter::Build<DownloadStateInfo::DangerType>(
+ sorters_.push_back(Sorter::Build<DownloadDangerType>(
direction, &GetDangerType));
break;
case SORT_DANGER_ACCEPTED:
diff --git a/content/browser/download/download_query.h b/content/browser/download/download_query.h
index 22c026d..a9f718d 100644
--- a/content/browser/download/download_query.h
+++ b/content/browser/download/download_query.h
@@ -98,7 +98,7 @@ class CONTENT_EXPORT DownloadQuery {
// filter out all items.
bool AddFilter(const FilterCallback& filter);
bool AddFilter(FilterType type, const base::Value& value);
- void AddFilter(DownloadStateInfo::DangerType danger);
+ void AddFilter(content::DownloadDangerType danger);
void AddFilter(content::DownloadItem::DownloadState state);
// Adds a new sorter of type |type| with direction |direction|. After
diff --git a/content/browser/download/download_query_unittest.cc b/content/browser/download/download_query_unittest.cc
index 26eba38..60687ed 100644
--- a/content/browser/download/download_query_unittest.cc
+++ b/content/browser/download/download_query_unittest.cc
@@ -193,8 +193,8 @@ TEST_F(DownloadQueryTest, DownloadQueryAllFilters) {
17, DownloadItem::CANCELLED,
DownloadItem::IN_PROGRESS)));
EXPECT_CALL(mock(i), GetDangerType()).WillRepeatedly(Return(SWITCH2(i,
- 18, DownloadStateInfo::DANGEROUS_FILE,
- DownloadStateInfo::NOT_DANGEROUS)));
+ 18, content::DOWNLOAD_DANGER_TYPE_DANGEROUS_FILE,
+ content::DOWNLOAD_DANGER_TYPE_NOT_DANGEROUS)));
}
for (size_t i = 0; i < kNumItems; ++i) {
switch (i) {
@@ -223,7 +223,8 @@ TEST_F(DownloadQueryTest, DownloadQueryAllFilters) {
match_url.spec().c_str()); break;
case 16: CHECK(query()->AddFilter(base::Bind(&IdNotEqual, 16))); break;
case 17: query()->AddFilter(DownloadItem::IN_PROGRESS); break;
- case 18: query()->AddFilter(DownloadStateInfo::NOT_DANGEROUS); break;
+ case 18: query()->AddFilter(content::DOWNLOAD_DANGER_TYPE_NOT_DANGEROUS);
+ break;
default: NOTREACHED(); break;
}
Search();
@@ -254,15 +255,15 @@ TEST_F(DownloadQueryTest, DownloadQuerySortBytesReceived) {
TEST_F(DownloadQueryTest, DownloadQuerySortDanger) {
CreateMocks(2);
EXPECT_CALL(mock(0), GetDangerType()).WillRepeatedly(Return(
- DownloadStateInfo::DANGEROUS_FILE));
+ content::DOWNLOAD_DANGER_TYPE_DANGEROUS_FILE));
EXPECT_CALL(mock(1), GetDangerType()).WillRepeatedly(Return(
- DownloadStateInfo::NOT_DANGEROUS));
+ content::DOWNLOAD_DANGER_TYPE_NOT_DANGEROUS));
query()->AddSorter(
DownloadQuery::SORT_DANGER, DownloadQuery::ASCENDING);
Search();
- EXPECT_EQ(DownloadStateInfo::NOT_DANGEROUS,
+ EXPECT_EQ(content::DOWNLOAD_DANGER_TYPE_NOT_DANGEROUS,
results()->at(0)->GetDangerType());
- EXPECT_EQ(DownloadStateInfo::DANGEROUS_FILE,
+ EXPECT_EQ(content::DOWNLOAD_DANGER_TYPE_DANGEROUS_FILE,
results()->at(1)->GetDangerType());
}
diff --git a/content/browser/download/download_state_info.cc b/content/browser/download/download_state_info.cc
index 832753d..dd26812 100644
--- a/content/browser/download/download_state_info.cc
+++ b/content/browser/download/download_state_info.cc
@@ -11,7 +11,7 @@ DownloadStateInfo::DownloadStateInfo()
has_user_gesture(false),
transition_type(content::PAGE_TRANSITION_LINK),
prompt_user_for_save_location(false),
- danger(NOT_DANGEROUS) {
+ danger(content::DOWNLOAD_DANGER_TYPE_NOT_DANGEROUS) {
}
DownloadStateInfo::DownloadStateInfo(
@@ -21,7 +21,7 @@ DownloadStateInfo::DownloadStateInfo(
has_user_gesture(has_user_gesture),
transition_type(content::PAGE_TRANSITION_LINK),
prompt_user_for_save_location(prompt_user_for_save_location),
- danger(NOT_DANGEROUS) {
+ danger(content::DOWNLOAD_DANGER_TYPE_NOT_DANGEROUS) {
}
DownloadStateInfo::DownloadStateInfo(
@@ -29,15 +29,13 @@ DownloadStateInfo::DownloadStateInfo(
const FilePath& forced_name,
bool has_user_gesture,
content::PageTransition transition_type,
- bool prompt_user_for_save_location,
- int uniquifier,
- DangerType danger_type)
+ bool prompt_user_for_save_location)
: target_name(target),
- path_uniquifier(uniquifier),
+ path_uniquifier(0),
has_user_gesture(has_user_gesture),
transition_type(transition_type),
prompt_user_for_save_location(prompt_user_for_save_location),
- danger(danger_type),
+ danger(content::DOWNLOAD_DANGER_TYPE_NOT_DANGEROUS),
force_file_name(forced_name) {
}
@@ -45,10 +43,11 @@ bool DownloadStateInfo::IsDangerous() const {
// TODO(noelutz): At this point only the windows views UI supports
// warnings based on dangerous content.
#ifdef OS_WIN
- return (danger == DANGEROUS_FILE ||
- danger == DANGEROUS_URL ||
- danger == DANGEROUS_CONTENT);
+ return (danger == content::DOWNLOAD_DANGER_TYPE_DANGEROUS_FILE ||
+ danger == content::DOWNLOAD_DANGER_TYPE_DANGEROUS_URL ||
+ danger == content::DOWNLOAD_DANGER_TYPE_DANGEROUS_CONTENT);
#else
- return (danger == DANGEROUS_FILE || danger == DANGEROUS_URL);
+ return (danger == content::DOWNLOAD_DANGER_TYPE_DANGEROUS_FILE ||
+ danger == content::DOWNLOAD_DANGER_TYPE_DANGEROUS_URL);
#endif
}
diff --git a/content/browser/download/download_state_info.h b/content/browser/download/download_state_info.h
index a59d7c78..09318dc 100644
--- a/content/browser/download/download_state_info.h
+++ b/content/browser/download/download_state_info.h
@@ -8,37 +8,12 @@
#include "base/file_path.h"
#include "content/common/content_export.h"
+#include "content/public/browser/download_danger_type.h"
#include "content/public/common/page_transition_types.h"
// Contains information relating to the process of determining what to do with
// the download.
struct DownloadStateInfo {
- // This enum is also used by histograms. Do not change the ordering or remove
- // items.
- enum DangerType {
- // The download is safe.
- NOT_DANGEROUS = 0,
-
- // A dangerous file to the system (e.g.: a pdf or extension from
- // places other than gallery).
- DANGEROUS_FILE,
-
- // Safebrowsing download service shows this URL leads to malicious file
- // download.
- DANGEROUS_URL,
-
- // SafeBrowsing download service shows this file content as being malicious.
- DANGEROUS_CONTENT,
-
- // The content of this download may be malicious (e.g., extension is exe but
- // SafeBrowsing has not finished checking the content).
- MAYBE_DANGEROUS_CONTENT,
-
- // Memory space for histograms is determined by the max.
- // ALWAYS ADD NEW VALUES BEFORE THIS ONE.
- DANGEROUS_TYPE_MAX
- };
-
DownloadStateInfo();
DownloadStateInfo(bool has_user_gesture,
bool prompt_user_for_save_location);
@@ -46,9 +21,7 @@ struct DownloadStateInfo {
const FilePath& forced_name,
bool has_user_gesture,
content::PageTransition transition_type,
- bool prompt_user_for_save_location,
- int uniquifier,
- DangerType danger);
+ bool prompt_user_for_save_location);
// Indicates if the download is dangerous.
CONTENT_EXPORT bool IsDangerous() const;
@@ -75,7 +48,7 @@ struct DownloadStateInfo {
// default location.
bool prompt_user_for_save_location;
- DangerType danger;
+ content::DownloadDangerType danger;
// True if this download's file name was specified initially.
FilePath force_file_name;
diff --git a/content/browser/download/mock_download_item.h b/content/browser/download/mock_download_item.h
index 7b3f429..42d25b8 100644
--- a/content/browser/download/mock_download_item.h
+++ b/content/browser/download/mock_download_item.h
@@ -84,7 +84,7 @@ class MockDownloadItem : public content::DownloadItem {
MOCK_METHOD1(SetOpenWhenComplete, void(bool));
MOCK_CONST_METHOD0(GetFileExternallyRemoved, bool());
MOCK_CONST_METHOD0(GetSafetyState, SafetyState());
- MOCK_CONST_METHOD0(GetDangerType, DownloadStateInfo::DangerType());
+ MOCK_CONST_METHOD0(GetDangerType, content::DownloadDangerType());
MOCK_CONST_METHOD0(IsDangerous, bool());
MOCK_METHOD0(MarkFileDangerous, void());
MOCK_METHOD0(MarkUrlDangerous, void());
@@ -103,7 +103,7 @@ class MockDownloadItem : public content::DownloadItem {
MOCK_CONST_METHOD0(GetPersistentStoreInfo, DownloadPersistentStoreInfo());
MOCK_CONST_METHOD0(GetStateInfo, DownloadStateInfo());
MOCK_CONST_METHOD0(GetBrowserContext, content::BrowserContext*());
- MOCK_CONST_METHOD0(GetTabContents, TabContents*());
+ MOCK_CONST_METHOD0(GetWebContents, content::WebContents*());
MOCK_CONST_METHOD0(GetTargetFilePath, FilePath());
MOCK_CONST_METHOD0(GetFileNameToReportUser, FilePath());
MOCK_CONST_METHOD0(GetUserVerifiedFilePath, FilePath());
diff --git a/content/content_browser.gypi b/content/content_browser.gypi
index e4d73c3..8f6d40f 100644
--- a/content/content_browser.gypi
+++ b/content/content_browser.gypi
@@ -43,6 +43,7 @@
'public/browser/content_ipc_logging.h',
'public/browser/devtools_agent_host_registry.h',
'public/browser/devtools_client_host.h',
+ 'public/browser/download_danger_type.h',
'public/browser/devtools_frontend_host_delegate.h',
'public/browser/devtools_http_handler.h',
'public/browser/devtools_http_handler_delegate.h',
diff --git a/content/public/browser/download_danger_type.h b/content/public/browser/download_danger_type.h
new file mode 100644
index 0000000..2c8ba88
--- /dev/null
+++ b/content/public/browser/download_danger_type.h
@@ -0,0 +1,39 @@
+// Copyright (c) 2012 The Chromium Authors. All rights reserved.
+// Use of this source code is governed by a BSD-style license that can be
+// found in the LICENSE file.
+
+#ifndef CONTENT_PUBLIC_BROWSER_DOWNLOAD_DANGER_TYPE_H_
+#define CONTENT_PUBLIC_BROWSER_DOWNLOAD_DANGER_TYPE_H_
+#pragma once
+
+namespace content {
+
+// This enum is also used by histograms. Do not change the ordering or remove
+// items.
+enum DownloadDangerType {
+ // The download is safe.
+ DOWNLOAD_DANGER_TYPE_NOT_DANGEROUS = 0,
+
+ // A dangerous file to the system (e.g.: a pdf or extension from
+ // places other than gallery).
+ DOWNLOAD_DANGER_TYPE_DANGEROUS_FILE,
+
+ // Safebrowsing download service shows this URL leads to malicious file
+ // download.
+ DOWNLOAD_DANGER_TYPE_DANGEROUS_URL,
+
+ // SafeBrowsing download service shows this file content as being malicious.
+ DOWNLOAD_DANGER_TYPE_DANGEROUS_CONTENT,
+
+ // The content of this download may be malicious (e.g., extension is exe but
+ // SafeBrowsing has not finished checking the content).
+ DOWNLOAD_DANGER_TYPE_MAYBE_DANGEROUS_CONTENT,
+
+ // Memory space for histograms is determined by the max.
+ // ALWAYS ADD NEW VALUES BEFORE THIS ONE.
+ DOWNLOAD_DANGER_TYPE_MAX
+};
+
+}
+
+#endif // CONTENT_PUBLIC_BROWSER_DOWNLOAD_DANGER_TYPE_H_
diff --git a/content/public/browser/download_item.h b/content/public/browser/download_item.h
index 0d194842..453d37f 100644
--- a/content/public/browser/download_item.h
+++ b/content/public/browser/download_item.h
@@ -24,12 +24,12 @@
#include "base/string16.h"
#include "content/browser/download/download_state_info.h"
#include "content/browser/download/interrupt_reasons.h"
+#include "content/public/browser/download_danger_type.h"
class DownloadId;
class DownloadFileManager;
class FilePath;
class GURL;
-class TabContents;
struct DownloadCreateInfo;
struct DownloadPersistentStoreInfo;
@@ -42,6 +42,7 @@ namespace content {
class BrowserContext;
class DownloadManager;
+class WebContents;
// One DownloadItem per download. This is the model class that stores all the
// state for a download. Multiple views, such as a tab's download shelf and the
@@ -281,7 +282,7 @@ class CONTENT_EXPORT DownloadItem {
virtual bool GetFileExternallyRemoved() const = 0;
virtual SafetyState GetSafetyState() const = 0;
// Why |safety_state_| is not SAFE.
- virtual DownloadStateInfo::DangerType GetDangerType() const = 0;
+ virtual DownloadDangerType GetDangerType() const = 0;
virtual bool IsDangerous() const = 0;
virtual void MarkContentDangerous() = 0;
virtual void MarkFileDangerous() = 0;
@@ -303,7 +304,7 @@ class CONTENT_EXPORT DownloadItem {
virtual DownloadPersistentStoreInfo GetPersistentStoreInfo() const = 0;
virtual DownloadStateInfo GetStateInfo() const = 0;
virtual BrowserContext* GetBrowserContext() const = 0;
- virtual TabContents* GetTabContents() const = 0;
+ virtual WebContents* GetWebContents() const = 0;
// Returns the final target file path for the download.
virtual FilePath GetTargetFilePath() const = 0;