Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(6878)

Unified Diff: chrome/browser/ui/webui/settings/search_engines_handler.cc

Issue 2529543002: MD Settings: indicate extension controlled search engines (Closed)
Patch Set: merge Created 4 years ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: chrome/browser/ui/webui/settings/search_engines_handler.cc
diff --git a/chrome/browser/ui/webui/settings/search_engines_handler.cc b/chrome/browser/ui/webui/settings/search_engines_handler.cc
index 2b51d97cdb8b7fef14875397372c2cb71b3349ff..aea264edde5c5281f147dea50d32ff7527214101 100644
--- a/chrome/browser/ui/webui/settings/search_engines_handler.cc
+++ b/chrome/browser/ui/webui/settings/search_engines_handler.cc
@@ -28,6 +28,8 @@
#include "content/public/browser/user_metrics.h"
#include "content/public/browser/web_ui.h"
#include "extensions/browser/extension_registry.h"
+#include "extensions/browser/extension_system.h"
+#include "extensions/browser/management_policy.h"
#include "extensions/common/extension.h"
#include "ui/base/l10n/l10n_util.h"
@@ -215,9 +217,9 @@ SearchEnginesHandler::CreateDictionaryForEngine(int index, bool is_default) {
dict->SetString(
"keyword",
table_model->GetText(index, IDS_SEARCH_ENGINES_EDITOR_KEYWORD_COLUMN));
- dict->SetString("url",
- template_url->url_ref().DisplayURL(
- UIThreadSearchTermsData(Profile::FromWebUI(web_ui()))));
+ Profile* profile = Profile::FromWebUI(web_ui());
+ dict->SetString("url", template_url->url_ref().DisplayURL(
+ UIThreadSearchTermsData(profile)));
dict->SetBoolean("urlLocked", template_url->prepopulate_id() > 0);
GURL icon_url = template_url->favicon_url();
if (icon_url.is_valid())
@@ -235,12 +237,17 @@ SearchEnginesHandler::CreateDictionaryForEngine(int index, bool is_default) {
if (type == TemplateURL::NORMAL_CONTROLLED_BY_EXTENSION ||
type == TemplateURL::OMNIBOX_API_EXTENSION) {
const extensions::Extension* extension =
- extensions::ExtensionRegistry::Get(Profile::FromWebUI(web_ui()))
- ->GetExtensionById(template_url->GetExtensionId(),
- extensions::ExtensionRegistry::EVERYTHING);
+ extensions::ExtensionRegistry::Get(profile)->GetExtensionById(
+ template_url->GetExtensionId(),
+ extensions::ExtensionRegistry::EVERYTHING);
if (extension) {
- dict->Set("extension",
- extensions::util::GetExtensionInfo(extension).release());
+ std::unique_ptr<base::DictionaryValue> ext_info =
+ extensions::util::GetExtensionInfo(extension);
+ ext_info->SetBoolean("canBeDisabled",
+ !extensions::ExtensionSystem::Get(profile)
+ ->management_policy()
+ ->MustRemainEnabled(extension, nullptr));
+ dict->Set("extension", ext_info.release());
}
}
return dict;

Powered by Google App Engine
This is Rietveld 408576698