[Nvda-dev] commit r1884 - trunk/source

classic Classic list List threaded Threaded
1 message Options
Reply | Threaded
Open this post in threaded view
|

[Nvda-dev] commit r1884 - trunk/source

NVDA Subversion
Author: mdcurran
Date: Fri Apr  4 05:28:42 2008
New Revision: 1884

Log:
IAccessibleHandler.manageEvent: if this is a documentLoadComplete event, and if the result of calling virtualBufferHandler.update is in deed a valid virtualBuffer, other than assigning this to obj.virtualBuffer, also touch the current focus object's virtualBuffer property, in order to force it to try and get a virtualBuffer. It very well may be the fact that the virtualBuffer this documentLoadComplete event caused to be created, is also one that the focus object is inside of. This should yet again protect even more against keyboardHandler trying to get a virtualBuffer from the focus object. This seems to fix the particular test case where being on a document in Firefox3 with frames, and you refresh with f5, you would get exceptions when pressing the arrows etc unless you tabbed away from the current focus.

Modified:
   trunk/source/IAccessibleHandler.py

Modified: trunk/source/IAccessibleHandler.py
==============================================================================
--- trunk/source/IAccessibleHandler.py (original)
+++ trunk/source/IAccessibleHandler.py Fri Apr  4 05:28:42 2008
@@ -629,6 +629,9 @@
  v=virtualBufferHandler.update(obj)
  if v:
  obj.virtualBuffer=v
+ #Focus may be in this new virtualBuffer, so force focus to look up its virtualBuffer
+ api.getFocusObject().virtualBuffer
+
  eventHandler.manageEvent(name,obj)
 
 def winEventCallback(handle,eventID,window,objectID,childID,threadID,timestamp):