How about role="textbox"?

Options

Context:
As other people have reported before me, I've got a case in which my input element is a custom web component (let's call it ui-input). There's a native input element inside its shadow DOM, but the top-level element is custom and it seems like there's no way to make the 1Password extension see it and populate it.

Proposition: <ui-input role="textbox" />
Once an element with this exact role is detected [role="textbox"], it would be treated the same as input[type="text"] or input[type="password"]. What I mean by "treated the same as" is - by default, "scan" for the same attributes as you would for a native input - name, placeholder, type="password" etc. In my specific case this would suffice, as my component interface is identical to the native one. But for cases where these attributes are possibly named differently, maybe support to use ARIA attributes.

Reasoning:
1. Very easy to implement
2. It's a natively available attribute
3. It's also a very deliberate way to communicate to any password manager


1Password Version: Not Provided
Extension Version: Not Provided
OS Version: Not Provided
Browser: Not Provided

Comments

  • Hello @ekimoth! 👋

    Thank you for the feedback and for the suggestion! Our developers are working on expanding support for webpages that use Shadow DOM and I'd like to dig deeper to see if the current work might help your case as well. Could you please send the page structure of the webpage in question to our support team? Follow these steps:

    1. Open the website in question until you can see the fields that you're referring to.
    2. Right-click on the page and click "1Password - Password Manager" > Help > Collect Page Structure.

    Attach the resulting JSON file to an email message addressed to support+forum@1password.com.

    With your email please include:

    You should receive an automated reply from our BitBot assistant with a Support ID number. Please post that number here. Thanks very much!

    -Dave