Compare commits

...

50 Commits

Author SHA1 Message Date
Mauro Balades
984e29f4cd chore: Remove unnecessary Python 3.12 commands and files from macOS alpha build workflow 2024-08-20 14:00:23 +02:00
Mauro Balades
72c535b039 chore: Update macOS alpha build workflow to remove unnecessary Python 3.12 commands and files 2024-08-20 13:59:23 +02:00
Mauro Balades
000c41038d chore: Update macOS alpha build workflow to install Python 3.11 and add watchman 2024-08-20 13:17:21 +02:00
Mauro Balades
776c9f69d5 chore: Update macOS alpha build workflow to bootstrap the engine with --no-system-changes flag 2024-08-20 12:31:01 +02:00
Mauro Balades
b38acdd8be chore: Update vertical-tabs.css to set max-width to 100% 2024-08-20 12:23:47 +02:00
Mauro Balades
c8ad6cb70e chore: Update macOS alpha build workflow to remove unnecessary Python 3.12 commands and files 2024-08-20 12:04:21 +02:00
Mauro Balades
bb6113f221 chore: Update macOS alpha build workflow to completely uninstall python3 and python3.12 with --ignore-dependencies flag 2024-08-20 11:33:43 +02:00
Mauro Balades
83d91ea38c chore: Update zen-compact-mode.css to fix padding and titlebar width 2024-08-20 11:30:51 +02:00
Mauro Balades
481687bdab chore: Update macOS alpha build workflow to install Python 3.11 instead of Python 3.12 2024-08-20 11:14:02 +02:00
Mauro Balades
47f91322f6 chore: Update macOS alpha build workflow to remove unnecessary Python 3.12 commands and files 2024-08-20 10:22:34 +02:00
Mauro Balades
4549ac3671 chore: Update padding-left in vertical-tabs.css to use variable 2024-08-20 10:16:20 +02:00
Mauro Balades
7ec8523c95 chore: Update macOS alpha build workflow to remove unnecessary Python 3.12 commands and files 2024-08-20 10:02:59 +02:00
Mauro Balades
1bd8f37381 chore: Update zen-components submodule to commit f5d5bc9 2024-08-20 09:31:07 +02:00
Mauro Balades
fa7a0ac661 chore: Update macOS alpha build workflow to remove unnecessary commands and install Python 3.12 and bootstrap the engine 2024-08-20 09:24:00 +02:00
Mauro Balades
8f800f5134 chore: Update macOS alpha build workflow to install Python 3.12 and bootstrap the engine 2024-08-20 01:46:32 +02:00
Mauro Balades
9cdfc864b3 chore: Update zen-components submodule to commit 8926b7c 2024-08-20 01:30:22 +02:00
Mauro Balades
b2b3fb0b07 chore: Update macOS alpha build workflow to uninstall python3 and python3.12 with --ignore-dependencies flag 2024-08-20 01:26:59 +02:00
Mauro Balades
c92931e005 chore: Update padding-left in vertical-tabs.css to use variable 2024-08-20 01:24:46 +02:00
Mauro Balades
7c82ce5c23 chore: Update submodules to latest versions 2024-08-20 01:24:04 +02:00
Mauro Balades
f36613e7e8 chore: Uninstall python3 and python3.12 in macOS alpha build workflow 2024-08-20 01:11:11 +02:00
Mauro Balades
71c131032b update submodules 2024-08-20 01:05:09 +02:00
Mauro Balades
81a8715b7b chore: Update zen-theme.css for improved URL bar background color 2024-08-20 00:53:47 +02:00
Mauro Balades
5599000d33 chore: Remove idle3.12 from macOS alpha build workflow 2024-08-20 00:42:57 +02:00
Mauro Balades
8cdf09daa0 chore: Remove idle3 from macOS alpha build workflow 2024-08-20 00:17:33 +02:00
Mauro Balades
fc6a70162b chore: Update Windows theming for better scrollbar appearance 2024-08-20 00:13:51 +02:00
Mauro Balades
bc109d33c8 chore: Remove unnecessary Python version and 2to3-3.12 file in macOS alpha build workflow 2024-08-19 23:58:35 +02:00
Mauro Balades
9f10b74af5 chore: Update macOS alpha build workflow and Python version to 3.11 2024-08-19 23:39:59 +02:00
Mauro Balades
a65753d9a0 chore: Update macOS alpha build workflow 2024-08-19 23:12:58 +02:00
Mauro Balades
234f116964 Fix indentation issue in MacOSInstaller.svg 2024-08-19 22:26:11 +02:00
mauro-balades
6b34aa9d3d 🔖 Update version to 1.0.0-a.24 2024-08-19 18:32:52 +00:00
Mauro Balades
3939aa8809 chore: Update @zen-browser/surfer dependency to version 1.2.12 2024-08-19 20:30:01 +02:00
Mauro Balades
de5f73a9e6 Merge branch 'main' of https://github.com/zen-browser/core 2024-08-19 19:43:38 +02:00
Mauro Balades
26a9e255c1 Added paltform specific preferences for themes 2024-08-19 19:43:33 +02:00
mauro 🤙
b50ed3a2d5 Merge pull request #331 from Donnnno/about-icon
Update firefox.svg
2024-08-19 19:40:22 +02:00
Donno
0900c27d2b Update firefox.svg 2024-08-19 19:38:54 +02:00
Mauro Balades
ae723290d7 chore: Update ZenUIManager to set sidebar-expanded.on-hover to false when compact mode is enabled 2024-08-19 19:17:43 +02:00
mauro 🤙
1834fe2177 Merge pull request #329 from n7itro/zen-hide-mute-button
chore: hide mute button on collapsed inactive tabs
2024-08-19 19:13:01 +02:00
mauro 🤙
3d6707fe21 Merge branch 'main' into zen-hide-mute-button 2024-08-19 19:12:53 +02:00
mauro 🤙
7e3eba280b Merge pull request #326 from n7itro/main
Centered expand tab sidebar button
2024-08-19 19:11:42 +02:00
Mauro Balades
cba262e090 feat: Add expand on hover functionality for tabs 2024-08-19 19:10:44 +02:00
nitro
b187c9383b removed effect shadow on button press 2024-08-19 17:48:14 +02:00
nitro
e7013c4db4 hide mute button on collapsed inactive tabs
Closes #322
2024-08-19 17:31:24 +02:00
Mauro Balades
1b5881c0fb Added expand on hover for tabs! 2024-08-19 17:25:00 +02:00
mauro 🤙
66d8d4bd71 Merge pull request #327 from Donnnno/icon
Update io.github.zen_browser.zen.yml.template
2024-08-19 14:52:57 +02:00
Donno
552a3c3cac Update io.github.zen_browser.zen.yml.template 2024-08-19 14:52:06 +02:00
nitro
fb58c42938 chore: remove unintended button shadow
Tested with Browser Toolbox
2024-08-19 14:46:52 +02:00
nitro
7a4a7681b9 centered expand tab sidebar button 2024-08-19 14:36:15 +02:00
mauro 🤙
5a3a383cde Tried to improve performance 2024-08-19 09:14:36 +00:00
mauro 🤙
5943be1b39 Merge pull request #316 from n7itro/main
Removed unused "awesome bar"
2024-08-18 18:55:49 +02:00
nitro
136993f203 Removed unused "awesome bar"
The "Awesome Bar Settings" in Look and Feel don't appear to do anything, so can they be removed?
2024-08-18 18:53:13 +02:00
46 changed files with 3814 additions and 171 deletions

