diff options
author | phajdan.jr@chromium.org <phajdan.jr@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2009-06-13 10:09:06 +0000 |
---|---|---|
committer | phajdan.jr@chromium.org <phajdan.jr@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2009-06-13 10:09:06 +0000 |
commit | 94fe52ee5bdf2d2feaa771537164909250ec174f (patch) | |
tree | 6af1bca5f56fe7c28384172d71fdc5942e2b3487 /chrome/browser/task_manager_resource_providers.h | |
parent | 5a2721f67bee6843d521afa0ddea2034798372ef (diff) | |
download | chromium_src-94fe52ee5bdf2d2feaa771537164909250ec174f.zip chromium_src-94fe52ee5bdf2d2feaa771537164909250ec174f.tar.gz chromium_src-94fe52ee5bdf2d2feaa771537164909250ec174f.tar.bz2 |
Make extensions visible in the Task Manager.
- register for notifications when extension hosts are created/destroyed
- collapse extension tabs into just one table row, also for tabs opened while the task manager stays open
TEST=Start chrome.exe with --enable-extensions. Install the buildbot monitor extension. Open the task manager. You should see an extension process.
http://crbug.com/12127
Review URL: http://codereview.chromium.org/125047
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@18352 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'chrome/browser/task_manager_resource_providers.h')
-rw-r--r-- | chrome/browser/task_manager_resource_providers.h | 12 |
1 files changed, 11 insertions, 1 deletions
diff --git a/chrome/browser/task_manager_resource_providers.h b/chrome/browser/task_manager_resource_providers.h index a5ee44d..e9640f0 100644 --- a/chrome/browser/task_manager_resource_providers.h +++ b/chrome/browser/task_manager_resource_providers.h @@ -205,7 +205,8 @@ class TaskManagerExtensionProcessResource : public TaskManager::Resource { }; class TaskManagerExtensionProcessResourceProvider - : public TaskManager::ResourceProvider { + : public TaskManager::ResourceProvider, + public NotificationObserver { public: explicit TaskManagerExtensionProcessResourceProvider( TaskManager* task_manager); @@ -217,8 +218,14 @@ class TaskManagerExtensionProcessResourceProvider virtual void StartUpdating(); virtual void StopUpdating(); + // NotificationObserver method: + virtual void Observe(NotificationType type, + const NotificationSource& source, + const NotificationDetails& details); + private: void AddToTaskManager(ExtensionHost* extension_host); + void RemoveFromTaskManager(ExtensionHost* extension_host); TaskManager* task_manager_; @@ -229,6 +236,9 @@ class TaskManagerExtensionProcessResourceProvider // byte read notifications). std::map<int, TaskManagerExtensionProcessResource*> pid_to_resources_; + // A scoped container for notification registries. + NotificationRegistrar registrar_; + bool updating_; DISALLOW_COPY_AND_ASSIGN(TaskManagerExtensionProcessResourceProvider); |