1 // Copyright 2015 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file.
5 #ifndef COMPONENTS_PROXIMITY_AUTH_SCREENLOCK_STATE_H
6 #define COMPONENTS_PROXIMITY_AUTH_SCREENLOCK_STATE_H
8 namespace proximity_auth
{
10 // Possible user states of the proximity auth feature on the lock or sign-in
12 enum class ScreenlockState
{
13 // Proximity-based authentication is not enabled, or the screen is not
16 // Bluetooth is not on.
18 // The local device is in process of turning on Bluetooth.
20 // No phones eligible to unlock the local device can be found.
22 // A phone eligible to unlock the local device is found, but cannot be
24 PHONE_NOT_AUTHENTICATED
,
25 // A phone eligible to unlock the local device is found, but it's locked.
27 // A phone eligible to unlock the local device is found, but it does not have
28 // a lock screen enabled.
30 // An enabled phone is found, but it is not allowed to unlock the local device
31 // because it does not support reporting its lock screen state.
33 // A phone eligible to unlock the local device is found, but its received
34 // signal strength is too low, i.e. the phone is roughly more than 30 feet
35 // away, and therefore is not allowed to unlock the device.
37 // A phone eligible to unlock the local device is found, but the local
38 // device's transmission power is too high, indicating that the phone is
39 // (probably) more than 1 foot away, and therefore is not allowed to unlock
42 // A phone eligible to unlock the local device is found; but (a) the phone is
43 // locked, and (b) the local device's transmission power is too high,
44 // indicating that the phone is (probably) more than 1 foot away, and
45 // therefore is not allowed to unlock the device.
46 PHONE_LOCKED_AND_TX_POWER_TOO_HIGH
,
47 // The local device can be unlocked using proximity-based authentication.
51 } // namespace proximity_auth
53 #endif // COMPONENTS_PROXIMITY_AUTH_SCREENLOCK_STATE_H