Index: chrome/browser/ui/webui/extensions/extension_settings_handler.cc |
diff --git a/chrome/browser/ui/webui/extensions/extension_settings_handler.cc b/chrome/browser/ui/webui/extensions/extension_settings_handler.cc |
index 49b259f57c41cf5ae64682042972db64963ae4be..9cee202d17224d3dc128d7115ccdd7f8f71601dc 100644 |
--- a/chrome/browser/ui/webui/extensions/extension_settings_handler.cc |
+++ b/chrome/browser/ui/webui/extensions/extension_settings_handler.cc |
@@ -41,6 +41,7 @@ |
#include "chrome/browser/extensions/extension_warning_set.h" |
#include "chrome/browser/extensions/install_verifier.h" |
#include "chrome/browser/extensions/path_util.h" |
+#include "chrome/browser/extensions/shared_module_service.h" |
#include "chrome/browser/extensions/updater/extension_updater.h" |
#include "chrome/browser/platform_util.h" |
#include "chrome/browser/profiles/profile.h" |
@@ -264,6 +265,20 @@ base::DictionaryValue* ExtensionSettingsHandler::CreateExtensionDetailValue( |
extension_data->SetBoolean("homepageProvided", |
ManifestURL::GetHomepageURL(extension).is_valid()); |
+ // Add dependent extensions. |
+ base::ListValue* dependents_list = new base::ListValue; |
+ if (extension->is_shared_module()) { |
+ scoped_ptr<ExtensionSet> dependentExtensions = |
not at google - send to devlin
2014/07/17 22:03:41
depentent_extensions
not at google - send to devlin
2014/07/17 22:03:57
by which I mean dependent_extensions
elijahtaylor1
2014/07/17 23:28:04
Arg, too much JS/C++ context switching :)
|
+ extension_service_->shared_module_service()->GetDependentExtensions( |
+ extension); |
+ for (ExtensionSet::const_iterator i = dependentExtensions->begin(); |
+ i != dependentExtensions->end(); |
+ i++) { |
+ dependents_list->Append(new base::StringValue((*i)->id())); |
+ } |
+ } |
+ extension_data->Set("dependentExtensions", dependents_list); |
+ |
// Extensions only want all URL access if: |
// - The feature is enabled. |
// - The extension has access to enough urls that we can't just let it run |
@@ -288,6 +303,9 @@ base::DictionaryValue* ExtensionSettingsHandler::CreateExtensionDetailValue( |
} else if (extension->location() == Manifest::EXTERNAL_REGISTRY) { |
location_text = l10n_util::GetStringUTF16( |
IDS_OPTIONS_INSTALL_LOCATION_3RD_PARTY); |
+ } else if (extension->is_shared_module() && extension->from_webstore()) { |
not at google - send to devlin
2014/07/17 22:03:41
remove the from_webstore check here?
elijahtaylor1
2014/07/17 23:28:04
This I would like to keep because it controls the
not at google - send to devlin
2014/07/17 23:30:35
all this sets is location text, it can't hurt to a
elijahtaylor1
2014/07/18 00:22:31
eh, ok, I don't feel too strongly about this. Rem
|
+ location_text = l10n_util::GetStringUTF16( |
+ IDS_OPTIONS_INSTALL_LOCATION_SHARED_MODULE); |
} |
extension_data->SetString("locationText", location_text); |
@@ -491,6 +509,8 @@ void ExtensionSettingsHandler::GetLocalizedValues( |
l10n_util::GetStringUTF16(IDS_EXTENSIONS_VISIT_WEBSTORE)); |
source->AddString("extensionSettingsPolicyControlled", |
l10n_util::GetStringUTF16(IDS_EXTENSIONS_POLICY_CONTROLLED)); |
+ source->AddString("extensionSettingsDependentExtensions", |
+ l10n_util::GetStringUTF16(IDS_EXTENSIONS_DEPENDENT_EXTENSIONS)); |
source->AddString("extensionSettingsManagedMode", |
l10n_util::GetStringUTF16(IDS_EXTENSIONS_LOCKED_SUPERVISED_USER)); |
source->AddString("extensionSettingsCorruptInstall", |