2006-07-09  Willie Walker <william.walker@sun.com>

	* NEWS, configure.in, README: prep for 0.2.6.

2006-07-09  Willie Walker  <william.walker@sun.com>

	* src/orca/gnomespeechfactory.py: handle verbalized punctuation a
	little differently to provide better behavior for both DECtalk and
	festival.  The main thing was to determine when/where to add
	spaces and when to replace a punctuation mark even if the action
	was insert.  In general, spaces are added before the verbalization
	if there is no whitespace before the punctuation mark and added
	after the verbalization if there is no whitespace after the
	puncutation mark.  

	In addition, if there is no whitespace after a puncutation mark,
	we replace it even if the action is insert.  The rational for this
	is that we do the insert for special puncutation marks to preserve
	some sense of prosody (e.g., pauses created by periods,
	semi-colons, etc.).  If the punctuation mark is embedded in text,
	it's generally there for semantic purposes other than prosody, so
	we just replace it with its verbalized form (if the verbalized
	puncutation level is appropriate, of course).
	
	* src/orca/orca_gui_prefs.py: fix for bug 347054 - allow
	readTableCellRow and speechVerbosityLevel to be set.
	
2006-07-09  Alexander Shopov  <ash@contact.bg>

	* configure.in: Added "bg" (Bulgarian) to ALL_LINGUAS

2006-07-03  Runa Bhattacharjee <runabh@gmail.com>

	* configure.in: Added Bengali India (bn_IN) to ALL_LINGUAS.

2006-07-02  Willie Walker  <william.walker@sun.com>

	* src/orca/gnomespeechfactory.py: set "punctuation mode" parameter
	to none (0.0) for any speaker that has been created.  This allows
	Orca to handle the speaking of punctuation rather than rely upon
	the relatively inconsistent way it is spoken across various engines.
	
2006-07-02  Ilkka Tuohela  <hile@iki.fi>

	* configure.in: Added 'fi' to ALL_LINGUAS.

2006-06-30  Rich Burridge <rich.burridge@sun.com>

        * src/orca/flat_review.py:
          Added bullet-proofing to getZonesFromAccessible() to just return
          an empty list if accessible.component is None.

2006-06-29  Guntupalli Karunakar  <karunakar@indlinux.org>

	* configure.in: Added 'dz' (Dzongkha) to ALL_LINGUAS.

2006-06-29  Rich Burridge <rich.burridge@sun.com>

        * src/orca/orca_gui_prefs.py:
          Refinement to the fix for bug #343897. I now use the timestamp 
          from the last AT-SPI device event as the parameter to 
          set_user_time().

2006-06-28  Rich Burridge <rich.burridge@sun.com>

        * src/orca/orca_gui_prefs.py:
          Fixed bug #343897. Sets the current time on the Configuration 
          GUI window so that it'll get focus. set_user_time is a new call 
          in pygtk 2.9.2 or later. It's surronded by a try/except block 
          here so that if it's not found, then we can fail gracefully.

          Couple of refinements suggested by Gustavo. See bug #343897
          for more details.

        * src/orca/default.py:
          Fixed bug #341388. Small change in the processObjectEvent() 
          routine. If we receive a "window:deactivate" event for the 
          object that currently has focus, then stop the current speech 
          output. This is very useful for terminating long speech output 
          from commands running in gnome-terminal.

2006-06-27  Mike Pedersen <michael.pedersen@sun.com> 

        *  src/orca/speechgenerator.py
          Slight change to brief verbosity to speak buttons and combo boxes.

2006-06-27  Rich Burridge <rich.burridge@sun.com>

        * src/orca/scripts/Evolution.py:
          Added in support for speech indentation in the mail message
          areas. See also bug #346031, for a current limitation.

        * src/orca/scripts/gnome-terminal.py:
          Adjusted the onTextInserted() method to just return if
          orca.lastInputEvent was None or if this wasn't a keyboard
          event.

2006-06-27  Willie Walker <william.walker@sun.com>

	* src/orca/braille.py, src/orca/flat_review.py: more fixing for
	bug 343133 where Orca would hang when going into flat review of a
	man page in gnome-terminal.  The problem is that the AT-SPI
	implementation of text in gnome-terminal appears to produce
	inaccurate and wild results.  We need to handle this defensively.
	

