Skip to content

setFocusObject incorrectly caches container property as parent #3873

@nvaccessAuto

Description

@nvaccessAuto

Reported by wmdcurran on 2014-02-11 02:34
api.setFocusObject currently generates a list of focus ancestors using the object's container property. Note that originally we used the parent property.
However, when the focus changes, in order to maintain state for common ancestors, the top object in the new list and the bottom object in the common list are joined via caching.
It seems though that when parent was changed to container, this part of the code was not updated. Therefore the parent property of the top object in the new list is set to the bottom object of the common list, yet the latter object is really the former object's container, not parent.
The easiest way this can be reproduced is in NVDA's browse mode Elements list.
Move to the top radio buttons and down arrow from links to headings. Look at the parent property of focusAnc[-2] in the Python console. It is the grouping (the correct container) but it should be the dialog.

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions