diff --git a/app/src/common/chromium/com/igalia/wolvic/browser/api/impl/PromptDelegateImpl.java b/app/src/common/chromium/com/igalia/wolvic/browser/api/impl/PromptDelegateImpl.java index 39d8a84d68..0daae20655 100644 --- a/app/src/common/chromium/com/igalia/wolvic/browser/api/impl/PromptDelegateImpl.java +++ b/app/src/common/chromium/com/igalia/wolvic/browser/api/impl/PromptDelegateImpl.java @@ -958,6 +958,8 @@ public class AutocompleteBridge implements PasswordManager.Bridge, AutofillManag private LoginSavePrompt mLoginSavePrompt; private LoginSelectPrompt mLoginSelectPrompt; + private boolean showLoginSelectPrompt; + public void setListener(PasswordManager.Listener listener) { mPasswordManagerListener = listener; } @@ -973,7 +975,11 @@ public boolean isAutocompleteEnabled(Context context) { @Override public boolean isAutoFillEnabled(Context context) { - return SettingsStore.getInstance(context).isAutoFillEnabled(); + // Chromium doesn't provide an autofill option. + // Instead, it provides a login selection prompt that let users decide whether to autofill the saved password or not. + // We'll only show this prompt if users enable autofill. + showLoginSelectPrompt = SettingsStore.getInstance(context).isAutoFillEnabled(); + return true; } @Override @@ -1011,6 +1017,10 @@ public boolean saveOrUpdatePassword(PasswordForm form) { @Override public boolean onLoginSelect(PasswordForm[] forms) { + if (!showLoginSelectPrompt) { + return false; + } + dismiss(); assert mPasswordManagerListener != null; @@ -1038,6 +1048,10 @@ public boolean onLoginSelect(PasswordForm[] forms) { @Override public boolean onLoginSelect(String[] username) { + if (!showLoginSelectPrompt) { + return false; + } + dismiss(); assert mAutofillManagerListener != null;