Closed Bug 651945 Opened 14 years ago Closed 6 years ago

Shift-delete does not delete from All Mail in IMAP [gmail] account

Categories

(Thunderbird :: Folder and Message Lists, defect)

x86
Windows XP
defect
Not set
normal

Tracking

(Not tracked)

RESOLVED INCOMPLETE

People

(Reporter: greynolds, Unassigned)

References

(Blocks 1 open bug)

Details

User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.9.2.16) Gecko/20110319 Firefox/3.6.16 ( .NET CLR 3.5.30729; .NET4.0E) Build Identifier: Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.9.2.15) Gecko/20110303 Thunderbird/3.1.9 Items in other folders are reproduced (apparently not linked) in All Mail. When the item is selected and shift-deleted from another folder, it remains in All Mail. Reproducible: Always Steps to Reproduce: 1. Verify that an item is in both All Mail and another folder 2. Select the item in the other folder, then shift-delete it there 3. Observe that it vanishes from the other folder but remains in All Mail Actual Results: Shift-deleted items are deleted from the primary folder but remain in the All Mail folder. Expected Results: Mail should be deleted from both All Mail and the other folder, but that happens only with standard delete, not with shift-delete. Ensure that the environment is synchronized IMAP and includes All Mail as it is implemented in GMail. Have not tested in other environments. Using the default theme. I do not know for certain that this is an issue specifically with Thunderbird. It may be with GMail or the interface between them. I could not find another report of this issue in Bugzilla.
I just tested the reverse, shift-deleting from All Mail. Same result; the item is not deleted from the other folder.
Further info: Items I shift-deleted from All Mail in testing appeared to be deleted initially but later reappeared in All Mail. I had to use standard delete to remove them from All Mail, then remove them from Trash afterward.
I surmise that the reason items shift-deleted from All Mail later reappear there is that, since they are not deleted from the other folder, gmail's internal mail management copies them back to All Mail from the other folder, so in effect they never get deleted at all.
Delete from server with Gmail requires copying the message to the \Trash folder. Shift-Delete in Thunderbird skips the copy to trash for IMAP accounts.
I suppose we could bypass shift delete for gmail accounts and just do a move to trash. It's a bit of a conundrum - shift delete is just automatic for some users, and we can't expect them to not do it for gmail accounts. Warning the user would probably be too annoying.
Status: UNCONFIRMED → NEW
Ever confirmed: true
If shift-delete cannot be used (practically) with Gmail then only two options are open: Translate it into an ordinary delete or tell the user it doesn't work. Users who use shift-delete for everything will quickly learn not to if they see the message a few times. Translating it may result in users reporting the translated functionality as a bug. Full disclosure is probably the better policy.
From the sound of it, this is actually Gmail's fault, in the sense that they have a strange and often incomplete IMAP implementation. That said, given how many of these bugs there are (see bug 402793), I'm not sure Google would be especially responsive about it.
Right, I don't expect Gmail to change this. I'm also not convinced that displaying a message every time someone does a shift delete in a gmail folder won't result in a lot of bugs filed on Thunderbird.
I'm sure Gmail won't change this. How a user responds to a message about it will depend on what the message says. A brief "Shift-delete not allowed" or something like that will draw a lot of comment. A message more like the following would probably satisfy just about everyone: "Gmail requires delete, not shift-delete, to delete messages." In the message box include an OK button and a More Info or Explain or Why? button or link where users can read more about the problem, reason, and required action. Anyone who sees that once or twice will understand and will not treat it as a Thunderbird issue. If there's also a "Don't show this message again" option (checkbox) that may be helpful. A third option, if it's doable, is to implement shift-delete for Gmail as a double delete, from both All Mail and the other box, but that assumes Thunderbird can find the other copy of the message. My experience has been that if the message is deleted in both places at about the same time, it's gone, even if it didn't go through Trash. You may wish to confirm that.
(In reply to comment #9) >A message more like the > following would probably satisfy just about everyone: "Gmail requires delete, > not shift-delete, to delete messages." In the message box include an OK button We're trying very hard to avoid dialogs like this that interrupt the user so I doubt we'll be adding new ones. It's not up to me, however.
(In reply to comment #10) > (In reply to comment #9) > >A message more like the > > following would probably satisfy just about everyone: "Gmail requires delete, > > not shift-delete, to delete messages." In the message box include an OK button > We're trying very hard to avoid dialogs like this that interrupt the user so I > doubt we'll be adding new ones. It's not up to me, however. I completely agree, and I believe it is up to me. ;) (The other options are still on the table, though. :) Thanks, Blake.
Possible use for Shift-delete in this context: I participate in a list that echoes my submissions back to me. The result is that each submission ends up in Sent, the list inbox, and All Mail. If I Delete it from any one of those, it is deleted from all of them. But if I Shift-delete it from Sent, it is deleted only from that one and remains in the other two. This is useful, as I don't need it in all three places. I've not confirmed whether this behavior is reliable and consistent. I would hope it is.
That should work, but is really no different, with Gmail, from using "Archive".
This Google forum post is enlightening about how things work: https://groups.google.com/forum/?fromgroups=#!topic/mozilla.support.thunderbird/9T3VGSvPJgM
This is just to summarize how Gmail and Thunderbird interact. By design, Thunderbird keeps its mail in just one folder. For example, new incoming mail is in Inbox and outgoing mail in Sent. There is no "All Mail" box. You can move mail from box to box but not (normally) copy it so it resides in multiple boxes. Where the mail resides is its only instance, and when it is deleted, it is moved to Trash (Delete) or expunged (Shift-Delete). GMail keeps all its mail in All Mail. This is the only real instance of the mail, except that deleted mail is moved to Trash and removed from All Mail. All other boxes are only appearances, known as labels. Any mail piece may bear multiple labels and thus appear in multiple boxes. Using the browser view of All Mail, one can see the labels. Deleting any appearance removes all labels and moves the mail to Trash, so it disappears from all boxes. Archiving removes all labels but leaves the mail in All Mail, so it disappears from all boxes except All Mail. Now here's the interesting part in this context. Pressing Shift-Delete in Thunderbird only removes the GMail label for the box in which it is pressed. Thus the mail remains (continues to appear) in all other boxes. It is not moved to Trash. Pressing Shift-Delete in All Mail is something of an anomaly; it appears to remove the mail from All Mail but leave it in the other boxes. The point is that Shift-Delete does not delete mail, it deletes labels. This can be useful, provided one understands what is going on. One can do the same thing in the browser--remove a label without deleting the mail. I thus withdraw my suggestion that the Shift-Delete functionality in Thunderbird be altered to fully expunge GMail mail as it does in other Thunderbird mail.
(In reply to Gerald Reynolds from comment #15) This is also just a summary. (A) Shift+Delete == Delete a mail without moving to trash, even when IMAP and delete model=Move to trash. Shift+Delete of IMAP mail in Tb == uid store nn +Flags(\Deleted). This is design of Tb. (B) "\Deleted flag at [Gmail]/All Mail" is always ignorwd by Gmail IMAP. "When a mail is removed from [Gmail]/All Mail" === "when the mail is copied or moved to [Gmail]/Trash or [Gmail]/Spam" As you know, this is design of Gmail IMAP. Because of Gmail's design of (B), unless [Gmail]/Trash is hidden at Gmail by user, if "Move to trash" model is used, [Gmail]/Trash is always used as "trash folder" by Tb regardless of "trash folder setting in Server Settings". This is also current Tb'ds design, in order to avoid user's confusion due to (B). When Auto-Expunging=On in Gmail IMAP, "store \Deleted flag at a Gmail Label(=an Mbox via Gmail IMAP)" == "Remove the Gmail Label immediaately". So, "Shift+Delete of Gmail IMAP in Tb" is identical to "Remove Gmail Label at Gmail Web". And, "Copy to a Gmail Label(=an Mbox via Gmail IMAP)" is identical to "Add the Gmail Label at Gmail Web". This is also design of Gmail IMAP. Because of this, you can do job of "Add/Remove Gmail Label" using Thunderbird, without using Gmail's Web Interface where usabiliy is not so well. Because "Gmail Labels of a mail" can be known by X-GM-LABEL, if X-GM-LABEL is fully utilized, "server access via Gmail IMAP for [Gmail]/All Mail, /Trash, /Spam only" is sufficient, because mail data is hels in one of these 3 Mboxes when accessed via Gmail IMAP. Advantage of "Access via Gmail Label(==Mbox)" is following only. "Order of Gmail Label is added" can be known by "Order Received" column value which is UID if IMAP folder. See bugs in dependency tree for meta Bug 402793 for particularity of Gmail IMAP, please.
I realized my Icedove 31 (Debian 8) is affected. Thunderbird 38 behaves the same. Summary for users: Using the Delete button and pressing the Delete key do the same. Neither Delete nor Shift+Delete completely delete the mail; the first moves it to [Gmail]/Trash, the latter leaves it in All mail.
I realized that the messages I had been deleting with Delete for months were still in my account, and not in Gmail's Trash. I figured out that I had changed "When I delete a message:" from the default "Move it to this folder:" to "Just mark it as deleted", surely hoping that would save me from having to command deletion twice. In fact, changing this setting to either Just mark it as deleted or "Remove it immediately" will not make Delete definitively erase mails, but will cause them to only appear in the All messages folder (note that it may take some seconds to notice that the mails do reappear there). Which means it will no longer be possible to actually delete in batches by going to Gmail's trash. You would have to re-select each mail you want to delete definitively one by one among the other messages in All messages. Bad idea.
> I thus withdraw my suggestion that the Shift-Delete functionality in Thunderbird be altered to fully expunge GMail mail as it does in other Thunderbird mail.
Status: NEW → RESOLVED
Closed: 6 years ago
Resolution: --- → INCOMPLETE
If I'm interpreting this correctly, the bug was closed on the basis that the reporter later chose to "withdraw my suggestion that the Shift-Delete functionality in Thunderbird be altered to fully expunge GMail mail as it does in other Thunderbird mail."? That suggestion was not the bug report, though. That suggestion was only one of several proposed remedies under discussion. The reported issue has not been addressed, and Thunderbird's (Shift-)Delete interaction with GMail remains unchanged. The report was in no way incomplete, and other possible remedies have been proposed and/or discussed over the course of it. Those other options have not been withdrawn, nor has the original report, merely one suggested possibility for how to address it.

Please reopen this bug because a simple solution is possible that could benefit everyone, irrespective of mail service provider: make forced deletion configurable the same as regular delete.

Users could then choose what suits them and GMail would have sensible defaults. Those who may be prone to accidental forced deletion can select a safer option. One could choose to move to two separate folders for regular and forced for "levels" of archiving. For GMail, the default could be either mark as deleted or remove immediately for regular delete to function as Remove label, and move to folder: Bin (Trash) for force delete would give the expected 30-day safeguard.

For now, an extension, though it really is just a workaround.

See Also: → 1759335
See Also: → 1649789

FRT, to delete from "all emails", one has to set Server setting "When I delete this message" to "Move to this folder (Trash)".

You need to log in before you can comment on or make changes to this bug.