- Timestamp:
- 10/08/08 02:34:35 (3 months ago)
- Location:
- trunk
- Files:
-
- 3 modified
-
. (modified) (3 props)
-
source/virtualBuffers/__init__.py (modified) (5 diffs)
-
source/virtualBuffers/gecko_ia2.py (modified) (4 diffs)
Legend:
- Unmodified
- Added
- Removed
-
trunk
- Property bzr:revision-info
-
old new 1 timestamp: 2008-10-0 6 19:20:03.456000090+10001 timestamp: 2008-10-08 06:56:10.128000021 +1000 2 2 committer: James Teh <jamie@jantrid.net> 3 3 properties:
-
- Property bzr:revision-id:v3-list-QlpoOTFBWSZTWbrL2vUAAB1VgAAQABCAQDrrnqAgAFCgaaGRkxBoTIJ6mmaNRwhndFAoNhZjh_YY4a01fOg1ulgNNC2UrzPdXXEnDpX8XckU4UJC6y9r1A..
-
old new 196 196 2213 jamie@jantrid.net-20081006050758-8oez6b1vk34njebl 197 197 2214 jamie@jantrid.net-20081006092003-vmgctsl79vtejen3 198 2217 jamie@jantrid.net-20081007205610-6oo6sj77usytyqvj
-
- Property bzr:file-ids
-
old new 1 source/ NVDAObjects/IAccessible/__init__.py 683@dbe06fc7-9119-0410-a01d-9dbf589ecbba:trunk:source%2FNVDAObjects%2FIAccessible%2F__init__.py2 source/ NVDAObjects/__init__.py 683@dbe06fc7-9119-0410-a01d-9dbf589ecbba:trunk:source%2FNVDAObjects%2F__init__.py1 source/virtualBuffers/__init__.py 1675@dbe06fc7-9119-0410-a01d-9dbf589ecbba:trunk:source%2FvirtualBuffers%2F__init__.py 2 source/virtualBuffers/gecko_ia2.py 1694@dbe06fc7-9119-0410-a01d-9dbf589ecbba:trunk:source%2FvirtualBuffers%2Fgecko_ia2.py
-
- Property bzr:revision-info
-
trunk/source/virtualBuffers/__init__.py
r2402 r2418 25 25 from gui import scriptUI 26 26 import virtualBufferHandler 27 import eventHandler 27 28 28 29 class VirtualBufferTextInfo(NVDAObjects.NVDAObjectTextInfo): … … 185 186 pass 186 187 187 def _caretMovedToField(self,dochandle,ID): 188 pass 188 def _set_selection(self, info): 189 super(VirtualBuffer, self)._set_selection(info) 190 if isScriptWaiting() or not info.isCollapsed: 191 return 192 api.setReviewPosition(info) 193 obj = info.NVDAObjectAtStart 194 if obj == self.rootNVDAObject: 195 return 196 obj.scrollIntoView() 197 if not eventHandler.isPendingEvents("gainFocus") and obj != api.getFocusObject() and self._shouldSetFocusToObj(obj): 198 obj.setFocus() 199 200 def _shouldSetFocusToObj(self, obj): 201 """Determine whether an object should receive focus. 202 Subclasses should override this method. 203 @param obj: The object in question. 204 @type obj: L{NVDAObjects.NVDAObject} 205 """ 206 return False 189 207 190 208 def script_activatePosition(self,keyPress): … … 199 217 if self.VBufHandle is None: 200 218 return 201 noKeyWaiting=not isScriptWaiting()202 if noKeyWaiting:203 oldDocHandle,oldID=VBufClient_getFieldIdentifierFromBufferOffset(self.VBufHandle,self.selection._startOffset)204 219 super(VirtualBuffer, self)._caretMovementScriptHelper(*args, **kwargs) 205 if noKeyWaiting:206 docHandle,ID=VBufClient_getFieldIdentifierFromBufferOffset(self.VBufHandle,self.selection._startOffset)207 if ID!=0 and (docHandle!=oldDocHandle or ID!=oldID):208 self._caretMovedToField(docHandle,ID)209 220 210 221 def script_refreshBuffer(self,keyPress): … … 256 267 # We've expanded past the end of the field, so limit to the end of the field. 257 268 info.setEndPoint(fieldInfo, "endToEnd") 258 info.updateCaret()259 269 speech.speakTextInfo(info, reason=speech.REASON_FOCUS) 260 self._caretMovedToField(docHandle, ID) 270 info.collapse() 271 self.selection = info 261 272 262 273 @classmethod … … 305 316 else: 306 317 info=self.makeTextInfo(textHandler.Offsets(startOffset,endOffset)) 307 info.updateCaret()308 318 speech.cancelSpeech() 309 319 speech.speakTextInfo(info,reason=speech.REASON_FOCUS) 310 self._caretMovedToField(docHandle,ID) 320 info.collapse() 321 self.selection = info 311 322 312 323 scriptUI.LinksListDialog(choices=[node[0] for node in nodes], default=defaultIndex if defaultIndex is not None else 0, callback=action).run() -
trunk/source/virtualBuffers/gecko_ia2.py
r2381 r2418 143 143 nextHandler() 144 144 newInfo.collapse() 145 newInfo.updateCaret()145 self.selection=newInfo 146 146 else: 147 147 # The virtual buffer caret was already at the focused node, so we don't speak it. … … 155 155 obj.initAutoSelectDetection() 156 156 157 def _caretMovedToField(self,docHandle,ID): 158 try: 159 pacc,accChildID=IAccessibleHandler.accessibleObjectFromEvent(docHandle,IAccessibleHandler.OBJID_CLIENT,ID) 160 if not (pacc==self.rootNVDAObject.IAccessibleObject and accChildID==self.rootNVDAObject.IAccessibleChildID): 161 obj=NVDAObjects.IAccessible.IAccessible(IAccessibleObject=pacc,IAccessibleChildID=accChildID) 162 api.setNavigatorObject(obj) 163 obj.IAccessibleObject.scrollTo(GECKO_SCROLL_TYPE_ANYWHERE) 164 if not eventHandler.isPendingEvents('gainFocus') and controlTypes.STATE_FOCUSABLE in obj.states and obj.role!=controlTypes.ROLE_EMBEDDEDOBJECT: 165 obj.setFocus() 166 except: 167 pass 157 def _shouldSetFocusToObj(self, obj): 158 return controlTypes.STATE_FOCUSABLE in obj.states and obj.role!=controlTypes.ROLE_EMBEDDEDOBJECT 168 159 169 160 def _activateField(self,docHandle,ID): … … 277 268 speech.speakTextInfo(newInfo,reason=speech.REASON_FOCUS) 278 269 newInfo.collapse() 279 newInfo.updateCaret()270 self.selection=newInfo 280 271 281 272 def _tabOverride(self, direction): … … 331 322 speech.speakTextInfo(newInfo,reason=speech.REASON_FOCUS) 332 323 newInfo.collapse() 333 newInfo.updateCaret() 334 self._caretMovedToField(newDocHandle, newID) 324 self.selection=newInfo 335 325 return True 336 326

NVDA is supported by