Skip to content
Open
Show file tree
Hide file tree
Changes from 13 commits
Commits
Show all changes
17 commits
Select commit Hold shift + click to select a range
a7fb22c
feat: add intelligent tab grouping by similarity
matteomekhail Nov 4, 2025
8c9babd
Merge branch 'dev' into feature/group-tabs
mr-cheffy Nov 4, 2025
9f05d11
feat: AI-powered tab grouping with local ML models
matteomekhail Nov 12, 2025
889b02e
feat: enhance group tabs button UI with loading state and new icon
matteomekhail Nov 22, 2025
63d3439
Removed unnecessary !important
matteomekhail Nov 23, 2025
fabc9f9
Used nowfirefox's existing tab group implementation instead of custom…
matteomekhail Nov 24, 2025
e091e96
Icons separeted and not SVG inline now
matteomekhail Nov 24, 2025
77b45b3
Fix: Moved the ML Logic to an extra file
matteomekhail Nov 24, 2025
56176ef
feat: enhance vertical tabs UI with new separator styles and animatio…
matteomekhail Nov 24, 2025
dd44ef4
refactor: update vertical tabs CSS by removing deprecated styles and …
matteomekhail Nov 25, 2025
8956cfb
refactor: remove unused Services import from ZenTabsTidy.sys.mjs
matteomekhail Nov 25, 2025
c33c23c
refactor: optimize EngineProcess import by using lazy loading in ZenT…
matteomekhail Nov 25, 2025
4cf856e
refactor: update ZenTabsTidy import path and clean up zen-assets.jar.…
matteomekhail Nov 25, 2025
700fc53
Discard changes to locales/en-GB/browser/browser/zen-workspaces.ftl
mr-cheffy Dec 8, 2025
50b7b18
Discard changes to locales/it/browser/browser/zen-workspaces.ftl
mr-cheffy Dec 8, 2025
acb38ca
fix: hide group tabs button when browser.ml.enable is disabled
matteomekhail Dec 9, 2025
654a174
fix: increase timeout duration for tab grouping completion in ZenTabs…
matteomekhail Dec 18, 2025
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
50 changes: 29 additions & 21 deletions locales/en-GB/browser/browser/zen-workspaces.ftl
Original file line number Diff line number Diff line change
Expand Up @@ -3,53 +3,53 @@
# file, You can obtain one at http://mozilla.org/MPL/2.0/.

