Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit c0326e9b authored by calderwoodra's avatar calderwoodra Committed by Copybara-Service
Browse files

Contacts recyclerview is now hidden when we don't have contacts permission.

Bug: 71867982
Test: ContactsFragmentTest
PiperOrigin-RevId: 182977635
Change-Id: Ibdefc49c76dd607c5f1316ae46da5e38f74c0e85
parent 8d06ecde
Loading
Loading
Loading
Loading
+10 −5
Original line number Diff line number Diff line
@@ -46,7 +46,6 @@ import com.android.contacts.common.preference.ContactsPreferences.ChangeListener
import com.android.dialer.common.Assert;
import com.android.dialer.common.FragmentUtils;
import com.android.dialer.common.LogUtil;
import com.android.dialer.contactsfragment.ContactsFragment.OnContactSelectedListener;
import com.android.dialer.performancereport.PerformanceReport;
import com.android.dialer.util.DialerUtils;
import com.android.dialer.util.IntentUtil;
@@ -86,7 +85,7 @@ public class ContactsFragment extends Fragment
      new BroadcastReceiver() {
        @Override
        public void onReceive(Context context, Intent intent) {
          getLoaderManager().initLoader(0, null, ContactsFragment.this);
          loadContacts();
        }
      };

@@ -208,11 +207,12 @@ public class ContactsFragment extends Fragment
    emptyContentView.setActionClickedListener(this);

    if (PermissionsUtil.hasContactsReadPermissions(getContext())) {
      getLoaderManager().initLoader(0, null, this);
      loadContacts();
    } else {
      emptyContentView.setDescription(R.string.permission_no_contacts);
      emptyContentView.setActionLabel(R.string.permission_single_turn_on);
      emptyContentView.setVisibility(View.VISIBLE);
      recyclerView.setVisibility(View.GONE);
    }

    return view;
@@ -349,10 +349,15 @@ public class ContactsFragment extends Fragment
    if (requestCode == READ_CONTACTS_PERMISSION_REQUEST_CODE) {
      if (grantResults.length >= 1 && PackageManager.PERMISSION_GRANTED == grantResults[0]) {
        // Force a refresh of the data since we were missing the permission before this.
        emptyContentView.setVisibility(View.GONE);
        getLoaderManager().initLoader(0, null, this);
        PermissionsUtil.notifyPermissionGranted(getContext(), permissions[0]);
      }
    }
  }

  private void loadContacts() {
    getLoaderManager().initLoader(0, null, this);
    recyclerView.setVisibility(View.VISIBLE);
    emptyContentView.setVisibility(View.GONE);
  }

  /** Listener for contacts list scroll state. */