This patch makes saved tab groups use the "closed tabs" schema for storing tab data. This makes saved tab groups consistent with closed tabs and closed tab groups. The tab/tab group restoration code is built to work with the "closed tabs" schema, so this schema change allows saved tab groups to be restored correctly.
Bug 1933114 will add and improve the tests for restoring tab groups.
Differential Revision: https://phabricator.services.mozilla.com/D231818
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
- Created a SidebarState API to manage reactive properties for the controller.
- Replaced usages of sidebarMain.hidden with state.launcherVisible.
- Replaced usages of sidebarMain.expanded with state.launcherExpanded.
- Removed toggleExpanded() and toggleHide(), replaced with equivalent state toggles.
Differential Revision: https://phabricator.services.mozilla.com/D229558
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
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