I’ve mapped over 650 obscure CSS selectors to elements along with where they sit in the DOM (Gmail’s code) and how they work. This took ~9 months and launched in February 2021. Then in May 2020, I took all I had learned and started rebuilding Simplify from scratch, to force myself to retest everything and look for better ways to detect, understand, and modify Gmail. The rest of 2019 was scaling up to support the many features and options I didn’t support at launch as well as keeping up with Gmail’s ever-changing code base. It was based on an extension I had built and maintained over the years for just me and a few friends. The first version of Simplify launched in April 2019. Here is the current state of the evolving system I’ve built up over the last 2.5 years to support all combinations of Gmail settings and user setups.įor starters, you build something and see where it breaks over time. So, how do you support billions of unique setups?ĭisclaimer: Feel free to skip this section as this gets technical. I’ve even built fixes for several obscure Gmail bugs around rich HTML emails. Anything Simplify does to messages or compose (maximum width, dark mode, font settings, etc) has to be careful not to break the messages themselves. On top of all that, there is the fact that email is inherently a container for other people's code (rich HTML emails). Taking into account just the items listed, our 115,200 unique setups easily jumps into the billions.īut wait, there’s more. Imagine what it’s like to support all these permutations. And Gmail installed as a PWA (Progressive Web App) changes a number of things with theming.Īnd then there are delegate accounts, vacation auto-responders, email signatures, attachment previews, and on and on. They also sometimes run on older versions of the browser which has made for some very interesting bugs. The code around these elements change in each mode.Įnabling offline adds buttons and changes how some things work.īrowser alternatives like Shift, Mailplane, and Flotato work differently as they don't truly support extensions, and instead just inject Simplify's code into Gmail manually. And messages can be inline, popped out, or shown in a print view. These have implications for things like date grouping, fonts, availability of certain features and options like right-to-left language toggle in compose, how much space is needed for various elements, and more).Ĭompose can be an inline reply, compose mole (mini window in the bottom right corner), full screen, or popped out into a separate browser tab. And there are actually two ways to set the language: (1) the OS language setting and (2) Gmail's own language setting which supports 73 languages. I resisted adding any options for a long time but eventually decided it was unavoidable. Other extensions and add-ons can dramatically change Gmail in many ways (Simplify plays nicely with and sometimes even improves over 30 other Gmail extensions and add-ons ) The upcoming design update is also rolling out to some Workspace accounts first. Workspace Accounts have a company logo next to the profile image and warnings about emailing people outside your domain. For instance, currently, Rooms is a feature only available to Workspace and it changes how the Nav is coded. Workspace Accounts differ in design and functionality from consumer accounts. There are other settings, setups, and ways to change how Gmail looks and works, bringing the number of unique setups into the billions. Ok, so actually, BILLIONS of unique Gmail setups. This adds up to 115,200 unique setups!! But that’s not all. Screen resolution ranges: 4x (1600px) Not included are (a) screen height (impacts things like the width of compose moles) and (b) the browser zoom level, which can cause numerous issues as well.īrowsers: 3x (Firefox, Safari, and all Chrome-based browsers) Reading pane options: 4x (Vertical split, Horizontal split, No split, and Disabled)Ĭhat mode: 3x (Hangouts, Google Chat, or disabled) Theme types: 5x (default theme, dark theme, high contrast theme, and color/image themes with either a dark or light interface) Inbox types: 5x (default inbox w/ tabs, default inbox without tabs, multiple inbox vertical, multiple inbox horizontal, and priority inbox) Each of the Gmail settings and user setups below acts as a multiplier on the number of unique Gmail setups that Simplify needs to support:
0 Comments
Leave a Reply. |
AuthorWrite something about yourself. No need to be fancy, just an overview. ArchivesCategories |