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 423395 - [a11y] When first opening or tabbing to message content, place the caret at the beginning of the message
[a11y] When first opening or tabbing to message content, place the caret at t...
Status: RESOLVED FIXED
Product: evolution
Classification: Applications
Component: Mailer
2.24.x (obsolete)
Other All
: Normal enhancement
: ---
Assigned To: Milan Crha
Evolution QA team
Depends on:
Blocks: 422487 423346
 
 
Reported: 2007-03-27 16:39 UTC by Willie Walker
Modified: 2013-09-13 01:00 UTC
See Also:
GNOME target: ---
GNOME version: ---


Attachments
proposed gtkhtml patch (4.37 KB, patch)
2008-06-17 10:51 UTC, Milan Crha
committed Details | Review
proposed evo patch (3.40 KB, patch)
2008-06-17 10:56 UTC, Milan Crha
committed Details | Review
proposed gtkhtml patch (2.85 KB, patch)
2008-08-22 08:59 UTC, Milan Crha
committed Details | Review

Description Willie Walker 2007-03-27 16:39:26 UTC
Caret navigation is great to have for people with physical and visual impairments.  Thank you for supporting it!

Right now, moving the caret to the message content can require a number of keystrokes: you're first placed at the message header information (to:/from:/subject:, etc.), and then you need to tab and arrow to the message content.  This is very cumbersome for people with physical impairments, and blind people already have a good idea of the header information because they typically have just come from the message summary.

As a result, we (the Orca team) have had a number of users request a means to reduce the effort needed to move the caret to the beginning of the message content.   Ideally, when a user opens a message or tabs to the message frame, Evolution would put the initial focus/caret at the beginning of the message content (e.g., the beginning of the "Hello Willie:" line) rather than at the beginning of the header information.  Being able to Shift+Tab back to the headers would still work should a user need to go back to review them.
Comment 1 André Klapper 2007-03-29 17:01:33 UTC
caret mode is extremely broken and there are several bug reports about it.
it is not really usable with html email currently.
Comment 2 Willie Walker 2007-04-17 14:45:50 UTC
The main request of this RFE is to just make the initial caret position be the beginning of the message content rather than the message header information.  It would help prevent a lot of unnecessary keystrokes.  Is this something that could be done in Evolution?
Comment 3 Willie Walker 2007-07-24 16:30:08 UTC
(In reply to comment #2)
> The main request of this RFE is to just make the initial caret position be the
> beginning of the message content rather than the message header information. 
> It would help prevent a lot of unnecessary keystrokes.  Is this something that
> could be done in Evolution?
> 

Hey Andre - nice running into you at GUADEC last week.  :-)  What do you think of the enhancement request being proposed here (just positioning the caret at the beginning of the message content when the message is opened)?  Is it something that is relatively trivial to pull off?
Comment 4 André Klapper 2007-07-25 02:32:04 UTC
good question, if i only was a coder then i could tell... :-)
Comment 5 Milan Crha 2007-07-26 14:00:09 UTC
Looks like one need to either extend GtkHtml API or do some workaround, like putting a "tag" into message body (in it's (pre)view) and the GtkHtml component will place the cursor after this "tag" when it will be firstly focused, and will not go through clickable mail addresses in header's part (I think, this do the TAB key in message preview, goes through all clickables, not through text itself).
What do you think, devs?  (CC'ing srag too)
Comment 6 Willie Walker 2007-11-01 17:53:23 UTC
(In reply to comment #5)
> Looks like one need to either extend GtkHtml API or do some workaround, like
> putting a "tag" into message body (in it's (pre)view) and the GtkHtml component
> will place the cursor after this "tag" when it will be firstly focused, and
> will not go through clickable mail addresses in header's part (I think, this do
> the TAB key in message preview, goes through all clickables, not through text
> itself).
> What do you think, devs?  (CC'ing srag too)
> 

I'm curious what the devs think, too.  :-)
Comment 7 Srinivasa Ragavan 2008-01-22 14:33:04 UTC
Milan go ahead. I really don't have much idea there. You can extend the API for sure, but not break it :)
Comment 8 Matthew Barnes 2008-03-11 00:36:54 UTC
Bumping version to a stable release.
Comment 9 Michael Weaver 2008-04-09 15:01:25 UTC
I have come here from Bug 422487 – [blocked] Ability to jump to the start of the message in Evolution . When navigating eyes-free within evolution, I would expect the F6 keystroke to take me from the message pane (or list) to the body of the mail in the preview pane. As others, I find that this keystroke typically lands part-way through the 'headers' and several (an arbitrary number) of 'down-arrow' keystrokes takes me to "table braid" and then two or three 'right-arrow' keystrokes do take me to the start of the body. Is the best resolution of this problem likely to be within Evolution or Orca? One possibility would be to turn off the display of the headers (and remove the surrounding table) altogether. Is there any proposed patch to test? (Ubuntu Heron Beta). I am not fully familiar with other programs such as Thunderbird, but it is possible that a single keystroke, ENTER, does exactly what I am looking for. Would be happy to work on this or test any patch.
Comment 10 Milan Crha 2008-04-10 09:23:10 UTC
There is no patch for this yet (as far as I know), you are welcome to provide one.
Just one thought, turn off headers is probably not the best thing, because mails can contain inlined mail attachments (just a thought). Maybe some kind of special annotation in the mail body to guide GtkHTML where to place cursor first can help.
Definitely the improvement would be in GtkHTML and/or Evolution code.
Comment 11 Milan Crha 2008-06-17 10:51:20 UTC
Created attachment 112899 [details] [review]
proposed gtkhtml patch

for gtkhtml;

Extending API finally.
Comment 12 Milan Crha 2008-06-17 10:56:13 UTC
Created attachment 112900 [details] [review]
proposed evo patch

for evolution;

The change was required to be done in both, so here we go. This places cursor just before the message start, so if the message starts like this:
Hi ...
then the cursor will be placed just before the "Hi", but if it starts with
     Hi ...
then it will be places before the spaces. In both cases at the beginning of the line. I hope that's not so big issue as going through all the headers and so on.

When you hit TAB, then it will jump to first selectable object, or next, in case other was selected already. Can it surprise someone?
Comment 13 Matthew Barnes 2008-06-17 11:24:52 UTC
Please remember to bump the minimum GtkHtml version in Evo's configure.in.

    m4_define([libgtkhtml_minimum_version], [3.23.5])
Comment 14 André Klapper 2008-06-17 12:32:27 UTC
Milan, you definitely made my day! Thanks so much!!!
Comment 15 Srinivasa Ragavan 2008-06-18 15:19:37 UTC
Commit to trunk. 
Comment 16 Milan Crha 2008-06-18 16:43:52 UTC
gtkhtml part committed to trunk. Committed revision 8871.
evo part committed to trunk. Committed revision 35650.

Evo part contains also a change described in comment #13.
Comment 17 Willie Walker 2008-08-19 21:33:52 UTC
Thanks for doing this work!  We started testing this (sorry it took so long -- we had troubles building and decided to wait for a version of Ubuntu that had very recent GNOME bits).  

I'm not sure how to make it work.  When I read a message with Evolution 2.23.90, the caret still ends up prior to the headers rather than at the beginning of the message content.  What do I need to do to take advantage of this new feature?
Comment 18 Milan Crha 2008-08-20 09:03:10 UTC
It should be enough to turn on caret mode and then go to the preview pane say by TAB of F6 key (definitely not by mouse). I tried with plain text and html mail and it works fine for both cases.
If you've some test message where it doesn't work, please attach it here and reopen the bug, I'll try to fix it as soon as possible. Thanks.
Comment 19 Willie Walker 2008-08-20 14:02:24 UTC
Ah!  Thanks much.  Yep - I can see the new behavior when tabbing from the message list to the message content.  Neat, and thanks!

Another very typical way blind users read e-mail, however, is to open a message by pressing "Return" on a message when in the message summary list.  This opens a new window with the message.  I believe users would really like the caret to be placed at the beginning of the message content there as well.  Is this possible?
Comment 20 André Klapper 2008-08-20 14:07:16 UTC
When having Caret mode enabled and reading plaintext mail that includes URL, clicking on a URL makes the mail display jump to the top again. Is that a side effect?
Comment 21 Milan Crha 2008-08-20 14:13:15 UTC
(In reply to comment #19)
> .... Is this possible?

I can look, hopefully it is. It should work in a way first time you focus the gtkhtml widget the caret is placed to the marker at the beginning.

(In reply to comment #20)
> ...Is that a side effect?

Maybe.
Comment 22 Milan Crha 2008-08-22 07:15:28 UTC
(In reply to comment #20)
> When having Caret mode enabled and reading plaintext mail that includes URL,
> clicking on a URL makes the mail display jump to the top again. Is that a side
> effect?

I tested this and no, this is not caused by this patch, it just tries to show cursor in the view after the click of the URL, the cursor position is not changed, so if you move somewhere else then the view is moved to that position. Feel free to add new bug, it doesn't seem complicated to fix, but doesn't belong to this one. :)
Comment 23 Milan Crha 2008-08-22 07:16:53 UTC
Oh, I'm sorry, reopening, it doesn't work for message windows as Willie wrote in comment #19.
Comment 24 Milan Crha 2008-08-22 08:59:49 UTC
Created attachment 117193 [details] [review]
proposed gtkhtml patch

for gtkhtml;

This patch extends the behavior with placing cursor to the right position even when opening in the new window. One thing: it works fine unless you are changing messages with Prev/Next arrows or Ctrl+PageUp/PageDown, in that case the cursor is placed same as before. I think it's fine, one will probably need to read headers before message content in this case, but I can be wrong. What do you think Willie?
Comment 25 Mike Pedersen 2008-08-22 20:22:23 UTC
This will be a really big improvement.  thanks much for the change.  
Comment 26 Srinivasa Ragavan 2008-08-31 18:16:06 UTC
Willie, can you test and reply? Thanks.
Comment 27 Willie Walker 2008-09-01 13:10:19 UTC
Eeeks!  Sorry about that.  I saw Mike's response (he's a member of the Orca team) and misread it as having been tested.  I'll try to give this a shot very soon, but I've always had difficulty building all of the Evolution and usually just wait for Ubuntu to come out with binary updates based upon GNOME development tarballs.  :-)
Comment 28 Willie Walker 2008-09-02 17:14:42 UTC
Yeah - I looked at the patch again and realized it was for just gtkhtml.  Phew.  That was easy.  The patch works great and the Ctrl+Page_Up/Down behavior is fine as well.  Thanks much!
Comment 29 Milan Crha 2008-09-02 17:28:30 UTC
Hi Willie, thanks for testing it. When talking about a11y and gtkhtml, can I make a session with Li or with you about bug #516680 ? I'm quite confused with that and would like to have some assistance when trying to see whether my changes work or not. I'll try to join you on IRC tomorrow, which is around 12 hours forward for me :) Do you think it'll be possible?
Comment 30 Willie Walker 2008-09-02 17:32:58 UTC
(In reply to comment #29)
> Hi Willie, thanks for testing it. When talking about a11y and gtkhtml, can I
> make a session with Li or with you about bug #516680 ?

You bet -- I'll try to hang out on #a11y 8:30-6PM EDT tomorrow.  Li is in Beijing, so you might actually be in a better time zone to talk with him (and he's better at GAIL/ATK internals than I am).



Comment 31 Li Yuan 2008-09-03 06:52:22 UTC
Sure, I am in IRC now. And you can add comments on that bug.
Comment 32 Srinivasa Ragavan 2008-09-14 16:48:15 UTC
Guys, are you committing it by tomorrow. Or else we would be missing this for 2.24.x. Hard code freeze starts by end of tomorrow
Comment 33 Milan Crha 2008-09-15 08:10:04 UTC
Committed to trunk. Committed revision 8993.