snoozz-tab-snoozing
snoozz-tab-snoozing copied to clipboard
Cloud Storage in compatible browsers
A huge feature that is missing is the ability to sync tabs between two different browsers (eg work and personal computer). I've been doing a lot of research into migrating from local storage to synced storage. Here's what needs to be done
Settings page
- [x] Dropdown to toggle synced storage on
- [ ] Fail box - account sync is not enabled
- [ ] Fail box - storage is full
- [ ] Fail box - No internet connection
- [x] Fail box - wtf is going on
- [ ] Warning on history setting (synced option)
- [x] Storage Used UI to warn user if storage is becoming full
Background
- [ ] SaveQueue for saving storage and options (2 requests / 1 second rate limit) - maybe just use js timeouts/intervals?
- [ ] Make sure alarm only activates on current device (need a solution for race conditions)
- [ ] Sync local storage with cloud storage
Dashboard
- [ ] Cloud icon (failure)
- [ ] Cloud icon (success)
- [ ] Cloud icon animation (sync in progress)
- [ ] Cloud icon tooltip
I tried to build this, but have been unable to figure out a good way to ensure that your tabs will only be woken up by one browser. I had a branch, but it was really buggy so will start from scratch again after other features are built
Short Update
I have figured out a solution to get synced storage working. The only requirement is that you will need to have an active internet connection to wake up any tabs. if your internet is not connected, they will not wake up. I'll probably have some messaging to explain this on the settings page and in the nap room.
But I've ran into another roadblock. The synced storage size limit per "bucket" for a WebExtension is capped at 8kb. You can have a total of 102kb in your synced storage. Currently Snoozz only uses two "buckets"- one for all your tabs, and one for settings.
In my current Nap room, I have 23 tabs/windows worth of history using around 17kb of data. This is easily over the limit with not even a huge amount of tabs. I'm definitely planning to stop saving favicons locally, to save some space, but even then I will need to rework the way tabs are stored so that I dont cross the 8kb limit. Even then you will be capped at 512 different snoozed tabs (but I dont think this will be that much of an issue)
Long story short, Snoozz will get synced tabs - I just need to figure out how to make it play nicely with storage limits. This will require a complete rewrite for the way tabs and windows are stored on Snoozz.
So long as the rewrite is beneficial in other ways as well, or at least not negative in any respect, then sync seems like a nice feature. I would just hate to see a lot of work put into it (i.e. rewrite of tabs/window storage) just for this feature. At the least the 512 limit should apply only if you are syncing.
How much support does this feature request have? Or is it personally of interest/use to you?
in addition to cloud sync, can you please allow us to export and import sleeping tabs?