Index: chrome/browser/chromeos/login/users/chrome_user_manager_impl.cc |
diff --git a/chrome/browser/chromeos/login/users/chrome_user_manager_impl.cc b/chrome/browser/chromeos/login/users/chrome_user_manager_impl.cc |
index e51cb55251100c08e862be2e79e29338c0c1f8e9..05c1097021ea7e760e3cb8c2fa7c9203647e0788 100644 |
--- a/chrome/browser/chromeos/login/users/chrome_user_manager_impl.cc |
+++ b/chrome/browser/chromeos/login/users/chrome_user_manager_impl.cc |
@@ -448,7 +448,8 @@ void ChromeUserManagerImpl::Observe( |
break; |
case chrome::NOTIFICATION_LOGIN_USER_PROFILE_PREPARED: { |
Profile* profile = content::Details<Profile>(details).ptr(); |
- if (IsUserLoggedIn() && !IsLoggedInAsGuest() && !IsLoggedInAsKioskApp()) { |
+ if (IsUserLoggedIn() && !IsLoggedInAsGuest() && !IsLoggedInAsKioskApp() && |
+ !IsLoggedInAsArcKioskApp()) { |
if (IsLoggedInAsSupervisedUser()) |
SupervisedUserPasswordServiceFactory::GetForProfile(profile); |
if (IsLoggedInAsUserWithGaiaAccount()) |
@@ -866,6 +867,25 @@ void ChromeUserManagerImpl::KioskAppLoggedIn(user_manager::User* user) { |
command_line->AppendSwitch(wm::switches::kWindowAnimationsDisabled); |
} |
+void ChromeUserManagerImpl::ArcKioskAppLoggedIn(user_manager::User* user) { |
+ DCHECK_CURRENTLY_ON(BrowserThread::UI); |
+ |
+ active_user_ = user; |
+ active_user_->SetStubImage( |
+ base::MakeUnique<user_manager::UserImage>( |
+ *ResourceBundle::GetSharedInstance().GetImageSkiaNamed( |
+ IDR_PROFILE_PICTURE_LOADING)), |
+ user_manager::User::USER_IMAGE_INVALID, false); |
+ |
+ base::CommandLine* command_line = base::CommandLine::ForCurrentProcess(); |
+ command_line->AppendSwitch(chromeos::switches::kEnableArc); |
+ command_line->AppendSwitch(::switches::kForceAndroidAppMode); |
+ |
+ // Disable window animation since kiosk app runs in a single full screen |
+ // window and window animation causes start-up janks. |
+ command_line->AppendSwitch(wm::switches::kWindowAnimationsDisabled); |
+} |
+ |
void ChromeUserManagerImpl::DemoAccountLoggedIn() { |
DCHECK_CURRENTLY_ON(BrowserThread::UI); |
active_user_ = |