Merge "Update seek position by using volume rocker in talkback mode." into nyc-dev
diff --git a/src/com/android/dialer/calllog/CallLogListItemViewHolder.java b/src/com/android/dialer/calllog/CallLogListItemViewHolder.java
index 1c27440..6c25275 100644
--- a/src/com/android/dialer/calllog/CallLogListItemViewHolder.java
+++ b/src/com/android/dialer/calllog/CallLogListItemViewHolder.java
@@ -27,11 +27,9 @@
 import android.support.v7.widget.CardView;
 import android.support.v7.widget.RecyclerView;
 import android.telecom.PhoneAccountHandle;
-import android.telephony.PhoneNumberUtils;
 import android.text.BidiFormatter;
 import android.text.TextDirectionHeuristics;
 import android.text.TextUtils;
-import android.util.Log;
 import android.view.ContextMenu;
 import android.view.MenuItem;
 import android.view.View;
@@ -66,8 +64,6 @@
 import com.google.common.collect.Lists;
 
 import java.util.List;
-import java.util.Map;
-import java.util.Set;
 
 /**
  * This is an object containing references to views contained by the call log list item. This
@@ -625,13 +621,6 @@
     public void updatePhoto() {
         quickContactView.assignContactUri(info.lookupUri);
 
-        if (isBlocked && !TextUtils.isEmpty(number) /* maybe a private number ? */) {
-            quickContactView.setImageDrawable(mContext.getDrawable(R.drawable.blocked_contact));
-            phoneCallDetailsViews.callLocationAndDate.setText(
-                    mContext.getString(R.string.blocked_number_call_log_label));
-            return;
-        }
-
         final boolean isVoicemail = mCallLogCache.isVoicemailNumber(accountHandle, number);
         int contactType = ContactPhotoManager.TYPE_DEFAULT;
         if (isVoicemail) {
@@ -653,6 +642,14 @@
             ContactPhotoManager.getInstance(mContext).loadThumbnail(quickContactView, info.photoId,
                     false /* darkTheme */, true /* isCircular */, request);
         }
+
+        if (mExtendedBlockingButtonRenderer != null) {
+            mExtendedBlockingButtonRenderer.updatePhotoAndLabelIfNecessary(
+                    number,
+                    countryIso,
+                    quickContactView,
+                    phoneCallDetailsViews.callLocationAndDate);
+        }
     }
 
     @Override
diff --git a/src/com/android/dialer/calllog/CallLogQueryHandler.java b/src/com/android/dialer/calllog/CallLogQueryHandler.java
index 9ff74cf..3b493cf 100644
--- a/src/com/android/dialer/calllog/CallLogQueryHandler.java
+++ b/src/com/android/dialer/calllog/CallLogQueryHandler.java
@@ -291,7 +291,7 @@
      */
     private String getUnreadMissedCallsQuery() {
         StringBuilder where = new StringBuilder();
-        where.append(Calls.IS_READ).append(" = 0");
+        where.append(Calls.IS_READ).append(" = 0 OR ").append(Calls.IS_READ).append(" IS NULL");
         where.append(" AND ");
         where.append(Calls.TYPE).append(" = ").append(Calls.MISSED_TYPE);
         return where.toString();
diff --git a/src/com/android/dialer/service/ExtendedBlockingButtonRenderer.java b/src/com/android/dialer/service/ExtendedBlockingButtonRenderer.java
index 5ff3732..f8d5ea0 100644
--- a/src/com/android/dialer/service/ExtendedBlockingButtonRenderer.java
+++ b/src/com/android/dialer/service/ExtendedBlockingButtonRenderer.java
@@ -19,6 +19,8 @@
 import android.support.annotation.Nullable;
 import android.view.View;
 import android.view.ViewStub;
+import android.widget.QuickContactBadge;
+import android.widget.TextView;
 
 import java.util.List;
 
@@ -70,4 +72,15 @@
     void render(ViewStub viewStub);
 
     void setViewHolderInfo(ViewHolderInfo info);
+
+    /**
+     * Updates the photo and label for the given phone number and country iso.
+     *
+     * @param number Phone number for which the rendering occurs.
+     * @param countryIso Two-letter country code.
+     * @param badge {@link QuickContactBadge} in which the photo should be rendered.
+     * @param view Textview that will hold the new label.
+     */
+    void updatePhotoAndLabelIfNecessary(
+            String number, String countryIso, QuickContactBadge badge, TextView view);
 }