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

Side by Side Diff: chrome/browser/browser_about_handler.cc

Issue 5968008: Update file version info/memory details/process utils to use string16.... (Closed) Base URL: svn://chrome-svn/chrome/trunk/src/
Patch Set: '' Created 9 years, 12 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 unified diff | Download patch | Annotate | Revision Log
OLDNEW
1 // Copyright (c) 2010 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2010 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #include "chrome/browser/browser_about_handler.h" 5 #include "chrome/browser/browser_about_handler.h"
6 6
7 #include <algorithm> 7 #include <algorithm>
8 #include <string> 8 #include <string>
9 #include <vector> 9 #include <vector>
10 10
(...skipping 818 matching lines...) Expand 10 before | Expand all | Expand 10 after
829 829
830 // Bind metrics to dictionary. 830 // Bind metrics to dictionary.
831 data->SetInteger("ws_priv", static_cast<int>(info->working_set.priv)); 831 data->SetInteger("ws_priv", static_cast<int>(info->working_set.priv));
832 data->SetInteger("ws_shareable", 832 data->SetInteger("ws_shareable",
833 static_cast<int>(info->working_set.shareable)); 833 static_cast<int>(info->working_set.shareable));
834 data->SetInteger("ws_shared", static_cast<int>(info->working_set.shared)); 834 data->SetInteger("ws_shared", static_cast<int>(info->working_set.shared));
835 data->SetInteger("comm_priv", static_cast<int>(info->committed.priv)); 835 data->SetInteger("comm_priv", static_cast<int>(info->committed.priv));
836 data->SetInteger("comm_map", static_cast<int>(info->committed.mapped)); 836 data->SetInteger("comm_map", static_cast<int>(info->committed.mapped));
837 data->SetInteger("comm_image", static_cast<int>(info->committed.image)); 837 data->SetInteger("comm_image", static_cast<int>(info->committed.image));
838 data->SetInteger("pid", info->pid); 838 data->SetInteger("pid", info->pid);
839 data->SetString("version", WideToUTF16Hack(info->version)); 839 data->SetString("version", info->version);
840 data->SetInteger("processes", info->num_processes); 840 data->SetInteger("processes", info->num_processes);
841 } 841 }
842 842
843 // Helper for AboutMemory to append memory usage information for all 843 // Helper for AboutMemory to append memory usage information for all
844 // sub-processes (i.e. renderers, plugins) used by Chrome. 844 // sub-processes (i.e. renderers, plugins) used by Chrome.
845 void AboutMemoryHandler::AppendProcess(ListValue* child_data, 845 void AboutMemoryHandler::AppendProcess(ListValue* child_data,
846 ProcessMemoryInformation* info) { 846 ProcessMemoryInformation* info) {
847 DCHECK(child_data && info); 847 DCHECK(child_data && info);
848 848
849 // Append a new DictionaryValue for this renderer to our list. 849 // Append a new DictionaryValue for this renderer to our list.
850 DictionaryValue* child = new DictionaryValue(); 850 DictionaryValue* child = new DictionaryValue();
851 child_data->Append(child); 851 child_data->Append(child);
852 BindProcessMetrics(child, info); 852 BindProcessMetrics(child, info);
853 853
854 std::string child_label(ChildProcessInfo::GetTypeNameInEnglish(info->type)); 854 std::string child_label(ChildProcessInfo::GetTypeNameInEnglish(info->type));
855 if (info->is_diagnostics) 855 if (info->is_diagnostics)
856 child_label.append(" (diagnostics)"); 856 child_label.append(" (diagnostics)");
857 child->SetString("child_name", child_label); 857 child->SetString("child_name", child_label);
858 ListValue* titles = new ListValue(); 858 ListValue* titles = new ListValue();
859 child->Set("titles", titles); 859 child->Set("titles", titles);
860 for (size_t i = 0; i < info->titles.size(); ++i) 860 for (size_t i = 0; i < info->titles.size(); ++i)
861 titles->Append(new StringValue(WideToUTF16Hack(info->titles[i]))); 861 titles->Append(new StringValue(info->titles[i]));
862 } 862 }
863 863
864 864
865 void AboutMemoryHandler::OnDetailsAvailable() { 865 void AboutMemoryHandler::OnDetailsAvailable() {
866 // the root of the JSON hierarchy for about:memory jstemplate 866 // the root of the JSON hierarchy for about:memory jstemplate
867 DictionaryValue root; 867 DictionaryValue root;
868 ListValue* browsers = new ListValue(); 868 ListValue* browsers = new ListValue();
869 root.Set("browsers", browsers); 869 root.Set("browsers", browsers);
870 870
871 const std::vector<ProcessData>& browser_processes = processes(); 871 const std::vector<ProcessData>& browser_processes = processes();
(...skipping 18 matching lines...) Expand all
890 aggregate.working_set.shareable += iterator->working_set.shareable; 890 aggregate.working_set.shareable += iterator->working_set.shareable;
891 aggregate.committed.priv += iterator->committed.priv; 891 aggregate.committed.priv += iterator->committed.priv;
892 aggregate.committed.mapped += iterator->committed.mapped; 892 aggregate.committed.mapped += iterator->committed.mapped;
893 aggregate.committed.image += iterator->committed.image; 893 aggregate.committed.image += iterator->committed.image;
894 aggregate.num_processes++; 894 aggregate.num_processes++;
895 } 895 }
896 ++iterator; 896 ++iterator;
897 } 897 }
898 DictionaryValue* browser_data = new DictionaryValue(); 898 DictionaryValue* browser_data = new DictionaryValue();
899 browsers->Append(browser_data); 899 browsers->Append(browser_data);
900 browser_data->SetString("name", 900 browser_data->SetString("name", browser_processes[index].name);
901 WideToUTF16Hack(browser_processes[index].name));
902 901
903 BindProcessMetrics(browser_data, &aggregate); 902 BindProcessMetrics(browser_data, &aggregate);
904 903
905 // We log memory info as we record it. 904 // We log memory info as we record it.
906 if (log_string.length() > 0) 905 if (log_string.length() > 0)
907 log_string.append(L", "); 906 log_string.append(L", ");
908 log_string.append(browser_processes[index].name); 907 log_string.append(UTF16ToWide(browser_processes[index].name));
909 log_string.append(L", "); 908 log_string.append(L", ");
910 log_string.append(UTF8ToWide( 909 log_string.append(UTF8ToWide(
911 base::Int64ToString(aggregate.working_set.priv))); 910 base::Int64ToString(aggregate.working_set.priv)));
912 log_string.append(L", "); 911 log_string.append(L", ");
913 log_string.append(UTF8ToWide( 912 log_string.append(UTF8ToWide(
914 base::Int64ToString(aggregate.working_set.shared))); 913 base::Int64ToString(aggregate.working_set.shared)));
915 log_string.append(L", "); 914 log_string.append(L", ");
916 log_string.append(UTF8ToWide( 915 log_string.append(UTF8ToWide(
917 base::Int64ToString(aggregate.working_set.shareable))); 916 base::Int64ToString(aggregate.working_set.shareable)));
918 } 917 }
919 if (log_string.length() > 0) 918 if (log_string.length() > 0)
920 VLOG(1) << "memory: " << log_string; 919 VLOG(1) << "memory: " << log_string;
921 920
922 // Set the browser & renderer detailed process data. 921 // Set the browser & renderer detailed process data.
923 DictionaryValue* browser_data = new DictionaryValue(); 922 DictionaryValue* browser_data = new DictionaryValue();
924 root.Set("browzr_data", browser_data); 923 root.Set("browzr_data", browser_data);
925 ListValue* child_data = new ListValue(); 924 ListValue* child_data = new ListValue();
926 root.Set("child_data", child_data); 925 root.Set("child_data", child_data);
927 926
928 ProcessData process = browser_processes[0]; // Chrome is the first browser. 927 ProcessData process = browser_processes[0]; // Chrome is the first browser.
929 root.SetString("current_browser_name", WideToUTF16Hack(process.name)); 928 root.SetString("current_browser_name", process.name);
930 929
931 for (size_t index = 0; index < process.processes.size(); index++) { 930 for (size_t index = 0; index < process.processes.size(); index++) {
932 if (process.processes[index].type == ChildProcessInfo::BROWSER_PROCESS) 931 if (process.processes[index].type == ChildProcessInfo::BROWSER_PROCESS)
933 BindProcessMetrics(browser_data, &process.processes[index]); 932 BindProcessMetrics(browser_data, &process.processes[index]);
934 else 933 else
935 AppendProcess(child_data, &process.processes[index]); 934 AppendProcess(child_data, &process.processes[index]);
936 } 935 }
937 936
938 root.SetBoolean("show_other_browsers", 937 root.SetBoolean("show_other_browsers",
939 browser_defaults::kShowOtherBrowsersInAboutMemory); 938 browser_defaults::kShowOtherBrowsersInAboutMemory);
(...skipping 175 matching lines...) Expand 10 before | Expand all | Expand 10 after
1115 // Run the dialog. This will re-use the existing one if it's already up. 1114 // Run the dialog. This will re-use the existing one if it's already up.
1116 AboutIPCDialog::RunDialog(); 1115 AboutIPCDialog::RunDialog();
1117 return true; 1116 return true;
1118 } 1117 }
1119 #endif 1118 #endif
1120 1119
1121 #endif // OFFICIAL_BUILD 1120 #endif // OFFICIAL_BUILD
1122 1121
1123 return false; 1122 return false;
1124 } 1123 }
OLDNEW
« no previous file with comments | « chrome/browser/automation/testing_automation_provider.cc ('k') | chrome/browser/memory_details.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698