Open Bug 492158 Opened 11 years ago Updated 5 days ago

Provide summary of messages in folder or account

Categories

(Thunderbird :: Mail Window Front End, enhancement)

enhancement
Not set

Tracking

(Not tracked)

ASSIGNED

People

(Reporter: davida, Assigned: squib)

References

(Depends on 5 open bugs, Blocks 1 open bug)

Details

(Whiteboard: [patchlove][has WIP])

Attachments

(5 files, 12 obsolete files)

120.79 KB, image/png
Details
25.57 KB, image/png
Details
129.51 KB, image/png
Details
72.82 KB, patch
Details | Diff | Splinter Review
196.04 KB, image/png
clarkbw
: feedback+
Details
Attached patch WIP v1 (obsolete) — Splinter Review
Can't find the original bug, so creating a new one to stash the WIP patches.

See http://ascher.ca/blog/2009/05/08/getting-insight-into-ones-own-email/ for background.

Not even close to review ready, just posting as a backup.  Requires the patch on 454829, and likely the related patches.
Flags: blocking-thunderbird3?
Attached patch WIP v2 (obsolete) — Splinter Review
Massively refactored, and handles virtual folders.
Assignee: nobody → david.ascher
Attachment #376520 - Attachment is obsolete: true
Status: NEW → ASSIGNED
Attached patch WIP v3 (obsolete) — Splinter Review
Much improved.  Refactored considerably, so that almost everything in the summary is computed by a fairly-well-isolated 'analyzer'.  Added tagpies and tagdots.  Will attach a screenshot to show what those are.
Attachment #376536 - Attachment is obsolete: true
Attached image screenshot (obsolete) —
(note: I don't think tagpies are actually that useful in practice)
(In reply to comment #0)
> Can't find the original bug, so creating a new one to stash the WIP patches.

I can't see this either. This seems like a b3ux bug, so granting blocking to get it on to being tracked.
Flags: blocking-thunderbird3? → blocking-thunderbird3+
Whiteboard: [b3ux]
Target Milestone: --- → Thunderbird 3.0b3
Duplicate of this bug: 452440
Attached image mockup (obsolete) —
Just some rough ideas on the arrangement of elements in this.

As we're dealing with a rather limited area of the screen here (less than half the height of a screen considering Toolbar + Message header pane + Status bar) and we should probably avoid scrolling if possible, I think we need to reduce the height of this layout a bit.

While I liked the idea of a statistics sidepane, I'm not sure we have enough crucial statistics to put there and I think we can display it in ways that make more efficient use of the available space.

In this mockup I've:
* Removed the header on "last selected message"
* Put the "recent unread...", "Most active..." and "Recent threads..." in a 3-column layout.
* Experimented with visualizing the tags as a bar similar to the one seen in iTunes [1] and Banshee [2] for removable devices.
* The bird again from Bug 489999, still needs a visual update to look less evil.

1. http://www.ejecutive.co.uk/wp-content/uploads/2006/09/itunes7_1_thumb.jpg
2. http://banshee-project.org/theme/images/slides/scaled/banshee-slide-device-overview.png
Attached image annotated mockpu
Looks awesome!  Some comments and annotations.

* Header 

I like the new header arrangement the blue bar looks good and defines the area well.

We're going to need space under the graph in the header for a small legend that will let people know what the timeline range is.

* Disconnected Folder

It'd be great if you had ideas of where to annotate that this folder is not currently connected to the server.  I was thinking that we could add something directly under the folder name with "[offline-icon] $OFFLINE_MESSAGE" sitting below the folder.  This will help us remove the "Couldn't connect to the server" dialogs.

* Last selected message

This probably needs the message summary text included underneath it

* Columns

For extensions to work in this space we wanted to have defined a 2/3rds area and a 1/3rds width area that extensions could work in.  We don't really have great visualizations right now but the goal would be that other people could plug into the 1/3 area using our visualization extension examples.  We need more ideas on how to improve this space, for now I just annotated to show some different width examples of what you did.

* More expressive bird

Initially we want this bird to look more positive and upbeat as we should be telling people about cool new stuff like add-ons to try and features that landed in the next beta of Thunderbird.

David also has hopes that eventually we'll use another version of the bird in a sad manner as well for when we have to talk about security releases that people need to download.  This version can come later as we don't have anything to support it yet but just to illustrate the obvious different emotions we're looking for.

** positive/upbeat ( new features are on the way with cool add-ons )
** sad/sorry (e.g. it's really important to update because there's a security fix )
Attached image urgent bird drawing
I don't have anything to back up that Thunderbirds actually can change color, but these birds seems rather powerful [1], so I'm sure they can pull that trick out of their sleeve as well.

1. http://en.wikipedia.org/wiki/Thunderbird_(mythology)
I wasn't clear on some of the details, so I'll grab you later today on IRC so we can discuss these.
Attachment #379380 - Attachment is obsolete: true
Attached patch WIP v4 (obsolete) — Splinter Review
checkpointing.  needs the protovis patch from 489999
Attachment #376674 - Attachment is obsolete: true
Attached patch WIP v5 (obsolete) — Splinter Review
fix bitrot
Attachment #381437 - Attachment is obsolete: true
Attached patch WIP v6 (obsolete) — Splinter Review
checkpointing.  Includes a bunch of stuff, including
 - removal of start page cruft
 - safetyfication of threadsummaries (innerHTML is bad)

still a bit to do on this patch before it's review-worthy, but didn't want to lose this, and others might be interested.
Attachment #384774 - Attachment is obsolete: true
Attached image screenshot (obsolete) —
Attachment #376675 - Attachment is obsolete: true
David, we wouldn't actually hold beta 3 for this, would we?  If that's correct,
please re-target to b4.
Moving out to b4, as per drivers discussion.  If it happens to land in time for b3, great!
Target Milestone: Thunderbird 3.0b3 → Thunderbird 3.0b4
Attached patch WIP v7 (obsolete) — Splinter Review
I don't think this patch is quite ready, but I'd love to get a first pass review if you've got the time, Mark. 

Known issue: weird CSS issues on the last selected message display;

Todo: 
- check it looks ok on windows & linux
- check docs are ok
Attachment #385517 - Attachment is obsolete: true
Attachment #385518 - Attachment is obsolete: true
Attachment #391984 - Flags: review?(bugzilla)
Attached patch WIP v8 (obsolete) — Splinter Review
forgot new properties file
Attachment #391984 - Attachment is obsolete: true
Attachment #391987 - Flags: review?(bugzilla)
Attachment #391984 - Flags: review?(bugzilla)
I think you need protovis for this patch to work - at least, it didn't work for me, and complained about not finding protovis on startup...
(In reply to comment #17)
> Created an attachment (id=391987) [details]
> WIP v8

I think I put enough together to get a working combination - protovis plus the error patch. Could you post the protovis patch you are using somewhere (possibly on bug 494962)?

Initial comments:

- The histogram looks generally wrong. It is width is too small compared with where the labels are, even with a folder with emails received today, there isn't any indication above the "now".
-- One example is that I had one single message in a folder, dated 31 July - it appeared right above "a month ago" - as it was only 4 days ago, I'd expect it nearer the "now".
-- I've a folder with messages from Nov 2008 in it. Apparently they were sent a month ago.
- I think it is getting the wrong number of messages for IMAP e.g. saying I have 900 odd, when in fact I only have 200ish. A compact didn't fix this.
- If you don't use tags much, IMHO it is really confusing to have a single dot on a line, with one more dot underneath it with Personal: 1 (for example). I think if you've tagged something by accident the user is going to get confused.
- If the content of the folder updates (e.g. unread) the summary doesn't.
- Last Selected Message - it seems to be a bit of a guess finding the right place to click on the text to go to that message.
- Should you be able to click on an active thread (and maybe authors?) to go to the relevant messages?
- I thought there was going to be a size on disk indicator (or was that on the account summary)? IMHO this would be useful still.
Depends on: errutils, protovis
Sorry about the missing dependencies.  The protovis patch is on bug 489999.  The errorUtils patch is on bug 500338.

- I'll test the histogram.
- weird about imap, will double-check.  
- I'll think about the tag ui in edge cases -- maybe just a header like "Tags" might be good enough.
- good point about unreadness.  I suspect i'll need some observer...
- Last Selected Message: yeah, there's some weird css wonkiness, will fix.
- Some of those should be clickable -- I'm not sure about authors, maybe that should do a filter?
- size on disk indicator is for account central, but it'd be easy enough to indicate size on disk for this folder.

Thanks for the initial comments, will try and get an updated patch tomorrow.
> - Some of those should be clickable -- I'm not sure about authors, maybe that
should do a filter?

Lets make it all one link that takes you to the thread, individual links like that from the summary view probably aren't as useful as fat finger protection.  The "messages by this author" filter could be added to the Other Actions area to make it more prominent.
I think the first version of this patch doesn't need to be able to click on authors. Clicking on a thread would be good IMHO though.

Note about the IMAP message count issue: it appears we're getting a count that is the sum of the messages in the folder and its sub-folders. Which actually makes it a any-folder type issue rather than just imap.
Comment on attachment 391987 [details] [diff] [review]
WIP v8

Cancelling review request whilst waiting for a new patch.
Attachment #391987 - Flags: review?(bugzilla)
A general remark: Canvas isn't at all accessible as of yet. The HTML5WG is currently trying to figure out with the help of various experts how to accomplish this and provide proper implementation guidelines.

The only solution is to provide an alternative version in HTML that will then be rendered by screen readers. Right now, only the div that contains all the canvas stuff would be rendered as an empty section. The alternative HTML version could be put off-screen via CSS (not displa:none or visibility: hidden!) and thus would not be visible to the average user. And it would, of course, have to be purely textual, with tables representing the data, clickable stuff provided as links back to whereever they're pointing etc.
Whiteboard: [b3ux] → [b3ux][has l10n impact]
Thunderbird drivers have decided that we won't block thunderbird 3 on this. What we will likely do is to release an extension at some stage and work on the possibilities there before integrating into core.
Flags: blocking-thunderbird3+ → blocking-thunderbird3-
Whiteboard: [b3ux][has l10n impact]
Target Milestone: Thunderbird 3.0b4 → ---
Attached patch WIP v9 (obsolete) — Splinter Review
current patch, for reuse in an extension soon i hope
Attachment #391987 - Attachment is obsolete: true
(In reply to comment #24)
> A general remark: Canvas isn't at all accessible as of yet. The HTML5WG is
> currently trying to figure out with the help of various experts how to
> accomplish this and provide proper implementation guidelines.

Protovis (now) uses SVG.  Since it is exposed in a DOM-ish sort of way, hopefully that makes it technically capable of accessibility exposure?  There is, of course, still the issues of providing screen readers with something that they and their humans can make sense of.

(In the case of the summary page, I think the legend for the tag dots provides all the useful information.  I think the tag dots themselves and the bar graph of message dates in the folder are probably not useful to expose to screen readers since they are high-density displays that are interesting, but not particularly useful.  If there is some way for the screen readers to map the data into 'high density sound', such as a series of tones whose frequencies convey the number of messages represented by each bar in the bar graph, that could be a useful way to expose it.  Otherwise, text-to-speech on each numeric value (which is definitely feasible) seems like a waste of time to the listener.)
Flags: blocking-thunderbird3.1?
Bryan, is this wanted or blocking for 3.1? Are we still thinking about doing this as an extension?
Flags: blocking-thunderbird3.1? → blocking-thunderbird3.1-
Severity: normal → enhancement
Summary: Folder summary → Provide summary of messages in folder
Whiteboard: [patchlove][has WIP]
Attached patch Fix bitrotSplinter Review
This fixes the bitrot in WIP v9, but you probably need attachment 511149 [details] [diff] [review] applied first.

Next up: trying to get this incorporated into the account summary add-on so people can try this out without compiling their own Thunderbird.
Attachment #396265 - Attachment is obsolete: true
Attached image Updated interface
Alright, I've been working on incorporating the patch here into my account summary extension in bug 489999. Here's a screenshot of what I've done so far. (Note that the brown theme is being pulled in from my OS color palette, like in attachment 508084 [details]).

For the time being, I've intentionally made the section headings shorter so that I could make the font a little bigger (it's more consistent with the account summary, plus I'm afraid things would look a bit too small on Windows, where the font sizes usually seem to be considerably smaller than Ubuntu).

There are a bunch of minor issues remaining to fix (and then a whole pile of testing), but I think this roughly matches the UI concepts from earlier in this bug.

Since this is part of the same extension as bug 489999, I'll probably be posting WIP .xpi's over in that bug once I'm reasonably confident that things actually work right in most cases. :)
Attachment #523851 - Flags: feedback?(clarkbw)
Comment on attachment 523851 [details]
Updated interface

Looks good.

Two things I'm going to want to change.  1) The background image into something simpler like a gradient.  2) The last selected message display needs some cleanup, I think we didn't really finish that part.
Attachment #523851 - Flags: feedback?(clarkbw) → feedback+
I picked the background image to match bug 489999. I'm thinking that both account and folder summary should have the same background to tie them together thematically. I'm not sure which should change, though.

I'm also not totally sure what to do for empty folders or folders with no unread/starred messages (right now I just show a div explaining things, but it probably needs better CSS). You can see that in action with attachment 524327 [details].
I'm going to steal this bug, since I've been the one actually working on this (in an add-on) for the last 3 years or so. :)
Assignee: davida → squibblyflabbetydoo
Depends on: 1180463
Duplicate of this bug: 569091

The idea of doing this was recently discussed in tb-planning by Jim and got several thumbs up. It would significantly modernize us.

Jim writes offers to drive - "Would there be interest in getting this merged into Thunderbird? I'm happy to help drive this, provided others are also willing to help (especially with reviews). It's basically feature-complete, although the NNTP/RSS account summaries could use some improvements. If there's interest in this, I'll put together a list of the bugs/work that needs to be done. "

Would this be in scope for 78? (we've got a few months)

Blocks: 729731
Flags: needinfo?(jporter+bmo)
Flags: needinfo?(alessandro)
Summary: Provide summary of messages in folder → Provide summary of messages in folder or account

I'll start filing bugs for the work on this. There's a decent amount of preliminary work that we need to do to prepare for landing the actual summaries. Mostly, this will be migrating the bits in Mail Summaries' bootstrap.js file: https://bitbucket.org/squib/mail-summaries/src/default/src/bootstrap.js

Flags: needinfo?(jporter+bmo)
Depends on: 489999
Depends on: 1612517
Depends on: 1612518
Depends on: 1612520

Ok, that should be all the blockers for this bug. Most of these can hopefully be adapted from the Mail Summaries code. However, I could definitely use some help with bug 1180463, since I've forgotten most of the gory details of how that code works...

I'm very interested in this and I'd like to help in terms of UI and UX to properly integrate this with our style guide.
Somewhat related, I'm working on bug 1589005, which plans to implement a sort of "Welcome Account Hub" for first time users.
After some discussions with others, we decided to see how this account hub could live in the Account Central tab if the user doesn't have anything set up yet.

I'm doing some mockups to prototype the various states, but this is a rough idea:

  • Account Hub taking over the entire first tab to guide users on first set up
  • New Account Central (this patch) if the user has at least 1 account configured, with a clear access to the Account Hub UI.
Flags: needinfo?(alessandro)
You need to log in before you can comment on or make changes to this bug.