| Index: extensions/browser/api/declarative/rules_cache_delegate.cc
|
| diff --git a/chrome/browser/extensions/api/declarative/rules_cache_delegate.cc b/extensions/browser/api/declarative/rules_cache_delegate.cc
|
| similarity index 90%
|
| rename from chrome/browser/extensions/api/declarative/rules_cache_delegate.cc
|
| rename to extensions/browser/api/declarative/rules_cache_delegate.cc
|
| index 6a70d8e8efbc39615d1e5e7ea3ac4f8926df6fd1..03a4b497b39d6928fe661e7b8c725a58f00c59cf 100644
|
| --- a/chrome/browser/extensions/api/declarative/rules_cache_delegate.cc
|
| +++ b/extensions/browser/api/declarative/rules_cache_delegate.cc
|
| @@ -2,15 +2,12 @@
|
| // Use of this source code is governed by a BSD-style license that can be
|
| // found in the LICENSE file.
|
|
|
| -#include "chrome/browser/extensions/api/declarative/rules_cache_delegate.h"
|
| +#include "extensions/browser/api/declarative/rules_cache_delegate.h"
|
|
|
| -#include "chrome/browser/chrome_notification_types.h"
|
| -#include "chrome/browser/extensions/api/declarative/rules_registry.h"
|
| -#include "chrome/browser/extensions/extension_service.h"
|
| -#include "chrome/browser/extensions/extension_util.h"
|
| #include "content/public/browser/browser_context.h"
|
| #include "content/public/browser/notification_details.h"
|
| #include "content/public/browser/notification_source.h"
|
| +#include "extensions/browser/api/declarative/rules_registry.h"
|
| #include "extensions/browser/extension_prefs.h"
|
| #include "extensions/browser/extension_registry.h"
|
| #include "extensions/browser/extension_system.h"
|
| @@ -127,16 +124,17 @@ void RulesCacheDelegate::CheckIfReady() {
|
| }
|
|
|
| void RulesCacheDelegate::ReadRulesForInstalledExtensions() {
|
| - ExtensionSystem& system = *ExtensionSystem::Get(browser_context_);
|
| - ExtensionService* extension_service = system.extension_service();
|
| - DCHECK(extension_service);
|
| + bool is_ready = ExtensionSystem::Get(browser_context_)->ready().is_signaled();
|
| // In an OTR context, we start on top of a normal context already, so the
|
| // extension service should be ready.
|
| - DCHECK(!browser_context_->IsOffTheRecord() || extension_service->is_ready());
|
| - if (extension_service->is_ready()) {
|
| - const ExtensionSet* extensions = extension_service->extensions();
|
| - for (ExtensionSet::const_iterator i = extensions->begin();
|
| - i != extensions->end();
|
| + DCHECK(!browser_context_->IsOffTheRecord() || is_ready);
|
| + if (is_ready) {
|
| + const ExtensionSet& extensions =
|
| + ExtensionRegistry::Get(browser_context_)->enabled_extensions();
|
| + const ExtensionPrefs* extension_prefs =
|
| + ExtensionPrefs::Get(browser_context_);
|
| + for (ExtensionSet::const_iterator i = extensions.begin();
|
| + i != extensions.end();
|
| ++i) {
|
| bool needs_apis_storing_rules =
|
| (*i)->permissions_data()->HasAPIPermission(
|
| @@ -145,7 +143,7 @@ void RulesCacheDelegate::ReadRulesForInstalledExtensions() {
|
| APIPermission::kDeclarativeWebRequest);
|
| bool respects_off_the_record =
|
| !(browser_context_->IsOffTheRecord()) ||
|
| - util::IsIncognitoEnabled((*i)->id(), browser_context_);
|
| + extension_prefs->IsIncognitoEnabled((*i)->id());
|
| if (needs_apis_storing_rules && respects_off_the_record)
|
| ReadFromStorage((*i)->id());
|
| }
|
|
|