summaryrefslogtreecommitdiffstats
path: root/l10n-ms/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-ms/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-ms/mobile/android')
-rw-r--r--l10n-ms/mobile/android/chrome/about.dtd21
-rw-r--r--l10n-ms/mobile/android/chrome/aboutAccounts.dtd13
-rw-r--r--l10n-ms/mobile/android/chrome/aboutAccounts.properties16
-rw-r--r--l10n-ms/mobile/android/chrome/aboutAddons.dtd15
-rw-r--r--l10n-ms/mobile/android/chrome/aboutAddons.properties9
-rw-r--r--l10n-ms/mobile/android/chrome/aboutCertError.dtd38
-rw-r--r--l10n-ms/mobile/android/chrome/aboutDownloads.dtd15
-rw-r--r--l10n-ms/mobile/android/chrome/aboutDownloads.properties17
-rw-r--r--l10n-ms/mobile/android/chrome/aboutHome.dtd7
-rw-r--r--l10n-ms/mobile/android/chrome/aboutLogins.dtd10
-rw-r--r--l10n-ms/mobile/android/chrome/aboutLogins.properties27
-rw-r--r--l10n-ms/mobile/android/chrome/aboutPrivateBrowsing.dtd25
-rw-r--r--l10n-ms/mobile/android/chrome/browser.properties476
-rw-r--r--l10n-ms/mobile/android/chrome/config.dtd21
-rw-r--r--l10n-ms/mobile/android/chrome/config.properties9
-rw-r--r--l10n-ms/mobile/android/chrome/devicePrompt.properties5
-rw-r--r--l10n-ms/mobile/android/chrome/passwordmgr.properties22
-rw-r--r--l10n-ms/mobile/android/chrome/phishing.dtd27
-rw-r--r--l10n-ms/mobile/android/chrome/pippki.properties84
-rw-r--r--l10n-ms/mobile/android/chrome/sync.properties12
-rw-r--r--l10n-ms/mobile/android/chrome/webcompatReporter.properties12
-rw-r--r--l10n-ms/mobile/android/defines.inc14
22 files changed, 895 insertions, 0 deletions
diff --git a/l10n-ms/mobile/android/chrome/about.dtd b/l10n-ms/mobile/android/chrome/about.dtd
new file mode 100644
index 0000000000..21948224bd
--- /dev/null
+++ b/l10n-ms/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 "Perihal &brandShortName;">
+<!ENTITY aboutPage.warningVersion "&brandShortName; masih dalam percubaan dan mungkin tidak stabil.">
+<!ENTITY aboutPage.checkForUpdates.link "Semak Kemaskini »">
+<!ENTITY aboutPage.checkForUpdates.checking "Mencari kemaskini…">
+<!ENTITY aboutPage.checkForUpdates.none "Tiada kemaskini tersedia">
+<!ENTITY aboutPage.checkForUpdates.available2 "Muat turun kemaskini">
+<!ENTITY aboutPage.checkForUpdates.downloading "Memuat turun kemaskini…">
+<!ENTITY aboutPage.checkForUpdates.downloaded2 "Pasang kemaskini">
+<!ENTITY aboutPage.faq.label "FAQ">
+<!ENTITY aboutPage.support.label "Sokongan">
+<!ENTITY aboutPage.privacyPolicy.label "Polisi Privasi">
+<!ENTITY aboutPage.rights.label "Ketahui Hak Anda">
+<!ENTITY aboutPage.relNotes.label "Nota Keluaran">
+<!ENTITY aboutPage.credits.label "Kredit">
+<!ENTITY aboutPage.license.label "Maklumat Perlesenan">
+
+<!-- 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 dan logo Firefox adalah cap dagangan Mozilla Foundation.">
diff --git a/l10n-ms/mobile/android/chrome/aboutAccounts.dtd b/l10n-ms/mobile/android/chrome/aboutAccounts.dtd
new file mode 100644
index 0000000000..7fdbb71afa
--- /dev/null
+++ b/l10n-ms/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 "Akaun Firefox">
+<!ENTITY aboutAccounts.connected.description "Anda dihubungkan sebagai">
+<!ENTITY aboutAccounts.syncPreferences.label "Tap di sini untuk menyemak tetapan Sync">
+
+<!ENTITY aboutAccounts.noConnection.title "Tiada sambungan internet">
+<!ENTITY aboutAccounts.retry.label "Cuba lagi">
+
+<!ENTITY aboutAccounts.restrictedError.title "Terhad">
+<!ENTITY aboutAccounts.restrictedError.description "Anda tidak boleh urus Akaun Firefox dari profil ini.">
diff --git a/l10n-ms/mobile/android/chrome/aboutAccounts.properties b/l10n-ms/mobile/android/chrome/aboutAccounts.properties
new file mode 100644
index 0000000000..0ddd135933
--- /dev/null
+++ b/l10n-ms/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 = Anda sudah daftar masuk 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 = Adakah anda pasti mahu daftar masuk Sync?
+# LOCALIZATION NOTE (relinkVerify.message): Email address of a user previously signed in to Sync.
+relinkVerify.message = Anda pernah mendaftar masuk Sync menggunakan alamat e-mel lain sebelum ini. Mendaftar masuk akan mencantumkan tandabuku, kata laluan dan tetapan lain pelayar ini dengan %S
+relinkVerify.continue = Teruskan
+relinkVerify.cancel = Batal
diff --git a/l10n-ms/mobile/android/chrome/aboutAddons.dtd b/l10n-ms/mobile/android/chrome/aboutAddons.dtd
new file mode 100644
index 0000000000..39103b02b8
--- /dev/null
+++ b/l10n-ms/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 "Add-ons Anda">
+
+<!ENTITY addonAction.enable "Dayakan">
+<!ENTITY addonAction.disable "Nyahdayakan">
+<!ENTITY addonAction.uninstall "Nyahpasang">
+<!ENTITY addonAction.undo "Batal">
+<!ENTITY addonAction.update "Kemaskini">
+
+<!ENTITY addonUnsigned.message "Add-on ini tidak dapat disahkan oleh &brandShortName;.">
+<!ENTITY addonUnsigned.learnMore "Ketahui selanjutnya">
diff --git a/l10n-ms/mobile/android/chrome/aboutAddons.properties b/l10n-ms/mobile/android/chrome/aboutAddons.properties
new file mode 100644
index 0000000000..83b08cc547
--- /dev/null
+++ b/l10n-ms/mobile/android/chrome/aboutAddons.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/.
+
+addonStatus.uninstalled=%S akan dinyahpasang selepas anda mula semula.
+
+addons.browseAll=Layari semua Add-ons Firefox
+
+addon.options=Pilihan
diff --git a/l10n-ms/mobile/android/chrome/aboutCertError.dtd b/l10n-ms/mobile/android/chrome/aboutCertError.dtd
new file mode 100644
index 0000000000..995fc08bcd
--- /dev/null
+++ b/l10n-ms/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 "Sambungan Tidak Dipercayai">
+<!ENTITY certerror.longpagetitle "Sambungan ini Tidak Dipercayai">
+
+<!-- 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 "Anda minta &brandShortName; untuk membuat sambungan
+selamat ke <b>#1</b>, tapi kami tidak dapat mengesahkan bahawa sambungan ini selamat.">
+
+<!ENTITY certerror.whatShouldIDo.heading "Apa Perlu Saya Buat?">
+<!ENTITY certerror.whatShouldIDo.content "Jika kebiasaanya anda disambung ke
+laman ini tanpa masalah, ralat ini bermakna ada seseorang
+cuba menyamar sebagai laman ini, dan anda tidak perlu teruskan.">
+<!ENTITY certerror.getMeOutOfHere.label "Keluarkan saya dari sini!">
+
+<!ENTITY certerror.expert.heading "Saya Faham akan Risiko ini">
+<!ENTITY certerror.expert.content "Jika anda faham apanya yang sedang berlaku, anda
+boleh memaklumkan &brandShortName; untuk mula percayakan identiti laman ini.
+<b>Malah jika anda percayakan laman ini, ralat ini bermakna ada seseorang
+mengganggu sambungan anda ini.</b>">
+<!ENTITY certerror.expert.contentPara2 "Jangan tambah pengecualian kecuali
+anda tahu ada alasan yang bagus laman ini tidak menggunakan pengenalan yang dipercayai.">
+<!ENTITY certerror.addTemporaryException.label "Lawat laman">
+<!ENTITY certerror.addPermanentException.label "Tambah pengecualian kekal">
+
+<!ENTITY certerror.technical.heading "Butiran Teknikal">
diff --git a/l10n-ms/mobile/android/chrome/aboutDownloads.dtd b/l10n-ms/mobile/android/chrome/aboutDownloads.dtd
new file mode 100644
index 0000000000..eceee34712
--- /dev/null
+++ b/l10n-ms/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 "Muat turun">
+<!ENTITY aboutDownloads.header "Muat Turun Anda">
+<!ENTITY aboutDownloads.empty "Tiada Muat turun">
+
+<!ENTITY aboutDownloads.open "Buka">
+<!ENTITY aboutDownloads.remove "Buang">
+<!ENTITY aboutDownloads.removeAll "Buang Semua">
+<!ENTITY aboutDownloads.pause "Jeda">
+<!ENTITY aboutDownloads.resume "Sambung">
+<!ENTITY aboutDownloads.cancel "Batal">
+<!ENTITY aboutDownloads.retry "Cuba lagi">
diff --git a/l10n-ms/mobile/android/chrome/aboutDownloads.properties b/l10n-ms/mobile/android/chrome/aboutDownloads.properties
new file mode 100644
index 0000000000..cab1418f9b
--- /dev/null
+++ b/l10n-ms/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=Buang #1 muat turun?
+
+downloadAction.deleteAll=Buang Semua
+
+downloadState.downloading=Memuat turun…
+downloadState.canceled=Dibatalkan
+downloadState.failed=Gagal
+downloadState.paused=Dijeda
+downloadState.starting=Memulakan…
+downloadState.unknownSize=Saiz tidak diketahui
diff --git a/l10n-ms/mobile/android/chrome/aboutHome.dtd b/l10n-ms/mobile/android/chrome/aboutHome.dtd
new file mode 100644
index 0000000000..b1f03cac4d
--- /dev/null
+++ b/l10n-ms/mobile/android/chrome/aboutHome.dtd
@@ -0,0 +1,7 @@
+<!-- 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/. -->
+
+<!-- This string should be kept in sync with the home_title string
+ in android_strings.dtd -->
+<!ENTITY abouthome.title "Rerumah &brandShortName;">
diff --git a/l10n-ms/mobile/android/chrome/aboutLogins.dtd b/l10n-ms/mobile/android/chrome/aboutLogins.dtd
new file mode 100644
index 0000000000..ff2b4db32b
--- /dev/null
+++ b/l10n-ms/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 "Log masuk">
+<!ENTITY aboutLogins.update "Kemaskini">
+<!ENTITY aboutLogins.emptyLoginText "Pastikan log masuk anda selamat">
+<!ENTITY aboutLogins.emptyLoginHint "Log masuk dan kelayakan yang anda simpan menggunakan &brandShortName; akan dipaparkan di sini.">
diff --git a/l10n-ms/mobile/android/chrome/aboutLogins.properties b/l10n-ms/mobile/android/chrome/aboutLogins.properties
new file mode 100644
index 0000000000..34661ca6b0
--- /dev/null
+++ b/l10n-ms/mobile/android/chrome/aboutLogins.properties
@@ -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/.
+
+loginsMenu.showPassword=Papar kata laluan
+loginsMenu.copyPassword=Salin kata laluan
+loginsMenu.copyUsername=Salin nama pengguna
+loginsMenu.editLogin=Edit log masuk
+loginsMenu.delete=Buang
+
+loginsDialog.confirmDelete=Buang log masuk ini?
+loginsDialog.copy=Salin
+loginsDialog.confirm=OK
+loginsDialog.cancel=Batal
+
+editLogin.fallbackTitle=Edit Log Masuk
+editLogin.saved1=Log masuk tersimpan
+editLogin.couldNotSave=Perubahan tidak dapat disimpan
+
+loginsDetails.copyFailed=Gagal disalin
+loginsDetails.passwordCopied=Kata laluan disalin
+loginsDetails.usernameCopied=Nama pengguna disalin
+
+loginsDetails.deleted=Log masuk dibuang
+
+password-btn.show=Papar
+password-btn.hide=Sorok
diff --git a/l10n-ms/mobile/android/chrome/aboutPrivateBrowsing.dtd b/l10n-ms/mobile/android/chrome/aboutPrivateBrowsing.dtd
new file mode 100644
index 0000000000..1f0e1d3622
--- /dev/null
+++ b/l10n-ms/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 "Pelayaran Peribadi">
+
+<!-- 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 "+ Perlindungan Penjejakan">
+<!-- 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 "Anda tidak berada dalam Pelayaran Peribadi">
+
+<!ENTITY privatebrowsingpage.description.trackingProtection "&brandShortName; menyekat sebahagian halaman yang mungkin menjejaki aktiviti pelayaran anda.">
+<!ENTITY privatebrowsingpage.description.privateDetails "Kami tidak akan menyimpan sejarah, tetapi fail yang dimuat turun dan tandabuku baru akan masih disimpan pada peranti anda.">
+
+<!-- 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 "Dalam Pelayaran Peribadi, kami tidak akan menyimpan sejarah atau kuki pelayaran anda. Tandabuku yang anda tambah atau fail yang dimuat turun masih disimpan pada peranti anda.">
+
+<!ENTITY privatebrowsingpage.link.private "Mahu ketahui selanjutnya?">
+<!ENTITY privatebrowsingpage.link.normal "Buka tab peribadi baru">
diff --git a/l10n-ms/mobile/android/chrome/browser.properties b/l10n-ms/mobile/android/chrome/browser.properties
new file mode 100644
index 0000000000..e1c2ee010f
--- /dev/null
+++ b/l10n-ms/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=Memasang Add-on
+addonsConfirmInstall.install=Pasang
+
+addonsConfirmInstallUnsigned.title=Add-on tidak disahkan
+addonsConfirmInstallUnsigned.message=Laman ini mahu memasang add-on yang tidak disahkan. Teruskan dengan risiko anda sendiri.
+
+# Alerts
+alertAddonsDownloading=Memuat turun add-on
+alertAddonsInstalledNoRestart.message=Pemasangan selesai
+
+# 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=Muat turun bermula
+alertDownloadsDone2=Muat turun selesai
+alertDownloadsToast=Muat turun bermula…
+alertDownloadsPause=Jeda
+alertDownloadsResume=Sambung
+alertDownloadsCancel=Batal
+# 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 dimuat turun
+# LOCALIZATION NOTE (downloads.disabledInGuest): This message appears in a toast
+# when the user tries to download something in Guest mode.
+downloads.disabledInGuest=Muat turun telah dinyahdaya dalam sesi pelawat
+
+# 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' telah ditambah sebagai enjin carian
+alertSearchEngineErrorToast=Tidak dapat menambah '%S' sebagai enjin carian
+alertSearchEngineDuplicateToast='%S' sudah menjadi salah satu enjin carian anda
+
+# LOCALIZATION NOTE (alertShutdownSanitize): This text is shown as a snackbar during shutdown if the
+# user has enabled "Clear private data on exit".
+alertShutdownSanitize=Menghapuskan data peribadi…
+
+alertPrintjobToast=Mencetak…
+
+download.blocked=Tidak dapat memuat turun fail
+
+addonError.titleError=Ralat
+addonError.titleBlocked=Add-on disekat
+addonError.learnMore=Ketahui selanjutnya
+
+# 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=Add-ons tidak disahkan
+unsignedAddonsDisabled.message=Satu atau beberapa add-ons yang dipasang tidak dapat disahkan dan telah dinyahdayakan.
+unsignedAddonsDisabled.dismiss=Abai
+unsignedAddonsDisabled.viewAddons=Papar 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=Add-on tidak dapat dimuat turun kerana kegagalan sambungan pada #2.
+addonError-2=Add-on dari #2 gagal dipasang kerana tidak sepadan add-on #3 seperti yang dijangka.
+addonError-3=Add-on yang dimuat turun dari #2 tidak boleh dipasang kerana ada kerosakan.
+addonError-4=#1 tidak dapat dipasang kerana #3 tidak dapat mengubahsuai fail yang diperlukan.
+addonError-5=#3 telah menyekat #2 daripada memasang add-on yang tidak disahkan.
+
+# 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=Add-on ini tidak dapat dipasang kerana ralat sistem fail.
+addonLocalError-2=Add-on ini tidak dapat dipasang kerana tidak sepadan dengan #3 seperti yang dijangkakan.
+addonLocalError-3=Add-on ini tidak dapat dipasang kerana ada kerosakan.
+addonLocalError-4=#1 tidak dapat dipasang kerana #3 tidak dapat mengubahsuai fail yang diperlukan.
+addonLocalError-5=Add-on ini tidak dapat dipasang kerana belum disahkan.
+addonErrorIncompatible=#1 tidak dapat dipasang kerana tidak serasi dengan #3 #4.
+addonErrorBlocklisted=#1 tidak dapat dipasang kerana ada risiko tinggi yang menyebabkan masalah kestabilan dan keselamatan.
+
+# Notifications
+notificationRestart.normal=Mula semula untuk menyiapkan perubahan.
+notificationRestart.blocked=Add-ons yang tidak selamat telah dipasang. Mula semula untuk menyahdayakannya.
+notificationRestart.button=Mula semula
+doorhanger.learnMore=Ketahui selanjutnya
+
+# 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 menghalang laman ini daripada membuka tetingkap pop-up. Adakah anda ingin menunjukkannya?;#1 menghalang laman ini daripada membuka #2 tetingkap pop-up. Adakah anda ingin menunjukkannya?
+popup.dontAskAgain=Jangan tanya lagi untuk laman ini
+popup.show=Papar
+popup.dontShow=Jangan papar
+
+# SafeBrowsing
+safeBrowsingDoorhanger=Laman ini telah dikenal pasti mengandungi perisian hasad atau percubaan pemalsuan. Berhati-hati.
+
+# LOCALIZATION NOTE (blockPopups.label2): Label that will be used in
+# site settings dialog.
+blockPopups.label2=Popup
+
+# XPInstall
+xpinstallPromptWarning2=%S menghalang laman ini (%S) daripada meminta anda memasang perisian pada peranti anda.
+xpinstallPromptWarningLocal=%S menghalang add-on ini (%S) daripada dipasang pada peranti anda.
+xpinstallPromptWarningDirect=%S menghalang add-on daripada dipasang pada peranti anda
+xpinstallPromptAllowButton=Izinkan
+xpinstallDisabledMessageLocked=Pemasangan perisian telah dinyahdayakan oleh pentadbir sistem anda.
+xpinstallDisabledMessage2=Pemasangan perisian sedang dinyahdaya. Tekan Dayakan dan cuba lagi.
+xpinstallDisabledButton=Dayakan
+
+# 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=Tambah %S?
+
+# LOCALIZATION NOTE (webextPerms.listIntro)
+# This string will be followed by a list of permissions requested
+# by the webextension.
+webextPerms.listIntro=Perlukan izin anda untuk:
+webextPerms.add.label=Tambah
+webextPerms.cancel.label=Batal
+
+# LOCALIZATION NOTE (webextPerms.updateText)
+# %S is replaced with the localized name of the updated extension.
+webextPerms.updateText=%S telah dikemaskini. Anda perlu berikan izin yang baru sebelum versi yang dikemaskini ini boleh dipasang. Pilih “Batal” untuk kekalkan versi add-on semasa.
+
+webextPerms.updateAccept.label=Kemaskini
+
+# LOCALIZATION NOTE (webextPerms.optionalPermsHeader)
+# %S is replaced with the localized name of the extension requesting new
+# permissions.
+webextPerms.optionalPermsHeader=%S perlukan izin tambahan.
+webextPerms.optionalPermsListIntro=Aplikasi ini mahu:
+webextPerms.optionalPermsAllow.label=Izinkan
+webextPerms.optionalPermsDeny.label=Tolak
+
+webextPerms.description.bookmarks=Baca dan ubah tandabuku
+webextPerms.description.browserSettings=Baca dan ubah tetapan pelayar
+webextPerms.description.browsingData=Buang sejarah pelayaran terkini, kuki dan data berkaitan
+webextPerms.description.clipboardRead=Dapatkan data dari klipbod
+webextPerms.description.clipboardWrite=Input data ke klipbod
+webextPerms.description.devtools=Lanjutan alatan pembangun untuk mengakses data dalam tab terbuka
+webextPerms.description.downloads=Muat turun fail, dan baca serta ubah sejarah muat turun pelayar
+webextPerms.description.downloads.open=Buka fail yang dimuat turun ke dalam komputer anda
+webextPerms.description.find=Baca teks dalam semua tab terbuka
+webextPerms.description.geolocation=Akses lokasi anda
+webextPerms.description.history=Akses sejarah pelayaran
+webextPerms.description.management=Pantau penggunaan ekstensi dan uruskan tema
+# LOCALIZATION NOTE (webextPerms.description.nativeMessaging)
+# %S will be replaced with the name of the application
+webextPerms.description.nativeMessaging=Pertukaran mesej dengan atur cara selain %S
+webextPerms.description.notifications=Papar notifikasi kepada anda
+webextPerms.description.privacy=Baca dan ubah tetapan privasi
+webextPerms.description.proxy=Kawal tetapan proksi pelayar
+webextPerms.description.sessions=Akses tab terkini ditutup
+webextPerms.description.tabs=Akses tab pelayar
+webextPerms.description.topSites=Akses sejarah pelayaran
+webextPerms.description.webNavigation=Akses aktiviti pelayar semasa navigasi
+
+webextPerms.hostDescription.allUrls=Akses semua data anda dalam laman web
+
+# 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=Akses data laman anda dalam domain %S
+
+# 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=Akses data anda dalam #1 domain lain
+
+# 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=Akses data anda untuk %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=Akses data anda dalam #1 laman lain
+
+
+# Site Identity
+identity.identified.verifier=Disahkan oleh: %S
+identity.identified.verified_by_you=Anda telah menambah pengecualian keselamatan untuk laman ini
+identity.identified.state_and_country=%S, %S
+
+# Geolocation UI
+geolocation.allow=Kongsi
+geolocation.dontAllow=Jangan kongsi
+# LOCALIZATION NOTE (geolocation.location): Label that will be used in
+# site settings dialog.
+geolocation.location=Lokasi
+
+# Desktop notification UI
+desktopNotification2.allow=Sentiasa
+desktopNotification2.dontAllow=Jangan sesekali
+# LOCALIZATION NOTE (desktopNotification.notifications): Label that will be
+# used in site settings dialog.
+desktopNotification.notifications=Notifikasi
+
+# Imageblocking
+imageblocking.downloadedImage=Imej dinyahsekat
+imageblocking.showAllImages=Papar Semua
+
+# 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=#1 tab baru dibuka
+newprivatetabpopup.opened=#1 tab peribadi baru dibuka
+
+# 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=TUKAR
+
+# 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=%S ditutup
+
+# Private Tab closed message
+# LOCALIZATION NOTE (privateClosedMessage.message): This message appears
+# when the user closes a private tab.
+privateClosedMessage.message=Pelayaran Peribadi Ditutup
+
+# 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=Tab ditutup
+
+# 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=BATAL
+
+# Offline web applications
+offlineApps.ask=Izinkan %S menyimpan data pada peranti anda untuk kegunaan di luar talian?
+offlineApps.dontAskAgain=Jangan tanya lagi untuk laman ini
+offlineApps.allow=Izinkan
+offlineApps.dontAllow2=Jangan izin
+
+# LOCALIZATION NOTE (offlineApps.offlineData): Label that will be used in
+# site settings dialog.
+offlineApps.offlineData=Data Luar Talian
+
+# LOCALIZATION NOTE (password.logins): Label that will be used in
+ # site settings dialog.
+password.logins=Log masuk
+# LOCALIZATION NOTE (password.save): This should match
+# saveButton in passwordmgr.properties
+password.save=Simpan
+# LOCALIZATION NOTE (password.dontSave): This should match
+# dontSaveButton in passwordmgr.properties
+password.dontSave=Jangan simpan
+
+# 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=Teks disalin ke klipbod
+
+# Casting
+# LOCALIZATION NOTE (casting.sendToDevice): Label that will be used in the
+# dialog/prompt.
+casting.sendToDevice=Hantar ke Peranti
+
+# Context menu
+contextmenu.openInNewTab=Buka Pautan dalam Tab Baru
+contextmenu.openInPrivateTab=Buka Pautan dalam Tab Peribadi
+contextmenu.share=Kongsi
+contextmenu.copyLink=Salin Pautan
+contextmenu.shareLink=Kongsi Pautan
+contextmenu.bookmarkLink=Tandabuku Pautan
+contextmenu.copyEmailAddress=Salin Alamat E-mel
+contextmenu.shareEmailAddress=Kongsi Alamat E-mel
+contextmenu.copyPhoneNumber=Salin Nombor Telefon
+contextmenu.sharePhoneNumber=Kongsi Nombor Telefon
+contextmenu.fullScreen=Skrin Penuh
+contextmenu.viewImage=Papar Imej
+contextmenu.copyImageLocation=Salin Lokasi Imej
+contextmenu.shareImage=Kongsi Imej
+# 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=Carian %S
+contextmenu.saveImage=Simpan Imej
+contextmenu.showImage=Papar Imej
+contextmenu.setImageAs=Tetapkan Imej Sebagai
+# 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=Tambah Enjin Carian
+contextmenu.playMedia=Main
+contextmenu.pauseMedia=Jeda
+contextmenu.showControls2=Papar Kawalan
+contextmenu.mute=Senyap
+contextmenu.unmute=Nyahsenyap
+contextmenu.saveVideo=Simpan Video
+contextmenu.saveAudio=Simpan Audio
+contextmenu.addToContacts=Tambah ke Kenalan
+# LOCALIZATION NOTE (contextmenu.sendToDevice):
+# The label that will be used in the contextmenu and the pageaction
+contextmenu.sendToDevice=Hantar ke Peranti
+
+contextmenu.copy=Salin
+contextmenu.cut=Potong
+contextmenu.selectAll=Pilih Semua
+contextmenu.paste=Tampal
+
+contextmenu.call=Panggilan
+
+#Input widgets UI
+inputWidgetHelper.date=Pilih tarikh
+inputWidgetHelper.datetime-local=Pilih tarikh dan masa
+inputWidgetHelper.time=Pilih masa
+inputWidgetHelper.week=Pilih minggu
+inputWidgetHelper.month=Pilih bulan
+inputWidgetHelper.cancel=Batal
+inputWidgetHelper.set=Tetapkan
+inputWidgetHelper.clear=Buang
+
+# Web Console API
+stacktrace.anonymousFunction=<anonymous>
+stacktrace.outputMessage=tindanan surih daripada %S, fungsi %S, baris %S.
+timer.start=%S: pemasa telah bermula
+
+# 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=Aktifkan
+clickToPlayPlugins.dontActivate=Jangan aktifkan
+# LOCALIZATION NOTE (clickToPlayPlugins.plugins): Label that
+# will be used in site settings dialog.
+clickToPlayPlugins.plugins=Plugin
+
+# Site settings dialog
+
+masterPassword.incorrect=Kata laluan salah
+
+# Debugger
+# LOCALIZATION NOTE (remoteIncomingPromptTitle): The title displayed on the
+# dialog that prompts the user to allow the incoming connection.
+remoteIncomingPromptTitle=Sambungan Masuk
+# LOCALIZATION NOTE (remoteIncomingPromptUSB): The message displayed on the
+# dialog that prompts the user to allow an incoming USB connection.
+remoteIncomingPromptUSB=Izinkan sambungan debugging USB?
+# LOCALIZATION NOTE (remoteIncomingPromptUSB): The message displayed on the
+# dialog that prompts the user to allow an incoming TCP connection.
+remoteIncomingPromptTCP=Izinkan sambungan nyahpepijat jauh dari %1$S:%2$S? Sambungan ini perlukan kod QR yang diimbas untuk mengesahkan sijil peranti jauh. Anda boleh elakkan mengimbas lagi dengan mengingati peranti ini.
+# LOCALIZATION NOTE (remoteIncomingPromptDeny): This button will deny an
+# an incoming remote debugger connection.
+remoteIncomingPromptDeny=Tolak
+# LOCALIZATION NOTE (remoteIncomingPromptAllow): This button will allow an
+# an incoming remote debugger connection.
+remoteIncomingPromptAllow=Izinkan
+# 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=Imbas
+# 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=Imbas dan Ingati
+# 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=Imbas QR Gagal
+# 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=Gagal mengimbas kod QR untuk menyahpijat secara jauh. Sahkan bahawa app Barcode Scanner telah dipasang dan cuba disambungkan semula.
+# 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=Buka
+helperapps.openWithApp2=Buka Dengan App %S
+helperapps.openWithList2=Buka Dengan App
+helperapps.always=Sentiasa
+helperapps.never=Jangan sesekali
+helperapps.pick=Sempurnakan tindakan menggunakan
+helperapps.saveToDisk=Muat turun
+helperapps.alwaysUse=Sentiasa
+helperapps.useJustOnce=Sekali sahaja
+
+# 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 = Adakah anda mahu berkongsi kamera dengan %S?
+getUserMedia.shareMicrophone.message = Adakah anda mahu berkongsi mikrofon dengan %S?
+getUserMedia.shareCameraAndMicrophone.message = Adakah anda mahu berkongsi kamera dan mikfrofon dengan %S?
+getUserMedia.denyRequest.label = Jangan Kongsi
+getUserMedia.shareRequest.label = Kongsi
+getUserMedia.videoSource.default = Kamera %S
+getUserMedia.videoSource.frontCamera = Kamera hadapan
+getUserMedia.videoSource.backCamera = Kamera belakang
+getUserMedia.videoSource.none = Tiada Video
+getUserMedia.videoSource.tabShare = Pilih tab untuk strim
+getUserMedia.videoSource.prompt = Sumber video
+getUserMedia.audioDevice.default = Mikrofon %S
+getUserMedia.audioDevice.none = Tiada Audio
+getUserMedia.audioDevice.prompt = Mikrofon untuk digunakan
+getUserMedia.sharingCamera.message2 = Kamera hidup
+getUserMedia.sharingMicrophone.message2 = Mikrofon hidup
+getUserMedia.sharingCameraAndMicrophone.message2 = Kamera dan mikrofon hidup
+getUserMedia.blockedCameraAccess = Kamera telah disekat.
+getUserMedia.blockedMicrophoneAccess = Mikrofon telah disekat.
+getUserMedia.blockedCameraAndMicrophoneAccess = Kamera dan mikrofon telah disekat.
+
+# 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 = Peribadi
+userContextWork.label = Kerja
+userContextBanking.label = Perbankan
+userContextShopping.label = Beli-belah
+
+# LOCALIZATION NOTE (readerMode.toolbarTip):
+# Tip shown to users the first time we hide the reader mode toolbar.
+readerMode.toolbarTip=Tekan skrin untuk pilihan mod pembaca
+
+#Open in App
+openInApp.pageAction = Buka dalam App
+openInApp.ok = OK
+openInApp.cancel = Batal
+
+#Tab sharing
+tabshare.title = "Pilih tab untuk strim"
+#Tabs in context menus
+browser.menu.context.default = Pautan
+browser.menu.context.img = Imej
+browser.menu.context.video = Video
+browser.menu.context.audio = Audio
+browser.menu.context.tel = Telefon
+browser.menu.context.mailto = Mel
+
+# "Subscribe to page" prompts created in FeedHandler.js
+feedHandler.chooseFeed=Pilih suapan
+feedHandler.subscribeWith=Langgan dengan
+
+# 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=%1$S tidak sesuai. Sila gunakan %2$S sebagai ganti
+
+# Vibration API permission prompt
+vibrationRequest.message = Izinkan halaman ini untuk gegarkan peranti anda?
+vibrationRequest.denyButton = Jangan izin
+vibrationRequest.allowButton = Izinkan
diff --git a/l10n-ms/mobile/android/chrome/config.dtd b/l10n-ms/mobile/android/chrome/config.dtd
new file mode 100644
index 0000000000..51a5adac7a
--- /dev/null
+++ b/l10n-ms/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 "Cari">
+
+<!ENTITY newPref.namePlaceholder "Nama">
+
+<!ENTITY newPref.valueBoolean "Boolean">
+<!ENTITY newPref.valueString "String">
+<!ENTITY newPref.valueInteger "Integer">
+
+<!ENTITY newPref.stringPlaceholder "Masukkan string">
+<!ENTITY newPref.numberPlaceholder "Masukkan nombor">
+
+<!ENTITY newPref.toggleButton "Togol">
+<!ENTITY newPref.cancelButton "Batal">
+
+<!ENTITY contextMenu.copyPrefName "Salin Nama">
+<!ENTITY contextMenu.copyPrefValue "Salin Nilai">
diff --git a/l10n-ms/mobile/android/chrome/config.properties b/l10n-ms/mobile/android/chrome/config.properties
new file mode 100644
index 0000000000..e10d7d070e
--- /dev/null
+++ b/l10n-ms/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=Cipta
+newPref.changeButton=Ubah
+
+pref.toggleButton=Togol
+pref.resetButton=Set semula
diff --git a/l10n-ms/mobile/android/chrome/devicePrompt.properties b/l10n-ms/mobile/android/chrome/devicePrompt.properties
new file mode 100644
index 0000000000..78aa7f3bd7
--- /dev/null
+++ b/l10n-ms/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=Peralatan yang berdekatan
diff --git a/l10n-ms/mobile/android/chrome/passwordmgr.properties b/l10n-ms/mobile/android/chrome/passwordmgr.properties
new file mode 100644
index 0000000000..b902d288af
--- /dev/null
+++ b/l10n-ms/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=Adakah anda mahu %S mengingati log masuk ini?
+rememberButton=Ingat
+neverButton=Jangan sesekali
+
+# String is the login's hostname
+updatePassword=Kemaskini kata laluan tersimpan untuk %S?
+updatePasswordNoUser=Kemaskini kata laluan tersimpan untuk log masuk ini?
+updateButton=Kemaskini
+dontUpdateButton=Jangan kemaskini
+
+# Copy of the toolkit's passwordmgr.properties
+userSelectText2=Pilih log masuk untuk dikemaskini:
+passwordChangeTitle=Sahkan Menukar Kata laluan
+
+# Strings used by PromptService.js
+username=Nama pengguna
+password=Kata laluan
diff --git a/l10n-ms/mobile/android/chrome/phishing.dtd b/l10n-ms/mobile/android/chrome/phishing.dtd
new file mode 100644
index 0000000000..ae1739153c
--- /dev/null
+++ b/l10n-ms/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 "Keluarkan saya dari sini!">
+<!ENTITY safeb.palm.decline.label "Abaikan amaran ini">
+<!ENTITY safeb.palm.reportPage.label "Mengapa halaman ini disekat?">
+<!-- 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 "Khidmat nasihat disediakan oleh <a id='advisory_provider'/>">
+
+<!ENTITY safeb.blocked.malwarePage.title "Ini Halaman Penyerang!">
+<!-- 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 "Halaman web <span id='malware_sitename'/> telah dilaporkan sebagai halaman penyerang dan telah disekat berdasarkan tetapan keselamatan anda.">
+<!ENTITY safeb.blocked.malwarePage.longDesc "<p>Halaman penyerang akan cuba memasang atur cara yang mencuri maklumat peribadi, menggunakan komputer anda untuk menyerang pihak lain, atau merosakkan sistem anda.</p><p>Sesetengah halaman penyerang dengan sengaja merebakkan perisian berbahaya, tapi kebanyakkannya menceroboh tanpa pengetahuan atau keizinan pemilik halaman.</p>">
+
+<!ENTITY safeb.blocked.phishingPage.title3 "Laman Mengelirukan!">
+<!-- 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 "Halaman web <span id='phishing_sitename'/> telah dilaporkan sebagai laman mengelirukan dan telah disekat berdasarkan keutamaan keselamatan anda.">
+<!ENTITY safeb.blocked.phishingPage.longDesc3 "<p>Laman mengelirukan direka untuk memperdayakan anda melakukan perkara yang berbahaya, seperti memasang perisian, atau mendedahkan maklumat peribadi, seperti kata laluan, nombor telefon atau maklumat kad kredit.</p><p>Sebarang maklumat yang dimasukkan dalam halaman web ini boleh mengakibatkan kecurian identiti atau penipuan lain.</p>">
+
+<!ENTITY safeb.blocked.unwantedPage.title "Ini Laman Perisian Yang Tidak Diingini!">
+<!-- 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 "Halaman web <span id='unwanted_sitename'/> telah dilaporkan sebagai halaman yang mengandungi perisian tidak diingini dan telah disekat berdasarkan keutamaan keselamatan anda.">
+<!ENTITY safeb.blocked.unwantedPage.longDesc "Halaman perisian yang tidak diingini cuba memasang perisian yang mengelirukan dan boleh mengganggu sistem anda.">
+
+<!ENTITY safeb.blocked.harmfulPage.title "Laman berikut mungkin ada perisian hasad">
+<!ENTITY safeb.blocked.harmfulPage.shortDesc "&brandShortName; menyekat halaman ini kerana cuba memasang aplikasi yang mencuri data atau menghapuskan data anda (sebagai contoh, foto, kata laluan, mesej dan kad kredit)."> \ No newline at end of file
diff --git a/l10n-ms/mobile/android/chrome/pippki.properties b/l10n-ms/mobile/android/chrome/pippki.properties
new file mode 100644
index 0000000000..6f0cd5b0e9
--- /dev/null
+++ b/l10n-ms/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=Batal
+
+# These strings are stolen from security/manager/locales/en-US/chrome/pippki/pippki.dtd
+downloadCert.title=Memuat turun Sijil
+downloadCert.message1=Anda telah diminta untuk mempercayai Autoriti Sijil (CA) yang baru.
+downloadCert.viewCert.label=Papar
+downloadCert.trustSSL=Dipercayai untuk mengenal pasti laman web.
+downloadCert.trustEmail=Trust untuk mengenali pasti pengguna emel.
+pkcs12.getpassword.title=Dialog Kemasukan Kata Laluan
+pkcs12.getpassword.message=Sila masukkan kata laluan yang digunakan untuk mengenkrip sandaran sijil ini.
+clientAuthAsk.title=Permintaan Pengenalan Pengguna
+clientAuthAsk.message1=Laman ini meminta anda memperkenalkan diri menggunakan sijil:
+clientAuthAsk.message2=Pilih sijil untuk dijadikan sebagai pengenalan:
+clientAuthAsk.message3=Butiran sijil yang dipilih:
+clientAuthAsk.remember.label=Ingati keputusan ini
+# 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=Organisasi: "%S"
+# LOCALIZATION NOTE(clientAuthAsk.issuer): %S is the Organization of the
+# issuer cert of the server cert.
+clientAuthAsk.issuer=Dikeluarkan Di Bawah: "%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=Dikeluarkan kepada: %1$S
+# LOCALIZATION NOTE(clientAuthAsk.serial): %1$S is the serial number of the
+# selected cert in AA:BB:CC hex format.
+clientAuthAsk.serial=Nombor siri: %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=Sah dari %1$S hingga %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=Kunci Kegunaan: %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=Alamat e-mel: %1$S
+# LOCALIZATION NOTE(clientAuthAsk.issuedBy): %1$S is the Distinguished Name of
+# the cert which issued the selected cert.
+clientAuthAsk.issuedBy=Dikeluarkan oleh: %1$S
+# LOCALIZATION NOTE(clientAuthAsk.storedOn): %1$S is the name of the PKCS #11
+# token the selected cert is stored on.
+clientAuthAsk.storedOn=Disimpan dalam: %1$S
+clientAuthAsk.viewCert.label=Papar
+
+certmgr.title=Butiran Sijil
+# These strings are stolen from security/manager/locales/en-US/chrome/pippki/certManager.dtd
+certmgr.subjectinfo.label=Dikeluarkan Untuk
+certmgr.issuerinfo.label=Dikeluarkan Oleh
+certmgr.periodofvalidity.label=Tempoh Sah
+certmgr.fingerprints.label=Cap jari
+certdetail.cn=Nama Biasa (CN): %1$S
+certdetail.o=Organisasi (O): %1$S
+certdetail.ou=Unit Organisasi (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=Nombor Siri: %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=Cap jari SHA-256: %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 Cap jari: %1$S
+# LOCALIZATION NOTE(certdetail.notBefore): %1$S is the already localized
+# notBefore date of the cert being viewed.
+certdetail.notBefore=Bermula Pada: %1$S
+# LOCALIZATION NOTE(certdetail.notAfter): %1$S is the already localized notAfter
+# date of the cert being viewed.
+certdetail.notAfter=Luput Pada: %1$S
diff --git a/l10n-ms/mobile/android/chrome/sync.properties b/l10n-ms/mobile/android/chrome/sync.properties
new file mode 100644
index 0000000000..ca7b4c3bd0
--- /dev/null
+++ b/l10n-ms/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=Sync terakhir: %S
+
+# %S is the username logged in
+account.label=Akaun: %S
+
diff --git a/l10n-ms/mobile/android/chrome/webcompatReporter.properties b/l10n-ms/mobile/android/chrome/webcompatReporter.properties
new file mode 100644
index 0000000000..49836c9b8f
--- /dev/null
+++ b/l10n-ms/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=Laporkan isu laman
+
+# LOCALIZATION NOTE (webcompat.reportDesktopMode.message): A " site issue" is a
+# bug, display, or functionality problem with a webpage in the browser.
+webcompat.reportDesktopMode.message=Laporkan isu laman?
+webcompat.reportDesktopModeYes.label=Laporan
diff --git a/l10n-ms/mobile/android/defines.inc b/l10n-ms/mobile/android/defines.inc
new file mode 100644
index 0000000000..53f7a404d7
--- /dev/null
+++ b/l10n-ms/mobile/android/defines.inc
@@ -0,0 +1,14 @@
+# 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