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

Unified Diff: chrome/browser/website_settings.cc

Issue 10092013: Display third party cookies and site data counts in the WebsiteSettings UI. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: " Created 8 years, 8 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: chrome/browser/website_settings.cc
diff --git a/chrome/browser/website_settings.cc b/chrome/browser/website_settings.cc
index d63ccf944741c70e8981129dad31572a42ea933a..d9b34563e4a0e5688fa29ab6dad1e9e5f52d2cd7 100644
--- a/chrome/browser/website_settings.cc
+++ b/chrome/browser/website_settings.cc
@@ -31,6 +31,7 @@
#include "grit/chromium_strings.h"
#include "grit/generated_resources.h"
#include "net/base/cert_status_flags.h"
+#include "net/base/registry_controlled_domain.h"
#include "net/base/ssl_cipher_suite_names.h"
#include "net/base/ssl_connection_status_flags.h"
#include "net/base/x509_certificate.h"
@@ -52,19 +53,6 @@ ContentSettingsType kPermissionType[] = {
CONTENT_SETTINGS_TYPE_GEOLOCATION,
};
-size_t GetLocalStoredObjectCount(
- const LocalSharedObjectsContainer& local_shared_objects) {
- size_t count = 0;
- count += local_shared_objects.cookies()->GetCookieCount();
- count += local_shared_objects.databases()->GetDatabaseCount();
- count += local_shared_objects.file_systems()->GetFileSystemCount();
- count += local_shared_objects.indexed_dbs()->GetIndexedDBCount();
- count += local_shared_objects.local_storages()->GetLocalStorageCount();
- count += local_shared_objects.server_bound_certs()->GetCertCount();
- count += local_shared_objects.session_storages()->GetLocalStorageCount();
- return count;
-}
-
} // namespace
WebsiteSettings::WebsiteSettings(
@@ -413,12 +401,28 @@ void WebsiteSettings::PresentSitePermissions() {
void WebsiteSettings::PresentSiteData() {
CookieInfoList cookie_info_list;
+ const LocalSharedObjectsContainer& allowed_objects =
+ tab_specific_content_settings()->allowed_local_shared_objects();
+ const LocalSharedObjectsContainer& blocked_objects =
+ tab_specific_content_settings()->blocked_local_shared_objects();
+
+ // Add first party cookie and site data counts.
WebsiteSettingsUI::CookieInfo cookie_info;
- cookie_info.cookie_source = site_url_.host();
- cookie_info.allowed = GetLocalStoredObjectCount(
- tab_specific_content_settings()->allowed_local_shared_objects());
- cookie_info.blocked = GetLocalStoredObjectCount(
- tab_specific_content_settings()->blocked_local_shared_objects());
+ std::string cookie_source =
+ net::RegistryControlledDomainService::GetDomainAndRegistry(site_url_);
bauerb at google 2012/04/27 16:12:50 Doesn't SameDomainOrHost() do this internally?
markusheintz_ 2012/05/10 16:32:36 Yes it does. Here I need to get the domain of the
+ if (cookie_source.empty())
+ cookie_source = site_url_.host();
+ cookie_info.cookie_source = cookie_source;
+ cookie_info.allowed = allowed_objects.GetObjectCountForDomain(site_url_);
+ cookie_info.blocked = blocked_objects.GetObjectCountForDomain(site_url_);
+ cookie_info_list.push_back(cookie_info);
+
+ // Add third party cookie counts.
+ // TODO(markusheintz): Localize the following string once we decided about
+ // the exact wording.
bauerb at google 2012/04/27 16:12:50 Usually, we add strings to the GRD file even if th
markusheintz_ 2012/05/10 16:32:36 Done.
+ cookie_info.cookie_source = "Others";
+ cookie_info.allowed = allowed_objects.Size() - cookie_info.allowed;
+ cookie_info.blocked = blocked_objects.Size() - cookie_info.blocked;
cookie_info_list.push_back(cookie_info);
ui_->SetCookieInfo(cookie_info_list);

Powered by Google App Engine
This is Rietveld 408576698