| 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 #ifndef ASH_COMMON_SESSION_SESSION_CONTROLLER_H_ | 5 #ifndef ASH_COMMON_SESSION_SESSION_CONTROLLER_H_ |
| 6 #define ASH_COMMON_SESSION_SESSION_CONTROLLER_H_ | 6 #define ASH_COMMON_SESSION_SESSION_CONTROLLER_H_ |
| 7 | 7 |
| 8 #include <stdint.h> | 8 #include <stdint.h> |
| 9 | 9 |
| 10 #include <vector> | 10 #include <vector> |
| (...skipping 85 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 96 void SetSessionState(session_manager::SessionState state); | 96 void SetSessionState(session_manager::SessionState state); |
| 97 void AddUserSession(mojom::UserSessionPtr user_session); | 97 void AddUserSession(mojom::UserSessionPtr user_session); |
| 98 | 98 |
| 99 // Bindings for mojom::SessionController interface. | 99 // Bindings for mojom::SessionController interface. |
| 100 mojo::BindingSet<mojom::SessionController> bindings_; | 100 mojo::BindingSet<mojom::SessionController> bindings_; |
| 101 | 101 |
| 102 // Client interface to session manager code (chrome). | 102 // Client interface to session manager code (chrome). |
| 103 mojom::SessionControllerClientPtr client_; | 103 mojom::SessionControllerClientPtr client_; |
| 104 | 104 |
| 105 // Cached session info. | 105 // Cached session info. |
| 106 uint32_t max_users_ = 0u; | |
| 107 bool can_lock_ = false; | 106 bool can_lock_ = false; |
| 108 bool should_lock_screen_automatically_ = false; | 107 bool should_lock_screen_automatically_ = false; |
| 109 AddUserSessionPolicy add_user_session_policy_ = AddUserSessionPolicy::ALLOWED; | 108 AddUserSessionPolicy add_user_session_policy_ = AddUserSessionPolicy::ALLOWED; |
| 110 session_manager::SessionState state_ = session_manager::SessionState::UNKNOWN; | 109 session_manager::SessionState state_ = session_manager::SessionState::UNKNOWN; |
| 111 | 110 |
| 112 // Cached user session info sorted by the order from SetUserSessionOrder. | 111 // Cached user session info sorted by the order from SetUserSessionOrder. |
| 113 // Currently the session manager code (chrome) sets a LRU order with the | 112 // Currently the session manager code (chrome) sets a LRU order with the |
| 114 // active session being the first. | 113 // active session being the first. |
| 115 std::vector<mojom::UserSessionPtr> user_sessions_; | 114 std::vector<mojom::UserSessionPtr> user_sessions_; |
| 116 | 115 |
| 117 // The user session id of the current active user session. User session id | 116 // The user session id of the current active user session. User session id |
| 118 // is managed by session manager code, starting at 1. 0u is an invalid id | 117 // is managed by session manager code, starting at 1. 0u is an invalid id |
| 119 // to detect first active user session. | 118 // to detect first active user session. |
| 120 uint32_t active_session_id_ = 0u; | 119 uint32_t active_session_id_ = 0u; |
| 121 | 120 |
| 122 base::ObserverList<ash::SessionStateObserver> observers_; | 121 base::ObserverList<ash::SessionStateObserver> observers_; |
| 123 | 122 |
| 124 DISALLOW_COPY_AND_ASSIGN(SessionController); | 123 DISALLOW_COPY_AND_ASSIGN(SessionController); |
| 125 }; | 124 }; |
| 126 | 125 |
| 127 } // namespace ash | 126 } // namespace ash |
| 128 | 127 |
| 129 #endif // ASH_COMMON_SESSION_SESSION_CONTROLLER_H_ | 128 #endif // ASH_COMMON_SESSION_SESSION_CONTROLLER_H_ |
| OLD | NEW |