| 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 #ifndef CHROME_BROWSER_UI_BROWSER_LIST_H_ | 5 #ifndef CHROME_BROWSER_UI_BROWSER_LIST_H_ |
| 6 #define CHROME_BROWSER_UI_BROWSER_LIST_H_ | 6 #define CHROME_BROWSER_UI_BROWSER_LIST_H_ |
| 7 | 7 |
| 8 #include <stddef.h> | 8 #include <stddef.h> |
| 9 | 9 |
| 10 #include <vector> | 10 #include <vector> |
| (...skipping 55 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 66 // Adds and removes |observer| from the observer list for all desktops. | 66 // Adds and removes |observer| from the observer list for all desktops. |
| 67 // Observers are responsible for making sure the notifying browser is relevant | 67 // Observers are responsible for making sure the notifying browser is relevant |
| 68 // to them (e.g., on the specific desktop they care about if any). | 68 // to them (e.g., on the specific desktop they care about if any). |
| 69 static void AddObserver(chrome::BrowserListObserver* observer); | 69 static void AddObserver(chrome::BrowserListObserver* observer); |
| 70 static void RemoveObserver(chrome::BrowserListObserver* observer); | 70 static void RemoveObserver(chrome::BrowserListObserver* observer); |
| 71 | 71 |
| 72 // Called by Browser objects when their window is activated (focused). This | 72 // Called by Browser objects when their window is activated (focused). This |
| 73 // allows us to determine what the last active Browser was on each desktop. | 73 // allows us to determine what the last active Browser was on each desktop. |
| 74 static void SetLastActive(Browser* browser); | 74 static void SetLastActive(Browser* browser); |
| 75 | 75 |
| 76 static void NotifyBrowserNoLongerActive(Browser* browser); |
| 77 |
| 76 // Closes all browsers for |profile| across all desktops. | 78 // Closes all browsers for |profile| across all desktops. |
| 77 // TODO(mlerman): Move the Profile Deletion flow to use the overloaded | 79 // TODO(mlerman): Move the Profile Deletion flow to use the overloaded |
| 78 // version of this method with a callback, then remove this method. | 80 // version of this method with a callback, then remove this method. |
| 79 static void CloseAllBrowsersWithProfile(Profile* profile); | 81 static void CloseAllBrowsersWithProfile(Profile* profile); |
| 80 | 82 |
| 81 // Closes all browsers for |profile| across all desktops. Uses | 83 // Closes all browsers for |profile| across all desktops. Uses |
| 82 // TryToCloseBrowserList() to do the actual closing and trigger any | 84 // TryToCloseBrowserList() to do the actual closing and trigger any |
| 83 // OnBeforeUnload events. If all OnBeforeUnload events are confirmed, | 85 // OnBeforeUnload events. If all OnBeforeUnload events are confirmed, |
| 84 // |on_close_success| is called. | 86 // |on_close_success| is called. |
| 85 static void CloseAllBrowsersWithProfile( | 87 static void CloseAllBrowsersWithProfile( |
| (...skipping 47 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 133 // removal across all BrowserLists. | 135 // removal across all BrowserLists. |
| 134 static base::LazyInstance< | 136 static base::LazyInstance< |
| 135 base::ObserverList<chrome::BrowserListObserver>>::Leaky observers_; | 137 base::ObserverList<chrome::BrowserListObserver>>::Leaky observers_; |
| 136 | 138 |
| 137 static BrowserList* instance_; | 139 static BrowserList* instance_; |
| 138 | 140 |
| 139 DISALLOW_COPY_AND_ASSIGN(BrowserList); | 141 DISALLOW_COPY_AND_ASSIGN(BrowserList); |
| 140 }; | 142 }; |
| 141 | 143 |
| 142 #endif // CHROME_BROWSER_UI_BROWSER_LIST_H_ | 144 #endif // CHROME_BROWSER_UI_BROWSER_LIST_H_ |
| OLD | NEW |