nvda
nvda copied to clipboard
Correct internal gesture ID for Seika Notetaker
Link to issue number:
Fixes issue 3 of #16828 .
Summary of the issue:
The br(seikantk):XXX IDs of bk:space and bk:space+dots are incorrect. Although it has few influence to UX, it may bring trouble to add-on developers.
Description of user facing changes
There must be one option displayed when adding a new gesture in Input gestures dialog is about Seika Notetaker. Without this PR, the option is always backspace+dX
, e.g. backspace+d1+d3+d4+d5
. Now, backspace+d1+d3+d4+d5
, d1+d3+d4+d5+space
, and backspace+d1+d3+d4+d5+space
are displayed correctly according to the actual space key(s) pressed by the user.
Description of development approach
Type of space
parameter of class InputGesture becomes int. It may be 1(backspace), 2(space), or 3(both). The correct key name is obtained from _getKeyNames
.
Testing strategy:
- Open
Input gestures
dialog. - Select an item and press Add.
- Press (the right) space with dots 1, 3, 4, and 5 on Seika Notetaker.
-
d1+d3+d4+d5+space (Seika Notetaker)
should be present.
If both spaces are pressed, the result should be backspace+d1+d3+d4+d5+space
.
Known issues with pull request:
3 entries will be required to build a new item in gesture map. For example, br(seikantk):BACKSPACE+d1+d3+d4+d5
, br(seikantk):d1+d3+d4+d5+SPACE
, and br(seikantk):BACKSPACE+d1+d3+d4+d5+SPACE
must be present to completely define the action for space with dots 1, 3, 4, and 5.
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
- [x] 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.
Summary by CodeRabbit
-
New Features
- Enhanced gesture handling logic to improve user interaction with the input system.
- Updated space parameter representation to reflect key values, improving clarity and functionality.
-
Bug Fixes
- Ensured consistency in the interpretation of the space parameter across different methods.