2006-06-27  Runa Bhattacharjee <runa@bengalinux.org>

	* configure.in: Added Bengali (bn) to ALL_LINGUAS.

2006-06-26  Rich Burridge <rich.burridge@sun.com>

        * src/orca/gnomespeechfactory.py:
          Slight change to the __addVerbalizedPunctuation() routine:
          If we are moving around by single characters, then always speak
          the punctuation. We try to detect this by looking for just a
          single character being spoken.

          Another slight change to the __addVerbalizedPunctuation( ) routine:
          For each of the characters in the text to be spoken, if it's
          not a punctuation character, we still want to see if that
          character is in the chnames dictionary, and if so, speak that
          entry instead.

          Another slight change to the __addVerbalizedPunctuation( ) routine:
          Special case for periods in text like filenames or URL's:
          If this is a period and there is a non-space character on either 
          side of it, then always speak it.

          Added a " " after each verbalized punctuation word to prevent
          word concatenation.

        * bugs/bugs.html:
          Added in an entry for a new Evolution bug #345923:
          "[A11y] Unable to keyboard navigate to month view "day" 
          entries, when no initial events."

          Added in an entry for a new Evolution bug #345969:
          "[A11y] Evolution crashes when trying to creat a calendar event
          when Orca screen reader is running."

2006-06-22  Rhys Jones  <rhys@sucs.org>

	* configure.in: Added "cy" (Welsh) to ALL_LINGUAS.

2006-06-22  Rich Burridge <rich.burridge@sun.com>

        * src/orca/settings.py:
          Default setting for verbalized punctuation is now
          settings.PUNCTUATION_STYLE_MOST.

        * src/orca/gnomespeechfactory.py:
          In __addVerbalizedPunctuation(), if the user has style
          settings.PUNCTUATION_STYLE_NONE, just return the old text.

          In __addVerbalizedPunctuation(), add a space after the spoken
          equivalent of the punctuation, so that DECtalk doesn't speak 
          it twice.

2006-06-22  Rich Burridge <rich.burridge@sun.com>

        * src/orca/Makefile.am:
          src/orca/chnames.py:
          src/orca/gnomespeechfactory.py:
          src/orca/punctuation_settings.py:
          src/orca/settings.py:
          Added in verbalized punctuation support. See comments at the
          beginning of punctuation_settings.py for more details.

          NOTE: This is only currently implemented in gnomespeechfactory.py

2006-06-22  Rich Burridge <rich.burridge@sun.com>

        * src/orca/orca-setup.glade:
          src/orca/orca_gui_prefs.py:
          src/orca/orca_prefs.py
          src/orca/settings.py:
          Added in a new radio button "Most" to the punctuation verbosity
          group on the speech pane in the configuration GUI. Adjusted the
          callback and initialisation routines to handle this properly.

        * src/orca/orca_gui_prefs.py:
          The checks against various widget labels on the configuration GUI
          was not taking into consideration the underline characters used
          as accelerators.

2006-06-21  Willie Walker <william.walker@sun.com>

	* src/orca/Makefile.am, src/orca/J2SE-access-bridge.py: check in
	initial Java toolkit script from Lynn Monsanto.  He's still
	waiting for a GNOME account, but I want to get this stuff in prior
	to going to GUADEC.
	
2006-06-21  Rich Burridge <rich.burridge@sun.com>

        * src/orca/orca-setup.glade:
          src/orca/orca_gui_prefs.py:
          src/orca/settings.py:
          Added in a new radio button group to the configuration GUI on
          the speech pane, that can be used to set "Table Row Speech" to
          either: "Speak current cell" or "Speak current row".

        * bugs/bugs.html:
          Added in another StarOffice Writer bug:
          137437: [A11y] Incorrect char in any_data.value() field of 
          event when text is deleted.

2006-06-21  Rich Burridge <rich.burridge@sun.com>

        * src/orca/scripts/StarOffice.py:
          Adjustment to the onSelectionChanged() routine to get "has
          formula" working again.

