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 216485 - Edit -> Select Thread doesn't select the entire thread
Edit -> Select Thread doesn't select the entire thread
Status: RESOLVED FIXED
Product: evolution
Classification: Applications
Component: Mailer
2.12.x (obsolete)
Other All
: Normal normal
: ---
Assigned To: evolution-mail-maintainers
Evolution QA team
Depends on:
Blocks:
 
 
Reported: 2001-12-04 05:28 UTC by Nicholas Miell
Modified: 2007-11-26 11:31 UTC
See Also:
GNOME target: ---
GNOME version: ---


Attachments
Before Select Thread (36.82 KB, image/png)
2004-04-25 21:41 UTC, Nicholas Miell
  Details
After Select Thread (39.33 KB, image/png)
2004-04-25 21:42 UTC, Nicholas Miell
  Details
Expected result after Select Thread (31.07 KB, image/png)
2004-04-25 21:42 UTC, Nicholas Miell
  Details
For posterity, here's how I fixed this for Evolution 1.4 (5.16 KB, patch)
2004-09-22 01:29 UTC, Nicholas Miell
none Details | Review
Evolution 2.0 fix (4.92 KB, patch)
2004-09-22 05:37 UTC, Nicholas Miell
none Details | Review
Updated Evolution 2.0 fix, which doesn't stall the UI due to constant tree model updates (5.59 KB, patch)
2004-09-23 03:37 UTC, Nicholas Miell
none Details | Review
Fix for Evolution 2.2 (5.53 KB, patch)
2005-06-13 00:46 UTC, Nicholas Miell
none Details | Review
Fix for 2.6.0 (5.92 KB, patch)
2006-03-22 22:38 UTC, Nicholas Miell
none Details | Review
Fix for 2.12.1 (6.22 KB, patch)
2007-11-22 03:18 UTC, Nicholas Miell
reviewed Details | Review
updated patch (6.62 KB, patch)
2007-11-24 00:57 UTC, Nicholas Miell
committed Details | Review

Description Nicholas Miell 2001-12-04 05:28:10 UTC
Description of Problem:
Using Select Thread on the Edit menu, or the Ctrl-H keybinding does
not select the entire thread. Instead, the currently selected message and
messages below it in the thread heirarchy are selected.

This is agains 1.0, but that isn't an option in the Version list yet.

Steps to reproduce the problem:
1. Find a thread with at least three posts. (i.e. A message, a reply to
that message, and a reply to the reply.)
2. Select the reply to the message
3. Press Ctrl-H

Actual Results:
The reply to the message and the reply to the reply are selected.

Expected Results:
All messages in the thread are selected

How often does this happen? 
Always
Comment 1 Luis Villa 2001-12-17 21:55:19 UTC
Confirmed, and fairly irritating.
Comment 2 Jeffrey Stedfast 2002-01-30 22:06:51 UTC
this seems to be working fine now... maybe it got fixed in the
meantime? *shrug*
Comment 3 Nicholas Miell 2002-01-31 01:49:08 UTC
Nope. I'm using 1.0.2, and it still only selects the messages that are
children of the current message, or siblings of the current message
and their children. It doesn't climb back up the message heirarchy and
actually select the entire thread.
Comment 4 Jeffrey Stedfast 2002-01-31 02:26:34 UTC
ah, it's only fixed in 1.1.x
Comment 5 Nicholas Miell 2002-09-22 21:55:55 UTC
I downloaded the 1.1.1 beta today, and, lo, it isn't fixed in 1.1.x.
Original report still stands.
Comment 6 Jeffrey Stedfast 2002-09-22 22:05:02 UTC
works fine for me, maybe the gal that 1.1.1 shipped with was
temporarily broken or something.
Comment 7 Nicholas Miell 2004-04-25 21:41:40 UTC
Created attachment 43624 [details]
Before Select Thread
Comment 8 Nicholas Miell 2004-04-25 21:42:10 UTC
Created attachment 43625 [details]
After Select Thread
Comment 9 Nicholas Miell 2004-04-25 21:42:36 UTC
Created attachment 43626 [details]
Expected result after Select Thread
Comment 10 Jeffrey Stedfast 2004-04-26 03:42:24 UTC
no, select thread should start at the current point and work down.
otherwise it's not as useful.
Comment 11 Nicholas Miell 2004-04-26 05:43:40 UTC
Several reasons why this is broken:

1) Evolution lacks useful threading support (i.e. "Mark Thread Read",
"Mark Thread Read and Go To Next Thread", "Ignore Thread", etc.).

Most of these actions could be approximated using several actions
(well, except for Ignore, which Evolution doesn't support at all), if
it wasn't for the fact that Select Thread doesn't actually work.

2) Principle of least surprise says that "Select Thread" selects the
entire thread.

3) In Outlook, Outlook Express, Mozilla Mail/Thunderbird, and Pan
"Select Thread" selects the entire thread.

So, please explain how "Select Thread" not selecting the thread is useful.

Or at least rename "Select Thread" to "Select Subthread"
Comment 12 Nicholas Miell 2004-09-22 01:29:26 UTC
Created attachment 44242 [details] [review]
For posterity, here's how I fixed this for Evolution 1.4
Comment 13 Nicholas Miell 2004-09-22 05:37:45 UTC
Created attachment 44243 [details] [review]
Evolution 2.0 fix
Comment 14 Nicholas Miell 2004-09-23 03:37:17 UTC
Created attachment 44247 [details] [review]
Updated Evolution 2.0 fix, which doesn't stall the UI due to constant tree model updates
Comment 15 Nicholas Miell 2005-06-13 00:46:52 UTC
Created attachment 47680 [details] [review]
Fix for Evolution 2.2
Comment 16 Nicholas Miell 2006-03-22 22:38:17 UTC
Created attachment 61803 [details] [review]
Fix for 2.6.0
Comment 17 Sebastien Bacher 2006-04-09 13:15:57 UTC
Ubuntu bug about that: https://launchpad.net/distros/ubuntu/+source/evolution/+bug/37932
Comment 18 Alvin Thompson 2006-04-09 14:32:24 UTC
thank you, nmiell, for your work creating a patch for this.
Comment 19 Alvin Thompson 2006-04-09 15:19:08 UTC
fejj, could you please explain why the select thread should start at the current point and work down? it's confusing to new and experienced users alike because no other mail reader works this way. i can't imagine how this behaviour is 'more useful' than normal select thread behaviour.

i don't seem to have the ability to reopen this bug. otherwise, i would.
Comment 20 Nicholas Miell 2007-11-22 03:18:43 UTC
Created attachment 99460 [details] [review]
Fix for 2.12.1
Comment 21 Nicholas Miell 2007-11-22 03:30:12 UTC
You know what, I've been dealing with this bug for 6 years and carrying my own patch to fix it for three. This is boring.

So, I've reopened it to get it reviewed again.
Comment 22 Srinivasa Ragavan 2007-11-22 05:15:27 UTC
Milan, can you review/approve this?
Comment 23 Milan Crha 2007-11-22 08:49:02 UTC
New functionality works good to me. I would like to point to that the patch doesn't apply to trunk, but it's probably ok (mainly because of trailing white-spaces cleanup, I guess).

I also found these little issues:
a) Please add ChangeLog entries (each folder has it's own ChangeLog)

b) Be sure that between a function name and the open bracket is a space (there are some places where you do not add there such space, like
select_thread(message_list, thread_select_foreach);
should be
select_thread (message_list, thread_select_foreach);

c) Please honor the order of items, it will be better readable. I mean, do function definitions and adding to structures in same order as you have in the Menu, i.e. make sure you've always 'thread' before 'subthread', in header file, structures related to menu items and so no. It's a little tiny, I know, but please do, it will be nicer :)

Otherwise I will be glad to commit this to trunk, when you attach here updated patch. We cannot to stable because new string added and it's under string freeze, I think. (So if you can provide patch which will smoothly apply to trunk, then it will be wonderful.) Thanks for your help. 
Comment 24 Nicholas Miell 2007-11-24 00:57:11 UTC
Created attachment 99560 [details] [review]
updated patch

This updated patch should address all issues.
Comment 25 Milan Crha 2007-11-26 11:28:25 UTC
Looks good to commit to trunk, I only changed mnemonic to menu item to "Select Message S_ubthread" (there was _Subthread), 'S' has been used in "_Subscriptions" already.
Comment 26 Milan Crha 2007-11-26 11:31:35 UTC
Committed to trunk. Committed revision 34585.