Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Disabling 'auto-fill' causes that the 'save-password' dialog is not launched anymore #1707

Open
javifernandez opened this issue Jan 22, 2025 · 6 comments · May be fixed by #1738
Open

Disabling 'auto-fill' causes that the 'save-password' dialog is not launched anymore #1707

javifernandez opened this issue Jan 22, 2025 · 6 comments · May be fixed by #1738
Labels
bug Something isn't working chromium Issues related to the new Chromium backend priority-medium

Comments

@javifernandez
Copy link
Member

javifernandez commented Jan 22, 2025

Configuration

Wolvic version: 1.2 (chromium)
Wolvic build ID:

Hardware: ML2

Steps to Reproduce

  1. Go to Settings > Privacy and Security > Logins and Paswords
  2. Check that "Save logins and passwords" is enabled
  3. Disable 'autofill'
  4. Go to an authentication protected website (eg Disney+)
  5. Introduce the authentication credentials

Current Behavior

The authentication process is completed and no dialog is shown offering to save the credentials

Expected Behavior

A dialog offering to save the credentials must be shown

Possible Solution

Context

Error Logs and Stack Traces

@javifernandez javifernandez added bug Something isn't working chromium Issues related to the new Chromium backend labels Jan 22, 2025
@javifernandez javifernandez changed the title Disabling 'auto-fill' cause that the 'save-password' dialog is not lauched anymore Disabling 'auto-fill' causes that the 'save-password' dialog is not lauched anymore Jan 22, 2025
@javifernandez javifernandez changed the title Disabling 'auto-fill' causes that the 'save-password' dialog is not lauched anymore Disabling 'auto-fill' causes that the 'save-password' dialog is not launched anymore Jan 22, 2025
@javifernandez javifernandez added priority-medium and removed chromium Issues related to the new Chromium backend labels Jan 27, 2025
@haanhvu
Copy link
Collaborator

haanhvu commented Jan 28, 2025

Hardware: ML2

I can reproduce this with Quest 3. So seems like this's not a hardware-specific issue?

Also, why removed the chromium tag? I tried Gecko too and it worked fine

@javifernandez
Copy link
Member Author

Hardware: ML2

I can reproduce this with Quest 3. So seems like this's not a hardware-specific issue?

Also, why removed the chromium tag? I tried Gecko too and it worked fine

Oh, you're right. It's only reproducible using the Chromium backend. Lets get the 'chromium' label back.
Thanks !

@javifernandez javifernandez added the chromium Issues related to the new Chromium backend label Jan 28, 2025
@haanhvu
Copy link
Collaborator

haanhvu commented Jan 28, 2025

I have been debugging this. It seems the problem is that in Chromium's PasswordManager we only have isSavingAndFillingEnabled() and isFillingEnabled(), but no isSavingEnabled(): https://github.com/Igalia/wolvic-chromium/blob/40804fadc808686bdebc54a71196c4b9a3ff68c7/wolvic/java/org/chromium/wolvic/PasswordManager.java#L66-L77

In native code we don't have isSavingEnabled() either:

It seems to make sense, because in Chromium browser there's only one option of password saving without autofill option, which means saving always goes with autofill:

Image

If what I observed is right, I think we have two options:

  • Disable autofill option for Chromium build like Chromium browser
  • Implement our own isSavingEnabled(), starting from password_manager_client.h/cc

WDYT?

@javifernandez
Copy link
Member Author

I think the "Disable saving" option is useful to avoid annoying popups being launched any time the user fulfills an authentication form. If the user is not using its own device, this flag is very useful. The "Disable filling" is important for privacy reasons, since it discloses previous access. So I find both options nice to have, especially when we are advertising Privacy as a Wolvic differentiating feature.

However, what I could see in our Chromium backend implementation is that login / password data is not filled into the authentication forms without user intervention. A dialog is always shown to let users select login and it's corresponding password. Am I right on this perception ?

In that case, we can remove the autofill option, implying that the user must select the login / password tandem, with the argument of enforcing privacy always.

wdyt ?

@haanhvu
Copy link
Collaborator

haanhvu commented Jan 29, 2025

However, what I could see in our Chromium backend implementation is that login / password data is not filled into the authentication forms without user intervention. A dialog is always shown to let users select login and it's corresponding password. Am I right on this perception ?

Yes you're right users are prompted to choose whether to autofill or not with the login selection dialog.

In that case, we can remove the autofill option, implying that the user must select the login / password tandem, with the argument of enforcing privacy always.

This's what I meant by my first option ("remove" is more accurate than "disable" here). But now I think a better option might be keeping the autofill option. If users turn off autofill, password saving dialog would still show but login selection dialog would not show in next logins. Do you think that works?

@javifernandez
Copy link
Member Author

If users turn off autofill, password saving dialog would still show but login selection dialog would not show in next logins. Do you think that works?

I think that's the ideal approach, but not sure how complex it'd be. It may require to touch the Chromium code as well.

haanhvu added a commit to haanhvu/wolvic that referenced this issue Jan 30, 2025
haanhvu added a commit to haanhvu/wolvic that referenced this issue Jan 30, 2025
…n in Privacy settings

Currently in Privacy settings in Chromium backend, the password saving option depends on the autofill option. If autofill is disabled, password saving doesn't work whether enabled or not. This is because Chromium doesn't provide an autofill option but provides a login selection dialog that asks users whether to autofill the saved password or not. This commit makes password saving option independent from autofill option. The autofill option now only affects whether to show login selection dialog or not.

Fixes Igalia#1707
haanhvu added a commit to haanhvu/wolvic that referenced this issue Jan 30, 2025
…n in Privacy settings

Currently in Privacy settings in Chromium backend, the password saving option depends on the autofill option. If autofill is disabled, password saving doesn't work whether enabled or not. This is because Chromium doesn't provide an autofill option but provides a login selection dialog that asks users whether to autofill the saved password or not. This commit makes password saving option independent from autofill option. The autofill option now only affects whether to show login selection dialog or not.

Fixes Igalia#1707
haanhvu added a commit to haanhvu/wolvic that referenced this issue Jan 30, 2025
…n in Privacy settings

Currently in Privacy settings in Chromium backend, the password saving option depends on the autofill option. If autofill is disabled, password saving doesn't work whether enabled or not. This is because Chromium doesn't provide an autofill option but provides a login selection dialog that asks users whether to autofill the saved password or not. This commit makes password saving option independent from autofill option. The autofill option now only affects whether to show login selection dialog or not.

Fixes Igalia#1707
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working chromium Issues related to the new Chromium backend priority-medium
Projects
None yet
2 participants