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
When closing the last visible tab, if there are any collapsed tab groups, make one of the tabs in a tab group active. Based on pre-existing behavior, activating a tab in a collapsed tab group causes the tab group to expand.
Currently, if you close the last visible tab while you still have collapsed tab groups present on the tab bar, the browser window will close. This is surprising and sad behavior for users.
Differential Revision: https://phabricator.services.mozilla.com/D228274
As per discussion with UX, we might want the toolbox background to be
different in (some of) our default themes in this case, but that seems
orthogonal, and this seems somewhat straight-forward.
Differential Revision: https://phabricator.services.mozilla.com/D227494
- you can now drag and drop when there are only 2 or 3 pinned tabs
- the position of the dragged tab has been fixed when scrolling overflow
Differential Revision: https://phabricator.services.mozilla.com/D227992
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
Currently, we provide a visual indicator + functionality to create a new tab group by dropping any tab onto any other tab. We think users will generally only use this to create new tab groups between standalone tabs; users are probably more likely to be making a mistake if they end up creating a new tab group by dropping a tab onto another tab that's already in a tab group. In order to prevent that, this patch just turns off the ability to create a new tab group by dropping onto any grouped tab.
Differential Revision: https://phabricator.services.mozilla.com/D228381
When all 9 tab group colors are in use, drag-drop code picks a random tab group color to highlight the tab drop target if the drop will create a tab group. The random pick is executed once per dragover event, so the color appears to change a few times a second. Kinda cool but distracting.
This patch chooses the next new tab group color on dragstart, saves that color on the drag data, and uses that color for all of the presentation + logic for creating a new tab group from a drop. The color will still be random when there are many tab groups, but the color will stay the same throughout a single drag operation.
Differential Revision: https://phabricator.services.mozilla.com/D228386
Fixes a number of edge cases where tabs created/inserted in the tab strip were incorrectly being placed inside of an adjacent tab group or incorrectly being placed outside of the intended tab group
Differential Revision: https://phabricator.services.mozilla.com/D226705
Also make sure to select another tab if unloading the currently selected
tab (or Firefox View if unloading all tabs in the window) and handle
multiselect.
Differential Revision: https://phabricator.services.mozilla.com/D226346
* Set the 'tabs-hidden' attribute on the #navigator-toolbox instead of the #nav-bar
* Add a --urlbar-padding-block variable for the padding around the urlbar
Differential Revision: https://phabricator.services.mozilla.com/D226568
This will only work when the pref is enabled (browser.history.collectWireframes), and is being landed primarily
to allow some expanded testing to see if it's worth cleaning this up further and turning it on.
Differential Revision: https://phabricator.services.mozilla.com/D226080
Ideally the line should cover the whole group, but I don't know that we can do this given our use of display:contents. If someone has ideas we can file a followup on that. As it stands the line will extend under dragged tabs themselves, but left or right from those there can be gaps in the line.
Differential Revision: https://phabricator.services.mozilla.com/D226634
Also make sure to select another tab if unloading the currently selected
tab (or Firefox View if unloading all tabs in the window) and handle
multiselect.
Differential Revision: https://phabricator.services.mozilla.com/D226346
Also move getDuplicateTabsToClose and getAllDuplicateTabsToClose away from essentials at the top, closer to related methods.
Differential Revision: https://phabricator.services.mozilla.com/D226279