Compare commits

..

120 Commits

Author SHA1 Message Date
Mr. M
fdeeb972f7 chore: Rewrite motion to animejs, b=no-bug, c=common, compact-mode, glance, media, split-view, vendor, welcome, workspaces 2025-06-24 18:43:12 +02:00
Mr. M
12ae2daeba feat: Fix aligment issues with initial gradient text, b=no-bug, c=common, workspaces 2025-06-24 17:53:11 +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
9971dbd0ad fix: Fixed positions for gradients selector, b=no-bug, c=common, workspaces 2025-06-24 16:37:14 +02:00
mr. m
b735567504 Gradient hue revamp (#9093) 2025-06-24 05:08:40 -07:00
Jai A P
ba7eff60ef Fix minor changes in urlbar when using zen-floating-urlbar (#9120) 2025-06-23 06:56:00 +02:00
mr. m
400598a0b1 feat: Removed legacy stylesheets config and implement c++ mods backen… (#9131) 2025-06-23 00:07:39 +02:00
Shinwoo PARK
dc6f46695a fix: Fix tab drag indicator orientation to horizontal on collapsed toolbar (#9126) 2025-06-22 17:07:36 +02:00
octaviusz
48f036d6a0 Fix TypeError: can't access property "pinned", group is undefined (#9116) 2025-06-21 18:36:33 +02:00
Mr. M
3a317daa87 Merge branch 'dev' of https://github.com/zen-browser/desktop into dev 2025-06-21 17:30:08 +02:00
Mr. M
8e67690f82 fix: Fixed tab icon URL being incorrect when unloading, b=no-bug, c=tabs 2025-06-21 17:30:03 +02:00
mr. m
1594c5c08f fix: Fixed copy url for firefox 140.0, b=no-bug, c=common 2025-06-21 11:55:31 +02:00
mr. m
fd4c96e4b3 feat: Make the browser window have a sidebar appearance, b=no-bug, c=common 2025-06-21 11:18:34 +02:00
Mr. M
37bd317391 test: Added tests for the welcome page, b=no-bug, c=tests, glance, welcome 2025-06-21 02:05:55 +02:00
Mr. M
2c53b4a8c5 chore: [no-lint] Added blacksmith logo to readme, b=no-bug, c=no-component 2025-06-20 23:45:17 +02:00
Mr. M
5040df2416 chore: [no-lint] Fix action runners for blacksmith, b=no-bug, c=workflows 2025-06-20 14:13:23 +02:00
blacksmith-sh[bot]
8bc4c97215 .github/workflows: Migrate workflows to Blacksmith runners (#9104)
Co-authored-by: blacksmith-sh[bot] <157653362+blacksmith-sh[bot]@users.noreply.github.com>
Co-authored-by: mr. m <91018726+mr-cheffy@users.noreply.github.com>
2025-06-20 14:02:23 +02:00
mr. m
a435d4ec18 feat: Added support for linear gradient dithering, b=no-bug, c=no-component 2025-06-20 01:58:09 +02:00
mr. m
bed6fa7eca Updated to firfox RC 140.0 (#9092) 2025-06-18 17:16:40 +02: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
0693bb7a61 fix: Fixed compact mode sidebar infinitily expanding when creating a new workspace, b=no-bug, c=compact-mode, workspaces 2025-06-14 23:28:33 +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
d1fffc59cf fix: Fixed dragging tabs rendering the sidebar useless on some occations, b=closes #9020, c=tabs 2025-06-14 15:06:32 +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
a3f1733fd4 Merge branch 'dev' of https://github.com/zen-browser/desktop into dev 2025-06-14 13:57:30 +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
3f77bc972b fix: Fixed overflow menu not being visible, b=closes #9009, c=no-component 2025-06-14 12:50:23 +02:00
mr. m
59263eae9e fix: Fixed new tabs opening where pinned tabs are when creating a split view, b=closes #9014, c=no-component 2025-06-14 12:29:51 +02:00
mr. m
251967435d Revert "made the button in toast stand out more (#9016)" (#9018) 2025-06-14 03:29:44 -07:00
Obscure.
a93e50cc54 made the button in toast stand out more (#9016)
Signed-off-by: Obscure. <69711181+kritishd8@users.noreply.github.com>
2025-06-14 11:57:18 +02:00
mr. m
54bdabbf25 Bump firefox version for twilight
Signed-off-by: mr. m  <91018726+mauro-balades@users.noreply.github.com>
2025-06-13 17:00:08 +02:00
mr. m
5b7445fe31 Merge branch 'dev' of https://github.com/zen-browser/desktop into dev 2025-06-13 11:11:41 +02:00
mr. m
09ee6f2097 fix: Fixed create button hiding and reshowing when clicked multiple times, b=no-bug, c=common, workspaces 2025-06-13 11:11:27 +02:00
Mr. M
f240fabe77 fix: Prevent urlbar unformatting when changing layouts, b=no-bug, c=common 2025-06-12 20:03:27 +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
75a3b82d2c chore: Update l10n packs, b=no-bug, c=no-component 2025-06-12 12:38:51 +02:00
mr. m
9c8b442a46 feat: Render emojis panel before actually loading the emojis, b=no-bug, c=common, workspaces 2025-06-12 12:13:43 +02:00
mr. m
1f3d8b492b Merge branch 'dev' of https://github.com/zen-browser/desktop into dev 2025-06-12 11:57:15 +02:00
mr. m
5013533ad8 perf: Re-enable msd physics for smooth scrolling, b=no-bug, c=no-component 2025-06-12 11:51:50 +02:00
Mr. M
adc4b956dd Merge branch 'dev' of https://github.com/zen-browser/desktop into dev 2025-06-12 10:44:31 +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
octaviusz
fa7f986319 Fix data-l10n-id (#8980) 2025-06-12 09:45:32 +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
289e84b75d chore: Update l10n packs, b=no-bug, c=no-component 2025-06-11 21:35:37 +02:00
Mr. M
4da5a40419 feat: Small tweaks for workspace creation form, b=closes #8974, c=common, tabs, workspaces 2025-06-11 21:28:01 +02:00
Mr. M
7bf0b42afd fix: Fixed reordering multiple tabs making compact mode hang, b=closes #8978, c=tabs 2025-06-11 20:54:27 +02:00
Mr. M
5488b1d62e feat: Added a more descriptive workspace rearrange string, b=no-bug, c=common, workspaces 2025-06-11 17:05:00 +02:00
mr. m
ef22f08115 Merge branch 'dev' of https://github.com/zen-browser/desktop into dev 2025-06-11 14:45:09 +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
e9bbbaf446 fix: Fixed opening glance from a split view making tabs unaccessible, b=no-bug, c=glance, split-view 2025-06-11 03:32:32 +02:00
mr. m
b932558ad6 fix: Fixed compact mode not working at startup and finished workspace creation form, b=no-bug, c=compact-mode, workspaces 2025-06-11 03:00:14 +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
df916f1e4a Merge branch 'dev' of https://github.com/zen-browser/desktop into dev 2025-06-10 20:49:32 +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
Ernestas Tautkus
17654139ba Glance contextmenu search pref (#8963)
* Add zen.glance.enable-contextmenu-search preference and logic

* Add zen.glance.enable-contextmenu-search preference and logic
2025-06-10 19:02:27 +02:00
Mr. M
e1974d9f81 Merge branch 'dev' of https://github.com/zen-browser/desktop into dev 2025-06-10 18:01:21 +02:00
mr. m
fcff502d1a chore: Updated to firefox 139.0.4 and fixed gh release version (see https://github.com/softprops/action-gh-release/issues/627), b=no-bug, c=workflows 2025-06-10 18:00:13 +02:00
Mr. M
0e030dcb08 refactor: Properly indent preferences, b=no-bug, c=mods, workspaces 2025-06-10 12:48:17 +02:00
Mr. M
aa4e385b6b chore: Bump release action upload, b=no-bug, c=workflows 2025-06-10 11:18:12 +02:00
Mr. M
c9488c0384 fix: Fixed aligment issues and renaming workspaces, b=no-bug, c=common, workspaces 2025-06-10 01:29:27 +02:00
Mr. M
bcf879b801 chore: Format project, b=no-bug, c=workflows 2025-06-09 19:17:11 +02:00
Mr. M
84072192b9 Merge branch 'dev' of https://github.com/zen-browser/desktop into dev 2025-06-09 19:12:28 +02:00
Mr. M
d786c6927f feat: security: Enable google safebrowsing and populate the API keys, b=no-bug, c=workflows, common, configs 2025-06-09 19:11:09 +02:00
mr. m
2a0113408c feat: Implement new workspace management, b=no-bug, c=common, workspaces 2025-06-09 18:41:04 +02:00
mr. m
967d0dd730 perf: Disable msd physics by default to improve scrolling, b=no-bug, c=no-component 2025-06-09 12:01:24 +02:00
mr. m
af36549c7e perf: Remove smooth scroll features, b=no-bug, c=common, workspaces 2025-06-09 11:58:32 +02:00
mr. m
6e2ce89d21 refactor: Remove bytecode loading strategy, b=no-bug, c=no-component 2025-06-09 11:31:29 +02:00
mr. m
2d5fed3cd9 fix: Fixed raycast focus activating the sidebar on compact mode, b=closes #7590, c=common 2025-06-09 09:44:17 +02:00
mr. m
ba4eef0db9 refactor: Apply essentials icons to the entire tab to avoid removing the background when cloning, b=no-bug, c=tabs, welcome, workspaces 2025-06-09 01:12:22 +02:00
mr. m
872f7bdcbe fix: Fixed flashing backgrounds at startup and animating tabs from session restore, b=no-bug, c=common 2025-06-09 00:31:33 +02:00
octaviusz
8f6ca03240 Fix glance button animation for right side (#8934) 2025-06-08 18:43:06 +02:00
Mr. M
35245078c9 perf: Only show gradient blend mode if used and removed unused perf configs, b=no-bug, c=common, compact-mode, workspaces 2025-06-08 12:58:10 +02:00
Mr. M
fd8a55c57c refactor: Remove color settings on look and feel as they are no longer used, b=no-bug, c=common, workspaces 2025-06-08 12:42:06 +02:00
Mr. M
8fce658dc1 chore: Bump version, b=no-bug, c=no-component 2025-06-08 11:27:51 +02:00
Mr. M
df963fc035 fix: Fixed Browser window offset after debugger break point hit, b=closes #8814, c=common 2025-06-08 10:59:17 +02:00
Mr. M
ffab4a8c02 feat: Always mantain hover state after using app commands for switching workspaces, b=no-bug, c=workspaces 2025-06-08 01:21:45 +02:00
Mr. M
ebd1910bb8 fix: Fixed restoring tabs after restoring windows, b=bug #8699, c=workspaces, tests 2025-06-07 20:35:08 +02:00
Mr. M
10592ed243 fix: Fixed startup welcome pinned tabs not having a workspace id, b=no-bug, c=welcome 2025-06-07 20:34:50 +02:00
Mr. M
3da1da968e fix: Fixed window controls not being aligned when being on the right side, b=closes #8910, c=tabs 2025-06-07 19:54:06 +02:00
Mr. M
bb2196900b fix: Fixed essential tabs appearing on private mode and updated tests, b=closes #8918, c=tabs, tests, glance, workspaces 2025-06-07 18:48:44 +02:00
Mr. M
8ef4460f00 perf: part 2 - Improved startup speed/performance and added some tests for private browsing, b=no-bug, c=common, kbs, mods, tests, glance, workspaces 2025-06-07 01:02:03 +02:00
Mr. M
a1bd202b51 feat: Dynamically resize the urlbar based on the view width, b=no-bug, c=common 2025-06-06 13:54:41 +02:00
Mr. M
3faf5cd404 chore: Update commit message to provide a more clean message standard, b=no-bug, c=no-component 2025-06-06 13:36:39 +02:00
Mr. M
d35abc991e no-bug - Formatted project, c=tabs, t=chore 2025-06-06 13:35:06 +02:00
Mr. M
7a29340efc Merge branch 'dev' of https://github.com/zen-browser/desktop into dev 2025-06-06 13:34:35 +02:00
Mr. M
cf6a346749 no-bug - Improved initial startup performance and loading speeds, c=common, tabs, workspaces, t=perf 2025-06-06 13:34:29 +02:00
mr. m
9f047b7dcf pull #8904 - Organized zen configs into separate files and added licenses to the remaining files
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
2025-06-06 13:32:20 +02:00
mr. m
7a50336908 Merge branch 'dev' of https://github.com/zen-browser/desktop into dev 2025-06-06 13:29:07 +02:00
mr. m
89efc6cb0a no-bug - Show how many essential slots are left and disable instead of hiding the context menu ifwe reached a limit, c=common, tabs, t=feat 2025-06-06 13:19:06 +02:00
Ernestas Tautkus
5b3b72b9aa Respect glance enabled preference before opening Glance on search (#8890) 2025-06-06 13:16:39 +02:00
Mr. M
a6d749a9c8 no-bug - Dont pin empty tabs, c=no-component, t=feat 2025-06-06 11:51:29 +02:00
CosmoCreeper
a570a266e5 Clarify what to execute in newtab readme. (#8865)
* Clarify what to execute.

Signed-off-by: CosmoCreeper <179134799+CosmoCreeper@users.noreply.github.com>

* Use a better suited name.

Signed-off-by: CosmoCreeper <179134799+CosmoCreeper@users.noreply.github.com>

---------

Signed-off-by: CosmoCreeper <179134799+CosmoCreeper@users.noreply.github.com>
2025-06-04 21:15:33 +02:00
CosmoCreeper
0f5f14defe Rename ZenEmojies.mjs to ZenEmojis.mjs for correct spelling. (#8841)
* Rename ZenEmojies.mjs to ZenEmojis.mjs

Signed-off-by: CosmoCreeper <179134799+CosmoCreeper@users.noreply.github.com>

* Rename references to ZenEmojies.mjs to ZenEmojis.mjs

Signed-off-by: CosmoCreeper <179134799+CosmoCreeper@users.noreply.github.com>

* Update linter ignored files to the new emojis rename.

Signed-off-by: CosmoCreeper <179134799+CosmoCreeper@users.noreply.github.com>

* Rename emojies to emojis in the zen-assets.jar.inc.mn file.

Signed-off-by: CosmoCreeper <179134799+CosmoCreeper@users.noreply.github.com>

---------

Signed-off-by: CosmoCreeper <179134799+CosmoCreeper@users.noreply.github.com>
2025-06-04 08:32:31 +02:00
CosmoCreeper
ab9a752286 Remove unnecessary repetition of the same action. (#8840)
I have removed the unnecessary repetition of what ```gZenMarketplaceManager._triggerBuildUpdateWithoutRebuild``` already does and replaced those situations with calls to that actual function.

I have also rearranged that function to before the functions that call it so the flow makes more sense.

Signed-off-by: CosmoCreeper <179134799+CosmoCreeper@users.noreply.github.com>
2025-06-04 08:31:51 +02:00
mr. m
8f06bf21b0 no-bug - Only insert cloned essentials if they are going to be animated, c=workspaces, t=chore 2025-06-03 18:21:57 +02:00
dependabot[bot]
eaa099f9cc chore(deps): bump the npm_and_yarn group across 1 directory with 1 update (#8815)
Bumps the npm_and_yarn group with 1 update in the / directory: [tar-fs](https://github.com/mafintosh/tar-fs).


Updates `tar-fs` from 2.1.2 to 3.0.9
- [Commits](https://github.com/mafintosh/tar-fs/compare/v2.1.2...v3.0.9)

Updates `tar-fs` from 3.0.8 to 3.0.9
- [Commits](https://github.com/mafintosh/tar-fs/compare/v2.1.2...v3.0.9)

---
updated-dependencies:
- dependency-name: tar-fs
  dependency-version: 3.0.9
  dependency-type: indirect
  dependency-group: npm_and_yarn
- dependency-name: tar-fs
  dependency-version: 3.0.9
  dependency-type: indirect
  dependency-group: npm_and_yarn
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-06-03 08:55:36 +02:00
Bryan Galdámez
0642ceba40 refactor(ZenMods): rework how default value for mod preferences are set (#8783)
this should avoid possible collisions
2025-06-02 10:06:54 +02:00
mr. m
0869fa55bb no-bug - Allow accent colors on the titlebar to be shown on windows 11, c=common, t=feat 2025-06-01 15:47:54 +02:00
mr. m
80b8f7b4d8 Merge branch 'dev' of https://github.com/zen-browser/desktop into dev 2025-06-01 09:01:49 +02:00
mr. m
7c18b1d921 no-bug - Add support for accent color on titlebar preference for windows 11, c=no-component, t=feat 2025-06-01 09:01:45 +02:00
mr-cheff
eec99dc76b docs: Update monthly issue metrics, b=(no bug), c={docs} 2025-06-01 02:52:56 +00:00
mr. m
6663a47d4a no-bug - Fixed restoring pinned tabs having the wrong favicon, c=tabs, t=fix 2025-06-01 00:37:01 +02:00
Mr. M
c654c3f5de Merge branch 'dev' of https://github.com/zen-browser/desktop into dev 2025-05-31 22:19:41 +02:00
Mr. M
5e48064497 no-bug - Bump version, c=no-component, t=chore 2025-05-31 22:19:14 +02:00
UnownPlain
9c8aba3dcd Update release notes script (#8739) 2025-05-31 22:16:55 +02:00
Mr. M
c9fe95c00c closes #8713 - Fixed profile context menu not showing, c=common, t=fix 2025-05-31 22:16:05 +02:00
Mr. M
9bfa7b01b5 Merge branch 'dev' of https://github.com/zen-browser/desktop into dev 2025-05-31 21:46:02 +02:00
Mr. M
bbf646439a closes #8694 - Fixed gradient not showing when restoring multiple windows, c=workspaces, t=fix 2025-05-31 21:45:36 +02:00
Mr. M
a710d5949e fix: FIxed restoring pined and essential tabs not being on the correct parent element, b=(bug #8726), c=tests, workspaces 2025-05-31 21:32:51 +02:00
Mr. M
4abb3d2249 feat: Fixed opening search mode on glance, b=(closes #8680), c=glance 2025-05-31 20:52:37 +02:00
Lukas Runge
6cdc640977 fix(shortcuts): 🐛 remove special characters on macos (#8719) 2025-05-31 20:49:08 +02:00
Mr. M
aa662910b2 feat: Do not hide toasts on welcome page, b=(no-bug), c=common, welcome 2025-05-31 20:36:06 +02:00
181 changed files with 5265 additions and 3343 deletions

View File

@@ -1 +1 @@
{type}: {message}, b=({bugId}), c={components}
{type}: {message}, b={bugId}, c={components}

View File

@@ -50,10 +50,24 @@ on:
default: false
jobs:
debug-inputs:
name: Debug inputs
buildid:
name: Generate build ID
runs-on: ubuntu-latest
outputs:
buildids: ${{ steps.get.outputs.bid }}
steps:
- name: Checkout repository
uses: actions/checkout@v4
with:
submodules: recursive
token: ${{ secrets.DEPLOY_KEY }}
- id: get
shell: bash -xe {0}
run: |
bdat=`date +"%Y%m%d%I%M%S"`
echo "bid=${bdat}" >> $GITHUB_OUTPUT
- name: Debug
run: |
echo "create_release: ${{ inputs.create_release }}"
@@ -64,21 +78,28 @@ jobs:
echo "GITHUB_REPOSITORY_OWNER: ${{ github.repository_owner }}"
echo "GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}"
buildid:
name: Generate build ID
runs-on: ubuntu-latest
outputs:
buildids: ${{ steps.get.outputs.bid }}
steps:
- id: get
shell: bash -xe {0}
- name: Check if correct branch
if: ${{ inputs.create_release }}
run: |
bdat=`date +"%Y%m%d%I%M%S"`
echo "bid=${bdat}" >> $GITHUB_OUTPUT
echo "Checking if we are on the correct branch"
git branch
git status
git branch --show-current
branch="${{ inputs.update_branch }}"
if [[ $branch == "twilight" ]]; then
branch="dev"
elif [[ $branch == "release" ]]; then
branch="stable"
fi
if [[ $(git branch --show-current) != $branch ]]; then
echo ">>> Branch mismatch"
# exit 1
else
echo ">>> Branch matches"
fi
start-self-host:
runs-on: ubuntu-latest
needs: debug-inputs
steps:
- name: Download aws-cli
if: ${{ inputs.create_release && inputs.update_branch == 'release' }}
@@ -101,42 +122,12 @@ jobs:
echo "Removing self-hosted runner script"
rm start.sh || true
check-build-is-correct:
runs-on: ubuntu-latest
needs: [debug-inputs]
steps:
- name: Checkout repository
uses: actions/checkout@v4
with:
submodules: recursive
token: ${{ secrets.DEPLOY_KEY }}
- name: Check if correct branch
if: ${{ inputs.create_release }}
run: |
echo "Checking if we are on the correct branch"
git branch
git status
git branch --show-current
branch="${{ inputs.update_branch }}"
if [[ $branch == "twilight" ]]; then
branch="dev"
elif [[ $branch == "release" ]]; then
branch="stable"
fi
if [[ $(git branch --show-current) != $branch ]]; then
echo ">>> Branch mismatch"
# exit 1
else
echo ">>> Branch matches"
fi
build-data:
permissions:
contents: write
name: Generate build data
runs-on: ubuntu-latest
needs: check-build-is-correct
runs-on: blacksmith-2vcpu-ubuntu-2404
needs: buildid
outputs:
build_date: ${{ steps.data.outputs.builddate }}
version: ${{ steps.data.outputs.version }}
@@ -149,7 +140,7 @@ jobs:
token: ${{ secrets.DEPLOY_KEY }}
- name: Setup Node.js
uses: actions/setup-node@v4
uses: useblacksmith/setup-node@v5
with:
node-version-file: '.nvmrc'
@@ -199,7 +190,7 @@ jobs:
name: Lint
check-release:
runs-on: ubuntu-latest
runs-on: blacksmith-2vcpu-ubuntu-2404
needs: [build-data, lint]
steps:
- name: Checkout repository
@@ -209,7 +200,7 @@ jobs:
token: ${{ secrets.DEPLOY_KEY }}
- name: Setup Node.js
uses: actions/setup-node@v4
uses: useblacksmith/setup-node@v5
with:
node-version-file: '.nvmrc'
@@ -240,7 +231,7 @@ jobs:
source:
permissions:
contents: write
runs-on: ubuntu-latest
runs-on: blacksmith-2vcpu-ubuntu-2404
needs: [build-data, check-release]
steps:
@@ -251,7 +242,7 @@ jobs:
token: ${{ secrets.DEPLOY_KEY }}
- name: Setup Node.js
uses: actions/setup-node@v4
uses: useblacksmith/setup-node@v5
with:
node-version-file: '.nvmrc'
@@ -368,7 +359,7 @@ jobs:
name: AppImage build - Linux ${{ matrix.arch }}
permissions:
contents: write
runs-on: ubuntu-latest
runs-on: blacksmith-2vcpu-ubuntu-2404
strategy:
matrix:
arch: [x86_64, aarch64]
@@ -381,7 +372,7 @@ jobs:
token: ${{ secrets.DEPLOY_KEY }}
- name: Setup Node.js
uses: actions/setup-node@v4
uses: useblacksmith/setup-node@v5
with:
node-version-file: '.nvmrc'
@@ -446,7 +437,7 @@ jobs:
path: ./dist/zen-${{ matrix.arch }}.AppImage.zsync
stop-self-hosted:
runs-on: ubuntu-latest
runs-on: blacksmith-2vcpu-ubuntu-2404
needs: [windows-step-3, linux]
if: always()
steps:
@@ -487,7 +478,7 @@ jobs:
lint,
stop-self-hosted,
]
runs-on: ubuntu-latest
runs-on: blacksmith-2vcpu-ubuntu-2404
environment:
name: ${{ inputs.update_branch == 'release' && 'Deploy-Release' || 'Deploy-Twilight' }}
@@ -548,7 +539,7 @@ jobs:
# If we are on Twilight, we want to just update the Twilight tag's release
- name: Update Twilight tag
if: ${{ inputs.update_branch == 'twilight' }}
uses: softprops/action-gh-release@v2
uses: softprops/action-gh-release@v2.2.2
with:
body_path: release_notes.md
files: |
@@ -580,7 +571,7 @@ jobs:
GITHUB_REPOSITORY: ${{ github.repository }}
- name: Release
uses: softprops/action-gh-release@v2
uses: softprops/action-gh-release@v2.2.2
if: ${{ inputs.update_branch == 'release' }}
with:
token: ${{ secrets.DEPLOY_KEY }}
@@ -614,7 +605,7 @@ jobs:
permissions: write-all
name: Prepare Flatpak
needs: [release, linux, build-data]
runs-on: ubuntu-latest
runs-on: blacksmith-2vcpu-ubuntu-2404
steps:
- name: Checkout Flatpak repository
@@ -673,7 +664,7 @@ jobs:
permissions: write-all
name: Release Flatpak
needs: [prepare-flatpak, build-data]
runs-on: ubuntu-latest
runs-on: blacksmith-2vcpu-ubuntu-2404
steps:
- name: Checkout Flatpak repository

View File

@@ -4,7 +4,6 @@ on:
push:
branches:
- dev
workflow_dispatch:
workflow_call:
pull_request:
branches:
@@ -16,6 +15,7 @@ permissions:
jobs:
lint:
runs-on: ubuntu-latest
if: ${{ !contains(github.event.head_commit.message, '[no-lint]') }}
steps:
- name: Checkout repository
uses: actions/checkout@v4

View File

@@ -26,7 +26,7 @@ jobs:
permissions:
contents: write
# aarch64 does not need full 16x
runs-on: ${{ (inputs.release-branch == 'release' && matrix.arch == 'x86_64') && 'self-hosted' || 'ubuntu-latest' }}
runs-on: ${{ (inputs.release-branch == 'release' && matrix.arch == 'x86_64') && 'self-hosted' || 'blacksmith-8vcpu-ubuntu-2404' }}
strategy:
fail-fast: false
matrix:
@@ -44,10 +44,6 @@ jobs:
with:
tool-cache: false
# Bug: https://github.com/actions/checkout/issues/1153
- name: Remove zombie lock file
run: rm -f /home/ubuntu/actions-runner/_work/desktop/desktop/.git/modules/l10n/index.lock
- name: Checkout repository
uses: actions/checkout@v4
with:
@@ -55,7 +51,7 @@ jobs:
token: ${{ secrets.DEPLOY_KEY }}
- name: Setup Node.js
uses: actions/setup-node@v4
uses: useblacksmith/setup-node@v5
with:
node-version-file: '.nvmrc'
@@ -121,6 +117,11 @@ jobs:
./mach --no-interactive bootstrap --application-choice browser
cd ..
- name: Insert API Keys
run: |
mkdir -p ~/.zen-keys
echo "${{ secrets.ZEN_SAFEBROWSING_API_KEY }}" > ~/.zen-keys/safebrowsing.dat
- name: Build
env:
SURFER_COMPAT: ${{ matrix.arch }}
@@ -142,6 +143,10 @@ jobs:
export ZEN_RELEASE=1
npm run package
- name: Remove API Keys
run: |
rm -rf ~/.zen-keys
- name: Rename artifacts
run: |
mv dist/zen-*.tar.xz "zen.linux-${{ matrix.arch }}.tar.xz"

View File

@@ -132,6 +132,11 @@ jobs:
- name: Build language packs
run: sh scripts/download-language-packs.sh
- name: Insert API Keys
run: |
mkdir -p ~/.zen-keys
echo "${{ secrets.ZEN_SAFEBROWSING_API_KEY }}" > ~/.zen-keys/safebrowsing.dat
- name: Build Zen
env:
SURFER_COMPAT: ${{ matrix.arch }}
@@ -152,6 +157,10 @@ jobs:
export ZEN_RELEASE=1
npm run package
- name: Remove API Keys
run: |
rm -rf ~/.zen-keys
- name: Rename artifacts
run: |
echo "Tarballing DMG"

View File

@@ -5,7 +5,7 @@ if [ "$RELEASE_BRANCH" = "release" ]; then
RELEASE_TYPE="Stable"
echo "Fetching release notes from GitHub..."
RELEASE_NOTES_JSON=$(curl -s "$RELEASE_NOTES_URL")
RELEASE_NOTES_JSON=$(curl -s --retry 5 --retry-delay 5 "$RELEASE_NOTES_URL")
if [ -z "$RELEASE_NOTES_JSON" ]; then
echo "Error: Failed to fetch release notes from GitHub"
@@ -18,96 +18,62 @@ else
RELEASE_TYPE="Twilight"
fi
cat << EOF > "release_notes.md"
# Zen ${RELEASE_TYPE} Release
EOF
{
echo "# Zen ${RELEASE_TYPE} Release"
if [ "$RELEASE_BRANCH" = "release" ]; then
echo "${EXTRA_NOTES}" >> "release_notes.md"
if echo "$LATEST_RELEASE" | jq -e '(.features // []) | length > 0' > /dev/null; then
cat << EOF >> "release_notes.md"
## New Features
$(echo "$LATEST_RELEASE" | jq -r '.features[] | "- " + .')
EOF
if [ "$RELEASE_TYPE" = "Twilight" ]; then
echo
echo "> [!NOTE]"
echo "> You're currently in Twilight mode, this means you're downloading the latest experimental features and updates."
echo ">"
echo "> If you encounter any issues, please report them on the [issues page](https://github.com/zen-browser/desktop/issues)."
fi
if echo "$LATEST_RELEASE" | jq -e '(.fixes // []) | length > 0' > /dev/null; then
cat << EOF >> "release_notes.md"
if [ "$RELEASE_TYPE" = "Stable" ]; then
echo "${EXTRA_NOTES}"
## Fixes
EOF
echo "$LATEST_RELEASE" | jq -r '.fixes[] | if type=="object" then "- " + .description + " ([#" + (.issue|tostring) + "](" + "https://github.com/zen-browser/desktop/issues/" + (.issue|tostring) + "))" else "- " + . end' >> "release_notes.md"
if echo "$LATEST_RELEASE" | jq -e '.security != null and .security != ""' > /dev/null; then
echo
echo "## Security"
echo "[Various security fixes]($(echo "$LATEST_RELEASE" | jq -r '.security'))"
fi
if echo "$LATEST_RELEASE" | jq -e '(.features // []) | length > 0' > /dev/null; then
echo
echo "## New Features"
echo "$LATEST_RELEASE" | jq -r '.features[] | "- " + .'
fi
if echo "$LATEST_RELEASE" | jq -e '(.fixes // []) | length > 0' > /dev/null; then
echo
echo "## Fixes"
echo "$LATEST_RELEASE" | jq -r '.fixes[] | if type=="object" then "- " + .description + " ([#" + (.issue|tostring) + "](" + "https://github.com/zen-browser/desktop/issues/" + (.issue|tostring) + "))" else "- " + . end'
fi
if echo "$LATEST_RELEASE" | jq -e '(.breakingChanges // []) | length > 0' > /dev/null; then
echo
echo "## Breaking Changes"
echo "$LATEST_RELEASE" | jq -r '.breakingChanges[] | if type=="string" then "- " + . else "- " + .description + " [Learn more](" + .link + ")" end'
fi
if echo "$LATEST_RELEASE" | jq -e '(.themeChanges // []) | length > 0' > /dev/null; then
echo
echo "## Theme Changes"
echo "$LATEST_RELEASE" | jq -r '.themeChanges[] | "- " + .'
fi
if echo "$LATEST_RELEASE" | jq -e '(.changes // []) | length > 0' > /dev/null; then
echo
echo "## Changes"
echo "$LATEST_RELEASE" | jq -r '.changes[] | "- " + .'
fi
if echo "$LATEST_RELEASE" | jq -e '(.knownIssues // []) | length > 0' > /dev/null; then
echo
echo "## Known Issues"
echo "$LATEST_RELEASE" | jq -r '.knownIssues[] | "- " + .'
fi
fi
if echo "$LATEST_RELEASE" | jq -e '(.breakingChanges // []) | length > 0' > /dev/null; then
cat << EOF >> "release_notes.md"
## Breaking Changes
EOF
echo "$LATEST_RELEASE" | jq -r '.breakingChanges[] | if type=="string" then "- " + . else "- " + .description + " [Learn more](" + .link + ")" end' >> "release_notes.md"
fi
if echo "$LATEST_RELEASE" | jq -e '(.themeChanges // []) | length > 0' > /dev/null; then
cat << EOF >> "release_notes.md"
## Theme Changes
$(echo "$LATEST_RELEASE" | jq -r '.themeChanges[] | "- " + .')
EOF
fi
fi
cat << EOF >> "release_notes.md"
<details>
<summary>File Checksums (SHA-256)</summary>
\`\`\`
EOF
generate_checksum() {
local pattern=$1
echo "Generating checksum for $pattern"
sha256sum $pattern 2> /dev/null | awk '{sub(".*/", "", $2); print $1 " " $2}' >> "release_notes.md"
if [ ${PIPESTATUS[0]} -ne 0 ]; then
echo "Warning: No files found matching $pattern, skipping checksum."
fi
}
files=(
"./zen.source.tar.zst/*"
"./zen.linux-x86_64.tar.xz/*"
"./zen.linux-aarch64.tar.xz/*"
"./zen-x86_64.AppImage/*"
"./zen-x86_64.AppImage.zsync/*"
"./zen-aarch64.AppImage/*"
"./zen-aarch64.AppImage.zsync/*"
"./.github/workflows/object/windows-x64-signed-x86_64/zen.win-x86_64.zip"
"./zen.win-x86_64.zip/*"
"./.github/workflows/object/windows-x64-signed-arm64/zen.win-arm64.zip"
"./zen.win-arm64.zip/*"
"./linux.mar/*"
"./linux-aarch64.mar/*"
"./.github/workflows/object/windows-x64-signed-x86_64/windows.mar"
"./windows.mar/*"
"./.github/workflows/object/windows-x64-signed-arm64/windows-arm64.mar"
"./windows-arm64.mar/*"
"./macos.mar/*"
"./.github/workflows/object/windows-x64-signed-x86_64/zen.installer.exe"
"./zen.installer.exe/*"
"./.github/workflows/object/windows-x64-signed-arm64/zen.installer-arm64.exe"
"./zen.installer-arm64.exe/*"
"./zen.macos-universal.dmg/*"
)
for file in "${files[@]}"; do
generate_checksum "$file"
done
cat << EOF >> "release_notes.md"
\`\`\`
</details>
EOF
} > "release_notes.md"
echo "Release notes generated: release_notes.md"

View File

@@ -35,7 +35,7 @@ jobs:
windows-build:
name: Build Windows - ${{ matrix.arch }}
# aarch64 does not need full 16x, and we also dont use full LTO when generating GPO
runs-on: ${{ (inputs.release-branch == 'release' && !inputs.generate-gpo && matrix.arch == 'x86_64') && 'self-hosted' || 'ubuntu-latest' }}
runs-on: ${{ (inputs.release-branch == 'release' && !inputs.generate-gpo && matrix.arch == 'x86_64') && 'self-hosted' || 'blacksmith-8vcpu-ubuntu-2404' }}
env:
SCCACHE_GHA_ENABLED: ${{ inputs.use-sccache && 'true' || 'false' }}
CARGO_TERM_COLOR: always
@@ -53,10 +53,6 @@ jobs:
with:
tool-cache: false
# Bug: https://github.com/actions/checkout/issues/1153
- name: Remove zombie lock file
run: rm -f /home/ubuntu/actions-runner/_work/desktop/desktop/.git/modules/l10n/index.lock
- name: Checkout repository
uses: actions/checkout@v4
with:
@@ -64,7 +60,7 @@ jobs:
token: ${{ secrets.DEPLOY_KEY }}
- name: Setup Node.js
uses: actions/setup-node@v4
uses: useblacksmith/setup-node@v5
with:
node-version-file: '.nvmrc'
@@ -103,7 +99,7 @@ jobs:
env:
SEGMENT_DOWNLOAD_TIMEOUT_MINS: 5
id: cache-win-cross
uses: actions/cache@v4
uses: useblacksmith/cache@v5
with:
path: ${HOME}/win-cross
key: win-cross
@@ -226,6 +222,11 @@ jobs:
chmod +x ~/artifact/en-US.log
chmod +x ~/artifact/merged.profdata
- name: Insert API Keys
run: |
mkdir -p ~/.zen-keys
echo "${{ secrets.ZEN_SAFEBROWSING_API_KEY }}" > ~/.zen-keys/safebrowsing.dat
- name: Build
if: ${{ !(inputs.generate-gpo && matrix.arch == 'aarch64') }}
env:
@@ -259,6 +260,10 @@ jobs:
ls ./dist
ls .
- name: Remove API Keys
run: |
rm -rf ~/.zen-keys
- name: Move package for PGO upload
if: ${{ inputs.generate-gpo && matrix.arch == 'x86_64' }}
run: |

View File

@@ -26,7 +26,7 @@ docs/issue-metrics/*.md
# We also dont want to format the CSS files that are generated by the build
src/zen/tabs/zen-tabs.css
src/zen/compact-mode/zen-compact-mode.css
src/zen/common/ZenEmojies.mjs
src/zen/common/ZenEmojis.mjs
src/zen/workspaces/zen-workspaces.css

View File

@@ -29,11 +29,19 @@ Zen is a firefox-based browser with the aim of pushing your productivity to a ne
### Firefox Versions
- [`Release`](https://zen-browser.app/download) - Is currently built using Firefox version `139.0.1`! 🚀
- [`Twilight`](https://zen-browser.app/download?twilight) - Is currently built using Firefox version `RC 139.0.1`!
- [`Release`](https://zen-browser.app/download) - Is currently built using Firefox version `139.0.4`! 🚀
- [`Twilight`](https://zen-browser.app/download?twilight) - Is currently built using Firefox version `RC 140.0`!
### Contributing
If you'd like to report a bug, please do so on our [GitHub Issues page](https://github.com/zen-browser/desktop/issues/) and for feature requests, you can use [Github Discussions](https://github.com/zen-browser/desktop/discussions).
Zen is an open-source project, and we welcome contributions from the community! Please take a look at the [contribution guidelines](./docs/contribute.md) before getting started!
#### Partners
Thanks to all the partners of Zen for their support and contributions:
<a href="https://blacksmith.sh">
<img src="./docs/assets/blacksmith-yellow.png" width="350px"/>
</a>

View File

@@ -1 +1 @@
6548d6b52a8969b347101142ed630393332ab274
667950575bde54b8d83db2a25ccf468522d4e0c9

View File

@@ -32,6 +32,11 @@ if ! test "$SCCACHE_GHA_ENABLED" = "false"; then
fi
fi
# add safe browsing key if it exists on a file
if test -f "$HOME/.zen-keys/safebrowsing.dat"; then
ac_add_options --with-google-safebrowsing-api-keyfile="$HOME/.zen-keys/safebrowsing.dat"
fi
if test "$ZEN_RELEASE"; then
# TODO: Make this successful in builds
@@ -96,10 +101,7 @@ fi
ac_add_options --enable-unverified-updates
ac_add_options --enable-raw
ac_add_options --enable-webrtc
ac_add_options --enable-jxl
ac_add_options --enable-av1
ac_add_options --with-unsigned-addon-scopes=app,system

Binary file not shown.

After

Width:  |  Height:  |  Size: 5.2 KiB

View File

@@ -0,0 +1,545 @@
# Issue Metrics
| Metric | Average | Median | 90th percentile |
| --- | --- | --- | ---: |
| Time to first response | 1 day, 12:44:32 | 4:32:48 | 2 days, 6:10:24 |
| Time to close | 1 day, 6:45:20 | 4:43:46 | 2 days, 22:21:34 |
| Metric | Count |
| --- | ---: |
| Number of items that remain open | 248 |
| Number of items closed | 279 |
| Total number of items created | 527 |
| Title | URL | Time to first response | Time to close |
| --- | --- | --- | --- |
| Engine | https://github.com/zen-browser/desktop/issues/8743 | 0:20:22 | None |
| Zen suddenly eats all available memory [Windows 11] | https://github.com/zen-browser/desktop/issues/8742 | None | None |
| Some site-specfic buttons on address bar are missing | https://github.com/zen-browser/desktop/issues/8741 | None | 0:12:59 |
| Small "currently playing" at the bottom of the tabbar doesn't recognize livestreams. | https://github.com/zen-browser/desktop/issues/8740 | 1:38:39 | None |
| URL Bar flickers when toggling compact mode | https://github.com/zen-browser/desktop/issues/8738 | None | None |
| Missing bookmarks/pinned tabs icons | https://github.com/zen-browser/desktop/issues/8736 | 0:47:55 | None |
| Unable to access iCloud Passwords | https://github.com/zen-browser/desktop/issues/8735 | None | 1:13:00 |
| Some Extensions Like Firefox Multi Account Container No Longer Shows Thier Icons In The URL Bar | https://github.com/zen-browser/desktop/issues/8732 | 3:38:32 | 3:38:32 |
| Essential Tab Icon Vibrance | https://github.com/zen-browser/desktop/issues/8731 | 0:39:22 | 2:02:27 |
| Pinned Extensions not visible after browser restart in Compact Mode | https://github.com/zen-browser/desktop/issues/8730 | 5:05:37 | None |
| Essential tabs get out of order when creating a new window | https://github.com/zen-browser/desktop/issues/8729 | None | None |
| Zen browser doesn't allow entering TOTP for Proxmox access | https://github.com/zen-browser/desktop/issues/8728 | None | None |
| Vertical scrolling in the sidebar slows down when using the trackpad swipe gesture to switch workspaces in 1.12.9b. | https://github.com/zen-browser/desktop/issues/8727 | None | None |
| Restoring pinned tabs relegates them to normal tabs area | https://github.com/zen-browser/desktop/issues/8726 | 3:03:01 | None |
| Using SHIFT + some key with a modifier doesn't respond as a keyboard shortcut. | https://github.com/zen-browser/desktop/issues/8725 | 5:26:20 | None |
| Cant build Zen error 2 | https://github.com/zen-browser/desktop/issues/8723 | 2:31:17 | None |
| Pinned extensions sometimes aren't visible in toolbar on startup in single toolbar mode | https://github.com/zen-browser/desktop/issues/8722 | 2:52:31 | None |
| Gradient on top of window not displaying correctly | https://github.com/zen-browser/desktop/issues/8721 | 6:16:26 | None |
| Missing the Profiles menu item after update to 1.12.9b version | https://github.com/zen-browser/desktop/issues/8720 | None | 0:06:49 |
| Search with Google not working inside Glances window. | https://github.com/zen-browser/desktop/issues/8717 | 12:16:58 | None |
| Right-Click Menu Icon Not Displaying | https://github.com/zen-browser/desktop/issues/8716 | 0:05:47 | 0:58:20 |
| Can't share screen on Google Meet (Mac) | https://github.com/zen-browser/desktop/issues/8715 | None | None |
| Profile switcher missing in context menu | https://github.com/zen-browser/desktop/issues/8713 | 0:40:14 | 8:43:33 |
| New Tab Hover Menu transparent instead of translucent in maximized window | https://github.com/zen-browser/desktop/issues/8711 | 8:27:38 | 8:27:38 |
| Unloaded Tabs dim only the Favicon but not the Text | https://github.com/zen-browser/desktop/issues/8710 | 6:56:56 | None |
| Notification push don't work in linux if the page isn't loaded | https://github.com/zen-browser/desktop/issues/8709 | None | None |
| Zen Browser's Position Drags Slightly When Clicking its Sidebar on MacOS | https://github.com/zen-browser/desktop/issues/8706 | 13:34:24 | None |
| Extensions not opening Before focus to a tab | https://github.com/zen-browser/desktop/issues/8705 | None | None |
| Cmd + K (Focus Search) still active after closing it | https://github.com/zen-browser/desktop/issues/8704 | None | None |
| 2 video in PIP dont work if you have 2 screen | https://github.com/zen-browser/desktop/issues/8703 | None | None |
| SteamVR's Desktop Overlay Cannot Reveal Compact Mode Tabs | https://github.com/zen-browser/desktop/issues/8702 | None | None |
| Restore Last Closed Tab(s) right after startup breaks the UI | https://github.com/zen-browser/desktop/issues/8699 | 9:14:56 | None |
| Zen Browser doesnt store my tabs and half the features are missing in 1.12.8b | https://github.com/zen-browser/desktop/issues/8697 | 1:41:36 | None |
| Restoring Session With Even Number of Windows Results in At Least One Window Not Adhering to Theme Coloring | https://github.com/zen-browser/desktop/issues/8694 | 0:28:05 | 1 day, 3:00:32 |
| When in compact mode in Windows and when no tabs are open, the navigation tools of windows to close, minimize and maximize get overlapped and its difficult to use them. | https://github.com/zen-browser/desktop/issues/8692 | None | None |
| Pinned tab title not refreshing | https://github.com/zen-browser/desktop/issues/8691 | 6:20:06 | None |
| Zen browser doesn't check for duplicate bookmarks when importing them from other accounts | https://github.com/zen-browser/desktop/issues/8690 | 15:49:28 | None |
| Cannot add tabs to essentials anymore | https://github.com/zen-browser/desktop/issues/8689 | 2:19:39 | None |
| Address/search bar doesn't show search engines, when address is typed, no search is allowed | https://github.com/zen-browser/desktop/issues/8687 | 6:14:49 | None |
| Windows Single Sign-On does not seem to work from within Containers | https://github.com/zen-browser/desktop/issues/8686 | 4:55:19 | None |
| Spelling selection - added language does'nt show up | https://github.com/zen-browser/desktop/issues/8685 | 10:38:15 | None |
| Unable to open Glance windows, shortcut just opens new window regardless of selected activation key. | https://github.com/zen-browser/desktop/issues/8680 | 10:03:54 | 1 day, 16:09:30 |
| Pinned tabs don't show an updated version of a website after opening them again | https://github.com/zen-browser/desktop/issues/8679 | None | None |
| Dragging a local PDF into Zen Browser fails with “File not found” error | https://github.com/zen-browser/desktop/issues/8670 | 1 day, 3:11:59 | None |
| In the compact mode, there are some issues with the automatic hiding of the toolbar. | https://github.com/zen-browser/desktop/issues/8669 | None | None |
| Error when opening the app | https://github.com/zen-browser/desktop/issues/8668 | None | None |
| Blur not working anymore in maximized windows | https://github.com/zen-browser/desktop/issues/8667 | 0:36:09 | 0:36:09 |
| Back and forth arrows confusing | https://github.com/zen-browser/desktop/issues/8666 | 1:03:53 | 1:03:53 |
| pop up "Paste" on site | https://github.com/zen-browser/desktop/issues/8664 | 12:27:36 | 12:27:36 |
| Zen Browser Forgetting Tab Settings | https://github.com/zen-browser/desktop/issues/8662 | 3:12:47 | None |
| Windows taskber preview showing inactive tab | https://github.com/zen-browser/desktop/issues/8657 | None | None |
| [BUG] Middle Click not scrolling faster | https://github.com/zen-browser/desktop/issues/8656 | None | 16:39:10 |
| Toolbar hides when hovering off a bookmark but still within the toolbar area in Compact Mode | https://github.com/zen-browser/desktop/issues/8655 | 15:06:50 | 15:06:50 |
| Different zoom levels, while working with the pdf (drop down) is not visible unless howering over it. | https://github.com/zen-browser/desktop/issues/8653 | 17:36:47 | None |
| Sidebar unexpectedly toggles in compact mode when using Raycast focus timer | https://github.com/zen-browser/desktop/issues/8652 | 17:58:22 | 19:09:46 |
| Horizontal Scrolling with mouse wheel is not working on Mac | https://github.com/zen-browser/desktop/issues/8649 | 20:58:04 | None |
| Zen context menus have inconsistent indentation and toast notification color is too dark in private mode. | https://github.com/zen-browser/desktop/issues/8648 | 21:56:58 | None |
| Sidebar stuck open, does not collapse when compact mode turned on. | https://github.com/zen-browser/desktop/issues/8643 | 1 day, 10:21:36 | None |
| olk.exe is blocked by MS Defender ASR Security role when opening links from Outlook / MS Teams | https://github.com/zen-browser/desktop/issues/8642 | 3:20:57 | 2 days, 3:44:52 |
| Cmd+Shift+C doesn't follow browser.urlbar.decodeURLsOnCopy | https://github.com/zen-browser/desktop/issues/8641 | 5:19:57 | 5:19:57 |
| Hi, there is an issue with the sound icon in the shortcuts where it looks like it's beating. | https://github.com/zen-browser/desktop/issues/8640 | 0:31:19 | 6:28:53 |
| YouTube locks up during video and does not return and does not refresh | https://github.com/zen-browser/desktop/issues/8638 | None | None |
| Google Sheets error report when switching from split screen | https://github.com/zen-browser/desktop/issues/8635 | None | None |
| Remove link to Firefox Support | https://github.com/zen-browser/desktop/issues/8634 | 0:25:06 | None |
| Can't Open Hisotry Tab In Compact Mode with No Open Tabs | https://github.com/zen-browser/desktop/issues/8632 | 2:46:16 | None |
| division by zero, showing incorrectly in the search bar | https://github.com/zen-browser/desktop/issues/8631 | 23:16:38 | 1 day, 0:05:11 |
| No option to unpin tab from url bar | https://github.com/zen-browser/desktop/issues/8629 | 1:19:24 | 4:01:02 |
| Essential and Pinned Tab Icons Not Displaying Until Clicked | https://github.com/zen-browser/desktop/issues/8628 | 4:06:21 | 4 days, 1:51:29 |
| Colors in sidebar seem broken | https://github.com/zen-browser/desktop/issues/8627 | 0:51:23 | 0:51:23 |
| [BUG] Compact mode disales also Mini window brokes | https://github.com/zen-browser/desktop/issues/8626 | 0:32:32 | None |
| spotify keeps crashing | https://github.com/zen-browser/desktop/issues/8625 | 0:09:38 | 0:09:38 |
| [regression] tab bar doesn't follow the currently selected tab. | https://github.com/zen-browser/desktop/issues/8623 | 1:28:05 | None |
| can't download on glance page | https://github.com/zen-browser/desktop/issues/8620 | 8:43:05 | None |
| Keybinds not working after tab change | https://github.com/zen-browser/desktop/issues/8617 | 13:42:53 | None |
| Address bar not visible on 1280x720 screens | https://github.com/zen-browser/desktop/issues/8616 | None | None |
| Close button not centered when tabs are on the right | https://github.com/zen-browser/desktop/issues/8615 | None | None |
| OpenSearch is not working in Zen Browser | https://github.com/zen-browser/desktop/issues/8614 | None | 0:02:48 |
| Switching to an unloaded tab opens a duplicate, instead of actually switching to it. | https://github.com/zen-browser/desktop/issues/8613 | None | 0:51:33 |
| Split view tabs' custom red highlight color reset after opening new window | https://github.com/zen-browser/desktop/issues/8610 | 10:05:25 | None |
| Audio preview from osu! website not functional | https://github.com/zen-browser/desktop/issues/8608 | 7:14:22 | 7:35:21 |
| Zen disables compact mode on startup | https://github.com/zen-browser/desktop/issues/8606 | 8:06:57 | None |
| Overflow menu button only appears for automatically added buttons | https://github.com/zen-browser/desktop/issues/8605 | None | None |
| Youtube Fullscreen grey rounded shape in each corner | https://github.com/zen-browser/desktop/issues/8604 | None | None |
| Cannot higlight a part of URL in adress (or URL) bar | https://github.com/zen-browser/desktop/issues/8603 | 1 day, 15:33:14 | None |
| Toggling Sidebar's Width on a Floating Sidebar shows weird 2 frame animation | https://github.com/zen-browser/desktop/issues/8602 | None | None |
| Omnibox closes on keyboard layout switch (Wayland / KDE) | https://github.com/zen-browser/desktop/issues/8600 | None | 0:27:49 |
| Interaction between Essentials and containers makes tabs disappear | https://github.com/zen-browser/desktop/issues/8599 | 1:14:41 | None |
| Unclosable Search Popup in Zen Browser After Update | https://github.com/zen-browser/desktop/issues/8598 | None | 4:16:15 |
| MacOS Smooth Scrolling Stutter on HiDPI Resolutions | https://github.com/zen-browser/desktop/issues/8597 | None | 0:01:02 |
| When toggling compact mode with tabs on the right side on Windows, the buttons briefly pop up in the wrong place | https://github.com/zen-browser/desktop/issues/8595 | None | None |
| Unable to Remove Workspace Container after Update | https://github.com/zen-browser/desktop/issues/8594 | None | 1:32:31 |
| Displacement of icons on collapsed bar | https://github.com/zen-browser/desktop/issues/8593 | 1:43:44 | None |
| Inconsistent behavior between Windows (x64) and Linux (tar) regarding keyboard shortcuts | https://github.com/zen-browser/desktop/issues/8592 | 6:33:41 | None |
| Overflow menu missing in single toolbar mode | https://github.com/zen-browser/desktop/issues/8591 | 4:48:43 | 4:48:43 |
| Icons in right click menu out of allignment | https://github.com/zen-browser/desktop/issues/8590 | None | 13:32:10 |
| Sites without a background color use the theme gradient as the background | https://github.com/zen-browser/desktop/issues/8589 | 6:05:21 | 6:05:21 |
| Multiple home pages do not load on starting the browser with zen.urlbar.replace-newtab set to true | https://github.com/zen-browser/desktop/issues/8588 | None | None |
| Switching to WhatsApp Web tab does not focus the message input field | https://github.com/zen-browser/desktop/issues/8587 | 10:55:01 | 2 days, 13:08:21 |
| When opening a new window, pinned split screen tabs are split apart / not preserved | https://github.com/zen-browser/desktop/issues/8583 | None | None |
| widget.gtk.native-context-menus not being functional (most options) | https://github.com/zen-browser/desktop/issues/8582 | None | None |
| Icon Rendering Incorrectly in KDE Plasma 6 Wayland Window Switcher | https://github.com/zen-browser/desktop/issues/8580 | None | None |
| spotfy just refuses to work properly | https://github.com/zen-browser/desktop/issues/8577 | 1:39:16 | 1:39:16 |
| Compact view not working at all | https://github.com/zen-browser/desktop/issues/8575 | 4:33:12 | 1 day, 0:35:59 |
| Gap at the top of every windows | https://github.com/zen-browser/desktop/issues/8574 | 2:50:22 | None |
| Private Mode Forced Pinkish-Purple Theme | https://github.com/zen-browser/desktop/issues/8570 | 0:27:34 | 0:27:55 |
| Logging into google causing browser to crash | https://github.com/zen-browser/desktop/issues/8569 | None | None |
| Streaming websites do not work on Windows beta | https://github.com/zen-browser/desktop/issues/8568 | 0:48:09 | 0:48:09 |
| get unchange blue theme after last autoupdate to 1.12.8b | https://github.com/zen-browser/desktop/issues/8567 | 1:26:08 | 1:31:30 |
| Customize Toobar: No longer it's possible to drag entries to the url bar. | https://github.com/zen-browser/desktop/issues/8566 | 0:02:19 | 0:02:19 |
| Browser window sometimes disappears for less than a second, revealing applications running in the background. | https://github.com/zen-browser/desktop/issues/8565 | None | None |
| MMB Paste when setting is OFF | https://github.com/zen-browser/desktop/issues/8564 | None | None |
| The sidebar does not change colors in auto-hide mod in compact mode | https://github.com/zen-browser/desktop/issues/8563 | None | None |
| Split View: "Save PDF before leaving"-dialogue centered on browser window; covered by other split(s) | https://github.com/zen-browser/desktop/issues/8561 | None | None |
| No video with supported format and MIME type found | https://github.com/zen-browser/desktop/issues/8560 | 1:03:42 | 1 day, 0:42:39 |
| Floating URL bar appears way off the expected position | https://github.com/zen-browser/desktop/issues/8559 | 11:32:28 | None |
| gradient contrast issue when switching theme | https://github.com/zen-browser/desktop/issues/8558 | None | None |
| Tab corners aren't rounded on some pages | https://github.com/zen-browser/desktop/issues/8557 | None | None |
| Background defaults to Zen theme color, not white | https://github.com/zen-browser/desktop/issues/8554 | 17:48:16 | 1 day, 0:40:19 |
| Zen Crashes when handling anything related to audio sharing(discord or call) or video sharing | https://github.com/zen-browser/desktop/issues/8553 | 2 days, 0:42:30 | 4 days, 16:10:53 |
| Sidebar titles are not visible | https://github.com/zen-browser/desktop/issues/8552 | 14:31:33 | None |
| Gradient persists with zen.theme.gradient=false | https://github.com/zen-browser/desktop/issues/8551 | 8:00:02 | 16:48:52 |
| bookmark issue | https://github.com/zen-browser/desktop/issues/8550 | None | None |
| Exit button not in corner | https://github.com/zen-browser/desktop/issues/8549 | 0:21:02 | None |
| Workspace icons break when resizing window. The icon state persists after the window is maximized | https://github.com/zen-browser/desktop/issues/8548 | None | None |
| URL bar flickers when cursor is at specific position | https://github.com/zen-browser/desktop/issues/8547 | None | None |
| New tab button disappeared and lost fixed position after reenabling | https://github.com/zen-browser/desktop/issues/8546 | None | None |
| Single bar Mode Extension issue | https://github.com/zen-browser/desktop/issues/8545 | 18:47:17 | None |
| Deadzone on top right in macOS | https://github.com/zen-browser/desktop/issues/8540 | None | 0:12:33 |
| Extensions stopped working | https://github.com/zen-browser/desktop/issues/8538 | None | None |
| Add-on Element Overlap | https://github.com/zen-browser/desktop/issues/8537 | None | None |
| YouTube UI Rounded corners and theme colour bug | https://github.com/zen-browser/desktop/issues/8536 | 3:15:12 | 3:15:12 |
| Loading large JSON files in the built-in viewer, then using the "Save" button results in the downloaded file missing some JSON entries. | https://github.com/zen-browser/desktop/issues/8535 | None | None |
| Win10 1809 versionBaidu Apollo Config Center WEB-UIText Area Input Mouse focus on position error | https://github.com/zen-browser/desktop/issues/8533 | None | None |
| Webpages are flickering/flashing constantly | https://github.com/zen-browser/desktop/issues/8531 | None | None |
| Tabs reopen in new windows | https://github.com/zen-browser/desktop/issues/8529 | None | None |
| Workspace Default Container Randomised on Update | https://github.com/zen-browser/desktop/issues/8527 | 8:07:54 | None |
| Workspace right click not working | https://github.com/zen-browser/desktop/issues/8526 | 8:21:24 | None |
| When re-opening a recently closed window, window is opened with and focused on a New Tab page | https://github.com/zen-browser/desktop/issues/8525 | 16:10:13 | None |
| Battleye flag | https://github.com/zen-browser/desktop/issues/8524 | 0:30:25 | 0:37:32 |
| Close tab action removes Essential | https://github.com/zen-browser/desktop/issues/8523 | 0:48:59 | 1:37:49 |
| Update v1.12.7b broke compact tabs | https://github.com/zen-browser/desktop/issues/8522 | 1:17:05 | 1:17:05 |
| Patch apply failed for update v1.12.7b | https://github.com/zen-browser/desktop/issues/8521 | None | 1 day, 5:59:24 |
| More light middle bar of sidebar for better recognition of icons on tabs | https://github.com/zen-browser/desktop/issues/8520 | 2:58:50 | 2:58:50 |
| More pleasant corner in compact mode and collapsed option with hiding of top bar | https://github.com/zen-browser/desktop/issues/8519 | 3:43:41 | 6:46:24 |
| sometime alt tab does.t work | https://github.com/zen-browser/desktop/issues/8517 | None | None |
| dowload some pdf | https://github.com/zen-browser/desktop/issues/8516 | None | None |
| YouTube in full screen mode is laggy/jerky. In Firefox, same video is fine | https://github.com/zen-browser/desktop/issues/8515 | None | None |
| iCloud Passwords extension reports "macOS Sonoma or later to be installed" but I am running on Sequoia | https://github.com/zen-browser/desktop/issues/8514 | 0:10:31 | 0:10:31 |
| `New background tab opened` notification not issued in some cases | https://github.com/zen-browser/desktop/issues/8511 | None | None |
| Unable to see notifications from zen when in single toolbar browser layout, unless hovering over top bar. | https://github.com/zen-browser/desktop/issues/8510 | None | 1:08:12 |
| Hiding top bar and tab bar doesnt work in latest version | https://github.com/zen-browser/desktop/issues/8509 | None | 0:14:35 |
| Container-specific essentials don't work, even if enable and reboot - Windows ARM - Last update | https://github.com/zen-browser/desktop/issues/8508 | 0:24:00 | None |
| Clicking current workspace icon flashes previous workspace's theme colours | https://github.com/zen-browser/desktop/issues/8507 | 2:33:28 | 12:47:45 |
| Conflict with Zen Privacy app | https://github.com/zen-browser/desktop/issues/8506 | 2:40:37 | 2:40:37 |
| Can not play videos in Udemy and music in Spotify. | https://github.com/zen-browser/desktop/issues/8505 | 1:27:54 | 1:27:54 |
| When opening a new window, the order of essential tabs gets out of order (but only in the second window) | https://github.com/zen-browser/desktop/issues/8503 | 5:52:57 | 5:52:57 |
| Tab list doesn't retain scroll position after opening the browser | https://github.com/zen-browser/desktop/issues/8502 | 20:46:10 | None |
| YouTube player sometimes incorrectly opens in fullscreen mode | https://github.com/zen-browser/desktop/issues/8501 | 11:18:42 | None |
| Toolbar items can only be inserted into sidebar as nested in Top Buttons and Bottom Buttons blocks. | https://github.com/zen-browser/desktop/issues/8500 | 8:27:32 | 8:27:32 |
| Stupid updates enabled by default and hard to disable | https://github.com/zen-browser/desktop/issues/8499 | 9:19:18 | 9:19:06 |
| Gradient in sidebar is broken | https://github.com/zen-browser/desktop/issues/8498 | 9:25:28 | 9:25:28 |
| FirebaseError: Messaging: This browser doesn't support the API's required to use the Firebase SDK. | https://github.com/zen-browser/desktop/issues/8497 | None | None |
| Weird bar on top of desktop window on macos after 1.12.7b | https://github.com/zen-browser/desktop/issues/8496 | 0:22:14 | 1:19:03 |
| Mod Refuses to Uninstall | https://github.com/zen-browser/desktop/issues/8495 | 0:20:53 | 0:20:52 |
| Livestream video freezes when focusing other fullscreen window, but audio still works | https://github.com/zen-browser/desktop/issues/8491 | 16:45:00 | None |
| Toggle Sidebar button not visible/working | https://github.com/zen-browser/desktop/issues/8489 | 6:25:39 | None |
| all Zen UI elements outside the viewport are partially transparent (not blurred) | https://github.com/zen-browser/desktop/issues/8488 | None | 1 day, 8:57:38 |
| Top Bar Delay and Partial Display on Hover After Recent Update | https://github.com/zen-browser/desktop/issues/8487 | 1:35:56 | 13:37:40 |
| Firefox View icon disapears after restart | https://github.com/zen-browser/desktop/issues/8486 | 1 day, 17:22:21 | None |
| Sidebar double click not opens new tab anymore | https://github.com/zen-browser/desktop/issues/8485 | 0:09:42 | 10:01:18 |
| When Windows wakes my display from being powered off by the OS, Zen toolbar and sidebar become unresponsive and do not show in compact mode | https://github.com/zen-browser/desktop/issues/8484 | None | None |
| Compact mode toolbar dragging issue | https://github.com/zen-browser/desktop/issues/8483 | None | 0:03:29 |
| Shift + Alt - unexpectedly closing opened new tab spotlight input | https://github.com/zen-browser/desktop/issues/8481 | 1 day, 12:59:02 | None |
| Unable to hide Workspace Indicator | https://github.com/zen-browser/desktop/issues/8480 | 1 day, 10:43:05 | 0:05:56 |
| Url bar doesn't popup correctly on compact mode | https://github.com/zen-browser/desktop/issues/8478 | None | 0:06:58 |
| [1.12.6b] Initializing a workspace causes a empty workspace until you close out of the browser and reopen it. | https://github.com/zen-browser/desktop/issues/8476 | None | 1:04:58 |
| Renaming pinned tab input focus issue (when using Left/Right buttons) | https://github.com/zen-browser/desktop/issues/8475 | None | 2:46:26 |
| URL BAR APPEARS WHEN EXITING FULLSCREEN | https://github.com/zen-browser/desktop/issues/8474 | None | 0:29:12 |
| Mouse loses functionality in the sidebar and sidebar gets stuck on open im compact mode | https://github.com/zen-browser/desktop/issues/8471 | 11:10:16 | None |
| Tabs created by text being dragged into sidebar show container indicator when a workspace is assigned to a container. | https://github.com/zen-browser/desktop/issues/8470 | None | None |
| 1Password Extension - Desktop App Integration Setting - Connection Problem Error | https://github.com/zen-browser/desktop/issues/8469 | 2:41:44 | None |
| Dragging a tab onto a Glance tab appends its favicon and renders the tab inaccessible | https://github.com/zen-browser/desktop/issues/8465 | 0:31:46 | 22:19:59 |
| Screen Sharing Malfunction in Google Meet (Windows) | https://github.com/zen-browser/desktop/issues/8464 | 0:58:42 | None |
| Glance causes stutter | https://github.com/zen-browser/desktop/issues/8463 | None | None |
| visibility of the search bar with a dark background | https://github.com/zen-browser/desktop/issues/8462 | 2:40:56 | 2:40:56 |
| container, workspace and tab synchronization | https://github.com/zen-browser/desktop/issues/8460 | None | None |
| It's Dark mode when the Tips Box comes up | https://github.com/zen-browser/desktop/issues/8459 | 1:54:22 | 16:10:29 |
| Toolbar doesn't appear on hover after update when using compact mode with hidden bars | https://github.com/zen-browser/desktop/issues/8458 | 0:24:26 | 14:16:08 |
| Gradient sometimes lost on startup | https://github.com/zen-browser/desktop/issues/8457 | None | None |
| Workspace name visible again after udpate | https://github.com/zen-browser/desktop/issues/8455 | 0:45:18 | 2:35:37 |
| Workspaces not visible when compact mode | https://github.com/zen-browser/desktop/issues/8454 | 3:14:43 | None |
| Favicon Issue on grok.com Bookmarks | https://github.com/zen-browser/desktop/issues/8453 | None | None |
| Ctrl + Shift + C (pick an element from the page) not working in page devtools | https://github.com/zen-browser/desktop/issues/8452 | 3:38:50 | 1 day, 0:04:18 |
| Signing in with Google is Not working. | https://github.com/zen-browser/desktop/issues/8451 | 3 days, 18:52:30 | None |
| Browser tab switcher only displays 7 tabs even when more are open | https://github.com/zen-browser/desktop/issues/8450 | None | None |
| Compact Sidebar is not aligned properly | https://github.com/zen-browser/desktop/issues/8449 | None | 7:19:21 |
| TLS error connecting to accounts.microsoft.com | https://github.com/zen-browser/desktop/issues/8448 | None | None |
| Weird colored text highlighting in google search titles | https://github.com/zen-browser/desktop/issues/8447 | None | 5:45:04 |
| White block at the bottom of every page | https://github.com/zen-browser/desktop/issues/8446 | None | None |
| External links launch process hangs for 2 minutes | https://github.com/zen-browser/desktop/issues/8445 | 8:39:25 | None |
| Collapse and multi toolbar layouts are shortened vertically | https://github.com/zen-browser/desktop/issues/8444 | None | 4:29:53 |
| Audible online player not working | https://github.com/zen-browser/desktop/issues/8443 | 2:35:00 | 2:35:00 |
| YouTube views counter display issue. | https://github.com/zen-browser/desktop/issues/8439 | None | None |
| The workspaces icons at the bottom twinkle when i resize | https://github.com/zen-browser/desktop/issues/8437 | None | None |
| bug extension name/size icon when switch between single toolbar and multiple toolbar | https://github.com/zen-browser/desktop/issues/8436 | None | None |
| 1.12.5b can't auto-update on macOS, manual upgrage results in new profile | https://github.com/zen-browser/desktop/issues/8433 | 4:31:18 | 1 day, 20:07:07 |
| Gamepad breaks the browser on mac | https://github.com/zen-browser/desktop/issues/8432 | None | 4 days, 20:24:24 |
| Suerpins - Broke "Makes pinned tabs look similar to Essentials (icon only in a grid)" | https://github.com/zen-browser/desktop/issues/8431 | 0:56:23 | 4:32:12 |
| Browser hangs after closing a tab that was using picture-in-picture. | https://github.com/zen-browser/desktop/issues/8430 | None | None |
| Zen Browser is laggy and consumes excessive energy | https://github.com/zen-browser/desktop/issues/8428 | 1 day, 13:37:20 | None |
| Pinned tabs appear in incorrect workspace/container after using Ctrl + N or open new window in taskbar | https://github.com/zen-browser/desktop/issues/8427 | None | None |
| Glance and Tab Switching not working properly | https://github.com/zen-browser/desktop/issues/8426 | 0:08:15 | None |
| Copying Profile from Flatpak to AppImage gives "Older Version" error, even though AppImage is newer. | https://github.com/zen-browser/desktop/issues/8424 | None | None |
| Sidebar custom configuration resets between sessions in the app, and instead should persist. | https://github.com/zen-browser/desktop/issues/8422 | None | None |
| Blurred fonts on ultrawide monitor full screen | https://github.com/zen-browser/desktop/issues/8421 | 3:59:32 | None |
| Allow Drag-and-Drop to Open Tabs in a New Window | https://github.com/zen-browser/desktop/issues/8418 | 0:42:07 | None |
| Floating url bar unexpected behaviour (loosing focus and not showing instantly with ctrl+T) | https://github.com/zen-browser/desktop/issues/8417 | None | None |
| Reset URL and switch to next tab undesired behaviour | https://github.com/zen-browser/desktop/issues/8416 | 5:53:34 | 1 day, 12:25:32 |
| One tab required to remain loaded in every workspace when trying to unload all tabs | https://github.com/zen-browser/desktop/issues/8414 | None | None |
| edit : sorry for cloning the issue, the same issue was posted right below this issue by gordonn. | https://github.com/zen-browser/desktop/issues/8413 | None | 0:06:07 |
| [Twilight 1.13] Multi toolbar and collapse toolbar modes are misalligned | https://github.com/zen-browser/desktop/issues/8412 | 0:37:08 | 4:32:12 |
| Clicking already selected workspace causes incorrect scrollbar size | https://github.com/zen-browser/desktop/issues/8411 | None | None |
| Switch to tab indicator thinner in new twilight (not sure if its intentional or not) | https://github.com/zen-browser/desktop/issues/8410 | 0:53:15 | 0:53:15 |
| Side Toolbox Flash | https://github.com/zen-browser/desktop/issues/8409 | 3:16:36 | 10 days, 4:38:53 |
| Compact-mode toolbox background visibly cuts off on wide/hires screens | https://github.com/zen-browser/desktop/issues/8408 | None | None |
| ZenBrowser cannot disable the Save Page shortcut key. | https://github.com/zen-browser/desktop/issues/8406 | None | None |
| Bookmark management does not display which workspace it belongs to. | https://github.com/zen-browser/desktop/issues/8405 | None | None |
| Zen URL bar insists on showing history even when the option to do so is disabled. | https://github.com/zen-browser/desktop/issues/8404 | 9:21:34 | None |
| Ctrl-tab should not cycle through essential tabs | https://github.com/zen-browser/desktop/issues/8403 | 0:39:33 | None |
| Extensions being removed? | https://github.com/zen-browser/desktop/issues/8402 | None | None |
| Weird bookmark bar showing up | https://github.com/zen-browser/desktop/issues/8401 | None | None |
| HDR on Linux doesn't work when zen is windowed | https://github.com/zen-browser/desktop/issues/8400 | 22:32:03 | None |
| Compact mode doesnt work | https://github.com/zen-browser/desktop/issues/8397 | 9 days, 16:40:40 | None |
| Most of rendering is blurry if window exceeds 4k resolution | https://github.com/zen-browser/desktop/issues/8396 | 8 days, 15:12:32 | None |
| Changing keyboard shortcuts, "Conflict with another shortcut" | https://github.com/zen-browser/desktop/issues/8395 | 1:12:32 | None |
| Installed mods not showing up in list | https://github.com/zen-browser/desktop/issues/8394 | 6:03:57 | None |
| Inconsistent behaviour of expanding sidebar between different OS's and mouse movements | https://github.com/zen-browser/desktop/issues/8393 | None | None |
| Holding ⌥ on Mac to select the text inside a link is broken | https://github.com/zen-browser/desktop/issues/8391 | None | None |
| Workspace indicator unhideable on Linux | https://github.com/zen-browser/desktop/issues/8390 | 2:00:45 | 2:27:20 |
| Tabliss does not load in new window or tab. | https://github.com/zen-browser/desktop/issues/8387 | 9:41:37 | None |
| I could'nt use "Better ctrl+Tab panel" mod in desktop. | https://github.com/zen-browser/desktop/issues/8386 | 5:23:01 | None |
| Customizing toolbar freeze | https://github.com/zen-browser/desktop/issues/8383 | None | None |
| error code SHAK-6007 Crunchyroll playback error | https://github.com/zen-browser/desktop/issues/8382 | 6:10:43 | 6:10:43 |
| URL character get double | https://github.com/zen-browser/desktop/issues/8379 | None | None |
| Zen browser multiple windows in taskbar | https://github.com/zen-browser/desktop/issues/8376 | 0:03:50 | 0:09:58 |
| Essentials are unloaded if Clear search, site and downloaded history at zen close is checked | https://github.com/zen-browser/desktop/issues/8374 | 0:44:41 | 0:44:41 |
| Tuxedo OS (Ubuntu 24.04.1) - several errors that might lead into a "Crash Annotation GraphicsCriticalError" after starting Zen | https://github.com/zen-browser/desktop/issues/8373 | 2:10:11 | 2:10:11 |
| Selecting all tabs and closing them also removes the pinned tabs | https://github.com/zen-browser/desktop/issues/8371 | None | 5:03:07 |
| Invisible text in right click menu | https://github.com/zen-browser/desktop/issues/8369 | None | 5 days, 14:21:42 |
| [bug] i18n error, zen-background-tab-opened-toast has not been localized | https://github.com/zen-browser/desktop/issues/8368 | 9:27:59 | 9:27:59 |
| Split View flickers when moving split to the right | https://github.com/zen-browser/desktop/issues/8363 | None | 6:33:55 |
| Container Specific essentials not working | https://github.com/zen-browser/desktop/issues/8361 | None | 0:05:44 |
| Redundunt windows are opening up after launching zen browser | https://github.com/zen-browser/desktop/issues/8360 | 8:38:50 | None |
| zen.workspaces.show-workspace-indicator setting ignored | https://github.com/zen-browser/desktop/issues/8356 | 0:05:01 | 0:05:01 |
| Seemingly after each update, new icon shows in Dock | https://github.com/zen-browser/desktop/issues/8355 | 12:16:44 | None |
| Downloaded language pack not being respected (English GB) | https://github.com/zen-browser/desktop/issues/8354 | 0:35:35 | 1:02:34 |
| Can't disable Shortcut suggestions and it won't work if I disable the history | https://github.com/zen-browser/desktop/issues/8352 | 6:39:16 | 6:39:16 |
| Arabic language Custom font bug on arch linux | https://github.com/zen-browser/desktop/issues/8350 | None | None |
| Incorrect text on report option after deleting extension | https://github.com/zen-browser/desktop/issues/8349 | 15:25:03 | None |
| UI padding is not accurate in split tabs | https://github.com/zen-browser/desktop/issues/8347 | None | None |
| Cannot add tabs to Essentials panel nothing happens on click | https://github.com/zen-browser/desktop/issues/8345 | 16:45:06 | 16:59:08 |
| New tab doesn't open automatically if essential tabs are closed before regular tabs | https://github.com/zen-browser/desktop/issues/8344 | None | None |
| Pressing CTRL key unfocuses URL bar | https://github.com/zen-browser/desktop/issues/8343 | 2:09:34 | None |
| URL opacity blinks when leaving compact mode | https://github.com/zen-browser/desktop/issues/8342 | None | None |
| Cant Add more Essential tabs | https://github.com/zen-browser/desktop/issues/8341 | None | 2:59:08 |
| Sidebar not hidden in all windows on startup when using "Hide Both" in compact view | https://github.com/zen-browser/desktop/issues/8339 | 5:37:43 | 5:37:43 |
| No green dot on proton mail | https://github.com/zen-browser/desktop/issues/8337 | 4:15:47 | 4:15:47 |
| Mouse Cursor not disapearing while watching YouTube | https://github.com/zen-browser/desktop/issues/8336 | None | 3:07:20 |
| Very slow connecting on localhost website | https://github.com/zen-browser/desktop/issues/8334 | None | None |
| URL Bar: Can't disable Shortcut suggestions | https://github.com/zen-browser/desktop/issues/8333 | 2:02:02 | 4:12:37 |
| New tab does not open in same container as current tab | https://github.com/zen-browser/desktop/issues/8332 | None | 4:02:56 |
| Swipe on touchscreen does not scroll, it selects | https://github.com/zen-browser/desktop/issues/8331 | None | None |
| The floating bar is no longer displayed... | https://github.com/zen-browser/desktop/issues/8330 | 5:13:17 | 6:33:30 |
| Can't change the theme to a dark color, like black | https://github.com/zen-browser/desktop/issues/8329 | 5:15:54 | 6:24:16 |
| Secure connection failed | https://github.com/zen-browser/desktop/issues/8328 | None | 1 day, 5:03:14 |
| Essentials unload issue | https://github.com/zen-browser/desktop/issues/8326 | 9:04:50 | None |
| weird shadow when hightlighting text | https://github.com/zen-browser/desktop/issues/8325 | 10:20:39 | 10:20:39 |
| Mouse flickering on Browser MacOS | https://github.com/zen-browser/desktop/issues/8323 | 7 days, 7:55:25 | 7 days, 8:56:46 |
| DRM content checked yet can't play embedded videos. | https://github.com/zen-browser/desktop/issues/8320 | 6:30:09 | 6:30:09 |
| Issue when opening the New Tab url bar, and selecting a shortcut tab that's already an essential | https://github.com/zen-browser/desktop/issues/8319 | None | None |
| "Screenshot Copied" Toast Notification Unreadable | https://github.com/zen-browser/desktop/issues/8317 | 15:44:46 | None |
| Can't update to 1.12.4 | https://github.com/zen-browser/desktop/issues/8316 | None | 6:39:21 |
| Unable to add tabs to essentials after most recent update | https://github.com/zen-browser/desktop/issues/8315 | None | 2:14:49 |
| Transparent dialogs | https://github.com/zen-browser/desktop/issues/8314 | 1:11:28 | 2:29:34 |
| Unable to find a supported language | https://github.com/zen-browser/desktop/issues/8313 | 12:40:47 | 19:19:31 |
| Rearrange Split View keyboard shortcuts don't work on existing split views | https://github.com/zen-browser/desktop/issues/8310 | 9 days, 1:16:48 | None |
| Moving Essential Tab to New Window removes it from Essentials | https://github.com/zen-browser/desktop/issues/8309 | None | None |
| Adding new essentials is not working | https://github.com/zen-browser/desktop/issues/8308 | 5:24:00 | 23:11:34 |
| Mods get Reset/Removed when Updated | https://github.com/zen-browser/desktop/issues/8306 | 1 day, 1:03:16 | 1 day, 1:03:16 |
| Playing songs | https://github.com/zen-browser/desktop/issues/8305 | 2:53:37 | 2:53:37 |
| agency | https://github.com/zen-browser/desktop/issues/8304 | 3:31:16 | 1 day, 1:31:52 |
| crash | https://github.com/zen-browser/desktop/issues/8303 | 3:41:45 | None |
| collapse | https://github.com/zen-browser/desktop/issues/8302 | None | 0:01:39 |
| Glitch/flickering sidebar when switching spaces in compact mode. | https://github.com/zen-browser/desktop/issues/8301 | 14 days, 22:19:20 | None |
| workspace icons are missing | https://github.com/zen-browser/desktop/issues/8278 | 1:45:25 | None |
| URL bar and minize/maximize buttons overlap when the window is horziontally shrinked | https://github.com/zen-browser/desktop/issues/8277 | None | None |
| <option> dropdown background same color as text | https://github.com/zen-browser/desktop/issues/8276 | None | 0:02:32 |
| Full screen problem on macOS | https://github.com/zen-browser/desktop/issues/8275 | 11 days, 15:53:45 | None |
| When opening a Youtube video, cannot interact with certain elements like text, like/dislike, opening desc. and replies | https://github.com/zen-browser/desktop/issues/8273 | 21:55:54 | None |
| Media Playback Continues After Unloading a Pinned Tab | https://github.com/zen-browser/desktop/issues/8267 | 13:43:59 | None |
| Dark theme weird rendering | https://github.com/zen-browser/desktop/issues/8263 | 1:20:19 | 1:29:02 |
| Youtube picture in picture stops working randomly and restarting or opening a new window fixes it. | https://github.com/zen-browser/desktop/issues/8260 | None | None |
| Locked urlbar.suggest preferences in about:config | https://github.com/zen-browser/desktop/issues/8259 | 0:41:23 | 6:25:51 |
| The search engine selection window is truncated during initial configuration. | https://github.com/zen-browser/desktop/issues/8258 | None | 4:29:43 |
| Takes ~3 mins to open a link from vscode | https://github.com/zen-browser/desktop/issues/8257 | 6:14:20 | None |
| Mods cannot save settings on install | https://github.com/zen-browser/desktop/issues/8255 | None | 2:21:43 |
| Can't smoosh zen windows as small as we used to. | https://github.com/zen-browser/desktop/issues/8254 | 2:38:48 | 2:38:48 |
| Normal windows always open in previously used Windows virtual desktop instead of current one | https://github.com/zen-browser/desktop/issues/8252 | 1 day, 10:37:31 | None |
| Black Mark and Render Issue | https://github.com/zen-browser/desktop/issues/8251 | None | None |
| Fetch requests with `keepalive: true` not showing in the Network panel | https://github.com/zen-browser/desktop/issues/8249 | 0:21:23 | 0:21:23 |
| Unable to apply Theme Colors for Incognito mode | https://github.com/zen-browser/desktop/issues/8248 | None | None |
| Download animation is shown in multiple windows | https://github.com/zen-browser/desktop/issues/8247 | 0:35:42 | 1 day, 7:54:40 |
| Toast Notification is stuck on after opening a folder of bookmarks with middle mouse button when in compact mode | https://github.com/zen-browser/desktop/issues/8246 | 2:29:31 | 19:01:57 |
| Restoring session with multiple windows starts every window in a new tab | https://github.com/zen-browser/desktop/issues/8245 | 3:28:19 | 13:58:26 |
| I can't choose to never translate from Arabic. | https://github.com/zen-browser/desktop/issues/8244 | None | None |
| cannot uncheck shortcuts in adress bar | https://github.com/zen-browser/desktop/issues/8242 | 10:04:15 | 10:04:15 |
| Arabic font is not the same as latest default firefox font in the Linux build | https://github.com/zen-browser/desktop/issues/8241 | None | None |
| UI scaling issue on linux desktop | https://github.com/zen-browser/desktop/issues/8240 | None | 8 days, 0:09:35 |
| Can't close Tab via X on Tab. Only via Hotkey | https://github.com/zen-browser/desktop/issues/8239 | None | 0:01:41 |
| Top bar does not hide when activating compact mode | https://github.com/zen-browser/desktop/issues/8237 | 1:13:23 | 1:54:27 |
| Top bar auto-hide glitch when interacting with sidebar & bookmarks | https://github.com/zen-browser/desktop/issues/8234 | 22:44:31 | 1 day, 9:51:23 |
| Cloudflare captcha not working | https://github.com/zen-browser/desktop/issues/8230 | 2:31:04 | 2:31:04 |
| Moving tabs inside tab bar is buggy | https://github.com/zen-browser/desktop/issues/8229 | 2:53:47 | 3:29:02 |
| Media Controls are not visible when switched to full screen | https://github.com/zen-browser/desktop/issues/8228 | None | 0:21:20 |
| Cant Remove Predefined Site Suggestion from my Search Bar (CTRL+T) | https://github.com/zen-browser/desktop/issues/8227 | 2:31:43 | 4:57:01 |
| URL bar loses focus instead of resetting URL | https://github.com/zen-browser/desktop/issues/8226 | 0:41:33 | 0:41:33 |
| URL Bar loses focus when deleting last character | https://github.com/zen-browser/desktop/issues/8225 | 0:44:53 | 5 days, 6:37:15 |
| Hovering on a compact window to move a tab causes the sidebar to pop in and out | https://github.com/zen-browser/desktop/issues/8224 | None | None |
| Zen creates a .mozilla folder in $HOME directory on Linux | https://github.com/zen-browser/desktop/issues/8223 | None | None |
| Browser buttons and close window button unresponsive after closing the Zen application | https://github.com/zen-browser/desktop/issues/8219 | 0:48:05 | None |
| Cannot drag tabs from top to bottom to reorder a few positions when tabs are on the right | https://github.com/zen-browser/desktop/issues/8218 | None | None |
| Downloads Browser Crash | https://github.com/zen-browser/desktop/issues/8217 | None | None |
| Google Meet buttons don't working on sidebar | https://github.com/zen-browser/desktop/issues/8215 | 2:40:14 | 2:40:14 |
| không thể thêm thẻ thường trú(E) | https://github.com/zen-browser/desktop/issues/8214 | 0:01:54 | 0:01:54 |
| Blank screen when first launching Zen | https://github.com/zen-browser/desktop/issues/8213 | None | None |
| Cannot access certificate view from URL bar (padlock icon) | https://github.com/zen-browser/desktop/issues/8212 | 12 days, 6:42:18 | 12 days, 7:11:25 |
| Syncing workspace tabs not works | https://github.com/zen-browser/desktop/issues/8211 | 15 days, 5:13:05 | None |
| zen mods not working | https://github.com/zen-browser/desktop/issues/8208 | None | 0:08:14 |
| Workspace switch animation is blocking | https://github.com/zen-browser/desktop/issues/8206 | 9:29:26 | None |
| ZEN Mouse Dragging & Resizing (maximize) does not work sometimes | https://github.com/zen-browser/desktop/issues/8205 | 6:20:09 | None |
| (Hyprland)Topbar doesn't disappear in compact sidebar | https://github.com/zen-browser/desktop/issues/8204 | None | 2:16:10 |
| windows 10 transparency not working. | https://github.com/zen-browser/desktop/issues/8202 | 3:06:24 | 3:06:24 |
| Zen not restoring any tab from the already opened tabs from previous session | https://github.com/zen-browser/desktop/issues/8201 | 3:17:29 | 4:43:32 |
| website background colour chaning along with the theme colour of side bar | https://github.com/zen-browser/desktop/issues/8200 | 4:58:08 | 4:58:07 |
| Containerized Essential dissapear when 'Enable container-specific essentials' feature is switched on | https://github.com/zen-browser/desktop/issues/8199 | 4:32:24 | 4:43:46 |
| "New Window" windows don't have the 'Essential' tabs on them anymore | https://github.com/zen-browser/desktop/issues/8197 | 7:03:16 | 1 day, 7:55:21 |
| Compact Mode sidebar not showing/opening | https://github.com/zen-browser/desktop/issues/8196 | 7:07:23 | None |
| HTML <select> elements blank drop-down | https://github.com/zen-browser/desktop/issues/8195 | 4 days, 4:54:42 | None |
| Everything is bright white | https://github.com/zen-browser/desktop/issues/8194 | 1:23:35 | 1:23:35 |
| Search with google is pinned for no clear reason | https://github.com/zen-browser/desktop/issues/8193 | 1:10:15 | 1:11:58 |
| Popup Window shows side bar with no function in compact mode | https://github.com/zen-browser/desktop/issues/8191 | None | None |
| Button to list all tabs is transparent / disappears | https://github.com/zen-browser/desktop/issues/8188 | None | 6:09:10 |
| Color contrast on tab bar | https://github.com/zen-browser/desktop/issues/8187 | 5:36:28 | None |
| XDG Desktop Portal Termfilechooser doesn't work?! | https://github.com/zen-browser/desktop/issues/8186 | 16:11:53 | 22:30:50 |
| Address bar no longer shows 'Search with [engine]' option | https://github.com/zen-browser/desktop/issues/8185 | 0:17:41 | 0:55:52 |
| Checkboxes get activated on the Settings page when clicking on empty space along their width. | https://github.com/zen-browser/desktop/issues/8184 | 17:34:27 | 17:34:27 |
| Zen blocking keyboard in Deskflow | https://github.com/zen-browser/desktop/issues/8183 | None | None |
| Issue with the "Bottom Essentials" Zen Theme | https://github.com/zen-browser/desktop/issues/8177 | 4:02:27 | 4:07:49 |
| Dashlane failed connexion | https://github.com/zen-browser/desktop/issues/8176 | None | 5:19:09 |
| icons in split tabs shift to the right | https://github.com/zen-browser/desktop/issues/8175 | 0:20:13 | 1 day, 8:21:19 |
| Unable to open extensions when there is no tab | https://github.com/zen-browser/desktop/issues/8174 | 6:44:29 | None |
| Disable background tab notification by default | https://github.com/zen-browser/desktop/issues/8173 | 2:09:55 | 2:09:55 |
| [1.12.3] Mute/unmute icon slightly offset vertically on linux via AUR. | https://github.com/zen-browser/desktop/issues/8172 | None | 6 days, 1:08:02 |
| Workspace navigation shortcut not working on pages with conflicting shortcuts | https://github.com/zen-browser/desktop/issues/8171 | None | None |
| The popup for the shortcut copy URL looks broken. | https://github.com/zen-browser/desktop/issues/8169 | 3 days, 22:47:53 | 4 days, 23:49:18 |
| zen-empty-tab looses the selected="true" value sometimes when switching workspaces. | https://github.com/zen-browser/desktop/issues/8166 | 3:34:23 | None |
| In Compact Mode with 'Hide Toolbar' enabled, toolbar does not auto-hide after using the URL bar to open a link | https://github.com/zen-browser/desktop/issues/8164 | 0:35:09 | 5 days, 18:21:46 |
| When in fullscreen(F11) bookmarks bar disappear | https://github.com/zen-browser/desktop/issues/8163 | 13 days, 2:22:49 | None |
| Lost all tabs after a restart | https://github.com/zen-browser/desktop/issues/8162 | 0:07:51 | None |
| Login fails on specific sites (e.g. Keeper, school network) in normal mode on Windows, but works in Incognito | https://github.com/zen-browser/desktop/issues/8161 | None | None |
| When too many tabs are open in a private window to fit the tab bar, no scrollbar appears | https://github.com/zen-browser/desktop/issues/8160 | 7:48:44 | 7:48:44 |
| Print to PDF not working | https://github.com/zen-browser/desktop/issues/8159 | None | None |
| MacOS Text Replacements doesn't work | https://github.com/zen-browser/desktop/issues/8158 | 13 days, 23:41:07 | None |
| Zen RAM Consumption is too much (Possible Memory Leak??) | https://github.com/zen-browser/desktop/issues/8157 | None | None |
| Can't click on bookmark icons when in compact mode | https://github.com/zen-browser/desktop/issues/8155 | None | 0:04:33 |
| Sidebery extension: tabs from other workspaces become inaccessible (since 1.8b+) | https://github.com/zen-browser/desktop/issues/8154 | 1:57:05 | 1:57:05 |
| With dual monitor, when dual zen brower windows opened, Essentials' number will reduce to 1 | https://github.com/zen-browser/desktop/issues/8153 | None | None |
| Zen switches to irrelevant workspace on startup | https://github.com/zen-browser/desktop/issues/8151 | 0:17:36 | 0:17:36 |
| Youtube playback crashes after some time | https://github.com/zen-browser/desktop/issues/8150 | None | None |
| Cannot open live editing zen theme | https://github.com/zen-browser/desktop/issues/8148 | None | 0:08:04 |
| load in startup not working for the first essenntial tab only | https://github.com/zen-browser/desktop/issues/8147 | 0:14:09 | 3:11:28 |
| "New background tab" toast even for foreground tabs | https://github.com/zen-browser/desktop/issues/8146 | 0:35:34 | 3:51:23 |
| Compact sidebar keeps popping up flickering when switching to a zen window with focus in macOS | https://github.com/zen-browser/desktop/issues/8145 | None | None |
| When tabs on the right enabled, toast notifications appear off the screen | https://github.com/zen-browser/desktop/issues/8143 | None | 5:07:33 |
| GPU rendering does not work after crash | https://github.com/zen-browser/desktop/issues/8141 | 8:32:12 | None |
| Letterboxing bricks and violates the boundary between the tab bar and the rendering space of website when a website enters full screen mode | https://github.com/zen-browser/desktop/issues/8140 | 0:10:28 | None |
| picture in picture disappears when trying to navigate to split tab | https://github.com/zen-browser/desktop/issues/8139 | None | None |
| Clicking non-floating urlbar always selects all on mouse up | https://github.com/zen-browser/desktop/issues/8138 | None | 0:18:23 |
| Audible media playback doesn't work | https://github.com/zen-browser/desktop/issues/8137 | 1:22:13 | 2:25:29 |
| compact mode is not working and cant close the tabs some times in fedora | https://github.com/zen-browser/desktop/issues/8136 | 3:11:39 | 2 days, 0:05:39 |
| Cannot freely edit the url in the address bar | https://github.com/zen-browser/desktop/issues/8134 | 0:01:56 | 0:01:56 |
| New Tabs open in Essentials | https://github.com/zen-browser/desktop/issues/8133 | 0:35:39 | 5:02:21 |
| Developer tools not longer working? | https://github.com/zen-browser/desktop/issues/8132 | 0:37:16 | 1:48:35 |
| Black text on dark theme | https://github.com/zen-browser/desktop/issues/8131 | 0:21:09 | 8:18:43 |
| Option + Letter Shows Special Characters in Keyboard Shortcuts | https://github.com/zen-browser/desktop/issues/8130 | 8 days, 4:21:07 | None |
| Video Call (huddle) in Slack does not work | https://github.com/zen-browser/desktop/issues/8129 | None | None |
| Essential and Pinned tabs do not appear or get removed from existing windows | https://github.com/zen-browser/desktop/issues/8127 | 0:37:58 | 0:37:58 |
| Sidebar glitch | https://github.com/zen-browser/desktop/issues/8126 | None | 0:02:38 |
| No mods have worked since the update | https://github.com/zen-browser/desktop/issues/8125 | 5 days, 5:50:38 | None |
| [Twilight 1.12.2] Adding tab to essentials will automatically open that tab in the first workspace | https://github.com/zen-browser/desktop/issues/8123 | None | 1:53:34 |
| Unable to open Google/X/Youtube while using VPN | https://github.com/zen-browser/desktop/issues/8121 | 9:23:59 | None |
| Zen URL bar not working with Firefox Multi-Account Containers | https://github.com/zen-browser/desktop/issues/8120 | None | None |
| Duplicate Workspace Button | https://github.com/zen-browser/desktop/issues/8119 | 23:56:36 | 23:56:36 |
| Renamed Tabs Name keep ressetting at random | https://github.com/zen-browser/desktop/issues/8118 | 9:29:18 | 9:29:18 |
| Audio Indicator Missing on Inactive Tabs with Minimized Toolbar | https://github.com/zen-browser/desktop/issues/8115 | 2:57:00 | 6:18:33 |
| Zen crashes on reopen after closing last tab with `browser.tabs.closeWindowWithLastTab` enabled | https://github.com/zen-browser/desktop/issues/8114 | 2 days, 18:09:03 | 2 days, 21:48:46 |
| Local/lan links not opening | https://github.com/zen-browser/desktop/issues/8113 | None | 8 days, 8:42:53 |
| Some extensions doesn't pin, and others brake the UI | https://github.com/zen-browser/desktop/issues/8111 | 0:53:20 | None |
| Can't close split view | https://github.com/zen-browser/desktop/issues/8110 | 1:03:35 | 1:03:35 |
| Closing a tab opened from an essential tab gives blank page | https://github.com/zen-browser/desktop/issues/8107 | 6:06:03 | 2:08:05 |
| Cannot reset Jira page added to Essentials | https://github.com/zen-browser/desktop/issues/8106 | None | 2:38:16 |
| Custom Color Gradient creates MULTIPLE instances of the same color | https://github.com/zen-browser/desktop/issues/8105 | 13 days, 15:14:54 | None |
| Customize toolbar disturbed with system theme | https://github.com/zen-browser/desktop/issues/8104 | None | 2:06:43 |
| The vertical TAB bar does not respond to touch input | https://github.com/zen-browser/desktop/issues/8103 | 1 day, 6:09:41 | None |
| New tabs appear above pinned tabs | https://github.com/zen-browser/desktop/issues/8101 | 1:16:57 | 6:31:23 |
| Could not open any page | https://github.com/zen-browser/desktop/issues/8100 | 2:07:41 | None |
| Reload and Cmd+W for Essentials are not working. | https://github.com/zen-browser/desktop/issues/8099 | None | 7:51:14 |
| Two kinds of workspace indicators instead of one | https://github.com/zen-browser/desktop/issues/8098 | 3:21:10 | 3:21:10 |
| [Twilight 1.12.2] Switching tab to workspace retains a duplicate of the tab in the current workspace | https://github.com/zen-browser/desktop/issues/8095 | None | 2:24:21 |
| Browser with a lighter/darker tint when using Auto Theme in comparison to Light/Dark mode only since 1.12b | https://github.com/zen-browser/desktop/issues/8094 | None | 2:25:47 |
| [Twilight 1.12.2] Ctrl + k (search with google bar) is placed too low on screen | https://github.com/zen-browser/desktop/issues/8093 | 2:02:16 | 2:34:36 |
| [Twilight 1.12.2] Pressing CTRL causes strange behaviour in newtab panel for switch to tab indicator | https://github.com/zen-browser/desktop/issues/8092 | 4:15:13 | 4:15:21 |
| crash korean in private mode | https://github.com/zen-browser/desktop/issues/8091 | None | 12 days, 3:00:44 |
| toolbar doesnt pop up when opening tabs with middle mouse click | https://github.com/zen-browser/desktop/issues/8090 | 0:39:11 | None |
| Dragging tab bugs out when the sidebar is scrollable | https://github.com/zen-browser/desktop/issues/8089 | 13 days, 14:40:15 | 13 days, 20:40:31 |
| Essentials: Emulation mode breaks tab | https://github.com/zen-browser/desktop/issues/8088 | 22 days, 0:16:44 | None |
| The "Hide the default container indicator in the tab bar" button no longer hides "Default Workspace" | https://github.com/zen-browser/desktop/issues/8087 | 0:12:24 | 14:56:38 |
| scrollbars styling with scrollbar-width: thin; leads to unusable scrollbar | https://github.com/zen-browser/desktop/issues/8086 | None | None |
| Zen has become unberably laggy | https://github.com/zen-browser/desktop/issues/8081 | 1:29:54 | None |
| Select words in URL bar selects full URL not selected word | https://github.com/zen-browser/desktop/issues/8080 | 0:45:24 | 1 day, 13:57:39 |
| Hidden Sidebar in Compact Mode Styling Broken after 1.12b update | https://github.com/zen-browser/desktop/issues/8079 | 0:05:13 | 0:15:01 |
| Youtube description not opening when clicking on more | https://github.com/zen-browser/desktop/issues/8078 | 4 days, 1:31:56 | 4 days, 2:56:14 |
| Unable to access my company's local websites HTTPS Error with HSTS and No Bypass Option | https://github.com/zen-browser/desktop/issues/8077 | None | 19:34:22 |
| Ctrl+Tab missing unloaded tabs | https://github.com/zen-browser/desktop/issues/8076 | 1:38:20 | 3:22:45 |
| When Account Button is opened in a collapsed Sibebar, Most Text Doesn't appear (Profile Name, Account Settings options, etc...) | https://github.com/zen-browser/desktop/issues/8075 | None | None |
| Find in page. | https://github.com/zen-browser/desktop/issues/8074 | 4:37:54 | 4:37:54 |
| Visual glitch / artifact when scrolling past video. | https://github.com/zen-browser/desktop/issues/8073 | 22 days, 7:35:17 | None |
| Primary Colour resets after opening every time when System theme - auto is selected | https://github.com/zen-browser/desktop/issues/8072 | 8:42:39 | 8:42:39 |
| 'Customize Toolbar' menu transparent when title bar is switched off | https://github.com/zen-browser/desktop/issues/8070 | 12:00:44 | 11 days, 3:51:56 |
| Can't turn off workspaces | https://github.com/zen-browser/desktop/issues/8069 | 0:08:06 | 0:08:06 |
| URL bar loses focus after clearing text | https://github.com/zen-browser/desktop/issues/8068 | 0:47:48 | 0:47:48 |
| Developer tools shortcut not working anymore | https://github.com/zen-browser/desktop/issues/8067 | 0:32:03 | 0:32:03 |
| Collapsed Sidebar too small | https://github.com/zen-browser/desktop/issues/8066 | 0:01:19 | 0:01:19 |
| Bookmark editor closes immediately if window is at the edge of a display (macOS) | https://github.com/zen-browser/desktop/issues/8065 | 1:40:38 | None |
| DRM Proxy Error on Kinopoisk | https://github.com/zen-browser/desktop/issues/8063 | 2:17:49 | 2:25:55 |
| Cannot hide Workspace indicator: v1.12.1b | https://github.com/zen-browser/desktop/issues/8062 | 4:47:32 | 4:47:32 |
| Search bar double click editing broken when shortcut suggestions are disabled | https://github.com/zen-browser/desktop/issues/8060 | None | 4:09:56 |
| Toolbar's New Tab button stops working when removed and re-added | https://github.com/zen-browser/desktop/issues/8059 | 7:20:37 | None |
| Essential Tabs not visible | https://github.com/zen-browser/desktop/issues/8057 | 7:46:00 | 7:54:47 |
| Deleting the last workspace makes the browser unusable | https://github.com/zen-browser/desktop/issues/8056 | 2:40:09 | 13:11:09 |
| Pinned Tab preview new login? | https://github.com/zen-browser/desktop/issues/8055 | None | None |
| Compact mode Visual bug | https://github.com/zen-browser/desktop/issues/8053 | 0:08:48 | 0:21:52 |
| Ctrl+Left Click with Firefox Containeres don't open a new tab on the container anymore | https://github.com/zen-browser/desktop/issues/8052 | 16:39:47 | None |
| YouTube videos are having frame drops when using Wayland in Fedora 42. No frame drops in Librewolf. | https://github.com/zen-browser/desktop/issues/8051 | 3:57:37 | None |
| I have already downloaded the Zen Mod, but I can't see the mods I downloaded in the settings. | https://github.com/zen-browser/desktop/issues/8049 | 6 days, 7:12:05 | 7 days, 1:59:01 |
| Not working form on page: bohemiahokej.cz | https://github.com/zen-browser/desktop/issues/8048 | 1:42:11 | 1:42:11 |
| Can't revert/remove custom sidebar color with `zen.theme.gradient.show-custom-colors` enabled | https://github.com/zen-browser/desktop/issues/8047 | 0:12:06 | 0:12:06 |
| Compact mode causes the Windows taskbar to not appear. | https://github.com/zen-browser/desktop/issues/8046 | 0:33:43 | None |
| Selects whole url after selecting only fragment | https://github.com/zen-browser/desktop/issues/8045 | None | 0:38:26 |
| When URL is changed while URL bar is floating, only the domain is shown | https://github.com/zen-browser/desktop/issues/8042 | 23 days, 8:40:24 | 24 days, 8:18:57 |
| Nvidia RTX video super resolution doesn't work in Zen unless in PiP Fullscreen | https://github.com/zen-browser/desktop/issues/8041 | 17:38:25 | None |
| Super Resolution doesn't work | https://github.com/zen-browser/desktop/issues/8040 | 5:58:49 | 5:58:49 |
| Unable to Load Essentials Tab Content | https://github.com/zen-browser/desktop/issues/8039 | 4:33:58 | 1 day, 7:53:50 |
| Critical workflow issue with multilingual users: When emptying the URL bar in 'new tab mode', the browser should not lose focus on the URL bar by default. | https://github.com/zen-browser/desktop/issues/8038 | 22:34:12 | 23:41:42 |
| PDFs load slowly | https://github.com/zen-browser/desktop/issues/8037 | 6:45:05 | None |
| Sidebar appears narrower than it should, showing only part of the icons within | https://github.com/zen-browser/desktop/issues/8036 | 1:40:47 | 3:16:56 |
| YouTube speed-up shortcut (Maj+;) doesn't work | https://github.com/zen-browser/desktop/issues/8035 | 8:02:43 | 8:02:44 |
| Conflict between "container-specific essentials" and "enbale container tabs" | https://github.com/zen-browser/desktop/issues/8034 | None | 0:02:34 |
| Sidebar and Layout "Collapsed Toolbar" looks weird after new update (icon does not fit/clip thru the frame) | https://github.com/zen-browser/desktop/issues/8033 | None | 4:32:52 |
| Cannot scroll through the sidebar to see all of my tabs (in private mode only) | https://github.com/zen-browser/desktop/issues/8032 | 1 day, 3:36:41 | 4 days, 20:23:05 |
| Missing Tab Layout Icon After Recent Update | https://github.com/zen-browser/desktop/issues/8030 | 10:23:25 | 1 day, 0:17:56 |
| Update failed and not resolved even after redownloadig and reinstalling from website. | https://github.com/zen-browser/desktop/issues/8029 | 0:16:48 | None |
| Tab Group disbanding when moved | https://github.com/zen-browser/desktop/issues/8028 | 10:58:02 | 10:58:02 |
| Zen offers to update to 1.12.1b but fails because "1.12.1b" is not listed in releases. | https://github.com/zen-browser/desktop/issues/8027 | None | 0:04:20 |
| Missing `:empty` pseudo-element state on extension icon's badge | https://github.com/zen-browser/desktop/issues/8025 | None | None |
| [1.12b] Pinned tabs and essentials still used old audio indicator | https://github.com/zen-browser/desktop/issues/8023 | 15:43:19 | 15:43:19 |
| Zen Won't Update | https://github.com/zen-browser/desktop/issues/8022 | 0:10:55 | 14:31:46 |
| Tabs in a Firefox container can not be put into essentials. | https://github.com/zen-browser/desktop/issues/8019 | 0:09:31 | 14:15:02 |
| Opened tab jumps up and down when switching workspaces | https://github.com/zen-browser/desktop/issues/8018 | 21:08:38 | 1 day, 15:03:56 |
| Can't disable acrylic - mica not available | https://github.com/zen-browser/desktop/issues/8015 | 21:36:33 | 21:36:33 |
| [1.12b] Mica context menus sometimes utilizes windows wallpaper instead of browser window | https://github.com/zen-browser/desktop/issues/8014 | 15:09:55 | 2 days, 4:03:37 |
| Binding parentheses to switch workspaces does not function properly | https://github.com/zen-browser/desktop/issues/8013 | 24 days, 1:02:10 | None |
| Update 1.12b broke auto-hide sidebar formatting | https://github.com/zen-browser/desktop/issues/8012 | 0:01:53 | 0:17:30 |
| Vertical Tab bar is smaller in width compared to previous versions, causing tab icons to get cut off. | https://github.com/zen-browser/desktop/issues/8011 | 0:03:09 | 4:00:48 |
| [Linux][1.12b] DRM Broken | https://github.com/zen-browser/desktop/issues/8010 | 0:16:39 | 1:38:19 |
| I could not open side bar | https://github.com/zen-browser/desktop/issues/8009 | 0:25:19 | 16:55:20 |
| 我在商店下载了Zen Mod但是在设置中加载不出来 | https://github.com/zen-browser/desktop/issues/8006 | 9:33:02 | 23:19:18 |
| Mute/Unmute icon on | https://github.com/zen-browser/desktop/issues/8005 | 1 day, 1:31:01 | 17 days, 14:53:41 |
| Zen Browser has never been able to access Google, Chrome and FireFox does. | https://github.com/zen-browser/desktop/issues/8004 | 1 day, 1:32:04 | None |
| Url bar overflow | https://github.com/zen-browser/desktop/issues/8003 | 0:15:34 | None |
| window controls on right do not pop out with sidebar | https://github.com/zen-browser/desktop/issues/8002 | 21:56:50 | 1 day, 0:14:59 |
| Alignment issue in compact mode with hidden sidebar | https://github.com/zen-browser/desktop/issues/8000 | 0:02:32 | 4:26:16 |
| All my tabs except essenitials cannot be seen or clicked however they still open and work as per normal | https://github.com/zen-browser/desktop/issues/7999 | None | 0:07:12 |
| Bring back the old profiles switcher | https://github.com/zen-browser/desktop/issues/7998 | 0:12:46 | 1 day, 21:49:18 |
| macOS keyboard shortcut `option+cmd+e` opens `Network tab` of Developer tools instead of switching workspace | https://github.com/zen-browser/desktop/issues/7996 | 1 day, 5:12:44 | 1 day, 5:12:44 |
| when typing in the URL bar, the selected results don't show up well | https://github.com/zen-browser/desktop/issues/7995 | 7:58:12 | 1 day, 23:28:05 |
| URL doesnt always float even after choosing this option | https://github.com/zen-browser/desktop/issues/7993 | None | 3:05:24 |
| [Twilight 1.12] Compact mode sidebar jittering still occurs when newtab panel is opened | https://github.com/zen-browser/desktop/issues/7990 | None | 6:15:39 |
| [Twilight 1.12] Compact mode isn't disabled in newtab pannel if the user is hovering on the sidebar berforehand and sidebar jittering occurs | https://github.com/zen-browser/desktop/issues/7988 | None | 0:14:31 |
| Favicon Missing in Essentials on Launch | https://github.com/zen-browser/desktop/issues/7987 | 7:50:38 | 4 days, 12:35:25 |
| Closing a tab sometimes causes a popping sound | https://github.com/zen-browser/desktop/issues/7986 | None | None |
| File Drag and Drop Between Tabs Not Working | https://github.com/zen-browser/desktop/issues/7985 | 11:13:41 | None |
| Auto PiP doesn't work (Windows) | https://github.com/zen-browser/desktop/issues/7984 | 0:14:53 | 0:22:59 |
| Some websites don't load | https://github.com/zen-browser/desktop/issues/7983 | 1 day, 23:32:20 | 3 days, 0:32:47 |
| Annoying notifs and pop-up windows | https://github.com/zen-browser/desktop/issues/7982 | None | 3:58:00 |
| Single-Key keyboard shortcuts are taking precedence over input fields | https://github.com/zen-browser/desktop/issues/7980 | 2 days, 1:30:27 | None |
| The “Undo tab close” shortcut doesn't seem to work | https://github.com/zen-browser/desktop/issues/7979 | 2 days, 1:41:19 | 4 days, 2:55:52 |
| Window controls overlapping over URL Bar UI & extensions icon | https://github.com/zen-browser/desktop/issues/7978 | 25 days, 4:18:00 | None |
| Default keyboard shortcuts are overlapping | https://github.com/zen-browser/desktop/issues/7976 | 29 days, 10:30:04 | None |
| iCloud Notes show black squares on checklists | https://github.com/zen-browser/desktop/issues/7974 | 6:47:44 | 6:47:47 |
| [Twilight 1.12] Compact mode sidebar twitches when hovering | https://github.com/zen-browser/desktop/issues/7973 | 0:30:09 | 12:33:26 |
| Essentials disappear when clicking "back to tab" in PIP while in another workspace | https://github.com/zen-browser/desktop/issues/7972 | 2 days, 16:38:14 | 2 days, 16:38:14 |
| System sleep/suspend during video playback causes a memory leak | https://github.com/zen-browser/desktop/issues/7970 | None | None |
| BitWarden biometrics not working anymore | https://github.com/zen-browser/desktop/issues/7968 | 30 days, 1:15:16 | None |
| Appimage does not work on distros that depend on musl instead of glibc | https://github.com/zen-browser/desktop/issues/7967 | 3 days, 19:05:33 | None |
| YouTube WebPage not loading | https://github.com/zen-browser/desktop/issues/7966 | None | 2:46:37 |
| New Tab Bug - Opens the url of the existing tab even when new url is typed. | https://github.com/zen-browser/desktop/issues/7964 | 3 days, 0:39:48 | None |
| PDF rendering issues | https://github.com/zen-browser/desktop/issues/7963 | 0:02:45 | None |
| 1Password extension unable to communicate with desktop app, requires password reprompt | https://github.com/zen-browser/desktop/issues/7960 | 0:04:11 | 30 days, 6:03:10 |
| Moving a bookmark to another workspace doesn't persist | https://github.com/zen-browser/desktop/issues/7957 | 26 days, 6:50:27 | 26 days, 6:59:41 |
| Gradient completely messed up | https://github.com/zen-browser/desktop/issues/7955 | None | 1:01:12 |
| URL Bar dosent showing up and fading gradually while typing | https://github.com/zen-browser/desktop/issues/7954 | 26 days, 9:53:46 | None |
| URL bar Doesn't Show up on Ctrl+T Despite Behavior set to "Always floating" in Settings | https://github.com/zen-browser/desktop/issues/7953 | 0:37:17 | 7 days, 15:33:13 |
| Zen breaking youtube.com | https://github.com/zen-browser/desktop/issues/7952 | 4:30:14 | 4:30:14 |
| Zen doesn't open (flatpak) | https://github.com/zen-browser/desktop/issues/7951 | 3 days, 12:35:28 | None |
| Compact mode - 1 pixel line on sidebar | https://github.com/zen-browser/desktop/issues/7950 | 1:52:17 | 12:15:36 |
| Caching Tab Icon is Too Strict | https://github.com/zen-browser/desktop/issues/7949 | 3 days, 16:10:52 | 3 days, 16:10:52 |
_This report was generated with the [Issue Metrics Action](https://github.com/github/issue-metrics)_
Search query used to find these items: `repo:zen-browser/desktop is:issue created:2025-05-01..2025-05-31`

2
l10n

Submodule l10n updated: d0ffb8e391...7435b28bdf

12
package-lock.json generated
View File

@@ -3019,9 +3019,9 @@
}
},
"node_modules/prebuild-install/node_modules/tar-fs": {
"version": "2.1.2",
"resolved": "https://registry.npmjs.org/tar-fs/-/tar-fs-2.1.2.tgz",
"integrity": "sha512-EsaAXwxmx8UB7FRKqeozqEPop69DXcmYwTQwXvyAPF352HJsPdkVhvTaDPYqfNgruveJIJy3TA2l+2zj8LJIJA==",
"version": "2.1.3",
"resolved": "https://registry.npmjs.org/tar-fs/-/tar-fs-2.1.3.tgz",
"integrity": "sha512-090nwYJDmlhwFwEW3QQl+vaNnxsO2yVsd45eTKRBzSzu+hlb1w2K9inVq5b0ngXuLVqQ4ApvsUHHnu/zQNkWAg==",
"license": "MIT",
"dependencies": {
"chownr": "^1.1.1",
@@ -3667,9 +3667,9 @@
}
},
"node_modules/tar-fs": {
"version": "3.0.8",
"resolved": "https://registry.npmjs.org/tar-fs/-/tar-fs-3.0.8.tgz",
"integrity": "sha512-ZoROL70jptorGAlgAYiLoBLItEKw/fUxg9BSYK/dF/GAGYFJOJJJMvjPAKDJraCXFwadD456FCuvLWgfhMsPwg==",
"version": "3.0.9",
"resolved": "https://registry.npmjs.org/tar-fs/-/tar-fs-3.0.9.tgz",
"integrity": "sha512-XF4w9Xp+ZQgifKakjZYmFdkLoSWd34VGKcsTCwlNWM7QG3ZbaxnTsaBwnjFZqHRf/rROxaR8rXnbtwdvaDI+lA==",
"license": "MIT",
"dependencies": {
"pump": "^3.0.0",

View File

@@ -1,3 +1,6 @@
// This Source Code Form is subject to the terms of the Mozilla Public
// License, v. 2.0. If a copy of the MPL was not distributed with this
// file, You can obtain one at http://mozilla.org/MPL/2.0/.
pref("browser.ml.chat.enabled", false);
pref("browser.ml.chat.shortcuts", false);

View File

@@ -1,4 +1,7 @@
// This Source Code Form is subject to the terms of the Mozilla Public
// License, v. 2.0. If a copy of the MPL was not distributed with this
// file, You can obtain one at http://mozilla.org/MPL/2.0/.
// Restore session on startup
pref("browser.startup.page", 3);
@@ -50,3 +53,4 @@ pref("app.update.checkInstallTime.days", 6);
// TODO: Check this out!
pref("browser.profiles.enabled", false);
pref("browser.tabs.groups.enabled", false);
pref("browser.urlbar.scotchBonnet.enableOverride", false);

View File

@@ -1,3 +1,6 @@
// This Source Code Form is subject to the terms of the Mozilla Public
// License, v. 2.0. If a copy of the MPL was not distributed with this
// file, You can obtain one at http://mozilla.org/MPL/2.0/.
// Common UI changes
pref("browser.privatebrowsing.vpnpromourl", "", locked);

View File

@@ -1,3 +1,6 @@
// This Source Code Form is subject to the terms of the Mozilla Public
// License, v. 2.0. If a copy of the MPL was not distributed with this
// file, You can obtain one at http://mozilla.org/MPL/2.0/.
// security: They must enable this themselves, to avoid people downloading malware
pref('xpinstall.signatures.required', true);

View File

@@ -1,5 +1,12 @@
// This Source Code Form is subject to the terms of the Mozilla Public
// License, v. 2.0. If a copy of the MPL was not distributed with this
// file, You can obtain one at http://mozilla.org/MPL/2.0/.
pref('zen.welcome-screen.seen', false, sticky);
#ifdef MOZILLA_OFFICIAL
pref('zen.welcome-screen.seen', false, sticky);
#else
pref('zen.welcome-screen.seen', true, sticky);
#endif
pref('zen.tabs.vertical', true);
pref('zen.tabs.vertical.right-side', false);
@@ -8,135 +15,27 @@ pref('zen.tabs.show-newtab-vertical', true);
pref('zen.ctrlTab.show-pending-tabs', false);
pref('zen.theme.accent-color', "#ffb787");
pref('zen.theme.content-element-separation', 8); // In pixels
pref('zen.theme.gradient', true);
pref('zen.theme.gradient.show-custom-colors', false);
pref('zen.theme.essentials-favicon-bg', true);
pref('zen.view.show-newtab-button-border-top', false);
pref('zen.view.show-newtab-button-top', true);
pref('zen.mediacontrols.enabled', true);
// Exposure:
pref('zen.haptic-feedback.enabled', true);
pref('zen.mods.auto-update-days', 20); // In days
#include features/mods.inc
#include features/theme.inc
#include features/compact-mode.inc
#include features/urlbar.inc
#include features/glance.inc
#include features/view.inc
#include features/downloads.inc
#include features/workspaces.inc
#include features/split-view.inc
#include features/kbs.inc
// Section: Watermark
#ifdef MOZILLA_OFFICIAL
pref('zen.mods.auto-update', true);
pref('zen.rice.api.url', 'https://share.zen-browser.app', locked);
pref('zen.injections.match-urls', 'https://zen-browser.app/*,https://share.zen-browser.app/*', locked);
pref('zen.watermark.enabled', true, sticky);
#else
pref('zen.mods.auto-update', false);
pref('zen.rice.api.url', "http://localhost", locked);
pref('zen.injections.match-urls', 'http://localhost/*', locked);
#endif
pref('zen.rice.share.notice.accepted', false);
#ifdef XP_MACOSX
pref('zen.theme.border-radius', 10); // In pixels
#else
pref('zen.theme.border-radius', 8); // In pixels
#endif
#ifdef XP_MACOSX
pref('zen.theme.acrylic-elements', false);
#else
pref('zen.theme.acrylic-elements', false);
#endif
pref('zen.theme.color-prefs.use-workspace-colors', true);
pref('zen.view.compact.hide-tabbar', true);
pref('zen.view.compact.hide-toolbar', false);
pref('zen.view.compact.toolbar-flash-popup', false);
pref('zen.view.compact.toolbar-flash-popup.duration', 800);
pref('zen.view.compact.toolbar-hide-after-hover.duration', 1000);
pref('zen.view.compact.color-toolbar', true);
pref('zen.view.compact.color-sidebar', true);
pref('zen.view.compact.animate-sidebar', true);
pref('zen.view.compact.show-sidebar-and-toolbar-on-hover', true);
pref('zen.view.compact.show-background-tab-toast', true);
pref('zen.urlbar.replace-newtab', true);
pref('zen.urlbar.show-protections-icon', false);
pref('zen.urlbar.behavior', 'floating-on-type'); // default, floating-on-type, float
pref('zen.urlbar.wait-to-clear', 45000); // in ms (default 45s)
pref('zen.urlbar.show-domain-only-in-sidebar', true);
pref('zen.urlbar.hide-one-offs', true);
pref('zen.urlbar.enable-overrides', false);
// Glance
pref('zen.glance.enabled', true);
pref('zen.glance.hold-duration', 300); // in ms
pref('zen.glance.open-essential-external-links', true);
pref('zen.glance.activation-method', 'alt'); // ctrl, alt, shift, none, hold
pref('zen.view.sidebar-height-throttle', 200); // in ms
pref('zen.view.sidebar-expanded.max-width', 500);
#ifdef XP_MACOSX
pref('zen.view.mac.show-three-dot-menu', false);
pref('zen.widget.mac.mono-window-controls', true);
#endif
pref('zen.view.use-single-toolbar', true);
pref('zen.view.sidebar-expanded', true);
pref('zen.view.sidebar-collapsed.hide-mute-button', true);
pref('zen.view.experimental-force-window-controls-left', false);
#ifdef XP_MACOSX
pref('zen.view.grey-out-inactive-windows', false);
#else
pref('zen.view.grey-out-inactive-windows', true);
#endif
pref('zen.view.hide-window-controls', true);
pref('zen.view.experimental-no-window-controls', false);
pref('zen.keyboard.shortcuts.enabled', true);
pref('zen.keyboard.shortcuts.version', 0); // Empty string means default shortcuts
pref('zen.keyboard.shortcuts.disable-mainkeyset-clear', false); // for debugging
pref('zen.themes.updated-value-observer', false);
pref('zen.pinned-tab-manager.debug', false);
pref('zen.pinned-tab-manager.restore-pinned-tabs-to-pinned-url', false);
pref('zen.pinned-tab-manager.close-shortcut-behavior', 'reset-unload-switch');
#ifdef MOZILLA_OFFICIAL
pref('zen.watermark.enabled', true, sticky);
#else
pref('zen.watermark.enabled', false, sticky);
pref('zen.watermark.enabled', false, sticky);
#endif
// Startup flags
pref('zen.startup.smooth-scroll-in-tabs', true);
// Zen Workspaces
pref('zen.workspaces.continue-where-left-off', false);
pref('zen.workspaces.hide-default-container-indicator', true);
pref('zen.workspaces.force-container-workspace', false);
pref('zen.workspaces.open-new-tab-if-last-unpinned-tab-is-closed', false);
pref('zen.workspaces.swipe-actions', true);
pref('zen.workspaces.wrap-around-navigation', true);
pref('zen.workspaces.natural-scroll', false);
pref('zen.workspaces.scroll-modifier-key','ctrl'); // can be ctrl, alt, shift, or a meta key
pref('services.sync.engine.workspaces', false);
pref('zen.workspaces.container-specific-essentials-enabled', false);
#ifdef MOZILLA_OFFICIAL
pref('zen.workspaces.debug', false);
#else
pref('zen.workspaces.debug', true);
#endif
// Zen Split View
pref('zen.splitView.enable-tab-drop', true);
pref('zen.splitView.min-resize-width', 7);
pref('zen.splitView.rearrange-hover-size', 24);
// Zen Download Animations
pref('zen.downloads.download-animation', true);
pref('zen.downloads.download-animation-duration', 1000); // ms

View File

@@ -0,0 +1,14 @@
// This Source Code Form is subject to the terms of the Mozilla Public
// License, v. 2.0. If a copy of the MPL was not distributed with this
// file, You can obtain one at http://mozilla.org/MPL/2.0/.
pref('zen.view.compact.hide-tabbar', true);
pref('zen.view.compact.hide-toolbar', false);
pref('zen.view.compact.toolbar-flash-popup', false);
pref('zen.view.compact.toolbar-flash-popup.duration', 800);
pref('zen.view.compact.toolbar-hide-after-hover.duration', 1000);
pref('zen.view.compact.color-toolbar', true);
pref('zen.view.compact.color-sidebar', true);
pref('zen.view.compact.animate-sidebar', true);
pref('zen.view.compact.show-sidebar-and-toolbar-on-hover', true);
pref('zen.view.compact.show-background-tab-toast', true);

View File

@@ -0,0 +1,6 @@
// This Source Code Form is subject to the terms of the Mozilla Public
// License, v. 2.0. If a copy of the MPL was not distributed with this
// file, You can obtain one at http://mozilla.org/MPL/2.0/.
pref('zen.downloads.download-animation', true);
pref('zen.downloads.download-animation-duration', 1000); // ms

View File

@@ -0,0 +1,9 @@
// This Source Code Form is subject to the terms of the Mozilla Public
// License, v. 2.0. If a copy of the MPL was not distributed with this
// file, You can obtain one at http://mozilla.org/MPL/2.0/.
pref('zen.glance.enabled', true);
pref('zen.glance.enable-contextmenu-search', true);
pref('zen.glance.hold-duration', 300); // in ms
pref('zen.glance.open-essential-external-links', true);
pref('zen.glance.activation-method', 'alt'); // ctrl, alt, shift, none, hold

View File

@@ -0,0 +1,7 @@
// This Source Code Form is subject to the terms of the Mozilla Public
// License, v. 2.0. If a copy of the MPL was not distributed with this
// file, You can obtain one at http://mozilla.org/MPL/2.0/.
pref('zen.keyboard.shortcuts.enabled', true);
pref('zen.keyboard.shortcuts.version', 0); // Empty string means default shortcuts
pref('zen.keyboard.shortcuts.disable-mainkeyset-clear', false); // for debugging

View File

@@ -0,0 +1,19 @@
// This Source Code Form is subject to the terms of the Mozilla Public
// License, v. 2.0. If a copy of the MPL was not distributed with this
// file, You can obtain one at http://mozilla.org/MPL/2.0/.
pref('zen.mods.updated-value-observer', false);
pref('zen.mods.auto-update-days', 20); // In days
#ifdef MOZILLA_OFFICIAL
pref('zen.mods.auto-update', true);
pref('zen.rice.api.url', 'https://share.zen-browser.app', locked);
pref('zen.injections.match-urls', 'https://zen-browser.app/*,https://share.zen-browser.app/*', locked);
#else
pref('zen.mods.auto-update', false);
pref('zen.rice.api.url', "http://localhost", locked);
pref('zen.injections.match-urls', 'http://localhost/*', locked);
#endif
pref('zen.rice.share.notice.accepted', false);

View File

@@ -0,0 +1,7 @@
// This Source Code Form is subject to the terms of the Mozilla Public
// License, v. 2.0. If a copy of the MPL was not distributed with this
// file, You can obtain one at http://mozilla.org/MPL/2.0/.
pref('zen.splitView.enable-tab-drop', true);
pref('zen.splitView.min-resize-width', 7);
pref('zen.splitView.rearrange-hover-size', 24);

View File

@@ -0,0 +1,23 @@
// This Source Code Form is subject to the terms of the Mozilla Public
// License, v. 2.0. If a copy of the MPL was not distributed with this
// file, You can obtain one at http://mozilla.org/MPL/2.0/.
pref('zen.theme.accent-color', "#ffb787");
pref('zen.theme.content-element-separation', 8); // In pixels
pref('zen.theme.gradient', true);
pref('zen.theme.gradient.show-custom-colors', false);
pref('zen.theme.essentials-favicon-bg', true);
pref('zen.theme.window.scheme', 'auto'); // auto, light, dark
#ifdef XP_MACOSX
pref('zen.theme.border-radius', 10); // In pixels
#else
pref('zen.theme.border-radius', 8); // In pixels
#endif
#ifdef XP_MACOSX
pref('zen.theme.acrylic-elements', false);
#else
pref('zen.theme.acrylic-elements', false);
#endif

View File

@@ -0,0 +1,11 @@
// This Source Code Form is subject to the terms of the Mozilla Public
// License, v. 2.0. If a copy of the MPL was not distributed with this
// file, You can obtain one at http://mozilla.org/MPL/2.0/.
pref('zen.urlbar.replace-newtab', true);
pref('zen.urlbar.show-protections-icon', false);
pref('zen.urlbar.behavior', 'floating-on-type'); // default, floating-on-type, float
pref('zen.urlbar.wait-to-clear', 45000); // in ms (default 45s)
pref('zen.urlbar.show-domain-only-in-sidebar', true);
pref('zen.urlbar.hide-one-offs', true);
pref('zen.urlbar.enable-overrides', false);

View File

@@ -0,0 +1,28 @@
// This Source Code Form is subject to the terms of the Mozilla Public
// License, v. 2.0. If a copy of the MPL was not distributed with this
// file, You can obtain one at http://mozilla.org/MPL/2.0/.
pref('zen.view.sidebar-height-throttle', 0); // in ms
pref('zen.view.sidebar-expanded.max-width', 500);
#ifdef XP_MACOSX
pref('zen.view.mac.show-three-dot-menu', false);
pref('zen.widget.mac.mono-window-controls', true);
#endif
pref('zen.view.use-single-toolbar', true);
pref('zen.view.sidebar-expanded', true);
pref('zen.view.sidebar-collapsed.hide-mute-button', true);
pref('zen.view.experimental-force-window-controls-left', false);
#ifdef XP_MACOSX
pref('zen.view.grey-out-inactive-windows', false);
#else
pref('zen.view.grey-out-inactive-windows', true);
#endif
pref('zen.view.hide-window-controls', true);
pref('zen.view.experimental-no-window-controls', false);
pref('zen.view.show-newtab-button-border-top', false);
pref('zen.view.show-newtab-button-top', true);

View File

@@ -0,0 +1,25 @@
// This Source Code Form is subject to the terms of the Mozilla Public
// License, v. 2.0. If a copy of the MPL was not distributed with this
// file, You can obtain one at http://mozilla.org/MPL/2.0/.
pref('zen.workspaces.continue-where-left-off', false);
pref('zen.workspaces.hide-default-container-indicator', true);
pref('zen.workspaces.force-container-workspace', false);
pref('zen.workspaces.open-new-tab-if-last-unpinned-tab-is-closed', false);
pref('zen.workspaces.swipe-actions', true);
pref('zen.workspaces.wrap-around-navigation', true);
pref('zen.workspaces.natural-scroll', false);
pref('zen.workspaces.scroll-modifier-key','ctrl'); // can be ctrl, alt, shift, or a meta key
pref('services.sync.engine.workspaces', false);
pref('zen.workspaces.container-specific-essentials-enabled', false);
#ifdef MOZILLA_OFFICIAL
pref('zen.workspaces.debug', false);
#else
pref('zen.workspaces.debug', true);
#endif
// Section: Pinned tabs management
pref('zen.pinned-tab-manager.debug', false);
pref('zen.pinned-tab-manager.restore-pinned-tabs-to-pinned-url', false);
pref('zen.pinned-tab-manager.close-shortcut-behavior', 'reset-unload-switch');

View File

@@ -1,10 +1,10 @@
diff --git a/browser/app/profile/firefox.js b/browser/app/profile/firefox.js
index beced8067e6c8b5c8cf8e3f6060ba259ec9a294d..33a264e7f9cf97944da3888bdb957fa6e7c4c346 100644
index 412e0879bbb0c7e7d1eb842212b064e1c77cab8f..bd23e5f2cd3f9c382f704fd1fcfdbb3edd71a454 100644
--- a/browser/app/profile/firefox.js
+++ b/browser/app/profile/firefox.js
@@ -3398,3 +3398,5 @@ pref("toolkit.contentRelevancy.enabled", false);
pref("toolkit.contentRelevancy.ingestEnabled", false);
// Pref to enable extra logging for the content relevancy feature
pref("toolkit.contentRelevancy.log", false);
@@ -3361,3 +3361,5 @@ pref("toolkit.contentRelevancy.log", false);
// rotation altogether.
pref("browser.contextual-services.contextId.rotation-in-days", 0);
pref("browser.contextual-services.contextId.rust-component.enabled", false);
+
+#include zen-browser.js

View File

@@ -1,3 +1,6 @@
// This Source Code Form is subject to the terms of the Mozilla Public
// License, v. 2.0. If a copy of the MPL was not distributed with this
// file, You can obtain one at http://mozilla.org/MPL/2.0/.
pref("full-screen-api.transition-duration.enter", "0 0");
pref("full-screen-api.transition-duration.leave", "0 0");

View File

@@ -1,3 +1,6 @@
// This Source Code Form is subject to the terms of the Mozilla Public
// License, v. 2.0. If a copy of the MPL was not distributed with this
// file, You can obtain one at http://mozilla.org/MPL/2.0/.
pref("widget.gtk.rounded-bottom-corners.enabled", true);

View File

@@ -1,6 +1,9 @@
// This Source Code Form is subject to the terms of the Mozilla Public
// License, v. 2.0. If a copy of the MPL was not distributed with this
// file, You can obtain one at http://mozilla.org/MPL/2.0/.
// Enable transparent background for macos
pref('widget.macos.titlebar-blend-mode.behind-window', true);
pref('widget.macos.sidebar-blend-mode.behind-window', true);
// 1. hudWindow
// 2. fullScreenUI
// 3. popover
@@ -8,4 +11,4 @@ pref('widget.macos.titlebar-blend-mode.behind-window', true);
// 5. toolTip
// 6. headerView
// 7. underlay
pref('zen.widget.macos.window-material', 3);
pref('zen.widget.macos.window-material', 1);

View File

@@ -1,3 +1,6 @@
// This Source Code Form is subject to the terms of the Mozilla Public
// License, v. 2.0. If a copy of the MPL was not distributed with this
// file, You can obtain one at http://mozilla.org/MPL/2.0/.
pref('image.jxl.enabled', true, locked);
pref("svg.context-properties.content.enabled", true);

View File

@@ -1,3 +1,6 @@
// This Source Code Form is subject to the terms of the Mozilla Public
// License, v. 2.0. If a copy of the MPL was not distributed with this
// file, You can obtain one at http://mozilla.org/MPL/2.0/.
pref('browser.newtabpage.activity-stream.feeds.topsites', false);
pref('browser.newtabpage.activity-stream.feeds.section.topstories', false);

View File

@@ -1,3 +1,6 @@
// This Source Code Form is subject to the terms of the Mozilla Public
// License, v. 2.0. If a copy of the MPL was not distributed with this
// file, You can obtain one at http://mozilla.org/MPL/2.0/.
pref('pdfjs.enableHighlightEditor', true);
pref('pdfjs.enableHighlightFloatingButton', true);

View File

@@ -1,38 +1,18 @@
// ---- Experimental settings to try make zen faster
pref("media.memory_cache_max_size", 1048576);
pref("media.cache_readahead_limit", 9000);
pref("media.cache_resume_threshold", 3600);
pref("media.memory_caches_combined_limit_kb", 2560000);
pref("image.mem.decode_bytes_at_a_time", 32768);
// Enable GPU by default
pref("gfx.canvas.accelerated", true);
pref("media.hardware-video-decoding.enabled", true);
pref("layers.gpu-process.enabled", true);
// This Source Code Form is subject to the terms of the Mozilla Public
// License, v. 2.0. If a copy of the MPL was not distributed with this
// file, You can obtain one at http://mozilla.org/MPL/2.0/.
#ifdef XP_MACOSX
// Pref to control the reponse taken on macOS when the OS is under memory
// pressure. Changes to the pref take effect immediately. Browser restart not
// required. The pref value is a bitmask:
// 0x0: No response (other than recording for telemetry, crash reporting)
// 0x1: Use the tab unloading feature to reduce memory use. Requires that
// the above "browser.tabs.unloadOnLowMemory" pref be set to true for tab
// unloading to occur.
// 0x2: Issue the internal "memory-pressure" notification to reduce memory use
// 0x3: Both 0x1 and 0x2.
pref("browser.lowMemoryResponseMask", 3);
// Pref to control the reponse taken on macOS when the OS is under memory
// pressure. Changes to the pref take effect immediately. Browser restart not
// required. The pref value is a bitmask:
// 0x0: No response (other than recording for telemetry, crash reporting)
// 0x1: Use the tab unloading feature to reduce memory use. Requires that
// the above "browser.tabs.unloadOnLowMemory" pref be set to true for tab
// unloading to occur.
// 0x2: Issue the internal "memory-pressure" notification to reduce memory use
// 0x3: Both 0x1 and 0x2.
pref("browser.lowMemoryResponseMask", 3);
#endif
// Prefetching:
pref("network.dns.disablePrefetch", false);
pref("network.prefetch-next", true);
pref("network.dns.disablePrefetchFromHTTPS", false);
pref("network.predictor.enable-hover-on-ssl", true);
pref("network.http.rcwn.enabled", false);
// Experimental Zen Features
// Strategy to use for bytecode cache (Thanks https://github.com/gunir)
pref('dom.script_loader.bytecode_cache.strategy', 2);
pref("layout.css.grid-template-masonry-value.enabled", true);

View File

@@ -1,3 +1,6 @@
// This Source Code Form is subject to the terms of the Mozilla Public
// License, v. 2.0. If a copy of the MPL was not distributed with this
// file, You can obtain one at http://mozilla.org/MPL/2.0/.
pref("media.videocontrols.picture-in-picture.video-toggle.enabled", true);
// TODO: Enable once we have a proper settings page

View File

@@ -1,3 +1,6 @@
// This Source Code Form is subject to the terms of the Mozilla Public
// License, v. 2.0. If a copy of the MPL was not distributed with this
// file, You can obtain one at http://mozilla.org/MPL/2.0/.
pref("datareporting.policy.dataSubmissionEnabled", false, locked);
pref("datareporting.healthreport.uploadEnabled", false, locked);

View File

@@ -1,6 +1,7 @@
// This Source Code Form is subject to the terms of the Mozilla Public
// License, v. 2.0. If a copy of the MPL was not distributed with this
// file, You can obtain one at http://mozilla.org/MPL/2.0/.
pref("apz.overscroll.enabled", true);
pref("general.smoothScroll", true);
pref("general.smoothScroll.msdPhysics.enabled", true);
pref("general.smoothScroll.currentVelocityWeighting", "0.15");
pref("general.smoothScroll.stopDecelerationWeighting", "0.6");

View File

@@ -1,3 +1,6 @@
// This Source Code Form is subject to the terms of the Mozilla Public
// License, v. 2.0. If a copy of the MPL was not distributed with this
// file, You can obtain one at http://mozilla.org/MPL/2.0/.
pref('browser.urlbar.unitConversion.enabled', true);
pref('browser.urlbar.trending.featureGate', false);

View File

@@ -1,7 +1,8 @@
// This Source Code Form is subject to the terms of the Mozilla Public
// License, v. 2.0. If a copy of the MPL was not distributed with this
// file, You can obtain one at http://mozilla.org/MPL/2.0/.
// Mica
pref("widget.windows.mica", true);
pref("widget.windows.mica.popups", true);
pref("widget.windows.mica.toplevel-backdrop", 2);
pref("dom.ipc.processPriorityManager.backgroundUsesEcoQoS", false);

View File

@@ -11,19 +11,16 @@
// Dont download the multilingual dictionary
pref("intl.multilingual.downloadEnabled", false);
// Theme
pref('toolkit.legacyUserProfileCustomizations.stylesheets', true);
#ifdef XP_WIN
#include windows.inc
#include windows.inc
#endif
#ifdef UNIX_BUT_NOT_MAC
#include linux.inc
#include linux.inc
#endif
#ifdef XP_MACOSX
#include macos.inc
#include macos.inc
#endif
#include urlbar.inc
@@ -37,7 +34,7 @@ pref('toolkit.legacyUserProfileCustomizations.stylesheets', true);
#include features.inc
#ifndef XP_MACOSX
#include smoothscroll.inc
#include smoothscroll.inc
#endif
#include performance.inc

View File

@@ -1,16 +1,8 @@
diff --git a/browser/base/content/aboutDialog.xhtml b/browser/base/content/aboutDialog.xhtml
index c64980810570fcea84e33fdc2d66ac42a79f4e46..6ef9bf4b88f0a0539d833f662c4dd890fd1fde93 100644
index c64980810570fcea84e33fdc2d66ac42a79f4e46..11fe00e84dbac781b3da90abb1251c70bd3b094a 100644
--- a/browser/base/content/aboutDialog.xhtml
+++ b/browser/base/content/aboutDialog.xhtml
@@ -35,6 +35,7 @@
<html:link rel="localization" href="branding/brand.ftl"/>
<html:link rel="localization" href="browser/aboutDialog.ftl"/>
+ <script src="chrome://browser/content/zenThemeModifier.js"></script>
</linkset>
<html:div id="aboutDialogContainer">
@@ -102,10 +103,6 @@
@@ -102,10 +102,6 @@
<label id="version" class="update"/>
<label id="releasenotes" is="text-link" hidden="true" data-l10n-id="releaseNotes-link"/>
</hbox>
@@ -21,7 +13,7 @@ index c64980810570fcea84e33fdc2d66ac42a79f4e46..6ef9bf4b88f0a0539d833f662c4dd890
</vbox>
#endif
</hbox>
@@ -125,21 +122,17 @@
@@ -125,21 +121,17 @@
</description>
</vbox>
<description class="text-blurb" id="communityDesc" data-l10n-id="community-2">

View File

@@ -1,12 +0,0 @@
diff --git a/browser/base/content/aboutRestartRequired.xhtml b/browser/base/content/aboutRestartRequired.xhtml
index c1f42b4ddd3b154a8643fc5265c556904805bdff..9722e7de76b02077addfeda90a9acd8b921a9cd6 100644
--- a/browser/base/content/aboutRestartRequired.xhtml
+++ b/browser/base/content/aboutRestartRequired.xhtml
@@ -29,6 +29,7 @@
/>
<link rel="localization" href="branding/brand.ftl" />
<link rel="localization" href="browser/aboutRestartRequired.ftl" />
+ <script src="chrome://browser/content/zenThemeModifier.js"></script>
</head>
<body>
<!-- PAGE CONTAINER (for styling purposes only) -->

View File

@@ -1,8 +1,8 @@
diff --git a/browser/base/content/browser-addons.js b/browser/base/content/browser-addons.js
index 73593191936cc345ee8e2c28cb251dc13f4c2fd4..e6c459c1ebc60a1f3930a55e212570f696bf07a0 100644
index f4d5125d9a1c8f0aef24536ca7d2ef3f133d8a99..cacd7f465e67226de4a366354779c6cb0cbd0b4c 100644
--- a/browser/base/content/browser-addons.js
+++ b/browser/base/content/browser-addons.js
@@ -735,7 +735,7 @@ var gXPInstallObserver = {
@@ -1057,7 +1057,7 @@ var gXPInstallObserver = {
persistent: true,
hideClose: true,
popupOptions: {
@@ -11,7 +11,7 @@ index 73593191936cc345ee8e2c28cb251dc13f4c2fd4..e6c459c1ebc60a1f3930a55e212570f6
},
};
@@ -942,7 +942,7 @@ var gXPInstallObserver = {
@@ -1266,7 +1266,7 @@ var gXPInstallObserver = {
hideClose: true,
timeout: Date.now() + 30000,
popupOptions: {
@@ -20,16 +20,16 @@ index 73593191936cc345ee8e2c28cb251dc13f4c2fd4..e6c459c1ebc60a1f3930a55e212570f6
},
};
@@ -2125,7 +2125,7 @@ var gUnifiedExtensions = {
panel.hidden = false;
@@ -2571,7 +2571,7 @@ var gUnifiedExtensions = {
this.recordButtonTelemetry(reason || "extensions_panel_showing");
this.ensureButtonShownBeforeAttachingPanel(panel);
PanelMultiView.openPopup(panel, this._button, {
- position: "bottomright topright",
+ position: gZenUIManager.panelUIPosition,
triggerEvent: aEvent,
});
}
@@ -2294,18 +2294,20 @@ var gUnifiedExtensions = {
@@ -2758,18 +2758,20 @@ var gUnifiedExtensions = {
this._maybeMoveWidgetNodeBack(widgetId);
}

View File

@@ -1,9 +1,9 @@
diff --git a/browser/base/content/browser-box.inc.xhtml b/browser/base/content/browser-box.inc.xhtml
index 7d7e8697f02f90d4f336c9ab0a73a89848e0c21c..64e950106dd05b443ce72107613ac9cc405d56ea 100644
index afa7f8e7dd74173bf2c696bd96f7e86e8b0126bc..4847c24923f673e91eb7fb65ea6b037f38062405 100644
--- a/browser/base/content/browser-box.inc.xhtml
+++ b/browser/base/content/browser-box.inc.xhtml
@@ -23,7 +23,15 @@
<browser id="sidebar" autoscroll="false" disablehistory="true" disablefullscreen="true" tooltip="aHTMLTooltip"/>
@@ -25,7 +25,15 @@
</stack>
</vbox>
<splitter id="sidebar-splitter" class="chromeclass-extrachrome sidebar-splitter" resizebefore="sibling" resizeafter="none" hidden="true"/>
+<vbox flex="1" id="zen-appcontent-wrapper">

View File

@@ -1,21 +1,20 @@
diff --git a/browser/base/content/browser-init.js b/browser/base/content/browser-init.js
index 3d5173315812589c0b79beec5f0419fc37cb8868..c4216db9e414fbbaead6ecd89b40366b0d8a50c1 100644
index bcbfab4a3781ff3c7349115751b3830976eec4bf..b1b774e0d335ed3c5ca565a45cd624c7ea2718af 100644
--- a/browser/base/content/browser-init.js
+++ b/browser/base/content/browser-init.js
@@ -175,6 +175,8 @@ var gBrowserInit = {
@@ -186,6 +186,7 @@ var gBrowserInit = {
},
onLoad() {
+ Services.scriptloader.loadSubScript("chrome://browser/content/ZenStartup.mjs", window);
+ Services.scriptloader.loadSubScript("chrome://browser/content/zenThemeModifier.js", window);
gBrowser.addEventListener("DOMUpdateBlockedPopups", e =>
PopupBlockerObserver.handleEvent(e)
);
@@ -310,6 +312,7 @@ var gBrowserInit = {
TelemetryTimestamps.add("delayedStartupStarted");
@@ -344,6 +345,7 @@ var gBrowserInit = {
this._cancelDelayedStartup();
+ gZenWorkspaces.afterLoadInit();
this._handleURIToLoad();
gBrowser.addEventListener(
"PermissionStateChange",
+ gZenWorkspaces.selectStartPage();
Services.obs.addObserver(gIdentityHandler, "perm-changed");
Services.obs.addObserver(gRemoteControl, "devtools-socket");
Services.obs.addObserver(gRemoteControl, "marionette-listening");

View File

@@ -1,5 +1,5 @@
diff --git a/browser/base/content/browser.js b/browser/base/content/browser.js
index 6d664917a5a3bb1cea8a747e42e8bc0065ec999e..5059293ebfa29d646455b7a3505bd6eae408ba64 100644
index 6d664917a5a3bb1cea8a747e42e8bc0065ec999e..dfacd5c40ef14319fe7398452c007f167003a583 100644
--- a/browser/base/content/browser.js
+++ b/browser/base/content/browser.js
@@ -33,6 +33,7 @@ ChromeUtils.defineESModuleGetters(this, {
@@ -39,3 +39,13 @@ index 6d664917a5a3bb1cea8a747e42e8bc0065ec999e..5059293ebfa29d646455b7a3505bd6ea
}
return true;
@@ -5717,6 +5722,9 @@ var ConfirmationHint = {
MozXULElement.insertFTLIfNeeded("toolkit/branding/brandings.ftl");
MozXULElement.insertFTLIfNeeded("browser/confirmationHints.ftl");
document.l10n.setAttributes(this._message, messageId, options.l10nArgs);
+ if (window.gZenUIManager?.showToast) {
+ return window.gZenUIManager.showToast(messageId, options);
+ }
if (options.descriptionId) {
document.l10n.setAttributes(this._description, options.descriptionId);
this._description.hidden = false;

View File

@@ -1,5 +1,5 @@
diff --git a/browser/base/content/browser.xhtml b/browser/base/content/browser.xhtml
index 8f8c5536cb6e54300897180ca3f950974c60e930..79305485631f14712d8b2674f477b641ec53fcd6 100644
index 8f8c5536cb6e54300897180ca3f950974c60e930..78076e29faf749b83d6c8e099af6767621f34d58 100644
--- a/browser/base/content/browser.xhtml
+++ b/browser/base/content/browser.xhtml
@@ -26,6 +26,7 @@
@@ -10,23 +10,22 @@ index 8f8c5536cb6e54300897180ca3f950974c60e930..79305485631f14712d8b2674f477b641
persist="screenX screenY width height sizemode"
data-l10n-sync="true">
<head>
@@ -105,8 +106,11 @@
@@ -105,8 +106,10 @@
<title data-l10n-id="browser-main-window-default-title"></title>
+#include zen-preloaded.inc.xhtml
+
<script src="chrome://browser/content/global-scripts.js"></script>
<script src="chrome://browser/content/browser-main.js"></script>
+#include zen-assets.inc.xhtml
</head>
<html:body xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul">
# All sets except for popupsets (commands, keys, and stringbundles)
@@ -128,9 +132,11 @@
@@ -128,9 +131,11 @@
</vbox>
</html:template>
+<hbox id="zen-main-app-wrapper" flex="1" persist="zen-compact-mode">
+<hbox id="zen-main-app-wrapper" flex="1" persist="zen-compact-mode" class="browser-toolbox-background">
#include navigator-toolbox.inc.xhtml
#include browser-box.inc.xhtml

View File

@@ -1,5 +1,5 @@
diff --git a/browser/base/content/navigator-toolbox.inc.xhtml b/browser/base/content/navigator-toolbox.inc.xhtml
index 00c8976d3e258c0875d7da2f3ec823d8907a84c9..cc61d5a845b5ce22a61f5a1aab8b280b2bcdf101 100644
index ad1515eb111bc2532b2f17ea28fc04463030d30d..899f4baf2cd3472abd5591f3c9987f0c02b9313f 100644
--- a/browser/base/content/navigator-toolbox.inc.xhtml
+++ b/browser/base/content/navigator-toolbox.inc.xhtml
@@ -2,7 +2,7 @@
@@ -29,9 +29,9 @@ index 00c8976d3e258c0875d7da2f3ec823d8907a84c9..cc61d5a845b5ce22a61f5a1aab8b280b
+<html:div id="zen-essentials" skipintoolbarset="true"></html:div>
+<html:div id="zen-tabs-wrapper">
<hbox class="tab-drop-indicator" hidden="true"/>
<html:span id="tab-drag-empty-feedback" role="presentation"/>
# If the name (tabbrowser-arrowscrollbox) or structure of this changes
@@ -76,6 +78,7 @@
# significantly, there is an optimization in
@@ -75,6 +77,7 @@
tooltip="dynamic-shortcut-tooltip"
data-l10n-id="tabs-toolbar-new-tab"/>
<html:span id="tabbrowser-tab-a11y-desc" hidden="true"/>
@@ -39,7 +39,7 @@ index 00c8976d3e258c0875d7da2f3ec823d8907a84c9..cc61d5a845b5ce22a61f5a1aab8b280b
</tabs>
<toolbarbutton id="new-tab-button"
@@ -101,9 +104,10 @@
@@ -100,9 +103,10 @@
#include private-browsing-indicator.inc.xhtml
<toolbarbutton class="content-analysis-indicator toolbarbutton-1 content-analysis-indicator-icon"/>

View File

@@ -1,5 +1,5 @@
diff --git a/browser/base/content/navigator-toolbox.js b/browser/base/content/navigator-toolbox.js
index 64ded8fb2c08f1dbfec8fe08ab427a24b53f1169..9e1e888554279b6e1df3bc1cb907afd2ccb330ca 100644
index 31d0ee325847834e7c58c1079225adf43d738bcd..4d2c69d4dd7e313bdb085530b3289dc9d93530a5 100644
--- a/browser/base/content/navigator-toolbox.js
+++ b/browser/base/content/navigator-toolbox.js
@@ -8,7 +8,7 @@
@@ -17,8 +17,8 @@ index 64ded8fb2c08f1dbfec8fe08ab427a24b53f1169..9e1e888554279b6e1df3bc1cb907afd2
#reader-mode-button,
+ #zen-tabs-wrapper,
#picture-in-picture-button,
#shopping-sidebar-button,
#urlbar-zoom-button,
#star-button-box,
@@ -208,6 +209,7 @@ document.addEventListener(
case "vertical-tabs-newtab-button":
case "tabs-newtab-button":

View File

@@ -1,3 +1,7 @@
# This Source Code Form is subject to the terms of the Mozilla Public
# License, v. 2.0. If a copy of the MPL was not distributed with this
# file, You can obtain one at http://mozilla.org/MPL/2.0/.
#include zen-locales.inc.xhtml
# Styles used all over the browser
@@ -28,16 +32,28 @@
<link rel="stylesheet" type="text/css" href="chrome://browser/content/zen-styles/zen-download-box-animation.css" />
</linkset>
# Startup "preloaded" scripts that requre globals such as gBrowser and gURLBar
# JS files which are needed by browser.xhtml but no other top level windows to
# support MacOS specific features should be loaded directly from browser-main.js
# rather than this file.
#
# If you update this list, you may need to add a mapping within the following
# file so that ESLint works correctly:
# tools/lint/eslint/eslint-plugin-mozilla/lib/environments/browser-window.js
<script type="text/javascript" src="chrome://browser/content/ZenPreloadedScripts.js"></script>
# Scripts used all over the browser
<script src="chrome://browser/content/ZenUIManager.mjs"></script>
<script src="chrome://browser/content/zen-components/ZenFolders.mjs"></script>
<script src="chrome://browser/content/zen-components/ZenMods.mjs"></script>
<script src="chrome://browser/content/zen-components/ZenCompactMode.mjs"></script>
<script src="chrome://browser/content/zen-components/ZenPinnedTabsStorage.mjs"></script>
<script src="chrome://browser/content/zen-components/ZenWorkspacesStorage.mjs"></script>
<script src="chrome://browser/content/zen-components/ZenPinnedTabManager.mjs"></script>
<script src="chrome://browser/content/zen-components/ZenGradientGenerator.mjs"></script>
<script src="chrome://browser/content/zen-components/ZenViewSplitter.mjs"></script>
<script src="chrome://browser/content/zen-components/ZenGlanceManager.mjs"></script>
<script src="chrome://browser/content/zen-components/ZenMediaController.mjs"></script>
<script src="chrome://browser/content/zen-components/ZenDownloadAnimation.mjs"></script>
<script type="text/javascript" src="chrome://browser/content/ZenUIManager.mjs"></script>
<script type="text/javascript" src="chrome://browser/content/zen-components/ZenFolders.mjs"></script>
<script type="text/javascript" src="chrome://browser/content/zen-components/ZenMods.mjs"></script>
<script type="text/javascript" src="chrome://browser/content/zen-components/ZenCompactMode.mjs"></script>
<script type="text/javascript" src="chrome://browser/content/zen-components/ZenPinnedTabsStorage.mjs"></script>
<script type="text/javascript" src="chrome://browser/content/zen-components/ZenWorkspacesStorage.mjs"></script>
<script type="text/javascript" src="chrome://browser/content/zen-components/ZenPinnedTabManager.mjs"></script>
<script type="text/javascript" src="chrome://browser/content/zen-components/ZenGradientGenerator.mjs"></script>
<script type="text/javascript" src="chrome://browser/content/zen-components/ZenViewSplitter.mjs"></script>
<script type="text/javascript" src="chrome://browser/content/zen-components/ZenGlanceManager.mjs"></script>
<script type="text/javascript" src="chrome://browser/content/zen-components/ZenMediaController.mjs"></script>
<script type="text/javascript" src="chrome://browser/content/zen-components/ZenDownloadAnimation.mjs"></script>
<script type="text/javascript" src="chrome://browser/content/zen-components/ZenEmojiPicker.mjs"></script>
<script type="text/javascript" src="chrome://browser/content/zen-components/ZenWorkspaceCreation.mjs"></script>

View File

@@ -1,15 +1,19 @@
# This Source Code Form is subject to the terms of the Mozilla Public
# License, v. 2.0. If a copy of the MPL was not distributed with this
# file, You can obtain one at http://mozilla.org/MPL/2.0/.
content/browser/zenThemeModifier.js (../../zen/common/zenThemeModifier.js)
content/browser/ZenStartup.mjs (../../zen/common/ZenStartup.mjs)
content/browser/ZenPreloadedScripts.js (../../zen/common/ZenPreloadedScripts.js)
content/browser/zen-sets.js (../../zen/common/zen-sets.js)
content/browser/ZenUIManager.mjs (../../zen/common/ZenUIManager.mjs)
content/browser/zen-components/ZenActorsManager.mjs (../../zen/common/ZenActorsManager.mjs)
content/browser/zen-components/ZenEmojies.mjs (../../zen/common/ZenEmojies.mjs)
content/browser/ZenCustomizableUI.sys.mjs (../../zen/common/ZenCustomizableUI.sys.mjs)
content/browser/zen-components/ZenUIMigration.mjs (../../zen/common/ZenUIMigration.mjs)
content/browser/zen-components/ZenCommonUtils.mjs (../../zen/common/ZenCommonUtils.mjs)
content/browser/zen-components/ZenSessionStore.mjs (../../zen/common/ZenSessionStore.mjs)
content/browser/zen-components/ZenEmojisData.min.mjs (../../zen/common/emojis/ZenEmojisData.min.mjs)
content/browser/zen-components/ZenEmojiPicker.mjs (../../zen/common/emojis/ZenEmojiPicker.mjs)
content/browser/zen-styles/zen-theme.css (../../zen/common/styles/zen-theme.css)
content/browser/zen-styles/zen-buttons.css (../../zen/common/styles/zen-buttons.css)
@@ -35,11 +39,12 @@
content/browser/zen-components/ZenViewSplitter.mjs (../../zen/split-view/ZenViewSplitter.mjs)
content/browser/zen-styles/zen-decks.css (../../zen/split-view/zen-decks.css)
content/browser/zen-components/ZenMods.mjs (../../zen/mods/ZenMods.mjs)
content/browser/zen-components/ZenMods.mjs (../../zen/mods/ZenMods.mjs)
content/browser/zen-components/ZenWorkspaceIcons.mjs (../../zen/workspaces/ZenWorkspaceIcons.mjs)
content/browser/zen-components/ZenWorkspace.mjs (../../zen/workspaces/ZenWorkspace.mjs)
content/browser/zen-components/ZenWorkspaces.mjs (../../zen/workspaces/ZenWorkspaces.mjs)
content/browser/zen-components/ZenWorkspaceCreation.mjs (../../zen/workspaces/ZenWorkspaceCreation.mjs)
content/browser/zen-components/ZenWorkspacesStorage.mjs (../../zen/workspaces/ZenWorkspacesStorage.mjs)
content/browser/zen-components/ZenWorkspacesSync.mjs (../../zen/workspaces/ZenWorkspacesSync.mjs)
content/browser/zen-components/ZenGradientGenerator.mjs (../../zen/workspaces/ZenGradientGenerator.mjs)
@@ -71,7 +76,6 @@
# Images
content/browser/zen-images/gradient.png (../../zen/images/gradient.png)
content/browser/zen-images/brand-header.svg (../../zen/images/brand-header.svg)
content/browser/zen-images/layouts/collapsed.png (../../zen/images/layouts/collapsed.png)
content/browser/zen-images/layouts/multiple-toolbar.png (../../zen/images/layouts/multiple-toolbar.png)
@@ -80,7 +84,7 @@
content/browser/zen-images/note-indicator.svg (../../zen/images/note-indicator.svg)
content/browser/zen-images/downloads/download.svg (../../zen/images/downloads/download.svg)
content/browser/zen-images/downloads/archive.svg (../../zen/images/downloads/archive.svg)
content/browser/zen-images/downloads/archive.svg (../../zen/images/downloads/archive.svg)
# Fonts
content/browser/zen-fonts/JunicodeVF-Italic.woff2 (../../zen/fonts/JunicodeVF-Italic.woff2)
@@ -88,16 +92,16 @@
# JS Vendor
content/browser/zen-vendor/tsparticles.confetti.bundle.min.js (../../zen/vendor/tsparticles.confetti.bundle.min.js)
content/browser/zen-vendor/motion.min.mjs (../../zen/vendor/motion.min.mjs)
content/browser/zen-vendor/animejs.min.mjs (../../zen/vendor/animejs.min.mjs)
# FavIcons for startup
content/browser/zen-images/favicons/calendar.ico (../../zen/images/favicons/calendar.ico)
content/browser/zen-images/favicons/discord.ico (../../zen/images/favicons/discord.ico)
content/browser/zen-images/favicons/figma.ico (../../zen/images/favicons/figma.ico)
content/browser/zen-images/favicons/github.ico (../../zen/images/favicons/github.ico)
content/browser/zen-images/favicons/notion.ico (../../zen/images/favicons/notion.ico)
content/browser/zen-images/favicons/obsidian.ico (../../zen/images/favicons/obsidian.ico)
content/browser/zen-images/favicons/slack.ico (../../zen/images/favicons/slack.ico)
content/browser/zen-images/favicons/reddit.ico (../../zen/images/favicons/reddit.ico)
content/browser/zen-images/favicons/x.ico (../../zen/images/favicons/x.ico)
content/browser/zen-images/favicons/trello.ico (../../zen/images/favicons/trello.ico)
content/browser/zen-images/favicons/calendar.ico (../../zen/images/favicons/calendar.ico)
content/browser/zen-images/favicons/discord.ico (../../zen/images/favicons/discord.ico)
content/browser/zen-images/favicons/figma.ico (../../zen/images/favicons/figma.ico)
content/browser/zen-images/favicons/github.ico (../../zen/images/favicons/github.ico)
content/browser/zen-images/favicons/notion.ico (../../zen/images/favicons/notion.ico)
content/browser/zen-images/favicons/obsidian.ico (../../zen/images/favicons/obsidian.ico)
content/browser/zen-images/favicons/slack.ico (../../zen/images/favicons/slack.ico)
content/browser/zen-images/favicons/reddit.ico (../../zen/images/favicons/reddit.ico)
content/browser/zen-images/favicons/x.ico (../../zen/images/favicons/x.ico)
content/browser/zen-images/favicons/trello.ico (../../zen/images/favicons/trello.ico)

View File

@@ -1,3 +1,7 @@
# This Source Code Form is subject to the terms of the Mozilla Public
# License, v. 2.0. If a copy of the MPL was not distributed with this
# file, You can obtain one at http://mozilla.org/MPL/2.0/.
<commandset id="zenCommandSet">
<command id="cmd_zenCompactModeToggle" />
<command id="cmd_zenCompactModeShowSidebar" />
@@ -33,8 +37,14 @@
<command id="cmd_zenToggleTabsOnRight" />
<command id="cmd_zenReplacePinnedUrlWithCurrent" />
<command id="cmd_zenAddToEssentials" />
<command id="cmd_zenRemoveFromEssentials" />
<command id="cmd_contextZenAddToEssentials" />
<command id="cmd_contextZenRemoveFromEssentials" />
<command id="cmd_zenCtxDeleteWorkspace" />
<command id="cmd_zenChangeWorkspaceName" />
<command id="cmd_zenChangeWorkspaceIcon" />
<command id="cmd_zenReorderWorkspaces" />
<command id="cmd_zenOpenWorkspaceCreation" />
<command id="cmd_zenPinnedTabReset" />
<command id="cmd_zenPinnedTabResetNoTab" />

View File

@@ -1,3 +1,6 @@
# This Source Code Form is subject to the terms of the Mozilla Public
# License, v. 2.0. If a copy of the MPL was not distributed with this
# file, You can obtain one at http://mozilla.org/MPL/2.0/.
<link rel="localization" href="browser/zen-workspaces.ftl"/>
<link rel="localization" href="browser/zen-split-view.ftl"/>

View File

@@ -0,0 +1,11 @@
# This Source Code Form is subject to the terms of the Mozilla Public
# License, v. 2.0. If a copy of the MPL was not distributed with this
# file, You can obtain one at http://mozilla.org/MPL/2.0/.
<panel type="arrow" orient="vertical" id="PanelUI-zen-emojis-picker" position="bottomright topright" side="bottom">
<hbox id="PanelUI-zen-emojis-picker-header">
<html:input type="search" id="PanelUI-zen-emojis-picker-search" placeholder="Search emojis" />
<toolbarbutton id="PanelUI-zen-emojis-picker-none" class="toolbarbutton-1" />
</hbox>
<hbox id="PanelUI-zen-emojis-picker-list" />
</panel>

View File

@@ -0,0 +1,88 @@
# This Source Code Form is subject to the terms of the Mozilla Public
# License, v. 2.0. If a copy of the MPL was not distributed with this
# file, You can obtain one at http://mozilla.org/MPL/2.0/.
<panel flip="side" type="arrow" popupalign="center" orient="vertical" id="PanelUI-zen-gradient-generator" position="bottomright topright" mainview="true" side="left">
<panelmultiview id="PanelUI-zen-gradient-generator-multiview" mainViewId="PanelUI-zen-gradient-generator-view">
<panelview id="PanelUI-zen-gradient-generator-view" class="PanelUI-subView zen-theme-picker" role="document" mainview-with-header="true" has-custom-header="true">
<hbox class="zen-theme-picker-gradient">
<hbox id="PanelUI-zen-gradient-generator-scheme">
<button id="PanelUI-zen-gradient-generator-scheme-auto" class="subviewbutton"/>
<button id="PanelUI-zen-gradient-generator-scheme-light" class="subviewbutton"/>
<button id="PanelUI-zen-gradient-generator-scheme-dark" class="subviewbutton"/>
</hbox>
<hbox id="PanelUI-zen-gradient-generator-color-actions">
<button id="PanelUI-zen-gradient-generator-color-add" class="subviewbutton">
</button>
<button id="PanelUI-zen-gradient-generator-color-remove" class="subviewbutton">
</button>
</hbox>
<label data-l10n-id="zen-panel-ui-gradient-click-to-add" id="PanelUI-zen-gradient-generator-color-click-to-add"></label>
</hbox>
<hbox>
<toolbarbutton id="PanelUI-zen-gradient-generator-color-page-left" class="toolbarbutton-1" disabled="true" />
<hbox id="PanelUI-zen-gradient-generator-color-pages">
<hbox>
<box data-lightness="90" data-algo="float" data-num-dots="1" data-position="196,176" style="background: #7bcbda;"></box>
<box data-lightness="80" data-algo="float" data-num-dots="1" data-position="116,167" style="background: #be9ac9;"></box>
<box data-lightness="70" data-algo="float" data-num-dots="1" data-position="122,110" style="background: #cdcea1;"></box>
<box data-lightness="60" data-algo="float" data-num-dots="1" data-position="181,83" style="background: #6ac593;"></box>
<box data-lightness="50" data-algo="analogous" data-num-dots="3" data-position="219,99" style="background: linear-gradient(135deg, rgb(117, 255, 136), rgb(60, 66, 58));"></box>
<box data-lightness="40" data-algo="analogous" data-num-dots="3" data-position="167,201" style="background: linear-gradient(135deg, #a03fe0, #382b5c);"></box>
<box data-lightness="30" data-algo="analogous" data-num-dots="3" data-position="90,170" style="background: linear-gradient(135deg, #c57aa3, #af824f);"></box>
<box data-lightness="20" data-algo="splitComplementary" data-num-dots="3" data-position="83,103" style="background: linear-gradient(135deg, #1e90ff, #968a4a);"></box>
</hbox>
<hbox>
<box data-lightness="90" data-algo="float" data-num-dots="1" data-position="196,176" style="background: red;"></box>
<box data-lightness="80" data-algo="float" data-num-dots="1" data-position="116,167" style="background: #be9ac9;"></box>
<box data-lightness="70" data-algo="float" data-num-dots="1" data-position="122,110" style="background: #cdcea1;"></box>
<box data-lightness="60" data-algo="float" data-num-dots="1" data-position="181,83" style="background: #6ac593;"></box>
<box data-lightness="50" data-algo="analogous" data-num-dots="3" data-position="219,99" style="background: linear-gradient(135deg, rgb(117, 255, 136), rgb(60, 66, 58));"></box>
<box data-lightness="40" data-algo="analogous" data-num-dots="3" data-position="167,201" style="background: linear-gradient(135deg, #a03fe0, #382b5c);"></box>
<box data-lightness="30" data-algo="analogous" data-num-dots="3" data-position="90,170" style="background: linear-gradient(135deg, #c57aa3, #af824f);"></box>
<box data-lightness="20" data-algo="splitComplementary" data-num-dots="3" data-position="83,103" style="background: linear-gradient(135deg, #1e90ff, #968a4a);"></box>
</hbox>
</hbox>
<toolbarbutton id="PanelUI-zen-gradient-generator-color-page-right" class="toolbarbutton-1" />
</hbox>
<hbox id="PanelUI-zen-gradient-generator-controls">
<hbox id="PanelUI-zen-gradient-colors-wrapper">
<vbox flex="1" id="PanelUI-zen-gradient-opacity-wrapper">
<box id="PanelUI-zen-gradient-slider-wave">
<svg viewBox="0 -7.605 455 70" xmlns="http://www.w3.org/2000/svg" preserveAspectRatio="xMinYMid meet">
<path d="M 51.373 27.395 L 419.634 27.395"
fill="none"
stroke-linecap="round"
stroke-linejoin="round"
style="stroke-width: 8px;"/>
<defs>
<linearGradient id="PanelUI-zen-gradient-generator-slider-wave-gradient" x1="0%" y1="0%" x2="100%" y2="0%">
<stop offset="0%" stop-color="light-dark(rgb(90, 90, 90), rgb(161, 161, 161))"/>
<stop offset="0%" stop-color="light-dark(rgb(90, 90, 90), rgba(161, 161, 161))"/>
<stop offset="100%" stop-color="light-dark(rgba(77, 77, 77, 0.5), rgba(161, 161, 161, 0.5))"/>
</linearGradient>
</defs>
</svg>
</box>
<html:input type="range" min="0.15" max="0.85" value="0.5" step="0.01" id="PanelUI-zen-gradient-generator-opacity" />
</vbox>
<vbox id="PanelUI-zen-gradient-generator-texture-wrapper">
</vbox>
</hbox>
</hbox>
<vbox id="PanelUI-zen-gradient-generator-custom-colors">
<vbox id="zen-theme-picker-color">
<label data-l10n-id="zen-panel-ui-gradient-generator-custom-color"></label>
<hbox>
<html:input type="text" placeholder="#000000" id="PanelUI-zen-gradient-generator-custom-input" />
<toolbarbutton id="PanelUI-zen-gradient-generator-color-custom-add" class="subviewbutton">
<image></image>
</toolbarbutton>
</hbox>
</vbox>
<vbox id="PanelUI-zen-gradient-generator-custom-list">
</vbox>
</vbox>
</panelview>
</panelmultiview>
</panel>

View File

@@ -0,0 +1,32 @@
# This Source Code Form is subject to the terms of the Mozilla Public
# License, v. 2.0. If a copy of the MPL was not distributed with this
# file, You can obtain one at http://mozilla.org/MPL/2.0/.
<menupopup id="zenCreateNewPopup">
<menuitem data-l10n-id="tabs-toolbar-new-tab" command="cmd_newNavigatorTab" image="chrome://browser/skin/zen-icons/plus.svg" />
<menuseparator/>
<menuitem data-l10n-id="zen-panel-ui-workspaces-create" command="cmd_zenOpenWorkspaceCreation" image="chrome://browser/skin/zen-icons/duplicate-tab.svg" />
</menupopup>
<menupopup id="zenWorkspaceMoreActions">
<menuitem id="context_zenEditWorkspace" data-l10n-id="zen-workspaces-panel-change-name" command="cmd_zenChangeWorkspaceName"/>
<menuitem id="context_zenEditWorkspaceIcon" data-l10n-id="zen-workspaces-panel-change-icon" command="cmd_zenChangeWorkspaceIcon"/>
<menuitem class="zenToolbarThemePicker"
id="context_zenChangeWorkspaceTheme"
data-l10n-id="zen-workspaces-change-theme"
command="cmd_zenOpenZenThemePicker"/>
<menu id="context_zenWorkspacesOpenInContainerTab"
data-l10n-id="zen-workspaces-panel-context-default-profile"
selection-type="single"
node-type="link"
hide-if-private-browsing="true"
hide-if-usercontext-disabled="true">
<menupopup />
</menu>
<menuseparator id="context_zenWorkspacesSeparator"/>
<menuseparator/>
<menuitem id="context_zenReorderWorkspaces" data-l10n-id="zen-workspaces-panel-context-reorder" command="cmd_zenReorderWorkspaces"/>
<menuseparator/>
<menuitem data-l10n-id="zen-panel-ui-workspaces-create" command="cmd_zenOpenWorkspaceCreation"/>
<menuitem id="context_zenDeleteWorkspace" data-l10n-id="zen-workspaces-panel-context-delete" command="cmd_zenCtxDeleteWorkspace"/>
</menupopup>

View File

@@ -1,131 +1,8 @@
# This Source Code Form is subject to the terms of the Mozilla Public
# License, v. 2.0. If a copy of the MPL was not distributed with this
# file, You can obtain one at http://mozilla.org/MPL/2.0/.
<panel flip="side" type="arrow" orient="vertical" id="PanelUI-zen-gradient-generator" position="bottomright topright" mainview="true" side="left">
<panelmultiview id="PanelUI-zen-gradient-generator-multiview" mainViewId="PanelUI-zen-gradient-generator-view">
<panelview id="PanelUI-zen-gradient-generator-view" class="PanelUI-subView zen-theme-picker" role="document" mainview-with-header="true" has-custom-header="true">
<hbox>
<hbox id="PanelUI-zen-gradient-generator-predefined">
<box data-algo="analogous" data-num-dots="3" data-position="219,99" style="background: linear-gradient(135deg, rgb(117, 255, 136), rgb(60, 66, 58));"></box>
<box data-algo="analogous" data-num-dots="3" data-position="167,201" style="background: linear-gradient(135deg, #a03fe0, #382b5c);"></box>
<box data-algo="analogous" data-num-dots="3" data-position="90,170" style="background: linear-gradient(135deg, #c57aa3, #af824f);"></box>
<box data-algo="splitComplementary" data-num-dots="3" data-position="83,103" style="background: linear-gradient(135deg, #1e90ff, #968a4a);"></box>
<box data-algo="analogous" data-num-dots="3" data-position="186,186" style="background: linear-gradient(135deg, #a07a48, #ab80e4);"></box>
<box data-algo="float" data-num-dots="1" data-position="196,176" style="background: #7bcbda;"></box>
<box data-algo="float" data-num-dots="1" data-position="116,167" style="background: #be9ac9;"></box>
<box data-algo="float" data-num-dots="1" data-position="122,110" style="background: #cdcea1;"></box>
<box data-algo="float" data-num-dots="1" data-position="181,83" style="background: #6ac593;"></box>
<box data-algo="complementary" data-num-dots="2" data-position="82,112" style="background: linear-gradient(135deg, #1e90ff, #cfb179);"></box>
</hbox>
</hbox>
<hbox class="zen-theme-picker-gradient">
<box id="PanelUI-zen-gradient-generator-rotation-dot"></box>
<box id="PanelUI-zen-gradient-generator-rotation-line"></box>
<box id="PanelUI-zen-gradient-generator-color-actions">
<button id="PanelUI-zen-gradient-generator-color-add" class="subviewbutton">
</button>
<button id="PanelUI-zen-gradient-generator-color-remove" class="subviewbutton">
</button>
<html:div class="separator"></html:div>
<button id="PanelUI-zen-gradient-generator-color-toggle-algo" class="subviewbutton" data-l10n-id="zen-panel-ui-gradient-generator-algo-floating">
</button>
</box>
<label data-l10n-id="zen-panel-ui-gradient-click-to-add" id="PanelUI-zen-gradient-generator-color-click-to-add"></label>
</hbox>
<hbox id="PanelUI-zen-gradient-generator-controls">
<hbox id="PanelUI-zen-gradient-colors-wrapper">
<vbox flex="1">
<label data-l10n-id="zen-panel-ui-gradient-generator-opacity-text"></label>
<html:input type="range" min="0" max="1" value="0.5" step="0.05" id="PanelUI-zen-gradient-generator-opacity" />
</vbox>
<vbox id="PanelUI-zen-gradient-generator-texture-wrapper">
</vbox>
</hbox>
</hbox>
<vbox id="PanelUI-zen-gradient-generator-custom-colors">
<vbox id="zen-theme-picker-color">
<label data-l10n-id="zen-panel-ui-gradient-generator-custom-color"></label>
<hbox>
<html:input type="text" placeholder="#000000" id="PanelUI-zen-gradient-generator-custom-input" />
<toolbarbutton id="PanelUI-zen-gradient-generator-color-custom-add" class="subviewbutton">
<image></image>
</toolbarbutton>
</hbox>
</vbox>
<vbox id="PanelUI-zen-gradient-generator-custom-list">
</vbox>
</vbox>
</panelview>
</panelmultiview>
</panel>
#include zen-panels/gradient-generator.inc
#include zen-panels/emojis-picker.inc
<panel flip="slide" type="arrow" orient="vertical" id="PanelUI-zen-workspaces" position="bottomright topright" mainview="true" side="left">
<panelmultiview id="PanelUI-zen-workspaces-multiview" mainViewId="PanelUI-zen-workspaces-view">
<panelview id="PanelUI-zen-workspaces-view" class="PanelUI-subView" role="document" mainview-with-header="true" has-custom-header="true" closemenu="none">
<vbox>
<hbox>
<h3 data-l10n-id="zen-panel-ui-workspaces-text" id="PanelUI-zen-workspaces-header"></h3>
<toolbarbutton id="PanelUI-zen-workspaces-reorder-mode" class="subviewbutton">
<image></image>
</toolbarbutton>
<toolbarbutton id="PanelUI-zen-workspaces-new" class="subviewbutton">
<image></image>
</toolbarbutton>
</hbox>
</vbox>
<html:div id="PanelUI-zen-workspaces-list">
</html:div>
</panelview>
<panelview id="PanelUI-zen-workspaces-create" class="PanelUI-subView" role="document" mainview-with-header="true" has-custom-header="true">
<vbox class="PanelUI-zen-workspaces-user-create">
<h1 data-l10n-id="zen-panel-ui-workspaces-create-text"></h1>
<hbox class="PanelUI-zen-workspaces-creation-wraper">
<hbox class="PanelUI-zen-workspaces-icons-container create"></hbox>
<html:input autofocus="true" id="PanelUI-zen-workspaces-create-input" type="text" placeholder="Enter workspace name" />
</hbox>
</vbox>
<html:moz-button-group class="panel-footer" id="PanelUI-zen-workspaces-create-footer">
<button disabled="true" default="true" slot="primary" id="PanelUI-zen-workspaces-create-save" class="footer-button" data-l10n-id="zen-panel-ui-workspaces-create-save">
</button>
<button id="PanelUI-zen-workspaces-create-cancel" class="footer-button" data-l10n-id="zen-panel-ui-workspaces-create-cancel">
</button>
</html:moz-button-group>
</panelview>
<panelview id="PanelUI-zen-workspaces-edit" class="PanelUI-subView" role="document" mainview-with-header="true" has-custom-header="true">
<vbox class="PanelUI-zen-workspaces-user-create">
<h1 data-l10n-id="zen-panel-ui-workspaces-edit-text"></h1>
<hbox class="PanelUI-zen-workspaces-creation-wraper">
<hbox class="PanelUI-zen-workspaces-icons-container edit"></hbox>
<html:input autofocus="true" id="PanelUI-zen-workspaces-edit-input" type="text" placeholder="Enter workspace name" />
</hbox>
</vbox>
<html:moz-button-group class="panel-footer" id="PanelUI-zen-workspaces-edit-footer">
<button disabled="true" default="true" slot="primary" id="PanelUI-zen-workspaces-edit-save" class="footer-button" data-l10n-id="zen-panel-ui-workspaces-edit-save">
</button>
<button id="PanelUI-zen-workspaces-edit-cancel" class="footer-button" data-l10n-id="zen-panel-ui-workspaces-edit-cancel">
</button>
</html:moz-button-group>
</panelview>
<panelview id="PanelUI-zen-workspaces-icon-picker" class="PanelUI-subView" role="document" mainview-with-header="true" has-custom-header="true">
<vbox id="PanelUI-zen-workspaces-icon-picker-wrapper">
<html:div id="PanelUI-zen-workspaces-icon-search-bar">
<html:input autofocus="true" type="text" id="PanelUI-zen-workspaces-icon-search-input"/>
</html:div>
</vbox>
</panelview>
</panelmultiview>
</panel>
<menupopup id="zenWorkspaceActionsMenu">
<menuitem id="context_zenOpenWorkspace" data-l10n-id="zen-workspaces-panel-context-open"/>
<menuseparator/>
<menuitem id="context_zenEditWorkspace" data-l10n-id="zen-workspaces-panel-context-edit"/>
<menu id="context_zenWorkspacesOpenInContainerTab"
data-l10n-id="zen-workspaces-panel-context-open-in-container-tab"
selection-type="single"
node-type="link"
hide-if-private-browsing="true"
hide-if-usercontext-disabled="true">
<menupopup />
</menu>
<menuseparator/>
<menuitem id="context_zenDeleteWorkspace" data-l10n-id="zen-workspaces-panel-context-delete"/>
</menupopup>
#include zen-panels/popups.inc

View File

@@ -1,3 +1,7 @@
# This Source Code Form is subject to the terms of the Mozilla Public
# License, v. 2.0. If a copy of the MPL was not distributed with this
# file, You can obtain one at http://mozilla.org/MPL/2.0/.
# This needs to be here, before all the other scripts, because it's used before
# the window is fully loaded.
# Make sure they are loaded before the global-scripts.inc file.
@@ -10,4 +14,3 @@
<script type="text/javascript" src="chrome://browser/content/zen-components/ZenWorkspacesSync.mjs"></script>
<script type="text/javascript" src="chrome://browser/content/zen-components/ZenActorsManager.mjs"></script>
<script type="text/javascript" src="chrome://browser/content/zen-components/ZenSessionStore.mjs"></script>

View File

@@ -1,6 +1,11 @@
# This Source Code Form is subject to the terms of the Mozilla Public
# License, v. 2.0. If a copy of the MPL was not distributed with this
# file, You can obtain one at http://mozilla.org/MPL/2.0/.
#include ../../../zen/media/zen-media-controls.inc.xhtml
<toolbar brighttext="true"
id="zen-sidebar-bottom-buttons"
id="zen-sidebar-foot-buttons"
fullscreentoolbar="true"
class="browser-toolbar customization-target"
data-l10n-id="tabs-toolbar"
@@ -10,4 +15,5 @@
mode="icons">
<toolbarbutton removable="true" class="chromeclass-toolbar-additional toolbarbutton-1 zen-sidebar-action-button" id="zen-expand-sidebar-button" command="cmd_zenToggleSidebar" data-l10n-id="sidebar-zen-expand"></toolbarbutton>
<zen-workspace-icons id="zen-workspaces-button" overflows="false" removable="false"></zen-workspace-icons>
<toolbarbutton removable="true" class="chromeclass-toolbar-additional toolbarbutton-1 zen-sidebar-action-button" id="zen-create-new-button" context="zenCreateNewPopup" data-l10n-id="sidebar-zen-create-new"></toolbarbutton>
</toolbar>

View File

@@ -1,3 +1,7 @@
# This Source Code Form is subject to the terms of the Mozilla Public
# License, v. 2.0. If a copy of the MPL was not distributed with this
# file, You can obtain one at http://mozilla.org/MPL/2.0/.
<vbox id="zen-toast-container"></vbox>
#include ../../../zen/split-view/zen-splitview-overlay.inc.xhtml

View File

@@ -1,5 +1,5 @@
diff --git a/browser/components/BrowserGlue.sys.mjs b/browser/components/BrowserGlue.sys.mjs
index cebca6d017a0c3fc8eff7a38f987726324789e69..73a24df91bec368f2f27c538b37d57595e18c599 100644
index bde641f7112adde948707c172b9f18d3635d8ef1..3f430451586904e6be086114ec10f719745093be 100644
--- a/browser/components/BrowserGlue.sys.mjs
+++ b/browser/components/BrowserGlue.sys.mjs
@@ -8,6 +8,7 @@ import { XPCOMUtils } from "resource://gre/modules/XPCOMUtils.sys.mjs";
@@ -8,13 +8,14 @@ index cebca6d017a0c3fc8eff7a38f987726324789e69..73a24df91bec368f2f27c538b37d5759
ChromeUtils.defineESModuleGetters(lazy, {
+ gZenUIMigration: "chrome://browser/content/zen-components/ZenUIMigration.mjs",
AboutHomeStartupCache: "resource:///modules/AboutHomeStartupCache.sys.mjs",
AboutNewTab: "resource:///modules/AboutNewTab.sys.mjs",
AWToolbarButton: "resource:///modules/aboutwelcome/AWToolbarUtils.sys.mjs",
@@ -881,6 +882,7 @@ BrowserGlue.prototype = {
ASRouter: "resource:///modules/asrouter/ASRouter.sys.mjs",
@@ -1659,6 +1660,8 @@ BrowserGlue.prototype = {
} else if (profileDataVersion < APP_DATA_VERSION) {
lazy.ProfileDataUpgrader.upgrade(profileDataVersion, APP_DATA_VERSION);
}
+
+ lazy.gZenUIMigration.init(this._isNewProfile);
},
lazy.ProcessHangMonitor.init();
+ lazy.gZenUIMigration.init(this._isNewProfile, aWindow);
// A channel for "remote troubleshooting" code...
let channel = new lazy.WebChannel(
"remote-troubleshooting",
async _showUpgradeDialog() {

View File

@@ -1,5 +1,5 @@
diff --git a/browser/components/customizableui/content/panelUI.js b/browser/components/customizableui/content/panelUI.js
index 689205034d9df67ff1fe0ebbf4a3481a5f414391..2626b7286deb51f66b6ccbbc32d510139cacb109 100644
index 689205034d9df67ff1fe0ebbf4a3481a5f414391..2fab7474f1038a7a3cd2f4b4798d59696900cc85 100644
--- a/browser/components/customizableui/content/panelUI.js
+++ b/browser/components/customizableui/content/panelUI.js
@@ -516,8 +516,7 @@ const PanelUI = {
@@ -12,7 +12,20 @@ index 689205034d9df67ff1fe0ebbf4a3481a5f414391..2626b7286deb51f66b6ccbbc32d51013
.appendChild(tempPanel);
let multiView = document.createXULElement("panelmultiview");
@@ -959,7 +958,7 @@ const PanelUI = {
@@ -608,10 +607,12 @@ const PanelUI = {
if (hasKids && !this.navbar.hasAttribute("nonemptyoverflow")) {
this.navbar.setAttribute("nonemptyoverflow", "true");
this.overflowPanel.setAttribute("hasfixeditems", "true");
+ window.document.getElementById("zen-sidebar-top-buttons").setAttribute("nonemptyoverflow", "true");
} else if (!hasKids && this.navbar.hasAttribute("nonemptyoverflow")) {
PanelMultiView.hidePopup(this.overflowPanel);
this.overflowPanel.removeAttribute("hasfixeditems");
this.navbar.removeAttribute("nonemptyoverflow");
+ window.document.getElementById("zen-sidebar-top-buttons").removeAttribute("nonemptyoverflow");
}
},
@@ -959,7 +960,7 @@ const PanelUI = {
el.removeAttribute("data-lazy-l10n-id");
});

View File

@@ -1,16 +1,16 @@
diff --git a/browser/components/extensions/parent/ext-tabs.js b/browser/components/extensions/parent/ext-tabs.js
index 517ea0079c12941a844a4f9e4ba694c6411887ee..510ab14dfa2178c332c9862d6a01b75bd12dfe3b 100644
index a53a12f91817a9e3d1773480928e858bc3182c77..10f6559ffb128906be31de220c93320e9a6d40e7 100644
--- a/browser/components/extensions/parent/ext-tabs.js
+++ b/browser/components/extensions/parent/ext-tabs.js
@@ -482,6 +482,7 @@ this.tabs = class extends ExtensionAPIPersistent {
@@ -494,6 +494,7 @@ this.tabs = class extends ExtensionAPIPersistent {
}
let tab = tabManager.getWrapper(event.originalTarget);
let tab = tabManager.getWrapper(updatedTab);
+ if (!tab) return;
let changeInfo = {};
for (let prop of needed) {
@@ -836,6 +837,7 @@ this.tabs = class extends ExtensionAPIPersistent {
@@ -848,6 +849,7 @@ this.tabs = class extends ExtensionAPIPersistent {
});
}

View File

@@ -2,7 +2,7 @@
- [New Tab Documentation](https://firefox-source-docs.mozilla.org/browser/components/newtab/docs/index.html)
- You also need `meow@9.0.0` (that's the one I tested) because other versions might not work.
- To bundle the new tab, execute the following:
- To bundle the new tab, execute the following command:
```
./mach npm run bundle --prefix=browser/components/newtab

View File

@@ -131,6 +131,11 @@ var gZenMarketplaceManager = {
return this._modsList;
},
_triggerBuildUpdateWithoutRebuild() {
this._doNotRebuildModsList = true;
gZenMods.triggerModsUpdate();
},
async removeMod(modId) {
await gZenMods.removeMod(modId);
@@ -140,20 +145,13 @@ var gZenMarketplaceManager = {
async disableMod(modId) {
await gZenMods.disableMod(modId);
this._doNotRebuildModsList = true;
gZenMods.triggerModsUpdate();
this._triggerBuildUpdateWithoutRebuild();
},
async enableMod(modId) {
await gZenMods.enableMod(modId);
this._doNotRebuildModsList = true;
gZenMods.triggerModsUpdate();
},
_triggerBuildUpdateWithoutRebuild() {
this._doNotRebuildModsList = true;
gZenMods.triggerModsUpdate();
this._triggerBuildUpdateWithoutRebuild();
},
async _importThemes() {
@@ -635,24 +633,9 @@ const kZenExtendedSidebar = 'zen.view.sidebar-expanded';
const kZenSingleToolbar = 'zen.view.use-single-toolbar';
var gZenLooksAndFeel = {
kZenColors: [
'#aac7ff',
'#74d7cb',
'#a0d490',
'#dec663',
'#ffb787',
'#dec1b1',
'#ffb1c0',
'#ddbfc3',
'#f6b0ea',
'#d4bbff',
],
init() {
if (this.__hasInitialized) return;
this.__hasInitialized = true;
this._initializeColorPicker(this._getInitialAccentColor());
window.zenPageAccentColorChanged = this._handleAccentColorChange.bind(this);
gZenMarketplaceManager.init();
for (const pref of [kZenExtendedSidebar, kZenSingleToolbar]) {
Services.prefs.addObserver(pref, this);
@@ -745,37 +728,6 @@ var gZenLooksAndFeel = {
});
}
},
_initializeColorPicker(accentColor) {
let elem = document.getElementById('zenLooksAndFeelColorOptions');
elem.innerHTML = '';
for (let color of this.kZenColors) {
let colorElemParen = document.createElement('div');
let colorElem = document.createElement('div');
colorElemParen.classList.add('zenLooksAndFeelColorOptionParen');
colorElem.classList.add('zenLooksAndFeelColorOption');
colorElem.style.setProperty('--zen-primary-color', color, 'important');
if (accentColor === color) {
colorElemParen.setAttribute('selected', 'true');
}
colorElemParen.addEventListener('click', () => {
Services.prefs.setBoolPref('zen.theme.color-prefs.use-workspace-colors', false);
Services.prefs.setStringPref('zen.theme.accent-color', color);
});
colorElemParen.appendChild(colorElem);
elem.appendChild(colorElemParen);
}
// TODO: add custom color selection!
},
_handleAccentColorChange(accentColor) {
this._initializeColorPicker(accentColor);
},
_getInitialAccentColor() {
return Services.prefs.getStringPref('zen.theme.accent-color', this.kZenColors[0]);
},
};
var gZenWorkspacesSettings = {
@@ -1046,9 +998,12 @@ var gZenCKSSettings = {
input.classList.remove(`${ZEN_CKS_INPUT_FIELD_CLASS}-not-set`);
// This is because on some OSs (windows/macos mostly) the key is not the same as the keycode
// e.g. CTRL+ALT+3 may be displayed as the euro sign
let shortcut = event.key;
// First, try to read the *physical* key via event.code.
// If event.code is like "KeyS", "KeyA", ..., strip off "Key" → "S".
// Otherwise, fall back to event.key (e.g. "F5", "Enter", etc.).
let shortcut;
if (event.code && event.code.startsWith('Key')) shortcut = event.code.slice(3);
else shortcut = event.key;
shortcut = shortcut.replace(/Ctrl|Control|Shift|Alt|Option|Cmd|Meta/, ''); // Remove all modifiers
@@ -1182,11 +1137,6 @@ Preferences.addAll([
type: 'bool',
default: true,
},
{
id: 'zen.theme.color-prefs.use-workspace-colors',
type: 'bool',
default: false,
},
{
id: 'zen.view.compact.color-toolbar',
type: 'bool',

View File

@@ -39,35 +39,9 @@
data-l10n-id="zen-vertical-tabs-newtab-top-button-up"
preference="zen.view.show-newtab-button-top"/>
</vbox>
</groupbox>
<hbox id="zenLooksCategory"
class="subcategory"
hidden="true"
data-category="paneZenLooks">
<html:h1 data-l10n-id="pane-zen-looks-title"/>
</hbox>
<groupbox id="zenLooksAndFeelGroup" data-category="paneZenLooks" hidden="true" class="highlighting-group">
<label><html:h2 data-l10n-id="zen-look-and-feel-colors-header"/></label>
<description class="description-deemphasized" data-l10n-id="zen-look-and-feel-colors-description" />
<hbox id="zenLooksAndFeelColorOptions" align="center">
</hbox>
<html:div id="zen-theme-builder-wrapper"></html:div>
<box class="indent">
<checkbox id="zenLooksAndFeelUseWorkspaceColors"
data-l10n-id="zen-look-and-feel-use-workspace-colors"
preference="zen.theme.color-prefs.use-workspace-colors"/>
</box>
<hbox id="zenLooksAndFeelGradientPickerParent"></hbox>
<html:div data-l10n-id="preferences-web-appearance-footer">
<html:a id="web-appearance-manage-themes-link" class="text-link" data-l10n-name="themes-link" href="about:addons" target="_blank" />
</html:div>
<html:div data-l10n-id="preferences-web-appearance-footer">
<html:a id="web-appearance-manage-themes-link" class="text-link" data-l10n-name="themes-link" href="about:addons" target="_blank" />
</html:div>
</groupbox>
<hbox id="zenThemeCategory"

View File

@@ -1,8 +1,8 @@
diff --git a/browser/components/sessionstore/SessionStore.sys.mjs b/browser/components/sessionstore/SessionStore.sys.mjs
index 8c6047e1ada5a22e57e1e665965237c9e22641d7..8d0585e738a5a758ebbddfa0787c71d634dadd4d 100644
index be029379c101a0105d4837136e064e6007b67c3e..f998ad44015b05104e8a1dbeebd7b94e586e4fbd 100644
--- a/browser/components/sessionstore/SessionStore.sys.mjs
+++ b/browser/components/sessionstore/SessionStore.sys.mjs
@@ -2088,7 +2088,6 @@ var SessionStoreInternal = {
@@ -2120,7 +2120,6 @@ var SessionStoreInternal = {
if (closedWindowState) {
let newWindowState;
if (
@@ -10,7 +10,7 @@ index 8c6047e1ada5a22e57e1e665965237c9e22641d7..8d0585e738a5a758ebbddfa0787c71d6
!lazy.SessionStartup.willRestore()
) {
// We want to split the window up into pinned tabs and unpinned tabs.
@@ -2303,11 +2302,9 @@ var SessionStoreInternal = {
@@ -2353,11 +2352,9 @@ var SessionStoreInternal = {
tabbrowser.selectedTab.label;
}
@@ -22,7 +22,7 @@ index 8c6047e1ada5a22e57e1e665965237c9e22641d7..8d0585e738a5a758ebbddfa0787c71d6
// Store the window's close date to figure out when each individual tab
// was closed. This timestamp should allow re-arranging data based on how
@@ -3216,7 +3213,7 @@ var SessionStoreInternal = {
@@ -3303,7 +3300,7 @@ var SessionStoreInternal = {
if (!isPrivateWindow && tabState.isPrivate) {
return;
}
@@ -31,7 +31,7 @@ index 8c6047e1ada5a22e57e1e665965237c9e22641d7..8d0585e738a5a758ebbddfa0787c71d6
return;
}
@@ -3925,6 +3922,11 @@ var SessionStoreInternal = {
@@ -4012,6 +4009,11 @@ var SessionStoreInternal = {
Math.min(tabState.index, tabState.entries.length)
);
tabState.pinned = false;
@@ -43,7 +43,24 @@ index 8c6047e1ada5a22e57e1e665965237c9e22641d7..8d0585e738a5a758ebbddfa0787c71d6
if (inBackground === false) {
aWindow.gBrowser.selectedTab = newTab;
@@ -5239,7 +5241,7 @@ var SessionStoreInternal = {
@@ -4448,6 +4450,7 @@ var SessionStoreInternal = {
// Append the tab if we're opening into a different window,
tabIndex: aSource == aTargetWindow ? pos : Infinity,
pinned: state.pinned,
+ essential: state.zenEssential,
userContextId: state.userContextId,
skipLoad: true,
preferredRemoteType,
@@ -5303,7 +5306,7 @@ var SessionStoreInternal = {
for (let i = tabbrowser.pinnedTabCount; i < tabbrowser.tabs.length; i++) {
let tab = tabbrowser.tabs[i];
- if (homePages.includes(tab.linkedBrowser.currentURI.spec)) {
+ if (homePages.includes(tab.linkedBrowser.currentURI.spec) && !tab.hasAttribute("zen-empty-tab")) {
removableTabs.push(tab);
}
}
@@ -5363,7 +5366,7 @@ var SessionStoreInternal = {
}
let workspaceID = aWindow.getWorkspaceID();
@@ -52,7 +69,7 @@ index 8c6047e1ada5a22e57e1e665965237c9e22641d7..8d0585e738a5a758ebbddfa0787c71d6
winData.workspaceID = workspaceID;
}
},
@@ -5430,14 +5432,15 @@ var SessionStoreInternal = {
@@ -5554,14 +5557,15 @@ var SessionStoreInternal = {
}
let tabbrowser = aWindow.gBrowser;
@@ -70,7 +87,7 @@ index 8c6047e1ada5a22e57e1e665965237c9e22641d7..8d0585e738a5a758ebbddfa0787c71d6
continue;
}
let tabData = lazy.TabState.collect(tab, TAB_CUSTOM_VALUES.get(tab));
@@ -5456,8 +5459,8 @@ var SessionStoreInternal = {
@@ -5580,8 +5584,8 @@ var SessionStoreInternal = {
// We don't store the Firefox View tab in Session Store, so if it was the last selected "tab" when
// a window is closed, point to the first item in the tab strip instead (it will never be the Firefox View tab,
// since it's only inserted into the tab strip after it's selected).
@@ -81,7 +98,7 @@ index 8c6047e1ada5a22e57e1e665965237c9e22641d7..8d0585e738a5a758ebbddfa0787c71d6
winData.title = tabbrowser.tabs[0].label;
}
winData.selected = selectedIndex;
@@ -5569,8 +5572,8 @@ var SessionStoreInternal = {
@@ -5693,8 +5697,8 @@ var SessionStoreInternal = {
// selectTab represents.
let selectTab = 0;
if (overwriteTabs) {
@@ -92,7 +109,7 @@ index 8c6047e1ada5a22e57e1e665965237c9e22641d7..8d0585e738a5a758ebbddfa0787c71d6
selectTab = Math.min(selectTab, winData.tabs.length);
}
@@ -5613,6 +5616,7 @@ var SessionStoreInternal = {
@@ -5737,6 +5741,7 @@ var SessionStoreInternal = {
winData.tabs,
winData.groups ?? []
);
@@ -100,7 +117,7 @@ index 8c6047e1ada5a22e57e1e665965237c9e22641d7..8d0585e738a5a758ebbddfa0787c71d6
this._log.debug(
`restoreWindow, createTabsForSessionRestore returned ${tabs.length} tabs`
);
@@ -6162,6 +6166,22 @@ var SessionStoreInternal = {
@@ -6286,6 +6291,22 @@ var SessionStoreInternal = {
// Most of tabData has been restored, now continue with restoring
// attributes that may trigger external events.

View File

@@ -1,12 +0,0 @@
diff --git a/browser/components/sessionstore/content/aboutSessionRestore.xhtml b/browser/components/sessionstore/content/aboutSessionRestore.xhtml
index 05538be5d95492903e44076dc43e195cbc76c10d..3c2ee6a9d44802657c9e0d5ef6c78e0b3920a9a5 100644
--- a/browser/components/sessionstore/content/aboutSessionRestore.xhtml
+++ b/browser/components/sessionstore/content/aboutSessionRestore.xhtml
@@ -20,6 +20,7 @@
<link rel="localization" href="browser/aboutSessionRestore.ftl"/>
<link rel="localization" href="branding/brand.ftl"/>
<script src="chrome://browser/content/aboutSessionRestore.js"/>
+ <script src="chrome://browser/content/zenThemeModifier.js"></script>
</head>
<body>

View File

@@ -1,5 +1,5 @@
diff --git a/browser/components/tabbrowser/content/tab.js b/browser/components/tabbrowser/content/tab.js
index f43ab1cf6257ff1a9c9aa522a0180fd9bbfe4036..d9714c46de860243b06af7e8343d36b107efb855 100644
index 793ba822f087f4d198c9876ed208ff16d8a41e3b..e53ccd748de015997c355d5d37cb38cc73e90f3d 100644
--- a/browser/components/tabbrowser/content/tab.js
+++ b/browser/components/tabbrowser/content/tab.js
@@ -21,6 +21,7 @@
@@ -68,15 +68,15 @@ index f43ab1cf6257ff1a9c9aa522a0180fd9bbfe4036..d9714c46de860243b06af7e8343d36b1
on_click(event) {
if (event.button != 0) {
return;
@@ -559,6 +568,7 @@
telemetrySource: lazy.TabMetrics.METRIC_SOURCE.TAB_STRIP,
});
@@ -561,6 +570,7 @@
)
);
} else {
+ gZenPinnedTabManager._removePinnedAttributes(this, true);
gBrowser.removeTab(this, {
animate: true,
triggeringEvent: event,
@@ -569,6 +579,14 @@
@@ -573,6 +583,14 @@
// (see tabbrowser-tabs 'click' handler).
gBrowser.tabContainer._blockDblClick = true;
}
@@ -91,7 +91,7 @@ index f43ab1cf6257ff1a9c9aa522a0180fd9bbfe4036..d9714c46de860243b06af7e8343d36b1
}
on_dblclick(event) {
@@ -592,6 +610,8 @@
@@ -596,6 +614,8 @@
animate: true,
triggeringEvent: event,
});

View File

@@ -1,5 +1,5 @@
diff --git a/browser/components/tabbrowser/content/tabbrowser.js b/browser/components/tabbrowser/content/tabbrowser.js
index d5aa64842a35c6697263c63fd3a0571b64b01344..14f5bc046f2e54109bd3fd0402a8f8b598a513c2 100644
index 37570c54b06f9cebc46aa232e2d01ac5d330e17a..818b1df6778d9d299b86fefa46bbf1d689d29fdb 100644
--- a/browser/components/tabbrowser/content/tabbrowser.js
+++ b/browser/components/tabbrowser/content/tabbrowser.js
@@ -413,11 +413,41 @@
@@ -9,7 +9,7 @@ index d5aa64842a35c6697263c63fd3a0571b64b01344..14f5bc046f2e54109bd3fd0402a8f8b5
+ get _numVisiblePinTabsWithoutCollapsed() {
+ let i = 0;
+ for (let item of this.tabContainer.ariaFocusableItems) {
+ if (!!item?.classList?.contains("tab-group-label") && item.closest("tab-group").pinned) {
+ if (this.isTabGroupLabel(item) && item.closest("tab-group")?.pinned) {
+ i += 1;
+ continue;
+ }
@@ -54,7 +54,13 @@ index d5aa64842a35c6697263c63fd3a0571b64b01344..14f5bc046f2e54109bd3fd0402a8f8b5
tab.linkedPanel = uniqueId;
this._selectedTab = tab;
this._selectedBrowser = browser;
@@ -834,11 +865,13 @@
@@ -829,16 +860,18 @@
}
pinTab(aTab) {
- if (aTab.pinned || aTab == FirefoxViewHandler.tab) {
+ if (aTab.pinned || aTab == FirefoxViewHandler.tab || aTab.hasAttribute("zen-empty-tab")) {
return;
}
this.showTab(aTab);
@@ -182,15 +188,16 @@ index d5aa64842a35c6697263c63fd3a0571b64b01344..14f5bc046f2e54109bd3fd0402a8f8b5
} else {
aTab.linkedBrowser.browsingContext.hasSiblings = this.tabs.length > 1;
}
@@ -2680,6 +2726,7 @@
@@ -2679,6 +2725,8 @@
schemelessInput,
hasValidUserGestureActivation = false,
textDirectiveUserActivation = false,
+ _forZenEmptyTab,
+ essential,
} = {}
) {
// all callers of addTab that pass a params object need to pass
@@ -2690,6 +2737,12 @@
@@ -2689,6 +2737,12 @@
);
}
@@ -203,7 +210,7 @@ index d5aa64842a35c6697263c63fd3a0571b64b01344..14f5bc046f2e54109bd3fd0402a8f8b5
if (!UserInteraction.running("browser.tabs.opening", window)) {
UserInteraction.start("browser.tabs.opening", "initting", window);
}
@@ -2753,6 +2806,16 @@
@@ -2752,6 +2806,19 @@
noInitialLabel,
skipBackgroundNotify,
});
@@ -216,11 +223,22 @@ index d5aa64842a35c6697263c63fd3a0571b64b01344..14f5bc046f2e54109bd3fd0402a8f8b5
+ }
+ if (_forZenEmptyTab) {
+ t.setAttribute("zen-empty-tab", "true");
+ }
+ if (essential) {
+ t.setAttribute("zen-essential", "true");
+ }
if (insertTab) {
// Insert the tab into the tab container in the correct position.
// For now, we support `index` as an alias for `tabIndex`.
@@ -2783,6 +2846,7 @@
this.#insertTabAtIndex(t, {
@@ -2760,6 +2827,7 @@
ownerTab,
openerTab,
pinned,
+ essential,
bulkOrderedOpen,
tabGroup: tabGroup ?? openerTab?.group,
});
@@ -2778,6 +2846,7 @@
openWindowInfo,
skipLoad,
triggeringRemoteType,
@@ -228,7 +246,7 @@ index d5aa64842a35c6697263c63fd3a0571b64b01344..14f5bc046f2e54109bd3fd0402a8f8b5
}));
if (focusUrlBar) {
@@ -2902,6 +2966,12 @@
@@ -2897,6 +2966,12 @@
}
}
@@ -241,7 +259,7 @@ index d5aa64842a35c6697263c63fd3a0571b64b01344..14f5bc046f2e54109bd3fd0402a8f8b5
// Additionally send pinned tab events
if (pinned) {
this._notifyPinnedStatus(t);
@@ -2990,10 +3060,10 @@
@@ -2985,10 +3060,10 @@
isAdoptingGroup = false,
isUserTriggered = false,
telemetryUserCreateSource = "unknown",
@@ -253,7 +271,7 @@ index d5aa64842a35c6697263c63fd3a0571b64b01344..14f5bc046f2e54109bd3fd0402a8f8b5
}
if (!color) {
@@ -3014,7 +3084,12 @@
@@ -3009,7 +3084,12 @@
label,
isAdoptingGroup
);
@@ -267,7 +285,7 @@ index d5aa64842a35c6697263c63fd3a0571b64b01344..14f5bc046f2e54109bd3fd0402a8f8b5
group,
insertBefore?.group ?? insertBefore
);
@@ -3303,6 +3378,7 @@
@@ -3304,6 +3384,7 @@
openWindowInfo,
skipLoad,
triggeringRemoteType,
@@ -275,7 +293,7 @@ index d5aa64842a35c6697263c63fd3a0571b64b01344..14f5bc046f2e54109bd3fd0402a8f8b5
}
) {
// If we don't have a preferred remote type (or it is `NOT_REMOTE`), and
@@ -3372,6 +3448,7 @@
@@ -3373,6 +3454,7 @@
openWindowInfo,
name,
skipLoad,
@@ -283,7 +301,18 @@ index d5aa64842a35c6697263c63fd3a0571b64b01344..14f5bc046f2e54109bd3fd0402a8f8b5
});
}
@@ -3560,7 +3637,7 @@
@@ -3518,7 +3600,9 @@
let shouldUpdateForPinnedTabs = false;
/** @type {Map<TabGroupStateData['id'], TabGroupWorkingData>} */
let tabGroupWorkingData = new Map();
-
+ if (this._hasAlreadyInitializedZenSessionStore) {
+ selectTab += 1; // SessionStoreInternal.restoreTabs expects a 1-based index.
+ }
for (const tabGroupData of tabGroupDataList) {
tabGroupWorkingData.set(tabGroupData.id, {
stateData: tabGroupData,
@@ -3561,7 +3645,7 @@
// Add a new tab if needed.
if (!tab) {
let createLazyBrowser =
@@ -292,7 +321,7 @@ index d5aa64842a35c6697263c63fd3a0571b64b01344..14f5bc046f2e54109bd3fd0402a8f8b5
let url = "about:blank";
if (tabData.entries?.length) {
@@ -3598,7 +3675,8 @@
@@ -3599,7 +3683,8 @@
skipLoad: true,
preferredRemoteType,
});
@@ -302,7 +331,7 @@ index d5aa64842a35c6697263c63fd3a0571b64b01344..14f5bc046f2e54109bd3fd0402a8f8b5
if (select) {
tabToSelect = tab;
}
@@ -3622,7 +3700,8 @@
@@ -3623,7 +3708,8 @@
// needs calling:
shouldUpdateForPinnedTabs = true;
}
@@ -312,7 +341,7 @@ index d5aa64842a35c6697263c63fd3a0571b64b01344..14f5bc046f2e54109bd3fd0402a8f8b5
let { groupId } = tabData;
const tabGroup = tabGroupWorkingData.get(groupId);
// if a tab refers to a tab group we don't know, skip any group
@@ -3636,7 +3715,10 @@
@@ -3637,7 +3723,10 @@
tabGroup.stateData.id,
tabGroup.stateData.color,
tabGroup.stateData.collapsed,
@@ -324,26 +353,31 @@ index d5aa64842a35c6697263c63fd3a0571b64b01344..14f5bc046f2e54109bd3fd0402a8f8b5
);
tabsFragment.appendChild(tabGroup.node);
}
@@ -3684,8 +3766,16 @@
@@ -3685,9 +3774,23 @@
// to remove the old selected tab.
if (tabToSelect) {
let leftoverTab = this.selectedTab;
- this.selectedTab = tabToSelect;
- this.removeTab(leftoverTab);
+ gZenWorkspaces._tabToRemoveForEmpty = leftoverTab;
+ if (Services.prefs.getBoolPref("zen.workspaces.continue-where-left-off")) {
+ gZenWorkspaces._tabToSelect = selectTab - 1;
+ }
+ if (gZenWorkspaces._initialTab && !gZenVerticalTabsManager._canReplaceNewTab) {
+ gZenWorkspaces._initialTab._shouldRemove = true;
+ if (this._hasAlreadyInitializedZenSessionStore || !gZenWorkspaces.workspaceEnabled) {
this.selectedTab = tabToSelect;
this.removeTab(leftoverTab);
+ } else {
+ gZenWorkspaces._tabToRemoveForEmpty = leftoverTab;
+ if (Services.prefs.getBoolPref("zen.workspaces.continue-where-left-off")) {
+ gZenWorkspaces._tabToSelect = selectTab - 1;
+ }
+ if (gZenWorkspaces._initialTab && !gZenVerticalTabsManager._canReplaceNewTab) {
+ gZenWorkspaces._initialTab._shouldRemove = true;
+ }
+ }
+ }
+ else {
+ gZenWorkspaces._tabToRemoveForEmpty = this.selectedTab;
}
+ this._hasAlreadyInitializedZenSessionStore = true;
if (tabs.length > 1 || !tabs[0].selected) {
@@ -3881,7 +3971,7 @@
this._updateTabsAfterInsert();
@@ -3882,7 +3985,7 @@
// Ensure we have an index if one was not provided.
if (typeof elementIndex != "number" && typeof tabIndex != "number") {
// Move the new tab after another tab if needed, to the end otherwise.
@@ -352,16 +386,16 @@ index d5aa64842a35c6697263c63fd3a0571b64b01344..14f5bc046f2e54109bd3fd0402a8f8b5
if (
!bulkOrderedOpen &&
((openerTab &&
@@ -3904,7 +3994,7 @@
@@ -3905,7 +4008,7 @@
) {
elementIndex = Infinity;
} else if (previousTab.visible) {
- elementIndex = previousTab.elementIndex + 1;
+ elementIndex = (typeof previousTab.elementIndex === 'undefined') ? index : (previousTab.elementIndex + 1);
+ elementIndex = (typeof previousTab.elementIndex === 'undefined') ? elementIndex : (previousTab.elementIndex + 1);
} else if (previousTab == FirefoxViewHandler.tab) {
elementIndex = 0;
}
@@ -3932,14 +4022,14 @@
@@ -3933,14 +4036,14 @@
}
// Ensure index is within bounds.
if (tab.pinned) {
@@ -380,7 +414,7 @@ index d5aa64842a35c6697263c63fd3a0571b64b01344..14f5bc046f2e54109bd3fd0402a8f8b5
// Prevent a flash of unstyled content by setting up the tab content
// and inherited attributes before appending it (see Bug 1592054):
@@ -3947,7 +4037,7 @@
@@ -3948,7 +4051,7 @@
this.tabContainer._invalidateCachedTabs();
@@ -389,17 +423,25 @@ index d5aa64842a35c6697263c63fd3a0571b64b01344..14f5bc046f2e54109bd3fd0402a8f8b5
if (this.isTab(itemAfter) && itemAfter.group == tabGroup) {
// Place at the front of, or between tabs in, the same tab group
this.tabContainer.insertBefore(tab, itemAfter);
@@ -4268,6 +4358,9 @@
@@ -3981,6 +4084,7 @@
if (pinned) {
this._updateTabBarForPinnedTabs();
}
+ gZenWorkspaces.fixTabInsertLocation(tab, itemAfter);
TabBarVisibility.update();
}
@@ -4270,6 +4374,9 @@
return;
}
+ for (let tab of selectedTabs) {
+ gZenPinnedTabManager._removePinnedAttributes(tab, true);
+ }
this.removeTabs(selectedTabs, { telemetrySource });
this.removeTabs(selectedTabs, { isUserTriggered, telemetrySource });
}
@@ -4520,6 +4613,7 @@
@@ -4526,6 +4633,7 @@
telemetrySource,
} = {}
) {
@@ -407,7 +449,7 @@ index d5aa64842a35c6697263c63fd3a0571b64b01344..14f5bc046f2e54109bd3fd0402a8f8b5
// When 'closeWindowWithLastTab' pref is enabled, closing all tabs
// can be considered equivalent to closing the window.
if (
@@ -4604,6 +4698,7 @@
@@ -4615,6 +4723,7 @@
if (lastToClose) {
this.removeTab(lastToClose, aParams);
}
@@ -415,7 +457,7 @@ index d5aa64842a35c6697263c63fd3a0571b64b01344..14f5bc046f2e54109bd3fd0402a8f8b5
} catch (e) {
console.error(e);
}
@@ -4641,6 +4736,12 @@
@@ -4653,6 +4762,12 @@
aTab._closeTimeNoAnimTimerId = Glean.browserTabclose.timeNoAnim.start();
}
@@ -428,7 +470,7 @@ index d5aa64842a35c6697263c63fd3a0571b64b01344..14f5bc046f2e54109bd3fd0402a8f8b5
// Handle requests for synchronously removing an already
// asynchronously closing tab.
if (!animate && aTab.closing) {
@@ -4655,7 +4756,9 @@
@@ -4667,7 +4782,9 @@
// frame created for it (for example, by updating the visually selected
// state).
let tabWidth = window.windowUtils.getBoundsWithoutFlushing(aTab).width;
@@ -439,7 +481,7 @@ index d5aa64842a35c6697263c63fd3a0571b64b01344..14f5bc046f2e54109bd3fd0402a8f8b5
if (
!this._beginRemoveTab(aTab, {
closeWindowFastpath: true,
@@ -4821,7 +4924,7 @@
@@ -4835,7 +4952,7 @@
closeWindowWithLastTab != null
? closeWindowWithLastTab
: !window.toolbar.visible ||
@@ -448,7 +490,7 @@ index d5aa64842a35c6697263c63fd3a0571b64b01344..14f5bc046f2e54109bd3fd0402a8f8b5
if (closeWindow) {
// We've already called beforeunload on all the relevant tabs if we get here,
@@ -4845,6 +4948,7 @@
@@ -4859,6 +4976,7 @@
newTab = true;
}
@@ -456,7 +498,7 @@ index d5aa64842a35c6697263c63fd3a0571b64b01344..14f5bc046f2e54109bd3fd0402a8f8b5
aTab._endRemoveArgs = [closeWindow, newTab];
// swapBrowsersAndCloseOther will take care of closing the window without animation.
@@ -4885,9 +4989,7 @@
@@ -4899,9 +5017,7 @@
aTab._mouseleave();
if (newTab) {
@@ -467,16 +509,15 @@ index d5aa64842a35c6697263c63fd3a0571b64b01344..14f5bc046f2e54109bd3fd0402a8f8b5
} else {
TabBarVisibility.update();
}
@@ -5016,6 +5118,8 @@
@@ -5035,6 +5151,7 @@
this.tabs[i]._tPos = i;
}
+ gZenWorkspaces.updateTabsContainers();
+
if (!this._windowIsClosing) {
if (wasPinned) {
this.tabContainer._positionPinnedTabs();
@@ -5230,6 +5334,7 @@
@@ -5249,6 +5366,7 @@
}
let excludeTabs = new Set(aExcludeTabs);
@@ -484,7 +525,7 @@ index d5aa64842a35c6697263c63fd3a0571b64b01344..14f5bc046f2e54109bd3fd0402a8f8b5
// If this tab has a successor, it should be selectable, since
// hiding or closing a tab removes that tab as a successor.
@@ -5242,13 +5347,13 @@
@@ -5261,13 +5379,13 @@
!excludeTabs.has(aTab.owner) &&
Services.prefs.getBoolPref("browser.tabs.selectOwnerOnClose")
) {
@@ -500,7 +541,7 @@ index d5aa64842a35c6697263c63fd3a0571b64b01344..14f5bc046f2e54109bd3fd0402a8f8b5
);
let tab = this.tabContainer.findNextTab(aTab, {
@@ -5264,7 +5369,7 @@
@@ -5283,7 +5401,7 @@
}
if (tab) {
@@ -509,7 +550,7 @@ index d5aa64842a35c6697263c63fd3a0571b64b01344..14f5bc046f2e54109bd3fd0402a8f8b5
}
// If no qualifying visible tab was found, see if there is a tab in
@@ -5285,7 +5390,7 @@
@@ -5304,7 +5422,7 @@
});
}
@@ -518,7 +559,7 @@ index d5aa64842a35c6697263c63fd3a0571b64b01344..14f5bc046f2e54109bd3fd0402a8f8b5
}
_blurTab(aTab) {
@@ -5686,10 +5791,10 @@
@@ -5701,10 +5819,10 @@
SessionStore.deleteCustomTabValue(aTab, "hiddenBy");
}
@@ -531,7 +572,16 @@ index d5aa64842a35c6697263c63fd3a0571b64b01344..14f5bc046f2e54109bd3fd0402a8f8b5
aTab.selected ||
aTab.closing ||
// Tabs that are sharing the screen, microphone or camera cannot be hidden.
@@ -5986,7 +6091,7 @@
@@ -5924,7 +6042,7 @@
* `true` if element is a `<tab-group>`
*/
isTabGroup(element) {
- return !!(element?.tagName == "tab-group");
+ return !!(element?.tagName == "tab-group" || element?.tagName == "zen-folder");
}
/**
@@ -6001,7 +6119,7 @@
// Don't allow mixing pinned and unpinned tabs.
if (this.isTab(element) && element.pinned) {
@@ -540,7 +590,7 @@ index d5aa64842a35c6697263c63fd3a0571b64b01344..14f5bc046f2e54109bd3fd0402a8f8b5
} else {
tabIndex = Math.max(tabIndex, this.pinnedTabCount);
}
@@ -6012,10 +6117,16 @@
@@ -6027,10 +6145,16 @@
this.#handleTabMove(
element,
() => {
@@ -559,7 +609,7 @@ index d5aa64842a35c6697263c63fd3a0571b64b01344..14f5bc046f2e54109bd3fd0402a8f8b5
if (neighbor && this.isTab(element) && tabIndex > element._tPos) {
neighbor.after(element);
} else {
@@ -6084,17 +6195,29 @@
@@ -6099,17 +6223,29 @@
targetElement = targetElement.group;
}
}
@@ -593,7 +643,7 @@ index d5aa64842a35c6697263c63fd3a0571b64b01344..14f5bc046f2e54109bd3fd0402a8f8b5
if (element.pinned && this.tabContainer.verticalMode) {
return this.tabContainer.verticalPinnedTabsContainer;
}
@@ -6154,7 +6277,7 @@
@@ -6169,7 +6305,7 @@
if (!this.isTab(aTab)) {
throw new Error("Can only move a tab into a tab group");
}
@@ -602,7 +652,7 @@ index d5aa64842a35c6697263c63fd3a0571b64b01344..14f5bc046f2e54109bd3fd0402a8f8b5
return;
}
if (aTab.group && aTab.group.id === aGroup.id) {
@@ -6248,6 +6371,10 @@
@@ -6263,6 +6399,10 @@
moveActionCallback();
@@ -613,7 +663,7 @@ index d5aa64842a35c6697263c63fd3a0571b64b01344..14f5bc046f2e54109bd3fd0402a8f8b5
// Clear tabs cache after moving nodes because the order of tabs may have
// changed.
this.tabContainer._invalidateCachedTabs();
@@ -7145,7 +7272,7 @@
@@ -7160,7 +7300,7 @@
// preventDefault(). It will still raise the window if appropriate.
break;
}
@@ -622,7 +672,7 @@ index d5aa64842a35c6697263c63fd3a0571b64b01344..14f5bc046f2e54109bd3fd0402a8f8b5
window.focus();
aEvent.preventDefault();
break;
@@ -8044,6 +8171,7 @@
@@ -8059,6 +8199,7 @@
aWebProgress.isTopLevel
) {
this.mTab.setAttribute("busy", "true");
@@ -630,7 +680,7 @@ index d5aa64842a35c6697263c63fd3a0571b64b01344..14f5bc046f2e54109bd3fd0402a8f8b5
gBrowser._tabAttrModified(this.mTab, ["busy"]);
this.mTab._notselectedsinceload = !this.mTab.selected;
}
@@ -9009,7 +9137,7 @@ var TabContextMenu = {
@@ -9022,7 +9163,7 @@ var TabContextMenu = {
);
contextUnpinSelectedTabs.hidden =
!this.contextTab.pinned || !this.multiselected;
@@ -639,11 +689,11 @@ index d5aa64842a35c6697263c63fd3a0571b64b01344..14f5bc046f2e54109bd3fd0402a8f8b5
// Move Tab items
let contextMoveTabOptions = document.getElementById(
"context_moveTabOptions"
@@ -9278,6 +9406,7 @@ var TabContextMenu = {
telemetrySource: gBrowser.TabMetrics.METRIC_SOURCE.TAB_STRIP,
});
@@ -9298,6 +9439,7 @@ var TabContextMenu = {
)
);
} else {
+ gZenPinnedTabManager._removePinnedAttributes(this.contextTab, true);
gBrowser.removeTab(this.contextTab, {
animate: true,
telemetrySource: gBrowser.TabMetrics.METRIC_SOURCE.TAB_STRIP,
...gBrowser.TabMetrics.userTriggeredContext(

View File

@@ -1,5 +1,5 @@
diff --git a/browser/components/tabbrowser/content/tabs.js b/browser/components/tabbrowser/content/tabs.js
index 84d633471c89230b981d8a07babef4e0c76c0338..de8b1ecf7cb844f6cf3e66a41b6024c574dfc103 100644
index 67bba60cfc21b940f263e1eb26b8b5429355660f..9f73966429d8e82bb9ef0af73a996c8cff230eab 100644
--- a/browser/components/tabbrowser/content/tabs.js
+++ b/browser/components/tabbrowser/content/tabs.js
@@ -83,7 +83,7 @@
@@ -46,7 +46,7 @@ index 84d633471c89230b981d8a07babef4e0c76c0338..de8b1ecf7cb844f6cf3e66a41b6024c5
expandGroupOnDrop = true;
}
}
@@ -868,7 +869,7 @@
@@ -871,7 +872,7 @@
? event.screenY - window.screenY - tabOffset
: event.screenY - window.screenY,
scrollPos:
@@ -55,7 +55,7 @@ index 84d633471c89230b981d8a07babef4e0c76c0338..de8b1ecf7cb844f6cf3e66a41b6024c5
? this.verticalPinnedTabsContainer.scrollPosition
: this.arrowScrollbox.scrollPosition,
screenX: event.screenX,
@@ -921,6 +922,10 @@
@@ -925,6 +926,10 @@
}
let draggedTab = event.dataTransfer.mozGetDataAt(TAB_DROP_TYPE, 0);
@@ -66,7 +66,7 @@ index 84d633471c89230b981d8a07babef4e0c76c0338..de8b1ecf7cb844f6cf3e66a41b6024c5
if (
(effects == "move" || effects == "copy") &&
document == draggedTab.ownerDocument &&
@@ -1077,6 +1082,18 @@
@@ -1081,6 +1086,18 @@
this._tabDropIndicator.hidden = true;
event.stopPropagation();
@@ -85,7 +85,7 @@ index 84d633471c89230b981d8a07babef4e0c76c0338..de8b1ecf7cb844f6cf3e66a41b6024c5
if (draggedTab && dropEffect == "copy") {
let duplicatedDraggedTab;
let duplicatedTabs = [];
@@ -1116,10 +1133,11 @@
@@ -1120,10 +1137,11 @@
}
} else {
let isPinned = draggedTab.pinned;
@@ -100,23 +100,16 @@ index 84d633471c89230b981d8a07babef4e0c76c0338..de8b1ecf7cb844f6cf3e66a41b6024c5
);
let size = this.verticalMode ? "height" : "width";
let screenAxis = this.verticalMode ? "screenY" : "screenX";
@@ -1135,8 +1153,14 @@
(lastMovingTabScreen + tabSize);
if (this.verticalMode) {
+ if (oldTranslateY > 0 && translateOffsetY > tabHeight / 2) {
+ newTranslateY += tabHeight;
+ }
+ if (oldTranslateY < 0 && -translateOffsetY > tabHeight / 2) {
+ newTranslateY -= tabHeight;
+ }
newTranslateY = Math.min(
- Math.max(oldTranslateY, firstBound),
+ Math.max(newTranslateY, firstBound),
lastBound
);
} else {
@@ -1337,6 +1361,7 @@
@@ -1172,7 +1190,7 @@
(oldTranslateX && oldTranslateX != newTranslateX) ||
(oldTranslateY && oldTranslateY != newTranslateY);
} else if (this.verticalMode) {
- shouldTranslate &&= oldTranslateY && oldTranslateY != newTranslateY;
+ shouldTranslate &&= oldTranslateY && oldTranslateY != newTranslateY && movingTabs.length === 1;
} else {
shouldTranslate &&= oldTranslateX && oldTranslateX != newTranslateX;
}
@@ -1341,6 +1359,7 @@
let nextItem = this.ariaFocusableItems[newIndex];
let tabGroup = isTab(nextItem) && nextItem.group;
@@ -124,7 +117,7 @@ index 84d633471c89230b981d8a07babef4e0c76c0338..de8b1ecf7cb844f6cf3e66a41b6024c5
gBrowser.loadTabs(urls, {
inBackground,
replace,
@@ -1369,6 +1394,17 @@
@@ -1373,6 +1392,17 @@
this.finishMoveTogetherSelectedTabs(draggedTab);
this.finishAnimateTabMove();
@@ -142,7 +135,7 @@ index 84d633471c89230b981d8a07babef4e0c76c0338..de8b1ecf7cb844f6cf3e66a41b6024c5
this.#expandGroupOnDrop(draggedTab);
if (
@@ -1597,7 +1633,7 @@
@@ -1601,7 +1631,7 @@
}
get newTabButton() {
@@ -151,7 +144,15 @@ index 84d633471c89230b981d8a07babef4e0c76c0338..de8b1ecf7cb844f6cf3e66a41b6024c5
}
get verticalMode() {
@@ -1621,29 +1657,54 @@
@@ -1617,6 +1647,7 @@
}
get overflowing() {
+ gZenWorkspaces.updateOverflowingTabs();
return this.hasAttribute("overflow");
}
@@ -1625,29 +1656,54 @@
if (this.#allTabs) {
return this.#allTabs;
}
@@ -214,7 +215,7 @@ index 84d633471c89230b981d8a07babef4e0c76c0338..de8b1ecf7cb844f6cf3e66a41b6024c5
}
/**
@@ -1698,23 +1759,18 @@
@@ -1702,23 +1758,18 @@
}
let elementIndex = 0;
@@ -242,7 +243,7 @@ index 84d633471c89230b981d8a07babef4e0c76c0338..de8b1ecf7cb844f6cf3e66a41b6024c5
let visibleTabsInGroup = child.tabs.filter(tab => tab.visible);
visibleTabsInGroup.forEach(tab => {
tab.elementIndex = elementIndex++;
@@ -1724,10 +1780,7 @@
@@ -1728,10 +1779,7 @@
}
}
@@ -254,7 +255,7 @@ index 84d633471c89230b981d8a07babef4e0c76c0338..de8b1ecf7cb844f6cf3e66a41b6024c5
return this.#focusableItems;
}
@@ -1735,6 +1788,7 @@
@@ -1739,6 +1787,7 @@
_invalidateCachedTabs() {
this.#allTabs = null;
this._invalidateCachedVisibleTabs();
@@ -262,7 +263,7 @@ index 84d633471c89230b981d8a07babef4e0c76c0338..de8b1ecf7cb844f6cf3e66a41b6024c5
}
_invalidateCachedVisibleTabs() {
@@ -1749,8 +1803,8 @@
@@ -1753,8 +1802,8 @@
#isContainerVerticalPinnedGrid(tab) {
return (
this.verticalMode &&
@@ -273,7 +274,7 @@ index 84d633471c89230b981d8a07babef4e0c76c0338..de8b1ecf7cb844f6cf3e66a41b6024c5
!this.expandOnHover
);
}
@@ -1766,7 +1820,7 @@
@@ -1770,7 +1819,7 @@
if (node == null) {
// We have a container for non-tab elements at the end of the scrollbox.
@@ -282,7 +283,7 @@ index 84d633471c89230b981d8a07babef4e0c76c0338..de8b1ecf7cb844f6cf3e66a41b6024c5
}
node.before(tab);
@@ -1861,7 +1915,7 @@
@@ -1865,7 +1914,7 @@
// There are separate "new tab" buttons for horizontal tabs toolbar, vertical tabs and
// for when the tab strip is overflowed (which is shared by vertical and horizontal tabs);
// Attach the long click popup to all of them.
@@ -291,7 +292,7 @@ index 84d633471c89230b981d8a07babef4e0c76c0338..de8b1ecf7cb844f6cf3e66a41b6024c5
const newTab2 = this.newTabButton;
const newTabVertical = document.getElementById(
"vertical-tabs-newtab-button"
@@ -1956,10 +2010,12 @@
@@ -1960,10 +2009,12 @@
_handleTabSelect(aInstant) {
let selectedTab = this.selectedItem;
@@ -304,7 +305,7 @@ index 84d633471c89230b981d8a07babef4e0c76c0338..de8b1ecf7cb844f6cf3e66a41b6024c5
selectedTab._notselectedsinceload = false;
}
@@ -2132,6 +2188,7 @@
@@ -2136,6 +2187,7 @@
}
_positionPinnedTabs() {
@@ -312,7 +313,7 @@ index 84d633471c89230b981d8a07babef4e0c76c0338..de8b1ecf7cb844f6cf3e66a41b6024c5
let tabs = this.visibleTabs;
let numPinned = gBrowser.pinnedTabCount;
let absPositionHorizontalTabs =
@@ -2206,7 +2263,7 @@
@@ -2210,7 +2262,7 @@
return;
}
@@ -321,7 +322,7 @@ index 84d633471c89230b981d8a07babef4e0c76c0338..de8b1ecf7cb844f6cf3e66a41b6024c5
let directionX = screenX > dragData.animLastScreenX;
let directionY = screenY > dragData.animLastScreenY;
@@ -2215,6 +2272,8 @@
@@ -2219,6 +2271,8 @@
let { width: tabWidth, height: tabHeight } =
draggedTab.getBoundingClientRect();
@@ -330,7 +331,7 @@ index 84d633471c89230b981d8a07babef4e0c76c0338..de8b1ecf7cb844f6cf3e66a41b6024c5
let shiftSizeX = tabWidth * movingTabs.length;
let shiftSizeY = tabHeight;
dragData.tabWidth = tabWidth;
@@ -2244,7 +2303,7 @@
@@ -2248,7 +2302,7 @@
let translateX = screenX - dragData.screenX;
let translateY = screenY - dragData.screenY;
translateY +=
@@ -339,7 +340,7 @@ index 84d633471c89230b981d8a07babef4e0c76c0338..de8b1ecf7cb844f6cf3e66a41b6024c5
let firstBoundX = firstTabInRow.screenX - firstMovingTabScreenX;
let firstBoundY = firstTabInRow.screenY - firstMovingTabScreenY;
let lastBoundX =
@@ -2389,12 +2448,16 @@
@@ -2394,12 +2448,16 @@
this.#clearDragOverCreateGroupTimer();
@@ -360,7 +361,7 @@ index 84d633471c89230b981d8a07babef4e0c76c0338..de8b1ecf7cb844f6cf3e66a41b6024c5
if (this.#rtlMode) {
tabs.reverse();
@@ -2408,7 +2471,7 @@
@@ -2413,7 +2471,7 @@
let size = this.verticalMode ? "height" : "width";
let translateAxis = this.verticalMode ? "translateY" : "translateX";
let scrollDirection = this.verticalMode ? "scrollTop" : "scrollLeft";
@@ -369,7 +370,7 @@ index 84d633471c89230b981d8a07babef4e0c76c0338..de8b1ecf7cb844f6cf3e66a41b6024c5
let translateX = event.screenX - dragData.screenX;
let translateY = event.screenY - dragData.screenY;
@@ -2422,12 +2485,21 @@
@@ -2427,12 +2485,21 @@
let lastTab = tabs.at(-1);
let lastMovingTab = movingTabs.at(-1);
let firstMovingTab = movingTabs[0];
@@ -392,7 +393,7 @@ index 84d633471c89230b981d8a07babef4e0c76c0338..de8b1ecf7cb844f6cf3e66a41b6024c5
translate +=
this.arrowScrollbox.scrollbox[scrollDirection] - dragData.scrollPos;
} else if (isPinned && this.verticalMode) {
@@ -2446,6 +2518,9 @@
@@ -2451,6 +2518,9 @@
// Shift the `.tab-group-label-container` to shift the label element.
item = item.parentElement;
}
@@ -402,7 +403,7 @@ index 84d633471c89230b981d8a07babef4e0c76c0338..de8b1ecf7cb844f6cf3e66a41b6024c5
item.style.transform = `${translateAxis}(${translate}px)`;
}
@@ -2583,6 +2658,9 @@
@@ -2588,6 +2658,9 @@
break;
}
let element = tabs[mid];
@@ -412,18 +413,7 @@ index 84d633471c89230b981d8a07babef4e0c76c0338..de8b1ecf7cb844f6cf3e66a41b6024c5
let elementForSize = isTabGroupLabel(element)
? element.parentElement
: element;
@@ -2605,6 +2683,10 @@
if (!dropElement) {
dropElement = this.ariaFocusableItems[oldDropElementIndex];
}
+ if (dropElement?.group?.hasAttribute("split-view-group")) {
+ // We focus the group label element, not the group itself.
+ dropElement = dropElement.group.labelElement;
+ }
let newDropElementIndex = dropElement
? dropElement.elementIndex
: oldDropElementIndex;
@@ -2613,7 +2695,7 @@
@@ -2664,7 +2737,7 @@
let shouldCreateGroupOnDrop;
let dropBefore;
if (dropElement) {
@@ -432,7 +422,7 @@ index 84d633471c89230b981d8a07babef4e0c76c0338..de8b1ecf7cb844f6cf3e66a41b6024c5
? dropElement.parentElement
: dropElement;
@@ -2675,12 +2757,12 @@
@@ -2726,12 +2799,12 @@
}
}
@@ -444,10 +434,10 @@ index 84d633471c89230b981d8a07babef4e0c76c0338..de8b1ecf7cb844f6cf3e66a41b6024c5
// that dropping the tab(s) will create a new tab group.
- shouldCreateGroupOnDrop =
+ shouldCreateGroupOnDrop = false &&
dropElement != draggedTab &&
isTab(dropElement) &&
!dropElement?.group &&
@@ -2720,7 +2802,7 @@
overlapPercent > dragOverGroupingThreshold;
@@ -2773,7 +2846,7 @@
// Dropping right before the tab group.
dropElement = dropElementGroup;
colorCode = undefined;
@@ -456,7 +446,7 @@ index 84d633471c89230b981d8a07babef4e0c76c0338..de8b1ecf7cb844f6cf3e66a41b6024c5
// Dropping right after the collapsed tab group.
dropElement = dropElementGroup;
colorCode = undefined;
@@ -2750,7 +2832,7 @@
@@ -2803,7 +2876,7 @@
// Shift background tabs to leave a gap where the dragged tab
// would currently be dropped.
for (let item of tabs) {
@@ -465,7 +455,7 @@ index 84d633471c89230b981d8a07babef4e0c76c0338..de8b1ecf7cb844f6cf3e66a41b6024c5
continue;
}
@@ -2759,6 +2841,9 @@
@@ -2812,6 +2885,9 @@
if (isTabGroupLabel(item)) {
// Shift the `.tab-group-label-container` to shift the label element.
item = item.parentElement;
@@ -475,7 +465,7 @@ index 84d633471c89230b981d8a07babef4e0c76c0338..de8b1ecf7cb844f6cf3e66a41b6024c5
}
item.style.transform = transform;
}
@@ -2811,8 +2896,9 @@
@@ -2864,8 +2940,9 @@
);
}
@@ -487,7 +477,7 @@ index 84d633471c89230b981d8a07babef4e0c76c0338..de8b1ecf7cb844f6cf3e66a41b6024c5
return;
}
@@ -2824,6 +2910,12 @@
@@ -2877,6 +2954,12 @@
item = item.parentElement;
}
item.style.transform = "";
@@ -500,7 +490,7 @@ index 84d633471c89230b981d8a07babef4e0c76c0338..de8b1ecf7cb844f6cf3e66a41b6024c5
item.removeAttribute("dragover-createGroup");
}
this.removeAttribute("movingtab-createGroup");
@@ -2870,7 +2962,7 @@
@@ -2923,7 +3006,7 @@
let postTransitionCleanup = () => {
movingTab._moveTogetherSelectedTabsData.animate = false;
};
@@ -509,7 +499,7 @@ index 84d633471c89230b981d8a07babef4e0c76c0338..de8b1ecf7cb844f6cf3e66a41b6024c5
postTransitionCleanup();
} else {
let onTransitionEnd = transitionendEvent => {
@@ -3043,7 +3135,7 @@
@@ -3096,7 +3179,7 @@
}
_notifyBackgroundTab(aTab) {
@@ -518,7 +508,7 @@ index 84d633471c89230b981d8a07babef4e0c76c0338..de8b1ecf7cb844f6cf3e66a41b6024c5
return;
}
@@ -3169,6 +3261,9 @@
@@ -3222,6 +3305,9 @@
return null;
}
}

View File

@@ -1,5 +1,5 @@
diff --git a/browser/components/urlbar/UrlbarInput.sys.mjs b/browser/components/urlbar/UrlbarInput.sys.mjs
index 0c5145c3d31862bd2c6b5ed2faa88f02425ffde1..1cf86995514b2c00360f6ed681f0c640dac8ab56 100644
index 0c5145c3d31862bd2c6b5ed2faa88f02425ffde1..370bd107be760893516360bd85553acb6533774b 100644
--- a/browser/components/urlbar/UrlbarInput.sys.mjs
+++ b/browser/components/urlbar/UrlbarInput.sys.mjs
@@ -68,6 +68,13 @@ XPCOMUtils.defineLazyPreferenceGetter(
@@ -187,7 +187,15 @@ index 0c5145c3d31862bd2c6b5ed2faa88f02425ffde1..1cf86995514b2c00360f6ed681f0c640
let controller =
this.document.commandDispatcher.getControllerForCommand("cmd_paste");
@@ -4136,6 +4204,11 @@ export class UrlbarInput {
@@ -4025,6 +4093,7 @@ export class UrlbarInput {
_setPlaceholder(name) {
this.document.l10n.setAttributes(
this.inputField,
+ this.window.gZenVerticalTabsManager._hasSetSingleToolbar ? 'zen-singletoolbar-urlbar-placeholder-with-name' :
name ? "urlbar-placeholder-with-name" : "urlbar-placeholder",
name ? { name } : undefined
);
@@ -4136,6 +4205,11 @@ export class UrlbarInput {
}
_on_click(event) {
@@ -199,7 +207,7 @@ index 0c5145c3d31862bd2c6b5ed2faa88f02425ffde1..1cf86995514b2c00360f6ed681f0c640
if (
event.target == this.inputField ||
event.target == this._inputContainer ||
@@ -4207,7 +4280,7 @@ export class UrlbarInput {
@@ -4207,7 +4281,7 @@ export class UrlbarInput {
}
}
@@ -208,7 +216,7 @@ index 0c5145c3d31862bd2c6b5ed2faa88f02425ffde1..1cf86995514b2c00360f6ed681f0c640
this.view.autoOpen({ event });
} else {
if (this._untrimOnFocusAfterKeydown) {
@@ -4247,9 +4320,16 @@ export class UrlbarInput {
@@ -4247,9 +4321,16 @@ export class UrlbarInput {
}
_on_mousedown(event) {
@@ -226,7 +234,7 @@ index 0c5145c3d31862bd2c6b5ed2faa88f02425ffde1..1cf86995514b2c00360f6ed681f0c640
if (
event.target != this.inputField &&
@@ -4261,6 +4341,10 @@ export class UrlbarInput {
@@ -4261,6 +4342,10 @@ export class UrlbarInput {
this.focusedViaMousedown = !this.focused;
this._preventClickSelectsAll = this.focused;
@@ -237,7 +245,7 @@ index 0c5145c3d31862bd2c6b5ed2faa88f02425ffde1..1cf86995514b2c00360f6ed681f0c640
// Keep the focus status, since the attribute may be changed
// upon calling this.focus().
@@ -4301,7 +4385,7 @@ export class UrlbarInput {
@@ -4301,7 +4386,7 @@ export class UrlbarInput {
}
// Don't close the view when clicking on a tab; we may want to keep the
// view open on tab switch, and the TabSelect event arrived earlier.

View File

@@ -1,13 +0,0 @@
diff --git a/browser/extensions/newtab/lib/AboutPreferences.sys.mjs b/browser/extensions/newtab/lib/AboutPreferences.sys.mjs
index a325becabddda511204fc5bd2022edc332cdde7c..6bb29b21f1e6c1d6ea3d38d50f01148e0a51f0d7 100644
--- a/browser/extensions/newtab/lib/AboutPreferences.sys.mjs
+++ b/browser/extensions/newtab/lib/AboutPreferences.sys.mjs
@@ -52,7 +52,7 @@ const PREFS_BEFORE_SECTIONS = () => [
titleString: "home-prefs-shortcuts-header",
descString: "home-prefs-shortcuts-description",
get nestedPrefs() {
- return Services.prefs.getBoolPref("browser.topsites.useRemoteSetting")
+ return Services.prefs.getBoolPref("browser.topsites.useRemoteSetting") && false
? [
{
name: "showSponsoredTopSites",

View File

@@ -162,8 +162,7 @@ groupbox h2 {
/* Look and feel */
#webAppearanceSettings,
#zen-theme-builder-wrapper + box {
#webAppearanceSettings {
margin-bottom: 15px;
}
@@ -203,31 +202,6 @@ groupbox h2 {
list-style-image: url('chrome://browser/skin/customize.svg');
}
#zenLooksAndFeelColorOptions {
display: grid;
grid-template-columns: repeat(auto-fill, 108px);
gap: 5px;
margin: 10px 0 15px 0;
}
.zenLooksAndFeelColorOptionParen {
display: flex;
flex-direction: column;
align-items: center;
justify-content: center;
padding: 15px;
border-radius: 10px;
cursor: pointer;
background: var(--in-content-box-info-background);
width: fit-content;
margin-top: 10px;
border: 2px solid transparent;
}
.zenLooksAndFeelColorOptionParen[selected='true'] {
border-color: var(--zen-primary-color);
}
#zenLooksAndFeelGroup > html|div:last-of-type {
margin-top: 15px;
}
@@ -275,37 +249,6 @@ groupbox h2 {
}
}
.zenLooksAndFeelColorOption {
width: 60px;
height: 60px;
border-radius: 50%;
background: var(--zen-primary-color);
position: relative;
overflow: hidden;
}
.zenLooksAndFeelColorOption::before {
content: '';
display: block;
width: 50%;
height: 50%;
bottom: 0;
left: 0;
position: absolute;
background: var(--zen-colors-secondary);
}
.zenLooksAndFeelColorOption::after {
content: '';
display: block;
width: 50%;
height: 50%;
bottom: 0;
right: 0;
position: absolute;
background: var(--zen-colors-tertiary);
}
/* Workspace */
#category-zen-tabs-management > .category-icon {

View File

@@ -1,7 +1,16 @@
diff --git a/browser/themes/shared/tabbrowser/tabs.css b/browser/themes/shared/tabbrowser/tabs.css
index 5b9ad123d819c6ef068acd427416957a1d0939fe..311caa27ee268c95215d459be02a93d20e129f8b 100644
index 5b9ad123d819c6ef068acd427416957a1d0939fe..543d42dab2d84593f491a5652fcfe272ede59857 100644
--- a/browser/themes/shared/tabbrowser/tabs.css
+++ b/browser/themes/shared/tabbrowser/tabs.css
@@ -19,7 +19,7 @@
--tab-group-line-thickness: 2px;
--tab-group-line-toolbar-border-distance: 1px;
/* Collapsed tabs should be square, so set width to match the min height */
- --tab-collapsed-background-width: var(--tab-min-height);
+ --tab-collapsed-background-width: 48px;
--tab-collapsed-width: calc(var(--tab-collapsed-background-width) + 2 * var(--tab-inner-inline-margin));
--tab-inner-inline-margin: var(--space-medium);
--tab-inline-padding: 8px;
@@ -33,7 +33,7 @@
--tab-block-margin: 4px;
--tab-icon-end-margin: 5.5px;

View File

@@ -16,8 +16,7 @@
border-radius: 100% !important;
}
#back-button,
#zen-sidebar-web-panel-back {
#back-button {
list-style-image: url('back.svg') !important;
}
@@ -25,30 +24,27 @@
list-style-image: url('move-tab.svg') !important;
}
#forward-button,
#zen-sidebar-web-panel-forward {
#forward-button {
list-style-image: url('forward.svg') !important;
}
#reload-button,
#zen-sidebar-web-panel-reload {
#reload-button {
list-style-image: url('reload.svg') !important;
}
#stop-button,
.close-icon,
#zen-sidebar-web-panel-close,
#zen-glance-sidebar-close,
.zen-theme-picker-custom-list-item-remove {
list-style-image: url('close.svg') !important;
}
.reset-icon {
list-style-image: url('reload.svg') !important;
#PanelUI-zen-emojis-picker-none {
list-style-image: url('trash.svg');
}
#PanelUI-zen-gradient-generator-color-toggle-algo {
list-style-image: url('palette.svg');
.reset-icon {
list-style-image: url('reload.svg') !important;
}
.tab-reset-button,
@@ -101,12 +97,14 @@
list-style-image: url('chevron.svg') !important;
}
#zen-rice-share-options .options-header {
#zen-rice-share-options .options-header,
#PanelUI-zen-gradient-generator-color-page-right {
list-style-image: url('arrow-right.svg');
}
#PanelUI-menu-button,
#appMenu-more-button2,
.zen-workspaces-actions,
#zen-workspace-actions-menu-icon {
list-style-image: url('menu.svg') !important;
}
@@ -178,20 +176,15 @@
#zoom-in-button,
#tabs-newtab-button,
#zen-create-new-button,
#new-tab-button,
#appMenu-zoomEnlarge-button2,
#PanelUI-zen-profiles-newProfile,
#zen-sidebar-add-panel-button,
#PanelUI-zen-workspaces-new image,
#PanelUI-zen-gradient-generator-color-custom-add image {
list-style-image: url('plus.svg') !important;
}
#PanelUI-zen-workspaces-reorder-mode image {
list-style-image: url('move-tab.svg') !important;
rotate: 90deg;
}
#cut-button {
list-style-image: url('edit-cut.svg') !important;
}
@@ -281,8 +274,7 @@
list-style-image: url('bookmark-star-on-tray.svg') !important;
}
#home-button,
#zen-sidebar-web-panel-home {
#home-button {
list-style-image: url('home.svg') !important;
}
@@ -405,7 +397,8 @@
list-style-image: url('expand-sidebar.svg') !important;
}
.panel-header > .subviewbutton-back {
.panel-header > .subviewbutton-back,
#PanelUI-zen-gradient-generator-color-page-left {
list-style-image: url('arrow-left.svg') !important;
}
@@ -600,11 +593,6 @@
> #reload-button[displaystop]
+ #stop-button
> .toolbarbutton-animatable-box
> .toolbarbutton-animatable-image,
#zen-sidebar-web-panel-reload[animate]
> #zen-sidebar-web-panel-reload-button[displaystop]
+ #zen-sidebar-web-panel-stop-button
> .toolbarbutton-animatable-box
> .toolbarbutton-animatable-image {
background-image: url('reload-to-stop.svg') !important;
}
@@ -612,10 +600,6 @@
#stop-reload-button[animate]
> #reload-button
> .toolbarbutton-animatable-box
> .toolbarbutton-animatable-image,
#zen-sidebar-web-panel-reload[animate]
> #zen-sidebar-web-panel-reload-button
> .toolbarbutton-animatable-box
> .toolbarbutton-animatable-image {
background-image: url('stop-to-reload.svg') !important;
}
@@ -765,3 +749,50 @@
#zen-media-pip-button {
list-style-image: url('chrome://global/skin/media/picture-in-picture-open.svg');
}
#zenCreateNewPopup > menuitem image {
-moz-context-properties: fill;
fill: currentColor;
}
#zen-create-new-button {
border-radius: var(--tab-border-radius);
&:hover {
background: var(--toolbarbutton-active-background);
}
& image {
background: transparent !important;
}
}
#PanelUI-zen-gradient-generator-scheme-auto {
list-style-image: url('sparkles.svg');
}
@media -moz-pref('zen.theme.window.scheme', 'auto') {
#PanelUI-zen-gradient-generator-scheme-auto {
background: light-dark(rgba(0, 0, 0, 0.1), rgba(255, 255, 255, 0.1));
}
}
#PanelUI-zen-gradient-generator-scheme-dark {
list-style-image: url('moon-stars.svg');
}
@media -moz-pref('zen.theme.window.scheme', 'dark') {
#PanelUI-zen-gradient-generator-scheme-dark {
background: light-dark(rgba(0, 0, 0, 0.1), rgba(255, 255, 255, 0.1));
}
}
#PanelUI-zen-gradient-generator-scheme-light {
list-style-image: url('face-sun.svg');
}
@media -moz-pref('zen.theme.window.scheme', 'light') {
#PanelUI-zen-gradient-generator-scheme-light {
background: light-dark(rgba(0, 0, 0, 0.1), rgba(255, 255, 255, 0.1));
}
}

View File

@@ -35,15 +35,16 @@
skin/classic/browser/zen-icons/edit-paste.svg (../shared/zen-icons/lin/edit-paste.svg)
skin/classic/browser/zen-icons/edit-redo.svg (../shared/zen-icons/lin/edit-redo.svg)
skin/classic/browser/zen-icons/edit-select-all.svg (../shared/zen-icons/lin/edit-select-all.svg)
skin/classic/browser/zen-icons/edit.svg (../shared/zen-icons/lin/edit.svg)
skin/classic/browser/zen-icons/edit-theme.svg (../shared/zen-icons/lin/edit-theme.svg)
skin/classic/browser/zen-icons/edit-undo.svg (../shared/zen-icons/lin/edit-undo.svg)
skin/classic/browser/zen-icons/edit.svg (../shared/zen-icons/lin/edit.svg)
skin/classic/browser/zen-icons/essential-add.svg (../shared/zen-icons/lin/essential-add.svg)
skin/classic/browser/zen-icons/essential-remove.svg (../shared/zen-icons/lin/essential-remove.svg)
skin/classic/browser/zen-icons/expand-sidebar.svg (../shared/zen-icons/lin/expand-sidebar.svg)
skin/classic/browser/zen-icons/ext-link.svg (../shared/zen-icons/lin/ext-link.svg)
skin/classic/browser/zen-icons/extension-blocked.svg (../shared/zen-icons/lin/extension-blocked.svg)
skin/classic/browser/zen-icons/extension.svg (../shared/zen-icons/lin/extension.svg)
skin/classic/browser/zen-icons/ext-link.svg (../shared/zen-icons/lin/ext-link.svg)
skin/classic/browser/zen-icons/face-sun.svg (../shared/zen-icons/lin/face-sun.svg)
skin/classic/browser/zen-icons/firefox.svg (../shared/zen-icons/lin/firefox.svg)
skin/classic/browser/zen-icons/folder.svg (../shared/zen-icons/lin/folder.svg)
skin/classic/browser/zen-icons/forget.svg (../shared/zen-icons/lin/forget.svg)
@@ -80,6 +81,7 @@
skin/classic/browser/zen-icons/microphone-fill.svg (../shared/zen-icons/lin/microphone-fill.svg)
skin/classic/browser/zen-icons/microphone.svg (../shared/zen-icons/lin/microphone.svg)
skin/classic/browser/zen-icons/midi.svg (../shared/zen-icons/lin/midi.svg)
skin/classic/browser/zen-icons/moon-stars.svg (../shared/zen-icons/lin/moon-stars.svg)
skin/classic/browser/zen-icons/move-tab.svg (../shared/zen-icons/lin/move-tab.svg)
skin/classic/browser/zen-icons/new-tab-image.svg (../shared/zen-icons/lin/new-tab-image.svg)
skin/classic/browser/zen-icons/open.svg (../shared/zen-icons/lin/open.svg)
@@ -95,27 +97,28 @@
skin/classic/browser/zen-icons/pocket-outline.svg (../shared/zen-icons/lin/pocket-outline.svg)
skin/classic/browser/zen-icons/popup.svg (../shared/zen-icons/lin/popup.svg)
skin/classic/browser/zen-icons/print.svg (../shared/zen-icons/lin/print.svg)
skin/classic/browser/zen-icons/privateBrowsing.svg (../shared/zen-icons/lin/privateBrowsing.svg)
skin/classic/browser/zen-icons/private-window.svg (../shared/zen-icons/lin/private-window.svg)
skin/classic/browser/zen-icons/privateBrowsing.svg (../shared/zen-icons/lin/privateBrowsing.svg)
skin/classic/browser/zen-icons/reader-mode.svg (../shared/zen-icons/lin/reader-mode.svg)
skin/classic/browser/zen-icons/reload.svg (../shared/zen-icons/lin/reload.svg)
skin/classic/browser/zen-icons/reload-to-stop.svg (../shared/zen-icons/lin/reload-to-stop.svg)
skin/classic/browser/zen-icons/reload.svg (../shared/zen-icons/lin/reload.svg)
skin/classic/browser/zen-icons/report.svg (../shared/zen-icons/lin/report.svg)
skin/classic/browser/zen-icons/save.svg (../shared/zen-icons/lin/save.svg)
skin/classic/browser/zen-icons/screen-blocked.svg (../shared/zen-icons/lin/screen-blocked.svg)
skin/classic/browser/zen-icons/screenshot.svg (../shared/zen-icons/lin/screenshot.svg)
skin/classic/browser/zen-icons/screen.svg (../shared/zen-icons/lin/screen.svg)
skin/classic/browser/zen-icons/screenshot.svg (../shared/zen-icons/lin/screenshot.svg)
skin/classic/browser/zen-icons/search-glass.svg (../shared/zen-icons/lin/search-glass.svg)
skin/classic/browser/zen-icons/search-page.svg (../shared/zen-icons/lin/search-page.svg)
skin/classic/browser/zen-icons/security-broken.svg (../shared/zen-icons/lin/security-broken.svg)
skin/classic/browser/zen-icons/security.svg (../shared/zen-icons/lin/security.svg)
skin/classic/browser/zen-icons/security-warning.svg (../shared/zen-icons/lin/security-warning.svg)
skin/classic/browser/zen-icons/security.svg (../shared/zen-icons/lin/security.svg)
skin/classic/browser/zen-icons/send-to-device.svg (../shared/zen-icons/lin/send-to-device.svg)
skin/classic/browser/zen-icons/settings.svg (../shared/zen-icons/lin/settings.svg)
skin/classic/browser/zen-icons/share.svg (../shared/zen-icons/lin/share.svg)
skin/classic/browser/zen-icons/sidebars-right.svg (../shared/zen-icons/lin/sidebars-right.svg)
skin/classic/browser/zen-icons/sidebar.svg (../shared/zen-icons/lin/sidebar.svg)
skin/classic/browser/zen-icons/sidebars-right.svg (../shared/zen-icons/lin/sidebars-right.svg)
skin/classic/browser/zen-icons/source-code.svg (../shared/zen-icons/lin/source-code.svg)
skin/classic/browser/zen-icons/sparkles.svg (../shared/zen-icons/lin/sparkles.svg)
skin/classic/browser/zen-icons/spell-check.svg (../shared/zen-icons/lin/spell-check.svg)
skin/classic/browser/zen-icons/split.svg (../shared/zen-icons/lin/split.svg)
skin/classic/browser/zen-icons/stop-to-reload.svg (../shared/zen-icons/lin/stop-to-reload.svg)
@@ -126,6 +129,7 @@
skin/classic/browser/zen-icons/tool-profiler.svg (../shared/zen-icons/lin/tool-profiler.svg)
skin/classic/browser/zen-icons/tracking-protection.svg (../shared/zen-icons/lin/tracking-protection.svg)
skin/classic/browser/zen-icons/translations.svg (../shared/zen-icons/lin/translations.svg)
skin/classic/browser/zen-icons/trash.svg (../shared/zen-icons/lin/trash.svg)
skin/classic/browser/zen-icons/unpin.svg (../shared/zen-icons/lin/unpin.svg)
skin/classic/browser/zen-icons/video-blocked-fill.svg (../shared/zen-icons/lin/video-blocked-fill.svg)
skin/classic/browser/zen-icons/video-fill.svg (../shared/zen-icons/lin/video-fill.svg)
@@ -173,15 +177,16 @@
skin/classic/browser/zen-icons/edit-paste.svg (../shared/zen-icons/lin/edit-paste.svg)
skin/classic/browser/zen-icons/edit-redo.svg (../shared/zen-icons/lin/edit-redo.svg)
skin/classic/browser/zen-icons/edit-select-all.svg (../shared/zen-icons/lin/edit-select-all.svg)
skin/classic/browser/zen-icons/edit.svg (../shared/zen-icons/lin/edit.svg)
skin/classic/browser/zen-icons/edit-theme.svg (../shared/zen-icons/lin/edit-theme.svg)
skin/classic/browser/zen-icons/edit-undo.svg (../shared/zen-icons/lin/edit-undo.svg)
skin/classic/browser/zen-icons/edit.svg (../shared/zen-icons/lin/edit.svg)
skin/classic/browser/zen-icons/essential-add.svg (../shared/zen-icons/lin/essential-add.svg)
skin/classic/browser/zen-icons/essential-remove.svg (../shared/zen-icons/lin/essential-remove.svg)
skin/classic/browser/zen-icons/expand-sidebar.svg (../shared/zen-icons/lin/expand-sidebar.svg)
skin/classic/browser/zen-icons/ext-link.svg (../shared/zen-icons/lin/ext-link.svg)
skin/classic/browser/zen-icons/extension-blocked.svg (../shared/zen-icons/lin/extension-blocked.svg)
skin/classic/browser/zen-icons/extension.svg (../shared/zen-icons/lin/extension.svg)
skin/classic/browser/zen-icons/ext-link.svg (../shared/zen-icons/lin/ext-link.svg)
skin/classic/browser/zen-icons/face-sun.svg (../shared/zen-icons/lin/face-sun.svg)
skin/classic/browser/zen-icons/firefox.svg (../shared/zen-icons/lin/firefox.svg)
skin/classic/browser/zen-icons/folder.svg (../shared/zen-icons/lin/folder.svg)
skin/classic/browser/zen-icons/forget.svg (../shared/zen-icons/lin/forget.svg)
@@ -218,6 +223,7 @@
skin/classic/browser/zen-icons/microphone-fill.svg (../shared/zen-icons/lin/microphone-fill.svg)
skin/classic/browser/zen-icons/microphone.svg (../shared/zen-icons/lin/microphone.svg)
skin/classic/browser/zen-icons/midi.svg (../shared/zen-icons/lin/midi.svg)
skin/classic/browser/zen-icons/moon-stars.svg (../shared/zen-icons/lin/moon-stars.svg)
skin/classic/browser/zen-icons/move-tab.svg (../shared/zen-icons/lin/move-tab.svg)
skin/classic/browser/zen-icons/new-tab-image.svg (../shared/zen-icons/lin/new-tab-image.svg)
skin/classic/browser/zen-icons/open.svg (../shared/zen-icons/lin/open.svg)
@@ -233,27 +239,28 @@
skin/classic/browser/zen-icons/pocket-outline.svg (../shared/zen-icons/lin/pocket-outline.svg)
skin/classic/browser/zen-icons/popup.svg (../shared/zen-icons/lin/popup.svg)
skin/classic/browser/zen-icons/print.svg (../shared/zen-icons/lin/print.svg)
skin/classic/browser/zen-icons/privateBrowsing.svg (../shared/zen-icons/lin/privateBrowsing.svg)
skin/classic/browser/zen-icons/private-window.svg (../shared/zen-icons/lin/private-window.svg)
skin/classic/browser/zen-icons/privateBrowsing.svg (../shared/zen-icons/lin/privateBrowsing.svg)
skin/classic/browser/zen-icons/reader-mode.svg (../shared/zen-icons/lin/reader-mode.svg)
skin/classic/browser/zen-icons/reload.svg (../shared/zen-icons/lin/reload.svg)
skin/classic/browser/zen-icons/reload-to-stop.svg (../shared/zen-icons/lin/reload-to-stop.svg)
skin/classic/browser/zen-icons/reload.svg (../shared/zen-icons/lin/reload.svg)
skin/classic/browser/zen-icons/report.svg (../shared/zen-icons/lin/report.svg)
skin/classic/browser/zen-icons/save.svg (../shared/zen-icons/lin/save.svg)
skin/classic/browser/zen-icons/screen-blocked.svg (../shared/zen-icons/lin/screen-blocked.svg)
skin/classic/browser/zen-icons/screenshot.svg (../shared/zen-icons/lin/screenshot.svg)
skin/classic/browser/zen-icons/screen.svg (../shared/zen-icons/lin/screen.svg)
skin/classic/browser/zen-icons/screenshot.svg (../shared/zen-icons/lin/screenshot.svg)
skin/classic/browser/zen-icons/search-glass.svg (../shared/zen-icons/lin/search-glass.svg)
skin/classic/browser/zen-icons/search-page.svg (../shared/zen-icons/lin/search-page.svg)
skin/classic/browser/zen-icons/security-broken.svg (../shared/zen-icons/lin/security-broken.svg)
skin/classic/browser/zen-icons/security.svg (../shared/zen-icons/lin/security.svg)
skin/classic/browser/zen-icons/security-warning.svg (../shared/zen-icons/lin/security-warning.svg)
skin/classic/browser/zen-icons/security.svg (../shared/zen-icons/lin/security.svg)
skin/classic/browser/zen-icons/send-to-device.svg (../shared/zen-icons/lin/send-to-device.svg)
skin/classic/browser/zen-icons/settings.svg (../shared/zen-icons/lin/settings.svg)
skin/classic/browser/zen-icons/share.svg (../shared/zen-icons/lin/share.svg)
skin/classic/browser/zen-icons/sidebars-right.svg (../shared/zen-icons/lin/sidebars-right.svg)
skin/classic/browser/zen-icons/sidebar.svg (../shared/zen-icons/lin/sidebar.svg)
skin/classic/browser/zen-icons/sidebars-right.svg (../shared/zen-icons/lin/sidebars-right.svg)
skin/classic/browser/zen-icons/source-code.svg (../shared/zen-icons/lin/source-code.svg)
skin/classic/browser/zen-icons/sparkles.svg (../shared/zen-icons/lin/sparkles.svg)
skin/classic/browser/zen-icons/spell-check.svg (../shared/zen-icons/lin/spell-check.svg)
skin/classic/browser/zen-icons/split.svg (../shared/zen-icons/lin/split.svg)
skin/classic/browser/zen-icons/stop-to-reload.svg (../shared/zen-icons/lin/stop-to-reload.svg)
@@ -264,6 +271,7 @@
skin/classic/browser/zen-icons/tool-profiler.svg (../shared/zen-icons/lin/tool-profiler.svg)
skin/classic/browser/zen-icons/tracking-protection.svg (../shared/zen-icons/lin/tracking-protection.svg)
skin/classic/browser/zen-icons/translations.svg (../shared/zen-icons/lin/translations.svg)
skin/classic/browser/zen-icons/trash.svg (../shared/zen-icons/lin/trash.svg)
skin/classic/browser/zen-icons/unpin.svg (../shared/zen-icons/lin/unpin.svg)
skin/classic/browser/zen-icons/video-blocked-fill.svg (../shared/zen-icons/lin/video-blocked-fill.svg)
skin/classic/browser/zen-icons/video-fill.svg (../shared/zen-icons/lin/video-fill.svg)
@@ -311,15 +319,16 @@
skin/classic/browser/zen-icons/edit-paste.svg (../shared/zen-icons/lin/edit-paste.svg)
skin/classic/browser/zen-icons/edit-redo.svg (../shared/zen-icons/lin/edit-redo.svg)
skin/classic/browser/zen-icons/edit-select-all.svg (../shared/zen-icons/lin/edit-select-all.svg)
skin/classic/browser/zen-icons/edit.svg (../shared/zen-icons/lin/edit.svg)
skin/classic/browser/zen-icons/edit-theme.svg (../shared/zen-icons/lin/edit-theme.svg)
skin/classic/browser/zen-icons/edit-undo.svg (../shared/zen-icons/lin/edit-undo.svg)
skin/classic/browser/zen-icons/edit.svg (../shared/zen-icons/lin/edit.svg)
skin/classic/browser/zen-icons/essential-add.svg (../shared/zen-icons/lin/essential-add.svg)
skin/classic/browser/zen-icons/essential-remove.svg (../shared/zen-icons/lin/essential-remove.svg)
skin/classic/browser/zen-icons/expand-sidebar.svg (../shared/zen-icons/lin/expand-sidebar.svg)
skin/classic/browser/zen-icons/ext-link.svg (../shared/zen-icons/lin/ext-link.svg)
skin/classic/browser/zen-icons/extension-blocked.svg (../shared/zen-icons/lin/extension-blocked.svg)
skin/classic/browser/zen-icons/extension.svg (../shared/zen-icons/lin/extension.svg)
skin/classic/browser/zen-icons/ext-link.svg (../shared/zen-icons/lin/ext-link.svg)
skin/classic/browser/zen-icons/face-sun.svg (../shared/zen-icons/lin/face-sun.svg)
skin/classic/browser/zen-icons/firefox.svg (../shared/zen-icons/lin/firefox.svg)
skin/classic/browser/zen-icons/folder.svg (../shared/zen-icons/lin/folder.svg)
skin/classic/browser/zen-icons/forget.svg (../shared/zen-icons/lin/forget.svg)
@@ -356,6 +365,7 @@
skin/classic/browser/zen-icons/microphone-fill.svg (../shared/zen-icons/lin/microphone-fill.svg)
skin/classic/browser/zen-icons/microphone.svg (../shared/zen-icons/lin/microphone.svg)
skin/classic/browser/zen-icons/midi.svg (../shared/zen-icons/lin/midi.svg)
skin/classic/browser/zen-icons/moon-stars.svg (../shared/zen-icons/lin/moon-stars.svg)
skin/classic/browser/zen-icons/move-tab.svg (../shared/zen-icons/lin/move-tab.svg)
skin/classic/browser/zen-icons/new-tab-image.svg (../shared/zen-icons/lin/new-tab-image.svg)
skin/classic/browser/zen-icons/open.svg (../shared/zen-icons/lin/open.svg)
@@ -371,27 +381,28 @@
skin/classic/browser/zen-icons/pocket-outline.svg (../shared/zen-icons/lin/pocket-outline.svg)
skin/classic/browser/zen-icons/popup.svg (../shared/zen-icons/lin/popup.svg)
skin/classic/browser/zen-icons/print.svg (../shared/zen-icons/lin/print.svg)
skin/classic/browser/zen-icons/privateBrowsing.svg (../shared/zen-icons/lin/privateBrowsing.svg)
skin/classic/browser/zen-icons/private-window.svg (../shared/zen-icons/lin/private-window.svg)
skin/classic/browser/zen-icons/privateBrowsing.svg (../shared/zen-icons/lin/privateBrowsing.svg)
skin/classic/browser/zen-icons/reader-mode.svg (../shared/zen-icons/lin/reader-mode.svg)
skin/classic/browser/zen-icons/reload.svg (../shared/zen-icons/lin/reload.svg)
skin/classic/browser/zen-icons/reload-to-stop.svg (../shared/zen-icons/lin/reload-to-stop.svg)
skin/classic/browser/zen-icons/reload.svg (../shared/zen-icons/lin/reload.svg)
skin/classic/browser/zen-icons/report.svg (../shared/zen-icons/lin/report.svg)
skin/classic/browser/zen-icons/save.svg (../shared/zen-icons/lin/save.svg)
skin/classic/browser/zen-icons/screen-blocked.svg (../shared/zen-icons/lin/screen-blocked.svg)
skin/classic/browser/zen-icons/screenshot.svg (../shared/zen-icons/lin/screenshot.svg)
skin/classic/browser/zen-icons/screen.svg (../shared/zen-icons/lin/screen.svg)
skin/classic/browser/zen-icons/screenshot.svg (../shared/zen-icons/lin/screenshot.svg)
skin/classic/browser/zen-icons/search-glass.svg (../shared/zen-icons/lin/search-glass.svg)
skin/classic/browser/zen-icons/search-page.svg (../shared/zen-icons/lin/search-page.svg)
skin/classic/browser/zen-icons/security-broken.svg (../shared/zen-icons/lin/security-broken.svg)
skin/classic/browser/zen-icons/security.svg (../shared/zen-icons/lin/security.svg)
skin/classic/browser/zen-icons/security-warning.svg (../shared/zen-icons/lin/security-warning.svg)
skin/classic/browser/zen-icons/security.svg (../shared/zen-icons/lin/security.svg)
skin/classic/browser/zen-icons/send-to-device.svg (../shared/zen-icons/lin/send-to-device.svg)
skin/classic/browser/zen-icons/settings.svg (../shared/zen-icons/lin/settings.svg)
skin/classic/browser/zen-icons/share.svg (../shared/zen-icons/lin/share.svg)
skin/classic/browser/zen-icons/sidebars-right.svg (../shared/zen-icons/lin/sidebars-right.svg)
skin/classic/browser/zen-icons/sidebar.svg (../shared/zen-icons/lin/sidebar.svg)
skin/classic/browser/zen-icons/sidebars-right.svg (../shared/zen-icons/lin/sidebars-right.svg)
skin/classic/browser/zen-icons/source-code.svg (../shared/zen-icons/lin/source-code.svg)
skin/classic/browser/zen-icons/sparkles.svg (../shared/zen-icons/lin/sparkles.svg)
skin/classic/browser/zen-icons/spell-check.svg (../shared/zen-icons/lin/spell-check.svg)
skin/classic/browser/zen-icons/split.svg (../shared/zen-icons/lin/split.svg)
skin/classic/browser/zen-icons/stop-to-reload.svg (../shared/zen-icons/lin/stop-to-reload.svg)
@@ -402,6 +413,7 @@
skin/classic/browser/zen-icons/tool-profiler.svg (../shared/zen-icons/lin/tool-profiler.svg)
skin/classic/browser/zen-icons/tracking-protection.svg (../shared/zen-icons/lin/tracking-protection.svg)
skin/classic/browser/zen-icons/translations.svg (../shared/zen-icons/lin/translations.svg)
skin/classic/browser/zen-icons/trash.svg (../shared/zen-icons/lin/trash.svg)
skin/classic/browser/zen-icons/unpin.svg (../shared/zen-icons/lin/unpin.svg)
skin/classic/browser/zen-icons/video-blocked-fill.svg (../shared/zen-icons/lin/video-blocked-fill.svg)
skin/classic/browser/zen-icons/video-fill.svg (../shared/zen-icons/lin/video-fill.svg)

View File

@@ -0,0 +1 @@
<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px" width="18px" height="18px" viewBox="0 0 18 18"><path d="M17.25,8.25h-1.292c-.146-1.369-.69-2.619-1.512-3.637l1.583-1.583c.293-.293,.293-.768,0-1.061s-.767-.294-1.061,0l-1.583,1.583c-1.018-.821-2.268-1.365-3.636-1.511V.75c0-.414-.336-.75-.75-.75s-.75,.336-.75,.75v1.292c-1.368,.146-2.618,.69-3.636,1.511l-1.583-1.583c-.293-.293-.768-.293-1.061,0s-.293,.768,0,1.061l1.583,1.583c-.821,1.018-1.365,2.268-1.511,3.637H.75c-.414,0-.75,.336-.75,.75s.336,.75,.75,.75h1.292c.146,1.369,.69,2.619,1.511,3.637l-1.583,1.583c-.293,.293-.293,.768,0,1.061,.146,.146,.338,.22,.53,.22,.191,0,.384-.073,.53-.22l1.583-1.583c1.018,.821,2.268,1.365,3.636,1.511v1.292c0,.414,.336,.75,.75,.75s.75-.336,.75-.75v-1.292c1.368-.146,2.618-.69,3.636-1.511l1.583,1.583c.146,.146,.338,.22,.53,.22s.384-.073,.53-.22c.293-.293,.293-.768,0-1.061l-1.583-1.583c.821-1.018,1.365-2.268,1.512-3.637h1.292c.414,0,.75-.336,.75-.75s-.336-.75-.75-.75Zm-11.25,1.75c-.552,0-1-.448-1-1s.448-1,1-1,1,.448,1,1-.448,1-1,1Zm3,2c-.828,0-1.5-.672-1.5-1.5,0-.276,.224-.5,.5-.5h2c.276,0,.5,.224,.5,.5,0,.828-.672,1.5-1.5,1.5Zm2-3c0-.552,.448-1,1-1s1,.448,1,1-.448,1-1,1-1-.448-1-1Z" fill="currentColor"></path></svg>

After

Width:  |  Height:  |  Size: 1.2 KiB

View File

@@ -0,0 +1 @@
<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px" width="18px" height="18px" viewBox="0 0 18 18"><path d="M16.705,10.223c-.246-.183-.578-.197-.838-.037-.868,.532-1.859,.813-2.867,.813-3.033,0-5.5-2.467-5.5-5.5,0-1.146,.354-2.247,1.023-3.186,.177-.249,.186-.581,.021-.839-.164-.258-.467-.386-.77-.334C3.994,1.847,1.25,5.152,1.25,9c0,4.411,3.589,8,8,8,3.638,0,6.819-2.461,7.735-5.986,.077-.296-.034-.609-.28-.791Z" fill="currentColor"></path><path d="M12.743,4.492l-.946-.315-.316-.947c-.102-.306-.609-.306-.711,0l-.316,.947-.946,.315c-.153,.051-.257,.194-.257,.356s.104,.305,.257,.356l.946,.315,.316,.947c.051,.153,.194,.256,.355,.256s.305-.104,.355-.256l.316-.947,.946-.315c.153-.051,.257-.194,.257-.356s-.104-.305-.257-.356Z" fill="currentColor" data-color="color-2"></path><circle cx="14.25" cy="7.75" r=".75" fill="currentColor" data-color="color-2"></circle></svg>

After

Width:  |  Height:  |  Size: 917 B

View File

@@ -0,0 +1 @@
<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px" width="18px" height="18px" viewBox="0 0 18 18"><path d="M3.025,5.623c.068,.204,.26,.342,.475,.342s.406-.138,.475-.342l.421-1.263,1.263-.421c.204-.068,.342-.259,.342-.474s-.138-.406-.342-.474l-1.263-.421-.421-1.263c-.137-.408-.812-.408-.949,0l-.421,1.263-1.263,.421c-.204,.068-.342,.259-.342,.474s.138,.406,.342,.474l1.263,.421,.421,1.263Z" fill="currentColor" data-color="color-2"></path><path d="M16.525,8.803l-4.535-1.793-1.793-4.535c-.227-.572-1.168-.572-1.395,0l-1.793,4.535-4.535,1.793c-.286,.113-.475,.39-.475,.697s.188,.584,.475,.697l4.535,1.793,1.793,4.535c.113,.286,.39,.474,.697,.474s.584-.188,.697-.474l1.793-4.535,4.535-1.793c.286-.113,.475-.39,.475-.697s-.188-.584-.475-.697Z" fill="currentColor"></path></svg>

After

Width:  |  Height:  |  Size: 822 B

View File

@@ -0,0 +1 @@
<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px" width="18px" height="18px" viewBox="0 0 18 18"><path d="m13.474,7.25l-.374,7.105c-.056,1.062-.934,1.895-1.997,1.895h-4.205c-1.064,0-1.941-.833-1.997-1.895l-.374-7.105" fill="none" stroke="currentColor" stroke-linecap="round" stroke-linejoin="round" stroke-width="1.5"></path><line x1="2.75" y1="4.75" x2="15.25" y2="4.75" fill="none" stroke="currentColor" stroke-linecap="round" stroke-linejoin="round" stroke-width="1.5" data-color="color-2"></line><path d="m6.75,4.75v-2c0-.552.448-1,1-1h2.5c.552,0,1,.448,1,1v2" fill="none" stroke="currentColor" stroke-linecap="round" stroke-linejoin="round" stroke-width="1.5" data-color="color-2"></path></svg>

After

Width:  |  Height:  |  Size: 748 B

View File

@@ -1,5 +1,5 @@
diff --git a/browser/themes/windows/browser.css b/browser/themes/windows/browser.css
index 007aec91e089a1d2df20235890b268b820b0a529..ac0592cbcec62ffefb58b491dff48749852f2d88 100644
index 007aec91e089a1d2df20235890b268b820b0a529..a03a0d7b7837f6315f47f76a4491bf08d96e00e0 100644
--- a/browser/themes/windows/browser.css
+++ b/browser/themes/windows/browser.css
@@ -31,7 +31,6 @@
@@ -10,3 +10,12 @@ index 007aec91e089a1d2df20235890b268b820b0a529..ac0592cbcec62ffefb58b491dff48749
}
}
@@ -56,7 +55,7 @@
/* This is needed for Windows 10, see bug 1961257 */
@media (-moz-windows-accent-color-in-titlebar) {
- :root[customtitlebar][sizemode="normal"] #navigator-toolbox {
+ :root[customtitlebar][sizemode="normal"] #browser {
border-top: .5px solid ActiveBorder;
&:-moz-window-inactive {
border-top-color: InactiveBorder;

View File

@@ -0,0 +1,20 @@
diff --git a/dom/base/Document.cpp b/dom/base/Document.cpp
index a16bef739fcde0f14ba7e53e0acfa3aa2ee1dd3a..f928c0f1df4e86bd344ab7e57dab112234fb92e8 100644
--- a/dom/base/Document.cpp
+++ b/dom/base/Document.cpp
@@ -3332,6 +3332,15 @@ void Document::FillStyleSetUserAndUASheets() {
ServoStyleSet& styleSet = EnsureStyleSet();
for (StyleSheet* sheet : *sheetService->UserStyleSheets()) {
+ // If the url starts with "file://" and ends with 'zen-themes.css', then
+ // skip it if the document is not in a chrome docshell.
+ // This is to avoid loading the user chrome stylesheet in the content
+ // process, which is not allowed.
+ auto spec = sheet->GetSheetURI()->GetSpecOrDefault();
+ if (!IsInChromeDocShell() && StringBeginsWith(spec, "file://"_ns) &&
+ StringEndsWith(spec, "zen-themes.css"_ns)) {
+ continue;
+ }
styleSet.AppendStyleSheet(*sheet);
}

View File

@@ -1,41 +0,0 @@
diff --git a/dom/script/ScriptLoader.cpp b/dom/script/ScriptLoader.cpp
index 51f63f998e47aa4b1dffc3cacdb0a698b33b4623..0387738ce1f29b5db4a5d03a3b2f5f3a91011125 100644
--- a/dom/script/ScriptLoader.cpp
+++ b/dom/script/ScriptLoader.cpp
@@ -2679,6 +2679,36 @@ void ScriptLoader::CalculateBytecodeCacheFlag(ScriptLoadRequest* aRequest) {
hasFetchCountMin = false;
break;
}
+ case 1: {
+ // 1!
+ hasSourceLengthMin = true;
+ hasFetchCountMin = true;
+ sourceLengthMin = 1024;
+ // If we were to optimize only for speed, without considering the impact
+ // on memory, we should set this threshold to 2. (Bug 900784 comment 120)
+ fetchCountMin = 1;
+ break;
+ }
+ case 2: {
+ // 2!
+ hasSourceLengthMin = true;
+ hasFetchCountMin = true;
+ sourceLengthMin = 1024;
+ // If we were to optimize only for speed, without considering the impact
+ // on memory, we should set this threshold to 2. (Bug 900784 comment 120)
+ fetchCountMin = 2;
+ break;
+ }
+ case 3: {
+ // 3!
+ hasSourceLengthMin = true;
+ hasFetchCountMin = true;
+ sourceLengthMin = 1024;
+ // If we were to optimize only for speed, without considering the impact
+ // on memory, we should set this threshold to 2. (Bug 900784 comment 120)
+ fetchCountMin = 3;
+ break;
+ }
default:
case 0: {
hasSourceLengthMin = true;

View File

@@ -1,32 +0,0 @@
# HG changeset patch
# User Julian Descottes <jdescottes@mozilla.com>
# Date 1744201993 0
# Node ID 2e2d932d75c44447af89224be5e4324dc080c447
# Parent 9f134a1b1a884a857c59517ba0e8f3603e4009dd
Bug 1959377 - Include vector in mac/Sandbox.h to fix build on macos 15.4 r=emilio
Differential Revision: https://phabricator.services.mozilla.com/D244870
diff --git a/security/sandbox/mac/Sandbox.h b/security/sandbox/mac/Sandbox.h
--- a/security/sandbox/mac/Sandbox.h
+++ b/security/sandbox/mac/Sandbox.h
@@ -2,16 +2,17 @@
/* This Source Code Form is subject to the terms of the Mozilla Public
* License, v. 2.0. If a copy of the MPL was not distributed with this
* file, You can obtain one at http://mozilla.org/MPL/2.0/. */
#ifndef mozilla_Sandbox_h
#define mozilla_Sandbox_h
#include <string>
+#include <vector>
#include "mozilla/ipc/UtilityProcessSandboxing.h"
enum MacSandboxType {
MacSandboxType_Default = 0,
MacSandboxType_Content,
MacSandboxType_GMP,
MacSandboxType_RDD,
MacSandboxType_Socket,

View File

@@ -0,0 +1,97 @@
diff --git a/gfx/wr/swgl/build.rs b/gfx/wr/swgl/build.rs
--- a/gfx/wr/swgl/build.rs
+++ b/gfx/wr/swgl/build.rs
@@ -147,10 +147,11 @@
let shader_dir = std::env::var("CARGO_MANIFEST_DIR").unwrap() + "/../webrender/res";
let shader_flags = ShaderFeatureFlags::GL
| ShaderFeatureFlags::DUAL_SOURCE_BLENDING
| ShaderFeatureFlags::ADVANCED_BLEND_EQUATION
+ | ShaderFeatureFlags::DITHERING
| ShaderFeatureFlags::DEBUG;
let mut shaders: Vec<String> = Vec::new();
for (name, features) in get_shader_features(shader_flags) {
shaders.extend(features.iter().map(|f| {
if f.is_empty() {
diff --git a/gfx/wr/webrender/res/brush_linear_gradient.glsl b/gfx/wr/webrender/res/brush_linear_gradient.glsl
--- a/gfx/wr/webrender/res/brush_linear_gradient.glsl
+++ b/gfx/wr/webrender/res/brush_linear_gradient.glsl
@@ -79,17 +79,23 @@
return Fragment(color);
}
#ifdef SWGL_DRAW_SPAN
+#ifdef WR_FEATURE_DITHERING
+void swgl_drawSpanRGBA8() {
+ return;
+}
+#else
void swgl_drawSpanRGBA8() {
int address = swgl_validateGradient(sGpuBufferF, get_gpu_buffer_uv(v_gradient_address.x), int(GRADIENT_ENTRIES + 2.0));
if (address < 0) {
return;
}
swgl_commitLinearGradientRGBA8(sGpuBufferF, address, GRADIENT_ENTRIES, true, v_gradient_repeat.x != 0.0,
v_pos, v_scale_dir, v_start_offset.x);
}
#endif
+#endif
#endif
diff --git a/gfx/wr/webrender/src/renderer/init.rs b/gfx/wr/webrender/src/renderer/init.rs
--- a/gfx/wr/webrender/src/renderer/init.rs
+++ b/gfx/wr/webrender/src/renderer/init.rs
@@ -222,11 +222,11 @@
fn default() -> Self {
WebRenderOptions {
resource_override_path: None,
use_optimized_shaders: false,
enable_aa: true,
- enable_dithering: false,
+ enable_dithering: true,
debug_flags: DebugFlags::empty(),
max_recorded_profiles: 0,
precache_flags: ShaderPrecacheFlags::empty(),
enable_subpixel_aa: false,
clear_color: ColorF::new(1.0, 1.0, 1.0, 1.0),
--- a/gfx/wr/webrender/build.rs
+++ b/gfx/wr/webrender/build.rs
@@ -150,11 +150,10 @@
) {
flags.remove(ShaderFeatureFlags::TEXTURE_EXTERNAL_ESSL1);
}
// The optimizer cannot handle the required EXT_YUV_target extension
flags.remove(ShaderFeatureFlags::TEXTURE_EXTERNAL_BT709);
- flags.remove(ShaderFeatureFlags::DITHERING);
for (shader_name, configs) in get_shader_features(flags) {
for config in configs {
shaders.push(ShaderOptimizationInput {
shader_name,
diff --git a/gfx/wr/webrender/res/shared.glsl b/gfx/wr/webrender/res/shared.glsl
index f9c093f8486dbd481f2520762f80ace257c294f6..904f9991e917423e11563d862bbd185725523573 100644
--- a/gfx/wr/webrender/res/shared.glsl
+++ b/gfx/wr/webrender/res/shared.glsl
@@ -226,6 +226,7 @@ uniform __samplerExternal2DY2YEXT sColor1;
uniform __samplerExternal2DY2YEXT sColor2;
#endif
+#define WR_FEATURE_DITHERING
#ifdef WR_FEATURE_DITHERING
uniform sampler2D sDither;
#endif
diff --git a/gfx/wr/webrender/res/gradient.glsl b/gfx/wr/webrender/res/gradient.glsl
index 6ed2e6987135e04a70fcc908c089bf225ffdb255..09a4acdf3f53a53e123510fdc5aea8b9b8c4d91e 100644
--- a/gfx/wr/webrender/res/gradient.glsl
+++ b/gfx/wr/webrender/res/gradient.glsl
@@ -11,6 +11,7 @@ flat varying mediump vec2 v_gradient_repeat;
#ifdef WR_FRAGMENT_SHADER
+#define WR_FEATURE_DITHERING
#ifdef WR_FEATURE_DITHERING
vec4 dither(vec4 color) {
const int matrix_mask = 7;

View File

@@ -0,0 +1,13 @@
diff --git a/layout/base/nsStyleSheetService.h b/layout/base/nsStyleSheetService.h
index 8c49b338bf8e6830874ace9a08e8c0713167ee58..53a48129b2b6b2adf15e0fe17da14c3b16577966 100644
--- a/layout/base/nsStyleSheetService.h
+++ b/layout/base/nsStyleSheetService.h
@@ -50,6 +50,8 @@ class nsStyleSheetService final : public nsIStyleSheetService,
size_t SizeOfIncludingThis(mozilla::MallocSizeOf aMallocSizeOf) const;
+ void UpdateZenModStyles(mozilla::StyleSheet* aSheet, nsIURI* aURI, bool aInsert);
+
static nsStyleSheetService* GetInstance();
static nsStyleSheetService* gInstance;

View File

@@ -1,7 +1,7 @@
diff --git a/security/mac/hardenedruntime/v2/production/firefox.browser.xml b/security/mac/hardenedruntime/v2/production/firefox.browser.xml
diff --git a/security/mac/hardenedruntime/production/firefox.browser.xml b/security/mac/hardenedruntime/production/firefox.browser.xml
index abbf33e9d2b3c9d1e0a34bd46e7cd289c435533b..d580b156fed13f4de8eb73e5c29c646a7a22a1d2 100644
--- a/security/mac/hardenedruntime/v2/production/firefox.browser.xml
+++ b/security/mac/hardenedruntime/v2/production/firefox.browser.xml
--- a/security/mac/hardenedruntime/production/firefox.browser.xml
+++ b/security/mac/hardenedruntime/production/firefox.browser.xml
@@ -26,7 +26,7 @@
<!-- Required for com.apple.developer.web-browser.public-key-credential -->

View File

@@ -1,5 +1,5 @@
diff --git a/servo/components/style/gecko/media_features.rs b/servo/components/style/gecko/media_features.rs
index cc24406e22f536733b07a9398580a8719b61e134..214f238b38377a8480711ea2d0ec30e99800bb5c 100644
index c66f1e26b22a6eeb2192d531e365ba34a61e220d..097ffce888ee0e180cc06448ea34860e6a467a2a 100644
--- a/servo/components/style/gecko/media_features.rs
+++ b/servo/components/style/gecko/media_features.rs
@@ -13,6 +13,9 @@ use crate::values::computed::{CSSPixelLength, Context, Ratio, Resolution};
@@ -12,7 +12,7 @@ index cc24406e22f536733b07a9398580a8719b61e134..214f238b38377a8480711ea2d0ec30e9
fn device_size(device: &Device) -> Size2D<Au> {
let mut width = 0;
@@ -606,6 +609,13 @@ fn eval_moz_overlay_scrollbars(context: &Context) -> bool {
@@ -610,6 +613,13 @@ fn eval_moz_overlay_scrollbars(context: &Context) -> bool {
unsafe { bindings::Gecko_MediaFeatures_UseOverlayScrollbars(context.device().document()) }
}
@@ -26,16 +26,16 @@ index cc24406e22f536733b07a9398580a8719b61e134..214f238b38377a8480711ea2d0ec30e9
fn get_lnf_int(int_id: i32) -> i32 {
unsafe { bindings::Gecko_GetLookAndFeelInt(int_id) }
}
@@ -653,7 +663,7 @@ macro_rules! lnf_int_feature {
@@ -657,7 +667,7 @@ macro_rules! lnf_int_feature {
/// to support new types in these entries and (2) ensuring that either
/// nsPresContext::MediaFeatureValuesChanged is called when the value that
/// would be returned by the evaluator function could change.
-pub static MEDIA_FEATURES: [QueryFeatureDescription; 61] = [
+pub static MEDIA_FEATURES: [QueryFeatureDescription; 62] = [
-pub static MEDIA_FEATURES: [QueryFeatureDescription; 62] = [
+pub static MEDIA_FEATURES: [QueryFeatureDescription; 63] = [
feature!(
atom!("width"),
AllowsRanges::Yes,
@@ -918,6 +928,12 @@ pub static MEDIA_FEATURES: [QueryFeatureDescription; 61] = [
@@ -928,6 +938,12 @@ pub static MEDIA_FEATURES: [QueryFeatureDescription; 62] = [
Evaluator::BoolInteger(eval_moz_overlay_scrollbars),
FeatureFlags::CHROME_AND_UA_ONLY,
),

View File

@@ -1,8 +1,8 @@
diff --git a/testing/profiles/mochitest/user.js b/testing/profiles/mochitest/user.js
index a4068ac3f61161d014c49d54ae7a3bf886868f1b..6af5907abb46b6d3b871c159c73eec8373ee8ef5 100644
index a4068ac3f61161d014c49d54ae7a3bf886868f1b..b9861cfaae19a4a71b75ccc73095dc602df22b12 100644
--- a/testing/profiles/mochitest/user.js
+++ b/testing/profiles/mochitest/user.js
@@ -41,3 +41,10 @@ user_pref("places.history.floodingPrevention.enabled", false);
@@ -41,3 +41,9 @@ user_pref("places.history.floodingPrevention.enabled", false);
// permission, and we can open it and wait for the user to give permission, then
// don't do that.
user_pref("geo.prompt.open_system_prefs", false);
@@ -12,4 +12,3 @@ index a4068ac3f61161d014c49d54ae7a3bf886868f1b..6af5907abb46b6d3b871c159c73eec83
+user_pref("zen.watermark.enabled", false);
+user_pref("zen.urlbar.replace-newtab", false);
+user_pref("zen.testing.enabled", true);
+user_pref("dom.security.https_only_mode", false); // Dont ask why

View File

@@ -1,8 +1,8 @@
diff --git a/testing/profiles/profileserver/user.js b/testing/profiles/profileserver/user.js
index 19ff7d474f6d22d2d386764e2e6942ce6a324470..531446847039fd683af52ac7fdfd601bea3cb624 100644
index 19ff7d474f6d22d2d386764e2e6942ce6a324470..75ec03c0d6a2f12986eb434f4b9b5350e1af37fd 100644
--- a/testing/profiles/profileserver/user.js
+++ b/testing/profiles/profileserver/user.js
@@ -8,3 +8,13 @@
@@ -8,3 +8,12 @@
user_pref("dom.timeout.enable_budget_timer_throttling", false);
// Turn off update
user_pref("app.update.disabledForTesting", true);
@@ -15,4 +15,3 @@ index 19ff7d474f6d22d2d386764e2e6942ce6a324470..531446847039fd683af52ac7fdfd601b
+user_pref("zen.urlbar.replace-newtab", false);
+user_pref("zen.testing.enabled", true);
+user_pref("zen.testing.profiling.enabled", true);
+user_pref("dom.security.https_only_mode", false); // Dont ask why

View File

@@ -1,12 +0,0 @@
diff --git a/toolkit/components/aboutconfig/content/aboutconfig.html b/toolkit/components/aboutconfig/content/aboutconfig.html
index 853fd8f82bd10854c7fb17a73fd10eab0a9eef52..6f5e6606ebfa95a600037b995e5c743dd5aacba5 100644
--- a/toolkit/components/aboutconfig/content/aboutconfig.html
+++ b/toolkit/components/aboutconfig/content/aboutconfig.html
@@ -34,6 +34,7 @@
<link rel="icon" href="chrome://global/skin/icons/settings.svg" />
<script src="chrome://global/content/aboutconfig/aboutconfig.js"></script>
<title data-l10n-id="about-config-page-title"></title>
+ <script src="chrome://browser/content/zenThemeModifier.js"></script>
</head>
<body>
<div

View File

@@ -1,12 +0,0 @@
diff --git a/toolkit/components/aboutprocesses/content/aboutProcesses.html b/toolkit/components/aboutprocesses/content/aboutProcesses.html
index 1d936bcca6a606f062b9438d78a1165445468471..cbefb51920e7b2ad11621ab2b36c69fa63967dfe 100644
--- a/toolkit/components/aboutprocesses/content/aboutProcesses.html
+++ b/toolkit/components/aboutprocesses/content/aboutProcesses.html
@@ -20,6 +20,7 @@
<link rel="localization" href="branding/brand.ftl" />
<script src="chrome://global/content/aboutProcesses.js"></script>
<link rel="stylesheet" href="chrome://global/content/aboutProcesses.css" />
+ <script src="chrome://browser/content/zenThemeModifier.js"></script>
</head>
<body>
<table id="process-table">

View File

@@ -1,12 +0,0 @@
diff --git a/toolkit/components/printing/content/print.html b/toolkit/components/printing/content/print.html
index 72ccab596c2f090d188f1d27278f68373e5b06be..541271c71a3df749826b7f5adbd55e76450bba8f 100644
--- a/toolkit/components/printing/content/print.html
+++ b/toolkit/components/printing/content/print.html
@@ -21,6 +21,7 @@
type="module"
src="chrome://global/content/elements/moz-button-group.mjs"
></script>
+ <script src="chrome://browser/content/zenThemeModifier.js"></script>
</head>
<body loading rendering>

View File

@@ -1,12 +0,0 @@
diff --git a/toolkit/components/prompts/content/commonDialog.xhtml b/toolkit/components/prompts/content/commonDialog.xhtml
index c47761ec958a11870e55294fe9c6de8f3afbda2f..5e0313864c67a774874c215fd043b9b8af39d8cb 100644
--- a/toolkit/components/prompts/content/commonDialog.xhtml
+++ b/toolkit/components/prompts/content/commonDialog.xhtml
@@ -30,6 +30,7 @@
<html:link rel="localization" href="branding/brand.ftl" />
<html:link rel="localization" href="toolkit/global/commonDialog.ftl" />
+ <script src="chrome://browser/content/zenThemeModifier.js"></script>
</linkset>
<script src="chrome://global/content/adjustableTitle.js" />
<script src="chrome://global/content/commonDialog.js" />

View File

@@ -1,12 +0,0 @@
diff --git a/toolkit/content/aboutAbout.html b/toolkit/content/aboutAbout.html
index 74702381dd1bed2d4bb47c464ae0ca309c10e45b..f1e6b34bbf29d787bd62d625707dead024cf6011 100644
--- a/toolkit/content/aboutAbout.html
+++ b/toolkit/content/aboutAbout.html
@@ -24,6 +24,7 @@
href="chrome://branding/content/icon32.png"
/>
<script src="chrome://global/content/aboutAbout.js"></script>
+ <script src="chrome://browser/content/zenThemeModifier.js"></script>
</head>
<body>

Some files were not shown because too many files have changed in this diff Show More