2006-06-21  Rich Burridge <rich.burridge@sun.com>

        * src/orca/scripts/StarOffice.py:
          Further adjustment of the handling of speaking a row of a Calc 
          spread sheet. Only speak the row if the user has moved focus up 
          or down a row, not when the focus has just moved left or right in
          the same row (unless this is on the first or last row of the table).

2006-06-21  Rich Burridge <rich.burridge@sun.com>

        * src/orca/braillegenerator.py:
          src/orca/default.py:
          src/orca/settings.py:
          src/orca/speechgenerator.py
          src/orca/scripts/Evolution.py:
          Changed all occurances of readTreeTableCellRow to
          readTableCellRow, as we now handle both tables and 
          tree tables.

        * src/orca/scripts/StarOffice.py:
          Adjusted the handling of speaking a row of a Calc spread sheet.
          It will only braille/speak each cell if that cell is showing.

2006-06-21  Rich Burridge <rich.burridge@sun.com>

        * src/orca/braillegenerator.py:
          src/orca/speechgenerator.py:
          Adjusted the _getBrailleRegionsForTableCell and
          _getSpeechForTableCell() routines so that Insert-F11 works
          with table cells inside both tables and tree tables.

          Don't set the last table row and column in these routines
          This is now done in locusOfFocusChanged (see entry for 
          default.py below).

        * src/orca/default.py:
          In locusOfFocusChanged(), if this focus change is for a table
          cell, save the table row and column in the table (as lastRow and
          lastColumn), so that they can be used by the speech and braille
          table cell generators.

          In locusOfFocusChanged(), replaced calls to getRowDescription()
          and getColumnDescription() with calls to getRowHeader() and
          getColumnHeader() and then called getDisplayedText on their
          accessible objects.

2006-06-20  Rich Burridge <rich.burridge@sun.com>

        * bugs/bugs.html
          Added in the following two StarOffice bugs:
          #137415 [A11y] Control-Shift-Left/Right can select whitespace
          #137416 [A11y] No way to get at indentation information in Writer.

2006-06-20  Willie Walker <william.walker@sun.com>

	* src/orca/scripts/gnome-terminal.py: fix bug 345472 - don't
	assume the last input event was a KeyboardEvent.
	
	* src/orca/scripts/gcalctool.py: fix bug caused by my refactor
	of moving things to util.py (forgot to import orca.util).
	
2006-06-20  Rich Burridge <rich.burridge@sun.com>

        * src/orca/default.py:
          Changes to the sayPhrase() routine to better handle StarOffice
          Writer cases where there is a start or end offset of -1.

        * src/orca/scripts/StarOffice.py:
          Further change to the StarOffice text indentation handling.
          Removed the percentage routine and just called the "default"
          speakTextIndentation() routine. This seems to work okay for
          lines indented by tabs and spaces. 

          NOTE: Lines indented via the "Increase line indentation" in 
                the StarOffice Writer toolbar are not handled. There 
                doesn't seem to be a way to get at this information.

2006-06-20  Rich Burridge <rich.burridge@sun.com>

        * src/orca/scripts/StarOffice.py:
          Change to the speakTextIndentation() routine:
          StarOffice Writer documents typically have a margin around the
          actual text. This margin width is removed (both the left and right
          margins), before the percentage calculation is performed.

2006-06-19  Willie Walker <william.walker@sun.com>

	* src/orca/default.py: handle issue where toolkit name and version
	might be unknown when printing out script information using
	Insert+F3.
	
