From e545365c66328073d3543e69eba584bbad06650d Mon Sep 17 00:00:00 2001 From: xynngh Date: Sun, 18 Oct 2020 15:23:12 +0400 Subject: [PATCH] Display blacklist name in call log and info dialog --- .../CallLogItemRecyclerViewAdapter.java | 19 ++++++++++++++++--- .../InfoDialogHelper.java | 13 ++++++++++++- app/src/main/res/layout/info_dialog.xml | 14 ++++++++++++-- 3 files changed, 40 insertions(+), 6 deletions(-) diff --git a/app/src/main/java/dummydomain/yetanothercallblocker/CallLogItemRecyclerViewAdapter.java b/app/src/main/java/dummydomain/yetanothercallblocker/CallLogItemRecyclerViewAdapter.java index c92c689..9f6e193 100644 --- a/app/src/main/java/dummydomain/yetanothercallblocker/CallLogItemRecyclerViewAdapter.java +++ b/app/src/main/java/dummydomain/yetanothercallblocker/CallLogItemRecyclerViewAdapter.java @@ -84,9 +84,7 @@ public class CallLogItemRecyclerViewAdapter extends GenericRecyclerViewAdapter NumberInfo numberInfo = item.numberInfo; - label.setText(numberInfo.noNumber - ? context.getString(R.string.no_number) - : numberInfo.name != null ? numberInfo.name : item.number); + label.setText(getLabel(context, item)); IconAndColor iconAndColor = IconAndColor.forNumberRating( numberInfo.rating, numberInfo.contactItem != null); @@ -126,6 +124,21 @@ public class CallLogItemRecyclerViewAdapter extends GenericRecyclerViewAdapter time.setText(timeString); } + private String getLabel(Context context, CallLogItem item) { + NumberInfo numberInfo = item.numberInfo; + + if (numberInfo.noNumber) return context.getString(R.string.no_number); + + if (numberInfo.name != null) return numberInfo.name; + + if (numberInfo.blacklistItem != null + && !TextUtils.isEmpty(numberInfo.blacklistItem.getName())) { + return numberInfo.blacklistItem.getName(); + } + + return item.number; + } + private void bindTypeIcons(CallLogItemGroup group) { List items = group.getItems(); diff --git a/app/src/main/java/dummydomain/yetanothercallblocker/InfoDialogHelper.java b/app/src/main/java/dummydomain/yetanothercallblocker/InfoDialogHelper.java index 887964c..e87da71 100644 --- a/app/src/main/java/dummydomain/yetanothercallblocker/InfoDialogHelper.java +++ b/app/src/main/java/dummydomain/yetanothercallblocker/InfoDialogHelper.java @@ -64,12 +64,23 @@ public class InfoDialogHelper { featuredNameView.setVisibility(View.GONE); } + String blacklistName = null; + TextView inBlacklistView = view.findViewById(R.id.in_blacklist); if (numberInfo.blacklistItem != null) { - inBlacklistView.setVisibility(View.VISIBLE); + blacklistName = numberInfo.blacklistItem.getName(); if (numberInfo.contactItem != null) { inBlacklistView.setText(R.string.info_in_blacklist_contact); } + } else { + inBlacklistView.setVisibility(View.GONE); + } + + TextView blacklistNameView = view.findViewById(R.id.blacklist_name); + if (!TextUtils.isEmpty(blacklistName)) { + blacklistNameView.setText(blacklistName); + } else { + blacklistNameView.setVisibility(View.GONE); } ReviewsSummaryHelper.populateSummary(view.findViewById(R.id.reviews_summary), diff --git a/app/src/main/res/layout/info_dialog.xml b/app/src/main/res/layout/info_dialog.xml index 5022d27..2149992 100644 --- a/app/src/main/res/layout/info_dialog.xml +++ b/app/src/main/res/layout/info_dialog.xml @@ -40,6 +40,17 @@ android:textSize="20sp" tools:text="Featured company name" /> + + + android:textAlignment="center" /> \ No newline at end of file