Skip to content

Excel: update the braille display when typing in a cell.#18391

Merged
seanbudd merged 3 commits into
betafrom
i9749
Jul 2, 2025
Merged

Excel: update the braille display when typing in a cell.#18391
seanbudd merged 3 commits into
betafrom
i9749

Conversation

@michaelDCurran

Copy link
Copy Markdown
Member

Link to issue number:

Fixes #9749

Summary of the issue:

When typing into a cell in Excel, the braille display is not updated with the new content, due to that control not firing UIA textChange events when updated.

Description of user facing changes:

  • When typing into a cell in Microsoft Excel, the braille display is now correctly updated to show the new content.

Description of developer facing changes:

Description of development approach:

  • Override event_typedCharacter for that control to detect when a character is typed and then instruct Braille to update.

Testing strategy:

With a braille display connected to NVDA:

  • Open a new sheet in Excel
  • On a cell, start typing characters. Ensure that the braille display shows the new content.
  • On a cell, press f2 to go into cell editing mode, and start typing characters. Ensure that the braille display shows the new content.

Known issues with pull request:

None specifically. Though it is worth noting there are many other issues remaining with this control, such as braille routing being impossible, and no ability to announce selection changes. However, directly typing is by far the most important, which this pr solves.

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

Copilot AI review requested due to automatic review settings July 2, 2025 00:40
@michaelDCurran michaelDCurran requested a review from a team as a code owner July 2, 2025 00:40
@michaelDCurran michaelDCurran requested a review from seanbudd July 2, 2025 00:40

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Pull Request Overview

This PR ensures that when typing into an Excel cell, the braille display is updated by manually handling caret movement.

  • Imported the braille module.
  • Overrode event_typedCharacter in CellEdit to invoke braille.handler.handleCaretMove.
  • Called the base class implementation after updating braille.
Comments suppressed due to low confidence (2)

source/NVDAObjects/UIA/excel.py:572

  • Consider adding a docstring for event_typedCharacter to explain why this override is necessary and describe its behavior, improving clarity for future maintainers.
	def event_typedCharacter(self, ch):

source/NVDAObjects/UIA/excel.py:575

  • Add a unit or integration test to verify that typing in a cell triggers braille.handler.handleCaretMove, ensuring this manual braille update logic is covered by automated tests.
		braille.handler.handleCaretMove(self)

Comment thread source/NVDAObjects/UIA/excel.py Outdated
@seanbudd seanbudd merged commit 73a852a into beta Jul 2, 2025
18 checks passed
@seanbudd seanbudd deleted the i9749 branch July 2, 2025 01:42
@github-actions github-actions Bot added this to the 2025.3 milestone Jul 2, 2025
@seanbudd seanbudd modified the milestones: 2025.3, 2025.2 Jul 2, 2025
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.

3 participants