Commit Graph

64 Commits

Author SHA1 Message Date
zombie
0f0180e660 Bug 1961657 - Implement tabGroups.update and onUpdated r=robwu,tabbrowser-reviewers,dwalker,sthompson
Differential Revision: https://phabricator.services.mozilla.com/D246164
2025-04-25 13:44:44 +00:00
Stephen Thompson
f8fe0335c0 Bug 1938401 - tab group interaction metrics r=dwalker,sessionstore-reviewers,tabbrowser-reviewers
Records counts of user interactions with tab groups:

- expand a collapsed tab group
- collapse an expanded tab group
- rename a tab group
- change a tab group's color
- save and close a tab group
- delete a tab group
- reopen a deleted tab group
- ungroup a tab group
- move a tab group to a new window
- reopen a saved and closed tab group from the list all tabs menu
- reopen a saved and closed tab group from a URL bar suggestion
- reopen a recently closed tab group from the recently closed tabs menu

Differential Revision: https://phabricator.services.mozilla.com/D246123
2025-04-24 02:20:14 +00:00
Stephen Thompson
a69b839b0d Bug 1951859 Part 2 - set ARIA posinset/setsize on tabs in tab groups r=jswinarton,tabbrowser-reviewers
Set aria-setsize on grouped tabs to the number of tabs in the tab group. Set aria-posinset on grouped tabs to the 1-based index of the tab within the tab group. This allows some a11y tools to report to the user that a tab is, for example, tab "2 of 7" in a tab group.

The tab strip uses the `tablist` ARIA role. The ARIA spec and Firefox's a11y engine both forbid nesting `group` ARIA roles inside of `tablist`. As a result, a11y tools always read individual tabs as being tab "X of Y", where Y is the number of tabs in the tab strip and X is the index of the tab in the tab strip. This is good information, but it does not give the user a sense of where a tab is within a tab group.

Differential Revision: https://phabricator.services.mozilla.com/D245185
2025-04-15 19:49:58 +00:00
Stephen Thompson
a428585296 Bug 1951859 Part 1 - set aria-level on tabs r=jswinarton,tabbrowser-reviewers
Tabs outside of tab groups are at the top level (level 1) while tabs inside of tab groups are at the next lower level (level 2). This helps unsighted users get a better sense about the hierarchy of the tab strip.

Differential Revision: https://phabricator.services.mozilla.com/D245184
2025-04-15 19:25:18 +00:00
Cristian Tuns
064788b440 Backed out changeset 09282b03f0cf (bug 1951859) for causing eslint failures CLOSED TREE 2025-04-15 10:19:02 -04:00
Stephen Thompson
bfd5fbb4d0 Bug 1951859 Part 1 - set aria-level on tabs r=jswinarton,tabbrowser-reviewers
Tabs outside of tab groups are at the top level (level 1) while tabs inside of tab groups are at the next lower level (level 2). This helps unsighted users get a better sense about the hierarchy of the tab strip.

Differential Revision: https://phabricator.services.mozilla.com/D245184
2025-04-15 14:03:09 +00:00
Stephen Thompson
f2e07044ae Bug 1938424 - metrics event when tabs added to tab group r=dao,jswinarton,tabbrowser-reviewers,extension-reviewers,robwu
When using the tab context menu or drag-dropping tabs to put them into a group, record a metric for the number of tabs added to the group.

Data Science asked us to launch with this metric disabled so that they could control it using server knobs. They expect a high volume of events, so they expect to only enable this metric for some proportion of users.

I converted the existing `TabMove` event derived from `UIEvent` being fired when tabs change their tab index in the tab strip. `UIEvent` doesn't allow for attaching additional context/detail to the event. `TabMove` is now a `CustomEvent` that provides more context about the moved tab and it fires in more cases -- it's possible for the tab index not to change despite the tab having "moved" into/out of a tab group.

This approach would not capture tab movements that occur across multiple frames/event loop iterations.

Differential Revision: https://phabricator.services.mozilla.com/D244616
2025-04-11 13:52:22 +00:00
Jeremy Swinarton
34d9e59418 Bug 1938426: Record telemetry event when saving a tab group r=dwalker,tabbrowser-reviewers
Differential Revision: https://phabricator.services.mozilla.com/D242984
2025-03-27 15:29:19 +00:00
Dão Gottwald
3ba48b6655 Bug 1950904 - Use element index instead of tab index for the drop indicator. r=dwalker,jswinarton,tabbrowser-reviewers,perftest-reviewers,fbilt
Differential Revision: https://phabricator.services.mozilla.com/D239937
2025-03-19 15:07:53 +00:00
Dão Gottwald
f2fda56c21 Bug 1908439 - Drag and drop for moving a group within the window. r=dwalker,tabbrowser-reviewers,sessionstore-reviewers
Differential Revision: https://phabricator.services.mozilla.com/D239494
2025-03-07 01:58:05 +00:00
Goloman Adrian
e5e07cd91e Backed out changeset 58ef1accf6e7 (bug 1908439) for causing mochitest failures @test_tabbrowser.xhtml. CLOSED TREE 2025-03-07 02:42:12 +02:00
Dão Gottwald
0fb65f4185 Bug 1908439 - Drag and drop for moving a group within the window. r=dwalker,tabbrowser-reviewers,sessionstore-reviewers
Differential Revision: https://phabricator.services.mozilla.com/D239494
2025-03-06 22:20:21 +00:00
Dão Gottwald
8bce10cd45 Bug 1951939 - Save and close tab group when middle clicking the group label. r=jswinarton,tabbrowser-reviewers
Differential Revision: https://phabricator.services.mozilla.com/D240479
2025-03-06 13:18:26 +00:00
Dão Gottwald
4dd29317da Bug 1950298 - Mark group as seen when adding tabs. r=jswinarton,tabbrowser-reviewers
Differential Revision: https://phabricator.services.mozilla.com/D239517
2025-02-26 09:05:52 +00:00
Cristina Horotan
60fe94bdb8 Backed out changeset 5b4f48aac534 (bug 1950298) for causing bc failures at browser_tab_manager_groups.js 2025-02-26 04:20:46 +02:00
Dão Gottwald
09883fda4a Bug 1950298 - Mark group as seen when adding tabs. r=jswinarton,tabbrowser-reviewers
Differential Revision: https://phabricator.services.mozilla.com/D239517
2025-02-25 16:05:21 +00:00
Dão Gottwald
84ac654618 Bug 1949419 - Sort groups in "Add Tab to Group" sub menu in recently used order. r=dwalker,tabbrowser-reviewers
Differential Revision: https://phabricator.services.mozilla.com/D239177
2025-02-21 21:24:28 +00:00
DJ
a0b1928d27 Bug 1945169 - prevent a closing window from saving a group that is being adopted. r=dao,sessionstore-reviewers,tabbrowser-reviewers
Differential Revision: https://phabricator.services.mozilla.com/D237988
2025-02-13 19:39:28 +00:00
DJ
6fadf58d15 Bug 1942375 - Keep tab group manager UI in sync with browser state. r=dao,tabbrowser-reviewers
Differential Revision: https://phabricator.services.mozilla.com/D236944
2025-02-07 17:51:24 +00:00
Sandor Molnar
91a3d57c8b Backed out changeset eef63d507b52 (bug 1942375) for causing mochitest with vertical tabs enabled perma failures. CLOSED TREE 2025-02-07 12:07:00 +02:00
DJ
32a6b12a0a Bug 1942375 - Keep tab group manager UI in sync with browser state. r=dao,tabbrowser-reviewers
Differential Revision: https://phabricator.services.mozilla.com/D236944
2025-02-07 09:01:40 +00:00
DJ
8d61f15c5c Bug 1943032 - Localize tabgroup aria-label and description. r=dao,fluent-reviewers,tabbrowser-reviewers,flod
Differential Revision: https://phabricator.services.mozilla.com/D235640
2025-01-28 14:51:28 +00:00
Butkovits Atila
b76f85c5bf Backed out changeset 8fc3326bce7f (bug 1943032) for causing failures at browser_tab_groups_a11y.js. CLOSED TREE 2025-01-28 07:57:01 +02:00
DJ
c120fd16a2 Bug 1943032 - Localize tabgroup aria-label and description. r=dao,fluent-reviewers,tabbrowser-reviewers,flod
Differential Revision: https://phabricator.services.mozilla.com/D235640
2025-01-28 04:44:31 +00:00
Dão Gottwald
6892d26869 Bug 1941830 - In the all tabs menu, sort open groups by last accessed time. r=tabbrowser-reviewers,sthompson
Differential Revision: https://phabricator.services.mozilla.com/D234353
2025-01-16 04:24:52 +00:00
Dão Gottwald
9dc9702c7e Bug 1940545 - Prevent empty tooltip on unnamed tab groups. r=jswinarton,tabbrowser-reviewers
Differential Revision: https://phabricator.services.mozilla.com/D233666
2025-01-10 14:23:19 +00:00
Dão Gottwald
206b27689c Bug 1939593 - Unbreak ::first-letter for tab group labels. r=jswinarton,desktop-theme-reviewers,tabbrowser-reviewers,emilio
Differential Revision: https://phabricator.services.mozilla.com/D233347
2025-01-07 14:18:48 +00:00
Jeremy Swinarton
82d7acff7a Bug 1936015: Groups can be deleted after switching between horizontal and vertical tabs r=dao,sthompson,tabbrowser-reviewers
Differential Revision: https://phabricator.services.mozilla.com/D232925
2025-01-03 13:37:41 +00:00
Dão Gottwald
3336bd457a Bug 1937203 - Tab group panel should close when expanding/collapsing a group. r=jswinarton,tabbrowser-reviewers
Differential Revision: https://phabricator.services.mozilla.com/D232657
2024-12-19 20:30:41 +00:00
DJ
a807e8e024 Bug 1908431 - add basic support for tab groups in overflow menu. r=dao,fluent-reviewers,desktop-theme-reviewers,tabbrowser-reviewers,bolsson
Differential Revision: https://phabricator.services.mozilla.com/D232389
2024-12-19 12:04:19 +00:00
Stanca Serban
4db9e4acb2 Backed out 2 changesets (bug 1938187, bug 1908431) for causing xpcshell failures in test_providerOmnibox.js. CLOSED TREE
Backed out changeset 0449f79cb3bd (bug 1938187)
Backed out changeset 26bd70f6e763 (bug 1908431)
2024-12-19 06:26:36 +02:00
DJ
13502b2c42 Bug 1908431 - add basic support for tab groups in overflow menu. r=dao,fluent-reviewers,desktop-theme-reviewers,tabbrowser-reviewers,bolsson
Differential Revision: https://phabricator.services.mozilla.com/D232389
2024-12-19 03:08:11 +00:00
Dão Gottwald
468d6c6d01 Bug 1938054 - Add a zero width space to tab group labels so we always create a text node and get consistent layout even if the group is unnamed. r=jswinarton,tabbrowser-reviewers
Differential Revision: https://phabricator.services.mozilla.com/D232453
2024-12-18 13:58:29 +00:00
Dão Gottwald
8a2e7099f7 Bug 1934007 - Prevent empty group when attempting to group pinned tabs. r=jswinarton,tabbrowser-reviewers
Differential Revision: https://phabricator.services.mozilla.com/D231788
2024-12-11 16:21:34 +00:00
DJ
7da91bc6c5 Bug 1923652 - enable save & close for tab groups. r=dao,sessionstore-reviewers,tabbrowser-reviewers
Differential Revision: https://phabricator.services.mozilla.com/D229721
2024-11-22 16:46:19 +00:00
Dão Gottwald
ddc5737e8c Bug 1928166 - Maintain tab order when ungrouping. r=sthompson,tabbrowser-reviewers
Differential Revision: https://phabricator.services.mozilla.com/D228990
2024-11-14 19:52:58 +00:00
Jeremy Swinarton
8a3c3e1e4c Bug 1908422: Add closedGroups to SessionRestore for tab groups r=dao,sthompson,sessionstore-reviewers,tabbrowser-reviewers
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
2024-11-12 16:34:19 +00:00
Butkovits Atila
85eb562171 Backed out changeset 307c830b0d2b (bug 1908422) for causing failures at browser_tab_groups.js. CLOSED TREE 2024-11-08 21:50:37 +02:00
Jeremy Swinarton
f5892027d4 Bug 1908422: Add closedGroups to SessionRestore for tab groups r=dao,sthompson,sessionstore-reviewers,tabbrowser-reviewers
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
2024-11-08 17:29:38 +00:00
Alexandru Marc
f7c8138cf9 Backed out changeset 9e5edf53c876 (bug 1908422) for causing bc failures @ browser_tab_groups_a11y.js 2024-11-08 16:57:36 +02:00
Jeremy Swinarton
62d713d116 Bug 1908422: Add closedGroups to SessionRestore for tab groups r=dao,sthompson,sessionstore-reviewers,tabbrowser-reviewers
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
2024-11-08 13:53:19 +00:00
Stephen Thompson
8e4dfe1e0e Bug 1921814 - add keyboard focus for tab group labels r=dao,dwalker,desktop-theme-reviewers,tabbrowser-reviewers
This patch makes tab group labels "focusable" using the keyboard when the tab strip contains both tabs and tab groups.

