Skip to content

Run initial display for braille on the main thread#10498

Merged
michaelDCurran merged 2 commits into
nvaccess:masterfrom
BabbageCom:initialDisplayFix
Nov 18, 2019
Merged

Run initial display for braille on the main thread#10498
michaelDCurran merged 2 commits into
nvaccess:masterfrom
BabbageCom:initialDisplayFix

Conversation

@LeonarddeR

Copy link
Copy Markdown
Collaborator

Link to issue number:

fixes #9982

Summary of the issue:

If the braille display auto-detection feature is enabled and large braille table(s) (> 1 MB) are loaded on NVDA startup, the braille table(s) couldn't be completely loaded respectively compiled. Sometimes also the include opcode no longer operates and the braille output keeps blank after NVDA startup unless the braille output was updated (e.g. by opening the NVDA menu). Or only parts of the braille tables are loaded. A "Can't translate" runtime Error was logged on startup.
This issue was confirmed by @DrSooom.

The likely cause for this is that with auto detection, liblouis translation is executed from the background detection thread, rather than the main thread.

Description of how this pull request fixes the issue:

Queue initial displaying to the main thread.

Testing performed:

Tests by @DrSooom in a try build.

Known issues with pull request:

None known

Change log entry:

@michaelDCurran michaelDCurran merged commit 3285323 into nvaccess:master Nov 18, 2019
@nvaccessAuto nvaccessAuto added this to the 2019.3 milestone Nov 18, 2019
michaelDCurran added a commit that referenced this pull request Nov 18, 2019
@LeonarddeR LeonarddeR deleted the initialDisplayFix branch November 21, 2019 09: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.

Braille display auto-detection feature causes errors on loading large braille tables on NVDA startup

3 participants