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
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
- Remove the titlebar-color class which is now redundant with browser-titlebar
- Fix the specificity in the linux stylesheet ensuring titlebar toolbars show the theme's background images not the falback colors
Differential Revision: https://phabricator.services.mozilla.com/D224862