Differential Revision: https://phabricator.services.mozilla.com/D226154
2024-11-05 16:52:19 +00:00
DJ
181219c0f1 Bug 1923651 - implement "move group to new window" in tabgroup edit menu. r=dao,tabbrowser-reviewers
Differential Revision: https://phabricator.services.mozilla.com/D226325
2024-10-31 15:01:07 +00:00
DJ
079c3f85da Bug 1926293 - handle moving tabs into groups across windows. r=sthompson,tabbrowser-reviewers
Differential Revision: https://phabricator.services.mozilla.com/D226729
2024-10-28 14:15:58 +00:00
Dão Gottwald
75cf3245b3 Bug 1925738 - Use text-align:center on group label. r=jswinarton,tabbrowser-reviewers
Differential Revision: https://phabricator.services.mozilla.com/D226217
2024-10-21 14:16:32 +00:00
Jeremy Swinarton
0323d4afe9 Bug 1918712: Context menu to remove tab from group r=dao,fluent-reviewers,tabbrowser-reviewers,bolsson
Differential Revision: https://phabricator.services.mozilla.com/D224480
2024-10-16 15:18:21 +00:00
DJ
7d6283ad1c Bug 1908433 - Add UI for editing an existing tab group. r=jswinarton,dao,fluent-reviewers,desktop-theme-reviewers,tabbrowser-reviewers
Differential Revision: https://phabricator.services.mozilla.com/D223876
2024-10-09 14:49:18 +00:00
DJ
d6722b5ab0 Bug 1908426 - add UI to edit group label / color after creation. r=jswinarton,dao,fluent-reviewers,desktop-theme-reviewers,tabbrowser-reviewers,bolsson
Differential Revision: https://phabricator.services.mozilla.com/D222017
2024-10-02 00:48:13 +00:00
Jeremy Swinarton
f7d52456e8 Bug 1918710: Move tab to tab group from tab context menu r=dao,fluent-reviewers,tabbrowser-reviewers,bolsson
Differential Revision: https://phabricator.services.mozilla.com/D222487
2024-10-01 17:25:28 +00:00
Butkovits Atila
883f96f3dd Backed out changeset 2e5b4312b174 (bug 1908426) for causing failures at browser_tab_groups.js. CLOSED TREE 2024-10-01 13:17:36 +03:00