1 /*
2  * Copyright (C) 2022 The Android Open Source Project
3  *
4  * Licensed under the Apache License, Version 2.0 (the "License");
5  * you may not use this file except in compliance with the License.
6  * You may obtain a copy of the License at
7  *
8  *      http://www.apache.org/licenses/LICENSE-2.0
9  *
10  * Unless required by applicable law or agreed to in writing, software
11  * distributed under the License is distributed on an "AS IS" BASIS,
12  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13  * See the License for the specific language governing permissions and
14  * limitations under the License.
15  */
16 package android.hardware.biometrics;
17 
18 /**
19  * A secondary communication channel from AuthController back to BiometricService for
20  * events that are not associated with an authentication session. See
21  * {@link IBiometricSysuiReceiver} for events associated with a session.
22  *
23  * @hide
24  */
25 oneway interface IBiometricContextListener {
26     @VintfStability
27     @Backing(type="int")
28     enum FoldState {
29         UNKNOWN = 0,
30         HALF_OPENED = 1,
31         FULLY_OPENED = 2,
32         FULLY_CLOSED = 3,
33     }
34 
35     // Called when the fold state of the device changes.
onFoldChanged(FoldState FoldState)36     void onFoldChanged(FoldState FoldState);
37 
38     // Called when the display state of the device changes.
39     // Where `displayState` is defined in AuthenticateOptions.DisplayState
onDisplayStateChanged(int displayState)40     void onDisplayStateChanged(int displayState);
41 
42     // Called when the HAL ignoring touches state changes.
43     // When true, the HAL ignores touches on the sensor.
onHardwareIgnoreTouchesChanged(boolean shouldIgnore)44     void onHardwareIgnoreTouchesChanged(boolean shouldIgnore);
45 }
46