From 730a573d2844acc0f303b77f5864b5339f29fdca Mon Sep 17 00:00:00 2001 From: Kevin Han Date: Fri, 11 Jun 2021 19:29:13 -0700 Subject: [PATCH] Update "Unused apps" load-in UI Update the UI for the "Unused apps" preference to update with the loaded number of unused apps instead of having the entire preference animate in. Bug: 187996287 Test: manual Test: atest HibernatedAppsPreferenceControllerTest Change-Id: I1c6998de4daaf4d8678a3ffdaf83f5d2417fa68d --- .../HibernatedAppsPreferenceController.java | 12 +++++++----- 1 file changed, 7 insertions(+), 5 deletions(-) diff --git a/src/com/android/settings/applications/HibernatedAppsPreferenceController.java b/src/com/android/settings/applications/HibernatedAppsPreferenceController.java index bf12b86c004..898d7096ee6 100644 --- a/src/com/android/settings/applications/HibernatedAppsPreferenceController.java +++ b/src/com/android/settings/applications/HibernatedAppsPreferenceController.java @@ -61,6 +61,7 @@ public final class HibernatedAppsPreferenceController extends BasePreferenceCont private PreferenceScreen mScreen; private int mUnusedCount = 0; private boolean mLoadingUnusedApps; + private boolean mLoadedUnusedCount; private final Executor mBackgroundExecutor; private final Executor mMainExecutor; @@ -79,14 +80,15 @@ public final class HibernatedAppsPreferenceController extends BasePreferenceCont @Override public int getAvailabilityStatus() { - return isHibernationEnabled() && mUnusedCount > 0 - ? AVAILABLE : CONDITIONALLY_UNAVAILABLE; + return isHibernationEnabled() ? AVAILABLE : CONDITIONALLY_UNAVAILABLE; } @Override public CharSequence getSummary() { - return mContext.getResources().getQuantityString( - R.plurals.unused_apps_summary, mUnusedCount, mUnusedCount); + return mLoadedUnusedCount + ? mContext.getResources().getQuantityString( + R.plurals.unused_apps_summary, mUnusedCount, mUnusedCount) + : mContext.getResources().getString(R.string.summary_placeholder); } @Override @@ -111,8 +113,8 @@ public final class HibernatedAppsPreferenceController extends BasePreferenceCont loadUnusedCount(unusedCount -> { mUnusedCount = unusedCount; mLoadingUnusedApps = false; + mLoadedUnusedCount = true; mMainExecutor.execute(() -> { - super.displayPreference(mScreen); Preference pref = mScreen.findPreference(mPreferenceKey); refreshSummary(pref); });