1<?xml version="1.0" encoding="utf-8"?> 2<!-- 3** 4** Copyright 2023, 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 20<!-- This file is needed when flag lockscreen.enable_landscape is on 21 Required for landscape lockscreen on small screens. --> 22<com.android.keyguard.KeyguardPasswordView 23 xmlns:android="http://schemas.android.com/apk/res/android" 24 xmlns:androidprv="http://schemas.android.com/apk/res-auto" 25 android:id="@+id/keyguard_password_view" 26 android:orientation="vertical" 27 android:layout_width="match_parent" 28 android:layout_height="match_parent" 29 android:layout_gravity="center_horizontal|bottom" 30 android:gravity="bottom"> 31 32 <!-- Layout here is visually identical to the previous keyguard_password_view. 33 I.E., 'constraints here effectively the same as the previous linear layout' --> 34 <androidx.constraintlayout.motion.widget.MotionLayout 35 android:id="@+id/password_container" 36 android:layout_width="match_parent" 37 android:layout_height="match_parent" 38 android:maxWidth="@dimen/keyguard_security_width" 39 android:layout_gravity="center_horizontal" 40 android:clipChildren="false" 41 android:clipToPadding="false" 42 android:layoutDirection="ltr" 43 android:orientation="vertical" 44 androidprv:layoutDescription="@xml/keyguard_password_scene"> 45 46 <!-- Guideline need to align password right of centre, 47 when on small screen landscape layout --> 48 <androidx.constraintlayout.widget.Guideline 49 android:id="@+id/password_center_guideline" 50 android:layout_width="wrap_content" 51 android:layout_height="wrap_content" 52 android:orientation="vertical" 53 androidprv:layout_constraintGuide_percent="0.5" /> 54 55 <LinearLayout 56 android:id="@+id/keyguard_bouncer_message_container" 57 android:layout_width="match_parent" 58 android:layout_height="wrap_content" 59 android:clipChildren="false" 60 android:clipToPadding="false" 61 android:layoutDirection="ltr" 62 android:orientation="vertical" 63 androidprv:layout_constraintTop_toTopOf="parent"> 64 65 <include layout="@layout/keyguard_bouncer_message_area" /> 66 67 <com.android.systemui.bouncer.ui.BouncerMessageView 68 android:id="@+id/bouncer_message_view" 69 android:importantForAccessibility="noHideDescendants" 70 android:layout_width="match_parent" 71 android:layout_height="wrap_content" 72 android:orientation="vertical" /> 73 74 </LinearLayout> 75 76 <FrameLayout 77 android:id="@+id/passwordEntry_container" 78 android:layout_width="280dp" 79 android:layout_height="wrap_content" 80 android:layout_gravity="center_horizontal" 81 android:theme="?attr/passwordStyle" 82 androidprv:layout_constraintBottom_toTopOf="@+id/keyguard_selector_fade_container" 83 androidprv:layout_constraintEnd_toEndOf="parent" 84 androidprv:layout_constraintHorizontal_bias="0.5" 85 androidprv:layout_constraintStart_toStartOf="parent" 86 androidprv:layout_constraintTop_toBottomOf="@+id/keyguard_bouncer_message_container" 87 androidprv:layout_constraintVertical_bias="0.7777"> 88 89 <EditText 90 android:id="@+id/passwordEntry" 91 android:layout_width="match_parent" 92 android:layout_height="wrap_content" 93 android:contentDescription="@string/keyguard_accessibility_password" 94 android:gravity="center_horizontal" 95 android:layout_gravity="center" 96 android:imeOptions="flagForceAscii|actionDone" 97 android:inputType="textPassword" 98 android:maxLength="500" 99 android:singleLine="true" 100 android:textAppearance="?android:attr/textAppearanceMedium" 101 android:textCursorDrawable="@null" 102 android:textSize="16sp" 103 android:textStyle="normal" /> 104 105 <ImageView 106 android:id="@+id/switch_ime_button" 107 android:layout_width="wrap_content" 108 android:layout_height="wrap_content" 109 android:layout_gravity="end|center_vertical" 110 android:layout_marginBottom="12dp" 111 android:background="?android:attr/selectableItemBackground" 112 android:clickable="true" 113 android:contentDescription="@string/accessibility_ime_switch_button" 114 android:padding="8dip" 115 android:src="@drawable/ic_lockscreen_ime" 116 android:tint="?android:attr/textColorPrimary" 117 android:visibility="gone" /> 118 </FrameLayout> 119 120 <include 121 android:id="@+id/keyguard_selector_fade_container" 122 layout="@layout/keyguard_eca" 123 android:layout_width="match_parent" 124 android:layout_height="wrap_content" 125 android:layout_marginBottom="12dp" 126 android:orientation="vertical" 127 androidprv:layout_constraintBottom_toBottomOf="parent" /> 128 129 </androidx.constraintlayout.motion.widget.MotionLayout> 130 131</com.android.keyguard.KeyguardPasswordView> 132