summaryrefslogtreecommitdiff
path: root/java/com/android/dialer/speeddial
diff options
context:
space:
mode:
authorcalderwoodra <calderwoodra@google.com>2018-05-15 13:36:35 -0700
committerCopybara-Service <copybara-piper@google.com>2018-05-15 15:03:20 -0700
commitfa863beddae5b1eb69b5c14e66cb5e55ee6aff29 (patch)
tree56ba54cd2ea9e23daae429c659e567f7ca87a005 /java/com/android/dialer/speeddial
parent5a6e0fb9787d1cb0db93b36870bc033c9939302f (diff)
Clear frequents dialog now reloads the speed dial fragment.
Bug: 79131964 Test: manual, frequents table is only readable, so setting up tests is difficult PiperOrigin-RevId: 196720970 Change-Id: I0b0ef991fadaebb8abbcd48394a2780d8f824550
Diffstat (limited to 'java/com/android/dialer/speeddial')
-rw-r--r--java/com/android/dialer/speeddial/SpeedDialFragment.java16
1 files changed, 16 insertions, 0 deletions
diff --git a/java/com/android/dialer/speeddial/SpeedDialFragment.java b/java/com/android/dialer/speeddial/SpeedDialFragment.java
index d9593c211..f94ad7d9e 100644
--- a/java/com/android/dialer/speeddial/SpeedDialFragment.java
+++ b/java/com/android/dialer/speeddial/SpeedDialFragment.java
@@ -21,6 +21,7 @@ import android.content.BroadcastReceiver;
import android.content.Context;
import android.content.Intent;
import android.content.pm.PackageManager;
+import android.database.ContentObserver;
import android.net.Uri;
import android.os.Bundle;
import android.provider.ContactsContract.CommonDataKinds.Phone;
@@ -45,6 +46,7 @@ import com.android.dialer.common.LogUtil;
import com.android.dialer.common.concurrent.DefaultFutureCallback;
import com.android.dialer.common.concurrent.DialerExecutorComponent;
import com.android.dialer.common.concurrent.SupportUiListener;
+import com.android.dialer.common.concurrent.ThreadUtil;
import com.android.dialer.constants.ActivityRequestCodes;
import com.android.dialer.historyitemactions.DividerModule;
import com.android.dialer.historyitemactions.HistoryItemActionBottomSheet;
@@ -99,6 +101,16 @@ public class SpeedDialFragment extends Fragment {
}
};
+ /** Listen for changes to the strequents content observer. */
+ private final ContentObserver strequentsContentObserver =
+ new ContentObserver(ThreadUtil.getUiThreadHandler()) {
+ @Override
+ public void onChange(boolean selfChange) {
+ super.onChange(selfChange);
+ loadContacts();
+ }
+ };
+
private final SpeedDialHeaderListener headerListener = new SpeedDialFragmentHeaderListener();
private final SpeedDialSuggestedListener suggestedListener = new SpeedDialSuggestedListener();
@@ -272,6 +284,9 @@ public class SpeedDialFragment extends Fragment {
super.onStart();
PermissionsUtil.registerPermissionReceiver(
getActivity(), readContactsPermissionGrantedReceiver, Manifest.permission.READ_CONTACTS);
+ getContext()
+ .getContentResolver()
+ .registerContentObserver(Contacts.CONTENT_STREQUENT_URI, true, strequentsContentObserver);
}
@Override
@@ -279,6 +294,7 @@ public class SpeedDialFragment extends Fragment {
super.onStop();
PermissionsUtil.unregisterPermissionReceiver(
getContext(), readContactsPermissionGrantedReceiver);
+ getContext().getContentResolver().unregisterContentObserver(strequentsContentObserver);
}
private class SpeedDialFragmentHeaderListener implements SpeedDialHeaderListener {