Mailpile icon indicating copy to clipboard operation
Mailpile copied to clipboard

Better Handling of "Sent" mail

Open bnvk opened this issue 10 years ago • 17 comments

A seemingly common UX pain point for users happens after clicking "Send" after composing a new message- the record that action seems to disappear from the current interface. Most people learn they can navigate to the email by going to the "Sent" view and then yet a another click to view the sent message!

Gmail shows the little "View Message" Link that allows a nice one click navigation to a recently sent mail

screen shot 2013-08-25 at 5 53 19 pm

Other mail clients don't account for this nearly as well!

bnvk avatar Aug 25 '13 15:08 bnvk

Since Google doesn't make this little pop-up cover any other important part of the UI, their solution is indeed quite nice. Thunderbird kind of tried it as well with the "Tools => Activities" menu. Maybe it would be worthwhile to take these 2 ideas and create a "log-panel" in Mailpile that lists the last actions, fading older ones out.

In case of e-mails (sent & received), the entry could simply be consist of: time, subject & to/from. All hyperlinked to the message itself.

Other log entries like "Updated account XYZ"

Cathryne avatar Aug 25 '13 16:08 Cathryne

Maybe it would be worthwhile to take these 2 ideas and create a "log-panel" in Mailpile that lists the last actions, fading older ones out.

This is a pretty nice idea. It should of course always be possible to turn it off (obviously) and to selectively remove entries (a log entry about your mail to the headhunter should not be on your screen when your boss drops in).

malexmave avatar Aug 25 '13 17:08 malexmave

@Cathryne @malexmave cool feedback- glad to see there is interest in this sort UX feature. I have a few ideas about how to implement this sort of behavior in a slightly unconventional interface mockup I'm working on. I hope the community is into deviating a bit from the standard issue left sidebar / right inbox style interface- it's really a paradigm that hasn't changed since webmail first started in the 90s.

bnvk avatar Aug 26 '13 11:08 bnvk

"slightly unconventional interface mockup" sounds very exciting! Take your time ;-)

Cathryne avatar Aug 26 '13 11:08 Cathryne

+1 to deviating from Ye Olden ux.

Brennan Novak [email protected] wrote:

@Cathryne @malexmave cool feedback- glad to see there is interest in this sort UX feature. I have a few ideas about how to implement this sort of behavior in a slightly unconventional interface mockup I'm working on. I hope the community is into deviating a bit from the standard issue left sidebar / right inbox style interface- it's really a paradigm that hasn't changed since webmail first started in the 90s.


Reply to this email directly or view it on GitHub: https://github.com/pagekite/Mailpile/issues/123#issuecomment-23255754

Sent from my Android device with K-9 Mail. Please excuse my brevity.

jmthackett avatar Aug 26 '13 13:08 jmthackett

The feature(s) sound perfect. As for "unconventional", I think we need to get beyond "conventional but hard to use". Gmail was different and most people adapted. It's time for the next step.

nicafyl avatar Aug 26 '13 14:08 nicafyl

@tethra @nicafyl @Cathryne thanks everybody, I'm really excited to see there's enthusiasm for pushing it forward design wise :+1:

bnvk avatar Aug 26 '13 14:08 bnvk

How about displaying the sent email at the top of the inbox? Most people, I assume, only have a few sent emails every day anyway.

andri avatar Apr 28 '14 18:04 andri

Or, display the out-going message in the inbox (top if no reply; below appropriate mail if reply) with a different background shading maybe, or a sent icon and then over the few seconds set as the "undo sending"-time scroll it to the right. Marquee-style like in the Web 1.0 ;-D

Cathryne avatar Apr 28 '14 18:04 Cathryne

^^^

andri avatar Apr 28 '14 19:04 andri

@andri @Cathryne i've added a "replied" icon to message threads so you can look at search results and know if you've replied. Also working on having a "draft" icon for unsent but started replies

bnvk avatar Apr 29 '14 13:04 bnvk

I'm so looking forward to using Mailpile when an official Win/Mac installer or Linux PPA is published :-)

Cathryne avatar Apr 29 '14 14:04 Cathryne

This is actually STILL an issue in Mailpile. Some of the progress Brennan made got reverted by other changes. We need to make this flow a bit cleaner before 1.0 and then finally close this.

BjarniRunar avatar Mar 08 '18 13:03 BjarniRunar

This issue goes back a long way back.

The original statement of the issue is ... after clicking "Send" after composing a new message the record [of] that action seems to disappear from the current interface. ....

The solutions discussed above include proposed additions to the UI including pop-ups, log panels, ... which would complicate the UI.

It happens that the SMTP server that I mainly use (at hushmail.com) generates a new MessageId, replacing the MessageId provided by Mailpile, when it sends a message. When combined with the preference Always BCC self when sending mail which defaults to On, the result is that the BCC of a sent message is received by the IMAP server and appears in Inbox. For me, this goes a long way towards answering the issue. There is an additional advantage: it confirms that the SMTP server actually received and processed the outgoing message.

There are deficiencies in this approach.

  • There's a delay of a few minutes before the BCC to myself appears in Inbox.
  • The search results display does not clearly distinguish BCCs of outgoing messages from incoming messages.
  • The Inbox search results window, unlike the Sent search results window, shows the name of the sender, not the recipient, which is not useful information in the case of outgoing messages.
  • The BCC to myself does not show any other BCCs to whom the email was sent.
  • Most important - most providers (e.g. Fastmail, GMail. Teksavvy) use the Message-Id that is passed to them by Mailpile. In that case Mailpile does not index the incoming BCC, but treats it as a duplicate because it has already indexed the sent message using the same Message-Id. So the BCC nevers appears in Inbox.

