Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(592)

Unified Diff: components/content_settings/core/browser/host_content_settings_map.cc

Issue 670953006: Componentize HostContentSettingsMap and content settings providers. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: win64 suppress warnings Created 6 years, 2 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: components/content_settings/core/browser/host_content_settings_map.cc
diff --git a/chrome/browser/content_settings/host_content_settings_map.cc b/components/content_settings/core/browser/host_content_settings_map.cc
similarity index 95%
rename from chrome/browser/content_settings/host_content_settings_map.cc
rename to components/content_settings/core/browser/host_content_settings_map.cc
index 31ac0a50a9e0699ad0418d141a14f1f110f31530..ccddb0e29f0b1bc6d0b36212201293409c917b29 100644
--- a/chrome/browser/content_settings/host_content_settings_map.cc
+++ b/components/content_settings/core/browser/host_content_settings_map.cc
@@ -2,7 +2,7 @@
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
-#include "chrome/browser/content_settings/host_content_settings_map.h"
+#include "components/content_settings/core/browser/host_content_settings_map.h"
#include <utility>
@@ -13,26 +13,21 @@
#include "base/strings/string_util.h"
#include "base/strings/utf_string_conversions.h"
#include "base/time/clock.h"
-#include "chrome/browser/content_settings/content_settings_default_provider.h"
-#include "chrome/browser/content_settings/content_settings_policy_provider.h"
-#include "chrome/browser/content_settings/content_settings_pref_provider.h"
-#include "chrome/browser/content_settings/content_settings_utils.h"
-#include "chrome/common/pref_names.h"
-#include "chrome/common/url_constants.h"
+#include "components/content_settings/core/browser/content_settings_default_provider.h"
#include "components/content_settings/core/browser/content_settings_details.h"
#include "components/content_settings/core/browser/content_settings_observable_provider.h"
+#include "components/content_settings/core/browser/content_settings_policy_provider.h"
+#include "components/content_settings/core/browser/content_settings_pref_provider.h"
#include "components/content_settings/core/browser/content_settings_provider.h"
#include "components/content_settings/core/browser/content_settings_rule.h"
+#include "components/content_settings/core/browser/content_settings_utils.h"
#include "components/content_settings/core/common/content_settings_pattern.h"
+#include "components/content_settings/core/common/pref_names.h"
#include "components/pref_registry/pref_registry_syncable.h"
#include "net/base/net_errors.h"
#include "net/base/static_cookie_policy.h"
#include "url/gurl.h"
-#if defined(ENABLE_EXTENSIONS)
-#include "extensions/common/constants.h"
-#endif
-
namespace {
typedef std::vector<content_settings::Rule> Rules;
@@ -49,6 +44,16 @@ const char* kProviderNames[] = {
"default"
};
+// These constants are copied from extensions/common/extension_constants.h and
+// content/public/common/url_constants.h to avoid complicated dependencies.
+// TODO(vabr): Get these constants through the ContentSettingsClient.
+const char kChromeDevToolsScheme[] = "chrome-devtools";
+const char kChromeUIScheme[] = "chrome";
+
+#if defined(ENABLE_EXTENSIONS)
+const char kExtensionScheme[] = "chrome-extension";
+#endif
+
content_settings::SettingSource kProviderSourceMap[] = {
content_settings::SETTING_SOURCE_EXTENSION,
content_settings::SETTING_SOURCE_POLICY,
@@ -630,13 +635,13 @@ bool HostContentSettingsMap::ShouldAllowAllContent(
return false;
}
#endif
- if (secondary_url.SchemeIs(content::kChromeUIScheme) &&
+ if (secondary_url.SchemeIs(kChromeUIScheme) &&
content_type == CONTENT_SETTINGS_TYPE_COOKIES &&
primary_url.SchemeIsSecure()) {
return true;
}
#if defined(ENABLE_EXTENSIONS)
- if (primary_url.SchemeIs(extensions::kExtensionScheme)) {
+ if (primary_url.SchemeIs(kExtensionScheme)) {
switch (content_type) {
case CONTENT_SETTINGS_TYPE_PLUGINS:
case CONTENT_SETTINGS_TYPE_MEDIASTREAM:
@@ -644,14 +649,14 @@ bool HostContentSettingsMap::ShouldAllowAllContent(
case CONTENT_SETTINGS_TYPE_MEDIASTREAM_CAMERA:
return false;
case CONTENT_SETTINGS_TYPE_COOKIES:
- return secondary_url.SchemeIs(extensions::kExtensionScheme);
+ return secondary_url.SchemeIs(kExtensionScheme);
default:
return true;
}
}
#endif
- return primary_url.SchemeIs(content::kChromeDevToolsScheme) ||
- primary_url.SchemeIs(content::kChromeUIScheme);
+ return primary_url.SchemeIs(kChromeDevToolsScheme) ||
+ primary_url.SchemeIs(kChromeUIScheme);
}
scoped_ptr<base::Value> HostContentSettingsMap::GetWebsiteSetting(
« no previous file with comments | « components/content_settings/core/browser/host_content_settings_map.h ('k') | components/content_settings/core/common/BUILD.gn » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698