| 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 bce514598a8ae7d8576c3e46aa935116ca6450f1..23e0f8898232990c539232c1805b5a38075d23ab 100644
|
| --- a/chrome/browser/ui/webui/extensions/extension_settings_handler.cc
|
| +++ b/chrome/browser/ui/webui/extensions/extension_settings_handler.cc
|
| @@ -340,8 +340,10 @@ base::DictionaryValue* ExtensionSettingsHandler::CreateExtensionDetailValue(
|
| // (using both is redundant).
|
| ErrorConsole* error_console =
|
| ErrorConsole::Get(extension_service_->profile());
|
| - if (error_console->IsEnabledForChromeExtensionsPage() &&
|
| - extension->location() == Manifest::UNPACKED) {
|
| + if (error_console->IsEnabledForChromeExtensionsPage()) {
|
| + extension_data->SetBoolean("errorCollectionEnabled",
|
| + error_console->IsReportingEnabledForExtension(
|
| + extension->id()));
|
| const ErrorList& errors =
|
| error_console->GetErrorsForExtension(extension->id());
|
| if (!errors.empty()) {
|
| @@ -426,6 +428,8 @@ void ExtensionSettingsHandler::GetLocalizedValues(
|
| l10n_util::GetStringUTF16(IDS_EXTENSIONS_REMOVE));
|
| source->AddString("extensionSettingsEnableIncognito",
|
| l10n_util::GetStringUTF16(IDS_EXTENSIONS_ENABLE_INCOGNITO));
|
| + source->AddString("extensionSettingsEnableErrorCollection",
|
| + l10n_util::GetStringUTF16(IDS_EXTENSIONS_ENABLE_ERROR_COLLECTION));
|
| source->AddString("extensionSettingsAllowFileAccess",
|
| l10n_util::GetStringUTF16(IDS_EXTENSIONS_ALLOW_FILE_ACCESS));
|
| source->AddString("extensionSettingsIncognitoWarning",
|
| @@ -534,6 +538,9 @@ void ExtensionSettingsHandler::RegisterMessages() {
|
| web_ui()->RegisterMessageCallback("extensionSettingsEnableIncognito",
|
| base::Bind(&ExtensionSettingsHandler::HandleEnableIncognitoMessage,
|
| AsWeakPtr()));
|
| + web_ui()->RegisterMessageCallback("extensionSettingsEnableErrorCollection",
|
| + base::Bind(&ExtensionSettingsHandler::HandleEnableErrorCollectionMessage,
|
| + AsWeakPtr()));
|
| web_ui()->RegisterMessageCallback("extensionSettingsAllowFileAccess",
|
| base::Bind(&ExtensionSettingsHandler::HandleAllowFileAccessMessage,
|
| AsWeakPtr()));
|
| @@ -978,6 +985,20 @@ void ExtensionSettingsHandler::HandleEnableIncognitoMessage(
|
| enable_str == "true");
|
| }
|
|
|
| +void ExtensionSettingsHandler::HandleEnableErrorCollectionMessage(
|
| + const base::ListValue* args) {
|
| + CHECK_EQ(2u, args->GetSize());
|
| + std::string extension_id;
|
| + std::string enable_str;
|
| + CHECK(args->GetString(0, &extension_id));
|
| + CHECK(args->GetString(1, &enable_str));
|
| + bool enabled = enable_str == "true";
|
| + ErrorConsole::Get(Profile::FromWebUI(web_ui()))->SetReportingForExtension(
|
| + extension_id, ExtensionError::MANIFEST_ERROR, enabled);
|
| + ErrorConsole::Get(Profile::FromWebUI(web_ui()))->SetReportingForExtension(
|
| + extension_id, ExtensionError::RUNTIME_ERROR, enabled);
|
| +}
|
| +
|
| void ExtensionSettingsHandler::HandleAllowFileAccessMessage(
|
| const base::ListValue* args) {
|
| CHECK_EQ(2U, args->GetSize());
|
|
|