Suggestion:

  • Add a Preferences option Put outgoing mail in Inbox with On as the default value.
  • Change Preferences option Always BCC self when sending mail default value to Off.
  • In the case of outgoing messages, show the name of the recipient in Inbox search results, not the name of the sender, with an icon to flag the difference.

The UI for the Sent mailbox already uses a single arrow (for a sent message that begins a thread) or a double back-curved arrow (in the case of a reply) to the left of the name field to indicate that the name is that of the recipient, not the sender.

The backend implementation would involve adding the Inbox tag to a sent message in the metadata index. Front-end changes would be required to put the arrow icons to the left of the name. This could be extended to all search results in which the From field is an email address associated with any of the Mailpile accounts so that it is not a special case.

Additional thought should be given to these points:

  • What happens in the time interval when the message is in the Outbox? Should it also appear in Inbox? If so should it be flagged to indicate the pending send?
  • If both preferences Put outgoing mail in Inboxand Always BCC self when sending mail are On, and the provider does not reuse the MessageId is it possible to avoid duplicating the message in the search results?

I rewrote this issue on 2019-09-03 to reflect the reality that most providers do not generate a new MessageId.

On 2019-09-11 I added the point about the BCC to self not showing other BCCs.

JackDca avatar Aug 28 '19 16:08 JackDca

I have been testing the idea of putting outgoing emails in the Inbox on my production email and I really like the result!

When I press the Send button, and then go to Inbox, the message is immediately listed. It is flagged with the Forward icon (right arrow) between the recipient's avatar and the recipient's name, and also the Outgoing icon indicating that it is in Outbox. Once it is actually sent, the Outgoing icon changes to the Sent icon (paper airplane). So, the message never "disappears" (fixes the original complaint), outgoing messages are distinguished from received messages, and the recipient's name is displayed. Screen grab shown below.

There are still some rough edges:

  • The Forward icon is not appropriate. It is too big and it is already used for forwarding a received email which is a different meaning from its use to flag outgoing emails. A better choice would be something like this Unicode glyph: ↠ .
  • The Forward icon should appear to the left of the avatar, not between the avatar and the name. The avatar is part of the contact identification and should be kept with the name.
  • The user may want to enable both BCC self and outgoing in Inbox e.g. so that another client accessing the IMAP server directly will have access to sent emails. This is OK in the (most common) case where the provider uses the Message-Id generated by Mailpile since the incoming BCC will not be indexed. But, if the provider generates a new Message-Id, the BCC to self appears in Inbox once it is received, duplicating the outgoing email.

The last point could be handled by tagging the received BCC e.g. SentBccSelf instead of putting it in Inbox, but this is not straightforward! Perhaps a duplicate could be identified by comparing the incoming message From, To, and Date metadata with emails in Sent.

My limited HTML/CSS/Jinja experience makes it difficult for me to fix the above points. I may create a PR of my rough implementation in hope that someone will step up to help!

Screenshot from 2019-09-11 10-27-26

JackDca avatar Sep 11 '19 14:09 JackDca

@BjarniRunar responded to the above comment on IRC. This is my attempt to summarize his response. If I have misinterpreted it my apologies, Bjarni, please correct me.

  • Putting outgoing mail in Inbox would not work for some users, depending on how they use Inbox.
  • Specifically, some users (automatically?) filter their incoming email into additional tags and reply/forward them from there, so the incoming email which is being answered is not itself in Inbox.
  • Providing an option so the users can choose to put outgoing mail in Inbox is undesirable because Mailpile should do "the right thing" by default.
  • Best approach is to send the user to Outbox once the mail has been sent, possibly depending on how the outgoing message was created (Compose, Reply, or Forward) and animate the Outbox display to show status changes as messages are sent (or fail to be sent). If a send fails, provide buttons to diagnose or retry. But [this is Bjarni's comment] usually after sending a message you just want to keep reading or writing mail, so this might only improve the experience when the mail sending is misconfigured (not a long-lasting state).
  • Providing a new tag SendFail to flag failures [@JackDca's suggestion] is not needed if Outbox is animated as described.

Are there other users who would be willing to describe how they use Inbox and how they go about responding to incoming mail? Clearly it is would be best to account for a range of typical "workflows" when designing this part of Mailpile.

JackDca avatar Sep 16 '19 12:09 JackDca

I've been using my local implementation of putting outgoing emails in Inbox for a while and still like it. I like that it uses the existing UI without further modification or complication. Here are some responses to @BjarniRunar 's points:

  • To accomodate users who filter their incoming mail into tags other than Inbox, outgoing forwards or replies could be put in those same tags instead of Inbox. This could be done based on the user tags on the message that is being replied to or forwarded. (What if there is more than one user tag on the original message? Does the catgegory/attribute distinction come into play in that case?)
  • The option to put the outgoing mail in Inbox, or tag it as per the previous point, should be enabled by default. But, it doesn't hurt to allow a user with a different workflow to disable the option.
  • The animation of the tags on the outgoing mail is important. At present the Outbox icon first appears, then changes to the Sent icon, when appropriate, both in the display of the sent email (left on the screen after the user clicks Send) and (if the outgoing email is tagged Inbox) in the search results window for Inbox. However, the updating of these tags when they change is sluggish at best. Can we use push updates of tag icons displays to better show the progress of message sending?
  • A SendFail tag icon would be visible even if the user navigates away from the display of the sent email (e.g. to Inboxor other user tag) where it could be noticed by the user. Also, its use could be expanded to signal the arrival of a bounce message. That is, a filter could recognize an incoming message as an SMTP error message, identify the message to which it applies, and move the identified message from Sent to SendFail.

JackDca avatar Oct 08 '19 14:10 JackDca