View File

@@ -45,6 +45,30 @@ jobs:
brew install cairo sccache gnu-tar mercurial
sudo pip install setuptools
# completly uninstall python3 and python3.12
brew uninstall --ignore-dependencies python3.12 -f
export PATH="$(python3 -m site --user-base)/bin":$PATH
python3 -m pip install --user mercurial
rm '/usr/local/bin/2to3-3.11' # fix Could not symlink bin/2to3-3.11
rm '/usr/local/bin/2to3-3.12' # fix Could not symlink bin/2to3-3.12
rm /usr/local/bin/2to3 # fix Could not symlink bin/2to3
rm '/usr/local/bin/idle3.11' #fix Could not symlink bin/idle3.11
rm '/usr/local/bin/idle3.12' # fix Could not symlink bin/idle3.12
rm '/usr/local/bin/idle3' # fix Could not symlink bin/idle3
rm '/usr/local/bin/pydoc3.11' # fix Could not symlink bin/pydoc3.11
rm '/usr/local/bin/pydoc3.12' # fix Could not symlink bin/pydoc3.12
rm '/usr/local/bin/pydoc3' # fix Could not symlink bin/pydoc3
rm '/usr/local/bin/python3.11' # fix Could not symlink bin/python3.11
rm '/usr/local/bin/python3.12' # fix Could not symlink bin/python3.12
rm '/usr/local/bin/python3' # fix Could not symlink bin/python3
rm '/usr/local/bin/python3.11-config' # fix Could not symlink bin/python3.11-config
rm '/usr/local/bin/python3.12-config' # fix Could not symlink bin/python3.12-config
rm '/usr/local/bin/python3-config' # fix Could not symlink bin/python3-config
brew install watchman
- name: Force usage fo gnu-tar
run: |
echo 'export PATH="/usr/local/opt/gnu-tar/libexec/gnubin:$PATH"' >> ~/.bash_profile
@@ -68,18 +92,19 @@ jobs:
- name: Download firefox source and dependancies
run: pnpm surfer download
- name: Bootstrap
run: |
cd engine
export PATH="$(python3 -m site --user-base)/bin":$PATH
./mach --no-interactive bootstrap --application-choice browser --no-system-changes
cd ..
- name: Import
env:
SURFER_COMPAT: ${{ matrix.arch == 'x64' }}
run: |
pnpm surfer import
- name: Bootstrap
run: |
cd engine
./mach --no-interactive bootstrap --application-choice browser
cd ..
- name: build Zen
env:
SURFER_COMPAT: ${{ matrix.arch == 'x64' }}

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.3 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 17 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 3.2 KiB

After

Width:  |  Height:  |  Size: 5.3 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 461 B

After

Width:  |  Height:  |  Size: 624 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 634 B

After

Width:  |  Height:  |  Size: 951 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 697 B

After

Width:  |  Height:  |  Size: 1.0 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 6.2 KiB

After

Width:  |  Height:  |  Size: 12 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 890 B

After

Width:  |  Height:  |  Size: 1.2 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.3 KiB

After

Width:  |  Height:  |  Size: 2.0 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 13 KiB

After

Width:  |  Height:  |  Size: 12 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.6 KiB

After

Width:  |  Height:  |  Size: 2.6 KiB

View File

@@ -1,4 +1,4 @@
<svg width="320" height="130" xmlns="http://www.w3.org/2000/svg">
<rect width="300" height="100" x="10" y="10" style="fill:rgb(0,0,255);stroke-width:3;stroke:red" />
<rect width="300" height="100" x="10" y="10" style="fill:rgb(0,0,255);stroke-width:3;stroke:red" />
Sorry, your browser does not support inline SVG.
</svg>

Before

Width:  |  Height:  |  Size: 225 B

After

Width:  |  Height:  |  Size: 226 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.3 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 17 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 3.2 KiB

After

