Skip to content

Hid feature report #18150

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Closed

Conversation

FelixGruetzmacher
Copy link
Contributor

Link to issue number:

Does not apply

Summary of the issue:

A HID Braille device can expect a screen reader identifier that signifies to the device what screen reader has initiated communication. Currently, NVDA ignores this.

Description of user facing changes

No immediate changes of behavior.

Description of development approach

The HID Braille driver queries the report descriptor for the presence of the screen reader identifier usage in the feature report. If the usage is found, then as part of initialization, a UUID signifying NVDA (newly generated from a source of random numbers) is sent as the screen reader identifier.

Testing strategy:

Tested against Help Tech HID devices with and without this usage in their report descriptors.

Known issues with pull request:

None.

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.

@coderabbitai summary

Felix Grützmacher added 7 commits May 21, 2025 16:15
identifier, a 128 bit identifier unique to NVDA is now sent as a HID
feature report, enabling a Braille display to identify that the
connection is coming from NVDA.
identifier, a 128 bit identifier unique to NVDA is now sent as a HID
feature report, enabling a Braille display to identify that the
connection is coming from NVDA.
@FelixGruetzmacher FelixGruetzmacher requested a review from a team as a code owner May 23, 2025 15:00
@seanbudd seanbudd added the conceptApproved Similar 'triaged' for issues, PR accepted in theory, implementation needs review. label May 26, 2025
class HidFeatureReport(HidReport):
_reportType = hidpi.HIDP_REPORT_TYPE.FEATURE

def __init__(self, device, reportID=0):
Copy link
Member

Choose a reason for hiding this comment

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

please add type hints

super().__init__(device)

@property
def data(self):
Copy link
Member

Choose a reason for hiding this comment

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

please add a return type

def data(self):
return self._reportBuf.raw

def setUsageValueArray(self, usagePage, linkCollection, usage, data):
Copy link
Member

Choose a reason for hiding this comment

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

please add type hints

@SaschaCowley SaschaCowley marked this pull request as draft May 30, 2025 04:52
@seanbudd
Copy link
Member

@FelixGruetzmacher - is this ready for re-review?

@SaschaCowley
Copy link
Member

Closing as abandoned

@SaschaCowley SaschaCowley added the Abandoned requested reports or updates are missing since more than 1 year, author or users are not available. label Jul 21, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Abandoned requested reports or updates are missing since more than 1 year, author or users are not available. conceptApproved Similar 'triaged' for issues, PR accepted in theory, implementation needs review.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants