Skip to content

Bugfix for displayed gesture identifier containing numlock modifier#19213

Merged
seanbudd merged 5 commits intonvaccess:masterfrom
CyrilleB79:numlockGesture
Nov 18, 2025
Merged

Bugfix for displayed gesture identifier containing numlock modifier#19213
seanbudd merged 5 commits intonvaccess:masterfrom
CyrilleB79:numlockGesture

Conversation

@CyrilleB79
Copy link
Copy Markdown
Contributor

@CyrilleB79 CyrilleB79 commented Nov 13, 2025

Link to issue number:

Fixes #19214

Summary of the issue:

When gestures include numpad operators (numpad plus, numpad minus, numpad multiply and numpad divide) and are defined with numlock on, they do not appear correctly in input gesture dialog, e.g. "num lock" instead of "num lock+numpad plus")

Description of user facing changes:

Gestures including numpad operators with num lock on are now correctly displayed in the input gesture dialog.

Description of developer facing changes:

N/A

Description of development approach:

In kayboard gestures identifiers, numlock can be considered a modifier or a main key name, depending on the situation:

  • considered a modifier when combined with numpad operators, i.e. when numlock is on (but not currently physically pressed) and a numpad operator is presseed
  • considered a main key name in all other other cases, i.e. when physically pressed (alone or with other modifiers such as control or shift)

In KeyboardInputGesture.getDisplayTextForIdentifier sort key name with normal modifiers, then numlock and then main key name.

Testing strategy:

Manual test in input gestures dialog with:

  • gestures without numlock, e.g. numpadPlus
  • gestures with numlock as a modifier (i.e. numlock on + numpad operator), e.g. numlock+numpadPlus
  • gestures with numlock handled as a main key name, e.g. shift+numlock

Known issues with pull request:

While testing, I fell on the issue described in #4226 (comment), i.e. pressing control+numlock actually triggers control+pause.

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.

@CyrilleB79 CyrilleB79 marked this pull request as ready for review November 16, 2025 21:38
@CyrilleB79 CyrilleB79 requested a review from a team as a code owner November 16, 2025 21:38
Copy link
Copy Markdown
Member

@seanbudd seanbudd left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks @CyrilleB79

@seanbudd seanbudd merged commit eaab6f9 into nvaccess:master Nov 18, 2025
4 of 5 checks passed
@github-actions github-actions bot added this to the 2026.1 milestone Nov 18, 2025
@CyrilleB79 CyrilleB79 deleted the numlockGesture branch November 18, 2025 13:09
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.

In Input gesture dialog, gestures defined with numlock on and an operator are not correctly displayed

2 participants