summaryrefslogtreecommitdiff
path: root/java/com/android/dialer/phonelookup
diff options
context:
space:
mode:
Diffstat (limited to 'java/com/android/dialer/phonelookup')
-rw-r--r--java/com/android/dialer/phonelookup/PhoneLookup.java3
-rw-r--r--java/com/android/dialer/phonelookup/blockednumber/DialerBlockedNumberPhoneLookup.java5
-rw-r--r--java/com/android/dialer/phonelookup/blockednumber/SystemBlockedNumberPhoneLookup.java5
-rw-r--r--java/com/android/dialer/phonelookup/composite/CompositePhoneLookup.java8
-rw-r--r--java/com/android/dialer/phonelookup/cp2/Cp2DefaultDirectoryPhoneLookup.java3
-rw-r--r--java/com/android/dialer/phonelookup/cp2/Cp2ExtendedDirectoryPhoneLookup.java3
-rw-r--r--java/com/android/dialer/phonelookup/spam/SpamPhoneLookup.java3
7 files changed, 30 insertions, 0 deletions
diff --git a/java/com/android/dialer/phonelookup/PhoneLookup.java b/java/com/android/dialer/phonelookup/PhoneLookup.java
index a7974ad10..016a8a854 100644
--- a/java/com/android/dialer/phonelookup/PhoneLookup.java
+++ b/java/com/android/dialer/phonelookup/PhoneLookup.java
@@ -85,4 +85,7 @@ public interface PhoneLookup<T> {
@MainThread
void registerContentObservers(Context appContext);
+
+ @MainThread
+ void unregisterContentObservers(Context appContext);
}
diff --git a/java/com/android/dialer/phonelookup/blockednumber/DialerBlockedNumberPhoneLookup.java b/java/com/android/dialer/phonelookup/blockednumber/DialerBlockedNumberPhoneLookup.java
index b6b02e135..3491070ad 100644
--- a/java/com/android/dialer/phonelookup/blockednumber/DialerBlockedNumberPhoneLookup.java
+++ b/java/com/android/dialer/phonelookup/blockednumber/DialerBlockedNumberPhoneLookup.java
@@ -177,4 +177,9 @@ public final class DialerBlockedNumberPhoneLookup implements PhoneLookup<DialerB
true, // FilteredNumberProvider notifies on the item
markDirtyObserver);
}
+
+ @Override
+ public void unregisterContentObservers(Context appContext) {
+ appContext.getContentResolver().unregisterContentObserver(markDirtyObserver);
+ }
}
diff --git a/java/com/android/dialer/phonelookup/blockednumber/SystemBlockedNumberPhoneLookup.java b/java/com/android/dialer/phonelookup/blockednumber/SystemBlockedNumberPhoneLookup.java
index d791e9b9e..def1f017d 100644
--- a/java/com/android/dialer/phonelookup/blockednumber/SystemBlockedNumberPhoneLookup.java
+++ b/java/com/android/dialer/phonelookup/blockednumber/SystemBlockedNumberPhoneLookup.java
@@ -181,4 +181,9 @@ public class SystemBlockedNumberPhoneLookup implements PhoneLookup<SystemBlocked
true, // BlockedNumbers notifies on the item
markDirtyObserver);
}
+
+ @Override
+ public void unregisterContentObservers(Context appContext) {
+ appContext.getContentResolver().unregisterContentObserver(markDirtyObserver);
+ }
}
diff --git a/java/com/android/dialer/phonelookup/composite/CompositePhoneLookup.java b/java/com/android/dialer/phonelookup/composite/CompositePhoneLookup.java
index 0d84a2eda..4be43dade 100644
--- a/java/com/android/dialer/phonelookup/composite/CompositePhoneLookup.java
+++ b/java/com/android/dialer/phonelookup/composite/CompositePhoneLookup.java
@@ -222,6 +222,14 @@ public final class CompositePhoneLookup {
}
}
+ /** Delegates to sub-lookups' {@link PhoneLookup#unregisterContentObservers(Context)}. */
+ @MainThread
+ public void unregisterContentObservers(Context appContext) {
+ for (PhoneLookup phoneLookup : phoneLookups) {
+ phoneLookup.unregisterContentObservers(appContext);
+ }
+ }
+
private static String getMostRecentInfoEventName(Object classNameSource, boolean isBuilt) {
return String.format(
!isBuilt
diff --git a/java/com/android/dialer/phonelookup/cp2/Cp2DefaultDirectoryPhoneLookup.java b/java/com/android/dialer/phonelookup/cp2/Cp2DefaultDirectoryPhoneLookup.java
index a79eb19db..b023500dc 100644
--- a/java/com/android/dialer/phonelookup/cp2/Cp2DefaultDirectoryPhoneLookup.java
+++ b/java/com/android/dialer/phonelookup/cp2/Cp2DefaultDirectoryPhoneLookup.java
@@ -627,6 +627,9 @@ public final class Cp2DefaultDirectoryPhoneLookup implements PhoneLookup<Cp2Info
// Do nothing since CP2 changes are too noisy.
}
+ @Override
+ public void unregisterContentObservers(Context appContext) {}
+
/**
* 1. get all contact ids. if the id is unset, add the number to the list of contacts to look up.
* 2. reduce our list of contact ids to those that were updated after lastModified. 3. Now we have
diff --git a/java/com/android/dialer/phonelookup/cp2/Cp2ExtendedDirectoryPhoneLookup.java b/java/com/android/dialer/phonelookup/cp2/Cp2ExtendedDirectoryPhoneLookup.java
index 519ec5f82..873658b05 100644
--- a/java/com/android/dialer/phonelookup/cp2/Cp2ExtendedDirectoryPhoneLookup.java
+++ b/java/com/android/dialer/phonelookup/cp2/Cp2ExtendedDirectoryPhoneLookup.java
@@ -233,4 +233,7 @@ public final class Cp2ExtendedDirectoryPhoneLookup implements PhoneLookup<Cp2Inf
// For contacts in local (but not default) directories (e.g., the local work directory), we
// don't register a content observer for now.
}
+
+ @Override
+ public void unregisterContentObservers(Context appContext) {}
}
diff --git a/java/com/android/dialer/phonelookup/spam/SpamPhoneLookup.java b/java/com/android/dialer/phonelookup/spam/SpamPhoneLookup.java
index 7661a15da..2a856280b 100644
--- a/java/com/android/dialer/phonelookup/spam/SpamPhoneLookup.java
+++ b/java/com/android/dialer/phonelookup/spam/SpamPhoneLookup.java
@@ -156,4 +156,7 @@ public final class SpamPhoneLookup implements PhoneLookup<SpamInfo> {
// No content observer can be registered as Spam is not based on a content provider.
// Each Spam implementation should be responsible for notifying any data changes.
}
+
+ @Override
+ public void unregisterContentObservers(Context appContext) {}
}