1<?xml version="1.0" encoding="utf-8"?> 2<!-- 3** 4** Copyright 2008, The Android Open Source Project 5** 6** Licensed under the Apache License, Version 2.0 (the "License") 7** you may not use this file except in compliance with the License. 8** You may obtain a copy of the License at 9** 10** http://www.apache.org/licenses/LICENSE-2.0 11** 12** Unless required by applicable law or agreed to in writing, software 13** distributed under the License is distributed on an "AS IS" BASIS, 14** WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 15** See the License for the specific language governing permissions and 16** limitations under the License. 17*/ 18--> 19<!-- This is the SIM PUK view that allows the user to recover their device by entering the 20 carrier-provided PUK code and entering a new SIM PIN for it. --> 21<com.android.keyguard.KeyguardSimPukView 22 xmlns:android="http://schemas.android.com/apk/res/android" 23 xmlns:androidprv="http://schemas.android.com/apk/res-auto" 24 xmlns:app="http://schemas.android.com/apk/res-auto" 25 android:id="@+id/keyguard_sim_puk_view" 26 android:orientation="vertical" 27 android:layout_width="match_parent" 28 android:layout_height="match_parent" 29 androidprv:layout_maxWidth="@dimen/keyguard_security_width" 30 android:layout_gravity="center_horizontal|bottom"> 31 <include layout="@layout/keyguard_bouncer_message_area"/> 32 33 <androidx.constraintlayout.widget.ConstraintLayout 34 android:layout_width="match_parent" 35 android:layout_height="0dp" 36 android:layout_weight="1" 37 android:layoutDirection="ltr"> 38 <LinearLayout 39 android:id="@+id/pin_area" 40 android:layout_width="match_parent" 41 android:layout_height="wrap_content" 42 android:orientation="vertical" 43 android:gravity="center_horizontal" 44 android:paddingTop="@dimen/num_pad_entry_row_margin_bottom" 45 android:paddingBottom="@dimen/num_pad_entry_row_margin_bottom" 46 androidprv:layout_constraintBottom_toTopOf="@+id/flow1" 47 androidprv:layout_constraintEnd_toEndOf="parent" 48 androidprv:layout_constraintStart_toStartOf="parent" 49 androidprv:layout_constraintTop_toTopOf="parent"> 50 51 <ImageView 52 android:id="@+id/keyguard_sim" 53 android:layout_width="40dp" 54 android:layout_height="40dp" 55 android:layout_gravity="center_horizontal" 56 android:src="@drawable/ic_lockscreen_sim" 57 app:tint="@color/background_protected" /> 58 59 <include 60 android:id="@+id/keyguard_esim_area" 61 layout="@layout/keyguard_esim_area" 62 android:layout_gravity="center_horizontal" 63 android:layout_width="wrap_content" 64 android:layout_height="wrap_content" /> 65 66 <com.android.keyguard.PasswordTextView 67 android:id="@+id/pukEntry" 68 style="@style/Widget.TextView.Password" 69 android:layout_width="@dimen/keyguard_security_width" 70 android:layout_height="@dimen/keyguard_password_height" 71 android:contentDescription="@string/keyguard_accessibility_sim_pin_area" 72 android:layout_gravity="center_horizontal" 73 androidprv:scaledTextSize="@integer/scaled_password_text_size" /> 74 </LinearLayout> 75 76 <androidx.constraintlayout.helper.widget.Flow 77 android:id="@+id/flow1" 78 android:layout_width="0dp" 79 android:layout_height="0dp" 80 android:clipChildren="false" 81 android:clipToPadding="false" 82 android:orientation="horizontal" 83 androidprv:constraint_referenced_ids="key1,key2,key3,key4,key5,key6,key7,key8,key9,delete_button,key0,key_enter" 84 androidprv:flow_horizontalGap="@dimen/num_pad_key_margin_end" 85 androidprv:flow_horizontalStyle="packed" 86 androidprv:flow_maxElementsWrap="3" 87 androidprv:flow_verticalBias="1.0" 88 androidprv:flow_verticalGap="@dimen/num_pad_entry_row_margin_bottom" 89 androidprv:flow_verticalStyle="packed" 90 androidprv:flow_wrapMode="aligned" 91 androidprv:layout_constraintBottom_toBottomOf="parent" 92 androidprv:layout_constraintEnd_toEndOf="parent" 93 androidprv:layout_constraintStart_toStartOf="parent" 94 androidprv:layout_constraintTop_toBottomOf="@id/pin_area" /> 95 96 <com.android.keyguard.NumPadButton 97 android:id="@+id/delete_button" 98 style="@style/NumPadKey.Delete" 99 android:layout_width="0dp" 100 android:layout_height="0dp" 101 android:accessibilityTraversalBefore="@id/key0" 102 android:contentDescription="@string/keyboardview_keycode_delete" /> 103 104 <com.android.keyguard.NumPadButton 105 android:id="@+id/key_enter" 106 style="@style/NumPadKey.Enter" 107 android:layout_width="0dp" 108 android:layout_height="0dp" 109 android:contentDescription="@string/keyboardview_keycode_enter" /> 110 111 <com.android.keyguard.NumPadKey 112 android:id="@+id/key1" 113 android:layout_width="0dp" 114 android:layout_height="0dp" 115 android:accessibilityTraversalBefore="@id/key2" 116 androidprv:digit="1" 117 androidprv:textView="@+id/pukEntry" /> 118 119 <com.android.keyguard.NumPadKey 120 android:id="@+id/key2" 121 android:layout_width="0dp" 122 android:layout_height="0dp" 123 android:accessibilityTraversalBefore="@id/key3" 124 androidprv:digit="2" 125 androidprv:textView="@+id/pukEntry" /> 126 127 <com.android.keyguard.NumPadKey 128 android:id="@+id/key3" 129 android:layout_width="0dp" 130 android:layout_height="0dp" 131 android:accessibilityTraversalBefore="@id/key4" 132 androidprv:digit="3" 133 androidprv:textView="@+id/pukEntry" /> 134 135 <com.android.keyguard.NumPadKey 136 android:id="@+id/key4" 137 android:layout_width="0dp" 138 android:layout_height="0dp" 139 android:accessibilityTraversalBefore="@id/key5" 140 androidprv:digit="4" 141 androidprv:textView="@+id/pukEntry" /> 142 143 <com.android.keyguard.NumPadKey 144 android:id="@+id/key5" 145 android:layout_width="0dp" 146 android:layout_height="0dp" 147 android:accessibilityTraversalBefore="@id/key6" 148 androidprv:digit="5" 149 androidprv:textView="@+id/pukEntry" /> 150 151 152 <com.android.keyguard.NumPadKey 153 android:id="@+id/key6" 154 android:layout_width="0dp" 155 android:layout_height="0dp" 156 android:accessibilityTraversalBefore="@id/key7" 157 androidprv:digit="6" 158 androidprv:textView="@+id/pukEntry" /> 159 160 <com.android.keyguard.NumPadKey 161 android:id="@+id/key7" 162 android:layout_width="0dp" 163 android:layout_height="0dp" 164 android:accessibilityTraversalBefore="@id/key8" 165 androidprv:digit="7" 166 androidprv:textView="@+id/pukEntry" /> 167 168 <com.android.keyguard.NumPadKey 169 android:id="@+id/key8" 170 android:layout_width="0dp" 171 android:layout_height="0dp" 172 android:accessibilityTraversalBefore="@id/key9" 173 androidprv:digit="8" 174 androidprv:textView="@+id/pukEntry" /> 175 176 <com.android.keyguard.NumPadKey 177 android:id="@+id/key9" 178 android:layout_width="0dp" 179 android:layout_height="0dp" 180 android:accessibilityTraversalBefore="@id/delete_button" 181 androidprv:digit="9" 182 androidprv:textView="@+id/pukEntry" /> 183 184 <com.android.keyguard.NumPadKey 185 android:id="@+id/key0" 186 android:layout_width="0dp" 187 android:layout_height="0dp" 188 android:accessibilityTraversalBefore="@id/key_enter" 189 androidprv:digit="0" 190 androidprv:textView="@+id/pukEntry" /> 191 </androidx.constraintlayout.widget.ConstraintLayout> 192 193 <include layout="@layout/keyguard_eca" 194 android:id="@+id/keyguard_selector_fade_container" 195 android:layout_width="match_parent" 196 android:layout_height="wrap_content" 197 android:orientation="vertical" 198 android:layout_gravity="bottom|center_horizontal" 199 android:layout_marginTop="@dimen/keyguard_eca_top_margin" 200 android:layout_marginBottom="2dp" 201 android:gravity="center_horizontal"/> 202</com.android.keyguard.KeyguardSimPukView> 203