def handleInputCandidateListUpdate(candidatesString, selectionIndex, inputMethod): candidateStrings = candidatesString.split('\n') import speech from NVDAObjects.inputComposition import InputComposition, CandidateList, CandidateItem focus = api.getFocusObject() if not (0 <= selectionIndex < len(candidateStrings)): if isinstance(focus, CandidateItem): oldSpeechMode = speech.speechMode speech.speechMode = speech.speechMode_off eventHandler.executeEvent("gainFocus", focus.parent) speech.speechMode = oldSpeechMode return oldCandidateItemsText = None if isinstance(focus, CandidateItem): oldCandidateItemsText = focus.visibleCandidateItemsText parent = focus.parent wasCandidate = True else: parent = focus wasCandidate = False item = CandidateItem(parent=parent, candidateStrings=candidateStrings, candidateIndex=selectionIndex, inputMethod=inputMethod) if wasCandidate and focus.windowHandle == item.windowHandle and focus.candidateIndex == item.candidateIndex and focus.name == item.name: return if config.conf["inputComposition"][ "autoReportAllCandidates"] and item.visibleCandidateItemsText != oldCandidateItemsText: import ui ui.message(item.visibleCandidateItemsText) eventHandler.executeEvent("gainFocus", item)
def handleInputCandidateListUpdate(candidatesString, selectionIndex, inputMethod): log.debug(u"(%s) (%s) (%s)" % (unicode(candidatesString).replace( '\n', '|'), str(selectionIndex), unicode(inputMethod))) candidateStrings = candidatesString.split('\n') import speech from NVDAObjects.inputComposition import InputComposition, CandidateList, CandidateItem focus = api.getFocusObject() #nvdajp begin if config.conf["keyboard"]["nvdajpEnableKeyEvents"]: from NVDAObjects import inputComposition if inputComposition.lastKeyGesture: log.debug("lastKeyCode %x" % inputComposition.lastKeyGesture.vkCode) if not inputComposition.needDiscriminantReading( inputComposition.lastKeyGesture): if isinstance(focus, CandidateItem): oldSpeechMode = speech.speechMode speech.speechMode = speech.speechMode_off eventHandler.executeEvent("gainFocus", focus.parent) speech.speechMode = oldSpeechMode return #nvdajp end if not (0 <= selectionIndex < len(candidateStrings)): if isinstance(focus, CandidateItem): oldSpeechMode = speech.speechMode speech.speechMode = speech.speechMode_off eventHandler.executeEvent("gainFocus", focus.parent) speech.speechMode = oldSpeechMode return oldCandidateItemsText = None if isinstance(focus, CandidateItem): oldCandidateItemsText = focus.visibleCandidateItemsText parent = focus.parent wasCandidate = True else: parent = focus wasCandidate = False item = CandidateItem(parent=parent, candidateStrings=candidateStrings, candidateIndex=selectionIndex, inputMethod=inputMethod) if wasCandidate and focus.windowHandle == item.windowHandle and focus.candidateIndex == item.candidateIndex and focus.name == item.name: return if config.conf["inputComposition"][ "autoReportAllCandidates"] and item.visibleCandidateItemsText != oldCandidateItemsText: import ui ui.message(item.visibleCandidateItemsText) eventHandler.executeEvent("gainFocus", item)