Also addresses bug 1933574 by changing the schema of saved tab groups so that they look the same as closed tab groups (that is, the saved tab groups' tabs list now has the same schema as the _closedTabs list).
Differential Revision: https://phabricator.services.mozilla.com/D230322
- Add a splitter that can be used to resize the launcher by dragging.
- Add "snapping points" to allow dragging to expand or collapse the launcher.
- Total sidebar width (launcher + panel) cannot exceed 75vw.
- Styling updates to show ellipses if labels are cut off due to resizing.
Differential Revision: https://phabricator.services.mozilla.com/D228705
- Add a splitter that can be used to resize the launcher by dragging.
- Add "snapping points" to allow dragging to expand or collapse the launcher.
- Total sidebar width (launcher + panel) cannot exceed 75vw.
- Styling updates to show ellipses if labels are cut off due to resizing.
Differential Revision: https://phabricator.services.mozilla.com/D228705
Adds `restoreTabGroup` to SessionStore, enabling a closed tab group or saved tab group to come back into the tab strip.
Includes more robust functionality for forgetting a saved tab group or closed tab group.
Differential Revision: https://phabricator.services.mozilla.com/D230011
- Add a splitter that can be used to resize the launcher by dragging.
- Add "snapping points" to allow dragging to expand or collapse the launcher.
- Total sidebar width (launcher + panel) cannot exceed 75vw.
- Styling updates to show ellipses if labels are cut off due to resizing.
Differential Revision: https://phabricator.services.mozilla.com/D228705
This patch adds a `closedGroups` array to the SessionRestore state, and
adds functionality that ensures closed tab groups end up in the closed
groups array and that closed tab counts respect closed groups.
This does not update `undoClosedTab` or any related methods. Attempting
to restore a closed tab group will result in an error.
Differential Revision: https://phabricator.services.mozilla.com/D226397
This patch adds a `closedGroups` array to the SessionRestore state, and
adds functionality that ensures closed tab groups end up in the closed
groups array and that closed tab counts respect closed groups.
This does not update `undoClosedTab` or any related methods. Attempting
to restore a closed tab group will result in an error.
Differential Revision: https://phabricator.services.mozilla.com/D226397
This patch adds a `closedGroups` array to the SessionRestore state, and
adds functionality that ensures closed tab groups end up in the closed
groups array and that closed tab counts respect closed groups.
This does not update `undoClosedTab` or any related methods. Attempting
to restore a closed tab group will result in an error.
Differential Revision: https://phabricator.services.mozilla.com/D226397
Refactor sidebar state persistence logic outside of SessionStore and into SidebarController and SidebarManager. Expose an API for session store to update state. If session store data is not available, use the backup state instead. Works for both "Never remember history" and "Use custom settings for history".
Differential Revision: https://phabricator.services.mozilla.com/D225220
Also move getDuplicateTabsToClose and getAllDuplicateTabsToClose away from essentials at the top, closer to related methods.
Differential Revision: https://phabricator.services.mozilla.com/D226279
Refactor sidebar state persistence logic outside of SessionStore and into SidebarController and SidebarManager. Expose an API for session store to update state. If session store data is not available, use the backup state instead. Works for both "Never remember history" and "Use custom settings for history".
Differential Revision: https://phabricator.services.mozilla.com/D225220
Refactor sidebar state persistence logic outside of SessionStore and into SidebarController and SidebarManager. Expose an API for session store to update state. If session store data is not available, use the backup state instead. Works for both "Never remember history" and "Use custom settings for history".
Differential Revision: https://phabricator.services.mozilla.com/D225220
Refactor sidebar state persistence logic outside of SessionStore and into SidebarController and SidebarManager. Expose an API for session store to update state. If session store data is not available, use the backup state instead. Works for both "Never remember history" and "Use custom settings for history".
Differential Revision: https://phabricator.services.mozilla.com/D225220
1908418 added tab groups and their tab relationships to each window. This patch will restore tab groups and the tabs within them.
Differential Revision: https://phabricator.services.mozilla.com/D224955
This adds tab groups and their state data to the session store. For any tabs that are in tab groups, this patch adds the group ID into the tab state.
This change has a number of limitations that will be addressed in future bugs. Most notably, tab groups will not be restored from session state -- this change just records the tab group state data. Another important limitation is that when users remove tab groups, they will no longer appear in the session store.
This patch is only intended to lay the initial groundwork for storing tab group data in the session store.
Differential Revision: https://phabricator.services.mozilla.com/D224348
This adds tab groups and their state data to the session store. For any tabs that are in tab groups, this patch adds the group ID into the tab state.
This change has a number of limitations that will be addressed in future bugs. Most notably, tab groups will not be restored from session state -- this change just records the tab group state data. Another important limitation is that when users remove tab groups, they will no longer appear in the session store.
This patch is only intended to lay the initial groundwork for storing tab group data in the session store.
Differential Revision: https://phabricator.services.mozilla.com/D224348
We can rely on the global pref for this. `setPosition` in `browswer-sidebar.js` looks
at the pref `sidebar-position_start` to determine "order" on `init` and on `reversePosition`
Differential Revision: https://phabricator.services.mozilla.com/D219906
These did nothing at the OS level on most OSes (see previous patch), and
were only used on tests, so just remove them.
Note that these were different from the alwaysontop feature, which
remains and is used for stuff like picture-in-picture.
Differential Revision: https://phabricator.services.mozilla.com/D214091