summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--services/core/java/com/android/server/am/ActivityManagerService.java8
1 files changed, 7 insertions, 1 deletions
diff --git a/services/core/java/com/android/server/am/ActivityManagerService.java b/services/core/java/com/android/server/am/ActivityManagerService.java
index 5cd772d02841..37f744f67eba 100644
--- a/services/core/java/com/android/server/am/ActivityManagerService.java
+++ b/services/core/java/com/android/server/am/ActivityManagerService.java
@@ -18203,8 +18203,14 @@ public class ActivityManagerService extends IActivityManager.Stub
intent.putExtra("reason", reason);
}
+ final BroadcastOptions options = new BroadcastOptions()
+ .setDeliveryGroupPolicy(BroadcastOptions.DELIVERY_GROUP_POLICY_MOST_RECENT)
+ .setDeferUntilActive(true);
+ if (reason != null) {
+ options.setDeliveryGroupMatchingKey(Intent.ACTION_CLOSE_SYSTEM_DIALOGS, reason);
+ }
broadcastIntentLocked(null, null, null, intent, null, null, 0, null, null, null,
- null, null, OP_NONE, null, false, false, -1, SYSTEM_UID,
+ null, null, OP_NONE, options.toBundle(), false, false, -1, SYSTEM_UID,
Binder.getCallingUid(), Binder.getCallingPid(), UserHandle.USER_ALL);
}
}