Index: chrome/common/child_process_info.cc |
diff --git a/chrome/common/child_process_info.cc b/chrome/common/child_process_info.cc |
index 87745787fa50f2047cfc4296ba055dcd3fe4f13f..69122ccd1734113e1352a32209f4cf24a66df3b7 100644 |
--- a/chrome/common/child_process_info.cc |
+++ b/chrome/common/child_process_info.cc |
@@ -16,8 +16,18 @@ |
#include "base/utf_string_conversions.h" |
#include "grit/generated_resources.h" |
+ChildProcessInfo::ChildProcessInfo(ProcessType type, int id) : |
+ type_(type), |
+ renderer_type_(RENDERER_UNKNOWN) { |
+ if (id == -1) |
+ id_ = GenerateChildProcessUniqueId(); |
+ else |
+ id_ = id; |
+} |
+ |
ChildProcessInfo::ChildProcessInfo(const ChildProcessInfo& original) |
: type_(original.type_), |
+ renderer_type_(original.renderer_type_), |
name_(original.name_), |
version_(original.version_), |
id_(original.id_), |
@@ -31,6 +41,7 @@ ChildProcessInfo& ChildProcessInfo::operator=( |
const ChildProcessInfo& original) { |
if (&original != this) { |
type_ = original.type_; |
+ renderer_type_ = original.renderer_type_; |
name_ = original.name_; |
version_ = original.version_; |
id_ = original.id_; |
@@ -39,6 +50,7 @@ ChildProcessInfo& ChildProcessInfo::operator=( |
return *this; |
} |
+// static |
std::string ChildProcessInfo::GetTypeNameInEnglish( |
ChildProcessInfo::ProcessType type) { |
switch (type) { |
@@ -73,6 +85,41 @@ std::string ChildProcessInfo::GetTypeNameInEnglish( |
} |
} |
+// static |
+std::string ChildProcessInfo::GetRendererTypeNameInEnglish( |
+ ChildProcessInfo::RendererProcessType type) { |
+ switch (type) { |
+ case RENDERER_NORMAL: |
+ return "Tab"; |
+ case RENDERER_CHROME: |
+ return "Tab (Chrome)"; |
+ case RENDERER_EXTENSION: |
+ return "Extension"; |
+ case RENDERER_DEVTOOLS: |
+ return "Devtools"; |
+ case RENDERER_INTERSTITIAL: |
+ return "Interstitial"; |
+ case RENDERER_NOTIFICATION: |
+ return "Notification"; |
+ case RENDERER_BACKGROUND_APP: |
+ return "Background App"; |
+ case RENDERER_UNKNOWN: |
+ default: |
+ NOTREACHED() << "Unknown renderer process type!"; |
+ return "Unknown"; |
+ } |
+} |
+ |
+// static |
+std::string ChildProcessInfo::GetFullTypeNameInEnglish( |
+ ChildProcessInfo::ProcessType type, |
+ ChildProcessInfo::RendererProcessType rtype) { |
+ if (type == RENDER_PROCESS) |
+ return GetRendererTypeNameInEnglish(rtype); |
+ return GetTypeNameInEnglish(type); |
+} |
+ |
+ |
string16 ChildProcessInfo::GetLocalizedTitle() const { |
string16 title = WideToUTF16Hack(name_); |
if (type_ == ChildProcessInfo::PLUGIN_PROCESS && title.empty()) |
@@ -124,13 +171,6 @@ string16 ChildProcessInfo::GetLocalizedTitle() const { |
return title; |
} |
-ChildProcessInfo::ChildProcessInfo(ProcessType type, int id) : type_(type) { |
- if (id == -1) |
- id_ = GenerateChildProcessUniqueId(); |
- else |
- id_ = id; |
-} |
- |
std::string ChildProcessInfo::GenerateRandomChannelID(void* instance) { |
// Note: the string must start with the current process id, this is how |
// child processes determine the pid of the parent. |