Loading res/layout/private_space_pre_finish_delay.xml 0 → 100644 +29 −0 Original line number Diff line number Diff line <?xml version="1.0" encoding="utf-8"?> <!-- ~ Copyright (C) 2024 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.GlifLoadingLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:app="http://schemas.android.com/apk/res-auto" android:id="@+id/private_space_pre_finish" android:layout_width="match_parent" android:layout_height="match_parent" android:orientation="vertical" android:icon="@drawable/ic_private_space_icon" app:sudUsePartnerHeavyTheme="true" app:sudIllustrationType="default" app:sucHeaderText="@string/private_space_pre_finish_title"> </com.google.android.setupdesign.GlifLoadingLayout> No newline at end of file res/navigation/privatespace_main_context_nav.xml +10 −3 Original line number Diff line number Diff line Loading @@ -46,6 +46,13 @@ android:id="@+id/action_retry_profile_creation" app:destination="@id/ps_auto_advance_fragment"/> </fragment> <fragment android:id="@+id/ps_pre_finish_delay_fragment" android:name="com.android.settings.privatespace.SetupPreFinishDelayFragment" android:label="fragment_ps_pre_finish"> <action android:id="@+id/action_success_fragment" app:destination="@id/ps_profile_success_fragment"/> </fragment> <fragment android:id="@+id/ps_profile_success_fragment" android:name="com.android.settings.privatespace.SetupSuccessFragment" android:label="fragment_ps_success"/> Loading @@ -64,7 +71,7 @@ android:label="fragment_ps_lock"> <action android:id="@+id/action_lock_success_fragment" app:destination="@id/ps_profile_success_fragment"/> app:destination="@id/ps_pre_finish_delay_fragment"/> </fragment> <fragment android:id="@+id/ps_account_intro_fragment" android:name="com.android.settings.privatespace.PrivateSpaceGaiaEducationFragment" Loading @@ -76,6 +83,6 @@ android:id="@+id/action_advance_login_error" app:destination="@id/ps_account_error_fragment"/> </fragment> <action android:id="@+id/action_success_fragment" app:destination="@id/ps_profile_success_fragment"/> <action android:id="@+id/action_pre_finish_delay_fragment" app:destination="@id/ps_pre_finish_delay_fragment"/> </navigation> res/values/strings.xml +2 −0 Original line number Diff line number Diff line Loading @@ -1352,6 +1352,8 @@ <string name="private_space_use_screenlock_label">Use screen lock</string> <!-- Label for private space lock setup button to choose a new lock. [CHAR LIMIT=50] --> <string name="private_space_set_lock_label">Choose new lock</string> <!-- Title for private space setup pre completion screen to add a delay. [CHAR LIMIT=30] --> <string name="private_space_pre_finish_title">Just a sec\u2026</string> <!-- Title for private space setup success screen. [CHAR LIMIT=30] --> <string name="private_space_success_title">All set!</string> <!-- Summary for the private space setup success screen. [CHAR LIMIT=NONE] --> src/com/android/settings/privatespace/AutoAdvanceSetupFragment.java +9 −7 Original line number Diff line number Diff line Loading @@ -60,7 +60,7 @@ public class AutoAdvanceSetupFragment extends InstrumentedFragment { private static final int ANIMATION_DURATION_MILLIS = 500; private static final int HEADER_TEXT_MAX_LINES = 4; private GlifLayout mRootView; private Handler mHandler; private static final Handler sHandler = new Handler(Looper.getMainLooper()); private int mScreenTitleIndex; private static final List<Pair<Integer, Integer>> HEADER_ILLUSTRATION_PAIRS = ImmutableList.of( Loading @@ -78,7 +78,7 @@ public class AutoAdvanceSetupFragment extends InstrumentedFragment { if (getActivity() != null) { if (++mScreenTitleIndex < HEADER_ILLUSTRATION_PAIRS.size()) { startFadeOutAnimation(); mHandler.postDelayed(mUpdateScreenResources, DELAY_BETWEEN_SCREENS); sHandler.postDelayed(mUpdateScreenResources, DELAY_BETWEEN_SCREENS); } else if (PrivateSpaceMaintainer.getInstance(getActivity()) .doesPrivateSpaceExist()) { mMetricsFeatureProvider.action( Loading Loading @@ -133,8 +133,6 @@ public class AutoAdvanceSetupFragment extends InstrumentedFragment { mRootView.getHeaderTextView().setBreakStrategy(BREAK_STRATEGY_SIMPLE); mRootView.getHeaderTextView().setAccessibilityLiveRegion(ACCESSIBILITY_LIVE_REGION_POLITE); updateHeaderAndIllustration(); mHandler = new Handler(Looper.getMainLooper()); mHandler.postDelayed(mUpdateScreenResources, DELAY_BETWEEN_SCREENS); OnBackPressedCallback callback = new OnBackPressedCallback(true /* enabled by default */) { @Override Loading @@ -155,12 +153,16 @@ public class AutoAdvanceSetupFragment extends InstrumentedFragment { @Override public void onDestroy() { if (mHandler != null) { mHandler.removeCallbacks(mUpdateScreenResources); } sHandler.removeCallbacks(mUpdateScreenResources); super.onDestroy(); } @Override public void onResume() { sHandler.postDelayed(mUpdateScreenResources, DELAY_BETWEEN_SCREENS); super.onResume(); } @Override public int getMetricsCategory() { return SettingsEnums.PRIVATE_SPACE_SETUP_SPACE_CREATION; Loading src/com/android/settings/privatespace/PrivateSpaceSetLockFragment.java +1 −1 Original line number Diff line number Diff line Loading @@ -97,7 +97,7 @@ public class PrivateSpaceSetLockFragment extends InstrumentedFragment { getContext(), SettingsEnums.ACTION_PRIVATE_SPACE_SETUP_USE_SCREEN_LOCK); // Simply Use default screen lock. No need to handle NavHostFragment.findNavController(PrivateSpaceSetLockFragment.this) .navigate(R.id.action_lock_success_fragment); .navigate(R.id.action_pre_finish_delay_fragment); }; } Loading Loading
res/layout/private_space_pre_finish_delay.xml 0 → 100644 +29 −0 Original line number Diff line number Diff line <?xml version="1.0" encoding="utf-8"?> <!-- ~ Copyright (C) 2024 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.GlifLoadingLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:app="http://schemas.android.com/apk/res-auto" android:id="@+id/private_space_pre_finish" android:layout_width="match_parent" android:layout_height="match_parent" android:orientation="vertical" android:icon="@drawable/ic_private_space_icon" app:sudUsePartnerHeavyTheme="true" app:sudIllustrationType="default" app:sucHeaderText="@string/private_space_pre_finish_title"> </com.google.android.setupdesign.GlifLoadingLayout> No newline at end of file
res/navigation/privatespace_main_context_nav.xml +10 −3 Original line number Diff line number Diff line Loading @@ -46,6 +46,13 @@ android:id="@+id/action_retry_profile_creation" app:destination="@id/ps_auto_advance_fragment"/> </fragment> <fragment android:id="@+id/ps_pre_finish_delay_fragment" android:name="com.android.settings.privatespace.SetupPreFinishDelayFragment" android:label="fragment_ps_pre_finish"> <action android:id="@+id/action_success_fragment" app:destination="@id/ps_profile_success_fragment"/> </fragment> <fragment android:id="@+id/ps_profile_success_fragment" android:name="com.android.settings.privatespace.SetupSuccessFragment" android:label="fragment_ps_success"/> Loading @@ -64,7 +71,7 @@ android:label="fragment_ps_lock"> <action android:id="@+id/action_lock_success_fragment" app:destination="@id/ps_profile_success_fragment"/> app:destination="@id/ps_pre_finish_delay_fragment"/> </fragment> <fragment android:id="@+id/ps_account_intro_fragment" android:name="com.android.settings.privatespace.PrivateSpaceGaiaEducationFragment" Loading @@ -76,6 +83,6 @@ android:id="@+id/action_advance_login_error" app:destination="@id/ps_account_error_fragment"/> </fragment> <action android:id="@+id/action_success_fragment" app:destination="@id/ps_profile_success_fragment"/> <action android:id="@+id/action_pre_finish_delay_fragment" app:destination="@id/ps_pre_finish_delay_fragment"/> </navigation>
res/values/strings.xml +2 −0 Original line number Diff line number Diff line Loading @@ -1352,6 +1352,8 @@ <string name="private_space_use_screenlock_label">Use screen lock</string> <!-- Label for private space lock setup button to choose a new lock. [CHAR LIMIT=50] --> <string name="private_space_set_lock_label">Choose new lock</string> <!-- Title for private space setup pre completion screen to add a delay. [CHAR LIMIT=30] --> <string name="private_space_pre_finish_title">Just a sec\u2026</string> <!-- Title for private space setup success screen. [CHAR LIMIT=30] --> <string name="private_space_success_title">All set!</string> <!-- Summary for the private space setup success screen. [CHAR LIMIT=NONE] -->
src/com/android/settings/privatespace/AutoAdvanceSetupFragment.java +9 −7 Original line number Diff line number Diff line Loading @@ -60,7 +60,7 @@ public class AutoAdvanceSetupFragment extends InstrumentedFragment { private static final int ANIMATION_DURATION_MILLIS = 500; private static final int HEADER_TEXT_MAX_LINES = 4; private GlifLayout mRootView; private Handler mHandler; private static final Handler sHandler = new Handler(Looper.getMainLooper()); private int mScreenTitleIndex; private static final List<Pair<Integer, Integer>> HEADER_ILLUSTRATION_PAIRS = ImmutableList.of( Loading @@ -78,7 +78,7 @@ public class AutoAdvanceSetupFragment extends InstrumentedFragment { if (getActivity() != null) { if (++mScreenTitleIndex < HEADER_ILLUSTRATION_PAIRS.size()) { startFadeOutAnimation(); mHandler.postDelayed(mUpdateScreenResources, DELAY_BETWEEN_SCREENS); sHandler.postDelayed(mUpdateScreenResources, DELAY_BETWEEN_SCREENS); } else if (PrivateSpaceMaintainer.getInstance(getActivity()) .doesPrivateSpaceExist()) { mMetricsFeatureProvider.action( Loading Loading @@ -133,8 +133,6 @@ public class AutoAdvanceSetupFragment extends InstrumentedFragment { mRootView.getHeaderTextView().setBreakStrategy(BREAK_STRATEGY_SIMPLE); mRootView.getHeaderTextView().setAccessibilityLiveRegion(ACCESSIBILITY_LIVE_REGION_POLITE); updateHeaderAndIllustration(); mHandler = new Handler(Looper.getMainLooper()); mHandler.postDelayed(mUpdateScreenResources, DELAY_BETWEEN_SCREENS); OnBackPressedCallback callback = new OnBackPressedCallback(true /* enabled by default */) { @Override Loading @@ -155,12 +153,16 @@ public class AutoAdvanceSetupFragment extends InstrumentedFragment { @Override public void onDestroy() { if (mHandler != null) { mHandler.removeCallbacks(mUpdateScreenResources); } sHandler.removeCallbacks(mUpdateScreenResources); super.onDestroy(); } @Override public void onResume() { sHandler.postDelayed(mUpdateScreenResources, DELAY_BETWEEN_SCREENS); super.onResume(); } @Override public int getMetricsCategory() { return SettingsEnums.PRIVATE_SPACE_SETUP_SPACE_CREATION; Loading
src/com/android/settings/privatespace/PrivateSpaceSetLockFragment.java +1 −1 Original line number Diff line number Diff line Loading @@ -97,7 +97,7 @@ public class PrivateSpaceSetLockFragment extends InstrumentedFragment { getContext(), SettingsEnums.ACTION_PRIVATE_SPACE_SETUP_USE_SCREEN_LOCK); // Simply Use default screen lock. No need to handle NavHostFragment.findNavController(PrivateSpaceSetLockFragment.this) .navigate(R.id.action_lock_success_fragment); .navigate(R.id.action_pre_finish_delay_fragment); }; } Loading