1<!-- 2 ~ Copyright (C) 2019 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 17<com.android.systemui.biometrics.ui.CredentialPatternView 18 xmlns:android="http://schemas.android.com/apk/res/android" 19 xmlns:app="http://schemas.android.com/apk/res-auto" 20 android:layout_width="match_parent" 21 android:layout_height="match_parent" 22 android:orientation="horizontal" 23 android:elevation="@dimen/biometric_dialog_elevation" 24 android:theme="?app:attr/lockPatternStyle"> 25 26 <RelativeLayout 27 android:id="@+id/auth_credential_header" 28 style="?headerStyle" 29 android:layout_width="0dp" 30 android:layout_height="match_parent" 31 android:layout_weight="1"> 32 33 <ImageView 34 android:id="@+id/icon" 35 style="?headerIconStyle" 36 android:layout_alignParentLeft="true" 37 android:layout_alignParentTop="true" 38 android:contentDescription="@null"/> 39 40 <TextView 41 android:id="@+id/title" 42 style="?titleTextAppearance" 43 android:layout_below="@id/icon" 44 android:layout_width="wrap_content" 45 android:layout_height="wrap_content"/> 46 47 <TextView 48 android:id="@+id/subtitle" 49 style="?subTitleTextAppearance" 50 android:layout_below="@id/title" 51 android:layout_alignParentLeft="true" 52 android:layout_width="wrap_content" 53 android:layout_height="wrap_content" /> 54 55 <TextView 56 android:id="@+id/description" 57 style="?descriptionTextAppearance" 58 android:layout_below="@id/subtitle" 59 android:layout_alignParentLeft="true" 60 android:layout_width="wrap_content" 61 android:layout_height="wrap_content"/> 62 63 <LinearLayout 64 android:id="@+id/customized_view_container" 65 android:orientation="vertical" 66 android:gravity="center_vertical" 67 android:layout_below="@id/subtitle" 68 android:layout_alignParentLeft="true" 69 android:layout_width="match_parent" 70 android:layout_height="wrap_content" /> 71 72 <TextView 73 android:id="@+id/error" 74 style="?errorTextAppearanceLand" 75 android:layout_below="@id/description" 76 android:layout_alignParentLeft="true" 77 android:layout_width="wrap_content" 78 android:layout_height="wrap_content"/> 79 80 </RelativeLayout> 81 82 <RelativeLayout 83 android:layout_weight="1" 84 android:layout_width="0dp" 85 android:layout_height="match_parent"> 86 87 <FrameLayout 88 style="?containerStyle" 89 android:layout_above="@id/emergencyCallButton" 90 android:layout_width="match_parent" 91 android:layout_height="match_parent"> 92 93 <com.android.internal.widget.LockPatternView 94 android:id="@+id/lockPattern" 95 android:layout_gravity="center" 96 android:layout_width="@dimen/biometric_auth_pattern_view_size" 97 android:layout_height="@dimen/biometric_auth_pattern_view_size"/> 98 </FrameLayout> 99 100 <Button 101 android:id="@+id/emergencyCallButton" 102 style="@style/AuthNonBioCredentialEmergencyButtonStyle" 103 android:layout_width="wrap_content" 104 android:layout_height="wrap_content" 105 android:layout_marginBottom="35dp" 106 android:visibility="gone" 107 android:layout_alignParentBottom="true" 108 android:layout_centerHorizontal="true" 109 android:text="@string/work_challenge_emergency_button_text"/> 110 </RelativeLayout> 111 112</com.android.systemui.biometrics.ui.CredentialPatternView>