OSDN Git Service
Changed the behaviour of the review follows caret option, so that the review position will only move if the caret moves in the same object. Previously if the caret moved in any object, the review position would jump inside that object. Specific changes:
*NVDAObject.event_caret: only set the review position to the caret if the current navigator object is this object.
*VirtualBuffer._set_selection: rather than unconditionally setting the review position to the new caret position, instead only do this if the current navigator object is the root of this virtualBuffer.
*TreeInterceptor._set_passthrough: if passthrough is turning on, and the focus is currently inside this treeInterceptor, and the review follows focus option is on, set the navigator object to the focus.
*TreeInterceptor._set_selection: if passthrough is turning off, and the navigator object is inside this treeInterceptor, and the review follows caret option is turned on, set the navigator object to the root of this treeInterceptor.