diff options
| author | Yorke Lee <yorkelee@google.com> | 2015-07-01 12:34:50 -0700 |
|---|---|---|
| committer | Yorke Lee <yorkelee@google.com> | 2015-07-01 14:28:34 -0700 |
| commit | 24d034f92998a52868c10039e9c728f9ab5a44aa (patch) | |
| tree | d859e9b8a3e4e2f7c502772a632cb39c145f0630 /src/com/android/dialer/list | |
| parent | 82d30284d32d2e563661ad0a1465c1b9bf501a9f (diff) | |
| download | packages_apps_Dialer-24d034f92998a52868c10039e9c728f9ab5a44aa.tar.gz packages_apps_Dialer-24d034f92998a52868c10039e9c728f9ab5a44aa.tar.bz2 packages_apps_Dialer-24d034f92998a52868c10039e9c728f9ab5a44aa.zip | |
Fix dialer monkey NPEs
Monkey tests exposed a bug in Dialer where certain call shortcuts
could show up if contacts permissions were disabled and the UI was
changing quickly.
Don't enable shortcuts by default, and make sure to correctly
disable all shortcuts in the case of missing permissions.
Bug: 22225052
Change-Id: Icdd81412f695860eb322d7ccdc30555591c584d0
Diffstat (limited to 'src/com/android/dialer/list')
| -rw-r--r-- | src/com/android/dialer/list/DialerPhoneNumberListAdapter.java | 11 | ||||
| -rw-r--r-- | src/com/android/dialer/list/SearchFragment.java | 4 |
2 files changed, 9 insertions, 6 deletions
diff --git a/src/com/android/dialer/list/DialerPhoneNumberListAdapter.java b/src/com/android/dialer/list/DialerPhoneNumberListAdapter.java index 6c0ecf72b..401b0b641 100644 --- a/src/com/android/dialer/list/DialerPhoneNumberListAdapter.java +++ b/src/com/android/dialer/list/DialerPhoneNumberListAdapter.java @@ -44,11 +44,6 @@ public class DialerPhoneNumberListAdapter extends PhoneNumberListAdapter { super(context); mCountryIso = GeoUtil.getCurrentCountryIso(context); - - // Enable all shortcuts by default - for (int i = 0; i < mShortcutEnabled.length; i++) { - mShortcutEnabled[i] = true; - } } @Override @@ -67,6 +62,12 @@ public class DialerPhoneNumberListAdapter extends PhoneNumberListAdapter { return count; } + public void disableAllShortcuts() { + for (int i = 0; i < mShortcutEnabled.length; i++) { + mShortcutEnabled[i] = false; + } + } + @Override public int getItemViewType(int position) { final int shortcut = getShortcutTypeFromPosition(position); diff --git a/src/com/android/dialer/list/SearchFragment.java b/src/com/android/dialer/list/SearchFragment.java index 1f33d5b75..106545eaf 100644 --- a/src/com/android/dialer/list/SearchFragment.java +++ b/src/com/android/dialer/list/SearchFragment.java @@ -345,7 +345,9 @@ public class SearchFragment extends PhoneNumberPickerFragment { super.startLoading(); } else if (TextUtils.isEmpty(getQueryString())) { // Clear out any existing call shortcuts. - getAdapter().setQueryString(null); + final DialerPhoneNumberListAdapter adapter = + (DialerPhoneNumberListAdapter) getAdapter(); + adapter.disableAllShortcuts(); } } |
