Fix AutofillManager and Session status not sync with fill dialog
AutofillManager only allow show fill dialog once, but Autofill Session
is not. Make Session diabled after shown fill dialog.
Bug: 230526485
Test: atest android.autofillservice.cts.dialog.LoginActivityTest
Test: Manual - click two fields that supported fill dialog.
Result - second field does not show fill dialog.
Change-Id: I1145c3b44058143b6751c27f1e5619d7a4ebea58
This commit is contained in:
@@ -3225,10 +3225,15 @@ final class Session implements RemoteFillService.FillServiceCallbacks, ViewState
|
||||
currentView.setState(ViewState.STATE_FILL_DIALOG_SHOWN);
|
||||
mService.logDatasetShown(id, mClientState, UI_TYPE_DIALOG);
|
||||
}
|
||||
// Just show fill dialog once, so disabled after shown.
|
||||
// Note: Cannot disable before requestShowFillDialog() because the method
|
||||
// need to check whether fill dialog enabled.
|
||||
setFillDialogDisabled();
|
||||
return;
|
||||
} else {
|
||||
setFillDialogDisabled();
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
if (response.supportsInlineSuggestions()) {
|
||||
|
||||
Reference in New Issue
Block a user