Commit Graph

558 Commits

Author SHA1 Message Date
Kristijan Ribarić
948cfc4034 feat: Add new settings for close shortcut behavior of pinned tabs
This commit introduces new settings for the behavior of closing pinned tabs using the close shortcut.

The following options are now available:

- **Reset pinned tab on close shortcut**: Reset the tab to the pinned URL.
- **Unload pinned tab on close shortcut**: Unload the tab.
- **Change pinned tab on close shortcut**: Change the pinned tab.
- **Close pinned tab on close shortcut**: Close the tab.

This provides more granular control over how pinned tabs are handled when the close shortcut is used, allowing users to customize the behavior to their specific needs.
2024-10-08 17:47:19 +02:00
Kristijan Ribarić
fdd99cb8d6 Fix: Refactor pinned tab management and remove unnecessary attribute checks
This commit refactors the pinned tab management code to improve clarity and reduce redundant checks.

The following changes were made:

- Moved pinned tab logic to a dedicated `gZenPinnedTabManager` class.
- Removed unnecessary attribute checks for `zen-pinned-url`, `zen-pinned-title`, and `zen-pinned-icon` as these are now handled by the `gZenPinnedTabManager` class.
- Simplified session restore logic for pinned tabs.
- Updated the pinned tab context menu logic to utilize the `gZenPinnedTabManager` class.
- Removed unnecessary code blocks related to pinned tabs.

These changes improve the overall readability and maintainability of the pinned tab management code.
2024-10-08 15:00:11 +02:00
Kristijan Ribarić
8c42614427 feat(pinned-tab-manager): Add restore pinned tabs to pinned url option
This commit introduces a new option to the pinned tab manager that allows users to restore pinned tabs to their pinned URL and title, even if the current tab has a different URL.

- Adds a new preference `zen.pinned-tab-manager.restore-pinned-tabs-to-pinned-url` to control this behavior.
- Updates the tab browser, tab state, and preferences code to support the new option.
- Adds a new UI element in the settings to allow users to enable/disable this feature.

This feature enhances the pinned tab manager by providing more control over how pinned tabs are restored when the browser is restarted.
2024-10-08 15:00:10 +02:00
Kristijan Ribarić
6dcff571d2 feat(zen-pinned-tab-manager): Add pinned tab management functionality
This commit introduces a new feature: pinned tab management. It allows users to pin tabs and define whether to reset pinned tabs on close.

- Adds a new `ZenPinnedTabManager` component to manage pinned tabs.
- Updates `zen-assets.inc.xhtml` and `zen-assets.jar.inc.mn` to include the new component.
- Modifies the `ZenStartup.mjs` file to initialize the new manager.
- Introduces a new preference `zen.pinned-tab-manager.reset-pinned-tab-on-close-shortcut` to control the behavior of pinned tabs on close.
- Updates the settings UI to reflect the new pinned tab management functionality.
- Refactors related preferences from `zen.tab-unloader.*` to `zen.pinned-tab-manager.*`.

This feature enhances Zen's tab management capabilities by providing users with more control over their pinned tabs.
2024-10-08 15:00:10 +02:00
Kristijan Ribarić
43834e57f0 feat(sessionstore): Add pinned url, and pinned title to tab state
Adds `zenPinnedUrl`, and `zenPinnedTitle` attributes to the tab state to persist pinned tab information. This allows users to restore their previous Zen pinned base url configuration upon restarting the browser.
2024-10-08 15:00:10 +02:00
Kristijan Ribarić
b185773daf feat(pinned-tab-url-reset): add option to reset pinned tab to originally pinned url
Adds a new setting to enable or disable pinned tab url resetting on pressing close tab shortcut.

