Commit Graph

2864 Commits

Author SHA1 Message Date
Mr. M
7db203ca77 fix: Small fixes with the folder database, b=no-bug, c=tabs, folders, workspaces 2025-08-26 16:31:59 +02:00
Mr. M
5fdeec7139 Merge branch 'dev' of https://github.com/zen-browser/desktop into dev 2025-08-26 10:01:11 +02:00
Mr. M
c61891fe2b fix: Fixed context menu SVGs not having the correct color, b=no-bug, c=folders, workspaces 2025-08-26 10:01:06 +02:00
mr. m
c607e1a4b1 feat: Improve native feel for windows themes, b=no-bug, c=tabs 2025-08-25 19:56:52 +02:00
Mr. M
d2a6e18452 fix: Fixed icon aligments issues, b=no-bug, c=common, folders 2025-08-25 19:41:48 +02:00
Mr. M
c673db42aa feat: Small quality checks before release, b=no-bug, c=folders, common, tabs 2025-08-25 14:11:54 +02:00
mr. m
61aeceb467 fix: Fixed ungrouping a folder not updating the last saved group, b=no-bug, c=no-component 2025-08-25 01:07:06 +02:00
mr. m
1e8fad2fda fix: Fixed tab scrolling when there's an overflow and default kbs, b=no-bug, c=tabs, folders, kbs 2025-08-25 01:02:20 +02:00
Mr. M
bfbf5cce61 fix: Iterate through active folder tabs instead of all tabs, b=no-bug, c=common, folders, workspaces 2025-08-24 23:24:31 +02:00
octaviusz
5afc6cd7d0 fix: improve tab selection for collapsed folders, p=#9977
Co-authored-by: Mr. M <mr.m@tuta.com>
Co-authored-by: mr. m <91018726+mr-cheffy@users.noreply.github.com>
2025-08-24 01:21:25 +02:00
Mr. M
9dff069011 feat: Added zen.tabs.open-pinned-in-new-tab pref, b=no-bug, c=common, compact-mode, folders 2025-08-23 19:58:40 +02:00
octaviusz
6b5131bbde feat: Enhance folder creation with split-view groups (#9968) 2025-08-22 13:45:39 -07:00
octaviusz
777bbfeef1 feat: Multiselected tabs support for folders, p=#9941
* feat: Multiselected tabs support

* refactor(folders): Store active tabs as direct references in folders and better handling collapsed items

* fix: Refine tab visibility and state management

* feat:  Add ungroup for multiple selected tabs drag and drop, b=no-bug, c=folders, tabs

* fix: Fixed wrong calculation of indentation and other small refactoring, b=no-bug, c=common, folders, tabs

* fix: Fixed restoring split views, b=no-bug, c=folders, workspaces

* test: Added tests for visible tab, b=no-bug, c=folders, tests, tabs

* feat: Folder active tabs are always visible, b=no-bug, c=folders

* fix: Fixed duplicate tabs appearing on the tab search list, b=no-bug, c=folders

* feat: Added support for active folder unload, b=no-bug, c=folders

* fix: first implementation `expandToSelected`

* fix: Formatting

* fix: Some minor fixes, b=no-bug, c=folders, tabs

* fix: Improve collapse visible tab function, b=no-bug, c=folders

* test: Added folder level tests, b=no-bug, c=folders, tests

---------

Signed-off-by: mr. m <91018726+mr-cheffy@users.noreply.github.com>
Co-authored-by: mr. m <91018726+mr-cheffy@users.noreply.github.com>
Co-authored-by: Mr. M <mr.m@tuta.com>
2025-08-22 09:57:12 -07:00
Mr. M
af73ce2f9c Merge branch 'dev' of https://github.com/zen-browser/desktop into dev 2025-08-21 10:59:54 +02:00
Mr. M
a4c47565be fix: Fixed flashing the urlbar when there are mutations on the DOM, b=no-bug, c=common 2025-08-21 10:59:49 +02:00
octaviusz
c1e2c7ec36 fix: Fixed zen-empty-tab movement while inserting items into a group (#9948) 2025-08-21 10:45:51 +02:00
Mr. M
d2e0a38bf3 chore: Preprocess SVG licenses and other small fixes, b=no-bug, c=folders, common, media, glance, tabs, tests, welcome 2025-08-20 13:49:14 +02:00
Mr. M
e7a9aba3c0 fix: Fixed restoring folders not working when the empty tab is not first, b=no-bug, c=folders, tabs, tests 2025-08-19 14:17:35 +02:00
Mr. M
d8196c58ab Merge branch 'dev' of https://github.com/zen-browser/desktop into dev 2025-08-18 20:11:52 +02:00
Mr. M
d216114364 feat: Imrove border spacing for no-separation in compact mode and other small tweaks, b=no-bug, c=compact-mode, folders, workspaces 2025-08-18 20:09:07 +02:00
octaviusz
f95f245644 fix: Remove overflow: hidden from tabs container (#9923) 2025-08-18 19:26:01 +02:00
Mr. M
e06402f468 chore: Clean up old prefs and fixed small details, b=no-bug, c=common, folders, workspaces 2025-08-17 19:00:24 +02:00
Mr. M
25087e3cbf fix: Fixed 'switch tab' not working when tabs are unloaded, b=no-bug, c=workspaces 2025-08-17 17:09:38 +02:00
Mr. M
bc100ae8e2 feat: Added 'add subfolder' context menu item, b=no-bug, c=folders, tabs 2025-08-17 16:18:22 +02:00
Mr. M
942606f82b chore: Move ffprefs to the import script from build, b=no-bug, c=no-component 2025-08-17 15:10:25 +02:00
Mr. M
c020106535 Merge branch 'dev' of https://github.com/zen-browser/desktop into dev 2025-08-17 15:08:36 +02:00
mr. m
bf66df57b1 feat: Changed 'expand folder' to 'unpack folder' and fixed pressing TAB on the URL while in compact mode, b=no-bug, c=folders, common, compact-mode 2025-08-17 03:56:06 +02:00
mr. m
129b8efb39 fix: Added more SVG icons and fixed the sizes, b=no-bug, c=common, folders 2025-08-17 02:51:41 +02:00
octaviusz
ce2311c086 feat: Improved indentation when dragging tabs and folders (#9908)
* feat: Improved indentation when dragging tabs and folders

* fix: Formatting
2025-08-16 11:09:53 -07:00
Mr. M
f2fcee9605 test: Added tests for folders opening from owner tabs, b=no-bug, c=folders, tests, tabs 2025-08-16 17:20:20 +02:00
octaviusz
8d15c9ef49 fix: Test test_Split_View_Inside_Folder (#9902)
* fix: Test `test_Split_View_Inside_Folder`

* fix: Extra `ungroupTab` call
2025-08-15 20:25:48 +02:00
octaviusz
5dcc6d5f44 fix: During session restore insertBefore creates an extra group for (#9899) 2025-08-15 18:26:41 +02:00
Mr. M
4e2dfd8a13 test: Added tests for tab group expand and collapse, b=closes #9885, c=tabs, folders, tests, workspaces 2025-08-14 18:00:13 +02:00
mr. m
199da1f824 chore: Updated to firefox 142.0, p=#9870
* chore: Updateed to firefox 142.0, b=no-bug, c=l10n, folders

* chore: Finish updating to firefox, b=no-bug, c=tabs

* chore: Fixed mods builds, b=no-bug, c=mods

* feat: Small changes to tabs layout, b=no-bug, c=tabs, compact-mode, folders, workspaces

* test: Fixed tests, b=no-bug, c=scripts, tests, folders

* test: Fixed tests, b=no-bug, c=tabs, tests, welcome
2025-08-13 23:21:38 +02:00
mr. m
bf69ac13b2 fix: Fixed compact mode hovering showing the urlbar for a moment, b=no-bug, c=workspaces, compact-mode, tests 2025-08-11 18:48:36 +02:00
octaviusz
3229126f14 fix: Split view group have an extra group after session restore (#9841) 2025-08-10 17:47:20 -07:00
Mr. M
f07c1a5f24 fix: Fixed splitting tabs inside groups, b=no-bug, c=no-component 2025-08-09 13:38:50 +02:00
Mr. M
9e6cafa9bd fix: Fixed restoring folders when session restore is disabled, b=no-bug, c=tabs, folders 2025-08-09 13:25:32 +02:00
mr. m
82e0f0609a test: Added tests for split views inside folders, b=no-bug, c=tabs, folders, tests 2025-08-09 10:27:45 +02:00
Mr. M
9dac7bc98d fix: Fixed drag and dropping from pinned to normal not being consistent, b=no-bug, c=tabs, folders 2025-08-08 20:40:28 +02:00
Mr. M
62fb85ded9 chore: Updated to firefox 141.0.3, b=no-bug, c=tabs, folders 2025-08-08 13:27:08 +02:00
mr. m
d51d698036 fix: Small fixes to folders, b=no-bug, c=tabs, common, folders 2025-08-08 10:26:20 +02:00
Mr. M
afe9e7a85c feat: Added an option to limit the amount of subfolders there are, b=no-bug, c=folders 2025-08-07 19:09:33 +02:00
Mr. M
82f30e1820 feat: Improved dragging normal tabs to the pinned section, b=no-bug, c=tabs, folders, workspaces 2025-08-07 18:09:57 +02:00
octaviusz
7afc934919 fix: Adjust last boundary for was-active folder (#9775) 2025-08-06 22:47:50 +02:00
octaviusz
8bee4eaa7c fix: Correct drag-and-drop targeting for split-view group labels (#9774) 2025-08-06 22:26:14 +02:00
octaviusz
591dce5921 feat: Zen Folders, p=#9355, c=folders
* Start working on zen folders

* Rework zen-folder SessionStore

* Refactor restoreDataFromSessionStore

* fix linter

* Fix preserve folder order on restore

* Feat allow dragging tabs into zen-folder

* Fix ensure collapsed folders are hidden on session restore

* Feat store parentId nested folders

* feat: Implement tabs list popup

* refactor: Move tabs popup to `popups.inc`

* feat: Implement drag-and-drop folder into folder

* feat: Improved UI for search panel, b=no-bug, c=folders

* fix: Add extra margin when animating collapsed folders, b=no-bug, c=folders

* feat: Implement tab group rename and other UI changes, b=no-bug, c=folders, common

* feat: Add animated folder dots and adaptive search popup positioning

* fix: resolve conflicts

* fix: Correct active state indication for collapsed folders

* feat: Allow folders to be double clicked, b=no-bug, c=common, folders

* fix: incorrect tab order

* chore: Update prefs to the rust version, b=no-bug, c=folders

* fix: better handling of subfolders

* chore: Improve dynamic spacing when drag and dropping and fixed split views UI, b=no-bug, c=tabs, folders

* feat: Empty tab and improve drag and drop

* fix: add tab search event once

* fix: Empty tab should always be at first position

* feat: improve drag and drop interaction with folders

* feat: Improve drag-and-drop interaction for zen folders

* fix: Improve zen folder session restoration and visibility

* fix: Correct visible element indexing

* fix: Correct restore subfolder order

* feat: Use empty tabs and dont highlight current folder we currently are in, b=no-bug, c=tabs, folders

* feat: persist and restore split-view group state in subfolders

* fix: npm run pretty

* fix: dropIndicator and transform for split-view-group

* fix: Formatting

* fix: improve split group and folder drag-and-drop and persistence

* chore: Fix lint issues and merge with dev, b=no-bug, c=folders

* chore: Move folder element to a different location, b=no-bug, c=folders

* feat: Added a simple folders context menu and simplified patches, b=no-bug, c=tabs, folders

* fix: Correct active tab position in folders collapse animation

* feat: Add ungroup and delete folder actions

* fix: Fixed empty tabs not being able to be pinned, b=no-bug, c=workspaces

* feat: Added folder -> space conversion and pref checks, b=no-bug, c=folders, workspaces

* Update locales/en-US/browser/browser/zen-folders.ftl

Co-authored-by: Patrik Egyed <pregnor@gmail.com>
Signed-off-by: mr. m <91018726+mr-cheffy@users.noreply.github.com>

* fix: Fixed folders not expanding when dragging another folder inside, b=no-bug, c=folders

* refactor: Refactor and improve tab group expansion logic

* feat: New folder dots

* test: Added simple folder creation test, b=no-bug, c=folders, tests

* fix: Don't expand folder when a tab inside it is selected

* feat: Added change folder to space menu item, b=no-bug, c=folders, workspaces

* feat: Added a menu item to create folders more easily, b=no-bug, c=workspaces, common, folders

* feat: Improved animations for collapsing active folders, b=no-bug, c=folders

* fix: Insert folder before pinned separator

* test: Improve folder and welcome testing, b=no-bug, c=folders, tests, welcome

* test: Fixed welcome tests, b=no-bug, c=folders, tests, welcome

* chore: lint, b=no-bug, c=tests, welcome

* feat: Add better selected UI, b=no-bug, c=folders

* feat: Emoji icons

* fix: Better handling of drag-and-drop folder highlighting

* fix: Single quotes

* fix: Hide emoji when folder has selected tab

* feat: Improved icons and animations, b=no-bug, c=folders, tabs

* fix: Fixed fetching the wrong prefs, b=no-bug, c=tabs, folders

* fix: Smoother dot animations

* fix: dragOverFolderThreshold condition and linter

* feat: visually collapse/expand active tab groups on drag/drop

* fix: Correctly transform folder with selected tab

* feat: Added better icons picker to support SVG, b=no-bug, c=common, folders, workspaces

* fix: Correctly transform tabs after moving them

* fix: Fixed not handling properly pinned tab count, b=no-bug, c=tabs, common, folders

* chore: Small formatting, b=no-bug, c=folders

* feat: Support SVG for folder icons

* fix: Formatting

* fix: Performance improvements for SVG icons

* fix: Shift up the folder icon

* fix: Handle null/undefined user icon values defensively

* feat: Improved icon sizes and fixed bug when collapsing folders with collapsed folders, b=no-bug, c=common, folders, workspaces

* chore: Tweaked the transform values for icons, b=no-bug, c=folders

* feat: Added support for collapsed mode (experimental), b=no-bug, c=folders

* fix: ungroup split view

* fix: Improve handling of special tabs during folder creation and drag-and-drop

* fix: Formatting

* feat: Imrpoved hardware accelaration for the icons and folder height calculation, b=no-bug, c=tabs, folders

* refactor: Extract dragover logic for tab group labels

* fix: Small fixes to the folders UI, b=no-bug, c=tabs, folders

* feat: Improved icons opacity and dialog, b=no-bug, c=common, workspaces

* test: Added subfolders basic test, b=no-bug, c=folders, tests

* fix: Drop indicator for folder targets

* feat: Improved drag and drop handling from normal to pinned tabs, b=no-bug, c=folders, tabs

* fix: Fixed moving split views into pinned tabs container, b=no-bug, c=folders, tabs

* feat: Improved new drag and drop offset, b=no-bug, c=tabs

* feat: Refine folder drop behavior with new thresholds

* fix: tabs.js extra space in patch

* fix: Properly handle has-active state

* fix: Add optional chaining for activeGroups length check

* fix: Fixed moving tabs to the workspace indicator not showing any feedback, b=no-bug, c=tabs

* feat: Change svg stroke width, b=no-bug, c=folders, tabs

* feat: Remove aspect ratio for the folder icon, b=no-bug, c=folders, tabs

* feat: Don't reset transform when pining tabs, b=no-bug, c=tabs

* feat: Ungroup tabs when dragging and make sure to animate tabs after the selected one, b=no-bug, c=tabs, folders

* fix: Transform folder with active tab

* fix: Fixed expand animation not working for the first time, b=no-bug, c=folders

* feat: Add expand to selected functionality for folders

* fix: Formatting

* Update src/zen/folders/ZenFolder.mjs

Signed-off-by: mr. m <91018726+mr-cheffy@users.noreply.github.com>

* Update src/zen/workspaces/ZenWorkspaces.mjs

Signed-off-by: mr. m <91018726+mr-cheffy@users.noreply.github.com>

* fix: Set icon for new workspace

* fix: Formatting

* fix: Hide the icon if empty

* fix: Optimize tab drag-over transitions

* feat: Lower the drag and drop threshold, b=no-bug, c=tabs, folders

* feat: Hide search panel when theres no visible tabs, b=no-bug, c=tabs, folders

* fix: Adapt tab-group to new changes

* fix: Fixed expanding split views as folders, b=no-bug, c=folders

* feat(tabs): Implement tab grouping persistence for pinned tabs

This commit introduces the ability to group pinned tabs for better organization.

Changes include:

- Added `createGroup` to create new tab groups.
- Added `addTabToGroup` to add existing tabs to a group.
- Added `removeTabFromGroup` to remove a tab from a group (moving it to the root level).
- Added `moveTabBetweenGroups` to move tabs between different groups or to the root level.
- Added `getAllGroups` to retrieve all tab groups, optionally filtered by workspace.
- Added `getGroupInfo` to retrieve information about a specific group, including its child count.
- Added `reorderTabsInGroup` to reorder tabs within a specific group.

These functions provide a comprehensive API for managing tab groups within the Zen Browser.  Error handling and input validation are included for robustness.  Database transactions are used to ensure data consistency. Observers are notified of changes to notify the sync engine.

* feat: Improve stroke colors for light mode, b=no-bug, c=folders

* perf: cache and optimize animation updates

* fix: Expand folder after drop

* fix: Update active state on tab change

* feat: Sync groups to new windows, b=no-bug, c=folders, tabs, workspaces

* feat: Finish window syncing for new folders, b=no-bug, c=tabs, folders, workspaces

* feat: Make sure SVG icons use the context fill instead of the current color, b=no-bug, c=common, folders

* feat: Added support for drag and drop in collapsed mode, b=no-bug, c=tabs, folders

* fix: Clean up tab attributes and styles on workspace transfer

* fix: Fixed svg icons being always dark, b=no-bug, c=workspaces

---------

Signed-off-by: mr. m <91018726+mr-cheffy@users.noreply.github.com>
Co-authored-by: mr. m <91018726+mr-cheffy@users.noreply.github.com>
Co-authored-by: Mr. M <mr.m@tuta.com>
Co-authored-by: Patrik Egyed <pregnor@gmail.com>
Co-authored-by: Kristijan Ribarić <kriba13@gmail.com>
2025-08-06 08:59:08 -07:00
Mr. M
7cf96dde23 chore: Update new firefox patches, b=no-bug, c=no-component 2025-08-05 19:16:28 +02:00
Mr. M
e6d6ca53df feat: Start session restoring empty tabs and flush tab state for newly expanded glance tabs, b=no-bug, c=common, glance, workspaces 2025-07-29 23:47:34 +02:00
mr. m
6641152100 chore: Implemented static linting for JS modules, p=#9673, c=common 2025-07-28 21:08:31 +02:00