diff options
| author | 2024-04-01 17:21:42 +0000 | |
|---|---|---|
| committer | 2024-04-01 17:21:42 +0000 | |
| commit | 635ede2a4f38bc4c9f33bd3a118042f7a43b7db0 (patch) | |
| tree | f894f25d93f7a8bd0caa1f015f95d96da45481f2 | |
| parent | 689af7a504a912f81d4a265dde3d6cedb25ebd42 (diff) | |
| parent | fecd30cf35cf46b23be5b73734e874ae47c9aecd (diff) | |
Merge "Fix dropdown more options bug" into main
3 files changed, 8 insertions, 1 deletions
diff --git a/core/java/android/view/autofill/AutofillManager.java b/core/java/android/view/autofill/AutofillManager.java index 1d9eb715ee3b..c7df15c7d5fa 100644 --- a/core/java/android/view/autofill/AutofillManager.java +++ b/core/java/android/view/autofill/AutofillManager.java @@ -588,6 +588,9 @@ public final class AutofillManager { */ public static final int NO_SESSION = Integer.MAX_VALUE; + /** @hide **/ + public static final String PINNED_DATASET_ID = "PINNED_DATASET_ID"; + private final IAutoFillManager mService; private final Object mLock = new Object(); diff --git a/packages/CredentialManager/src/com/android/credentialmanager/autofill/CredentialAutofillService.kt b/packages/CredentialManager/src/com/android/credentialmanager/autofill/CredentialAutofillService.kt index 6ba684d9dfcc..1253ce3a6c80 100644 --- a/packages/CredentialManager/src/com/android/credentialmanager/autofill/CredentialAutofillService.kt +++ b/packages/CredentialManager/src/com/android/credentialmanager/autofill/CredentialAutofillService.kt @@ -47,6 +47,7 @@ import android.service.credentials.CredentialProviderService import android.util.Log import android.content.Intent import android.view.autofill.AutofillId +import android.view.autofill.AutofillManager import android.view.autofill.IAutoFillManagerClient import android.widget.RemoteViews import android.widget.inline.InlinePresentationSpec @@ -372,6 +373,7 @@ class CredentialAutofillService : AutofillService() { fillResponseBuilder.addDataset( Dataset.Builder() + .setId(AutofillManager.PINNED_DATASET_ID) .setField( autofillId, Field.Builder().setPresentations( @@ -411,6 +413,7 @@ class CredentialAutofillService : AutofillService() { fillResponseBuilder.addDataset( dataSetBuilder + .setId(AutofillManager.PINNED_DATASET_ID) .setField( autofillId, Field.Builder().setPresentations( diff --git a/services/autofill/java/com/android/server/autofill/Session.java b/services/autofill/java/com/android/server/autofill/Session.java index 558e07f77656..b8a18c0a5029 100644 --- a/services/autofill/java/com/android/server/autofill/Session.java +++ b/services/autofill/java/com/android/server/autofill/Session.java @@ -5141,7 +5141,8 @@ final class Session implements RemoteFillService.FillServiceCallbacks, ViewState return; } for (Dataset dataset: response.getDatasets()) { - if (isPinnedDataset(dataset)) { + if (dataset.getId() != null + && dataset.getId().equals(AutofillManager.PINNED_DATASET_ID)) { Slog.d(TAG, "Adding Credential Manager callback to a pinned entry"); addCredentialManagerCallbackForDataset(dataset, response.getRequestId()); } |