Persists pinned tab url and label on browser closing.
2024-10-08 15:00:10 +02:00
mauro-balades
a556454ced Add ZenGradientGenerator to zen-assets.jar and zen-styles
This commit adds the ZenGradientGenerator module to the zen-assets.jar and zen-styles directories. The ZenGradientGenerator is responsible for generating gradients used in the Zen theme. This addition will enhance the visual appearance of the theme.
2024-10-07 20:54:53 +02:00
mauro-balades
5e85f1025a Fix display issues on keyboard shortcuts settings on some keyboard layouts 2024-10-07 18:42:17 +02:00
mauro-balades
eebcb0cb6e Fixed keyboard shortcuts not being displayed correctly on the settings after a restart 2024-10-07 18:28:33 +02:00
mauro-balades
b323a92dbf Added zen workspaces for syncing 2024-10-05 23:27:25 +02:00
mauro 🤙
57f697975e Merge pull request #1899 from kristijanribaric/feature(workspace-sync)-load-workspace-sync-script
Feature: Add Zen Workspaces synchronization
2024-10-05 22:53:49 +02:00
Kristijan Ribarić
9a9171055c feat(sync): Removed patch files, placed the logic in zen files 2024-10-05 22:53:13 +02:00
mauro-balades
8de8f190ff Fixed internal keyboard shortcuts for macos (https://github.com/zen-browser/desktop/issues/1629) and bookmarks sidebar separation 2024-10-05 18:42:27 +02:00
Kristijan Ribarić
20f6dfafa1 feat: Add Workspaces to Sync options
This commit adds Workspaces to the list of data types that can be synced.

This introduces the following changes:

- Adds a new preference `services.sync.engine.workspaces` to control syncing of Workspaces.
- Updates the `syncChooseWhatToSync.js` and `syncChooseWhatToSync.xhtml` files to include the new Workspaces option in the UI.
- Adds relevant localization strings to `preferences-ftl`.
- Updates CSS styling for the Workspaces option.
- Updates `zen-browser.js` to disable Workspace syncing by default.

This change allows users to choose whether to sync their Workspaces across devices.
2024-10-05 15:11:14 +02:00
mauro-balades
c8391950cf Expanded on sidebar stylings and added option to disable border of bottom icons 2024-10-04 19:19:40 +02:00
mauro-balades
5d0ea6a2c3 Fixed tab unloader pref not being updated (closes https://github.com/zen-browser/desktop/issues/1835) 2024-10-04 18:29:44 +02:00
mauro-balades
e2792eecb5 Made the code look cleaner 2024-10-04 18:21:41 +02:00
mauro-balades
39caaf5caa Synced workspaces across windows and also implemented MultiWindowFeatures 2024-10-01 23:21:40 +02:00
mauro-balades
bd8501fd77 Updates patches for firefox 131.0! 2024-10-01 20:05:14 +02:00
Mauro Baladés
58fcbd9dfa Update zen-components submodule commit
``
2024-09-29 22:27:03 +03:00
mauro-balades
f7ebf48e49 Fixed not updating the theme list when spamming the disabled button 2024-09-29 20:54:18 +02:00
mauro-balades
bc03bc06c4 Fix issue with saving settings in Zen CKS preferences 2024-09-29 14:25:10 +02:00
mauro-balades
99569e4588 Fixed duplicate keys on settings page (closes #https://github.com/zen-browser/desktop/issues/1784) 2024-09-29 12:51:40 +02:00
mauro-balades
40890470fe Added preferences for split views and tabs unloader 2024-09-29 12:18:21 +02:00
mauro-balades
c29a81d710 Add warning for unsafed shortcuts 2024-09-29 11:36:23 +02:00
mauro-balades
d0b6f9489c Prevent KBS from being registrered if the view is hidden 2024-09-28 22:12:51 +02:00
mauro-balades
4d019067ef Refactor ZenCustomizableUI.sys.mjs and zen-sidebar-icons.inc.xhtml 2024-09-28 22:10:37 +02:00
mauro-balades
ffcf2a040c Added tab unloader to the settings page (WIP) 2024-09-28 08:30:03 +02:00
mauro-balades
c32c16d932 Fixed updating keyboard shortcuts on settings 2024-09-26 17:20:55 +02:00
mauro-balades
996c292916 Refactor tab width calculation in tabs.js 2024-09-25 21:37:39 +02:00
mauro-balades
71c20bdf98 Fixed extra width on right side compact mode and sidebar toolbar being hidden in fullscreen mode 2024-09-25 17:49:15 +02:00
mauro-balades
b1c90ceed2 Update subproject commit in l10n and zen-components 2024-09-24 21:30:34 +02:00
mauro-balades
863abd3a70 Update subproject commit in l10n and zen-components
Fix event handling for macOS in zen-settings.js
2024-09-24 21:20:50 +02:00
mauro-balades
c494973e16 Update subproject commit in l10n and zen-components
``
2024-09-24 20:16:50 +02:00
mauro-balades
a9e0fca099 Update subproject commit in l10n and zen-components 2024-09-24 17:31:29 +02:00
mauro-balades
dd8299d10a Update subproject commit in l10n and zen-components 2024-09-24 16:58:16 +02:00
mauro-balades
68cfdedc45 Update subproject commit in l10n and zen-components 2024-09-24 16:47:52 +02:00
mauro-balades
5f64f9e651 FIxed unified extensions disappearing 2024-09-24 12:20:11 +02:00
mauro-balades
22eb216a3d Refactor ZenCustomizableUI and update keyboard shortcuts preferences 2024-09-23 20:23:08 +02:00
mauro-balades
2d573da55e Refactor ZenCustomizableUI and update keyboard shortcuts preferences 2024-09-23 18:28:45 +02:00
mauro-balades
6c77a913ff Refactor ZenCustomizableUI and update keyboard shortcuts preferences 2024-09-23 18:15:22 +02:00
mauro-balades
445b21c03d Refactor subproject commit in zen-components and update keyboard shortcuts preferences 2024-09-23 17:00:27 +02:00
mauro-balades
f42a635555 Refactor subproject commit in zen-components and update keyboard shortcuts preferences 2024-09-22 23:38:25 +02:00
mauro-balades
232fa448ca Refactor subproject commit in zen-components and update keyboard shortcuts preferences 2024-09-22 23:37:16 +02:00
mauro-balades
52d5a389bf Refactor ZenStartup.mjs and zen-settings.js, and update subproject commit in l10n and zen-components 2024-09-22 22:39:54 +02:00
mauro 🤙
4332bf3b95 Merge branch 'main' into shortcuts-redo 2024-09-22 22:22:53 +02:00
mauro-balades
818ebd1d85 Refactor ZenStartup.mjs and zen-settings.js
- Refactor ZenStartup.mjs to use gZenKeyboardShortcutsManager instead of gZenKeyboardShortcuts.
- Refactor zen-settings.js to use async/await for _resetCKS and _handleKeyDown functions.
2024-09-22 22:13:46 +02:00
Jan Hereš
11ff76d15b Merge branch 'shortcuts-redo' into fix/keybindings 2024-09-22 21:06:44 +02:00
HarryHeres
a94bcdf40c Working on the keybindings 2024-09-22 21:04:28 +02:00
brahim
b0755d3834 Fix bug in look and feel where compact mode 'both' would never be selected on page load 2024-09-22 18:19:29 +02:00