Skip to content
Snippets Groups Projects

Compare revisions

Changes are shown as if the source revision was being merged into the target revision. Learn more about comparing revisions.

Source

Select target project
No results found

Target

Select target project
  • gk/tor-browser
  • peterstory/tor-browser
  • sanketh/tor-browser
  • acat/tor-browser
  • sysrqb/tor-browser
  • boklm/tor-browser
  • dan/tor-browser
  • fabrizio/tor-browser
  • victorvw/tor-browser
  • aguestuser/tor-browser
  • WofWca/tor-browser
  • p13dz/tor-browser
  • mwolfe/tor-browser
  • tpo/applications/tor-browser
  • brade/tor-browser
  • pierov/tor-browser
  • ma1/tor-browser
  • JeremyRand/tor-browser
  • henry/tor-browser
  • msimonelli/tor-browser
  • cypherpunks1/tor-browser
  • blackZwork/tor-browser
  • starlingroot/tor-browser
  • cohosh/tor-browser
  • t-m-w/tor-browser
  • trinity-1686a/tor-browser
  • HHN/tor-browser
  • emmapeel/tor-browser
  • Achintya_Sharma/tor-browser
  • guest475646844/tor-browser
  • Mima/tor-browser
  • morgan/tor-browser
  • clairehurst/tor-browser
  • NoisyCoil/tor-browser
  • gus/tor-browser
  • Francewhoa/tor-browser
  • novialriptide/tor-browser
  • jwilde/tor-browser
  • brizental/tor-browser
  • ourhopeforfreedom/tor-browser
  • onyinyang/tor-browser
  • Noino/tor-browser
  • murmelurmel/tor-browser
