Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit c101bfe4 authored by Jonathon Axford's avatar Jonathon Axford Committed by Android (Google) Code Review
Browse files

Merge "Bouncer refactor - prep for motion layout implementation" into main

parents bafd3028 14fa99be
Loading
Loading
Loading
Loading
+0 −25
Original line number Diff line number Diff line
<?xml version="1.0" encoding="utf-8"?><!--
**
** Copyright 2023, The Android Open Source Project
**
** Licensed under the Apache License, Version 2.0 (the "License")
** you may not use this file except in compliance with the License.
** You may obtain a copy of the License at
**
**     http://www.apache.org/licenses/LICENSE-2.0
**
** Unless required by applicable law or agreed to in writing, software
** distributed under the License is distributed on an "AS IS" BASIS,
** WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
** See the License for the specific language governing permissions and
** limitations under the License.
*/
-->

<FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent">

    <include layout="@layout/keyguard_pin_view_landscape" />

</FrameLayout>
+0 −25
Original line number Diff line number Diff line
<?xml version="1.0" encoding="utf-8"?><!--
**
** Copyright 2023, The Android Open Source Project
**
** Licensed under the Apache License, Version 2.0 (the "License")
** you may not use this file except in compliance with the License.
** You may obtain a copy of the License at
**
**     http://www.apache.org/licenses/LICENSE-2.0
**
** Unless required by applicable law or agreed to in writing, software
** distributed under the License is distributed on an "AS IS" BASIS,
** WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
** See the License for the specific language governing permissions and
** limitations under the License.
*/
-->

<FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent">

    <include layout="@layout/keyguard_pin_view_portrait" />

</FrameLayout>
+198 −5
Original line number Diff line number Diff line
<?xml version="1.0" encoding="utf-8"?>
<!--
**
** Copyright 2012, The Android Open Source Project
** Copyright 2023, The Android Open Source Project
**
** Licensed under the Apache License, Version 2.0 (the "License")
** you may not use this file except in compliance with the License.
@@ -16,10 +16,203 @@
** limitations under the License.
*/
-->
<FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"

<com.android.keyguard.KeyguardPINView xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:androidprv="http://schemas.android.com/apk/res-auto"
    android:id="@+id/keyguard_pin_view"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:layout_gravity="center_horizontal|bottom"
    android:clipChildren="false"
    android:clipToPadding="false"
    android:orientation="vertical"
    androidprv:layout_maxWidth="@dimen/keyguard_security_width">

    <include layout="@layout/keyguard_bouncer_message_area"/>

    <com.android.systemui.bouncer.ui.BouncerMessageView
        android:id="@+id/bouncer_message_view"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:orientation="vertical" />

    <androidx.constraintlayout.widget.ConstraintLayout
        android:id="@+id/pin_container"
        android:layout_width="match_parent"
        android:layout_height="0dp"
        android:layout_marginBottom="8dp"
        android:clipChildren="false"
        android:clipToPadding="false"
        android:layout_weight="1"
        android:layoutDirection="ltr"
        android:orientation="vertical">

        <!-- Set this to be just above key1. It would be better to introduce a barrier above
             key1/key2/key3, then place this View above that. Sadly, that doesn't work (the Barrier
             drops to the bottom of the page, and key1/2/3 all shoot up to the top-left). In any
             case, the Flow should ensure that key1/2/3 all have the same top, so this should be
             fine. -->
        <com.android.keyguard.AlphaOptimizedRelativeLayout
            android:id="@+id/row0"
            android:layout_width="match_parent"
    android:layout_height="match_parent">
            android:layout_height="wrap_content"
            android:paddingBottom="@dimen/num_pad_entry_row_margin_bottom"
            androidprv:layout_constraintTop_toTopOf="parent"
            androidprv:layout_constraintEnd_toEndOf="parent"
            androidprv:layout_constraintStart_toStartOf="parent"
            androidprv:layout_constraintBottom_toTopOf="@id/key1"
            androidprv:layout_constraintVertical_bias="0.5">

            <com.android.keyguard.PasswordTextView
                android:id="@+id/pinEntry"
                style="@style/Widget.TextView.Password"
                android:layout_width="@dimen/keyguard_security_width"
                android:layout_height="@dimen/keyguard_password_height"
                android:layout_centerHorizontal="true"
                android:layout_marginRight="72dp"
                android:contentDescription="@string/keyguard_accessibility_pin_area"
                androidprv:scaledTextSize="@integer/scaled_password_text_size" />
        </com.android.keyguard.AlphaOptimizedRelativeLayout>

        <!-- Guideline used to place the top row of keys relative to the screen height. This will be
             updated in KeyguardPINView to reduce the height of the PIN pad. -->
        <androidx.constraintlayout.widget.Guideline
            android:id="@+id/pin_pad_top_guideline"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            androidprv:layout_constraintGuide_percent="0"
            android:orientation="horizontal" />

        <com.android.keyguard.KeyguardPinFlowView
            android:id="@+id/flow1"
            android:layout_width="0dp"
            android:layout_height="0dp"
            android:orientation="horizontal"
            android:clipChildren="false"
            android:clipToPadding="false"

            androidprv:constraint_referenced_ids="key1,key2,key3,key4,key5,key6,key7,key8,key9,delete_button,key0,key_enter"

            androidprv:flow_horizontalGap="@dimen/num_pad_key_margin_end"

            androidprv:flow_horizontalStyle="packed"
            androidprv:flow_maxElementsWrap="3"

            androidprv:flow_verticalBias="1.0"
            androidprv:flow_verticalGap="@dimen/num_pad_entry_row_margin_bottom"
            androidprv:flow_verticalStyle="packed"

    <include layout="@layout/keyguard_pin_view_portrait" />
            androidprv:flow_wrapMode="aligned"
            androidprv:layout_constraintBottom_toBottomOf="parent"
            androidprv:layout_constraintEnd_toEndOf="parent"
            androidprv:layout_constraintStart_toStartOf="parent"
            androidprv:layout_constraintTop_toBottomOf="@id/pin_pad_top_guideline" />

        <com.android.keyguard.NumPadKey
            android:id="@+id/key1"
            android:layout_width="0dp"
            android:layout_height="0dp"
            android:accessibilityTraversalBefore="@id/key2"
            androidprv:digit="1"
            androidprv:textView="@+id/pinEntry" />

        <com.android.keyguard.NumPadKey
            android:id="@+id/key2"
            android:layout_width="0dp"
            android:layout_height="0dp"
            android:accessibilityTraversalBefore="@id/key3"
            androidprv:digit="2"
            androidprv:textView="@+id/pinEntry" />

        <com.android.keyguard.NumPadKey
            android:id="@+id/key3"
            android:layout_width="0dp"
            android:layout_height="0dp"
            android:accessibilityTraversalBefore="@id/key4"
            androidprv:digit="3"
            androidprv:textView="@+id/pinEntry" />

        <com.android.keyguard.NumPadKey
            android:id="@+id/key4"
            android:layout_width="0dp"
            android:layout_height="0dp"
            android:accessibilityTraversalBefore="@id/key5"
            androidprv:digit="4"
            androidprv:textView="@+id/pinEntry" />

        <com.android.keyguard.NumPadKey
            android:id="@+id/key5"
            android:layout_width="0dp"
            android:layout_height="0dp"
            android:accessibilityTraversalBefore="@id/key6"
            androidprv:digit="5"
            androidprv:textView="@+id/pinEntry" />

        <com.android.keyguard.NumPadKey
            android:id="@+id/key6"
            android:layout_width="0dp"
            android:layout_height="0dp"
            android:accessibilityTraversalBefore="@id/key7"
            androidprv:digit="6"
            androidprv:textView="@+id/pinEntry" />

        <com.android.keyguard.NumPadKey
            android:id="@+id/key7"
            android:layout_width="0dp"
            android:layout_height="0dp"
            android:accessibilityTraversalBefore="@id/key8"
            androidprv:digit="7"
            androidprv:textView="@+id/pinEntry" />


        <com.android.keyguard.NumPadKey
            android:id="@+id/key8"
            android:layout_width="0dp"
            android:layout_height="0dp"
            android:accessibilityTraversalBefore="@id/key9"
            androidprv:digit="8"
            androidprv:textView="@+id/pinEntry" />

        <com.android.keyguard.NumPadKey
            android:id="@+id/key9"
            android:layout_width="0dp"
            android:layout_height="0dp"
            android:accessibilityTraversalBefore="@id/delete_button"
            androidprv:digit="9"
            androidprv:textView="@+id/pinEntry" />

        <com.android.keyguard.NumPadButton
            android:id="@+id/delete_button"
            style="@style/NumPadKey.Delete"
            android:layout_width="0dp"
            android:layout_height="0dp"
            android:accessibilityTraversalBefore="@id/key0"
            android:contentDescription="@string/keyboardview_keycode_delete" />

        <com.android.keyguard.NumPadKey
            android:id="@+id/key0"
            android:layout_width="0dp"
            android:layout_height="0dp"
            android:accessibilityTraversalBefore="@id/key_enter"
            androidprv:digit="0"
            androidprv:textView="@+id/pinEntry" />

        <com.android.keyguard.NumPadButton
            android:id="@+id/key_enter"
            style="@style/NumPadKey.Enter"
            android:layout_width="0dp"
            android:layout_height="0dp"
            android:contentDescription="@string/keyboardview_keycode_enter" />
    </androidx.constraintlayout.widget.ConstraintLayout>

    <include layout="@layout/keyguard_eca"
        android:id="@+id/keyguard_selector_fade_container"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:orientation="vertical"
        android:layout_gravity="bottom|center_horizontal"
        android:layout_marginTop="@dimen/keyguard_eca_top_margin"
        android:layout_marginBottom="@dimen/keyguard_eca_bottom_margin"
        android:gravity="center_horizontal"/>

