From 20e48424d947cb56a6b99b93f7ac9445832b484c Mon Sep 17 00:00:00 2001 From: Beverly Date: Thu, 28 Dec 2023 16:59:26 +0000 Subject: [PATCH] Add new folding grace period settings strings Bug: 315219497 Flag: ACONFIG com.android.internal.foldables.flags.fold_grace_period_enabled DEVELOPMENT Test: manually enable and see new strings (adb root && adb shell setprop persist.fold_grace_period_enabled true && adb reboot) Change-Id: Ie278b45e3928e1154f78066e71551fb5cac8a176 --- res/values/strings.xml | 5 +++++ .../FoldLockBehaviorPreferenceController.java | 10 ++++++++-- .../display/FoldLockBehaviorSettings.java | 17 +++++++++++++---- 3 files changed, 26 insertions(+), 6 deletions(-) diff --git a/res/values/strings.xml b/res/values/strings.xml index 88bd4d730bc..7eb5bdacdf6 100644 --- a/res/values/strings.xml +++ b/res/values/strings.xml @@ -88,6 +88,11 @@ Only games, videos, and more Front display turns on for apps that stop your screen going idle + + Swipe up to continue + + Fold your phone and swipe up on the front display to continue using the app, or wait a few seconds for the screen to lock + Never diff --git a/src/com/android/settings/display/FoldLockBehaviorPreferenceController.java b/src/com/android/settings/display/FoldLockBehaviorPreferenceController.java index 661eb99c4a2..bee3a22e9ed 100644 --- a/src/com/android/settings/display/FoldLockBehaviorPreferenceController.java +++ b/src/com/android/settings/display/FoldLockBehaviorPreferenceController.java @@ -29,6 +29,7 @@ import android.provider.Settings; import androidx.preference.Preference; +import com.android.internal.foldables.FoldGracePeriodProvider; import com.android.internal.foldables.FoldLockSettingAvailabilityProvider; import com.android.settings.R; import com.android.settings.core.BasePreferenceController; @@ -58,8 +59,13 @@ public class FoldLockBehaviorPreferenceController extends BasePreferenceControll mFoldLockSettingAvailabilityProvider = foldLockSettingAvailabilityProvider; KEY_TO_TEXT.put(SETTING_VALUE_STAY_AWAKE_ON_FOLD, resourceToString(R.string.stay_awake_on_fold_title)); - KEY_TO_TEXT.put(SETTING_VALUE_SELECTIVE_STAY_AWAKE, - resourceToString(R.string.selective_stay_awake_title)); + if (new FoldGracePeriodProvider().isEnabled()) { + KEY_TO_TEXT.put(SETTING_VALUE_SELECTIVE_STAY_AWAKE, + resourceToString(R.string.stay_awake_on_lockscreen_title)); + } else { + KEY_TO_TEXT.put(SETTING_VALUE_SELECTIVE_STAY_AWAKE, + resourceToString(R.string.selective_stay_awake_title)); + } KEY_TO_TEXT.put(SETTING_VALUE_SLEEP_ON_FOLD, resourceToString(R.string.sleep_on_fold_title)); } diff --git a/src/com/android/settings/display/FoldLockBehaviorSettings.java b/src/com/android/settings/display/FoldLockBehaviorSettings.java index e94b17ecc7b..432c2304acf 100644 --- a/src/com/android/settings/display/FoldLockBehaviorSettings.java +++ b/src/com/android/settings/display/FoldLockBehaviorSettings.java @@ -24,6 +24,7 @@ import android.os.UserHandle; import android.provider.Settings; import android.util.Log; +import com.android.internal.foldables.FoldGracePeriodProvider; import com.android.settings.R; import com.android.settings.support.actionbar.HelpResourceProvider; import com.android.settings.utils.CandidateInfoExtra; @@ -54,6 +55,7 @@ public class FoldLockBehaviorSettings extends RadioButtonPickerFragment implemen SETTING_VALUE_SLEEP_ON_FOLD)); private static final String SETTING_VALUE_DEFAULT = SETTING_VALUE_SELECTIVE_STAY_AWAKE; private Context mContext; + private final FoldGracePeriodProvider mFoldGracePeriodProvider = new FoldGracePeriodProvider(); @Override public void onAttach(Context context) { @@ -69,10 +71,17 @@ public class FoldLockBehaviorSettings extends RadioButtonPickerFragment implemen resourceToString(R.string.stay_awake_on_fold_title), resourceToString(R.string.stay_awake_on_fold_summary), SETTING_VALUE_STAY_AWAKE_ON_FOLD, /* enabled */ true)); - candidates.add(new CandidateInfoExtra( - resourceToString(R.string.selective_stay_awake_title), - resourceToString(R.string.selective_stay_awake_summary), - SETTING_VALUE_SELECTIVE_STAY_AWAKE, /* enabled */ true)); + if (mFoldGracePeriodProvider.isEnabled()) { + candidates.add(new CandidateInfoExtra( + resourceToString(R.string.stay_awake_on_lockscreen_title), + resourceToString(R.string.stay_awake_on_lockscreen_summary), + SETTING_VALUE_SELECTIVE_STAY_AWAKE, /* enabled */ true)); + } else { + candidates.add(new CandidateInfoExtra( + resourceToString(R.string.selective_stay_awake_title), + resourceToString(R.string.selective_stay_awake_summary), + SETTING_VALUE_SELECTIVE_STAY_AWAKE, /* enabled */ true)); + } candidates.add(new CandidateInfoExtra( resourceToString(R.string.sleep_on_fold_title), resourceToString(R.string.sleep_on_fold_summary),