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

Commit 04ef86d1 authored by Chaohui Wang's avatar Chaohui Wang Committed by Android (Google) Code Review
Browse files

Merge "Fix description when erase esim" into main

parents 37bb8a3c c57ab6ee
Loading
Loading
Loading
Loading
+1 −17
Original line number Diff line number Diff line
@@ -19,21 +19,5 @@
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:orientation="vertical"
    android:id="@+id/setup_wizard_layout"
    android:icon="@drawable/ic_delete_accent"
    app:sucHeaderText="@string/main_clear_confirm_title">

    <LinearLayout
        style="@style/SudContentFrame"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:orientation="vertical">

        <TextView
            android:id="@+id/sud_layout_subtitle"
            style="@style/TextAppearance.PreferenceTitle.SettingsLib"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="@string/main_clear_final_desc"/>
    </LinearLayout>
</com.google.android.setupdesign.GlifLayout>
    app:sucHeaderText="@string/main_clear_confirm_title" />
+12 −38
Original line number Diff line number Diff line
@@ -19,8 +19,6 @@ package com.android.settings;

import static com.android.settingslib.RestrictedLockUtils.EnforcedAdmin;

import android.app.ActionBar;
import android.app.Activity;
import android.app.ProgressDialog;
import android.app.admin.DevicePolicyManager;
import android.app.admin.FactoryResetProtectionPolicy;
@@ -28,7 +26,6 @@ import android.app.settings.SettingsEnums;
import android.content.Context;
import android.content.Intent;
import android.content.pm.ActivityInfo;
import android.graphics.Color;
import android.os.AsyncTask;
import android.os.Bundle;
import android.os.SystemProperties;
@@ -36,12 +33,10 @@ import android.os.UserHandle;
import android.os.UserManager;
import android.service.oemlock.OemLockManager;
import android.service.persistentdata.PersistentDataBlockManager;
import android.util.Log;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.Button;
import android.widget.TextView;

import androidx.annotation.VisibleForTesting;

@@ -62,7 +57,7 @@ import com.google.android.setupdesign.GlifLayout;
 * has defined one, followed by a final strongly-worded "THIS WILL ERASE EVERYTHING
 * ON THE PHONE" prompt.  If at any time the phone is allowed to go to sleep, is
 * locked, et cetera, then the confirmation sequence is abandoned.
 *
 * <p>
 * This is the confirmation screen.
 */
