Chromium Code Reviews| Index: chrome/browser/task_manager/task_manager.cc |
| diff --git a/chrome/browser/task_manager/task_manager.cc b/chrome/browser/task_manager/task_manager.cc |
| index 668067f923adc94848b12e207ec7d7eba97c7a25..5bbf8f03975146018dd72b8702487a1699083be0 100644 |
| --- a/chrome/browser/task_manager/task_manager.cc |
| +++ b/chrome/browser/task_manager/task_manager.cc |
| @@ -23,15 +23,15 @@ |
| #include "chrome/browser/extensions/extension_process_manager.h" |
| #include "chrome/browser/extensions/extension_system.h" |
| #include "chrome/browser/profiles/profile_manager.h" |
| -#include "chrome/browser/task_manager/task_manager_background_resource_provider.h" |
| -#include "chrome/browser/task_manager/task_manager_browser_process_resource_provider.h" |
| -#include "chrome/browser/task_manager/task_manager_child_process_resource_provider.h" |
| -#include "chrome/browser/task_manager/task_manager_extension_process_resource_provider.h" |
| -#include "chrome/browser/task_manager/task_manager_guest_resource_provider.h" |
| -#include "chrome/browser/task_manager/task_manager_notification_resource_provider.h" |
| -#include "chrome/browser/task_manager/task_manager_panel_resource_provider.h" |
| -#include "chrome/browser/task_manager/task_manager_tab_contents_resource_provider.h" |
| -#include "chrome/browser/task_manager/task_manager_worker_resource_provider.h" |
| +#include "chrome/browser/task_manager/background_resource_provider.h" |
| +#include "chrome/browser/task_manager/browser_process_resource_provider.h" |
| +#include "chrome/browser/task_manager/child_process_resource_provider.h" |
| +#include "chrome/browser/task_manager/extension_process_resource_provider.h" |
| +#include "chrome/browser/task_manager/guest_resource_provider.h" |
| +#include "chrome/browser/task_manager/notification_resource_provider.h" |
| +#include "chrome/browser/task_manager/panel_resource_provider.h" |
| +#include "chrome/browser/task_manager/tab_contents_resource_provider.h" |
| +#include "chrome/browser/task_manager/worker_resource_provider.h" |
| #include "chrome/browser/ui/browser_finder.h" |
| #include "chrome/browser/ui/browser_list.h" |
| #include "chrome/browser/ui/browser_navigator.h" |
| @@ -55,10 +55,6 @@ |
| #include "ui/base/text/bytes_formatting.h" |
| #include "ui/gfx/image/image_skia.h" |
| -#if defined(OS_WIN) |
| -#include "chrome/browser/task_manager/task_manager_os_resources_win.h" |
| -#endif |
| - |
| using content::BrowserThread; |
| using content::OpenURLParams; |
| using content::Referrer; |
| @@ -220,26 +216,26 @@ TaskManagerModel::TaskManagerModel(TaskManager* task_manager) |
| goat_salt_(base::RandUint64()), |
| last_unique_id_(0) { |
| AddResourceProvider( |
| - new TaskManagerBrowserProcessResourceProvider(task_manager)); |
| + new task_manager::BrowserProcessResourceProvider(task_manager)); |
| AddResourceProvider( |
| - new TaskManagerBackgroundContentsResourceProvider(task_manager)); |
| - AddResourceProvider(new TaskManagerTabContentsResourceProvider(task_manager)); |
| - AddResourceProvider(new TaskManagerPanelResourceProvider(task_manager)); |
| + new task_manager::BackgroundContentsResourceProvider(task_manager)); |
| AddResourceProvider( |
| - new TaskManagerChildProcessResourceProvider(task_manager)); |
| + new task_manager::TabContentsResourceProvider(task_manager)); |
| + AddResourceProvider(new task_manager::PanelResourceProvider(task_manager)); |
| AddResourceProvider( |
| - new TaskManagerExtensionProcessResourceProvider(task_manager)); |
| + new task_manager::ChildProcessResourceProvider(task_manager)); |
| AddResourceProvider( |
| - new TaskManagerGuestResourceProvider(task_manager)); |
| + new task_manager::ExtensionProcessResourceProvider(task_manager)); |
| + AddResourceProvider(new task_manager::GuestResourceProvider(task_manager)); |
| #if defined(ENABLE_NOTIFICATIONS) |
| TaskManager::ResourceProvider* provider = |
| - TaskManagerNotificationResourceProvider::Create(task_manager); |
| + task_manager::NotificationResourceProvider::Create(task_manager); |
| if (provider) |
| AddResourceProvider(provider); |
| #endif |
| - AddResourceProvider(new TaskManagerWorkerResourceProvider(task_manager)); |
| + AddResourceProvider(new task_manager::WorkerResourceProvider(task_manager)); |
| } |
| void TaskManagerModel::AddObserver(TaskManagerModelObserver* observer) { |
| @@ -547,6 +543,44 @@ bool TaskManagerModel::GetPhysicalMemory(int index, size_t* result) const { |
| return true; |
| } |
| +#if defined(OS_WIN) |
| +namespace { |
|
yoshiki
2013/05/20 04:50:02
Utility methods should be placed at the top. We al
peria
2013/05/20 05:39:04
Done.
|
| +void GetWinGDIHandles(base::ProcessHandle process, |
| + size_t* current, |
| + size_t* peak) { |
| + *current = 0; |
| + *peak = 0; |
| + // Get a handle to |process| that has PROCESS_QUERY_INFORMATION rights. |
| + HANDLE current_process = GetCurrentProcess(); |
| + HANDLE process_with_query_rights; |
| + if (DuplicateHandle(current_process, process, current_process, |
| + &process_with_query_rights, PROCESS_QUERY_INFORMATION, |
| + false, 0)) { |
| + *current = GetGuiResources(process_with_query_rights, GR_GDIOBJECTS); |
| + *peak = GetGuiResources(process_with_query_rights, GR_GDIOBJECTS_PEAK); |
| + CloseHandle(process_with_query_rights); |
| + } |
| +} |
| + |
| +void GetWinUSERHandles(base::ProcessHandle process, |
|
yoshiki
2013/05/20 04:50:02
ditto
peria
2013/05/20 05:39:04
Done.
|
| + size_t* current, |
| + size_t* peak) { |
| + *current = 0; |
| + *peak = 0; |
| + // Get a handle to |process| that has PROCESS_QUERY_INFORMATION rights. |
| + HANDLE current_process = GetCurrentProcess(); |
| + HANDLE process_with_query_rights; |
| + if (DuplicateHandle(current_process, process, current_process, |
| + &process_with_query_rights, PROCESS_QUERY_INFORMATION, |
| + false, 0)) { |
| + *current = GetGuiResources(process_with_query_rights, GR_USEROBJECTS); |
| + *peak = GetGuiResources(process_with_query_rights, GR_USEROBJECTS_PEAK); |
| + CloseHandle(process_with_query_rights); |
| + } |
| +} |
| +} // namespace |
| +#endif |
| + |
| void TaskManagerModel::GetGDIHandles(int index, |
| size_t* current, |
| size_t* peak) const { |