-
Notifications
You must be signed in to change notification settings - Fork 711
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
Proposal: Duration Picker #1807
Comments
Great idea! Hand in hand with the picker it would be great to have a |
Duration Picker is great, and the Alarms app has something similar. Could it be combined with a Time Span Picker? |
Does anyone have thoughts on how extensible this should be?
I think this would be better to be considered a TimeSpanPicker that uses a
|
@mrlacey I'd imagine that if you were a developer that wanted to have a timer where a user could set over 24 hours as the duration, then you'd essentially be dealing with days and if you wanted a timer that handled more that 365 days, then you'd be dealing with years. So perhaps having a duration picker that by default was a 24 hour timer, but would have properties on it like I don't think there's a need for negative time durations or to limit min/max values. A timer/countdown would only be moving "forward". There's no concept of past in this kind of control, that I can see. If we were thinking in terms of specific dates, then I can see needing a limitation method of some sort, though. |
Could it take a format string to change it to Days Hours Minutes, or even Week and Year scopes. |
@mdtauk it may make more sense to receive a string in the same way the Something like |
Exactly what I was thinking. The Time Picker is fixed into Hours, Minutes, Seconds - but durations of time are more varied. Nanoseconds, Milliseconds, Microseconds, as well as days, weeks, months, years. There are some relevant issues that may need to be taken into account with this. #1440 #918 #925 #905 |
Having the flexibility to basically define the length as @kikisaints proposes would be great and very flexible. We'd need to think about the UX though. If we stick to the current time/data picker design it might become confusing for the user to determine what value is belongs to what time unit, as this concept shows: When the picker is configured to support days/hours/minutes/seconds it might be hard to distinguish the different units. Proposed design: We'd need to add this to the expanded state as well, here I'm following the timepicker in the Alarms app: I think this model is pretty extensible and would meet multiple needs. Thoughts? |
Please think about internatiomalization (i18n) |
Beyond labels (for time units) and LTR are there any specific things that need to be considered here? Are there, for instance, calenders that treat time (spans) differently? |
@mrlacey not really. Currently I'm thinking about the labels. |
I think having the labels under each column both when in a popup and when in-line would make the most sense localization-wise. Alternately, we could supply a guidance around or string at the base that tallies up what you're setting, something like what Alarms and Clock does: But it would say Edit: @mdtauk although I like the "same line" look of the unit denoting being next to the hour/min/etc. - I worry it won't always work. Especially when introducing non latin-based languages like Arabic, Russian or Korean. Where the physical space the character takes up can vary. |
I haven't spent enough time thinking on the control to have a proposal or suggestion as to how it looks. But I was always taught design is 1 third research (look at how others tackle to problem), 1 third planning (mock-ups and sketches etc), and the final third actually making the thing. Consider those images part of the research :) |
Absolutely - and I do appreciate it! A lot of those research images are in the vein of what I'm thinking - however, for the sake of record, I wanted to also put out my own concerns around what I've seen from certain solutions which are similar to those that you've shown. |
On the I18N theme, need to also consider different pluralization options for different languages/cultures. |
Would it make sense here to handle keyboard input?It would of course require keystroke handling logic and internal focus handling. Logic:
|
For additional reference, the native Windows 10 Alarms app doesn't support using the number keys to set a value but support using the up and down arrow keys to advance the number (up or down based on position in the list, not numerically increment or decrement it.) It also supports the PageUp and PageDown buttons to advance the number by 3 (although I'm not sure what the reason behind this value is. Tabbing is done on each spinner individually and there is no internal looping of focus within the control. A focus visual is displayed around individual spinners. (as below) |
FYI @grochocki @rudyhuyn |
Improved keyboard support is something we would definitely want in the Alarms & Clock app. I really like the direction @mdtauk took with the mockups here. It feels a lot more elegant than what we do today in the Alarms & Clock app, and I think it provides additional flexibility (single/double/triple units, various units, etc.). |
Does anyone plan to work on this control for the 1.0 release of Windows App SDK? |
Any update on this control? |
Proposal: Duration Picker
A Duration Picker control that can be used for setting the duration of e.g. a timer or storyboard.
Summary
A Duration Picker would allow for setting something like a TimeSpan and allows users to set a duration. This is helpful for apps having user interfaces that are timespan based, such as movie storyboards, timers. An example of something that comes close (this doesn't go beyond 24 hours unfortunately):
Rationale
Scope
..
Important Notes
Related issue: #1440
Open Questions
The text was updated successfully, but these errors were encountered: