summaryrefslogtreecommitdiffstats
path: root/l10n-en-CA/mobile/android
diff options
context:
space:
mode:
authorDaniel Baumann <daniel.baumann@progress-linux.org>2024-04-28 14:29:10 +0000
committerDaniel Baumann <daniel.baumann@progress-linux.org>2024-04-28 14:29:10 +0000
commit2aa4a82499d4becd2284cdb482213d541b8804dd (patch)
treeb80bf8bf13c3766139fbacc530efd0dd9d54394c /l10n-en-CA/mobile/android
parentInitial commit. (diff)
downloadfirefox-upstream.tar.xz
firefox-upstream.zip
Adding upstream version 86.0.1.upstream/86.0.1upstream
Signed-off-by: Daniel Baumann <daniel.baumann@progress-linux.org>
Diffstat (limited to 'l10n-en-CA/mobile/android')
-rw-r--r--l10n-en-CA/mobile/android/chrome/about.dtd21
-rw-r--r--l10n-en-CA/mobile/android/chrome/aboutAccounts.dtd13
-rw-r--r--l10n-en-CA/mobile/android/chrome/aboutAccounts.properties16
-rw-r--r--l10n-en-CA/mobile/android/chrome/aboutAddons.dtd15
-rw-r--r--l10n-en-CA/mobile/android/chrome/aboutAddons.properties12
-rw-r--r--l10n-en-CA/mobile/android/chrome/aboutCertError.dtd38
-rw-r--r--l10n-en-CA/mobile/android/chrome/aboutDownloads.dtd15
-rw-r--r--l10n-en-CA/mobile/android/chrome/aboutDownloads.properties17
-rw-r--r--l10n-en-CA/mobile/android/chrome/aboutHome.dtd5
-rw-r--r--l10n-en-CA/mobile/android/chrome/aboutLogins.dtd10
-rw-r--r--l10n-en-CA/mobile/android/chrome/aboutLogins.properties33
-rw-r--r--l10n-en-CA/mobile/android/chrome/aboutPrivateBrowsing.dtd25
-rw-r--r--l10n-en-CA/mobile/android/chrome/browser.properties476
-rw-r--r--l10n-en-CA/mobile/android/chrome/config.dtd21
-rw-r--r--l10n-en-CA/mobile/android/chrome/config.properties9
-rw-r--r--l10n-en-CA/mobile/android/chrome/devicePrompt.properties5
-rw-r--r--l10n-en-CA/mobile/android/chrome/passwordmgr.properties22
-rw-r--r--l10n-en-CA/mobile/android/chrome/phishing.dtd27
-rw-r--r--l10n-en-CA/mobile/android/chrome/pippki.properties84
-rw-r--r--l10n-en-CA/mobile/android/chrome/sync.properties12
-rw-r--r--l10n-en-CA/mobile/android/chrome/webcompatReporter.properties12
-rw-r--r--l10n-en-CA/mobile/android/defines.inc12
22 files changed, 900 insertions, 0 deletions
diff --git a/l10n-en-CA/mobile/android/chrome/about.dtd b/l10n-en-CA/mobile/android/chrome/about.dtd
new file mode 100644
index 0000000000..1ea56b7f96
--- /dev/null
+++ b/l10n-en-CA/mobile/android/chrome/about.dtd
@@ -0,0 +1,21 @@
+<!-- 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/. -->
+<!ENTITY aboutPage.title "About &brandShortName;">
+<!ENTITY aboutPage.warningVersion "&brandShortName; is experimental and may be unstable.">
+<!ENTITY aboutPage.checkForUpdates.link "Check for Updates »">
+<!ENTITY aboutPage.checkForUpdates.checking "Looking for updates…">
+<!ENTITY aboutPage.checkForUpdates.none "No updates available">
+<!ENTITY aboutPage.checkForUpdates.available2 "Download update">
+<!ENTITY aboutPage.checkForUpdates.downloading "Downloading update…">
+<!ENTITY aboutPage.checkForUpdates.downloaded2 "Install update">
+<!ENTITY aboutPage.faq.label "FAQ">
+<!ENTITY aboutPage.support.label "Support">
+<!ENTITY aboutPage.privacyPolicy.label "Privacy Policy">
+<!ENTITY aboutPage.rights.label "Know Your Rights">
+<!ENTITY aboutPage.relNotes.label "Release Notes">
+<!ENTITY aboutPage.credits.label "Credits">
+<!ENTITY aboutPage.license.label "Licensing Information">
+
+<!-- LOCALIZATION NOTE (aboutPage.logoTrademark): The message is explicitly about the word "Firefox" being trademarked, that's why we use it, instead of brandShortName. -->
+<!ENTITY aboutPage.logoTrademark "Firefox and the Firefox logos are trademarks of the Mozilla Foundation.">
diff --git a/l10n-en-CA/mobile/android/chrome/aboutAccounts.dtd b/l10n-en-CA/mobile/android/chrome/aboutAccounts.dtd
new file mode 100644
index 0000000000..0053759d29
--- /dev/null
+++ b/l10n-en-CA/mobile/android/chrome/aboutAccounts.dtd
@@ -0,0 +1,13 @@
+<!-- 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/. -->
+
+<!ENTITY aboutAccounts.connected.title "Firefox Accounts">
+<!ENTITY aboutAccounts.connected.description "You are connected as">
+<!ENTITY aboutAccounts.syncPreferences.label "Tap here to check Sync settings">
+
+<!ENTITY aboutAccounts.noConnection.title "No Internet connection">
+<!ENTITY aboutAccounts.retry.label "Try again">
+
+<!ENTITY aboutAccounts.restrictedError.title "Restricted">
+<!ENTITY aboutAccounts.restrictedError.description "You cannot manage Firefox Accounts from this profile.">
diff --git a/l10n-en-CA/mobile/android/chrome/aboutAccounts.properties b/l10n-en-CA/mobile/android/chrome/aboutAccounts.properties
new file mode 100644
index 0000000000..67f20eb618
--- /dev/null
+++ b/l10n-en-CA/mobile/android/chrome/aboutAccounts.properties
@@ -0,0 +1,16 @@
+# 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/.
+
+# LOCALIZATION NOTE (relinkDenied.message): Ideally, this string is short (it's
+# a toast message).
+relinkDenied.message = Already signed in to Sync!
+# LOCALIZATION NOTE (relinkDenied.openPrefs): Ideally, this string is short (it's a
+# button label) and upper-case, to match Google and Android's convention.
+relinkDenied.openPrefs = PREFS
+
+relinkVerify.title = Are you sure you want to sign in to Sync?
+# LOCALIZATION NOTE (relinkVerify.message): Email address of a user previously signed in to Sync.
+relinkVerify.message = You were previously signed in to Sync with a different email address. Signing in will merge this browser’s bookmarks, passwords and other settings with %S
+relinkVerify.continue = Continue
+relinkVerify.cancel = Cancel
diff --git a/l10n-en-CA/mobile/android/chrome/aboutAddons.dtd b/l10n-en-CA/mobile/android/chrome/aboutAddons.dtd
new file mode 100644
index 0000000000..03470317f4
--- /dev/null
+++ b/l10n-en-CA/mobile/android/chrome/aboutAddons.dtd
@@ -0,0 +1,15 @@
+<!-- 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/. -->
+
+<!ENTITY aboutAddons.title2 "Add-ons">
+<!ENTITY aboutAddons.header2 "Your Add-ons">
+
+<!ENTITY addonAction.enable "Enable">
+<!ENTITY addonAction.disable "Disable">
+<!ENTITY addonAction.uninstall "Uninstall">
+<!ENTITY addonAction.undo "Undo">
+<!ENTITY addonAction.update "Update">
+
+<!ENTITY addonUnsigned.message "This add-on could not be verified by &brandShortName;.">
+<!ENTITY addonUnsigned.learnMore "Learn more">
diff --git a/l10n-en-CA/mobile/android/chrome/aboutAddons.properties b/l10n-en-CA/mobile/android/chrome/aboutAddons.properties
new file mode 100644
index 0000000000..05ad035936
--- /dev/null
+++ b/l10n-en-CA/mobile/android/chrome/aboutAddons.properties
@@ -0,0 +1,12 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+addonStatus.uninstalled=%S will be uninstalled after restart.
+
+# Will keep both strings and at runtime will fallback on the old one if the new one is not yet localized
+addons.browseAll=Browse all Firefox Add-ons
+
+addons.browseRecommended=Browse Firefox’s Recommended Extensions
+
+addon.options=Options
diff --git a/l10n-en-CA/mobile/android/chrome/aboutCertError.dtd b/l10n-en-CA/mobile/android/chrome/aboutCertError.dtd
new file mode 100644
index 0000000000..7ee1a40055
--- /dev/null
+++ b/l10n-en-CA/mobile/android/chrome/aboutCertError.dtd
@@ -0,0 +1,38 @@
+<!-- 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/. -->
+
+<!ENTITY % brandDTD
+ SYSTEM "chrome://branding/locale/brand.dtd">
+ %brandDTD;
+
+<!-- These strings are used by Firefox's custom about:certerror page,
+a replacement for the standard security certificate errors produced
+by NSS/PSM via netError.xhtml. -->
+
+<!ENTITY certerror.pagetitle "Untrusted Connection">
+<!ENTITY certerror.longpagetitle "This Connection is Untrusted">
+
+<!-- Localization note (certerror.introPara1) - The string "#1" will
+be replaced at runtime with the name of the server to which the user
+was trying to connect. -->
+<!ENTITY certerror.introPara1 "You have asked &brandShortName; to connect
+securely to <b>#1</b>, but we can’t confirm that your connection is secure.">
+
+<!ENTITY certerror.whatShouldIDo.heading "What Should I Do?">
+<!ENTITY certerror.whatShouldIDo.content "If you usually connect to
+this site without problems, this error could mean that someone is
+trying to impersonate the site, and you shouldn’t continue.">
+<!ENTITY certerror.getMeOutOfHere.label "Get me out of here!">
+
+<!ENTITY certerror.expert.heading "I Understand the Risks">
+<!ENTITY certerror.expert.content "If you understand what’s going on, you
+can tell &brandShortName; to start trusting this site’s identification.
+<b>Even if you trust the site, this error could mean that someone is
+tampering with your connection.</b>">
+<!ENTITY certerror.expert.contentPara2 "Don’t add an exception unless
+you know there’s a good reason why this site doesn’t use trusted identification.">
+<!ENTITY certerror.addTemporaryException.label "Visit site">
+<!ENTITY certerror.addPermanentException.label "Add permanent exception">
+
+<!ENTITY certerror.technical.heading "Technical Details">
diff --git a/l10n-en-CA/mobile/android/chrome/aboutDownloads.dtd b/l10n-en-CA/mobile/android/chrome/aboutDownloads.dtd
new file mode 100644
index 0000000000..fae992d4ff
--- /dev/null
+++ b/l10n-en-CA/mobile/android/chrome/aboutDownloads.dtd
@@ -0,0 +1,15 @@
+<!-- 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/. -->
+
+<!ENTITY aboutDownloads.title "Downloads">
+<!ENTITY aboutDownloads.header "Your Downloads">
+<!ENTITY aboutDownloads.empty "No Downloads">
+
+<!ENTITY aboutDownloads.open "Open">
+<!ENTITY aboutDownloads.remove "Delete">
+<!ENTITY aboutDownloads.removeAll "Delete All">
+<!ENTITY aboutDownloads.pause "Pause">
+<!ENTITY aboutDownloads.resume "Resume">
+<!ENTITY aboutDownloads.cancel "Cancel">
+<!ENTITY aboutDownloads.retry "Retry">
diff --git a/l10n-en-CA/mobile/android/chrome/aboutDownloads.properties b/l10n-en-CA/mobile/android/chrome/aboutDownloads.properties
new file mode 100644
index 0000000000..18f3c5ae7d
--- /dev/null
+++ b/l10n-en-CA/mobile/android/chrome/aboutDownloads.properties
@@ -0,0 +1,17 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+# LOCALIZATION NOTE (downloadMessage.deleteAll):
+# Semicolon-separated list of plural forms. See:
+# http://developer.mozilla.org/en/docs/Localization_and_Plurals
+downloadMessage.deleteAll=Delete this download?;Delete #1 downloads?
+
+downloadAction.deleteAll=Delete All
+
+downloadState.downloading=Downloading…
+downloadState.canceled=Cancelled
+downloadState.failed=Failed
+downloadState.paused=Paused
+downloadState.starting=Starting…
+downloadState.unknownSize=Unknown size
diff --git a/l10n-en-CA/mobile/android/chrome/aboutHome.dtd b/l10n-en-CA/mobile/android/chrome/aboutHome.dtd
new file mode 100644
index 0000000000..4f9ab9e061
--- /dev/null
+++ b/l10n-en-CA/mobile/android/chrome/aboutHome.dtd
@@ -0,0 +1,5 @@
+<!-- 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/. -->
+
+<!ENTITY abouthome.title "&brandShortName; Home">
diff --git a/l10n-en-CA/mobile/android/chrome/aboutLogins.dtd b/l10n-en-CA/mobile/android/chrome/aboutLogins.dtd
new file mode 100644
index 0000000000..2ae2cadcbd
--- /dev/null
+++ b/l10n-en-CA/mobile/android/chrome/aboutLogins.dtd
@@ -0,0 +1,10 @@
+<!-- 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/. -->
+<!ENTITY % brandDTD
+ SYSTEM "chrome://branding/locale/brand.dtd">
+ %brandDTD;
+<!ENTITY aboutLogins.title "Logins">
+<!ENTITY aboutLogins.update "Update">
+<!ENTITY aboutLogins.emptyLoginText "Keep your logins safe">
+<!ENTITY aboutLogins.emptyLoginHint "Logins and credentials you save using &brandShortName; will show up here.">
diff --git a/l10n-en-CA/mobile/android/chrome/aboutLogins.properties b/l10n-en-CA/mobile/android/chrome/aboutLogins.properties
new file mode 100644
index 0000000000..23300bd40c
--- /dev/null
+++ b/l10n-en-CA/mobile/android/chrome/aboutLogins.properties
@@ -0,0 +1,33 @@
+# 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/.
+
+loginsMenu.showPassword=Show password
+loginsMenu.copyPassword=Copy password
+loginsMenu.copyUsername=Copy username
+loginsMenu.editLogin=Edit login
+loginsMenu.delete=Delete
+
+loginsMenu.deleteAll=Delete All
+
+loginsDialog.confirmDelete=Delete this login?
+loginsDialog.confirmDeleteForFxaUser=Delete this login?\n\nThis can affect synced logins.
+loginsDialog.confirmDeleteAll=Delete all logins?
+loginsDialog.confirmDeleteAllForFxaUser=Delete all logins?\n\nThis can affect synced logins.
+loginsDialog.copy=Copy
+loginsDialog.confirm=OK
+loginsDialog.cancel=Cancel
+
+editLogin.fallbackTitle=Edit Login
+editLogin.saved1=Saved login
+editLogin.couldNotSave=Changes could not be saved
+
+loginsDetails.copyFailed=Copy failed
+loginsDetails.passwordCopied=Password copied
+loginsDetails.usernameCopied=Username copied
+loginsDetails.deleted=Login deleted
+
+loginsDetails.deletedAll=All logins deleted
+
+password-btn.show=Show
+password-btn.hide=Hide
diff --git a/l10n-en-CA/mobile/android/chrome/aboutPrivateBrowsing.dtd b/l10n-en-CA/mobile/android/chrome/aboutPrivateBrowsing.dtd
new file mode 100644
index 0000000000..393ae321c5
--- /dev/null
+++ b/l10n-en-CA/mobile/android/chrome/aboutPrivateBrowsing.dtd
@@ -0,0 +1,25 @@
+<!-- This Source Code Form is subject to the terms of the Mozilla Public
+ - License, v. 2.0. If a copy of the MPL was not distributed with this
+ - file, You can obtain one at http://mozilla.org/MPL/2.0/. -->
+
+<!ENTITY privatebrowsingpage.title "Private Browsing">
+
+<!-- Localisation note: the plus sign here is a shorthand way of expressing the word "and". Contextually the privatebrowsingpage.title.private string
+ is used as a title, with the privatebrowsingpage.title string preceding it but on a separate line.
+ So the final line will say "Private Browsing + Tracking Protection". -->
+<!ENTITY privatebrowsingpage.title.private "+ Tracking Protection">
+<!-- Localization note (privatebrowsingpage.title.normal1): "Private Browsing"
+ is capitalized in English to be consistent with our existing uses of the
+ term. -->
+<!ENTITY privatebrowsingpage.title.normal1 "You are not in Private Browsing">
+
+<!ENTITY privatebrowsingpage.description.trackingProtection "&brandShortName; blocks parts of the pages that may track your browsing activity.">
+<!ENTITY privatebrowsingpage.description.privateDetails "We won’t remember any history, but downloaded files and new bookmarks will still be saved to your device.">
+
+<!-- Localization note (privatebrowsingpage.description.normal2): "Private
+ Browsing is capitalized in English to be consistent with our existing uses
+ of the term. -->
+<!ENTITY privatebrowsingpage.description.normal2 "In Private Browsing, we won’t keep any of your browsing history or cookies. Bookmarks you add and files you download will still be saved on your device.">
+
+<!ENTITY privatebrowsingpage.link.private "Want to learn more?">
+<!ENTITY privatebrowsingpage.link.normal "Open a new private tab">
diff --git a/l10n-en-CA/mobile/android/chrome/browser.properties b/l10n-en-CA/mobile/android/chrome/browser.properties
new file mode 100644
index 0000000000..88bbe027eb
--- /dev/null
+++ b/l10n-en-CA/mobile/android/chrome/browser.properties
@@ -0,0 +1,476 @@
+# 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/.
+
+addonsConfirmInstall.title=Installing Add-on
+addonsConfirmInstall.install=Install
+
+addonsConfirmInstallUnsigned.title=Unverified add-on
+addonsConfirmInstallUnsigned.message=This site would like to install an unverified add-on. Proceed at your own risk.
+
+# Alerts
+alertAddonsDownloading=Downloading add-on
+alertAddonsInstalledNoRestart.message=Installation complete
+
+# LOCALIZATION NOTE (alertAddonsInstalledNoRestart.action2): Ideally, this string is short (it's a
+# button label) and upper-case, to match Google and Android's convention.
+alertAddonsInstalledNoRestart.action2=ADD-ONS
+
+alertDownloadsStart2=Download starting
+alertDownloadsDone2=Download complete
+alertDownloadsToast=Download started…
+alertDownloadsPause=Pause
+alertDownloadsResume=Resume
+alertDownloadsCancel=Cancel
+# LOCALIZATION NOTE (alertDownloadSucceeded): This text is shown as a snackbar inside the app after a
+# successful download. %S will be replaced by the file name of the download.
+alertDownloadSucceeded=%S downloaded
+# LOCALIZATION NOTE (downloads.disabledInGuest): This message appears in a toast
+# when the user tries to download something in Guest mode.
+downloads.disabledInGuest=Downloads are disabled in guest sessions
+
+# LOCALIZATION NOTE (alertSearchEngineAddedToast, alertSearchEngineErrorToast, alertSearchEngineDuplicateToast)
+# %S will be replaced by the name of the search engine (exposed by the current page)
+# that has been added; for example, 'Google'.
+alertSearchEngineAddedToast=“%S” has been added as a search engine
+alertSearchEngineErrorToast=Couldn’t add “%S” as a search engine
+alertSearchEngineDuplicateToast=“%S” is already one of your search engines
+
+# LOCALIZATION NOTE (alertShutdownSanitize): This text is shown as a snackbar during shutdown if the
+# user has enabled "Clear private data on exit".
+alertShutdownSanitize=Clearing private data…
+
+alertPrintjobToast=Printing…
+
+download.blocked=Unable to download file
+
+addonError.titleError=Error
+addonError.titleBlocked=Blocked add-on
+addonError.learnMore=Learn more
+
+# LOCALIZATION NOTE (unsignedAddonsDisabled.title, unsignedAddonsDisabled.message):
+# These strings will appear in a dialog when Firefox detects that installed add-ons cannot be verified.
+unsignedAddonsDisabled.title=Unverified add-ons
+unsignedAddonsDisabled.message=One or more installed add-ons cannot be verified and have been disabled.
+unsignedAddonsDisabled.dismiss=Dismiss
+unsignedAddonsDisabled.viewAddons=View add-ons
+
+# LOCALIZATION NOTE (addonError-1, addonError-2, addonError-3, addonError-4, addonError-5):
+# #1 is the add-on name, #2 is the add-on host, #3 is the application name
+addonError-1=The add-on could not be downloaded because of a connection failure on #2.
+addonError-2=The add-on from #2 could not be installed because it does not match the add-on #3 expected.
+addonError-3=The add-on downloaded from #2 could not be installed because it appears to be corrupt.
+addonError-4=#1 could not be installed because #3 cannot modify the needed file.
+addonError-5=#3 has prevented #2 from installing an unverified add-on.
+
+# LOCALIZATION NOTE (addonLocalError-1, addonLocalError-2, addonLocalError-3, addonLocalError-4, addonLocalError-5, addonErrorIncompatible, addonErrorBlocklisted):
+# #1 is the add-on name, #3 is the application name, #4 is the application version
+addonLocalError-1=This add-on could not be installed because of a filesystem error.
+addonLocalError-2=This add-on could not be installed because it does not match the add-on #3 expected.
+addonLocalError-3=This add-on could not be installed because it appears to be corrupt.
+addonLocalError-4=#1 could not be installed because #3 cannot modify the needed file.
+addonLocalError-5=This add-on could not be installed because it has not been verified.
+addonErrorIncompatible=#1 could not be installed because it is not compatible with #3 #4.
+addonErrorBlocklisted=#1 could not be installed because it has a high risk of causing stability or security problems.
+
+# Notifications
+notificationRestart.normal=Restart to complete changes.
+notificationRestart.blocked=Unsafe add-ons installed. Restart to disable.
+notificationRestart.button=Restart
+doorhanger.learnMore=Learn more
+
+# Popup Blocker
+
+# LOCALIZATION NOTE (popup.message): Semicolon-separated list of plural forms.
+# #1 is brandShortName and #2 is the number of pop-ups blocked.
+popup.message=#1 prevented this site from opening a pop-up window. Would you like to show it?;#1 prevented this site from opening #2 pop-up windows. Would you like to show them?
+popup.dontAskAgain=Don’t ask again for this site
+popup.show=Show
+popup.dontShow=Don’t show
+
+# SafeBrowsing
+safeBrowsingDoorhanger=This site has been identified as containing malware or a phishing attempt. Be careful.
+
+# LOCALIZATION NOTE (blockPopups.label2): Label that will be used in
+# site settings dialog.
+blockPopups.label2=Popups
+
+# XPInstall
+xpinstallPromptWarning2=%S prevented this site (%S) from asking you to install software on your device.
+xpinstallPromptWarningLocal=%S prevented this add-on (%S) from installing on your device.
+xpinstallPromptWarningDirect=%S prevented an add-on from installing on your device.
+xpinstallPromptAllowButton=Allow
+xpinstallDisabledMessageLocked=Software installation has been disabled by your system administrator.
+xpinstallDisabledMessage2=Software installation is currently disabled. Press Enable and try again.
+xpinstallDisabledButton=Enable
+
+# LOCALIZATION NOTE (webextPerms.header)
+# This string is used as a header in the webextension permissions dialog,
+# %S is replaced with the localized name of the extension being installed.
+# See https://bug1308309.bmoattachments.org/attachment.cgi?id=8814612
+# for an example of the full dialog.
+# Note, this string will be used as raw markup. Avoid characters like <, >, &
+webextPerms.header=Add %S?
+
+# LOCALIZATION NOTE (webextPerms.listIntro)
+# This string will be followed by a list of permissions requested
+# by the webextension.
+webextPerms.listIntro=It requires your permission to:
+webextPerms.add.label=Add
+webextPerms.cancel.label=Cancel
+
+# LOCALIZATION NOTE (webextPerms.updateText)
+# %S is replaced with the localized name of the updated extension.
+webextPerms.updateText=%S has been updated. You must approve new permissions before the updated version will install. Choosing “Cancel” will maintain your current add-on version.
+
+webextPerms.updateAccept.label=Update
+
+# LOCALIZATION NOTE (webextPerms.optionalPermsHeader)
+# %S is replaced with the localized name of the extension requesting new
+# permissions.
+webextPerms.optionalPermsHeader=%S requests additional permissions.
+webextPerms.optionalPermsListIntro=It wants to:
+webextPerms.optionalPermsAllow.label=Allow
+webextPerms.optionalPermsDeny.label=Deny
+
+webextPerms.description.bookmarks=Read and modify bookmarks
+webextPerms.description.browserSettings=Read and modify browser settings
+webextPerms.description.browsingData=Clear recent browsing history, cookies, and related data
+webextPerms.description.clipboardRead=Get data from the clipboard
+webextPerms.description.clipboardWrite=Input data to the clipboard
+webextPerms.description.devtools=Extend developer tools to access your data in open tabs
+webextPerms.description.downloads=Download files and read and modify the browser’s download history
+webextPerms.description.downloads.open=Open files downloaded to your computer
+webextPerms.description.find=Read the text of all open tabs
+webextPerms.description.geolocation=Access your location
+webextPerms.description.history=Access browsing history
+webextPerms.description.management=Monitor extension usage and manage themes
+# LOCALIZATION NOTE (webextPerms.description.nativeMessaging)
+# %S will be replaced with the name of the application
+webextPerms.description.nativeMessaging=Exchange messages with programs other than %S
+webextPerms.description.notifications=Display notifications to you
+webextPerms.description.privacy=Read and modify privacy settings
+webextPerms.description.proxy=Control browser proxy settings
+webextPerms.description.sessions=Access recently closed tabs
+webextPerms.description.tabs=Access browser tabs
+webextPerms.description.topSites=Access browsing history
+webextPerms.description.webNavigation=Access browser activity during navigation
+
+webextPerms.hostDescription.allUrls=Access your data for all websites
+
+# LOCALIZATION NOTE (webextPerms.hostDescription.wildcard)
+# %S will be replaced by the DNS domain for which a webextension
+# is requesting access (e.g., mozilla.org)
+webextPerms.hostDescription.wildcard=Access your data for sites in the %S domain
+
+# LOCALIZATION NOTE (webextPerms.hostDescription.tooManyWildcards):
+# Semi-colon list of plural forms.
+# See: http://developer.mozilla.org/en/docs/Localization_and_Plurals
+# #1 will be replaced by an integer indicating the number of additional
+# domains for which this webextension is requesting permission.
+webextPerms.hostDescription.tooManyWildcards=Access your data in #1 other domain;Access your data in #1 other domains
+
+# LOCALIZATION NOTE (webextPerms.hostDescription.oneSite)
+# %S will be replaced by the DNS host name for which a webextension
+# is requesting access (e.g., www.mozilla.org)
+webextPerms.hostDescription.oneSite=Access your data for %S
+
+# LOCALIZATION NOTE (webextPerms.hostDescription.tooManySites)
+# Semi-colon list of plural forms.
+# See: http://developer.mozilla.org/en/docs/Localization_and_Plurals
+# #1 will be replaced by an integer indicating the number of additional
+# hosts for which this webextension is requesting permission.
+webextPerms.hostDescription.tooManySites=Access your data on #1 other site;Access your data on #1 other sites
+
+
+# Site Identity
+identity.identified.verifier=Verified by: %S
+identity.identified.verified_by_you=You have added a security exception for this site
+identity.identified.state_and_country=%S, %S
+
+# Geolocation UI
+geolocation.allow=Share
+geolocation.dontAllow=Don’t share
+# LOCALIZATION NOTE (geolocation.location): Label that will be used in
+# site settings dialog.
+geolocation.location=Location
+
+# Desktop notification UI
+desktopNotification2.allow=Always
+desktopNotification2.dontAllow=Never
+# LOCALIZATION NOTE (desktopNotification.notifications): Label that will be
+# used in site settings dialog.
+desktopNotification.notifications=Notifications
+
+# Imageblocking
+imageblocking.downloadedImage=Image unblocked
+imageblocking.showAllImages=Show All
+
+# New Tab Popup
+# LOCALIZATION NOTE (newtabpopup, newprivatetabpopup): Semicolon-separated list of plural forms.
+# See: http://developer.mozilla.org/en/docs/Localization_and_Plurals
+# #1 number of tabs
+newtabpopup.opened=New tab opened;#1 new tabs opened
+newprivatetabpopup.opened=New private tab opened;#1 new private tabs opened
+
+# LOCALIZATION NOTE (newtabpopup.switch): Ideally, this string is short (it's a
+# button label) and upper-case, to match Google and Android's convention.
+newtabpopup.switch=SWITCH
+
+# Undo close tab toast
+# LOCALIZATION NOTE (undoCloseToast.message): This message appears in a toast
+# when the user closes a tab. %S is the title of the tab that was closed.
+undoCloseToast.message=Closed %S
+
+# Private Tab closed message
+# LOCALIZATION NOTE (privateClosedMessage.message): This message appears
+# when the user closes a private tab.
+privateClosedMessage.message=Closed Private Browsing
+
+# LOCALIZATION NOTE (undoCloseToast.messageDefault): This message appears in a
+# toast when the user closes a tab if there is no title to display.
+undoCloseToast.messageDefault=Closed tab
+
+# LOCALIZATION NOTE (undoCloseToast.action2): Ideally, this string is short (it's a
+# button label) and upper-case, to match Google and Android's convention.
+undoCloseToast.action2=UNDO
+
+# Offline web applications
+offlineApps.ask=Allow %S to store data on your device for offline use?
+offlineApps.dontAskAgain=Don’t ask again for this site
+offlineApps.allow=Allow
+offlineApps.dontAllow2=Don’t allow
+
+# LOCALIZATION NOTE (offlineApps.offlineData): Label that will be used in
+# site settings dialog.
+offlineApps.offlineData=Offline Data
+
+# LOCALIZATION NOTE (password.logins): Label that will be used in
+ # site settings dialog.
+password.logins=Logins
+# LOCALIZATION NOTE (password.save): This should match
+# saveButton in passwordmgr.properties
+password.save=Save
+# LOCALIZATION NOTE (password.dontSave): This should match
+# dontSaveButton in passwordmgr.properties
+password.dontSave=Don’t save
+
+# LOCALIZATION NOTE (browser.menu.showCharacterEncoding): Set to the string
+# "true" (spelled and capitalized exactly that way) to show the "Character
+# Encoding" menu in the site menu. Any other value will hide it. Without this
+# setting, the "Character Encoding" menu must be enabled via Preferences.
+# This is not a string to translate. If users frequently use the "Character Encoding"
+# menu, set this to "true". Otherwise, you can leave it as "false".
+browser.menu.showCharacterEncoding=false
+
+# Text Selection
+selectionHelper.textCopied=Text copied to clipboard
+
+# Casting
+# LOCALIZATION NOTE (casting.sendToDevice): Label that will be used in the
+# dialog/prompt.
+casting.sendToDevice=Send to Device
+
+# Context menu
+contextmenu.openInNewTab=Open Link in New Tab
+contextmenu.openInPrivateTab=Open Link in Private Tab
+contextmenu.share=Share
+contextmenu.copyLink=Copy Link
+contextmenu.shareLink=Share Link
+contextmenu.bookmarkLink=Bookmark Link
+contextmenu.copyEmailAddress=Copy Email Address
+contextmenu.shareEmailAddress=Share Email Address
+contextmenu.copyPhoneNumber=Copy Phone Number
+contextmenu.sharePhoneNumber=Share Phone Number
+contextmenu.fullScreen=Full Screen
+contextmenu.viewImage=View Image
+contextmenu.copyImageLocation=Copy Image Location
+contextmenu.shareImage=Share Image
+# LOCALIZATION NOTE (contextmenu.search):
+# The label of the contextmenu item which allows you to search with your default search engine for
+# the text you have selected. %S is the name of the search engine. For example, "Google".
+contextmenu.search=%S Search
+contextmenu.saveImage=Save Image
+contextmenu.showImage=Show Image
+contextmenu.setImageAs=Set Image As
+# LOCALIZATION NOTE (contextmenu.addSearchEngine3): This string should be rather short. If it is
+# significantly longer than the translation for the "Paste" action then this might trigger an
+# Android bug positioning the floating text selection partially off the screen. This issue heavily
+# depends on the screen size and the specific translations. For English "Paste" / "Add search engine"
+# is working while "Paste" / "Add as search engine" triggers the bug. See bug 1262098 for more details.
+# Manual testing the scenario described in bug 1262098 is highly recommended.
+contextmenu.addSearchEngine3=Add Search Engine
+contextmenu.playMedia=Play
+contextmenu.pauseMedia=Pause
+contextmenu.showControls2=Show Controls
+contextmenu.mute=Mute
+contextmenu.unmute=Unmute
+contextmenu.saveVideo=Save Video
+contextmenu.saveAudio=Save Audio
+contextmenu.addToContacts=Add to Contacts
+# LOCALIZATION NOTE (contextmenu.sendToDevice):
+# The label that will be used in the contextmenu and the pageaction
+contextmenu.sendToDevice=Send to Device
+
+contextmenu.copy=Copy
+contextmenu.cut=Cut
+contextmenu.selectAll=Select All
+contextmenu.paste=Paste
+
+contextmenu.call=Call
+
+#Input widgets UI
+inputWidgetHelper.date=Pick a date
+inputWidgetHelper.datetime-local=Pick a date and a time
+inputWidgetHelper.time=Pick a time
+inputWidgetHelper.week=Pick a week
+inputWidgetHelper.month=Pick a month
+inputWidgetHelper.cancel=Cancel
+inputWidgetHelper.set=Set
+inputWidgetHelper.clear=Clear
+
+# Web Console API
+stacktrace.anonymousFunction=<anonymous>
+stacktrace.outputMessage=Stack trace from %S, function %S, line %S.
+timer.start=%S: timer started
+
+# LOCALIZATION NOTE (timer.end):
+# This string is used to display the result of the console.timeEnd() call.
+# %1$S=name of timer, %2$S=number of milliseconds
+timer.end=%1$S: %2$Sms
+
+clickToPlayPlugins.activate=Activate
+clickToPlayPlugins.dontActivate=Don’t activate
+# LOCALIZATION NOTE (clickToPlayPlugins.plugins): Label that
+# will be used in site settings dialog.
+clickToPlayPlugins.plugins=Plugins
+
+# Site settings dialog
+
+masterPassword.incorrect=Incorrect password
+
+# Debugger
+# LOCALIZATION NOTE (remoteIncomingPromptTitle): The title displayed on the
+# dialog that prompts the user to allow the incoming connection.
+remoteIncomingPromptTitle=Incoming Connection
+# LOCALIZATION NOTE (remoteIncomingPromptUSB): The message displayed on the
+# dialog that prompts the user to allow an incoming USB connection.
+remoteIncomingPromptUSB=Allow USB debugging connection?
+# LOCALIZATION NOTE (remoteIncomingPromptUSB): The message displayed on the
+# dialog that prompts the user to allow an incoming TCP connection.
+remoteIncomingPromptTCP=Allow remote debugging connection from %1$S:%2$S? This connection requires a QR code to be scanned in order to authenticate the remote device’s certificate. You can avoid future scans by remembering the device.
+# LOCALIZATION NOTE (remoteIncomingPromptDeny): This button will deny an
+# an incoming remote debugger connection.
+remoteIncomingPromptDeny=Deny
+# LOCALIZATION NOTE (remoteIncomingPromptAllow): This button will allow an
+# an incoming remote debugger connection.
+remoteIncomingPromptAllow=Allow
+# LOCALIZATION NOTE (remoteIncomingPromptScan): This button will start a QR
+# code scanner to authenticate an incoming remote debugger connection. The
+# connection will be allowed assuming the scan succeeds.
+remoteIncomingPromptScan=Scan
+# LOCALIZATION NOTE (remoteIncomingPromptScanAndRemember): This button will
+# start a QR code scanner to authenticate an incoming remote debugger
+# connection. The connection will be allowed assuming the scan succeeds, and
+# the other endpoint's certificate will be saved to skip future scans for this
+# client.
+remoteIncomingPromptScanAndRemember=Scan and Remember
+# LOCALIZATION NOTE (remoteQRScanFailedPromptTitle): The title displayed in a
+# dialog when we are unable to complete the QR code scan for an incoming remote
+# debugging connection.
+remoteQRScanFailedPromptTitle=QR Scan Failed
+# LOCALIZATION NOTE (remoteQRScanFailedPromptMessage): The message displayed in
+# a dialog when we are unable to complete the QR code scan for an incoming
+# remote debugging connection.
+remoteQRScanFailedPromptMessage=Unable to scan QR code for remote debugging. Verify that the Barcode Scanner app is installed and retry connecting.
+# LOCALIZATION NOTE (remoteQRScanFailedPromptOK): This button dismisses the
+# dialog that appears when we are unable to complete the QR code scan for an
+# incoming remote debugging connection.
+remoteQRScanFailedPromptOK=OK
+
+# Helper apps
+helperapps.open=Open
+helperapps.openWithApp2=Open With %S App
+helperapps.openWithList2=Open With an App
+helperapps.always=Always
+helperapps.never=Never
+helperapps.pick=Complete action using
+helperapps.saveToDisk=Download
+helperapps.alwaysUse=Always
+helperapps.useJustOnce=Just once
+
+# LOCALIZATION NOTE (getUserMedia.shareCamera.message, getUserMedia.shareMicrophone.message, getUserMedia.shareCameraAndMicrophone.message, getUserMedia.sharingCamera.message, getUserMedia.sharingMicrophone.message, getUserMedia.sharingCameraAndMicrophone.message): %S is the website origin (e.g. www.mozilla.org)
+getUserMedia.shareCamera.message = Would you like to share your camera with %S?
+getUserMedia.shareMicrophone.message = Would you like to share your microphone with %S?
+getUserMedia.shareCameraAndMicrophone.message = Would you like to share your camera and microphone with %S?
+getUserMedia.denyRequest.label = Don’t Share
+getUserMedia.shareRequest.label = Share
+getUserMedia.videoSource.default = Camera %S
+getUserMedia.videoSource.frontCamera = Front facing camera
+getUserMedia.videoSource.backCamera = Back facing camera
+getUserMedia.videoSource.none = No Video
+getUserMedia.videoSource.tabShare = Choose a tab to stream
+getUserMedia.videoSource.prompt = Video source
+getUserMedia.audioDevice.default = Microphone %S
+getUserMedia.audioDevice.none = No Audio
+getUserMedia.audioDevice.prompt = Microphone to use
+getUserMedia.sharingCamera.message2 = Camera is on
+getUserMedia.sharingMicrophone.message2 = Microphone is on
+getUserMedia.sharingCameraAndMicrophone.message2 = Camera and microphone are on
+getUserMedia.blockedCameraAccess = Camera has been blocked.
+getUserMedia.blockedMicrophoneAccess = Microphone has been blocked.
+getUserMedia.blockedCameraAndMicrophoneAccess = Camera and microphone have been blocked.
+
+# LOCALIZATION NOTE (userContextPersonal.label,
+# userContextWork.label,
+# userContextShopping.label,
+# userContextBanking.label,
+# userContextNone.label):
+# These strings specify the four predefined contexts included in support of the
+# Contextual Identity / Containers project. Each context is meant to represent
+# the context that the user is in when interacting with the site. Different
+# contexts will store cookies and other information from those sites in
+# different, isolated locations. You can enable the feature by typing
+# about:config in the URL bar and changing privacy.userContext.enabled to true.
+# Once enabled, you can open a new tab in a specific context by clicking
+# File > New Container Tab > (1 of 4 contexts). Once opened, you will see these
+# strings on the right-hand side of the URL bar.
+# In android this will be only exposed by web extensions
+userContextPersonal.label = Personal
+userContextWork.label = Work
+userContextBanking.label = Banking
+userContextShopping.label = Shopping
+
+# LOCALIZATION NOTE (readerMode.toolbarTip):
+# Tip shown to users the first time we hide the reader mode toolbar.
+readerMode.toolbarTip=Tap the screen to show reader options
+
+#Open in App
+openInApp.pageAction = Open in App
+openInApp.ok = OK
+openInApp.cancel = Cancel
+
+#Tab sharing
+tabshare.title = “Choose a tab to stream”
+#Tabs in context menus
+browser.menu.context.default = Link
+browser.menu.context.img = Image
+browser.menu.context.video = Video
+browser.menu.context.audio = Audio
+browser.menu.context.tel = Phone
+browser.menu.context.mailto = Mail
+
+# "Subscribe to page" prompts created in FeedHandler.js
+feedHandler.chooseFeed=Choose feed
+feedHandler.subscribeWith=Subscribe with
+
+# LOCALIZATION NOTE (nativeWindow.deprecated):
+# This string is shown in the console when someone uses deprecated NativeWindow apis.
+# %1$S=name of the api that's deprecated, %2$S=New API to use. This may be a url to
+# a file they should import or the name of an api.
+nativeWindow.deprecated=%S is deprecated. Please use %S instead
+
+# Vibration API permission prompt
+vibrationRequest.message = Allow this site to vibrate your device?
+vibrationRequest.denyButton = Don’t allow
+vibrationRequest.allowButton = Allow
diff --git a/l10n-en-CA/mobile/android/chrome/config.dtd b/l10n-en-CA/mobile/android/chrome/config.dtd
new file mode 100644
index 0000000000..95502af40e
--- /dev/null
+++ b/l10n-en-CA/mobile/android/chrome/config.dtd
@@ -0,0 +1,21 @@
+<!-- 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/. -->
+
+
+<!ENTITY toolbar.searchPlaceholder "Search">
+
+<!ENTITY newPref.namePlaceholder "Name">
+
+<!ENTITY newPref.valueBoolean "Boolean">
+<!ENTITY newPref.valueString "String">
+<!ENTITY newPref.valueInteger "Integer">
+
+<!ENTITY newPref.stringPlaceholder "Enter a string">
+<!ENTITY newPref.numberPlaceholder "Enter a number">
+
+<!ENTITY newPref.toggleButton "Toggle">
+<!ENTITY newPref.cancelButton "Cancel">
+
+<!ENTITY contextMenu.copyPrefName "Copy Name">
+<!ENTITY contextMenu.copyPrefValue "Copy Value">
diff --git a/l10n-en-CA/mobile/android/chrome/config.properties b/l10n-en-CA/mobile/android/chrome/config.properties
new file mode 100644
index 0000000000..61fdf73b32
--- /dev/null
+++ b/l10n-en-CA/mobile/android/chrome/config.properties
@@ -0,0 +1,9 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+newPref.createButton=Create
+newPref.changeButton=Change
+
+pref.toggleButton=Toggle
+pref.resetButton=Reset
diff --git a/l10n-en-CA/mobile/android/chrome/devicePrompt.properties b/l10n-en-CA/mobile/android/chrome/devicePrompt.properties
new file mode 100644
index 0000000000..493abd6c1b
--- /dev/null
+++ b/l10n-en-CA/mobile/android/chrome/devicePrompt.properties
@@ -0,0 +1,5 @@
+# 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/.
+
+deviceMenu.title=Nearby Devices
diff --git a/l10n-en-CA/mobile/android/chrome/passwordmgr.properties b/l10n-en-CA/mobile/android/chrome/passwordmgr.properties
new file mode 100644
index 0000000000..ae4a290ddf
--- /dev/null
+++ b/l10n-en-CA/mobile/android/chrome/passwordmgr.properties
@@ -0,0 +1,22 @@
+# 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/.
+
+# String will be replaced by brandShortName.
+saveLogin=Would you like %S to remember this login?
+rememberButton=Remember
+neverButton=Never
+
+# String is the login's hostname
+updatePassword=Update saved password for %S?
+updatePasswordNoUser=Update saved password for this login?
+updateButton=Update
+dontUpdateButton=Don’t update
+
+# Copy of the toolkit's passwordmgr.properties
+userSelectText2=Select which login to update:
+passwordChangeTitle=Confirm Password Change
+
+# Strings used by PromptService.js
+username=Username
+password=Password
diff --git a/l10n-en-CA/mobile/android/chrome/phishing.dtd b/l10n-en-CA/mobile/android/chrome/phishing.dtd
new file mode 100644
index 0000000000..b0e5b8afcd
--- /dev/null
+++ b/l10n-en-CA/mobile/android/chrome/phishing.dtd
@@ -0,0 +1,27 @@
+<!-- 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/. -->
+
+<!ENTITY safeb.palm.accept.label "Get me out of here!">
+<!ENTITY safeb.palm.decline.label "Ignore this warning">
+<!ENTITY safeb.palm.reportPage.label "Why was this page blocked?">
+<!-- Localization note (safeb.palm.advisory.desc) - Please don't translate <a id="advisory_provider"/> tag. It will be replaced at runtime with advisory link-->
+<!ENTITY safeb.palm.advisory.desc "Advisory provided by <a id='advisory_provider'/>">
+
+<!ENTITY safeb.blocked.malwarePage.title "Reported Attack Page!">
+<!-- Localization note (safeb.blocked.malware.shortDesc) - Please don't translate the contents of the <span id="malware_sitename"/> tag. It will be replaced at runtime with a domain name (e.g. www.badsite.com) -->
+<!ENTITY safeb.blocked.malwarePage.shortDesc "This web page at <span id='malware_sitename'/> has been reported as an attack page and has been blocked based on your security preferences.">
+<!ENTITY safeb.blocked.malwarePage.longDesc "<p>Attack pages try to install programs that steal private information, use your computer to attack others, or damage your system.</p><p>Some attack pages intentionally distribute harmful software, but many are compromised without the knowledge or permission of their owners.</p>">
+
+<!ENTITY safeb.blocked.phishingPage.title3 "Deceptive Site!">
+<!-- Localization note (safeb.blocked.phishingPage.shortDesc3) - Please don't translate the contents of the <span id="phishing_sitename"/> tag. It will be replaced at runtime with a domain name (e.g. www.badsite.com) -->
+<!ENTITY safeb.blocked.phishingPage.shortDesc3 "This web page at <span id='phishing_sitename'/> has been reported as a deceptive site and has been blocked based on your security preferences.">
+<!ENTITY safeb.blocked.phishingPage.longDesc3 "<p>Deceptive sites are designed to trick you into doing something dangerous, like installing software, or revealing your personal information, like passwords, phone numbers or credit cards.</p><p>Entering any information on this web page may result in identity theft or other fraud.</p>">
+
+<!ENTITY safeb.blocked.unwantedPage.title "Reported Unwanted Software Site!">
+<!-- Localization note (safeb.blocked.unwanted.shortDesc) - Please don't translate the contents of the <span id="unwanted_sitename"/> tag. It will be replaced at runtime with a domain name (e.g. www.badsite.com) -->
+<!ENTITY safeb.blocked.unwantedPage.shortDesc "This web page at <span id='unwanted_sitename'/> has been reported to contain unwanted software and has been blocked based on your security preferences.">
+<!ENTITY safeb.blocked.unwantedPage.longDesc "Unwanted software pages try to install software that can be deceptive and affect your system in unexpected ways.">
+
+<!ENTITY safeb.blocked.harmfulPage.title "The site ahead may contain malware">
+<!ENTITY safeb.blocked.harmfulPage.shortDesc "&brandShortName; blocked this page because it might try to install dangerous apps that steal or delete your information (for example, photos, passwords, messages and credit cards).">
diff --git a/l10n-en-CA/mobile/android/chrome/pippki.properties b/l10n-en-CA/mobile/android/chrome/pippki.properties
new file mode 100644
index 0000000000..fb6a5e5cfc
--- /dev/null
+++ b/l10n-en-CA/mobile/android/chrome/pippki.properties
@@ -0,0 +1,84 @@
+# 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/.
+
+nssdialogs.ok.label=OK
+nssdialogs.cancel.label=Cancel
+
+# These strings are stolen from security/manager/locales/en-US/chrome/pippki/pippki.dtd
+downloadCert.title=Downloading Certificate
+downloadCert.message1=You have been asked to trust a new Certificate Authority (CA).
+downloadCert.viewCert.label=View
+downloadCert.trustSSL=Trust to identify websites.
+downloadCert.trustEmail=Trust to identify email users.
+pkcs12.getpassword.title=Password Entry Dialogue
+pkcs12.getpassword.message=Please enter the password that was used to encrypt this certificate backup.
+clientAuthAsk.title=User Identification Request
+clientAuthAsk.message1=This site has requested that you identify yourself with a certificate:
+clientAuthAsk.message2=Choose a certificate to present as identification:
+clientAuthAsk.message3=Details of selected certificate:
+clientAuthAsk.remember.label=Remember this decision
+# LOCALIZATION NOTE(clientAuthAsk.nickAndSerial): Represents a single cert when
+# the user is choosing from a list of certificates.
+# %1$S is the nickname of the cert.
+# %2$S is the serial number of the cert in AA:BB:CC hex format.
+clientAuthAsk.nickAndSerial=%1$S [%2$S]
+# LOCALIZATION NOTE(clientAuthAsk.hostnameAndPort):
+# %1$S is the hostname of the server.
+# %2$S is the port of the server.
+clientAuthAsk.hostnameAndPort=%1$S:%2$S
+# LOCALIZATION NOTE(clientAuthAsk.organization): %S is the Organization of the
+# server cert.
+clientAuthAsk.organization=Organization: “%S”
+# LOCALIZATION NOTE(clientAuthAsk.issuer): %S is the Organization of the
+# issuer cert of the server cert.
+clientAuthAsk.issuer=Issued Under: “%S”
+# LOCALIZATION NOTE(clientAuthAsk.issuedTo): %1$S is the Distinguished Name of
+# the currently selected client cert, such as "CN=John Doe,OU=Example" (without
+# quotes).
+clientAuthAsk.issuedTo=Issued to: %1$S
+# LOCALIZATION NOTE(clientAuthAsk.serial): %1$S is the serial number of the
+# selected cert in AA:BB:CC hex format.
+clientAuthAsk.serial=Serial number: %1$S
+# LOCALIZATION NOTE(clientAuthAsk.validityPeriod):
+# %1$S is the already localized notBefore date of the selected cert.
+# %2$S is the already localized notAfter date of the selected cert.
+clientAuthAsk.validityPeriod=Valid from %1$S to %2$S
+# LOCALIZATION NOTE(clientAuthAsk.keyUsages): %1$S is a comma separated list of
+# already localized key usages the selected cert is valid for.
+clientAuthAsk.keyUsages=Key Usages: %1$S
+# LOCALIZATION NOTE(clientAuthAsk.emailAddresses): %1$S is a comma separated
+# list of e-mail addresses the selected cert is valid for.
+clientAuthAsk.emailAddresses=Email addresses: %1$S
+# LOCALIZATION NOTE(clientAuthAsk.issuedBy): %1$S is the Distinguished Name of
+# the cert which issued the selected cert.
+clientAuthAsk.issuedBy=Issued by: %1$S
+# LOCALIZATION NOTE(clientAuthAsk.storedOn): %1$S is the name of the PKCS #11
+# token the selected cert is stored on.
+clientAuthAsk.storedOn=Stored on: %1$S
+clientAuthAsk.viewCert.label=View
+
+certmgr.title=Certificate Details
+# These strings are stolen from security/manager/locales/en-US/chrome/pippki/certManager.dtd
+certmgr.subjectinfo.label=Issued To
+certmgr.issuerinfo.label=Issued By
+certmgr.periodofvalidity.label=Period of Validity
+certmgr.fingerprints.label=Fingerprints
+certdetail.cn=Common Name (CN): %1$S
+certdetail.o=Organization (O): %1$S
+certdetail.ou=Organizational Unit (OU): %1$S
+# LOCALIZATION NOTE(certdetail.serialnumber): %1$S is the serial number of the
+# cert being viewed in AA:BB:CC hex format.
+certdetail.serialnumber=Serial Number: %1$S
+# LOCALIZATION NOTE(certdetail.sha256fingerprint): %1$S is the SHA-256
+# Fingerprint of the cert being viewed in AA:BB:CC hex format.
+certdetail.sha256fingerprint=SHA-256 Fingerprint: %1$S
+# LOCALIZATION NOTE(certdetail.sha1fingerprint): %1$S is the SHA-1 Fingerprint
+# of the cert being viewed in AA:BB:CC hex format.
+certdetail.sha1fingerprint=SHA1 Fingerprint: %1$S
+# LOCALIZATION NOTE(certdetail.notBefore): %1$S is the already localized
+# notBefore date of the cert being viewed.
+certdetail.notBefore=Begins On: %1$S
+# LOCALIZATION NOTE(certdetail.notAfter): %1$S is the already localized notAfter
+# date of the cert being viewed.
+certdetail.notAfter=Expires On: %1$S
diff --git a/l10n-en-CA/mobile/android/chrome/sync.properties b/l10n-en-CA/mobile/android/chrome/sync.properties
new file mode 100644
index 0000000000..c1d1ed929b
--- /dev/null
+++ b/l10n-en-CA/mobile/android/chrome/sync.properties
@@ -0,0 +1,12 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+# Mobile Sync
+
+# %S is the date and time at which the last sync successfully completed
+lastSync2.label=Last sync: %S
+
+# %S is the username logged in
+account.label=Account: %S
+
diff --git a/l10n-en-CA/mobile/android/chrome/webcompatReporter.properties b/l10n-en-CA/mobile/android/chrome/webcompatReporter.properties
new file mode 100644
index 0000000000..cce28981dd
--- /dev/null
+++ b/l10n-en-CA/mobile/android/chrome/webcompatReporter.properties
@@ -0,0 +1,12 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+# LOCALIZATION NOTE (webcompat.menu.name): A "site issue" is a bug, display,
+# or functionality problem with a webpage in the browser.
+webcompat.menu.name=Report Site Issue
+
+# LOCALIZATION NOTE (webcompat.reportDesktopMode.message): A " site issue" is a
+# bug, display, or functionality problem with a webpage in the browser.
+webcompat.reportDesktopMode.message=Report site issue?
+webcompat.reportDesktopModeYes.label=Report
diff --git a/l10n-en-CA/mobile/android/defines.inc b/l10n-en-CA/mobile/android/defines.inc
new file mode 100644
index 0000000000..e6c07e5c4e
--- /dev/null
+++ b/l10n-en-CA/mobile/android/defines.inc
@@ -0,0 +1,12 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+#filter emptyLines
+
+#define MOZ_LANGPACK_CREATOR mozilla.org
+
+# If non-English locales wish to credit multiple contributors, uncomment this
+# variable definition and use the format specified.
+#define MOZ_LANGPACK_CONTRIBUTORS <em:contributor>Joe Solon</em:contributor> <em:contributor>Suzy Solon</em:contributor>
+
+#unfilter emptyLines