Merge "Fix flicker for AppDataUsagePreference" into tm-dev am: 05f6617b64

Original change: https://googleplex-android-review.googlesource.com/c/platform/packages/apps/Settings/+/18603832

Change-Id: Ic323b3edeb5c2e1579cbc782b9ef1311433cfb0c
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
This commit is contained in:
Chaohui Wang
2022-05-27 10:18:00 +00:00
committed by Automerger Merge Worker

View File

@@ -20,6 +20,7 @@ import android.widget.ProgressBar;
import androidx.preference.PreferenceViewHolder; import androidx.preference.PreferenceViewHolder;
import com.android.settings.R;
import com.android.settingslib.AppItem; import com.android.settingslib.AppItem;
import com.android.settingslib.net.UidDetail; import com.android.settingslib.net.UidDetail;
import com.android.settingslib.net.UidDetailProvider; import com.android.settingslib.net.UidDetailProvider;
@@ -49,6 +50,9 @@ public class AppDataUsagePreference extends AppPreference {
if (mDetail != null) { if (mDetail != null) {
setAppInfo(); setAppInfo();
} else { } else {
// Set a placeholder title before starting to fetch real title, this is necessary
// to avoid preference height change.
setTitle(R.string.summary_placeholder);
ThreadUtils.postOnBackgroundThread(() -> { ThreadUtils.postOnBackgroundThread(() -> {
mDetail = provider.getUidDetail(mItem.key, true /* blocking */); mDetail = provider.getUidDetail(mItem.key, true /* blocking */);
ThreadUtils.postOnMainThread(() -> setAppInfo()); ThreadUtils.postOnMainThread(() -> setAppInfo());