Merge "Protect against more Telecom privileged operations" into ub-contactsdialer-a-dev
diff --git a/res/layout/blocked_number_fragment.xml b/res/layout/blocked_number_fragment.xml
index b1e4d0f..bbface6 100644
--- a/res/layout/blocked_number_fragment.xml
+++ b/res/layout/blocked_number_fragment.xml
@@ -15,6 +15,7 @@
 -->
 <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:card_view="http://schemas.android.com/apk/res-auto"
+    android:id="@+id/blocked_number_fragment"
     android:orientation="vertical"
     android:background="@color/blocked_number_background"
     android:layout_width="match_parent"
diff --git a/src/com/android/dialer/calllog/CallLogListItemViewHolder.java b/src/com/android/dialer/calllog/CallLogListItemViewHolder.java
index 8b2eb60..b90d285 100644
--- a/src/com/android/dialer/calllog/CallLogListItemViewHolder.java
+++ b/src/com/android/dialer/calllog/CallLogListItemViewHolder.java
@@ -315,7 +315,7 @@
             case R.id.context_menu_block_number:
                 FilterNumberDialogFragment newFragment =
                         FilterNumberDialogFragment.newInstance(blockId, info.normalizedNumber,
-                                number, countryIso, info.formattedNumber);
+                                number, countryIso, displayNumber);
                 newFragment.setQueryHandler(mFilteredNumberAsyncQueryHandler);
                 newFragment.setParentView(
                         ((Activity) mContext).findViewById(R.id.floating_action_button_container));
diff --git a/src/com/android/dialer/calllog/PhoneCallDetailsHelper.java b/src/com/android/dialer/calllog/PhoneCallDetailsHelper.java
index df5fe06..54324cd 100644
--- a/src/com/android/dialer/calllog/PhoneCallDetailsHelper.java
+++ b/src/com/android/dialer/calllog/PhoneCallDetailsHelper.java
@@ -112,7 +112,7 @@
         if (accountLabel != null) {
             views.callAccountLabel.setVisibility(View.VISIBLE);
             views.callAccountLabel.setText(accountLabel);
-            int color = PhoneAccountUtils.getAccountColor(mContext, details.accountHandle);
+            int color = mTelecomCallLogCache.getAccountColor(details.accountHandle);
             if (color == PhoneAccount.NO_HIGHLIGHT_COLOR) {
                 int defaultColor = R.color.dialtacts_secondary_text_color;
                 views.callAccountLabel.setTextColor(mContext.getResources().getColor(defaultColor));
diff --git a/src/com/android/dialer/calllog/TelecomCallLogCache.java b/src/com/android/dialer/calllog/TelecomCallLogCache.java
index 7071669..6363b91 100644
--- a/src/com/android/dialer/calllog/TelecomCallLogCache.java
+++ b/src/com/android/dialer/calllog/TelecomCallLogCache.java
@@ -120,6 +120,7 @@
     public boolean isVideoEnabled() {
         if (!mHasCheckedForVideoEnabled) {
             mIsVideoEnabled = CallUtil.isVideoEnabled(mContext);
+            mHasCheckedForVideoEnabled = true;
         }
         return mIsVideoEnabled;
     }
diff --git a/src/com/android/dialer/filterednumber/BlockedNumberAdapter.java b/src/com/android/dialer/filterednumber/BlockedNumberAdapter.java
index 504b520..5041ed8 100644
--- a/src/com/android/dialer/filterednumber/BlockedNumberAdapter.java
+++ b/src/com/android/dialer/filterednumber/BlockedNumberAdapter.java
@@ -89,7 +89,8 @@
                         FilterNumberDialogFragment.newInstance(id, normalizedNumber, number,
                                 countryIso, displayNumber);
                 newFragment.setQueryHandler(mFilteredNumberAsyncQueryHandler);
-                newFragment.setParentView(view);
+                newFragment.setParentView(
+                        ((Activity) mContext).findViewById(R.id.blocked_number_fragment));
                 newFragment.show(((Activity) mContext).getFragmentManager(),
                         FilterNumberDialogFragment.BLOCK_DIALOG_FRAGMENT);
             }
diff --git a/src/com/android/dialer/filterednumber/BlockedNumberFragment.java b/src/com/android/dialer/filterednumber/BlockedNumberFragment.java
index 69fba34..455982a 100644
--- a/src/com/android/dialer/filterednumber/BlockedNumberFragment.java
+++ b/src/com/android/dialer/filterednumber/BlockedNumberFragment.java
@@ -54,8 +54,8 @@
             mAdapter = new BlockedNumberAdapter(getContext(), mFilteredNumberAsyncQueryHandler);
         }
         setListAdapter(mAdapter);
-        final Button addNumberBtn = (Button) getActivity().findViewById(R.id.add_number_button);
-        addNumberBtn.setOnClickListener(this);
+        getActivity().findViewById(R.id.add_number_button).setOnClickListener(this);
+        getListView().getEmptyView().findViewById(R.id.add_number_button).setOnClickListener(this);
     }
 
     @Override
diff --git a/src/com/android/dialer/settings/AppCompatPreferenceActivity.java b/src/com/android/dialer/settings/AppCompatPreferenceActivity.java
index 0708783..804d477 100644
--- a/src/com/android/dialer/settings/AppCompatPreferenceActivity.java
+++ b/src/com/android/dialer/settings/AppCompatPreferenceActivity.java
@@ -15,29 +15,15 @@
  */
 package com.android.dialer.settings;
 
-import android.content.Context;
-import android.content.Intent;
-import android.content.SharedPreferences;
 import android.content.res.Configuration;
 import android.os.Bundle;
-import android.os.UserManager;
 import android.preference.PreferenceActivity;
-import android.preference.PreferenceManager;
-import android.preference.PreferenceActivity.Header;
-import android.provider.Settings;
 import android.support.v7.app.ActionBar;
-import android.support.v7.app.AppCompatActivity;
 import android.support.v7.app.AppCompatDelegate;
 import android.support.v7.widget.Toolbar;
-import android.telecom.TelecomManager;
-import android.telephony.TelephonyManager;
 import android.view.MenuInflater;
-import android.view.MenuItem;
 import android.view.View;
 import android.view.ViewGroup;
-import android.widget.Toast;
-
-import java.util.List;
 
 /**
  * A {@link android.preference.PreferenceActivity} which implements and proxies the necessary calls