Index: ash/session/session_state_delegate.h |
diff --git a/ash/session/session_state_delegate.h b/ash/session/session_state_delegate.h |
index c1c07137105fede9e833dff7e3aef703dcb2ea0d..e3b2dc4e6960f354640464d2f27607fac452d506 100644 |
--- a/ash/session/session_state_delegate.h |
+++ b/ash/session/session_state_delegate.h |
@@ -49,6 +49,12 @@ class ASH_EXPORT SessionStateDelegate { |
CYCLE_TO_PREVIOUS_USER, // Cycle to the previous user. |
}; |
+ enum AddUserError { |
+ ADD_USER_ERROR_NOT_ALLOWED_PRIMARY_USER = 0, |
+ ADD_USER_ERROR_OUT_OF_USERS, |
+ ADD_USER_ERROR_MAXIMUM_USERS_REACHED, |
+ }; |
+ |
// Defines session state i.e. whether session is running or not and |
// whether user session is blocked by things like multi-profile login. |
enum SessionState { |
@@ -82,6 +88,11 @@ class ASH_EXPORT SessionStateDelegate { |
// no session in progress or no active user. |
virtual int NumberOfLoggedInUsers() const = 0; |
+ // Returns true if there is possible to add more users to multiprofile |
+ // session. Error is stored in |error| if it is not NULL and function |
+ // returned false. |
+ virtual bool CanAddUserToMultiProfile(AddUserError* error) const; |
+ |
// Returns |true| if the session has been fully started for the active user. |
// When a user becomes active, the profile and browser UI are not immediately |
// available. Only once this method starts returning |true| is the browser |