Merge "Fix the ExpandDividerPreference will flash one time in some corner cases" into sc-v2-dev am: 0ed32fca75 am: 22a28d3f7e

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

Change-Id: I08875c7fdfeb8151194ecc93ff351a19945fb2aa
This commit is contained in:
YUKAI HUNG
2021-10-25 17:12:57 +00:00
committed by Automerger Merge Worker
3 changed files with 14 additions and 29 deletions

View File

@@ -65,8 +65,7 @@ public class ExpandDividerPreference extends Preference {
@Override
public void onClick() {
mIsExpanded = !mIsExpanded;
refreshState();
setIsExpanded(!mIsExpanded);
if (mOnExpandListener != null) {
mOnExpandListener.onExpand(mIsExpanded);
}
@@ -74,10 +73,7 @@ public class ExpandDividerPreference extends Preference {
void setTitle(final String titleContent) {
mTitleContent = titleContent;
if (mTextView != null) {
mTextView.postDelayed(
() -> mTextView.setText(titleContent), 50);
}
refreshState();
}
void setIsExpanded(boolean isExpanded) {
@@ -90,13 +86,13 @@ public class ExpandDividerPreference extends Preference {
}
private void refreshState() {
final int iconId =
mIsExpanded
? R.drawable.ic_settings_expand_less
: R.drawable.ic_settings_expand_more;
if (mImageView != null) {
mImageView.setImageResource(iconId);
mImageView.setImageResource(mIsExpanded
? R.drawable.ic_settings_expand_less
: R.drawable.ic_settings_expand_more);
}
if (mTextView != null) {
mTextView.setText(mTitleContent);
}
setTitle(mTitleContent);
}
}