-
-
Notifications
You must be signed in to change notification settings - Fork 663
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
Redundant braille.BrailleHandler.update executions #16456
Comments
Fixing this might help to some extend as to issue #16356. |
fixes #16456 Summary of the issue: In braille.BrailleHandler._handlePendingUpdate and braille.BrailleHandler._doNewObject functions scrollTocursororSelection function is called. scrollToCursorOrSelection calls scrollTo which in turns calls braille.BrailleHandler.update. Both _handlePendingUpdate and _doNewObject call braille.BrailleHandler.update after calling scrollToCursorOrSelection. Description of user facing changes There should be less "Braille window dots" log lines when log level is debug. Maybe some minor effect on performance. Description of development approach Minor modifications of _handlePendingUpdate and _doNewObject functions.
I somewhat feel that removing May I try pr with this approach? |
I'd encourage getting some try build testing before marking it as ready for review, but please do attempt improvements if they are clear improvements |
Maybe less log lines when debugging is major advantage of this. I am sorry about testing. In this case I did not unfortunately take into account at least braille messages maybe because I have them disabled so I did not think them (maybe not at all) but it is not acceptable reason). |
…6463) fixes nvaccess#16456 Summary of the issue: In braille.BrailleHandler._handlePendingUpdate and braille.BrailleHandler._doNewObject functions scrollTocursororSelection function is called. scrollToCursorOrSelection calls scrollTo which in turns calls braille.BrailleHandler.update. Both _handlePendingUpdate and _doNewObject call braille.BrailleHandler.update after calling scrollToCursorOrSelection. Description of user facing changes There should be less "Braille window dots" log lines when log level is debug. Maybe some minor effect on performance. Description of development approach Minor modifications of _handlePendingUpdate and _doNewObject functions.
Reverts nvaccess#16463 and nvaccess#16501 Issues fixed Issues reopened Reopens nvaccess#16456 Reason for revert complexity Can this PR be reimplemented? If so, what is required for the next attempt at least execution of scrollToCursorOrSelection in _doNewObject
closes #16456 Summary of the issue: There are often two BrailleHandler.update executions which produce duplicate log entries when log level is debug. As an example, when navigating with up/down arrows in notepad debug level log shows this. There should not be good reason for two executions. Description of user facing changes Less duplicate "Braille window dots" log lines on debug level. This should facilitate debugging a little. Description of development approach removed updateDisplay call from BrailleBuffer.scrollTo
About
There are following code lines in
braille.BrailleHandler._handlePendingUpdate
:if scrollTo is not None: self.scrollToCursorOrSelection(scrollTo) if self.buffer is self.mainBuffer: self.update()
scrollToCursorOrSelection
should executescrollTo
when region is type of TextInfoRegion.scrollTo
in turn executesupdateDisplay
which executesbraille.BrailleHandler.update
.Because region is type of TextInfoRegion and thus buffer should be mainBuffer,
braille.BrailleHandler.update
is executed twice.There is similar case in
braille.BrailleHandler._doNewObject
function:self.scrollToCursorOrSelection(region) if self.buffer is self.mainBuffer: self.update()
What is the harm? At least log file, when using debug level, contain redundant ""Braille window dots" lines.
Steps to reproduce:
Log level to debug and investigation of log when there is braille display in use (I have not looked at log when braille display is no display).
Actual behavior:
redundant log lines
Expected behavior:
no redundant log lines
NVDA logs, crash dumps and other attachments:
System configuration
NVDA installed/portable/running from source:
running from source
NVDA version:
current main branch code
Windows version:
windows 10 22h2
Name and version of other software in use when reproducing the issue:
Other information about your system:
Other questions
Does the issue still occur after restarting your computer?
yes
Have you tried any other versions of NVDA? If so, please report their behaviors.
If NVDA add-ons are disabled, is your problem still occurring?
Does the issue still occur after you run the COM Registration Fixing Tool in NVDA's tools menu?
The text was updated successfully, but these errors were encountered: