diff options
Diffstat (limited to 'PermissionController/src/com/android/permissioncontroller/safetycenter/ui/SafetyStatusPreference.java')
-rw-r--r-- | PermissionController/src/com/android/permissioncontroller/safetycenter/ui/SafetyStatusPreference.java | 20 |
1 files changed, 19 insertions, 1 deletions
diff --git a/PermissionController/src/com/android/permissioncontroller/safetycenter/ui/SafetyStatusPreference.java b/PermissionController/src/com/android/permissioncontroller/safetycenter/ui/SafetyStatusPreference.java index 0b8706a38..811841845 100644 --- a/PermissionController/src/com/android/permissioncontroller/safetycenter/ui/SafetyStatusPreference.java +++ b/PermissionController/src/com/android/permissioncontroller/safetycenter/ui/SafetyStatusPreference.java @@ -27,6 +27,7 @@ import android.os.Looper; import android.safetycenter.SafetyCenterStatus; import android.text.TextUtils; import android.util.AttributeSet; +import android.util.Log; import android.widget.ImageView; import android.widget.TextView; @@ -49,6 +50,8 @@ import java.util.Objects; @RequiresApi(TIRAMISU) public class SafetyStatusPreference extends Preference implements ComparablePreference { + private static final String TAG = "SafetyStatusPreference"; + @Nullable private StatusUiData mStatus; @Nullable private SafetyCenterViewModel mViewModel; @@ -72,6 +75,7 @@ public class SafetyStatusPreference extends Preference implements ComparablePref @Override public void onBindViewHolder(PreferenceViewHolder holder) { super.onBindViewHolder(holder); + Log.v(TAG, String.format("onBindViewHolder called for status %s", mStatus)); if (mStatus == null) { return; @@ -140,12 +144,14 @@ public class SafetyStatusPreference extends Preference implements ComparablePref if (mIsTextChangeAnimationRunning) { return; } + Log.v(TAG, "Starting status text animation"); String titleText = mStatus.getTitle().toString(); String summaryText = mStatus.getSummary(getContext()).toString(); boolean titleEquals = titleView.getText().toString().equals(titleText); boolean summaryEquals = summaryView.getText().toString().equals(summaryText); Runnable onFinish = () -> { + Log.v(TAG, "Finishing status text animation"); mIsTextChangeAnimationRunning = false; runTextAnimationIfNeeded(titleView, summaryView); }; @@ -334,7 +340,12 @@ public class SafetyStatusPreference extends Preference implements ComparablePref } void setData(StatusUiData statusUiData) { + if (Objects.equals(mStatus, statusUiData)) { + return; + } + mStatus = statusUiData; + Log.v(TAG, String.format("setData called for status %s", mStatus)); safeNotifyChanged(); } @@ -349,7 +360,14 @@ public class SafetyStatusPreference extends Preference implements ComparablePref // Calling notifyChanged while recyclerview is scrolling or computing layout will result in an // IllegalStateException. Post to handler to wait for UI to settle. private void safeNotifyChanged() { - new Handler(Looper.getMainLooper()).post(this::notifyChanged); + new Handler(Looper.getMainLooper()) + .post( + () -> { + Log.v( + TAG, + String.format("Calling notifyChanged for status %s", mStatus)); + notifyChanged(); + }); } @Override |