| OLD | NEW |
| 1 // Copyright 2013 The Chromium Authors. All rights reserved. | 1 // Copyright 2013 The Chromium Authors. All rights reserved. |
| 2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
| 3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
| 4 | 4 |
| 5 #include "chrome/browser/extensions/extension_util.h" | 5 #include "chrome/browser/extensions/extension_util.h" |
| 6 | 6 |
| 7 #include "base/command_line.h" | 7 #include "base/command_line.h" |
| 8 #include "chrome/browser/extensions/extension_prefs.h" | 8 #include "chrome/browser/extensions/extension_prefs.h" |
| 9 #include "chrome/browser/extensions/extension_service.h" | 9 #include "chrome/browser/extensions/extension_service.h" |
| 10 #include "chrome/browser/extensions/extension_sync_service.h" | 10 #include "chrome/browser/extensions/extension_sync_service.h" |
| 11 #include "chrome/browser/extensions/extension_system.h" | 11 #include "chrome/browser/extensions/extension_system.h" |
| 12 #include "chrome/common/chrome_switches.h" | 12 #include "chrome/common/chrome_switches.h" |
| 13 #include "chrome/common/extensions/sync_helper.h" | 13 #include "chrome/common/extensions/sync_helper.h" |
| 14 #include "content/public/browser/site_instance.h" | 14 #include "content/public/browser/site_instance.h" |
| 15 #include "extensions/browser/extension_registry.h" |
| 15 #include "extensions/common/extension.h" | 16 #include "extensions/common/extension.h" |
| 16 #include "extensions/common/manifest.h" | 17 #include "extensions/common/manifest.h" |
| 17 #include "extensions/common/manifest_handlers/incognito_info.h" | 18 #include "extensions/common/manifest_handlers/incognito_info.h" |
| 18 | 19 |
| 19 using extensions::Extension; | 20 using extensions::Extension; |
| 20 using extensions::ExtensionPrefs; | 21 using extensions::ExtensionPrefs; |
| 22 using extensions::ExtensionRegistry; |
| 21 | 23 |
| 22 namespace extension_util { | 24 namespace extension_util { |
| 23 | 25 |
| 24 bool IsIncognitoEnabled(const std::string& extension_id, | 26 bool IsIncognitoEnabled(const std::string& extension_id, |
| 25 const ExtensionService* service) { | 27 const ExtensionService* service) { |
| 26 if (!service) | 28 if (!service) |
| 27 return false; | 29 return false; |
| 28 | 30 |
| 29 const Extension* extension = service->GetInstalledExtension(extension_id); | 31 const Extension* extension = service->GetInstalledExtension(extension_id); |
| 30 if (extension && !extension->can_be_incognito_enabled()) | 32 if (extension && !extension->can_be_incognito_enabled()) |
| (...skipping 96 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 127 } | 129 } |
| 128 | 130 |
| 129 bool IsAppLaunchable(const std::string& extension_id, | 131 bool IsAppLaunchable(const std::string& extension_id, |
| 130 const ExtensionService* service) { | 132 const ExtensionService* service) { |
| 131 return !(service->extension_prefs()->GetDisableReasons(extension_id) & | 133 return !(service->extension_prefs()->GetDisableReasons(extension_id) & |
| 132 Extension::DISABLE_UNSUPPORTED_REQUIREMENT); | 134 Extension::DISABLE_UNSUPPORTED_REQUIREMENT); |
| 133 } | 135 } |
| 134 | 136 |
| 135 bool IsAppLaunchableWithoutEnabling(const std::string& extension_id, | 137 bool IsAppLaunchableWithoutEnabling(const std::string& extension_id, |
| 136 const ExtensionService* service) { | 138 const ExtensionService* service) { |
| 137 const Extension* launchable_extension = service->GetExtensionById( | 139 ExtensionRegistry* registry = |
| 138 extension_id, ExtensionService::INCLUDE_ENABLED); | 140 ExtensionRegistry::Get(service->GetBrowserContext()); |
| 141 const Extension* launchable_extension = registry->GetExtensionById( |
| 142 extension_id, ExtensionRegistry::ENABLED); |
| 139 return launchable_extension != NULL; | 143 return launchable_extension != NULL; |
| 140 } | 144 } |
| 141 | 145 |
| 142 bool IsExtensionIdle(const std::string& extension_id, | 146 bool IsExtensionIdle(const std::string& extension_id, |
| 143 extensions::ExtensionSystem* extension_system) { | 147 extensions::ExtensionSystem* extension_system) { |
| 144 DCHECK(extension_system); | 148 DCHECK(extension_system); |
| 145 extensions::ProcessManager* process_manager = | 149 extensions::ProcessManager* process_manager = |
| 146 extension_system->process_manager(); | 150 extension_system->process_manager(); |
| 147 DCHECK(process_manager); | 151 DCHECK(process_manager); |
| 148 extensions::ExtensionHost* host = | 152 extensions::ExtensionHost* host = |
| (...skipping 11 matching lines...) Expand all Loading... |
| 160 } | 164 } |
| 161 | 165 |
| 162 bool IsExtensionInstalledPermanently(const std::string& extension_id, | 166 bool IsExtensionInstalledPermanently(const std::string& extension_id, |
| 163 const ExtensionService* service) { | 167 const ExtensionService* service) { |
| 164 DCHECK(service); | 168 DCHECK(service); |
| 165 const Extension* extension = service->GetInstalledExtension(extension_id); | 169 const Extension* extension = service->GetInstalledExtension(extension_id); |
| 166 return extension && !extension->is_ephemeral(); | 170 return extension && !extension->is_ephemeral(); |
| 167 } | 171 } |
| 168 | 172 |
| 169 } // namespace extension_util | 173 } // namespace extension_util |
| OLD | NEW |