Skip to content

Add slider support for browse mode navigation#19398

Merged
seanbudd merged 6 commits intonvaccess:masterfrom
tareh7z:slider-support
Dec 30, 2025
Merged

Add slider support for browse mode navigation#19398
seanbudd merged 6 commits intonvaccess:masterfrom
tareh7z:slider-support

Conversation

@tareh7z
Copy link
Copy Markdown
Contributor

@tareh7z tareh7z commented Dec 21, 2025

Link to issue number:

Fixes #17005

Summary of the issue:

Currently, slider controls (HTML range inputs and ARIA sliders) are not included in browse mode navigation. Users cannot navigate to sliders using quick navigation keys.

Description of user facing changes:

  • Slider controls are now included in browse mode navigation.
  • Users can navigate to sliders using quick navigation. By default, no gesture is assigned.

Description of developer facing changes:

  • Added "slider" node type to browseMode.py base implementation;
  • Implemented slider detection for:
    • Gecko (Firefox) virtual buffers,
    • MSHTML (Internet Explorer) virtual buffers,
    • UIA (Edge, modern UI) browsers,
    • Chromium (Chrome) IAccessible implementation.
  • Updated changes.md documentation.

Description of development approach:

  1. Extended the existing browse mode navigation framework to recognize slider controls;
  2. Used existing control type detection patterns (ARIA roles, HTML input types, UIA control types);
  3. Followed the same pattern as other form controls (checkbox, radio button, etc.).

Testing strategy:

Tested manually.

Known issues with pull request:

N/A

Code Review Checklist:

  • Documentation:
    • Change log entry
    • User Documentation
    • Developer / Technical Documentation
    • Context sensitive help for GUI changes
  • Testing:
    • Unit tests
    • System (end to end) tests
    • Manual testing
  • UX of all users considered:
    • Speech
    • Braille
    • Low Vision
    • Different web browsers
    • Localization in other languages / culture than English
  • API is compatible with existing add-ons.
  • Security precautions taken.

@tareh7z tareh7z requested a review from a team as a code owner December 21, 2025 13:10
@tareh7z tareh7z requested a review from SaschaCowley December 21, 2025 13:10
@cary-rowen
Copy link
Copy Markdown
Contributor

I think it's acceptable to default to not assigning gestures.

@LeonarddeR
Copy link
Copy Markdown
Collaborator

Agreed with @cary-rowen here. I think it is best to leave this unassigned by default. I think there are higher priority controls that support quicknav but are still unassigned.

@bramd
Copy link
Copy Markdown
Contributor

bramd commented Dec 23, 2025

Agreed, and there is always f/shift+f to go through all form fields or people can use the Element List. Besides that, this is a welcome change.

@tareh7z
Copy link
Copy Markdown
Contributor Author

tareh7z commented Dec 24, 2025

Hi @cary-rowen, @LeonarddeR and @bramd,
Thanks for your comments! Changes have been applied.

@wmhn1872265132
Copy link
Copy Markdown
Contributor

This feature should also be mentioned in the User Guide's chapter Other navigation commands

@tareh7z tareh7z requested a review from a team as a code owner December 25, 2025 11:07
@tareh7z tareh7z requested a review from Qchristensen December 25, 2025 11:07
@tareh7z
Copy link
Copy Markdown
Contributor Author

tareh7z commented Dec 25, 2025

@wmhn1872265132, done!

Thanks.

@seanbudd
Copy link
Copy Markdown
Member

Could you please confirm testing and fill out the testing steps?

Comment thread user_docs/en/changes.md Outdated
Comment thread user_docs/en/userGuide.md Outdated
@tareh7z
Copy link
Copy Markdown
Contributor Author

tareh7z commented Dec 29, 2025

Hi @seanbudd and @LeonarddeR,

Done!

Thanks.

@seanbudd seanbudd merged commit edc285a into nvaccess:master Dec 30, 2025
41 checks passed
@github-actions github-actions Bot added this to the 2026.2 milestone Dec 30, 2025
Somsubhra-Nandi pushed a commit to Somsubhra-Nandi/nvda that referenced this pull request Jan 9, 2026
Fixes nvaccess#17005
Summary of the issue:

Currently, slider controls (HTML range inputs and ARIA sliders) are not included in browse mode navigation. Users cannot navigate to sliders using quick navigation keys.
Description of user facing changes:

    Slider controls are now included in browse mode navigation.
    Users can navigate to sliders using quick navigation. By default, no gesture is assigned.

Description of developer facing changes:

    Added "slider" node type to browseMode.py base implementation;
    Implemented slider detection for:
        Gecko (Firefox) virtual buffers,
        MSHTML (Internet Explorer) virtual buffers,
        UIA (Edge, modern UI) browsers,
        Chromium (Chrome) IAccessible implementation.
    Updated changes.md documentation.

Description of development approach:

    Extended the existing browse mode navigation framework to recognize slider controls;
    Used existing control type detection patterns (ARIA roles, HTML input types, UIA control types);
    Followed the same pattern as other form controls (checkbox, radio button, etc.).
tareh7z added a commit to tareh7z/nvda that referenced this pull request Feb 16, 2026
Fixes nvaccess#17005
Summary of the issue:

Currently, slider controls (HTML range inputs and ARIA sliders) are not included in browse mode navigation. Users cannot navigate to sliders using quick navigation keys.
Description of user facing changes:

    Slider controls are now included in browse mode navigation.
    Users can navigate to sliders using quick navigation. By default, no gesture is assigned.

Description of developer facing changes:

    Added "slider" node type to browseMode.py base implementation;
    Implemented slider detection for:
        Gecko (Firefox) virtual buffers,
        MSHTML (Internet Explorer) virtual buffers,
        UIA (Edge, modern UI) browsers,
        Chromium (Chrome) IAccessible implementation.
    Updated changes.md documentation.

Description of development approach:

    Extended the existing browse mode navigation framework to recognize slider controls;
    Used existing control type detection patterns (ARIA roles, HTML input types, UIA control types);
    Followed the same pattern as other form controls (checkbox, radio button, etc.).
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Adding the ability to move to the next and previous slider

6 participants