Confirmed users
183
edits
(Add benefits and edit themes) |
(Add approaches) |
||
| Line 47: | Line 47: | ||
* '''Encourage sites to adopt new web features.''' | * '''Encourage sites to adopt new web features.''' | ||
** For example, the <code>autocomplete</code> attribute and the <code>requestAutocomplete</code> method. | ** For example, the <code>autocomplete</code> attribute and the <code>requestAutocomplete</code> method. | ||
== Approaches == | |||
The general problems stated above may be solved in several different ways, some of which have already been implemented in Firefox for a long time. | |||
=== Login Manager === | |||
This existing feature stores usernames and passwords for future input. | |||
* Populates username and password fields only. | |||
** ''The username may be an e-mail address, but this is independent from the user profile.'' | |||
* The list of available usernames and associated passwords is specific to a particular website. | |||
** ''This feature is often used with only a single username and associated password for each website.'' | |||
* May fill in the required information automatically once the user authorized the website. | |||
=== Form History === | |||
This existing feature remembers past input in single-line text fields. | |||
* Populates only one field at a time. | |||
* Which list of past values is used depends only on an identifier provided by the website. | |||
** ''The identifier is the HTML ''<code>name</code>'' or ''<code>id</code>'' attribute.'' | |||
* Past values are shared across all websites. | |||
* Requires explicit user action on the individual field. | |||
** ''This can be clicking to show the list of past values, or typing to search.'' | |||
Unrelated data can easily be mixed if different websites reuse the identifier with different meanings. Conversely, data cannot be reused if websites don't use the same identifier. | |||
=== Form Autofill === | |||
This unimplemented feature remembers past input for common data sets, like personal information, that are generally shared across websites. | |||
* Populates several related fields at a time. | |||
* Past values are shared across all websites. | |||
* May fill in the required information automatically once the user authorized the website. | |||
=== requestAutocomplete === | |||
This unimplemented feature allows websites to explicitly request personal information from the browser. | |||
* Replaces in-page form fields with a '''browser-provided interface'''. | |||
* The browser may provide a different input experience depending on the device. | |||
* Provides a similar input experience across all websites. | |||
* Past values are shared across all websites. | |||
* May fill in the required information automatically once the user authorized the website. | |||
This feature works by transmitting the information to the server using '''hidden form fields''' after the website requested the browser to display the interface. | |||
The website may display '''visible fields later in the process''' to correct any data validation errors. | |||