Width:  |  Height:  |  Size: 5.3 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 461 B

After

Width:  |  Height:  |  Size: 624 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 634 B

After

Width:  |  Height:  |  Size: 951 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 697 B

After

Width:  |  Height:  |  Size: 1.0 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 6.2 KiB

After

Width:  |  Height:  |  Size: 12 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 890 B

After

Width:  |  Height:  |  Size: 1.2 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.3 KiB

After

Width:  |  Height:  |  Size: 2.0 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 13 KiB

After

Width:  |  Height:  |  Size: 12 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.6 KiB

After

Width:  |  Height:  |  Size: 2.6 KiB

View File

@@ -75,7 +75,7 @@ if test "$ZEN_RELEASE"; then
ac_add_options --enable-updater
#export MOZ_PACKAGE_JSSHELL=1
export MOZ_PACKAGE_JSSHELL=1
fi
ac_add_options --enable-unverified-updates

View File

@@ -29,7 +29,7 @@ modules:
- install -Dm0755 metadata/launch-script.sh ${{FLATPAK_DEST}}/bin/launch-script.sh
- install -Dm0644 metadata/policies.json ${{FLATPAK_DEST}}/bin/distribution/policies.json
- install -Dm0644 metadata/icons/io.github.zen_browser.zen.png ${{FLATPAK_DEST}}/share/icons/hicolor/256x256/apps/${{FLATPAK_ID}}.png
- install -Dm0644 metadata/icons/io.github.zen_browser.zen.svg ${{FLATPAK_DEST}}/share/icons/hicolor/scalable/apps/${{FLATPAK_ID}}.png
- install -Dm0644 metadata/io.github.zen_browser.zen.metainfo.xml ${{FLATPAK_DEST}}/share/metainfo/${{FLATPAK_ID}}.metainfo.xml
- install -Dm0644 metadata/io.github.zen_browser.zen.desktop ${{FLATPAK_DEST}}/share/applications/${{FLATPAK_ID}}.desktop

3402
package-lock.json generated Normal file

File diff suppressed because it is too large Load Diff

View File

@@ -27,6 +27,6 @@
},
"homepage": "https://github.com/zen-browser/core#readme",
"dependencies": {
"@zen-browser/surfer": "^1.2.9"
"@zen-browser/surfer": "^1.2.12"
}
}

10
pnpm-lock.yaml generated
View File

@@ -9,8 +9,8 @@ importers:
.:
dependencies:
'@zen-browser/surfer':
specifier: ^1.2.9
version: 1.2.9
specifier: ^1.2.12
version: 1.2.12
packages:
@@ -109,8 +109,8 @@ packages:
'@types/node@17.0.45':
resolution: {integrity: sha512-w+tIMs3rq2afQdsPJlODhoUEKzFP1ayaoyl1CcnwtIlsVe7K7bA1NGm4s3PraqTLlXnbIN84zuBlxBWo1u9BLw==}
'@zen-browser/surfer@1.2.9':
resolution: {integrity: sha512-XDEG80YOiQd0kl0PX0WzdYDwdOJ5hhrU0bcohBeK68my3nOXTIiuM26FXh3/2+feNzr/Of7Y6Qfmmdf0YCAvgw==}
'@zen-browser/surfer@1.2.12':
resolution: {integrity: sha512-TfJrUc7P3pu0pf79UF3kL5fSjB5lVl5mqNnV+aOJWRsotvujlfX2tIVuIKTtCJvDeoZwvoAwlpogMZh3V5dcmQ==}
hasBin: true
ansi-regex@5.0.1:
@@ -786,7 +786,7 @@ snapshots:
'@types/node@17.0.45': {}
'@zen-browser/surfer@1.2.9':
'@zen-browser/surfer@1.2.12':
dependencies:
'@resvg/resvg-js': 1.4.0
async-icns: 1.0.2

View File

@@ -49,7 +49,6 @@ pref("network.http.max-persistent-connections-per-proxy", 48); // default=32
pref("network.websocket.max-connections", 400); // default=200
pref("network.ssl_tokens_cache_capacity", 32768);
/** MIXED CONTENT + CROSS-SITE ***/
pref("pdfjs.enableScripting", false);
pref("extensions.postDownloadThirdPartyPrompt", false);

View File

@@ -68,9 +68,14 @@ pref('zen.theme.toolbar-themed', true);
pref('zen.theme.pill-button', false);
pref('zen.view.compact', false);
pref('zen.view.compact.hide-toolbar', false);
pref('zen.view.sidebar-expanded', false);
pref('zen.view.sidebar-expanded.on-hover', false);
pref('zen.view.sidebar-expanded.show-button', true);
pref('zen.view.sidebar-expanded.max-width', 400);
pref('zen.view.sidebar-collapsed.hide-mute-button', true);
pref('zen.keyboard.shortcuts.enabled', true);
pref('zen.keyboard.shortcuts', ""); // Empty string means default shortcuts
pref('zen.keyboard.shortcuts.disable-firefox', false);
@@ -127,6 +132,10 @@ pref('dom.script_loader.bytecode_cache.strategy', 2);
// Extremly experimental features
pref("dom.webgpu.enabled", true);
// Font rendering
pref('gfx.font_rendering.cleartype_params.rendering_mode', 5);
pref('gfx.font_rendering.cleartype_params.gamma', 1750);
#include better-fox.js
// Betterfox overrides (Stay below the include directive)
@@ -150,5 +159,6 @@ pref("devtools.chrome.enabled", true);
pref("sidebar.revamp", false, locked);
pref("sidebar.verticalTabs", false, locked);
// Better scrollbar for Windows
// Better Windows theming
pref("widget.non-native-theme.scrollbar.style", 2);
pref("widget.non-native-theme.use-theme-accent", true);

