Skip to content

Add keyboard navigation to date picker - #890

Draft
harsha573252 wants to merge 6 commits into
solarwinds:release/v20.0.xfrom
harsha573252:calender_task
Draft

Add keyboard navigation to date picker#890
harsha573252 wants to merge 6 commits into
solarwinds:release/v20.0.xfrom
harsha573252:calender_task

Conversation

@harsha573252

Copy link
Copy Markdown
Contributor

Introduces a dedicated DatePickerKeyboardService to handle open/close, arrow/page/home/end navigation, mode-aware grid movement (day/month/year), disabled-date skipping, and focus restoration on Escape. Updates the picker templates/components for roving tabindex and active-cell focusing, converts the calendar icon into an accessible toggle button with aria-expanded state, emits mode changes to keep focus in the active grid, and fixes year-grid range start calculation using floor division. Adds broad unit/spec coverage for the new keyboard and focus behavior.

Frontend Pull Request Description

Checklist

  • My code follows the style guidelines of this project
  • I have performed a self-review of my code
  • I have updated change log
  • I have been following Definition of done
  • I have commented my code, particularly in hard-to-understand areas
  • My changes generate no new lint warnings
  • New and existing unit tests pass locally and on CI with my changes
  • Any dependent changes have been merged and published in downstream modules

Screenshots (if applicable)

Additional Context (if necessary)

Introduces a dedicated DatePickerKeyboardService to handle open/close, arrow/page/home/end navigation, mode-aware grid movement (day/month/year), disabled-date skipping, and focus restoration on Escape. Updates the picker templates/components for roving tabindex and active-cell focusing, converts the calendar icon into an accessible toggle button with aria-expanded state, emits mode changes to keep focus in the active grid, and fixes year-grid range start calculation using floor division. Adds broad unit/spec coverage for the new keyboard and focus behavior.
Replace the two-step toggle + overlay check with a dedicated `toggleToBeDisabled` method that directly asserts the datepicker icon is disabled, simplifying the disabled state verification in form-field e2e tests.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Development

Successfully merging this pull request may close these issues.

1 participant