diff options
author | Christopher Tate <ctate@google.com> | 2015-08-13 16:29:33 -0700 |
---|---|---|
committer | Christopher Tate <ctate@google.com> | 2015-08-13 18:56:05 -0700 |
commit | 56f0ff3c48c88b969d9bf5e62eb1ee590e03e461 (patch) | |
tree | b78a6bc97b2fc7ebe99d2153a2ccbee1b6433043 /core | |
parent | beabcb92cbdec6f68bd712c9972e6f8377b78f46 (diff) | |
download | frameworks_base-56f0ff3c48c88b969d9bf5e62eb1ee590e03e461.zip frameworks_base-56f0ff3c48c88b969d9bf5e62eb1ee590e03e461.tar.gz frameworks_base-56f0ff3c48c88b969d9bf5e62eb1ee590e03e461.tar.bz2 |
Make "Ask every time" actually work that way
..in link-opening behavior. If a candidate is marked as "ask
every time," then the user is guaranteed to get a disambiguation
prompt including that candidate even when some other candidate
app is in the "always prefer this over a browser" state.
Bug 23147746
Change-Id: I904d8697a992b3f16f32b1c1b49c2bf9424c7137
Diffstat (limited to 'core')
-rw-r--r-- | core/java/android/content/pm/IntentFilterVerificationInfo.java | 5 | ||||
-rw-r--r-- | core/java/android/content/pm/PackageManager.java | 12 |
2 files changed, 17 insertions, 0 deletions
diff --git a/core/java/android/content/pm/IntentFilterVerificationInfo.java b/core/java/android/content/pm/IntentFilterVerificationInfo.java index 4dbac05..953b051 100644 --- a/core/java/android/content/pm/IntentFilterVerificationInfo.java +++ b/core/java/android/content/pm/IntentFilterVerificationInfo.java @@ -19,6 +19,7 @@ package android.content.pm; import static android.content.pm.PackageManager.INTENT_FILTER_DOMAIN_VERIFICATION_STATUS_UNDEFINED; import static android.content.pm.PackageManager.INTENT_FILTER_DOMAIN_VERIFICATION_STATUS_ASK; import static android.content.pm.PackageManager.INTENT_FILTER_DOMAIN_VERIFICATION_STATUS_ALWAYS; +import static android.content.pm.PackageManager.INTENT_FILTER_DOMAIN_VERIFICATION_STATUS_ALWAYS_ASK; import static android.content.pm.PackageManager.INTENT_FILTER_DOMAIN_VERIFICATION_STATUS_NEVER; import android.os.Parcel; @@ -199,6 +200,10 @@ public final class IntentFilterVerificationInfo implements Parcelable { sb.append("never"); break; + case INTENT_FILTER_DOMAIN_VERIFICATION_STATUS_ALWAYS_ASK: + sb.append("always-ask"); + break; + case INTENT_FILTER_DOMAIN_VERIFICATION_STATUS_UNDEFINED: default: sb.append("undefined"); diff --git a/core/java/android/content/pm/PackageManager.java b/core/java/android/content/pm/PackageManager.java index 0f936fd..c8e9402 100644 --- a/core/java/android/content/pm/PackageManager.java +++ b/core/java/android/content/pm/PackageManager.java @@ -1073,6 +1073,18 @@ public abstract class PackageManager { public static final int INTENT_FILTER_DOMAIN_VERIFICATION_STATUS_NEVER = 3; /** + * Used as the {@code status} argument for {@link PackageManager#updateIntentVerificationStatus} + * to indicate that this app should always be considered as an ambiguous candidate for + * handling the matching Intent even if there are other candidate apps in the "always" + * state. Put another way: if there are any 'always ask' apps in a set of more than + * one candidate app, then a disambiguation is *always* presented even if there is + * another candidate app with the 'always' state. + * + * @hide + */ + public static final int INTENT_FILTER_DOMAIN_VERIFICATION_STATUS_ALWAYS_ASK = 4; + + /** * Can be used as the {@code millisecondsToDelay} argument for * {@link PackageManager#extendVerificationTimeout}. This is the * maximum time {@code PackageManager} waits for the verification |