OLD | NEW |
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2012 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/ui/browser_list.h" | 5 #include "chrome/browser/ui/browser_list.h" |
6 | 6 |
7 #include <algorithm> | 7 #include <algorithm> |
8 | 8 |
9 #include "base/auto_reset.h" | 9 #include "base/auto_reset.h" |
10 #include "base/logging.h" | 10 #include "base/logging.h" |
| 11 #include "base/metrics/user_metrics.h" |
11 #include "chrome/browser/browser_process.h" | 12 #include "chrome/browser/browser_process.h" |
12 #include "chrome/browser/browser_shutdown.h" | 13 #include "chrome/browser/browser_shutdown.h" |
13 #include "chrome/browser/chrome_notification_types.h" | 14 #include "chrome/browser/chrome_notification_types.h" |
14 #include "chrome/browser/lifetime/application_lifetime.h" | 15 #include "chrome/browser/lifetime/application_lifetime.h" |
15 #include "chrome/browser/profiles/profile.h" | 16 #include "chrome/browser/profiles/profile.h" |
16 #include "chrome/browser/ui/browser.h" | 17 #include "chrome/browser/ui/browser.h" |
17 #include "chrome/browser/ui/browser_finder.h" | 18 #include "chrome/browser/ui/browser_finder.h" |
18 #include "chrome/browser/ui/browser_list_observer.h" | 19 #include "chrome/browser/ui/browser_list_observer.h" |
19 #include "chrome/browser/ui/browser_window.h" | 20 #include "chrome/browser/ui/browser_window.h" |
20 #include "content/public/browser/notification_service.h" | 21 #include "content/public/browser/notification_service.h" |
21 #include "content/public/browser/user_metrics.h" | |
22 | 22 |
23 using base::UserMetricsAction; | 23 using base::UserMetricsAction; |
24 using content::WebContents; | 24 using content::WebContents; |
25 | 25 |
26 namespace { | 26 namespace { |
27 | 27 |
28 BrowserList::BrowserVector GetBrowsersToClose(Profile* profile) { | 28 BrowserList::BrowserVector GetBrowsersToClose(Profile* profile) { |
29 BrowserList::BrowserVector browsers_to_close; | 29 BrowserList::BrowserVector browsers_to_close; |
30 for (auto* browser : *BrowserList::GetInstance()) { | 30 for (auto* browser : *BrowserList::GetInstance()) { |
31 if (browser->profile()->GetOriginalProfile() == | 31 if (browser->profile()->GetOriginalProfile() == |
(...skipping 194 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
226 | 226 |
227 Browser* new_last_active = instance->GetLastActive(); | 227 Browser* new_last_active = instance->GetLastActive(); |
228 if (old_last_active != new_last_active) { | 228 if (old_last_active != new_last_active) { |
229 for (chrome::BrowserListObserver& observer : observers_.Get()) | 229 for (chrome::BrowserListObserver& observer : observers_.Get()) |
230 observer.OnBrowserSetLastActive(new_last_active); | 230 observer.OnBrowserSetLastActive(new_last_active); |
231 } | 231 } |
232 } | 232 } |
233 | 233 |
234 // static | 234 // static |
235 void BrowserList::SetLastActive(Browser* browser) { | 235 void BrowserList::SetLastActive(Browser* browser) { |
236 content::RecordAction(UserMetricsAction("ActiveBrowserChanged")); | 236 base::RecordAction(UserMetricsAction("ActiveBrowserChanged")); |
237 | 237 |
238 RemoveBrowserFrom(browser, &GetInstance()->last_active_browsers_); | 238 RemoveBrowserFrom(browser, &GetInstance()->last_active_browsers_); |
239 GetInstance()->last_active_browsers_.push_back(browser); | 239 GetInstance()->last_active_browsers_.push_back(browser); |
240 | 240 |
241 for (chrome::BrowserListObserver& observer : observers_.Get()) | 241 for (chrome::BrowserListObserver& observer : observers_.Get()) |
242 observer.OnBrowserSetLastActive(browser); | 242 observer.OnBrowserSetLastActive(browser); |
243 } | 243 } |
244 | 244 |
245 // static | 245 // static |
246 void BrowserList::NotifyBrowserNoLongerActive(Browser* browser) { | 246 void BrowserList::NotifyBrowserNoLongerActive(Browser* browser) { |
(...skipping 31 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
278 } | 278 } |
279 | 279 |
280 // static | 280 // static |
281 void BrowserList::RemoveBrowserFrom(Browser* browser, | 281 void BrowserList::RemoveBrowserFrom(Browser* browser, |
282 BrowserVector* browser_list) { | 282 BrowserVector* browser_list) { |
283 BrowserVector::iterator remove_browser = | 283 BrowserVector::iterator remove_browser = |
284 std::find(browser_list->begin(), browser_list->end(), browser); | 284 std::find(browser_list->begin(), browser_list->end(), browser); |
285 if (remove_browser != browser_list->end()) | 285 if (remove_browser != browser_list->end()) |
286 browser_list->erase(remove_browser); | 286 browser_list->erase(remove_browser); |
287 } | 287 } |
OLD | NEW |