Loading src/com/android/dialer/list/AllContactsFragment.java +28 −0 Original line number Diff line number Diff line Loading @@ -19,6 +19,9 @@ package com.android.dialer.list; import static android.Manifest.permission.READ_CONTACTS; import android.app.Activity; import android.content.BroadcastReceiver; import android.content.Context; import android.content.Intent; import android.content.Loader; import android.content.pm.PackageManager; import android.database.Cursor; Loading Loading @@ -52,6 +55,17 @@ public class AllContactsFragment extends ContactEntryListFragment<ContactEntryLi private EmptyContentView mEmptyListView; /** * Listen to broadcast events about permissions in order to be notified if the READ_CONTACTS * permission is granted via the UI in another fragment. */ private BroadcastReceiver mReadContactsPermissionGrantedReceiver = new BroadcastReceiver() { @Override public void onReceive(Context context, Intent intent) { reloadData(); } }; public AllContactsFragment() { setQuickContactEnabled(false); setAdjustSelectionBoundsEnabled(true); Loading @@ -75,6 +89,20 @@ public class AllContactsFragment extends ContactEntryListFragment<ContactEntryLi ViewUtil.addBottomPaddingToListViewForFab(getListView(), getResources()); } @Override public void onStart() { super.onStart(); PermissionsUtil.registerPermissionReceiver(getActivity(), mReadContactsPermissionGrantedReceiver, READ_CONTACTS); } @Override public void onStop() { PermissionsUtil.unregisterPermissionReceiver(getActivity(), mReadContactsPermissionGrantedReceiver); super.onStop(); } @Override protected void startLoading() { if (PermissionsUtil.hasPermission(getActivity(), READ_CONTACTS)) { Loading src/com/android/dialer/list/SpeedDialFragment.java +14 −1 Original line number Diff line number Diff line Loading @@ -25,6 +25,7 @@ import android.app.Fragment; import android.app.LoaderManager; import android.content.CursorLoader; import android.content.Loader; import android.content.pm.PackageManager; import android.database.Cursor; import android.graphics.Rect; import android.net.Uri; Loading Loading @@ -64,6 +65,8 @@ public class SpeedDialFragment extends Fragment implements OnItemClickListener, PhoneFavoritesTileAdapter.OnDataSetChangedForAnimationListener, EmptyContentView.OnEmptyViewActionButtonClickedListener { private static final int READ_CONTACTS_PERMISSION_REQUEST_CODE = 1; /** * By default, the animation code assumes that all items in a list view are of the same height * when animating new list items into view (e.g. from the bottom of the screen into view). Loading Loading @@ -470,10 +473,20 @@ public class SpeedDialFragment extends Fragment implements OnItemClickListener, } if (!PermissionsUtil.hasPermission(activity, READ_CONTACTS)) { requestPermissions(new String[] {READ_CONTACTS}, 0); requestPermissions(new String[] {READ_CONTACTS}, READ_CONTACTS_PERMISSION_REQUEST_CODE); } else { // Switch tabs ((HostInterface) activity).showAllContactsTab(); } } @Override public void onRequestPermissionsResult(int requestCode, String[] permissions, int[] grantResults) { if (requestCode == READ_CONTACTS_PERMISSION_REQUEST_CODE) { if (grantResults.length == 1 && PackageManager.PERMISSION_GRANTED == grantResults[0]) { PermissionsUtil.notifyPermissionGranted(getActivity(), READ_CONTACTS); } } } } Loading
src/com/android/dialer/list/AllContactsFragment.java +28 −0 Original line number Diff line number Diff line Loading @@ -19,6 +19,9 @@ package com.android.dialer.list; import static android.Manifest.permission.READ_CONTACTS; import android.app.Activity; import android.content.BroadcastReceiver; import android.content.Context; import android.content.Intent; import android.content.Loader; import android.content.pm.PackageManager; import android.database.Cursor; Loading Loading @@ -52,6 +55,17 @@ public class AllContactsFragment extends ContactEntryListFragment<ContactEntryLi private EmptyContentView mEmptyListView; /** * Listen to broadcast events about permissions in order to be notified if the READ_CONTACTS * permission is granted via the UI in another fragment. */ private BroadcastReceiver mReadContactsPermissionGrantedReceiver = new BroadcastReceiver() { @Override public void onReceive(Context context, Intent intent) { reloadData(); } }; public AllContactsFragment() { setQuickContactEnabled(false); setAdjustSelectionBoundsEnabled(true); Loading @@ -75,6 +89,20 @@ public class AllContactsFragment extends ContactEntryListFragment<ContactEntryLi ViewUtil.addBottomPaddingToListViewForFab(getListView(), getResources()); } @Override public void onStart() { super.onStart(); PermissionsUtil.registerPermissionReceiver(getActivity(), mReadContactsPermissionGrantedReceiver, READ_CONTACTS); } @Override public void onStop() { PermissionsUtil.unregisterPermissionReceiver(getActivity(), mReadContactsPermissionGrantedReceiver); super.onStop(); } @Override protected void startLoading() { if (PermissionsUtil.hasPermission(getActivity(), READ_CONTACTS)) { Loading
src/com/android/dialer/list/SpeedDialFragment.java +14 −1 Original line number Diff line number Diff line Loading @@ -25,6 +25,7 @@ import android.app.Fragment; import android.app.LoaderManager; import android.content.CursorLoader; import android.content.Loader; import android.content.pm.PackageManager; import android.database.Cursor; import android.graphics.Rect; import android.net.Uri; Loading Loading @@ -64,6 +65,8 @@ public class SpeedDialFragment extends Fragment implements OnItemClickListener, PhoneFavoritesTileAdapter.OnDataSetChangedForAnimationListener, EmptyContentView.OnEmptyViewActionButtonClickedListener { private static final int READ_CONTACTS_PERMISSION_REQUEST_CODE = 1; /** * By default, the animation code assumes that all items in a list view are of the same height * when animating new list items into view (e.g. from the bottom of the screen into view). Loading Loading @@ -470,10 +473,20 @@ public class SpeedDialFragment extends Fragment implements OnItemClickListener, } if (!PermissionsUtil.hasPermission(activity, READ_CONTACTS)) { requestPermissions(new String[] {READ_CONTACTS}, 0); requestPermissions(new String[] {READ_CONTACTS}, READ_CONTACTS_PERMISSION_REQUEST_CODE); } else { // Switch tabs ((HostInterface) activity).showAllContactsTab(); } } @Override public void onRequestPermissionsResult(int requestCode, String[] permissions, int[] grantResults) { if (requestCode == READ_CONTACTS_PERMISSION_REQUEST_CODE) { if (grantResults.length == 1 && PackageManager.PERMISSION_GRANTED == grantResults[0]) { PermissionsUtil.notifyPermissionGranted(getActivity(), READ_CONTACTS); } } } }