View File

@@ -28,8 +28,20 @@ var gZenVerticalTabsManager = {
//Services.prefs.addObserver('zen.view.compact', this._updateEvent.bind(this));
Services.prefs.addObserver('zen.view.sidebar-expanded', this._updateEvent.bind(this));
Services.prefs.addObserver('zen.view.sidebar-expanded.max-width', this._updateEvent.bind(this));
Services.prefs.addObserver('zen.view.sidebar-expanded.on-hover', this._updateOnHoverVerticalTabs.bind(this));
this._updateMaxWidth();
this.initRightSideOrderContextMenu();
this._updateOnHoverVerticalTabs();
},
_updateOnHoverVerticalTabs() {
let onHover = Services.prefs.getBoolPref('zen.view.sidebar-expanded.on-hover');
let sidebar = document.getElementById('navigator-toolbox');
if (onHover) {
sidebar.setAttribute('zen-user-hover', 'true');
} else {
sidebar.removeAttribute('zen-user-hover');
}
},
initRightSideOrderContextMenu() {
@@ -89,11 +101,13 @@ var gZenVerticalTabsManager = {
toggleExpand() {
let expanded = !this.expanded;
Services.prefs.setBoolPref('zen.view.sidebar-expanded', expanded);
Services.prefs.setBoolPref('zen.view.sidebar-expanded.on-hover', false);
},
};
var gZenCompactModeManager = {
init() {
Services.prefs.addObserver('zen.view.compact', this._updateEvent.bind(this));
},
get prefefence() {
@@ -104,6 +118,10 @@ var gZenCompactModeManager = {
Services.prefs.setBoolPref('zen.view.compact', value);
},
_updateEvent() {
Services.prefs.setBoolPref('zen.view.sidebar-expanded.on-hover', false);
},
toggle() {
this.preference = !this.prefefence;
},

View File

@@ -23,11 +23,12 @@
z-index: 1;
height: 100%;
margin: 0;
padding: var(--zen-compact-toolbox-margin);
padding: var(--zen-compact-toolbox-margin) !important;
padding-top: calc(var(--zen-compact-toolbox-margin-single) - var(--zen-element-separation));
& #titlebar {
border: 1px solid var(--zen-colors-border);
min-width: calc(var(--zen-navigation-toolbar-min-width) + var(--zen-compact-toolbox-margin-single) * 4) !important;
background: var(--zen-colors-tertiary) !important;
padding: 0 5px;
border-radius: var(--zen-panel-radius);

View File

@@ -73,10 +73,7 @@
display: none;
}
#TabsToolbar .toolbarbutton-1:hover > :is(.toolbarbutton-icon, .toolbarbutton-badge-stack),
#TabsToolbar .toolbarbutton-1[open="true"] > :is(.toolbarbutton-icon, .toolbarbutton-badge-stack),
.zen-sidebar-action-button:hover,
.zen-sidebar-action-button[open="true"] {
.zen-sidebar-action-button:hover {
background: var(--toolbarbutton-hover-background) !important;
}
@@ -215,7 +212,7 @@
@media (-moz-bool-pref: "zen.view.sidebar-expanded.show-button") {
#zen-expand-sidebar-button {
display: block;
display: flex;
}
}

View File

@@ -31,6 +31,7 @@
#TabsToolbar-customization-target {
flex-direction: column;
max-width: 100%;
}
:root[customizing] .customization-target:not(#widget-overflow-fixed-list) {
@@ -235,14 +236,14 @@
display: none; /* TODO: fix this */
}
@media not (-moz-bool-pref: "zen.view.sidebar-expanded") {
#navigator-toolbox {
width: fit-content !important;
@media (-moz-bool-pref: "zen.view.sidebar-collapsed.hide-mute-button") and (not (-moz-bool-pref: "zen.view.sidebar-expanded")) {
.tab-icon-overlay:is([soundplaying], [muted]):not([selected]) {
display: none;
}
}
@media (-moz-bool-pref: "zen.view.sidebar-expanded") {
#navigator-toolbox {
#navigator-toolbox:is([zen-user-hover="true"]:hover, :not([zen-user-hover="true"])) {
--zen-navigation-toolbar-min-width: 155px;
min-width: var(--zen-navigation-toolbar-min-width) !important;
align-items: start;
@@ -250,110 +251,121 @@
width: 170px;
border: none;
padding-left: 2px;
}
.tab-label-container {
display: block;
}
#titlebar,
#TabsToolbar,
#TabsToolbar .toolbar-items {
width: 100%;
align-items: flex-start;
}
#TabsToolbar > .toolbar-items toolbarbutton:not(#zen-workspaces-button) {
width: 100% !important;
border-radius: 8px;
}
#TabsToolbar > .toolbar-items toolbarbutton:not(#zen-workspaces-button):hover {
background: var(--button-hover-bgcolor);
}
#TabsToolbar > .toolbar-items toolbarbutton:not(#zen-workspaces-button) .toolbarbutton-text,
#TabsToolbar > .toolbar-items toolbarbutton:not(#zen-workspaces-button) .toolbarbutton-icon,
#TabsToolbar > .toolbar-items toolbarbutton:not(#zen-workspaces-button) .toolbarbutton-badge-stack {
background: transparent !important;
}
#tabbrowser-arrowscrollbox-periphery > toolbarbutton {
display: flex;
justify-content: center;
align-items: center;
}
.tabbrowser-tab {
max-width: unset !important;
&:not([pinned]) {
width: 100%;
&:hover .tab-close-button {
display: block !important;
}
& .tab-content {
position: relative;
& .tab-label-container {
display: block;
}
& #titlebar,
& #TabsToolbar,
& #TabsToolbar .toolbar-items {
width: 100%;
align-items: flex-start;
}
& #TabsToolbar > .toolbar-items toolbarbutton:not(#zen-workspaces-button) {
width: 100% !important;
border-radius: 8px;
}
& #TabsToolbar > .toolbar-items toolbarbutton:not(#zen-workspaces-button):hover {
background: var(--button-hover-bgcolor);
}
& #TabsToolbar > .toolbar-items toolbarbutton:not(#zen-workspaces-button) .toolbarbutton-text,
& #TabsToolbar > .toolbar-items toolbarbutton:not(#zen-workspaces-button) .toolbarbutton-icon,
& #TabsToolbar > .toolbar-items toolbarbutton:not(#zen-workspaces-button) .toolbarbutton-badge-stack {
background: transparent !important;
}
& #tabbrowser-arrowscrollbox-periphery > toolbarbutton {
display: flex;
justify-content: center;
align-items: center;
}
& .tabbrowser-tab {
max-width: unset !important;
&:not([pinned]) {
width: 100%;
}
& .tab-stack {
justify-content: start;
padding: 10px;
width: 100% !important;
}
& .tab-label-container {
&:hover .tab-close-button {
display: block !important;
}
#tabbrowser-tabs:not([secondarytext-unsupported]) & {
display: flex;
align-items: center;
padding-left: 10px;
& .tab-content {
position: relative;
width: 100%;
}
& .tab-stack {
justify-content: start;
padding: 10px;
width: 100% !important;
}
& .tab-label-container {
#tabbrowser-tabs:not([secondarytext-unsupported]) & {
display: flex;
align-items: center;
padding-left: 10px;
}
}
}
&:active,
.zen-sidebar-panel-button:active {
transform: scale(0.96) !important;
}
&[pinned] {
margin: 0 !important;
}
}
&:active,
.zen-sidebar-panel-button:active {
transform: scale(0.96) !important;
& #tabbrowser-arrowscrollbox::part(scrollbox) {
/* We have the pinned tabs on the top, next to each other,
* and the rest of the tabs are below them. */
display: grid;
grid-template-columns: repeat(auto-fill, minmax(var(--tab-min-height), 1fr));
padding: calc(var(--zen-tabbrowser-padding) / 2);
}
&[pinned] {
margin: 0 !important;
& .tabbrowser-tab:not([pinned]),
& #tabbrowser-arrowscrollbox-periphery {
grid-column: 1 / -1;
}
& .tabbrowser-tab[pinned] {
grid-column: span 1;
min-width: 100%;
}
& #zen-sidebar-icons-wrapper {
width: -moz-available;
display: grid;
grid-template-columns: repeat(auto-fill, minmax(37px, 1fr));
transition: .1s;
}
& #zen-sidebar-icons-wrapper::before {
width: 100%;
}
}
#tabbrowser-arrowscrollbox::part(scrollbox) {
/* We have the pinned tabs on the top, next to each other,
* and the rest of the tabs are below them. */
display: grid;
grid-template-columns: repeat(auto-fill, minmax(var(--tab-min-height), 1fr));
padding: calc(var(--zen-tabbrowser-padding) / 2);
}
.tabbrowser-tab:not([pinned]),
#tabbrowser-arrowscrollbox-periphery {
grid-column: 1 / -1;
}
.tabbrowser-tab[pinned] {
grid-column: span 1;
min-width: 100%;
}
#zen-sidebar-icons-wrapper {
width: -moz-available;
display: grid;
grid-template-columns: repeat(auto-fill, minmax(37px, 1fr));
transition: .1s;
}
#zen-sidebar-icons-wrapper::before {
width: 100%;
}
}
@media not (-moz-bool-pref: "zen.view.sidebar-expanded") {
#navigator-toolbox {
width: fit-content !important;
}
}
#navigator-toolbox[zen-user-hover="true"] {
width: fit-content !important;
}
/* Display the vertical tabs on the right side */
@media (-moz-bool-pref: "zen.tabs.vertical.right-side") and (not (-moz-bool-pref: "zen.view.compact")) {
#navigator-toolbox {
@@ -361,22 +373,99 @@
padding-left: 0;
}
@media (-moz-bool-pref: "zen.view.sidebar-expanded") {
#navigator-toolbox {
padding-right: 3px !important;
}
}
#zen-sidebar-splitter {
order: 3;
}
#tabbrowser-tabbox {
padding-left: 10px;
padding-left: var(--zen-element-separation);
}
#tabbrowser-tabpanels .browserSidebarContainer {
margin-right: 0 !important;
}
}
@media (-moz-bool-pref: "zen.view.sidebar-expanded.on-hover") and (not (-moz-bool-pref: "zen.view.compact")) {
#zen-sidebar-splitter {
display: none !important;
}
#navigator-toolbox {
z-index: 1;
}
#TabsToolbar {
--hovered-verticaltab-width: 20em;
transition: 200ms, margin 200ms, border-color 0 ease-in-out !important;
z-index: 1;
background-repeat: no-repeat !important;
background-position: center center !important;
background-size: cover !important;
border-top: 1px solid transparent;
border-right: 1px solid transparent;
height: 100%;
border-top-right-radius: var(--zen-border-radius);
transform: translateY(-1px);
}
#TabsToolbar:not(:hover) #tabbrowser-tabs[closebuttons="activetab"] .tabbrowser-tab .tab-content[class] > .tab-close-button[class] {
display: none !important;
visibility: hidden !important;
}
#TabsToolbar-customization-target:hover > .toolbarbutton-1 > .toolbarbutton-text {
transition-delay: 0.2s !important;
}
#TabsToolbar-customization-target:not(:hover) > #tabbrowser-tabs > #tabbrowser-arrowscrollbox > .tabbrowser-tab > .tab-stack > .tab-content > .tab-label-container {
opacity: 0;
visibility: collapse;
transition: opacity 370ms,
visibility 370ms,
width 370ms ease-in-out !important;
}
#TabsToolbar-customization-target:not(:hover) > .toolbarbutton-1 > .toolbarbutton-text {
opacity: 0;
visibility: collapse;
transition: all 370ms !important;
}
#TabsToolbar-customization-target:hover > .toolbarbutton-1 > .toolbarbutton-text {
transition-delay: 0.2s !important;
}
#TabsToolbar:hover {
padding-right: .1rem !important;
}
#TabsToolbar:hover {
z-index: 100 !important;
width: 250px !important;
background-color: var(--zen-dialog-background);
border-top-color: var(--zen-colors-border);
border-right-color: var(--zen-colors-border);
position: absolute;
}
@media (-moz-bool-pref: "zen.tabs.vertical.right-side") {
#TabsToolbar {
border-right: 0;
border-left: 1px solid transparent;
border-top-right-radius: 0;
border-top-left-radius: var(--zen-border-radius);
right: 100%;
}
#TabsToolbar:hover {
border-left: 1px solid var(--zen-colors-border);
}
}
}
}

