Resolver/Chooser - Fix reuse of textview

Upon reuse of a view by the recyclerview, it was possible to show a
reused view's sublabel, as it was doing incorrect comparisons. Make
sure to always reset the textviews, and hide it if necessary.

Fixes: 150813955
Test: manual, but helpful to have many apps installed and launch the sharesheet
Change-Id: Idb0c03c0b0917104bd9f26cdd9ed33a0055fa6f2
This commit is contained in:
Matt Pietal
2020-06-18 12:16:56 -04:00
parent 35e288c6c6
commit 2d0c7b02bc

View File

@@ -689,17 +689,17 @@ public class ResolverListAdapter extends BaseAdapter {
}
public void bindLabel(CharSequence label, CharSequence subLabel, boolean showSubLabel) {
if (!TextUtils.equals(text.getText(), label)) {
text.setText(label);
}
text.setText(label);
if (TextUtils.equals(label, subLabel)) {
subLabel = "";
subLabel = null;
}
if (showSubLabel || !TextUtils.equals(text2.getText(), subLabel)) {
text2.setText(subLabel);
if (showSubLabel || subLabel != null) {
text2.setVisibility(View.VISIBLE);
text2.setText(subLabel);
} else {
text2.setVisibility(View.GONE);
}
itemView.setContentDescription(null);