From f27e9e6553b8d35cde0349e1aa0a2600f6f7b6d2 Mon Sep 17 00:00:00 2001 From: josephpv Date: Thu, 18 Jan 2024 14:21:22 +0000 Subject: [PATCH] Add skip button in PS account login error screen Recording link : b/320460786#comment5 Bug: 320460786 Test: Verified skip button in shown in error screen. Change-Id: I0b3b9258ad55069c9920d7fc9fb7f17d422297f1 --- .../privatespace_main_context_nav.xml | 3 +++ res/values/strings.xml | 10 +++++--- .../PrivateSpaceAccountLoginError.java | 25 ++++++++++++++++++- 3 files changed, 34 insertions(+), 4 deletions(-) diff --git a/res/navigation/privatespace_main_context_nav.xml b/res/navigation/privatespace_main_context_nav.xml index 78494581ec2..f76afac4df1 100644 --- a/res/navigation/privatespace_main_context_nav.xml +++ b/res/navigation/privatespace_main_context_nav.xml @@ -52,6 +52,9 @@ + Done Scroll down to find private space - - Sign in to set up a private space + + Sign in - You need to sign in to an account to set up a private space + Sign in to an account to use with your private space + + Not now + + Continue Choose a lock for your private space diff --git a/src/com/android/settings/privatespace/PrivateSpaceAccountLoginError.java b/src/com/android/settings/privatespace/PrivateSpaceAccountLoginError.java index b64335bdf43..fcb93b1c38e 100644 --- a/src/com/android/settings/privatespace/PrivateSpaceAccountLoginError.java +++ b/src/com/android/settings/privatespace/PrivateSpaceAccountLoginError.java @@ -31,6 +31,7 @@ import android.view.ViewGroup; import androidx.activity.OnBackPressedCallback; import androidx.annotation.Nullable; +import androidx.navigation.fragment.NavHostFragment; import com.android.settings.R; import com.android.settings.core.InstrumentedFragment; @@ -55,11 +56,20 @@ public class PrivateSpaceAccountLoginError extends InstrumentedFragment { final FooterBarMixin mixin = rootView.getMixin(FooterBarMixin.class); mixin.setPrimaryButton( new FooterButton.Builder(getContext()) - .setText(R.string.private_space_tryagain_label) + .setText(R.string.private_space_continue_login_label) .setListener(nextScreen()) .setButtonType(FooterButton.ButtonType.NEXT) .setTheme(com.google.android.setupdesign.R.style.SudGlifButton_Primary) .build()); + mixin.setSecondaryButton( + new FooterButton.Builder(getContext()) + .setText(R.string.private_space_skip_login_label) + .setListener(onSkip()) + .setButtonType(FooterButton.ButtonType.CANCEL) + .setTheme( + androidx.appcompat.R.style + .Base_TextAppearance_AppCompat_Widget_Button) + .build()); OnBackPressedCallback callback = new OnBackPressedCallback(true /* enabled by default */) { @Override @@ -96,4 +106,17 @@ public class PrivateSpaceAccountLoginError extends InstrumentedFragment { } }; } + + private View.OnClickListener onSkip() { + return v -> { + mMetricsFeatureProvider.action( + getContext(), SettingsEnums.ACTION_PRIVATE_SPACE_SETUP_SKIP_ACCOUNT_LOGIN); + mMetricsFeatureProvider.action( + getContext(), + SettingsEnums.ACTION_PRIVATE_SPACE_SETUP_ACCOUNT_LOGIN_SUCCESS, + false); + NavHostFragment.findNavController(PrivateSpaceAccountLoginError.this) + .navigate(R.id.action_success_fragment); + }; + } }