View File

@@ -28,7 +28,7 @@
--zen-colors-input-bg: color-mix(in srgb, var(--zen-primary-color) 10%, white 80%);
--zen-dialog-background: var(--zen-colors-tertiary);
--zen-urlbar-background: color-mix(in srgb, var(--zen-primary-color) 8%, #f1f1f1 92%);
--zen-urlbar-background: color-mix(in srgb, var(--zen-primary-color) 8%, #f7f7f7 92%);
--zen-secondary-btn-color: var(--zen-colors-primary-foreground);
@@ -111,7 +111,7 @@
--input-border-color: var(--zen-input-border-color) !important;
--zen-themed-toolbar-bg: var(--zen-colors-tertiary);
--toolbar-field-background-color: var(--zen-colors-input-bg);
--toolbar-field-background-color: var(--zen-colors-input-bg) !important;
--arrowpanel-background: var(--zen-dialog-background) !important;
}
@@ -131,7 +131,7 @@
--zen-colors-border: color-mix(in srgb, var(--zen-colors-secondary) 80%, black 20%);
--zen-dialog-background: color-mix(in srgb, var(--zen-primary-color) 10%, black 90%);
--zen-urlbar-background: color-mix(in srgb, var(--zen-primary-color) 8%, black 92%);
--zen-urlbar-background: color-mix(in srgb, var(--zen-primary-color) 8%, rgb(15, 15, 15) 92%);
--zen-browser-gradient-base: color-mix(in srgb, var(--zen-primary-color) 30%, black 70%);
}