43 results
Show changes
Commits on Source (3)
......@@ -57,6 +57,7 @@
<toolbarseparator/>
<toolbarbutton id="appMenu-new-identity"
class="subviewbutton"
data-l10n-id="appmenuitem-new-identity"
key="new-identity-key"/>
<toolbarbutton id="appMenuNewCircuit"
class="subviewbutton"
......
......@@ -30,7 +30,7 @@
key="key_privatebrowsing" data-l10n-id="menu-file-new-private-window"/>
<menuseparator/>
<menuitem id="menu_newIdentity"
key="new-identity-key"/>
key="new-identity-key" data-l10n-id="menu-new-identity"/>
<menuitem id="menu_newCircuit"
accesskey="&torbutton.context_menu.new_circuit_key;"
key="new-circuit-key"
......
......@@ -617,7 +617,8 @@
ondragover="newWindowButtonObserver.onDragOver(event)"
ondragenter="newWindowButtonObserver.onDragOver(event)"/>
<toolbarbutton id="new-identity-button" class="toolbarbutton-1 chromeclass-toolbar-additional"/>
<toolbarbutton id="new-identity-button" class="toolbarbutton-1 chromeclass-toolbar-additional"
data-l10n-id="toolbar-new-identity"/>
<toolbarbutton id="new-circuit-button" class="toolbarbutton-1 chromeclass-toolbar-additional"
label="&torbutton.context_menu.new_circuit;"
......
......@@ -5,20 +5,13 @@
document.addEventListener("dialogaccept", () => {
const retvals = window.arguments[0];
retvals.confirmed = true;
retvals.neverAskAgain = document.querySelector("#neverAskAgain").checked;
retvals.neverAskAgain = document.getElementById("neverAskAgain").checked;
});
document.addEventListener("DOMContentLoaded", () => {
const { NewIdentityStrings } = window.arguments[0];
const dialog = document.querySelector("#newIdentityDialog");
const dialog = document.getElementById("newIdentityDialog");
dialog.querySelector("#infoTitle").textContent =
NewIdentityStrings.new_identity_prompt_title;
dialog.querySelector("#infoBody").textContent =
NewIdentityStrings.new_identity_prompt;
dialog.querySelector("#neverAskAgain").label =
NewIdentityStrings.new_identity_ask_again;
const accept = dialog.getButton("accept");
accept.label = NewIdentityStrings.new_identity_restart;
document.l10n.setAttributes(accept, "new-identity-dialog-confirm");
accept.classList.add("danger-button");
});
......@@ -21,9 +21,8 @@
>
<dialog id="newIdentityDialog" buttons="accept,cancel" defaultButton="accept">
<linkset>
<!-- Without this document.l10n is not initialized, and we need it for the
cancel button. -->
<html:link rel="localization" href="branding/brand.ftl" />
<html:link rel="localization" href="browser/base-browser.ftl" />
</linkset>
<div xmlns="http://www.w3.org/1999/xhtml">
......@@ -33,13 +32,18 @@
<xul:image id="infoIcon" />
</div>
<div id="infoContainer">
<xul:description id="infoTitle" />
<xul:description
id="infoTitle"
data-l10n-id="new-identity-dialog-title"
/>
<xul:description
id="infoBody"
context="contentAreaContextMenu"
noinitialfocus="true"
data-l10n-id="new-identity-dialog-description"
/>
<xul:checkbox
id="neverAskAgain"
data-l10n-id="new-identity-dialog-never-ask-checkbox"
/>
<xul:checkbox id="neverAskAgain" />
</div>
</div>
</div>
......
"use strict";
/* globals CustomizableUI Services gFindBarInitialized gFindBar
OpenBrowserWindow PrivateBrowsingUtils XPCOMUtils
*/
XPCOMUtils.defineLazyGetter(this, "NewIdentityStrings", () => {
const brandBundle = Services.strings.createBundle(
"chrome://branding/locale/brand.properties"
);
const brandShortName = brandBundle.GetStringFromName("brandShortName");
const fallbackBundle = Services.strings.createBundle(
"resource:///chrome/en-US/locale/browser/newIdentity.properties"
);
const strings = {};
const brandedStrings = ["new_identity_prompt", "new_identity_restart"];
for (let { key } of fallbackBundle.getSimpleEnumeration()) {
strings[key] = fallbackBundle.GetStringFromName(key);
}
try {
const bundle = Services.strings.createBundle(
"chrome://browser/locale/newIdentity.properties"
);
for (const key of Object.keys(strings)) {
try {
strings[key] = bundle.GetStringFromName(key);
} catch (e) {}
}
} catch (e) {
console.warn("Could not load localized New Identity strings");
}
for (let key of brandedStrings) {
strings[key] = strings[key].replaceAll("%S", brandShortName);
}
return strings;
});
/* eslint-env mozilla/browser-window */
// Use a lazy getter because NewIdentityButton is declared more than once
// otherwise.
......@@ -471,11 +437,6 @@ XPCOMUtils.defineLazyGetter(this, "NewIdentityButton", () => {
// malformed URL, bail out
return;
}
const label =
NewIdentityStrings.new_identity_home_notification.replace(
"%S",
displayAddress
);
const callback = () => {
Services.prefs.setStringPref(trustedHomePref, homeURL);
win.BrowserHome();
......@@ -484,12 +445,15 @@ XPCOMUtils.defineLazyGetter(this, "NewIdentityButton", () => {
notificationBox.appendNotification(
"new-identity-safe-home",
{
label,
label: {
"l10n-id": "new-identity-blocked-home-notification",
"l10n-args": { url: displayAddress },
},
priority: notificationBox.PRIORITY_INFO_MEDIUM,
},
[
{
label: NewIdentityStrings.new_identity_home_load_button,
"l10n-id": "new-identity-blocked-home-ignore-button",
callback,
},
]
......@@ -550,37 +514,20 @@ XPCOMUtils.defineLazyGetter(this, "NewIdentityButton", () => {
const button =
document.getElementById("new-identity-button") ||
window.gNavToolbox.palette.querySelector("#new-identity-button");
if (button) {
button.setAttribute("tooltiptext", NewIdentityStrings.new_identity);
// Include an equal label, shown in the overflow menu or during
// customization.
button.setAttribute("label", NewIdentityStrings.new_identity);
button.addEventListener("command", () => {
this.onCommand();
});
}
const viewCache = document.getElementById("appMenu-viewCache").content;
const appButton = viewCache.querySelector("#appMenu-new-identity");
if (appButton) {
appButton.setAttribute(
"label",
NewIdentityStrings.new_identity_sentence_case
);
appButton.addEventListener("command", () => {
button?.addEventListener("command", () => {
this.onCommand();
});
document
.getElementById("appMenu-viewCache")
.content.querySelector("#appMenu-new-identity")
?.addEventListener("command", () => {
this.onCommand();
});
}
const menu = document.querySelector("#menu_newIdentity");
if (menu) {
menu.setAttribute("label", NewIdentityStrings.new_identity);
menu.setAttribute(
"accesskey",
NewIdentityStrings.new_identity_menu_accesskey
);
menu.addEventListener("command", () => {
document
.getElementById("menu_newIdentity")
?.addEventListener("command", () => {
this.onCommand();
});
}
},
uninit() {},
......@@ -598,7 +545,6 @@ XPCOMUtils.defineLazyGetter(this, "NewIdentityButton", () => {
const shouldConfirm = Services.prefs.getBoolPref(prefConfirm, true);
if (shouldConfirm) {
const params = {
NewIdentityStrings,
confirmed: false,
neverAskAgain: false,
};
......
......@@ -11,20 +11,19 @@ language-notification-label-system = { -brand-short-name } has set your display
language-notification-label = { -brand-short-name } has set your display language to { $language }.
language-notification-button = Change Language…
## Fullscreen/maximization notification shown when letterboxing is disabled
basebrowser-rfp-maximize-warning-message = Maximizing the browser window can allow websites to determine your monitor size, which can be used to track you. We recommend that you leave browser windows in their original default size.
basebrowser-rfp-restore-window-size-button-label = Restore
basebrowser-rfp-restore-window-size-button-ak = R
## Tooltip for the about:addons recommended badge
basebrowser-addon-badge-recommended = Mozilla only recommends extensions that meet their standards for security and performance
basebrowser-addon-badge-verified = Mozilla has reviewed this extension to meet their standards for security and performance
## Option to show or hide the NoScript extension button/item.
basebrowser-addon-noscript-visibility-label = Toolbar button
basebrowser-addon-noscript-visibility-show = Show
basebrowser-addon-noscript-visibility-hide = Hide
......@@ -35,3 +34,39 @@ basebrowser-addon-noscript-visibility-hide = Hide
# $version (String) - The current browser version. E.g. "12.5.3".
# $firefoxVersion (String) - The version number of Firefox the current browser is based on. E.g. "102.15.0esr".
basebrowser-about-dialog-version = { $version } (based on Mozilla Firefox { $firefoxVersion })
## New identity.
# File menu items use title case for English (US).
menu-new-identity =
.label = New Identity
.accesskey = I
# App menu (hamburger menu) items use sentence case for English (US).
appmenuitem-new-identity =
.label = New identity
# Uses sentence case for English (US).
# ".label" is the accessible name, and is visible in the overflow menu and when
# customizing the toolbar.
# ".tooltiptext" will be identical to the label.
toolbar-new-identity =
.label = New identity
.tooltiptext = { toolbar-new-identity.label }
## New identity dialog.
new-identity-dialog-title = Reset your identity?
new-identity-dialog-description = { -brand-short-name } will close all windows and tabs. All website sessions will be lost.
new-identity-dialog-never-ask-checkbox =
.label = Never ask me again
new-identity-dialog-confirm =
.label = Restart { -brand-short-name }
## New identity: blocked home page notification.
# '-brand-short-name' is the localized browser name, like "Tor Browser".
# $url (String) - The URL of the home page, possibly shortened.
new-identity-blocked-home-notification = { -brand-short-name } blocked your homepage ({ $url }) from loading because it might recognize your previous session.
# Button to continue loading the home page, despite the warning message.
new-identity-blocked-home-ignore-button = Load it anyway
new_identity = New Identity
# This is the string for the hamburger menu
new_identity_sentence_case = New identity
# %S is the application name. Keep it as a placeholder
new_identity_prompt_title = Reset your identity?
new_identity_prompt = %S will close all windows and tabs. All website sessions will be lost. \nRestart %S now to reset your identity?
new_identity_restart = Restart %S
new_identity_ask_again = Never ask me again
# Shown in the File menu (use Alt to show File, if you do not see)
new_identity_menu_accesskey = I
new_identity_home_notification = Tor Browser blocked your homepage (%S) from loading because it might recognize your previous session.
# %S is replaced with the custom homepage URL's domain if applicable, or some short-hand of it otherwise
new_identity_home_load_button = Load it anyway
......@@ -34,6 +34,5 @@
locale/browser/feeds/subscribe.properties (%chrome/browser/feeds/subscribe.properties)
locale/browser/syncSetup.properties (%chrome/browser/syncSetup.properties)
locale/browser/securityLevel.properties (%chrome/browser/securityLevel.properties)
locale/browser/newIdentity.properties (%chrome/browser/newIdentity.properties)
locale/browser/cryptoSafetyPrompt.properties (%chrome/browser/cryptoSafetyPrompt.properties)
% locale browser-region @AB_CD@ %locale/browser-region/
import fluent.syntax.ast as FTL
from fluent.migrate.helpers import TERM_REFERENCE, transforms_from
from fluent.migrate.transforms import REPLACE
def migrate(ctx):
legacy_path = "newIdentity.properties"
ctx.add_transforms(
"base-browser.ftl",
"base-browser.ftl",
transforms_from(
"""
menu-new-identity =
.label = { COPY(path, "new_identity") }
.accesskey = { COPY(path, "new_identity_menu_accesskey") }
appmenuitem-new-identity =
.label = { COPY(path, "new_identity_sentence_case") }
toolbar-new-identity =
.label = { COPY(path, "new_identity_sentence_case") }
.tooltiptext = { toolbar-new-identity.label }
new-identity-dialog-title = { COPY(path, "new_identity_prompt_title") }
new-identity-dialog-never-ask-checkbox =
.label = { COPY(path, "new_identity_ask_again") }
new-identity-blocked-home-ignore-button = { COPY(path, "new_identity_home_load_button") }
""",
path=legacy_path,
)
+ [
# Replace "%S" with "{ -brand-short-name }" in confirm button.
FTL.Message(
id=FTL.Identifier("new-identity-dialog-confirm"),
value=None,
attributes=[
FTL.Attribute(
id=FTL.Identifier("label"),
value=REPLACE(
legacy_path,
"new_identity_restart",
{"%1$S": TERM_REFERENCE("brand-short-name")},
),
),
],
),
],
)