Index: content/browser/storage_partition_impl.cc |
diff --git a/content/browser/storage_partition_impl.cc b/content/browser/storage_partition_impl.cc |
index 134c1617768d662b63465ce7f0ff6ecc6568b20c..56146b9773bb86d0b89759cc7ff2f82daef9b55c 100644 |
--- a/content/browser/storage_partition_impl.cc |
+++ b/content/browser/storage_partition_impl.cc |
@@ -9,6 +9,8 @@ |
#include "content/browser/browser_main_loop.h" |
#include "content/browser/fileapi/browser_file_system_helper.h" |
#include "content/browser/gpu/shader_disk_cache.h" |
+#include "content/browser/host_zoom_level_context.h" |
+#include "content/browser/host_zoom_map_impl.h" |
#include "content/common/dom_storage/dom_storage_types.h" |
#include "content/public/browser/browser_context.h" |
#include "content/public/browser/browser_thread.h" |
@@ -358,7 +360,8 @@ StoragePartitionImpl::StoragePartitionImpl( |
IndexedDBContextImpl* indexed_db_context, |
ServiceWorkerContextWrapper* service_worker_context, |
WebRTCIdentityStore* webrtc_identity_store, |
- quota::SpecialStoragePolicy* special_storage_policy) |
+ quota::SpecialStoragePolicy* special_storage_policy, |
+ scoped_ptr<HostZoomLevelContext> host_zoom_level_context) |
: partition_path_(partition_path), |
quota_manager_(quota_manager), |
appcache_service_(appcache_service), |
@@ -368,7 +371,8 @@ StoragePartitionImpl::StoragePartitionImpl( |
indexed_db_context_(indexed_db_context), |
service_worker_context_(service_worker_context), |
webrtc_identity_store_(webrtc_identity_store), |
- special_storage_policy_(special_storage_policy) {} |
+ special_storage_policy_(special_storage_policy), |
+ host_zoom_level_context_(host_zoom_level_context.release()) {} |
StoragePartitionImpl::~StoragePartitionImpl() { |
// These message loop checks are just to avoid leaks in unittests. |
@@ -459,6 +463,12 @@ StoragePartitionImpl* StoragePartitionImpl::Create( |
scoped_refptr<quota::SpecialStoragePolicy> special_storage_policy( |
context->GetSpecialStoragePolicy()); |
+ double default_zoom_level = context->GetDefaultZoomLevel(); |
+ scoped_ptr<HostZoomLevelContext> host_zoom_level_context( |
+ new HostZoomLevelContext(context->CreateZoomLevelPrefsStore(), |
+ partition_path, |
+ default_zoom_level)); |
+ |
return new StoragePartitionImpl(partition_path, |
quota_manager.get(), |
appcache_service.get(), |
@@ -468,7 +478,8 @@ StoragePartitionImpl* StoragePartitionImpl::Create( |
indexed_db_context.get(), |
service_worker_context.get(), |
webrtc_identity_store.get(), |
- special_storage_policy.get()); |
+ special_storage_policy.get(), |
+ host_zoom_level_context.Pass()); |
} |
base::FilePath StoragePartitionImpl::GetPath() { |
@@ -512,6 +523,16 @@ ServiceWorkerContextWrapper* StoragePartitionImpl::GetServiceWorkerContext() { |
return service_worker_context_.get(); |
} |
+HostZoomMap* StoragePartitionImpl::GetHostZoomMap() { |
+ DCHECK(host_zoom_level_context_); |
+ return host_zoom_level_context_->GetHostZoomMap(); |
+} |
+ |
+PrefService* StoragePartitionImpl::GetZoomLevelPrefs() { |
+ DCHECK(host_zoom_level_context_); |
+ return host_zoom_level_context_->GetZoomLevelPrefs(); |
+} |
+ |
void StoragePartitionImpl::ClearDataImpl( |
uint32 remove_mask, |
uint32 quota_storage_remove_mask, |