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

Inaccuracies in framing of "comparable APIs" in explainer #42

Open
rmondello opened this issue Apr 10, 2020 · 0 comments
Open

Inaccuracies in framing of "comparable APIs" in explainer #42

rmondello opened this issue Apr 10, 2020 · 0 comments

Comments

@rmondello
Copy link

The explainer says:

Secondly, Safari on iOS has a declarative autocomplete API that provides an integration with the native keyboard. iOS applies heuristics to extract OTPs from SMSes to pass it back to the element. Here is what it looks like:

<input autocomplete="one-time-code"/>

This is only somewhat true. A few points:

  1. The Safari feature is called Security Code AutoFill.
  2. Safari on macOS has Security Code AutoFill; not just Safari on iOS.
  3. The feature on iOS is available for use in all web browsers, not just Safari. It is a system-wide feature, integrated into the keyboard.
  4. To say that Safari on iOS has a "declarative autocomplete API that provides an integration with the native keyboard" is incorrect. Safari has an AutoFill feature for SMS-delivered one-time codes that works automatically across the web. Detection of relevant form fields happens with heuristics, but websites can tell any user agent that a field is for one-time codes by using the HTML Standard’s autocomplete=one-time-code.
  5. You say "iOS applies heuristics", followed by, "Here is what it looks like". What you're showing isn't heuristics; it's an example of using standard HTML markup to inform user agents of a field's intent, which Security Code AutoFill happens to use.

To characterize Safari's feature as a comparable API is misleading, because Safari's feature is not a declarative autocomplete API; it is a browser feature with standardized markup that can inform it.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant