mirror of
https://github.com/zen-browser/desktop.git
synced 2026-08-14 02:34:31 +00:00
Merge branch 'dev' into boosts
This commit is contained in:
18
.github/workflows/build.yml
vendored
18
.github/workflows/build.yml
vendored
@@ -505,6 +505,20 @@ jobs:
|
||||
run: |
|
||||
git clone https://github.com/zen-browser/windows-binaries.git .github/workflows/object --depth 1
|
||||
|
||||
- name: Download signmar-linux-x86_64 from artifacts
|
||||
uses: actions/download-artifact@v4
|
||||
with:
|
||||
name: signmar-linux-x86_64
|
||||
|
||||
- name: Sign MAR files
|
||||
env:
|
||||
SIGNMAR: ${{ github.workspace }}/signmar-linux-x86_64/signmar
|
||||
ZEN_MAR_SIGNING_PASSWORD: ${{ secrets.ZEN_MAR_SIGNING_PASSWORD }}
|
||||
ZEN_SIGNING_CERT_PEM_BASE64: ${{ secrets.ZEN_SIGNING_CERT_PEM_BASE64 }}
|
||||
ZEN_SIGNING_PRIVATE_KEY_PEM_BASE64: ${{ secrets.ZEN_SIGNING_PRIVATE_KEY_PEM_BASE64 }}
|
||||
run: |
|
||||
bash scripts/mar_sign.sh -s
|
||||
|
||||
- name: Copy update manifests
|
||||
env:
|
||||
RELEASE_BRANCH: ${{ inputs.update_branch }}
|
||||
@@ -551,8 +565,6 @@ jobs:
|
||||
./zen-x86_64.AppImage.zsync/*
|
||||
./zen-aarch64.AppImage/*
|
||||
./zen-aarch64.AppImage.zsync/*
|
||||
./zen.win-x86_64.zip/*
|
||||
./zen.win-arm64.zip/*
|
||||
./linux.mar/*
|
||||
./linux-aarch64.mar/*
|
||||
./windows.mar/*
|
||||
@@ -590,8 +602,6 @@ jobs:
|
||||
./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
|
||||
./.github/workflows/object/windows-x64-signed-arm64/zen.win-arm64.zip
|
||||
./linux.mar/*
|
||||
./linux-aarch64.mar/*
|
||||
./.github/workflows/object/windows-x64-signed-x86_64/windows.mar
|
||||
|
||||
2
.github/workflows/issue-metrics.yml
vendored
2
.github/workflows/issue-metrics.yml
vendored
@@ -42,7 +42,7 @@ jobs:
|
||||
echo "last_month_year=$previous_year" >> "$GITHUB_ENV"
|
||||
|
||||
- name: Run issue-metrics tool
|
||||
uses: github/issue-metrics@v2
|
||||
uses: github-community-projects/issue-metrics@v2
|
||||
env:
|
||||
GH_TOKEN: ${{ secrets.DEPLOY_KEY }}
|
||||
HIDE_AUTHOR: true
|
||||
|
||||
8
.github/workflows/linux-release-build.yml
vendored
8
.github/workflows/linux-release-build.yml
vendored
@@ -173,3 +173,11 @@ jobs:
|
||||
retention-days: 5
|
||||
name: linux_update_manifest_${{ matrix.arch }}
|
||||
path: ./dist/update
|
||||
|
||||
- name: Upload signmar
|
||||
if: ${{ matrix.arch == 'x86_64' }}
|
||||
uses: actions/upload-artifact@v4
|
||||
with:
|
||||
retention-days: 2
|
||||
name: signmar-linux-x86_64
|
||||
path: engine/obj-x86_64-pc-linux-gnu/dist/bin/signmar
|
||||
|
||||
1
.github/workflows/macos-release-build.yml
vendored
1
.github/workflows/macos-release-build.yml
vendored
@@ -128,7 +128,6 @@ jobs:
|
||||
# Always exist with 0, even if bootstrap fails
|
||||
./mach --no-interactive bootstrap --application-choice browser --exclude macos-sdk || true
|
||||
cd ..
|
||||
ls /Library/Developer/CommandLineTools/SDKs/MacOSX26.2.sdk
|
||||
|
||||
- name: Build language packs
|
||||
run: sh scripts/download-language-packs.sh
|
||||
|
||||
2
.github/workflows/src/release-build.sh
vendored
2
.github/workflows/src/release-build.sh
vendored
@@ -10,6 +10,8 @@ fi
|
||||
|
||||
. $HOME/.cargo/env
|
||||
|
||||
bash ./scripts/mar_sign.sh -i
|
||||
|
||||
ulimit -n 4096
|
||||
|
||||
if command -v Xvfb &> /dev/null; then
|
||||
|
||||
8
.github/workflows/sync-upstream.yml
vendored
8
.github/workflows/sync-upstream.yml
vendored
@@ -103,6 +103,10 @@ jobs:
|
||||
fi
|
||||
echo "version=$VERSION" >> $GITHUB_OUTPUT
|
||||
|
||||
- name: Import external patches
|
||||
if: steps.git-check.outputs.files_changed == 'true'
|
||||
run: python3 scripts/update_external_patches.py || true
|
||||
|
||||
- name: Check if patches got applied
|
||||
if: steps.git-check.outputs.files_changed == 'true'
|
||||
id: check-patches
|
||||
@@ -115,10 +119,6 @@ jobs:
|
||||
if: steps.git-check.outputs.files_changed == 'true'
|
||||
run: python3 scripts/import_external_tests.py || true
|
||||
|
||||
- name: Import external patches
|
||||
if: steps.git-check.outputs.files_changed == 'true'
|
||||
run: python3 scripts/update_external_patches.py || true
|
||||
|
||||
- name: Create pull request
|
||||
uses: peter-evans/create-pull-request@v7
|
||||
if: steps.git-check.outputs.files_changed == 'true'
|
||||
|
||||
9
.gitignore
vendored
9
.gitignore
vendored
@@ -25,3 +25,12 @@ locales/firefox-l10n/
|
||||
|
||||
!src/toolkit/themes/shared/design-system/dist/
|
||||
.DS_Store
|
||||
|
||||
mozconfig
|
||||
|
||||
build/signing/env/
|
||||
build/signing/nss_config/
|
||||
build/signing/cert.pem
|
||||
build/signing/private_key.pem
|
||||
build/signing/private_key.p12
|
||||
|
||||
|
||||
@@ -34,8 +34,8 @@ 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 `148.0.2`! 🚀
|
||||
- [`Twilight`](https://zen-browser.app/download?twilight) - Is currently built using Firefox version `RC 149.0`!
|
||||
- [`Release`](https://zen-browser.app/download) - Is currently built using Firefox version `149.0.2`! 🚀
|
||||
- [`Twilight`](https://zen-browser.app/download?twilight) - Is currently built using Firefox version `RC 149.0.2`!
|
||||
|
||||
### Contributing
|
||||
|
||||
|
||||
@@ -1 +1 @@
|
||||
c10d7dc50d4b596942cce48f8b023b831a27480a
|
||||
fc45ac45a16dd9312a3e678fdaef33aaa7e0e641
|
||||
BIN
build/signing/public_key.der
Normal file
BIN
build/signing/public_key.der
Normal file
Binary file not shown.
@@ -89,8 +89,6 @@ if test "$ZEN_RELEASE"; then
|
||||
ac_add_options --enable-replace-malloc
|
||||
fi
|
||||
|
||||
ac_add_options --enable-unverified-updates
|
||||
|
||||
ac_add_options --enable-jxl
|
||||
|
||||
ac_add_options --with-unsigned-addon-scopes=app,system
|
||||
|
||||
@@ -43,10 +43,6 @@ else
|
||||
fi
|
||||
fi
|
||||
|
||||
if test "$ZEN_RELEASE"; then
|
||||
ac_add_options --with-macos-sdk=/Library/Developer/CommandLineTools/SDKs/MacOSX26.2.sdk
|
||||
fi
|
||||
|
||||
# Keep using ld64 on PGO/LTO builds because of performance regressions when using lld.
|
||||
# Mozilla sets "MOZ_LD64_KNOWN_GOOD" to true when they do automated builds with PGO/LTO on macOS.
|
||||
# See https://searchfox.org/firefox-main/rev/e61d59b5c9a651fd7bf28043f87c0dc669833496/build/moz.configure/lto-pgo.configure#261
|
||||
|
||||
@@ -26,9 +26,6 @@ fi
|
||||
# This line should be removed once the detection is fixed.
|
||||
ac_add_options --without-ccache
|
||||
|
||||
ac_add_options --disable-maintenance-service
|
||||
ac_add_options --disable-bits-download
|
||||
|
||||
if test "$SURFER_COMPAT" = "x86_64"; then
|
||||
ac_add_options --target=x86_64-pc-windows-msvc
|
||||
ac_add_options --enable-eme=widevine,wmfcdm
|
||||
|
||||
@@ -6,9 +6,9 @@ zen-panel-ui-current-profile-text = الملف الشخصي الحالي
|
||||
unified-extensions-description = تستخدم الإضافات لجلب المزيد من الوظائف الإضافية إلى { -brand-short-name }.
|
||||
tab-context-zen-reset-pinned-tab =
|
||||
.label =
|
||||
{$isEssential ->
|
||||
[true] إعادة تعيين علامة التبويب الأساسية
|
||||
*[false] إعادة تعيين التبويب المثبت
|
||||
{ $isEssential ->
|
||||
[true] إعادة تعيين علامة التبويب الأساسية
|
||||
*[false] إعادة تعيين التبويب المثبت
|
||||
}
|
||||
.accesskey = ر
|
||||
tab-context-zen-add-essential =
|
||||
@@ -20,10 +20,11 @@ tab-context-zen-remove-essential =
|
||||
.accesskey = R
|
||||
tab-context-zen-replace-pinned-url-with-current =
|
||||
.label =
|
||||
{$isEssential ->
|
||||
{ $isEssential ->
|
||||
[true] استبدل الرابط الأساسي بـ
|
||||
*[false] استبدل الرابط المثبت بـ
|
||||
الحالي
|
||||
*[false]
|
||||
استبدل الرابط المثبت بـ
|
||||
الحالي
|
||||
}
|
||||
.accesskey = C
|
||||
tab-context-zen-edit-title =
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
|
||||
zen-menubar-toggle-pinned-tabs =
|
||||
.label =
|
||||
{$pinnedAreCollapsed ->
|
||||
{ $pinnedAreCollapsed ->
|
||||
[true] توسيع علامات التبويب المثبتة
|
||||
*[false] طي علامات التبويب المثبتة
|
||||
}
|
||||
|
||||
@@ -26,19 +26,19 @@ sidebar-zen-create-new =
|
||||
.label = إنشاء جديد...
|
||||
tabbrowser-unload-tab-button =
|
||||
.tooltiptext =
|
||||
{$tabCount ->
|
||||
{ $tabCount ->
|
||||
[one] تفريغ والتبديل إلى علامة التبويب
|
||||
*[other] تفريغ { $tabCount } علامات التبويب والتبديل إلى الأولى
|
||||
}
|
||||
tabbrowser-reset-pin-button =
|
||||
.tooltiptext =
|
||||
{$tabCount ->
|
||||
{ $tabCount ->
|
||||
[one] إعادة تعيين علامة التبويب وتثبيتها
|
||||
*[other] إعادة تعيين وتثبيت { $tabCount}
|
||||
*[other] إعادة تعيين وتثبيت { $tabCount }
|
||||
}
|
||||
zen-tab-sublabel =
|
||||
{$tabSubtitle ->
|
||||
{ $tabSubtitle ->
|
||||
[zen-default-pinned] العودة إلى الرابط المثبت
|
||||
[zen-default-pinned-cmd] فصل عن علامة التبويب المثبتة
|
||||
*[other] { $tabSubtitle}
|
||||
*[other] { $tabSubtitle }
|
||||
}
|
||||
|
||||
@@ -5,8 +5,8 @@
|
||||
tab-zen-split-tabs =
|
||||
.label =
|
||||
{ $tabCount ->
|
||||
[1] Split Tab (multiple selected tabs needed)
|
||||
*[other] Split { $tabCount } Tabs
|
||||
[1] Join Tab (multiple selected tabs needed)
|
||||
*[other] Join { $tabCount } Tabs
|
||||
}
|
||||
.accesskey = S
|
||||
zen-split-link =
|
||||
|
||||
@@ -5,8 +5,8 @@
|
||||
tab-zen-split-tabs =
|
||||
.label =
|
||||
{ $tabCount ->
|
||||
[1] Split Tab (multiple selected tabs needed)
|
||||
*[other] Split { $tabCount } Tabs
|
||||
[1] Join Tab (multiple selected tabs needed)
|
||||
*[other] Join { $tabCount } Tabs
|
||||
}
|
||||
.accesskey = S
|
||||
zen-split-link =
|
||||
|
||||
@@ -14,7 +14,7 @@ tab-context-zen-reset-pinned-tab =
|
||||
tab-context-zen-add-essential =
|
||||
.label = Afegeix als essencials
|
||||
.accesskey = E
|
||||
tab-context-zen-add-essential-badge = { $num } / { $max } espais ocupats
|
||||
tab-context-zen-add-essential-badge = { $num } / { $max }
|
||||
tab-context-zen-remove-essential =
|
||||
.label = Elimina dels essencials
|
||||
.accesskey = R
|
||||
|
||||
@@ -5,8 +5,9 @@
|
||||
tab-zen-split-tabs =
|
||||
.label =
|
||||
{ $tabCount ->
|
||||
[1] Pestanya dividida (calen diverses pestanyes seleccionades)
|
||||
*[other] Divideix { $tabCount } pestanyes
|
||||
[-1] Pestanya dividida
|
||||
[1] Uneix pestanyes (calen diverses pestanyes seleccionades)
|
||||
*[other] Uneix { $tabCount } pestanyes
|
||||
}
|
||||
.accesskey = S
|
||||
zen-split-link =
|
||||
|
||||
@@ -22,7 +22,7 @@ tab-context-zen-replace-pinned-url-with-current =
|
||||
.label =
|
||||
{ $isEssential ->
|
||||
[true] Amnewid URL Hanfodol gyda'r Cyfredol
|
||||
*[false] Amnewid URL wedi'i binio gyda'r Cyfredol
|
||||
*[false] Amnewid URL wedi'i binio gyda'r Cyfredol
|
||||
}
|
||||
.accesskey = P
|
||||
tab-context-zen-edit-title =
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
# 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/.
|
||||
|
||||
zen-panel-ui-workspaces-text = Gofodau Gwaith
|
||||
zen-panel-ui-workspaces-text = Gofodau
|
||||
zen-panel-ui-spaces-label =
|
||||
.label = Gofodau
|
||||
zen-panel-ui-workspaces-create =
|
||||
@@ -10,7 +10,7 @@ zen-panel-ui-workspaces-create =
|
||||
zen-panel-ui-folder-create =
|
||||
.label = Creu Ffolder
|
||||
zen-panel-ui-live-folder-create =
|
||||
.label = Live Folder
|
||||
.label = Ffolder Byw
|
||||
zen-panel-ui-new-empty-split =
|
||||
.label = Hollt Newydd
|
||||
zen-workspaces-panel-context-delete =
|
||||
@@ -25,7 +25,7 @@ zen-workspaces-panel-context-default-profile =
|
||||
zen-workspaces-panel-unload =
|
||||
.label = Dadlwytho Gofod
|
||||
zen-workspaces-panel-unload-others =
|
||||
.label = Unload All Other Spaces
|
||||
.label = Dadlwytho Pob Gofod Arall
|
||||
zen-workspaces-how-to-reorder-title = Sut i aildrefnu gofodau
|
||||
zen-workspaces-how-to-reorder-desc = Llusgwch yr eiconau gofod ar waelod y bar ochr i'w haildrefnu
|
||||
zen-workspaces-change-theme =
|
||||
|
||||
@@ -8,9 +8,9 @@ category-zen-looks =
|
||||
zen-warning-language = Das Ändern der Standardsprache könnte es Websites erleichtern, dich zu verfolgen.
|
||||
zen-vertical-tabs-layout-header = Browser-Layout
|
||||
zen-vertical-tabs-layout-description = Wähle das Layout, das am besten zu dir passt
|
||||
zen-layout-single-toolbar = Einzelne Symbolleiste
|
||||
zen-layout-multiple-toolbar = Mehrere Symbolleisten
|
||||
zen-layout-collapsed-toolbar = Eingeklappte Symbolleiste
|
||||
zen-layout-single-toolbar = Nur Seitenleiste
|
||||
zen-layout-multiple-toolbar = Seitenleiste und obere Symbolleiste
|
||||
zen-layout-collapsed-toolbar = Eingeklappte Seitenleiste
|
||||
sync-currently-syncing-workspaces = Arbeitsbereiche
|
||||
sync-engine-workspaces =
|
||||
.label = Arbeitsbereiche
|
||||
@@ -43,11 +43,11 @@ category-zen-workspaces =
|
||||
.tooltiptext = { pane-zen-tabs-title }
|
||||
pane-settings-workspaces-title = Arbeitsbereiche
|
||||
zen-tabs-select-recently-used-on-close =
|
||||
.label = When closing a tab, switch to the most recently used tab instead of the next tab
|
||||
.label = Beim Schließen eines Tabs zum zuletzt verwendeten Tab wechseln statt zum nächsten
|
||||
zen-tabs-close-on-back-with-no-history =
|
||||
.label = Tab schließen und zum Besitzer-Tab (oder dem zuletzt benutzten Tab) wechseln, wenn kein Tab-Verlauf vorhanden ist
|
||||
.label = Tab schließen und zum Besitzer-Tab (oder dem zuletzt verwendeten Tab) wechseln, wenn kein Verlauf vorhanden ist
|
||||
zen-settings-workspaces-sync-unpinned-tabs =
|
||||
.label = Sync only pinned tabs in workspaces
|
||||
.label = Nur angeheftete Tabs in Arbeitsbereichen synchronisieren
|
||||
zen-tabs-cycle-by-attribute =
|
||||
.label = Strg+Tab wechselt nur zwischen Essential- oder Arbeitsbereich-Tabs
|
||||
zen-tabs-cycle-ignore-pending-tabs =
|
||||
@@ -57,11 +57,11 @@ zen-look-and-feel-compact-toolbar-themed =
|
||||
.label = Theme-Hintergrund für kompakte Symbolleiste verwenden
|
||||
zen-workspace-continue-where-left-off =
|
||||
.label = Dort fortfahren, wo du aufgehört hast
|
||||
pane-zen-pinned-tab-manager-title = Angepinnte Tabs
|
||||
zen-pinned-tab-manager-header = Allgemeine Einstellungen für angepinnte Tabs
|
||||
zen-pinned-tab-manager-description = Zusätzliches Verhalten von angepinnten Tabs verwalten
|
||||
pane-zen-pinned-tab-manager-title = Angeheftete Tabs
|
||||
zen-pinned-tab-manager-header = Allgemeine Einstellungen für angeheftete Tabs
|
||||
zen-pinned-tab-manager-description = Zusätzliches Verhalten von angehefteten Tabs verwalten
|
||||
zen-pinned-tab-manager-restore-pinned-tabs-to-pinned-url =
|
||||
.label = Angepinnte Tabs beim Start auf ihre ursprünglich angepinnte URL zurücksetzen
|
||||
.label = Angeheftete Tabs beim Start auf ihre ursprüngliche URL zurücksetzen
|
||||
zen-pinned-tab-manager-container-specific-essentials-enabled =
|
||||
.label = Container-spezifische Essentials aktivieren
|
||||
zen-pinned-tab-manager-close-shortcut-behavior-label = Verhalten der Tastenkombination zum Schließen von Tabs
|
||||
@@ -83,17 +83,17 @@ zen-settings-workspaces-description = Mit Arbeitsbereichen kannst du mehrere Bro
|
||||
zen-settings-workspaces-enabled =
|
||||
.label = Arbeitsbereiche aktivieren (experimentell)
|
||||
zen-settings-workspaces-hide-default-container-indicator =
|
||||
.label = Container-Indikator in der Tab-Leiste ausblenden
|
||||
.label = Standard-Container-Indikator in der Tab-Leiste ausblenden
|
||||
zen-key-unsaved = Nicht gespeichertes Tastenkürzel! Bitte speichere es, indem du nach der Eingabe die „Escape“-Taste drückst.
|
||||
zen-key-conflict = Konflikt mit { $group } -> { $shortcut }
|
||||
pane-zen-theme-title = Design-Einstellungen
|
||||
zen-vertical-tabs-title = Seitenleiste und Tab-Layout
|
||||
zen-vertical-tabs-header = Vertikale Tabs
|
||||
zen-vertical-tabs-description = Verwalte die Ausrichtung der Tabs und andere Layout-Einstellungen
|
||||
zen-vertical-tabs-description = Verwalte deine Tabs in einem vertikalen Layout
|
||||
zen-vertical-tabs-show-expand-button =
|
||||
.label = Erweitern-Schaltfläche anzeigen
|
||||
zen-vertical-tabs-newtab-on-tab-list =
|
||||
.label = "Neuer Tab"-Button in der Tab-Liste anzeigen
|
||||
.label = „Neuer Tab“-Button in der Tab-Liste anzeigen
|
||||
zen-vertical-tabs-newtab-top-button-up =
|
||||
.label = Schaltfläche „Neuer Tab“ nach oben verschieben
|
||||
zen-vertical-tabs-expand-tabs-by-default = Tabs standardmäßig erweitern
|
||||
@@ -106,7 +106,7 @@ zen-theme-disable-all-enabled =
|
||||
.title = Alle Mods deaktivieren
|
||||
zen-theme-disable-all-disabled =
|
||||
.title = Alle Mods aktivieren
|
||||
zen-theme-marketplace-description = Finde und installiere Designs aus dem Store.
|
||||
zen-theme-marketplace-description = Finde und installiere Mods aus dem Store.
|
||||
zen-theme-marketplace-remove-button =
|
||||
.label = Design entfernen
|
||||
zen-theme-marketplace-check-for-updates-button =
|
||||
@@ -119,27 +119,27 @@ zen-theme-marketplace-import-success = Mods erfolgreich importiert
|
||||
zen-theme-marketplace-import-failure = Beim Importieren der Mods ist ein Fehler aufgetreten
|
||||
zen-theme-marketplace-export-success = Mods erfolgreich exportiert
|
||||
zen-theme-marketplace-export-failure = Beim Exportieren der Mods ist ein Fehler aufgetreten
|
||||
zen-theme-marketplace-updates-success = Design erfolgreich aktualisiert
|
||||
zen-theme-marketplace-updates-success = Mods erfolgreich aktualisiert
|
||||
zen-theme-marketplace-updates-failure = Es konnten keine Updates gefunden werden!
|
||||
zen-theme-marketplace-toggle-enabled-button =
|
||||
.title = Design deaktivieren
|
||||
zen-theme-marketplace-toggle-disabled-button =
|
||||
.title = Design aktivieren
|
||||
zen-theme-marketplace-remove-confirmation = Möchtest du dieses Mod wirklich entfernen?
|
||||
zen-theme-marketplace-remove-confirmation = Möchtest du diesen Mod wirklich entfernen?
|
||||
zen-theme-marketplace-close-modal = Schließen
|
||||
zen-theme-marketplace-theme-header-title =
|
||||
.title = CSS-Selektor: { $name }
|
||||
zen-theme-marketplace-dropdown-default-label =
|
||||
.label = Keine
|
||||
zen-theme-marketplace-input-default-placeholder =
|
||||
.placeholder = Gib etwas ein...
|
||||
.placeholder = Etwas eingeben...
|
||||
pane-zen-marketplace-title = Zen-Mods
|
||||
zen-themes-auto-update =
|
||||
.label = Installierte Mods beim Start automatisch aktualisieren
|
||||
zen-settings-workspaces-force-container-tabs-to-workspace =
|
||||
.label = Zum Arbeitsbereich wechseln, in dem Container als Standard gesetzt ist, wenn Container-Tabs geöffnet werden
|
||||
zen-theme-marketplace-link = Store besuchen
|
||||
zen-dark-theme-styles-header = Dunkles Design – Stile
|
||||
zen-dark-theme-styles-header = Dunkles Design
|
||||
zen-dark-theme-styles-description = Passe das dunkle Design nach deinen Wünschen an
|
||||
zen-dark-theme-styles-amoled = Nacht-Design
|
||||
zen-dark-theme-styles-default = Standardmäßiges dunkles Design
|
||||
@@ -149,7 +149,7 @@ zen-compact-mode-styles-top = Obere Leiste ausblenden
|
||||
zen-compact-mode-styles-both = Beides ausblenden
|
||||
zen-urlbar-title = Zen-Adressleiste
|
||||
zen-urlbar-header = Allgemeine Einstellungen für die Adressleiste
|
||||
zen-urlbar-description = Passen Sie die Adressleiste nach Ihren Wünschen an
|
||||
zen-urlbar-description = Passe die Adressleiste nach deinen Wünschen an
|
||||
zen-urlbar-behavior-label = Verhalten
|
||||
zen-urlbar-behavior-normal =
|
||||
.label = Normal
|
||||
@@ -162,7 +162,7 @@ category-zen-CKS =
|
||||
.tooltiptext = { pane-zen-CKS-title }
|
||||
pane-settings-CKS-title = { -brand-short-name }-Tastenkürzel
|
||||
category-zen-marketplace =
|
||||
.tooltiptext = Zen Mods
|
||||
.tooltiptext = Zen-Mods
|
||||
zen-settings-CKS-header = Passen Sie Ihre Tastenkürzel an
|
||||
zen-settings-CKS-description = Ändere die Standard-Tastenkürzel nach deinen Wünschen und verbessere dein Browser-Erlebnis
|
||||
zen-settings-CKS-disable-firefox =
|
||||
@@ -175,9 +175,9 @@ zenCKSOption-group-other = Sonstiges
|
||||
zenCKSOption-group-windowAndTabManagement = Fenster- und Tab-Verwaltung
|
||||
zenCKSOption-group-navigation = Navigation
|
||||
zenCKSOption-group-searchAndFind = Suchen und Finden
|
||||
zenCKSOption-group-pageOperations = Seitenoperationen
|
||||
zenCKSOption-group-historyAndBookmarks = Verlauf & Lesezeichen
|
||||
zenCKSOption-group-mediaAndDisplay = Medien & Anzeige
|
||||
zenCKSOption-group-pageOperations = Seitenaktionen
|
||||
zenCKSOption-group-historyAndBookmarks = Verlauf und Lesezeichen
|
||||
zenCKSOption-group-mediaAndDisplay = Medien und Anzeige
|
||||
zenCKSOption-group-zen-compact-mode = Kompaktmodus
|
||||
zenCKSOption-group-zen-workspace = Zen-Arbeitsbereiche
|
||||
zenCKSOption-group-zen-other = Andere Zen-Funktionen
|
||||
@@ -245,7 +245,7 @@ zen-find-shortcut = Auf Seite suchen
|
||||
zen-search-find-again-shortcut = Weitersuchen
|
||||
zen-search-find-again-shortcut-prev = Vorheriges suchen
|
||||
zen-search-find-again-shortcut-2 = Weitersuchen (Alt)
|
||||
zen-bookmark-this-page-shortcut = Diese Seite zu Lesezeichen hinzufügen
|
||||
zen-bookmark-this-page-shortcut = Diese Seite als Lesezeichen speichern
|
||||
zen-bookmark-show-library-shortcut = Lesezeichen-Bibliothek anzeigen
|
||||
zen-key-stop = Laden stoppen
|
||||
zen-full-zoom-reduce-shortcut = Herauszoomen
|
||||
@@ -256,7 +256,7 @@ zen-full-zoom-enlarge-shortcut-alt = Hineinzoomen (Alt)
|
||||
zen-full-zoom-enlarge-shortcut-alt2 = Hineinzoomen (Alt 2)
|
||||
zen-bidi-switch-direction-shortcut = Text-Richtung wechseln
|
||||
zen-private-browsing-shortcut = Privaten Modus öffnen
|
||||
zen-screenshot-shortcut = Screenshot machen
|
||||
zen-screenshot-shortcut = Bildschirmfoto erstellen
|
||||
zen-key-sanitize = Browser-Daten löschen
|
||||
zen-quit-app-shortcut = Anwendung beenden
|
||||
zen-key-wr-capture-cmd = WR-Aufnahme-Befehl
|
||||
@@ -268,7 +268,7 @@ zen-close-tab-shortcut = Tab schließen
|
||||
zen-compact-mode-shortcut-show-sidebar = Schwebende Seitenleiste umschalten
|
||||
zen-compact-mode-shortcut-show-toolbar = Schwebende Symbolleiste umschalten
|
||||
zen-compact-mode-shortcut-toggle = Kompaktmodus umschalten
|
||||
zen-glance-expand = Glance erweitern
|
||||
zen-glance-expand = Schnellansicht vergrößern
|
||||
zen-workspace-shortcut-switch-1 = Zu Arbeitsbereich 1 wechseln
|
||||
zen-workspace-shortcut-switch-2 = Zu Arbeitsbereich 2 wechseln
|
||||
zen-workspace-shortcut-switch-3 = Zu Arbeitsbereich 3 wechseln
|
||||
@@ -288,14 +288,14 @@ zen-split-view-shortcut-vertical = Vertikales Layout für geteilte Ansicht umsch
|
||||
zen-split-view-shortcut-horizontal = Horizontales Layout für geteilte Ansicht umschalten
|
||||
zen-split-view-shortcut-unsplit = Geteilte Ansicht schließen
|
||||
zen-new-empty-split-view-shortcut = Neue leere geteilte Ansicht
|
||||
zen-key-select-tab-1 = Tab #1 auswählen
|
||||
zen-key-select-tab-2 = Tab #2 auswählen
|
||||
zen-key-select-tab-3 = Tab #3 auswählen
|
||||
zen-key-select-tab-4 = Tab #4 auswählen
|
||||
zen-key-select-tab-5 = Tab #5 auswählen
|
||||
zen-key-select-tab-6 = Tab #6 auswählen
|
||||
zen-key-select-tab-7 = Tab #7 auswählen
|
||||
zen-key-select-tab-8 = Tab #8 auswählen
|
||||
zen-key-select-tab-1 = Tab 1 auswählen
|
||||
zen-key-select-tab-2 = Tab 2 auswählen
|
||||
zen-key-select-tab-3 = Tab 3 auswählen
|
||||
zen-key-select-tab-4 = Tab 4 auswählen
|
||||
zen-key-select-tab-5 = Tab 5 auswählen
|
||||
zen-key-select-tab-6 = Tab 6 auswählen
|
||||
zen-key-select-tab-7 = Tab 7 auswählen
|
||||
zen-key-select-tab-8 = Tab 8 auswählen
|
||||
zen-key-select-tab-last = Letzten Tab auswählen
|
||||
zen-key-show-all-tabs = Alle Tabs anzeigen
|
||||
zen-key-goto-history = Zum Verlauf gehen
|
||||
@@ -316,4 +316,4 @@ zen-devtools-toggle-storage-shortcut = Speicher umschalten
|
||||
zen-devtools-toggle-dom-shortcut = DOM umschalten
|
||||
zen-devtools-toggle-accessibility-shortcut = Barrierefreiheit umschalten
|
||||
zen-close-all-unpinned-tabs-shortcut = Alle nicht angehefteten Tabs schließen
|
||||
zen-new-unsynced-window-shortcut = New Unsynced Window
|
||||
zen-new-unsynced-window-shortcut = Neues leeres Fenster
|
||||
|
||||
@@ -20,4 +20,4 @@ zen-folders-unload-all-tooltip =
|
||||
.tooltiptext = Alle aktiven Tabs in diesem Ordner entladen
|
||||
zen-folders-unload-folder =
|
||||
.label = Alle Tabs entladen
|
||||
zen-folders-search-no-results = Keine Tabs gefunden
|
||||
zen-folders-search-no-results = Keine Tabs gefunden 🤔
|
||||
|
||||
@@ -7,8 +7,8 @@ unified-extensions-description = Mit Erweiterungen kannst du { -brand-short-name
|
||||
tab-context-zen-reset-pinned-tab =
|
||||
.label =
|
||||
{ $isEssential ->
|
||||
[true] Reset Essential Tab
|
||||
*[false] Reset Pinned Tab
|
||||
[true] Essential-Tab zurücksetzen
|
||||
*[false] Angehefteten Tab zurücksetzen
|
||||
}
|
||||
.accesskey = R
|
||||
tab-context-zen-add-essential =
|
||||
@@ -21,15 +21,15 @@ tab-context-zen-remove-essential =
|
||||
tab-context-zen-replace-pinned-url-with-current =
|
||||
.label =
|
||||
{ $isEssential ->
|
||||
[true] Replace Essential URL with Current
|
||||
*[false] Replace Pinned URL with Current
|
||||
[true] Essential-URL durch aktuelle ersetzen
|
||||
*[false] Angeheftete URL durch aktuelle ersetzen
|
||||
}
|
||||
.accesskey = C
|
||||
tab-context-zen-edit-title =
|
||||
.label = Titel ändern...
|
||||
tab-context-zen-edit-icon =
|
||||
.label = Symbol ändern...
|
||||
zen-themes-corrupted = Deine { -brand-short-name }-Mods-Datei ist beschädigt. Wir haben sie auf das Standard-Design zurückgesetzt.
|
||||
zen-themes-corrupted = Deine { -brand-short-name }-Mods-Datei ist beschädigt. Sie wurde auf das Standard-Design zurückgesetzt.
|
||||
zen-shortcuts-corrupted = Deine { -brand-short-name }-Tastenkombinationsdatei ist beschädigt. Sie wurde auf die Standard-Tastenkombinationen zurückgesetzt.
|
||||
# note: Do not translate the "<br/>" tags in the following string
|
||||
zen-new-urlbar-notification =
|
||||
@@ -41,7 +41,7 @@ pictureinpicture-minimize-btn =
|
||||
.tooltip = Minimieren
|
||||
zen-panel-ui-gradient-generator-custom-color = Eigene Farbe
|
||||
zen-copy-current-url-confirmation = URL kopiert!
|
||||
zen-copy-current-url-as-markdown-confirmation = Copied current URL as Markdown!
|
||||
zen-copy-current-url-as-markdown-confirmation = URL als Markdown kopiert!
|
||||
zen-general-cancel-label =
|
||||
.label = Abbrechen
|
||||
zen-general-confirm =
|
||||
@@ -69,8 +69,8 @@ zen-site-data-settings = Einstellungen
|
||||
zen-generic-manage = Verwalten
|
||||
zen-generic-more = Mehr
|
||||
zen-generic-next = Weiter
|
||||
zen-essentials-promo-label = Hinzufügen zu Essentials
|
||||
zen-essentials-promo-sublabel = Behalte deine Lieblings-Tabs nur einen Klick entfernt
|
||||
zen-essentials-promo-label = Zu Essentials hinzufügen
|
||||
zen-essentials-promo-sublabel = Deine Lieblings-Tabs, immer nur einen Klick entfernt
|
||||
# These labels will be used for the site data panel settings
|
||||
zen-site-data-setting-allow = Erlaubt
|
||||
zen-site-data-setting-block = Blockiert
|
||||
@@ -106,7 +106,7 @@ zen-site-data-setting-site-protection = Tracking-Schutz
|
||||
zen-site-data-panel-feature-callout-title = Hier findest du Add-ons, Berechtigungen und mehr
|
||||
zen-site-data-panel-feature-callout-subtitle = Klicke auf das Symbol, um Website-Einstellungen anzupassen, Sicherheitsinfos anzuzeigen, auf Erweiterungen zuzugreifen und häufige Aktionen auszuführen.
|
||||
zen-open-link-in-glance =
|
||||
.label = Link in Glance öffnen
|
||||
.label = Link in Schnellansicht öffnen
|
||||
.accesskey = G
|
||||
zen-sidebar-notification-updated-heading = Update abgeschlossen!
|
||||
|
||||
@@ -123,4 +123,4 @@ zen-window-sync-migration-dialog-message = Zen synchronisiert jetzt Fenster auf
|
||||
zen-window-sync-migration-dialog-learn-more = Mehr erfahren
|
||||
zen-window-sync-migration-dialog-accept = Verstanden
|
||||
zen-appmenu-new-blank-window =
|
||||
.label = New blank window
|
||||
.label = Neues leeres Fenster
|
||||
|
||||
@@ -5,13 +5,13 @@
|
||||
zen-menubar-toggle-pinned-tabs =
|
||||
.label =
|
||||
{ $pinnedAreCollapsed ->
|
||||
[true] Fixierte Tabs ausklappen
|
||||
*[false] Fixierte Tabs einklappen
|
||||
[true] Angeheftete Tabs ausklappen
|
||||
*[false] Angeheftete Tabs einklappen
|
||||
}
|
||||
zen-menubar-appearance =
|
||||
.label = Erscheinungsbild
|
||||
zen-menubar-appearance-description =
|
||||
.label = Webseiten werden nutzen:
|
||||
.label = Websites verwenden:
|
||||
zen-menubar-appearance-auto =
|
||||
.label = Automatisch
|
||||
zen-menubar-appearance-light =
|
||||
@@ -19,4 +19,4 @@ zen-menubar-appearance-light =
|
||||
zen-menubar-appearance-dark =
|
||||
.label = Dunkel
|
||||
zen-menubar-new-blank-window =
|
||||
.label = New Blank Window
|
||||
.label = Neues leeres Fenster
|
||||
|
||||
@@ -5,6 +5,7 @@
|
||||
tab-zen-split-tabs =
|
||||
.label =
|
||||
{ $tabCount ->
|
||||
[-1] Aufteilung aufheben
|
||||
[1] Tab aufteilen (wähle mehrere Tabs aus)
|
||||
*[other] { $tabCount } Tabs aufteilen
|
||||
}
|
||||
|
||||
@@ -27,7 +27,7 @@ sidebar-zen-create-new =
|
||||
tabbrowser-unload-tab-button =
|
||||
.tooltiptext =
|
||||
{ $tabCount ->
|
||||
[one] Tab entladen und öffnen
|
||||
[one] Tab entladen und wechseln
|
||||
*[other] { $tabCount } Tabs entladen und zum ersten wechseln
|
||||
}
|
||||
tabbrowser-reset-pin-button =
|
||||
@@ -38,7 +38,7 @@ tabbrowser-reset-pin-button =
|
||||
}
|
||||
zen-tab-sublabel =
|
||||
{ $tabSubtitle ->
|
||||
[zen-default-pinned] Back to pinned url
|
||||
[zen-default-pinned-cmd] Separate from pinned tab
|
||||
[zen-default-pinned] Zurück zur angehefteten URL
|
||||
[zen-default-pinned-cmd] Vom angehefteten Tab lösen
|
||||
*[other] { $tabSubtitle }
|
||||
}
|
||||
|
||||
@@ -17,7 +17,7 @@ zen-welcome-workspace-colors-title = Deine Arbeitsbereiche, deine Farben
|
||||
zen-welcome-workspace-colors-description = Personalisiere deinen Browser, indem du jedem Arbeitsbereich eine eigene Farbidentität gibst.
|
||||
zen-welcome-start-browsing-title =
|
||||
Alles bereit?<br/>
|
||||
Los geht’s!
|
||||
Los geht's!
|
||||
zen-welcome-start-browsing-description-1 = Du bist startklar! Klicke auf den Button unten, um mit { -brand-short-name } loszulegen.
|
||||
zen-welcome-start-browsing = Los geht's!
|
||||
zen-welcome-default-search-title = Deine Standard-Suchmaschine
|
||||
|
||||
@@ -10,7 +10,7 @@ zen-panel-ui-workspaces-create =
|
||||
zen-panel-ui-folder-create =
|
||||
.label = Ordner erstellen
|
||||
zen-panel-ui-live-folder-create =
|
||||
.label = Live Folder
|
||||
.label = Live-Ordner
|
||||
zen-panel-ui-new-empty-split =
|
||||
.label = Neuen Split erstellen
|
||||
zen-workspaces-panel-context-delete =
|
||||
@@ -25,7 +25,7 @@ zen-workspaces-panel-context-default-profile =
|
||||
zen-workspaces-panel-unload =
|
||||
.label = Arbeitsbereich entladen
|
||||
zen-workspaces-panel-unload-others =
|
||||
.label = Unload All Other Spaces
|
||||
.label = Alle anderen Arbeitsbereiche entladen
|
||||
zen-workspaces-how-to-reorder-title = So ordnest du Arbeitsbereiche neu an
|
||||
zen-workspaces-how-to-reorder-desc = Zieh die Arbeitsbereich-Symbole am unteren Rand der Seitenleiste, um sie neu anzuordnen
|
||||
zen-workspaces-change-theme =
|
||||
@@ -42,7 +42,7 @@ zen-bookmark-edit-panel-workspace-selector =
|
||||
zen-panel-ui-gradient-generator-algo-complementary =
|
||||
.label = Komplementär
|
||||
zen-panel-ui-gradient-generator-algo-splitComplementary =
|
||||
.label = Geteilt-Komplementär
|
||||
.label = Split-Komplementär
|
||||
zen-panel-ui-gradient-generator-algo-analogous =
|
||||
.label = Analog
|
||||
zen-panel-ui-gradient-generator-algo-triadic =
|
||||
|
||||
@@ -10,7 +10,7 @@ zen-panel-ui-workspaces-create =
|
||||
zen-panel-ui-folder-create =
|
||||
.label = Δημιουργία Φακέλου
|
||||
zen-panel-ui-live-folder-create =
|
||||
.label = Live Folder
|
||||
.label = Ζωντανός Φάκελος
|
||||
zen-panel-ui-new-empty-split =
|
||||
.label = Νέος Διαχωρισμός
|
||||
zen-workspaces-panel-context-delete =
|
||||
@@ -25,7 +25,7 @@ zen-workspaces-panel-context-default-profile =
|
||||
zen-workspaces-panel-unload =
|
||||
.label = Εκφόρτωση Χώρου Εργασίας
|
||||
zen-workspaces-panel-unload-others =
|
||||
.label = Unload All Other Spaces
|
||||
.label = Εκφόρτωση Όλων Των Άλλων Χώρων
|
||||
zen-workspaces-how-to-reorder-title = Πώς να αναδιατάξετε τους χώρους
|
||||
zen-workspaces-how-to-reorder-desc = Σύρετε τα εικονίδια χώρου στο κάτω μέρος της πλαϊνής μπάρας για να τα αναδιατάξετε
|
||||
zen-workspaces-change-theme =
|
||||
|
||||
@@ -5,8 +5,8 @@
|
||||
tab-zen-split-tabs =
|
||||
.label =
|
||||
{ $tabCount ->
|
||||
[1] Split Tab (multiple selected tabs needed)
|
||||
*[other] Split { $tabCount } Tabs
|
||||
[1] Join Tab (multiple selected tabs needed)
|
||||
*[other] Join { $tabCount } Tabs
|
||||
}
|
||||
.accesskey = S
|
||||
zen-split-link =
|
||||
|
||||
@@ -357,3 +357,4 @@ zen-devtools-toggle-dom-shortcut = Toggle DOM
|
||||
zen-devtools-toggle-accessibility-shortcut = Toggle Accessibility
|
||||
zen-close-all-unpinned-tabs-shortcut = Close All Unpinned Tabs
|
||||
zen-new-unsynced-window-shortcut = New Blank Window
|
||||
zen-duplicate-tab-shortcut = Duplicate Tab
|
||||
@@ -15,7 +15,7 @@ tab-context-zen-reset-pinned-tab =
|
||||
tab-context-zen-add-essential =
|
||||
.label = Add to Essentials
|
||||
.accesskey = E
|
||||
tab-context-zen-add-essential-badge = { $num } / { $max } slots filled
|
||||
tab-context-zen-add-essential-badge = { $num } / { $max }
|
||||
tab-context-zen-remove-essential =
|
||||
.label = Remove from Essentials
|
||||
.accesskey = R
|
||||
|
||||
@@ -5,9 +5,9 @@
|
||||
tab-zen-split-tabs =
|
||||
.label =
|
||||
{ $tabCount ->
|
||||
[-1] Unsplit Tabs
|
||||
[1] Split Tab (multiple selected tabs needed)
|
||||
*[other] Split { $tabCount } Tabs
|
||||
[-1] Split out tab
|
||||
[1] Join Tab (multiple selected tabs needed)
|
||||
*[other] Join { $tabCount } Tabs
|
||||
}
|
||||
.accesskey = S
|
||||
|
||||
|
||||
@@ -5,8 +5,9 @@
|
||||
tab-zen-split-tabs =
|
||||
.label =
|
||||
{ $tabCount ->
|
||||
[1] Vista dividida (se necesitan varias pestañas seleccionadas)
|
||||
*[other] Añadir { $tabCount } pestañas a vista dividida
|
||||
[-1] Deshacer división
|
||||
[1] Vista dividida (seleccione varias pestañas)
|
||||
*[other] Añadir { $tabCount } pestañas a la vista dividida
|
||||
}
|
||||
.accesskey = S
|
||||
zen-split-link =
|
||||
|
||||
@@ -5,9 +5,9 @@
|
||||
tab-zen-split-tabs =
|
||||
.label =
|
||||
{ $tabCount ->
|
||||
[-1] Unsplit Tabs
|
||||
[1] Split Tab (multiple selected tabs needed)
|
||||
*[other] Split { $tabCount } Tabs
|
||||
[-1] Split out tab
|
||||
[1] Join Tab (multiple selected tabs needed)
|
||||
*[other] Join { $tabCount } Tabs
|
||||
}
|
||||
.accesskey = S
|
||||
zen-split-link =
|
||||
|
||||
@@ -5,8 +5,8 @@
|
||||
tab-zen-split-tabs =
|
||||
.label =
|
||||
{ $tabCount ->
|
||||
[1] Split Tab (multiple selected tabs needed)
|
||||
*[other] Split { $tabCount } Tabs
|
||||
[1] Join Tab (multiple selected tabs needed)
|
||||
*[other] Join { $tabCount } Tabs
|
||||
}
|
||||
.accesskey = S
|
||||
zen-split-link =
|
||||
|
||||
@@ -14,7 +14,7 @@ tab-context-zen-reset-pinned-tab =
|
||||
tab-context-zen-add-essential =
|
||||
.label = Ajouter aux Essentials
|
||||
.accesskey = E
|
||||
tab-context-zen-add-essential-badge = { $num } / { $max } emplacements occupés
|
||||
tab-context-zen-add-essential-badge = { $num } / { $max }
|
||||
tab-context-zen-remove-essential =
|
||||
.label = Retirer des Essentials
|
||||
.accesskey = R
|
||||
|
||||
@@ -7,8 +7,8 @@ unified-extensions-description = Úsáidtear síntí chun níos mó feidhmiúlac
|
||||
tab-context-zen-reset-pinned-tab =
|
||||
.label =
|
||||
{ $isEssential ->
|
||||
[true] Athshocraigh an Cluaisín Riachtanach
|
||||
*[false] Athshocraigh an Cluaisín Priontáilte
|
||||
[true] Athshocraigh an Cluaisín Riachtanach
|
||||
*[false] Athshocraigh an Cluaisín Priontáilte
|
||||
}
|
||||
.accesskey = R
|
||||
tab-context-zen-add-essential =
|
||||
@@ -21,8 +21,8 @@ tab-context-zen-remove-essential =
|
||||
tab-context-zen-replace-pinned-url-with-current =
|
||||
.label =
|
||||
{ $isEssential ->
|
||||
[true] Cuir an URL Riachtanach in ionad an URL Reatha
|
||||
*[false] Cuir an URL Priontáilte in ionad an URL Reatha
|
||||
[true] Cuir an URL Riachtanach in ionad an URL Reatha
|
||||
*[false] Cuir an URL Priontáilte in ionad an URL Reatha
|
||||
}
|
||||
.accesskey = C
|
||||
tab-context-zen-edit-title =
|
||||
|
||||
@@ -38,7 +38,7 @@ tabbrowser-reset-pin-button =
|
||||
}
|
||||
zen-tab-sublabel =
|
||||
{ $tabSubtitle ->
|
||||
[zen-default-pinned] Ar ais go dtí an url bioráilte
|
||||
[zen-default-pinned-cmd] Ar leithligh ón gcluaisín bioráilte
|
||||
*[other] { $tabSubtitle }
|
||||
[zen-default-pinned] Ar ais go dtí an url bioráilte
|
||||
[zen-default-pinned-cmd] Ar leithligh ón gcluaisín bioráilte
|
||||
*[other] { $tabSubtitle }
|
||||
}
|
||||
|
||||
@@ -43,13 +43,13 @@ category-zen-workspaces =
|
||||
.tooltiptext = { pane-zen-tabs-title }
|
||||
pane-settings-workspaces-title = Ruang Kerja
|
||||
zen-tabs-select-recently-used-on-close =
|
||||
.label = When closing a tab, switch to the most recently used tab instead of the next tab
|
||||
.label = Saat menutup tab, beralih ke tab yang terakhir digunakan alih-alih tab berikutnya
|
||||
zen-tabs-close-on-back-with-no-history =
|
||||
.label = Tutup tab dan beralih ke tab pemiliknya (atau tab yang terakhir digunakan) saat kembali tanpa riwayat
|
||||
.label = Tutup tab dan beralih ke tab asal (atau terakhir digunakan) saat kembali tanpa riwayat
|
||||
zen-settings-workspaces-sync-unpinned-tabs =
|
||||
.label = Sync only pinned tabs in workspaces
|
||||
.label = (Window Sync) Hanya sinkronkan tab tersemat dalam ruang kerja
|
||||
zen-tabs-cycle-by-attribute =
|
||||
.label = Ctrl+Tab berputar hanya dalam tab Esensial atau Ruang Kerja
|
||||
.label = Ctrl+Tab hanya beralih di antara tab Esensial atau Ruang Kerja
|
||||
zen-tabs-cycle-ignore-pending-tabs =
|
||||
.label = Lewati tab tak termuat saat beralih dengan Ctrl+Tab
|
||||
zen-tabs-cycle-by-attribute-warning = Ctrl+Tab akan beralih berdasarkan urutan terakhir digunakan
|
||||
@@ -63,18 +63,18 @@ zen-pinned-tab-manager-description = Kelola perilaku tambahan dari tab yang dise
|
||||
zen-pinned-tab-manager-restore-pinned-tabs-to-pinned-url =
|
||||
.label = Pulihkan tab yang disematkan ke URL awal saat mulai ulang
|
||||
zen-pinned-tab-manager-container-specific-essentials-enabled =
|
||||
.label = Aktifkan kontainer-spesifik essentials
|
||||
.label = Aktifkan pemisahan esensial per kontainer
|
||||
zen-pinned-tab-manager-close-shortcut-behavior-label = Perilaku Pintasan Tutup Tab
|
||||
zen-pinned-tab-manager-reset-unload-switch-close-shortcut-option =
|
||||
.label = Setel Ulang URL, lepaskan, dan beralih ke tab berikutnya
|
||||
.label = Setel ulang URL, lepaskan, dan beralih ke tab berikutnya
|
||||
zen-pinned-tab-manager-unload-switch-close-shortcut-option =
|
||||
.label = Lepaskan dan beralih ke tab berikutnya
|
||||
zen-pinned-tab-manager-reset-switch-close-shortcut-option =
|
||||
.label = Setel Ulang URL dan beralih ke tab berikutnya
|
||||
.label = Setel ulang URL dan beralih ke tab berikutnya
|
||||
zen-pinned-tab-manager-switch-close-shortcut-option =
|
||||
.label = Beralih ke tab berikutnya
|
||||
zen-pinned-tab-manager-reset-close-shortcut-option =
|
||||
.label = Setel Ulang URL
|
||||
.label = Setel ulang URL
|
||||
zen-pinned-tab-manager-close-close-shortcut-option =
|
||||
.label = Tutup tab
|
||||
pane-zen-workspaces-header = Ruang Kerja
|
||||
@@ -137,7 +137,7 @@ pane-zen-marketplace-title = Zen Mods
|
||||
zen-themes-auto-update =
|
||||
.label = Otomatis perbarui mod yang terinstal saat startup
|
||||
zen-settings-workspaces-force-container-tabs-to-workspace =
|
||||
.label = Saat membuka tab kontainer, otomatis pindahkan ke ruang kerja default kontainer tab itu
|
||||
.label = Otomatis pindahkan tab kontainer ke ruang kerja defaultnya saat dibuka
|
||||
zen-theme-marketplace-link = Kunjungi Toko
|
||||
zen-dark-theme-styles-header = Gaya Tema Gelap
|
||||
zen-dark-theme-styles-description = Mengkustomisasi mode gelap sesuai kemauanmu
|
||||
@@ -189,7 +189,7 @@ zen-tab-new-shortcut = Tab Baru
|
||||
zen-key-redo = Ulangi
|
||||
zen-restore-last-closed-tab-shortcut = Pulihkan Tab yang Terakhir Ditutup
|
||||
zen-location-open-shortcut = Buka Lokasi
|
||||
zen-location-open-shortcut-alt = Buka Lokasi
|
||||
zen-location-open-shortcut-alt = Buka Lokasi (Alt)
|
||||
zen-key-undo-close-window = Batalkan Tutup Jendela
|
||||
zen-text-action-undo-shortcut = Batalkan
|
||||
zen-text-action-redo-shortcut = Ulangi
|
||||
@@ -246,7 +246,7 @@ zen-search-find-again-shortcut = Temukan Lagi
|
||||
zen-search-find-again-shortcut-prev = Cari Sebelumnya
|
||||
zen-search-find-again-shortcut-2 = Cari Lagi (Alt)
|
||||
zen-bookmark-this-page-shortcut = Markahi Laman Ini
|
||||
zen-bookmark-show-library-shortcut = Tampilkan Pustaka Bookmark
|
||||
zen-bookmark-show-library-shortcut = Tampilkan Pustaka Markah
|
||||
zen-key-stop = Berhenti Memuat
|
||||
zen-full-zoom-reduce-shortcut = Perkecil
|
||||
zen-full-zoom-enlarge-shortcut = Perbesar
|
||||
|
||||
@@ -3,26 +3,26 @@
|
||||
# file, You can obtain one at http://mozilla.org/MPL/2.0/.
|
||||
|
||||
zen-panel-ui-current-profile-text = profil saat ini
|
||||
unified-extensions-description = Ekstensi digunakan untuk menambahkan lebih banyak fungsi ekstra ke { -brand-short-name }.
|
||||
unified-extensions-description = Ekstensi digunakan untuk menambahkan fungsi ekstra ke { -brand-short-name }.
|
||||
tab-context-zen-reset-pinned-tab =
|
||||
.label =
|
||||
{ $isEssential ->
|
||||
[true] Reset Essential Tab
|
||||
*[false] Reset Pinned Tab
|
||||
[true] Reset Tab Esensial ke URL awal
|
||||
*[false] Reset Tab Sematan ke URL awal
|
||||
}
|
||||
.accesskey = R
|
||||
tab-context-zen-add-essential =
|
||||
.label = Tambahkan ke Essentials
|
||||
.label = Tambahkan ke Esensial
|
||||
.accesskey = E
|
||||
tab-context-zen-add-essential-badge = { $num } / { $max } slot terisi
|
||||
tab-context-zen-remove-essential =
|
||||
.label = Hapus dari Essentials
|
||||
.label = Hapus dari Esensial
|
||||
.accesskey = R
|
||||
tab-context-zen-replace-pinned-url-with-current =
|
||||
.label =
|
||||
{ $isEssential ->
|
||||
[true] Replace Essential URL with Current
|
||||
*[false] Replace Pinned URL with Current
|
||||
[true] Perbarui URL awal Tab Esensial
|
||||
*[false] Perbarui URL awal Tab Sematan
|
||||
}
|
||||
.accesskey = C
|
||||
tab-context-zen-edit-title =
|
||||
@@ -41,7 +41,7 @@ pictureinpicture-minimize-btn =
|
||||
.tooltip = Minimalkan
|
||||
zen-panel-ui-gradient-generator-custom-color = Warna Kustom
|
||||
zen-copy-current-url-confirmation = URL Disalin!
|
||||
zen-copy-current-url-as-markdown-confirmation = Copied current URL as Markdown!
|
||||
zen-copy-current-url-as-markdown-confirmation = URL disalin sebagai Markdown!
|
||||
zen-general-cancel-label =
|
||||
.label = Batalkan
|
||||
zen-general-confirm =
|
||||
@@ -69,7 +69,7 @@ zen-site-data-settings = Pengaturan
|
||||
zen-generic-manage = Kelola
|
||||
zen-generic-more = Selengkapnya
|
||||
zen-generic-next = Lanjut
|
||||
zen-essentials-promo-label = Tambahkan ke Essentials
|
||||
zen-essentials-promo-label = Tambahkan ke Esensial
|
||||
zen-essentials-promo-sublabel = Akses tab favorit Anda hanya dengan sekali klik
|
||||
# These labels will be used for the site data panel settings
|
||||
zen-site-data-setting-allow = Diizinkan
|
||||
|
||||
@@ -19,4 +19,4 @@ zen-menubar-appearance-light =
|
||||
zen-menubar-appearance-dark =
|
||||
.label = Gelap
|
||||
zen-menubar-new-blank-window =
|
||||
.label = New Blank Window
|
||||
.label = Jendela Kosong Baru
|
||||
|
||||
@@ -38,7 +38,7 @@ tabbrowser-reset-pin-button =
|
||||
}
|
||||
zen-tab-sublabel =
|
||||
{ $tabSubtitle ->
|
||||
[zen-default-pinned] Back to pinned url
|
||||
[zen-default-pinned-cmd] Separate from pinned tab
|
||||
[zen-default-pinned] Kembali ke URL Awal
|
||||
[zen-default-pinned-cmd] Pisahkan dari tab tersemat
|
||||
*[other] { $tabSubtitle }
|
||||
}
|
||||
|
||||
@@ -3,23 +3,23 @@
|
||||
# file, You can obtain one at http://mozilla.org/MPL/2.0/.
|
||||
|
||||
zen-welcome-title-line1 = Selamat datang di
|
||||
zen-welcome-title-line2 = internet yang tenang
|
||||
zen-welcome-title-line2 = internet yang lebih tenang
|
||||
zen-welcome-import-title = Permulaan baru, Bookmark tetap sama
|
||||
zen-welcome-import-description-1 = Bookmark, histori dan password anda adalah Jejak remah roti yang anda tinggalkan di internet--jangan tinggalkan begitu saja!
|
||||
zen-welcome-import-description-2 = Semudah mengambil dari peramban lain dan melanjutkan dari yang anda tinggalkan.
|
||||
zen-welcome-import-button = Impor sekarang
|
||||
zen-welcome-set-default-browser = Atur { -brand-short-name } sebagai peramban bawaan
|
||||
zen-welcome-dont-set-default-browser = Jangan membuat { -brand-short-name } sebagai peramban bawaan
|
||||
zen-welcome-initial-essentials-title = Tab penting anda, akan selalu dalam genggaman
|
||||
zen-welcome-initial-essentials-description-1 = Simpan tab penting anda mudah diakses dan berada dalam jangkauan anda, seberapapun anda membukanya.
|
||||
zen-welcome-initial-essentials-description-2 = Tab penting selalu terlihat, dimanapun tempat kerja anda.
|
||||
zen-welcome-workspace-colors-title = Ruang Kerja anda, Warna anda
|
||||
zen-welcome-set-default-browser = Jadikan { -brand-short-name } sebagai peramban baku
|
||||
zen-welcome-dont-set-default-browser = Jangan jadikan { -brand-short-name } sebagai peramban baku
|
||||
zen-welcome-initial-essentials-title = Tab Penting Anda, Selalu dalam Jangkauan
|
||||
zen-welcome-initial-essentials-description-1 = Pastikan tab terpenting Anda mudah diakses dan selalu tersedia, berapa pun jumlah tab yang Anda buka.
|
||||
zen-welcome-initial-essentials-description-2 = Tab esensial selalu terlihat, di ruang kerja mana pun Anda berada.
|
||||
zen-welcome-workspace-colors-title = Ruang Kerja Anda, Warna Anda
|
||||
zen-welcome-workspace-colors-description = Atur peramban anda dengan memberikan warna tersendiri tiap ruang kerja.
|
||||
zen-welcome-start-browsing-title =
|
||||
Semua Pengaturan selesai?<br/>
|
||||
Mari mulai menjelajah!
|
||||
zen-welcome-start-browsing-description-1 = Anda selesai melakukan pengaturan dan siap untuk mulai. Klik tombol di bawah ini untuk mulai menjelajah dengan { -brand-short-name }.
|
||||
zen-welcome-start-browsing = Penyelaman dimulai!
|
||||
zen-welcome-start-browsing = Ayo, mulai!
|
||||
zen-welcome-default-search-title = Mesin Pencari Default Anda
|
||||
zen-welcome-default-search-description = Pilih mesin pencari default Anda. Anda selalu dapat mengubahnya nanti!
|
||||
zen-welcome-skip-button = Lewati
|
||||
|
||||
@@ -25,7 +25,7 @@ zen-workspaces-panel-context-default-profile =
|
||||
zen-workspaces-panel-unload =
|
||||
.label = Lepaskan Ruang
|
||||
zen-workspaces-panel-unload-others =
|
||||
.label = Unload All Other Spaces
|
||||
.label = Lepaskan Ruang Lainnya
|
||||
zen-workspaces-how-to-reorder-title = Cara Mengurutkan Ulang Ruang
|
||||
zen-workspaces-how-to-reorder-desc = Seret ikon ruang di bagian bawah bilah sisi untuk menyusun ulang urutannya
|
||||
zen-workspaces-change-theme =
|
||||
@@ -61,7 +61,7 @@ zen-workspace-creation-profile = Profil
|
||||
.tooltiptext = Profil (Kontainer) digunakan untuk memisahkan cookie dan data situs antar Ruang.
|
||||
zen-workspace-creation-header = Buat sebuah Ruang
|
||||
zen-workspace-creation-label = Ruang digunakan untuk mengorganisasikan tab dan sesi Anda.
|
||||
zen-workspaces-delete-workspace-title = Delete Workspace?
|
||||
zen-workspaces-delete-workspace-title = Hapus Ruang?
|
||||
zen-workspaces-delete-workspace-body = Apakah Anda yakin ingin menghapus { $name }? Tindakan ini tidak bisa dibatalkan.
|
||||
# Note that the html tag MUST not be changed or removed, as it is used to better
|
||||
# display the shortcut in the toast notification.
|
||||
|
||||
@@ -14,7 +14,7 @@ tab-context-zen-reset-pinned-tab =
|
||||
tab-context-zen-add-essential =
|
||||
.label = Bæta við þarfaflipa
|
||||
.accesskey = F
|
||||
tab-context-zen-add-essential-badge = { $num } / { $max } hólf fyllt
|
||||
tab-context-zen-add-essential-badge = { $num } / { $max }
|
||||
tab-context-zen-remove-essential =
|
||||
.label = Fjarlægja úr þarfaflipum
|
||||
.accesskey = R
|
||||
|
||||
@@ -6,7 +6,7 @@ tab-zen-split-tabs =
|
||||
.label =
|
||||
{ $tabCount ->
|
||||
[1] Split Tab (sono necessarie più schede selezionate)
|
||||
*[other] Split { $tabCount } Tabs
|
||||
*[other] Join { $tabCount } Tabs
|
||||
}
|
||||
.accesskey = S
|
||||
zen-split-link =
|
||||
|
||||
@@ -5,7 +5,7 @@
|
||||
pane-zen-looks-title = 外観
|
||||
category-zen-looks =
|
||||
.tooltiptext = { pane-zen-looks-title }{ pane-zen-looks-title }
|
||||
zen-warning-language = デフォルト言語を変更すると、ウェブサイトがあなたにトラッキングしやすいです。
|
||||
zen-warning-language = デフォルト言語を変更すると、ウェブサイトにトラッキングされやすくなります。
|
||||
zen-vertical-tabs-layout-header = ブラウザーのレイアウト
|
||||
zen-vertical-tabs-layout-description = 自分に合ったレイアウトを選んでください
|
||||
zen-layout-single-toolbar = サイドバーのみ
|
||||
@@ -43,11 +43,11 @@ category-zen-workspaces =
|
||||
.tooltiptext = { pane-zen-tabs-title }
|
||||
pane-settings-workspaces-title = ワークスペース
|
||||
zen-tabs-select-recently-used-on-close =
|
||||
.label = When closing a tab, switch to the most recently used tab instead of the next tab
|
||||
.label = タブを閉じるときに、次のタブではなく最後に使用したタブに切り替える
|
||||
zen-tabs-close-on-back-with-no-history =
|
||||
.label = タブを閉じ、履歴がない状態で戻るときに所有者のタブ(または最近使用したタブ)に切り替えます
|
||||
zen-settings-workspaces-sync-unpinned-tabs =
|
||||
.label = Sync only pinned tabs in workspaces
|
||||
.label = ワークスペースのタブのうちピン留めされているタブのみを同期する
|
||||
zen-tabs-cycle-by-attribute =
|
||||
.label = Ctrl+Tabキーを押してワークスペースタブ内または重要なタブ内のサイクルを切り替えます
|
||||
zen-tabs-cycle-ignore-pending-tabs =
|
||||
@@ -57,11 +57,11 @@ zen-look-and-feel-compact-toolbar-themed =
|
||||
.label = コンパクトツールバーにテーマの背景を使用する
|
||||
zen-workspace-continue-where-left-off =
|
||||
.label = 中断したところから再開する
|
||||
pane-zen-pinned-tab-manager-title = 固定したタブ
|
||||
zen-pinned-tab-manager-header = 固定したタブの一般的な設定
|
||||
zen-pinned-tab-manager-description = 固定したタブの追加的な動作を管理する
|
||||
pane-zen-pinned-tab-manager-title = ピン留めされたタブ
|
||||
zen-pinned-tab-manager-header = ピン留めされたタブの設定
|
||||
zen-pinned-tab-manager-description = ピン留めされたタブの追加的な動作を管理する
|
||||
zen-pinned-tab-manager-restore-pinned-tabs-to-pinned-url =
|
||||
.label = 固定したタブを起動時に元の固定したURLに復元します
|
||||
.label = ピン留めされたタブを起動時に元のピン留めされた URL に復元します
|
||||
zen-pinned-tab-manager-container-specific-essentials-enabled =
|
||||
.label = コンテナ固有のEssentialsを有効にする
|
||||
zen-pinned-tab-manager-close-shortcut-behavior-label = タブを閉じるショートカットの動作
|
||||
@@ -79,7 +79,7 @@ zen-pinned-tab-manager-close-close-shortcut-option =
|
||||
.label = タブを閉じる
|
||||
pane-zen-workspaces-header = ワークスペース
|
||||
zen-settings-workspaces-header = ワークスペースの一般的な設定
|
||||
zen-settings-workspaces-description = ワークスペースを使用すると、一度に複数のブラウジングセッションがあるといいです!
|
||||
zen-settings-workspaces-description = ワークスペースを使用すると、同時に複数のブラウジングセッションを行うことができます!
|
||||
zen-settings-workspaces-enabled =
|
||||
.label = ワークスペースを有効にする
|
||||
zen-settings-workspaces-hide-default-container-indicator =
|
||||
@@ -279,8 +279,8 @@ zen-workspace-shortcut-switch-7 = ワークスペース7に切り替える
|
||||
zen-workspace-shortcut-switch-8 = ワークスペース8に切り替える
|
||||
zen-workspace-shortcut-switch-9 = ワークスペース9に切り替える
|
||||
zen-workspace-shortcut-switch-10 = ワークスペース10に切り替える
|
||||
zen-workspace-shortcut-forward = ワークスペースを転送
|
||||
zen-workspace-shortcut-backward = 後方ワークスペース
|
||||
zen-workspace-shortcut-forward = 次のワークスペースに移動
|
||||
zen-workspace-shortcut-backward = 前のワークスペースへ移動
|
||||
zen-sidebar-shortcut-toggle = サイドバーの幅を切り替える
|
||||
zen-pinned-tab-shortcut-reset = ピン留めされたタブをピン留めしたURLにリセット
|
||||
zen-split-view-shortcut-grid = 分割表示グリッドの切り替え
|
||||
|
||||
@@ -7,8 +7,8 @@ unified-extensions-description = 拡張機能は{ -brand-short-name }に多く
|
||||
tab-context-zen-reset-pinned-tab =
|
||||
.label =
|
||||
{ $isEssential ->
|
||||
[true] Reset Essential Tab
|
||||
*[false] Reset Pinned Tab
|
||||
[true] Essentialタブの遷移をリセット
|
||||
*[false] ピン留めされたタブの遷移をリセット
|
||||
}
|
||||
.accesskey = R
|
||||
tab-context-zen-add-essential =
|
||||
@@ -21,8 +21,8 @@ tab-context-zen-remove-essential =
|
||||
tab-context-zen-replace-pinned-url-with-current =
|
||||
.label =
|
||||
{ $isEssential ->
|
||||
[true] Replace Essential URL with Current
|
||||
*[false] Replace Pinned URL with Current
|
||||
[true] EssentialタブのURLを今開いているURLで置き換える
|
||||
*[false] ピン留めされたタブのURLを今開いているURLで置き換える
|
||||
}
|
||||
.accesskey = C
|
||||
tab-context-zen-edit-title =
|
||||
@@ -41,13 +41,13 @@ pictureinpicture-minimize-btn =
|
||||
.tooltip = 最小化
|
||||
zen-panel-ui-gradient-generator-custom-color = カスタムカラー
|
||||
zen-copy-current-url-confirmation = URLをクリップボードにコピーしました!
|
||||
zen-copy-current-url-as-markdown-confirmation = Copied current URL as Markdown!
|
||||
zen-copy-current-url-as-markdown-confirmation = URLをMarkdownとしてコピーしました!
|
||||
zen-general-cancel-label =
|
||||
.label = キャンセル
|
||||
zen-general-confirm =
|
||||
.label = 確定
|
||||
zen-pinned-tab-replaced = 固定したタブのURLが現在のURLに置き換えられました!
|
||||
zen-tabs-renamed = タグの名前は無事に変更されました!
|
||||
zen-tabs-renamed = タブの名前は無事に変更されました!
|
||||
zen-background-tab-opened-toast = 新しい背景タブが開きました!
|
||||
zen-workspace-renamed-toast = ワークスペースの名前が変更されました!
|
||||
zen-toggle-compact-mode-button =
|
||||
|
||||
@@ -33,12 +33,12 @@ tabbrowser-unload-tab-button =
|
||||
tabbrowser-reset-pin-button =
|
||||
.tooltiptext =
|
||||
{ $tabCount ->
|
||||
[one] タブをリセットして固定する
|
||||
*[other] タブをリセットして{ $tabCount }つタブを固定する
|
||||
[one] タブをリセットしてピン留め
|
||||
*[other] タブをリセットして{ $tabCount }つのタブをピン留め
|
||||
}
|
||||
zen-tab-sublabel =
|
||||
{ $tabSubtitle ->
|
||||
[zen-default-pinned] Back to pinned url
|
||||
[zen-default-pinned-cmd] Separate from pinned tab
|
||||
[zen-default-pinned] ピン止めされた URL に戻る
|
||||
[zen-default-pinned-cmd] ピン止めされたタブから切り離す
|
||||
*[other] { $tabSubtitle }
|
||||
}
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
# 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/.
|
||||
|
||||
zen-panel-ui-workspaces-text = スペース
|
||||
zen-panel-ui-workspaces-text = ワークスペース
|
||||
zen-panel-ui-spaces-label =
|
||||
.label = スペース
|
||||
zen-panel-ui-workspaces-create =
|
||||
@@ -25,7 +25,7 @@ zen-workspaces-panel-context-default-profile =
|
||||
zen-workspaces-panel-unload =
|
||||
.label = スペースをアンロードする
|
||||
zen-workspaces-panel-unload-others =
|
||||
.label = Unload All Other Spaces
|
||||
.label = 他のスペースをアンロードする
|
||||
zen-workspaces-how-to-reorder-title = 並べ替える方法
|
||||
zen-workspaces-how-to-reorder-desc = サイドバーの下部にあるスペースアイコンをドラッグして並べ替えます
|
||||
zen-workspaces-change-theme =
|
||||
@@ -68,7 +68,7 @@ zen-workspaces-delete-workspace-body = { $name }を削除してもよろしい
|
||||
zen-workspaces-close-all-unpinned-tabs-toast = タブを閉じました!元に戻すには、 <span>{ $shortcut }</span>を使用してください。
|
||||
zen-workspaces-close-all-unpinned-tabs-title =
|
||||
.label = 削除する
|
||||
.tooltiptext = すべての固定しなかったタブを閉じる
|
||||
.tooltiptext = すべてのピン留めされていないタブを閉じる
|
||||
zen-panel-ui-workspaces-change-forward =
|
||||
.label = 次のスペースに移動
|
||||
zen-panel-ui-workspaces-change-back =
|
||||
|
||||
@@ -14,7 +14,7 @@ tab-context-zen-reset-pinned-tab =
|
||||
tab-context-zen-add-essential =
|
||||
.label = Legg til i essensielle
|
||||
.accesskey = E
|
||||
tab-context-zen-add-essential-badge = { $num } / { $max } felt utfylt
|
||||
tab-context-zen-add-essential-badge = { $num } / { $max }
|
||||
tab-context-zen-remove-essential =
|
||||
.label = Fjern fra essensielle
|
||||
.accesskey = R
|
||||
|
||||
@@ -5,8 +5,8 @@
|
||||
tab-zen-split-tabs =
|
||||
.label =
|
||||
{ $tabCount ->
|
||||
[1] Split Tab (multiple selected tabs needed)
|
||||
*[other] Split { $tabCount } Tabs
|
||||
[1] Join Tab (multiple selected tabs needed)
|
||||
*[other] Join { $tabCount } Tabs
|
||||
}
|
||||
.accesskey = S
|
||||
zen-split-link =
|
||||
|
||||
@@ -5,9 +5,9 @@
|
||||
pane-zen-looks-title = Wygląd i działanie
|
||||
category-zen-looks =
|
||||
.tooltiptext = { pane-zen-looks-title }
|
||||
zen-warning-language = Zmiana domyślnego języka może ułatwić śledzenie stron internetowych.
|
||||
zen-vertical-tabs-layout-header = Wygląd przeglądarki
|
||||
zen-vertical-tabs-layout-description = Wybierz wygląd, który pasuje Ci najbardziej
|
||||
zen-warning-language = Zmiana domyślnego języka może ułatwić stronom internetowym śledzenie Twojej aktywności.
|
||||
zen-vertical-tabs-layout-header = Układ przeglądarki
|
||||
zen-vertical-tabs-layout-description = Wybierz układ, który najbardziej Ci odpowiada
|
||||
zen-layout-single-toolbar = Tylko pasek boczny
|
||||
zen-layout-multiple-toolbar = Pasek boczny i górny pasek narzędzi
|
||||
zen-layout-collapsed-toolbar = Zwinięty pasek boczny
|
||||
@@ -43,15 +43,15 @@ category-zen-workspaces =
|
||||
.tooltiptext = { pane-zen-tabs-title }
|
||||
pane-settings-workspaces-title = Obszary robocze
|
||||
zen-tabs-select-recently-used-on-close =
|
||||
.label = Podczas zamykania karty, przejdź do ostatnio używanej karty zamiast do następnej karty
|
||||
.label = Podczas zamykania karty, przełącz na ostatnio używaną kartę zamiast na następną kartę
|
||||
zen-tabs-close-on-back-with-no-history =
|
||||
.label = Zamknij kartę i przejdź do karty głównej (lub ostatnio używanej karty) podczas powrotu bez historii
|
||||
.label = Zamknij kartę i przełącz na kartę nadrzędną (lub ostatnio używaną kartę) podczas cofania bez historii
|
||||
zen-settings-workspaces-sync-unpinned-tabs =
|
||||
.label = Zsynchronizuj tylko przypięte karty w obszarach roboczych
|
||||
zen-tabs-cycle-by-attribute =
|
||||
.label = Ctrl+Tab przełącza tylko między kartami niezbędnymi lub kartami obszaru roboczego
|
||||
zen-tabs-cycle-ignore-pending-tabs =
|
||||
.label = Ignoruj oczekujące karty podczas przełączania między kartami z Ctrl+Tab
|
||||
.label = Ignoruj oczekujące karty podczas przełączania się za pomocą skrótu Ctrl+Tab
|
||||
zen-tabs-cycle-by-attribute-warning = Ctrl+Tab będzie przełączał karty według ostatnio używanej kolejności, ponieważ jest włączona
|
||||
zen-look-and-feel-compact-toolbar-themed =
|
||||
.label = Użyj tła motywu dla kompaktowego paska narzędzi
|
||||
@@ -61,18 +61,18 @@ pane-zen-pinned-tab-manager-title = Przypięte karty
|
||||
zen-pinned-tab-manager-header = Ogólne ustawienia przypiętych kart
|
||||
zen-pinned-tab-manager-description = Zarządzaj dodatkowym zachowaniem przypiętych kart
|
||||
zen-pinned-tab-manager-restore-pinned-tabs-to-pinned-url =
|
||||
.label = Przywróć przypięte karty do pierwotnie przypiętego adresu URL przy starcie
|
||||
.label = Przywróć przypięte karty do ich pierwotnych adresów URL podczas uruchamiania
|
||||
zen-pinned-tab-manager-container-specific-essentials-enabled =
|
||||
.label = Włącz podstawowe funkcje specyficzne dla kontenera
|
||||
.label = Włącz niezbędne karty specyficzne dla kontenerów
|
||||
zen-pinned-tab-manager-close-shortcut-behavior-label = Zachowanie skrótu zamykania karty
|
||||
zen-pinned-tab-manager-reset-unload-switch-close-shortcut-option =
|
||||
.label = Zresetuj adres URL, wyładuj i przejdź do następnej karty
|
||||
.label = Zresetuj adres URL, wyładuj i przełącz na następną kartę
|
||||
zen-pinned-tab-manager-unload-switch-close-shortcut-option =
|
||||
.label = Wyładuj i przejdź do następnej karty
|
||||
.label = Wyładuj i przełącz na następną kartę
|
||||
zen-pinned-tab-manager-reset-switch-close-shortcut-option =
|
||||
.label = Zresetuj adres URL i przejdź do następnej karty
|
||||
.label = Zresetuj adres URL i przełącz na następną kartę
|
||||
zen-pinned-tab-manager-switch-close-shortcut-option =
|
||||
.label = Przejdź do następnej karty
|
||||
.label = Przełącz na następną kartę
|
||||
zen-pinned-tab-manager-reset-close-shortcut-option =
|
||||
.label = Zresetuj adres URL
|
||||
zen-pinned-tab-manager-close-close-shortcut-option =
|
||||
@@ -100,7 +100,7 @@ zen-vertical-tabs-expand-tabs-by-default = Rozwiń karty domyślnie
|
||||
zen-vertical-tabs-dont-expand-tabs-by-default = Nie rozwijaj domyślnie kart
|
||||
zen-vertical-tabs-expand-tabs-on-hover = Rozwiń zakładki po najechaniu kursorem (nie działa w trybie kompaktowym)
|
||||
zen-vertical-tabs-expand-tabs-header = Jak rozwinąć karty
|
||||
zen-vertical-tabs-expand-tabs-description = Wybierz jak rozwinąć karty na pasku bocznym
|
||||
zen-vertical-tabs-expand-tabs-description = Wybierz sposób rozwijania kart na pasku bocznym
|
||||
zen-theme-marketplace-header = Modyfikacje Zen
|
||||
zen-theme-disable-all-enabled =
|
||||
.title = Wyłącz wszystkie modyfikacje
|
||||
@@ -137,7 +137,7 @@ pane-zen-marketplace-title = Modyfikacje Zen
|
||||
zen-themes-auto-update =
|
||||
.label = Automatycznie aktualizuj zainstalowane modyfikacje podczas startu przeglądarki
|
||||
zen-settings-workspaces-force-container-tabs-to-workspace =
|
||||
.label = Przełącz się do obszaru roboczego, w którym kontener jest ustawiony jako domyślny podczas otwierania kart kontenera
|
||||
.label = Przełącz na obszar roboczy, w którym kontener jest ustawiony jako domyślny podczas otwierania kart kontenera
|
||||
zen-theme-marketplace-link = Odwiedź sklep
|
||||
zen-dark-theme-styles-header = Style ciemnego motywu
|
||||
zen-dark-theme-styles-description = Dostosuj ciemny motyw do swoich upodobań
|
||||
@@ -154,9 +154,9 @@ zen-urlbar-behavior-label = Zachowanie
|
||||
zen-urlbar-behavior-normal =
|
||||
.label = Normalne
|
||||
zen-urlbar-behavior-floating-on-type =
|
||||
.label = Widoczny podczas pisania
|
||||
.label = Pływający tylko podczas pisania
|
||||
zen-urlbar-behavior-float =
|
||||
.label = Zawsze widoczny
|
||||
.label = Zawsze pływający
|
||||
pane-zen-CKS-title = Skróty klawiaturowe
|
||||
category-zen-CKS =
|
||||
.tooltiptext = { pane-zen-CKS-title }
|
||||
@@ -166,7 +166,7 @@ category-zen-marketplace =
|
||||
zen-settings-CKS-header = Dostosuj skróty klawiaturowe
|
||||
zen-settings-CKS-description = Zmień domyślne skróty klawiaturowe zgodnie z własnymi preferencjami i popraw komfort przeglądania stron internetowych
|
||||
zen-settings-CKS-disable-firefox =
|
||||
.label = Wyłącz domyślne skróty klawiszowe { -brand-short-name }
|
||||
.label = Wyłącz domyślne skróty klawiaturowe { -brand-short-name }
|
||||
zen-settings-CKS-duplicate-shortcut =
|
||||
.label = Duplikuj skrót
|
||||
zen-settings-CKS-reset-shortcuts =
|
||||
@@ -182,7 +182,7 @@ zenCKSOption-group-zen-compact-mode = Tryb kompaktowy
|
||||
zenCKSOption-group-zen-workspace = Obszary robocze
|
||||
zenCKSOption-group-zen-other = Inne funkcje Zen
|
||||
zenCKSOption-group-zen-split-view = Podziel widok
|
||||
zenCKSOption-group-devTools = Narzędzia developerskie
|
||||
zenCKSOption-group-devTools = Narzędzia deweloperskie
|
||||
zen-key-quick-restart = Szybkie ponowne uruchomienie
|
||||
zen-window-new-shortcut = Nowe okno
|
||||
zen-tab-new-shortcut = Nowa karta
|
||||
@@ -214,7 +214,7 @@ zen-help-shortcut = Otwórz pomoc
|
||||
zen-preferences-shortcut = Otwórz ustawienia
|
||||
zen-hide-app-shortcut = Ukryj aplikację
|
||||
zen-hide-other-apps-shortcut = Ukryj inne aplikacje
|
||||
zen-search-focus-shortcut = Szukaj w centrum uwagi
|
||||
zen-search-focus-shortcut = Przejdź do wyszukiwania
|
||||
zen-search-focus-shortcut-alt = Przejdź do wyszukiwania (Alt)
|
||||
zen-downloads-shortcut = Otwórz pobieranie
|
||||
zen-addons-shortcut = Otwórz dodatki
|
||||
@@ -223,7 +223,7 @@ zen-save-page-shortcut = Zapisz stronę
|
||||
zen-print-shortcut = Wydrukuj stronę
|
||||
zen-close-shortcut-2 = Zamknij kartę
|
||||
zen-mute-toggle-shortcut = Przełącz wyciszenie
|
||||
zen-key-delete = Usuń klucz
|
||||
zen-key-delete = Klawisz Delete
|
||||
zen-key-go-back = Powrót
|
||||
zen-key-go-forward = Przejdź do przodu
|
||||
zen-nav-back-shortcut-alt = Nawiguj wstecz (Alt)
|
||||
@@ -281,13 +281,13 @@ zen-workspace-shortcut-switch-9 = Przełącz na obszar roboczy 9
|
||||
zen-workspace-shortcut-switch-10 = Przełącz na obszar roboczy 10
|
||||
zen-workspace-shortcut-forward = Następny obszar roboczy
|
||||
zen-workspace-shortcut-backward = Poprzedni obszar roboczy
|
||||
zen-sidebar-shortcut-toggle = Przełącz szerokość paska bocznego
|
||||
zen-pinned-tab-shortcut-reset = Zresetuj przypiętą kartę do przypiętego adresu URL
|
||||
zen-split-view-shortcut-grid = Przełącz siatkę widoku dzielonego
|
||||
zen-sidebar-shortcut-toggle = Przełącz szerokość panelu bocznego
|
||||
zen-pinned-tab-shortcut-reset = Przywróć przypiętą kartę do przypiętego adresu URL
|
||||
zen-split-view-shortcut-grid = Przełącz widok podziału na siatkę
|
||||
zen-split-view-shortcut-vertical = Przełącz podział ekranu w pionie
|
||||
zen-split-view-shortcut-horizontal = Przełącz podział ekranu w poziomie
|
||||
zen-split-view-shortcut-unsplit = Zamknij podział widoku
|
||||
zen-new-empty-split-view-shortcut = Nowy pusty widok podziału
|
||||
zen-new-empty-split-view-shortcut = Nowy pusty widok podzielony
|
||||
zen-key-select-tab-1 = Wybierz kartę #1
|
||||
zen-key-select-tab-2 = Wybierz kartę #2
|
||||
zen-key-select-tab-3 = Wybierz kartę #3
|
||||
@@ -302,17 +302,17 @@ zen-key-goto-history = Przejdź do historii
|
||||
zen-key-go-home = Przejdź do strony głównej
|
||||
zen-bookmark-show-sidebar-shortcut = Pokaż pasek boczny zakładek
|
||||
zen-bookmark-show-toolbar-shortcut = Pokaż pasek zakładek
|
||||
zen-devtools-toggle-shortcut = Włącz narzędzia developerskie
|
||||
zen-devtools-toggle-shortcut = Przełącz narzędzia deweloperskie
|
||||
zen-devtools-toggle-browser-toolbox-shortcut = Włącz narzędzia przeglądarki
|
||||
zen-devtools-toggle-browser-console-shortcut = Włącz konsolę przeglądarki
|
||||
zen-devtools-toggle-responsive-design-mode-shortcut = Włącz tryb responsywny
|
||||
zen-devtools-toggle-inspector-shortcut = Włącz Inspektor
|
||||
zen-devtools-toggle-web-console-shortcut = Włącz konsolę sieciową
|
||||
zen-devtools-toggle-web-console-shortcut = Włącz konsolę
|
||||
zen-devtools-toggle-js-debugger-shortcut = Włącz debugger JavaScript
|
||||
zen-devtools-toggle-net-monitor-shortcut = Włącz monitor sieci
|
||||
zen-devtools-toggle-style-editor-shortcut = Włącz edytor stylów
|
||||
zen-devtools-toggle-performance-shortcut = Włącz Wydajność
|
||||
zen-devtools-toggle-storage-shortcut = Włącz Pamięć
|
||||
zen-devtools-toggle-storage-shortcut = Włącz Dane
|
||||
zen-devtools-toggle-dom-shortcut = Włącz DOM
|
||||
zen-devtools-toggle-accessibility-shortcut = Włącz Dostępność
|
||||
zen-close-all-unpinned-tabs-shortcut = Zamknij wszystkie nieprzypięte karty
|
||||
|
||||
@@ -9,13 +9,13 @@ zen-folders-panel-rename-folder =
|
||||
zen-folders-panel-unpack-folder =
|
||||
.label = Rozpakuj folder
|
||||
zen-folders-new-subfolder =
|
||||
.label = Nowy folder
|
||||
.label = Nowy podfolder
|
||||
zen-folders-panel-delete-folder =
|
||||
.label = Usuń folder
|
||||
zen-folders-panel-convert-folder-to-space =
|
||||
.label = Konwertuj folder na przestrzeń
|
||||
zen-folders-panel-change-folder-space =
|
||||
.label = Zmień nazwę przestrzeni...
|
||||
.label = Zmień przestrzeń...
|
||||
zen-folders-unload-all-tooltip =
|
||||
.tooltiptext = Wyładuj aktywne w tym folderze
|
||||
zen-folders-unload-folder =
|
||||
|
||||
@@ -14,7 +14,7 @@ tab-context-zen-reset-pinned-tab =
|
||||
tab-context-zen-add-essential =
|
||||
.label = Dodaj do niezbędnych
|
||||
.accesskey = E
|
||||
tab-context-zen-add-essential-badge = { $num } / { $max } zajętych miejsc
|
||||
tab-context-zen-add-essential-badge = { $num } / { $max }
|
||||
tab-context-zen-remove-essential =
|
||||
.label = Usuń z niezbędnych
|
||||
.accesskey = R
|
||||
@@ -47,7 +47,7 @@ zen-general-cancel-label =
|
||||
zen-general-confirm =
|
||||
.label = Potwierdź
|
||||
zen-pinned-tab-replaced = URL przypiętej karty został zastąpiony bieżącym adresem!
|
||||
zen-tabs-renamed = Nazwa karty została z powodzeniem zmieniona!
|
||||
zen-tabs-renamed = Nazwa karty została pomyślnie zmieniona!
|
||||
zen-background-tab-opened-toast = Nowa karta została otworzona w tle!
|
||||
zen-workspace-renamed-toast = Zmieniono nazwę przestrzeni roboczej!
|
||||
zen-toggle-compact-mode-button =
|
||||
@@ -92,7 +92,7 @@ zen-site-data-site-settings =
|
||||
zen-site-data-header-share =
|
||||
.tooltiptext = Udostępnij tę stronę
|
||||
zen-site-data-header-reader-mode =
|
||||
.tooltiptext = Wejdź do trybu czytnika
|
||||
.tooltiptext = Przejdź do trybu czytania
|
||||
zen-site-data-header-screenshot =
|
||||
.tooltiptext = Zrzut ekranu
|
||||
zen-site-data-header-bookmark =
|
||||
@@ -119,7 +119,7 @@ zen-sidebar-notification-restart-safe-mode-label = Coś się zepsuło?
|
||||
zen-sidebar-notification-restart-safe-mode-tooltip =
|
||||
.title = Zrestartuj w trybie bezpiecznym
|
||||
zen-window-sync-migration-dialog-title = Utrzymuj synchronizację okien
|
||||
zen-window-sync-migration-dialog-message = Zen synchronizuje okna na jednym urządzeniu, żeby zmiany w jednym oknie były natychmiast odzwierciedlone w pozostałych.
|
||||
zen-window-sync-migration-dialog-message = Zen synchronizuje teraz okna na tym samym urządzeniu, dzięki czemu zmiany wprowadzone w jednym oknie są natychmiast odzwierciedlane w pozostałych.
|
||||
zen-window-sync-migration-dialog-learn-more = Dowiedz się więcej
|
||||
zen-window-sync-migration-dialog-accept = Rozumiem
|
||||
zen-appmenu-new-blank-window =
|
||||
|
||||
@@ -5,13 +5,15 @@
|
||||
tab-zen-split-tabs =
|
||||
.label =
|
||||
{ $tabCount ->
|
||||
[1] Podziel zakładkę (potrzeba wielu wybranych kart)
|
||||
*[other] Zakładki do podzielenia: { $tabCount }
|
||||
[-1] Oddziel kartę
|
||||
[1] Złącz kartę (wymagane jest zaznaczenie wielu kart)
|
||||
[few] Złącz { $tabCount } karty
|
||||
*[other] Złącz { $tabCount } kart
|
||||
}
|
||||
.accesskey = S
|
||||
zen-split-link =
|
||||
.label = Podziel link na nową kartę
|
||||
.label = Otwórz link w widoku podzielonym
|
||||
.accesskey = S
|
||||
zen-split-view-modifier-header = Podziel widok
|
||||
zen-split-view-modifier-header = Widok podzielony
|
||||
zen-split-view-modifier-activate-reallocation =
|
||||
.label = Aktywuj realokację
|
||||
|
||||
@@ -27,14 +27,16 @@ sidebar-zen-create-new =
|
||||
tabbrowser-unload-tab-button =
|
||||
.tooltiptext =
|
||||
{ $tabCount ->
|
||||
[one] Dezaktywuj i przełącz na kartę
|
||||
*[other] Dezaktywuj { $tabCount } karty i przełącz na pierwszą
|
||||
[one] Wyładuj i przełącz na kartę
|
||||
[few] Wyładuj { $tabCount } karty i przełącz na pierwszą
|
||||
*[other] Wyładuj { $tabCount } kart i przełącz na pierwszą
|
||||
}
|
||||
tabbrowser-reset-pin-button =
|
||||
.tooltiptext =
|
||||
{ $tabCount ->
|
||||
[one] Zresetuj i przypnij kartę
|
||||
*[other] Zresetuj i przypnij karty w liczbie: { $tabCount }
|
||||
[few] Zresetuj i przypnij { $tabCount } karty
|
||||
*[other] Zresetuj i przypnij { $tabCount } kart
|
||||
}
|
||||
zen-tab-sublabel =
|
||||
{ $tabSubtitle ->
|
||||
|
||||
@@ -10,7 +10,7 @@ zen-welcome-import-description-2 = Łatwo przenieś je z innej przeglądarki i k
|
||||
zen-welcome-import-button = Zaimportuj teraz
|
||||
zen-welcome-set-default-browser = Ustaw { -brand-short-name } jako swoją domyślną przeglądarkę
|
||||
zen-welcome-dont-set-default-browser = NIE ustawiaj { -brand-short-name } jako swoja domyślna przeglądarka
|
||||
zen-welcome-initial-essentials-title = Twoje kluczowe karty, zawsze w zasięgu
|
||||
zen-welcome-initial-essentials-title = Twoje kluczowe karty, zawsze pod ręką
|
||||
zen-welcome-initial-essentials-description-1 = Utrzymuj swoje najważniejsze karty zawsze pod ręką, niezależnie od tego, jak wiele masz ich otwartych.
|
||||
zen-welcome-initial-essentials-description-2 = Niezbędne karty są zawsze widoczne, niezależnie od bieżącego obszaru roboczego.
|
||||
zen-welcome-workspace-colors-title = Twój obszar roboczy, Twoje kolory
|
||||
|
||||
@@ -5,8 +5,9 @@
|
||||
tab-zen-split-tabs =
|
||||
.label =
|
||||
{ $tabCount ->
|
||||
[1] Dividir aba (é necessário várias abas selecionadas)
|
||||
*[other] Dividir { $tabCount } Abas
|
||||
[-1] Dividir aba
|
||||
[1] Juntar Aba (necessário várias abas selecionadas)
|
||||
*[other] Juntar { $tabCount } Abas
|
||||
}
|
||||
.accesskey = S.O.
|
||||
zen-split-link =
|
||||
|
||||
@@ -5,8 +5,8 @@
|
||||
tab-zen-split-tabs =
|
||||
.label =
|
||||
{ $tabCount ->
|
||||
[1] Split Tab (multiple selected tabs needed)
|
||||
*[other] Split { $tabCount } Tabs
|
||||
[1] Join Tab (multiple selected tabs needed)
|
||||
*[other] Join { $tabCount } Tabs
|
||||
}
|
||||
.accesskey = S
|
||||
zen-split-link =
|
||||
|
||||
@@ -5,8 +5,8 @@
|
||||
tab-zen-split-tabs =
|
||||
.label =
|
||||
{ $tabCount ->
|
||||
[1] Split Tab (multiple selected tabs needed)
|
||||
*[other] Split { $tabCount } Tabs
|
||||
[1] Join Tab (multiple selected tabs needed)
|
||||
*[other] Join { $tabCount } Tabs
|
||||
}
|
||||
.accesskey = S
|
||||
zen-split-link =
|
||||
|
||||
@@ -5,6 +5,7 @@
|
||||
tab-zen-split-tabs =
|
||||
.label =
|
||||
{ $tabCount ->
|
||||
[-1] Avdela flikar
|
||||
[1] Delad flik (flera valda flikar behövs)
|
||||
*[other] Delad { $tabCount } flikar
|
||||
}
|
||||
|
||||
@@ -5,8 +5,8 @@
|
||||
tab-zen-split-tabs =
|
||||
.label =
|
||||
{ $tabCount ->
|
||||
[1] Split Tab (multiple selected tabs needed)
|
||||
*[other] Split { $tabCount } Tabs
|
||||
[1] Join Tab (multiple selected tabs needed)
|
||||
*[other] Join { $tabCount } Tabs
|
||||
}
|
||||
.accesskey = S
|
||||
zen-split-link =
|
||||
|
||||
@@ -8,9 +8,9 @@ category-zen-looks =
|
||||
zen-warning-language = Varsayılan dili değiştirmek, Websitesinin sizi izlemesini kolaylaştırabilir.
|
||||
zen-vertical-tabs-layout-header = Tarayıcı Düzeni
|
||||
zen-vertical-tabs-layout-description = Size en uygun düzeni seçin
|
||||
zen-layout-single-toolbar = Tek Araç Çubuğu
|
||||
zen-layout-single-toolbar = Sadece kenar çubuğu
|
||||
zen-layout-multiple-toolbar = Kenar çubuğu ve üst araç çubuğu
|
||||
zen-layout-collapsed-toolbar = Daraltılmış Araç Çubuğu
|
||||
zen-layout-collapsed-toolbar = Daraltılmış kenar çubuğu
|
||||
sync-currently-syncing-workspaces = Çalışma alanları
|
||||
sync-engine-workspaces =
|
||||
.label = Çalışma alanları
|
||||
@@ -64,7 +64,7 @@ zen-pinned-tab-manager-restore-pinned-tabs-to-pinned-url =
|
||||
.label = Sabitlenmiş sekmelerin URL'lerini tarayıcı açılışında orjinaline döndür
|
||||
zen-pinned-tab-manager-container-specific-essentials-enabled =
|
||||
.label = Kapsayıcıya özgü temel sekmeleri etkinleştir
|
||||
zen-pinned-tab-manager-close-shortcut-behavior-label = Sekmeyi Kapatma Kısayolu Davranışı
|
||||
zen-pinned-tab-manager-close-shortcut-behavior-label = Sekme kapatma kısayolu davranışı
|
||||
zen-pinned-tab-manager-reset-unload-switch-close-shortcut-option =
|
||||
.label = URL'yi sıfırla, yüklemesini kaldır ve sonraki sekmeye geç
|
||||
zen-pinned-tab-manager-unload-switch-close-shortcut-option =
|
||||
@@ -78,7 +78,7 @@ zen-pinned-tab-manager-reset-close-shortcut-option =
|
||||
zen-pinned-tab-manager-close-close-shortcut-option =
|
||||
.label = Sekmeyi kapat
|
||||
pane-zen-workspaces-header = Çalışma Alanları
|
||||
zen-settings-workspaces-header = Çalışma alanları için genel ayarlar
|
||||
zen-settings-workspaces-header = Çalışma Alanları Genel Ayarları
|
||||
zen-settings-workspaces-description = Çalışma alanları sayesinde birden fazla göz atma oturumuna aynı anda sahip olabilirsin!
|
||||
zen-settings-workspaces-enabled =
|
||||
.label = Çalışma alanlarını aktif et
|
||||
@@ -175,23 +175,23 @@ zenCKSOption-group-other = Diğer
|
||||
zenCKSOption-group-windowAndTabManagement = Pencere ve Sekme Yönetimi
|
||||
zenCKSOption-group-navigation = Navigasyon
|
||||
zenCKSOption-group-searchAndFind = Ara ve Bul
|
||||
zenCKSOption-group-pageOperations = Sayfa Eylemleri
|
||||
zenCKSOption-group-pageOperations = Sayfa İşlemleri
|
||||
zenCKSOption-group-historyAndBookmarks = Geçmiş ve Yer İmleri
|
||||
zenCKSOption-group-mediaAndDisplay = Medya ve Görüntü
|
||||
zenCKSOption-group-zen-compact-mode = Kompakt Mod
|
||||
zenCKSOption-group-zen-workspace = Çalışma Alanları
|
||||
zenCKSOption-group-zen-other = Diğer Zen Özellikleri
|
||||
zenCKSOption-group-zen-split-view = Bölmeli Görünüm
|
||||
zenCKSOption-group-zen-split-view = Bölünmüş Görünüm
|
||||
zenCKSOption-group-devTools = Geliştirici Araçları
|
||||
zen-key-quick-restart = Hızlı Yeniden Başlatma
|
||||
zen-window-new-shortcut = Yeni Pencere
|
||||
zen-tab-new-shortcut = Yeni Sekme
|
||||
zen-key-redo = Geri Al
|
||||
zen-key-quick-restart = Hızlı yeniden başlat
|
||||
zen-window-new-shortcut = Yeni pencere aç
|
||||
zen-tab-new-shortcut = Yeni sekme aç
|
||||
zen-key-redo = Yinele
|
||||
zen-restore-last-closed-tab-shortcut = Son kapatılan sekmeyi geri aç
|
||||
zen-location-open-shortcut = Dizini aç
|
||||
zen-location-open-shortcut-alt = Dizini aç (Alt)
|
||||
zen-key-undo-close-window = Kapatılan pencereyi geri al
|
||||
zen-text-action-undo-shortcut = Geri Al
|
||||
zen-text-action-undo-shortcut = Geri al
|
||||
zen-text-action-redo-shortcut = Yinele
|
||||
zen-text-action-cut-shortcut = Kes
|
||||
zen-text-action-copy-shortcut = Kopyala
|
||||
@@ -233,9 +233,9 @@ zen-key-enter-full-screen = Tam ekrana gir
|
||||
zen-key-exit-full-screen = Tam ekrandan çık
|
||||
zen-ai-chatbot-sidebar-shortcut = Yapay zeka sohbet kenar çubuğunu aç/kapat
|
||||
zen-key-inspector-mac = Denetleyi aç/kapat (Mac)
|
||||
zen-toggle-sidebar-shortcut = Firefox kenar çubuğunu aktif et
|
||||
zen-toggle-sidebar-shortcut = Firefox kenar çubuğunu aç/kapat
|
||||
zen-toggle-pin-tab-shortcut = Sekme sabitlemeyi aç/kapat
|
||||
zen-reader-mode-toggle-shortcut-other = Okuma modunu aktif et
|
||||
zen-reader-mode-toggle-shortcut-other = Okuma modunu aç/kapat
|
||||
zen-picture-in-picture-toggle-shortcut = Görsel içinde görseli (PiP) aç/kapat
|
||||
zen-nav-reload-shortcut-2 = Sayfayı yenile
|
||||
zen-key-about-processes = İşlemler Hakkında
|
||||
@@ -269,41 +269,41 @@ zen-compact-mode-shortcut-show-sidebar = Kayan kenar çubuğunu aç/kapat
|
||||
zen-compact-mode-shortcut-show-toolbar = Kayan alet çubuğunu aç/kapat
|
||||
zen-compact-mode-shortcut-toggle = Kompakt modu aktifleştir
|
||||
zen-glance-expand = Hızlı bakışı genişlet
|
||||
zen-workspace-shortcut-switch-1 = 1. Çalışma Alanına Geç
|
||||
zen-workspace-shortcut-switch-2 = 2. Çalışma Alanına Geç
|
||||
zen-workspace-shortcut-switch-3 = 3. Çalışma Alanına Geç
|
||||
zen-workspace-shortcut-switch-4 = 4. Çalışma Alanına Geç
|
||||
zen-workspace-shortcut-switch-5 = 5. Çalışma Alanına Geç
|
||||
zen-workspace-shortcut-switch-6 = 6. Çalışma Alanına Geç
|
||||
zen-workspace-shortcut-switch-7 = 7. Çalışma Alanına Geç
|
||||
zen-workspace-shortcut-switch-8 = 8. Çalışma Alanına Geç
|
||||
zen-workspace-shortcut-switch-9 = 9. Çalışma Alanına Geç
|
||||
zen-workspace-shortcut-switch-10 = 10. Çalışma Alanına Geç
|
||||
zen-workspace-shortcut-switch-1 = 1. çalışma alanına geç
|
||||
zen-workspace-shortcut-switch-2 = 2. çalışma alanına geç
|
||||
zen-workspace-shortcut-switch-3 = 3. çalışma alanına geç
|
||||
zen-workspace-shortcut-switch-4 = 4. çalışma alanına geç
|
||||
zen-workspace-shortcut-switch-5 = 5. çalışma alanına geç
|
||||
zen-workspace-shortcut-switch-6 = 6. çalışma alanına geç
|
||||
zen-workspace-shortcut-switch-7 = 7. çalışma alanına geç
|
||||
zen-workspace-shortcut-switch-8 = 8. çalışma alanına geç
|
||||
zen-workspace-shortcut-switch-9 = 9. çalışma alanına geç
|
||||
zen-workspace-shortcut-switch-10 = 10. çalışma alanına geç
|
||||
zen-workspace-shortcut-forward = Sonraki çalışma alanı
|
||||
zen-workspace-shortcut-backward = Önceki çalışma alanı
|
||||
zen-sidebar-shortcut-toggle = Kenar çubuğunun genişliğini değiştir
|
||||
zen-sidebar-shortcut-toggle = Kenar çubuğu genişliğini değiştir
|
||||
zen-pinned-tab-shortcut-reset = Sabitlenen sekmeyi sabitlenen URL'ye sıfırla
|
||||
zen-split-view-shortcut-grid = Izgaralı bölünmüş görünümü aç/kapat
|
||||
zen-split-view-shortcut-vertical = Dikey bölünmüş görünümü aç/kapat
|
||||
zen-split-view-shortcut-horizontal = Yatay Bölünmüş Görünümü Aç/Kapat
|
||||
zen-split-view-shortcut-unsplit = Bölünmüş Görünümü Kapat
|
||||
zen-new-empty-split-view-shortcut = Yeni Boş Bölünmüş Görünüm
|
||||
zen-key-select-tab-1 = 1. Sekmeyi Seç
|
||||
zen-key-select-tab-2 = 2. Sekmeyi Seç
|
||||
zen-key-select-tab-3 = 3. Sekmeyi Seç
|
||||
zen-key-select-tab-4 = 4. Sekmeyi Seç
|
||||
zen-key-select-tab-5 = 5. Sekmeyi Seç
|
||||
zen-key-select-tab-6 = 6. Sekmeyi Seç
|
||||
zen-key-select-tab-7 = 7. Sekmeyi Seç
|
||||
zen-key-select-tab-8 = 8. Sekmeyi Seç
|
||||
zen-key-select-tab-last = Son Sekmeyi Seç
|
||||
zen-key-show-all-tabs = Tüm Sekmeleri Göster
|
||||
zen-key-goto-history = Arama Geçmişine Git
|
||||
zen-key-go-home = Ana Sayfaya Git
|
||||
zen-bookmark-show-sidebar-shortcut = Yer İmlerini Kenar Çubuğunda Göster
|
||||
zen-bookmark-show-toolbar-shortcut = Yer İmlerini Araç Çubuğunda Göster
|
||||
zen-devtools-toggle-shortcut = Geliştirici Araçlarını Aç/Kapat
|
||||
zen-devtools-toggle-browser-toolbox-shortcut = Tarayıcı Araç Kutusunu Aç/Kapat
|
||||
zen-split-view-shortcut-unsplit = Bölünmüş görünümü kapat
|
||||
zen-new-empty-split-view-shortcut = Yeni boş bölünmüş görünüm
|
||||
zen-key-select-tab-1 = 1. sekmeyi seç
|
||||
zen-key-select-tab-2 = 2. sekmeyi seç
|
||||
zen-key-select-tab-3 = 3. sekmeyi seç
|
||||
zen-key-select-tab-4 = 4. sekmeyi seç
|
||||
zen-key-select-tab-5 = 5. sekmeyi seç
|
||||
zen-key-select-tab-6 = 6. sekmeyi seç
|
||||
zen-key-select-tab-7 = 7. sekmeyi seç
|
||||
zen-key-select-tab-8 = 8. sekmeyi seç
|
||||
zen-key-select-tab-last = Son sekmeyi seç
|
||||
zen-key-show-all-tabs = Tüm sekmeleri göster
|
||||
zen-key-goto-history = Arama geçmişine git
|
||||
zen-key-go-home = Ana sayfaya git
|
||||
zen-bookmark-show-sidebar-shortcut = Yer imlerini kenar çubuğunda göster
|
||||
zen-bookmark-show-toolbar-shortcut = Yer imlerini araç çubuğunda göster
|
||||
zen-devtools-toggle-shortcut = Geliştirici araçlarını aç/kapat
|
||||
zen-devtools-toggle-browser-toolbox-shortcut = Tarayıcı araç kutusunu aç/kapat
|
||||
zen-devtools-toggle-browser-console-shortcut = Tarayıcı konsolunu aç/kapat
|
||||
zen-devtools-toggle-responsive-design-mode-shortcut = Uyumlu tasarım modunu aç/kapat
|
||||
zen-devtools-toggle-inspector-shortcut = Denetleyiciyi aç/kapat
|
||||
|
||||
@@ -7,22 +7,22 @@ unified-extensions-description = Uzantılar { -brand-short-name }'e daha fazla e
|
||||
tab-context-zen-reset-pinned-tab =
|
||||
.label =
|
||||
{ $isEssential ->
|
||||
[true] Temel sekmeyi sıfırla
|
||||
*[false] Sabitlenmiş sekmeyi sıfırla
|
||||
[true] Temel sekmeyi sıfırla
|
||||
*[false] Sabitlenmiş sekmeyi sıfırla
|
||||
}
|
||||
.accesskey = R
|
||||
tab-context-zen-add-essential =
|
||||
.label = Temel sekmelere ekle
|
||||
.accesskey = E
|
||||
tab-context-zen-add-essential-badge = { $num } / { $max } yuva dolu
|
||||
tab-context-zen-add-essential-badge = { $num } / { $max }
|
||||
tab-context-zen-remove-essential =
|
||||
.label = Temel sekmelerden kaldır
|
||||
.accesskey = R
|
||||
tab-context-zen-replace-pinned-url-with-current =
|
||||
.label =
|
||||
{ $isEssential ->
|
||||
[true] Temel sekmenin URL’sini geçerli olanla değiştir
|
||||
*[false] Sabitlenmiş sekme URL’sini geçerli olanla değiştir
|
||||
[true] Temel sekmenin URL’sini geçerli olanla değiştir
|
||||
*[false] Sabitlenmiş sekme URL’sini geçerli olanla değiştir
|
||||
}
|
||||
.accesskey = C
|
||||
tab-context-zen-edit-title =
|
||||
@@ -88,7 +88,7 @@ zen-site-data-manage-addons =
|
||||
zen-site-data-get-addons =
|
||||
.label = Uzantı ekle
|
||||
zen-site-data-site-settings =
|
||||
.label = Tüm Site Ayarları
|
||||
.label = Tüm site ayarları
|
||||
zen-site-data-header-share =
|
||||
.tooltiptext = Bu sayfayı paylaş
|
||||
zen-site-data-header-reader-mode =
|
||||
|
||||
@@ -5,7 +5,8 @@
|
||||
tab-zen-split-tabs =
|
||||
.label =
|
||||
{ $tabCount ->
|
||||
[1] Bölünmüş Sekme (birden fazla seçilmiş sekme gerekir)
|
||||
[-1] Sekmeleri birleştir
|
||||
[1] Sekmeyi böl (birden fazla seçilmiş sekme gerekir)
|
||||
*[other] { $tabCount } Sekmeyi Böl
|
||||
}
|
||||
.accesskey = S
|
||||
|
||||
@@ -27,18 +27,18 @@ sidebar-zen-create-new =
|
||||
tabbrowser-unload-tab-button =
|
||||
.tooltiptext =
|
||||
{ $tabCount ->
|
||||
[bir] Kapatın ve sekmeye geçin
|
||||
[one] Kapatın ve sekmeye geçin
|
||||
*[other] { $tabCount } sekmesini kaldır ve ilkine geç
|
||||
}
|
||||
tabbrowser-reset-pin-button =
|
||||
.tooltiptext =
|
||||
{ $tabCount ->
|
||||
[bir] Sıfırlayın ve sabitleyin
|
||||
[one] Sıfırlayın ve sabitleyin
|
||||
*[other] { $tabCount } Sekmeyi sıfırla ve sabitle
|
||||
}
|
||||
zen-tab-sublabel =
|
||||
{ $tabSubtitle ->
|
||||
[zen-default-pinned] Sabitlenmiş URL’ye geri dön
|
||||
[zen-default-pinned-cmd] Sabitlenmiş sekmeden ayır
|
||||
*[other] { $tabSubtitle }
|
||||
[zen-default-pinned] Sabitlenmiş URL’ye geri dön
|
||||
[zen-default-pinned-cmd] Sabitlenmiş sekmeden ayır
|
||||
*[other] { $tabSubtitle }
|
||||
}
|
||||
|
||||
@@ -31,7 +31,7 @@ zen-workspaces-how-to-reorder-desc = Alanları yeniden sıralamak için kenar ç
|
||||
zen-workspaces-change-theme =
|
||||
.label = Temayı düzenle
|
||||
zen-workspaces-panel-context-open =
|
||||
.label = Çalışma Alanı Aç
|
||||
.label = Çalışma alanı aç
|
||||
.accesskey = O
|
||||
zen-workspaces-panel-context-edit =
|
||||
.label = Çalışma alanını düzenle
|
||||
|
||||
@@ -7,8 +7,8 @@ unified-extensions-description = Các tiện ích mở rộng được sử dụ
|
||||
tab-context-zen-reset-pinned-tab =
|
||||
.label =
|
||||
{ $isEssential ->
|
||||
[true] Đặt lại thẻ chính
|
||||
*[false] Đặt lại thẻ đã ghim
|
||||
[true] Đặt lại thẻ chính
|
||||
*[false] Đặt lại thẻ đã ghim
|
||||
}
|
||||
.accesskey = R
|
||||
tab-context-zen-add-essential =
|
||||
|
||||
@@ -121,4 +121,4 @@ zen-window-sync-migration-dialog-message = Zen 现已支持同一设备上的窗
|
||||
zen-window-sync-migration-dialog-learn-more = 了解更多
|
||||
zen-window-sync-migration-dialog-accept = 知道了
|
||||
zen-appmenu-new-blank-window =
|
||||
.label = 新空白窗口
|
||||
.label = 新建空白窗口
|
||||
|
||||
@@ -5,6 +5,7 @@
|
||||
tab-zen-split-tabs =
|
||||
.label =
|
||||
{ $tabCount ->
|
||||
[-1] 取消分屏标签页
|
||||
[1] 分屏标签页(需要选择多个标签页)
|
||||
*[other] 分屏 { $tabCount } 个标签页
|
||||
}
|
||||
|
||||
@@ -14,7 +14,7 @@ tab-context-zen-reset-pinned-tab =
|
||||
tab-context-zen-add-essential =
|
||||
.label = 新增至 Essentials
|
||||
.accesskey = E
|
||||
tab-context-zen-add-essential-badge = 已使用 { $num } / { $max } 個位置
|
||||
tab-context-zen-add-essential-badge = { $num } / { $max }
|
||||
tab-context-zen-remove-essential =
|
||||
.label = 從 Essentials 中移除
|
||||
.accesskey = R
|
||||
|
||||
25
package-lock.json
generated
25
package-lock.json
generated
@@ -1005,15 +1005,15 @@
|
||||
"license": "MIT"
|
||||
},
|
||||
"node_modules/axios": {
|
||||
"version": "1.13.6",
|
||||
"resolved": "https://registry.npmjs.org/axios/-/axios-1.13.6.tgz",
|
||||
"integrity": "sha512-ChTCHMouEe2kn713WHbQGcuYrr6fXTBiu460OTwWrWob16g1bXn4vtz07Ope7ewMozJAnEquLk5lWQWtBig9DQ==",
|
||||
"version": "1.15.0",
|
||||
"resolved": "https://registry.npmjs.org/axios/-/axios-1.15.0.tgz",
|
||||
"integrity": "sha512-wWyJDlAatxk30ZJer+GeCWS209sA42X+N5jU2jy6oHTp7ufw8uzUTVFBX9+wTfAlhiJXGS0Bq7X6efruWjuK9Q==",
|
||||
"dev": true,
|
||||
"license": "MIT",
|
||||
"dependencies": {
|
||||
"follow-redirects": "^1.15.11",
|
||||
"form-data": "^4.0.5",
|
||||
"proxy-from-env": "^1.1.0"
|
||||
"proxy-from-env": "^2.1.0"
|
||||
}
|
||||
},
|
||||
"node_modules/b4a": {
|
||||
@@ -3074,9 +3074,9 @@
|
||||
"license": "ISC"
|
||||
},
|
||||
"node_modules/picomatch": {
|
||||
"version": "2.3.1",
|
||||
"resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.1.tgz",
|
||||
"integrity": "sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==",
|
||||
"version": "2.3.2",
|
||||
"resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.2.tgz",
|
||||
"integrity": "sha512-V7+vQEJ06Z+c5tSye8S+nHUfI51xoXIXjHQ99cQtKUkQqqO1kO/KCJUfZXuB47h/YBlDhah2H3hdUGXn8ie0oA==",
|
||||
"dev": true,
|
||||
"license": "MIT",
|
||||
"engines": {
|
||||
@@ -3254,11 +3254,14 @@
|
||||
}
|
||||
},
|
||||
"node_modules/proxy-from-env": {
|
||||
"version": "1.1.0",
|
||||
"resolved": "https://registry.npmjs.org/proxy-from-env/-/proxy-from-env-1.1.0.tgz",
|
||||
"integrity": "sha512-D+zkORCbA9f1tdWRK0RaCR3GPv50cMxcrz4X8k5LTSUD1Dkw47mKJEZQNunItRTkWwgtaUSo1RVFRIG9ZXiFYg==",
|
||||
"version": "2.1.0",
|
||||
"resolved": "https://registry.npmjs.org/proxy-from-env/-/proxy-from-env-2.1.0.tgz",
|
||||
"integrity": "sha512-cJ+oHTW1VAEa8cJslgmUZrc+sjRKgAKl3Zyse6+PV38hZe/V6Z14TbCuXcan9F9ghlz4QrFr2c92TNF82UkYHA==",
|
||||
"dev": true,
|
||||
"license": "MIT"
|
||||
"license": "MIT",
|
||||
"engines": {
|
||||
"node": ">=10"
|
||||
}
|
||||
},
|
||||
"node_modules/pump": {
|
||||
"version": "3.0.2",
|
||||
|
||||
@@ -23,7 +23,6 @@
|
||||
"sync:l10n": "python3 scripts/update_ff.py --just-l10n",
|
||||
"lint": "cd engine && ./mach lint zen",
|
||||
"lint:fix": "npm run lint -- --fix",
|
||||
"prepare": "husky",
|
||||
"reset-ff": "surfer reset",
|
||||
"surfer": "surfer",
|
||||
"test": "python3 scripts/run_tests.py",
|
||||
@@ -38,9 +37,6 @@
|
||||
"type": "git",
|
||||
"url": "git+https://github.com/zen-browser/desktop.git"
|
||||
},
|
||||
"hooks": {
|
||||
"pre-commit": "npm run prepare"
|
||||
},
|
||||
"keywords": [],
|
||||
"author": "",
|
||||
"license": "MPL-2.0",
|
||||
|
||||
@@ -86,3 +86,7 @@
|
||||
- name: browser.tabs.splitView.enabled
|
||||
value: false
|
||||
locked: true
|
||||
|
||||
# See gh-12985 for details on the following preferences
|
||||
- name: browser.search.widget.new
|
||||
value: true
|
||||
|
||||
@@ -16,3 +16,6 @@
|
||||
|
||||
- name: zen.glance.animation-duration
|
||||
value: 350 # in milliseconds
|
||||
|
||||
- name: zen.glance.deactivate-docshell-during-animation
|
||||
value: true
|
||||
|
||||
@@ -27,3 +27,7 @@
|
||||
- name: widget.macos.native-popovers
|
||||
value: true
|
||||
condition: "defined(XP_MACOSX)"
|
||||
|
||||
- name: zen.widget.macos.override-system-swipe-gestures
|
||||
value: true
|
||||
condition: "defined(XP_MACOSX)"
|
||||
|
||||
@@ -8,4 +8,4 @@ packaging==24.2
|
||||
pathspec==0.12.1
|
||||
platformdirs==4.3.6
|
||||
pycodestyle==2.12.1
|
||||
requests==2.32.5
|
||||
requests==2.33.0
|
||||
|
||||
167
scripts/mar_sign.sh
Normal file
167
scripts/mar_sign.sh
Normal file
@@ -0,0 +1,167 @@
|
||||
#!/usr/bin/env bash
|
||||
# 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/.
|
||||
|
||||
set -e
|
||||
|
||||
CERT_PATH_DIR=build/signing
|
||||
UPDATER_CERT_DIR="engine/toolkit/mozapps/update/updater"
|
||||
NSS_CONFIG_DIR="$CERT_PATH_DIR/nss_config"
|
||||
|
||||
generate_certs() {
|
||||
mkdir temp
|
||||
cd temp
|
||||
|
||||
# 1. Generate private key
|
||||
openssl genrsa -out private_key.pem 4096
|
||||
|
||||
# 2. Generate self-signed certificate (required for PKCS#12 bundling)
|
||||
openssl req -new -x509 \
|
||||
-key private_key.pem \
|
||||
-out cert.pem \
|
||||
-subj "/CN=MAR Signing"
|
||||
|
||||
# 3. Export public key as SPKI DER (for embedding in updater)
|
||||
openssl rsa -in private_key.pem -pubout -outform DER -out public_key.der
|
||||
|
||||
cd ..
|
||||
mkdir -p "$CERT_PATH_DIR"
|
||||
mv temp/private_key.pem "$CERT_PATH_DIR"/private_key.pem
|
||||
mv temp/cert.pem "$CERT_PATH_DIR"/cert.pem
|
||||
mv temp/public_key.der "$CERT_PATH_DIR"/public_key.der
|
||||
|
||||
mkdir -p "$CERT_PATH_DIR/env"
|
||||
base64 -w 0 "$CERT_PATH_DIR"/cert.pem > "$CERT_PATH_DIR"/env/ZEN_SIGNING_CERT_PEM_BASE64
|
||||
base64 -w 0 "$CERT_PATH_DIR"/private_key.pem > "$CERT_PATH_DIR"/env/ZEN_SIGNING_PRIVATE_KEY_PEM_BASE64
|
||||
|
||||
# Verify public key
|
||||
openssl rsa -in "$CERT_PATH_DIR"/public_key.der \
|
||||
-pubin -inform DER -text -noout
|
||||
|
||||
rm -rf temp
|
||||
}
|
||||
|
||||
import_cert() {
|
||||
if [ ! -f "$CERT_PATH_DIR/public_key.der" ]; then
|
||||
echo "Error: public_key.der not found. Run with -g first." >&2
|
||||
exit 1
|
||||
fi
|
||||
echo "Importing certificate into $UPDATER_CERT_DIR/release_primary.der"
|
||||
cp "$CERT_PATH_DIR/public_key.der" "$UPDATER_CERT_DIR/release_primary.der"
|
||||
echo "Importing certificate into $UPDATER_CERT_DIR/release_secondary.der"
|
||||
cp "$CERT_PATH_DIR/public_key.der" "$UPDATER_CERT_DIR/release_secondary.der"
|
||||
echo "Done. Rebuild the updater to embed the new certificate."
|
||||
}
|
||||
|
||||
create_nss_config_dir() {
|
||||
rm -rf "$NSS_CONFIG_DIR"
|
||||
mkdir "$NSS_CONFIG_DIR"
|
||||
|
||||
if [ -z "$ZEN_MAR_SIGNING_PASSWORD" ]; then
|
||||
echo "Warning: ZEN_MAR_SIGNING_PASSWORD environment variable not set. Using empty password." >&2
|
||||
ZEN_MAR_SIGNING_PASSWORD=""
|
||||
fi
|
||||
|
||||
password_file="$NSS_CONFIG_DIR/password.txt"
|
||||
echo "$ZEN_MAR_SIGNING_PASSWORD" > "$password_file"
|
||||
|
||||
if [ "$ZEN_SIGNING_CERT_PEM_BASE64" ]; then
|
||||
echo "Decoding signing certificate from ZEN_SIGNING_CERT_PEM_BASE64 environment variable..."
|
||||
echo "$ZEN_SIGNING_CERT_PEM_BASE64" | base64 -d > "$CERT_PATH_DIR/cert.pem"
|
||||
fi
|
||||
|
||||
if [ "$ZEN_SIGNING_PRIVATE_KEY_PEM_BASE64" ]; then
|
||||
echo "Decoding signing private key from ZEN_SIGNING_PRIVATE_KEY_PEM_BASE64 environment variable..."
|
||||
echo "$ZEN_SIGNING_PRIVATE_KEY_PEM_BASE64" | base64 -d > "$CERT_PATH_DIR/private_key.pem"
|
||||
fi
|
||||
|
||||
echo "Generating NSS config directory at $NSS_CONFIG_DIR"
|
||||
certutil -N -d "$NSS_CONFIG_DIR" -f "$password_file"
|
||||
|
||||
echo "Wrapping private key into PKCS#12..."
|
||||
echo "Wrapping key + cert into PKCS#12..."
|
||||
openssl pkcs12 -export \
|
||||
-inkey "$CERT_PATH_DIR/private_key.pem" \
|
||||
-in "$CERT_PATH_DIR/cert.pem" \
|
||||
-name "private_key" \
|
||||
-passout pass:"$ZEN_MAR_SIGNING_PASSWORD" \
|
||||
-out "$CERT_PATH_DIR/private_key.p12"
|
||||
|
||||
echo "Importing PKCS#12 into NSS database..."
|
||||
pk12util \
|
||||
-i "$CERT_PATH_DIR/private_key.p12" \
|
||||
-d "$NSS_CONFIG_DIR" \
|
||||
-W "$ZEN_MAR_SIGNING_PASSWORD" \
|
||||
-K "$ZEN_MAR_SIGNING_PASSWORD"
|
||||
}
|
||||
|
||||
cleanup_certs() {
|
||||
rm -rf "$NSS_CONFIG_DIR"
|
||||
rm -rf "$CERT_PATH_DIR/env"
|
||||
|
||||
rm -f "$CERT_PATH_DIR/private_key.p12"
|
||||
rm -f "$CERT_PATH_DIR/private_key.pem"
|
||||
rm -f "$CERT_PATH_DIR/cert.pem"
|
||||
}
|
||||
|
||||
sign_mars() {
|
||||
if [ ! -f "$SIGNMAR" ]; then
|
||||
echo "Error: signmar not found at $SIGNMAR. Build the engine first." >&2
|
||||
exit 1
|
||||
fi
|
||||
|
||||
chmod +x "$SIGNMAR"
|
||||
|
||||
create_nss_config_dir
|
||||
|
||||
folders=(
|
||||
linux.mar
|
||||
linux-aarch64.mar
|
||||
windows.mar
|
||||
windows-arm64
|
||||
macos.mar
|
||||
)
|
||||
# each folder will contain the .mar files for that platform, and the signature will be written in-place
|
||||
for folder in "${folders[@]}"; do
|
||||
if [ -d "$folder" ]; then
|
||||
for mar_file in "$folder"/*.mar; do
|
||||
if [ -f "$mar_file" ]; then
|
||||
echo ""
|
||||
echo "Signing $mar_file..."
|
||||
# mar [-C workingDir] -d NSSConfigDir -n certname -s archive.mar out_signed_archive.mar
|
||||
"$SIGNMAR" -d "$NSS_CONFIG_DIR" -n "private_key" -s "$mar_file" "$mar_file".signed
|
||||
echo "Signed $mar_file. Verifying signature..."
|
||||
"$SIGNMAR" -d "$NSS_CONFIG_DIR" -n "private_key" -v "$mar_file".signed
|
||||
mv "$mar_file".signed "$mar_file"
|
||||
echo "Successfully signed $mar_file"
|
||||
else
|
||||
echo "No .mar files found in $folder, skipping."
|
||||
fi
|
||||
done
|
||||
else
|
||||
echo "Directory $folder not found, skipping."
|
||||
fi
|
||||
done
|
||||
|
||||
cleanup_certs
|
||||
}
|
||||
|
||||
case "$1" in
|
||||
-g)
|
||||
generate_certs
|
||||
;;
|
||||
-i)
|
||||
import_cert
|
||||
;;
|
||||
-s)
|
||||
sign_mars
|
||||
;;
|
||||
*)
|
||||
echo "Usage: $0 [-g] [-i] [-s]" >&2
|
||||
echo " -g Generate MAR signing certificates" >&2
|
||||
echo " -i Import the certificate into the updater (release_primary.der)" >&2
|
||||
echo " -s Sign *.mar files in the current directory in-place" >&2
|
||||
exit 1
|
||||
;;
|
||||
esac
|
||||
@@ -55,7 +55,7 @@ def main():
|
||||
name = patch.get("name")
|
||||
if not phab_id or not name:
|
||||
die(f"Patch entry missing 'id' or 'name': {patch}")
|
||||
name = name.replace(" ", "_").lower()
|
||||
name = name.replace(" ", "_").replace(".", "_").lower()
|
||||
output_file = os.path.join(OUTPUT_DIR, "firefox", f"{name}.patch")
|
||||
print(f"Processing Phabricator patch: {phab_id} -> {output_file}")
|
||||
download_phab_patch(phab_id, output_file)
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
diff --git a/browser/base/content/browser-commands.js b/browser/base/content/browser-commands.js
|
||||
index 75ddd82c18979571f377dec94fe1883f1349cc16..58ae4d88f7f0b37187cb61fcaf4cf84a9af7991f 100644
|
||||
index 75ddd82c18979571f377dec94fe1883f1349cc16..129d78214db53fc8dbd17d23b4a5a042ec297a41 100644
|
||||
--- a/browser/base/content/browser-commands.js
|
||||
+++ b/browser/base/content/browser-commands.js
|
||||
@@ -14,6 +14,10 @@ var BrowserCommands = {
|
||||
@@ -24,11 +24,14 @@ index 75ddd82c18979571f377dec94fe1883f1349cc16..58ae4d88f7f0b37187cb61fcaf4cf84a
|
||||
// A notification intended to be useful for modular peformance tracking
|
||||
// starting as close as is reasonably possible to the time when the user
|
||||
// expressed the intent to open a new tab. Since there are a lot of
|
||||
@@ -399,6 +407,11 @@ var BrowserCommands = {
|
||||
@@ -399,6 +407,14 @@ var BrowserCommands = {
|
||||
return;
|
||||
}
|
||||
|
||||
+ if (gBrowser.selectedTab.hasAttribute("zen-empty-tab")) {
|
||||
+ if (gBrowser.selectedTab.hasAttribute("split-view")) {
|
||||
+ return;
|
||||
+ }
|
||||
+ gZenWorkspaces.handleTabCloseWindow();
|
||||
+ return;
|
||||
+ }
|
||||
@@ -36,7 +39,7 @@ index 75ddd82c18979571f377dec94fe1883f1349cc16..58ae4d88f7f0b37187cb61fcaf4cf84a
|
||||
// Keyboard shortcuts that would close a tab that is pinned select the first
|
||||
// unpinned tab instead.
|
||||
if (
|
||||
@@ -406,8 +419,8 @@ var BrowserCommands = {
|
||||
@@ -406,8 +422,8 @@ var BrowserCommands = {
|
||||
(event.ctrlKey || event.metaKey || event.altKey) &&
|
||||
gBrowser.selectedTab.pinned
|
||||
) {
|
||||
|
||||
@@ -1,8 +1,19 @@
|
||||
diff --git a/browser/base/content/browser-gestureSupport.js b/browser/base/content/browser-gestureSupport.js
|
||||
index a28d54bf72c0e6495b9586f220d1859aac794936..66154668b9f85ffbaacea1e8351370659260227b 100644
|
||||
index a28d54bf72c0e6495b9586f220d1859aac794936..411d7255a68c48643617d77cc279a0a831fdf5c9 100644
|
||||
--- a/browser/base/content/browser-gestureSupport.js
|
||||
+++ b/browser/base/content/browser-gestureSupport.js
|
||||
@@ -832,7 +832,7 @@ var gHistorySwipeAnimation = {
|
||||
@@ -247,6 +247,10 @@ var gGestureSupport = {
|
||||
: aEvent.DIRECTION_LEFT;
|
||||
}
|
||||
|
||||
+ if (!gHistorySwipeAnimation._isSupported()) {
|
||||
+ return;
|
||||
+ }
|
||||
+
|
||||
return canGoBack || canGoForward;
|
||||
},
|
||||
|
||||
@@ -832,7 +836,7 @@ var gHistorySwipeAnimation = {
|
||||
* @return true if there is a previous page in history, false otherwise.
|
||||
*/
|
||||
canGoBack: function HSA_canGoBack() {
|
||||
|
||||
@@ -66,4 +66,6 @@
|
||||
<command id="cmd_zenNewNavigatorUnsynced" />
|
||||
|
||||
<command id="cmd_zenNewLiveFolder" />
|
||||
|
||||
<command id="cmd_zenDuplicateTab" />
|
||||
</commandset>
|
||||
|
||||
@@ -3,23 +3,6 @@
|
||||
# file, You can obtain one at http://mozilla.org/MPL/2.0/.
|
||||
|
||||
<menupopup id="zenCreateNewPopup">
|
||||
<menu data-l10n-id="zen-panel-ui-live-folder-create" id="zen-panel-ui-live-folder-create">
|
||||
<menupopup>
|
||||
<menuitem
|
||||
data-l10n-id="zen-live-folder-github-pull-requests"
|
||||
command="cmd_zenNewLiveFolder"
|
||||
image="chrome://browser/skin/zen-icons/selectable/logo-github.svg" />
|
||||
<menuitem
|
||||
data-l10n-id="zen-live-folder-github-issues"
|
||||
command="cmd_zenNewLiveFolder"
|
||||
image="chrome://browser/skin/zen-icons/selectable/logo-github.svg" />
|
||||
<menuitem
|
||||
data-l10n-id="zen-live-folder-type-rss"
|
||||
command="cmd_zenNewLiveFolder"
|
||||
image="chrome://browser/skin/zen-icons/selectable/logo-rss.svg"/>
|
||||
</menupopup>
|
||||
</menu>
|
||||
<menuseparator/>
|
||||
<menuitem data-l10n-id="zen-panel-ui-workspaces-create" command="cmd_zenOpenWorkspaceCreation" image="chrome://browser/skin/zen-icons/duplicate-tab.svg" />
|
||||
<menuitem data-l10n-id="zen-panel-ui-folder-create" command="cmd_zenOpenFolderCreation" image="chrome://browser/skin/zen-icons/folder.svg" />
|
||||
<menuseparator/>
|
||||
|
||||
@@ -1,7 +1,16 @@
|
||||
diff --git a/browser/components/customizableui/ToolbarContextMenu.sys.mjs b/browser/components/customizableui/ToolbarContextMenu.sys.mjs
|
||||
index d5fd707b98e4b163a624c97ff4a8f2574e0b0180..32360b11270d9dad4b83229428932e598f69e774 100644
|
||||
index d5fd707b98e4b163a624c97ff4a8f2574e0b0180..b5d7e84c3567e83b95a6493e8333d3036dc88f36 100644
|
||||
--- a/browser/components/customizableui/ToolbarContextMenu.sys.mjs
|
||||
+++ b/browser/components/customizableui/ToolbarContextMenu.sys.mjs
|
||||
@@ -183,7 +183,7 @@ export var ToolbarContextMenu = {
|
||||
|
||||
let showTabStripItems = toolbarItem?.id == "tabbrowser-tabs";
|
||||
let isVerticalTabStripMenu =
|
||||
- showTabStripItems && toolbarItem.parentElement.id == "vertical-tabs";
|
||||
+ showTabStripItems && toolbarItem.parentElement.id == "TabsToolbar-customization-target";
|
||||
|
||||
if (aInsertPoint) {
|
||||
aInsertPoint.hidden = isVerticalTabStripMenu;
|
||||
@@ -243,10 +243,7 @@ export var ToolbarContextMenu = {
|
||||
// Show/hide sidebar and vertical tabs menu items
|
||||
let sidebarRevampEnabled = Services.prefs.getBoolPref("sidebar.revamp");
|
||||
@@ -14,3 +23,11 @@ index d5fd707b98e4b163a624c97ff4a8f2574e0b0180..32360b11270d9dad4b83229428932e59
|
||||
|
||||
let toggleVerticalTabsItem = document.getElementById(
|
||||
"toolbar-context-toggle-vertical-tabs"
|
||||
@@ -267,6 +264,7 @@ export var ToolbarContextMenu = {
|
||||
document.getElementById("sidebarRevampSeparator").hidden =
|
||||
!showSidebarActions || isVerticalTabStripMenu;
|
||||
document.getElementById("customizationMenuSeparator").hidden =
|
||||
+ true ||
|
||||
toolbarItem?.id == "tabbrowser-tabs" ||
|
||||
(toolbarItem?.localName == "toolbarspring" &&
|
||||
!CustomizationHandler.isCustomizing()) ||
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
diff --git a/browser/components/preferences/main.js b/browser/components/preferences/main.js
|
||||
index e77dfebdf3a15033182eeae6eccd44a63aae3740..4e25b3e1abaeeaec3e83e0e1b53bf578eba5587b 100644
|
||||
index a5f2e4258942010ee61ed7a86497f51793366fcd..f01524a09512ec6cd1972a9fdb173ff427a0d753 100644
|
||||
--- a/browser/components/preferences/main.js
|
||||
+++ b/browser/components/preferences/main.js
|
||||
@@ -2652,6 +2652,11 @@ SettingGroupManager.registerGroups({
|
||||
|
||||
@@ -1067,7 +1067,7 @@ var gZenCKSSettings = {
|
||||
zenMissingKeyboardShortcutL10n[conflictShortcut.getID()] ??
|
||||
conflictShortcut.getL10NID();
|
||||
|
||||
const [group] = await document.l10n.formatValues([
|
||||
const [group, conflictName] = await document.l10n.formatValues([
|
||||
{ id: `${ZEN_CKS_GROUP_PREFIX}-${conflictShortcut.getGroup()}` },
|
||||
{ id: shortcutL10nKey },
|
||||
]);
|
||||
@@ -1082,7 +1082,7 @@ var gZenCKSSettings = {
|
||||
|
||||
document.l10n.setAttributes(input.nextElementSibling, "zen-key-conflict", {
|
||||
group: group ?? "",
|
||||
shortcut: shortcut ?? "",
|
||||
shortcut: conflictName ?? shortcut ?? "",
|
||||
});
|
||||
}
|
||||
} else {
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
diff --git a/browser/components/tabbrowser/content/drag-and-drop.js b/browser/components/tabbrowser/content/drag-and-drop.js
|
||||
index ced2bfd88de2d16e2c028ca3f4d9d27516363575..aaf6e82782357c819ca875f05020723600e41e6b 100644
|
||||
index ced2bfd88de2d16e2c028ca3f4d9d27516363575..69b45c7dad9d294e4290de4ce878d184925e5610 100644
|
||||
--- a/browser/components/tabbrowser/content/drag-and-drop.js
|
||||
+++ b/browser/components/tabbrowser/content/drag-and-drop.js
|
||||
@@ -35,6 +35,9 @@
|
||||
@@ -277,7 +277,11 @@ index ced2bfd88de2d16e2c028ca3f4d9d27516363575..aaf6e82782357c819ca875f050207236
|
||||
tab.removeAttribute("small-stack");
|
||||
tab.removeAttribute("big-stack");
|
||||
}
|
||||
@@ -2582,7 +2585,6 @@
|
||||
@@ -2578,11 +2581,9 @@
|
||||
)) {
|
||||
label.style.width = "";
|
||||
label.style.maxWidth = "";
|
||||
- label.style.height = "";
|
||||
label.style.left = "";
|
||||
label.style.top = "";
|
||||
label.style.pointerEvents = "";
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
diff --git a/browser/components/tabbrowser/content/tab.js b/browser/components/tabbrowser/content/tab.js
|
||||
index e4266a159a0d5c42cc294602d00b8f66131f35d5..88c321f05dabd948d06e155f6e0474669fc15c20 100644
|
||||
index e4266a159a0d5c42cc294602d00b8f66131f35d5..f3e362f062063ebe08bd26cc694f2d965ccffd84 100644
|
||||
--- a/browser/components/tabbrowser/content/tab.js
|
||||
+++ b/browser/components/tabbrowser/content/tab.js
|
||||
@@ -21,6 +21,7 @@
|
||||
@@ -52,7 +52,7 @@ index e4266a159a0d5c42cc294602d00b8f66131f35d5..88c321f05dabd948d06e155f6e047466
|
||||
return;
|
||||
}
|
||||
|
||||
@@ -225,11 +228,23 @@
|
||||
@@ -225,11 +228,25 @@
|
||||
}
|
||||
|
||||
get visible() {
|
||||
@@ -74,14 +74,16 @@ index e4266a159a0d5c42cc294602d00b8f66131f35d5..88c321f05dabd948d06e155f6e047466
|
||||
+ }
|
||||
+ currentParent = currentParent.group;
|
||||
+ }
|
||||
+ if (this.pinned && !this.hasAttribute("zen-essential") && gZenWorkspaces.activeWorkspaceElement?.hasCollapsedPinnedTabs) {
|
||||
+ if (this.pinned && !this.hasAttribute("zen-essential") &&
|
||||
+ gZenWorkspaces.activeWorkspaceElement?.hasCollapsedPinnedTabs &&
|
||||
+ !gZenWorkspaces.activeWorkspaceElement.collapsiblePins.activeTabs?.includes(this)) {
|
||||
+ return false;
|
||||
+ }
|
||||
+ return true;
|
||||
}
|
||||
|
||||
get hidden() {
|
||||
@@ -308,7 +323,7 @@
|
||||
@@ -308,7 +325,7 @@
|
||||
return false;
|
||||
}
|
||||
|
||||
@@ -90,7 +92,7 @@ index e4266a159a0d5c42cc294602d00b8f66131f35d5..88c321f05dabd948d06e155f6e047466
|
||||
}
|
||||
|
||||
get lastAccessed() {
|
||||
@@ -393,7 +408,18 @@
|
||||
@@ -393,7 +410,18 @@
|
||||
}
|
||||
|
||||
get group() {
|
||||
@@ -110,7 +112,7 @@ index e4266a159a0d5c42cc294602d00b8f66131f35d5..88c321f05dabd948d06e155f6e047466
|
||||
}
|
||||
|
||||
get splitview() {
|
||||
@@ -475,6 +501,10 @@
|
||||
@@ -475,6 +503,10 @@
|
||||
}
|
||||
}
|
||||
|
||||
@@ -121,7 +123,7 @@ index e4266a159a0d5c42cc294602d00b8f66131f35d5..88c321f05dabd948d06e155f6e047466
|
||||
// If the previous target wasn't part of this tab then this is a mouseenter event.
|
||||
if (!this.contains(event.relatedTarget)) {
|
||||
this._mouseenter();
|
||||
@@ -504,6 +534,7 @@
|
||||
@@ -504,6 +536,7 @@
|
||||
if (!this.contains(event.relatedTarget)) {
|
||||
this._mouseleave();
|
||||
}
|
||||
@@ -129,7 +131,7 @@ index e4266a159a0d5c42cc294602d00b8f66131f35d5..88c321f05dabd948d06e155f6e047466
|
||||
}
|
||||
|
||||
on_dragstart(event) {
|
||||
@@ -538,6 +569,8 @@
|
||||
@@ -538,6 +571,8 @@
|
||||
this.style.MozUserFocus = "ignore";
|
||||
} else if (
|
||||
event.target.classList.contains("tab-close-button") ||
|
||||
@@ -138,7 +140,7 @@ index e4266a159a0d5c42cc294602d00b8f66131f35d5..88c321f05dabd948d06e155f6e047466
|
||||
event.target.classList.contains("tab-icon-overlay") ||
|
||||
event.target.classList.contains("tab-audio-button")
|
||||
) {
|
||||
@@ -592,16 +625,21 @@
|
||||
@@ -592,16 +627,21 @@
|
||||
this.style.MozUserFocus = "";
|
||||
}
|
||||
|
||||
@@ -161,7 +163,7 @@ index e4266a159a0d5c42cc294602d00b8f66131f35d5..88c321f05dabd948d06e155f6e047466
|
||||
gBrowser.multiSelectedTabsCount > 0 &&
|
||||
!event.target.classList.contains("tab-close-button") &&
|
||||
!event.target.classList.contains("tab-icon-overlay") &&
|
||||
@@ -613,8 +651,9 @@
|
||||
@@ -613,8 +653,9 @@
|
||||
}
|
||||
|
||||
if (
|
||||
@@ -173,7 +175,7 @@ index e4266a159a0d5c42cc294602d00b8f66131f35d5..88c321f05dabd948d06e155f6e047466
|
||||
) {
|
||||
if (this.activeMediaBlocked) {
|
||||
if (this.multiselected) {
|
||||
@@ -632,7 +671,7 @@
|
||||
@@ -632,7 +673,7 @@
|
||||
return;
|
||||
}
|
||||
|
||||
@@ -182,7 +184,7 @@ index e4266a159a0d5c42cc294602d00b8f66131f35d5..88c321f05dabd948d06e155f6e047466
|
||||
if (this.multiselected) {
|
||||
gBrowser.removeMultiSelectedTabs(
|
||||
lazy.TabMetrics.userTriggeredContext(
|
||||
@@ -652,6 +691,14 @@
|
||||
@@ -652,6 +693,14 @@
|
||||
// (see tabbrowser-tabs 'click' handler).
|
||||
gBrowser.tabContainer._blockDblClick = true;
|
||||
}
|
||||
@@ -197,7 +199,7 @@ index e4266a159a0d5c42cc294602d00b8f66131f35d5..88c321f05dabd948d06e155f6e047466
|
||||
}
|
||||
|
||||
on_dblclick(event) {
|
||||
@@ -675,6 +722,8 @@
|
||||
@@ -675,6 +724,8 @@
|
||||
animate: true,
|
||||
triggeringEvent: event,
|
||||
});
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
diff --git a/browser/components/tabbrowser/content/tabbrowser.js b/browser/components/tabbrowser/content/tabbrowser.js
|
||||
index d88bc0e5570c8fd428a84fdf5af0f6bab1e2a636..5bb791734fdf066c82de3975b74cf1c19d2c96fa 100644
|
||||
index d88bc0e5570c8fd428a84fdf5af0f6bab1e2a636..aed843d26eaf56d66883f95c373d40106d93dc08 100644
|
||||
--- a/browser/components/tabbrowser/content/tabbrowser.js
|
||||
+++ b/browser/components/tabbrowser/content/tabbrowser.js
|
||||
@@ -413,6 +413,7 @@
|
||||
@@ -186,6 +186,15 @@ index d88bc0e5570c8fd428a84fdf5af0f6bab1e2a636..5bb791734fdf066c82de3975b74cf1c1
|
||||
// If focus is on the old tab, move it to the new tab.
|
||||
if (activeEl == oldTab) {
|
||||
newTab.focus();
|
||||
@@ -1822,7 +1902,7 @@
|
||||
// Focus the location bar if it was previously focused for that tab.
|
||||
// In full screen mode, only bother making the location bar visible
|
||||
// if the tab is a blank one.
|
||||
- if (gURLBar.getBrowserState(newBrowser).urlbarFocused) {
|
||||
+ if (gURLBar.getBrowserState(newBrowser).urlbarFocused && (!gZenVerticalTabsManager._hasSetSingleToolbar || isBlankPageURL(newBrowser.currentURI?.spec))) {
|
||||
let selectURL = () => {
|
||||
if (this._asyncTabSwitching) {
|
||||
// Set _awaitingSetURI flag to suppress popup notification
|
||||
@@ -2110,7 +2190,12 @@
|
||||
return this._setTabLabel(aTab, aLabel);
|
||||
}
|
||||
@@ -473,10 +482,10 @@ index d88bc0e5570c8fd428a84fdf5af0f6bab1e2a636..5bb791734fdf066c82de3975b74cf1c1
|
||||
+ gZenWorkspaces._initialTab._shouldRemove = true;
|
||||
+ }
|
||||
+ }
|
||||
+ }
|
||||
}
|
||||
+ else {
|
||||
+ gZenWorkspaces._tabToRemoveForEmpty = this.selectedTab;
|
||||
}
|
||||
+ }
|
||||
+ this._hasAlreadyInitializedZenSessionStore = true;
|
||||
|
||||
if (tabs.length > 1 || !tabs[0].selected) {
|
||||
@@ -579,8 +588,8 @@ index d88bc0e5570c8fd428a84fdf5af0f6bab1e2a636..5bb791734fdf066c82de3975b74cf1c1
|
||||
} catch (e) {
|
||||
console.error(e);
|
||||
}
|
||||
@@ -5524,6 +5679,12 @@
|
||||
aTab._closeTimeNoAnimTimerId = Glean.browserTabclose.timeNoAnim.start();
|
||||
@@ -5531,6 +5686,13 @@
|
||||
return;
|
||||
}
|
||||
|
||||
+ if (gZenWorkspaces.workspaceEnabled) {
|
||||
@@ -589,10 +598,11 @@ index d88bc0e5570c8fd428a84fdf5af0f6bab1e2a636..5bb791734fdf066c82de3975b74cf1c1
|
||||
+ this.selectedTab = newTab;
|
||||
+ }
|
||||
+ }
|
||||
// Handle requests for synchronously removing an already
|
||||
// asynchronously closing tab.
|
||||
if (!animate && aTab.closing) {
|
||||
@@ -5538,6 +5699,9 @@
|
||||
+
|
||||
let isVisibleTab = aTab.visible;
|
||||
// We have to sample the tab width now, since _beginRemoveTab might
|
||||
// end up modifying the DOM in such a way that aTab gets a new
|
||||
@@ -5538,6 +5700,9 @@
|
||||
// state).
|
||||
let tabWidth = window.windowUtils.getBoundsWithoutFlushing(aTab).width;
|
||||
let isLastTab = this.#isLastTabInWindow(aTab);
|
||||
@@ -602,7 +612,23 @@ index d88bc0e5570c8fd428a84fdf5af0f6bab1e2a636..5bb791734fdf066c82de3975b74cf1c1
|
||||
if (
|
||||
!this._beginRemoveTab(aTab, {
|
||||
closeWindowFastpath: true,
|
||||
@@ -5586,7 +5750,13 @@
|
||||
@@ -5549,13 +5714,14 @@
|
||||
telemetrySource,
|
||||
})
|
||||
) {
|
||||
+ delete gZenWorkspaces._isClosingWindow;
|
||||
Glean.browserTabclose.timeAnim.cancel(aTab._closeTimeAnimTimerId);
|
||||
aTab._closeTimeAnimTimerId = null;
|
||||
Glean.browserTabclose.timeNoAnim.cancel(aTab._closeTimeNoAnimTimerId);
|
||||
aTab._closeTimeNoAnimTimerId = null;
|
||||
return;
|
||||
}
|
||||
-
|
||||
+ gZenWorkspaces.handleTabBeforeRemove();
|
||||
let lockTabSizing =
|
||||
!this.tabContainer.verticalMode &&
|
||||
!aTab.pinned &&
|
||||
@@ -5586,7 +5752,13 @@
|
||||
// We're not animating, so we can cancel the animation stopwatch.
|
||||
Glean.browserTabclose.timeAnim.cancel(aTab._closeTimeAnimTimerId);
|
||||
aTab._closeTimeAnimTimerId = null;
|
||||
@@ -617,7 +643,7 @@ index d88bc0e5570c8fd428a84fdf5af0f6bab1e2a636..5bb791734fdf066c82de3975b74cf1c1
|
||||
return;
|
||||
}
|
||||
|
||||
@@ -5720,7 +5890,7 @@
|
||||
@@ -5720,7 +5892,7 @@
|
||||
closeWindowWithLastTab != null
|
||||
? closeWindowWithLastTab
|
||||
: !window.toolbar.visible ||
|
||||
@@ -626,7 +652,7 @@ index d88bc0e5570c8fd428a84fdf5af0f6bab1e2a636..5bb791734fdf066c82de3975b74cf1c1
|
||||
|
||||
if (closeWindow) {
|
||||
// We've already called beforeunload on all the relevant tabs if we get here,
|
||||
@@ -5744,6 +5914,7 @@
|
||||
@@ -5744,6 +5916,7 @@
|
||||
|
||||
newTab = true;
|
||||
}
|
||||
@@ -634,7 +660,7 @@ index d88bc0e5570c8fd428a84fdf5af0f6bab1e2a636..5bb791734fdf066c82de3975b74cf1c1
|
||||
aTab._endRemoveArgs = [closeWindow, newTab];
|
||||
|
||||
// swapBrowsersAndCloseOther will take care of closing the window without animation.
|
||||
@@ -5784,13 +5955,7 @@
|
||||
@@ -5784,13 +5957,7 @@
|
||||
aTab._mouseleave();
|
||||
|
||||
if (newTab) {
|
||||
@@ -649,7 +675,7 @@ index d88bc0e5570c8fd428a84fdf5af0f6bab1e2a636..5bb791734fdf066c82de3975b74cf1c1
|
||||
} else {
|
||||
TabBarVisibility.update();
|
||||
}
|
||||
@@ -5923,6 +6088,7 @@
|
||||
@@ -5923,6 +6090,7 @@
|
||||
this.tabs[i]._tPos = i;
|
||||
}
|
||||
|
||||
@@ -657,7 +683,7 @@ index d88bc0e5570c8fd428a84fdf5af0f6bab1e2a636..5bb791734fdf066c82de3975b74cf1c1
|
||||
if (!this._windowIsClosing) {
|
||||
// update tab close buttons state
|
||||
this.tabContainer._updateCloseButtons();
|
||||
@@ -6153,6 +6319,7 @@
|
||||
@@ -6153,6 +6321,7 @@
|
||||
}
|
||||
|
||||
let excludeTabs = new Set(aExcludeTabs);
|
||||
@@ -665,7 +691,7 @@ index d88bc0e5570c8fd428a84fdf5af0f6bab1e2a636..5bb791734fdf066c82de3975b74cf1c1
|
||||
|
||||
// If this tab has a successor, it should be selectable, since
|
||||
// hiding or closing a tab removes that tab as a successor.
|
||||
@@ -6165,15 +6332,22 @@
|
||||
@@ -6165,15 +6334,22 @@
|
||||
!excludeTabs.has(aTab.owner) &&
|
||||
Services.prefs.getBoolPref("browser.tabs.selectOwnerOnClose")
|
||||
) {
|
||||
@@ -690,7 +716,7 @@ index d88bc0e5570c8fd428a84fdf5af0f6bab1e2a636..5bb791734fdf066c82de3975b74cf1c1
|
||||
let tab = this.tabContainer.findNextTab(aTab, {
|
||||
direction: 1,
|
||||
filter: _tab => remainingTabs.includes(_tab),
|
||||
@@ -6187,7 +6361,7 @@
|
||||
@@ -6187,7 +6363,7 @@
|
||||
}
|
||||
|
||||
if (tab) {
|
||||
@@ -699,7 +725,7 @@ index d88bc0e5570c8fd428a84fdf5af0f6bab1e2a636..5bb791734fdf066c82de3975b74cf1c1
|
||||
}
|
||||
|
||||
// If no qualifying visible tab was found, see if there is a tab in
|
||||
@@ -6208,7 +6382,7 @@
|
||||
@@ -6208,7 +6384,7 @@
|
||||
});
|
||||
}
|
||||
|
||||
@@ -708,7 +734,7 @@ index d88bc0e5570c8fd428a84fdf5af0f6bab1e2a636..5bb791734fdf066c82de3975b74cf1c1
|
||||
}
|
||||
|
||||
_blurTab(aTab) {
|
||||
@@ -6219,7 +6393,7 @@
|
||||
@@ -6219,7 +6395,7 @@
|
||||
* @returns {boolean}
|
||||
* False if swapping isn't permitted, true otherwise.
|
||||
*/
|
||||
@@ -717,7 +743,7 @@ index d88bc0e5570c8fd428a84fdf5af0f6bab1e2a636..5bb791734fdf066c82de3975b74cf1c1
|
||||
// Do not allow transfering a private tab to a non-private window
|
||||
// and vice versa.
|
||||
if (
|
||||
@@ -6273,6 +6447,7 @@
|
||||
@@ -6273,6 +6449,7 @@
|
||||
// fire the beforeunload event in the process. Close the other
|
||||
// window if this was its last tab.
|
||||
if (
|
||||
@@ -725,7 +751,7 @@ index d88bc0e5570c8fd428a84fdf5af0f6bab1e2a636..5bb791734fdf066c82de3975b74cf1c1
|
||||
!remoteBrowser._beginRemoveTab(aOtherTab, {
|
||||
adoptedByTab: aOurTab,
|
||||
closeWindowWithLastTab: true,
|
||||
@@ -6284,7 +6459,7 @@
|
||||
@@ -6284,7 +6461,7 @@
|
||||
// If this is the last tab of the window, hide the window
|
||||
// immediately without animation before the docshell swap, to avoid
|
||||
// about:blank being painted.
|
||||
@@ -734,7 +760,7 @@ index d88bc0e5570c8fd428a84fdf5af0f6bab1e2a636..5bb791734fdf066c82de3975b74cf1c1
|
||||
if (closeWindow) {
|
||||
let win = aOtherTab.ownerGlobal;
|
||||
win.windowUtils.suppressAnimation(true);
|
||||
@@ -6412,11 +6587,13 @@
|
||||
@@ -6412,11 +6589,13 @@
|
||||
}
|
||||
|
||||
// Finish tearing down the tab that's going away.
|
||||
@@ -748,7 +774,7 @@ index d88bc0e5570c8fd428a84fdf5af0f6bab1e2a636..5bb791734fdf066c82de3975b74cf1c1
|
||||
|
||||
this.setTabTitle(aOurTab);
|
||||
|
||||
@@ -6618,10 +6795,10 @@
|
||||
@@ -6618,10 +6797,10 @@
|
||||
SessionStore.deleteCustomTabValue(aTab, "hiddenBy");
|
||||
}
|
||||
|
||||
@@ -761,7 +787,7 @@ index d88bc0e5570c8fd428a84fdf5af0f6bab1e2a636..5bb791734fdf066c82de3975b74cf1c1
|
||||
aTab.selected ||
|
||||
aTab.closing ||
|
||||
// Tabs that are sharing the screen, microphone or camera cannot be hidden.
|
||||
@@ -6681,7 +6858,8 @@
|
||||
@@ -6681,7 +6860,8 @@
|
||||
* @param {object} [aOptions={}]
|
||||
* Key-value pairs that will be serialized into the features string.
|
||||
*/
|
||||
@@ -771,7 +797,7 @@ index d88bc0e5570c8fd428a84fdf5af0f6bab1e2a636..5bb791734fdf066c82de3975b74cf1c1
|
||||
if (this.tabs.length == 1) {
|
||||
return null;
|
||||
}
|
||||
@@ -6698,7 +6876,7 @@
|
||||
@@ -6698,7 +6878,7 @@
|
||||
// tell a new window to take the "dropped" tab
|
||||
let args = Cc["@mozilla.org/array;1"].createInstance(Ci.nsIMutableArray);
|
||||
args.appendElement(aTab.splitview ?? aTab);
|
||||
@@ -780,7 +806,7 @@ index d88bc0e5570c8fd428a84fdf5af0f6bab1e2a636..5bb791734fdf066c82de3975b74cf1c1
|
||||
private: PrivateBrowsingUtils.isWindowPrivate(window),
|
||||
features: Object.entries(aOptions)
|
||||
.map(([key, value]) => `${key}=${value}`)
|
||||
@@ -6706,6 +6884,8 @@
|
||||
@@ -6706,6 +6886,8 @@
|
||||
openerWindow: window,
|
||||
args,
|
||||
});
|
||||
@@ -789,7 +815,7 @@ index d88bc0e5570c8fd428a84fdf5af0f6bab1e2a636..5bb791734fdf066c82de3975b74cf1c1
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -6818,7 +6998,7 @@
|
||||
@@ -6818,7 +7000,7 @@
|
||||
* `true` if element is a `<tab-group>`
|
||||
*/
|
||||
isTabGroup(element) {
|
||||
@@ -798,7 +824,7 @@ index d88bc0e5570c8fd428a84fdf5af0f6bab1e2a636..5bb791734fdf066c82de3975b74cf1c1
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -6903,8 +7083,8 @@
|
||||
@@ -6903,8 +7085,8 @@
|
||||
}
|
||||
|
||||
// Don't allow mixing pinned and unpinned tabs.
|
||||
@@ -809,7 +835,7 @@ index d88bc0e5570c8fd428a84fdf5af0f6bab1e2a636..5bb791734fdf066c82de3975b74cf1c1
|
||||
} else {
|
||||
tabIndex = Math.max(tabIndex, this.pinnedTabCount);
|
||||
}
|
||||
@@ -6933,13 +7113,19 @@
|
||||
@@ -6933,13 +7115,19 @@
|
||||
this.#handleTabMove(
|
||||
element,
|
||||
() => {
|
||||
@@ -831,7 +857,7 @@ index d88bc0e5570c8fd428a84fdf5af0f6bab1e2a636..5bb791734fdf066c82de3975b74cf1c1
|
||||
let useAfter = false;
|
||||
if (this.isTab(element)) {
|
||||
useAfter = neighbor && tabIndex > element._tPos;
|
||||
@@ -7004,23 +7190,31 @@
|
||||
@@ -7004,23 +7192,31 @@
|
||||
#moveTabNextTo(element, targetElement, moveBefore = false, metricsContext) {
|
||||
if (this.isTabGroupLabel(targetElement)) {
|
||||
targetElement = targetElement.group;
|
||||
@@ -869,7 +895,7 @@ index d88bc0e5570c8fd428a84fdf5af0f6bab1e2a636..5bb791734fdf066c82de3975b74cf1c1
|
||||
} else if (!element.pinned && targetElement && targetElement.pinned) {
|
||||
// If the caller asks to move an unpinned element next to a pinned
|
||||
// tab, move the unpinned element to be the first unpinned element
|
||||
@@ -7033,12 +7227,35 @@
|
||||
@@ -7033,12 +7229,35 @@
|
||||
// move the tab group right before the first unpinned tab.
|
||||
// 4. Moving a tab group and the first unpinned tab is grouped:
|
||||
// move the tab group right before the first unpinned tab's tab group.
|
||||
@@ -906,7 +932,7 @@ index d88bc0e5570c8fd428a84fdf5af0f6bab1e2a636..5bb791734fdf066c82de3975b74cf1c1
|
||||
|
||||
// We want to include the splitview wrapper if it's the targetElement, but
|
||||
// not in the case where we want to reverse tabs within the same splitview.
|
||||
@@ -7047,6 +7264,7 @@
|
||||
@@ -7047,6 +7266,7 @@
|
||||
}
|
||||
|
||||
let getContainer = () =>
|
||||
@@ -914,7 +940,7 @@ index d88bc0e5570c8fd428a84fdf5af0f6bab1e2a636..5bb791734fdf066c82de3975b74cf1c1
|
||||
element.pinned
|
||||
? this.tabContainer.pinnedTabsContainer
|
||||
: this.tabContainer;
|
||||
@@ -7055,11 +7273,15 @@
|
||||
@@ -7055,11 +7275,15 @@
|
||||
element,
|
||||
() => {
|
||||
if (moveBefore) {
|
||||
@@ -931,7 +957,7 @@ index d88bc0e5570c8fd428a84fdf5af0f6bab1e2a636..5bb791734fdf066c82de3975b74cf1c1
|
||||
}
|
||||
},
|
||||
metricsContext
|
||||
@@ -7133,10 +7355,10 @@
|
||||
@@ -7133,10 +7357,10 @@
|
||||
* @param {TabMetricsContext} [metricsContext]
|
||||
*/
|
||||
moveTabToExistingGroup(aTab, aGroup, metricsContext) {
|
||||
@@ -944,7 +970,7 @@ index d88bc0e5570c8fd428a84fdf5af0f6bab1e2a636..5bb791734fdf066c82de3975b74cf1c1
|
||||
return;
|
||||
}
|
||||
if (aTab.group && aTab.group.id === aGroup.id) {
|
||||
@@ -7209,6 +7431,7 @@
|
||||
@@ -7209,6 +7433,7 @@
|
||||
|
||||
let state = {
|
||||
tabIndex: tab._tPos,
|
||||
@@ -952,7 +978,7 @@ index d88bc0e5570c8fd428a84fdf5af0f6bab1e2a636..5bb791734fdf066c82de3975b74cf1c1
|
||||
};
|
||||
if (tab.visible) {
|
||||
state.elementIndex = tab.elementIndex;
|
||||
@@ -7240,7 +7463,7 @@
|
||||
@@ -7240,7 +7465,7 @@
|
||||
let changedSplitView =
|
||||
previousTabState.splitViewId != currentTabState.splitViewId;
|
||||
|
||||
@@ -961,7 +987,7 @@ index d88bc0e5570c8fd428a84fdf5af0f6bab1e2a636..5bb791734fdf066c82de3975b74cf1c1
|
||||
tab.dispatchEvent(
|
||||
new CustomEvent("TabMove", {
|
||||
bubbles: true,
|
||||
@@ -7281,6 +7504,10 @@
|
||||
@@ -7281,6 +7506,10 @@
|
||||
|
||||
moveActionCallback();
|
||||
|
||||
@@ -972,7 +998,7 @@ index d88bc0e5570c8fd428a84fdf5af0f6bab1e2a636..5bb791734fdf066c82de3975b74cf1c1
|
||||
// Clear tabs cache after moving nodes because the order of tabs may have
|
||||
// changed.
|
||||
this.tabContainer._invalidateCachedTabs();
|
||||
@@ -7331,7 +7558,22 @@
|
||||
@@ -7331,7 +7560,22 @@
|
||||
* @returns {object}
|
||||
* The new tab in the current window, null if the tab couldn't be adopted.
|
||||
*/
|
||||
@@ -996,7 +1022,7 @@ index d88bc0e5570c8fd428a84fdf5af0f6bab1e2a636..5bb791734fdf066c82de3975b74cf1c1
|
||||
// Swap the dropped tab with a new one we create and then close
|
||||
// it in the other window (making it seem to have moved between
|
||||
// windows). We also ensure that the tab we create to swap into has
|
||||
@@ -7374,6 +7616,8 @@
|
||||
@@ -7374,6 +7618,8 @@
|
||||
}
|
||||
params.skipLoad = true;
|
||||
let newTab = this.addWebTab("about:blank", params);
|
||||
@@ -1005,7 +1031,7 @@ index d88bc0e5570c8fd428a84fdf5af0f6bab1e2a636..5bb791734fdf066c82de3975b74cf1c1
|
||||
|
||||
aTab.container.tabDragAndDrop.finishAnimateTabMove();
|
||||
|
||||
@@ -8076,7 +8320,7 @@
|
||||
@@ -8076,7 +8322,7 @@
|
||||
// preventDefault(). It will still raise the window if appropriate.
|
||||
return;
|
||||
}
|
||||
@@ -1014,7 +1040,7 @@ index d88bc0e5570c8fd428a84fdf5af0f6bab1e2a636..5bb791734fdf066c82de3975b74cf1c1
|
||||
window.focus();
|
||||
aEvent.preventDefault();
|
||||
}
|
||||
@@ -8093,7 +8337,6 @@
|
||||
@@ -8093,7 +8339,6 @@
|
||||
|
||||
on_TabGroupCollapse(aEvent) {
|
||||
aEvent.target.tabs.forEach(tab => {
|
||||
@@ -1022,7 +1048,7 @@ index d88bc0e5570c8fd428a84fdf5af0f6bab1e2a636..5bb791734fdf066c82de3975b74cf1c1
|
||||
});
|
||||
}
|
||||
|
||||
@@ -8427,7 +8670,9 @@
|
||||
@@ -8427,7 +8672,9 @@
|
||||
|
||||
let filter = this._tabFilters.get(tab);
|
||||
if (filter) {
|
||||
@@ -1032,7 +1058,7 @@ index d88bc0e5570c8fd428a84fdf5af0f6bab1e2a636..5bb791734fdf066c82de3975b74cf1c1
|
||||
|
||||
let listener = this._tabListeners.get(tab);
|
||||
if (listener) {
|
||||
@@ -9233,6 +9478,7 @@
|
||||
@@ -9233,6 +9480,7 @@
|
||||
aWebProgress.isTopLevel
|
||||
) {
|
||||
this.mTab.setAttribute("busy", "true");
|
||||
@@ -1040,7 +1066,7 @@ index d88bc0e5570c8fd428a84fdf5af0f6bab1e2a636..5bb791734fdf066c82de3975b74cf1c1
|
||||
gBrowser._tabAttrModified(this.mTab, ["busy"]);
|
||||
this.mTab._notselectedsinceload = !this.mTab.selected;
|
||||
}
|
||||
@@ -9313,6 +9559,7 @@
|
||||
@@ -9313,6 +9561,7 @@
|
||||
// known defaults. Note we use the original URL since about:newtab
|
||||
// redirects to a prerendered page.
|
||||
const shouldRemoveFavicon =
|
||||
@@ -1048,7 +1074,7 @@ index d88bc0e5570c8fd428a84fdf5af0f6bab1e2a636..5bb791734fdf066c82de3975b74cf1c1
|
||||
!this.mBrowser.mIconURL &&
|
||||
!ignoreBlank &&
|
||||
!(originalLocation.spec in FAVICON_DEFAULTS);
|
||||
@@ -9487,13 +9734,6 @@
|
||||
@@ -9487,13 +9736,6 @@
|
||||
this.mBrowser.originalURI = aRequest.originalURI;
|
||||
}
|
||||
|
||||
@@ -1062,7 +1088,7 @@ index d88bc0e5570c8fd428a84fdf5af0f6bab1e2a636..5bb791734fdf066c82de3975b74cf1c1
|
||||
}
|
||||
|
||||
let userContextId = this.mBrowser.getAttribute("usercontextid") || 0;
|
||||
@@ -10379,7 +10619,7 @@ var TabContextMenu = {
|
||||
@@ -10379,7 +10621,7 @@ var TabContextMenu = {
|
||||
);
|
||||
contextUnpinSelectedTabs.hidden =
|
||||
!this.contextTab.pinned || !this.multiselected;
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
diff --git a/browser/components/tabbrowser/content/tabgroup.js b/browser/components/tabbrowser/content/tabgroup.js
|
||||
index 3ca119e8dc72fac652c98505211864483d98add2..026b524be51170882e788a701095b938d6923f3e 100644
|
||||
index 3ca119e8dc72fac652c98505211864483d98add2..b65307ee8df896488a4c51e3a25bf9ad9e1c8179 100644
|
||||
--- a/browser/components/tabbrowser/content/tabgroup.js
|
||||
+++ b/browser/components/tabbrowser/content/tabgroup.js
|
||||
@@ -14,11 +14,11 @@
|
||||
@@ -101,7 +101,13 @@ index 3ca119e8dc72fac652c98505211864483d98add2..026b524be51170882e788a701095b938
|
||||
|
||||
resetDefaultGroupName = () => {
|
||||
this.#defaultGroupName = "";
|
||||
@@ -178,7 +201,9 @@
|
||||
@@ -175,10 +198,15 @@
|
||||
if (!this.#tabChangeObserver) {
|
||||
this.#tabChangeObserver = new window.MutationObserver(mutations => {
|
||||
if (!this.tabs.length) {
|
||||
+ if (this.tagName === "zen-workspace-collapsible-pins") {
|
||||
+ return;
|
||||
+ }
|
||||
this.dispatchEvent(
|
||||
new CustomEvent("TabGroupRemoved", { bubbles: true })
|
||||
);
|
||||
@@ -111,7 +117,7 @@ index 3ca119e8dc72fac652c98505211864483d98add2..026b524be51170882e788a701095b938
|
||||
Services.obs.notifyObservers(
|
||||
this,
|
||||
"browser-tabgroup-removed-from-dom"
|
||||
@@ -223,7 +248,10 @@
|
||||
@@ -223,7 +251,10 @@
|
||||
}
|
||||
});
|
||||
}
|
||||
@@ -123,7 +129,7 @@ index 3ca119e8dc72fac652c98505211864483d98add2..026b524be51170882e788a701095b938
|
||||
}
|
||||
|
||||
get color() {
|
||||
@@ -317,6 +345,9 @@
|
||||
@@ -317,6 +348,9 @@
|
||||
}
|
||||
|
||||
set collapsed(val) {
|
||||
@@ -133,7 +139,7 @@ index 3ca119e8dc72fac652c98505211864483d98add2..026b524be51170882e788a701095b938
|
||||
if (!!val == this.collapsed) {
|
||||
return;
|
||||
}
|
||||
@@ -403,7 +434,6 @@
|
||||
@@ -403,7 +437,6 @@
|
||||
tabGroupName,
|
||||
})
|
||||
.then(result => {
|
||||
@@ -141,7 +147,7 @@ index 3ca119e8dc72fac652c98505211864483d98add2..026b524be51170882e788a701095b938
|
||||
});
|
||||
}
|
||||
|
||||
@@ -478,13 +508,65 @@
|
||||
@@ -478,13 +511,65 @@
|
||||
* @returns {MozTabbrowserTab[]}
|
||||
*/
|
||||
get tabs() {
|
||||
@@ -212,7 +218,7 @@ index 3ca119e8dc72fac652c98505211864483d98add2..026b524be51170882e788a701095b938
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -592,7 +674,6 @@
|
||||
@@ -592,7 +677,6 @@
|
||||
);
|
||||
} else {
|
||||
if (tabOrSplitView.pinned) {
|
||||
@@ -220,7 +226,7 @@ index 3ca119e8dc72fac652c98505211864483d98add2..026b524be51170882e788a701095b938
|
||||
}
|
||||
let tabToMove =
|
||||
this.ownerGlobal === tabOrSplitView.ownerGlobal
|
||||
@@ -661,7 +742,7 @@
|
||||
@@ -661,7 +745,7 @@
|
||||
*/
|
||||
on_click(event) {
|
||||
let isToggleElement =
|
||||
@@ -229,7 +235,7 @@ index 3ca119e8dc72fac652c98505211864483d98add2..026b524be51170882e788a701095b938
|
||||
event.target === this.#overflowCountLabel;
|
||||
if (isToggleElement && event.button === 0) {
|
||||
event.preventDefault();
|
||||
@@ -740,5 +821,6 @@
|
||||
@@ -740,5 +824,6 @@
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -1,18 +1,8 @@
|
||||
diff --git a/browser/installer/package-manifest.in b/browser/installer/package-manifest.in
|
||||
index 36eafe35063f02fe3d4acaab24a08dc1b7b0ae24..951889b156498f66118d67d4245aca649e27a3a2 100644
|
||||
index 36eafe35063f02fe3d4acaab24a08dc1b7b0ae24..b6bf327bf286de5246e5c50d89519d16d5771caf 100644
|
||||
--- a/browser/installer/package-manifest.in
|
||||
+++ b/browser/installer/package-manifest.in
|
||||
@@ -378,17 +378,17 @@ bin/libfreebl_64int_3.so
|
||||
; [MaintenanceService]
|
||||
;
|
||||
#ifdef MOZ_MAINTENANCE_SERVICE
|
||||
-@BINPATH@/maintenanceservice.exe
|
||||
-@BINPATH@/maintenanceservice_installer.exe
|
||||
+;@BINPATH@/maintenanceservice.exe
|
||||
+;@BINPATH@/maintenanceservice_installer.exe
|
||||
#endif
|
||||
|
||||
; [Crash Reporter]
|
||||
@@ -386,9 +386,9 @@ bin/libfreebl_64int_3.so
|
||||
;
|
||||
#ifdef MOZ_CRASHREPORTER
|
||||
#ifdef XP_MACOSX
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
diff --git a/browser/themes/shared/urlbar-searchbar.css b/browser/themes/shared/urlbar-searchbar.css
|
||||
index cbbf55f31ae5e456401172f79ddbbe41256025a4..8cab0f2809a43c0aa4249453732eb0e006c2c676 100644
|
||||
index cbbf55f31ae5e456401172f79ddbbe41256025a4..dc471dfe30dedf7c4917322a5b2257a9ec9c4f90 100644
|
||||
--- a/browser/themes/shared/urlbar-searchbar.css
|
||||
+++ b/browser/themes/shared/urlbar-searchbar.css
|
||||
@@ -10,7 +10,7 @@
|
||||
@@ -25,7 +25,7 @@ index cbbf55f31ae5e456401172f79ddbbe41256025a4..8cab0f2809a43c0aa4249453732eb0e0
|
||||
.urlbar[breakout][breakout-extend] {
|
||||
height: auto;
|
||||
+ align-items: center;
|
||||
+ :root:not([zen-single-toolbar='true']) {
|
||||
+ :root:not([zen-single-toolbar='true']) & {
|
||||
margin-left: calc(-1 * var(--urlbar-margin-inline));
|
||||
+ }
|
||||
width: calc(var(--urlbar-width) + 2 * var(--urlbar-margin-inline));
|
||||
|
||||
@@ -96,7 +96,9 @@
|
||||
max-height: 16px;
|
||||
}
|
||||
|
||||
#appMenu-translate-button {
|
||||
#appMenu-translate-button,
|
||||
#translations-button-icon {
|
||||
--urlbar-icon-fill-opacity: 0.6;
|
||||
list-style-image: url("translations.svg") !important;
|
||||
}
|
||||
|
||||
|
||||
@@ -2,4 +2,4 @@
|
||||
# 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/.
|
||||
<svg fill="none" stroke="context-fill" stroke-width="1.5" stroke-opacity="context-fill-opacity" width="18" height="18" viewBox="0 0 18 18" xmlns="http://www.w3.org/2000/svg" xmlns:svg="http://www.w3.org/2000/svg"><path class="nc-icon-wrapper" d="M 9,7.25 C 10.2426,7.25 11.25,6.24264 11.25,5 11.25,3.75736 10.2426,2.75 9,2.75 7.75736,2.75 6.75,3.75736 6.75,5 6.75,6.24264 7.75736,7.25 9,7.25 Z m 4.25,8 c 1.2426,0 2.25,-1.0074 2.25,-2.25 0,-1.2426 -1.0074,-2.25 -2.25,-2.25 -1.2426,0 -2.25,1.0074 -2.25,2.25 0,1.2426 1.0074,2.25 2.25,2.25 z m -8.5,0 C 5.99264,15.25 7,14.2426 7,13 7,11.7574 5.99264,10.75 4.75,10.75 3.50736,10.75 2.5,11.7574 2.5,13 c 0,1.2426 1.00736,2.25 2.25,2.25 z"/></svg>
|
||||
<svg xmlns="http://www.w3.org/2000/svg" width="18" height="18" fill="context-fill" fill-opacity="context-fill-opacity" viewBox="0 0 18 18"><path d="M4.75 10a3 3 0 1 1 0 6 3 3 0 0 1 0-6m0 1.5a1.5 1.5 0 1 0 0 3 1.5 1.5 0 0 0 0-3m8.5-1.5a3 3 0 1 1 0 6 3 3 0 0 1 0-6m0 1.5a1.5 1.5 0 1 0 0 3 1.5 1.5 0 0 0 0-3M9 2a3 3 0 1 1 0 6 3 3 0 0 1 0-6m0 1.5a1.5 1.5 0 1 0 0 3 1.5 1.5 0 0 0 0-3"/></svg>
|
||||
|
||||
@@ -2,4 +2,4 @@
|
||||
# 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/.
|
||||
<svg fill="none" stroke="context-fill" stroke-width="1.5" stroke-opacity="context-fill-opacity" height="18" width="18" viewBox="0 0 18 18" xmlns="http://www.w3.org/2000/svg" xmlns:svg="http://www.w3.org/2000/svg"><path class="nc-icon-wrapper" d="M 15.25,6.5 9,12.75 2.75,6.5"/></svg>
|
||||
<svg xmlns="http://www.w3.org/2000/svg" width="18" height="18" fill="context-fill" fill-opacity="context-fill-opacity" viewBox="0 0 18 18"><path d="M14.72 5.97a.75.75 0 1 1 1.06 1.06l-6.25 6.25a.75.75 0 0 1-1.06 0L2.22 7.03a.75.75 0 1 1 1.06-1.06L9 11.69z"/></svg>
|
||||
|
||||
@@ -2,4 +2,4 @@
|
||||
# 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/.
|
||||
<svg fill="none" stroke="context-fill" stroke-width="1.5" stroke-opacity="context-fill-opacity" height="18" width="18" viewBox="0 0 18 18" xmlns="http://www.w3.org/2000/svg" xmlns:svg="http://www.w3.org/2000/svg"><path class="nc-icon-wrapper" d="M 11.5,15.25 5.25,9 11.5,2.75"/></svg>
|
||||
<svg xmlns="http://www.w3.org/2000/svg" width="18" height="18" fill="context-fill" fill-opacity="context-fill-opacity" viewBox="0 0 18 18"><path d="M10.97 2.22a.75.75 0 1 1 1.06 1.06L6.31 9l5.72 5.72a.75.75 0 1 1-1.06 1.06L4.72 9.53a.75.75 0 0 1 0-1.06z"/></svg>
|
||||
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user