Loading Android.mk +7 −0 Original line number Diff line number Diff line Loading @@ -45,6 +45,7 @@ RES_DIRS := \ assets/product/res \ assets/quantum/res \ $(BASE_DIR)/contacts/common/res \ $(BASE_DIR)/dialer/about/res \ $(BASE_DIR)/dialer/app/res \ $(BASE_DIR)/dialer/app/voicemail/error/res \ $(BASE_DIR)/dialer/blocking/res \ Loading Loading @@ -81,6 +82,7 @@ RES_DIRS := \ $(BASE_DIR)/incallui/incall/impl/res \ $(BASE_DIR)/incallui/res \ $(BASE_DIR)/incallui/sessiondata/res \ $(BASE_DIR)/incallui/telecomeventui/res \ $(BASE_DIR)/incallui/video/impl/res \ $(BASE_DIR)/incallui/video/protocol/res \ $(BASE_DIR)/incallui/wifi/res \ Loading @@ -91,6 +93,7 @@ RES_DIRS := \ # find . -type f -name "AndroidManifest.xml" | uniq | sort DIALER_MANIFEST_FILES += \ $(BASE_DIR)/contacts/common/AndroidManifest.xml \ $(BASE_DIR)/dialer/about/AndroidManifest.xml \ $(BASE_DIR)/dialer/app/AndroidManifest.xml \ $(BASE_DIR)/dialer/app/manifests/activities/AndroidManifest.xml \ $(BASE_DIR)/dialer/app/voicemail/error/AndroidManifest.xml \ Loading Loading @@ -130,6 +133,7 @@ DIALER_MANIFEST_FILES += \ $(BASE_DIR)/incallui/hold/AndroidManifest.xml \ $(BASE_DIR)/incallui/incall/impl/AndroidManifest.xml \ $(BASE_DIR)/incallui/sessiondata/AndroidManifest.xml \ $(BASE_DIR)/incallui/telecomeventui/AndroidManifest.xml \ $(BASE_DIR)/incallui/video/impl/AndroidManifest.xml \ $(BASE_DIR)/incallui/video/protocol/AndroidManifest.xml \ $(BASE_DIR)/incallui/wifi/AndroidManifest.xml \ Loading Loading @@ -158,6 +162,7 @@ LOCAL_AAPT_FLAGS := \ --auto-add-overlay \ --extra-packages android.support.coreui \ --extra-packages com.android.contacts.common \ --extra-packages com.android.dialer.about \ --extra-packages com.android.dialer.app \ --extra-packages com.android.dialer.app.voicemail.error \ --extra-packages com.android.dialer.blocking \ Loading @@ -179,6 +184,7 @@ LOCAL_AAPT_FLAGS := \ --extra-packages com.android.dialer.postcall \ --extra-packages com.android.dialer.shortcuts \ --extra-packages com.android.dialer.speeddial \ --extra-packages com.android.dialer.theme \ --extra-packages com.android.dialer.util \ --extra-packages com.android.dialer.voicemailstatus \ --extra-packages com.android.dialer.widget \ Loading @@ -198,6 +204,7 @@ LOCAL_AAPT_FLAGS := \ --extra-packages com.android.incallui.incall.impl \ --extra-packages com.android.incallui.maps.impl \ --extra-packages com.android.incallui.sessiondata \ --extra-packages com.android.incallui.telecomeventui \ --extra-packages com.android.incallui.video \ --extra-packages com.android.incallui.video.impl \ --extra-packages com.android.incallui.wifi \ Loading java/com/android/contacts/common/ContactPhotoManager.java +1 −1 Original line number Diff line number Diff line Loading @@ -191,7 +191,7 @@ public abstract class ContactPhotoManager implements ComponentCallbacks2 { Context applicationContext = context.getApplicationContext(); sInstance = createContactPhotoManager(applicationContext); applicationContext.registerComponentCallbacks(sInstance); if (PermissionsUtil.hasContactsPermissions(context)) { if (PermissionsUtil.hasContactsReadPermissions(context)) { sInstance.preloadPhotosInBackground(); } } Loading java/com/android/contacts/common/compat/TelephonyManagerCompat.java +3 −0 Original line number Diff line number Diff line Loading @@ -41,6 +41,9 @@ public class TelephonyManagerCompat { public static final String EVENT_CALL_REMOTELY_UNHELD = "android.telecom.event.CALL_REMOTELY_UNHELD"; public static final String EVENT_NOTIFY_INTERNATIONAL_CALL_ON_WFC = "android.telephony.event.EVENT_NOTIFY_INTERNATIONAL_CALL_ON_WFC"; public static final String TELEPHONY_MANAGER_CLASS = "android.telephony.TelephonyManager"; private static final String SECRET_CODE_ACTION = "android.provider.Telephony.SECRET_CODE"; Loading java/com/android/contacts/common/dialog/ClearFrequentsDialog.java +1 −1 Original line number Diff line number Diff line Loading @@ -48,7 +48,7 @@ public class ClearFrequentsDialog extends DialogFragment { new OnClickListener() { @Override public void onClick(DialogInterface dialog, int which) { if (!PermissionsUtil.hasContactsPermissions(context)) { if (!PermissionsUtil.hasContactsReadPermissions(context)) { return; } Loading java/com/android/contacts/common/list/DirectoryListLoader.java +14 −5 Original line number Diff line number Diff line Loading @@ -25,9 +25,10 @@ import android.net.Uri; import android.os.Handler; import android.provider.ContactsContract.Directory; import android.text.TextUtils; import android.util.Log; import com.android.contacts.common.R; import com.android.contacts.common.compat.DirectoryCompat; import com.android.dialer.common.LogUtil; import com.android.dialer.util.PermissionsUtil; /** A specialized loader for the list of directories, see {@link Directory}. */ public class DirectoryListLoader extends AsyncTaskLoader<Cursor> { Loading @@ -38,7 +39,6 @@ public class DirectoryListLoader extends AsyncTaskLoader<Cursor> { public static final int SEARCH_MODE_DATA_SHORTCUT = 3; // This is a virtual column created for a MatrixCursor. public static final String DIRECTORY_TYPE = "directoryType"; private static final String TAG = "ContactEntryListAdapter"; private static final String[] RESULT_PROJECTION = { Directory._ID, DIRECTORY_TYPE, Directory.DISPLAY_NAME, Directory.PHOTO_SUPPORT, }; Loading Loading @@ -71,7 +71,13 @@ public class DirectoryListLoader extends AsyncTaskLoader<Cursor> { @Override protected void onStartLoading() { getContext().getContentResolver().registerContentObserver(DirectoryQuery.URI, false, mObserver); if (PermissionsUtil.hasContactsReadPermissions(getContext())) { getContext() .getContentResolver() .registerContentObserver(DirectoryQuery.URI, false, mObserver); } else { LogUtil.w("DirectoryListLoader.onStartLoading", "contacts permission not available."); } forceLoad(); } Loading Loading @@ -141,7 +147,9 @@ public class DirectoryListLoader extends AsyncTaskLoader<Cursor> { try { directoryType = pm.getResourcesForApplication(packageName).getString(typeResourceId); } catch (Exception e) { Log.e(TAG, "Cannot obtain directory type from package: " + packageName); LogUtil.e( "ContactEntryListAdapter.loadInBackground", "cannot obtain directory type from package: " + packageName); } } String displayName = cursor.getString(DirectoryQuery.DISPLAY_NAME); Loading @@ -149,7 +157,8 @@ public class DirectoryListLoader extends AsyncTaskLoader<Cursor> { result.addRow(new Object[] {directoryId, directoryType, displayName, photoSupport}); } } catch (RuntimeException e) { Log.w(TAG, "Runtime Exception when querying directory"); LogUtil.w( "ContactEntryListAdapter.loadInBackground", "runtime exception when querying directory"); } finally { if (cursor != null) { cursor.close(); Loading Loading
Android.mk +7 −0 Original line number Diff line number Diff line Loading @@ -45,6 +45,7 @@ RES_DIRS := \ assets/product/res \ assets/quantum/res \ $(BASE_DIR)/contacts/common/res \ $(BASE_DIR)/dialer/about/res \ $(BASE_DIR)/dialer/app/res \ $(BASE_DIR)/dialer/app/voicemail/error/res \ $(BASE_DIR)/dialer/blocking/res \ Loading Loading @@ -81,6 +82,7 @@ RES_DIRS := \ $(BASE_DIR)/incallui/incall/impl/res \ $(BASE_DIR)/incallui/res \ $(BASE_DIR)/incallui/sessiondata/res \ $(BASE_DIR)/incallui/telecomeventui/res \ $(BASE_DIR)/incallui/video/impl/res \ $(BASE_DIR)/incallui/video/protocol/res \ $(BASE_DIR)/incallui/wifi/res \ Loading @@ -91,6 +93,7 @@ RES_DIRS := \ # find . -type f -name "AndroidManifest.xml" | uniq | sort DIALER_MANIFEST_FILES += \ $(BASE_DIR)/contacts/common/AndroidManifest.xml \ $(BASE_DIR)/dialer/about/AndroidManifest.xml \ $(BASE_DIR)/dialer/app/AndroidManifest.xml \ $(BASE_DIR)/dialer/app/manifests/activities/AndroidManifest.xml \ $(BASE_DIR)/dialer/app/voicemail/error/AndroidManifest.xml \ Loading Loading @@ -130,6 +133,7 @@ DIALER_MANIFEST_FILES += \ $(BASE_DIR)/incallui/hold/AndroidManifest.xml \ $(BASE_DIR)/incallui/incall/impl/AndroidManifest.xml \ $(BASE_DIR)/incallui/sessiondata/AndroidManifest.xml \ $(BASE_DIR)/incallui/telecomeventui/AndroidManifest.xml \ $(BASE_DIR)/incallui/video/impl/AndroidManifest.xml \ $(BASE_DIR)/incallui/video/protocol/AndroidManifest.xml \ $(BASE_DIR)/incallui/wifi/AndroidManifest.xml \ Loading Loading @@ -158,6 +162,7 @@ LOCAL_AAPT_FLAGS := \ --auto-add-overlay \ --extra-packages android.support.coreui \ --extra-packages com.android.contacts.common \ --extra-packages com.android.dialer.about \ --extra-packages com.android.dialer.app \ --extra-packages com.android.dialer.app.voicemail.error \ --extra-packages com.android.dialer.blocking \ Loading @@ -179,6 +184,7 @@ LOCAL_AAPT_FLAGS := \ --extra-packages com.android.dialer.postcall \ --extra-packages com.android.dialer.shortcuts \ --extra-packages com.android.dialer.speeddial \ --extra-packages com.android.dialer.theme \ --extra-packages com.android.dialer.util \ --extra-packages com.android.dialer.voicemailstatus \ --extra-packages com.android.dialer.widget \ Loading @@ -198,6 +204,7 @@ LOCAL_AAPT_FLAGS := \ --extra-packages com.android.incallui.incall.impl \ --extra-packages com.android.incallui.maps.impl \ --extra-packages com.android.incallui.sessiondata \ --extra-packages com.android.incallui.telecomeventui \ --extra-packages com.android.incallui.video \ --extra-packages com.android.incallui.video.impl \ --extra-packages com.android.incallui.wifi \ Loading
java/com/android/contacts/common/ContactPhotoManager.java +1 −1 Original line number Diff line number Diff line Loading @@ -191,7 +191,7 @@ public abstract class ContactPhotoManager implements ComponentCallbacks2 { Context applicationContext = context.getApplicationContext(); sInstance = createContactPhotoManager(applicationContext); applicationContext.registerComponentCallbacks(sInstance); if (PermissionsUtil.hasContactsPermissions(context)) { if (PermissionsUtil.hasContactsReadPermissions(context)) { sInstance.preloadPhotosInBackground(); } } Loading
java/com/android/contacts/common/compat/TelephonyManagerCompat.java +3 −0 Original line number Diff line number Diff line Loading @@ -41,6 +41,9 @@ public class TelephonyManagerCompat { public static final String EVENT_CALL_REMOTELY_UNHELD = "android.telecom.event.CALL_REMOTELY_UNHELD"; public static final String EVENT_NOTIFY_INTERNATIONAL_CALL_ON_WFC = "android.telephony.event.EVENT_NOTIFY_INTERNATIONAL_CALL_ON_WFC"; public static final String TELEPHONY_MANAGER_CLASS = "android.telephony.TelephonyManager"; private static final String SECRET_CODE_ACTION = "android.provider.Telephony.SECRET_CODE"; Loading
java/com/android/contacts/common/dialog/ClearFrequentsDialog.java +1 −1 Original line number Diff line number Diff line Loading @@ -48,7 +48,7 @@ public class ClearFrequentsDialog extends DialogFragment { new OnClickListener() { @Override public void onClick(DialogInterface dialog, int which) { if (!PermissionsUtil.hasContactsPermissions(context)) { if (!PermissionsUtil.hasContactsReadPermissions(context)) { return; } Loading
java/com/android/contacts/common/list/DirectoryListLoader.java +14 −5 Original line number Diff line number Diff line Loading @@ -25,9 +25,10 @@ import android.net.Uri; import android.os.Handler; import android.provider.ContactsContract.Directory; import android.text.TextUtils; import android.util.Log; import com.android.contacts.common.R; import com.android.contacts.common.compat.DirectoryCompat; import com.android.dialer.common.LogUtil; import com.android.dialer.util.PermissionsUtil; /** A specialized loader for the list of directories, see {@link Directory}. */ public class DirectoryListLoader extends AsyncTaskLoader<Cursor> { Loading @@ -38,7 +39,6 @@ public class DirectoryListLoader extends AsyncTaskLoader<Cursor> { public static final int SEARCH_MODE_DATA_SHORTCUT = 3; // This is a virtual column created for a MatrixCursor. public static final String DIRECTORY_TYPE = "directoryType"; private static final String TAG = "ContactEntryListAdapter"; private static final String[] RESULT_PROJECTION = { Directory._ID, DIRECTORY_TYPE, Directory.DISPLAY_NAME, Directory.PHOTO_SUPPORT, }; Loading Loading @@ -71,7 +71,13 @@ public class DirectoryListLoader extends AsyncTaskLoader<Cursor> { @Override protected void onStartLoading() { getContext().getContentResolver().registerContentObserver(DirectoryQuery.URI, false, mObserver); if (PermissionsUtil.hasContactsReadPermissions(getContext())) { getContext() .getContentResolver() .registerContentObserver(DirectoryQuery.URI, false, mObserver); } else { LogUtil.w("DirectoryListLoader.onStartLoading", "contacts permission not available."); } forceLoad(); } Loading Loading @@ -141,7 +147,9 @@ public class DirectoryListLoader extends AsyncTaskLoader<Cursor> { try { directoryType = pm.getResourcesForApplication(packageName).getString(typeResourceId); } catch (Exception e) { Log.e(TAG, "Cannot obtain directory type from package: " + packageName); LogUtil.e( "ContactEntryListAdapter.loadInBackground", "cannot obtain directory type from package: " + packageName); } } String displayName = cursor.getString(DirectoryQuery.DISPLAY_NAME); Loading @@ -149,7 +157,8 @@ public class DirectoryListLoader extends AsyncTaskLoader<Cursor> { result.addRow(new Object[] {directoryId, directoryType, displayName, photoSupport}); } } catch (RuntimeException e) { Log.w(TAG, "Runtime Exception when querying directory"); LogUtil.w( "ContactEntryListAdapter.loadInBackground", "runtime exception when querying directory"); } finally { if (cursor != null) { cursor.close(); Loading