Firefox/Namoroka/Improved form history
Jump to navigation
Jump to search
DRAFT
The content of this page is a work in progress intended for review.
Please help improve the draft!
Ask questions or make suggestions in the discussion
or add your suggestions directly to this page.
The goal is to make form history more intelligent about how it stores are retrieves form data. Currently, satchel displays saved data alphabetically to the user based on prefix matches with what the user has typed. Making form history more like the "Awesomebar" will increase the usefulness of this feature.
Plan
- User interface with the dropdown of suggestions will remain the same with a possible addition of a delete button
- Consider data on last use, first use, and # uses in ordering of suggestions
- see bug 474880 & bug 370117
- Use groupings/containers of relevancy so that result order is more stable between small changes to the query
- Limit # of saved fields per form when ordering by relevancy
- Ability to search within history instead of just head matches
- These results should be ranked lower or possibly be only shown if there are not results that matched the head
- Don't have to always consider field names (especially if no matching results found for a field)
- Use Javascript port of autocomplete portions - bug 469443
- Consider maximum length of text fields - bug 444728
- Consider ability to not share form history between domains - bug 409795
- Use preferences to allow some user control over history results
- Look at about:config prefs for urlbar to get ideas
- Consider keeping track of what results are used based on what was typed at the time (similar to the awesomebar)
Notes
- Dropdown with no search term could be treated as a special case
- Could consider average number of uses per day (lastUse - firstUse)
- Otherwise a history table could be used for relevancy calculations
- Could give bonus for old and new entries
- Test with appropriate indexes in SQLite
- Benchmark time taken for various relevancy calculations
Configuration
- browser.formfill.sortType
- 0 - Alphabetical ASC
- 1 - Last Used DESC
- 2 - # (Avg.) Uses & Age of last use
- browser.formfill.headMatch - whether to only match the beginning of saved text (current behavior)
- browser.formfill.maxTimeGroupings - maximum number of timeGroupingSize units to give a bonus to
- browser.formfill.timeGroupingSize - number of seconds in a time container
- browser.formfill.maxSuggestions - maximum number of suggestions to return (0 = unlimited)
- browser.formfill.useAvgTimesUsed - which calculation to use related to past usage
- True: # uses / (lastUsed - firstUsed)
- False: # uses
Existing form history bugs from form manager to consider
- bug 474880 - Chronological sort
- bug 370117 - form autocomplete should sort by frequency of use
- bug 252486 - Option to disable form manager (saved form information) for secure websites (https)
- bug 385741 - Want to be able to exclude sites from form autofill
- bug 260908 - Trailing spaces should be trimmed from AutoComplete
- bug 347564 - text input auto complete interferes too much
- bug 380963 - Providers of form-fill data should be able to register with satchel
- bug 409795 - Data filled in a web is used in others if field name is the same
- bug 414524 - Form autocomplete should sort numbers numerically
- bug 424646 - form history autocomplete doesn't show work on input fields that are focused too early (e.g. in newly opened tabs)
- bug 439716 - Form Manager should be a JavaScript-based component
- bug 444728 - autocomplete disregards maxlength for input fields
- bug 448540 - Form auto-complete stops working after Enter is pressed