TPE DOM/Date time input types
Contents
Introduction
This project is to enable the feature on Desktop that HTML input fields should contain a date or time or allow users to select a week in a year.
The project aims to provide basic input/pickers (date, month, time, date time, and week) for web authors and at the same time to meet HTML standard criteria including "Step", and "Max/Min".
Other than the functions listed above, the project shall also take care of localization (incl. the different format per locale) and accessibility (Input = Cursor Only, Cursor+Keyboard, or Keyboard only).
Last but not least, as per the current scope, only Gregorian calendar is considered.
References
- Project spec organized by Jessica. This document abstracted the essential user stories (as a web author viewpoint) from HTML living standard.
- UX spec Comprehensive living UX spec also available in Bug 1069609 .
- Visual spec UX spec might not be 100% correct regarding visual elements, so please refer to the visual spec which is also attached in Bug 1069609 .
- HTML input types
- Discussion thread
- QA Plan
- Jessica's Lightning talk in the Hawaii All Hands, Dec 2016
- Date/Time inputs post on Firefox Nightly blog
Note
Features landed on master will be pref-off, if the l10n integration is not done yet for that specific picker. Once it gets l10n part done, we will pref-on it on nightly /developer-edition.
Main Members
Product manager: Joe Cheng
Engineering program manager: Wesley Huang
Engineers: Jessica Jong (platform: DOM/layout part), Scott Wu (front-end: xul element/html content)
UX designer: Morpheus Chen, Tina Hsieh
Visual designer: Helen Huang
Localization: Zbigniew Braniecki (Gandalf)
Softvision QA:
Project Manager: Rares Bologa
QA members: Brindusa Tot, Simona Badau, Roxana Leitan
Roadmap
- Public Trello board
- Aligned living schedule available in google sheet (permission required as it's more for internal tracking)
- High-level overview of date time input status on Firefox Desktop
Time Input | Date Input | Month Input | Week Input | Date Time Input | |
---|---|---|---|---|---|
Basic input field (MVP) | Firefox 52 pref-off, 57 pref-on | Firefox 53 pref-off, 57 pref-on | backlog | backlog | backlog |
Pop-up picker (MVP) | Firefox 52 pref-off; de-scoped | Firefox 53 pref-off, 57 pref-on | backlog | backlog | backlog |
Input field with STEP (displaying warning message when out of range) | Firefox 53 pref-off, 57 pref-on | Firefox 53 pref-off, 57 pref-on | backlog | backlog | backlog |
Input field with Min/Max (displaying warning message when out of range) | Firefox 53 pref-off, 57 pref-on | Firefox 53 pref-off, 57 pref-on | backlog | backlog | backlog |
Picker with STEP | N/A | Firefox 56 pref-off, 57 pref-on | backlog | backlog | backlog |
Picker with Min/Max | N/A | Firefox 56 pref-off, 57 pref-on | backlog | backlog | backlog |
Input field l10n integration (incl. RTL) | Firefox 55 pref-off, 57 pref-on | Firefox 56 pref-off, 57 pref-on | backlog | backlog | backlog |
Picker l10n integration (incl. RTL) | N/A | Firefox 56 pref-off, 57 pref-on | backlog | backlog | backlog |
Input field with keyboard navigation | Firefox 52 pref-off, 57 pref-on | Firefox 53 pref-off, 57 pref-on | backlog | backlog | backlog |
Picker with keyboard navigation | N/A | Backlog | backlog | backlog | backlog |
Input field a11y integration | Backlog | Backlog | backlog | backlog | backlog |
Picker a11y integration | N/A | Backlog | backlog | backlog | backlog |
List and autocomplete attributes | Backlog | Backlog | backlog | backlog | backlog |
Project Dashboard
Project status on Meeting minutes
Bug Priority Tagging
- P1 - Fix in the current release or iteration
- Major issues those in which a large number of users will be impacted, or a smaller number of users will be significantly impacted
- Major identifiable regressions
- Non-localizable strings
- Top Crashes
- sec-high, sec-critical security bugs
- Data loss
- P2 - Fix in the next release or iteration
- Enhancements/features we surely want in the next release
- Non-critical string changes (due to l10n)
- P3 - Backlog
- Polish and other minor issues
- Other new features
- P4 - None. We're not using this
- P5 - Will not fix, but will accept a patch
Meta Bugs
- Project meta
ID | Summary | Priority | Status |
---|---|---|---|
888320 | [meta] implement all time and date related input types | P2 | NEW |
1 Total; 1 Open (100%); 0 Resolved (0%); 0 Verified (0%);
- Meta bug for defects tracking
ID | Summary | Priority | Status |
---|---|---|---|
1323674 | [meta] defects in date time input types | -- | NEW |
1 Total; 1 Open (100%); 0 Resolved (0%); 0 Verified (0%);
Ship Bugs
No results.
0 Total; 0 Open (0%); 0 Resolved (0%); 0 Verified (0%);
Open Issues
Issue | Description | Status | Comments/Corresponding Action |
---|---|---|---|
Metrics integration before rolling out to release channel | Planning |
Issues DONE
Issue | Description | Status | Comments/Corresponding Action |
---|---|---|---|
Identify scope Bug 1280654 and owner | CLDR access needed for both front-end and platform module | DONE | Discuss on bug 1280654; Target by Aug/M. |
Front-end architecture plan | Identify front-end reviewer and get architecture plan reviewed | DONE | |
Layout architecture plan | Identify layout reviewer and get architecture plan reviewed | DONE | |
UX spec lock-down | Get sign-off in the critique | DONE | https://mozilla.invisionapp.com/share/237UTNHS8#/screens/171579739 |
Project master schedule (Proposal) | proposal for 2016H2 | DONE | Living schedule for 20162H available in https://goo.gl/wwLYf3 (permission required) |
Project master schedule | master plan sign off | DONE | |
Determine locale for the date/time | Options: 1. Browser UI locale 2. User preferred locale | DONE | decision changed to (1). Reason: it's part of the browser UI and as such it should stay consistent with browser similarly to how file opening UI, printing UI etc. stays. It interacts with the website, but it's part of the application. |
Does the feature need to support non-E10s ? | single process mode | DONE | Yes. Necessary. |
Moving advanced functions of time picker to later phase | 1. Follow-up bugs creation 2. Schedule in the master plan | DONE | front-end : 1301281 1301284 1301302
Platform: 1301295 1301304 1301306 1301308 1301310 1301312 Shall add/schedule these to section #5 of the master plan in the workshop (Schedule revisiting will be the tasks after retrospect) |
Working model with 3rd party QA and revisit QA plan in our master plan | Done | Synced with SV during the week of Sep12. Now we have test plan (https://wiki.mozilla.org/QA/DateTimeInputTypes) and test cases draft | |
Revisit master schedule | Based on our learning of time picker MVP, the current master plan is way too optimistic. Let's alter after time picker MVP landed | Done | Latest update on https://goo.gl/wwLYf3 (permission required). In short, next milestone is targeting on landing date picker MVP (w/o) l10n before firefox53 branches to aurora. Still pref-off for its purpose is not for direct end user to try at that moment. |
Do we need keyboard navigation on all the pickers? | This is mostly for a11y. Input field already supports the keys (up/down) to increment or decrement. Maybe only for date picker is good enough. | Done | 2nd priority |
Revisit pref on/off plan. | We may want to roll out to beta/release incrementally, w/o having all types ready. | Done | Release date and time types as these are the most common ones |
Decision on descoping month picker | Similar reason as to time picker | Done | 2nd priority |