Commit Graph

193 Commits

Author SHA1 Message Date
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
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
Mr. M
30aab09fe2 fix: Fixed restoring folders from saved SQL backup database, b=no-bug, c=common, folders, tabs, workspaces 2025-08-07 14:29:32 +02:00
Mr. M
44d6eebecc perf: Fixed PGO builds failing when being generated, b=no-bug, c=workspaces 2025-08-07 00:03:23 +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
3ba805802a fix: Fixed deleting a workspace and restarting, b=no-bug, c=glance, split-view, workspaces 2025-08-02 20:50:48 +02:00
Mr. M
36fe38c145 feat: Improve startup time and reduce initial animations, b=bug #6997, c=common, workspaces 2025-07-30 11:41:09 +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
mr. m
dfd2830ceb test: Added tests for split view, p=#9667, c=tests 2025-07-28 17:05:23 +02:00
Mr. M
19fbad748c test: Fixed restore tests and fixed possible memory leak on theme modifiers, b=no-bug, c=common, workspaces, tests 2025-07-25 12:32:57 +02:00
Mr. M
921afb04a4 fix: Fixed changing workspaces not replacing the empty tab, b=no-bug, c=workspaces 2025-07-25 11:15:09 +02:00
mr. m
d0df3d5a52 test: Fixed drag and drop tests hanging on some cases, b=no-bug, c=tests, tabs, workspaces 2025-07-23 12:11:32 +02:00
mr. m
c88bf27f3d chore: Updated to firefox 141.0, c=no-component, p=#9478 2025-07-15 18:16:25 +02:00
mr. m
a283824122 Revert "Firefox 141.0 (#9467)" (#9477) 2025-07-15 18:08:58 +02:00
mr. m
def1008e2d Firefox 141.0 (#9467) 2025-07-15 18:05:46 +02:00
Mr. M
aabde4fb05 feat: Improve accessibility contrast checks and add mroe padding to HSL color detection, b=no-bug, c=common, workspaces 2025-07-10 02:30:51 +02:00
Mr. M
1c09d40851 feat: Mute icons are now properly displayed on pinned tabs, b=no-bug, c=tabs, common, welcome, workspaces 2025-07-08 13:20:38 +02:00
mr. m
e068428601 feat: Improved lightness detection and media sharing controls, b=no-bug, c=media, workspaces 2025-07-05 22:59:43 +02:00
mr. m
a06b7b6b38 fix: Fixed crashes with mods and default lightness will be 50%, b=no-bug, c=mods, workspaces 2025-06-30 08:31:25 +02:00
mr. m
f680b4592b feat: Small details before release, b=no-bug, c=common, split-view, workspaces 2025-06-29 11:01:25 +02:00
mr. m
3da5eda339 feat: Small improvements to haptifc feedback and coloring, b=no-bug, c=common, media, tabs, workspaces 2025-06-28 18:04:30 +02:00
mr. m
2a701bd2b9 fix: Fixed about dialog and compact mode on twilight, b=no-bug, c=common, compact-mode, workspaces 2025-06-28 01:22:08 +02:00
mr. m
5930552cdc feat: Add grey-out effect for inactive windows and adjust opacity settings, b=no-bug, c=workspaces, styles 2025-06-27 16:39:23 +02:00
mr. m
84183910b7 feat: Improved contrasting and font colors, b=no-bug, c=common, tabs, workspaces 2025-06-27 02:50:12 +02:00
mr. m
48df87da98 Merge branch 'dev' of https://github.com/zen-browser/desktop into dev 2025-06-26 21:03:53 +02:00
mr. m
51d4396088 feat: Improved scrolling and fixed identifying contrast on custom colors, b=bug #9185, c=common, workspaces 2025-06-26 21:03:41 +02:00
Mr. M
69f60b7066 chore: Made container specific essentials the default, b=no-bug, c=workspaces, common, tests 2025-06-26 20:49:55 +02:00
mr. m
f0169277a0 feat: Improved swiping between workspaces and other contrasting issues, b=no-bug, c=common, media, workspaces 2025-06-26 17:02:15 +02:00
mr. m
fe77048619 fix: Fixed workspace overflows not working and refined new HSL picker, b=no-bug, c=tabs, common, compact-mode, workspaces 2025-06-24 17:44:22 +02:00
mr. m
b735567504 Gradient hue revamp (#9093) 2025-06-24 05:08:40 -07:00
mr. m
dcd032856b fix: Fixed invalid targets being used on workspace labels, b=no-bug, c=tabs, workspaces 2025-06-16 19:44:14 +02:00
mr. m
bf95bc7078 feat: Wait one more frame before marking the sidebar as hover, b=no-bug, c=tabs, workspaces 2025-06-16 12:09:34 +02:00
mr. m
ab2a982bf0 fix: Fixed context menu not updating when right clicking the workspace icon, b=no-bug, c=workspaces 2025-06-16 11:45:08 +02:00
mr. m
5cd1f77e2d feat: Insert workspace names on the context menu for easier switch, b=no-bug, c=workspaces 2025-06-16 01:15:11 +02:00
mr. m
a17a1da3b8 fix: Fixed context menu data disappearing too early, b=no-bug, c=workspaces 2025-06-15 06:15:22 +02:00
mr. m
ecbce38f52 fix: Fixed deleting a workspace from context not working, b=no-bug, c=workspaces 2025-06-15 06:08:01 +02:00
mr. m
7f28047f82 fix: Fixed tabs appearing where pinned tabs are when splitting views, b=no-bug, c=workspaces 2025-06-14 19:49:04 +02:00
mr. m
8e799a678f fix: Fixed empty windows appearing when using the window.open JS API, b=closes #8958, c=workspaces 2025-06-14 14:08:11 +02:00
mr. m
ea23c3f63d feat: Added context menus to workspace icons at the button and small fixes, b=no-bug, c=common, workspaces 2025-06-14 13:56:37 +02:00
mr. m
7d51ae1f07 fix: Fixed bookmarks being weird on private window, b=closes #8995, c=workspaces 2025-06-14 13:10:04 +02:00
mr. m
469604dd28 fix: Fixed change to different workspace for a tab in the context menu not displaying workspaces list at launch, b=closes #9008, c=workspaces 2025-06-14 12:50:57 +02:00
Mr. M
bf6e493f89 feat: Add comfirmation before deleting a workspace, b=no-bug, c=common, workspaces 2025-06-12 19:13:50 +02:00
Mr. M
219d1989d9 feat: Completed the emoji lists for workspace picker and other small changes, b=closes #7608, c=common, workspaces 2025-06-12 10:44:04 +02:00
mr. m
ce75bc152a feat: Improved workspace creation animations, b=no-bug, c=workspaces 2025-06-11 21:59:03 +02:00
mr. m
e8c43f5979 feat: Added workspace rearrange inline with the icons, b=no-bug, c=workspaces, common 2025-06-11 14:45:00 +02:00
Mr. M
376c64c892 chore: Updated l10n packs and fixed opening glance and startup, b=no-bug, c=glance, workspaces 2025-06-11 02:17:24 +02:00
Mr. M
548ed6e0f5 feat: part 2 - Finish workspace creation form, refactor collapsed toolbar and update motion to v12.16.0, b=no-bug, c=workspaces, common, tabs, vendor 2025-06-11 00:29:41 +02:00
Mr. M
847aef5b02 feat: Added new workspace creation form, b=no-bug, c=tabs, common, compact-mode, workspaces 2025-06-10 20:49:14 +02:00
mr. m
2a0113408c feat: Implement new workspace management, b=no-bug, c=common, workspaces 2025-06-09 18:41:04 +02:00