| Index: chrome/browser/ui/webui/extensions/extension_settings_handler.cc
|
| ===================================================================
|
| --- chrome/browser/ui/webui/extensions/extension_settings_handler.cc (revision 136836)
|
| +++ chrome/browser/ui/webui/extensions/extension_settings_handler.cc (working copy)
|
| @@ -95,6 +95,17 @@
|
| true;
|
| extension->GetBasicInfo(enabled, extension_data);
|
|
|
| + if (extension_service_) {
|
| + extension_data->SetBoolean("mayModifyStatus", extension_service_->
|
| + extension_management_policy()->UserMayModifyStatus(extension, NULL));
|
| + extension_data->SetBoolean("mayModifyUsage", extension_service_->
|
| + extension_management_policy()->UserMayModifyUsage(extension, NULL));
|
| + } else {
|
| + // This should only happen in testing.
|
| + extension_data->SetBoolean("mayModifyStatus", true);
|
| + extension_data->SetBoolean("mayModifyUsage", true);
|
| + }
|
| +
|
| GURL icon =
|
| ExtensionIconSource::GetIconURL(extension,
|
| ExtensionIconSet::EXTENSION_ICON_MEDIUM,
|
| @@ -563,7 +574,9 @@
|
|
|
| const Extension* extension =
|
| extension_service_->GetInstalledExtension(extension_id);
|
| - if (!extension || !Extension::UserMayDisable(extension->location())) {
|
| + if (!extension ||
|
| + !extension_service_->extension_management_policy()->
|
| + UserMayModifyStatus(extension, NULL)) {
|
| LOG(ERROR) << "Attempt to enable an extension that is non-usermanagable was"
|
| << "made. Extension id: " << extension->id();
|
| return;
|
| @@ -621,7 +634,8 @@
|
| if (!extension)
|
| return;
|
|
|
| - if (!Extension::UserMayDisable(extension->location())) {
|
| + if (!extension_service_->extension_management_policy()->
|
| + UserMayModifyUsage(extension, NULL)) {
|
| LOG(ERROR) << "Attempt to change allow file access of an extension that is "
|
| << "non-usermanagable was made. Extension id : "
|
| << extension->id();
|
| @@ -640,7 +654,8 @@
|
| if (!extension)
|
| return;
|
|
|
| - if (!Extension::UserMayDisable(extension->location())) {
|
| + if (!extension_service_->extension_management_policy()->
|
| + UserMayModifyStatus(extension, NULL)) {
|
| LOG(ERROR) << "Attempt to uninstall an extension that is non-usermanagable "
|
| << "was made. Extension id : " << extension->id();
|
| return;
|
|
|