summaryrefslogtreecommitdiffstats
path: root/ash/system/user/user_view.cc
diff options
context:
space:
mode:
Diffstat (limited to 'ash/system/user/user_view.cc')
-rw-r--r--ash/system/user/user_view.cc17
1 files changed, 14 insertions, 3 deletions
diff --git a/ash/system/user/user_view.cc b/ash/system/user/user_view.cc
index f3646a7..689764f 100644
--- a/ash/system/user/user_view.cc
+++ b/ash/system/user/user_view.cc
@@ -493,8 +493,13 @@ void UserView::ToggleAddUserMenuOption() {
const SessionStateDelegate* delegate =
Shell::GetInstance()->session_state_delegate();
- add_user_disabled_ = delegate->NumberOfLoggedInUsers() >=
- delegate->GetMaximumNumberOfLoggedInUsers();
+
+ bool multi_profile_allowed =
+ delegate->IsMultiProfileAllowedByPrimaryUserPolicy();
+ add_user_disabled_ = (delegate->NumberOfLoggedInUsers() >=
+ delegate->GetMaximumNumberOfLoggedInUsers()) ||
+ !multi_profile_allowed;
+
ButtonFromView* button = new ButtonFromView(
add_user_view,
add_user_disabled_ ? NULL : this,
@@ -508,9 +513,15 @@ void UserView::ToggleAddUserMenuOption() {
if (add_user_disabled_) {
ui::ResourceBundle& bundle = ui::ResourceBundle::GetSharedInstance();
+ int message_id;
+ if (!multi_profile_allowed)
+ message_id = IDS_ASH_STATUS_TRAY_MESSAGE_NOT_ALLOWED_PRIMARY_USER;
+ else
+ message_id = IDS_ASH_STATUS_TRAY_MESSAGE_CANNOT_ADD_USER;
+
popup_message_.reset(new PopupMessage(
bundle.GetLocalizedString(IDS_ASH_STATUS_TRAY_CAPTION_CANNOT_ADD_USER),
- bundle.GetLocalizedString(IDS_ASH_STATUS_TRAY_MESSAGE_CANNOT_ADD_USER),
+ bundle.GetLocalizedString(message_id),
PopupMessage::ICON_WARNING,
add_user_view->anchor(),
views::BubbleBorder::TOP_LEFT,