Skip to content

Stop the Virtualbox>=5.2 main window from freezing#9211

Merged
michaelDCurran merged 4 commits into
nvaccess:masterfrom
BabbageCom:qtUpdates
Feb 5, 2019
Merged

Stop the Virtualbox>=5.2 main window from freezing#9211
michaelDCurran merged 4 commits into
nvaccess:masterfrom
BabbageCom:qtUpdates

Conversation

@LeonarddeR

Copy link
Copy Markdown
Collaborator

Link to issue number:

Related to #9209
Fixes #9202

Summary of the issue:

Virtualbox 5.2 and above freeze in their mainwindow when NVDA is active. The accessibility implementation of the list of VMs is broken. When NVDA tries to get the active child in the list, child.next keeps on returning the same child over and over again, resulting into an endless loop.

Description of how this pull request fixes the issue:

  1. When getting the active child, this pr will first use the firstChild.next.next approach. When this fails, it loops through the children using the children property.when the
  2. This also uses the new focusRedirect system in favour of overriding event_gainFocus, see Use the new focusRedirect system rather than overriding event_gainFocus on objects #9209

Testing performed:

Tested and confirmed that Virtualbox 6.0.0 no longer freezes.

Known issues with pull request:

I'm not sure whether the first approach (i.e. firstChild.next, etc.) has been chosen on purpose in the past. In the current situation, it is ok to loop through the children, however I"m afraid that this might cause regressions in other places. Therefore, this code might be more complex than necessary.

Change log entry:

@LeonarddeR LeonarddeR added the framework/qt Qt fraphical framework label Jan 29, 2019
@dnz3d4c

dnz3d4c commented Feb 5, 2019

Copy link
Copy Markdown

Why is not this pr merged into master? Do you need approval from other developers?

@michaelDCurran

Copy link
Copy Markdown
Member

After I updated changes.t2t it seems that appveyor never built the pr. And then I simply forgot about it. I have just merged master again, and if this builds okay I will merge this to master. Thanks for reminding me :)

@michaelDCurran michaelDCurran merged commit e51645d into nvaccess:master Feb 5, 2019
@nvaccessAuto nvaccessAuto added this to the 2019.1 milestone Feb 5, 2019
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

framework/qt Qt fraphical framework

Projects

None yet

Development

Successfully merging this pull request may close these issues.

virtual box v6.0.0 accessibility issues with nvda and the user interface

4 participants