summaryrefslogtreecommitdiffstats
path: root/chrome/browser/tab_contents
diff options
context:
space:
mode:
authorjochen@chromium.org <jochen@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2010-09-23 08:53:26 +0000
committerjochen@chromium.org <jochen@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2010-09-23 08:53:26 +0000
commit2823fb246d4d39fd8f14fb8a29a2d53d2e67d55a (patch)
tree656029e76252b19306ec981542737dc33492baca /chrome/browser/tab_contents
parent0e2ca05ee5c69a2e9c0910953f2e0850092aeeb5 (diff)
downloadchromium_src-2823fb246d4d39fd8f14fb8a29a2d53d2e67d55a.zip
chromium_src-2823fb246d4d39fd8f14fb8a29a2d53d2e67d55a.tar.gz
chromium_src-2823fb246d4d39fd8f14fb8a29a2d53d2e67d55a.tar.bz2
Hook up indexed databases to content settings.
Step 2: add a browsing data helper for indexed databases. BUG=56248 TEST=CannedBrowsingDataIndexedDBHelperTest.*,BrowsingDataIndexedDBHelperTest.* Review URL: http://codereview.chromium.org/3468007 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@60270 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'chrome/browser/tab_contents')
-rw-r--r--chrome/browser/tab_contents/tab_specific_content_settings.cc13
-rw-r--r--chrome/browser/tab_contents/tab_specific_content_settings.h5
2 files changed, 16 insertions, 2 deletions
diff --git a/chrome/browser/tab_contents/tab_specific_content_settings.cc b/chrome/browser/tab_contents/tab_specific_content_settings.cc
index 9c44744..7c86182 100644
--- a/chrome/browser/tab_contents/tab_specific_content_settings.cc
+++ b/chrome/browser/tab_contents/tab_specific_content_settings.cc
@@ -7,6 +7,7 @@
#include "base/utf_string_conversions.h"
#include "chrome/browser/browsing_data_appcache_helper.h"
#include "chrome/browser/browsing_data_database_helper.h"
+#include "chrome/browser/browsing_data_indexed_db_helper.h"
#include "chrome/browser/browsing_data_local_storage_helper.h"
#include "chrome/browser/cookies_tree_model.h"
#include "net/base/cookie_monster.h"
@@ -15,6 +16,7 @@ bool TabSpecificContentSettings::LocalSharedObjectsContainer::empty() const {
return cookies_->GetAllCookies().empty() &&
appcaches_->empty() &&
databases_->empty() &&
+ indexed_dbs_->empty() &&
local_storages_->empty() &&
session_storages_->empty();
}
@@ -111,10 +113,15 @@ void TabSpecificContentSettings::OnIndexedDBAccessed(
const string16& name,
const string16& description,
bool blocked_by_policy) {
- if (blocked_by_policy)
+ if (blocked_by_policy) {
+ blocked_local_shared_objects_.indexed_dbs()->AddIndexedDB(
+ url, name, description);
OnContentBlocked(CONTENT_SETTINGS_TYPE_COOKIES, std::string());
- else
+ }else {
+ allowed_local_shared_objects_.indexed_dbs()->AddIndexedDB(
+ url, name, description);
OnContentAccessed(CONTENT_SETTINGS_TYPE_COOKIES);
+ }
}
void TabSpecificContentSettings::OnLocalStorageAccessed(
@@ -233,6 +240,7 @@ TabSpecificContentSettings::LocalSharedObjectsContainer::
: cookies_(new net::CookieMonster(NULL, NULL)),
appcaches_(new CannedBrowsingDataAppCacheHelper(profile)),
databases_(new CannedBrowsingDataDatabaseHelper(profile)),
+ indexed_dbs_(new CannedBrowsingDataIndexedDBHelper(profile)),
local_storages_(new CannedBrowsingDataLocalStorageHelper(profile)),
session_storages_(new CannedBrowsingDataLocalStorageHelper(profile)) {
}
@@ -245,6 +253,7 @@ void TabSpecificContentSettings::LocalSharedObjectsContainer::Reset() {
cookies_->DeleteAll(false);
appcaches_->Reset();
databases_->Reset();
+ indexed_dbs_->Reset();
local_storages_->Reset();
session_storages_->Reset();
}
diff --git a/chrome/browser/tab_contents/tab_specific_content_settings.h b/chrome/browser/tab_contents/tab_specific_content_settings.h
index d53f477..7f0aac79 100644
--- a/chrome/browser/tab_contents/tab_specific_content_settings.h
+++ b/chrome/browser/tab_contents/tab_specific_content_settings.h
@@ -15,6 +15,7 @@
class CannedBrowsingDataAppCacheHelper;
class CannedBrowsingDataDatabaseHelper;
+class CannedBrowsingDataIndexedDBHelper;
class CannedBrowsingDataLocalStorageHelper;
class CookiesTreeModel;
class Profile;
@@ -126,6 +127,9 @@ class TabSpecificContentSettings
CannedBrowsingDataDatabaseHelper* databases() const {
return databases_;
}
+ CannedBrowsingDataIndexedDBHelper* indexed_dbs() const {
+ return indexed_dbs_;
+ }
CannedBrowsingDataLocalStorageHelper* local_storages() const {
return local_storages_;
}
@@ -143,6 +147,7 @@ class TabSpecificContentSettings
scoped_refptr<net::CookieMonster> cookies_;
scoped_refptr<CannedBrowsingDataAppCacheHelper> appcaches_;
scoped_refptr<CannedBrowsingDataDatabaseHelper> databases_;
+ scoped_refptr<CannedBrowsingDataIndexedDBHelper> indexed_dbs_;
scoped_refptr<CannedBrowsingDataLocalStorageHelper> local_storages_;
scoped_refptr<CannedBrowsingDataLocalStorageHelper> session_storages_;
};