View File

@@ -18,25 +18,27 @@
}
@media (-moz-bool-pref: "zen.view.sidebar-expanded") {
#zen-workspaces-button .zen-workspace-sidebar-name {
display: block;
}
#navigator-toolbox:is([zen-user-hover="true"]:hover, :not([zen-user-hover="true"])) {
& #zen-workspaces-button .zen-workspace-sidebar-name {
display: block;
}
#zen-workspaces-button .zen-workspace-sidebar-icon[no-icon="true"] {
display: none;
}
& #zen-workspaces-button .zen-workspace-sidebar-icon[no-icon="true"] {
display: none;
}
#zen-workspaces-button .zen-workspace-sidebar-icon[no-icon="true"] + .zen-workspace-sidebar-name {
margin-left: 0;
}
& #zen-workspaces-button .zen-workspace-sidebar-icon[no-icon="true"] + .zen-workspace-sidebar-name {
margin-left: 0;
}
#zen-workspaces-button {
overflow: hidden;
white-space: nowrap;
text-overflow: ellipsis;
display: flex;
padding: 2px 10px;
width: calc(100% - var(--zen-tabbrowser-padding) * 8) !important;
& #zen-workspaces-button {
overflow: hidden;
white-space: nowrap;
text-overflow: ellipsis;
display: flex;
padding: 2px 10px;
width: calc(100% - var(--zen-tabbrowser-padding) * 8) !important;
}
}
}

View File

