2006-07-24 Raivis Dejus * configure.in: Added "lv" (Latvian) to ALL_LINGUAS. * po/lv.po: Added Latvian Translation. 2006-07-23 Willie Walker * src/orca/focus_tracking_presenter.py: ignore defunct objects when processing object events. They seem to be a source of hangs. Many thanks to Joanmarie Diggs for coming up with a test case to help find this. The test case is to repeatedly show/hide a message in Evolution using Enter in the message list to show it and Escape on the message window to hide it. NOTE: I'm still not confident that this is the final fix. The problem is that an object can go defunct at any time, including the entire time we are processing an object event. So...we might try doing some magic in atspi.py to check for the defunct state each time any field of an accessible is referenced and throw an exception if we see a COMM_FAILURE or a defunct state. The rest of our code should handle the exception. If this seems like the right thing to do, we can brush up on our Python chops and figure out how to do it. 2006-07-21 Willie Walker * src/orca/gaim.py: I think we finally skinned this cat. The problem seems to be that the chat area would not send events to us unless we tickled it by examining the hierarchy. So, we tickle away, but try to be efficient about it as well. 2006-07-21 Rich Burridge * bugs/bugs.html: Added an entry for Evolution bug #347964: "[a11y] When deleting messages in Evolution, Orca initially speaks the wrong tree item". * src/orca/gaim.py: Applied a suggestion from Will (thanks). In the onTextInserted() routine, look to see if the text field is editable or not, and only do the chat room message check if the text field is not editable. This is a performance improvement as it will no longer do bogus chat room checking as the user is typing in text. * src/orca/default.py: Backed out the fix to bug #341371 in onSelectionChanged(). It has side-effects on other things. Reopened bug #341371 and bug #347691. * src/orca/default.py: Per Wills request, backed out getRowHeader() and getColumnHeader() changes in locusOfFocusChanged(). 2006-07-21 Willie Walker * src/orca/util.py: fix LABELED_BY/LABELLED_BY typo. :-( * src/orca/speechgenerator.py: make sure _getSpeechForObjectRole returns a list even if the role of an object is unknown. * bugs/bugs.html: reconcile with latest releases of external projects. * src/orca/speech.py, src/orca/orca_gui_prefs.py: fix bug 348084 - fail gracefully if speech is not available. 2006-07-20 Oana Serb * src/orca/util.py: More handling of situations where the the label for a FILLER or PANEL is done by placing an unbound label as the first child of the FILLER/PANEL and the content of the FILLER/PANEL is the second child. 2006-07-20 Willie Walker * src/orca/scripts/Evolution.py: fix bug 348131 - make SayAll perform properly in Evolution. The main fix is to call speech.sayAll once with a custom textLines context generator that wraps util.textLines rather than calling it repeatedly with the util.textLines generator. 2006-07-19 Rich Burridge * src/orca/default.py: src/orca/orca.py: Moved the Orca specific keybindings out of the init() routine in orca.py, over to the setupInputEventHandlers and getKeyBindings() routines in default.py. _keyBindings in orca.py is currently empty, but the logic is retained there, just in case we wish to reinstate those (or other) Orca specific key bindings in the future. * src/orca/default.py: src/orca/focus_tracking_presenter.py: src/orca/orca.py: src/orca/settings.py: Reworked how Orca handles "No focus", based on a suggested approach from Will (thanks). * src/orca/speechgenerator.py: Reinstating the "and (not already_focused)" test in _getSpeechForTableCell(). This is needed to prevent the name being repeated when it's the same table that has focus. There are still problems will table cells though (see bug #347228). 2006-07-19 Willie Walker * src/orca/focus_tracking_presenter.py: more debug output when settings.debugEventQueue is enabled. 2006-07-19 Oana Serb * src/orca/keynames.py: add new keynames: keynames["Meta_L"] = _("left meta") keynames["Meta_R"] = _("right meta") keynames["Num_Lock"] = _("num lock") keynames["Caps_Lock"] = _("caps lock") keynames["Scroll_Lock"] = _("scroll lock") keynames["Page_Up"] = _("page up") keynames["Page_Down"] = _("page down") * src/orca/orca.py: delay appending " on" and " off" to key echo until after we've looked up the keyname. Also make " on" and " off" internationalized strings. 2006-07-18 Willie Walker * src/orca/focus_tracking_presenter.py, src/orca/settings.py: add code to allow us to debug the event queue. It might be the source of our hangs. To enable this, set settings.debugEventQueue to True and set your debug level to ALL. 2006-07-18 Rich Burridge * src/orca/speechgenerator.py: Fixed bug #347228. Orca now correctly identifies state of top level item in some tree tables. 2006-07-18 Willie Walker * src/orca/gnomespeechfactory.py: oops - import 'time' so SayAll will work again. * src/orca/atspi.py, src/orca/settings.py: add experimental "home grown" main loop that attempts to side step the GIL some more. It is only enabled if you set settings.useBonoboMain to False (the default value is True, which means to use the real bonobo main loop). * src/orca/focus_tracking_presenter.py: add more logic to allow "PROCESS OBJECT EVENT" lines to be output if there is not a filter in place. 2006-07-17 Willie Walker * src/orca/atspi.py, src/orca/focus_tracking_presenter.py, src/orca/gnomespeechfactory.py: use calls to time.sleep as a means to sidestep the global interpreter lock (GIL). This hopefully eliminates a large number of hangs. See the following URLs for more information: http://mail.python.org/pipermail/python-list/2002-October/126632.html http://twistedmatrix.com/pipermail/twisted-python/2005-July/011052.html http://www.pyzine.com/Issue001/Section_Articles/article_ThreadingGlobalInterpreter.html""" 2006-07-17 Rich Burridge * src/orca/scripts/gaim.py: Adjusted the setting of the text field index in onTextInserted() that points to the current chat room. * src/orca/default.py: Adjusted use of the event parameter in locusOfFocusChanged(), to allow it to work correct if event=None. Fixed bug #341371 and bug #347691. Orca will now report the file name in file picker when there is only one file existing in current folder. 2006-07-16 Rich Burridge * src/orca/scripts/Evolution.py: Couple of changes to the speakSetupAssistantLabel() routine: - Only speak the screen label if we haven't already done so. - If the locus of focus is a push button that's insensitive, speak/braille about it. (The Identity screen has such a component). Adjusted occurances of speech.speak() when used in speakSetupAssistantLabel() to supply a second parameter of None and a third parameter of False so that they won't interrupt previous utterances. 2006-07-14 Oana Serb * src/orca/braillegenerator.py, src/orca/speechgenerator.py: fallback to the description for buttons if no other text exists. This is primarily to handle some situations for the Java platform. 2006-07-14 Willie Walker * src/orca/util.py: further refinement to FILLER label logic: don't use the label if it has been specifically set up to label something. 2006-07-14 Rich Burridge * src/orca/scripts/gaim.py: Adjust the "Don't" string to be a complete string in its own right ("Do not speak chat room name.") rather than something that gets prepended onto another string. Reduces translation problems. Simplified getting the text field index to just one occurance of: index = len(allTextFields-2) * src/orca/focus_tracking_presenter.py: Adjusted the way that noFocus is set in the _dequeueEvent() routine. It no longer checks whether the component that has focus is not sensitive. 2006-07-13 Oana Serb * src/orca/J2SE-access-bridge.py: work on menus and tree nodes. 2006-07-13 Rich Burridge * src/orca/scripts/gaim.py: Added in gaim script specific support for Insert-h, which toggles whether we prefix chat room messages with the name of the chat room (default is not to). * src/orca/scripts/gaim.py: Added in gaim script specific support for Insert-[] where is 1-9, which will speak/braille the previous th message. * src/orca/scripts/gaim.py: Refinements on how we detect we have received a new message in the chat room message areas. 2006-07-13 Willie Walker * src/orca/focus_tracking_presenter.py, src/orca/gnomespeechfactory.py: use locks when mucking around with the gidle handling. We were running into race conditions where we were killing the gidle handler when we shouldn't have been doing so. The impact of this was that Orca would sometimes not present changes to the display until another event was received. * src/orca/braillegenerator.py: apply similar FILLER logic provided Oana Serb at Baum (thanks!) to braille. 2006-07-13 Oana Serb * src/orca/speechgenerator.py, src/orca/util.py: handle case where a FILLER object is actually a labeled container that groups a set of children. An example of this is the GEdit preferences dialog. * src/orca/rolenames.py: make braille string for radio menu item consistent with what is being displayed for check menu item. * src/orca/braillegenerator.py: add rolename for radio menu items. * src/orca/atspi.py: turn radio buttons and check boxes in menu items into their associated menu-like roles (e.g., radio button menu item and check menu item) to better handle what we're getting from the Java access bridge. 2006-07-12 Willie Walker * src/orca/gnomespeechfactory.py: move processing of speech callbacks for SayAll handling to gidle thread. 2006-07-12 Rich Burridge * bugs/bugs.html: Filed Evolution bug #347347, that we need to track, that prevents the text selection state ("selected/unselected") being properly reported by Orca. [a11y] Moving the caret around in the message arrow doesn't generate "object:text-caret-moved" events. * src/orca/focus_tracking_presenter.py: Slight tweak to only braille/speak "No focus" if the braille/speech verbosity level is set to settings.VERBOSITY_LEVEL_VERBOSE. 2006-07-12 Rich Burridge * src/orca/default.py: src/orca/focus_tracking_presenter.py: src/orca/settings.py: Fixed bug #334892. Reduced the number of times that Orca brailles/speaks "No Focus" by moving this logic to the GTK idle thread handler and also remembering when "No Focus" was last uttered, and not uttering it again if it's within a certain time period (settings.noFocusWaitTime - default is 4 seconds). 2006-07-11 Mike Pedersen * docs/doc-set/ue_input_style.sgml * docs/doc-set/ue_output_style.sgml Updates to both the input and output guides. 2006-07-11 Willie Walker * src/orca/focus_tracking_presenter.py: do not print out "PROCESS OBJECT EVENT" debug lines if the event debug is to be filtered by the debug.eventDebugFilter. * orca.spec.in: fix "pyborit" typo. 2006-07-11 Rich Burridge * src/orca/scripts/gaim.py: Fixed bug #347163. Adjustment to the gaim script to hopefully speak/braille all incoming messages to chat rooms. * src/orca/default.py: Fixed bug #347165. Added in support for numeric keypad 8 double-clicking, which spells the current line. * src/orca/default.py: src/orca/util.py: Various tweaks to improve the code for the numeric keypad 5 double-clicking functionality. 2006-07-10 Rich Burridge * src/orca/default.py: src/orca/util.py: Added in support for numeric keypad 5 double-clicking, which spells the current flat review item. 2006-07-10 Willie Walker * src/orca/orca_gui_prefs.py: make sure that the GUI correctly reflects the current state of the verbosity level for braille and speech (it was saving it correctly, but reading it back in incorrectly). 2006-07-10 Rich Burridge * src/orca/default.py: Fixed bug #346031. For the purpose of speaking the text indentation, replace occurances of '\302\240' (non breaking space) with spaces. 2006-07-09 Mike Pedersen * src/orca/keynames.py Corrected the speech output for the right shift key. 2006-07-09 Willie Walker * docs/pydoc/Makefile.am: add missing files.