OLD | NEW |
1 // Copyright (c) 2013 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2013 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_ASH_SESSION_STATE_DELEGATE_CHROMEOS_H_ | 5 #ifndef CHROME_BROWSER_UI_ASH_SESSION_STATE_DELEGATE_CHROMEOS_H_ |
6 #define CHROME_BROWSER_UI_ASH_SESSION_STATE_DELEGATE_CHROMEOS_H_ | 6 #define CHROME_BROWSER_UI_ASH_SESSION_STATE_DELEGATE_CHROMEOS_H_ |
7 | 7 |
8 #include "ash/session_state_delegate.h" | 8 #include "ash/session_state_delegate.h" |
9 #include "base/basictypes.h" | 9 #include "base/basictypes.h" |
10 #include "base/compiler_specific.h" | 10 #include "base/compiler_specific.h" |
11 #include "base/observer_list.h" | 11 #include "base/observer_list.h" |
12 #include "chrome/browser/chromeos/login/user_manager.h" | 12 #include "chrome/browser/chromeos/login/user_manager.h" |
13 | 13 |
14 namespace ash { | 14 namespace ash { |
15 class SessionStateObserver; | 15 class SessionStateObserver; |
16 } // namespace ash | 16 } // namespace ash |
17 | 17 |
18 class SessionStateDelegateChromeos | 18 class SessionStateDelegateChromeos |
19 : public ash::SessionStateDelegate, | 19 : public ash::SessionStateDelegate, |
20 public chromeos::UserManager::UserSessionStateObserver { | 20 public chromeos::UserManager::UserSessionStateObserver { |
21 public: | 21 public: |
22 SessionStateDelegateChromeos(); | 22 SessionStateDelegateChromeos(); |
23 virtual ~SessionStateDelegateChromeos(); | 23 virtual ~SessionStateDelegateChromeos(); |
24 | 24 |
25 // ash::SessionStateDelegate: | 25 // ash::SessionStateDelegate: |
| 26 virtual content::BrowserContext* GetBrowserContextByIndex( |
| 27 ash::MultiProfileIndex index) OVERRIDE; |
26 virtual int GetMaximumNumberOfLoggedInUsers() const OVERRIDE; | 28 virtual int GetMaximumNumberOfLoggedInUsers() const OVERRIDE; |
27 virtual int NumberOfLoggedInUsers() const OVERRIDE; | 29 virtual int NumberOfLoggedInUsers() const OVERRIDE; |
28 virtual bool IsActiveUserSessionStarted() const OVERRIDE; | 30 virtual bool IsActiveUserSessionStarted() const OVERRIDE; |
29 virtual bool CanLockScreen() const OVERRIDE; | 31 virtual bool CanLockScreen() const OVERRIDE; |
30 virtual bool IsScreenLocked() const OVERRIDE; | 32 virtual bool IsScreenLocked() const OVERRIDE; |
31 virtual bool ShouldLockScreenBeforeSuspending() const OVERRIDE; | 33 virtual bool ShouldLockScreenBeforeSuspending() const OVERRIDE; |
32 virtual void LockScreen() OVERRIDE; | 34 virtual void LockScreen() OVERRIDE; |
33 virtual void UnlockScreen() OVERRIDE; | 35 virtual void UnlockScreen() OVERRIDE; |
34 virtual bool IsUserSessionBlocked() const OVERRIDE; | 36 virtual bool IsUserSessionBlocked() const OVERRIDE; |
35 virtual const base::string16 GetUserDisplayName( | 37 virtual const base::string16 GetUserDisplayName( |
36 ash::MultiProfileIndex index) const OVERRIDE; | 38 ash::MultiProfileIndex index) const OVERRIDE; |
37 virtual const std::string GetUserEmail( | 39 virtual const std::string GetUserEmail( |
38 ash::MultiProfileIndex index) const OVERRIDE; | 40 ash::MultiProfileIndex index) const OVERRIDE; |
39 virtual const std::string GetUserID( | 41 virtual const std::string GetUserID( |
40 ash::MultiProfileIndex index) const OVERRIDE; | 42 ash::MultiProfileIndex index) const OVERRIDE; |
41 virtual const gfx::ImageSkia& GetUserImage( | 43 virtual const gfx::ImageSkia& GetUserImage( |
42 ash::MultiProfileIndex index) const OVERRIDE; | 44 content::BrowserContext* context) const OVERRIDE; |
43 virtual void GetLoggedInUsers(ash::UserIdList* users) OVERRIDE; | 45 virtual bool ShouldShowAvatar(aura::Window* window) OVERRIDE; |
44 virtual void SwitchActiveUser(const std::string& user_id) OVERRIDE; | 46 virtual void SwitchActiveUser(const std::string& user_id) OVERRIDE; |
45 virtual void CycleActiveUser(CycleUser cycle_user) OVERRIDE; | 47 virtual void CycleActiveUser(CycleUser cycle_user) OVERRIDE; |
46 virtual void AddSessionStateObserver( | 48 virtual void AddSessionStateObserver( |
47 ash::SessionStateObserver* observer) OVERRIDE; | 49 ash::SessionStateObserver* observer) OVERRIDE; |
48 virtual void RemoveSessionStateObserver( | 50 virtual void RemoveSessionStateObserver( |
49 ash::SessionStateObserver* observer) OVERRIDE; | 51 ash::SessionStateObserver* observer) OVERRIDE; |
50 // UserManager::UserSessionStateObserver: | 52 // UserManager::UserSessionStateObserver: |
51 virtual void ActiveUserChanged(const chromeos::User* active_user) OVERRIDE; | 53 virtual void ActiveUserChanged(const chromeos::User* active_user) OVERRIDE; |
52 virtual void UserAddedToSession(const chromeos::User* added_user) OVERRIDE; | 54 virtual void UserAddedToSession(const chromeos::User* added_user) OVERRIDE; |
53 | 55 |
54 private: | 56 private: |
55 // List of observers is only used on Chrome OS for now. | 57 // List of observers is only used on Chrome OS for now. |
56 ObserverList<ash::SessionStateObserver> session_state_observer_list_; | 58 ObserverList<ash::SessionStateObserver> session_state_observer_list_; |
57 | 59 |
58 DISALLOW_COPY_AND_ASSIGN(SessionStateDelegateChromeos); | 60 DISALLOW_COPY_AND_ASSIGN(SessionStateDelegateChromeos); |
59 }; | 61 }; |
60 | 62 |
61 #endif // CHROME_BROWSER_UI_ASH_SESSION_STATE_DELEGATE_CHROMEOS_H_ | 63 #endif // CHROME_BROWSER_UI_ASH_SESSION_STATE_DELEGATE_CHROMEOS_H_ |
OLD | NEW |