2006-06-19  Rich Burridge <rich.burridge@sun.com>

        * src/orca/util.py:
          src/orca/default.py:
          Moved the speakTextIndentation() routines into default.py so
          that it can be subclassed.

          On Mike's advice, removed the word "indented" from the text 
          spoken for text indentation (too verbose).

        * src/orca/scripts/StarOffice.py:
          Subclassed the speakTextIndentation() routine and adjusted it to
          speak an indication of the percentage of whitespace (spaces and
          tabs at the beginning of the line.

          NOTE: This percentage value seems to be incorrect when there are
                no spaces or tabs at the beginning of the line. Still 
                investigating this.

2006-06-19  Rich Burridge <rich.burridge@sun.com>

        * src/orca/util.py:
          Added in a speakTextIndentation() routine that will speak a 
          summary of the number of spaces and/or tabs at the beginning
          of the given line.

        * src/orca/default.py:
          Added a chunk of code to the start of the sayPhrase() routine,
          to swap the startOffset and endOffset values if they are in the
          wrong order. StarOffice can't cope with them otherwise.

          Adjusted the sayLine() routine to call util.speakTextIndentation()
          if we have speech indentation enabled.

        * src/orca/orca-setup.glade
          Added in a checkbox to the Speech page of the Configuration GUI,
          for speech indentation and justification (default is unchecked).

        * src/orca/orca_gui_prefs.py:
          Added a speechIndentationChecked() signal handler for speaking
          indentation.

        * src/orca/settings.py:
          Added in support for the new 'enableSpeechIndentation" setting.

2006-06-16  Willie Walker <william.walker@sun.com>

	* src/orca/scripts/Evolution.py: check for windows that end with
	the name "Assistant" when handling the setup wizards.  The reason
	for this is that both the initial setup and the new account
	wizards need this special scripting, and we're lucky that they end
	in the name Assistant.  A risk here is that the l10n of the window
	names might put Assistant somewhere else in the title (e.g.,
	Assistante de Setup).  If we run into this, we should do a check
	on the exact names.
	
2006-06-16  Rich Burridge <rich.burridge@sun.com>

        * src/orca/scripts/Evolution.py:
          Adjusted section #3 in the locusOfFocusChanged() method.
          Unfortunately the default read table cell row handling won't
          just work with Evolution (see bogusity comment later in the 
          script). We quickly solve this by setting readTreeTableCellRow 
          to False for the duration of this code section, then resetting 
          it to True at the end.

        * src/orca/scripts/StarOffice.py:
          Changed to provide useful feedback for the StarOffice Setup
          wizard screens. See the comments in the StarOffice script
          for more details.

2006-06-16  Willie Walker <william.walker@sun.com>

	* src/orca/focus_tracking_presenter.py, src/orca/script.py:
	more work on bug 319652.  Move much of the processing of
	input events to the gidle thread handler in an effort to 
	reduce hangs.

2006-06-15  Rich Burridge <rich.burridge@sun.com>

        * src/orca/scripts/Evolution.py:
          Changed to provide useful feedback for the Evolution Setup 
          Assistant screens. See the comments in the Evolution script 
          for more details.

        * src/orca/scripts/StarOffice.py:
          Fixup for the "has formula" check for spread sheet cells.
          This should only be spoken if the input line starts with "="
          (thanks Will!)

        * src/orca/braillegenerator.py:
          src/orca/speechgenerator.py:
          Adjusted the speaking and brailling of table cells to not
          speak the whole row again, if the user just moved left or
          right (rather than up or down).

        * src/orca/braillegenerator.py:
          src/orca/default.py:
          src/orca/speechgenerator.py:
          src/orca/settings.py:
          src/orca/scripts/Evolution.py:
          Changed all occurances of readTableCellRow to readTreeTableCellRow.
          Changed the default values of readTreeTableCellRow to True.
          Adjusted the speaking and brailling of table cells to only
          potentially speak the whole role if the parent is a tree table
          rather than just a table.

2006-06-14  Willie Walker <william.walker@sun.com>

	* src/orca/Makefile.am, src/orca/orca.py, src/orca/settings.py,
	src/orca/speech.py, src/orca/httpserver.py: make the HTTP server a
	separate module.  This reduces complexity in the speech module and
	also gives us room to extend the command set that Orca can handle.

	NOTE: this represents a change in settings - speechServerPort is
	now defunct and has been replace by httpServerPort.
	
2006-06-14  Willie Walker <william.walker@sun.com>

	* src/orca/orca.py: fix bug 344880 - process command line
	arguments even if a11y is not enabled.
	
2006-06-12  Mike Pedersen <michael.pedersen@sun.com>

	* added updates to style guide.