zen-panel-ui-workspaces-text = Other workspaces
zen-panel-ui-workspaces-create =
zen-panel-ui-workspaces-create =
.label = Create Space
zen-panel-ui-folder-create =
zen-panel-ui-folder-create =
.label = Create Folder
zen-panel-ui-new-empty-split =
zen-panel-ui-new-empty-split =
.label = New Split
zen-workspaces-panel-context-delete =
zen-workspaces-panel-context-delete =
.label = Delete Workspace
.accesskey = D
zen-workspaces-panel-change-name =
zen-workspaces-panel-change-name =
.label = Change Name
zen-workspaces-panel-change-icon =
zen-workspaces-panel-change-icon =
.label = Change Icon
zen-workspaces-panel-context-default-profile =
zen-workspaces-panel-context-default-profile =
.label = Set Profile
zen-workspaces-panel-unload =
zen-workspaces-panel-unload =
.label = Unload Space
zen-workspaces-how-to-reorder-title = How to reorder spaces
zen-workspaces-how-to-reorder-desc = Drag the space icons at the bottom of the sidebar to reorder them
zen-workspaces-change-theme =
zen-workspaces-change-theme =
.label = Edit Theme
zen-workspaces-panel-context-open =
zen-workspaces-panel-context-open =
.label = Open Workspace
.accesskey = O
zen-workspaces-panel-context-edit =
zen-workspaces-panel-context-edit =
.label = Edit Workspace
.accesskey = E
context-zen-change-workspace-tab =
context-zen-change-workspace-tab =
.label = Change Tab(s) To Workspace
.accesskey = C
zen-bookmark-edit-panel-workspace-selector =
zen-bookmark-edit-panel-workspace-selector =
.value = Other Workspace
.accesskey = W
zen-panel-ui-gradient-generator-algo-complementary =
zen-panel-ui-gradient-generator-algo-complementary =
.label = Complementary
zen-panel-ui-gradient-generator-algo-splitComplementary =
zen-panel-ui-gradient-generator-algo-splitComplementary =
.label = Split
zen-panel-ui-gradient-generator-algo-analogous =
zen-panel-ui-gradient-generator-algo-analogous =
.label = Analogous
zen-panel-ui-gradient-generator-algo-triadic =
zen-panel-ui-gradient-generator-algo-triadic =
.label = Triadic
zen-panel-ui-gradient-generator-algo-floating =
zen-panel-ui-gradient-generator-algo-floating =
.label = Floating
zen-panel-ui-gradient-click-to-add = Click to add a colour
zen-workspace-creation-name =
zen-workspace-creation-name =
.placeholder = Space Name
zen-workspaces-panel-context-reorder =
zen-workspaces-panel-context-reorder =
.label = Reorder Spaces
zen-workspace-creation-profile = Profile
.tooltiptext = Profiles are used to separate cookies and site data between spaces.
Expand All @@ -60,6 +60,14 @@ zen-workspaces-delete-workspace-body = Are you sure you want to delete { $name }
# Note that the html tag MUST not be changed or removed, as it is used to better
# display the shortcut in the toast notification.
zen-workspaces-close-all-unpinned-tabs-toast = Tabs Closed! Use <span>{ $shortcut }</span> to undo.
zen-workspaces-close-all-unpinned-tabs-title =
zen-workspaces-close-all-unpinned-tabs-title =
.label = Clear
.tooltiptext = Close all unpinned tabs

