leggett / simplify

Issue tracker for Simplify Gmail, a browser extension to simplify Gmail's interface
https://simpl.fyi
1.64k stars 103 forks source link

Conflicting labels cause weird bundling (with a couple suggestions) #788

Open jakelauer opened 8 months ago

jakelauer commented 8 months ago

If an email receives two labels, it will end up in two bundles at the same time. This causes some confusion for me, because my bundles have purposes - I may draw different conclusions about an email based on the bundle in which it appears.

For instance, if I have an email which gets marked as both "Newsletter" and "Important", I might archive it without thinking if I open up my Newsletter bundle first.

A couple ideas for avoiding this:

Anyway, just some ideas!


Simplify v.3.1.3 configuration: aAX appNavOff avatarsInList avatarsZoom boldHighlight bundleInbox caA caI caL caS cfC cfO cfQ cfR cfU composeActions composeFab dateGroup defaultTheme fontList fontMsg fontNav gaArchive gaRemove groupHideFirst groupInbox groupOtherLists hideAds hideExtWarn hideFileIcons hideImportance hideInboxHideAllLink hideLabelChips hideListCount hideMsgCount hideMsgReactions hideMsgReplies hideNavLabels hideSignatures hideTabIcons importantBadge inInbox inList invertAddons invertCompose izBgDefault lightTheme listWidthXLg lowDensity maDone maLabel maMove maPin maTask matYou msgWidthSm nPane navOpen newNav newUI reminders rightImportance rightLabels rightStar sendLater simplify simplifyPrefsOpen unreadDot vPane1line- System: Mozilla/5.0 (Macintosh Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/120.0.0.0 Safari/537.36 - gmail.pinto-server_20240104.06_p1 - Window: 1728 x 972 (100pct zoom) - Language: en - Errors: / 11589:52: Uncaught TypeError: Cannot read properties of null (reading 'previousSibling')

leggett commented 8 months ago

This is definitely a tough situation to handle. I don't think the first two approaches are tenable. The first one is way too complicated. The second one is too unpredictable.

The third one could be made better if I add an option to hide the label for the expanded bundle. You would still need to expand the bundle to see what is in it but to your original scenario... You open the Newsletter bundle and instead of every message having a "Newsletter" label and one having a "Important" label (might be easy to miss), you would only see labels that aren't "Newsletter" making it more likely you see the "Important" label

There might be a way to hint at this in the collapsed bundle too (maybe I show other labels to the far right) but I'm not sure.

There are other things you might consider doing:

jakelauer commented 8 months ago

I agree with everything you've said. I hoped against hope that the first one wasn't all that complex given that Simplify already provides a way to skip bundling for labels, but it sounds like they are different enough to be problematic.

Part of the reason this matters is because Gmail's filtering is honestly super rudimentary - there's no way to reorder filters without exporting them all, editing the XML file, and re-importing, and there's no way to stop processing filters. This makes it super tough to write filters to avoid multiple labels. I'm tempted to write a filter manager extension!

leggett commented 8 months ago

Sounds good. Do you think what I described would help your situation?

I hope to tackle filters at some point. It might even be what tips me into offering more functionality if you give me limited API access (I believe you can ask for API access to just filters).

jakelauer commented 8 months ago

The colors help a bit, since I know to look for it. I think that's kinda the crux of the issue - if you know to look for it, it's not so bad, but the whole point is that you might not look.

Filters could work well if managed appropriately. You could even implement a faux "stop processing" system for any filter thusly:

The good news is I never gave a rat's ass about any of this until now because labels were pretty useless for me, but now that you've added Bundles, labels (and by extension, filters) are supercharged with value.

Does nesting labels affect this system at all?

leggett commented 8 months ago

Bundles work fine with nested labels. I don't truncate long label paths in the same way that Gmail does which makes them a little worse but I think I can fix that.