Chromium Code Reviews| Index: chrome/browser/chromeos/login/screens/user_selection_screen.cc |
| diff --git a/chrome/browser/chromeos/login/screens/user_selection_screen.cc b/chrome/browser/chromeos/login/screens/user_selection_screen.cc |
| index 6f1f616239d6d554baa52bfab21847a52dd1cbef..b92c4402f2f8a62512201d50dadab7b085913f9c 100644 |
| --- a/chrome/browser/chromeos/login/screens/user_selection_screen.cc |
| +++ b/chrome/browser/chromeos/login/screens/user_selection_screen.cc |
| @@ -10,6 +10,7 @@ |
| #include "base/bind.h" |
| #include "base/callback.h" |
| +#include "base/command_line.h" |
| #include "base/location.h" |
| #include "base/logging.h" |
| #include "base/memory/ptr_util.h" |
| @@ -30,10 +31,12 @@ |
| #include "chrome/browser/ui/webui/chromeos/login/l10n_util.h" |
| #include "chrome/browser/ui/webui/chromeos/login/signin_screen_handler.h" |
| #include "chrome/grit/generated_resources.h" |
| +#include "chromeos/chromeos_switches.h" |
| #include "chromeos/cryptohome/cryptohome_parameters.h" |
| #include "chromeos/dbus/cryptohome_client.h" |
| #include "chromeos/dbus/dbus_method_call_status.h" |
| #include "chromeos/dbus/dbus_thread_manager.h" |
| +#include "components/arc/arc_util.h" |
| #include "components/prefs/pref_service.h" |
| #include "components/proximity_auth/screenlock_bridge.h" |
| #include "components/signin/core/account_id/account_id.h" |
| @@ -139,6 +142,13 @@ bool AllowFingerprintForUser(user_manager::User* user) { |
| return quick_unlock_storage->IsFingerprintAuthenticationAvailable(); |
| } |
| +// Returns true if dircrypto migration check should be performed. |
| +bool ShouldCheckNeedDircryptoMigration() { |
| + return !base::CommandLine::ForCurrentProcess()->HasSwitch( |
| + switches::kDisableEncryptionMigration) && |
| + arc::IsArcAvailable(); |
|
hidehiko
2017/05/02 05:58:57
Just clarification:
Is it ok to pass this flow in
xiyuan
2017/05/02 06:06:04
I skipped the ARC++ KIOSK test because the banner
|
| +} |
| + |
| } // namespace |
| // Helper class to call cryptohome to check whether a user needs dircrypto |
| @@ -536,8 +546,9 @@ void UserSelectionScreen::CheckUserStatus(const AccountId& account_id) { |
| weak_factory_.GetWeakPtr())); |
| } |
| - // Run dircrypto migration check only on the login screen. |
| - if (display_type_ == OobeUI::kLoginDisplay) { |
| + // Run dircrypto migration check only on the login screen when necessary. |
| + if (display_type_ == OobeUI::kLoginDisplay && |
| + ShouldCheckNeedDircryptoMigration()) { |
| if (!dircrypto_migration_checker_) { |
| dircrypto_migration_checker_ = |
| base::MakeUnique<DircryptoMigrationChecker>(this); |