GNOME Bugzilla – Bug 397668
Blank lines are not announced as blank lines in gnome-terminal
Last modified: 2011-01-08 04:10:54 UTC
This may be a gnome-terminal accessibility implementation problem. Here's what you need to do to reproduce this problem (it's what I did on Ubuntu Edgy with Orca revision 1931 from SVN): 1) Run orca 2) Open a gnome-terminal and run 'vi' in it. Enter several blank lines 3) Arrow up and down over the blank lines Orca doesn't say anything. If you look at the debug of Orca, you will see the following: sayLine: line=< >, len=80, start=81, caret=81, speakBlankLines=True SPEECH OUTPUT: ' ' This seems to indicate the at-spi implementation of gnome-terminal is telling us a line is all spaces, when in fact it is not.
Created attachment 80653 [details] [review] Partial patch to work around the problem -- needs work. This should probably be fixed in vte, but I looked at working around it by customizing the gnome-terminal script. The problem here (especially if the user is in vi), is that they might have moved to a different line via the "j" or "k" keys, not the up or down arrow keys. What we really need to be able to do in the new sub-classed sayLine() routine, is determine what the type of the last accessibilty event is, or some other indication that we have changed lines within the terminal window. I'm not sure that is doable.
Adding Chris Wilson to the cc: line. If I uncomment the debug statement in Orca's sayLine() routine in default.py, I see that we are still getting: sayLine: line=< >, len=80, start=243, caret=243, speakBlankLines=True SPEECH OUTPUT: ' ' BRAILLE LINE: 'gnome-terminal richb@richb-desktop: ~ richb@richb-desktop: ~ Terminal ' In other words, a "blank line" inside fnome-terminal (and also vte) is being sent to us as a line 80 characters in length, and mostly composed of spaces. Chris, can/should this be fixed in the vte code? It's hard to program around it in Orca (see comment #1 above).
It would appear that changing vteaccess from using vte_terminal_get_text_include_trailing_spaces() to vte_terminal_get_text() would be adequate - except for bug 141148. I'll read through the history and see why empty cells are returned to vteaccess as spaces.
Thanks Chris!
Chris, an update on this bug? Thanks.
Chris, any update on this bug? Thanks.
*** Bug 600101 has been marked as a duplicate of this bug. ***
This works for me with gnome-terminal 2.30.2 so I'm closing this bug