After an evaluation, GNOME has moved from Bugzilla to GitLab. Learn more about GitLab.
No new issues can be reported in GNOME Bugzilla anymore.
To report an issue in a GNOME project, go to GNOME GitLab.
Do not go to GNOME Gitlab for: Bluefish, Doxygen, GnuCash, GStreamer, java-gnome, LDTP, NetworkManager, Tomboy.
Bug 149784 - Caret reading by word in Evolution fails to read the last word of a line
Caret reading by word in Evolution fails to read the last word of a line
Status: RESOLVED NOTGNOME
Product: gnopernicus
Classification: Deprecated
Component: speech
unspecified
Other Linux
: Normal normal
: ---
Assigned To: Dana Ormenisan
Dana Ormenisan
AP2
Depends on:
Blocks:
 
 
Reported: 2004-08-10 05:05 UTC by korn
Modified: 2004-12-22 21:47 UTC
See Also:
GNOME target: ---
GNOME version: 2.7/2.8



Description korn 2004-08-10 05:05:33 UTC
1. Launch Evolution 1.4.6
2. Open the Default e-mail message (or some other with blank lines, images, etc.)
3. Run Gnopernicus
4. Make sure Caret navigation is on (F7), and that you have a text caret
5. From the top of the e-mail message, press down arrow repeatedly.
6. When you get to a line with lots of text (e.g. the first line of the default
message, starting with "Welcome to Ximian Evolution...", use Shift-right-arrow
to read by word.
7. When you get to the last word on the line, Gnopernicus reads this as "space"
instead of that word (which in this example is "and").

Note: this may be related to Evolution bug #62763 - see:
http://bugzilla.ximian.com/show_bug.cgi?id=62763
Comment 1 Dana Ormenisan 2004-08-23 11:12:34 UTC
Please test the patch attached to bug #149784. It address both problems about
word-by-word navigation.
Comment 2 Dana Ormenisan 2004-08-23 11:14:07 UTC
I made a mistake: the patch is attached to bug #149785.
Comment 3 Dana Ormenisan 2004-08-23 15:44:42 UTC
The cause of this bug is a ranges problem in evolution (I've checked this with
an independent at-spi tester): start/end positions for
SPI_TEXT_BOUNDARY_WORD_START are correctly reported when user navigates
word-by-word but start/end positions for SPI_TEXT_BOUNDARY_LINE_START are wrong.
Gnopernicus checks if the current offset is between start/end and, if not, it
will report only the character at offset (this is why gnopernicus says "space"
instead of the last word of the line).

NOTE: start/end positions for SPI_TEXT_BOUNDARY_LINE_START are wrong only when
the caret is at the end of the line. So the original bug seems to disapear if
there is a punctuation sign after the last word because the cursor is after the
last word, not after the punctuation sign (so, basically, not at the end of line). 

My previous patch fixes this problem for word-by-word navigation(because the
algorithm to detect if there is a word-by-word navigation was improved) but I
believe we should address the real cause of this bug in the right place !
Comment 4 korn 2004-08-26 21:50:43 UTC
Dana - have you (or anyone else) filed a bug in http://bugzilla.ximian.com/
describing the error with SPI_TEXT_BOUNDARY_LINE_START that you note above?  If
not, could you please do so?
Comment 5 Dana Ormenisan 2004-08-27 07:20:54 UTC
Bug http://bugzilla.ximian.com/show_bug.cgi?id=64238 was filed against evolution.
Comment 6 Dana Ormenisan 2004-08-27 07:22:48 UTC
I believe we should close this bug (NOTGNOME?), since this problem was described
n Evolution.