Loading src/com/android/settings/search2/SearchViewHolder.java +6 −1 Original line number Diff line number Diff line Loading @@ -34,6 +34,8 @@ import com.android.settings.overlay.FeatureFactory; */ public abstract class SearchViewHolder extends RecyclerView.ViewHolder { private final String mPlaceholderSummary; public final TextView titleView; public final TextView summaryView; public final TextView breadcrumbView; Loading @@ -49,11 +51,14 @@ public abstract class SearchViewHolder extends RecyclerView.ViewHolder { summaryView = view.findViewById(android.R.id.summary); iconView = view.findViewById(android.R.id.icon); breadcrumbView = view.findViewById(R.id.breadcrumb); mPlaceholderSummary = view.getContext().getString(R.string.summary_placeholder); } public void onBind(SearchFragment fragment, SearchResult result) { titleView.setText(result.title); if (TextUtils.isEmpty(result.summary)) { if (TextUtils.isEmpty(result.summary) || TextUtils.equals(result.summary, mPlaceholderSummary)) { summaryView.setVisibility(View.GONE); } else { summaryView.setText(result.summary); Loading tests/robotests/src/com/android/settings/search/IntentSearchViewHolderTest.java +18 −2 Original line number Diff line number Diff line Loading @@ -111,7 +111,8 @@ public class IntentSearchViewHolderTest { @Test public void testBindViewElements_emptySummary_hideSummaryView() { final SearchResult result = new Builder().addTitle(TITLE) final SearchResult result = new Builder() .addTitle(TITLE) .addRank(1) .addPayload(new IntentPayload(null)) .addIcon(mIcon) Loading @@ -127,7 +128,8 @@ public class IntentSearchViewHolderTest { breadcrumbs.add("a"); breadcrumbs.add("b"); breadcrumbs.add("c"); final SearchResult result = new Builder().addTitle(TITLE) final SearchResult result = new Builder() .addTitle(TITLE) .addRank(1) .addPayload(new IntentPayload(null)) .addBreadcrumbs(breadcrumbs) Loading @@ -139,6 +141,20 @@ public class IntentSearchViewHolderTest { assertThat(mHolder.breadcrumbView.getText()).isEqualTo("a > b > c"); } @Test public void testBindElements_placeholderSummary_visibilityIsGone() { String nonBreakingSpace = mContext.getString(R.string.summary_placeholder); SearchResult result = new Builder() .addTitle(TITLE) .addSummary(nonBreakingSpace) .addPayload(new IntentPayload(null)) .build(); mHolder.onBind(mFragment, result); assertThat(mHolder.summaryView.getVisibility()).isEqualTo(View.GONE); } private SearchResult getSearchResult() { Builder builder = new Builder(); builder.addTitle(TITLE) Loading Loading
src/com/android/settings/search2/SearchViewHolder.java +6 −1 Original line number Diff line number Diff line Loading @@ -34,6 +34,8 @@ import com.android.settings.overlay.FeatureFactory; */ public abstract class SearchViewHolder extends RecyclerView.ViewHolder { private final String mPlaceholderSummary; public final TextView titleView; public final TextView summaryView; public final TextView breadcrumbView; Loading @@ -49,11 +51,14 @@ public abstract class SearchViewHolder extends RecyclerView.ViewHolder { summaryView = view.findViewById(android.R.id.summary); iconView = view.findViewById(android.R.id.icon); breadcrumbView = view.findViewById(R.id.breadcrumb); mPlaceholderSummary = view.getContext().getString(R.string.summary_placeholder); } public void onBind(SearchFragment fragment, SearchResult result) { titleView.setText(result.title); if (TextUtils.isEmpty(result.summary)) { if (TextUtils.isEmpty(result.summary) || TextUtils.equals(result.summary, mPlaceholderSummary)) { summaryView.setVisibility(View.GONE); } else { summaryView.setText(result.summary); Loading
tests/robotests/src/com/android/settings/search/IntentSearchViewHolderTest.java +18 −2 Original line number Diff line number Diff line Loading @@ -111,7 +111,8 @@ public class IntentSearchViewHolderTest { @Test public void testBindViewElements_emptySummary_hideSummaryView() { final SearchResult result = new Builder().addTitle(TITLE) final SearchResult result = new Builder() .addTitle(TITLE) .addRank(1) .addPayload(new IntentPayload(null)) .addIcon(mIcon) Loading @@ -127,7 +128,8 @@ public class IntentSearchViewHolderTest { breadcrumbs.add("a"); breadcrumbs.add("b"); breadcrumbs.add("c"); final SearchResult result = new Builder().addTitle(TITLE) final SearchResult result = new Builder() .addTitle(TITLE) .addRank(1) .addPayload(new IntentPayload(null)) .addBreadcrumbs(breadcrumbs) Loading @@ -139,6 +141,20 @@ public class IntentSearchViewHolderTest { assertThat(mHolder.breadcrumbView.getText()).isEqualTo("a > b > c"); } @Test public void testBindElements_placeholderSummary_visibilityIsGone() { String nonBreakingSpace = mContext.getString(R.string.summary_placeholder); SearchResult result = new Builder() .addTitle(TITLE) .addSummary(nonBreakingSpace) .addPayload(new IntentPayload(null)) .build(); mHolder.onBind(mFragment, result); assertThat(mHolder.summaryView.getVisibility()).isEqualTo(View.GONE); } private SearchResult getSearchResult() { Builder builder = new Builder(); builder.addTitle(TITLE) Loading