Ticket #83 (closed defect: fixed)

Opened 4 years ago

Last modified 4 years ago

Say all not happening when virtual buffer is loaded

Reported by: jteh Owned by:
Priority: major Milestone: 2009.1
Component: Browse mode Version: development
Keywords: regression Cc:
Operating system: Blocked by:
Blocking:

Description

The initial say all when a virtual buffer is loaded is no longer being triggered.

Reproduceable: almost always

Steps to Reproduce

Go to a site which does not set focus such as  http://www.nvaccess.org/. Alternatively, open an email in Thunderbird.

Actual Results

Say all is not triggered.

Expected Results

The say all should be triggered once the document is loaded/receives focus.

Additional Information

This is a regression from r2008. The reason is that we now set globalVars.focusObject *after* calling virtualBufferHandler.update(). This means the buffer gets loaded before globalVars.focusObject is set. Unfortunately, the code that triggers a say all first checks to see if the focus object is in the virtual buffer, and because focus has not yet been updated, this is almost always false. I am not sure how to solve this without reintroducing the problem before r2008.

Change History

comment:1 Changed 4 years ago by mdcurran

  • Status changed from new to closed
  • Resolution set to fixed

Fixed in svn r2009. The main idea is to move the code for that speak document name / sayAll in to a place where we know its aloud to be used, rather than it having to check whether its aloud to. I.e. api.setFocusObject, and IAccessiblehandler's documentLoadEvent code are the safest places where we know its appropriate to do a sayAll.

Note: See TracTickets for help on using tickets.