Chromium Code Reviews| OLD | NEW |
|---|---|
| 1 // Copyright 2015 The Chromium Authors. All rights reserved. | 1 // Copyright 2015 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_management/task_manager_interface.h" | 5 #include "chrome/browser/task_management/task_manager_interface.h" |
| 6 | 6 |
| 7 #include "chrome/browser/browser_process.h" | |
| 7 #include "chrome/browser/task_management/sampling/task_manager_impl.h" | 8 #include "chrome/browser/task_management/sampling/task_manager_impl.h" |
| 8 #include "chrome/browser/task_management/sampling/task_manager_io_thread_helper. h" | 9 #include "chrome/browser/task_management/sampling/task_manager_io_thread_helper. h" |
| 9 #include "chrome/browser/task_manager/task_manager.h" | |
| 10 #include "chrome/common/chrome_switches.h" | 10 #include "chrome/common/chrome_switches.h" |
| 11 #include "chrome/common/pref_names.h" | |
| 12 #include "components/prefs/pref_registry_simple.h" | |
| 13 #include "components/prefs/pref_service.h" | |
| 11 #include "content/public/browser/browser_thread.h" | 14 #include "content/public/browser/browser_thread.h" |
| 12 | 15 |
| 16 #if defined(OS_MACOSX) | |
| 17 #include "chrome/browser/task_manager/task_manager.h" | |
|
tapted
2016/05/20 00:08:45
This can't be included here - task_manager.h isn't
afakhry
2016/05/20 02:32:50
Done.
| |
| 18 #include "chrome/browser/ui/browser_dialogs.h" | |
| 19 #endif // defined(OS_MACOSX) | |
| 20 | |
| 13 namespace task_management { | 21 namespace task_management { |
| 14 | 22 |
| 15 // static | 23 // static |
| 24 void TaskManagerInterface::RegisterPrefs(PrefRegistrySimple* registry) { | |
| 25 registry->RegisterDictionaryPref(prefs::kTaskManagerWindowPlacement); | |
| 26 registry->RegisterDictionaryPref(prefs::kTaskManagerColumnVisibility); | |
| 27 registry->RegisterBooleanPref(prefs::kTaskManagerEndProcessEnabled, true); | |
| 28 } | |
| 29 | |
| 30 // static | |
| 31 bool TaskManagerInterface::IsEndProcessEnabled() { | |
| 32 PrefService* state = g_browser_process->local_state(); | |
| 33 return !state || state->GetBoolean(prefs::kTaskManagerEndProcessEnabled); | |
| 34 } | |
| 35 | |
| 36 #if defined(OS_MACOSX) | |
| 37 // static | |
| 38 bool TaskManagerInterface::IsNewTaskManagerEnabled() { | |
| 39 return chrome::ToolkitViewsDialogsEnabled(); | |
| 40 } | |
| 41 #endif // defined(OS_MACOSX) | |
| 42 | |
| 43 // static | |
| 16 TaskManagerInterface* TaskManagerInterface::GetTaskManager() { | 44 TaskManagerInterface* TaskManagerInterface::GetTaskManager() { |
| 17 DCHECK_CURRENTLY_ON(content::BrowserThread::UI); | 45 DCHECK_CURRENTLY_ON(content::BrowserThread::UI); |
| 18 | 46 |
| 19 return TaskManagerImpl::GetInstance(); | 47 return TaskManagerImpl::GetInstance(); |
| 20 } | 48 } |
| 21 | 49 |
| 22 // static | 50 // static |
| 23 void TaskManagerInterface::OnRawBytesRead(const net::URLRequest& request, | 51 void TaskManagerInterface::OnRawBytesRead(const net::URLRequest& request, |
| 24 int64_t bytes_read) { | 52 int64_t bytes_read) { |
| 25 DCHECK_CURRENTLY_ON(content::BrowserThread::IO); | 53 DCHECK_CURRENTLY_ON(content::BrowserThread::IO); |
| 26 | 54 |
| 27 if (switches::NewTaskManagerEnabled()) | 55 #if defined(OS_MACOSX) |
| 28 TaskManagerIoThreadHelper::OnRawBytesRead(request, bytes_read); | 56 if (!TaskManagerInterface::IsNewTaskManagerEnabled()) { |
|
tapted
2016/05/20 00:08:45
My suggested fix is in https://codereview.chromium
afakhry
2016/05/20 02:32:50
Done.
| |
| 29 else | |
| 30 TaskManager::GetInstance()->model()->NotifyBytesRead(request, bytes_read); | 57 TaskManager::GetInstance()->model()->NotifyBytesRead(request, bytes_read); |
| 58 return; | |
| 59 } | |
| 60 #endif // defined(OS_MACOSX) | |
| 61 | |
| 62 TaskManagerIoThreadHelper::OnRawBytesRead(request, bytes_read); | |
| 31 } | 63 } |
| 32 | 64 |
| 33 void TaskManagerInterface::AddObserver(TaskManagerObserver* observer) { | 65 void TaskManagerInterface::AddObserver(TaskManagerObserver* observer) { |
| 34 observers_.AddObserver(observer); | 66 observers_.AddObserver(observer); |
| 35 observer->observed_task_manager_ = this; | 67 observer->observed_task_manager_ = this; |
| 36 | 68 |
| 37 ResourceFlagsAdded(observer->desired_resources_flags()); | 69 ResourceFlagsAdded(observer->desired_resources_flags()); |
| 38 | 70 |
| 39 base::TimeDelta current_refresh_time = GetCurrentRefreshTime(); | 71 base::TimeDelta current_refresh_time = GetCurrentRefreshTime(); |
| 40 if (current_refresh_time == base::TimeDelta::Max()) { | 72 if (current_refresh_time == base::TimeDelta::Max()) { |
| (...skipping 98 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 139 } | 171 } |
| 140 | 172 |
| 141 void TaskManagerInterface::ScheduleRefresh(base::TimeDelta refresh_time) { | 173 void TaskManagerInterface::ScheduleRefresh(base::TimeDelta refresh_time) { |
| 142 refresh_timer_->Start(FROM_HERE, | 174 refresh_timer_->Start(FROM_HERE, |
| 143 refresh_time, | 175 refresh_time, |
| 144 base::Bind(&TaskManagerInterface::Refresh, | 176 base::Bind(&TaskManagerInterface::Refresh, |
| 145 base::Unretained(this))); | 177 base::Unretained(this))); |
| 146 } | 178 } |
| 147 | 179 |
| 148 } // namespace task_management | 180 } // namespace task_management |
| OLD | NEW |