aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorandroid-build-team Robot <android-build-team-robot@google.com>2020-12-16 18:31:47 +0000
committerandroid-build-team Robot <android-build-team-robot@google.com>2020-12-16 18:31:47 +0000
commit5d8e605d8e0a716892ea482296156f4a1399968f (patch)
tree10aa02a9fb32e77f3a4e1b8f0b401150497ed860
parent2a638f57c7c1cc30dc01cf431113f93d50eb13c5 (diff)
parentace58c8ee1f6a88b809c1938fde91a2aa2f92a97 (diff)
downloadContactsProvider-android11-qpr1-c-release.tar.gz
Merge cherrypicks of [13237717, 13237455, 13237456, 13237585, 13237718, 13237719, 13237720, 13237725, 13238104, 13237746, 13237586, 13237478, 13237479, 13237691, 13238124, 13238105, 13237747, 13237748, 13237749, 13237750, 13237751, 13238125, 13237587, 13237726, 13238126, 13238127, 13237727, 13237728, 13237729, 13237721, 13237588, 13238106, 13238107, 13237722, 13237723, 13238144, 13238145, 13238146, 13238147, 13238148, 13237589, 13237590, 13237591, 13237692, 13237693, 13238128, 13238129, 13238149, 13238150, 13237592, 13237593, 13237594, 13237595, 13237730, 13237731, 13238151, 13236939, 13236940, 13238130, 13238131, 13236759, 13236761, 13237752, 13237753, 13237754, 13238132, 13238133, 13238134] into rvc-qpr1-c-releaseandroid-11.0.0_r30android11-qpr1-c-release
Change-Id: Ie30444cc522e12153f7673e9b52f7dde7e113cca
-rw-r--r--src/com/android/providers/contacts/CallLogProvider.java12
-rw-r--r--src/com/android/providers/contacts/DbModifierWithNotification.java16
2 files changed, 18 insertions, 10 deletions
diff --git a/src/com/android/providers/contacts/CallLogProvider.java b/src/com/android/providers/contacts/CallLogProvider.java
index ebe111f1..7a610151 100644
--- a/src/com/android/providers/contacts/CallLogProvider.java
+++ b/src/com/android/providers/contacts/CallLogProvider.java
@@ -563,7 +563,11 @@ public class CallLogProvider extends ContentProvider {
throw new UnsupportedOperationException("Cannot update URL: " + uri);
}
- return qb.update(db, values, selectionBuilder.build(), selectionArgs);
+ int rowsUpdated = qb.update(db, values, selectionBuilder.build(), selectionArgs);
+ if (rowsUpdated > 0) {
+ DbModifierWithNotification.notifyCallLogChange(getContext());
+ }
+ return rowsUpdated;
}
private int deleteInternal(Uri uri, String selection, String[] selectionArgs) {
@@ -596,7 +600,11 @@ public class CallLogProvider extends ContentProvider {
case CALLS:
// TODO: Special case - We may want to forward the delete request on user 0 to the
// shadow provider too.
- return qb.delete(db, selectionBuilder.build(), selectionArgs);
+ int deletedCount = qb.delete(db, selectionBuilder.build(), selectionArgs);
+ if (deletedCount > 0) {
+ DbModifierWithNotification.notifyCallLogChange(getContext());
+ }
+ return deletedCount;
default:
throw new UnsupportedOperationException("Cannot delete that URL: " + uri);
}
diff --git a/src/com/android/providers/contacts/DbModifierWithNotification.java b/src/com/android/providers/contacts/DbModifierWithNotification.java
index 852301d3..03ebd1f1 100644
--- a/src/com/android/providers/contacts/DbModifierWithNotification.java
+++ b/src/com/android/providers/contacts/DbModifierWithNotification.java
@@ -109,7 +109,7 @@ public class DbModifierWithNotification implements DatabaseModifier {
packagesModified);
}
if (rowId > 0 && mIsCallsTable) {
- notifyCallLogChange();
+ notifyCallLogChange(mContext);
}
return rowId;
}
@@ -126,20 +126,20 @@ public class DbModifierWithNotification implements DatabaseModifier {
ContentUris.withAppendedId(mBaseUri, rowId), packagesModified);
}
if (rowId > 0 && mIsCallsTable) {
- notifyCallLogChange();
+ notifyCallLogChange(mContext);
}
return rowId;
}
- private void notifyCallLogChange() {
- mContext.getContentResolver().notifyChange(Calls.CONTENT_URI, null, false);
+ public static void notifyCallLogChange(Context context) {
+ context.getContentResolver().notifyChange(Calls.CONTENT_URI, null, false);
Intent intent = new Intent("com.android.internal.action.CALL_LOG_CHANGE");
intent.setComponent(new ComponentName("com.android.calllogbackup",
"com.android.calllogbackup.CallLogChangeReceiver"));
- if (!mContext.getPackageManager().queryBroadcastReceivers(intent, 0).isEmpty()) {
- mContext.sendBroadcast(intent);
+ if (!context.getPackageManager().queryBroadcastReceivers(intent, 0).isEmpty()) {
+ context.sendBroadcast(intent);
}
}
@@ -201,7 +201,7 @@ public class DbModifierWithNotification implements DatabaseModifier {
notifyVoicemailChange(mBaseUri, packagesModified);
}
if (count > 0 && mIsCallsTable) {
- notifyCallLogChange();
+ notifyCallLogChange(mContext);
}
if (hasMarkedRead) {
// A "New" voicemail has been marked as read by the server. This voicemail is no longer
@@ -283,7 +283,7 @@ public class DbModifierWithNotification implements DatabaseModifier {
notifyVoicemailChange(mBaseUri, packagesModified);
}
if (count > 0 && mIsCallsTable) {
- notifyCallLogChange();
+ notifyCallLogChange(mContext);
}
return count;
}