zen-workspaces-group-tabs-toast = Created { $count } { $count ->
[one] group
*[other] groups
}!
zen-workspaces-group-tabs-title =
.label = Group
.tooltiptext = Group tabs by similarity
8 changes: 8 additions & 0 deletions locales/en-US/browser/browser/zen-workspaces.ftl
Original file line number Diff line number Diff line change
Expand Up @@ -83,3 +83,11 @@ zen-workspaces-close-all-unpinned-tabs-toast = Tabs Closed! Use <span>{ $shortcu
zen-workspaces-close-all-unpinned-tabs-title =
.label = Clear
.tooltiptext = Close all unpinned tabs

zen-workspaces-group-tabs-toast = Created { $count } { $count ->
[one] group
*[other] groups
}!
zen-workspaces-group-tabs-title =
.label = Group
.tooltiptext = Group tabs by similarity
50 changes: 29 additions & 21 deletions locales/it/browser/browser/zen-workspaces.ftl
Original file line number Diff line number Diff line change
Expand Up @@ -3,53 +3,53 @@
# file, You can obtain one at http://mozilla.org/MPL/2.0/.

zen-panel-ui-workspaces-text = Spazi
zen-panel-ui-workspaces-create =
zen-panel-ui-workspaces-create =
.label = Crea Spazio
zen-panel-ui-folder-create =
zen-panel-ui-folder-create =
.label = Crea Cartella
zen-panel-ui-new-empty-split =
zen-panel-ui-new-empty-split =
.label = Nuova Divisione
zen-workspaces-panel-context-delete =
zen-workspaces-panel-context-delete =
.label = Elimina lo Spazio
.accesskey = D
zen-workspaces-panel-change-name =
zen-workspaces-panel-change-name =
.label = Cambia Nome
zen-workspaces-panel-change-icon =
zen-workspaces-panel-change-icon =
.label = Cambia Icona
zen-workspaces-panel-context-default-profile =
zen-workspaces-panel-context-default-profile =
.label = Imposta Profilo
zen-workspaces-panel-unload =
zen-workspaces-panel-unload =
.label = Scarica Spazio
zen-workspaces-how-to-reorder-title = Come riordinare gli spazi
zen-workspaces-how-to-reorder-desc = Trascina le icone degli spazi in fondo alla barra laterale per riordinarle
zen-workspaces-change-theme =
zen-workspaces-change-theme =
.label = Modifica Tema
zen-workspaces-panel-context-open =
zen-workspaces-panel-context-open =
.label = Apri Spazio
.accesskey = O
zen-workspaces-panel-context-edit =
zen-workspaces-panel-context-edit =
.label = Modifica Spazio
.accesskey = E
context-zen-change-workspace-tab =
context-zen-change-workspace-tab =
.label = Metti scheda/e su uno spazio di lavoro
.accesskey = C
zen-bookmark-edit-panel-workspace-selector =
zen-bookmark-edit-panel-workspace-selector =
.value = Spazi
.accesskey = W
zen-panel-ui-gradient-generator-algo-complementary =
zen-panel-ui-gradient-generator-algo-complementary =
.label = Complementare
zen-panel-ui-gradient-generator-algo-splitComplementary =
zen-panel-ui-gradient-generator-algo-splitComplementary =
.label = Dividi
zen-panel-ui-gradient-generator-algo-analogous =
zen-panel-ui-gradient-generator-algo-analogous =
.label = Analogo
zen-panel-ui-gradient-generator-algo-triadic =
zen-panel-ui-gradient-generator-algo-triadic =
.label = Triadico
zen-panel-ui-gradient-generator-algo-floating =
zen-panel-ui-gradient-generator-algo-floating =
.label = Fluttuante
zen-panel-ui-gradient-click-to-add = Clicca per aggiungere un colore
zen-workspace-creation-name =
zen-workspace-creation-name =
.placeholder = Nome dello Spazio
zen-workspaces-panel-context-reorder =
zen-workspaces-panel-context-reorder =
.label = Riordina Spazi
zen-workspace-creation-profile = Profilo
.tooltiptext = I profili vengono usati per separare i cookie e i dati dei siti tra gli spazi.
Expand All @@ -60,6 +60,14 @@ zen-workspaces-delete-workspace-body = Sei sicuro di voler cancellare { $name }?
# Note that the html tag MUST not be changed or removed, as it is used to better
# display the shortcut in the toast notification.
zen-workspaces-close-all-unpinned-tabs-toast = Scheda chiusa! Usa <span>{ $shortcut }</span> per riaprirla.
zen-workspaces-close-all-unpinned-tabs-title =
zen-workspaces-close-all-unpinned-tabs-title =
.label = Pulisci
.tooltiptext = Chiudi tutte le schede non bloccate

zen-workspaces-group-tabs-toast = { $count ->
[one] Creato { $count } gruppo
*[other] Creati { $count } gruppi
}!
zen-workspaces-group-tabs-title =
.label = Raggruppa
.tooltiptext = Raggruppa le schede per similarità
1 change: 1 addition & 0 deletions src/browser/base/content/zen-commands.inc.xhtml
Original file line number Diff line number Diff line change
Expand Up @@ -61,4 +61,5 @@

<command id="cmd_zenTogglePinTab" />
<command id="cmd_zenCloseUnpinnedTabs" />
<command id="cmd_zenGroupTabs" />
</commandset>
12 changes: 12 additions & 0 deletions src/browser/themes/shared/zen-icons/icons.css
Original file line number Diff line number Diff line change
Expand Up @@ -393,6 +393,18 @@
list-style-image: url('arrow-down.svg') !important;
}

.zen-workspace-group-tabs-button {
list-style-image: none;

& .toolbarbutton-icon {
display: none !important;
}

@media -moz-pref('zen.view.show-clear-tabs-button', false) {
Comment thread
mr-cheffy marked this conversation as resolved.
display: none;
}
}

.zen-workspace-close-unpinned-tabs-button {
list-style-image: url('dart-down.svg');

Expand Down
Loading