| Index: chrome/browser/ui/webui/task_manager_handler.cc
|
| diff --git a/chrome/browser/ui/webui/task_manager_handler.cc b/chrome/browser/ui/webui/task_manager_handler.cc
|
| index 856179e9610f05f14d99b44b385c473574f02882..0423ea05a142fea84877c7b6bc77ec9f51e10bea 100644
|
| --- a/chrome/browser/ui/webui/task_manager_handler.cc
|
| +++ b/chrome/browser/ui/webui/task_manager_handler.cc
|
| @@ -120,6 +120,8 @@ static Value* CreateColumnValue(const TaskManagerModel* tm,
|
| }
|
| if (column_name == "canInspect")
|
| return Value::CreateBooleanValue(tm->CanInspect(i));
|
| + if (column_name == "canActivate")
|
| + return Value::CreateBooleanValue(tm->CanActivate(i));
|
|
|
| NOTREACHED();
|
| return NULL;
|
| @@ -189,6 +191,7 @@ static DictionaryValue* CreateTaskGroupValue(const TaskManagerModel* tm,
|
| CreateGroupColumnList(tm, "goatsTeleported", index, length, val);
|
| CreateGroupColumnList(tm, "goatsTeleportedValue", index, length, val);
|
| CreateGroupColumnList(tm, "canInspect", index, length, val);
|
| + CreateGroupColumnList(tm, "canActivate", index, length, val);
|
|
|
| return val;
|
| }
|
| @@ -310,6 +313,9 @@ void TaskManagerHandler::RegisterMessages() {
|
| web_ui_->RegisterMessageCallback("inspect",
|
| base::Bind(&TaskManagerHandler::HandleInspect,
|
| base::Unretained(this)));
|
| + web_ui_->RegisterMessageCallback("activatePage",
|
| + base::Bind(&TaskManagerHandler::HandleActivatePage,
|
| + base::Unretained(this)));
|
| web_ui_->RegisterMessageCallback("openAboutMemory",
|
| base::Bind(&TaskManagerHandler::OpenAboutMemory,
|
| base::Unretained(this)));
|
| @@ -351,6 +357,25 @@ void TaskManagerHandler::HandleKillProcess(const ListValue* indexes) {
|
| }
|
| }
|
|
|
| +void TaskManagerHandler::HandleActivatePage(const ListValue* resource_index) {
|
| + for (ListValue::const_iterator i = resource_index->begin();
|
| + i != resource_index->end(); ++i) {
|
| + int unique_id = parseIndex(*i);
|
| + if (unique_id == -1)
|
| + continue;
|
| +
|
| + for (int resource_index = 0; resource_index < model_->ResourceCount();
|
| + ++resource_index) {
|
| + if (model_->GetResourceUniqueId(resource_index) == unique_id) {
|
| + task_manager_->ActivateProcess(resource_index);
|
| + break;
|
| + }
|
| + }
|
| +
|
| + break;
|
| + }
|
| +}
|
| +
|
| void TaskManagerHandler::HandleInspect(const ListValue* resource_index) {
|
| for (ListValue::const_iterator i = resource_index->begin();
|
| i != resource_index->end(); ++i) {
|
|
|