summaryrefslogtreecommitdiff
path: root/java/com/android/dialer/speeddial
diff options
context:
space:
mode:
Diffstat (limited to 'java/com/android/dialer/speeddial')
-rw-r--r--java/com/android/dialer/speeddial/SpeedDialAdapter.java5
-rw-r--r--java/com/android/dialer/speeddial/SpeedDialFragment.java17
2 files changed, 17 insertions, 5 deletions
diff --git a/java/com/android/dialer/speeddial/SpeedDialAdapter.java b/java/com/android/dialer/speeddial/SpeedDialAdapter.java
index 6f6ac5498..8a37e97dd 100644
--- a/java/com/android/dialer/speeddial/SpeedDialAdapter.java
+++ b/java/com/android/dialer/speeddial/SpeedDialAdapter.java
@@ -210,4 +210,9 @@ public final class SpeedDialAdapter extends RecyclerView.Adapter<RecyclerView.Vi
public void setItemTouchHelper(ItemTouchHelper itemTouchHelper) {
this.itemTouchHelper = itemTouchHelper;
}
+
+ /** Returns true if there are suggested contacts. */
+ public boolean hasFrequents() {
+ return !speedDialUiItems.isEmpty() && getItemViewType(getItemCount() - 1) == RowType.SUGGESTION;
+ }
}
diff --git a/java/com/android/dialer/speeddial/SpeedDialFragment.java b/java/com/android/dialer/speeddial/SpeedDialFragment.java
index 26893a8d3..b74c06239 100644
--- a/java/com/android/dialer/speeddial/SpeedDialFragment.java
+++ b/java/com/android/dialer/speeddial/SpeedDialFragment.java
@@ -34,6 +34,7 @@ import android.view.ViewGroup;
import android.widget.FrameLayout;
import com.android.dialer.callintent.CallInitiationType;
import com.android.dialer.callintent.CallIntentBuilder;
+import com.android.dialer.common.FragmentUtils;
import com.android.dialer.common.LogUtil;
import com.android.dialer.common.concurrent.DialerExecutorComponent;
import com.android.dialer.common.concurrent.SupportUiListener;
@@ -132,11 +133,6 @@ public class SpeedDialFragment extends Fragment {
return rootLayout;
}
- public boolean hasFrequents() {
- // TODO(calderwoodra)
- return false;
- }
-
@Override
public void onResume() {
super.onResume();
@@ -173,12 +169,17 @@ public class SpeedDialFragment extends Fragment {
}
private void onSpeedDialUiItemListLoaded(ImmutableList<SpeedDialUiItem> speedDialUiItems) {
+ LogUtil.enterBlock("SpeedDialFragment.onSpeedDialUiItemListLoaded");
// TODO(calderwoodra): Use DiffUtil to properly update and animate the change
adapter.setSpeedDialUiItems(
UiItemLoaderComponent.get(getContext())
.speedDialUiItemLoader()
.insertDuoChannels(getContext(), speedDialUiItems));
adapter.notifyDataSetChanged();
+ if (getActivity() != null) {
+ FragmentUtils.getParentUnsafe(this, HostInterface.class)
+ .setHasFrequents(adapter.hasFrequents());
+ }
}
@Override
@@ -359,4 +360,10 @@ public class SpeedDialFragment extends Fragment {
Contacts.CONTENT_URI, String.valueOf(speedDialUiItem.contactId()))));
}
}
+
+ /** Interface for {@link SpeedDialFragment} to communicate with its host/parent. */
+ public interface HostInterface {
+
+ void setHasFrequents(boolean hasFrequents);
+ }
}