public class MainClearConfirm extends InstrumentedFragment {
@@ -70,9 +65,11 @@ public class MainClearConfirm extends InstrumentedFragment {

    private static final String PERSISTENT_DATA_BLOCK_PROP = "ro.frp.pst";

    @VisibleForTesting View mContentView;
    @VisibleForTesting
    GlifLayout mContentView;
    private boolean mEraseSdCard;
    @VisibleForTesting boolean mEraseEsims;
    @VisibleForTesting
    boolean mEraseEsims;

    /**
     * The user has gone through the multiple confirmation, so now we go ahead
@@ -215,9 +212,7 @@ public class MainClearConfirm extends InstrumentedFragment {
     * Configure the UI for the final confirmation interaction
     */
    private void establishFinalConfirmationState() {
        final GlifLayout layout = mContentView.findViewById(R.id.setup_wizard_layout);

        final FooterBarMixin mixin = layout.getMixin(FooterBarMixin.class);
        final FooterBarMixin mixin = mContentView.getMixin(FooterBarMixin.class);
        mixin.setPrimaryButton(
                new FooterButton.Builder(getActivity())
                        .setText(R.string.main_clear_button_text)
@@ -228,21 +223,6 @@ public class MainClearConfirm extends InstrumentedFragment {
        );
    }

    private void setUpActionBarAndTitle() {
        final Activity activity = getActivity();
        if (activity == null) {
            Log.e(TAG, "No activity attached, skipping setUpActionBarAndTitle");
            return;
        }
        final ActionBar actionBar = activity.getActionBar();
        if (actionBar == null) {
            Log.e(TAG, "No actionbar, skipping setUpActionBarAndTitle");
            return;
        }
        actionBar.hide();
        activity.getWindow().setStatusBarColor(Color.TRANSPARENT);
    }

    @Override
    public View onCreateView(LayoutInflater inflater, ViewGroup container,
            Bundle savedInstanceState) {
@@ -258,32 +238,26 @@ public class MainClearConfirm extends InstrumentedFragment {
                    .show();
            return new View(getActivity());
        }
        mContentView = inflater.inflate(R.layout.main_clear_confirm, null);
        setUpActionBarAndTitle();
        mContentView = (GlifLayout) inflater.inflate(R.layout.main_clear_confirm, null);
        establishFinalConfirmationState();
        setAccessibilityTitle();
        setSubtitle();
        setAccessibilityTitle();
        return mContentView;
    }

    private void setAccessibilityTitle() {
        CharSequence currentTitle = getActivity().getTitle();
        TextView confirmationMessage = mContentView.findViewById(R.id.sud_layout_description);
        CharSequence confirmationMessage = mContentView.getDescriptionText();
        if (confirmationMessage != null) {
            String accessibleText = new StringBuilder(currentTitle).append(",").append(
                    confirmationMessage.getText()).toString();
            String accessibleText = currentTitle + "," + confirmationMessage;
            getActivity().setTitle(Utils.createAccessibleSequence(currentTitle, accessibleText));
        }
    }

    @VisibleForTesting
    void setSubtitle() {
        if (mEraseEsims) {
            TextView confirmationMessage = mContentView.findViewById(R.id.sud_layout_description);
            if (confirmationMessage != null) {
                confirmationMessage.setText(R.string.main_clear_final_desc_esim);
                }
        }
        mContentView.setDescriptionText(
                mEraseEsims ? R.string.main_clear_final_desc_esim : R.string.main_clear_final_desc);
    }

    @Override
+8 −7
Original line number Diff line number Diff line
@@ -31,10 +31,11 @@ import android.platform.test.flag.junit.SetFlagsRule;
import android.security.Flags;
import android.service.persistentdata.PersistentDataBlockManager;
import android.view.LayoutInflater;
import android.widget.TextView;

import androidx.fragment.app.FragmentActivity;

import com.google.android.setupdesign.GlifLayout;

import org.junit.Before;
import org.junit.Rule;
import org.junit.Test;
@@ -85,12 +86,12 @@ public class MainClearConfirmTest {
        MainClearConfirm mainClearConfirm = new MainClearConfirm();
        mainClearConfirm.mEraseEsims = true;
        mainClearConfirm.mContentView =
                LayoutInflater.from(mActivity).inflate(R.layout.main_clear_confirm, null);
                (GlifLayout) LayoutInflater.from(mActivity)
                        .inflate(R.layout.main_clear_confirm, null);

        mainClearConfirm.setSubtitle();

        assertThat(((TextView) mainClearConfirm.mContentView
                .findViewById(R.id.sud_layout_description)).getText())
        assertThat(mainClearConfirm.mContentView.getDescriptionText())
                .isEqualTo(mActivity.getString(R.string.main_clear_final_desc_esim));
    }

@@ -99,12 +100,12 @@ public class MainClearConfirmTest {
        MainClearConfirm mainClearConfirm = new MainClearConfirm();
        mainClearConfirm.mEraseEsims = false;
        mainClearConfirm.mContentView =
                LayoutInflater.from(mActivity).inflate(R.layout.main_clear_confirm, null);
                (GlifLayout) LayoutInflater.from(mActivity)
                        .inflate(R.layout.main_clear_confirm, null);

        mainClearConfirm.setSubtitle();

        assertThat(((TextView) mainClearConfirm.mContentView
                .findViewById(R.id.sud_layout_description)).getText())
        assertThat(mainClearConfirm.mContentView.getDescriptionText())
                .isEqualTo(mActivity.getString(R.string.main_clear_final_desc));
    }