Compare commits
9 Commits
zen-settin
...
1.10b
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
dea4818128 | ||
|
|
2609248564 | ||
|
|
5749879c1c | ||
|
|
1f3b3f15ab | ||
|
|
09c0f5143d | ||
|
|
025f994c62 | ||
|
|
ad04961d19 | ||
|
|
b5c5bd5980 | ||
|
|
bfe83dd653 |
2
.github/workflows/build.yml
vendored
2
.github/workflows/build.yml
vendored
@@ -517,6 +517,8 @@ jobs:
|
||||
repository: ./updates-server
|
||||
|
||||
- name: Generate Release Notes
|
||||
env:
|
||||
RELEASE_BRANCH: ${{ inputs.update_branch }}
|
||||
run: bash .github/workflows/src/generate_release_notes.sh
|
||||
|
||||
# If we are on Twilight, we want to just update the Twilight tag's release
|
||||
|
||||
@@ -28,7 +28,7 @@
|
||||
|
||||
## 🖥️ Compatibility
|
||||
|
||||
Zen is currently built using Firefox version `136.0.1`! 🚀
|
||||
Zen is currently built using Firefox version `136.0.2`! 🚀
|
||||
|
||||
- [`Zen Twilight`](https://zen-browser.app/download?twilight) - Is currently built using Firefox version `RC 136.0`!
|
||||
- Check out the latest [release notes](https://zen-browser.app/release-notes)!
|
||||
|
||||
@@ -1 +1 @@
|
||||
6ad0ab3c43a6208d8bcd997b40e802fccd48ba0a
|
||||
6013afe489c3d5e19c5f0d0f6c3f94b91f5bd7d1
|
||||
2
l10n
2
l10n
Submodule l10n updated: c5a36ae64f...7c14b58a28
@@ -64,6 +64,12 @@ def update_l10n_last_commit_hash():
|
||||
if not os.path.exists("firefox-cache"):
|
||||
os.mkdir("firefox-cache")
|
||||
os.system("cat l10n-temp/.git/refs/heads/main > firefox-cache/l10n-last-commit-hash")
|
||||
# Remove new line character
|
||||
data = ""
|
||||
with open("firefox-cache/l10n-last-commit-hash", "r") as f:
|
||||
data = f.read()
|
||||
with open("firefox-cache/l10n-last-commit-hash", "w") as f:
|
||||
f.write(data.strip())
|
||||
except KeyboardInterrupt:
|
||||
print("Exiting...")
|
||||
shutil.rmtree("l10n-temp")
|
||||
|
||||
@@ -250,7 +250,7 @@ var gZenUIManager = {
|
||||
const toast = this._createToastElement(messageId, options);
|
||||
this._toastContainer.removeAttribute('hidden');
|
||||
this._toastContainer.appendChild(toast);
|
||||
await this.motion.animate(toast, { opacity: [0, 1], scale: [0.8, 1] }, { type: 'spring', bounce: 0.5, duration: 0.5 });
|
||||
await this.motion.animate(toast, { opacity: [0, 1], scale: [0.8, 1] }, { type: 'spring', bounce: 0.5, duration: 0.7 });
|
||||
await new Promise((resolve) => setTimeout(resolve, 3000));
|
||||
await this.motion.animate(toast, { opacity: [1, 0], scale: [1, 0.9] }, { duration: 0.2, bounce: 0 });
|
||||
const toastHeight = toast.getBoundingClientRect().height;
|
||||
|
||||
@@ -360,9 +360,14 @@ menuitem {
|
||||
& .zen-toast {
|
||||
padding: 0.9rem 0.8rem;
|
||||
border-radius: 12px;
|
||||
background: linear-gradient(170deg, light-dark(rgb(187, 187, 187), rgb(240, 240, 240)) -40%, var(--zen-primary-color) 140%);
|
||||
background: linear-gradient(
|
||||
170deg,
|
||||
var(--zen-primary-color) -40%,
|
||||
color-mix(in srgb, var(--zen-primary-color) 85%, #0f0f0f 15%)
|
||||
);
|
||||
color: var(--button-primary-color);
|
||||
box-shadow: 0 0 16px 3px rgba(0, 0, 0, 0.1);
|
||||
box-shadow: 0 0 14px 3px rgba(0, 0, 0, 0.05);
|
||||
border: 1px solid rgba(0, 0, 0, 0.1);
|
||||
display: flex;
|
||||
font-weight: 500;
|
||||
gap: 5px;
|
||||
|
||||
@@ -269,7 +269,7 @@
|
||||
}
|
||||
|
||||
#tabbrowser-tabs:not([movingtab]) & .tab-content > image:active {
|
||||
scale: var(--zen-active-tab-scale);
|
||||
scale: 0.92;
|
||||
}
|
||||
|
||||
& .tab-icon-image {
|
||||
|
||||
@@ -428,7 +428,10 @@ class ZenMediaController {
|
||||
}
|
||||
|
||||
onMediaFocus() {
|
||||
this._currentMediaController?.focus();
|
||||
if (!this._currentBrowser) return;
|
||||
const sidebarId = this._currentBrowser.getAttribute('zen-sidebar-id');
|
||||
if (sidebarId) gZenBrowserManagerSidebar.open(sidebarId);
|
||||
else this._currentMediaController?.focus();
|
||||
}
|
||||
|
||||
onMediaMute() {
|
||||
|
||||
@@ -510,6 +510,10 @@
|
||||
case 'unload-switch':
|
||||
case 'reset-switch':
|
||||
case 'switch':
|
||||
let { permitUnload } = selectedTab.linkedBrowser?.permitUnload();
|
||||
if (!permitUnload) {
|
||||
return;
|
||||
}
|
||||
this._handleTabSwitch(selectedTab);
|
||||
if (behavior.includes('reset')) {
|
||||
this._resetTabToStoredState(selectedTab);
|
||||
@@ -520,8 +524,7 @@
|
||||
}
|
||||
// Do not unload about:* pages
|
||||
if (!selectedTab.linkedBrowser?.currentURI.spec.startsWith('about:')) {
|
||||
gBrowser.explicitUnloadTabs([selectedTab]);
|
||||
selectedTab.removeAttribute('linkedpanel');
|
||||
gZenTabUnloader.explicitUnloadTabs([selectedTab], { permitUnload });
|
||||
}
|
||||
}
|
||||
break;
|
||||
|
||||
@@ -280,8 +280,10 @@ class ZenBrowserManagerSidebar extends ZenDOMOperatedFeature {
|
||||
this.close();
|
||||
}
|
||||
|
||||
open() {
|
||||
open(id = null) {
|
||||
let sidebar = document.getElementById('zen-sidebar-web-panel');
|
||||
if (id) this._currentPanel = id;
|
||||
|
||||
sidebar.removeAttribute('hidden');
|
||||
this.update();
|
||||
}
|
||||
|
||||
@@ -235,9 +235,9 @@
|
||||
this.explicitUnloadTabs(tabs);
|
||||
}
|
||||
|
||||
explicitUnloadTabs(tabs) {
|
||||
explicitUnloadTabs(tabs, extraArgs = {}) {
|
||||
for (let i = 0; i < tabs.length; i++) {
|
||||
if (this.canUnloadTab(tabs[i], Date.now(), this.intervalUnloader.excludedUrls, true)) {
|
||||
if (this.canUnloadTab(tabs[i], Date.now(), this.intervalUnloader.excludedUrls, true, extraArgs)) {
|
||||
this.unload(tabs[i]);
|
||||
}
|
||||
}
|
||||
@@ -259,7 +259,7 @@
|
||||
}
|
||||
}
|
||||
|
||||
canUnloadTab(tab, currentTimestamp, excludedUrls, ignoreTimestamp = false) {
|
||||
canUnloadTab(tab, currentTimestamp, excludedUrls, ignoreTimestamp = false, extraArgs = {}) {
|
||||
if (
|
||||
(tab.pinned && !ignoreTimestamp) ||
|
||||
tab.selected ||
|
||||
@@ -271,6 +271,9 @@
|
||||
tab.attention ||
|
||||
tab.hasAttribute('glance-id') ||
|
||||
tab.linkedBrowser?.zenModeActive ||
|
||||
(typeof extraArgs.permitUnload === 'undefined'
|
||||
? !tab.linkedBrowser?.permitUnload()?.permitUnload
|
||||
: !extraArgs.permitUnload) ||
|
||||
(tab.pictureinpicture && !ignoreTimestamp) ||
|
||||
(tab.soundPlaying && !ignoreTimestamp) ||
|
||||
(tab.zenIgnoreUnload && !ignoreTimestamp) ||
|
||||
|
||||
@@ -52,13 +52,6 @@
|
||||
}
|
||||
}
|
||||
|
||||
function openWelcomeTab() {
|
||||
const tab = window.gBrowser.addTrustedTab('https://zen-browser.app/welcome', {
|
||||
inBackground: true,
|
||||
});
|
||||
gBrowser.selectedTab = tab;
|
||||
}
|
||||
|
||||
class ZenWelcomePages {
|
||||
constructor(pages) {
|
||||
this._currentPage = -1;
|
||||
@@ -410,7 +403,6 @@
|
||||
_tabsToPinEssentials.push(createdTab);
|
||||
}
|
||||
openInitialPinTab();
|
||||
openWelcomeTab();
|
||||
},
|
||||
},
|
||||
{
|
||||
|
||||
@@ -5,8 +5,8 @@
|
||||
"binaryName": "zen",
|
||||
"version": {
|
||||
"product": "firefox",
|
||||
"version": "136.0.1",
|
||||
"candidate": "136.0.1"
|
||||
"version": "136.0.2",
|
||||
"candidate": "136.0.2"
|
||||
},
|
||||
"buildOptions": {
|
||||
"generateBranding": true
|
||||
@@ -53,4 +53,4 @@
|
||||
"licenseType": "MPL-2.0"
|
||||
},
|
||||
"updateHostname": "updates.zen-browser.app"
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user