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

Commit dc96037c authored by Mill Chen's avatar Mill Chen Committed by Android (Google) Code Review
Browse files

Merge "Add a reverse landscape layout for UDFPS" into sc-dev

parents 772065e0 474093e8
Loading
Loading
Loading
Loading
+95 −0
Original line number Diff line number Diff line
<?xml version="1.0" encoding="utf-8"?>
<!--
  Copyright (C) 2021 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.google.android.setupdesign.GlifLayout
    xmlns:android="http://schemas.android.com/apk/res/android"
    android:id="@+id/setup_wizard_layout"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:layout="@layout/sud_glif_blank_template"
    style="?attr/fingerprint_layout_theme">

    <LinearLayout
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:orientation="horizontal"
        android:clipToPadding="false"
        android:clipChildren="false">

        <!-- Both texts are kept as separate text views so it doesn't jump around in portrait.
            See layouts/fingerprint_enroll_enrolling_base.xml. -->
        <LinearLayout
            android:layout_width="0dp"
            android:layout_weight="1"
            android:layout_height="match_parent"
            android:layout_marginStart="?attr/sudMarginStart"
            android:layout_marginBottom="@dimen/sud_content_frame_padding_bottom"
            android:clipChildren="false"
            android:clipToPadding="false"
            android:orientation="vertical">

            <ScrollView
                android:layout_width="match_parent"
                android:layout_height="match_parent"
                android:clipChildren="false"
                android:clipToPadding="false"
                android:fillViewport="true">

                <LinearLayout
                    android:layout_width="match_parent"
                    android:layout_height="wrap_content"
                    android:orientation="vertical"
                    android:clipChildren="false"
                    android:clipToPadding="false">

                    <ImageView
                        android:id="@+id/sud_layout_icon"
                        style="@style/SudGlifIcon"
                        android:layout_width="wrap_content"
                        android:layout_height="wrap_content"
                        android:layout_gravity="?attr/sudGlifHeaderGravity"
                        android:layout_marginStart="0dp"
                        android:layout_marginEnd="0dp"
                        android:src="@drawable/ic_fingerprint_header" />

                    <TextView
                        android:id="@+id/suc_layout_title"
                        style="@style/SudGlifHeaderTitle"
                        android:layout_width="match_parent"
                        android:layout_height="wrap_content"
                        android:layout_marginStart="0dp"
                        android:layout_marginEnd="0dp" />

                    <TextView
                        style="@style/SudDescription.Glif"
                        android:id="@+id/sud_layout_subtitle"
                        android:layout_width="match_parent"
                        android:layout_height="wrap_content"/>

                    <Space
                        android:layout_width="0dp"
                        android:layout_height="0dp"
                        android:layout_weight="1" />

                </LinearLayout>

            </ScrollView>

        </LinearLayout>

    </LinearLayout>
</com.google.android.setupdesign.GlifLayout>
 No newline at end of file
+94 −0
Original line number Diff line number Diff line
<?xml version="1.0" encoding="utf-8"?>
<!--
  Copyright (C) 2021 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.google.android.setupdesign.GlifLayout
    xmlns:android="http://schemas.android.com/apk/res/android"
    android:id="@+id/setup_wizard_layout"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:layout="@layout/sud_glif_blank_template"
    style="?attr/fingerprint_layout_theme">

    <LinearLayout
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:orientation="horizontal"
        android:clipToPadding="false"
        android:clipChildren="false">

        <LinearLayout
            android:layout_width="0dp"
            android:layout_weight="1"
            android:layout_height="match_parent"
            android:layout_marginStart="?attr/sudMarginStart"
            android:layout_marginBottom="@dimen/sud_content_frame_padding_bottom"
            android:clipChildren="false"
            android:clipToPadding="false"
            android:orientation="vertical">

            <ScrollView
                android:layout_width="match_parent"
                android:layout_height="match_parent"
                android:clipChildren="false"
                android:clipToPadding="false"
                android:fillViewport="true">

                <LinearLayout
                    android:layout_width="match_parent"
                    android:layout_height="wrap_content"
                    android:orientation="vertical"
                    android:clipChildren="false"
                    android:clipToPadding="false">

                    <ImageView
                        android:id="@+id/sud_layout_icon"
                        style="@style/SudGlifIcon"
                        android:layout_width="wrap_content"
                        android:layout_height="wrap_content"
                        android:layout_gravity="?attr/sudGlifHeaderGravity"
                        android:layout_marginStart="0dp"
                        android:layout_marginEnd="0dp"
                        android:src="@drawable/ic_fingerprint_header" />

                    <TextView
                        android:id="@+id/suc_layout_title"
                        style="@style/SudGlifHeaderTitle"
                        android:layout_width="match_parent"
                        android:layout_height="wrap_content"
                        android:layout_marginStart="0dp"
                        android:layout_marginEnd="0dp" />

                    <TextView
                        android:id="@+id/sud_layout_subtitle"
                        style="@style/SudDescription.Glif"
                        android:layout_width="match_parent"
                        android:layout_height="wrap_content"/>

                    <Space
                        android:layout_width="0dp"
                        android:layout_height="0dp"
                        android:layout_weight="1" />

                </LinearLayout>

            </ScrollView>

        </LinearLayout>

    </LinearLayout>