@@ -15,6 +15,12 @@ const kZenColors = [
"#d4bbff",
];
const kZenOSToSmallName = {
WINNT: "windows",
Darwin: "macos",
Linux: "linux",
};
var gZenMarketplaceManager = {
init() {
this._buildThemesList();
@@ -70,12 +76,45 @@ var gZenMarketplaceManager = {
return this._themes;
},
get currentOperatingSystem() {
let os = Services.appinfo.OS;
return kZenOSToSmallName[os];
},
_getValidPreferences(preferences) {
for (let key in preferences) {
// [!][os:]key
let restOfPreferences = key;
let isNegation = false;
if (key.startsWith("!")) {
isNegation = true;
restOfPreferences = key.slice(1);
}
let os = "";
if (restOfPreferences.includes(":")) {
[os, restOfPreferences] = restOfPreferences.split(":");
}
if (isNegation && os === this.currentOperatingSystem) {
delete preferences[key];
} else if (os && os !== this.currentOperatingSystem) {
delete preferences[key];
} else {
// Change the key to contain only the rest of the preferences.
preferences[restOfPreferences] = preferences[key];
if (key !== restOfPreferences) {
delete preferences[key];
}
}
}
return preferences;
},
async _getThemePreferences(theme) {
const themePath = PathUtils.join(this.themesRootPath, theme.id, "preferences.json");
if (!(await IOUtils.exists(themePath)) || !theme.preferences) {
return {};
}
return await IOUtils.readJSON(themePath);
return this._getValidPreferences(await IOUtils.readJSON(themePath));
},
async _buildThemesList() {
@@ -144,10 +183,43 @@ var gZenLooksAndFeel = {
init() {
this._initializeColorPicker(this._getInitialAccentColor());
window.zenPageAccentColorChanged = this._handleAccentColorChange.bind(this);
this._initializeTabbarExpandForm();
gZenThemeBuilder.init();
gZenMarketplaceManager.init();
},
_initializeTabbarExpandForm() {
const form = document.getElementById("zen-expand-tabbar-strat");
const radios = form.querySelectorAll("input[type=radio]");
const onHoverPref = "zen.view.sidebar-expanded.on-hover";
const defaultExpandPref = "zen.view.sidebar-expanded";
if (Services.prefs.getBoolPref(onHoverPref)) {
form.querySelector("input[value=\"hover\"]").checked = true;
} else if (Services.prefs.getBoolPref(defaultExpandPref)) {
form.querySelector("input[value=\"expand\"]").checked = true;
} else {
form.querySelector("input[value=\"none\"]").checked = true;
}
for (let radio of radios) {
radio.addEventListener("change", e => {
switch (e.target.value) {
case "expand":
Services.prefs.setBoolPref(onHoverPref, false);
Services.prefs.setBoolPref(defaultExpandPref, true);
break;
case "none":
Services.prefs.setBoolPref(onHoverPref, false);
Services.prefs.setBoolPref(defaultExpandPref, false);
break;
case "hover":
Services.prefs.setBoolPref(onHoverPref, true);
Services.prefs.setBoolPref(defaultExpandPref, true);
break;
}
});
}
},
_initializeColorPicker(accentColor) {
let elem = document.getElementById("zenLooksAndFeelColorOptions");
elem.innerHTML = "";

View File

@@ -96,9 +96,23 @@
<checkbox id="zenLooksAndFeelShowTabExpandButton"
data-l10n-id="zen-vertical-tabs-show-expand-button"
preference="zen.view.sidebar-expanded.show-button"/>
<checkbox id="zenLooksAndFeelExpandTabsByDefault"
data-l10n-id="zen-vertical-tabs-expand-tabs-by-default"
preference="zen.view.sidebar-expanded"/>
<label><html:h2 data-l10n-id="zen-vertical-tabs-expand-tabs-header"/></label>
<description class="description-deemphasized" data-l10n-id="zen-vertical-tabs-expand-tabs-description" />
<form xmlns="http://www.w3.org/1999/xhtml" id="zen-expand-tabbar-strat" autocomplete="off" class="indent">
<hbox>
<input type="radio" name="zen-expand-tabbar-value" value="expand" data-l10n-id="zen-vertical-tabs-expand-tabs-by-default" />
<span data-l10n-id="zen-vertical-tabs-expand-tabs-by-default" />
</hbox>
<hbox>
<input type="radio" name="zen-expand-tabbar-value" value="hover" data-l10n-id="zen-vertical-tabs-expand-tabs-on-hover" />
<span data-l10n-id="zen-vertical-tabs-expand-tabs-on-hover" />
</hbox>
<hbox>
<input type="radio" name="zen-expand-tabbar-value" value="none" data-l10n-id="zen-vertical-tabs-dont-expand-tabs-by-default" />
<span data-l10n-id="zen-vertical-tabs-dont-expand-tabs-by-default" />
</hbox>
</form>
</groupbox>
</html:template>

View File

@@ -1,5 +1,5 @@
diff --git a/browser/components/tabbrowser/content/tabs.js b/browser/components/tabbrowser/content/tabs.js
index e9aa0f03c26dc26e1a2e56d28fadb70e60c8e8ca..9c209752b01bd07a3f38452da4bc8efc7433466c 100644
index e9aa0f03c26dc26e1a2e56d28fadb70e60c8e8ca..f66f9c168ab560e41ea9d03c2d0727e4a5c15132 100644
--- a/browser/components/tabbrowser/content/tabs.js
+++ b/browser/components/tabbrowser/content/tabs.js
@@ -552,19 +552,36 @@
@@ -146,6 +146,15 @@ index e9aa0f03c26dc26e1a2e56d28fadb70e60c8e8ca..9c209752b01bd07a3f38452da4bc8efc
children.pop();
this._allTabs = children;
return children;
@@ -1386,7 +1430,7 @@
let tabsToReset = [];
for (let i = numPinned; i < tabs.length; i++) {
let tab = tabs[i];
- tab.style.setProperty("max-width", aTabWidth, "important");
+ //tab.style.setProperty("max-width", aTabWidth, "important");
if (!isEndTab) {
// keep tabs the same width
tab.style.transition = "none";
@@ -1476,11 +1520,11 @@
for (let i = numPinned - 1; i >= 0; i--) {
let tab = tabs[i];

View File

@@ -18,7 +18,6 @@ ChromeUtils.defineModuleGetter(
Services.scriptloader.loadSubScript("chrome://browser/content/ZenUIManager.mjs");
const kWelcomeURL = 'https://www.zen-browser.app/welcome';
const kWelcomeSeenPref = 'zen.welcomeScreen.seen'
// =============================================================================
@@ -288,19 +287,12 @@ class Pages {
Services.prefs.setBoolPref(kWelcomeSeenPref, true)
close();
this._openWelcomePage();
return
}
this._displayCurrentPage()
}
_openWelcomePage() {
gZenUIManager.openAndChangeToTab(kWelcomeURL, {
inBackground: true,
});
}
_displayCurrentPage() {
let progress = document.getElementById('circular-progress');
progress.style.setProperty('--progress', ((this.currentPage + 1) / this.pages.length) * 100);

View File

@@ -1,5 +1,5 @@
pane-zen-looks-title = Look And Feel
pane-zen-looks-title = Look and Feel
category-zen-looks =
.tooltiptext = { pane-zen-looks-title }
@@ -46,16 +46,18 @@ zen-settings-workspaces-enabled =
pane-zen-theme-title = Theme Settings
zen-look-and-feel-urlbar-header = Awesome Bar Settings
zen-look-and-feel-urlbar-description = Customize the look and feel of the Awesome Bar
zen-vertical-tabs-title = Sidebar and tabs layout
zen-vertical-tabs-header = Vertical Tabs
zen-vertical-tabs-description = Manage your tabs in a vertical layout
zen-vertical-tabs-show-expand-button =
.label = Show Expand Button
zen-vertical-tabs-expand-tabs-by-default =
.label = Expand Tabs by Default
zen-vertical-tabs-expand-tabs-by-default = Expand Tabs by Default
zen-vertical-tabs-dont-expand-tabs-by-default = Don't Expand Tabs by Default
zen-vertical-tabs-expand-tabs-on-hover = Expand Tabs on Hover (Wont work on compact mode)
zen-vertical-tabs-expand-tabs-header = How to expand tabs
zen-vertical-tabs-expand-tabs-description = Choose how to expand tabs in the sidebar
zen-theme-marketplace-header = Theme Store
zen-theme-marketplace-description = Find and install themes from the store.

View File

@@ -17,6 +17,10 @@
margin: auto;
}
description {
margin-top: 0 !important;
}
groupbox {
background: light-dark(white, color-mix(in srgb, var(--zen-primary-color) 10%, #1b1b1b 90%));
padding-inline: unset !important;
@@ -132,6 +136,15 @@ groupbox h2 {
/* Look and feel */
#zen-expand-tabbar-strat {
display: flex;
flex-direction: column;
}
#zen-expand-tabbar-strat > hbox {
margin-top: 10px;
}
#category-zen-looks > .category-icon {
list-style-image: url("chrome://browser/skin/customize.svg");
}

View File

@@ -3,6 +3,4 @@
- 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/.
-->
<svg width="16" height="16" xmlns="http://www.w3.org/2000/svg" fill="context-fill" fill-opacity="context-fill-opacity">
<path d="M10.39 0C8.948.788 7.987 2.025 7.767 3.66c-1.017.162-1.768.781-1.768.781s.72-.44 1.736-.511a4.04 4.04 0 0 1 3.789 2.034s-.758-.62-1.928-.468c1.315.68 1.872 2.002 1.701 3.369-.17 1.367-1.183 2.435-2.354 2.723-1.171.287-2.333.099-3.229-.61-.896-.708-1.251-1.533-1.305-2.254.213-.533.541-.812 1.1-1.092.558-.279 1.422-.283 1.572-.283s.8-.507.95-.894c-.726-.363-1.292-.65-1.696-.934-.404-.283-.492-.534-1.012-.898-.307-1.006-.021-1.955-.021-1.955s-1.043.437-1.93 1.49c0 0-.342-.338-.28-2.006-.427.155-1.366 1.004-1.947 1.92a7.277 7.277 0 0 0-.798 1.723A8.296 8.296 0 0 0-.003 8a8 8 0 0 0 16 0c0-2.256-.93-4.252-2.188-5.002 0 0 .542.932.813 2.43-.4-1.04-1.235-2.166-1.877-2.844-.643-.678-2.068-1.88-2.357-2.584z"/>
</svg>
<svg id="a" xmlns="http://www.w3.org/2000/svg" width="16" height="16" viewBox="0 0 16 16" fill="context-fill" fill-opacity="context-fill-opacity"><path d="M14.7498,13.0913c-.0154.9253-.7896,1.6587-1.715,1.6587h-6.956c-.2705,0-.4541-.275-.3505-.5248l.0024-.0057c.4574-1.1044,1.1996-2.0362,2.1473-2.7161.1179-.0846.2601-.1284.4052-.1284h4.7793c.9416,0,1.703.7711,1.6873,1.7163Z"/><path d="M9.9212,1.25c.2705,0,.4541.275.3505.5248l-.0024.0057c-.4574,1.1044-1.1996,2.0362-2.1473,2.7161-.1179.0846-.2601.1284-.4052.1284H2.9653c-.9254,0-1.6996-.7334-1.715-1.6587-.0158-.9452.7457-1.7163,1.6873-1.7163h6.9837Z"/><path d="M2.9372,14.75c-.2152,0-.4339-.0414-.6451-.1289-.861-.3566-1.2699-1.3437-.9132-2.2047.5485-1.3241,1.3346-2.5112,2.3367-3.5283,1.0381-1.0537,2.2623-1.877,3.6387-2.4471,1.8919-.7837,3.3654-2.2571,4.149-4.149.3566-.861,1.3437-1.2698,2.2047-.9132.861.3566,1.2699,1.3437.9132,2.2047-.5485,1.3241-1.3346,2.5112-2.3367,3.5283-1.0381,1.0537-2.2623,1.877-3.6387,2.4471-1.8919.7837-3.3654,2.2571-4.149,4.149-.2691.6498-.8975,1.0421-1.5596,1.0421Z"/></svg>

Before

Width:  |  Height:  |  Size: 1.0 KiB

After

Width:  |  Height:  |  Size: 1.2 KiB

View File

@@ -27,7 +27,7 @@
"brandShortName": "Zen Browser",
"brandFullName": "Zen Browser",
"release": {
"displayVersion": "1.0.0-a.23",
"displayVersion": "1.0.0-a.24",
"github": {
"repo": "zen-browser/desktop"
},