summaryrefslogtreecommitdiffstats
path: root/chrome/browser/task_manager.cc
diff options
context:
space:
mode:
authorphajdan.jr@chromium.org <phajdan.jr@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2009-07-15 20:32:51 +0000
committerphajdan.jr@chromium.org <phajdan.jr@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2009-07-15 20:32:51 +0000
commita754453c13d397bb9b49a0bbb61e276fa0190365 (patch)
tree33bc812a6389710d9f5ca68b95bfdb149609b838 /chrome/browser/task_manager.cc
parent30729c347ccfc3773a7e0bece475632cbe59ad60 (diff)
downloadchromium_src-a754453c13d397bb9b49a0bbb61e276fa0190365.zip
chromium_src-a754453c13d397bb9b49a0bbb61e276fa0190365.tar.gz
chromium_src-a754453c13d397bb9b49a0bbb61e276fa0190365.tar.bz2
Add more browser tests for Task Manager.
TEST=Covered by browser_tests. http://crbug.com/12127 Review URL: http://codereview.chromium.org/155433 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@20786 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'chrome/browser/task_manager.cc')
-rw-r--r--chrome/browser/task_manager.cc29
1 files changed, 17 insertions, 12 deletions
diff --git a/chrome/browser/task_manager.cc b/chrome/browser/task_manager.cc
index d80d51c..b7de95e 100644
--- a/chrome/browser/task_manager.cc
+++ b/chrome/browser/task_manager.cc
@@ -44,8 +44,7 @@ static int ValueCompare(T value1, T value2) {
int TaskManagerModel::goats_teleported_ = 0;
TaskManagerModel::TaskManagerModel(TaskManager* task_manager)
- : observer_(NULL),
- ui_loop_(MessageLoop::current()),
+ : ui_loop_(MessageLoop::current()),
update_state_(IDLE) {
TaskManagerBrowserProcessResourceProvider* browser_provider =
@@ -77,8 +76,12 @@ int TaskManagerModel::ResourceCount() const {
return resources_.size();
}
-void TaskManagerModel::SetObserver(TaskManagerModelObserver* observer) {
- observer_ = observer;
+void TaskManagerModel::AddObserver(TaskManagerModelObserver* observer) {
+ observer_list_.AddObserver(observer);
+}
+
+void TaskManagerModel::RemoveObserver(TaskManagerModelObserver* observer) {
+ observer_list_.RemoveObserver(observer);
}
std::wstring TaskManagerModel::GetResourceTitle(int index) const {
@@ -443,8 +446,8 @@ void TaskManagerModel::AddResource(TaskManager::Resource* resource) {
}
// Notify the table that the contents have changed for it to redraw.
- if (observer_)
- observer_->OnItemsAdded(new_entry_index, 1);
+ FOR_EACH_OBSERVER(TaskManagerModelObserver, observer_list_,
+ OnItemsAdded(new_entry_index, 1));
}
void TaskManagerModel::RemoveResource(TaskManager::Resource* resource) {
@@ -496,8 +499,8 @@ void TaskManagerModel::RemoveResource(TaskManager::Resource* resource) {
displayed_network_usage_map_.erase(net_iter);
// Notify the table that the contents have changed.
- if (observer_)
- observer_->OnItemsRemoved(index, 1);
+ FOR_EACH_OBSERVER(TaskManagerModelObserver, observer_list_,
+ OnItemsRemoved(index, 1));
}
void TaskManagerModel::Clear() {
@@ -524,8 +527,8 @@ void TaskManagerModel::Clear() {
current_byte_count_map_.clear();
displayed_network_usage_map_.clear();
- if (observer_)
- observer_->OnItemsRemoved(0, size);
+ FOR_EACH_OBSERVER(TaskManagerModelObserver, observer_list_,
+ OnItemsRemoved(0, size));
}
}
@@ -571,8 +574,10 @@ void TaskManagerModel::Refresh() {
// Then we reset the current byte count.
iter->second = 0;
}
- if (!resources_.empty() && observer_)
- observer_->OnItemsChanged(0, ResourceCount());
+ if (!resources_.empty()) {
+ FOR_EACH_OBSERVER(TaskManagerModelObserver, observer_list_,
+ OnItemsChanged(0, ResourceCount()));
+ }
// Schedule the next update.
MessageLoop::current()->PostDelayedTask(FROM_HERE,