</com.google.android.setupdesign.GlifLayout>
 No newline at end of file
+11 −0
Original line number Diff line number Diff line
@@ -24,6 +24,7 @@ import android.content.Intent;
import android.content.IntentSender;
import android.os.storage.StorageManager;
import android.util.Log;
import android.view.Surface;

import androidx.annotation.NonNull;
import androidx.annotation.Nullable;
@@ -241,4 +242,14 @@ public class BiometricUtils {
        }
        return false;
    }

    /**
     * Returns {@code true} if the screen is going into a landscape mode and the angle is equal to
     * 270.
     * @param context Context that we use to get the display this context is associated with
     * @return True if the angle of the rotation is equal to 270.
     */
    public static boolean isReverseLandscape(@NonNull Context context) {
        return context.getDisplay().getRotation() == Surface.ROTATION_270;
    }
}
+7 −1
Original line number Diff line number Diff line
@@ -47,6 +47,7 @@ import androidx.appcompat.app.AlertDialog;
import com.android.settings.R;
import com.android.settings.biometrics.BiometricEnrollSidecar;
import com.android.settings.biometrics.BiometricErrorDialog;
import com.android.settings.biometrics.BiometricUtils;
import com.android.settings.biometrics.BiometricsEnrollEnrolling;
import com.android.settings.core.instrumentation.InstrumentedDialogFragment;

@@ -98,6 +99,7 @@ public class FingerprintEnrollEnrolling extends BiometricsEnrollEnrolling {
    private boolean mCanAssumeUdfps;
    @Nullable private ProgressBar mProgressBar;
    private ObjectAnimator mProgressAnim;
    private TextView mDescriptionText;
    private TextView mErrorText;
    private Interpolator mFastOutSlowInInterpolator;
    private Interpolator mLinearOutSlowInInterpolator;
@@ -145,7 +147,11 @@ public class FingerprintEnrollEnrolling extends BiometricsEnrollEnrolling {
        mCanAssumeUdfps = props.size() == 1 && props.get(0).isAnyUdfpsType();

        if (mCanAssumeUdfps) {
            if (BiometricUtils.isReverseLandscape(getApplicationContext())) {
                setContentView(R.layout.udfps_enroll_enrolling_land);
            } else {
                setContentView(R.layout.udfps_enroll_enrolling);
            }
            setDescriptionText(R.string.security_settings_udfps_enroll_start_message);
        } else {
            setContentView(R.layout.fingerprint_enroll_enrolling);
+5 −1
Original line number Diff line number Diff line
@@ -112,8 +112,12 @@ public class FingerprintEnrollFindSensor extends BiometricEnrollBase {

    protected int getContentView() {
        if (mCanAssumeUdfps) {
            if (BiometricUtils.isReverseLandscape(getApplicationContext())) {
                return R.layout.udfps_enroll_find_sensor_land;
            } else {
                return R.layout.udfps_enroll_find_sensor_layout;
            }
        }
        return R.layout.fingerprint_enroll_find_sensor;
    }