OLD | NEW |
1 // Copyright 2016 The Chromium Authors. All rights reserved. | 1 // Copyright 2016 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/task_manager/legacy_task_manager_tester.h" | 5 #include "chrome/browser/task_management/task_manager_tester.h" |
6 | 6 |
7 #include "base/memory/ptr_util.h" | 7 #include "base/memory/ptr_util.h" |
8 #include "chrome/browser/sessions/session_tab_helper.h" | 8 #include "chrome/browser/sessions/session_tab_helper.h" |
| 9 #include "chrome/browser/task_management/task_manager_interface.h" |
9 #include "chrome/browser/task_manager/resource_provider.h" | 10 #include "chrome/browser/task_manager/resource_provider.h" |
10 #include "chrome/browser/task_manager/task_manager.h" | 11 #include "chrome/browser/task_manager/task_manager.h" |
11 #include "chrome/browser/ui/browser_dialogs.h" | 12 #include "chrome/browser/ui/browser_dialogs.h" |
12 #include "chrome/grit/generated_resources.h" | 13 #include "chrome/grit/generated_resources.h" |
13 #include "extensions/strings/grit/extensions_strings.h" | 14 #include "extensions/strings/grit/extensions_strings.h" |
14 | 15 |
15 namespace task_manager { | 16 namespace { |
16 | 17 |
17 class LegacyTaskManagerTester : public task_management::TaskManagerTester, | 18 class LegacyTaskManagerTester : public task_management::TaskManagerTester, |
18 public TaskManagerModelObserver { | 19 public TaskManagerModelObserver { |
19 public: | 20 public: |
20 explicit LegacyTaskManagerTester(const base::Closure& on_resource_change) | 21 explicit LegacyTaskManagerTester(const base::Closure& on_resource_change) |
21 : on_resource_change_(on_resource_change), | 22 : on_resource_change_(on_resource_change), |
22 model_(TaskManager::GetInstance()->model()) { | 23 model_(TaskManager::GetInstance()->model()) { |
23 if (!on_resource_change_.is_null()) | 24 if (!on_resource_change_.is_null()) |
24 model_->AddObserver(this); | 25 model_->AddObserver(this); |
25 } | 26 } |
(...skipping 52 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
78 | 79 |
79 private: | 80 private: |
80 void OnResourceChange() { | 81 void OnResourceChange() { |
81 if (!on_resource_change_.is_null()) | 82 if (!on_resource_change_.is_null()) |
82 on_resource_change_.Run(); | 83 on_resource_change_.Run(); |
83 } | 84 } |
84 base::Closure on_resource_change_; | 85 base::Closure on_resource_change_; |
85 TaskManagerModel* model_; | 86 TaskManagerModel* model_; |
86 }; | 87 }; |
87 | 88 |
88 std::unique_ptr<task_management::TaskManagerTester> | 89 } // namespace |
89 CreateLegacyTaskManagerTester(const base::Closure& callback) { | 90 |
| 91 namespace task_management { |
| 92 |
| 93 // static |
| 94 std::unique_ptr<TaskManagerTester> TaskManagerTester::Create( |
| 95 const base::Closure& callback) { |
| 96 if (TaskManagerInterface::IsNewTaskManagerEnabled()) |
| 97 return TaskManagerTester::CreateDefault(callback); |
90 return base::WrapUnique(new LegacyTaskManagerTester(callback)); | 98 return base::WrapUnique(new LegacyTaskManagerTester(callback)); |
91 } | 99 } |
92 | 100 |
93 } // namespace task_manager | 101 void TaskManagerTester::MaybeRefreshLegacyInstance() { |
| 102 // On Mac, the old task manager might still be used if we are not using mac |
| 103 // views. Refresh() isn't ever needed on the new task manager. |
| 104 if (!TaskManagerInterface::IsNewTaskManagerEnabled()) |
| 105 TaskManager::GetInstance()->model()->Refresh(); |
| 106 } |
| 107 |
| 108 } // namespace task_management |
OLD | NEW |