summaryrefslogtreecommitdiff
path: root/java/com/android/dialer/app/calllog/VoicemailQueryHandler.java
diff options
context:
space:
mode:
Diffstat (limited to 'java/com/android/dialer/app/calllog/VoicemailQueryHandler.java')
-rw-r--r--java/com/android/dialer/app/calllog/VoicemailQueryHandler.java10
1 files changed, 7 insertions, 3 deletions
diff --git a/java/com/android/dialer/app/calllog/VoicemailQueryHandler.java b/java/com/android/dialer/app/calllog/VoicemailQueryHandler.java
index 2fbebdd30..169d0fd35 100644
--- a/java/com/android/dialer/app/calllog/VoicemailQueryHandler.java
+++ b/java/com/android/dialer/app/calllog/VoicemailQueryHandler.java
@@ -45,7 +45,8 @@ public class VoicemailQueryHandler extends AsyncQueryHandler {
public static void markAllNewVoicemailsAsRead(final @NonNull Context context) {
ThreadUtil.postOnUiThread(
() -> {
- new VoicemailQueryHandler(context.getContentResolver()).markNewVoicemailsAsOld(null);
+ new VoicemailQueryHandler(context.getContentResolver())
+ .markNewVoicemailsAsOld(context, null);
});
}
@@ -59,12 +60,12 @@ public class VoicemailQueryHandler extends AsyncQueryHandler {
ThreadUtil.postOnUiThread(
() -> {
new VoicemailQueryHandler(context.getContentResolver())
- .markNewVoicemailsAsOld(voicemailUri);
+ .markNewVoicemailsAsOld(context, voicemailUri);
});
}
/** Updates all new voicemails to mark them as old. */
- private void markNewVoicemailsAsOld(@Nullable Uri voicemailUri) {
+ private void markNewVoicemailsAsOld(Context context, @Nullable Uri voicemailUri) {
// Mark all "new" voicemails as not new anymore.
StringBuilder where = new StringBuilder();
where.append(Calls.NEW);
@@ -88,5 +89,8 @@ public class VoicemailQueryHandler extends AsyncQueryHandler {
voicemailUri == null
? new String[] {Integer.toString(Calls.VOICEMAIL_TYPE)}
: new String[] {Integer.toString(Calls.VOICEMAIL_TYPE), voicemailUri.toString()});
+
+ // No more notifications, stop monitoring the voicemail provider
+ VoicemailNotificationJobService.cancelJob(context);
}
}