summaryrefslogtreecommitdiff
path: root/java
diff options
context:
space:
mode:
Diffstat (limited to 'java')
-rw-r--r--java/src/com/android/intentresolver/ChooserRequestParameters.java14
1 files changed, 12 insertions, 2 deletions
diff --git a/java/src/com/android/intentresolver/ChooserRequestParameters.java b/java/src/com/android/intentresolver/ChooserRequestParameters.java
index 968aee2e..6c7f8264 100644
--- a/java/src/com/android/intentresolver/ChooserRequestParameters.java
+++ b/java/src/com/android/intentresolver/ChooserRequestParameters.java
@@ -16,6 +16,8 @@
package com.android.intentresolver;
+import static java.util.Objects.requireNonNullElse;
+
import android.content.ComponentName;
import android.content.Intent;
import android.content.IntentFilter;
@@ -41,6 +43,8 @@ import java.net.URISyntaxException;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;
+import java.util.Objects;
+import java.util.Optional;
import java.util.stream.Collector;
import java.util.stream.Collectors;
import java.util.stream.Stream;
@@ -128,8 +132,14 @@ public class ChooserRequestParameters {
mReferrerFillInIntent = new Intent().putExtra(Intent.EXTRA_REFERRER, referrer);
- mChosenComponentSender = clientIntent.getParcelableExtra(
- Intent.EXTRA_CHOSEN_COMPONENT_INTENT_SENDER);
+ mChosenComponentSender =
+ Optional.ofNullable(
+ clientIntent.getParcelableExtra(Intent.EXTRA_CHOSEN_COMPONENT_INTENT_SENDER,
+ IntentSender.class))
+ .orElse(clientIntent.getParcelableExtra(
+ Intent.EXTRA_CHOOSER_RESULT_INTENT_SENDER,
+ IntentSender.class));
+
mRefinementIntentSender = clientIntent.getParcelableExtra(
Intent.EXTRA_CHOOSER_REFINEMENT_INTENT_SENDER);