Chromium Code Reviews| Index: chrome/browser/chromeos/policy/device_status_collector.cc |
| diff --git a/chrome/browser/chromeos/policy/device_status_collector.cc b/chrome/browser/chromeos/policy/device_status_collector.cc |
| index f58540c7465c7d37f9017a7441facb5699d8e249..2e281deb582bfae3288d4dc41225773eeaf77563 100644 |
| --- a/chrome/browser/chromeos/policy/device_status_collector.cc |
| +++ b/chrome/browser/chromeos/policy/device_status_collector.cc |
| @@ -31,6 +31,7 @@ |
| #include "base/values.h" |
| #include "base/version.h" |
| #include "chrome/browser/browser_process.h" |
| +#include "chrome/browser/chromeos/app_mode/arc/arc_kiosk_app_manager.h" |
| #include "chrome/browser/chromeos/app_mode/kiosk_app_manager.h" |
| #include "chrome/browser/chromeos/login/users/chrome_user_manager.h" |
| #include "chrome/browser/chromeos/policy/browser_policy_connector_chromeos.h" |
| @@ -61,6 +62,7 @@ |
| #include "components/prefs/pref_registry_simple.h" |
| #include "components/prefs/pref_service.h" |
| #include "components/prefs/scoped_user_pref_update.h" |
| +#include "components/signin/core/account_id/account_id.h" |
| #include "components/user_manager/user.h" |
| #include "components/user_manager/user_manager.h" |
| #include "components/user_manager/user_type.h" |
| @@ -253,7 +255,8 @@ bool ReadAndroidStatus( |
| // case we won't report its status). |
| std::unique_ptr<policy::DeviceLocalAccount> GetCurrentKioskDeviceLocalAccount( |
| chromeos::CrosSettings* settings) { |
| - if (!user_manager::UserManager::Get()->IsLoggedInAsKioskApp()) |
| + if (!user_manager::UserManager::Get()->IsLoggedInAsKioskApp() && |
| + !user_manager::UserManager::Get()->IsLoggedInAsArcKioskApp()) |
|
Luis Héctor Chávez
2017/03/16 19:42:30
nit: you cannot elide the brace here since the con
Ivan Šandrk
2017/03/16 22:32:50
Is there a rule about this in the style guide? I n
|
| return std::unique_ptr<policy::DeviceLocalAccount>(); |
| const user_manager::User* const user = |
| user_manager::UserManager::Get()->GetActiveUser(); |
| @@ -691,9 +694,15 @@ DeviceStatusCollector::GetAutoLaunchedKioskSessionInfo() { |
| GetCurrentKioskDeviceLocalAccount(cros_settings_); |
| if (account) { |
| chromeos::KioskAppManager::App current_app; |
| - if (chromeos::KioskAppManager::Get()->GetApp(account->kiosk_app_id, |
| - ¤t_app) && |
| - current_app.was_auto_launched_with_zero_delay) { |
| + auto* arc_kiosk_app_manager = chromeos::ArcKioskAppManager::Get(); |
| + const chromeos::ArcKioskAppManager::ArcKioskApp* current_arc_app = |
| + arc_kiosk_app_manager->GetAppByAccountId( |
| + AccountId::FromUserEmail(account->user_id)); |
| + if ((chromeos::KioskAppManager::Get()->GetApp(account->kiosk_app_id, |
| + ¤t_app) && |
| + current_app.was_auto_launched_with_zero_delay) || |
| + (current_arc_app && current_arc_app->account_id() == |
| + arc_kiosk_app_manager->GetWasAutoLaunchedWithZeroDelay())) { |
| return account; |
| } |
| } |