Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(262)

Unified Diff: chrome/browser/chromeos/login/existing_user_controller.cc

Issue 2498613003: Add ARC++ kiosk menu items and ability to start kiosk session. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Created 4 years, 1 month ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: chrome/browser/chromeos/login/existing_user_controller.cc
diff --git a/chrome/browser/chromeos/login/existing_user_controller.cc b/chrome/browser/chromeos/login/existing_user_controller.cc
index aeffee3d24f4ab102e13258495f324549bb8f956..73596e8f2bf530724ec41830d455b1520249e392 100644
--- a/chrome/browser/chromeos/login/existing_user_controller.cc
+++ b/chrome/browser/chromeos/login/existing_user_controller.cc
@@ -234,8 +234,9 @@ void ExistingUserController::UpdateLoginDisplay(
for (auto* user : users) {
// Skip kiosk apps for login screen user list. Kiosk apps as pods (aka new
// kiosk UI) is currently disabled and it gets the apps directly from
- // KioskAppManager.
- if (user->GetType() == user_manager::USER_TYPE_KIOSK_APP)
+ // KioskAppManager and ArcKioskAppManager.
+ if (user->GetType() == user_manager::USER_TYPE_KIOSK_APP ||
+ user->GetType() == user_manager::USER_TYPE_ARC_KIOSK_APP)
Luis Héctor Chávez 2016/11/12 18:03:08 nit: you cannot elide braces if the condition span
Sergey Poromov 2016/11/14 17:23:23 Done.
continue;
// TODO(xiyuan): Clean user profile whose email is not in whitelist.
@@ -906,6 +907,12 @@ void ExistingUserController::LoginAsKioskApp(const std::string& app_id,
host_->StartAppLaunch(app_id, diagnostic_mode, auto_start);
}
+void ExistingUserController::LoginAsArcKioskApp(const AccountId& account_id) {
+ login_performer_.reset(nullptr);
Luis Héctor Chávez 2016/11/12 18:03:08 nit: this is unnecessary. The call to reset() in t
Sergey Poromov 2016/11/14 17:23:22 It's destroying after creating a new ChromeLoginPe
+ login_performer_.reset(new ChromeLoginPerformer(this));
+ login_performer_->LoginAsArcKioskAccount(account_id);
+}
+
void ExistingUserController::ConfigurePublicSessionAutoLogin() {
std::string auto_login_account_id;
cros_settings_->GetString(kAccountsPrefDeviceLocalAccountAutoLoginId,
@@ -1205,6 +1212,11 @@ void ExistingUserController::DoLogin(const UserContext& user_context,
return;
}
+ if (user_context.GetUserType() == user_manager::USER_TYPE_ARC_KIOSK_APP) {
+ LoginAsArcKioskApp(user_context.GetAccountId());
+ return;
+ }
+
// Regular user or supervised user login.
if (!user_context.HasCredentials()) {

Powered by Google App Engine
This is Rietveld 408576698