</FrameLayout>
</com.android.keyguard.KeyguardPINView>
+0 −231
Original line number Diff line number Diff line
<?xml version="1.0" encoding="utf-8"?><!--
**
** Copyright 2023, The Android Open Source Project
**
** Licensed under the Apache License, Version 2.0 (the "License")
** you may not use this file except in compliance with the License.
** You may obtain a copy of the License at
**
**     http://www.apache.org/licenses/LICENSE-2.0
**
** Unless required by applicable law or agreed to in writing, software
** distributed under the License is distributed on an "AS IS" BASIS,
** WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
** See the License for the specific language governing permissions and
** limitations under the License.
*/
-->

<com.android.keyguard.KeyguardPINView xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:androidprv="http://schemas.android.com/apk/res-auto"
    xmlns:tools="http://schemas.android.com/tools"
    android:id="@+id/keyguard_pin_view"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:layout_gravity="center_horizontal|bottom"
    android:clipChildren="false"
    android:clipToPadding="false"
    android:orientation="horizontal">

    <androidx.constraintlayout.widget.ConstraintLayout
        android:layout_width="0dp"
        android:layout_height="match_parent"
        android:layout_weight="2"
        android:clipChildren="false"
        android:clipToPadding="false"
        android:layoutDirection="ltr"
        android:orientation="vertical">

        <include layout="@layout/keyguard_bouncer_message_area" />

        <com.android.systemui.bouncer.ui.BouncerMessageView
            android:id="@+id/bouncer_message_view"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:orientation="vertical"
            androidprv:layout_constraintBottom_toTopOf="@+id/row0"
            androidprv:layout_constraintTop_toTopOf="parent"
            androidprv:layout_constraintVertical_chainStyle="packed" />

        <!-- Set this to be just above key1. It would be better to introduce a barrier above
         key1/key2/key3, then place this View above that. Sadly, that doesn't work (the Barrier
         drops to the bottom of the page, and key1/2/3 all shoot up to the top-left). In any
         case, the Flow should ensure that key1/2/3 all have the same top, so this should be
         fine. -->
        <com.android.keyguard.AlphaOptimizedRelativeLayout
            android:id="@+id/row0"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:paddingBottom="@dimen/num_pad_entry_row_margin_bottom"
            androidprv:layout_constraintBottom_toTopOf="@+id/keyguard_selector_fade_container"
            androidprv:layout_constraintTop_toBottomOf="@+id/bouncer_message_view"
            tools:layout_editor_absoluteX="-16dp">

            <com.android.keyguard.PasswordTextView
                android:id="@+id/pinEntry"
                style="@style/Widget.TextView.Password"
                android:layout_width="@dimen/keyguard_security_width"
                android:layout_height="@dimen/keyguard_password_height"
                android:layout_centerHorizontal="true"
                android:layout_marginRight="72dp"
                android:contentDescription="@string/keyguard_accessibility_pin_area"
                androidprv:scaledTextSize="@integer/scaled_password_text_size" />
        </com.android.keyguard.AlphaOptimizedRelativeLayout>

        <include
            android:id="@+id/keyguard_selector_fade_container"
            layout="@layout/keyguard_eca"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:layout_gravity="bottom|center_horizontal"
            android:layout_marginBottom="@dimen/keyguard_eca_bottom_margin"
            android:layout_marginTop="@dimen/keyguard_eca_top_margin"
            android:gravity="center_horizontal"
            android:orientation="vertical"
            androidprv:layout_constraintBottom_toBottomOf="parent" />

    </androidx.constraintlayout.widget.ConstraintLayout>

    <androidx.constraintlayout.widget.ConstraintLayout
        android:id="@+id/pin_container"
        android:layout_width="0dp"
        android:layout_height="match_parent"
        android:layout_weight="3"
        android:clipChildren="false"
        android:clipToPadding="false"
        android:layoutDirection="ltr"
        android:orientation="vertical">

        <!-- Guideline used to place the top row of keys relative to the screen height. This will be
        updated in KeyguardPINView to reduce the height of the PIN pad. -->
        <androidx.constraintlayout.widget.Guideline
            android:id="@+id/pin_pad_top_guideline"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:orientation="horizontal"
            androidprv:layout_constraintGuide_percent="0" />

        <com.android.keyguard.KeyguardPinFlowView
            android:id="@+id/flow1"
            android:layout_width="0dp"
            android:layout_height="0dp"
            android:clipChildren="false"
            android:clipToPadding="false"
            android:orientation="horizontal"

            androidprv:constraint_referenced_ids="key1,key2,key3,key4,key5,key6,key7,key8,key9,delete_button,key0,key_enter"

            androidprv:flow_horizontalGap="@dimen/num_pad_key_margin_end"

            androidprv:flow_horizontalStyle="packed"
            androidprv:flow_maxElementsWrap="3"

            androidprv:flow_verticalBias="0.5"
            androidprv:flow_verticalGap="@dimen/num_pad_entry_row_margin_bottom"
            androidprv:flow_verticalStyle="packed"

            androidprv:flow_wrapMode="aligned"
            androidprv:layout_constraintBottom_toBottomOf="parent"
            androidprv:layout_constraintEnd_toEndOf="parent"
            androidprv:layout_constraintStart_toStartOf="parent"
            androidprv:layout_constraintTop_toBottomOf="@id/pin_pad_top_guideline" />

        <com.android.keyguard.NumPadButton
            android:id="@+id/delete_button"
            style="@style/NumPadKey.Delete"
            android:layout_width="0dp"
            android:layout_height="0dp"
            android:accessibilityTraversalBefore="@id/key0"
            android:contentDescription="@string/keyboardview_keycode_delete" />

        <com.android.keyguard.NumPadButton
            android:id="@+id/key_enter"
            style="@style/NumPadKey.Enter"
            android:layout_width="0dp"
            android:layout_height="0dp"
            android:contentDescription="@string/keyboardview_keycode_enter" />

        <com.android.keyguard.NumPadKey
            android:id="@+id/key1"
            android:layout_width="0dp"
            android:layout_height="0dp"
            android:accessibilityTraversalBefore="@id/key2"
            androidprv:digit="1"
            androidprv:textView="@+id/pinEntry" />

        <com.android.keyguard.NumPadKey
            android:id="@+id/key2"
            android:layout_width="0dp"
            android:layout_height="0dp"
            android:accessibilityTraversalBefore="@id/key3"
            androidprv:digit="2"
            androidprv:textView="@+id/pinEntry" />

        <com.android.keyguard.NumPadKey
            android:id="@+id/key3"
            android:layout_width="0dp"
            android:layout_height="0dp"
            android:accessibilityTraversalBefore="@id/key4"
            androidprv:digit="3"
            androidprv:textView="@+id/pinEntry" />

        <com.android.keyguard.NumPadKey
            android:id="@+id/key4"
            android:layout_width="0dp"
            android:layout_height="0dp"
            android:accessibilityTraversalBefore="@id/key5"
            androidprv:digit="4"
            androidprv:textView="@+id/pinEntry" />

        <com.android.keyguard.NumPadKey
            android:id="@+id/key5"
            android:layout_width="0dp"
            android:layout_height="0dp"
            android:accessibilityTraversalBefore="@id/key6"
            androidprv:digit="5"
            androidprv:textView="@+id/pinEntry" />


        <com.android.keyguard.NumPadKey
            android:id="@+id/key6"
            android:layout_width="0dp"
            android:layout_height="0dp"
            android:accessibilityTraversalBefore="@id/key7"
            androidprv:digit="6"
            androidprv:textView="@+id/pinEntry" />

        <com.android.keyguard.NumPadKey
            android:id="@+id/key7"
            android:layout_width="0dp"
            android:layout_height="0dp"
            android:accessibilityTraversalBefore="@id/key8"
            androidprv:digit="7"
            androidprv:textView="@+id/pinEntry" />

        <com.android.keyguard.NumPadKey
            android:id="@+id/key8"
            android:layout_width="0dp"
            android:layout_height="0dp"
            android:accessibilityTraversalBefore="@id/key9"
            androidprv:digit="8"
            androidprv:textView="@+id/pinEntry" />

        <com.android.keyguard.NumPadKey
            android:id="@+id/key9"
            android:layout_width="0dp"
            android:layout_height="0dp"
            android:accessibilityTraversalBefore="@id/delete_button"
            androidprv:digit="9"
            androidprv:textView="@+id/pinEntry" />

        <com.android.keyguard.NumPadKey
            android:id="@+id/key0"
            android:layout_width="0dp"
            android:layout_height="0dp"
            android:accessibilityTraversalBefore="@id/key_enter"
            androidprv:digit="0"
            androidprv:textView="@+id/pinEntry" />

    </androidx.constraintlayout.widget.ConstraintLayout>

</com.android.keyguard.KeyguardPINView>
+0 −218

File deleted.

Preview size limit exceeded, changes collapsed.

Loading