Commit 869a01e6 authored by flackr@chromium.org's avatar flackr@chromium.org

Remove lock screen item from menu and disable screen lock on guest session.

BUG=chromium-os:23764
TEST=Log in as guest, attempt to lock screen, nothing should happen.


Review URL: http://codereview.chromium.org/8842002

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@113485 0039d316-1c4b-4281-b951-d872f2087c98
parent 3dda5f53
......@@ -347,10 +347,19 @@ void ScreenLocker::SetLoginStatusConsumer(
// static
void ScreenLocker::Show() {
VLOG(1) << "In ScreenLocker::Show";
DVLOG(1) << "In ScreenLocker::Show";
UserMetrics::RecordAction(UserMetricsAction("ScreenLocker_Show"));
DCHECK(MessageLoop::current()->type() == MessageLoop::TYPE_UI);
// Check whether the currently logged in user is a guest account and if so,
// refuse to lock the screen (crosbug.com/23764).
// TODO(flackr): We can allow lock screen for guest accounts when
// unlock_on_input is supported by the WebUI screen locker.
if (UserManager::Get()->logged_in_user().email().empty()) {
DVLOG(1) << "Show: Refusing to lock screen for guest account.";
return;
}
// Exit fullscreen.
Browser* browser = BrowserList::GetLastActive();
// browser can be NULL if we receive a lock request before the first browser
......@@ -360,7 +369,7 @@ void ScreenLocker::Show() {
}
if (!screen_locker_) {
VLOG(1) << "Show: Locking screen";
DVLOG(1) << "Show: Locking screen";
ScreenLocker* locker =
new ScreenLocker(UserManager::Get()->logged_in_user());
locker->Init();
......@@ -368,7 +377,7 @@ void ScreenLocker::Show() {
// PowerManager re-sends lock screen signal if it doesn't
// receive the response within timeout. Just send complete
// signal.
VLOG(1) << "Show: locker already exists. Just sending completion event.";
DVLOG(1) << "Show: locker already exists. Just sending completion event.";
CrosLibrary::Get()->GetScreenLockLibrary()->NotifyScreenLockCompleted();
}
}
......
......@@ -72,11 +72,10 @@ void WrenchMenuModel::Build() {
AddSeparator();
AddItemWithStringId(IDC_LOCK_SCREEN, IDS_LOCK_SCREEN);
if (CommandLine::ForCurrentProcess()->HasSwitch(switches::kGuestSession)) {
AddItemWithStringId(IDC_EXIT, IDS_EXIT_GUEST_MODE);
} else {
AddItemWithStringId(IDC_LOCK_SCREEN, IDS_LOCK_SCREEN);
AddItemWithStringId(IDC_EXIT, IDS_SIGN_OUT);
}
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment