GitHub Repository for the Augmented Tabflow Chrome extension.
- Whenever you change manifest-dev.json, change manifest-prod.json accordingly.
- Restart dev server whenever you change manifest-dev.json, manifest-prod.json or anything in public.
- have keyboard shortcut for moving between the most recently focused pinned tab and back, probably
- document Alt+E for opening options menu and selecting from closed tab groups
- document Alt+Shift+P for creating new tab groups
- document Alt+Shift+W for closing groups and Alt+Shift+C for new tabs in groups
- have a discarded tabs tab and hide discarded tabs from the main views
- don't be continuously altering bookmarks when not inside a bookmarks session
- don't open new navigation dialog when the current tab is a navigation dialog (that is, one being used to edit the url of another page)
- add tab suspension features
- remove navigation box from history and history stack
- for closing tab groups, move them to a new window and close the window
- for "Close ALl Session Windows", just deactivate any active sessions and close all windows
- implement backups for sessions
- open only one instance of session manager at a time
- work around protocol bug with semicolons in search terms
- fix bug with moving ungrouped tab groups, i.e, they sometimes don't appear
- fix bug with entire session contents disappearing on close, etc
- fix html rendering in navigation box. render as text content instead
- show loading spinner on
unloaded
too - reduce toast time and store most recent notifications
- don't close tabs individually, close windows instead
- don't save chrome extension tabs
- reinit pinned tabs on startup / try discarding them instead / check to see if they're already there before reiniting them
- revamp session saving to enable proper syncing (no more going to be a major revamp. just dedupe tab groups and tabs whenever session tabs change)
- implement
navigationBox
with popup window (maybe not) - opening the navigation box should affect the
antecedentTabInfo
more subtly / add shortcut for open new tab in current tab group (make use of tab referrer option) - maximize
navigationBox
- press center button to switch to active tab group space
- implement swiping to change tab group space and document it by adding the ff to help page:
or by swiping left and right with two fingers
- implement alert for when bookmark nodes can't be found
- switch to new session on save
- implement overwrite session with current unsaved session feature
- implement shortcut for moving to previous tab
- ask user to re-open new session material (it's unclear what I mean here but I'm keeping it just in case I vaguely remember and this drives it home)
- collapse all tab groups button
- add
Grouping Options
for tabs and tab groups to reduce clutter - reconcile newly opened session with last recorded session
- add overflow for navigation box
- reduce flashes when closing session windows
- implement tab history stack
- add window manipulation options through action buttons (eg. support moving whole windows)
- fix slight color change issue on tree item text hover
- always aggregate all
Ungrouped
tab group data after importing or exporting - implement sharing of sessions through plain copied text and through files (
Create Session From Text
,Create Tab Group From Text
,Share Session
andShare TabGroup
) - implement omnibox opensearch stuff with
activeTab
permission restrictions in mind - add badge for address (maybe) with reload, forward and back buttons
- add commands to group tabs according to domain, title similarity and other stuff
- load all stub pages on startup to ensure that correct icons and titles are shown in chrome tab strip
- implement recently closed tab groups feature
- support moving pinned and ungrouped tab groups to new windows
- implement a feature to export tab or tab group to any arbitrary bookmark folder in
Other Bookmarks
and/orReading List
- implement a feature to view reading list
- Show whether or not the tab was successfully added to or is already on
Reading List
- Use the
Move Or Copy Tab To Session
dialog - consider adding button to "look inside" tab groups and import individual tabs
- break large files into smaller files (look at
NavigateDialog.tsx
andtabGroupTreeContent.tsx
) - use
Array<T>
to type arrays - use
await
anywhere it makes sense. don't useasync-await
in array filter functions though - use early returns anywhere it makes sense
- migrate fully to JSX
- general code inspection and refactoring
- inspect and verify types across entire codebase
- organise imports
- refine and organise user-facing text. look for anything in quotation marks like "Error!" and such. make use of full stops
- capitalize all instances of
url
- change
setTimeout
's toawait wait()
- add last icon(s) in toolbar for
Settings
andActions
orSettings And Actions
- add all chrome internal pages to search suggestions
- use ctrl+click for alternate click behaviour eg. copy instead of move
- implement group select and bulk actions for various functionality
- collapse tree items in export dialog when done with exporting tab or tab group
- make session trees and other dialog trees react to the necessary app state changes
- litter the code with comments and ui alerts
- optimize for performance
- implement
pathNameToUrl
utility - check
migrateAndDedupe
function - use
updateComplete
instead ofsetTimeout
for waiting for components to change their state - implement better and more ergonomic error handling and fallbacks. look for keywords
async
,await
,error
,@
,@error
,@fallback
,@maybe
,@handled
,@handle
,@revisit
,until
andchrome
- use more thoughtful error messages
- type
setStorageData
,subscribeToStorageData
andgetStorageData
for automatic inference - type
sendMessage
andsubscribeToMessage
for automatic inference - notify users of errors that happen in service workers through message
chrome.runtime.message
- handle errors in timeouts as well
- type drag-and-drop code
- refine fallback code
- add test suite
- look out for instances of typescript
!
's in the codebase - look out for uses of typescript
as
's in the codebase - add
| Undefined
to allArray
types - (maybe) implement "check for updates" feature
- (maybe) revisit not updating session data on title change of tab
- (maybe) don't update bookmarks on tab title update
- (maybe) move all ungrouped tabs to the end always
- (maybe) create ui for editing commands
- (maybe) create utils for try catch notify (separate ones for service worker and async content fns with fallbacks)
- (maybe) add splitscreen button for windows
- (maybe) limit number of toasts to be show at a time
- (maybe) add option for showing more options for tabs and tab groups
- (maybe) implement search for sessions and tabs (already implemented in browser for tabs)
- (maybe) implement ability to sort sessions alphabetically or by date added
- (maybe) implement action center and add new shortcuts
- (maybe) implement manual theme switcher
- (maybe) reduce minimum chrome version
- (maybe, please be careful) delete unneeded icons. be sure not to break anything. look for instances of
icon
andsl-icon
element withname="<icon-name>"
- (maybe) implement internationalization
- try updating the tld list from time to time