inboxy
inboxy copied to clipboard
Potential Issue: Selected emails remain checked after action has been taken
I noticed a potential issue when applying an action to multiple emails at the time. The action specifically is "Move to" or "apply label".
Assumptions:
- Label A is collapsed (emails are not visible)
- Label B is collapsed (emails are not visible)
- Label C is collapsed (emails are not visible)
Example data:
[Label A]
- Email 1
- Email 2
- Email 3
[Label B]
- Email 4
- Email 5
- Email 6
[Label C]
- Email 7
- Email 8
[Label D]
- Email 9
Steps:
- Expand [Label A]
- Select Email 4 & Email 5 (use the checkbox)
- Apply Action (Move to [Label B]
Result:
- Email 4 & Email 5 were moved to [Label B]
- Email 4 & Email 5 are still selected, even though a new label was applied.
- Label B is highlighted (because of #2)
Another Step
- Expand [Label C]
- Select Email 7 (use checkbox) 3, Apply action (Archive/Delete)
Result:
- Email 7 was deleted/archived
- Email 4 & Email 2 was deleted/archived (because these emails were not unchecked after I applied Label B).
This is standard gmail behavior and it works well when you can see all the emails in front of you, however once the emails are grouped by label (inboxy) and label is applied - it seems that those emails are no longer selected, because you can no longer see them.
The label B is highlighted & collapsed, however as a user, I did not realize that those emails were still checked and the following action will also apply to Email 4 & 5. In addition, when I execute delete/archive - I don't really see Email 4 & 5 get removed, because they are not visible (Label B is collapsed).
It's not really a bug, but I think the solution is necessary or people will start bragging about how quickly they hit inbox zero haha!
A possible solution could be to deselected all the emails IF the user expanded another label.
Thanks!
Thanks for being so thorough!
Before expanding Label C (i.e. right after applying the new label), is Label B still expanded?
If so, then I think Email 4 & 5 will still be visible to the user and roughly in the same position as before the new label was applied.
If all emails are deselected when the user opens another bundle, then you wouldn't be able to select emails from different bundles and apply the same actions to them at once. (Of course, unintentionally deleting emails isn't great either.)
Some other (rough) ideas
- When collapsing a bundle that has selected emails, keep the selected messages visible but hide the unselected messages. UI for this might be tricky to figure out.
- Add a checkbox to the bundle row. The checkbox may or may not be interactive, but it could be a stronger visual indication than the blue color, that emails in the collapsed bundle are selected. This might not help if you have a very long page.
- After performing an action, deselect messages. This might surprise some users, since this is the opposite of what Gmail does.
Before expanding Label C (i.e. right after applying the new label), is Label B still expanded? Label B never gets expanded, because we are not really working in "Label B", but instead we are executing actions in Label A + C.
Also, it seems that I can only have one label expanded at a time, which I personally like.
To add, because Label B is never expanded, and in my case, Label B was not visible on the screen, because it was somewhere at the bottom of the page, so I was not even aware of what was going on. (I believe that is because labels are sorted by last email date and the emails I'm moving can be weeks apart (assuming it would be on the same "page").
I agree that unchecking emails after certain action would change the default behavior and would not really work.
Perhaps, having a clear indication that there are X messages selected outside this label would solve the problem? Later on, you could add to "deselected 2 messages from another group" which would make things clear and simple.
However, I do believe that the indication is necessary , given that most new users will take the time to create labels and move many emails from label to label to organize their inbox.
Here's what I had in mind:
I misunderstood the steps at first, but I think I understand now. When you move messages to different labels, they might move out of view, especially if you're moving a message that's not the first in a bundle.
In that case, the ideas I mentioned earlier don't solve the problem.
The solution you suggested would definitely help. Or maybe the new bundle can be expanded and the page could scroll to show the new bundle, so that the messages you are working with will remain in view.
I think your proposed method would work in most cases, however if there are a lot of emails in the list + emails are moved to multiple labels, it might overwhelm the user.
At the same time, take a look at this, it is somewhat related (I believe the outcome of expanding bundles would result in similar outcome).
Issue: https://github.com/teresa-ou/inboxy/issues/8
I don't know if people would want to continue to apply actions to emails that they've already moved to another label. My intent was to be aware of the emails selected at the time they are going to take next action.
I just realized another very important thing: Assuming user does not realize and continue to move additional emails from label to label e.g total of 20 emails moved to misc labels and at the end, he checks this one email to be archived/deleted - it will archive/deleted 21 emails total. (All the previous selections remain active, regardless on how many times you apply labels. Even if the user realizes that 21 emails have been archived, he can still UNDO, however all those 20 emails will have numerous labels that are not valid.
If anything, I would suggest to add simple indication if there are any messages selected outside the active group.
Thanks!