Skip to content

Deferral date/time picker forces entering PM before certain hour values are permitted, if current time is AM #684

@homebysix

Description

@homebysix

We use Nudge’s custom deferral dropdown to allow users to choose a date/time in the future (before the deadline) for the next Nudge reminder. However, one user reported that the interface for selecting this date/time does not automatically switch from AM to PM in cases where the hour entered is in the past. This requires extra keystrokes/clicks in order for the user to set "AM/PM" prior to adjusting the hour.

Steps to reproduce

In this scenario, the current time is before 12pm local time, and the user wishes to defer the next reminder until after 12pm. Either follow these steps before 12pm local time, or manually set the Mac's clock to before 12pm to reproduce the results.

  1. Configure the Mac with a requiredInstallationDate and requiredMinimumOSVersion such that the Nudge message will appear.
  2. When the Nudge message appears, click Defer, then Custom to bring up the date/time picker.
  3. Type Tab until the hour field is highlighted.
  4. Type 12.
  5. ⚠️ Observe that the hour value entered is cleared and replaced with the current hour.
  6. Manually change AM to PM, then return to the hour field and type 12.
  7. Observe that the hour value works as expected now.

Impact

The unexpected behavior in step 5 above prevents users from smoothly and intuitively entering the desired deferral time. This increases perceived friction and further highlights the interruption to their workflow that Nudge already represents to many, leading to negative perception of security and IT tooling in general.

Workaround

As described above, the user can manually select the AM/PM field and adjust it before returning to the hour field. But this requires extra clicks/keystrokes.

Alternatively, the user can Tab into the hour field and type p before entering the hour value. But this isn't discoverable/intuitive for most.

Desired Change

We understand that Nudge's date/time picker cannot offer dates/times in the past or beyond the configured deadline. It would be ideal if, when a user enters an hour that would be in the past if the current AM/PM value is retained, that the UI would automatically flip AM/PM as needed to provide a time in the future. This respects the user's intent to enter a specific hour value (e.g. 12) without forcing them to enter AM or PM first.

In this scenario, the picker would work as follows:

  1. The user would tab to the hour field and type 12.
  2. Knowing that 12am is in the past, the picker would change AM to PM automatically without user action.
  3. The user continues by typing tab and 0 for the minute field.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions