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

Unified Diff: chrome/browser/extensions/api/developer_private/extension_info_generator.cc

Issue 1016413004: [Extensions] Update Error Console UI (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Created 5 years, 9 months 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/extensions/api/developer_private/extension_info_generator.cc
diff --git a/chrome/browser/extensions/api/developer_private/extension_info_generator.cc b/chrome/browser/extensions/api/developer_private/extension_info_generator.cc
index 4c96f9f0ed8a7e4795cc4a5fb3e0398798b4f39f..24275ac05eb6a4c8b6e5ad1b906e56f02ebbbf0f 100644
--- a/chrome/browser/extensions/api/developer_private/extension_info_generator.cc
+++ b/chrome/browser/extensions/api/developer_private/extension_info_generator.cc
@@ -71,8 +71,7 @@ developer::ExtensionType GetExtensionType(Manifest::Type manifest_type) {
// Populates the common fields of an extension error.
template <typename ErrorType>
-void PopulateErrorBase(const ExtensionError& error,
- ErrorType* out) {
+void PopulateErrorBase(const ExtensionError& error, ErrorType* out) {
CHECK(out);
out->type = error.type() == ExtensionError::MANIFEST_ERROR ?
developer::ERROR_TYPE_MANIFEST : developer::ERROR_TYPE_RUNTIME;
@@ -80,10 +79,9 @@ void PopulateErrorBase(const ExtensionError& error,
out->from_incognito = error.from_incognito();
out->source = base::UTF16ToUTF8(error.source());
out->message = base::UTF16ToUTF8(error.message());
+ out->id = error.id();
}
-// Given a ManifestError object, converts it into its developer_private
-// counterpart.
linked_ptr<developer::ManifestError> ConstructManifestError(
const ManifestError& error) {
linked_ptr<developer::ManifestError> result(new developer::ManifestError());
@@ -96,8 +94,6 @@ linked_ptr<developer::ManifestError> ConstructManifestError(
return result;
}
-// Given a RuntimeError object, converts it into its developer_private
-// counterpart.
linked_ptr<developer::RuntimeError> ConstructRuntimeError(
const RuntimeError& error) {
linked_ptr<developer::RuntimeError> result(new developer::RuntimeError());
@@ -363,6 +359,25 @@ ExtensionInfoGenerator::CreateExtensionInfo(const Extension& extension,
return info.Pass();
}
+scoped_ptr<api::developer_private::ExtensionInfo>
+ExtensionInfoGenerator::CreateExtensionInfo(const std::string& id) {
+ developer::ExtensionState state = developer::EXTENSION_STATE_ENABLED;
+ ExtensionRegistry* registry = ExtensionRegistry::Get(browser_context_);
+ const Extension* extension = registry->enabled_extensions().GetByID(id);
+ if (!extension &&
+ (extension = registry->disabled_extensions().GetByID(id)) != nullptr) {
Dan Beam 2015/03/31 00:33:49 :_(
Devlin 2015/03/31 16:17:50 Why sad face? I think it actually makes sense, as
Dan Beam 2015/04/22 21:02:37 eh, it's all awkward. whatevs.
+ state = developer::EXTENSION_STATE_DISABLED;
+ } else if (!extension &&
+ (extension =
+ registry->terminated_extensions().GetByID(id)) != nullptr) {
+ state = developer::EXTENSION_STATE_TERMINATED;
+ }
+ scoped_ptr<api::developer_private::ExtensionInfo> info;
+ if (extension)
+ info = CreateExtensionInfo(*extension, state);
+ return info.Pass();
+}
+
ExtensionInfoGenerator::ExtensionInfoList
ExtensionInfoGenerator::CreateExtensionsInfo(bool include_disabled,
bool include_terminated) {

Powered by Google App Engine
This is Rietveld 408576698