summaryrefslogtreecommitdiffstats
path: root/l10n-th
diff options
context:
space:
mode:
authorDaniel Baumann <daniel.baumann@progress-linux.org>2024-04-19 00:47:55 +0000
committerDaniel Baumann <daniel.baumann@progress-linux.org>2024-04-19 00:47:55 +0000
commit26a029d407be480d791972afb5975cf62c9360a6 (patch)
treef435a8308119effd964b339f76abb83a57c29483 /l10n-th
parentInitial commit. (diff)
downloadfirefox-e51783d008170d9ab27d25da98ca3a38b0a41b67.tar.xz
firefox-e51783d008170d9ab27d25da98ca3a38b0a41b67.zip
Adding upstream version 124.0.1.upstream/124.0.1
Signed-off-by: Daniel Baumann <daniel.baumann@progress-linux.org>
Diffstat (limited to 'l10n-th')
-rw-r--r--l10n-th/browser/branding/official/brand.ftl28
-rw-r--r--l10n-th/browser/branding/official/brand.properties8
-rw-r--r--l10n-th/browser/browser/aboutDialog.ftl66
-rw-r--r--l10n-th/browser/browser/aboutLogins.ftl469
-rw-r--r--l10n-th/browser/browser/aboutPocket.ftl75
-rw-r--r--l10n-th/browser/browser/aboutPolicies.ftl17
-rw-r--r--l10n-th/browser/browser/aboutPrivateBrowsing.ftl80
-rw-r--r--l10n-th/browser/browser/aboutRestartRequired.ftl10
-rw-r--r--l10n-th/browser/browser/aboutRobots.ftl29
-rw-r--r--l10n-th/browser/browser/aboutSessionRestore.ftl51
-rw-r--r--l10n-th/browser/browser/aboutTabCrashed.ftl22
-rw-r--r--l10n-th/browser/browser/aboutUnloads.ftl44
-rw-r--r--l10n-th/browser/browser/accounts.ftl94
-rw-r--r--l10n-th/browser/browser/addonNotifications.ftl114
-rw-r--r--l10n-th/browser/browser/allTabsMenu.ftl17
-rw-r--r--l10n-th/browser/browser/appExtensionFields.ftl28
-rw-r--r--l10n-th/browser/browser/appMenuNotifications.ftl66
-rw-r--r--l10n-th/browser/browser/appmenu.ftl280
-rw-r--r--l10n-th/browser/browser/backgroundtasks/defaultagent.ftl9
-rw-r--r--l10n-th/browser/browser/browser.ftl995
-rw-r--r--l10n-th/browser/browser/browserContext.ftl391
-rw-r--r--l10n-th/browser/browser/browserSets.ftl218
-rw-r--r--l10n-th/browser/browser/colorways.ftl26
-rw-r--r--l10n-th/browser/browser/components/mozSupportLink.ftl5
-rw-r--r--l10n-th/browser/browser/confirmationHints.ftl24
-rw-r--r--l10n-th/browser/browser/contentCrash.ftl30
-rw-r--r--l10n-th/browser/browser/customizeMode.ftl38
-rw-r--r--l10n-th/browser/browser/defaultBrowserNotification.ftl23
-rw-r--r--l10n-th/browser/browser/downloads.ftl253
-rw-r--r--l10n-th/browser/browser/editBookmarkOverlay.ftl49
-rw-r--r--l10n-th/browser/browser/extensionsUI.ftl33
-rw-r--r--l10n-th/browser/browser/featureCallout.ftl56
-rw-r--r--l10n-th/browser/browser/firefoxRelay.ftl35
-rw-r--r--l10n-th/browser/browser/firefoxView.ftl244
-rw-r--r--l10n-th/browser/browser/firefoxWebAuthn.ftl3
-rw-r--r--l10n-th/browser/browser/fxviewTabList.ftl65
-rw-r--r--l10n-th/browser/browser/identityCredentialNotification.ftl29
-rw-r--r--l10n-th/browser/browser/linuxDesktopEntry.ftl27
-rw-r--r--l10n-th/browser/browser/menubar.ftl351
-rw-r--r--l10n-th/browser/browser/migration.ftl174
-rw-r--r--l10n-th/browser/browser/migrationWizard.ftl274
-rw-r--r--l10n-th/browser/browser/newtab/asrouter.ftl280
-rw-r--r--l10n-th/browser/browser/newtab/newtab.ftl271
-rw-r--r--l10n-th/browser/browser/newtab/onboarding.ftl362
-rw-r--r--l10n-th/browser/browser/originControls.ftl64
-rw-r--r--l10n-th/browser/browser/pageInfo.ftl260
-rw-r--r--l10n-th/browser/browser/panelUI.ftl25
-rw-r--r--l10n-th/browser/browser/panicButton.ftl31
-rw-r--r--l10n-th/browser/browser/places.ftl264
-rw-r--r--l10n-th/browser/browser/placesPrompts.ftl20
-rw-r--r--l10n-th/browser/browser/policies/policies-descriptions.ftl129
-rw-r--r--l10n-th/browser/browser/preferences/addEngine.ftl22
-rw-r--r--l10n-th/browser/browser/preferences/applicationManager.ftl25
-rw-r--r--l10n-th/browser/browser/preferences/blocklists.ftl33
-rw-r--r--l10n-th/browser/browser/preferences/clearSiteData.ftl56
-rw-r--r--l10n-th/browser/browser/preferences/colors.ftl33
-rw-r--r--l10n-th/browser/browser/preferences/connection.ftl99
-rw-r--r--l10n-th/browser/browser/preferences/containers.ftl93
-rw-r--r--l10n-th/browser/browser/preferences/fonts.ftl121
-rw-r--r--l10n-th/browser/browser/preferences/formAutofill.ftl156
-rw-r--r--l10n-th/browser/browser/preferences/fxaPairDevice.ftl17
-rw-r--r--l10n-th/browser/browser/preferences/languages.ftl73
-rw-r--r--l10n-th/browser/browser/preferences/moreFromMozilla.ftl34
-rw-r--r--l10n-th/browser/browser/preferences/permissions.ftl205
-rw-r--r--l10n-th/browser/browser/preferences/preferences.ftl1378
-rw-r--r--l10n-th/browser/browser/preferences/selectBookmark.ftl9
-rw-r--r--l10n-th/browser/browser/preferences/siteDataSettings.ftl66
-rw-r--r--l10n-th/browser/browser/preferences/translation.ftl40
-rw-r--r--l10n-th/browser/browser/profile/default-bookmarks.ftl53
-rw-r--r--l10n-th/browser/browser/protections.ftl219
-rw-r--r--l10n-th/browser/browser/protectionsPanel.ftl162
-rw-r--r--l10n-th/browser/browser/recentlyClosed.ftl29
-rw-r--r--l10n-th/browser/browser/reportBrokenSite.ftl43
-rw-r--r--l10n-th/browser/browser/safeMode.ftl15
-rw-r--r--l10n-th/browser/browser/safebrowsing/blockedSite.ftl58
-rw-r--r--l10n-th/browser/browser/sanitize.ftl125
-rw-r--r--l10n-th/browser/browser/screenshots.ftl60
-rw-r--r--l10n-th/browser/browser/screenshotsOverlay.ftl14
-rw-r--r--l10n-th/browser/browser/search.ftl35
-rw-r--r--l10n-th/browser/browser/setDesktopBackground.ftl40
-rw-r--r--l10n-th/browser/browser/shopping.ftl201
-rw-r--r--l10n-th/browser/browser/sidebarMenu.ftl18
-rw-r--r--l10n-th/browser/browser/sitePermissions.ftl11
-rw-r--r--l10n-th/browser/browser/siteProtections.ftl88
-rw-r--r--l10n-th/browser/browser/speechDispatcher.ftl16
-rw-r--r--l10n-th/browser/browser/spotlight.ftl22
-rw-r--r--l10n-th/browser/browser/sync.ftl31
-rw-r--r--l10n-th/browser/browser/syncedTabs.ftl61
-rw-r--r--l10n-th/browser/browser/tabContextMenu.ftl106
-rw-r--r--l10n-th/browser/browser/tabbrowser.ftl136
-rw-r--r--l10n-th/browser/browser/textRecognition.ftl15
-rw-r--r--l10n-th/browser/browser/toolbarContextMenu.ftl88
-rw-r--r--l10n-th/browser/browser/touchbar/touchbar.ftl38
-rw-r--r--l10n-th/browser/browser/translations.ftl172
-rw-r--r--l10n-th/browser/browser/unifiedExtensions.ftl49
-rw-r--r--l10n-th/browser/browser/webProtocolHandler.ftl19
-rw-r--r--l10n-th/browser/browser/webauthnDialog.ftl19
-rw-r--r--l10n-th/browser/browser/webrtcIndicator.ftl197
-rw-r--r--l10n-th/browser/chrome/browser/browser.properties530
-rw-r--r--l10n-th/browser/chrome/browser/customizableui/customizableWidgets.properties54
-rw-r--r--l10n-th/browser/chrome/browser/downloads/downloads.properties82
-rw-r--r--l10n-th/browser/chrome/browser/feeds/subscribe.properties10
-rw-r--r--l10n-th/browser/chrome/browser/places/bookmarkProperties.properties24
-rw-r--r--l10n-th/browser/chrome/browser/safebrowsing/safebrowsing.properties6
-rw-r--r--l10n-th/browser/chrome/browser/search.properties33
-rw-r--r--l10n-th/browser/chrome/browser/shellservice.properties16
-rw-r--r--l10n-th/browser/chrome/browser/siteData.properties8
-rw-r--r--l10n-th/browser/chrome/browser/sitePermissions.properties55
-rw-r--r--l10n-th/browser/chrome/browser/syncSetup.properties14
-rw-r--r--l10n-th/browser/chrome/browser/taskbar.properties12
-rw-r--r--l10n-th/browser/chrome/browser/uiDensity.properties5
-rw-r--r--l10n-th/browser/chrome/overrides/appstrings.properties44
-rw-r--r--l10n-th/browser/crashreporter/crashreporter-override.ini8
-rw-r--r--l10n-th/browser/defaultagent/defaultagent_localized.ini15
-rw-r--r--l10n-th/browser/extensions/formautofill/formautofill.properties135
-rw-r--r--l10n-th/browser/extensions/report-site-issue/webcompat.properties10
-rw-r--r--l10n-th/browser/firefox-l10n.js6
-rw-r--r--l10n-th/browser/installer/custom.properties93
-rw-r--r--l10n-th/browser/installer/mui.properties61
-rw-r--r--l10n-th/browser/installer/nsisstrings.properties46
-rw-r--r--l10n-th/browser/installer/override.properties86
-rw-r--r--l10n-th/browser/langpack-metadata.ftl13
-rw-r--r--l10n-th/browser/pdfviewer/chrome.properties20
-rw-r--r--l10n-th/browser/pdfviewer/viewer.properties302
-rw-r--r--l10n-th/browser/updater/updater.ini10
-rw-r--r--l10n-th/devtools/client/aboutdebugging.ftl334
-rw-r--r--l10n-th/devtools/client/accessibility.ftl64
-rw-r--r--l10n-th/devtools/client/accessibility.properties314
-rw-r--r--l10n-th/devtools/client/animationinspector.properties182
-rw-r--r--l10n-th/devtools/client/application.ftl121
-rw-r--r--l10n-th/devtools/client/boxmodel.properties47
-rw-r--r--l10n-th/devtools/client/changes.properties64
-rw-r--r--l10n-th/devtools/client/compatibility.ftl51
-rw-r--r--l10n-th/devtools/client/components.properties61
-rw-r--r--l10n-th/devtools/client/debugger.properties1159
-rw-r--r--l10n-th/devtools/client/device.properties21
-rw-r--r--l10n-th/devtools/client/dom.properties27
-rw-r--r--l10n-th/devtools/client/filterwidget.properties61
-rw-r--r--l10n-th/devtools/client/font-inspector.properties69
-rw-r--r--l10n-th/devtools/client/har.properties30
-rw-r--r--l10n-th/devtools/client/inspector.properties602
-rw-r--r--l10n-th/devtools/client/jsonview.properties45
-rw-r--r--l10n-th/devtools/client/layout.properties138
-rw-r--r--l10n-th/devtools/client/memory.properties434
-rw-r--r--l10n-th/devtools/client/menus.properties29
-rw-r--r--l10n-th/devtools/client/netmonitor.properties1707
-rw-r--r--l10n-th/devtools/client/network-throttling.properties27
-rw-r--r--l10n-th/devtools/client/perftools.ftl147
-rw-r--r--l10n-th/devtools/client/responsive.properties182
-rw-r--r--l10n-th/devtools/client/shared.properties26
-rw-r--r--l10n-th/devtools/client/sourceeditor.properties117
-rw-r--r--l10n-th/devtools/client/startup.properties247
-rw-r--r--l10n-th/devtools/client/storage.ftl109
-rw-r--r--l10n-th/devtools/client/styleeditor.ftl52
-rw-r--r--l10n-th/devtools/client/styleeditor.properties74
-rw-r--r--l10n-th/devtools/client/toolbox-options.ftl133
-rw-r--r--l10n-th/devtools/client/toolbox.ftl55
-rw-r--r--l10n-th/devtools/client/toolbox.properties266
-rw-r--r--l10n-th/devtools/client/tooltips.ftl97
-rw-r--r--l10n-th/devtools/client/webconsole.properties610
-rw-r--r--l10n-th/devtools/shared/accessibility.properties142
-rw-r--r--l10n-th/devtools/shared/debugger-paused-reasons.ftl87
-rw-r--r--l10n-th/devtools/shared/debugger.properties67
-rw-r--r--l10n-th/devtools/shared/eyedropper.properties14
-rw-r--r--l10n-th/devtools/shared/highlighters.ftl55
-rw-r--r--l10n-th/devtools/shared/screenshot.properties138
-rw-r--r--l10n-th/devtools/shared/shared.properties6
-rw-r--r--l10n-th/devtools/shared/styleinspector.properties267
-rw-r--r--l10n-th/devtools/shared/webconsole-commands.ftl34
-rw-r--r--l10n-th/devtools/startup/key-shortcuts.ftl38
-rw-r--r--l10n-th/dom/chrome/accessibility/AccessFu.properties111
-rw-r--r--l10n-th/dom/chrome/accessibility/mac/accessible.properties71
-rw-r--r--l10n-th/dom/chrome/accessibility/unix/accessible.properties21
-rw-r--r--l10n-th/dom/chrome/accessibility/win/accessible.properties21
-rw-r--r--l10n-th/dom/chrome/appstrings.properties37
-rw-r--r--l10n-th/dom/chrome/dom/dom.properties488
-rw-r--r--l10n-th/dom/chrome/global-strres.properties5
-rw-r--r--l10n-th/dom/chrome/layout/HtmlForm.properties35
-rw-r--r--l10n-th/dom/chrome/layout/MediaDocument.properties22
-rw-r--r--l10n-th/dom/chrome/layout/css.properties52
-rw-r--r--l10n-th/dom/chrome/layout/htmlparser.properties144
-rw-r--r--l10n-th/dom/chrome/layout/layout_errors.properties53
-rw-r--r--l10n-th/dom/chrome/layout/printing.properties56
-rw-r--r--l10n-th/dom/chrome/layout/xmlparser.properties48
-rw-r--r--l10n-th/dom/chrome/layout/xul.properties5
-rw-r--r--l10n-th/dom/chrome/mathml/mathml.properties15
-rw-r--r--l10n-th/dom/chrome/nsWebBrowserPersist.properties17
-rw-r--r--l10n-th/dom/chrome/security/caps.properties9
-rw-r--r--l10n-th/dom/chrome/security/csp.properties125
-rw-r--r--l10n-th/dom/chrome/security/security.properties167
-rw-r--r--l10n-th/dom/chrome/svg/svg.properties5
-rw-r--r--l10n-th/dom/chrome/xslt/xslt.properties39
-rw-r--r--l10n-th/dom/dom/XMLPrettyPrint.ftl5
-rw-r--r--l10n-th/dom/dom/media.ftl6
-rw-r--r--l10n-th/mobile/android/chrome/browser.properties44
-rw-r--r--l10n-th/mobile/android/chrome/passwordmgr.properties20
-rw-r--r--l10n-th/mobile/android/mobile/android/aboutConfig.ftl28
-rw-r--r--l10n-th/mobile/android/mobile/android/geckoViewConsole.ftl22
-rw-r--r--l10n-th/mobile/chrome/region.properties22
-rw-r--r--l10n-th/netwerk/necko.properties106
-rw-r--r--l10n-th/security/manager/chrome/pipnss/nsserrors.properties331
-rw-r--r--l10n-th/security/manager/chrome/pipnss/pipnss.properties136
-rw-r--r--l10n-th/security/manager/chrome/pippki/pippki.properties76
-rw-r--r--l10n-th/security/manager/security/certificates/certManager.ftl228
-rw-r--r--l10n-th/security/manager/security/certificates/deviceManager.ftl133
-rw-r--r--l10n-th/security/manager/security/pippki/pippki.ftl106
-rw-r--r--l10n-th/toolkit/chrome/alerts/alert.properties23
-rw-r--r--l10n-th/toolkit/chrome/autoconfig/autoconfig.properties12
-rw-r--r--l10n-th/toolkit/chrome/global-platform/mac/intl.properties7
-rw-r--r--l10n-th/toolkit/chrome/global-platform/mac/platformKeys.properties33
-rw-r--r--l10n-th/toolkit/chrome/global-platform/unix/intl.properties7
-rw-r--r--l10n-th/toolkit/chrome/global-platform/unix/platformKeys.properties33
-rw-r--r--l10n-th/toolkit/chrome/global-platform/win/intl.properties7
-rw-r--r--l10n-th/toolkit/chrome/global-platform/win/platformKeys.properties33
-rw-r--r--l10n-th/toolkit/chrome/global/aboutStudies.properties32
-rw-r--r--l10n-th/toolkit/chrome/global/autocomplete.properties9
-rw-r--r--l10n-th/toolkit/chrome/global/browser.properties7
-rw-r--r--l10n-th/toolkit/chrome/global/commonDialogs.properties46
-rw-r--r--l10n-th/toolkit/chrome/global/contentAreaCommands.properties28
-rw-r--r--l10n-th/toolkit/chrome/global/dialog.properties12
-rw-r--r--l10n-th/toolkit/chrome/global/extensions.properties26
-rw-r--r--l10n-th/toolkit/chrome/global/fallbackMenubar.properties8
-rw-r--r--l10n-th/toolkit/chrome/global/filepicker.properties20
-rw-r--r--l10n-th/toolkit/chrome/global/intl.css11
-rw-r--r--l10n-th/toolkit/chrome/global/intl.properties43
-rw-r--r--l10n-th/toolkit/chrome/global/keys.properties70
-rw-r--r--l10n-th/toolkit/chrome/global/narrate.properties29
-rw-r--r--l10n-th/toolkit/chrome/global/printdialog.properties53
-rw-r--r--l10n-th/toolkit/chrome/global/resetProfile.properties14
-rw-r--r--l10n-th/toolkit/chrome/global/viewSource.properties16
-rw-r--r--l10n-th/toolkit/chrome/global/wizard.properties8
-rw-r--r--l10n-th/toolkit/chrome/mozapps/downloads/downloads.properties6
-rw-r--r--l10n-th/toolkit/chrome/mozapps/downloads/unknownContentType.properties23
-rw-r--r--l10n-th/toolkit/chrome/mozapps/profile/profileSelection.properties55
-rw-r--r--l10n-th/toolkit/chrome/mozapps/update/updates.properties45
-rw-r--r--l10n-th/toolkit/chrome/passwordmgr/passwordmgr.properties79
-rw-r--r--l10n-th/toolkit/chrome/places/places.properties33
-rw-r--r--l10n-th/toolkit/crashreporter/aboutcrashes.ftl31
-rw-r--r--l10n-th/toolkit/crashreporter/crashreporter.ini58
-rw-r--r--l10n-th/toolkit/services/accounts.ftl8
-rw-r--r--l10n-th/toolkit/toolkit/about/aboutAbout.ftl6
-rw-r--r--l10n-th/toolkit/toolkit/about/aboutAddons.ftl499
-rw-r--r--l10n-th/toolkit/toolkit/about/aboutCompat.ftl22
-rw-r--r--l10n-th/toolkit/toolkit/about/aboutGlean.ftl107
-rw-r--r--l10n-th/toolkit/toolkit/about/aboutHttpsOnlyError.ftl30
-rw-r--r--l10n-th/toolkit/toolkit/about/aboutLogging.ftl69
-rw-r--r--l10n-th/toolkit/toolkit/about/aboutMozilla.ftl11
-rw-r--r--l10n-th/toolkit/toolkit/about/aboutNetworking.ftl68
-rw-r--r--l10n-th/toolkit/toolkit/about/aboutPerformance.ftl67
-rw-r--r--l10n-th/toolkit/toolkit/about/aboutPlugins.ftl43
-rw-r--r--l10n-th/toolkit/toolkit/about/aboutProcesses.ftl186
-rw-r--r--l10n-th/toolkit/toolkit/about/aboutProfiles.ftl74
-rw-r--r--l10n-th/toolkit/toolkit/about/aboutReader.ftl48
-rw-r--r--l10n-th/toolkit/toolkit/about/aboutRights.ftl36
-rw-r--r--l10n-th/toolkit/toolkit/about/aboutServiceWorkers.ftl35
-rw-r--r--l10n-th/toolkit/toolkit/about/aboutSupport.ftl410
-rw-r--r--l10n-th/toolkit/toolkit/about/aboutTelemetry.ftl135
-rw-r--r--l10n-th/toolkit/toolkit/about/aboutThirdParty.ftl83
-rw-r--r--l10n-th/toolkit/toolkit/about/aboutWebauthn.ftl133
-rw-r--r--l10n-th/toolkit/toolkit/about/aboutWebrtc.ftl322
-rw-r--r--l10n-th/toolkit/toolkit/about/aboutWindowsMessages.ftl20
-rw-r--r--l10n-th/toolkit/toolkit/about/abuseReports.ftl104
-rw-r--r--l10n-th/toolkit/toolkit/about/certviewer.ftl122
-rw-r--r--l10n-th/toolkit/toolkit/about/config.ftl55
-rw-r--r--l10n-th/toolkit/toolkit/about/url-classifier.ftl58
-rw-r--r--l10n-th/toolkit/toolkit/branding/accounts.ftl7
-rw-r--r--l10n-th/toolkit/toolkit/branding/brandings.ftl46
-rw-r--r--l10n-th/toolkit/toolkit/contentanalysis/contentanalysis.ftl43
-rw-r--r--l10n-th/toolkit/toolkit/downloads/downloadUI.ftl51
-rw-r--r--l10n-th/toolkit/toolkit/downloads/downloadUtils.ftl90
-rw-r--r--l10n-th/toolkit/toolkit/featuregates/features.ftl58
-rw-r--r--l10n-th/toolkit/toolkit/formautofill/formAutofill.ftl65
-rw-r--r--l10n-th/toolkit/toolkit/global/alert.ftl12
-rw-r--r--l10n-th/toolkit/toolkit/global/appPicker.ftl10
-rw-r--r--l10n-th/toolkit/toolkit/global/arrowscrollbox.ftl3
-rw-r--r--l10n-th/toolkit/toolkit/global/browser-utils.ftl11
-rw-r--r--l10n-th/toolkit/toolkit/global/commonDialog.ftl21
-rw-r--r--l10n-th/toolkit/toolkit/global/contextual-identity.ftl29
-rw-r--r--l10n-th/toolkit/toolkit/global/cookieBannerHandling.ftl5
-rw-r--r--l10n-th/toolkit/toolkit/global/createProfileWizard.ftl53
-rw-r--r--l10n-th/toolkit/toolkit/global/cspErrors.ftl32
-rw-r--r--l10n-th/toolkit/toolkit/global/datepicker.ftl50
-rw-r--r--l10n-th/toolkit/toolkit/global/datetimebox.ftl42
-rw-r--r--l10n-th/toolkit/toolkit/global/extensionPermissions.ftl33
-rw-r--r--l10n-th/toolkit/toolkit/global/extensions.ftl97
-rw-r--r--l10n-th/toolkit/toolkit/global/handlerDialog.ftl70
-rw-r--r--l10n-th/toolkit/toolkit/global/htmlForm.ftl10
-rw-r--r--l10n-th/toolkit/toolkit/global/mozCard.ftl3
-rw-r--r--l10n-th/toolkit/toolkit/global/mozFiveStar.ftl9
-rw-r--r--l10n-th/toolkit/toolkit/global/mozMessageBar.ftl15
-rw-r--r--l10n-th/toolkit/toolkit/global/mozSupportLink.ftl5
-rw-r--r--l10n-th/toolkit/toolkit/global/notification.ftl16
-rw-r--r--l10n-th/toolkit/toolkit/global/popupnotification.ftl10
-rw-r--r--l10n-th/toolkit/toolkit/global/processTypes.ftl57
-rw-r--r--l10n-th/toolkit/toolkit/global/profileDowngrade.ftl18
-rw-r--r--l10n-th/toolkit/toolkit/global/profileSelection.ftl38
-rw-r--r--l10n-th/toolkit/toolkit/global/resetProfile.ftl15
-rw-r--r--l10n-th/toolkit/toolkit/global/resistFingerPrinting.ftl6
-rw-r--r--l10n-th/toolkit/toolkit/global/run-from-dmg.ftl28
-rw-r--r--l10n-th/toolkit/toolkit/global/tabprompts.ftl13
-rw-r--r--l10n-th/toolkit/toolkit/global/textActions.ftl64
-rw-r--r--l10n-th/toolkit/toolkit/global/timepicker.ftl3
-rw-r--r--l10n-th/toolkit/toolkit/global/tree.ftl6
-rw-r--r--l10n-th/toolkit/toolkit/global/unknownContentType.ftl42
-rw-r--r--l10n-th/toolkit/toolkit/global/videocontrols.ftl74
-rw-r--r--l10n-th/toolkit/toolkit/global/wizard.ftl37
-rw-r--r--l10n-th/toolkit/toolkit/intl/languageNames.ftl215
-rw-r--r--l10n-th/toolkit/toolkit/intl/regionNames.ftl280
-rw-r--r--l10n-th/toolkit/toolkit/main-window/autocomplete.ftl23
-rw-r--r--l10n-th/toolkit/toolkit/main-window/findbar.ftl68
-rw-r--r--l10n-th/toolkit/toolkit/neterror/certError.ftl141
-rw-r--r--l10n-th/toolkit/toolkit/neterror/netError.ftl149
-rw-r--r--l10n-th/toolkit/toolkit/neterror/nsserrors.ftl344
-rw-r--r--l10n-th/toolkit/toolkit/passwordmgr/passwordmgr.ftl39
-rw-r--r--l10n-th/toolkit/toolkit/payments/payments.ftl51
-rw-r--r--l10n-th/toolkit/toolkit/pdfviewer/viewer.ftl381
-rw-r--r--l10n-th/toolkit/toolkit/pictureinpicture/pictureinpicture.ftl86
-rw-r--r--l10n-th/toolkit/toolkit/preferences/preferences.ftl35
-rw-r--r--l10n-th/toolkit/toolkit/printing/printDialogs.ftl112
-rw-r--r--l10n-th/toolkit/toolkit/printing/printPreview.ftl73
-rw-r--r--l10n-th/toolkit/toolkit/printing/printUI.ftl147
-rw-r--r--l10n-th/toolkit/toolkit/reportBrokenSite/reportBrokenSite.ftl3
-rw-r--r--l10n-th/toolkit/toolkit/updates/backgroundupdate.ftl5
-rw-r--r--l10n-th/toolkit/toolkit/updates/elevation.ftl14
-rw-r--r--l10n-th/toolkit/toolkit/updates/history.ftl29
325 files changed, 31373 insertions, 0 deletions
diff --git a/l10n-th/browser/branding/official/brand.ftl b/l10n-th/browser/branding/official/brand.ftl
new file mode 100644
index 0000000000..045fc499d7
--- /dev/null
+++ b/l10n-th/browser/branding/official/brand.ftl
@@ -0,0 +1,28 @@
+# 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/.
+
+
+## Firefox and Mozilla Brand
+##
+## Firefox and Mozilla must be treated as a brand.
+##
+## They cannot be:
+## - Transliterated.
+## - Translated.
+##
+## Declension should be avoided where possible, leaving the original
+## brand unaltered in prominent UI positions.
+##
+## For further details, consult:
+## https://mozilla-l10n.github.io/styleguides/mozilla_general/#brands-copyright-and-trademark
+
+-brand-shorter-name = Firefox
+-brand-short-name = Firefox
+-brand-shortcut-name = Firefox
+-brand-full-name = Mozilla Firefox
+# This brand name can be used in messages where the product name needs to
+# remain unchanged across different versions (Nightly, Beta, etc.).
+-brand-product-name = Firefox
+-vendor-short-name = Mozilla
+trademarkInfo = Firefox และตราสัญลักษณ์ Firefox เป็นเครื่องหมายการค้าของ Mozilla Foundation
diff --git a/l10n-th/browser/branding/official/brand.properties b/l10n-th/browser/branding/official/brand.properties
new file mode 100644
index 0000000000..9d6a612125
--- /dev/null
+++ b/l10n-th/browser/branding/official/brand.properties
@@ -0,0 +1,8 @@
+# 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/.
+
+brandShorterName=Firefox
+brandShortName=Firefox
+brandFullName=Mozilla Firefox
+
diff --git a/l10n-th/browser/browser/aboutDialog.ftl b/l10n-th/browser/browser/aboutDialog.ftl
new file mode 100644
index 0000000000..44b02fc3f3
--- /dev/null
+++ b/l10n-th/browser/browser/aboutDialog.ftl
@@ -0,0 +1,66 @@
+# 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/.
+
+aboutDialog-title =
+ .title = เกี่ยวกับ { -brand-full-name }
+releaseNotes-link = มีอะไรใหม่
+update-checkForUpdatesButton =
+ .label = ตรวจสอบการอัปเดต
+ .accesskey = ต
+update-updateButton =
+ .label = เริ่มการทำงานใหม่เพื่ออัปเดต { -brand-shorter-name }
+ .accesskey = ร
+update-checkingForUpdates = กำลังตรวจสอบการอัปเดต…
+
+## Variables:
+## $transfer (string) - Transfer progress.
+
+settings-update-downloading = <img data-l10n-name="icon"/>กำลังดาวน์โหลดการอัปเดต — <label data-l10n-name="download-status">{ $transfer }</label>
+aboutdialog-update-downloading = กำลังดาวน์โหลดอัปเดต — <label data-l10n-name="download-status">{ $transfer }</label>
+
+##
+
+update-applying = กำลังติดตั้งการอัปเดต…
+update-failed = การอัปเดตล้มเหลว <label data-l10n-name="failed-link">ดาวน์โหลดรุ่นล่าสุด</label>
+update-failed-main = การอัปเดตล้มเหลว <a data-l10n-name="failed-link-main">ดาวน์โหลดรุ่นล่าสุด</a>
+update-adminDisabled = การอัปเดตถูกปิดใช้งานโดยผู้ดูแลระบบของคุณ
+update-policy-disabled = การอัปเดตถูกปิดใช้งานโดยองค์กรของคุณ
+update-noUpdatesFound = { -brand-short-name } เป็นรุ่นล่าสุดแล้ว
+aboutdialog-update-checking-failed = ไม่สามารถตรวจหาการอัปเดตได้
+update-otherInstanceHandlingUpdates = { -brand-short-name } กำลังถูกอัปเดตโดยอินสแตนซ์อื่น
+
+## Variables:
+## $displayUrl (String): URL to page with download instructions. Example: www.mozilla.org/firefox/nightly/
+
+aboutdialog-update-manual-with-link = มีการอัปเดตที่ <label data-l10n-name="manual-link">{ $displayUrl }</label>
+settings-update-manual-with-link = มีการอัปเดตที่ <a data-l10n-name="manual-link">{ $displayUrl }</a>
+update-unsupported = คุณไม่สามารถดำเนินการอัปเดตเพิ่มเติมในระบบนี้ได้ <label data-l10n-name="unsupported-link">เรียนรู้เพิ่มเติม</label>
+update-restarting = กำลังเริ่มการทำงานใหม่…
+update-internal-error2 = ไม่สามารถตรวจสอบการอัพเดตได้เนื่องจากมีข้อผิดพลาดภายใน การอัพเดตมีอยู่ที่ <label data-l10n-name="manual-link">{ $displayUrl }</label>
+
+##
+
+# Variables:
+# $channel (String): description of the update channel (e.g. "release", "beta", "nightly" etc.)
+aboutdialog-channel-description = คุณกำลังอยู่บนช่องทางการอัปเดต <label data-l10n-name="current-channel">{ $channel }</label>
+warningDesc-version = { -brand-short-name } เป็นรุ่นทดลองและอาจไม่เสถียร
+aboutdialog-help-user = ความช่วยเหลือของ { -brand-product-name }
+aboutdialog-submit-feedback = ส่งข้อคิดเห็น
+community-exp = <label data-l10n-name="community-exp-mozillaLink">{ -vendor-short-name }</label> คือ <label data-l10n-name="community-exp-creditsLink">ชุมชนระดับโลก</label> ที่ทำงานร่วมกันเพื่อทำให้เว็บเปิดกว้าง เป็นของสาธารณะ และเข้าถึงได้ทุกคน
+community-2 = { -brand-short-name } ได้รับการออกแบบโดย <label data-l10n-name="community-mozillaLink">{ -vendor-short-name }</label> ซึ่งเป็น <label data-l10n-name="community-creditsLink">ชุมชนระดับโลก</label> ที่ทำงานร่วมกันเพื่อทำให้เว็บเปิดกว้าง เป็นของสาธารณะ และเข้าถึงได้ทุกคน
+helpus = ต้องการที่จะช่วย? <label data-l10n-name="helpus-donateLink">ทำการบริจาค</label> หรือ <label data-l10n-name="helpus-getInvolvedLink">มีส่วนร่วม!</label>
+bottomLinks-license = ข้อมูลสัญญาอนุญาต
+bottomLinks-rights = สิทธิผู้ใช้
+bottomLinks-privacy = นโยบายความเป็นส่วนตัว
+# Example of resulting string: 66.0.1 (64-bit)
+# Variables:
+# $version (String): version of Firefox, e.g. 66.0.1
+# $bits (Number): bits of the architecture (32 or 64)
+aboutDialog-version = { $version } ({ $bits } บิต)
+# Example of resulting string: 66.0a1 (2019-01-16) (64-bit)
+# Variables:
+# $version (String): version of Firefox for Nightly builds, e.g. 66.0a1
+# $isodate (String): date in ISO format, e.g. 2019-01-16
+# $bits (Number): bits of the architecture (32 or 64)
+aboutDialog-version-nightly = { $version } ({ $isodate }) ({ $bits } บิต)
diff --git a/l10n-th/browser/browser/aboutLogins.ftl b/l10n-th/browser/browser/aboutLogins.ftl
new file mode 100644
index 0000000000..d55bcfdb91
--- /dev/null
+++ b/l10n-th/browser/browser/aboutLogins.ftl
@@ -0,0 +1,469 @@
+# 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/.
+# NOTE: New strings should use the about-logins- prefix.
+
+about-logins-page-title = การเข้าสู่ระบบและรหัสผ่าน
+about-logins-login-filter =
+ .placeholder = ค้นหาการเข้าสู่ระบบ
+ .key = F
+create-new-login-button =
+ .title = สร้างการเข้าสู่ระบบใหม่
+about-logins-page-title-name = รหัสผ่าน
+about-logins-login-filter2 =
+ .placeholder = ค้นหารหัสผ่าน
+ .key = F
+create-login-button =
+ .title = เพิ่มรหัสผ่าน
+fxaccounts-sign-in-text = รับรหัสผ่านของคุณบนอุปกรณ์อื่น ๆ ของคุณ
+fxaccounts-sign-in-sync-button = ลงชื่อเข้าใช้เพื่อซิงค์
+fxaccounts-avatar-button =
+ .title = จัดการบัญชี
+
+## The ⋯ menu that is in the top corner of the page
+
+menu =
+ .title = เปิดเมนู
+# This menuitem is only visible on Windows and macOS
+about-logins-menu-menuitem-import-from-another-browser = นำเข้าจากเบราว์เซอร์อื่น…
+about-logins-menu-menuitem-import-from-a-file = นำเข้าจากไฟล์…
+about-logins-menu-menuitem-export-logins = ส่งออกการเข้าสู่ระบบ…
+about-logins-menu-menuitem-remove-all-logins = ลบการเข้าสู่ระบบทั้งหมด…
+about-logins-menu-menuitem-export-logins2 = ส่งออกรหัสผ่าน…
+about-logins-menu-menuitem-remove-all-logins2 = ลบรหัสผ่านทั้งหมด…
+menu-menuitem-preferences =
+ { PLATFORM() ->
+ [windows] ตัวเลือก
+ *[other] การกำหนดลักษณะ
+ }
+about-logins-menu-menuitem-help = ช่วยเหลือ
+
+## Login List
+
+login-list =
+ .aria-label = การเข้าสู่ระบบที่ตรงกับคำค้น
+# Variables
+# $count (number) - Number of logins
+login-list-count =
+ { $count ->
+ *[other] { $count } การเข้าสู่ระบบ
+ }
+# Variables
+# $count (number) - Number of filtered logins
+# $total (number) - Total number of logins
+login-list-filtered-count =
+ { $total ->
+ [one] { $count } จาก { $total } การเข้าสู่ระบบ
+ *[other] { $count } จาก { $total } การเข้าสู่ระบบ
+ }
+# Variables
+# $count (number) - Number of logins
+login-list-count2 = { $count } รหัสผ่าน
+# Variables
+# $count (number) - Number of filtered logins
+# $total (number) - Total number of logins
+login-list-filtered-count2 = { $count } จาก { $total } รหัสผ่าน
+login-list-sort-label-text = เรียงลำดับตาม:
+login-list-name-option = ชื่อตามตัวอักษร
+login-list-name-reverse-option = ชื่อ (Z-A)
+login-list-username-option = ชื่อผู้ใช้ (ก-ฮ)
+login-list-username-reverse-option = ชื่อผู้ใช้ (ฮ-ก)
+about-logins-login-list-alerts-option = การแจ้งเตือน
+login-list-last-changed-option = วันที่เปลี่ยนแปลงล่าสุด
+login-list-last-used-option = วันที่ใช้ครั้งล่าสุด
+login-list-intro-title = ไม่พบการเข้าสู่ระบบ
+login-list-intro-title2 = ไม่มีรหัสผ่านที่บันทึกไว้
+login-list-intro-description = เมื่อคุณบันทึกรหัสผ่านใน { -brand-product-name } รหัสผ่านจะปรากฏขึ้นที่นี่
+about-logins-login-list-empty-search-title = ไม่พบการเข้าสู่ระบบ
+about-logins-login-list-empty-search-title2 = ไม่พบรหัสผ่าน
+about-logins-login-list-empty-search-description = ไม่มีผลลัพธ์ที่ตรงกับการค้นหาของคุณ
+login-list-item-title-new-login = การเข้าสู่ระบบใหม่
+login-list-item-subtitle-new-login = ป้อนข้อมูลรับรองการเข้าสู่ระบบของคุณ
+login-list-item-title-new-login2 = เพิ่มรหัสผ่าน
+login-list-item-subtitle-missing-username = (ไม่มีชื่อผู้ใช้)
+about-logins-list-item-breach-icon =
+ .title = เว็บไซต์ที่มีการรั่วไหล
+about-logins-list-item-vulnerable-password-icon =
+ .title = รหัสผ่านที่อ่อนแอ
+about-logins-list-section-breach = เว็บไซต์ที่มีการรั่วไหล
+about-logins-list-section-vulnerable = รหัสผ่านที่อ่อนแอ
+about-logins-list-section-nothing = ไม่มีการเตือน
+about-logins-list-section-today = วันนี้
+about-logins-list-section-yesterday = เมื่อวานนี้
+about-logins-list-section-week = 7 วันที่ผ่านมา
+
+## Introduction screen
+
+about-logins-login-intro-heading-logged-out2 = กำลังมองหาการเข้าสู่ระบบที่คุณบันทึกไว้ใช่หรือไม่? เปิดการซิงค์หรือนำเข้า
+about-logins-login-intro-heading-logged-in = ไม่พบการเข้าสู่ระบบที่ซิงค์
+login-intro-description = หากคุณบันทึกการเข้าสู่ระบบของคุณไว้ที่ { -brand-product-name } บนอุปกรณ์อื่น ๆ คุณสามารถนำมาใช้บนอุปกรณ์นี้ได้ด้วยวิธีนี้:
+login-intro-instructions-fxa = สร้างหรือลงชื่อเข้า { -fxaccount-brand-name } ของคุณบนอุปกรณ์ที่บันทึกการเข้าสู่ระบบของคุณ
+about-logins-login-intro-heading-message = บันทึกรหัสผ่านของคุณไว้ในที่ปลอดภัย
+login-intro-description2 = รหัสผ่านทั้งหมดที่คุณบันทึกใน { -brand-product-name } จะถูกเข้ารหัส นอกจากนั้น เราจะคอยเฝ้าระวังการรั่วไหลและแจ้งเตือนคุณหากคุณได้รับผลกระทบ <a data-l10n-name="breach-alert-link">เรียนรู้เพิ่มเติม</a>
+login-intro-instructions-fxa2 = สร้างหรือลงชื่อเข้าใช้บัญชีของคุณบนอุปกรณ์ที่บันทึกการเข้าสู่ระบบของคุณ
+login-intro-instructions-fxa-settings = ไปที่ การตั้งค่า > Sync > เปิดการซิงค์… แล้วเลือกกล่องกาเครื่องหมาย การเข้าสู่ระบบและรหัสผ่าน
+login-intro-instructions-fxa-passwords-help = ไปที่<a data-l10n-name="passwords-help-link">การช่วยเหลือรหัสผ่าน</a>สำหรับความช่วยเหลือเพิ่มเติม
+about-logins-intro-browser-only-import = หากการเข้าสู่ระบบของคุณถูกบันทึกไว้ในเบราว์เซอร์อื่น คุณสามารถ<a data-l10n-name="import-link">นำเข้าข้อมูลเหล่านี้ใน { -brand-product-name }</a> ได้
+about-logins-intro-import2 = หากการเข้าสู่ระบบของคุณถูกบันทึกไว้ภายนอก { -brand-product-name } คุณสามารถ<a data-l10n-name="import-browser-link">นำเข้าจากเบราว์เซอร์อื่น</a>หรือ<a data-l10n-name="import-file-link">จากไฟล์</a>ได้
+about-logins-intro-import3 = เลือกปุ่มเครื่องหมายบวกด้านบนเพื่อเพิ่มรหัสผ่านตอนนี้ คุณยังสามารถ<a data-l10n-name="import-browser-link">นำเข้ารหัสผ่านจากเบราว์เซอร์อื่น</a>หรือ<a data-l10n-name="import-file-link">จากไฟล์</a>ได้
+
+## Login
+
+login-item-new-login-title = สร้างการเข้าสู่ระบบใหม่
+# Header for adding a password
+about-logins-login-item-new-login-title = เพิ่มรหัสผ่าน
+login-item-edit-button = แก้ไข
+about-logins-login-item-remove-button = ลบ
+login-item-origin-label = ที่อยู่เว็บไซต์
+login-item-tooltip-message = ตรวจสอบให้แน่ใจว่าตรงกับที่อยู่ของเว็บไซต์ที่คุณเข้าสู่ระบบ
+about-logins-origin-tooltip2 = ป้อนที่อยู่แบบเต็มและตรวจสอบให้แน่ใจว่าที่อยู่นั้นตรงกันทุกประการกับที่อยู่ที่คุณใช้ลงชื่อเข้า
+# Variables
+# $webTitle (String) - Website title of the password being changed.
+about-logins-edit-password-tooltip = ตรวจสอบให้แน่ใจว่าคุณได้บันทึกรหัสผ่านปัจจุบันของคุณสำหรับไซต์นี้ การเปลี่ยนรหัสผ่านที่นี่จะไม่มีผลกับรหัสผ่านใน { $webTitle }
+about-logins-add-password-tooltip = ตรวจสอบให้แน่ใจว่าคุณได้บันทึกรหัสผ่านปัจจุบันของคุณสำหรับไซต์นี้
+login-item-origin =
+ .placeholder = https://www.example.com
+login-item-username-label = ชื่อผู้ใช้
+about-logins-login-item-username =
+ .placeholder = (ไม่มีชื่อผู้ใช้)
+login-item-copy-username-button-text = คัดลอก
+login-item-copied-username-button-text = คัดลอกแล้ว!
+login-item-password-label = รหัสผ่าน
+login-item-password-reveal-checkbox =
+ .aria-label = แสดงรหัสผ่าน
+login-item-copy-password-button-text = คัดลอก
+login-item-copied-password-button-text = คัดลอกแล้ว!
+login-item-save-changes-button = บันทึกการเปลี่ยนแปลง
+about-logins-login-item-save-changes-button = บันทึก
+login-item-save-new-button = บันทึก
+login-item-cancel-button = ยกเลิก
+
+## The date is displayed in a timeline showing the password evolution.
+## A label is displayed under the date to describe the type of change.
+## (e.g. updated, created, etc.)
+
+# Variables
+# $datetime (date) - Event date
+login-item-timeline-point-date = { DATETIME($datetime, day: "numeric", month: "short", year: "numeric") }
+login-item-timeline-action-created = สร้างเมื่อ
+login-item-timeline-action-updated = ปรับปรุงเมื่อ
+login-item-timeline-action-used = ใช้เมื่อ
+
+## OS Authentication dialog
+
+about-logins-os-auth-dialog-caption = { -brand-full-name }
+
+## The macOS strings are preceded by the operating system with "Firefox is trying to "
+## and includes subtitle of "Enter password for the user "xxx" to allow this." These
+## notes are only valid for English. Please test in your respected locale.
+
+# This message can be seen when attempting to edit a login in about:logins on Windows.
+about-logins-edit-login-os-auth-dialog-message-win = หากต้องการแก้ไขการเข้าสู่ระบบของคุณ ให้ป้อนข้อมูลประจำตัวการเข้าสู่ระบบ Windows ของคุณ ซึ่งจะช่วยปกป้องความปลอดภัยให้กับบัญชีต่าง ๆ ของคุณ
+# This message can be seen when attempting to edit a login in about:logins
+# On MacOS, only provide the reason that account verification is needed. Do not put a complete sentence here.
+about-logins-edit-login-os-auth-dialog-message-macosx = แก้ไขการเข้าสู่ระบบที่บันทึกไว้
+# This message can be seen when attempting to edit a login in about:logins on Windows.
+about-logins-edit-login-os-auth-dialog-message2-win = หากต้องการแก้ไขรหัสผ่านของคุณ ให้ป้อนข้อมูลประจำตัวการเข้าสู่ระบบ Windows ของคุณ ซึ่งจะช่วยปกป้องความปลอดภัยให้กับบัญชีต่าง ๆ ของคุณ
+# This message can be seen when attempting to edit a login in about:logins
+# On MacOS, only provide the reason that account verification is needed. Do not put a complete sentence here.
+about-logins-edit-login-os-auth-dialog-message2-macosx = แก้ไขรหัสผ่านที่บันทึกไว้
+# This message can be seen when attempting to reveal a password in about:logins on Windows.
+about-logins-reveal-password-os-auth-dialog-message-win = หากต้องการดูรหัสผ่านของคุณ ให้ป้อนข้อมูลประจำตัวการเข้าสู่ระบบ Windows ของคุณ ซึ่งจะช่วยปกป้องความปลอดภัยให้กับบัญชีต่าง ๆ ของคุณ
+# This message can be seen when attempting to reveal a password in about:logins
+# On MacOS, only provide the reason that account verification is needed. Do not put a complete sentence here.
+about-logins-reveal-password-os-auth-dialog-message-macosx = เผยรหัสผ่านที่บันทึกไว้
+# This message can be seen when attempting to copy a password in about:logins on Windows.
+about-logins-copy-password-os-auth-dialog-message-win = หากต้องการคัดลอกรหัสผ่านของคุณ ให้ป้อนข้อมูลประจำตัวการเข้าสู่ระบบ Windows ของคุณ ซึ่งจะช่วยปกป้องความปลอดภัยให้กับบัญชีต่าง ๆ ของคุณ
+# This message can be seen when attempting to copy a password in about:logins
+# On MacOS, only provide the reason that account verification is needed. Do not put a complete sentence here.
+about-logins-copy-password-os-auth-dialog-message-macosx = คัดลอกรหัสผ่านที่บันทึกไว้
+# This message can be seen when attempting to export a password in about:logins on Windows.
+about-logins-export-password-os-auth-dialog-message-win = หากต้องการส่งออกการเข้าสู่ระบบของคุณ ให้ป้อนข้อมูลประจำตัวการเข้าสู่ระบบ Windows ของคุณ ซึ่งจะช่วยปกป้องความปลอดภัยให้กับบัญชีต่าง ๆ ของคุณ
+# This message can be seen when attempting to export a password in about:logins
+# On MacOS, only provide the reason that account verification is needed. Do not put a complete sentence here.
+about-logins-export-password-os-auth-dialog-message-macosx = ส่งออกการเข้าสู่ระบบและรหัสผ่านที่บันทึกไว้
+# This message can be seen when attempting to export a password in about:logins on Windows.
+about-logins-export-password-os-auth-dialog-message2-win = หากต้องการส่งออกรหัสผ่านของคุณ ให้ป้อนข้อมูลประจำตัวการเข้าสู่ระบบ Windows ของคุณ ซึ่งจะช่วยปกป้องความปลอดภัยให้กับบัญชีต่าง ๆ ของคุณ
+# This message can be seen when attempting to export a password in about:logins
+# On MacOS, only provide the reason that account verification is needed. Do not put a complete sentence here.
+about-logins-export-password-os-auth-dialog-message2-macosx = ส่งออกรหัสผ่านที่บันทึกไว้
+
+## Primary Password notification
+
+about-logins-primary-password-notification-message = โปรดป้อนรหัสผ่านหลักของคุณเพื่อดูการเข้าสู่ระบบและรหัสผ่านที่บันทึกไว้
+master-password-reload-button =
+ .label = เข้าสู่ระบบ
+ .accesskey = ข
+
+## Dialogs
+
+confirmation-dialog-cancel-button = ยกเลิก
+confirmation-dialog-dismiss-button =
+ .title = ยกเลิก
+about-logins-confirm-remove-dialog-title = ลบการเข้าสู่ระบบนี้?
+confirm-delete-dialog-message = การกระทำนี้ไม่สามารถเลิกทำได้
+# Title for modal to confirm the removal of one saved password
+about-logins-confirm-delete-dialog-title = ลบรหัสผ่านหรือไม่?
+# Message for modal to confirm the removal of one saved password
+about-logins-confirm-delete-dialog-message = คุณไม่สามารถยกเลิกการกระทำนี้ได้
+about-logins-confirm-remove-dialog-confirm-button = ลบ
+
+## Variables
+## $count (number) - Number of items
+
+about-logins-confirm-remove-all-dialog-confirm-button-label =
+ { $count ->
+ [1] ลบ
+ *[other] ลบทั้งหมด
+ }
+about-logins-confirm-remove-all-dialog-checkbox-label =
+ { $count ->
+ [1] ใช่ ลบการเข้าสู่ระบบนี้
+ *[other] ใช่ ลบการเข้าสู่ระบบเหล่านี้
+ }
+about-logins-confirm-remove-all-dialog-title =
+ { $count ->
+ *[other] ลบการเข้าสู่ระบบทั้งหมด { $count } รายการหรือไม่?
+ }
+about-logins-confirm-remove-all-dialog-message =
+ { $count ->
+ [1] การดำเนินการนี้จะลบการเข้าสู่ระบบที่คุณบันทึกไว้ใน { -brand-short-name } และการแจ้งเตือนเกี่ยวกับการรั่วไหลใด ๆ ที่ปรากฏที่นี่ออก คุณจะไม่สามารถยกเลิกการดำเนินการนี้ได้
+ *[other] การดำเนินการนี้จะลบการเข้าสู่ระบบที่คุณบันทึกไว้ใน { -brand-short-name } และการแจ้งเตือนเกี่ยวกับการรั่วไหลใด ๆ ที่ปรากฏที่นี่ออก คุณจะไม่สามารถยกเลิกการดำเนินการนี้ได้
+ }
+about-logins-confirm-remove-all-sync-dialog-title =
+ { $count ->
+ *[other] ลบ { $count } การเข้าสู่ระบบออกจากอุปกรณ์ทั้งหมดหรือไม่?
+ }
+about-logins-confirm-remove-all-sync-dialog-message =
+ { $count ->
+ [1] การดำเนินการนี้จะลบการเข้าสู่ระบบที่คุณบันทึกไว้ใน { -brand-short-name } บนอุปกรณ์ทั้งหมดที่ซิงค์กับ{ -fxaccount-brand-name } ของคุณออก และจะเอาการแจ้งเตือนเกี่ยวกับการรั่วไหลที่ปรากฏที่นี่ออกด้วย คุณจะไม่สามารถยกเลิกการดำเนินการนี้ได้
+ *[other] การดำเนินการนี้จะลบการเข้าสู่ระบบที่คุณบันทึกไว้ใน { -brand-short-name } บนอุปกรณ์ทั้งหมดที่ซิงค์กับ{ -fxaccount-brand-name } ของคุณออก และจะเอาการแจ้งเตือนเกี่ยวกับการรั่วไหลที่ปรากฏที่นี่ออกด้วย คุณจะไม่สามารถยกเลิกการดำเนินการนี้ได้
+ }
+about-logins-confirm-remove-all-sync-dialog-message2 =
+ { $count ->
+ [1] การดำเนินการนี้จะลบการเข้าสู่ระบบที่คุณบันทึกไว้ใน { -brand-short-name } บนอุปกรณ์ทั้งหมดที่ซิงค์กับบัญชีของคุณออก การดำเนินการนี้จะเอาการแจ้งเตือนเกี่ยวกับการรั่วไหลที่ปรากฏที่นี่ออกด้วย คุณจะไม่สามารถยกเลิกการดำเนินการนี้ได้
+ *[other] การดำเนินการนี้จะลบการเข้าสู่ระบบทั้งหมดที่คุณบันทึกไว้ใน { -brand-short-name } บนอุปกรณ์ทั้งหมดที่ซิงค์กับบัญชีของคุณออก การดำเนินการนี้จะเอาการแจ้งเตือนเกี่ยวกับการรั่วไหลที่ปรากฏที่นี่ออกด้วย คุณจะไม่สามารถยกเลิกการดำเนินการนี้ได้
+ }
+# Checkbox for modal to confirm the removal of saved passwords
+about-logins-confirm-remove-all-dialog-checkbox-label2 =
+ { $count ->
+ [1] ใช่ ลบรหัสผ่าน
+ *[other] ใช่ ลบรหัสผ่าน
+ }
+# Title for modal to confirm the removal of all saved passwords when user is NOT synced
+about-logins-confirm-remove-all-dialog-title2 =
+ { $count ->
+ [one] ลบ { $count } รหัสผ่านหรือไม่?
+ *[other] ลบทั้งหมด { $count } รหัสผ่านหรือไม่?
+ }
+# Message for modal to confirm the removal of saved passwords when user is NOT synced
+about-logins-confirm-remove-all-dialog-message2 =
+ { $count ->
+ [1] การกระทำนี้จะลบรหัสผ่านที่บันทึกไว้ใน { -brand-short-name } และการแจ้งเตือนการรั่วไหลทั้งหมดออก คุณจะไม่สามารถยกเลิกการกระทำนี้ได้
+ *[other] การกระทำนี้จะลบรหัสผ่านที่บันทึกไว้ใน { -brand-short-name } และการแจ้งเตือนการรั่วไหลทั้งหมดออก คุณจะไม่สามารถยกเลิกการกระทำนี้ได้
+ }
+# Title for modal to confirm the removal of all saved passwords when user IS SYNCED
+about-logins-confirm-remove-all-sync-dialog-title2 =
+ { $count ->
+ [one] ลบ { $count } รหัสผ่านจากทุกอุปกรณ์หรือไม่?
+ *[other] ลบทั้งหมด { $count } รหัสผ่านจากทุกอุปกรณ์หรือไม่?
+ }
+# Message for modal to confirm the removal of saved passwords when user IS synced.
+about-logins-confirm-remove-all-sync-dialog-message3 =
+ { $count ->
+ [1] การกระทำนี้จะลบรหัสผ่านที่บันทึกไว้ใน { -brand-short-name } ในอุปกรณ์ที่ซิงค์ทั้งหมดของคุณออก และจะเอาการแจ้งเตือนการรั่วไหลซึ่งปรากฏที่นี่ออกด้วย คุณจะไม่สามารถยกเลิกการกระทำนี้ได้
+ *[other] การกระทำนี้จะลบรหัสผ่านที่บันทึกไว้ใน { -brand-short-name } ในอุปกรณ์ที่ซิงค์ทั้งหมดของคุณออก และจะเอาการแจ้งเตือนการรั่วไหลซึ่งปรากฏที่นี่ออกด้วย คุณจะไม่สามารถยกเลิกการกระทำนี้ได้
+ }
+
+##
+
+about-logins-confirm-export-dialog-title = ส่งออกการเข้าสู่ระบบและรหัสผ่าน
+about-logins-confirm-export-dialog-message = รหัสผ่านของคุณจะถูกบันทึกเป็นข้อความที่อ่านได้ (เช่น BadP@ssw0rd) ดังนั้นใครก็ตามที่สามารถเปิดไฟล์ที่ส่งออกได้จะสามารถดูได้
+about-logins-confirm-export-dialog-confirm-button = ส่งออก…
+about-logins-confirm-export-dialog-title2 = หมายเหตุเกี่ยวกับการส่งออกรหัสผ่าน
+about-logins-confirm-export-dialog-message2 =
+ เมื่อคุณส่งออก รหัสผ่านของคุณจะถูกบันทึกไว้ในไฟล์ซึ่งจะประกอบด้วยข้อความที่สามารถอ่านได้
+ เมื่อคุณใช้ไฟล์เสร็จแล้ว เราขอแนะนำให้ลบไฟล์นั้นเพื่อให้ผู้อื่นที่ใช้อุปกรณ์นี้ไม่สามารถเห็นรหัสผ่านของคุณได้
+about-logins-confirm-export-dialog-confirm-button2 = ทำการส่งออกต่อไป
+about-logins-alert-import-title = การนำเข้าเสร็จสมบูรณ์
+about-logins-alert-import-message = ดูสรุปการนำเข้าโดยละเอียด
+confirm-discard-changes-dialog-title = ละทิ้งการเปลี่ยนแปลงที่ยังไม่ได้บันทึก?
+confirm-discard-changes-dialog-message = การเปลี่ยนแปลงที่ยังไม่ได้บันทึกทั้งหมดจะสูญหาย
+confirm-discard-changes-dialog-confirm-button = ละทิ้ง
+
+## Breach Alert notification
+
+about-logins-breach-alert-title = การรั่วไหลของเว็บไซต์
+breach-alert-text = รหัสผ่านถูกรั่วไหลหรือถูกขโมยจากเว็บไซต์นี้ตั้งแต่คุณอัปเดตรายละเอียดการเข้าสู่ระบบครั้งล่าสุด เปลี่ยนรหัสผ่านของคุณเพื่อปกป้องบัญชีของคุณ
+about-logins-breach-alert-date = การรั่วไหลนี้เกิดขึ้นเมื่อ { DATETIME($date, day: "numeric", month: "long", year: "numeric") }
+# Variables:
+# $hostname (String) - The hostname of the website associated with the login, e.g. "example.com"
+about-logins-breach-alert-link = ไปยัง { $hostname }
+
+## Vulnerable Password notification
+
+about-logins-vulnerable-alert-title = รหัสผ่านที่อ่อนแอ
+about-logins-vulnerable-alert-text2 = รหัสผ่านนี้ถูกใช้ในบัญชีอื่นที่เป็นไปได้ว่ามีการรั่วไหลของข้อมูล การใช้ข้อมูลประจำตัวซ้ำจะทำให้บัญชีทั้งหมดของคุณมีความเสี่ยง โปรดเปลี่ยนรหัสผ่านนี้
+# Variables:
+# $hostname (String) - The hostname of the website associated with the login, e.g. "example.com"
+about-logins-vulnerable-alert-link = ไปยัง { $hostname }
+about-logins-vulnerable-alert-learn-more-link = เรียนรู้เพิ่มเติม
+
+## Error Messages
+
+# This is an error message that appears when a user attempts to save
+# a new login that is identical to an existing saved login.
+# Variables:
+# $loginTitle (String) - The title of the website associated with the login.
+about-logins-error-message-duplicate-login-with-link = มีรายการสำหรับ { $loginTitle } พร้อมชื่อผู้ใช้นั้นแล้ว <a data-l10n-name="duplicate-link">ต้องการไปยังรายการที่มีอยู่หรือไม่?</a>
+# This is a generic error message.
+about-logins-error-message-default = เกิดข้อผิดพลาดขณะพยายามบันทึกรหัสผ่านนี้
+
+## Login Export Dialog
+
+# Title of the file picker dialog
+about-logins-export-file-picker-title = ส่งออกไฟล์การเข้าสู่ระบบ
+# The default file name shown in the file picker when exporting saved logins.
+# This must end in .csv
+about-logins-export-file-picker-default-filename = logins.csv
+# Title of the file picker dialog
+about-logins-export-file-picker-title2 = ส่งออกรหัสผ่านจาก { -brand-short-name }
+# The default file name shown in the file picker when exporting saved logins.
+# This must end in .csv
+about-logins-export-file-picker-default-filename2 = passwords.csv
+about-logins-export-file-picker-export-button = ส่งออก
+# A description for the .csv file format that may be shown as the file type
+# filter by the operating system.
+about-logins-export-file-picker-csv-filter-title =
+ { PLATFORM() ->
+ [macos] ไฟล์ CSV
+ *[other] ไฟล์ CSV
+ }
+
+## Login Import Dialog
+
+# Title of the file picker dialog
+about-logins-import-file-picker-title = นำเข้าไฟล์การเข้าสู่ระบบ
+# Title of the file picker dialog
+about-logins-import-file-picker-title2 = นำเข้ารหัสผ่านมายัง { -brand-short-name }
+about-logins-import-file-picker-import-button = นำเข้า
+# A description for the .csv file format that may be shown as the file type
+# filter by the operating system.
+about-logins-import-file-picker-csv-filter-title =
+ { PLATFORM() ->
+ [macos] เอกสาร CSV
+ *[other] ไฟล์ CSV
+ }
+# A description for the .tsv file format that may be shown as the file type
+# filter by the operating system. TSV is short for 'tab separated values'.
+about-logins-import-file-picker-tsv-filter-title =
+ { PLATFORM() ->
+ [macos] เอกสาร TSV
+ *[other] ไฟล์ TSV
+ }
+
+##
+## Variables:
+## $count (number) - The number of affected elements
+
+about-logins-import-dialog-title = การนำเข้าเสร็จสมบูรณ์
+about-logins-import-dialog-items-added =
+ { $count ->
+ *[other] <span>เพิ่มการเข้าสู่ระบบใหม่แล้ว:</span> <span data-l10n-name="count">{ $count }</span>
+ }
+about-logins-import-dialog-items-modified =
+ { $count ->
+ *[other] <span>อัปเดตการเข้าสู่ระบบที่มีอยู่แล้ว:</span> <span data-l10n-name="count">{ $count }</span>
+ }
+about-logins-import-dialog-items-no-change =
+ { $count ->
+ *[other] <span>พบการเข้าสู่ระบบที่ซ้ำกัน:</span> <span data-l10n-name="count">{ $count }</span> <span data-l10n-name="meta">(ยังไม่ได้นำเข้า)</span>
+ }
+about-logins-import-dialog-items-added2 =
+ { $count ->
+ *[other] <span>จำนวนรหัสผ่านใหม่ที่เพิ่ม:</span> <span data-l10n-name="count">{ $count }</span>
+ }
+about-logins-import-dialog-items-modified2 =
+ { $count ->
+ *[other] <span>จำนวนรายการที่มีอยู่ที่ถูกอัปเดต:</span> <span data-l10n-name="count">{ $count }</span>
+ }
+about-logins-import-dialog-items-no-change2 =
+ { $count ->
+ *[other] <span>จำนวนรายการที่ซ้ำกันที่พบ:</span> <span data-l10n-name="count">{ $count }</span> <span data-l10n-name="meta">(not imported)</span>
+ }
+about-logins-import-dialog-items-error =
+ { $count ->
+ *[other] <span>ข้อผิดพลาด:</span> <span data-l10n-name="count">{ $count }</span> <span data-l10n-name="meta">(ยังไม่ได้นำเข้า)</span>
+ }
+about-logins-import-dialog-done = เสร็จสิ้น
+about-logins-import-dialog-error-title = ข้อผิดพลาดในการนำเข้า
+about-logins-import-dialog-error-conflicting-values-title = มีค่าขัดแย้งหลายค่าสำหรับการเข้าสู่ระบบครั้งเดียว
+about-logins-import-dialog-error-conflicting-values-description = ตัวอย่างเช่น: หลายชื่อผู้ใช้ รหัสผ่าน URL ฯลฯ สำหรับการเข้าสู่ระบบของผู้ใช้คนเดียว
+about-logins-import-dialog-error-file-format-title = ปัญหารูปแบบไฟล์
+about-logins-import-dialog-error-file-format-description = เฮดเดอร์คอลัมน์ไม่ถูกต้องหรือขาดหายไป ตรวจสอบว่าไฟล์มีคอลัมน์สำหรับชื่อผู้ใช้ รหัสผ่านและ URL
+about-logins-import-dialog-error-file-permission-title = ไม่สามารถอ่านไฟล์
+about-logins-import-dialog-error-file-permission-description = { -brand-short-name } ไม่มีสิทธิ์อ่านไฟล์ ให้ลองเปลี่ยนสิทธิ์ของไฟล์ดู
+about-logins-import-dialog-error-unable-to-read-title = ไม่สามารถแยกวิเคราะห์ไฟล์
+about-logins-import-dialog-error-unable-to-read-description = ตรวจสอบว่าคุณได้เลือกไฟล์ CSV หรือ TSV
+about-logins-import-dialog-error-no-logins-imported = ไม่มีการนำเข้าข้อมูลเข้าสู่ระบบ
+about-logins-import-dialog-error-learn-more = เรียนรู้เพิ่มเติม
+about-logins-import-dialog-error-try-import-again = ลองนำเข้าอีกครั้ง…
+about-logins-import-dialog-error-cancel = ยกเลิก
+about-logins-import-report-title = สรุปการนำเข้า
+about-logins-import-report-description = นำเข้าการเข้าสู่ระบบและรหัสผ่านไปยัง { -brand-short-name } แล้ว
+about-logins-import-report-description2 = นำเข้ารหัสผ่านมายัง { -brand-short-name } แล้ว
+#
+# Variables:
+# $number (number) - The number of the row
+about-logins-import-report-row-index = แถว { $number }
+about-logins-import-report-row-description-no-change = ซ้ำกัน: ตรงกันทุกประการกับการเข้าสู่ระบบที่มีอยู่
+about-logins-import-report-row-description-modified = อัปเดตการเข้าสู่ระบบที่มีอยู่แล้ว
+about-logins-import-report-row-description-added = เพิ่มการเข้าสู่ระบบใหม่แล้ว
+about-logins-import-report-row-description-no-change2 = ซ้ำกัน: ตรงกันทุกประการกับรายการที่มีอยู่
+about-logins-import-report-row-description-modified2 = อัปเดตรายการที่มีอยู่แล้ว
+about-logins-import-report-row-description-added2 = เพิ่มรหัสผ่านใหม่แล้ว
+about-logins-import-report-row-description-error = ข้อผิดพลาด: ฟิลด์หายไป
+
+##
+## Variables:
+## $field (String) - The name of the field from the CSV file for example url, username or password
+
+about-logins-import-report-row-description-error-multiple-values = ข้อผิดพลาด: มีหลายค่าสำหรับ { $field }
+about-logins-import-report-row-description-error-missing-field = ข้อผิดพลาด: { $field } หายไป
+
+##
+## Variables:
+## $count (number) - The number of affected elements
+
+about-logins-import-report-added =
+ { $count ->
+ *[other] <div data-l10n-name="count">{ $count }</div> <div data-l10n-name="details">เพิ่มการเข้าสู่ระบบใหม่แล้ว</div>
+ }
+about-logins-import-report-modified =
+ { $count ->
+ *[other] <div data-l10n-name="count">{ $count }</div> <div data-l10n-name="details">อัปเดตการเข้าสู่ระบบที่มีอยู่แล้ว</div>
+ }
+about-logins-import-report-no-change =
+ { $count ->
+ *[other] <div data-l10n-name="count">{ $count }</div> <div data-l10n-name="details">การเข้าสู่ระบบที่ซ้ำกัน</div> <div data-l10n-name="not-imported">(ไม่ได้นำเข้า)</div>
+ }
+about-logins-import-report-added2 =
+ { $count ->
+ *[other] <div data-l10n-name="count">{ $count }</div> <div data-l10n-name="details">เพิ่มรหัสผ่านใหม่แล้ว</div>
+ }
+about-logins-import-report-modified2 =
+ { $count ->
+ *[other] <div data-l10n-name="count">{ $count }</div> <div data-l10n-name="details">อัปเดตรายการที่มีอยู่แล้ว</div>
+ }
+about-logins-import-report-no-change2 =
+ { $count ->
+ *[other] <div data-l10n-name="count">{ $count }</div> <div data-l10n-name="details">รายการที่ซ้ำกัน</div> <div data-l10n-name="not-imported">(ไม่ได้นำเข้า)</div>
+ }
+about-logins-import-report-error =
+ { $count ->
+ *[other] <div data-l10n-name="count">{ $count }</div> <div data-l10n-name="details">ข้อผิดพลาด</div> <div data-l10n-name="not-imported">(ไม่ได้นำเข้า)</div>
+ }
+
+## Logins import report page
+
+about-logins-import-report-page-title = รายงานสรุปการนำเข้า
diff --git a/l10n-th/browser/browser/aboutPocket.ftl b/l10n-th/browser/browser/aboutPocket.ftl
new file mode 100644
index 0000000000..9c9e2c80e1
--- /dev/null
+++ b/l10n-th/browser/browser/aboutPocket.ftl
@@ -0,0 +1,75 @@
+# 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/.
+
+
+### Pocket button panel strings for about:pocket-saved, about:pocket-signup, and about:pocket-home
+
+
+## about:pocket-saved panel
+
+# Placeholder text for tag input
+pocket-panel-saved-add-tags =
+ .placeholder = เพิ่มแท็ก
+
+pocket-panel-saved-error-generic = เกิดข้อผิดพลาดขณะบันทึกไปยัง { -pocket-brand-name }
+pocket-panel-saved-error-tag-length = แท็กถูกจำกัดไว้ที่ 25 ตัวอักษร
+pocket-panel-saved-error-only-links = สามารถบันทึกได้เฉพาะลิงก์เท่านั้น
+pocket-panel-saved-error-not-saved = หน้าไม่ถูกบันทึก
+pocket-panel-saved-error-no-internet = คุณต้องเชื่อต่อกับอินเทอร์เน็ตเพื่อบันทึกไปยัง { -pocket-brand-name } กรุณาเชื่อมต่ออินเทอร์เน็ตและลองใหม่อีกครั้ง
+pocket-panel-saved-error-remove = เกิดข้อผิดพลาดขณะพยายามลบหน้านี้
+pocket-panel-saved-page-removed = ลบหน้าแล้ว
+pocket-panel-saved-page-saved = บันทึกไปยัง { -pocket-brand-name } แล้ว
+pocket-panel-saved-page-saved-b = บันทึกไปยัง { -pocket-brand-name } แล้ว!
+pocket-panel-saved-processing-remove = กำลังลบหน้า…
+pocket-panel-saved-removed-updated = ลบหน้าออกจากรายการที่บันทึกไว้แล้ว
+pocket-panel-saved-processing-tags = กำลังเพิ่มแท็ก…
+pocket-panel-saved-remove-page = ลบหน้า
+pocket-panel-saved-save-tags = บันทึก
+pocket-panel-saved-saving-tags = กำลังบันทึก…
+pocket-panel-saved-suggested-tags = แท็กที่แนะนำ
+pocket-panel-saved-tags-saved = เพิ่มแท็กแล้ว
+
+# This is displayed above a field where the user can add tags
+pocket-panel-signup-add-tags = เพิ่มแท็ก:
+
+## about:pocket-signup panel
+
+pocket-panel-signup-already-have = เป็นผู้ใช้ { -pocket-brand-name } อยู่แล้ว?
+pocket-panel-signup-learn-more = เรียนรู้เพิ่มเติม
+pocket-panel-signup-login = เข้าสู่ระบบ
+pocket-panel-signup-signup-email = ลงทะเบียนด้วยอีเมล
+pocket-panel-signup-signup-cta = ลงทะเบียน { -pocket-brand-name } ฟรี
+pocket-panel-signup-signup-firefox = ลงทะเบียนด้วย { -brand-product-name }
+pocket-panel-signup-tagline = บันทึกบทความและวิดีโอจาก { -brand-product-name } เพื่อดูใน { -pocket-brand-name } บนอุปกรณ์ต่าง ๆ เวลาไหนก็ได้
+pocket-panel-signup-tagline-story-one = คลิกปุ่ม { -pocket-brand-name } เพื่อบันทึกบทความ วิดีโอ หรือหน้าจาก { -brand-product-name }
+pocket-panel-signup-tagline-story-two = ดูใน { -pocket-brand-name } บนอุปกรณ์ต่าง ๆ เวลาไหนก็ได้
+
+pocket-panel-signup-cta-a-fix = ปุ่มบันทึกของคุณสำหรับอินเทอร์เน็ต
+pocket-panel-signup-cta-b-updated = คลิกปุ่ม { -pocket-brand-name } เพื่อบันทึกบทความ วิดีโอ และลิงก์ ดูรายการที่บันทึกไว้ของคุณบนอุปกรณ์ต่าง ๆ เวลาไหนก็ได้
+pocket-panel-signup-cta-b-short = คลิกปุ่ม { -pocket-brand-name } เพื่อบันทึกบทความ วิดีโอ และลิงก์
+pocket-panel-signup-cta-c-updated = ดูรายการที่บันทึกไว้ของคุณบนอุปกรณ์ต่าง ๆ เวลาไหนก็ได้
+
+## about:pocket-home panel
+
+pocket-panel-home-welcome-back = ยินดีต้อนรับกลับ
+pocket-panel-home-paragraph = คุณสามารถใช้ { -pocket-brand-name } สำรวจและบันทึกหน้าเว็บ บทความ วิดีโอ พอดแคสต์ หรือกลับไปอ่านสิ่งที่คุณกำลังอ่านอยู่ได้
+pocket-panel-home-explore-popular-topics = สำรวจหัวข้อยอดนิยม
+pocket-panel-home-discover-more = ค้นพบเพิ่มเติม
+pocket-panel-home-explore-more = สำรวจ
+
+pocket-panel-home-most-recent-saves = นี่คือรายการที่บันทึกล่าสุดของคุณ:
+pocket-panel-home-most-recent-saves-loading = กำลังโหลดรายการที่บันทึกล่าสุด…
+pocket-panel-home-new-user-cta = คลิกปุ่ม { -pocket-brand-name } เพื่อบันทึกบทความ วิดีโอ และลิงก์
+pocket-panel-home-new-user-message = ดูรายการที่บันทึกล่าสุดของคุณที่นี่
+
+## Pocket panel header component
+
+pocket-panel-header-my-saves = ดูบันทึกของฉัน
+pocket-panel-header-sign-in = ลงชื่อเข้า
+
+## Pocket panel buttons
+
+pocket-panel-button-show-all = แสดงทั้งหมด
+pocket-panel-button-activate = เปิดใช้งาน { -pocket-brand-name } ใน { -brand-product-name }
+pocket-panel-button-remove = เอาออก
diff --git a/l10n-th/browser/browser/aboutPolicies.ftl b/l10n-th/browser/browser/aboutPolicies.ftl
new file mode 100644
index 0000000000..17a069b473
--- /dev/null
+++ b/l10n-th/browser/browser/aboutPolicies.ftl
@@ -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/.
+
+about-policies-title = นโยบายองค์กร
+
+# 'Active' is used to describe the policies that are currently active
+active-policies-tab = ใช้งานอยู่
+errors-tab = ข้อผิดพลาด
+documentation-tab = เอกสารประกอบ
+
+no-specified-policies-message = บริการนโยบายองค์กรใช้งานอยู่แต่ไม่ได้เปิดใช้งานนโยบายใด ๆ
+inactive-message = บริการนโยบายองค์กรไม่ได้ใช้งานอยู่
+
+policy-name = ชื่อนโยบาย
+policy-value = ค่านโยบาย
+policy-errors = ข้อผิดพลาดนโยบาย
diff --git a/l10n-th/browser/browser/aboutPrivateBrowsing.ftl b/l10n-th/browser/browser/aboutPrivateBrowsing.ftl
new file mode 100644
index 0000000000..9452f978bb
--- /dev/null
+++ b/l10n-th/browser/browser/aboutPrivateBrowsing.ftl
@@ -0,0 +1,80 @@
+# 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/.
+
+privatebrowsingpage-open-private-window-label = เปิดหน้าต่างส่วนตัว
+ .accesskey = ส
+about-private-browsing-search-placeholder = ค้นหาเว็บ
+about-private-browsing-info-title = คุณอยู่ในหน้าต่างส่วนตัว
+about-private-browsing-search-btn =
+ .title = ค้นหาเว็บ
+# Variables
+# $engine (String): the name of the user's default search engine
+about-private-browsing-handoff =
+ .title = ค้นหาด้วย { $engine } หรือป้อนที่อยู่
+about-private-browsing-handoff-no-engine =
+ .title = ค้นหาหรือป้อนที่อยู่
+# Variables
+# $engine (String): the name of the user's default search engine
+about-private-browsing-handoff-text = ค้นหาด้วย { $engine } หรือป้อนที่อยู่
+about-private-browsing-handoff-text-no-engine = ค้นหาหรือป้อนที่อยู่
+about-private-browsing-not-private = ขณะนี้คุณไม่ได้อยู่ในหน้าต่างส่วนตัว
+about-private-browsing-info-description-private-window = หน้าต่างส่วนตัว: { -brand-short-name } จะล้างประวัติการค้นหาและการเรียกดูของคุณเมื่อคุณปิดหน้าต่างส่วนตัวทั้งหมด แต่จะไม่สามารถปกปิดตัวตนของคุณได้
+about-private-browsing-info-description-simplified = { -brand-short-name } จะล้างประวัติการค้นหาและการเรียกดูของคุณเมื่อคุณปิดหน้าต่างส่วนตัวทั้งหมด แต่จะไม่สามารถปกปิดตัวตนของคุณได้
+about-private-browsing-learn-more-link = เรียนรู้เพิ่มเติม
+about-private-browsing-hide-activity = ซ่อนกิจกรรมและตำแหน่งที่ตั้งของคุณในทุกที่ที่คุณท่องเว็บ
+about-private-browsing-get-privacy = ปกป้องความเป็นส่วนตัวในทุกที่ที่คุณท่องเว็บ
+about-private-browsing-hide-activity-1 = ซ่อนกิจกรรมการท่องเว็บและตำแหน่งที่ตั้งด้วย { -mozilla-vpn-brand-name } และเชื่อมต่อแบบปลอดภัยในคลิกเดียวแม้ใช้ Wi-Fi สาธารณะ
+about-private-browsing-prominent-cta = เป็นส่วนตัวอยู่เสมอด้วย { -mozilla-vpn-brand-name }
+about-private-browsing-focus-promo-cta = ดาวน์โหลด { -focus-brand-name }
+about-private-browsing-focus-promo-header = ท่องเว็บแบบส่วนตัวขณะเดินทางด้วย { -focus-brand-name }
+about-private-browsing-focus-promo-text = แอปมือถือสำหรับการท่องเว็บแบบส่วนตัวของเราจะล้างประวัติและคุกกี้ของคุณทุกครั้ง
+
+## The following strings will be used for experiments in Fx99 and Fx100
+
+about-private-browsing-focus-promo-header-b = ท่องเว็บแบบส่วนตัวบนโทรศัพท์ของคุณ
+about-private-browsing-focus-promo-text-b = ใช้ { -focus-brand-name } สำหรับการค้นหาส่วนตัวที่คุณไม่ต้องการให้เบราว์เซอร์มือถือหลักของคุณเห็น
+about-private-browsing-focus-promo-header-c = ยกระดับความเป็นส่วนตัวไปอีกขั้นบนมือถือ
+about-private-browsing-focus-promo-text-c = { -focus-brand-name } จะล้างประวัติของคุณทุกครั้งในขณะที่ปิดกั้นโฆษณาและตัวติดตาม
+# This string is the title for the banner for search engine selection
+# in a private window.
+# Variables:
+# $engineName (String) - The engine name that will currently be used for the private window.
+about-private-browsing-search-banner-title = { $engineName } เป็นเครื่องมือค้นหาเริ่มต้นของคุณในหน้าต่างส่วนตัว
+about-private-browsing-search-banner-description =
+ { PLATFORM() ->
+ [windows] หากต้องการเลือกเครื่องมือค้นหาอื่น ให้ไปที่ <a data-l10n-name="link-options">ตัวเลือก</a>
+ *[other] หากต้องการเลือกเครื่องมือค้นหาอื่น ให้ไปที่ <a data-l10n-name="link-options">การกำหนดลักษณะ</a>
+ }
+about-private-browsing-search-banner-close-button =
+ .aria-label = ปิด
+about-private-browsing-promo-close-button =
+ .title = ปิด
+
+## Strings used in a “pin promotion” message, which prompts users to pin a private window
+
+about-private-browsing-pin-promo-header = ท่องเว็บแบบส่วนตัวอย่างเป็นอิสระได้ในคลิกเดียว
+about-private-browsing-pin-promo-link-text =
+ { PLATFORM() ->
+ [macos] เก็บไว้ใน Dock
+ *[other] ปักหมุดที่แถบงาน
+ }
+about-private-browsing-pin-promo-title = ไม่เก็บบันทึกคุกกี้หรือประวัติใดๆ และให้คุณท่องเว็บได้เหมือนไม่มีใครแอบมอง
+
+## Strings used in a promotion message for cookie banner reduction
+
+# Simplified version of the headline if the original text doesn't work
+# in your language: `See fewer cookie requests`.
+about-private-browsing-cookie-banners-promo-header = เอาแบนเนอร์คุกกี้ออกไปให้พ้น!
+about-private-browsing-cookie-banners-promo-button = ลดแบนเนอร์คุกกี้
+about-private-browsing-cookie-banners-promo-message = ให้ { -brand-short-name } ตอบป๊อปอัปคุกกี้ให้คุณโดยอัตโนมัติเพื่อให้คุณท่องเว็บได้โดยปราศจากสิ่งรบกวน { -brand-short-name } จะปฏิเสธคำขอทั้งหมดเมื่อเป็นไปได้
+# Simplified version of the headline if the original text doesn't work
+# in your language: `{ -brand-short-name } will show fewer cookie requests`
+about-private-browsing-cookie-banners-promo-heading = { -brand-short-name } จะดูแลเรื่องแบนเนอร์คุกกี้ให้คุณ
+about-private-browsing-cookie-banners-promo-body = ตอนนี้เราปฏิเสธแบนเนอร์คุกกี้จำนวนมากโดยอัตโนมัติเพื่อให้คุณถูกติดตามได้น้อยลงและกลับไปท่องเว็บโดยปราศจากสิ่งรบกวนได้
+
+## Strings for Felt Privacy v1 experiments in 119
+
+about-private-browsing-felt-privacy-v1-info-header = ไม่ทิ้งร่องรอยใดๆ บนอุปกรณ์นี้
+about-private-browsing-felt-privacy-v1-info-body = { -brand-short-name } จะลบคุกกี้ ประวัติ และข้อมูลไซต์ของคุณเมื่อคุณปิดหน้าต่างส่วนตัวของคุณทั้งหมด
+about-private-browsing-felt-privacy-v1-info-link = ใครสามารถเห็นกิจกรรมของฉันได้บ้าง?
diff --git a/l10n-th/browser/browser/aboutRestartRequired.ftl b/l10n-th/browser/browser/aboutRestartRequired.ftl
new file mode 100644
index 0000000000..105b938533
--- /dev/null
+++ b/l10n-th/browser/browser/aboutRestartRequired.ftl
@@ -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/.
+
+restart-required-title = จำเป็นต้องเริ่มการทำงานใหม่
+restart-required-heading = เริ่มการทำงานใหม่เพื่อใช้ { -brand-short-name } ต่อไป
+restart-required-intro = การอัปเดต { -brand-short-name } ได้เริ่มในเบื้องหลังแล้ว คุณจะต้องเริ่มการทำงานใหม่เพื่อทำการอัปเดตให้เสร็จสมบูรณ์
+window-restoration-info = หน้าต่างและแท็บต่าง ๆ ของคุณจะถูกเรียกคืนอย่างรวดเร็ว แต่หน้าต่างและแท็บส่วนตัวต่าง ๆ จะไม่ถูกเรียกคืน
+
+restart-button-label = เริ่มการทำงาน { -brand-short-name } ใหม่
diff --git a/l10n-th/browser/browser/aboutRobots.ftl b/l10n-th/browser/browser/aboutRobots.ftl
new file mode 100644
index 0000000000..d42c866ea7
--- /dev/null
+++ b/l10n-th/browser/browser/aboutRobots.ftl
@@ -0,0 +1,29 @@
+# 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/.
+
+
+### These strings are used in the about:robots page, which ties in with the
+### robots theme used in the Firefox 3 Beta 2/3 first run pages.
+### They're just meant to be fun and whimsical, with references to some geeky
+### but well-known robots in movies and books. Be creative with translations!
+
+# Nonsense line from the movie "The Day The Earth Stood Still". No translation needed.
+page-title = กอร์ท! คลาตู บาราดา นิคโต!
+# Movie: Logan's Run... Box (cyborg): "Welcome Humans! I am ready for you."
+error-title-text = ยินดีต้อนรับ มนุษย์โลก!
+# Movie: The Day The Earth Stood Still. Spoken by Klaatu.
+error-short-desc-text = เรามาเยี่ยมเยียนท่านด้วยสันติและไมตรี!
+# Various books by Isaac Asimov. http://en.wikipedia.org/wiki/Three_Laws_of_Robotics
+error-long-desc1 = หุ่นยนต์มิอาจกระทำอันตรายต่อมนุษย์ หรือนิ่งเฉยปล่อยให้มนุษย์ตกอยู่ในอันตรายได้
+# Movie: Blade Runner. Batty: "I've seen things you people wouldn’t believe..."
+error-long-desc2 = หุ่นยนต์มองเห็นสิ่งที่พวกท่านอาจจะไม่เชื่อ
+# Book: Hitchhiker’s Guide To The Galaxy. What the Sirius Cybernetics Corporation calls robots.
+error-long-desc3 = หุ่นยนต์เป็นสหายพลาสติกผู้สนุกสนาน
+# TV: Futurama. Bender's first line is "Bite my shiny metal ass."
+error-long-desc4 = หุ่นยนต์มีบั้นท้ายเป็นโลหะมันวาวโปรดอย่ากัดเล่น
+# TV: Battlestar Galactica (2004 series). From the opening text.
+error-trailer-desc-text = และพวกเขาก็มีแผนการ
+# Book: Hitchhiker's Guide To The Galaxy. Arthur presses a button and it warns him.
+error-try-again = ลองอีกครั้ง
+ .label2 = โปรดอย่ากดปุ่มนี้อีก
diff --git a/l10n-th/browser/browser/aboutSessionRestore.ftl b/l10n-th/browser/browser/aboutSessionRestore.ftl
new file mode 100644
index 0000000000..247b8a48d9
--- /dev/null
+++ b/l10n-th/browser/browser/aboutSessionRestore.ftl
@@ -0,0 +1,51 @@
+# 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/.
+
+restore-page-tab-title = เรียกคืนวาระ
+
+# The title is intended to be apologetic and disarming, expressing dismay
+# and regret that we are unable to restore the session for the user
+restore-page-error-title = ขออภัย เรามีปัญหาในการนำหน้าต่าง ๆ ของคุณกลับมา
+restore-page-problem-desc = เรามีปัญหาในการเรียกคืนวาระการเรียกดูครั้งล่าสุดของคุณ ให้เลือก เรียกคืนวาระ เพื่อลองอีกครั้ง
+restore-page-try-this = ยังไม่สามารถเรียกคืนวาระของคุณได้งั้นหรือ? บางครั้งอาจมีบางแท็บที่กำลังก่อให้เกิดปัญหา ดูแท็บก่อนหน้า, เอาเครื่องหมายออกจากแท็บที่คุณไม่ต้องการเรียกคืน แล้วลองเรียกคืนใหม่
+
+restore-page-hide-tabs = ซ่อนแท็บก่อนหน้า
+restore-page-show-tabs = ดูแท็บก่อนหน้า
+
+# When tabs are distributed across multiple windows, this message is used as a
+# header above the group of tabs for each window.
+#
+# Variables:
+# $windowNumber: Progressive number associated to each window
+restore-page-window-label = หน้าต่าง { $windowNumber }
+
+restore-page-restore-header =
+ .label = เรียกคืน
+
+restore-page-list-header =
+ .label = หน้าต่างและแท็บ
+
+restore-page-try-again-button =
+ .label = เรียกคืนวาระ
+ .accesskey = ร
+
+restore-page-close-button =
+ .label = เริ่มวาระใหม่
+ .accesskey = ม
+
+## The following strings are used in about:welcomeback
+
+welcome-back-tab-title = สำเร็จ!
+welcome-back-page-title = สำเร็จ!
+welcome-back-page-info = { -brand-short-name } พร้อมที่จะเริ่ม
+
+welcome-back-restore-button =
+ .label = ไปกันเลย!
+ .accesskey = ป
+
+welcome-back-restore-all-label = เรียกคืนหน้าต่างและแท็บทั้งหมด
+welcome-back-restore-some-label = เรียกคืนเฉพาะที่คุณต้องการ
+
+welcome-back-page-info-link = ส่วนเสริมและการปรับแต่งของคุณถูกเอาออกและการตั้งค่าเบราว์เซอร์ของคุณถูกเรียกคืนเป็นค่าเริ่มต้น หากนี่ไม่แก้ปัญหาของคุณ <a data-l10n-name="link-more">เรียนรู้เพิ่มเกี่ยวกับสิ่งที่คุณสามารถทำได้</a>
+
diff --git a/l10n-th/browser/browser/aboutTabCrashed.ftl b/l10n-th/browser/browser/aboutTabCrashed.ftl
new file mode 100644
index 0000000000..97f35687e0
--- /dev/null
+++ b/l10n-th/browser/browser/aboutTabCrashed.ftl
@@ -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/.
+
+crashed-title = ตัวรายงานข้อขัดข้องแท็บ
+crashed-close-tab-button = ปิดแท็บ
+crashed-restore-tab-button = เรียกคืนแท็บนี้
+crashed-restore-all-button = เรียกคืนแท็บที่ขัดข้องทั้งหมด
+crashed-header = อ้าก แท็บของคุณเพิ่งขัดข้อง
+crashed-offer-help = เราสามารถช่วยได้!
+crashed-single-offer-help-message = เลือก { crashed-restore-tab-button } เพื่อโหลดหน้าใหม่
+crashed-multiple-offer-help-message = เลือก { crashed-restore-tab-button } หรือ { crashed-restore-all-button } เพื่อโหลดหน้าใหม่
+crashed-request-help = คุณจะช่วยเราได้หรือไม่?
+crashed-request-help-message = รายงานข้อขัดข้องช่วยเราวินิจฉัยปัญหาและทำ { -brand-short-name } ให้ดีขึ้น
+crashed-request-report-title = รายงานแท็บนี้
+crashed-send-report-2 = ส่งรายงานข้อขัดข้องอัตโนมัติเพื่อให้เราสามารถแก้ไขปัญหาเช่นนี้ได้
+crashed-comment =
+ .placeholder = ความคิดเห็นเพิ่มเติม (ความคิดเห็นจะปรากฏต่อสาธารณะ)
+crashed-include-URL-2 = รวม URL ของไซต์ที่คุณกำลังเยี่ยมชมเมื่อ { -brand-short-name } ขัดข้อง
+crashed-report-sent = ส่งรายงานข้อขัดข้องแล้ว; ขอบคุณที่ช่วยทำ { -brand-short-name } ให้ดีขึ้น!
+crashed-request-auto-submit-title = รายงานแท็บเบื้องหลัง
+crashed-auto-submit-checkbox-2 = อัปเดตการกำหนดลักษณะเพื่อให้ส่งรายงานโดยอัตโนมัติเมื่อ { -brand-short-name } ขัดข้อง
diff --git a/l10n-th/browser/browser/aboutUnloads.ftl b/l10n-th/browser/browser/aboutUnloads.ftl
new file mode 100644
index 0000000000..dad5a309f2
--- /dev/null
+++ b/l10n-th/browser/browser/aboutUnloads.ftl
@@ -0,0 +1,44 @@
+# 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/.
+
+
+### Strings used in about:unloads, allowing users to manage the "tab unloading"
+### feature.
+
+about-unloads-page-title = การเลิกโหลดแท็บ
+about-unloads-intro =
+ { -brand-short-name } มีคุณลักษณะที่สามารถเลิกโหลดแท็บโดยอัตโนมัติ
+ เพื่อไม่ให้แอปพลิเคชันขัดข้องเมื่อหน่วยความจำที่พร้อมใช้งานของระบบไม่เพียงพอ
+ แอปพลิเคชันจะเลือกแท็บถัดไปที่จะเลิกโหลดตามแอตทริบิวต์หลายอย่าง
+ หน้านี้แสดงวิธีที่ { -brand-short-name } จัดลำดับความสำคัญของแท็บต่าง ๆ
+ และแท็บที่จะเลิกโหลดเมื่อมีการทริกเกอร์การเลิกโหลดแท็บ คุณสามารถทริกเกอร์
+ การเลิกโหลดแท็บได้ด้วยตนเองโดยคลิกปุ่ม <em>เลิกโหลด</em> ด้านล่าง
+
+# The link points to a Firefox documentation page, only available in English,
+# with title "Tab Unloading"
+about-unloads-learn-more =
+ ดูที่ <a data-l10n-name="doc-link">Tab Unloading</a> เพื่อเรียนรู้เพิ่มเติม
+ เกี่ยวกับคุณลักษณะและหน้านี้
+
+about-unloads-last-updated = วันที่อัปเดตล่าสุด: { DATETIME($date, year: "numeric", month: "numeric", day: "numeric", hour: "numeric", minute: "numeric", second: "numeric", hour12: "false") }
+about-unloads-button-unload = เลิกโหลด
+ .title = เลิกโหลดแท็บที่มีลำดับความสำคัญสูงที่สุด
+about-unloads-no-unloadable-tab = ไม่มีแท็บที่สามารถเลิกโหลดได้
+
+about-unloads-column-priority = ความสำคัญ
+about-unloads-column-host = โฮสต์
+about-unloads-column-last-accessed = เข้าถึงล่าสุด
+about-unloads-column-weight = น้ำหนักฐาน
+ .title = แท็บจะถูกเรียงลำดับตามค่านี้ก่อน ซึ่งมาจากแอตทริบิวต์พิเศษบางอย่าง เช่น การเล่นเสียง, WebRTC, และอื่น ๆ
+about-unloads-column-sortweight = น้ำหนักรอง
+ .title = หากพร้อมใช้งาน แท็บจะถูกเรียงลำดับตามค่านี้หลังจากที่เรียงลำดับตามน้ำหนักฐานแล้ว ค่านี้มาจากการใช้หน่วยความจำของแท็บและจำนวนกระบวนการ
+about-unloads-column-memory = หน่วยความจำ
+ .title = การใช้หน่วยความจำโดยประมาณของแท็บ
+about-unloads-column-processes = ID โปรเซส
+ .title = ID ของโปรเซสที่โฮสต์เนื้อหาของแท็บ
+
+about-unloads-last-accessed = { DATETIME($date, year: "numeric", month: "numeric", day: "numeric", hour: "numeric", minute: "numeric", second: "numeric", hour12: "false") }
+about-unloads-memory-in-mb = { NUMBER($mem, maxFractionalUnits: 2) } MB
+about-unloads-memory-in-mb-tooltip =
+ .title = { NUMBER($mem, maxFractionalUnits: 2) } MB
diff --git a/l10n-th/browser/browser/accounts.ftl b/l10n-th/browser/browser/accounts.ftl
new file mode 100644
index 0000000000..8b1a002b76
--- /dev/null
+++ b/l10n-th/browser/browser/accounts.ftl
@@ -0,0 +1,94 @@
+# 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/.
+
+# Used as the FxA toolbar menu item value when user has not
+# finished setting up an account.
+account-finish-account-setup = เสร็จสิ้นการตั้งค่าบัญชี
+
+# Used as the FxA toolbar menu item title when the user
+# needs to reconnect their account.
+account-disconnected2 = ตัดการเชื่อมต่อบัญชีแล้ว
+
+# Menu item that sends a tab to all synced devices.
+account-send-to-all-devices = ส่งไปยังอุปกรณ์ทั้งหมด
+
+# Menu item that links to the Firefox Accounts settings for connected devices.
+account-manage-devices = จัดการอุปกรณ์…
+
+## Variables:
+## $email (String): = Email address of user's Firefox Account.
+
+account-reconnect = เชื่อมต่อ { $email } ใหม่
+account-verify = ยืนยัน { $email }
+
+## Displayed in the Send Tab/Page/Link to Device context menu when right clicking a tab, a page or a link.
+
+account-send-to-all-devices-titlecase = ส่งไปยังอุปกรณ์ทั้งหมด
+account-manage-devices-titlecase = จัดการอุปกรณ์…
+
+## Displayed in the Send Tabs context menu when right clicking a tab, a page or a link
+## and the account has only 1 device connected.
+
+# Redirects to a marketing page.
+account-send-tab-to-device-singledevice-status = ไม่มีอุปกรณ์ที่เชื่อมต่อ
+
+# Redirects to a marketing page.
+account-send-tab-to-device-singledevice-learnmore = เรียนรู้เกี่ยวกับการส่งแท็บ…
+
+# Redirects to an FxAccounts page that tells to you to connect another device.
+account-send-tab-to-device-connectdevice = เชื่อมต่ออุปกรณ์อื่น…
+
+## Displayed in the Send Tabs context menu when right clicking a tab, a page or a link
+## and the Sync account is unverified. Redirects to the Sync preferences page.
+
+account-send-tab-to-device-verify-status = บัญชีไม่ได้รับการยืนยัน
+account-send-tab-to-device-verify = ยืนยันบัญชีของคุณ…
+
+## These strings are used in a notification shown when a new device joins the Firefox account.
+
+# The title shown in a notification when either this device or another device
+# has connected to, or disconnected from, a Firefox account.
+account-connection-title = { -fxaccount-brand-name(capitalization: "title") }
+
+# Variables:
+# $deviceName (String): the name of the new device
+account-connection-connected-with = คอมพิวเตอร์นี้เชื่อมต่อกับ { $deviceName } แล้ว
+
+# Used when the name of the new device is not known.
+account-connection-connected-with-noname = คอมพิวเตอร์นี้เชื่อมต่อกับอุปกรณ์ใหม่แล้ว
+
+# Used in a notification shown after a Firefox account is connected to the current device.
+account-connection-connected = คุณได้ลงชื่อเข้าเรียบร้อยแล้ว
+
+# Used in a notification shown after the Firefox account was disconnected remotely.
+account-connection-disconnected = ตัดการเชื่อมต่อคอมพิวเตอร์นี้แล้ว
+
+## These strings are used in a notification shown when we're opening
+## a single tab another device sent us to display.
+## The body for this notification is the URL of the received tab.
+
+account-single-tab-arriving-title = ได้รับแท็บ
+# Variables:
+# $deviceName (String): the device name.
+account-single-tab-arriving-from-device-title = แท็บจาก { $deviceName }
+
+# Used when a tab from a remote device arrives but the URL must be truncated.
+# Should display the URL with an indication that it's been truncated.
+# Variables:
+# $url (String): the portion of the URL that remains after truncation.
+account-single-tab-arriving-truncated-url = { $url }…
+
+## These strings are used in a notification shown when we're opening
+## multiple tabs another device or devices sent us to display.
+## Variables:
+## $tabCount (Number): the number of tabs received
+
+account-multiple-tabs-arriving-title = ได้รับแท็บ
+
+# Variables:
+# $deviceName (String): the device name.
+account-multiple-tabs-arriving-from-single-device = มี { $tabCount } แท็บเข้ามาจาก { $deviceName }
+account-multiple-tabs-arriving-from-multiple-devices = มี { $tabCount } แท็บเข้ามาจากอุปกรณ์ที่เชื่อมต่อของคุณ
+# This version is used when we don't know any device names.
+account-multiple-tabs-arriving-from-unknown-device = มี { $tabCount } แท็บเข้ามา
diff --git a/l10n-th/browser/browser/addonNotifications.ftl b/l10n-th/browser/browser/addonNotifications.ftl
new file mode 100644
index 0000000000..33c27fa388
--- /dev/null
+++ b/l10n-th/browser/browser/addonNotifications.ftl
@@ -0,0 +1,114 @@
+# 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/.
+
+xpinstall-prompt = { -brand-short-name } ได้ป้องกันไม่ให้ไซต์นี้ขอคุณเพื่อติดตั้งซอฟต์แวร์ลงในคอมพิวเตอร์ของคุณ
+
+## Variables:
+## $host (String): The hostname of the site the add-on is being installed from.
+
+xpinstall-prompt-header = อนุญาตให้ { $host } ติดตั้งส่วนเสริมหรือไม่?
+xpinstall-prompt-message = คุณกำลังพยายามติดตั้งส่วนเสริมจาก { $host } ตรวจสอบให้แน่ใจว่าคุณเชื่อถือไซต์นี้ก่อนดำเนินการต่อ
+
+##
+
+xpinstall-prompt-header-unknown = อนุญาตให้ไซต์ที่ไม่รู้จักติดตั้งส่วนเสริม?
+xpinstall-prompt-message-unknown = คุณกำลังพยายามติดตั้งส่วนเสริมจากไซต์ที่ไม่รู้จัก ตรวจสอบให้แน่ใจว่าคุณเชื่อถือไซต์นี้ก่อนดำเนินการต่อ
+xpinstall-prompt-dont-allow =
+ .label = ไม่อนุญาต
+ .accesskey = ไ
+xpinstall-prompt-never-allow =
+ .label = ไม่อนุญาตเสมอ
+ .accesskey = ม
+# Long text in this context make the dropdown menu extend awkwardly to the left,
+# avoid a localization that's significantly longer than the English version.
+xpinstall-prompt-never-allow-and-report =
+ .label = รายงานไซต์ที่น่าสงสัย
+ .accesskey = ร
+# Accessibility Note:
+# Be sure you do not choose an accesskey that is used elsewhere in the active context (e.g. main menu bar, submenu of the warning popup button)
+# See https://website-archive.mozilla.org/www.mozilla.org/access/access/keyboard/ for details
+xpinstall-prompt-install =
+ .label = ดำเนินการติดตั้งต่อไป
+ .accesskey = ด
+
+# These messages are shown when a website invokes navigator.requestMIDIAccess.
+
+site-permission-install-first-prompt-midi-header = ไซต์นี้กำลังขอเข้าถึงอุปกรณ์ MIDI (Musical Instrument Digital Interface) ของคุณ ซึ่งสามารถเปิดการเข้าถึงอุปกรณ์ได้ด้วยการติดตั้งส่วนเสริม
+site-permission-install-first-prompt-midi-message = ไม่รับประกันว่าการเข้าถึงนี้จะปลอดภัย ให้ดำเนินการต่อหากคุณไว้ใจไซต์นี้เท่านั้น
+
+##
+
+xpinstall-disabled-locked = การติดตั้งซอฟต์แวร์ถูกปิดใช้งานโดยผู้ดูแลระบบของคุณ
+xpinstall-disabled = การติดตั้งซอฟต์แวร์ถูกปิดใช้งานอยู่ในขณะนี้ คลิก เปิดใช้งาน แล้วลองอีกครั้ง
+xpinstall-disabled-button =
+ .label = เปิดใช้งาน
+ .accesskey = ป
+# This message is shown when the installation of an add-on is blocked by enterprise policy.
+# Variables:
+# $addonName (String): the name of the add-on.
+# $addonId (String): the ID of add-on.
+addon-install-blocked-by-policy = { $addonName } ({ $addonId }) ถูกปิดกั้นโดยผู้ดูแลระบบของคุณ
+# This message is shown when the installation of add-ons from a domain is blocked by enterprise policy.
+addon-domain-blocked-by-policy = ผู้ดูแลระบบของคุณได้ป้องกันไม่ให้ไซต์นี้ขอคุณเพื่อติดตั้งซอฟต์แวร์ลงในคอมพิวเตอร์ของคุณ
+addon-install-full-screen-blocked = ไม่อนุญาตให้ติดตั้งส่วนเสริมขณะอยู่ในหรือก่อนเข้าสู่โหมดเต็มหน้าจอ
+# Variables:
+# $addonName (String): the localized name of the sideloaded add-on.
+webext-perms-sideload-menu-item = เพิ่ม { $addonName } ลงใน { -brand-short-name } แล้ว
+# Variables:
+# $addonName (String): the localized name of the extension which has been updated.
+webext-perms-update-menu-item = { $addonName } ต้องการสิทธิอนุญาตใหม่
+# This message is shown when one or more extensions have been imported from a
+# different browser into Firefox, and the user needs to complete the import to
+# start these extensions. This message is shown in the appmenu.
+webext-imported-addons = เสร็จสิ้นการติดตั้งส่วนขยายที่นำเข้าไปยัง { -brand-short-name }
+
+## Add-on removal warning
+
+# Variables:
+# $name (String): The name of the add-on that will be removed.
+addon-removal-title = ต้องการเอา { $name } ออกหรือไม่?
+# Variables:
+# $name (String): the name of the extension which is about to be removed.
+addon-removal-message = เอา { $name } ออกจาก { -brand-shorter-name }?
+addon-removal-button = เอาออก
+addon-removal-abuse-report-checkbox = รายงานส่วนขยายนี้ไปยัง { -vendor-short-name }
+# Variables:
+# $addonCount (Number): the number of add-ons being downloaded
+addon-downloading-and-verifying = กำลังดาวน์โหลดและยืนยัน { $addonCount } ส่วนเสริม…
+addon-download-verifying = กำลังยืนยัน
+addon-install-cancel-button =
+ .label = ยกเลิก
+ .accesskey = ย
+addon-install-accept-button =
+ .label = เพิ่ม
+ .accesskey = พ
+
+## Variables:
+## $addonCount (Number): the number of add-ons being installed
+
+addon-confirm-install-message = ไซต์นี้ต้องการติดตั้ง { $addonCount } ส่วนเสริมใน { -brand-short-name }:
+addon-confirm-install-unsigned-message = ข้อควรระวัง: ไซต์นี้ต้องการติดตั้ง { $addonCount } ส่วนเสริมที่ไม่ได้รับการยืนยันใน { -brand-short-name } ดำเนินการต่อโดยรับความเสี่ยงของคุณเอง
+# Variables:
+# $addonCount (Number): the number of add-ons being installed (at least 2)
+addon-confirm-install-some-unsigned-message = ข้อควรระวัง: ไซต์นี้ต้องการติดตั้ง { $addonCount } ส่วนเสริมใน { -brand-short-name } บางส่วนไม่ได้รับการยืนยัน ดำเนินการต่อโดยรับความเสี่ยงของคุณเอง
+
+## Add-on install errors
+## Variables:
+## $addonName (String): the add-on name.
+
+addon-install-error-network-failure = ไม่สามารถดาวน์โหลดส่วนเสริมเนื่องจากการเชื่อมต่อล้มเหลว
+addon-install-error-incorrect-hash = ไม่สามารถติดตั้งส่วนเสริมเนื่องจากไม่ตรงกับส่วนเสริมที่ { -brand-short-name } ต้องการ
+addon-install-error-corrupt-file = ไม่สามารถติดตั้งส่วนเสริมที่ดาวน์โหลดจากไซต์นี้เนื่องจากส่วนเสริมดูเหมือนจะเสียหาย
+addon-install-error-file-access = ไม่สามารถติดตั้ง { $addonName } เนื่องจาก { -brand-short-name } ไม่สามารถแก้ไขไฟล์ที่จำเป็น
+addon-install-error-not-signed = { -brand-short-name } ได้ป้องกันไม่ให้ไซต์นี้ติดตั้งส่วนเสริมที่ไม่ได้รับการยืนยัน
+addon-install-error-invalid-domain = ไม่สามารถติดตั้งส่วนเสริม { $addonName } จากตำแหน่งที่ตั้งนี้ได้
+addon-local-install-error-network-failure = ไม่สามารถติดตั้งส่วนเสริมนี้เนื่องจากข้อผิดพลาดระบบไฟล์
+addon-local-install-error-incorrect-hash = ไม่สามารถติดตั้งส่วนเสริมนี้เนื่องจากไม่ตรงกับส่วนเสริมที่ { -brand-short-name } ต้องการ
+addon-local-install-error-corrupt-file = ไม่สามารถติดตั้งส่วนเสริมนี้เนื่องจากส่วนเสริมดูเหมือนจะเสียหาย
+addon-local-install-error-file-access = ไม่สามารถติดตั้ง { $addonName } เนื่องจาก { -brand-short-name } ไม่สามารถแก้ไขไฟล์ที่จำเป็น
+addon-local-install-error-not-signed = ไม่สามารถติดตั้งส่วนเสริมนี้เนื่องจากส่วนเสริมไม่ได้รับการยืนยัน
+# Variables:
+# $appVersion (String): the application version.
+addon-install-error-incompatible = ไม่สามารถติดตั้ง { $addonName } เนื่องจากใช้ร่วมกับ { -brand-short-name } { $appVersion } ไม่ได้
+addon-install-error-blocklisted = ไม่สามารถติดตั้ง { $addonName } เนื่องจากมีความเสี่ยงสูงที่จะก่อให้เกิดปัญหาด้านเสถียรภาพหรือความปลอดภัย
diff --git a/l10n-th/browser/browser/allTabsMenu.ftl b/l10n-th/browser/browser/allTabsMenu.ftl
new file mode 100644
index 0000000000..7095d7c3a5
--- /dev/null
+++ b/l10n-th/browser/browser/allTabsMenu.ftl
@@ -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/.
+
+# "Search" is a verb, as in "Search through tabs".
+all-tabs-menu-search-tabs =
+ .label = ค้นหาแท็บ
+
+all-tabs-menu-new-user-context =
+ .label = แท็บแยกข้อมูลใหม่
+
+all-tabs-menu-hidden-tabs =
+ .label = แท็บที่ซ่อนอยู่
+
+all-tabs-menu-manage-user-context =
+ .label = จัดการการแยกข้อมูล
+ .accesskey = จ
diff --git a/l10n-th/browser/browser/appExtensionFields.ftl b/l10n-th/browser/browser/appExtensionFields.ftl
new file mode 100644
index 0000000000..dfa1c89971
--- /dev/null
+++ b/l10n-th/browser/browser/appExtensionFields.ftl
@@ -0,0 +1,28 @@
+# 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/.
+
+
+## Theme names and descriptions used in the Themes panel in about:addons
+
+# "Auto" is short for automatic. It can be localized without limitations.
+extension-default-theme-name-auto = ชุดรูปแบบของระบบ — อัตโนมัติ
+extension-default-theme-description = ใช้การตั้งค่าสำหรับปุ่ม เมนู และหน้าต่าง ตามระบบปฏิบัติการ
+extension-firefox-compact-light-name = สว่าง
+extension-firefox-compact-light-description = ชุดรูปแบบที่มีแบบแผนชุดสีสว่าง
+extension-firefox-compact-dark-name = มืด
+extension-firefox-compact-dark-description = ชุดรูปแบบที่มีแบบแผนชุดสีมืด
+extension-firefox-alpenglow-name = Firefox Alpenglow
+extension-firefox-alpenglow-description = ใช้รูปลักษณ์แบบสีสันสำหรับปุ่ม เมนู และหน้าต่าง
+
+## Colorway Themes
+## These themes are variants of a colorway. The colorway is specified in the
+## $colorway-name variable.
+## Variables
+## $colorway-name (String) The name of a colorway (e.g. Graffiti, Elemental).
+
+extension-colorways-soft-name = { $colorway-name } — Soft
+extension-colorways-balanced-name = { $colorway-name } — Balanced
+# "Bold" is used in the sense of bravery or courage, not in the sense of
+# emphasized text.
+extension-colorways-bold-name = { $colorway-name } — Bold
diff --git a/l10n-th/browser/browser/appMenuNotifications.ftl b/l10n-th/browser/browser/appMenuNotifications.ftl
new file mode 100644
index 0000000000..7d9de14b47
--- /dev/null
+++ b/l10n-th/browser/browser/appMenuNotifications.ftl
@@ -0,0 +1,66 @@
+# 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/.
+
+appmenu-update-available2 =
+ .label = มีการอัปเดต
+ .buttonlabel = ดาวน์โหลด
+ .buttonaccesskey = D
+ .secondarybuttonlabel = ปิด
+ .secondarybuttonaccesskey = m
+appmenu-update-available-message2 = ดาวน์โหลดรุ่นล่าสุดของ { -brand-shorter-name }
+appmenu-update-manual2 =
+ .label = มีการอัปเดต
+ .buttonlabel = ดาวน์โหลด
+ .buttonaccesskey = D
+ .secondarybuttonlabel = ปิด
+ .secondarybuttonaccesskey = m
+appmenu-update-manual-message2 = { -brand-shorter-name } ไม่สามารอัปเดตอัตโนมัติ ดาวน์โหลดรุ่นใหม่ — คุณจะไม่สูญเสียข้อมูลหรือการปรับแต่งที่บันทึกไว้
+appmenu-update-unsupported2 =
+ .label = ไม่สามารถอัปเดต
+ .buttonlabel = เรียนรู้เพิ่มเติม
+ .buttonaccesskey = L
+ .secondarybuttonlabel = ปิด
+ .secondarybuttonaccesskey = m
+appmenu-update-unsupported-message2 = ระบบปฏิบัติการของคุณไม่สามารถใช้งานร่วมกับ { -brand-shorter-name } รุ่นล่าสุดได้
+appmenu-update-restart2 =
+ .label = มีการอัปเดต
+ .buttonlabel = อัปเดตและเริ่มใหม่
+ .buttonaccesskey = U
+ .secondarybuttonlabel = ปิด
+ .secondarybuttonaccesskey = m
+appmenu-update-restart-message2 = รับรุ่นล่าสุดของ { -brand-shorter-name } แท็บที่เปิดอยู่และหน้าต่างจะถูกเรียกคืนมา
+appmenu-update-other-instance =
+ .label = { -brand-shorter-name } ไม่สามารถอัปเดตเป็นรุ่นล่าสุดโดยอัตโนมัติได้
+ .buttonlabel = อัปเดต { -brand-shorter-name } ต่อไป
+ .buttonaccesskey = อ
+ .secondarybuttonlabel = ไม่ใช่ตอนนี้
+ .secondarybuttonaccesskey = ม
+appmenu-update-other-instance-message = มีการอัปเดต { -brand-shorter-name } ใหม่ แต่ไม่สามารถติดตั้งได้เนื่องจาก { -brand-shorter-name } โปรแกรมอื่นกำลังทำงานอยู่ ให้ปิดโปรแกรมเพื่ออัปเดตต่อ หรือเลือกอัปเดตต่อโดยไม่ปิดโปรแกรมก็ได้ (โปรแกรมอื่นอาจไม่ทำงานอย่างถูกต้องจนกว่าคุณจะเริ่มการทำงานใหม่)
+
+appmenu-addon-private-browsing-installed2 =
+ .buttonlabel = ตกลง
+ .buttonaccesskey = O
+appmenu-addon-post-install-message3 = จัดการส่วนเสริมและชุดรูปแบบของคุณผ่านเมนูแอปพลิเคชัน
+appmenu-addon-post-install-incognito-checkbox =
+ .label = อนุญาตให้ส่วนขยายนี้ทำงานในหน้าต่างส่วนตัว
+ .accesskey = อ
+
+appmenu-new-tab-controlled-changes =
+ .label = แท็บใหม่ของคุณมีการเปลี่ยนแปลง
+ .buttonlabel = เก็บการเปลี่ยนแปลง
+ .buttonaccesskey = ก
+ .secondarybuttonlabel = จัดการแท็บใหม่
+ .secondarybuttonaccesskey = จ
+appmenu-homepage-controlled-changes =
+ .label = หน้าแรกของคุณมีการเปลี่ยนแปลง
+ .buttonlabel = เก็บการเปลี่ยนแปลง
+ .buttonaccesskey = ก
+ .secondarybuttonlabel = จัดการหน้าแรก
+ .secondarybuttonaccesskey = จ
+appmenu-tab-hide-controlled =
+ .label = เข้าถึงแท็บที่ซ่อนอยู่ของคุณ
+ .buttonlabel = ซ่อนแท็บต่อไป
+ .buttonaccesskey = อ
+ .secondarybuttonlabel = ปิดใช้งานส่วนขยาย
+ .secondarybuttonaccesskey = ป
diff --git a/l10n-th/browser/browser/appmenu.ftl b/l10n-th/browser/browser/appmenu.ftl
new file mode 100644
index 0000000000..0d36c10920
--- /dev/null
+++ b/l10n-th/browser/browser/appmenu.ftl
@@ -0,0 +1,280 @@
+# 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/.
+
+
+## App Menu
+
+appmenuitem-banner-update-downloading =
+ .label = กำลังดาวน์โหลดการอัปเดต { -brand-shorter-name }
+appmenuitem-banner-update-available =
+ .label = มีการอัปเดต — ดาวน์โหลดทันที
+appmenuitem-banner-update-manual =
+ .label = มีการอัปเดต — ดาวน์โหลดทันที
+appmenuitem-banner-update-unsupported =
+ .label = ไม่สามารถอัปเดต — ใช้ร่วมกับระบบไม่ได้
+appmenuitem-banner-update-restart =
+ .label = มีการอัปเดต — เริ่มใหม่ทันที
+appmenuitem-new-tab =
+ .label = แท็บใหม่
+appmenuitem-new-window =
+ .label = หน้าต่างใหม่
+appmenuitem-new-private-window =
+ .label = หน้าต่างส่วนตัวใหม่
+appmenuitem-history =
+ .label = ประวัติ
+appmenuitem-downloads =
+ .label = การดาวน์โหลด
+appmenuitem-passwords =
+ .label = รหัสผ่าน
+appmenuitem-addons-and-themes =
+ .label = ส่วนเสริมและชุดรูปแบบ
+appmenuitem-print =
+ .label = พิมพ์…
+appmenuitem-find-in-page =
+ .label = ค้นหาในหน้า…
+appmenuitem-translate =
+ .label = แปลหน้า…
+appmenuitem-zoom =
+ .value = ซูม
+appmenuitem-more-tools =
+ .label = เครื่องมือเพิ่มเติม
+appmenuitem-help =
+ .label = ช่วยเหลือ
+appmenuitem-exit2 =
+ .label =
+ { PLATFORM() ->
+ [linux] ออก
+ *[other] ออก
+ }
+appmenu-menu-button-closed2 =
+ .tooltiptext = เปิดเมนูแอปพลิเคชัน
+ .label = { -brand-short-name }
+appmenu-menu-button-opened2 =
+ .tooltiptext = ปิดเมนูแอปพลิเคชัน
+ .label = { -brand-short-name }
+# Settings is now used to access the browser settings across all platforms,
+# instead of Options or Preferences.
+appmenuitem-settings =
+ .label = การตั้งค่า
+
+## Zoom and Fullscreen Controls
+
+appmenuitem-zoom-enlarge =
+ .label = ขยายเข้า
+appmenuitem-zoom-reduce =
+ .label = ขยายออก
+appmenuitem-fullscreen =
+ .label = เต็มหน้าจอ
+
+## Firefox Account toolbar button and Sync panel in App menu.
+
+appmenu-remote-tabs-sign-into-sync =
+ .label = ลงชื่อเข้า Sync…
+appmenu-remote-tabs-turn-on-sync =
+ .label = เปิด Sync…
+# This is shown after the tabs list if we can display more tabs by clicking on the button
+appmenu-remote-tabs-showmore =
+ .label = แสดงแท็บเพิ่มเติม
+ .tooltiptext = แสดงแท็บเพิ่มเติมจากอุปกรณ์นี้
+# This is shown when there are inactive tabs which are not being shown.
+# Variables
+# $count (Number) - The number of inactive tabs which are not being shown (at least 1)
+appmenu-remote-tabs-showinactive =
+ .label = แสดงแท็บที่ไม่ได้ใช้งาน { $count } แท็บ
+ .tooltiptext = แสดงแท็บที่ไม่ได้ใช้งานบนอุปกรณ์นี้
+# This is shown beneath the name of a device when that device has no open tabs
+appmenu-remote-tabs-notabs = ไม่มีแท็บที่เปิดอยู่
+# This is shown when Sync is configured but syncing tabs is disabled.
+appmenu-remote-tabs-tabsnotsyncing = เปิดการซิงค์แท็บเพื่อดูรายการแท็บจากอุปกรณ์อื่น ๆ ของคุณ
+appmenu-remote-tabs-opensettings =
+ .label = การตั้งค่า
+# This is shown when Sync is configured but this appears to be the only device attached to
+# the account. We also show links to download Firefox for android/ios.
+appmenu-remote-tabs-noclients = ต้องการเห็นแท็บของคุณจากอุปกรณ์อื่น ๆ ที่นี่?
+appmenu-remote-tabs-connectdevice =
+ .label = เชื่อมต่ออุปกรณ์อื่น
+appmenu-remote-tabs-welcome = ดูรายการแท็บจากอุปกรณ์อื่น ๆ ของคุณ
+appmenu-remote-tabs-unverified = บัญชีของคุณจำเป็นต้องได้รับการยืนยัน
+appmenuitem-fxa-toolbar-sync-now2 = ซิงค์ตอนนี้
+appmenuitem-fxa-sign-in = ลงชื่อเข้า { -brand-product-name }
+appmenuitem-fxa-manage-account = จัดการบัญชี
+appmenu-fxa-header2 = { -fxaccount-brand-name }
+appmenu-account-header = บัญชี
+# Variables
+# $time (string) - Localized relative time since last sync (e.g. 1 second ago,
+# 3 hours ago, etc.)
+appmenu-fxa-last-sync = ซิงค์ล่าสุดเมื่อ { $time }
+ .label = ซิงค์ล่าสุดเมื่อ { $time }
+appmenu-fxa-sync-and-save-data2 = ซิงค์และบันทึกข้อมูล
+appmenu-fxa-signed-in-label = ลงชื่อเข้า
+appmenu-fxa-setup-sync =
+ .label = เปิดการซิงค์…
+appmenuitem-save-page =
+ .label = บันทึกหน้าเป็น…
+
+## What's New panel in App menu.
+
+whatsnew-panel-header = มีอะไรใหม่
+# Checkbox displayed at the bottom of the What's New panel, allowing users to
+# enable/disable What's New notifications.
+whatsnew-panel-footer-checkbox =
+ .label = แจ้งเตือนเกี่ยวกับคุณลักษณะใหม่
+ .accesskey = จ
+
+## The Firefox Profiler – The popup is the UI to turn on the profiler, and record
+## performance profiles. To enable it go to profiler.firefox.com and click
+## "Enable Profiler Menu Button".
+
+profiler-popup-button-idle =
+ .label = ตัวสร้างโปรไฟล์
+ .tooltiptext = บันทึกโปรไฟล์ประสิทธิภาพ
+profiler-popup-button-recording =
+ .label = ตัวสร้างโปรไฟล์
+ .tooltiptext = ตัวสร้างโปรไฟล์กำลังอัดบันทึกโปรไฟล์
+profiler-popup-button-capturing =
+ .label = ตัวสร้างโปรไฟล์
+ .tooltiptext = ตัวสร้างโปรไฟล์กำลังจับโปรไฟล์
+profiler-popup-header-text = { -profiler-brand-name }
+profiler-popup-reveal-description-button =
+ .aria-label = แสดงข้อมูลเพิ่มเติม
+profiler-popup-description-title =
+ .value = บันทึก วิเคราะห์ แบ่งปัน
+profiler-popup-description = ทำงานร่วมกันในปัญหาด้านประสิทธิภาพโดยการเผยแพร่โปรไฟล์เพื่อแบ่งปันกับทีมของคุณ
+profiler-popup-learn-more-button =
+ .label = เรียนรู้เพิ่มเติม
+profiler-popup-settings =
+ .value = การตั้งค่า
+# This link takes the user to about:profiling, and is only visible with the Custom preset.
+profiler-popup-edit-settings-button =
+ .label = แก้ไขการตั้งค่า
+profiler-popup-recording-screen = กำลังบันทึก…
+profiler-popup-start-recording-button =
+ .label = เริ่มการบันทึก
+profiler-popup-discard-button =
+ .label = ละทิ้ง
+profiler-popup-capture-button =
+ .label = จับ
+profiler-popup-start-shortcut =
+ { PLATFORM() ->
+ [macos] ⌃⇧1
+ *[other] Ctrl+Shift+1
+ }
+profiler-popup-capture-shortcut =
+ { PLATFORM() ->
+ [macos] ⌃⇧2
+ *[other] Ctrl+Shift+2
+ }
+
+## Profiler presets
+## They are shown in the popup's select box.
+
+
+# Presets and their l10n IDs are defined in the file
+# devtools/client/performance-new/shared/background.jsm.js
+# Please take care that the same values are also defined in devtools' perftools.ftl.
+
+
+# Presets and their l10n IDs are defined in the file
+# devtools/client/performance-new/shared/background.sys.mjs
+# Please take care that the same values are also defined in devtools' perftools.ftl.
+
+profiler-popup-presets-web-developer-description = ค่าที่ตั้งล่วงหน้าที่แนะนำสำหรับการดีบั๊กเว็บแอปส่วนใหญ่ โดยมีโอเวอร์เฮดต่ำ
+profiler-popup-presets-web-developer-label =
+ .label = นักพัฒนาเว็บ
+profiler-popup-presets-firefox-description = ค่าที่ตั้งล่วงหน้าที่แนะนำสำหรับการรวบรวมประวัติ { -brand-shorter-name }
+profiler-popup-presets-firefox-label =
+ .label = { -brand-shorter-name }
+profiler-popup-presets-graphics-description = ค่าที่ตั้งล่วงหน้าสำหรับการตรวจสอบบั๊กเกี่ยวกับกราฟิกใน { -brand-shorter-name }
+profiler-popup-presets-graphics-label =
+ .label = กราฟิก
+profiler-popup-presets-media-description2 = ค่าที่ตั้งล่วงหน้าสำหรับการตรวจสอบบั๊กเกี่ยวกับเสียงและวิดีโอใน { -brand-shorter-name }
+profiler-popup-presets-media-label =
+ .label = สื่อ
+profiler-popup-presets-networking-description = ค่าที่ตั้งล่วงหน้าสำหรับการตรวจสอบบั๊กเกี่ยวกับระบบเครือข่ายใน { -brand-shorter-name }
+profiler-popup-presets-networking-label =
+ .label = ระบบเครือข่าย
+profiler-popup-presets-power-description = ค่าที่ตั้งล่วงหน้าสำหรับการตรวจสอบบั๊กเกี่ยวกับการใช้พลังงานใน { -brand-shorter-name } โดยมีโอเวอร์เฮดต่ำ
+# "Power" is used in the sense of energy (electricity used by the computer).
+profiler-popup-presets-power-label =
+ .label = พลังงาน
+profiler-popup-presets-custom-label =
+ .label = กำหนดเอง
+
+## History panel
+
+appmenu-manage-history =
+ .label = จัดการประวัติ
+appmenu-restore-session =
+ .label = เรียกคืนวาระก่อนหน้า
+appmenu-clear-history =
+ .label = ล้างประวัติล่าสุด…
+appmenu-recent-history-subheader = ประวัติล่าสุด
+appmenu-recently-closed-tabs =
+ .label = แท็บที่ปิดล่าสุด
+appmenu-recently-closed-windows =
+ .label = หน้าต่างที่ปิดล่าสุด
+# This allows to search through the browser's history.
+appmenu-search-history =
+ .label = ค้นหาประวัติ
+
+## Help panel
+
+appmenu-help-header =
+ .title = ความช่วยเหลือของ { -brand-shorter-name }
+appmenu-about =
+ .label = เกี่ยวกับ { -brand-shorter-name }
+ .accesskey = ก
+appmenu-get-help =
+ .label = รับความช่วยเหลือ
+ .accesskey = ช
+appmenu-help-more-troubleshooting-info =
+ .label = ข้อมูลการแก้ไขปัญหาเพิ่มเติม
+ .accesskey = ข
+appmenu-help-report-site-issue =
+ .label = รายงานปัญหาไซต์…
+appmenu-help-share-ideas =
+ .label = แบ่งปันแนวคิดและคำติชม…
+ .accesskey = บ
+appmenu-help-switch-device =
+ .label = สลับไปยังอุปกรณ์ใหม่
+
+## appmenu-help-enter-troubleshoot-mode and appmenu-help-exit-troubleshoot-mode
+## are mutually exclusive, so it's possible to use the same accesskey for both.
+
+appmenu-help-enter-troubleshoot-mode2 =
+ .label = โหมดแก้ไขปัญหา…
+ .accesskey = ห
+appmenu-help-exit-troubleshoot-mode =
+ .label = ปิดโหมดแก้ไขปัญหา
+ .accesskey = ม
+
+## appmenu-help-report-deceptive-site and appmenu-help-not-deceptive
+## are mutually exclusive, so it's possible to use the same accesskey for both.
+
+appmenu-help-report-deceptive-site =
+ .label = รายงานไซต์หลอกลวง…
+ .accesskey = ห
+appmenu-help-not-deceptive =
+ .label = นี่ไม่ใช่ไซต์หลอกลวง…
+ .accesskey = ห
+
+## More Tools
+
+appmenu-customizetoolbar =
+ .label = ปรับแต่งแถบเครื่องมือ…
+appmenu-developer-tools-subheader = เครื่องมือสำหรับเบราว์เซอร์
+appmenu-developer-tools-extensions =
+ .label = ส่วนขยายสำหรับนักพัฒนา
+appmenuitem-report-broken-site =
+ .label = รายงานไซต์ที่ใช้งานไม่ได้
+
+## Panel for privacy and security products
+
+appmenuitem-sign-in-account = ลงชื่อเข้าบัญชีของคุณ
+appmenuitem-monitor-title = { -monitor-brand-short-name }
+appmenuitem-monitor-description = รับการแจ้งเตือนเมื่อเกิดการรั่วไหลของข้อมูล
+appmenuitem-relay-title = { -relay-brand-short-name }
+appmenuitem-relay-description = ปิดบังอีเมลและหมายเลขโทรศัพท์จริงของคุณ
+appmenuitem-vpn-title = { -mozilla-vpn-brand-name }
+appmenuitem-vpn-description = ปกป้องกิจกรรมออนไลน์ของคุณ
diff --git a/l10n-th/browser/browser/backgroundtasks/defaultagent.ftl b/l10n-th/browser/browser/backgroundtasks/defaultagent.ftl
new file mode 100644
index 0000000000..d071ce1c6f
--- /dev/null
+++ b/l10n-th/browser/browser/backgroundtasks/defaultagent.ftl
@@ -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/.
+
+default-browser-agent-task-description = งานของ Default Browser Agent จะตรวจสอบเมื่อมีการเปลี่ยนค่าเริ่มต้นจาก { -brand-short-name } เป็นเบราว์เซอร์อื่น หากการเปลี่ยนแปลงเกิดขึ้นภายใต้สถานการณ์ที่น่าสงสัย ระบบจะแจ้งให้ผู้ใช้เปลี่ยนกลับเป็น { -brand-short-name } ไม่เกินสองครั้ง งานนี้ถูกติดตั้งโดยอัตโนมัติโดย { -brand-short-name } และจะถูกติดตั้งใหม่เมื่อ { -brand-short-name } อัปเดต เมื่อต้องการปิดใช้งานงานนี้ ให้อัปเดตการกำหนดลักษณะ “default-browser-agent.enabled” บนหน้า about:config หรือการตั้งค่านโยบายองค์กร “DisableDefaultBrowserAgent” ของ { -brand-short-name }
+default-browser-notification-header-text = ต้องการใช้ { -brand-short-name } ต่อไปหรือไม่?
+default-browser-notification-body-text = เบราว์เซอร์เริ่มต้นของคุณถูกเปลี่ยนไปเมื่อไม่นานมานี้ แตะเพื่อคืน { -brand-short-name } มาเป็นค่าเริ่มต้น
+default-browser-notification-yes-button-text = ใช่
+default-browser-notification-no-button-text = ไม่
diff --git a/l10n-th/browser/browser/browser.ftl b/l10n-th/browser/browser/browser.ftl
new file mode 100644
index 0000000000..64dd32de5d
--- /dev/null
+++ b/l10n-th/browser/browser/browser.ftl
@@ -0,0 +1,995 @@
+# 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/.
+
+
+## The main browser window's title
+
+# These are the default window titles everywhere except macOS.
+# .data-title-default and .data-title-private are used when the web content
+# opened has no title:
+#
+# default - "Mozilla Firefox"
+# private - "Mozilla Firefox (Private Browsing)"
+#
+# .data-content-title-default and .data-content-title-private are for use when
+# there *is* a content title.
+# Variables:
+# $content-title (String): the title of the web content.
+browser-main-window-window-titles =
+ .data-title-default = { -brand-full-name }
+ .data-title-private = การเรียกดูแบบส่วนตัวของ { -brand-full-name }
+ .data-content-title-default = { $content-title } — { -brand-full-name }
+ .data-content-title-private = { $content-title } — การเรียกดูแบบส่วนตัวของ { -brand-full-name }
+# These are the default window titles on macOS.
+# .data-title-default and .data-title-private are used when the web content
+# opened has no title:
+#
+#
+# "default" - "Mozilla Firefox"
+# "private" - "Mozilla Firefox — (Private Browsing)"
+#
+# .data-content-title-default and .data-content-title-private are for use when
+# there *is* a content title.
+# Do not use the brand name in these, as we do on non-macOS.
+#
+# Also note the other subtle difference here: we use a `-` to separate the
+# brand name from `(Private Browsing)`, which does not happen on other OSes.
+#
+# Variables:
+# $content-title (String): the title of the web content.
+browser-main-window-mac-window-titles =
+ .data-title-default = { -brand-full-name }
+ .data-title-private = { -brand-full-name } — การเรียกดูแบบส่วนตัว
+ .data-content-title-default = { $content-title }
+ .data-content-title-private = { $content-title } — การเรียกดูแบบส่วนตัว
+# This gets set as the initial title, and is overridden as soon as we start
+# updating the titlebar based on loaded tabs or private browsing state.
+# This should match the `data-title-default` attribute in both
+# `browser-main-window` and `browser-main-window-mac`.
+browser-main-window-title = { -brand-full-name }
+# The non-variable portion of this MUST match the translation of
+# "PRIVATE_BROWSING_SHORTCUT_TITLE" in custom.properties
+private-browsing-shortcut-text-2 = การเรียกดูแบบส่วนตัวของ { -brand-shortcut-name }
+
+##
+
+urlbar-identity-button =
+ .aria-label = ดูข้อมูลไซต์
+
+## Tooltips for images appearing in the address bar
+
+urlbar-services-notification-anchor =
+ .tooltiptext = เปิดแผงข้อความการติดตั้ง
+urlbar-web-notification-anchor =
+ .tooltiptext = เลือกว่าคุณสามารถรับการแจ้งเตือนจากไซต์ได้หรือไม่
+urlbar-midi-notification-anchor =
+ .tooltiptext = เปิดแผง MIDI
+urlbar-eme-notification-anchor =
+ .tooltiptext = จัดการการใช้ซอฟต์แวร์ DRM
+urlbar-web-authn-anchor =
+ .tooltiptext = เปิดแผง ​Web Authentication
+urlbar-canvas-notification-anchor =
+ .tooltiptext = จัดการสิทธิ์อนุญาตการสกัดข้อมูลจาก canvas
+urlbar-web-rtc-share-microphone-notification-anchor =
+ .tooltiptext = จัดการการแบ่งปันไมโครโฟนของคุณกับไซต์
+urlbar-default-notification-anchor =
+ .tooltiptext = เปิดแผงข้อความ
+urlbar-geolocation-notification-anchor =
+ .tooltiptext = เปิดแผงคำขอตำแหน่งที่ตั้ง
+urlbar-xr-notification-anchor =
+ .tooltiptext = เปิดแผงสิทธิอนุญาตความจริงเสมือน
+urlbar-storage-access-anchor =
+ .tooltiptext = เปิดแผงสิทธิอนุญาตกิจกรรมการเรียกดู
+urlbar-web-rtc-share-screen-notification-anchor =
+ .tooltiptext = จัดการการแบ่งปันหน้าต่างหรือหน้าจอของคุณกับไซต์
+urlbar-indexed-db-notification-anchor =
+ .tooltiptext = เปิดแผงข้อความที่เก็บข้อมูลออฟไลน์
+urlbar-password-notification-anchor =
+ .tooltiptext = เปิดแผงข้อความบันทึกรหัสผ่าน
+urlbar-plugins-notification-anchor =
+ .tooltiptext = จัดการการใช้ปลั๊กอิน
+urlbar-web-rtc-share-devices-notification-anchor =
+ .tooltiptext = จัดการการแบ่งปันกล้องและ/หรือไมโครโฟนของคุณกับไซต์
+# "Speakers" is used in a general sense that might include headphones or
+# another audio output connection.
+urlbar-web-rtc-share-speaker-notification-anchor =
+ .tooltiptext = จัดการการแบ่งปันลำโพงอื่น ๆ กับไซต์
+urlbar-autoplay-notification-anchor =
+ .tooltiptext = เปิดแผงการเล่นอัตโนมัติ
+urlbar-persistent-storage-notification-anchor =
+ .tooltiptext = จัดเก็บข้อมูลในที่เก็บข้อมูลถาวร
+urlbar-addons-notification-anchor =
+ .tooltiptext = เปิดแผงข้อความการติดตั้งส่วนเสริม
+urlbar-tip-help-icon =
+ .title = รับความช่วยเหลือ
+urlbar-search-tips-confirm = ตกลง เข้าใจแล้ว
+urlbar-search-tips-confirm-short = เข้าใจแล้ว
+# Read out before Urlbar Tip text content so screenreader users know the
+# subsequent text is a tip offered by the browser. It should end in a colon or
+# localized equivalent.
+urlbar-tip-icon-description =
+ .alt = เคล็ดลับ:
+urlbar-result-menu-button =
+ .title = เปิดเมนู
+urlbar-result-menu-button-feedback = ข้อคิดเห็น
+ .title = เปิดเมนู
+urlbar-result-menu-learn-more =
+ .label = เรียนรู้เพิ่มเติม
+ .accesskey = ร
+urlbar-result-menu-remove-from-history =
+ .label = เอาออกจากประวัติ
+ .accesskey = อ
+urlbar-result-menu-tip-get-help =
+ .label = รับความช่วยเหลือ
+ .accesskey = ช
+
+## Prompts users to use the Urlbar when they open a new tab or visit the
+## homepage of their default search engine.
+## Variables:
+## $engineName (String): The name of the user's default search engine. e.g. "Google" or "DuckDuckGo".
+
+urlbar-search-tips-onboard = พิมพ์น้อยลง ค้นหามากขึ้น: ค้นหา { $engineName } โดยตรงจากแถบที่อยู่ของคุณ
+urlbar-search-tips-redirect-2 = เริ่มการค้นหาของคุณในแถบที่อยู่เพื่อดูข้อเสนอแนะจาก { $engineName } และประวัติการเรียกดูของคุณ
+# Make sure to match the name of the Search panel in settings.
+urlbar-search-tips-persist = ตอนนี้การค้นหาทำได้ง่ายขึ้นแล้ว ลองทำให้การค้นหาของคุณเจาะจงขึ้นที่นี่ในแถบที่อยู่ เมื่อต้องการแสดง URL แทน ให้ไปที่ การค้นหา ในการตั้งค่า
+# Prompts users to use the Urlbar when they are typing in the domain of a
+# search engine, e.g. google.com or amazon.com.
+urlbar-tabtosearch-onboard = เลือกทางลัดนี้เพื่อค้นหาสิ่งที่คุณต้องการได้เร็วขึ้น
+
+## Local search mode indicator labels in the urlbar
+
+urlbar-search-mode-bookmarks = ที่คั่นหน้า
+urlbar-search-mode-tabs = แท็บ
+urlbar-search-mode-history = ประวัติ
+urlbar-search-mode-actions = การกระทำ
+
+##
+
+urlbar-geolocation-blocked =
+ .tooltiptext = คุณได้ปิดกั้นข้อมูลตำแหน่งที่ตั้งสำหรับเว็บไซต์นี้
+urlbar-xr-blocked =
+ .tooltiptext = คุณได้ปิดกั้นการเข้าถึงอุปกรณ์ความจริงเสมือนสำหรับเว็บไซต์นี้
+urlbar-web-notifications-blocked =
+ .tooltiptext = คุณได้ปิดกั้นการแจ้งเตือนสำหรับเว็บไซต์นี้
+urlbar-camera-blocked =
+ .tooltiptext = คุณได้ปิดกั้นกล้องของคุณสำหรับเว็บไซต์นี้
+urlbar-microphone-blocked =
+ .tooltiptext = คุณได้ปิดกั้นไมโครโฟนของคุณสำหรับเว็บไซต์นี้
+urlbar-screen-blocked =
+ .tooltiptext = คุณได้ปิดกั้นเว็บไซต์นี้จากการแบ่งปันหน้าจอของคุณ
+urlbar-persistent-storage-blocked =
+ .tooltiptext = คุณได้ปิดกั้นที่เก็บข้อมูลถาวรสำหรับเว็บไซต์นี้
+urlbar-popup-blocked =
+ .tooltiptext = คุณได้ปิดกั้นป๊อปอัปสำหรับเว็บไซต์นี้
+urlbar-autoplay-media-blocked =
+ .tooltiptext = คุณได้ปิดกั้นการเล่นสื่อพร้อมเสียงโดยอัตโนมัติสำหรับเว็บไซต์นี้
+urlbar-canvas-blocked =
+ .tooltiptext = คุณได้ปิดกั้นการส่งออกข้อมูลผืนผ้าใบสำหรับเว็บไซต์นี้
+urlbar-midi-blocked =
+ .tooltiptext = คุณได้ปิดกั้นการเข้าถึง MIDI สำหรับเว็บไซต์นี้
+urlbar-install-blocked =
+ .tooltiptext = คุณได้ปิดกั้นการติดตั้งส่วนเสริมสำหรับเว็บไซต์นี้
+# Variables
+# $shortcut (String) - A keyboard shortcut for the edit bookmark command.
+urlbar-star-edit-bookmark =
+ .tooltiptext = แก้ไขที่คั่นหน้านี้ ({ $shortcut })
+# Variables
+# $shortcut (String) - A keyboard shortcut for the add bookmark command.
+urlbar-star-add-bookmark =
+ .tooltiptext = เพิ่มที่คั่นหน้าสำหรับหน้านี้ ({ $shortcut })
+
+## Page Action Context Menu
+
+page-action-manage-extension2 =
+ .label = จัดการส่วนขยาย…
+ .accesskey = E
+page-action-remove-extension2 =
+ .label = เอาส่วนขยายออก
+ .accesskey = เ
+
+## Auto-hide Context Menu
+
+full-screen-autohide =
+ .label = ซ่อนแถบเครื่องมือ
+ .accesskey = น
+full-screen-exit =
+ .label = ออกจากโหมดเต็มหน้าจอ
+ .accesskey = จ
+
+## Search Engine selection buttons (one-offs)
+
+# This string prompts the user to use the list of search shortcuts in
+# the Urlbar and searchbar.
+search-one-offs-with-title = คราวนี้ค้นหาด้วย:
+search-one-offs-change-settings-compact-button =
+ .tooltiptext = เปลี่ยนการตั้งค่าการค้นหา
+search-one-offs-context-open-new-tab =
+ .label = ค้นหาในแท็บใหม่
+ .accesskey = ค
+search-one-offs-context-set-as-default =
+ .label = ตั้งเป็นเครื่องมือค้นหาเริ่มต้น
+ .accesskey = ต
+search-one-offs-context-set-as-default-private =
+ .label = ตั้งเป็นเครื่องมือค้นหาเริ่มต้นสำหรับหน้าต่างส่วนตัว
+ .accesskey = ส
+# Search engine one-off buttons with an @alias shortcut/keyword.
+# Variables:
+# $engineName (String): The name of the engine.
+# $alias (String): The @alias shortcut/keyword.
+search-one-offs-engine-with-alias =
+ .tooltiptext = { $engineName } ({ $alias })
+# Shown when adding new engines from the address bar shortcut buttons or context
+# menu, or from the search bar shortcut buttons.
+# Variables:
+# $engineName (String): The name of the engine.
+search-one-offs-add-engine =
+ .label = เพิ่ม “{ $engineName }”
+ .tooltiptext = เพิ่มเครื่องมือค้นหา “{ $engineName }”
+ .aria-label = เพิ่มเครื่องมือค้นหา “{ $engineName }”
+# When more than 5 engines are offered by a web page, they are grouped in a
+# submenu using this as its label.
+search-one-offs-add-engine-menu =
+ .label = เพิ่มเครื่องมือค้นหา
+
+## Local search mode one-off buttons
+## Variables:
+## $restrict (String): The restriction token corresponding to the search mode.
+## Restriction tokens are special characters users can type in the urlbar to
+## restrict their searches to certain sources (e.g., "*" to search only
+## bookmarks).
+
+search-one-offs-bookmarks =
+ .tooltiptext = ที่คั่นหน้า ({ $restrict })
+search-one-offs-tabs =
+ .tooltiptext = แท็บ ({ $restrict })
+search-one-offs-history =
+ .tooltiptext = ประวัติ ({ $restrict })
+search-one-offs-actions =
+ .tooltiptext = การกระทำ ({ $restrict })
+
+## QuickActions are shown in the urlbar as the user types a matching string
+## The -cmd- strings are comma separated list of keywords that will match
+## the action.
+
+# Opens the about:addons page in the home / recommendations section
+quickactions-addons = ดูส่วนเสริม
+quickactions-cmd-addons2 = ส่วนเสริม
+# Opens the bookmarks library window
+quickactions-bookmarks2 = จัดการที่คั่นหน้า
+quickactions-cmd-bookmarks = ที่คั่นหน้าที่คั่นหน้า
+# Opens a SUMO article explaining how to clear history
+quickactions-clearhistory = ล้างประวัติ
+quickactions-cmd-clearhistory = ล้างประวัติ
+# Opens about:downloads page
+quickactions-downloads2 = ดูการดาวน์โหลด
+quickactions-cmd-downloads = ดาวน์โหลด
+# Opens about:addons page in the extensions section
+quickactions-extensions = จัดการส่วนขยาย
+quickactions-cmd-extensions = ส่วนขยาย
+# Opens the devtools web inspector
+quickactions-inspector2 = เปิดเครื่องมือนักพัฒนา
+quickactions-cmd-inspector = ตัวตรวจสอบ, devtools
+# Opens about:logins
+quickactions-logins2 = จัดการรหัสผ่าน
+quickactions-cmd-logins = การเข้าสู่ระบบ, รหัสผ่าน
+# Opens about:addons page in the plugins section
+quickactions-plugins = จัดการปลั๊กอิน
+quickactions-cmd-plugins = ปลั๊กอิน
+# Opens the print dialog
+quickactions-print2 = พิมพ์หน้า
+quickactions-cmd-print = พิมพ์
+# Opens the print dialog at the save to PDF option
+quickactions-savepdf = บันทึกหน้าเป็น PDF
+quickactions-cmd-savepdf = pdf
+# Opens a new private browsing window
+quickactions-private2 = เปิดหน้าต่างส่วนตัว
+quickactions-cmd-private = การเรียกดูแบบส่วนตัว
+# Opens a SUMO article explaining how to refresh
+quickactions-refresh = ล้าง { -brand-short-name } ใหม่
+quickactions-cmd-refresh = เรียกใหม่
+# Restarts the browser
+quickactions-restart = เริ่มการทำงาน { -brand-short-name } ใหม่
+quickactions-cmd-restart = เริ่มการทำงานใหม่
+# Opens the screenshot tool
+quickactions-screenshot3 = จับภาพหน้าจอ
+quickactions-cmd-screenshot = ภาพหน้าจอ
+# Opens about:preferences
+quickactions-settings2 = จัดการการตั้งค่า
+quickactions-cmd-settings = การตั้งค่า, การกำหนดลักษณะ, ตัวเลือก
+# Opens about:addons page in the themes section
+quickactions-themes = จัดการชุดรูปแบบ
+quickactions-cmd-themes = ชุดรูปแบบ
+# Opens a SUMO article explaining how to update the browser
+quickactions-update = อัปเดต { -brand-short-name }
+quickactions-cmd-update = อัปเดต
+# Opens the view-source UI with current pages source
+quickactions-viewsource2 = ดูต้นฉบับหน้า
+quickactions-cmd-viewsource = ดูต้นฉบับ, ต้นฉบับ
+# Tooltip text for the help button shown in the result.
+quickactions-learn-more =
+ .title = เรียนรู้เพิ่มเติมเกี่ยวกับคำสั่งด่วน
+
+## Bookmark Panel
+
+bookmarks-add-bookmark = เพิ่มที่คั่นหน้า
+bookmarks-edit-bookmark = แก้ไขที่คั่นหน้า
+bookmark-panel-cancel =
+ .label = ยกเลิก
+ .accesskey = ย
+# Variables:
+# $count (number): number of bookmarks that will be removed
+bookmark-panel-remove =
+ .label = เอา { $count } ที่คั่นหน้าออก
+ .accesskey = อ
+bookmark-panel-show-editor-checkbox =
+ .label = แสดงตัวแก้ไขเมื่อบันทึก
+ .accesskey = ส
+bookmark-panel-save-button =
+ .label = บันทึก
+# Width of the bookmark panel.
+# Should be large enough to fully display the Done and
+# Cancel/Remove Bookmark buttons.
+bookmark-panel =
+ .style = min-width: 23em
+
+## Identity Panel
+
+# Variables
+# $host (String): the hostname of the site that is being displayed.
+identity-site-information = ข้อมูลไซต์สำหรับ { $host }
+# Variables
+# $host (String): the hostname of the site that is being displayed.
+identity-header-security-with-host =
+ .title = ความปลอดภัยของการเชื่อมต่อสำหรับ { $host }
+identity-connection-not-secure = การเชื่อมต่อไม่ปลอดภัย
+identity-connection-secure = การเชื่อมต่อปลอดภัย
+identity-connection-failure = การเชื่อมต่อล้มเหลว
+identity-connection-internal = นี่คือหน้า { -brand-short-name } ที่ปลอดภัย
+identity-connection-file = หน้านี้ถูกจัดเก็บไว้ในคอมพิวเตอร์ของคุณ
+identity-connection-associated = หน้านี้ถูกโหลดจากหน้าอื่น
+identity-extension-page = หน้านี้ถูกโหลดจากส่วนขยาย
+identity-active-blocked = { -brand-short-name } ได้ปิดกั้นบางส่วนของหน้านี้ที่ไม่ปลอดภัย
+identity-custom-root = การเชื่อมต่อถูกตรวจสอบโดยผู้ออกใบรับรองที่ Mozilla ไม่รู้จัก
+identity-passive-loaded = บางส่วนของหน้านี้ไม่ปลอดภัย (อย่างเช่น ภาพ)
+identity-active-loaded = คุณได้ปิดใช้งานการป้องกันในหน้านี้
+identity-weak-encryption = หน้านี้ใช้การเข้ารหัสที่อ่อนแอ
+identity-insecure-login-forms = การเข้าสู่ระบบที่ป้อนบนหน้านี้อาจถูกบุกรุกได้
+identity-https-only-connection-upgraded = (อัปเกรดเป็น HTTPS)
+identity-https-only-label = โหมด HTTPS-Only
+identity-https-only-label2 = อัปเกรดไซต์นี้เป็นการเชื่อมต่อแบบปลอดภัยโดยอัตโนมัติ
+identity-https-only-dropdown-on =
+ .label = เปิด
+identity-https-only-dropdown-off =
+ .label = ปิด
+identity-https-only-dropdown-off-temporarily =
+ .label = ปิดชั่วคราว
+identity-https-only-info-turn-on2 = เปิดโหมด HTTPS-Only หากคุณต้องการให้ { -brand-short-name } อัปเกรดการเชื่อมต่อเมื่อเป็นไปได้
+identity-https-only-info-turn-off2 = หากหน้าดูเหมือนจะพัง คุณอาจต้องปิดโหมด HTTPS-Only สำหรับไซต์นี้เพื่อโหลดใหม่โดยใช้ HTTP ที่ไม่ปลอดภัย
+identity-https-only-info-turn-on3 = เปิดการอัปเกรด HTTPS สำหรับไซต์นี้หากคุณต้องการให้ { -brand-short-name } อัปเกรดการเชื่อมต่อเมื่อเป็นไปได้
+identity-https-only-info-turn-off3 = หากหน้าดูเหมือนจะพัง คุณอาจต้องปิดการอัปเกรด HTTPS สำหรับไซต์นี้เพื่อโหลดใหม่โดยใช้ HTTP ที่ไม่ปลอดภัย
+identity-https-only-info-no-upgrade = ไม่สามารถอัปเกรดการเชื่อมต่อจาก HTTP ได้
+identity-permissions-storage-access-header = คุกกี้ข้ามไซต์
+identity-permissions-storage-access-hint = บุคคลเหล่านี้สามารถใช้คุกกี้ข้ามไซต์และข้อมูลไซต์ในขณะที่คุณอยู่บนไซต์นี้ได้
+identity-permissions-storage-access-learn-more = เรียนรู้เพิ่มเติม
+identity-permissions-reload-hint = คุณอาจจำเป็นต้องโหลดหน้าใหม่เพื่อให้การเปลี่ยนแปลงมีผล
+identity-clear-site-data =
+ .label = ล้างคุกกี้และข้อมูลไซต์…
+identity-connection-not-secure-security-view = คุณไม่ได้เชื่อมต่ออย่างปลอดภัยไปยังไซต์นี้
+identity-connection-verified = คุณได้เชื่อมต่ออย่างปลอดภัยไปยังไซต์นี้
+identity-ev-owner-label = ออกใบรับรองให้กับ:
+identity-description-custom-root2 = Mozilla ไม่รู้จักผู้ออกใบรับรองนี้ ซึ่งอาจถูกเพิ่มจากระบบปฏิบัติการของคุณหรือโดยผู้ดูแลระบบ
+identity-remove-cert-exception =
+ .label = เอาข้อยกเว้นออก
+ .accesskey = อ
+identity-description-insecure = การเชื่อมต่อของคุณไปยังไซต์นี้ไม่เป็นส่วนตัว ข้อมูลที่คุณแบ่งปันกับไซต์นี้สามารถดูได้โดยผู้อื่น (เช่น รหัสผ่าน, ข้อความ, บัตรเครดิต ฯลฯ)
+identity-description-insecure-login-forms = การเข้าสู่ระบบที่คุณป้อนบนหน้านี้ไม่ปลอดภัยและอาจถูกบุกรุกได้
+identity-description-weak-cipher-intro = การเชื่อมต่อของคุณไปยังเว็บไซต์นี้ใช้การเข้ารหัสที่อ่อนแอและไม่เป็นส่วนตัว
+identity-description-weak-cipher-risk = ผู้คนอื่น ๆ สามารถดูข้อมูลของคุณหรือเปลี่ยนแปลงลักษณะการทำงานของเว็บไซต์
+identity-description-active-blocked2 = { -brand-short-name } ได้ปิดกั้นบางส่วนของหน้านี้ที่ไม่ปลอดภัย
+identity-description-passive-loaded = การเชื่อมต่อของคุณไม่เป็นส่วนตัวและข้อมูลที่คุณแบ่งปันกับเว็บไซต์คนอื่นสามารถดูได้
+identity-description-passive-loaded-insecure2 = เว็บไซต์นี้มีเนื้อหาที่ไม่ปลอดภัย (อย่างเช่น ภาพ)
+identity-description-passive-loaded-mixed2 = ถึงแม้ว่า { -brand-short-name } ได้ปิดกั้นเนื้อหาบางส่วน แต่ก็ยังคงมีเนื้อหาในหน้าที่ไม่ปลอดภัย (อย่างเช่น ภาพ)
+identity-description-active-loaded = เว็บไซต์นี้ประกอบด้วยเนื้อหาที่เชื่อถือไม่ได้ (เช่น สคริปต์) และการเชื่อมต่อไปยังไซต์ก็ไม่เป็นส่วนตัว
+identity-description-active-loaded-insecure = ข้อมูลที่คุณแบ่งปันกับไซต์นี้สามารถดูได้โดยผู้อื่น (เช่น รหัสผ่าน, ข้อความ, บัตรเครดิต ฯลฯ)
+identity-disable-mixed-content-blocking =
+ .label = ปิดใช้งานการป้องกันในตอนนี้
+ .accesskey = ป
+identity-enable-mixed-content-blocking =
+ .label = เปิดใช้งานการป้องกัน
+ .accesskey = ป
+identity-more-info-link-text =
+ .label = ข้อมูลเพิ่มเติม
+
+## Window controls
+
+browser-window-minimize-button =
+ .tooltiptext = ย่อ
+browser-window-maximize-button =
+ .tooltiptext = ขยาย
+browser-window-restore-down-button =
+ .tooltiptext = คืนค่าลงล่าง
+browser-window-close-button =
+ .tooltiptext = ปิด
+
+## Tab actions
+
+# This label should be written in all capital letters if your locale supports them.
+browser-tab-audio-playing2 = กำลังเล่น
+# This label should be written in all capital letters if your locale supports them.
+browser-tab-audio-muted2 = ปิดเสียงอยู่
+# This label should be written in all capital letters if your locale supports them.
+browser-tab-audio-blocked = การเล่นอัตโนมัติถูกปิดกั้น
+# This label should be written in all capital letters if your locale supports them.
+browser-tab-audio-pip = ภาพที่เล่นควบคู่
+
+## These labels should be written in all capital letters if your locale supports them.
+## Variables:
+## $count (number): number of affected tabs
+
+browser-tab-mute =
+ { $count ->
+ [1] ปิดเสียงแท็บ
+ *[other] ปิดเสียง { $count } แท็บ
+ }
+browser-tab-unmute =
+ { $count ->
+ [1] เลิกปิดเสียงแท็บ
+ *[other] เลิกปิดเสียง { $count } แท็บ
+ }
+browser-tab-unblock =
+ { $count ->
+ [1] เล่นแท็บ
+ *[other] เล่น { $count } แท็บ
+ }
+
+## Bookmarks toolbar items
+
+browser-import-button2 =
+ .label = นำเข้าที่คั่นหน้า…
+ .tooltiptext = นำเข้าที่คั่นหน้าจากเบราว์เซอร์อื่นมายัง { -brand-short-name }
+bookmarks-toolbar-empty-message = วางที่คั่นหน้าของคุณไว้ที่นี่บนแถบเครื่องมือที่คั่นหน้าเพื่อให้เข้าถึงได้อย่างรวดเร็ว <a data-l10n-name="manage-bookmarks">จัดการที่คั่นหน้า…</a>
+
+## WebRTC Pop-up notifications
+
+popup-select-camera-device =
+ .value = กล้อง:
+ .accesskey = ก
+popup-select-camera-icon =
+ .tooltiptext = กล้อง
+popup-select-microphone-device =
+ .value = ไมโครโฟน:
+ .accesskey = ม
+popup-select-microphone-icon =
+ .tooltiptext = ไมโครโฟน
+popup-select-speaker-icon =
+ .tooltiptext = ลำโพง
+popup-select-window-or-screen =
+ .label = หน้าต่างหรือหน้าจอ:
+ .accesskey = ห
+popup-all-windows-shared = หน้าต่างที่ปรากฏอยู่ทั้งหมดบนหน้าจอของคุณจะถูกแบ่งปัน
+
+## WebRTC window or screen share tab switch warning
+
+sharing-warning-window = คุณกำลังแบ่งปัน { -brand-short-name } คนอื่น ๆ สามารถเห็นได้เมื่อคุณสลับไปยังแท็บใหม่
+sharing-warning-screen = คุณกำลังแบ่งปันทั้งหน้าจอของคุณ คนอื่น ๆ สามารถเห็นได้เมื่อคุณสลับไปยังแท็บใหม่
+sharing-warning-proceed-to-tab =
+ .label = ไปยังแท็บต่อ
+sharing-warning-disable-for-session =
+ .label = ปิดใช้งานการป้องกันการแบ่งปันในวาระนี้
+
+## DevTools F12 popup
+
+enable-devtools-popup-description2 = หากต้องการใช้ทางลัด F12 ให้เปิด DevTools ก่อนผ่านเมนู เครื่องมือสำหรับเบราว์เซอร์
+
+## URL Bar
+
+# This string is used as an accessible name to the "X" button that cancels a custom search mode (i.e. exits the Amazon.com search mode).
+urlbar-search-mode-indicator-close =
+ .aria-label = ปิด
+# This placeholder is used when not in search mode and the user's default search
+# engine is unknown.
+urlbar-placeholder =
+ .placeholder = ค้นหาหรือป้อนที่อยู่
+# This placeholder is used in search mode with search engines that search the
+# entire web.
+# Variables
+# $name (String): the name of a search engine that searches the entire Web
+# (e.g. Google).
+urlbar-placeholder-search-mode-web-2 =
+ .placeholder = ค้นหาเว็บ
+ .aria-label = ค้นหาด้วย { $name }
+# This placeholder is used in search mode with search engines that search a
+# specific site (e.g., Amazon).
+# Variables
+# $name (String): the name of a search engine that searches a specific site
+# (e.g. Amazon).
+urlbar-placeholder-search-mode-other-engine =
+ .placeholder = ป้อนคำค้นหา
+ .aria-label = ค้นหา { $name }
+# This placeholder is used when searching bookmarks.
+urlbar-placeholder-search-mode-other-bookmarks =
+ .placeholder = ป้อนคำค้นหา
+ .aria-label = ค้นหาที่คั่นหน้า
+# This placeholder is used when searching history.
+urlbar-placeholder-search-mode-other-history =
+ .placeholder = ป้อนคำค้นหา
+ .aria-label = ค้นหาประวัติ
+# This placeholder is used when searching open tabs.
+urlbar-placeholder-search-mode-other-tabs =
+ .placeholder = ป้อนคำค้นหา
+ .aria-label = ค้นหาแท็บ
+# This placeholder is used when searching quick actions.
+urlbar-placeholder-search-mode-other-actions =
+ .placeholder = ใส่คำค้นหา
+ .aria-label = คำสั่งการค้นหา
+# Variables
+# $name (String): the name of the user's default search engine
+urlbar-placeholder-with-name =
+ .placeholder = ค้นหาด้วย { $name } หรือป้อนที่อยู่
+# Variables
+# $component (String): the name of the component which forces remote control.
+# Example: "DevTools", "Marionette", "RemoteAgent".
+urlbar-remote-control-notification-anchor2 =
+ .tooltiptext = เบราว์เซอร์อยู่ภายใต้การควบคุมระยะไกล (เหตุผล: { $component })
+urlbar-permissions-granted =
+ .tooltiptext = คุณได้อนุญาตไซต์นี้ด้วยสิทธิเพิ่มเติม
+urlbar-switch-to-tab =
+ .value = สลับไปยังแท็บ:
+# Used to indicate that a selected autocomplete entry is provided by an extension.
+urlbar-extension =
+ .value = ส่วนขยาย:
+urlbar-go-button =
+ .tooltiptext = ไปยังที่อยู่ในแถบตำแหน่งที่ตั้ง
+urlbar-page-action-button =
+ .tooltiptext = การกระทำหน้า
+
+## Action text shown in urlbar results, usually appended after the search
+## string or the url, like "result value - action text".
+
+# Used when the private browsing engine differs from the default engine.
+# The "with" format was chosen because the search engine name can end with
+# "Search", and we would like to avoid strings like "Search MSN Search".
+# Variables
+# $engine (String): the name of a search engine
+urlbar-result-action-search-in-private-w-engine = ค้นหาด้วย { $engine } ในหน้าต่างส่วนตัว
+# Used when the private browsing engine is the same as the default engine.
+urlbar-result-action-search-in-private = ค้นหาในหน้าต่างส่วนตัว
+# The "with" format was chosen because the search engine name can end with
+# "Search", and we would like to avoid strings like "Search MSN Search".
+# Variables
+# $engine (String): the name of a search engine
+urlbar-result-action-search-w-engine = ค้นหาด้วย { $engine }
+urlbar-result-action-sponsored = ได้รับการสนับสนุน
+urlbar-result-action-switch-tab = สลับไปยังแท็บ
+urlbar-result-action-visit = เยี่ยมชม
+# "Switch to tab with container" is used when the target tab is located in a
+# different container.
+# Variables
+# $container (String): the name of the target container
+urlbar-result-action-switch-tab-with-container = สลับไปยังแท็บ · <span>{ $container }</span>
+# Allows the user to visit a URL that was previously copied to the clipboard.
+urlbar-result-action-visit-from-clipboard = เยี่ยมชมจากคลิปบอร์ด
+# Directs a user to press the Tab key to perform a search with the specified
+# engine.
+# Variables
+# $engine (String): the name of a search engine that searches the entire Web
+# (e.g. Google).
+urlbar-result-action-before-tabtosearch-web = กด Tab เพื่อค้นหาด้วย { $engine }
+# Directs a user to press the Tab key to perform a search with the specified
+# engine.
+# Variables
+# $engine (String): the name of a search engine that searches a specific site
+# (e.g. Amazon).
+urlbar-result-action-before-tabtosearch-other = กด Tab เพื่อค้นหา { $engine }
+# Variables
+# $engine (String): the name of a search engine that searches the entire Web
+# (e.g. Google).
+urlbar-result-action-tabtosearch-web = ค้นหาด้วย { $engine } โดยตรงจากแถบที่อยู่
+# Variables
+# $engine (String): the name of a search engine that searches a specific site
+# (e.g. Amazon).
+urlbar-result-action-tabtosearch-other-engine = ค้นหา { $engine } โดยตรงจากแถบที่อยู่
+# Action text for copying to clipboard.
+urlbar-result-action-copy-to-clipboard = คัดลอก
+# Shows the result of a formula expression being calculated, the last = sign will be shown
+# as part of the result (e.g. "= 2").
+# Variables
+# $result (String): the string representation for a formula result
+urlbar-result-action-calculator-result = = { $result }
+
+## Action text shown in urlbar results, usually appended after the search
+## string or the url, like "result value - action text".
+## In these actions "Search" is a verb, followed by where the search is performed.
+
+urlbar-result-action-search-bookmarks = ค้นหาที่คั่นหน้า
+urlbar-result-action-search-history = ค้นหาประวัติ
+urlbar-result-action-search-tabs = ค้นหาแท็บ
+urlbar-result-action-search-actions = คำสั่งการค้นหา
+
+## Labels shown above groups of urlbar results
+
+# A label shown above the "Firefox Suggest" (bookmarks/history) group in the
+# urlbar results.
+urlbar-group-firefox-suggest =
+ .label = { -firefox-suggest-brand-name }
+# A label shown above the search suggestions group in the urlbar results. It
+# should use sentence case.
+# Variables
+# $engine (String): the name of the search engine providing the suggestions
+urlbar-group-search-suggestions =
+ .label = ข้อเสนอแนะ { $engine }
+# A label shown above Quick Actions in the urlbar results.
+urlbar-group-quickactions =
+ .label = คำสั่งด่วน
+# A label shown above the recent searches group in the urlbar results.
+# Variables
+# $engine (String): the name of the search engine used to search.
+urlbar-group-recent-searches =
+ .label = การค้นหาล่าสุด
+
+## Reader View toolbar buttons
+
+# This should match menu-view-enter-readerview in menubar.ftl
+reader-view-enter-button =
+ .aria-label = เข้าสู่มุมมองผู้อ่าน
+# This should match menu-view-close-readerview in menubar.ftl
+reader-view-close-button =
+ .aria-label = ปิดมุมมองผู้อ่าน
+
+## Picture-in-Picture urlbar button
+## Variables:
+## $shortcut (String) - Keyboard shortcut to execute the command.
+
+picture-in-picture-urlbar-button-open =
+ .tooltiptext = เปิดการแสดงภาพซ้อนภาพ ({ $shortcut })
+picture-in-picture-urlbar-button-close =
+ .tooltiptext = ปิดการแสดงภาพซ้อนภาพ ({ $shortcut })
+picture-in-picture-panel-header = ภาพที่เล่นควบคู่
+picture-in-picture-panel-headline = เว็บไซต์นี้ไม่แนะนำภาพที่เล่นควบคู่
+picture-in-picture-panel-body = วิดีโออาจไม่แสดงตามที่นักพัฒนาคาดไว้ในขณะที่เปิดใช้งานการแสดงภาพซ้อนภาพ
+picture-in-picture-enable-toggle =
+ .label = เปิดใช้งานต่อไป
+
+## Full Screen and Pointer Lock UI
+
+# Please ensure that the domain stays in the `<span data-l10n-name="domain">` markup.
+# Variables
+# $domain (String): the domain that is full screen, e.g. "mozilla.org"
+fullscreen-warning-domain = <span data-l10n-name="domain">{ $domain }</span> เต็มหน้าจออยู่
+fullscreen-warning-no-domain = เอกสารนี้เต็มหน้าจออยู่
+fullscreen-exit-button = ออกจากภาพเต็มหน้าจอ (Esc)
+# "esc" is lowercase on mac keyboards, but uppercase elsewhere.
+fullscreen-exit-mac-button = ออกจากภาพเต็มหน้าจอ (esc)
+# Please ensure that the domain stays in the `<span data-l10n-name="domain">` markup.
+# Variables
+# $domain (String): the domain that is using pointer-lock, e.g. "mozilla.org"
+pointerlock-warning-domain = <span data-l10n-name="domain">{ $domain }</span> ได้ควบคุมตัวชี้ของคุณ กด Esc เพื่อดึงการควบคุมคืน
+pointerlock-warning-no-domain = เอกสารชิ้นนี้ได้ควบคุมตัวชี้ของคุณ กด Esc เพื่อดึงการควบคุมคืน
+
+## Bookmarks panels, menus and toolbar
+
+bookmarks-manage-bookmarks =
+ .label = จัดการที่คั่นหน้า
+bookmarks-recent-bookmarks-panel-subheader = ที่คั่นหน้าล่าสุด
+bookmarks-toolbar-chevron =
+ .tooltiptext = แสดงที่คั่นหน้าเพิ่มเติม
+bookmarks-sidebar-content =
+ .aria-label = ที่คั่นหน้า
+bookmarks-menu-button =
+ .label = เมนูที่คั่นหน้า
+bookmarks-other-bookmarks-menu =
+ .label = ที่คั่นหน้าอื่น ๆ
+bookmarks-mobile-bookmarks-menu =
+ .label = ที่คั่นหน้าในมือถือ
+
+## Variables:
+## $isVisible (boolean): if the specific element (e.g. bookmarks sidebar,
+## bookmarks toolbar, etc.) is visible or not.
+
+bookmarks-tools-sidebar-visibility =
+ .label =
+ { $isVisible ->
+ [true] ซ่อนแถบข้างที่คั่นหน้า
+ *[other] ดูแถบข้างที่คั่นหน้า
+ }
+bookmarks-tools-toolbar-visibility-menuitem =
+ .label =
+ { $isVisible ->
+ [true] ซ่อนแถบเครื่องมือที่คั่นหน้า
+ *[other] ดูแถบเครื่องมือที่คั่นหน้า
+ }
+bookmarks-tools-toolbar-visibility-panel =
+ .label =
+ { $isVisible ->
+ [true] ซ่อนแถบเครื่องมือที่คั่นหน้า
+ *[other] แสดงแถบเครื่องมือที่คั่นหน้า
+ }
+bookmarks-tools-menu-button-visibility =
+ .label =
+ { $isVisible ->
+ [true] เอาเมนูที่คั่นหน้าออกจากแถบเครื่องมือ
+ *[other] เพิ่มเมนูที่คั่นหน้าไปยังแถบเครื่องมือ
+ }
+
+##
+
+bookmarks-search =
+ .label = ค้นหาที่คั่นหน้า
+bookmarks-tools =
+ .label = เครื่องมือที่คั่นหน้า
+bookmarks-subview-edit-bookmark =
+ .label = แก้ไขที่คั่นหน้านี้…
+# The aria-label is a spoken label that should not include the word "toolbar" or
+# such, because screen readers already know that this container is a toolbar.
+# This avoids double-speaking.
+bookmarks-toolbar =
+ .toolbarname = แถบเครื่องมือที่คั่นหน้า
+ .accesskey = บ
+ .aria-label = ที่คั่นหน้า
+bookmarks-toolbar-menu =
+ .label = แถบเครื่องมือที่คั่นหน้า
+bookmarks-toolbar-placeholder =
+ .title = รายการแถบเครื่องมือที่คั่นหน้า
+bookmarks-toolbar-placeholder-button =
+ .label = รายการแถบเครื่องมือที่คั่นหน้า
+# "Bookmark" is a verb, as in "Add current tab to bookmarks".
+bookmarks-subview-bookmark-tab =
+ .label = เพิ่มที่คั่นหน้าสำหรับแท็บปัจจุบัน…
+
+## Library Panel items
+
+library-bookmarks-menu =
+ .label = ที่คั่นหน้า
+library-recent-activity-title =
+ .value = กิจกรรมล่าสุด
+
+## Pocket toolbar button
+
+save-to-pocket-button =
+ .label = บันทึกไปยัง { -pocket-brand-name }
+ .tooltiptext = บันทึกไปยัง { -pocket-brand-name }
+
+## Repair text encoding toolbar button
+
+repair-text-encoding-button =
+ .label = ซ่อมแซมรหัสอักขระข้อความ
+ .tooltiptext = คาดเดารหัสอักขระข้อความที่ถูกต้องจากเนื้อหาในหน้า
+
+## Customize Toolbar Buttons
+
+# Variables:
+# $shortcut (String): keyboard shortcut to open settings (only on macOS)
+toolbar-settings-button =
+ .label = การตั้งค่า
+ .tooltiptext =
+ { PLATFORM() ->
+ [macos] เปิดการตั้งค่า ({ $shortcut })
+ *[other] เปิดการตั้งค่า
+ }
+toolbar-overflow-customize-button =
+ .label = ปรับแต่งแถบเครื่องมือ…
+ .accesskey = ป
+toolbar-button-email-link =
+ .label = ส่งลิงก์ทางอีเมล
+ .tooltiptext = ส่งลิงก์ที่ไปยังหน้านี้ทางอีเมล
+toolbar-button-logins =
+ .label = รหัสผ่าน
+ .tooltiptext = ดูและจัดการรหัสผ่านที่บันทึกไว้ของคุณ
+# Variables:
+# $shortcut (String): keyboard shortcut to save a copy of the page
+toolbar-button-save-page =
+ .label = บันทึกหน้า
+ .tooltiptext = บันทึกหน้านี้ ({ $shortcut })
+# Variables:
+# $shortcut (String): keyboard shortcut to open a local file
+toolbar-button-open-file =
+ .label = เปิดไฟล์
+ .tooltiptext = เปิดไฟล์ ({ $shortcut })
+toolbar-button-synced-tabs =
+ .label = แท็บที่ซิงค์
+ .tooltiptext = แสดงแท็บจากอุปกรณ์อื่น ๆ
+# Variables
+# $shortcut (string) - Keyboard shortcut to open a new private browsing window
+toolbar-button-new-private-window =
+ .label = หน้าต่างส่วนตัวใหม่
+ .tooltiptext = เปิดหน้าต่างเรียกดูแบบส่วนตัวใหม่ ({ $shortcut })
+
+## EME notification panel
+
+eme-notifications-drm-content-playing = เสียงหรือวิดีโอบางส่วนในไซต์นี้ใช้ซอฟต์แวร์ DRM ซึ่งอาจจะจำกัดสิ่งที่ { -brand-short-name } สามารถให้คุณทำได้
+eme-notifications-drm-content-playing-manage = จัดการการตั้งค่า
+eme-notifications-drm-content-playing-manage-accesskey = จ
+eme-notifications-drm-content-playing-dismiss = ปิด
+eme-notifications-drm-content-playing-dismiss-accesskey = ด
+
+## Password save/update panel
+
+panel-save-update-username = ชื่อผู้ใช้
+panel-save-update-password = รหัสผ่าน
+
+##
+
+# "More" item in macOS share menu
+menu-share-more =
+ .label = เพิ่มเติม…
+ui-tour-info-panel-close =
+ .tooltiptext = ปิด
+
+## Variables:
+## $uriHost (String): URI host for which the popup was allowed or blocked.
+
+popups-infobar-allow =
+ .label = อนุญาตป๊อปอัปสำหรับ { $uriHost }
+ .accesskey = ป
+popups-infobar-block =
+ .label = ปิดกั้นป๊อปอัปสำหรับ { $uriHost }
+ .accesskey = ป
+
+##
+
+popups-infobar-dont-show-message =
+ .label = ไม่แสดงข้อความนี้เมื่อป๊อปอัปถูกปิดกั้น
+ .accesskey = ข
+edit-popup-settings =
+ .label = จัดการการตั้งค่าป๊อปอัป…
+ .accesskey = จ
+picture-in-picture-hide-toggle =
+ .label = ซ่อนสลับภาพที่เล่นควบคู่
+ .accesskey = อ
+
+## Since the default position for PiP controls does not change for RTL layout,
+## right-to-left languages should use "Left" and "Right" as in the English strings,
+
+picture-in-picture-move-toggle-right =
+ .label = เลื่อนภาพที่เล่นควบคู่สลับไปทางด้านขวา
+ .accesskey = R
+picture-in-picture-move-toggle-left =
+ .label = เลื่อนภาพที่เล่นควบคู่สลับไปทางด้านซ้าย
+ .accesskey = L
+
+##
+
+
+# Navigator Toolbox
+
+# This string is a spoken label that should not include
+# the word "toolbar" or such, because screen readers already know that
+# this container is a toolbar. This avoids double-speaking.
+navbar-accessible =
+ .aria-label = การนำทาง
+navbar-downloads =
+ .label = การดาวน์โหลด
+navbar-overflow =
+ .tooltiptext = เครื่องมือเพิ่มเติม…
+# Variables:
+# $shortcut (String): keyboard shortcut to print the page
+navbar-print =
+ .label = พิมพ์
+ .tooltiptext = พิมพ์หน้านี้… ({ $shortcut })
+navbar-home =
+ .label = หน้าแรก
+ .tooltiptext = หน้าแรกของ { -brand-short-name }
+navbar-library =
+ .label = ห้องสมุด
+ .tooltiptext = ดูประวัติ, ที่คั่นหน้าที่บันทึกไว้ และอื่น ๆ
+navbar-search =
+ .title = ค้นหา
+# Name for the tabs toolbar as spoken by screen readers. The word
+# "toolbar" is appended automatically and should not be included in
+# in the string
+tabs-toolbar =
+ .aria-label = แท็บเบราว์เซอร์
+tabs-toolbar-new-tab =
+ .label = แท็บใหม่
+tabs-toolbar-list-all-tabs =
+ .label = แสดงรายการแท็บทั้งหมด
+ .tooltiptext = แสดงรายการแท็บทั้งหมด
+
+## Infobar shown at startup to suggest session-restore
+
+# <img data-l10n-name="icon"/> will be replaced by the application menu icon
+restore-session-startup-suggestion-message = <strong>ต้องการเปิดแท็บก่อนหน้าหรือไม่</strong> คุณสามารถเรียกคืนวาระก่อนหน้าได้จากเมนูแอปพลิเคชัน { -brand-short-name } <img data-l10n-name="icon"/> ภายใต้ ประวัติ
+restore-session-startup-suggestion-button = แสดงวิธีให้ฉันดู
+
+## Infobar shown when the user tries to open a file picker and file pickers are blocked by enterprise policy
+
+filepicker-blocked-infobar = องค์กรของคุณได้ปิดกั้นการเข้าถึงไฟล์ภายในเครื่องคอมพิวเตอร์นี้
+
+## Mozilla data reporting notification (Telemetry, Firefox Health Report, etc)
+
+data-reporting-notification-message = { -brand-short-name } ส่งข้อมูลบางอย่างไปยัง { -vendor-short-name } โดยอัตโนมัติเพื่อให้เราสามารถปรับปรุงประสบการณ์ของคุณ
+data-reporting-notification-button =
+ .label = เลือกสิ่งที่ฉันจะแบ่งปัน
+ .accesskey = ล
+# Label for the indicator shown in the private browsing window titlebar.
+private-browsing-indicator-label = การเรียกดูแบบส่วนตัว
+
+## Unified extensions (toolbar) button
+
+unified-extensions-button =
+ .label = ส่วนขยาย
+ .tooltiptext = ส่วนขยาย
+
+## Unified extensions button when permission(s) are needed.
+## Note that the new line is intentionally part of the tooltip.
+
+unified-extensions-button-permissions-needed =
+ .label = ส่วนขยาย
+ .tooltiptext =
+ ส่วนขยาย
+ ต้องการสิทธิอนุญาต
+
+## Unified extensions button when some extensions are quarantined.
+## Note that the new line is intentionally part of the tooltip.
+
+unified-extensions-button-quarantined =
+ .label = ส่วนขยาย
+ .tooltiptext =
+ ส่วนขยาย
+ ไม่ได้อนุญาตส่วนขยายบางตัว
+
+## Private browsing reset button
+
+reset-pbm-toolbar-button =
+ .label = จบวาระส่วนตัว
+ .tooltiptext = จบวาระส่วนตัว
+reset-pbm-panel-heading = จบวาระส่วนตัวของคุณหรือไม่?
+reset-pbm-panel-description = ปิดแท็บส่วนตัวทั้งหมดและลบประวัติ คุกกี้ และข้อมูลไซต์อื่น ๆ ทั้งหมด
+reset-pbm-panel-always-ask-checkbox =
+ .label = ถามฉันเสมอ
+ .accesskey = ส
+reset-pbm-panel-cancel-button =
+ .label = ยกเลิก
+ .accesskey = ย
+reset-pbm-panel-confirm-button =
+ .label = ลบข้อมูลวาระ
+ .accesskey = ล
+reset-pbm-panel-complete = ลบข้อมูลวาระส่วนตัวแล้ว
+
+## Autorefresh blocker
+
+refresh-blocked-refresh-label = { -brand-short-name } ได้ป้องกันไม่ให้หน้านี้โหลดใหม่โดยอัตโนมัติ
+refresh-blocked-redirect-label = { -brand-short-name } ได้ป้องกันไม่ให้หน้านี้เปลี่ยนเส้นทางไปยังหน้าอื่นโดยอัตโนมัติ
+refresh-blocked-allow =
+ .label = อนุญาต
+ .accesskey = อ
+
+## Firefox Relay integration
+
+firefox-relay-offer-why-to-use-relay = ตัวปกปิดที่ปลอดภัยและใช้ง่ายของเราช่วยปกป้องข้อมูลประจำตัวของคุณและป้องกันสแปมด้วยการซ่อนที่อยู่อีเมลของคุณ
+# Variables:
+# $useremail (String): user email that will receive messages
+firefox-relay-offer-what-relay-provides = อีเมลทั้งหมดที่ส่งไปยังตัวปกปิดอีเมลของคุณจะถูกส่งต่อไปยัง <strong>{ $useremail }</strong> (นอกจากคุณจะตัดสินใจปิดกั้นอีเมลเหล่านั้น)
+firefox-relay-offer-legal-notice = การคลิก “ใช้ตัวปกปิดอีเมล” ถือว่าคุณยอมรับ<label data-l10n-name="tos-url">เงื่อนไขการใช้บริการ</label>และ<label data-l10n-name="privacy-url">ข้อกำหนดความเป็นส่วนตัว</label>
+
+## Add-on Pop-up Notifications
+
+popup-notification-addon-install-unsigned =
+ .value = (ไม่ได้รับการยืนยัน)
+popup-notification-xpinstall-prompt-learn-more = เรียนรู้เพิ่มเติมเกี่ยวกับการติดตั้งส่วนเสริมอย่างปลอดภัย
+
+## Pop-up warning
+
+# Variables:
+# $popupCount (Number): the number of pop-ups blocked.
+popup-warning-message = { -brand-short-name } ได้ป้องกันไม่ให้ไซต์นี้เปิด { $popupCount } หน้าต่างป๊อปอัป
+# The singular form is left out for English, since the number of blocked pop-ups is always greater than 1.
+# Variables:
+# $popupCount (Number): the number of pop-ups blocked.
+popup-warning-exceeded-message = { -brand-short-name } ได้ป้องกันไม่ให้ไซต์นี้เปิดมากกว่า { $popupCount } หน้าต่างป๊อปอัป
+popup-warning-button =
+ .label =
+ { PLATFORM() ->
+ [windows] ตัวเลือก
+ *[other] การตั้งค่า
+ }
+ .accesskey =
+ { PLATFORM() ->
+ [windows] ต
+ *[other] ค
+ }
+# Variables:
+# $popupURI (String): the URI for the pop-up window
+popup-show-popup-menuitem =
+ .label = แสดง “{ $popupURI }”
diff --git a/l10n-th/browser/browser/browserContext.ftl b/l10n-th/browser/browser/browserContext.ftl
new file mode 100644
index 0000000000..13d3e13ec9
--- /dev/null
+++ b/l10n-th/browser/browser/browserContext.ftl
@@ -0,0 +1,391 @@
+# 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/.
+
+navbar-tooltip-instruction =
+ .value =
+ { PLATFORM() ->
+ [macos] ดึงลงเพื่อแสดงประวัติ
+ *[other] คลิกขวาหรือดึงลงเพื่อแสดงประวัติ
+ }
+
+## Back
+
+# Variables
+# $shortcut (String) - A keyboard shortcut for the Go Back command.
+main-context-menu-back-2 =
+ .tooltiptext = ย้อนกลับไปหนึ่งหน้า ({ $shortcut })
+ .aria-label = ย้อนกลับ
+ .accesskey = ย
+# This menuitem is only visible on macOS
+main-context-menu-back-mac =
+ .label = ย้อนกลับ
+ .accesskey = ย
+navbar-tooltip-back-2 =
+ .value = { main-context-menu-back-2.tooltiptext }
+toolbar-button-back-2 =
+ .label = { main-context-menu-back-2.aria-label }
+
+## Forward
+
+# Variables
+# $shortcut (String) - A keyboard shortcut for the Go Forward command.
+main-context-menu-forward-2 =
+ .tooltiptext = เดินหน้าไปหนึ่งหน้า ({ $shortcut })
+ .aria-label = เดินหน้า
+ .accesskey = ด
+# This menuitem is only visible on macOS
+main-context-menu-forward-mac =
+ .label = เดินหน้า
+ .accesskey = ด
+navbar-tooltip-forward-2 =
+ .value = { main-context-menu-forward-2.tooltiptext }
+toolbar-button-forward-2 =
+ .label = { main-context-menu-forward-2.aria-label }
+
+## Reload
+
+main-context-menu-reload =
+ .aria-label = โหลดใหม่
+ .accesskey = ห
+# This menuitem is only visible on macOS
+main-context-menu-reload-mac =
+ .label = โหลดใหม่
+ .accesskey = ห
+toolbar-button-reload =
+ .label = { main-context-menu-reload.aria-label }
+
+## Stop
+
+main-context-menu-stop =
+ .aria-label = หยุด
+ .accesskey = ห
+# This menuitem is only visible on macOS
+main-context-menu-stop-mac =
+ .label = หยุด
+ .accesskey = ห
+toolbar-button-stop =
+ .label = { main-context-menu-stop.aria-label }
+
+## Stop-Reload Button
+
+toolbar-button-stop-reload =
+ .title = { main-context-menu-reload.aria-label }
+
+## Firefox Account Button
+
+toolbar-button-fxaccount =
+ .label = { -fxaccount-brand-name }
+ .tooltiptext = { -fxaccount-brand-name }
+
+## Account toolbar Button
+
+toolbar-button-account =
+ .label = บัญชี
+ .tooltiptext = บัญชี
+
+## Save Page
+
+main-context-menu-page-save =
+ .label = บันทึกหน้าเป็น…
+ .accesskey = ห
+
+## Simple menu items
+
+main-context-menu-bookmark-page =
+ .aria-label = เพิ่มที่คั่นหน้าสำหรับหน้า…
+ .accesskey = พ
+ .tooltiptext = เพิ่มที่คั่นหน้าสำหรับหน้า
+# This menuitem is only visible on macOS
+# Cannot be shown at the same time as main-context-menu-edit-bookmark-mac,
+# so should probably have the same access key if possible.
+main-context-menu-bookmark-page-mac =
+ .label = เพิ่มที่คั่นหน้าสำหรับหน้า…
+ .accesskey = พ
+# This menuitem is only visible on macOS
+# Cannot be shown at the same time as main-context-menu-bookmark-page-mac,
+# so should probably have the same access key if possible.
+main-context-menu-edit-bookmark-mac =
+ .label = แก้ไขที่คั่นหน้า…
+ .accesskey = ก
+# Variables
+# $shortcut (String) - A keyboard shortcut for the add bookmark command.
+main-context-menu-bookmark-page-with-shortcut =
+ .aria-label = เพิ่มที่คั่นหน้าสำหรับหน้า…
+ .accesskey = ท
+ .tooltiptext = เพิ่มที่คั่นหน้าสำหรับหน้า ({ $shortcut })
+main-context-menu-edit-bookmark =
+ .aria-label = แก้ไขที่คั่นหน้า…
+ .accesskey = ท
+ .tooltiptext = แก้ไขที่คั่นหน้า
+# Variables
+# $shortcut (String) - A keyboard shortcut for the edit bookmark command.
+main-context-menu-edit-bookmark-with-shortcut =
+ .aria-label = แก้ไขที่คั่นหน้า…
+ .accesskey = ท
+ .tooltiptext = แก้ไขที่คั่นหน้า ({ $shortcut })
+main-context-menu-open-link =
+ .label = เปิดลิงก์
+ .accesskey = ป
+main-context-menu-open-link-new-tab =
+ .label = เปิดลิงก์ในแท็บใหม่
+ .accesskey = ท
+main-context-menu-open-link-container-tab =
+ .label = เปิดลิงก์ในแท็บแยกข้อมูลใหม่
+ .accesskey = ย
+main-context-menu-open-link-new-window =
+ .label = เปิดลิงก์ในหน้าต่างใหม่
+ .accesskey = ห
+main-context-menu-open-link-new-private-window =
+ .label = เปิดลิงก์ในหน้าต่างส่วนตัวใหม่
+ .accesskey = ส
+main-context-menu-bookmark-link-2 =
+ .label = เพิ่มที่คั่นหน้าสำหรับลิงก์…
+ .accesskey = พ
+main-context-menu-save-link =
+ .label = บันทึกลิงก์เป็น…
+ .accesskey = น
+main-context-menu-save-link-to-pocket =
+ .label = บันทึกลิงก์ไปยัง { -pocket-brand-name }
+ .accesskey = น
+
+## The access keys for "Copy Link" and "Copy Email Address"
+## should be the same if possible; the two context menu items
+## are mutually exclusive.
+
+main-context-menu-copy-email =
+ .label = คัดลอกที่อยู่อีเมล
+ .accesskey = ท
+main-context-menu-copy-phone =
+ .label = คัดลอกหมายเลขโทรศัพท์
+ .accesskey = o
+main-context-menu-copy-link-simple =
+ .label = คัดลอกลิงก์
+ .accesskey = L
+# This command copies the link, removing additional
+# query parameters used to track users across sites.
+main-context-menu-strip-on-share-link =
+ .label = คัดลอกลิงก์โดยไม่ติดตามไซต์
+ .accesskey = ค
+
+## Media (video/audio) controls
+##
+## The accesskey for "Play" and "Pause" are the
+## same because the two context-menu items are
+## mutually exclusive.
+
+main-context-menu-media-play =
+ .label = เล่น
+ .accesskey = ล
+main-context-menu-media-pause =
+ .label = หยุดชั่วคราว
+ .accesskey = ห
+
+##
+
+main-context-menu-media-mute =
+ .label = ปิดเสียง
+ .accesskey = ส
+main-context-menu-media-unmute =
+ .label = เลิกปิดเสียง
+ .accesskey = ส
+main-context-menu-media-play-speed-2 =
+ .label = ความเร็ว
+ .accesskey = ร
+main-context-menu-media-play-speed-slow-2 =
+ .label = 0.5×
+main-context-menu-media-play-speed-normal-2 =
+ .label = 1.0×
+main-context-menu-media-play-speed-fast-2 =
+ .label = 1.25×
+main-context-menu-media-play-speed-faster-2 =
+ .label = 1.5×
+main-context-menu-media-play-speed-fastest-2 =
+ .label = 2×
+main-context-menu-media-loop =
+ .label = วนรอบ
+ .accesskey = ว
+
+## The access keys for "Show Controls" and "Hide Controls" are the same
+## because the two context-menu items are mutually exclusive.
+
+main-context-menu-media-show-controls =
+ .label = แสดงปุ่มควบคุม
+ .accesskey = ค
+main-context-menu-media-hide-controls =
+ .label = ซ่อนปุ่มควบคุม
+ .accesskey = ค
+
+##
+
+main-context-menu-media-video-fullscreen =
+ .label = เต็มหน้าจอ
+ .accesskey = จ
+main-context-menu-media-video-leave-fullscreen =
+ .label = ออกจากภาพเต็มหน้าจอ
+ .accesskey = อ
+# This is used when right-clicking on a video in the
+# content area when the Picture-in-Picture feature is enabled.
+main-context-menu-media-watch-pip =
+ .label = ดูในแบบภาพที่เล่นควบคู่
+ .accesskey = ค
+main-context-menu-image-reload =
+ .label = โหลดภาพใหม่
+ .accesskey = ห
+main-context-menu-image-view-new-tab =
+ .label = เปิดภาพในแท็บใหม่
+ .accesskey = ภ
+main-context-menu-video-view-new-tab =
+ .label = เปิดวิดีโอในแท็บใหม่
+ .accesskey = ว
+main-context-menu-image-copy =
+ .label = คัดลอกภาพ
+ .accesskey = ค
+main-context-menu-image-copy-link =
+ .label = คัดลอกลิงก์ภาพ
+ .accesskey = o
+main-context-menu-video-copy-link =
+ .label = คัดลอกลิงก์วิดีโอ
+ .accesskey = o
+main-context-menu-audio-copy-link =
+ .label = คัดลอกลิงก์เสียง
+ .accesskey = o
+main-context-menu-image-save-as =
+ .label = บันทึกภาพเป็น…
+ .accesskey = บ
+main-context-menu-image-email =
+ .label = ส่งอีเมลภาพ…
+ .accesskey = ม
+main-context-menu-image-set-image-as-background =
+ .label = ตั้งค่ารูปภาพเป็นพื้นหลังเดสก์ท็อป…
+ .accesskey = S
+main-context-menu-image-copy-text =
+ .label = คัดลอกข้อความจากภาพ
+ .accesskey = ข
+main-context-menu-image-info =
+ .label = ดูข้อมูลภาพ
+ .accesskey = ข
+main-context-menu-image-desc =
+ .label = ดูคำอธิบาย
+ .accesskey = ย
+main-context-menu-video-save-as =
+ .label = บันทึกวิดีโอเป็น…
+ .accesskey = น
+main-context-menu-audio-save-as =
+ .label = บันทึกเสียงเป็น…
+ .accesskey = บ
+main-context-menu-video-take-snapshot =
+ .label = ถ่ายสแนปช็อต…
+ .accesskey = ส
+main-context-menu-video-email =
+ .label = ส่งอีเมลวิดีโอ…
+ .accesskey = ม
+main-context-menu-audio-email =
+ .label = ส่งอีเมลเสียง…
+ .accesskey = ม
+main-context-menu-save-to-pocket =
+ .label = บันทึกหน้าไปยัง { -pocket-brand-name }
+ .accesskey = บ
+main-context-menu-send-to-device =
+ .label = ส่งหน้าไปยังอุปกรณ์
+ .accesskey = ส
+
+## The access keys for "Use Saved Login" and "Use Saved Password"
+## should be the same if possible; the two context menu items
+## are mutually exclusive.
+
+main-context-menu-use-saved-login =
+ .label = ใช้การเข้าสู่ระบบที่บันทึกไว้
+ .accesskey = บ
+# Displayed when there are saved passwords and the user clicks inside a username or password field
+main-context-menu-use-saved-password =
+ .label = ใช้รหัสผ่านที่บันทึกไว้
+ .accesskey = ห
+
+##
+
+main-context-menu-use-relay-mask =
+ .label = ใช้ตัวปกปิดอีเมลของ { -relay-brand-short-name }
+ .accesskey = อ
+main-context-menu-suggest-strong-password =
+ .label = แนะนำรหัสผ่านที่คาดเดายาก…
+ .accesskey = ย
+main-context-menu-manage-logins2 =
+ .label = จัดการการเข้าสู่ระบบ
+ .accesskey = จ
+main-context-menu-manage-passwords =
+ .label = จัดการรหัสผ่าน
+ .accesskey = จ
+main-context-menu-keyword =
+ .label = เพิ่มคำสำคัญสำหรับการค้นหานี้…
+ .accesskey = พ
+main-context-menu-link-send-to-device =
+ .label = ส่งลิงก์ไปยังอุปกรณ์
+ .accesskey = ส
+main-context-menu-frame =
+ .label = กรอบนี้
+ .accesskey = ก
+main-context-menu-frame-show-this =
+ .label = แสดงเฉพาะกรอบนี้
+ .accesskey = ส
+main-context-menu-frame-open-tab =
+ .label = เปิดกรอบในแท็บใหม่
+ .accesskey = ท
+main-context-menu-frame-open-window =
+ .label = เปิดกรอบในหน้าต่างใหม่
+ .accesskey = ห
+main-context-menu-frame-reload =
+ .label = โหลดกรอบใหม่
+ .accesskey = ล
+main-context-menu-frame-add-bookmark =
+ .label = เพิ่มที่คั่นหน้าสำหรับเฟรม…
+ .accesskey = ท
+main-context-menu-frame-save-as =
+ .label = บันทึกกรอบเป็น…
+ .accesskey = ก
+main-context-menu-frame-print =
+ .label = พิมพ์กรอบ…
+ .accesskey = พ
+main-context-menu-frame-view-source =
+ .label = ดูต้นฉบับกรอบ
+ .accesskey = ด
+main-context-menu-frame-view-info =
+ .label = ดูข้อมูลกรอบ
+ .accesskey = ข
+main-context-menu-print-selection-2 =
+ .label = พิมพ์ส่วนที่เลือก…
+ .accesskey = ม
+main-context-menu-view-selection-source =
+ .label = ดูต้นฉบับส่วนที่เลือก
+ .accesskey = ต
+main-context-menu-take-screenshot =
+ .label = ถ่ายภาพหน้าจอ
+ .accesskey = ถ
+main-context-menu-take-frame-screenshot =
+ .label = ถ่ายภาพหน้าจอ
+ .accesskey = ภ
+main-context-menu-view-page-source =
+ .label = ดูต้นฉบับหน้า
+ .accesskey = ด
+main-context-menu-bidi-switch-text =
+ .label = สลับทิศทางข้อความ
+ .accesskey = ล
+main-context-menu-bidi-switch-page =
+ .label = สลับทิศทางหน้ากระดาษ
+ .accesskey = ส
+main-context-menu-inspect =
+ .label = ตรวจสอบ
+ .accesskey = Q
+main-context-menu-inspect-a11y-properties =
+ .label = ตรวจสอบคุณสมบัติการช่วยการเข้าถึง
+main-context-menu-eme-learn-more =
+ .label = เรียนรู้เพิ่มเติมเกี่ยวกับ DRM…
+ .accesskey = ร
+# Variables
+# $containerName (String): The name of the current container
+main-context-menu-open-link-in-container-tab =
+ .label = เปิดลิงก์ในแท็บ { $containerName } ใหม่
+ .accesskey = T
+main-context-menu-reveal-password =
+ .label = เผยรหัสผ่าน
+ .accesskey = v
diff --git a/l10n-th/browser/browser/browserSets.ftl b/l10n-th/browser/browser/browserSets.ftl
new file mode 100644
index 0000000000..d2abebf5a0
--- /dev/null
+++ b/l10n-th/browser/browser/browserSets.ftl
@@ -0,0 +1,218 @@
+# 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/.
+
+window-minimize-command =
+ .label = ย่อ
+
+window-zoom-command =
+ .label = ซูม
+
+window-new-shortcut =
+ .key = N
+
+window-minimize-shortcut =
+ .key = m
+
+close-shortcut =
+ .key = W
+
+tab-new-shortcut =
+ .key = t
+
+location-open-shortcut =
+ .key = l
+
+location-open-shortcut-alt =
+ .key = D
+
+search-focus-shortcut =
+ .key = k
+
+# This shortcut is used in two contexts:
+# - web search
+# - find in page
+find-shortcut =
+ .key = f
+
+search-find-again-shortcut =
+ .key = g
+
+search-find-again-shortcut-alt =
+ .keycode = VK_F3
+
+search-find-selection-shortcut =
+ .key = e
+
+# Verify what shortcut for that operation
+# are recommended by the Human Interface Guidelines
+# of each platform for your locale.
+search-focus-shortcut-alt =
+ .key =
+ { PLATFORM() ->
+ [linux] j
+ *[other] e
+ }
+
+# Verify what shortcut for that operation
+# are recommended by the Human Interface Guidelines
+# of each platform for your locale.
+downloads-shortcut =
+ .key =
+ { PLATFORM() ->
+ [linux] y
+ *[other] j
+ }
+
+addons-shortcut =
+ .key = A
+
+file-open-shortcut =
+ .key = o
+
+save-page-shortcut =
+ .key = s
+
+page-source-shortcut =
+ .key = u
+
+# This should match the Option+Command keyboard shortcut letter that Safari
+# and Chrome use for "View Source" on macOS. `page-source-shortcut` above
+# is Firefox's official keyboard shortcut shown in the GUI.
+# Safari variant is an alias provided for the convenience of Safari and Chrome
+# users on macOS. See bug 1398988.
+page-source-shortcut-safari =
+ .key = u
+
+page-info-shortcut =
+ .key = i
+
+print-shortcut =
+ .key = p
+
+mute-toggle-shortcut =
+ .key = M
+
+nav-back-shortcut-alt =
+ .key = [
+
+nav-fwd-shortcut-alt =
+ .key = ]
+
+nav-reload-shortcut =
+ .key = r
+
+# Shortcut available only on macOS.
+nav-stop-shortcut =
+ .key = .
+
+history-show-all-shortcut =
+ .key = H
+
+history-show-all-shortcut-mac =
+ .key = Y
+
+history-sidebar-shortcut =
+ .key = h
+
+full-screen-shortcut =
+ .key = f
+
+reader-mode-toggle-shortcut-windows =
+ .keycode = VK_F9
+
+reader-mode-toggle-shortcut-other =
+ .key = R
+
+picture-in-picture-toggle-shortcut-mac =
+ .key = ]
+
+# Pick the key that is commonly present
+# in your locale keyboards above the
+# `picture-in-picture-toggle-shortcut-mac` key.
+picture-in-picture-toggle-shortcut-mac-alt =
+ .key = { "}" }
+
+picture-in-picture-toggle-shortcut =
+ .key = ]
+
+# Pick the key that is commonly present
+# in your locale keyboards above the
+# `picture-in-picture-toggle-shortcut` key.
+picture-in-picture-toggle-shortcut-alt =
+ .key = { "}" }
+
+bookmark-this-page-shortcut =
+ .key = d
+
+# Verify what shortcut for that operation
+# are recommended by the Human Interface Guidelines
+# of each platform for your locale.
+bookmark-show-library-shortcut =
+ .key = O
+
+# Verify what shortcut for that operation
+# are recommended by the Human Interface Guidelines
+# of each platform for your locale.
+bookmark-show-sidebar-shortcut =
+ .key = b
+
+# Verify what shortcut for that operation
+# are recommended by the Human Interface Guidelines
+# of each platform for your locale.
+bookmark-show-toolbar-shortcut =
+ .key = B
+
+## All `-alt*` messages are alternative acceleration keys for zoom.
+## If shift key is needed with your locale popular keyboard for them,
+## you can use these alternative items. Otherwise, their values should be empty.
+
+full-zoom-reduce-shortcut =
+ .key = -
+
+full-zoom-reduce-shortcut-alt-a =
+ .key = _
+
+full-zoom-reduce-shortcut-alt-b =
+ .key = { "" }
+
+full-zoom-enlarge-shortcut =
+ .key = +
+
+full-zoom-enlarge-shortcut-alt =
+ .key = =
+
+full-zoom-enlarge-shortcut-alt2 =
+ .key = { "" }
+
+full-zoom-reset-shortcut =
+ .key = 0
+
+full-zoom-reset-shortcut-alt =
+ .key = { "" }
+
+##
+
+bidi-switch-direction-shortcut =
+ .key = X
+
+private-browsing-shortcut =
+ .key = P
+
+## The shortcuts below are for Mac specific
+## global menu.
+
+quit-app-shortcut =
+ .key = Q
+
+help-shortcut =
+ .key = ?
+
+preferences-shortcut =
+ .key = ,
+
+hide-app-shortcut =
+ .key = H
+
+hide-other-apps-shortcut =
+ .key = H
diff --git a/l10n-th/browser/browser/colorways.ftl b/l10n-th/browser/browser/colorways.ftl
new file mode 100644
index 0000000000..2174f4363a
--- /dev/null
+++ b/l10n-th/browser/browser/colorways.ftl
@@ -0,0 +1,26 @@
+# 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/.
+
+
+## Colorway collections
+
+## Colorway names and descriptions
+
+playmaker-colorway-name = เพลย์เมคเกอร์
+playmaker-colorway-description = คุณสร้างโอกาสในการชนะและช่วยทุกคนรอบตัวคุณยกระดับความสามารถในการเล่นเกมของพวกเขา
+
+expressionist-colorway-name = นักแสดงออก
+expressionist-colorway-description = คุณมองโลกแตกต่างออกไปและการสร้างสรรค์ของคุณก็กระตุ้นอารมณ์ของผู้อื่น
+
+visionary-colorway-name = ผู้มีวิสัยทัศน์
+visionary-colorway-description = คุณตั้งคำถามกับสภาพที่เป็นอยู่และกระตุ้นให้ผู้อื่นจินตนาการถึงอนาคตที่ดีกว่า
+
+activist-colorway-name = นักกิจกรรม
+activist-colorway-description = คุณทำให้โลกนี้เป็นสถานที่ที่ดียิ่งขึ้นและชักนำให้ผู้อื่นเชื่อคุณ
+
+dreamer-colorway-name = คนช่างฝัน
+dreamer-colorway-description = คุณเชื่อว่าโชคเข้าข้างผู้กล้าเสมอและเป็นแรงบันดาลใจให้ผู้อื่นกล้า
+
+innovator-colorway-name = นักนวัตกรรม
+innovator-colorway-description = คุณมองเห็นโอกาสทุกที่และสร้างอิทธิพลต่อชีวิตของทุกคนรอบตัวคุณ
diff --git a/l10n-th/browser/browser/components/mozSupportLink.ftl b/l10n-th/browser/browser/components/mozSupportLink.ftl
new file mode 100644
index 0000000000..0eabfbf383
--- /dev/null
+++ b/l10n-th/browser/browser/components/mozSupportLink.ftl
@@ -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/.
+
+moz-support-link-text = เรียนรู้เพิ่มเติม
diff --git a/l10n-th/browser/browser/confirmationHints.ftl b/l10n-th/browser/browser/confirmationHints.ftl
new file mode 100644
index 0000000000..d1c962d6b3
--- /dev/null
+++ b/l10n-th/browser/browser/confirmationHints.ftl
@@ -0,0 +1,24 @@
+# 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/.
+
+
+## Confirmation hints
+
+confirmation-hint-breakage-report-sent = ส่งรายงานแล้ว ขอบคุณ!
+confirmation-hint-login-removed = เอาการเข้าสู่ระบบออกแล้ว!
+confirmation-hint-password-removed = ลบรหัสผ่านออกแล้ว!
+confirmation-hint-page-bookmarked = บันทึกไปยังที่คั่นหน้าแล้ว
+confirmation-hint-password-saved = บันทึกรหัสผ่านแล้ว!
+confirmation-hint-password-created = บันทึกรหัสผ่านแล้ว
+confirmation-hint-password-updated = ปรับปรุงรหัสผ่านแล้ว
+confirmation-hint-address-created = บันทึกที่อยู่แล้ว
+confirmation-hint-address-updated = ปรับปรุงที่อยู่แล้ว
+confirmation-hint-credit-card-created = บันทึกบัตรแล้ว
+confirmation-hint-credit-card-updated = ปรับปรุงบัตรแล้ว
+confirmation-hint-pin-tab = ปักหมุดแล้ว!
+confirmation-hint-pin-tab-description = คลิกขวาที่แท็บเพื่อถอนหมุด
+confirmation-hint-send-to-device = ส่งแล้ว!
+confirmation-hint-firefox-relay-mask-created = สร้างตัวปกปิดใหม่แล้ว!
+confirmation-hint-firefox-relay-mask-reused = ใช้ตัวปกปิดที่มีอยู่ซ้ำแล้ว!
+confirmation-hint-screenshot-copied = คัดลอกภาพหน้าจอแล้ว!
diff --git a/l10n-th/browser/browser/contentCrash.ftl b/l10n-th/browser/browser/contentCrash.ftl
new file mode 100644
index 0000000000..7c338dc74f
--- /dev/null
+++ b/l10n-th/browser/browser/contentCrash.ftl
@@ -0,0 +1,30 @@
+# 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/.
+
+
+## Subframe crash notification
+
+crashed-subframe-message = <strong>เนื้อหาบางส่วนของหน้านี้ขัดข้อง</strong> หากต้องการแจ้งให้ { -brand-product-name } ทราบเกี่ยวกับปัญหานี้เพื่อให้ได้รับการแก้ไขเร็วขึ้น โปรดส่งรายงาน
+
+# The string for crashed-subframe-title.title should match crashed-subframe-message,
+# but without any markup.
+crashed-subframe-title =
+ .title = เนื้อหาบางส่วนของหน้านี้ขัดข้อง หากต้องการแจ้งให้ { -brand-product-name } ทราบเกี่ยวกับปัญหานี้เพื่อให้ได้รับการแก้ไขเร็วขึ้น โปรดส่งรายงาน
+crashed-subframe-learnmore-link =
+ .value = เรียนรู้เพิ่มเติม
+crashed-subframe-submit =
+ .label = ส่งรายงาน
+ .accesskey = ส
+
+## Pending crash reports
+
+# Variables:
+# $reportCount (Number): the number of pending crash reports
+pending-crash-reports-message = คุณมี { $reportCount } รายงานข้อขัดข้องที่ยังไม่ได้ส่ง
+pending-crash-reports-view-all =
+ .label = ดู
+pending-crash-reports-send =
+ .label = ส่ง
+pending-crash-reports-always-send =
+ .label = ส่งเสมอ
diff --git a/l10n-th/browser/browser/customizeMode.ftl b/l10n-th/browser/browser/customizeMode.ftl
new file mode 100644
index 0000000000..ed05f98a50
--- /dev/null
+++ b/l10n-th/browser/browser/customizeMode.ftl
@@ -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/.
+
+customize-mode-restore-defaults =
+ .label = เรียกคืนค่าเริ่มต้น
+customize-mode-menu-and-toolbars-header = ลากรายการโปรดของคุณลงในแถบเครื่องมือหรือเมนูล้น
+customize-mode-overflow-list-title = เมนูล้น
+customize-mode-uidensity =
+ .label = ความหนาแน่น
+customize-mode-done =
+ .label = เสร็จสิ้น
+customize-mode-toolbars =
+ .label = แถบเครื่องมือ
+customize-mode-titlebar =
+ .label = แถบชื่อเรื่อง
+customize-mode-uidensity-menu-touch =
+ .label = สัมผัส
+ .accesskey = ส
+ .tooltiptext = สัมผัส
+customize-mode-uidensity-auto-touch-mode-checkbox =
+ .label = ใช้การสัมผัสสำหรับโหมดแท็บเล็ต
+customize-mode-overflow-list-description = ลากแล้วปล่อยรายการที่นี่เพื่อเก็บรายการไว้ใกล้เอื้อมแต่อยู่นอกแถบเครื่องมือของคุณ…
+customize-mode-uidensity-menu-normal =
+ .label = ปกติ
+ .accesskey = ป
+ .tooltiptext = ปกติ
+customize-mode-uidensity-menu-compact-unsupported =
+ .label = กะทัดรัด (ไม่รองรับ)
+ .accesskey = ก
+ .tooltiptext = กะทัดรัด (ไม่รองรับ)
+customize-mode-undo-cmd =
+ .label = เลิกทำ
+customize-mode-lwthemes-link = จัดการชุดรูปแบบ
+customize-mode-touchbar-cmd =
+ .label = ปรับแต่งแถบสัมผัส…
+customize-mode-downloads-button-autohide =
+ .label = ซ่อนปุ่มเมื่อว่างเปล่า
diff --git a/l10n-th/browser/browser/defaultBrowserNotification.ftl b/l10n-th/browser/browser/defaultBrowserNotification.ftl
new file mode 100644
index 0000000000..8565442512
--- /dev/null
+++ b/l10n-th/browser/browser/defaultBrowserNotification.ftl
@@ -0,0 +1,23 @@
+# 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/.
+
+# The question portion of the following message should have the <strong> and </strong> tags surrounding it.
+default-browser-notification-message = <strong>ตั้ง { -brand-short-name } เป็นเบราว์เซอร์เริ่มต้นของคุณหรือไม่?</strong> ให้คุณเรียกดูได้อย่างรวดเร็ว ปลอดภัย และเป็นส่วนตัวเมื่อใดก็ตามที่คุณใช้เว็บ
+default-browser-notification-button =
+ .label = ตั้งเป็นค่าเริ่มต้น
+ .accesskey = ต
+
+## These strings are used for the default browser prompt. There are 2 variations
+## depending on the operating system (Windows vs other). The checkbox label and
+## secondary button are shared between the variants.
+
+default-browser-prompt-title-pin = ต้องการทำให้ { -brand-short-name } เป็นเบราว์เซอร์หลักของคุณหรือไม่
+default-browser-prompt-message-pin = นำ { -brand-short-name } มาไว้ที่ปลายนิ้วมือของคุณโดยทำให้เป็นเบราว์เซอร์เริ่มต้นของคุณและปักหมุดเข้ากับแถบงานของคุณ
+default-browser-prompt-message-pin-mac = นำ { -brand-short-name } มาไว้ที่ปลายนิ้วมือของคุณโดยทำให้เป็นเบราว์เซอร์เริ่มต้นและเก็บไว้บน Dock ของคุณ
+default-browser-prompt-button-primary-pin = ทำให้เป็นเบราว์เซอร์หลัก
+default-browser-prompt-title-alt = ต้องการทำให้ { -brand-short-name } เป็นเบราว์เซอร์เริ่มต้นของคุณหรือไม่
+default-browser-prompt-message-alt = รับความเร็ว ความปลอดภัย และความเป็นส่วนตัวในทุกครั้งที่คุณเรียกดู
+default-browser-prompt-button-primary-alt = ตั้งเป็นเบราว์เซอร์เริ่มต้น
+default-browser-prompt-checkbox-not-again-label = อย่าแสดงข้อความนี้อีก
+default-browser-prompt-button-secondary = ไม่ใช่ตอนนี้
diff --git a/l10n-th/browser/browser/downloads.ftl b/l10n-th/browser/browser/downloads.ftl
new file mode 100644
index 0000000000..9bdc6025a0
--- /dev/null
+++ b/l10n-th/browser/browser/downloads.ftl
@@ -0,0 +1,253 @@
+# 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/.
+
+
+## The title and aria-label attributes are used by screen readers to describe
+## the Downloads Panel.
+
+downloads-window =
+ .title = การดาวน์โหลด
+downloads-panel =
+ .aria-label = การดาวน์โหลด
+
+##
+
+# The style attribute has the width of the Downloads Panel expressed using
+# a CSS unit. The longest labels that should fit are usually those of
+# in-progress and blocked downloads.
+downloads-panel-items =
+ .style = width: 35em
+
+downloads-cmd-pause =
+ .label = หยุดชั่วคราว
+ .accesskey = ห
+downloads-cmd-resume =
+ .label = ทำต่อ
+ .accesskey = ท
+downloads-cmd-cancel =
+ .tooltiptext = ยกเลิก
+downloads-cmd-cancel-panel =
+ .aria-label = ยกเลิก
+
+downloads-cmd-show-menuitem-2 =
+ .label =
+ { PLATFORM() ->
+ [macos] แสดงในโฟลเดอร์
+ *[other] แสดงในโฟลเดอร์
+ }
+ .accesskey = ฟ
+
+## Displayed in the downloads context menu for files that can be opened.
+## Variables:
+## $handler (String) - The name of the mime type's default file handler.
+## Example: "Notepad", "Acrobat Reader DC", "7-Zip File Manager"
+
+downloads-cmd-use-system-default =
+ .label = เปิดในตัวดูของระบบ
+ .accesskey = ต
+# This version is shown when the download's mime type has a valid file handler.
+downloads-cmd-use-system-default-named =
+ .label = เปิดใน { $handler }
+ .accesskey = I
+
+# We can use the same accesskey as downloads-cmd-always-open-similar-files.
+# Both should not be visible in the downloads context menu at the same time.
+downloads-cmd-always-use-system-default =
+ .label = เปิดในตัวดูของระบบเสมอ
+ .accesskey = ส
+# We can use the same accesskey as downloads-cmd-always-open-similar-files.
+# Both should not be visible in the downloads context menu at the same time.
+# This version is shown when the download's mime type has a valid file handler.
+downloads-cmd-always-use-system-default-named =
+ .label = เปิดใน { $handler } เสมอ
+ .accesskey = w
+
+##
+
+# We can use the same accesskey as downloads-cmd-always-use-system-default.
+# Both should not be visible in the downloads context menu at the same time.
+downloads-cmd-always-open-similar-files =
+ .label = เปิดไฟล์ที่คล้ายกันเสมอ
+ .accesskey = ส
+
+downloads-cmd-show-button-2 =
+ .tooltiptext =
+ { PLATFORM() ->
+ [macos] แสดงในโฟลเดอร์
+ *[other] แสดงในโฟลเดอร์
+ }
+
+downloads-cmd-show-panel-2 =
+ .aria-label =
+ { PLATFORM() ->
+ [macos] แสดงในโฟลเดอร์
+ *[other] แสดงในโฟลเดอร์
+ }
+downloads-cmd-show-description-2 =
+ .value =
+ { PLATFORM() ->
+ [macos] แสดงในโฟลเดอร์
+ *[other] แสดงในโฟลเดอร์
+ }
+
+downloads-cmd-show-downloads =
+ .label = แสดงโฟลเดอร์การดาวน์โหลด
+downloads-cmd-retry =
+ .tooltiptext = ลองใหม่
+downloads-cmd-retry-panel =
+ .aria-label = ลองใหม่
+downloads-cmd-go-to-download-page =
+ .label = ไปยังหน้าดาวน์โหลด
+ .accesskey = ป
+downloads-cmd-copy-download-link =
+ .label = คัดลอกลิงก์ดาวน์โหลด
+ .accesskey = ล
+downloads-cmd-remove-from-history =
+ .label = เอาออกจากประวัติ
+ .accesskey = อ
+downloads-cmd-clear-list =
+ .label = ล้างแผงแสดงตัวอย่าง
+ .accesskey = ง
+downloads-cmd-clear-downloads =
+ .label = ล้างการดาวน์โหลด
+ .accesskey = ด
+downloads-cmd-delete-file =
+ .label = ลบ
+ .accesskey = D
+
+# This command is shown in the context menu when downloads are blocked.
+downloads-cmd-unblock =
+ .label = อนุญาตการดาวน์โหลด
+ .accesskey = ต
+
+# This is the tooltip of the action button shown when malware is blocked.
+downloads-cmd-remove-file =
+ .tooltiptext = เอาไฟล์ออก
+
+downloads-cmd-remove-file-panel =
+ .aria-label = เอาไฟล์ออก
+
+# This is the tooltip of the action button shown when potentially unwanted
+# downloads are blocked. This opens a dialog where the user can choose
+# whether to unblock or remove the download. Removing is the default option.
+downloads-cmd-choose-unblock =
+ .tooltiptext = เอาไฟล์ออกหรืออนุญาตการดาวน์โหลด
+
+downloads-cmd-choose-unblock-panel =
+ .aria-label = เอาไฟล์ออกหรืออนุญาตการดาวน์โหลด
+
+# This is the tooltip of the action button shown when uncommon downloads are
+# blocked.This opens a dialog where the user can choose whether to open the
+# file or remove the download. Opening is the default option.
+downloads-cmd-choose-open =
+ .tooltiptext = เปิดหรือเอาไฟล์ออก
+
+downloads-cmd-choose-open-panel =
+ .aria-label = เปิดหรือเอาไฟล์ออก
+
+# Displayed when hovering a blocked download, indicates that it's possible to
+# show more information for user to take the next action.
+downloads-show-more-information =
+ .value = แสดงข้อมูลเพิ่มเติม
+
+# Displayed when hovering a complete download, indicates that it's possible to
+# open the file using an app available in the system.
+downloads-open-file =
+ .value = เปิดไฟล์
+
+## Displayed when the user clicked on a download in process. Indicates that the
+## downloading file will be opened after certain amount of time using an app
+## available in the system.
+## Variables:
+## $hours (number) - Amount of hours left till the file opens.
+## $seconds (number) - Amount of seconds left till the file opens.
+## $minutes (number) - Amount of minutes till the file opens.
+
+downloading-file-opens-in-hours-and-minutes-2 =
+ .value = จะเปิดในอีก { $hours } ชั่วโมง { $minutes } นาที…
+downloading-file-opens-in-minutes-2 =
+ .value = จะเปิดในอีก { $minutes } นาที…
+downloading-file-opens-in-minutes-and-seconds-2 =
+ .value = จะเปิดในอีก { $minutes } นาที { $seconds } วินาที…
+downloading-file-opens-in-seconds-2 =
+ .value = จะเปิดในอีก { $seconds } วินาที…
+downloading-file-opens-in-some-time-2 =
+ .value = จะเปิดเมื่อเสร็จสมบูรณ์แล้ว…
+downloading-file-click-to-open =
+ .value = เปิดเมื่อเสร็จสมบูรณ์แล้ว
+
+##
+
+# Displayed when hovering a download which is able to be retried by users,
+# indicates that it's possible to download this file again.
+downloads-retry-download =
+ .value = ลองดาวน์โหลดใหม่
+
+# Displayed when hovering a download which is able to be cancelled by users,
+# indicates that it's possible to cancel and stop the download.
+downloads-cancel-download =
+ .value = ยกเลิกการดาวน์โหลด
+
+# This string is shown at the bottom of the Downloads Panel when all the
+# downloads fit in the available space, or when there are no downloads in
+# the panel at all.
+downloads-history =
+ .label = แสดงการดาวน์โหลดทั้งหมด
+ .accesskey = ส
+
+# This string is shown at the top of the Download Details Panel, to indicate
+# that we are showing the details of a single download.
+downloads-details =
+ .title = รายละเอียดการดาวน์โหลด
+
+## Displayed when a site attempts to automatically download many files.
+## Variables:
+## $num (number) - Number of blocked downloads.
+## $url (string) - The url of the suspicious site, stripped of http, https and www prefix.
+
+downloads-files-not-downloaded =
+ { $num ->
+ [one] ไฟล์ไม่ได้ดาวน์โหลด
+ *[other] { $num } ไฟล์ไม่ได้ดาวน์โหลด
+ }
+downloads-blocked-from-url = การดาวน์โหลดถูกปิดกั้นจาก { $url }
+downloads-blocked-download-detailed-info = { $url } พยายามดาวน์โหลดไฟล์หลายไฟล์โดยอัตโนมัติ ไซต์อาจเสียหายหรือพยายามจัดเก็บสแปมไฟล์ในอุปกรณ์ของคุณ
+
+##
+
+downloads-clear-downloads-button =
+ .label = ล้างการดาวน์โหลด
+ .tooltiptext = ล้างการดาวน์โหลดที่เสร็จสมบูรณ์ ถูกยกเลิก และล้มเหลว
+
+# This string is shown when there are no items in the Downloads view, when it
+# is displayed inside a browser tab.
+downloads-list-empty =
+ .value = ไม่มีการดาวน์โหลด
+
+# This string is shown when there are no items in the Downloads Panel.
+downloads-panel-empty =
+ .value = ไม่มีการดาวน์โหลดในวาระนี้
+
+# This is displayed in an item at the bottom of the Downloads Panel when there
+# are more downloads than can fit in the list in the panel.
+# $count (number) - number of files being downloaded that are not shown in the
+# panel list.
+downloads-more-downloading =
+ { $count ->
+ *[other] อีก { $count } ไฟล์กำลังดาวน์โหลดอยู่
+ }
+
+## Download errors
+
+downloads-error-alert-title = ข้อผิดพลาดการดาวน์โหลด
+# Variables:
+# $extension (String): the name of the blocking extension.
+downloads-error-blocked-by = ไม่สามารถบันทึกการดาวน์โหลดได้เนื่องจากถูกปิดกั้นโดย { $extension }
+# Used when the name of the blocking extension is unavailable.
+downloads-error-extension = ไม่สามารถบันทึกการดาวน์โหลดได้เนื่องจากถูกปิดกั้นโดยส่วนขยาย
+# Line breaks in this message are meaningful, and should be maintained.
+downloads-error-generic =
+ ไม่สามารถบันทึกการดาวน์โหลดเนื่องจากเกิดข้อผิดพลาดที่ไม่รู้จัก
+
+ โปรดลองอีกครั้ง
diff --git a/l10n-th/browser/browser/editBookmarkOverlay.ftl b/l10n-th/browser/browser/editBookmarkOverlay.ftl
new file mode 100644
index 0000000000..31440d0924
--- /dev/null
+++ b/l10n-th/browser/browser/editBookmarkOverlay.ftl
@@ -0,0 +1,49 @@
+# 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/.
+
+bookmark-overlay-name-2 =
+ .value = ชื่อ
+ .accesskey = N
+bookmark-overlay-url =
+ .value = URL
+ .accesskey = U
+# Location refers to the position of the bookmark within the browser's
+# bookmarks, not to its URL or address.
+bookmark-overlay-location-2 =
+ .value = ตำแหน่งที่ตั้ง
+ .accesskey = L
+bookmark-overlay-choose =
+ .label = เลือก…
+bookmark-overlay-folders-expander =
+ .tooltiptext = แสดงโฟลเดอร์ที่คั่นหน้าทั้งหมด
+ .tooltiptextdown = { bookmark-overlay-folders-expander.tooltiptext }
+ .tooltiptextup = ซ่อน
+bookmark-overlay-folders-expander2 =
+ .tooltiptext = แสดงโฟลเดอร์ที่คั่นหน้าทั้งหมด
+bookmark-overlay-folders-expander-hide =
+ .tooltiptext = ซ่อน
+# bookmark-overlay-folders-tree is used to provide an accessible name to the tree view of the Bookmarks directory, when it is expanded
+bookmark-overlay-folders-tree =
+ .aria-label = โฟลเดอร์
+bookmark-overlay-new-folder-button =
+ .label = โฟลเดอร์ใหม่
+ .accesskey = ฟ
+bookmark-overlay-tags-2 =
+ .value = ป้ายกำกับ
+ .accesskey = T
+bookmark-overlay-tags-empty-description =
+ .placeholder = แบ่งป้ายกำกับด้วยจุลภาค
+bookmark-overlay-tags-expander =
+ .tooltiptext = แสดงป้ายกำกับทั้งหมด
+ .tooltiptextdown = { bookmark-overlay-tags-expander.tooltiptext }
+ .tooltiptextup = ซ่อน
+bookmark-overlay-tags-expander2 =
+ .tooltiptext = แสดงป้ายกำกับทั้งหมด
+bookmark-overlay-tags-expander-hide =
+ .tooltiptext = ซ่อน
+bookmark-overlay-keyword-2 =
+ .value = คำสำคัญ
+ .accesskey = K
+bookmark-overlay-tags-caption-label = ใช้ป้ายกำกับเพื่อจัดระเบียบและค้นหาที่คั่นหน้าได้จากแถบที่อยู่
+bookmark-overlay-keyword-caption-label-2 = ใช้คำสำคัญคำเดียวเพื่อเปิดที่คั่นหน้าโดยตรงจากแถบที่อยู่
diff --git a/l10n-th/browser/browser/extensionsUI.ftl b/l10n-th/browser/browser/extensionsUI.ftl
new file mode 100644
index 0000000000..865c81aff5
--- /dev/null
+++ b/l10n-th/browser/browser/extensionsUI.ftl
@@ -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/.
+
+webext-perms-learn-more = เรียนรู้เพิ่มเติม
+# Variables:
+# $addonName (String): localized named of the extension that is asking to change the default search engine.
+# $currentEngine (String): name of the current search engine.
+# $newEngine (String): name of the new search engine.
+webext-default-search-description = { $addonName } ต้องการเปลี่ยนเครื่องมือค้นหาเริ่มต้นของคุณจาก { $currentEngine } เป็น { $newEngine } ตกลงหรือไม่?
+webext-default-search-yes =
+ .label = ใช่
+ .accesskey = ช
+webext-default-search-no =
+ .label = ไม่
+ .accesskey = ม
+# Variables:
+# $addonName (String): localized named of the extension that was just installed.
+addon-post-install-message = เพิ่ม { $addonName } แล้ว
+
+## A modal confirmation dialog to allow an extension on quarantined domains.
+
+# Variables:
+# $addonName (String): localized name of the extension.
+webext-quarantine-confirmation-title = เรียกใช้ { $addonName } บนไซต์ที่ถูกจำกัดหรือไม่?
+webext-quarantine-confirmation-line-1 = เพื่อปกป้องข้อมูลของคุณ ส่วนขยายนี้จึงไม่ได้รับอนุญาตบนไซต์นี้
+webext-quarantine-confirmation-line-2 = อนุญาตให้ใช้ส่วนขยายนี้หากคุณไว้วางใจให้อ่านและเปลี่ยนแปลงข้อมูลของคุณบนไซต์ที่ถูกจำกัดโดย { -vendor-short-name }
+webext-quarantine-confirmation-allow =
+ .label = อนุญาต
+ .accesskey = A
+webext-quarantine-confirmation-deny =
+ .label = ไม่อนุญาต
+ .accesskey = D
diff --git a/l10n-th/browser/browser/featureCallout.ftl b/l10n-th/browser/browser/featureCallout.ftl
new file mode 100644
index 0000000000..a62b6c2d72
--- /dev/null
+++ b/l10n-th/browser/browser/featureCallout.ftl
@@ -0,0 +1,56 @@
+# 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/.
+
+# Callout dialog primary button to advance to next screen
+callout-primary-advance-button-label = ถัดไป
+
+# Callout dialog primary button to complete the feature tour
+callout-primary-complete-button-label = เข้าใจแล้ว!
+
+## Firefox View feature tour strings
+
+# "Tab pickup" refers to the section in Firefox View that displays open
+# tabs from other devices
+callout-firefox-view-tab-pickup-title = สับเปลี่ยนไปมาระหว่างอุปกรณ์ต่าง ๆ ด้วยการรับแท็บ
+
+callout-firefox-view-tab-pickup-subtitle = นำแท็บที่เปิดอยู่จากโทรศัพท์ของคุณมาเปิดที่นี่อย่างรวดเร็วเพื่อให้คุณใช้งานได้อย่างลื่นไหล
+
+callout-firefox-view-recently-closed-title = นำแท็บที่ปิดไปแล้วของคุณกลับคืนมาในพริบตา
+
+callout-firefox-view-recently-closed-subtitle = แท็บทั้งหมดที่ปิดไปแล้วของคุณจะปรากฏขึ้นที่นี่ เพื่อไม่ให้คุณต้องกังวลกับการปิดไซต์โดยไม่ได้ตั้งใจอีกต่อไป
+
+callout-firefox-view-colorways-title = เลือกสีสันที่คุณชอบ
+
+# "Shade" refer to different color options in each colorway.
+callout-firefox-view-colorways-subtitle = เลือกเฉดสีที่บ่งบอกความเป็นตัวคุณ มีให้ใช้เฉพาะใน { -brand-product-name } เท่านั้น
+
+callout-firefox-view-colorways-reminder-title = สำรวจชุดรูปแบบสีล่าสุดของเรา
+
+# “Shades” refers to the different color options in each colorways
+callout-firefox-view-colorways-reminder-subtitle = แต่งแต้มสีสันให้กับเบราว์เซอร์ของคุณด้วยเฉดสีอันเป็นสัญลักษณ์ที่ได้รับแรงบันดาลใจจากเสียงแห่งอิสระ มีเฉพาะใน { -brand-product-name } เท่านั้น
+
+## Continuous Onboarding - Firefox View: Tab pick up
+
+# “Boost your browsing” refers to the added benefit the user receives from having
+# access to the same browsing experience when moving from one browser to another.
+# Alternative: ”Improve your browsing experience with tab pickup”
+continuous-onboarding-firefox-view-tab-pickup-title = ท่องเว็บได้ดีขึ้นด้วยการรับแท็บ
+
+continuous-onboarding-firefox-view-tab-pickup-subtitle = เข้าถึงแท็บที่เปิดอยู่ของคุณจากอุปกรณ์ใดก็ได้ พร้อมซิงค์บุ๊กมาร์ก รหัสผ่าน และอื่น ๆ อีกมากมาย
+
+continuous-onboarding-firefox-view-tab-pickup-primary-button-label = เริ่มต้นใช้งาน
+
+## PDF.js Feature Tour Strings
+
+callout-pdfjs-edit-title = แก้ไข PDF ด้วยเครื่องมือข้อความใหม่ของเรา
+callout-pdfjs-edit-body-a = กรอกแบบฟอร์ม เพิ่มความคิดเห็น หรือจดบันทึกโดยตรงใน { -brand-short-name }
+callout-pdfjs-edit-body-b = ข้ามการค้นหาตัวแก้ไขออนไลน์ฟรี กรอกแบบฟอร์ม เพิ่มความคิดเห็น หรือจดบันทึกโดยตรงใน { -brand-short-name }
+callout-pdfjs-edit-button = ถัดไป
+
+callout-pdfjs-draw-title = เซ็นชื่อในเอกสารด้วยเครื่องมือวาดใหม่ของเรา
+# “Mark up” refers to the process of “annotating” or adding free hand text or diagramming to the document.
+callout-pdfjs-draw-body-a = มาร์กอัป PDF แล้วบันทึกการเปลี่ยนแปลงของคุณ
+# “Mark up” refers to the process of “annotating” or adding free hand text or diagramming to the document.
+callout-pdfjs-draw-body-b = ไม่ต้องพิมพ์และสแกนอีกต่อไป มาร์กอัป PDF แล้วบันทึกการเปลี่ยนแปลงของคุณ
+callout-pdfjs-draw-button = เข้าใจแล้ว!
diff --git a/l10n-th/browser/browser/firefoxRelay.ftl b/l10n-th/browser/browser/firefoxRelay.ftl
new file mode 100644
index 0000000000..32c88dc16a
--- /dev/null
+++ b/l10n-th/browser/browser/firefoxRelay.ftl
@@ -0,0 +1,35 @@
+# 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/.
+
+
+## Error messages for failed HTTP web requests.
+## https://developer.mozilla.org/en-US/docs/Web/HTTP/Status#client_error_responses
+## Variables:
+## $status (Number) - HTTP status code, for example 403
+
+firefox-relay-mask-generation-failed = { -relay-brand-name } ไม่สามารถสร้างตัวปกปิดใหม่ได้ รหัสข้อผิดพลาด HTTP: { $status }
+firefox-relay-get-reusable-masks-failed = { -relay-brand-name } ไม่พบตัวปกปิดที่สามารถใช้ซ้ำได้ รหัสข้อผิดพลาด HTTP: { $status }
+
+##
+
+firefox-relay-must-login-to-fxa = คุณต้องเข้าสู่ระบบ{ -fxaccount-brand-name } จึงจะสามารถใช้ { -relay-brand-name } ได้
+firefox-relay-must-login-to-account = ลงชื่อเข้าบัญชีของคุณเพื่อใช้ตัวปกปิดอีเมล { -relay-brand-name } ของคุณ
+firefox-relay-get-unlimited-masks =
+ .label = จัดการตัวปกปิด
+ .accesskey = จ
+# This is followed, on a new line, by firefox-relay-opt-in-subtitle-1
+firefox-relay-opt-in-title-1 = ปกป้องที่อยู่อีเมลของคุณ:
+# This is preceded by firefox-relay-opt-in-title-1 (on a different line), which
+# ends with a colon. You might need to adapt the capitalization of this string.
+firefox-relay-opt-in-subtitle-1 = ใช้ตัวปกปิดอีเมลของ { -relay-brand-name }
+firefox-relay-use-mask-title = ใช้ตัวปกปิดอีเมลของ { -relay-brand-name }
+firefox-relay-opt-in-confirmation-enable-button =
+ .label = ใช้ตัวปกปิดอีเมล
+ .accesskey = ช
+firefox-relay-opt-in-confirmation-disable =
+ .label = ไม่ต้องแสดงข้อความนี้อีก
+ .accesskey = ม
+firefox-relay-opt-in-confirmation-postpone =
+ .label = ไม่ใช่ตอนนี้
+ .accesskey = ไ
diff --git a/l10n-th/browser/browser/firefoxView.ftl b/l10n-th/browser/browser/firefoxView.ftl
new file mode 100644
index 0000000000..a719991c38
--- /dev/null
+++ b/l10n-th/browser/browser/firefoxView.ftl
@@ -0,0 +1,244 @@
+# 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/.
+
+toolbar-button-firefox-view =
+ .label = { -firefoxview-brand-name }
+ .tooltiptext = { -firefoxview-brand-name }
+toolbar-button-firefox-view-2 =
+ .label = { -firefoxview-brand-name }
+ .tooltiptext = ดูการเรียกดูล่าสุดผ่านหน้าต่างและอุปกรณ์
+menu-tools-firefox-view =
+ .label = { -firefoxview-brand-name }
+ .accesskey = F
+firefoxview-page-title = { -firefoxview-brand-name }
+firefoxview-page-label =
+ .label = { -firefoxview-brand-name }
+firefoxview-close-button =
+ .title = ปิด
+ .aria-label = ปิด
+firefoxview-empty-state-icon =
+ .alt = คำเตือน:
+# Used instead of the localized relative time when a timestamp is within a minute or so of now
+firefoxview-just-now-timestamp = เมื่อกี้นี้
+# This is a headline for an area in the product where users can resume and re-open tabs they have previously viewed on other devices.
+firefoxview-tabpickup-header = การรับแท็บ
+firefoxview-tabpickup-description = เปิดหน้าจากอุปกรณ์อื่น ๆ
+# Variables:
+# $percentValue (Number): the percentage value for setup completion
+firefoxview-tabpickup-progress-label = { $percentValue }% เสร็จสมบูรณ์
+firefoxview-tabpickup-step-signin-header = สลับระหว่างอุปกรณ์ได้อย่างไร้รอยต่อ
+firefoxview-tabpickup-step-signin-description = เมื่อต้องการนำแท็บบนโทรศัพท์ของคุณมาที่นี่ ให้ลงชื่อเข้าหรือสร้างบัญชีก่อน
+firefoxview-tabpickup-step-signin-primarybutton = ดำเนินการต่อ
+firefoxview-syncedtabs-signin-header = หยิบแท็บได้จากทุกที่
+firefoxview-syncedtabs-signin-description = หากต้องการเห็นแท็บต่าง ๆ จากที่ใดก็ตามที่คุณใช้ { -brand-product-name } ให้ลงชื่อเข้าใช้บัญชีของคุณ หากคุณไม่มีบัญชี เราจะแนะนำขั้นตอนต่าง ๆ ในการสมัครให้คุณ
+firefoxview-syncedtabs-signin-primarybutton = ลงชื่อเข้าหรือสมัคร
+firefoxview-tabpickup-adddevice-header = ซิงค์ { -brand-product-name } บนโทรศัพท์หรือแท็บเล็ตของคุณ
+firefoxview-tabpickup-adddevice-description = ดาวน์โหลด { -brand-product-name } สำหรับมือถือแล้วลงชื่อเข้าจากที่นั่น
+firefoxview-tabpickup-adddevice-learn-how = เรียนรู้วิธี
+firefoxview-tabpickup-adddevice-primarybutton = รับ { -brand-product-name } สำหรับมือถือ
+firefoxview-syncedtabs-adddevice-header = ลงชื่อเข้า { -brand-product-name } บนอุปกรณ์อื่น ๆ ของคุณ
+firefoxview-syncedtabs-adddevice-description = หากต้องการเห็นแท็บต่าง ๆ จากที่ใดก็ตามที่คุณใช้ { -brand-product-name } ให้ลงชื่อเข้าใช้บนอุปกรณ์ทั้งหมดของคุณ เรียนรู้วิธีการ<a data-l10n-name="url">เชื่อมต่อกับอุปกรณ์เพิ่มเติม</a>
+firefoxview-syncedtabs-adddevice-primarybutton = ลองใช้ { -brand-product-name } สำหรับมือถือ
+firefoxview-tabpickup-synctabs-header = เปิดการซิงค์แท็บ
+firefoxview-tabpickup-synctabs-description = อนุญาตให้ { -brand-short-name } แบ่งปันแท็บระหว่างอุปกรณ์
+firefoxview-tabpickup-synctabs-learn-how = เรียนรู้วิธี
+firefoxview-tabpickup-synctabs-primarybutton = ซิงค์แท็บที่เปิดอยู่
+firefoxview-syncedtabs-synctabs-header = อัปเดตการตั้งค่าการซิงค์ของคุณ
+firefoxview-syncedtabs-synctabs-description = หากต้องการดูแท็บจากอุปกรณ์อื่น คุณต้องซิงค์แท็บที่เปิดอยู่
+firefoxview-syncedtabs-synctabs-checkbox = อนุญาตให้ซิงค์แท็บที่เปิดอยู่
+firefoxview-syncedtabs-loading-header = อยู่ระหว่างการซิงค์
+firefoxview-syncedtabs-loading-description = เมื่อเสร็จแล้ว คุณจะเห็นแท็บที่คุณเปิดไว้ในอุปกรณ์อื่น ๆ โปรดกลับมาดูในเร็ว ๆ นี้
+firefoxview-tabpickup-fxa-admin-disabled-header = องค์กรของคุณปิดใช้งานการซิงค์
+firefoxview-tabpickup-fxa-admin-disabled-description = { -brand-short-name } ไม่สามารถซิงค์แท็บระหว่างอุปกรณ์ได้เนื่องจากผู้ดูแลระบบของคุณปิดใช้งานการซิงค์
+firefoxview-tabpickup-network-offline-header = ตรวจสอบการเชื่อมต่ออินเทอร์เน็ตของคุณ
+firefoxview-tabpickup-network-offline-description = หากคุณกำลังใช้ไฟร์วอลล์หรือพร็อกซี ให้ตรวจสอบว่า { -brand-short-name } มีสิทธิ์เข้าถึงเว็บ
+firefoxview-tabpickup-network-offline-primarybutton = ลองอีกครั้ง
+firefoxview-tabpickup-sync-error-header = เรากำลังมีปัญหาในการซิงค์
+firefoxview-tabpickup-generic-sync-error-description = { -brand-short-name } ไม่สามารถเข้าถึงบริการซิงค์ได้ในขณะนี้ โปรดลองอีกครั้งในอีกสักครู่
+firefoxview-tabpickup-sync-error-primarybutton = ลองอีกครั้ง
+firefoxview-tabpickup-sync-disconnected-header = เปิดการซิงค์เพื่อดำเนินการต่อ
+firefoxview-tabpickup-sync-disconnected-description = เมื่อต้องการนำแท็บของคุณมาที่นี่ คุณจะต้องอนุญาตการซิงค์ใน { -brand-short-name }
+firefoxview-tabpickup-sync-disconnected-primarybutton = เปิดการซิงค์ในการตั้งค่า
+firefoxview-tabpickup-password-locked-header = ป้อนรหัสผ่านหลักของคุณเพื่อดูแท็บ
+firefoxview-tabpickup-password-locked-description = เมื่อต้องการนำแท็บของคุณมาที่นี่ คุณจะต้องป้อนรหัสผ่านหลักสำหรับ { -brand-short-name }
+firefoxview-tabpickup-password-locked-link = เรียนรู้เพิ่มเติม
+firefoxview-tabpickup-password-locked-primarybutton = ป้อนรหัสผ่านหลัก
+firefoxview-syncedtab-password-locked-link = <a data-l10n-name="syncedtab-password-locked-link">เรียนรู้เพิ่มเติม</a>
+firefoxview-tabpickup-signed-out-header = ลงชื่อเข้าเพื่อเชื่อมต่ออีกครั้ง
+firefoxview-tabpickup-signed-out-description = หากต้องการเชื่อมต่อใหม่และนำแท็บของคุณมาที่นี่ ให้ลงชื่อเข้า { -fxaccount-brand-name } ของคุณ
+firefoxview-tabpickup-signed-out-description2 = หากต้องการเชื่อมต่อใหม่และนำแท็บของคุณมาที่นี่ ให้ลงชื่อเข้าบัญชีของคุณ
+firefoxview-tabpickup-signed-out-primarybutton = ลงชื่อเข้า
+firefoxview-tabpickup-syncing = นั่งรอสักครู่ขณะที่กำลังซิงค์แท็บของคุณ ซึ่งจะใช้เวลาแค่ครู่เดียวเท่านั้น
+firefoxview-mobile-promo-header = นำแท็บจากโทรศัพท์หรือแท็บเล็ตของคุณเข้ามา
+firefoxview-mobile-promo-description = เมื่อต้องการดูแท็บบนมือถือล่าสุดของคุณ ให้ลงชื่อเข้า { -brand-product-name } บน iOS หรือ Android
+firefoxview-mobile-promo-primarybutton = รับ { -brand-product-name } สำหรับมือถือ
+firefoxview-mobile-confirmation-header = 🎉 เรียบร้อยแล้ว!
+firefoxview-mobile-confirmation-description = ตอนนี้คุณสามารถนำแท็บ { -brand-product-name } จากแท็บเล็ตหรือโทรศัพท์ของคุณเข้ามาได้แล้ว
+firefoxview-closed-tabs-title = เพิ่งปิดล่าสุด
+firefoxview-closed-tabs-description2 = เปิดหน้าที่คุณปิดไปในหน้าต่างนี้ใหม่
+firefoxview-closed-tabs-placeholder-header = ไม่มีแท็บที่ปิดล่าสุด
+firefoxview-closed-tabs-placeholder-body = เมื่อคุณปิดแท็บในหน้าต่างนี้ คุณสามารถเรียกแท็บนั้นกลับมาได้จากที่นี่
+firefoxview-closed-tabs-placeholder-body2 = เมื่อคุณปิดแท็บ คุณสามารถเรียกแท็บนั้นกลับมาได้จากที่นี่
+# Variables:
+# $tabTitle (string) - Title of tab being dismissed
+firefoxview-closed-tabs-dismiss-tab =
+ .title = ปิด { $tabTitle }
+# refers to the last tab that was used
+firefoxview-pickup-tabs-badge = ใช้งานล่าสุด
+# Variables:
+# $targetURI (string) - URL that will be opened in the new tab
+firefoxview-tabs-list-tab-button =
+ .title = เปิด { $targetURI } ในแท็บใหม่
+firefoxview-try-colorways-button = ลองใช้ชุดรูปแบบสี
+firefoxview-change-colorway-button = เปลี่ยนชุดรูปแบบสี
+# Variables:
+# $intensity (String): Colorway intensity
+# $collection (String): Colorway Collection name
+firefoxview-colorway-description = { $intensity } · { $collection }
+firefoxview-synced-tabs-placeholder-header = ยังไม่มีอะไรให้ดู
+firefoxview-synced-tabs-placeholder-body = เมื่อคุณเปิดหน้าหนึ่งใน { -brand-product-name } บนอุปกรณ์อื่นในครั้งถัดไป คุณสามารถกลับมาเปิดหน้านั้นอีกได้ที่นี่ราวกับเวทมนตร์
+firefoxview-collapse-button-show =
+ .title = แสดงรายการ
+firefoxview-collapse-button-hide =
+ .title = ซ่อนรายการ
+firefoxview-overview-nav = การเรียกดูล่าสุด
+ .title = การเรียกดูล่าสุด
+firefoxview-overview-header = การเรียกดูล่าสุด
+ .title = การเรียกดูล่าสุด
+
+## History in this context refers to browser history
+
+firefoxview-history-nav = ประวัติ
+ .title = ประวัติ
+firefoxview-history-header = ประวัติ
+firefoxview-history-context-delete = ลบออกจากประวัติ
+ .accesskey = D
+
+## Open Tabs in this context refers to all open tabs in the browser
+
+firefoxview-opentabs-nav = แท็บที่เปิด
+ .title = แท็บที่เปิด
+firefoxview-opentabs-header = แท็บที่เปิด
+
+## Recently closed tabs in this context refers to recently closed tabs from all windows
+
+firefoxview-recently-closed-nav = แท็บที่ปิดล่าสุด
+ .title = แท็บที่ปิดล่าสุด
+firefoxview-recently-closed-header = แท็บที่ปิดล่าสุด
+
+## Tabs from other devices refers in this context refers to synced tabs from other devices
+
+firefoxview-synced-tabs-nav = แท็บจากอุปกรณ์อื่น ๆ
+ .title = แท็บจากอุปกรณ์อื่น ๆ
+firefoxview-synced-tabs-header = แท็บจากอุปกรณ์อื่น ๆ
+
+##
+
+# Used for a link in collapsible cards, in the ’Recent browsing’ page of Firefox View
+firefoxview-view-all-link = ดูทั้งหมด
+# Variables:
+# $winID (Number) - The index of the owner window for this set of tabs
+firefoxview-opentabs-window-header =
+ .title = หน้าต่าง { $winID }
+# Variables:
+# $winID (Number) - The index of the owner window (which is currently focused) for this set of tabs
+firefoxview-opentabs-current-window-header =
+ .title = หน้าต่าง { $winID } (ปัจจุบัน)
+firefoxview-opentabs-focus-tab =
+ .title = สลับไปยังแท็บนี้
+firefoxview-show-more = แสดงเพิ่มเติม
+firefoxview-show-less = แสดงน้อยลง
+firefoxview-show-all = แสดงทั้งหมด
+firefoxview-search-text-box-clear-button =
+ .title = ล้าง
+# Placeholder for the input field to search in recent browsing ("search" is a verb).
+firefoxview-search-text-box-recentbrowsing =
+ .placeholder = ค้นหา
+# Placeholder for the input field to search in history ("search" is a verb).
+firefoxview-search-text-box-history =
+ .placeholder = ค้นหาประวัติ
+# Placeholder for the input field to search in recently closed tabs ("search" is a verb).
+firefoxview-search-text-box-recentlyclosed =
+ .placeholder = ค้นหาแท็บที่เพิ่งปิดล่าสุด
+# Placeholder for the input field to search in tabs from other devices ("search" is a verb).
+firefoxview-search-text-box-syncedtabs =
+ .placeholder = ค้นหาแท็บที่ซิงค์
+# Placeholder for the input field to search in open tabs ("search" is a verb).
+firefoxview-search-text-box-opentabs =
+ .placeholder = ค้นหาแท็บที่เปิดอยู่
+# "Search" is a noun (as in "Results of the search for")
+# Variables:
+# $query (String) - The search query used for searching through browser history.
+firefoxview-search-results-header = ผลการค้นหาสำหรับ “{ $query }”
+# Variables:
+# $count (Number) - The number of visits matching the search query.
+firefoxview-search-results-count = { $count } ไซต์
+# Message displayed when a search is performed and no matching results were found.
+# Variables:
+# $query (String) - The search query.
+firefoxview-search-results-empty = ไม่มีผลลัพธ์สำหรับ “{ $query }”
+firefoxview-sort-history-by-date-label = เรียงตามวันที่
+firefoxview-sort-history-by-site-label = เรียงตามไซต์
+# Variables:
+# $url (string) - URL that will be opened in the new tab
+firefoxview-opentabs-tab-row =
+ .title = เปลี่ยนไปยัง { $url }
+
+## Variables:
+## $date (string) - Date to be formatted based on locale
+
+firefoxview-history-date-today = วันนี้ - { DATETIME($date, dateStyle: "full") }
+firefoxview-history-date-yesterday = เมื่อวาน - { DATETIME($date, dateStyle: "full") }
+firefoxview-history-date-this-month = { DATETIME($date, dateStyle: "full") }
+firefoxview-history-date-prev-month = { DATETIME($date, month: "long", year: "numeric") }
+# When history is sorted by site, this heading is used in place of a domain, in
+# order to group sites that do not come from an outside host.
+# For example, this would be the heading for all file:/// URLs in history.
+firefoxview-history-site-localhost = (ไฟล์ในเครื่อง)
+
+##
+
+firefoxview-show-all-history = แสดงประวัติทั้งหมด
+firefoxview-view-more-browsing-history = ดูประวัติการเข้าชมเพิ่มเติม
+
+## Message displayed in Firefox View when the user has no history data
+
+firefoxview-history-empty-header = กลับมายังที่ที่คุณเคยไป
+firefoxview-history-empty-description = ระหว่างที่คุณเรียกดู หน้าที่คุณเยี่ยมชมจะแสดงอยู่ที่นี่
+firefoxview-history-empty-description-two = การปกป้องความเป็นส่วนตัวของคุณเป็นหัวใจสำคัญของสิ่งที่เราทำ นี่คือเหตุผลที่คุณสามารถควบคุมกิจกรรมที่ { -brand-short-name } จดจำได้ใน<a data-l10n-name="history-settings-url">การตั้งค่าประวัติ</a>
+
+##
+
+# Button text for choosing a browser within the ’Import history from another browser’ banner
+firefoxview-choose-browser-button = เลือกเบราว์เซอร์
+ .title = เลือกเบราว์เซอร์
+
+## Message displayed in Firefox View when the user has chosen to never remember History
+
+firefoxview-dont-remember-history-empty-header = ไม่มีอะไรจะแสดง
+firefoxview-dont-remember-history-empty-description = การปกป้องความเป็นส่วนตัวของคุณเป็นหัวใจสำคัญของสิ่งที่เราทำ ซึ่งเป็นเหตุผลที่คุณสามารถควบคุมกิจกรรมที่ { -brand-short-name } จำได้
+firefoxview-dont-remember-history-empty-description-two = ตามการตั้งค่าปัจจุบันของคุณ { -brand-short-name } จะไม่จดจำกิจกรรมของคุณขณะที่คุณเรียกดู หากต้องการเปลี่ยนแปลง ให้<a data-l10n-name="history-settings-url-two">เปลี่ยนการตั้งค่าประวัติเพื่อจดจำประวัติของคุณ</a>
+
+##
+
+# This label is read by screen readers when focusing the close button for the "Import history from another browser" banner in Firefox View
+firefoxview-import-history-close-button =
+ .aria-label = ปิด
+ .title = ปิด
+
+## Text displayed in a dismissable banner to import bookmarks/history from another browser
+
+firefoxview-import-history-header = นำเข้าประวัติจากเบราว์เซอร์อื่น
+firefoxview-import-history-description = ทำให้ { -brand-short-name } เป็นเบราว์เซอร์ที่คุณใช้ นำเข้าประวัติการเข้าชม ที่คั่นหน้า และอื่น ๆ
+
+## Message displayed in Firefox View when the user has no recently closed tabs data
+
+firefoxview-recentlyclosed-empty-header = ปิดแท็บเร็วเกินไป?
+firefoxview-recentlyclosed-empty-description = ที่นี่จะแสดงแท็บที่เพิ่งปิดไป คุณจึงสามารถเปิดใหม่ได้อย่างรวดเร็ว
+firefoxview-recentlyclosed-empty-description-two = หากต้องการหาแท็บเมื่อนานมาแล้ว ให้ดู<a data-l10n-name="history-url">ประวัติการเข้าชม</a>ของคุณ
+
+## This message is displayed below the name of another connected device when it doesn't have any open tabs.
+
+firefoxview-syncedtabs-device-notabs = ไม่มีแท็บที่เปิดบนอุปกรณ์นี้
+firefoxview-syncedtabs-connect-another-device = เชื่อมต่ออุปกรณ์อื่น
diff --git a/l10n-th/browser/browser/firefoxWebAuthn.ftl b/l10n-th/browser/browser/firefoxWebAuthn.ftl
new file mode 100644
index 0000000000..6fbe8159b2
--- /dev/null
+++ b/l10n-th/browser/browser/firefoxWebAuthn.ftl
@@ -0,0 +1,3 @@
+# 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/.
diff --git a/l10n-th/browser/browser/fxviewTabList.ftl b/l10n-th/browser/browser/fxviewTabList.ftl
new file mode 100644
index 0000000000..b9d6e479d8
--- /dev/null
+++ b/l10n-th/browser/browser/fxviewTabList.ftl
@@ -0,0 +1,65 @@
+# 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/.
+
+fxviewtabrow-open-menu-button =
+ .title = เปิดเมนู
+# Variables:
+# $date (string) - Date to be formatted based on locale
+fxviewtabrow-date = { DATETIME($date, dateStyle: "short") }
+# Variables:
+# $time (string) - Time to be formatted based on locale
+fxviewtabrow-time = { DATETIME($time, timeStyle: "short") }
+# Variables:
+# $targetURI (string) - URL of tab that will be opened in the new tab
+fxviewtabrow-tabs-list-tab =
+ .title = เปิด { $targetURI } ในแท็บใหม่
+# Variables:
+# $tabTitle (string) - Title of tab being dismissed
+fxviewtabrow-dismiss-tab-button =
+ .title = ปิด { $tabTitle }
+# Used instead of the localized relative time when a timestamp is within a minute or so of now
+fxviewtabrow-just-now-timestamp = เมื่อกี้นี้
+
+# Strings below are used for context menu options within panel-list.
+# For developers, this duplicates command because the label attribute is required.
+
+fxviewtabrow-delete = ลบ
+ .accesskey = ล
+fxviewtabrow-forget-about-this-site = ลืมเกี่ยวกับไซต์นี้…
+ .accesskey = ม
+fxviewtabrow-open-in-window = เปิดในหน้าต่างใหม่
+ .accesskey = ใ
+fxviewtabrow-open-in-private-window = เปิดในหน้าต่างส่วนตัวใหม่
+ .accesskey = ส
+# “Bookmark” is a verb, as in "Bookmark this page" (add to bookmarks).
+fxviewtabrow-add-bookmark = เพิ่มที่คั่นหน้า…
+ .accesskey = ท
+fxviewtabrow-save-to-pocket = บันทึกไปยัง { -pocket-brand-name }
+ .accesskey = บ
+fxviewtabrow-copy-link = คัดลอกลิงก์
+ .accesskey = ง
+fxviewtabrow-close-tab = ปิดแท็บ
+ .accesskey = C
+fxviewtabrow-move-tab = ย้ายแท็บ
+ .accesskey = v
+fxviewtabrow-move-tab-start = ย้ายไปยังจุดเริ่มต้น
+ .accesskey = S
+fxviewtabrow-move-tab-end = ย้ายไปยังจุดสิ้นสุด
+ .accesskey = E
+fxviewtabrow-move-tab-window = ย้ายไปยังหน้าต่างใหม่
+ .accesskey = W
+fxviewtabrow-send-tab = ส่งแท็บไปยังอุปกรณ์
+ .accesskey = n
+# Variables:
+# $tabTitle (string) - Title of the tab to which the context menu is associated
+fxviewtabrow-options-menu-button =
+ .title = ตัวเลือกสำหรับ { $tabTitle }
+# Variables:
+# $tabTitle (string) - Title of tab being muted
+fxviewtabrow-mute-tab-button =
+ .title = ปิดเสียง { $tabTitle }
+# Variables:
+# $tabTitle (string) - Title of tab being unmuted
+fxviewtabrow-unmute-tab-button =
+ .title = เปิดเสียง { $tabTitle }
diff --git a/l10n-th/browser/browser/identityCredentialNotification.ftl b/l10n-th/browser/browser/identityCredentialNotification.ftl
new file mode 100644
index 0000000000..c269b0bba1
--- /dev/null
+++ b/l10n-th/browser/browser/identityCredentialNotification.ftl
@@ -0,0 +1,29 @@
+# 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/.
+
+
+## Credential panel
+##
+## Identity providers are websites you use to log in to another website, for
+## example: Google when you Log in with Google.
+##
+## Variables:
+## $host (String): the hostname of the site that is being displayed.
+## $provider (String): the hostname of another website you are using to log in to the site being displayed
+
+identity-credential-header-providers = ลงชื่อเข้าด้วยผู้ให้บริการเข้าสู่ระบบ
+identity-credential-header-accounts = ลงชื่อเข้าด้วย { $provider }
+identity-credential-urlbar-anchor =
+ .tooltiptext = เปิดแผงเข้าสู่ระบบ
+identity-credential-cancel-button =
+ .label = ยกเลิก
+ .accesskey = ย
+identity-credential-accept-button =
+ .label = ดำเนินการต่อ
+ .accesskey = ด
+identity-credential-sign-in-button =
+ .label = ลงชื่อเข้า
+ .accesskey = ล
+identity-credential-policy-title = ใช้ { $provider } เป็นผู้ให้บริการเข้าสู่ระบบ
+identity-credential-policy-description = การเข้าสู่ระบบ { $host } ด้วยบัญชี { $provider } จะอยู่ภายใต้<label data-l10n-name="privacy-url">นโยบายส่วนบุคคล</label>และ<label data-l10n-name="tos-url">ข้อกำหนดในการให้บริการ</label>
diff --git a/l10n-th/browser/browser/linuxDesktopEntry.ftl b/l10n-th/browser/browser/linuxDesktopEntry.ftl
new file mode 100644
index 0000000000..0d5a6f4670
--- /dev/null
+++ b/l10n-th/browser/browser/linuxDesktopEntry.ftl
@@ -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/.
+
+
+# These messages are used by the Firefox ".desktop" file on Linux.
+# https://specifications.freedesktop.org/desktop-entry-spec/desktop-entry-spec-latest.html
+
+# The entry name is the label on the desktop icon, among other things.
+desktop-entry-name = { -brand-shortcut-name }
+# The comment usually appears as a tooltip when hovering over application menu entry.
+desktop-entry-comment = เรียกดูเวิลด์ไวด์เว็บ
+desktop-entry-generic-name = เว็บเบราว์เซอร์
+# Combine Name and GenericName. This string is specific to GNOME.
+desktop-entry-x-gnome-full-name = เว็บเบราว์เซอร์ { -brand-shortcut-name }
+# Keywords are search terms used to find this application.
+# The string is a list of keywords separated by semicolons:
+# - Do NOT replace semicolons with other punctuation signs.
+# - The list MUST end with a semicolon.
+desktop-entry-keywords = อินเทอร์เน็ต;เบราว์เซอร์;เว็บ;Internet;WWW;Browser;Web;Explorer;
+
+## Actions are visible in a context menu after right clicking the
+## taskbar icon, possibly other places depending on the environment.
+
+desktop-action-new-window-name = หน้าต่างใหม่
+desktop-action-new-private-window-name = หน้าต่างส่วนตัวใหม่
+desktop-action-open-profile-manager = เปิดตัวจัดการโปรไฟล์
diff --git a/l10n-th/browser/browser/menubar.ftl b/l10n-th/browser/browser/menubar.ftl
new file mode 100644
index 0000000000..ddacbe7485
--- /dev/null
+++ b/l10n-th/browser/browser/menubar.ftl
@@ -0,0 +1,351 @@
+# 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/.
+
+
+# NOTE: For English locales, strings in this file should be in APA-style Title Case.
+# See https://apastyle.apa.org/style-grammar-guidelines/capitalization/title-case
+#
+# NOTE: For Engineers, please don't re-use these strings outside of the menubar.
+
+
+# NOTE: For English locales, strings in this file should be in APA-style Title Case.
+# See https://apastyle.apa.org/style-grammar-guidelines/capitalization/title-case
+#
+# NOTE: For Engineers, please don't reuse these strings outside of the menubar.
+
+
+## Application Menu (macOS only)
+
+menu-application-preferences =
+ .label = การกำหนดลักษณะ
+menu-application-services =
+ .label = บริการ
+menu-application-hide-this =
+ .label = ซ่อน { -brand-shorter-name }
+menu-application-hide-other =
+ .label = ซ่อนอื่น ๆ
+menu-application-show-all =
+ .label = แสดงทั้งหมด
+menu-application-touch-bar =
+ .label = ปรับแต่งแถบสัมผัส…
+
+##
+
+# These menu-quit strings are only used on Windows and Linux.
+menu-quit =
+ .label =
+ { PLATFORM() ->
+ [windows] ออก
+ *[other] ออก
+ }
+ .accesskey =
+ { PLATFORM() ->
+ [windows] อ
+ *[other] อ
+ }
+# This menu-quit-mac string is only used on macOS.
+menu-quit-mac =
+ .label = ออกจาก { -brand-shorter-name }
+menu-about =
+ .label = เกี่ยวกับ { -brand-shorter-name }
+ .accesskey = ก
+
+## File Menu
+
+menu-file =
+ .label = ไฟล์
+ .accesskey = ฟ
+menu-file-new-tab =
+ .label = แท็บใหม่
+ .accesskey = ท
+menu-file-new-container-tab =
+ .label = แท็บแยกข้อมูลใหม่
+ .accesskey = ย
+menu-file-new-window =
+ .label = หน้าต่างใหม่
+ .accesskey = ห
+menu-file-new-private-window =
+ .label = หน้าต่างส่วนตัวใหม่
+ .accesskey = ส
+# "Open Location" is only displayed on macOS, and only on windows
+# that aren't main browser windows, or when there are no windows
+# but Firefox is still running.
+menu-file-open-location =
+ .label = เปิดตำแหน่งที่ตั้ง…
+menu-file-open-file =
+ .label = เปิดไฟล์…
+ .accesskey = ป
+# Variables:
+# $tabCount (Number): the number of tabs that are affected by the action.
+menu-file-close-tab =
+ .label =
+ { $tabCount ->
+ [1] ปิดแท็บ
+ *[other] ปิด { $tabCount } แท็บ
+ }
+ .accesskey = ป
+menu-file-close-window =
+ .label = ปิดหน้าต่าง
+ .accesskey = ป
+menu-file-save-page =
+ .label = บันทึกหน้าเป็น…
+ .accesskey = น
+menu-file-email-link =
+ .label = ส่งอีเมลลิงก์…
+ .accesskey = ล
+menu-file-share-url =
+ .label = แบ่งปัน
+ .accesskey = h
+menu-file-print-setup =
+ .label = ตั้งค่าหน้ากระดาษ…
+ .accesskey = ร
+menu-file-print =
+ .label = พิมพ์…
+ .accesskey = พ
+menu-file-import-from-another-browser =
+ .label = นำเข้าจากเบราว์เซอร์อื่น…
+ .accesskey = น
+menu-file-go-offline =
+ .label = ทำงานออฟไลน์
+ .accesskey = ฟ
+
+## Edit Menu
+
+menu-edit =
+ .label = แก้ไข
+ .accesskey = ก
+menu-edit-find-in-page =
+ .label = ค้นหาในหน้า…
+ .accesskey = ค
+menu-edit-find-again =
+ .label = ค้นหาอีกครั้ง
+ .accesskey = น
+menu-edit-bidi-switch-text-direction =
+ .label = สลับทิศทางข้อความ
+ .accesskey = ล
+
+## View Menu
+
+menu-view =
+ .label = มุมมอง
+ .accesskey = ม
+menu-view-toolbars-menu =
+ .label = แถบเครื่องมือ
+ .accesskey = ถ
+menu-view-customize-toolbar2 =
+ .label = ปรับแต่งแถบเครื่องมือ…
+ .accesskey = ป
+menu-view-sidebar =
+ .label = แถบข้าง
+ .accesskey = บ
+menu-view-bookmarks =
+ .label = ที่คั่นหน้า
+menu-view-history-button =
+ .label = ประวัติ
+menu-view-synced-tabs-sidebar =
+ .label = แท็บที่ซิงค์
+menu-view-full-zoom =
+ .label = ซูม
+ .accesskey = ม
+menu-view-full-zoom-enlarge =
+ .label = ซูมเข้า
+ .accesskey = ม
+menu-view-full-zoom-reduce =
+ .label = ซูมออก
+ .accesskey = อ
+menu-view-full-zoom-actual-size =
+ .label = ขนาดจริง
+ .accesskey = ข
+menu-view-full-zoom-toggle =
+ .label = ซูมข้อความเท่านั้น
+ .accesskey = ข
+menu-view-page-style-menu =
+ .label = ลักษณะหน้า
+ .accesskey = ล
+menu-view-page-style-no-style =
+ .label = ไม่มีลักษณะ
+ .accesskey = ม
+menu-view-page-basic-style =
+ .label = ลักษณะหน้าพื้นฐาน
+ .accesskey = ล
+menu-view-repair-text-encoding =
+ .label = ซ่อมแซมรหัสอักขระข้อความ
+ .accesskey = ร
+
+## These should match what Safari and other Apple applications
+## use on macOS.
+
+menu-view-enter-full-screen =
+ .label = เข้าสู่ภาพเต็มหน้าจอ
+ .accesskey = จ
+menu-view-exit-full-screen =
+ .label = ออกจากภาพเต็มหน้าจอ
+ .accesskey = จ
+menu-view-full-screen =
+ .label = เต็มหน้าจอ
+ .accesskey = จ
+
+## These menu items may use the same accesskey.
+
+# This should match reader-view-enter-button in browser.ftl
+menu-view-enter-readerview =
+ .label = เข้าสู่มุมมองผู้อ่าน
+ .accesskey = ผ
+# This should match reader-view-close-button in browser.ftl
+menu-view-close-readerview =
+ .label = ปิดมุมมองผู้อ่าน
+ .accesskey = ผ
+
+##
+
+menu-view-show-all-tabs =
+ .label = แสดงแท็บทั้งหมด
+ .accesskey = ส
+menu-view-bidi-switch-page-direction =
+ .label = สลับทิศทางหน้ากระดาษ
+ .accesskey = ส
+
+## History Menu
+
+menu-history =
+ .label = ประวัติ
+ .accesskey = ป
+menu-history-show-all-history =
+ .label = แสดงประวัติทั้งหมด
+menu-history-clear-recent-history =
+ .label = ล้างประวัติล่าสุด…
+menu-history-synced-tabs =
+ .label = แท็บที่ซิงค์
+menu-history-restore-last-session =
+ .label = เรียกคืนวาระก่อนหน้า
+menu-history-hidden-tabs =
+ .label = แท็บที่ซ่อนอยู่
+menu-history-undo-menu =
+ .label = แท็บที่ปิดล่าสุด
+menu-history-undo-window-menu =
+ .label = หน้าต่างที่ปิดล่าสุด
+# "Search" is a verb, as in "Search in History"
+menu-history-search =
+ .label = ค้นหาประวัติ
+
+## Bookmarks Menu
+
+menu-bookmarks-menu =
+ .label = ที่คั่นหน้า
+ .accesskey = ท
+menu-bookmarks-manage =
+ .label = จัดการที่คั่นหน้า
+menu-bookmark-tab =
+ .label = เพิ่มที่คั่นหน้าสำหรับแท็บปัจจุบัน…
+menu-edit-bookmark =
+ .label = แก้ไขที่คั่นหน้านี้…
+# "Search" is a verb, as in "Search in bookmarks"
+menu-bookmarks-search =
+ .label = ค้นหาที่คั่นหน้า
+menu-bookmarks-all-tabs =
+ .label = เพิ่มที่คั่นหน้าสำหรับแท็บทั้งหมด…
+menu-bookmarks-toolbar =
+ .label = แถบเครื่องมือที่คั่นหน้า
+menu-bookmarks-other =
+ .label = ที่คั่นหน้าอื่น ๆ
+menu-bookmarks-mobile =
+ .label = ที่คั่นหน้าในมือถือ
+
+## Tools Menu
+
+menu-tools =
+ .label = เครื่องมือ
+ .accesskey = ค
+menu-tools-downloads =
+ .label = การดาวน์โหลด
+ .accesskey = ด
+menu-tools-addons-and-themes =
+ .label = ส่วนเสริมและชุดรูปแบบ
+ .accesskey = ส
+menu-tools-fxa-sign-in2 =
+ .label = ลงชื่อเข้า
+ .accesskey = ล
+menu-tools-turn-on-sync2 =
+ .label = เปิด Sync…
+ .accesskey = เ
+menu-tools-sync-now =
+ .label = ซิงค์ตอนนี้
+ .accesskey = ง
+menu-tools-fxa-re-auth =
+ .label = เชื่อมต่อกับ { -brand-product-name }…
+ .accesskey = R
+menu-tools-browser-tools =
+ .label = เครื่องมือสำหรับเบราว์เซอร์
+ .accesskey = บ
+menu-tools-task-manager =
+ .label = ตัวจัดการงาน
+ .accesskey = ต
+menu-tools-page-source =
+ .label = ต้นฉบับหน้า
+ .accesskey = ต
+menu-tools-page-info =
+ .label = ข้อมูลหน้า
+ .accesskey = ข
+menu-settings =
+ .label = การตั้งค่า
+ .accesskey =
+ { PLATFORM() ->
+ [windows] ก
+ *[other] า
+ }
+menu-tools-layout-debugger =
+ .label = ตัวดีบั๊กเค้าโครง
+ .accesskey = ต
+
+## Window Menu
+
+menu-window-menu =
+ .label = หน้าต่าง
+menu-window-bring-all-to-front =
+ .label = นำทั้งหมดมาข้างหน้า
+
+## Help Menu
+
+
+# NOTE: For Engineers, any additions or changes to Help menu strings should
+# also be reflected in the related strings in appmenu.ftl. Those strings, by
+# convention, will have the same ID as these, but prefixed with "app".
+# Example: appmenu-get-help
+#
+# These strings are duplicated to allow for different casing depending on
+# where the strings appear.
+
+menu-help =
+ .label = ช่วยเหลือ
+ .accesskey = ช
+menu-get-help =
+ .label = รับความช่วยเหลือ
+ .accesskey = ช
+menu-help-more-troubleshooting-info =
+ .label = ข้อมูลการแก้ไขปัญหาเพิ่มเติม
+ .accesskey = ข
+menu-help-report-site-issue =
+ .label = รายงานปัญหาไซต์…
+menu-help-share-ideas =
+ .label = แบ่งปันแนวคิดและข้อเสนอแนะ…
+ .accesskey = S
+menu-help-enter-troubleshoot-mode2 =
+ .label = โหมดแก้ไขปัญหา…
+ .accesskey = ห
+menu-help-exit-troubleshoot-mode =
+ .label = ปิดโหมดแก้ไขปัญหา
+ .accesskey = ด
+menu-help-switch-device =
+ .label = การสลับไปยังอุปกรณ์ใหม่
+ .accesskey = ม
+# Label of the Help menu item. Either this or
+# menu-help-notdeceptive is shown.
+menu-help-report-deceptive-site =
+ .label = รายงานไซต์หลอกลวง…
+ .accesskey = ห
+menu-help-not-deceptive =
+ .label = นี่ไม่ใช่ไซต์หลอกลวง…
+ .accesskey = ห
+menu-report-broken-site =
+ .label = รายงานไซต์ที่ใช้งานไม่ได้
diff --git a/l10n-th/browser/browser/migration.ftl b/l10n-th/browser/browser/migration.ftl
new file mode 100644
index 0000000000..19b49fd784
--- /dev/null
+++ b/l10n-th/browser/browser/migration.ftl
@@ -0,0 +1,174 @@
+# 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/.
+
+migration-wizard =
+ .title = ตัวช่วยนำเข้า
+
+import-from =
+ { PLATFORM() ->
+ [windows] นำเข้าตัวเลือก, ที่คั่นหน้า, ประวัติ, รหัสผ่าน และข้อมูลอื่น ๆ จาก:
+ *[other] นำเข้าการกำหนดลักษณะ, ที่คั่นหน้า, ประวัติ, รหัสผ่าน และข้อมูลอื่น ๆ จาก:
+ }
+
+import-from-bookmarks = นำเข้าที่คั่นหน้าจาก:
+import-from-ie =
+ .label = Microsoft Internet Explorer
+ .accesskey = M
+import-from-edge =
+ .label = Microsoft Edge
+ .accesskey = E
+import-from-edge-legacy =
+ .label = Microsoft Edge Legacy
+ .accesskey = L
+import-from-edge-beta =
+ .label = Microsoft Edge Beta
+ .accesskey = d
+import-from-nothing =
+ .label = ไม่นำเข้าสิ่งใด
+ .accesskey = ม
+import-from-safari =
+ .label = Safari
+ .accesskey = S
+import-from-opera =
+ .label = Opera
+ .accesskey = O
+import-from-vivaldi =
+ .label = Vivaldi
+ .accesskey = V
+import-from-brave =
+ .label = Brave
+ .accesskey = r
+import-from-canary =
+ .label = Chrome Canary
+ .accesskey = n
+import-from-chrome =
+ .label = Chrome
+ .accesskey = C
+import-from-chrome-beta =
+ .label = Chrome Beta
+ .accesskey = B
+import-from-chrome-dev =
+ .label = Chrome Dev
+ .accesskey = D
+import-from-chromium =
+ .label = Chromium
+ .accesskey = u
+import-from-firefox =
+ .label = Firefox
+ .accesskey = x
+import-from-360se =
+ .label = 360 Secure Browser
+ .accesskey = 3
+import-from-opera-gx =
+ .label = Opera GX
+ .accesskey = G
+
+no-migration-sources = ไม่พบโปรแกรมที่มีข้อมูลที่คั่นหน้า, ประวัติ หรือรหัสผ่าน
+
+import-source-page-title = นำเข้าการตั้งค่าและข้อมูล
+import-items-page-title = รายการที่จะนำเข้า
+
+import-items-description = เลือกรายการที่จะนำเข้า:
+
+import-permissions-page-title = โปรดมอบสิทธิอนุญาตแก่ { -brand-short-name }
+
+# Do not translate "Safari" (the name of the browser on Apple devices)
+import-safari-permissions-string = macOS ต้องการให้คุณอนุญาต { -brand-short-name } ให้เข้าถึงข้อมูลของ Safari อย่างชัดเจน กรุณาคลิก “ดำเนินการต่อ” จากนั้นเลือกโฟลเดอร์ “Safari“ ในกล่องโต้ตอบของ Finder ที่จะปรากฏขึ้น แล้วคลิก “เปิด”
+
+import-migrating-page-title = กำลังนำเข้า…
+
+import-migrating-description = รายการดังต่อไปนี้กำลังถูกนำเข้า…
+
+import-select-profile-page-title = เลือกโปรไฟล์
+
+import-select-profile-description = โปรไฟล์ดังต่อไปนี้พร้อมที่จะนำเข้า:
+
+import-done-page-title = การนำเข้าเสร็จสมบูรณ์
+
+import-done-description = นำเข้ารายการต่อไปนี้สำเร็จ:
+
+import-close-source-browser = โปรดแน่ใจว่าเบราว์เซอร์ที่เลือกถูกปิดแล้วก่อนดำเนินการต่อ
+
+source-name-ie = Internet Explorer
+source-name-edge = Microsoft Edge
+source-name-chrome = Google Chrome
+
+imported-safari-reading-list = รายการอ่าน (จาก Safari)
+imported-edge-reading-list = รายการอ่าน (จาก Edge)
+
+## Browser data types
+## All of these strings get a $browser variable passed in.
+## You can use the browser variable to differentiate the name of items,
+## which may have different labels in different browsers.
+## The supported values for the $browser variable are:
+## 360se
+## chrome
+## edge
+## firefox
+## ie
+## safari
+## The various beta and development versions of edge and chrome all get
+## normalized to just "edge" and "chrome" for these strings.
+
+browser-data-cookies-checkbox =
+ .label = คุกกี้
+browser-data-cookies-label =
+ .value = คุกกี้
+
+browser-data-history-checkbox =
+ .label =
+ { $browser ->
+ [firefox] ประวัติการเรียกดูและที่คั่นหน้า
+ *[other] ประวัติการเรียกดู
+ }
+browser-data-history-label =
+ .value =
+ { $browser ->
+ [firefox] ประวัติการเรียกดูและที่คั่นหน้า
+ *[other] ประวัติการเรียกดู
+ }
+
+browser-data-formdata-checkbox =
+ .label = ประวัติแบบฟอร์มที่บันทึกไว้
+browser-data-formdata-label =
+ .value = ประวัติแบบฟอร์มที่บันทึกไว้
+
+# This string should use the same phrase for "logins and passwords" as the
+# label in the main hamburger menu that opens about:logins.
+browser-data-passwords-checkbox =
+ .label = การเข้าสู่ระบบและรหัสผ่านที่บันทึกไว้
+# This string should use the same phrase for "logins and passwords" as the
+# label in the main hamburger menu that opens about:logins.
+browser-data-passwords-label =
+ .value = การเข้าสู่ระบบและรหัสผ่านที่บันทึกไว้
+
+browser-data-bookmarks-checkbox =
+ .label =
+ { $browser ->
+ [ie] รายการโปรด
+ [edge] รายการโปรด
+ *[other] ที่คั่นหน้า
+ }
+browser-data-bookmarks-label =
+ .value =
+ { $browser ->
+ [ie] รายการโปรด
+ [edge] รายการโปรด
+ *[other] ที่คั่นหน้า
+ }
+
+browser-data-otherdata-checkbox =
+ .label = ข้อมูลอื่น ๆ
+browser-data-otherdata-label =
+ .label = ข้อมูลอื่น ๆ
+
+browser-data-session-checkbox =
+ .label = หน้าต่างและแท็บ
+browser-data-session-label =
+ .value = หน้าต่างและแท็บ
+
+browser-data-payment-methods-checkbox =
+ .label = วิธีการชำระเงิน
+browser-data-payment-methods-label =
+ .value = วิธีการชำระเงิน
diff --git a/l10n-th/browser/browser/migrationWizard.ftl b/l10n-th/browser/browser/migrationWizard.ftl
new file mode 100644
index 0000000000..ed18bd78c0
--- /dev/null
+++ b/l10n-th/browser/browser/migrationWizard.ftl
@@ -0,0 +1,274 @@
+# 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/.
+
+migration-wizard-selection-header = นำเข้าข้อมูลเบราว์เซอร์
+migration-wizard-selection-list = เลือกข้อมูลที่คุณต้องการนำเข้า
+# Shown in the new migration wizard's dropdown selector for choosing the browser
+# to import from. This variant is shown when the selected browser doesn't support
+# user profiles, and so we only show the browser name.
+#
+# Variables:
+# $sourceBrowser (String): the name of the browser to import from.
+migration-wizard-selection-option-without-profile = { $sourceBrowser }
+# Shown in the new migration wizard's dropdown selector for choosing the browser
+# and user profile to import from. This variant is shown when the selected browser
+# supports user profiles.
+#
+# Variables:
+# $sourceBrowser (String): the name of the browser to import from.
+# $profileName (String): the name of the user profile to import from.
+migration-wizard-selection-option-with-profile = { $sourceBrowser } — { $profileName }
+
+# Each migrator is expected to include a display name string, and that display
+# name string should have a key with "migration-wizard-migrator-display-name-"
+# as a prefix followed by the unique identification key for the migrator.
+
+migration-wizard-migrator-display-name-brave = Brave
+migration-wizard-migrator-display-name-canary = Chrome Canary
+migration-wizard-migrator-display-name-chrome = Chrome
+migration-wizard-migrator-display-name-chrome-beta = Chrome Beta
+migration-wizard-migrator-display-name-chrome-dev = Chrome Dev
+migration-wizard-migrator-display-name-chromium = Chromium
+migration-wizard-migrator-display-name-chromium-360se = 360 Secure Browser
+migration-wizard-migrator-display-name-chromium-edge = Microsoft Edge
+migration-wizard-migrator-display-name-chromium-edge-beta = Microsoft Edge Beta
+migration-wizard-migrator-display-name-edge-legacy = Microsoft Edge Legacy
+migration-wizard-migrator-display-name-firefox = Firefox
+migration-wizard-migrator-display-name-file-password-csv = รหัสผ่านจากไฟล์ CSV
+migration-wizard-migrator-display-name-file-bookmarks = ที่คั่นหน้าจากไฟล์ HTML
+migration-wizard-migrator-display-name-ie = Microsoft Internet Explorer
+migration-wizard-migrator-display-name-opera = Opera
+migration-wizard-migrator-display-name-opera-gx = Opera GX
+migration-wizard-migrator-display-name-safari = Safari
+migration-wizard-migrator-display-name-vivaldi = Vivaldi
+migration-source-name-ie = Internet Explorer
+migration-source-name-edge = Microsoft Edge
+migration-source-name-chrome = Google Chrome
+migration-imported-safari-reading-list = รายการอ่าน (จาก Safari)
+migration-imported-edge-reading-list = รายการอ่าน (จาก Edge)
+
+## These strings are shown if the selected browser data directory is unreadable.
+## In practice, this tends to only occur on Linux when Firefox
+## is installed as a Snap.
+
+migration-no-permissions-message = { -brand-short-name } ไม่มีสิทธิ์เข้าถึงโปรไฟล์ของเบราว์เซอร์อื่น ๆ ซึ่งติดตั้งบนอุปกรณ์นี้
+migration-no-permissions-instructions = หากต้องการนำเข้าข้อมูลจากเบราว์เซอร์อื่นต่อ ให้มอบสิทธิ์เข้าถึงโฟลเดอร์โปรไฟล์ของเบราว์เซอร์นั้นแก่ { -brand-short-name }
+migration-no-permissions-instructions-step1 = ให้เลือก “ดำเนินการต่อ”
+# The second step in getting permissions to read data for the selected
+# browser type.
+#
+# Variables:
+# $permissionsPath (String): the file system path that the user will need to grant read permission to.
+migration-no-permissions-instructions-step2 = ในเครื่องมือเลือกไฟล์ ให้นำทางไปที่ <code>{ $permissionsPath }</code> แล้วคลิก “เลือก”
+
+## These strings will be displayed based on how many resources are selected to import
+
+migration-all-available-data-label = นำเข้าข้อมูลที่มีอยู่ทั้งหมด
+migration-no-selected-data-label = ไม่ได้เลือกข้อมูลใดที่จะนำเข้า
+migration-selected-data-label = นำเข้าข้อมูลที่เลือก
+
+##
+
+migration-select-all-option-label = เลือกทั้งหมด
+migration-bookmarks-option-label = ที่คั่นหน้า
+# Favorites is used for Bookmarks when importing from Internet Explorer or
+# Edge, as this is the terminology for bookmarks on those browsers.
+migration-favorites-option-label = รายการโปรด
+migration-logins-and-passwords-option-label = การเข้าสู่ระบบและรหัสผ่านที่บันทึกไว้
+migration-passwords-option-label = รหัสผ่านที่บันทึกไว้
+migration-history-option-label = ประวัติการเรียกดู
+migration-extensions-option-label = ส่วนขยาย
+migration-form-autofill-option-label = ข้อมูลกรอกแบบฟอร์มอัตโนมัติ
+migration-payment-methods-option-label = วิธีการชำระเงิน
+migration-cookies-option-label = คุกกี้
+migration-session-option-label = หน้าต่างและแท็บ
+migration-otherdata-option-label = ข้อมูลอื่น ๆ
+migration-passwords-from-file-progress-header = นำเข้าไฟล์รหัสผ่าน
+migration-passwords-from-file-success-header = นำเข้ารหัสผ่านสำเร็จแล้ว
+migration-passwords-from-file = กำลังตรวจสอบหารหัสผ่านในไฟล์
+migration-passwords-new = รหัสผ่านใหม่
+migration-passwords-updated = รหัสผ่านที่มีอยู่
+migration-passwords-from-file-no-valid-data = ไฟล์นี้ไม่มีข้อมูลรหัสผ่านที่ถูกต้องใด ๆ โปรดเลือกไฟล์อื่น
+migration-passwords-from-file-picker-title = นำเข้าไฟล์รหัสผ่าน
+# A description for the .csv file format that may be shown as the file type
+# filter by the operating system.
+migration-passwords-from-file-csv-filter-title =
+ { PLATFORM() ->
+ [macos] เอกสาร CSV
+ *[other] ไฟล์ CSV
+ }
+# A description for the .tsv file format that may be shown as the file type
+# filter by the operating system. TSV is short for 'tab separated values'.
+migration-passwords-from-file-tsv-filter-title =
+ { PLATFORM() ->
+ [macos] เอกสาร TSV
+ *[other] ไฟล์ TSV
+ }
+# Shown in the migration wizard after importing passwords from a file
+# has completed, if new passwords were added.
+#
+# Variables:
+# $newEntries (Number): the number of new successfully imported passwords
+migration-wizard-progress-success-new-passwords =
+ { $newEntries ->
+ [one] เพิ่มแล้ว { $newEntries }
+ *[other] เพิ่มแล้ว { $newEntries }
+ }
+# Shown in the migration wizard after importing passwords from a file
+# has completed, if existing passwords were updated.
+#
+# Variables:
+# $updatedEntries (Number): the number of updated passwords
+migration-wizard-progress-success-updated-passwords =
+ { $updatedEntries ->
+ [one] ปรับปรุงแล้ว { $updatedEntries }
+ *[other] ปรับปรุงแล้ว { $updatedEntries }
+ }
+migration-bookmarks-from-file-picker-title = นำเข้าไฟล์ที่คั่นหน้า
+migration-bookmarks-from-file-progress-header = นำเข้าที่คั่นหน้า
+migration-bookmarks-from-file = ที่คั่นหน้า
+migration-bookmarks-from-file-success-header = นำเข้าที่คั่นหน้าสำเร็จแล้ว
+migration-bookmarks-from-file-no-valid-data = ไฟล์นี้ไม่มีข้อมูลที่คั่นหน้าใด ๆ โปรดเลือกไฟล์อื่น
+# A description for the .html file format that may be shown as the file type
+# filter by the operating system.
+migration-bookmarks-from-file-html-filter-title =
+ { PLATFORM() ->
+ [macos] เอกสาร HTML
+ *[other] ไฟล์ HTML
+ }
+# A description for the .json file format that may be shown as the file type
+# filter by the operating system.
+migration-bookmarks-from-file-json-filter-title = ไฟล์ JSON
+# Shown in the migration wizard after importing bookmarks from a file
+# has completed.
+#
+# Variables:
+# $newEntries (Number): the number of imported bookmarks.
+migration-wizard-progress-success-new-bookmarks = { $newEntries } ที่คั่นหน้า
+migration-import-button-label = นำเข้า
+migration-choose-to-import-from-file-button-label = นำเข้าจากไฟล์
+migration-import-from-file-button-label = เลือกไฟล์
+migration-cancel-button-label = ยกเลิก
+migration-done-button-label = เสร็จสิ้น
+migration-continue-button-label = ดำเนินการต่อ
+migration-wizard-import-browser-no-browsers = { -brand-short-name } ไม่พบโปรแกรมใดที่มีข้อมูลที่คั่นหน้า ประวัติ หรือรหัสผ่าน
+migration-wizard-import-browser-no-resources = มีข้อผิดพลาดเกิดขึ้น { -brand-short-name } ไม่พบข้อมูลใดที่จะนำเข้าจากโปรไฟล์เบราว์เซอร์นั้นได้เลย
+
+## These strings will be used to create a dynamic list of items that can be
+## imported. The list will be created using Intl.ListFormat(), so it will
+## follow each locale's rules, and the first item will be capitalized by code.
+## When applicable, the resources should be in their plural form.
+## For example, a possible list could be "Bookmarks, passwords and autofill data".
+
+migration-list-bookmark-label = ที่คั่นหน้า
+# “favorites” refers to bookmarks in Edge and Internet Explorer. Use the same terminology
+# if the browser is available in your language.
+migration-list-favorites-label = รายการโปรด
+migration-list-password-label = รหัสผ่าน
+migration-list-history-label = ประวัติ
+migration-list-extensions-label = ส่วนขยาย
+migration-list-autofill-label = ข้อมูลกรอกอัตโนมัติ
+migration-list-payment-methods-label = วิธีการชำระเงิน
+
+##
+
+migration-wizard-progress-header = กำลังนำเข้าข้อมูล
+# This header appears in the final page of the migration wizard only if
+# all resources were imported successfully.
+migration-wizard-progress-done-header = นำเข้าข้อมูลสำเร็จแล้ว
+# This header appears in the final page of the migration wizard if only
+# some of the resources were imported successfully. This is meant to be
+# distinct from migration-wizard-progress-done-header, which is only shown
+# if all resources were imported successfully.
+migration-wizard-progress-done-with-warnings-header = การนำเข้าข้อมูลเสร็จสมบูรณ์
+migration-wizard-progress-icon-in-progress =
+ .aria-label = กำลังนำเข้า…
+migration-wizard-progress-icon-completed =
+ .aria-label = เสร็จสมบูรณ์
+migration-safari-password-import-header = นำเข้ารหัสผ่านจาก Safari
+migration-safari-password-import-steps-header = หากต้องการนำเข้ารหัสผ่านจาก Safari:
+migration-safari-password-import-step1 = ใน Safari ให้เปิดเมนู “Safari” แล้วไปที่ การตั้งค่า > รหัสผ่าน
+migration-safari-password-import-step2 = เลือกปุ่ม <img data-l10n-name="safari-icon-3dots"/> แล้วเลือก “ส่งออกรหัสผ่านทั้งหมด”
+migration-safari-password-import-step3 = บันทึกไฟล์รหัสผ่าน
+migration-safari-password-import-step4 = ใช้ “เลือกไฟล์” ด้านล่างเพื่อเลือกไฟล์รหัสผ่านที่คุณได้บันทึกไว้
+migration-safari-password-import-skip-button = ข้าม
+migration-safari-password-import-select-button = เลือกไฟล์
+# Shown in the migration wizard after importing bookmarks from another
+# browser has completed.
+#
+# Variables:
+# $quantity (Number): the number of successfully imported bookmarks
+migration-wizard-progress-success-bookmarks =
+ { $quantity ->
+ [one] { $quantity } ที่คั่นหน้า
+ *[other] { $quantity } ที่คั่นหน้า
+ }
+# Shown in the migration wizard after importing bookmarks from either
+# Internet Explorer or Edge.
+#
+# Use the same terminology if the browser is available in your language.
+#
+# Variables:
+# $quantity (Number): the number of successfully imported bookmarks
+migration-wizard-progress-success-favorites =
+ { $quantity ->
+ [one] { $quantity } รายการโปรด
+ *[other] { $quantity } รายการโปรด
+ }
+
+## The import process identifies extensions installed in other supported
+## browsers and installs the corresponding (matching) extensions compatible
+## with Firefox, if available.
+
+# Shown in the migration wizard after importing all matched extensions
+# from supported browsers.
+#
+# Variables:
+# $quantity (Number): the number of successfully imported extensions
+migration-wizard-progress-success-extensions = { $quantity } ส่วนขยาย
+# Shown in the migration wizard after importing a partial amount of
+# matched extensions from supported browsers.
+#
+# Variables:
+# $matched (Number): the number of matched imported extensions
+# $quantity (Number): the number of total extensions found during import
+migration-wizard-progress-partial-success-extensions = { $matched } จาก { $quantity } ส่วนขยาย
+migration-wizard-progress-extensions-support-link = เรียนรู้ว่า { -brand-product-name } จับคู่ส่วนขยายอย่างไร
+# Shown in the migration wizard if there are no matched extensions
+# on import from supported browsers.
+migration-wizard-progress-no-matched-extensions = ไม่มีส่วนขยายที่ตรงกัน
+migration-wizard-progress-extensions-addons-link = เรียกดูส่วนขยายสำหรับ { -brand-short-name }
+
+##
+
+# Shown in the migration wizard after importing passwords from another
+# browser has completed.
+#
+# Variables:
+# $quantity (Number): the number of successfully imported passwords
+migration-wizard-progress-success-passwords =
+ { $quantity ->
+ [one] { $quantity } รหัสผ่าน
+ *[other] { $quantity } รหัสผ่าน
+ }
+# Shown in the migration wizard after importing history from another
+# browser has completed.
+#
+# Variables:
+# $maxAgeInDays (Number): the maximum number of days of history that might be imported.
+migration-wizard-progress-success-history =
+ { $maxAgeInDays ->
+ [one] จากวันก่อน
+ *[other] จาก { $maxAgeInDays } วันก่อน
+ }
+migration-wizard-progress-success-formdata = ประวัติแบบฟอร์ม
+# Shown in the migration wizard after importing payment methods from another
+# browser has completed.
+#
+# Variables:
+# $quantity (Number): the number of successfully imported payment methods
+migration-wizard-progress-success-payment-methods = { $quantity } วิธีการชำระเงิน
+migration-wizard-safari-permissions-sub-header = หากต้องการนำเข้าที่คั่นหน้าและประวัติการเรียกดูจาก Safari:
+migration-wizard-safari-instructions-continue = ให้เลือก “ดำเนินการต่อ”
+migration-wizard-safari-instructions-folder = เลือกโฟลเดอร์ Safari จากในรายการ แล้วเลือก “เปิด”
diff --git a/l10n-th/browser/browser/newtab/asrouter.ftl b/l10n-th/browser/browser/newtab/asrouter.ftl
new file mode 100644
index 0000000000..d6f01cd651
--- /dev/null
+++ b/l10n-th/browser/browser/newtab/asrouter.ftl
@@ -0,0 +1,280 @@
+# 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/.
+
+
+## These messages are used as headings in the recommendation doorhanger
+
+cfr-doorhanger-extension-heading = ส่วนขยายที่แนะนำ
+cfr-doorhanger-feature-heading = คุณลักษณะที่แนะนำ
+
+##
+
+cfr-doorhanger-extension-sumo-link =
+ .tooltiptext = ทำไมฉันจึงเห็นสิ่งนี้
+cfr-doorhanger-extension-cancel-button = ไม่ใช่ตอนนี้
+ .accesskey = ไ
+cfr-doorhanger-extension-ok-button = เพิ่มตอนนี้
+ .accesskey = เ
+cfr-doorhanger-extension-manage-settings-button = จัดการการตั้งค่าคำแนะนำ
+ .accesskey = จ
+cfr-doorhanger-extension-never-show-recommendation = ไม่ต้องแสดงคำแนะนำนี้ให้ฉัน
+ .accesskey = ส
+cfr-doorhanger-extension-learn-more-link = เรียนรู้เพิ่มเติม
+# This string is used on a new line below the add-on name
+# Variables:
+# $name (String) - Add-on author name
+cfr-doorhanger-extension-author = โดย { $name }
+# This is a notification displayed in the address bar.
+# When clicked it opens a panel with a message for the user.
+cfr-doorhanger-extension-notification = คำแนะนำ
+# .a11y-announcement is extracted in JS and announced via A11y.announce.
+cfr-doorhanger-extension-notification2 = แนะนำ
+ .tooltiptext = ส่วนขยายที่แนะนำ
+ .a11y-announcement = ส่วนขยายแนะนำที่มีอยู่
+# This is a notification displayed in the address bar.
+# When clicked it opens a panel with a message for the user.
+# .a11y-announcement is extracted in JS and announced via A11y.announce.
+cfr-doorhanger-feature-notification = แนะนำ
+ .tooltiptext = คุณลักษณะที่แนะนำ
+ .a11y-announcement = คุณลักษณะแนะนำที่มีอยู่
+
+## Add-on statistics
+## These strings are used to display the total number of
+## users and rating for an add-on. They are shown next to each other.
+
+# Variables:
+# $total (Number) - The rating of the add-on from 1 to 5
+cfr-doorhanger-extension-rating =
+ .tooltiptext =
+ { $total ->
+ *[other] { $total } ดาว
+ }
+# Variables:
+# $total (Number) - The total number of users using the add-on
+cfr-doorhanger-extension-total-users =
+ { $total ->
+ *[other] { $total } ผู้ใช้
+ }
+
+## Firefox Accounts Message
+
+cfr-doorhanger-bookmark-fxa-header = ซิงค์ที่คั่นหน้าของคุณได้ทุกที่
+cfr-doorhanger-bookmark-fxa-body = เยี่ยมมาก! ตอนนี้อย่าออกไปโดยไม่มีที่คั่นหน้านี้บนอุปกรณ์มือถือของคุณ เริ่มต้นกับ { -fxaccount-brand-name }
+cfr-doorhanger-bookmark-fxa-link-text = ซิงค์ที่คั่นหน้าของคุณตอนนี้…
+cfr-doorhanger-bookmark-fxa-close-btn-tooltip =
+ .aria-label = ปุ่มปิด
+ .title = ปิด
+
+## Protections panel
+
+cfr-protections-panel-header = เรียกดูโดยไม่ต้องมีใครมาติดตาม
+cfr-protections-panel-body = เก็บข้อมูลของคุณไว้กับตัวคุณเอง { -brand-short-name } ปกป้องคุณจากตัวติดตามที่พบบ่อยที่สุดซึ่งติดตามสิ่งที่คุณทำทางออนไลน์
+cfr-protections-panel-link-text = เรียนรู้เพิ่มเติม
+
+## What's New toolbar button and panel
+
+# This string is used by screen readers to offer a text based alternative for
+# the notification icon
+cfr-badge-reader-label-newfeature = คุณสมบัติใหม่:
+cfr-whatsnew-button =
+ .label = มีอะไรใหม่
+ .tooltiptext = มีอะไรใหม่
+cfr-whatsnew-release-notes-link-text = อ่านบันทึกประจำรุ่น
+
+## Enhanced Tracking Protection Milestones
+
+# Variables:
+# $blockedCount (Number) - The total count of blocked trackers. This number will always be greater than 1.
+# $date (Datetime) - The date we began recording the count of blocked trackers
+cfr-doorhanger-milestone-heading2 =
+ { $blockedCount ->
+ *[other] { -brand-short-name } ได้ปิดกั้นตัวติดตามมากกว่า <b>{ $blockedCount }</b> ตัวตั้งแต่ { DATETIME($date, month: "long", year: "numeric") }!
+ }
+cfr-doorhanger-milestone-ok-button = ดูทั้งหมด
+ .accesskey = ด
+cfr-doorhanger-milestone-close-button = ปิด
+ .accesskey = C
+
+## DOH Message
+
+cfr-doorhanger-doh-body = ความเป็นส่วนตัวของคุณสำคัญ ตอนนี้ { -brand-short-name } จะกำหนดเส้นทางคำขอ DNS ของคุณให้กับบริการพาร์ทเนอร์อย่างปลอดภัยเมื่อใดก็ตามที่เป็นไปได้เพื่อปกป้องคุณในขณะที่คุณเรียกดู
+cfr-doorhanger-doh-header = การค้นหา DNS ที่เข้ารหัสและปลอดภัยยิ่งขึ้น
+cfr-doorhanger-doh-primary-button-2 = ตกลง
+ .accesskey = ต
+cfr-doorhanger-doh-secondary-button = ปิดใช้งาน
+ .accesskey = D
+
+## Full Video Support CFR message
+
+cfr-doorhanger-video-support-body = วิดีโอบนไซต์นี้อาจเล่นไม่ถูกต้องใน { -brand-short-name } เวอร์ชันนี้ สำหรับการสนับสนุนวิดีโอเต็มรูปแบบ อัปเดต { -brand-short-name } ทันที
+cfr-doorhanger-video-support-header = อัปเดต { -brand-short-name } เพื่อเล่นวิดีโอ
+cfr-doorhanger-video-support-primary-button = อัปเดตตอนนี้
+ .accesskey = U
+
+## VPN promotion dialog for public Wi-Fi users
+##
+## If a user is detected to be on a public Wi-Fi network, they are given a
+## bit of info about how to improve their privacy and then offered a button
+## to the Mozilla VPN page and a link to dismiss the dialog.
+
+# This header text can be explicitly wrapped.
+spotlight-public-wifi-vpn-header = ดูเหมือนว่าคุณกำลังใช้ Wi-Fi สาธารณะ
+spotlight-public-wifi-vpn-body = เมื่อต้องการซ่อนตำแหน่งที่ตั้งและกิจกรรมการเรียกดู ให้ใช้เครือข่ายส่วนตัวเสมือน ซึ่งจะช่วยปกป้องคุณเมื่อเรียกดูในที่สาธารณะ เช่น สนามบิน และร้านกาแฟ
+spotlight-public-wifi-vpn-primary-button = เป็นส่วนตัวอยู่เสมอด้วย { -mozilla-vpn-brand-name }
+ .accesskey = เ
+spotlight-public-wifi-vpn-link = ไม่ใช่ตอนนี้
+ .accesskey = N
+
+## Emotive Continuous Onboarding
+
+spotlight-better-internet-header = อินเทอร์เน็ตที่ดีขึ้นเริ่มที่ตัวคุณ
+spotlight-better-internet-body = เมื่อคุณใช้ { -brand-short-name } แสดงว่าคุณสนับสนุนอินเทอร์เน็ตที่เปิดกว้างและเข้าถึงได้ซึ่งดีขึ้นสำหรับทุกคน
+spotlight-peace-mind-header = เราปกป้องคุณอย่างครอบคลุม
+spotlight-peace-mind-body = ทุกเดือน { -brand-short-name } จะปิดกั้นตัวติดตามกว่า 3,000 ตัวโดยเฉลี่ยต่อผู้ใช้หนึ่งคน เพราะไม่ควรมีอะไรมาขวางกั้นระหว่างคุณกับอินเทอร์เน็ตที่ดี โดยเฉพาะปัญหาเกี่ยวกับความเป็นส่วนตัว เช่น ตัวติดตาม
+spotlight-pin-primary-button =
+ { PLATFORM() ->
+ [macos] เก็บใน Dock
+ *[other] ปักหมุดเข้ากับแถบงาน
+ }
+spotlight-pin-secondary-button = ไม่ใช่ตอนนี้
+
+## MR2022 Background Update Windows native toast notification strings.
+##
+## These strings will be displayed by the Windows operating system in
+## a native toast, like:
+##
+## <b>multi-line title</b>
+## multi-line text
+## <img>
+## [ primary button ] [ secondary button ]
+##
+## The button labels are fitted into narrow fixed-width buttons by
+## Windows and therefore must be as narrow as possible.
+
+mr2022-background-update-toast-title = { -brand-short-name } ใหม่ เป็นส่วนตัวมากขึ้น ตัวติดตามน้อยลง ไม่ล่วงละเมิด
+mr2022-background-update-toast-text = ลองใช้ { -brand-short-name } ใหม่ที่สุดที่ได้รับการอัพเกรดด้วยระบบการป้องกันการติดตามที่แข็งแกร่งที่สุดของเราเลย
+# This button label will be fitted into a narrow fixed-width button by
+# Windows. Try to not exceed the width of the English text (compare it
+# using a variable font like Arial): the button can only fit 1-2
+# additional characters, exceeding characters will be truncated.
+mr2022-background-update-toast-primary-button-label = เปิด { -brand-shorter-name } เลย
+# This button label will be fitted into a narrow fixed-width button by
+# Windows. Try to not exceed the width of the English text (compare it using a
+# variable font like Arial): the button can only fit 1-2 additional characters,
+# exceeding characters will be truncated.
+mr2022-background-update-toast-secondary-button-label = เตือนฉันภายหลัง
+
+## Firefox View CFR
+
+firefoxview-cfr-primarybutton = ลองดู
+ .accesskey = ล
+firefoxview-cfr-secondarybutton = ไม่ใช่ตอนนี้
+ .accesskey = ม
+firefoxview-cfr-header-v2 = ทำต่อจากจุดที่คุณค้างไว้อย่างรวดเร็ว
+firefoxview-cfr-body-v2 = นำแท็บที่ปิดไปล่าสุดกลับมา รวมทั้งสลับไปมาระหว่างอุปกรณ์ได้อย่างราบรื่นด้วย { -firefoxview-brand-name }
+
+## Firefox View Spotlight
+
+firefoxview-spotlight-promo-title = ทำความรู้จัก { -firefoxview-brand-name }
+# “Poof” refers to the expression to convey when something or someone suddenly disappears, or in this case, reappears. For example, “Poof, it’s gone.”
+firefoxview-spotlight-promo-subtitle = ต้องการให้แท็บที่เปิดไว้มาอยู่บนโทรศัพท์ของคุณหรือเปล่า เอามันมาเลยสิ ต้องการไซต์นั้นที่คุณเพิ่งเข้าชมไปหรือเปล่า ปิ๊ง มันกลับมาแล้วใน { -firefoxview-brand-name }
+firefoxview-spotlight-promo-primarybutton = ดูวิธีการทำงาน
+firefoxview-spotlight-promo-secondarybutton = ข้าม
+
+## Colorways expiry reminder CFR
+
+colorways-cfr-primarybutton = เลือกชุดรูปแบบสี
+ .accesskey = ล
+# "shades" refers to the different color options available to users in colorways.
+colorways-cfr-body = แต่งเติมสีสันให้กับเบราว์เซอร์ของคุณด้วยเฉดสีสุดพิเศษสำหรับ { -brand-short-name } ที่ได้แรงบันดาลใจจากเสียงที่เปลี่ยนแปลงวัฒนธรรม
+colorways-cfr-header-28days = ชุดรูปแบบสี “เสียงแห่งอิสระ” หมดเขต 16 มกราคมนี้
+colorways-cfr-header-14days = ชุดรูปแบบสี “เสียงแห่งอิสระ” หมดเขตในอีกสองสัปดาห์นี้
+colorways-cfr-header-7days = ชุดรูปแบบสี “เสียงแห่งอิสระ” หมดเขตสัปดาห์นี้
+colorways-cfr-header-today = ชุดรูปแบบสี “เสียงแห่งอิสระ” หมดเขตวันนี้
+
+## Cookie Banner Handling CFR
+
+cfr-cbh-header = อนุญาตให้ { -brand-short-name } ปฏิเสธแบนเนอร์คุกกี้หรือไม่?
+cfr-cbh-body = { -brand-short-name } สามารถปฏิเสธคำขอคุกกี้จำนวนมากได้โดยอัตโนมัติ
+cfr-cbh-confirm-button = ปฏิเสธแบนเนอร์คุกกี้
+ .accesskey = ป
+cfr-cbh-dismiss-button = ไม่ใช่ตอนนี้
+ .accesskey = ม
+cookie-banner-blocker-onboarding-header = { -brand-short-name } ได้ปฏิเสธแบนเนอร์คุกกี้ให้คุณเมื่อสักครู่นี้
+cookie-banner-blocker-onboarding-body = ลดคุกกี้ที่คอยติดตามคุณบนไซต์นี้ให้น้อยลง เพื่อลดการรบกวนสมาธิ
+cookie-banner-blocker-onboarding-learn-more = เรียนรู้เพิ่มเติม
+
+## These strings are used in the Fox doodle Pin/set default spotlights
+
+july-jam-headline = เราปกป้องคุณอย่างครอบคลุม
+july-jam-body = ทุกเดือน { -brand-short-name } ปิดกั้นตัวติดตามเฉลี่ย 3,000+ ตัวต่อผู้ใช้หนึ่งคน ทำให้คุณเข้าถึงอินเทอร์เน็ตที่ดีได้อย่างปลอดภัยและรวดเร็ว
+july-jam-set-default-primary = เปิดลิงก์ของฉันด้วย { -brand-short-name }
+fox-doodle-pin-headline = ยินดีต้อนรับกลับมา
+# “indie” is short for the term “independent”.
+# In this instance, free from outside influence or control.
+fox-doodle-pin-body = นี่เป็นการแจ้งเตือนสั้นๆ ว่าคุณสามารถนำเบราว์เซอร์ที่ชื่นชอบของคุณมาไว้ใกล้ๆ ให้เข้าถึงได้ด้วยเพียงคลิกเดียว
+fox-doodle-pin-primary = เปิดลิงก์ของฉันด้วย { -brand-short-name }
+fox-doodle-pin-secondary = ยังไม่ทำตอนนี้
+
+## These strings are used in the Set Firefox as Default PDF Handler for Existing Users experiment
+
+set-default-pdf-handler-headline = <strong>ตอนนี้ไฟล์ PDF ของคุณจะเปิดใน { -brand-short-name }</strong> แก้ไขหรือเซ็นชื่อในแบบฟอร์มได้โดยตรงในเบราว์เซอร์ของคุณ หากต้องการเปลี่ยน ให้ค้นหาคำว่า “PDF” ในการตั้งค่า
+set-default-pdf-handler-primary = เข้าใจแล้ว
+
+## FxA sync CFR
+
+fxa-sync-cfr-header = คิดจะมีอุปกรณ์ใหม่ในภายหลังใช่ไหม?
+fxa-sync-cfr-body = ตรวจสอบให้แน่ใจว่าที่คั่นหน้า รหัสผ่าน และแท็บล่าสุดของคุณติดตัวมาด้วยทุกครั้งที่คุณเปิดเบราว์เซอร์ { -brand-product-name } ใหม่
+fxa-sync-cfr-primary = เรียนรู้เพิ่มเติม
+ .accesskey = ร
+fxa-sync-cfr-secondary = เตือนฉันภายหลัง
+ .accesskey = ต
+
+## Device Migration FxA Spotlight
+
+device-migration-fxa-spotlight-heavy-user-header = อย่าลืมสำรองข้อมูลของคุณ
+device-migration-fxa-spotlight-heavy-user-body = ตรวจสอบให้แน่ใจว่าข้อมูลสำคัญ เช่น ที่คั่นหน้าและรหัสผ่าน ได้รับการอัปเดตและป้องกันในทุกอุปกรณ์ของคุณ
+device-migration-fxa-spotlight-heavy-user-primary-button = เริ่มต้นใช้งาน
+device-migration-fxa-spotlight-older-device-header = ให้คุณอุ่นใจได้ด้วย { -brand-product-name }
+device-migration-fxa-spotlight-older-device-body = บัญชีจะคอยอัปเดตและปกป้องข้อมูลสำคัญของคุณบนอุปกรณ์ใดๆ ก็ตามที่คุณเชื่อมต่อ
+device-migration-fxa-spotlight-older-device-primary-button = สร้างบัญชี
+device-migration-fxa-spotlight-getting-new-device-header-2 = คิดจะมีอุปกรณ์ใหม่ในภายหลังใช่ไหม?
+device-migration-fxa-spotlight-getting-new-device-body-2 = ทำตามขั้นตอนง่ายๆ ไม่กี่ขั้นตอนเพื่อนำที่คั่นหน้า ประวัติ และรหัสผ่านติดตัวไปด้วยเมื่อคุณเริ่มใช้งานอุปกรณ์ใหม่
+device-migration-fxa-spotlight-getting-new-device-primary-button = วิธีสำรองข้อมูลของฉัน
+
+## Set as Default PDF Reader Infobar
+
+# The question portion of the following message should have the <strong> and </strong> tags surrounding it.
+pdf-default-notification-message = <strong>ต้องการตั้ง { -brand-short-name } เป็นโปรแกรมอ่าน PDF เริ่มต้นของคุณหรือไม่?</strong> ใช้ { -brand-short-name } ในการอ่านและแก้ไข PDF ที่บันทึกลงในคอมพิวเตอร์ของคุณ
+pdf-default-notification-set-default-button =
+ .label = ตั้งเป็นค่าเริ่มต้น
+pdf-default-notification-decline-button =
+ .label = ไม่ใช่ตอนนี้
+
+## Launch on login infobar notification
+
+launch-on-login-infobar-message = <strong>ต้องการเปิด { -brand-short-name } ทุกครั้งที่คุณเปิดคอมพิวเตอร์ใหม่หรือไม่?</strong> ขณะนี้คุณสามารถกำหนดให้ { -brand-short-name } เปิดโดยอัตโนมัติเมื่อคุณเปิดอุปกรณ์ใหม่ได้แล้ว
+launch-on-login-learnmore = เรียนรู้เพิ่มเติม
+launch-on-login-infobar-confirm-button = ใช่ เปิด { -brand-short-name }
+ .accesskey = ช
+launch-on-login-infobar-reject-button = ยังไม่ทำตอนนี้
+ .accesskey = ม
+
+## These string variants are used when the “launch on login” infobar
+## notification is displayed for a second time.
+
+launch-on-login-infobar-final-message = <strong>ต้องการเปิด { -brand-short-name } ทุกครั้งที่คุณเปิดคอมพิวเตอร์ใหม่หรือไม่?</strong> หากต้องการจัดการค่าปรับแต่งการเริ่มการทำงานของคุณ ให้ค้นหาคำว่า “เริ่มการทำงาน” ในการตั้งค่า
+launch-on-login-infobar-final-reject-button = ไม่เป็นไร ขอบคุณ
+ .accesskey = ม
+
+## Tail Fox Set Default Spotlight
+
+# This title is displayed together with the picture of a running fox with a long tail.
+# In English, this is a figure of speech meaning 'stop something from following you'.
+# If the localization of this message is challenging, consider using a simplified
+# alternative as a reference for translation: 'Keep unwanted trackers away'.
+tail-fox-spotlight-title = ไล่ตัวติดตามอันน่ารำคาญให้พ้นไปจากตัวคุณ
+tail-fox-spotlight-subtitle = บอกลาตัวติดตามโฆษณาอันน่ารำคาญและเข้าสู่ประสบการณ์อินเทอร์เน็ตที่ปลอดภัยและรวดเร็วยิ่งขึ้น
+tail-fox-spotlight-primary-button = เปิดลิงก์ของฉันด้วย { -brand-short-name }
+tail-fox-spotlight-secondary-button = ยังไม่ทำตอนนี้
diff --git a/l10n-th/browser/browser/newtab/newtab.ftl b/l10n-th/browser/browser/newtab/newtab.ftl
new file mode 100644
index 0000000000..af77f26e7d
--- /dev/null
+++ b/l10n-th/browser/browser/newtab/newtab.ftl
@@ -0,0 +1,271 @@
+# 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/.
+
+
+### Firefox Home / New Tab strings for about:home / about:newtab.
+
+newtab-page-title = แท็บใหม่
+newtab-settings-button =
+ .title = ปรับแต่งหน้าแท็บใหม่ของคุณ
+newtab-personalize-icon-label =
+ .title = ปรับแท็บใหม่ให้เป็นส่วนตัว
+ .aria-label = ปรับแท็บใหม่ให้เป็นส่วนตัว
+newtab-personalize-dialog-label =
+ .aria-label = ปรับให้เป็นแบบส่วนตัว
+
+## Search box component.
+
+# "Search" is a verb/action
+newtab-search-box-search-button =
+ .title = ค้นหา
+ .aria-label = ค้นหา
+# Variables:
+# $engine (string) - The name of the user's default search engine
+newtab-search-box-handoff-text = ค้นหาด้วย { $engine } หรือป้อนที่อยู่
+newtab-search-box-handoff-text-no-engine = ค้นหาหรือป้อนที่อยู่
+# Variables:
+# $engine (string) - The name of the user's default search engine
+newtab-search-box-handoff-input =
+ .placeholder = ค้นหาด้วย { $engine } หรือป้อนที่อยู่
+ .title = ค้นหาด้วย { $engine } หรือป้อนที่อยู่
+ .aria-label = ค้นหาด้วย { $engine } หรือป้อนที่อยู่
+newtab-search-box-handoff-input-no-engine =
+ .placeholder = ค้นหาหรือป้อนที่อยู่
+ .title = ค้นหาหรือป้อนที่อยู่
+ .aria-label = ค้นหาหรือป้อนที่อยู่
+newtab-search-box-text = ค้นหาเว็บ
+newtab-search-box-input =
+ .placeholder = ค้นหาเว็บ
+ .aria-label = ค้นหาเว็บ
+
+## Top Sites - General form dialog.
+
+newtab-topsites-add-search-engine-header = เพิ่มเครื่องมือค้นหา
+newtab-topsites-add-shortcut-header = ทางลัดใหม่
+newtab-topsites-edit-topsites-header = แก้ไขไซต์เด่น
+newtab-topsites-edit-shortcut-header = แก้ไขทางลัด
+newtab-topsites-title-label = ชื่อเรื่อง
+newtab-topsites-title-input =
+ .placeholder = ป้อนชื่อเรื่อง
+newtab-topsites-url-label = URL
+newtab-topsites-url-input =
+ .placeholder = พิมพ์หรือวาง URL
+newtab-topsites-url-validation = ต้องการ URL ที่ถูกต้อง
+newtab-topsites-image-url-label = URL ภาพที่กำหนดเอง
+newtab-topsites-use-image-link = ใช้ภาพที่กำหนดเอง…
+newtab-topsites-image-validation = ไม่สามารถโหลดภาพ ลอง URL อื่น
+
+## Top Sites - General form dialog buttons. These are verbs/actions.
+
+newtab-topsites-cancel-button = ยกเลิก
+newtab-topsites-delete-history-button = ลบออกจากประวัติ
+newtab-topsites-save-button = บันทึก
+newtab-topsites-preview-button = แสดงตัวอย่าง
+newtab-topsites-add-button = เพิ่ม
+
+## Top Sites - Delete history confirmation dialog.
+
+newtab-confirm-delete-history-p1 = คุณแน่ใจหรือไม่ว่าต้องการลบทุกอินสแตนซ์ของหน้านี้ออกจากประวัติของคุณ?
+# "This action" refers to deleting a page from history.
+newtab-confirm-delete-history-p2 = การกระทำนี้ไม่สามารถเลิกทำได้
+
+## Top Sites - Sponsored label
+
+newtab-topsite-sponsored = ได้รับการสนับสนุน
+
+## Context Menu - Action Tooltips.
+
+# General tooltip for context menus.
+newtab-menu-section-tooltip =
+ .title = เปิดเมนู
+ .aria-label = เปิดเมนู
+# Tooltip for dismiss button
+newtab-dismiss-button-tooltip =
+ .title = เอาออก
+ .aria-label = เอาออก
+# This tooltip is for the context menu of Pocket cards or Topsites
+# Variables:
+# $title (string) - The label or hostname of the site. This is for screen readers when the context menu button is focused/active.
+newtab-menu-content-tooltip =
+ .title = เปิดเมนู
+ .aria-label = เปิดเมนูบริบทสำหรับ { $title }
+# Tooltip on an empty topsite box to open the New Top Site dialog.
+newtab-menu-topsites-placeholder-tooltip =
+ .title = แก้ไขไซต์นี้
+ .aria-label = แก้ไขไซต์นี้
+
+## Context Menu: These strings are displayed in a context menu and are meant as a call to action for a given page.
+
+newtab-menu-edit-topsites = แก้ไข
+newtab-menu-open-new-window = เปิดในหน้าต่างใหม่
+newtab-menu-open-new-private-window = เปิดในหน้าต่างส่วนตัวใหม่
+newtab-menu-dismiss = ยกเลิก
+newtab-menu-pin = ปักหมุด
+newtab-menu-unpin = ถอนหมุด
+newtab-menu-delete-history = ลบออกจากประวัติ
+newtab-menu-save-to-pocket = บันทึกไปยัง { -pocket-brand-name }
+newtab-menu-delete-pocket = ลบจาก { -pocket-brand-name }
+newtab-menu-archive-pocket = เก็บถาวรใน { -pocket-brand-name }
+newtab-menu-show-privacy-info = สปอนเซอร์ของเราและความเป็นส่วนตัวของคุณ
+
+## Message displayed in a modal window to explain privacy and provide context for sponsored content.
+
+newtab-privacy-modal-button-done = เสร็จสิ้น
+newtab-privacy-modal-button-manage = จัดการการตั้งค่าเนื้อหาที่ได้รับการสนับสนุน
+newtab-privacy-modal-header = ความเป็นส่วนตัวของคุณสำคัญ
+newtab-privacy-modal-paragraph-2 =
+ นอกเหนือจากการนำเสนอเรื่องราวที่น่าสนใจ เรายังแสดงให้คุณเห็นเนื้อหาที่เกี่ยวข้อง
+ ซึ่งได้รับการตรวจสอบอย่างละเอียดจากผู้สนับสนุนที่ได้รับการคัดเลือก ทำให้คุณมั่นใจ
+ ได้ว่า<strong>ข้อมูลการเรียกดูของคุณจะไม่ทิ้งสำเนาส่วนตัวของ { -brand-product-name } ของคุณ</strong>ซึ่งเราและ
+ สปอนเซอร์ของเราจะไม่เห็น
+newtab-privacy-modal-link = เรียนรู้วิธีการปกป้องความเป็นส่วนตัวในแท็บใหม่
+
+##
+
+# Bookmark is a noun in this case, "Remove bookmark".
+newtab-menu-remove-bookmark = เอาที่คั่นหน้าออก
+# Bookmark is a verb here.
+newtab-menu-bookmark = เพิ่มที่คั่นหน้า
+
+## Context Menu - Downloaded Menu. "Download" in these cases is not a verb,
+## it is a noun. As in, "Copy the link that belongs to this downloaded item".
+
+newtab-menu-copy-download-link = คัดลอกลิงก์ดาวน์โหลด
+newtab-menu-go-to-download-page = ไปยังหน้าดาวน์โหลด
+newtab-menu-remove-download = เอาออกจากประวัติ
+
+## Context Menu - Download Menu: These are platform specific strings found in the context menu of an item that has
+## been downloaded. The intention behind "this action" is that it will show where the downloaded file exists on the file
+## system for each operating system.
+
+newtab-menu-show-file =
+ { PLATFORM() ->
+ [macos] แสดงใน Finder
+ *[other] เปิดโฟลเดอร์ที่บรรจุ
+ }
+newtab-menu-open-file = เปิดไฟล์
+
+## Card Labels: These labels are associated to pages to give
+## context on how the element is related to the user, e.g. type indicates that
+## the page is bookmarked, or is currently open on another device.
+
+newtab-label-visited = เยี่ยมชมแล้ว
+newtab-label-bookmarked = เพิ่มที่คั่นหน้าแล้ว
+newtab-label-removed-bookmark = เอาที่คั่นหน้าออกแล้ว
+newtab-label-recommended = กำลังนิยม
+newtab-label-saved = บันทึกไปยัง { -pocket-brand-name } แล้ว
+newtab-label-download = ดาวน์โหลดแล้ว
+# This string is used in the story cards to indicate sponsored content
+# Variables:
+# $sponsorOrSource (string) - The name of a company or their domain
+newtab-label-sponsored = { $sponsorOrSource } · ผู้สนับสนุน
+# This string is used at the bottom of story cards to indicate sponsored content
+# Variables:
+# $sponsor (string) - The name of a sponsor
+newtab-label-sponsored-by = สนับสนุนโดย { $sponsor }
+# This string is used under the image of story cards to indicate source and time to read
+# Variables:
+# $source (string) - The name of a company or their domain
+# $timeToRead (number) - The estimated number of minutes to read this story
+newtab-label-source-read-time = { $source } · { $timeToRead } นาที
+
+## Section Menu: These strings are displayed in the section context menu and are
+## meant as a call to action for the given section.
+
+newtab-section-menu-remove-section = เอาส่วนออก
+newtab-section-menu-collapse-section = ยุบส่วน
+newtab-section-menu-expand-section = ขยายส่วน
+newtab-section-menu-manage-section = จัดการส่วน
+newtab-section-menu-manage-webext = จัดการส่วนขยาย
+newtab-section-menu-add-topsite = เพิ่มไซต์เด่น
+newtab-section-menu-add-search-engine = เพิ่มเครื่องมือค้นหา
+newtab-section-menu-move-up = ย้ายขึ้น
+newtab-section-menu-move-down = ย้ายลง
+newtab-section-menu-privacy-notice = ข้อกำหนดความเป็นส่วนตัว
+
+## Section aria-labels
+
+newtab-section-collapse-section-label =
+ .aria-label = ยุบส่วน
+newtab-section-expand-section-label =
+ .aria-label = ขยายส่วน
+
+## Section Headers.
+
+newtab-section-header-topsites = ไซต์เด่น
+newtab-section-header-recent-activity = กิจกรรมล่าสุด
+# Variables:
+# $provider (string) - Name of the corresponding content provider.
+newtab-section-header-pocket = แนะนำโดย { $provider }
+
+## Empty Section States: These show when there are no more items in a section. Ex. When there are no more Pocket story recommendations, in the space where there would have been stories, this is shown instead.
+
+newtab-empty-section-highlights = เริ่มเรียกดูและเราจะแสดงบทความ วิดีโอ และหน้าอื่น ๆ บางส่วนที่ยอดเยี่ยมที่คุณได้เยี่ยมชมหรือเพิ่มที่คั่นหน้าไว้ล่าสุดที่นี่
+# Ex. When there are no more Pocket story recommendations, in the space where there would have been stories, this is shown instead.
+# Variables:
+# $provider (string) - Name of the content provider for this section, e.g "Pocket".
+newtab-empty-section-topstories = คุณได้อ่านเรื่องราวครบทั้งหมดแล้ว คุณสามารถกลับมาตรวจดูเรื่องราวเด่นจาก { $provider } ได้ภายหลัง อดใจรอไม่ได้งั้นหรือ? เลือกหัวข้อยอดนิยมเพื่อค้นหาเรื่องราวที่ยอดเยี่ยมจากเว็บต่าง ๆ
+
+## Empty Section (Content Discovery Experience). These show when there are no more stories or when some stories fail to load.
+
+newtab-discovery-empty-section-topstories-header = คุณได้อ่านเรื่องราวครบทั้งหมดแล้ว!
+newtab-discovery-empty-section-topstories-content = คุณสามารถกลับมาตรวจดูเรื่องราวเพิ่มเติมได้ภายหลัง
+newtab-discovery-empty-section-topstories-try-again-button = ลองอีกครั้ง
+newtab-discovery-empty-section-topstories-loading = กำลังโหลด…
+# Displays when a layout in a section took too long to fetch articles.
+newtab-discovery-empty-section-topstories-timed-out = อุ๊ปส์! เราโหลดส่วนนี้เกือบเสร็จแล้ว แต่ยังไม่เสร็จดี
+
+## Pocket Content Section.
+
+# This is shown at the bottom of the trending stories section and precedes a list of links to popular topics.
+newtab-pocket-read-more = หัวข้อยอดนิยม:
+newtab-pocket-new-topics-title = ต้องการเรื่องราวเพิ่มเติมหรือไม่ ดูหัวข้อยอดนิยมเหล่านี้จาก { -pocket-brand-name }
+newtab-pocket-more-recommendations = คำแนะนำเพิ่มเติม
+newtab-pocket-learn-more = เรียนรู้เพิ่มเติม
+newtab-pocket-cta-button = รับ { -pocket-brand-name }
+newtab-pocket-cta-text = บันทึกเรื่องราวที่คุณรักลงใน { -pocket-brand-name } และเติมเต็มสมองของคุณด้วยบทความที่น่าหลงใหล
+newtab-pocket-pocket-firefox-family = { -pocket-brand-name } เป็นส่วนหนึ่งของตระกูล { -brand-product-name }
+# A save to Pocket button that shows over the card thumbnail on hover.
+newtab-pocket-save = บันทึก
+newtab-pocket-saved = บันทึกแล้ว
+
+## Pocket content onboarding experience dialog and modal for new users seeing the Pocket section for the first time, shown as the first item in the Pocket section.
+
+newtab-pocket-onboarding-discover = ค้นพบสุดยอดเว็บ
+newtab-pocket-onboarding-cta = { -pocket-brand-name } สำรวจสิ่งพิมพ์ที่หลากหลายเพื่อนำเนื้อหาที่ให้ข้อมูล สร้างแรงบันดาลใจ และน่าเชื่อถือที่สุดมาสู่เบราว์เซอร์ { -brand-product-name } ของคุณ
+
+## Error Fallback Content.
+## This message and suggested action link are shown in each section of UI that fails to render.
+
+newtab-error-fallback-info = อุปส์ มีบางอย่างผิดพลาดในการโหลดเนื้อหานี้
+newtab-error-fallback-refresh-link = เรียกหน้าใหม่เพื่อลองอีกครั้ง
+
+## Customization Menu
+
+newtab-custom-shortcuts-title = ทางลัด
+newtab-custom-shortcuts-subtitle = ไซต์ที่คุณบันทึกหรือเยี่ยมชม
+newtab-custom-shortcuts-toggle =
+ .label = ทางลัด
+ .description = ไซต์ที่คุณบันทึกหรือเยี่ยมชม
+# Variables
+# $num (number) - Number of rows to display
+newtab-custom-row-selector =
+ { $num ->
+ *[other] { $num } แถว
+ }
+newtab-custom-sponsored-sites = ทางลัดที่ได้รับการสนับสนุน
+newtab-custom-pocket-title = แนะนำโดย { -pocket-brand-name }
+newtab-custom-pocket-subtitle = เนื้อหาสุดพิเศษที่คัดสรรโดย { -pocket-brand-name } ซึ่งเป็นส่วนหนึ่งของตระกูล { -brand-product-name }
+newtab-custom-pocket-toggle =
+ .label = แนะนำโดย { -pocket-brand-name }
+ .description = เนื้อหาสุดพิเศษที่คัดสรรโดย { -pocket-brand-name } ซึ่งเป็นส่วนหนึ่งของตระกูล { -brand-product-name }
+newtab-custom-pocket-sponsored = เรื่องราวที่ได้รับการสนับสนุน
+newtab-custom-pocket-show-recent-saves = แสดงบันทึกล่าสุด
+newtab-custom-recent-title = กิจกรรมล่าสุด
+newtab-custom-recent-subtitle = ไซต์และเนื้อหาล่าสุดที่คัดสรรมา
+newtab-custom-recent-toggle =
+ .label = กิจกรรมล่าสุด
+ .description = ไซต์และเนื้อหาล่าสุดที่คัดสรรมา
+newtab-custom-close-button = ปิด
+newtab-custom-settings = จัดการการตั้งค่าเพิ่มเติม
diff --git a/l10n-th/browser/browser/newtab/onboarding.ftl b/l10n-th/browser/browser/newtab/onboarding.ftl
new file mode 100644
index 0000000000..d0139d6247
--- /dev/null
+++ b/l10n-th/browser/browser/newtab/onboarding.ftl
@@ -0,0 +1,362 @@
+# 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/.
+
+
+### UI strings for the MR1 onboarding / multistage about:welcome
+### Various strings use a non-breaking space to avoid a single dangling /
+### widowed word, so test on various window sizes if you also want this.
+
+
+## Welcome page strings
+
+onboarding-welcome-header = ยินดีต้อนรับสู่ { -brand-short-name }
+onboarding-start-browsing-button-label = เริ่มการเรียกดู
+onboarding-not-now-button-label = ไม่ใช่ตอนนี้
+mr1-onboarding-get-started-primary-button-label = เริ่มต้น
+
+## Custom Return To AMO onboarding strings
+
+return-to-amo-subtitle = เยี่ยม คุณได้ติดตั้ง { -brand-short-name } แล้ว
+# <img data-l10n-name="icon"/> will be replaced with the icon belonging to the extension
+#
+# Variables:
+# $addon-name (String) - Name of the add-on
+return-to-amo-addon-title = ตอนนี้มาติดตั้ง <img data-l10n-name="icon"/> <b>{ $addon-name }</b> กันเลย
+return-to-amo-add-extension-label = เพิ่มส่วนขยาย
+return-to-amo-add-theme-label = เพิ่มชุดรูปแบบ
+
+## Variables: $addon-name (String) - Name of the add-on to be installed
+
+mr1-return-to-amo-subtitle = พบกับ { -brand-short-name }
+mr1-return-to-amo-addon-title = คุณได้เบราว์เซอร์ที่รวดเร็วและเป็นส่วนตัวมาอยู่ในปลายนิ้วมือของคุณแล้ว ตอนนี้คุณสามารถเพิ่ม <b>{ $addon-name }</b> และทำสิ่งต่าง ๆ ได้มากขึ้นด้วย { -brand-short-name }
+mr1-return-to-amo-add-extension-label = เพิ่ม { $addon-name }
+
+## Multistage onboarding strings (about:welcome pages)
+
+
+# Aria-label to make the "steps" of multistage onboarding visible to screen readers.
+# Variables:
+# $current (Int) - Number of the current page
+# $total (Int) - Total number of pages
+
+onboarding-welcome-steps-indicator-label =
+ .aria-label = ความคืบหน้า: ขั้นตอนที่ { $current } จาก { $total }
+# This button will open system settings to turn on prefers-reduced-motion
+mr1-onboarding-reduce-motion-button-label = ปิดภาพเคลื่อนไหว
+# String for the Firefox Accounts button
+mr1-onboarding-sign-in-button-label = ลงชื่อเข้า
+# The primary import button label will depend on whether we can detect which browser was used to download Firefox.
+# Variables:
+# $previous (Str) - Previous browser name, such as Edge, Chrome
+mr1-onboarding-import-primary-button-label-attribution = นำเข้าจาก { $previous }
+mr1-onboarding-theme-header = ทำให้เป็นของคุณเอง
+mr1-onboarding-theme-subtitle = ปรับแต่ง { -brand-short-name } ด้วยชุดรูปแบบ
+mr1-onboarding-theme-secondary-button-label = ไม่ใช่ตอนนี้
+# System theme uses operating system color settings
+mr1-onboarding-theme-label-system = ชุดรูปแบบของระบบ
+mr1-onboarding-theme-label-light = สว่าง
+mr1-onboarding-theme-label-dark = มืด
+# "Alpenglow" here is the name of the theme, and should be kept in English.
+mr1-onboarding-theme-label-alpenglow = Alpenglow
+onboarding-theme-primary-button-label = เสร็จสิ้น
+
+## Please make sure to split the content of the title attribute into lines whose
+## width corresponds to about 40 Latin characters, to ensure that the tooltip
+## doesn't become too long. Line breaks will be preserved when displaying the
+## tooltip.
+
+# Tooltip displayed on hover of system theme
+mr1-onboarding-theme-tooltip-system =
+ .title =
+ ใช้ชุดรูปแบบสำหรับปุ่ม เมนู และหน้าต่าง
+ เหมือนกับระบบปฏิบัติการ
+# Input description for system theme
+mr1-onboarding-theme-description-system =
+ .aria-description =
+ ใช้ชุดรูปแบบสำหรับปุ่ม เมนู และหน้าต่าง
+ เหมือนกับระบบปฏิบัติการ
+# Tooltip displayed on hover of light theme
+mr1-onboarding-theme-tooltip-light =
+ .title =
+ ใช้ชุดรูปแบบสว่างสำหรับปุ่ม
+ เมนู และหน้าต่าง
+# Input description for light theme
+mr1-onboarding-theme-description-light =
+ .aria-description =
+ ใช้ชุดรูปแบบสว่างสำหรับปุ่ม
+ เมนู และหน้าต่าง
+# Tooltip displayed on hover of dark theme
+mr1-onboarding-theme-tooltip-dark =
+ .title =
+ ใช้ชุดรูปแบบมืดสำหรับปุ่ม
+ เมนู และหน้าต่าง
+# Input description for dark theme
+mr1-onboarding-theme-description-dark =
+ .aria-description =
+ ใช้ชุดรูปแบบมืดสำหรับปุ่ม
+ เมนู และหน้าต่าง
+# Tooltip displayed on hover of Alpenglow theme
+mr1-onboarding-theme-tooltip-alpenglow =
+ .title =
+ ใช้ชุดรูปแบบสีสันสดใสสำหรับปุ่ม
+ เมนู และหน้าต่าง
+# Input description for Alpenglow theme
+mr1-onboarding-theme-description-alpenglow =
+ .aria-description =
+ ใช้ชุดรูปแบบสีสันสดใสสำหรับปุ่ม
+ เมนู และหน้าต่าง
+# Selector description for default themes
+mr2-onboarding-default-theme-label = สำรวจชุดรูปแบบเริ่มต้น
+
+## Strings for Thank You page
+
+mr2-onboarding-thank-you-header = ขอบคุณที่เลือกเรา
+mr2-onboarding-thank-you-text = { -brand-short-name } เป็นเบราว์เซอร์อิสระที่สนับสนุนโดยองค์กรไม่แสวงหาผลกำไร เรากำลังร่วมกันทำให้เว็บปลอดภัยขึ้น แข็งแกร่งขึ้น และเป็นส่วนตัวมากขึ้น
+mr2-onboarding-start-browsing-button-label = เริ่มการเรียกดู
+
+## Multistage live language reloading onboarding strings (about:welcome pages)
+##
+## The following language names are generated by the browser's Intl.DisplayNames API.
+##
+## Variables:
+## $negotiatedLanguage (String) - The name of the langpack's language, e.g. "Español (ES)"
+## $systemLanguage (String) - The name of the system language, e.g "Español (ES)"
+## $appLanguage (String) - The name of the language shipping in the browser build, e.g. "English (EN)"
+
+onboarding-live-language-header = เลือกภาษาของคุณ
+mr2022-onboarding-live-language-text = ให้ { -brand-short-name } พูดภาษาของคุณ
+mr2022-language-mismatch-subtitle = { -brand-short-name } ถูกแปลเป็นภาษาต่าง ๆ กว่า 90 ภาษาโดยชุมชนของเรา ดูเหมือนว่าระบบของคุณกำลังใช้ { $systemLanguage } และ { -brand-short-name } กำลังใช้ { $appLanguage }
+onboarding-live-language-button-label-downloading = กำลังดาวน์โหลดชุดภาษาสำหรับ { $negotiatedLanguage }…
+onboarding-live-language-waiting-button = กำลังขอข้อมูลเกี่ยวกับภาษาที่มีให้ใช้…
+onboarding-live-language-installing = กำลังติดตั้งชุดภาษาสำหรับ { $negotiatedLanguage }…
+mr2022-onboarding-live-language-switch-to = เปลี่ยนเป็น { $negotiatedLanguage }
+mr2022-onboarding-live-language-continue-in = ใช้ { $appLanguage } ต่อไป
+onboarding-live-language-secondary-cancel-download = ยกเลิก
+onboarding-live-language-skip-button-label = ข้าม
+
+## Firefox 100 Thank You screens
+
+# "Hero Text" displayed on left side of welcome screen. This text can be
+# formatted to span multiple lines as needed. The <span data-l10n-name="zap">
+# </span> in this string allows a "zap" underline style to be automatically
+# added to the text inside it. "Yous" should stay inside the zap span, but
+# "Thank" can be put inside instead if there's no "you" in the translation.
+# The English text would normally be "100 Thank-Yous" i.e., plural noun, but for
+# aesthetics of splitting it across multiple lines, the hyphen is omitted.
+fx100-thank-you-hero-text =
+ <span data-l10n-name="zap">ขอบคุณ</span>
+ ครั้งที่
+ 100
+fx100-thank-you-subtitle = นี่คือรุ่นที่ 100 ของเรา! ขอบคุณที่ช่วยเราสร้างอินเทอร์เน็ตที่ดีและแข็งแกร่งขึ้น
+fx100-thank-you-pin-primary-button-label =
+ { PLATFORM() ->
+ [macos] เก็บ { -brand-short-name } ไว้ใน Dock
+ *[other] ปักหมุด { -brand-short-name } เข้ากับแถบงาน
+ }
+fx100-upgrade-thanks-header = 100 คำขอบคุณ
+# Message shown with a start-browsing button. Emphasis <em> should be for "you"
+# but "Thank" can be used instead if there's no "you" in the translation.
+fx100-upgrade-thank-you-body = นี่คือ { -brand-short-name } รุ่นที่ 100 ของเรา <em>ขอบคุณ</em>ที่ช่วยเราสร้างอินเทอร์เน็ตที่ดีและแข็งแกร่งขึ้น
+# Message shown with either a pin-to-taskbar or set-default button.
+fx100-upgrade-thanks-keep-body = นี่คือรุ่นที่ 100 ของเรา! ขอบคุณที่ร่วมเป็นส่วนหนึ่งของชุมชนของเรา สร้างอินเทอร์เน็ตที่ดีและแข็งแกร่งขึ้น ร่วมเดินทางกับเราไปอีก 100 รุ่นด้วยการนำ { -brand-short-name } มาไว้ใกล้คุณแค่เพียงคลิกเดียว
+mr2022-onboarding-secondary-skip-button-label = ข้ามขั้นตอนนี้
+
+## MR2022 New User Easy Setup screen strings
+
+# Primary button string used on new user onboarding first screen showing multiple actions such as Set Default, Import from previous browser.
+mr2022-onboarding-easy-setup-primary-button-label = บันทึกและดำเนินการต่อ
+# Set Default action checkbox label used on new user onboarding first screen
+mr2022-onboarding-easy-setup-set-default-checkbox-label = ตั้ง { -brand-short-name } เป็นเบราว์เซอร์เริ่มต้น
+# Import action checkbox label used on new user onboarding first screen
+mr2022-onboarding-easy-setup-import-checkbox-label = นำเข้าจากเบราว์เซอร์ก่อนหน้า
+
+## MR2022 New User Pin Firefox screen strings
+
+# Title used on about:welcome for new users when Firefox is not pinned.
+# In this context, open up is synonymous with "Discover".
+# The metaphor is that when they open their Firefox browser, it helps them discover an amazing internet.
+# If this translation does not make sense in your language, feel free to use the word "discover."
+mr2022-onboarding-welcome-pin-header = เปิดโลกสู่อินเทอร์เน็ตที่น่าทึ่ง
+# Subtitle is used on onboarding page for new users page when Firefox is not pinned
+mr2022-onboarding-welcome-pin-subtitle = เปิดใช้งาน { -brand-short-name } ได้จากทุกที่แค่เพียงคลิกเดียว ทุกครั้งที่คุณทำ คุณเลือกเว็บที่เปิดกว้างและเป็นอิสระยิ่งขึ้น
+# Primary button string used on welcome page for when Firefox is not pinned.
+mr2022-onboarding-pin-primary-button-label =
+ { PLATFORM() ->
+ [macos] เก็บ { -brand-short-name } ลงใน Dock
+ *[other] ปักหมุด { -brand-short-name } เข้ากับแถบงาน
+ }
+# Subtitle will be used when user already has Firefox pinned, but
+# has not set it as their default browser.
+# When translating "zip", please feel free to pick a verb that signifies movement and/or exploration
+# and makes sense in the context of navigating the web.
+mr2022-onboarding-set-default-only-subtitle = เปลี่ยนมาใช้เบราว์เซอร์ที่สนับสนุนโดยองค์กรไม่แสวงหาผลกำไร เราจะปกป้องความเป็นส่วนตัวของคุณในขณะที่คุณท่องเว็บ
+
+## MR2022 Existing User Pin Firefox Screen Strings
+
+# Title used on multistage onboarding page for existing users when Firefox is not pinned
+mr2022-onboarding-existing-pin-header = ขอบคุณที่หลงรัก { -brand-product-name }
+# Subtitle is used on onboarding page for existing users when Firefox is not pinned
+mr2022-onboarding-existing-pin-subtitle = เข้าสู่โลกอินเทอร์เน็ตอันแข็งแกร่งได้จากทุกที่แค่เพียงคลิกเดียว ในรุ่นล่าสุดของเรามีสิ่งใหม่ ๆ หลายอย่างที่เราคิดว่าคุณจะต้องชอบแน่
+# Subtitle will be used on the welcome screen for existing users
+# when they already have Firefox pinned but not set as default
+mr2022-onboarding-existing-set-default-only-subtitle = ใช้เบราว์เซอร์ที่ปกป้องความเป็นส่วนตัวของคุณในขณะที่คุณท่องเว็บ รุ่นล่าสุดของเรามีสิ่งต่าง ๆ หลายอย่างที่คุณจะต้องชอบแน่
+mr2022-onboarding-existing-pin-checkbox-label = เพิ่มการเรียกดูแบบส่วนตัวของ { -brand-short-name } ด้วย
+
+## MR2022 New User Set Default screen strings
+
+# This string is the title used when the user already has pinned the browser, but has not set default.
+mr2022-onboarding-set-default-title = ทำให้ { -brand-short-name } เป็นเบราว์เซอร์เริ่มต้นของคุณ
+mr2022-onboarding-set-default-primary-button-label = ตั้ง { -brand-short-name } เป็นเบราว์เซอร์เริ่มต้น
+# When translating "zip", please feel free to pick a verb that signifies movement and/or exploration
+# and makes sense in the context of navigating the web.
+mr2022-onboarding-set-default-subtitle = ใช้เบราว์เซอร์ที่สนับสนุนโดยองค์กรไม่แสวงหาผลกำไร เราจะปกป้องความเป็นส่วนตัวของคุณในขณะที่คุณท่องเว็บ
+
+## MR2022 Get Started screen strings.
+## These strings will be used on the welcome page
+## when Firefox is already set to default and pinned.
+
+# When translating "zip", please feel free to pick a verb that signifies movement and/or exploration
+# and makes sense in the context of navigating the web.
+mr2022-onboarding-get-started-primary-subtitle = รุ่นล่าสุดของเราถูกสร้างขึ้นจากสิ่งต่าง ๆ รอบตัวคุณ ซึ่งจะทำให้คุณท่องเว็บได้ง่ายกว่าเดิม รุ่นล่าสุดนี้มาพร้อมกับคุณลักษณะต่าง ๆ ที่เราคิดว่าคุณจะต้องชอบแน่
+mr2022-onboarding-get-started-primary-button-label = ตั้งค่าในไม่กี่วินาที
+
+## MR2022 Import Settings screen strings
+
+mr2022-onboarding-import-header = ตั้งค่าต่าง ๆ ได้อย่างรวดเร็วทันใจ
+mr2022-onboarding-import-subtitle = ตั้งค่า { -brand-short-name } ในแบบที่คุณต้องการ เพิ่มที่คั่นหน้า รหัสผ่าน และอื่น ๆ จากเบราว์เซอร์ตัวเดิมของคุณ
+mr2022-onboarding-import-primary-button-label-no-attribution = นำเข้าจากเบราว์เซอร์ก่อนหน้า
+
+## If your language uses grammatical genders, in the description for the
+## colorway feel free to switch from "You are a X. You…" (e.g. "You are a
+## Playmaker. You create…") to "X: you…" ("Playmaker: You create…"). This might
+## help creating a more inclusive translation.
+
+mr2022-onboarding-colorway-title = เลือกสีที่โดนใจคุณ
+mr2022-onboarding-colorway-subtitle = เสียงที่เป็นอิสระสามารถเปลี่ยนวัฒนธรรมได้
+mr2022-onboarding-colorway-primary-button-label-continue = ตั้งค่าและดำเนินการต่อ
+mr2022-onboarding-existing-colorway-checkbox-label = ทำให้ { -firefox-home-brand-name } เป็นหน้าแรกที่เต็มไปด้วยสีสันของคุณ
+mr2022-onboarding-colorway-label-default = ค่าเริ่มต้น
+mr2022-onboarding-colorway-tooltip-default2 =
+ .title = สี { -brand-short-name } ปัจจุบัน
+mr2022-onboarding-colorway-description-default = <b>ใช้สี { -brand-short-name } ปัจจุบันของฉัน</b>
+mr2022-onboarding-colorway-label-playmaker = เพลย์เมคเกอร์
+mr2022-onboarding-colorway-tooltip-playmaker2 =
+ .title = เพลย์เมคเกอร์ (แดง)
+mr2022-onboarding-colorway-description-playmaker = <b>คุณคือเพลย์เมคเกอร์</b> คุณสร้างโอกาสในการชนะและช่วยทุกคนรอบตัวคุณยกระดับความสามารถในการเล่นเกมของพวกเขา
+mr2022-onboarding-colorway-label-expressionist = นักแสดงออก
+mr2022-onboarding-colorway-tooltip-expressionist2 =
+ .title = นักแสดงออก (เหลือง)
+mr2022-onboarding-colorway-description-expressionist = <b>คุณคือนักแสดงออก</b> คุณมองโลกแตกต่างออกไปและการสร้างสรรค์ของคุณก็กระตุ้นอารมณ์ของผู้อื่น
+mr2022-onboarding-colorway-label-visionary = ผู้มีวิสัยทัศน์
+mr2022-onboarding-colorway-tooltip-visionary2 =
+ .title = ผู้มีวิสัยทัศน์ (เขียว)
+mr2022-onboarding-colorway-description-visionary = <b>คุณคือผู้มีวิสัยทัศน์</b> คุณตั้งคำถามกับสภาพที่เป็นอยู่และกระตุ้นให้ผู้อื่นจินตนาการถึงอนาคตที่ดีกว่า
+mr2022-onboarding-colorway-label-activist = นักกิจกรรม
+mr2022-onboarding-colorway-tooltip-activist2 =
+ .title = นักกิจกรรม (น้ำเงิน)
+mr2022-onboarding-colorway-description-activist = <b>คุณคือนักกิจกรรม</b> คุณทำให้โลกนี้เป็นสถานที่ที่ดียิ่งขึ้นและชักนำให้ผู้อื่นเชื่อคุณ
+mr2022-onboarding-colorway-label-dreamer = คนช่างฝัน
+mr2022-onboarding-colorway-tooltip-dreamer2 =
+ .title = คนช่างฝัน (ม่วง)
+mr2022-onboarding-colorway-description-dreamer = <b>คุณคือคนช่างฝัน</b> คุณเชื่อว่าโชคเข้าข้างผู้กล้าเสมอและเป็นแรงบันดาลใจให้ผู้อื่นกล้า
+mr2022-onboarding-colorway-label-innovator = นักนวัตกรรม
+mr2022-onboarding-colorway-tooltip-innovator2 =
+ .title = นักนวัตกรรม (ส้ม)
+mr2022-onboarding-colorway-description-innovator = <b>คุณคือนักนวัตกรรม</b> คุณมองเห็นโอกาสทุกที่และสร้างอิทธิพลต่อชีวิตของทุกคนรอบตัวคุณ
+
+## MR2022 Multistage Mobile Download screen strings
+
+mr2022-onboarding-mobile-download-title = สับเปลี่ยนไปมาระหว่างแล็ปท็อปกับโทรศัพท์
+mr2022-onboarding-mobile-download-subtitle = นำแท็บจากอุปกรณ์เครื่องหนึ่งไปเปิดต่อจากที่ค้างไว้ในอีกเครื่องหนึ่ง รวมทั้งซิงค์ที่คั่นหน้าและรหัสผ่านของคุณได้จากทุกที่ที่คุณใช้ { -brand-product-name }
+mr2022-onboarding-mobile-download-cta-text = สแกนคิวอาร์โค้ดเพื่อดาวน์โหลด { -brand-product-name } สำหรับมือถือ หรือ<a data-l10n-name="download-label">ส่งลิงก์ดาวน์โหลดให้ตัวคุณเอง</a>
+mr2022-onboarding-no-mobile-download-cta-text = สแกนคิวอาร์โค้ดเพื่อดาวน์โหลด { -brand-product-name } สำหรับมือถือ
+
+## MR2022 Upgrade Dialog screens
+## Pin private window screen shown only for users who don't have Firefox private pinned
+
+mr2022-upgrade-onboarding-pin-private-window-header = อิสระในการเรียกดูแบบส่วนตัวในคลิกเดียว
+mr2022-upgrade-onboarding-pin-private-window-subtitle = ไม่เก็บคุกกี้หรือประวัติที่บันทึกไว้จากเดสก์ท็อปของคุณ ให้คุณเรียกดูโดยไม่มีใครแอบมอง
+mr2022-upgrade-onboarding-pin-private-window-primary-button-label =
+ { PLATFORM() ->
+ [macos] เก็บการเรียกดูแบบส่วนตัวของ { -brand-short-name } ลงใน Dock
+ *[other] ปักหมุดการเรียกดูแบบส่วนตัวของ { -brand-short-name } เข้ากับแถบงาน
+ }
+
+## MR2022 Privacy Segmentation screen strings
+
+mr2022-onboarding-privacy-segmentation-title = เราเคารพความเป็นส่วนตัวของคุณเสมอ
+mr2022-onboarding-privacy-segmentation-subtitle = ไม่ว่าจะเป็นคำแนะนำที่ชาญฉลาดหรือการค้นหาที่ชาญฉลาดยิ่งขึ้น เรากำลังทำงานอย่างต่อเนื่องเพื่อสร้าง { -brand-product-name } ที่ดีและเป็นส่วนตัวมากขึ้น
+mr2022-onboarding-privacy-segmentation-text-cta = คุณต้องการเห็นอะไรเมื่อเรานำเสนอคุณลักษณะใหม่ที่ใช้ข้อมูลของคุณเพื่อทำให้การท่องเว็บของคุณดีขึ้น?
+mr2022-onboarding-privacy-segmentation-button-primary-label = ใช้คำแนะนำจาก { -brand-product-name }
+mr2022-onboarding-privacy-segmentation-button-secondary-label = แสดงข้อมูลโดยละเอียด
+
+## MR2022 Multistage Gratitude screen strings
+
+mr2022-onboarding-gratitude-title = คุณกำลังช่วยเราสร้างเว็บที่ดีขึ้น
+mr2022-onboarding-gratitude-subtitle = ขอบคุณที่ใช้ { -brand-short-name } ซึ่งสนับสนุนโดย Mozilla Foundation ด้วยการสนับสนุนของคุณ เรากำลังทำงานเพื่อให้อินเทอร์เน็ตเปิดกว้าง เข้าถึงได้ และดียิ่งขึ้นสำหรับทุกคน
+mr2022-onboarding-gratitude-primary-button-label = ดูว่ามีอะไรใหม่
+mr2022-onboarding-gratitude-secondary-button-label = เริ่มเรียกดู
+
+## Onboarding spotlight for infrequent users
+
+onboarding-infrequent-import-title = ทำตัวตามสบาย
+onboarding-infrequent-import-subtitle = ไม่ว่าคุณจะต้องการใช้งานไปตลอดหรือแค่แวะมาลองใช้เพียงนิดหน่อยก็ตาม โปรดทราบว่าคุณสามารถนำเข้าที่คั่นหน้า รหัสผ่าน และอื่นๆ ของคุณได้
+onboarding-infrequent-import-primary-button = นำเข้าไปยัง { -brand-short-name }
+
+## MR2022 Illustration alt tags
+## Descriptive tags for illustrations used by screen readers and other assistive tech
+
+mr2022-onboarding-pin-image-alt =
+ .aria-label = คนกำลังทำงานบนแล็ปท็อปล้อมรอบด้วยดาวและดอกไม้
+mr2022-onboarding-default-image-alt =
+ .aria-label = คนกำลังกอดโลโก้ { -brand-product-name }
+mr2022-onboarding-import-image-alt =
+ .aria-label = คนกำลังขี่สเก็ตบอร์ดพร้อมกล่องไอคอนซอฟต์แวร์
+mr2022-onboarding-mobile-download-image-alt =
+ .aria-label = กบกำลังกระโดดข้ามใบบัวไปมาพร้อมคิวอาร์โค้ดสำหรับดาวน์โหลด { -brand-product-name } สำหรับมือถืออยู่ตรงกลาง
+mr2022-onboarding-pin-private-image-alt =
+ .aria-label = ไม้กายสิทธิ์กำลังทำให้โลโก้การเรียกดูแบบส่วนตัวของ { -brand-product-name } ปรากฏออกมานอกหมวก
+mr2022-onboarding-privacy-segmentation-image-alt =
+ .aria-label = มือผิวอ่อนและผิวคล้ำไฮไฟฟ์กัน
+mr2022-onboarding-gratitude-image-alt =
+ .aria-label = ภาพวิวดวงอาทิตย์ตกที่หน้าต่างพร้อมสุนัขจิ้งจอกและพืชในบ้านบนขอบหน้าต่าง
+mr2022-onboarding-colorways-image-alt =
+ .aria-label = สเปรย์มือวาดภาพคอลลาจที่เต็มไปด้วยสีสันซึ่งประกอบด้วยดวงตาสีเขียว รองเท้าสีส้ม ลูกบาสเกตบอลสีแดง หูฟังสีม่วง หัวใจสีน้ำเงิน และมงกุฎสีเหลือง
+
+## Device migration onboarding
+
+onboarding-device-migration-image-alt =
+ .aria-label = สุนัขจิ้งจอกบนหน้าจอคอมพิวเตอร์แล็ปท็อปโบกมือ แล็ปท็อปมีเมาส์เสียบอยู่
+onboarding-device-migration-title = ยินดีต้อนรับกลับมา!
+onboarding-device-migration-subtitle = ลงชื่อเข้าใช้ { -fxaccount-brand-name(capitalization: "sentence") } ของคุณเพื่อนำที่คั่นหน้า รหัสผ่าน และประวัติติดตัวไปด้วยบนอุปกรณ์เครื่องใหม่ของคุณ
+onboarding-device-migration-subtitle2 = ลงชื่อเข้าใช้บัญชีของคุณเพื่อนำที่คั่นหน้า รหัสผ่าน และประวัติไปกับคุณบนอุปกรณ์เครื่องใหม่ของคุณ
+onboarding-device-migration-primary-button-label = ลงชื่อเข้า
+
+## The following screens have been updated to use security and privacy focused strings:
+
+# Easy setup screen
+onboarding-easy-setup-security-and-privacy-title = เรารักที่จะดูแลคุณให้ปลอดภัย
+onboarding-easy-setup-security-and-privacy-subtitle = เบราว์เซอร์ที่สนับสนุนโดยองค์กรไม่แสวงหาผลกำไรของเราจะช่วยหยุดบริษัทต่างๆ ไม่ให้แอบติดตามคุณทางเว็บได้
+# Mobile download screen
+onboarding-mobile-download-security-and-privacy-title = คงการเข้ารหัสเมื่อคุณเปลี่ยนจากอุปกรณ์เครื่องหนึ่งไปยังอีกเครื่องหนึ่ง
+onboarding-mobile-download-security-and-privacy-subtitle = เมื่อคุณซิงค์แล้ว { -brand-short-name } จะเข้ารหัสรหัสผ่าน ที่คั่นหน้า และอื่นๆ ของคุณ นอกจากนี้คุณยังสามารถดึงแท็บจากอุปกรณ์อื่นๆ ของคุณเข้ามาได้อีกด้วย
+# Gratitude screen
+onboarding-gratitude-security-and-privacy-title = { -brand-short-name } พร้อมดูแลคุณ
+onboarding-gratitude-security-and-privacy-subtitle = ขอบคุณที่ใช้ { -brand-short-name } ซึ่งสนับสนุนโดย Mozilla Foundation ด้วยการสนับสนุนของคุณ เรากำลังทำงานเพื่อให้อินเทอร์เน็ตปลอดภัยและเข้าถึงได้มากยิ่งขึ้นสำหรับทุกคน
+
+## New user time and familiarity survey strings
+
+onboarding-new-user-time-based-survey-title = คุณใช้ { -brand-short-name } มานานเท่าไรแล้ว?
+onboarding-new-user-familiarity-based-survey-title = คุณคุ้นเคยกับ { -brand-short-name } แค่ไหน?
+onboarding-new-user-survey-subtitle = คำติชมของคุณช่วยทำให้ { -brand-short-name } ดียิ่งขึ้นไปอีก
+# When translating "brand new" it means completely new.
+onboarding-new-user-survey-time-based-option-1 = ฉันเพิ่งเริ่มใช้
+onboarding-new-user-survey-time-based-option-2 = น้อยกว่า 1 เดือน
+onboarding-new-user-survey-time-based-option-3 = มากกว่า 1 เดือน ใช้เป็นประจำ
+onboarding-new-user-survey-time-based-option-4 = มากกว่า 1 เดือน ใช้เป็นบางครั้ง
+# When translating "brand new" it means completely new.
+onboarding-new-user-survey-familiarity-based-option-1 = ฉันเพิ่งเริ่มใช้
+onboarding-new-user-survey-familiarity-based-option-2 = ฉันใช้มาบ้างแล้ว
+onboarding-new-user-survey-familiarity-based-option-3 = ฉันคุ้นเคยมาก
+onboarding-new-user-survey-familiarity-based-option-4 = ฉันเคยใช้ในอดีต แต่ก็ผ่านไปนานแล้ว
diff --git a/l10n-th/browser/browser/originControls.ftl b/l10n-th/browser/browser/originControls.ftl
new file mode 100644
index 0000000000..ad47c98675
--- /dev/null
+++ b/l10n-th/browser/browser/originControls.ftl
@@ -0,0 +1,64 @@
+# 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/.
+
+
+## These strings appear in Origin Controls for Extensions. Currently,
+## they are visible in the context menu for extension toolbar buttons,
+## and are used to inform the user how the extension can access their
+## data for the current website, and allow them to control it.
+
+origin-controls-no-access =
+ .label = ส่วนขยายไม่สามารถอ่านและเปลี่ยนแปลงข้อมูลได้
+origin-controls-quarantined =
+ .label = ส่วนขยายไม่ได้รับอนุญาตให้อ่านและเปลี่ยนแปลงข้อมูล
+origin-controls-quarantined-status =
+ .label = ไม่อนุญาตให้ใช้ส่วนขยายบนไซต์ที่ถูกจำกัด
+origin-controls-quarantined-allow =
+ .label = อนุญาตให้ใช้บนไซต์ที่ถูกจำกัด
+origin-controls-options =
+ .label = ส่วนขยายสามารถอ่านและเปลี่ยนแปลงข้อมูลต่อไปนี้ได้:
+origin-controls-option-all-domains =
+ .label = บนทุกไซต์
+origin-controls-option-when-clicked =
+ .label = เมื่อคลิกเท่านั้น
+# This string denotes an option that grants the extension access to
+# the current site whenever they visit it.
+# Variables:
+# $domain (String) - The domain for which the access is granted.
+origin-controls-option-always-on =
+ .label = อนุญาตเสมอใน { $domain }
+
+## These strings are used to map Origin Controls states to user-friendly
+## messages. They currently appear in the unified extensions panel.
+
+origin-controls-state-no-access = ไม่สามารถอ่านและเปลี่ยนแปลงข้อมูลบนไซต์นี้ได้
+origin-controls-state-quarantined = ไม่ได้รับอนุญาตโดย { -vendor-short-name } บนไซต์นี้
+origin-controls-state-always-on = สามารถอ่านและเปลี่ยนแปลงข้อมูลบนไซต์นี้ได้เสมอ
+origin-controls-state-when-clicked = ต้องการสิทธิอนุญาตในการอ่านและเปลี่ยนแปลงข้อมูล
+origin-controls-state-hover-run-visit-only = เรียกใช้ตอนเยี่ยมชมครั้งนี้เท่านั้น
+origin-controls-state-runnable-hover-open = เปิดส่วนขยาย
+origin-controls-state-runnable-hover-run = เรียกใช้ส่วนขยาย
+origin-controls-state-temporary-access = สามารถอ่านและเปลี่ยนแปลงข้อมูลเฉพาะตอนเยี่ยมชมครั้งนี้เท่านั้น
+
+## Extension's toolbar button.
+## Variables:
+## $extensionTitle (String) - Extension name or title message.
+
+origin-controls-toolbar-button =
+ .label = { $extensionTitle }
+ .tooltiptext = { $extensionTitle }
+# Extension's toolbar button when permission is needed.
+# Note that the new line is intentionally part of the tooltip.
+origin-controls-toolbar-button-permission-needed =
+ .label = { $extensionTitle }
+ .tooltiptext =
+ { $extensionTitle }
+ ต้องการสิทธิอนุญาต
+# Extension's toolbar button when quarantined.
+# Note that the new line is intentionally part of the tooltip.
+origin-controls-toolbar-button-quarantined =
+ .label = { $extensionTitle }
+ .tooltiptext =
+ { $extensionTitle }
+ ไม่ได้รับอนุญาตโดย { -vendor-short-name } บนไซต์นี้
diff --git a/l10n-th/browser/browser/pageInfo.ftl b/l10n-th/browser/browser/pageInfo.ftl
new file mode 100644
index 0000000000..01c579d10a
--- /dev/null
+++ b/l10n-th/browser/browser/pageInfo.ftl
@@ -0,0 +1,260 @@
+# 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/. --
+
+page-info-window =
+ .style = width: 600px; min-height: 550px;
+
+copy =
+ .key = C
+menu-copy =
+ .label = คัดลอก
+ .accesskey = ค
+
+select-all =
+ .key = A
+menu-select-all =
+ .label = เลือกทั้งหมด
+ .accesskey = ล
+
+close-dialog =
+ .key = w
+
+general-tab =
+ .label = ทั่วไป
+ .accesskey = ท
+general-title =
+ .value = ชื่อเรื่อง:
+general-url =
+ .value = ที่อยู่:
+general-type =
+ .value = ชนิด:
+general-mode =
+ .value = โหมดการเรนเดอร์:
+general-size =
+ .value = ขนาด:
+general-referrer =
+ .value = URL อ้างอิง:
+general-modified =
+ .value = เปลี่ยนแปลงเมื่อ:
+general-encoding =
+ .value = รหัสอักขระ:
+general-meta-name =
+ .label = ชื่อ
+general-meta-content =
+ .label = เนื้อหา
+
+media-tab =
+ .label = สื่อ
+ .accesskey = ส
+media-location =
+ .value = ตำแหน่งที่ตั้ง:
+media-text =
+ .value = ข้อความที่เกี่ยวข้อง:
+media-alt-header =
+ .label = ข้อความแทนภาพ
+media-address =
+ .label = ที่อยู่
+media-type =
+ .label = ชนิด
+media-size =
+ .label = ขนาด
+media-count =
+ .label = จำนวน
+media-dimension =
+ .value = มิติ:
+media-long-desc =
+ .value = คำอธิบายแบบยาว:
+media-select-all =
+ .label = เลือกทั้งหมด
+ .accesskey = e
+media-save-as =
+ .label = บันทึกเป็น…
+ .accesskey = บ
+media-save-image-as =
+ .label = บันทึกเป็น…
+ .accesskey = บ
+
+perm-tab =
+ .label = สิทธิอนุญาต
+ .accesskey = ส
+permissions-for =
+ .value = สิทธิอนุญาตสำหรับ:
+
+security-tab =
+ .label = ความปลอดภัย
+ .accesskey = ค
+security-view =
+ .label = ดูใบรับรอง
+ .accesskey = บ
+security-view-unknown = ไม่ทราบ
+ .value = ไม่ทราบ
+security-view-identity =
+ .value = ข้อมูลประจำตัวเว็บไซต์
+security-view-identity-owner =
+ .value = เจ้าของ:
+security-view-identity-domain =
+ .value = เว็บไซต์:
+security-view-identity-verifier =
+ .value = ยืนยันโดย:
+security-view-identity-validity =
+ .value = หมดอายุเมื่อ:
+security-view-privacy =
+ .value = ความเป็นส่วนตัวและประวัติ
+
+security-view-privacy-history-value = ฉันเคยเยี่ยมชมเว็บไซต์นี้ก่อนหน้าวันนี้หรือไม่?
+security-view-privacy-sitedata-value = เว็บไซต์นี้จัดเก็บข้อมูลลงในคอมพิวเตอร์ของฉันหรือไม่?
+
+security-view-privacy-clearsitedata =
+ .label = ล้างคุกกี้และข้อมูลไซต์
+ .accesskey = ล
+
+security-view-privacy-passwords-value = ฉันเคยบันทึกรหัสผ่านใด ๆ สำหรับเว็บไซต์นี้หรือไม่?
+
+security-view-privacy-viewpasswords =
+ .label = ดูรหัสผ่านที่บันทึกไว้
+ .accesskey = ร
+security-view-technical =
+ .value = รายละเอียดทางเทคนิค
+
+help-button =
+ .label = ช่วยเหลือ
+
+## These strings are used to tell the user if the website is storing cookies
+## and data on the users computer in the security tab of pageInfo
+## Variables:
+## $value (number) - Amount of data being stored
+## $unit (string) - The unit of data being stored (Usually KB)
+
+security-site-data-cookies = ใช่, คุกกี้และข้อมูลไซต์ { $value } { $unit }
+security-site-data-only = ใช่, ข้อมูลไซต์ { $value } { $unit }
+
+security-site-data-cookies-only = ใช่, คุกกี้
+security-site-data-no = ไม่
+
+##
+
+image-size-unknown = ไม่ทราบ
+page-info-not-specified =
+ .value = ไม่ระบุ
+not-set-alternative-text = ไม่ระบุ
+not-set-date = ไม่ระบุ
+media-img = ภาพ
+media-bg-img = พื้นหลัง
+media-border-img = ขอบ
+media-list-img = จุดนำ
+media-cursor = เคอร์เซอร์
+media-object = วัตถุ
+media-embed = ฝังตัว
+media-link = ไอคอน
+media-input = ค่าเข้า
+media-video = วิดีโอ
+media-audio = เสียง
+saved-passwords-yes = ใช่
+saved-passwords-no = ไม่
+
+no-page-title =
+ .value = หน้าไม่มีชื่อ:
+general-quirks-mode =
+ .value = โหมดไม่ตามมาตรฐาน
+general-strict-mode =
+ .value = โหมดตามมาตรฐาน
+page-info-security-no-owner =
+ .value = เว็บไซต์นี้ไม่มีข้อมูลเจ้าของเว็บ
+media-select-folder = เลือกโฟลเดอร์ที่จะบันทึกภาพ
+media-unknown-not-cached =
+ .value = ไม่ทราบ (ไม่ถูกแคช)
+permissions-use-default =
+ .label = ใช้ค่าเริ่มต้น
+security-no-visits = ไม่
+
+# This string is used to display the number of meta tags
+# in the General Tab
+# Variables:
+# $tags (number) - The number of meta tags
+general-meta-tags =
+ .value =
+ { $tags ->
+ *[other] Meta ({ $tags } แท็ก)
+ }
+
+# This string is used to display the number of times
+# the user has visited the website prior
+# Variables:
+# $visits (number) - The number of previous visits
+security-visits-number =
+ { $visits ->
+ [0] ไม่
+ *[other] ใช่, { $visits } ครั้ง
+ }
+
+# This string is used to display the size of a media file
+# Variables:
+# $kb (number) - The size of an image in Kilobytes
+# $bytes (number) - The size of an image in Bytes
+properties-general-size =
+ .value =
+ { $bytes ->
+ *[other] { $kb } KB ({ $bytes } ไบต์)
+ }
+
+# This string is used to display the type and number
+# of frames of a animated image
+# Variables:
+# $type (string) - The type of a animated image
+# $frames (number) - The number of frames in an animated image
+media-animated-image-type =
+ .value =
+ { $frames ->
+ *[other] ภาพ { $type } (เคลื่อนไหว { $frames } เฟรม)
+ }
+
+# This string is used to display the type of
+# an image
+# Variables:
+# $type (string) - The type of an image
+media-image-type =
+ .value = ภาพ { $type }
+
+# This string is used to display the size of a scaled image
+# in both scaled and unscaled pixels
+# Variables:
+# $dimx (number) - The horizontal size of an image
+# $dimy (number) - The vertical size of an image
+# $scaledx (number) - The scaled horizontal size of an image
+# $scaledy (number) - The scaled vertical size of an image
+media-dimensions-scaled =
+ .value = { $dimx }px × { $dimy }px (ปรับขนาดเป็น { $scaledx }px × { $scaledy }px)
+
+# This string is used to display the size of an image in pixels
+# Variables:
+# $dimx (number) - The horizontal size of an image
+# $dimy (number) - The vertical size of an image
+media-dimensions =
+ .value = { $dimx }px × { $dimy }px
+
+# This string is used to display the size of a media
+# file in kilobytes
+# Variables:
+# $size (number) - The size of the media file in kilobytes
+media-file-size = { $size } KB
+
+## Variables:
+## $website (string) — The url of the website pageInfo is getting info for
+
+# This string is used to display the website name next to the
+# "Block Images" checkbox in the media tab
+# Variables:
+# $website (string) - The website name
+media-block-image =
+ .label = ปิดกั้นภาพจาก { $website }
+ .accesskey = ป
+
+# This string is used to display the URL of the website on top of the
+# pageInfo dialog box
+# Variables:
+# $website (string) — The url of the website pageInfo is getting info for
+page-info-page =
+ .title = ข้อมูลหน้า - { $website }
+page-info-frame =
+ .title = ข้อมูลกรอบ - { $website }
diff --git a/l10n-th/browser/browser/panelUI.ftl b/l10n-th/browser/browser/panelUI.ftl
new file mode 100644
index 0000000000..338c160b2b
--- /dev/null
+++ b/l10n-th/browser/browser/panelUI.ftl
@@ -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/.
+
+
+## Customization Menu
+
+# The overflow menu is the menu that appears if you click the chevron (>> button) in the location bar.
+customize-menu-unpin-from-overflowmenu =
+ .label = ถอนหมุดจากเมนูล้น
+ .accesskey = ถ
+customize-menu-add-to-toolbar =
+ .label = เพิ่มลงในแถบเครื่องมือ
+ .accesskey = พ
+customize-menu-add-to-overflowmenu =
+ .label = เพิ่มลงในเมนูล้น
+ .accesskey = พ
+
+## Forget Button
+
+# The forget button can be added to the toolbar or overflow menu via the cutomization menu.
+panic-button-thankyou-msg1 = ล้างประวัติล่าสุดของคุณแล้ว
+panic-button-thankyou-msg2 = การเรียกดูปลอดภัย!
+panic-button-thankyou-button =
+ .label = ขอบคุณ!
diff --git a/l10n-th/browser/browser/panicButton.ftl b/l10n-th/browser/browser/panicButton.ftl
new file mode 100644
index 0000000000..ee71566ea1
--- /dev/null
+++ b/l10n-th/browser/browser/panicButton.ftl
@@ -0,0 +1,31 @@
+# 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/.
+
+panic-button-open-new-window = เปิดหน้าต่างว่างใหม่
+panic-button-undo-warning = การกระทำนี้ไม่สามารถเลิกทำได้
+panic-button-forget-button =
+ .label = ลืม!
+
+## These strings are combined to form a complete sentence starting with
+## panic-main-timeframe-desc. For example: "Forget the last: Five minutes".
+## Please ensure that this remains the case in the translation.
+
+panic-main-timeframe-desc = ลืมก่อนหน้านี้:
+panic-button-5min =
+ .label = ห้านาที
+panic-button-2hr =
+ .label = สองชั่วโมง
+panic-button-day =
+ .label = 24 ชั่วโมง
+
+## These strings are combined to form a complete sentence starting with
+## panic-button-action-desc. For example: "Proceeding will: Delete Recent Cookies".
+## Please ensure that this remains the case in the translation.
+## Note also that some strings include <strong> tags for emphasis on the
+## words "Cookies", "History", "Tabs" and "Windows". The translation should do the same.
+
+panic-button-action-desc = การดำเนินการต่อจะ:
+panic-button-delete-cookies = ลบ<strong>คุกกี้</strong>ล่าสุด
+panic-button-delete-history = ลบ<strong>ประวัติ</strong>ล่าสุด
+panic-button-delete-tabs-and-windows = ปิด<strong>แท็บ</strong>และ<strong>หน้าต่าง</strong>ทั้งหมด
diff --git a/l10n-th/browser/browser/places.ftl b/l10n-th/browser/browser/places.ftl
new file mode 100644
index 0000000000..1202cf6ee0
--- /dev/null
+++ b/l10n-th/browser/browser/places.ftl
@@ -0,0 +1,264 @@
+# 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/.
+
+places-open =
+ .label = เปิด
+ .accesskey = ป
+places-open-in-tab =
+ .label = เปิดในแท็บใหม่
+ .accesskey = ใ
+places-open-in-container-tab =
+ .label = เปิดในแท็บแยกข้อมูลใหม่
+ .accesskey = ย
+places-open-all-bookmarks =
+ .label = เปิดที่คั่นหน้าทั้งหมด
+ .accesskey = ป
+places-open-all-in-tabs =
+ .label = เปิดทั้งหมดในแท็บ
+ .accesskey = ป
+places-open-in-window =
+ .label = เปิดในหน้าต่างใหม่
+ .accesskey = ห
+places-open-in-private-window =
+ .label = เปิดในหน้าต่างส่วนตัวใหม่
+ .accesskey = ส
+places-empty-bookmarks-folder =
+ .label = (ว่าง)
+places-add-bookmark =
+ .label = เพิ่มที่คั่นหน้า…
+ .accesskey = ท
+places-add-folder-contextmenu =
+ .label = เพิ่มโฟลเดอร์…
+ .accesskey = ฟ
+places-add-folder =
+ .label = เพิ่มโฟลเดอร์…
+ .accesskey = ล
+places-add-separator =
+ .label = เพิ่มตัวแบ่ง
+ .accesskey = ต
+places-view =
+ .label = มุมมอง
+ .accesskey = ม
+places-by-date =
+ .label = ตามวันที่
+ .accesskey = ว
+places-by-site =
+ .label = ตามไซต์
+ .accesskey = ม
+places-by-most-visited =
+ .label = ตามที่เยี่ยมชมมากที่สุด
+ .accesskey = ท
+places-by-last-visited =
+ .label = ตามวันที่เยี่ยมชมล่าสุด
+ .accesskey = ย
+places-by-day-and-site =
+ .label = ตามวันที่และไซต์
+ .accesskey = ต
+places-history-search =
+ .placeholder = ค้นหาประวัติ
+places-history =
+ .aria-label = ประวัติ
+places-bookmarks-search =
+ .placeholder = ค้นหาที่คั่นหน้า
+places-delete-domain-data =
+ .label = ลืมเกี่ยวกับไซต์นี้
+ .accesskey = ม
+places-forget-domain-data =
+ .label = ลืมเกี่ยวกับไซต์นี้…
+ .accesskey = F
+places-sortby-name =
+ .label = เรียงตามชื่อ
+ .accesskey = ร
+# places-edit-bookmark and places-edit-generic will show one or the other and can have the same access key.
+places-edit-bookmark =
+ .label = แก้ไขที่คั่นหน้า…
+ .accesskey = i
+places-edit-generic =
+ .label = แก้ไข…
+ .accesskey = i
+places-edit-folder2 =
+ .label = แก้ไขโฟลเดอร์
+ .accesskey = i
+# Variables
+# $count (number) - Number of folders to delete
+places-delete-folder =
+ .label =
+ { $count ->
+ [1] ลบโฟลเดอร์
+ *[other] ลบโฟลเดอร์
+ }
+ .accesskey = ล
+# Variables:
+# $count (number) - The number of pages selected for removal.
+places-delete-page =
+ .label =
+ { $count ->
+ [1] ลบหน้า
+ *[other] ลบหน้า
+ }
+ .accesskey = ล
+# Managed bookmarks are created by an administrator and cannot be changed by the user.
+managed-bookmarks =
+ .label = ที่คั่นหน้าที่ถูกจัดการ
+# This label is used when a managed bookmarks folder doesn't have a name.
+managed-bookmarks-subfolder =
+ .label = โฟลเดอร์ย่อย
+# This label is used for the "Other Bookmarks" folder that appears in the bookmarks toolbar.
+other-bookmarks-folder =
+ .label = ที่คั่นหน้าอื่น ๆ
+places-show-in-folder =
+ .label = แสดงในโฟลเดอร์
+ .accesskey = ฟ
+# Variables:
+# $count (number) - The number of elements being selected for removal.
+places-delete-bookmark =
+ .label =
+ { $count ->
+ [1] ลบที่คั่นหน้า
+ *[other] ลบที่คั่นหน้า
+ }
+ .accesskey = ล
+# Variables:
+# $count (number) - The number of bookmarks being added.
+places-create-bookmark =
+ .label =
+ { $count ->
+ [1] เพิ่มที่คั่นหน้าสำหรับหน้า…
+ *[other] เพิ่มที่คั่นหน้าสำหรับหน้า…
+ }
+ .accesskey = ท
+places-untag-bookmark =
+ .label = เอาแท็กออก
+ .accesskey = อ
+places-manage-bookmarks =
+ .label = จัดการที่คั่นหน้า
+ .accesskey = M
+places-forget-about-this-site-confirmation-title = ลืมเกี่ยวกับไซต์นี้
+# Variables:
+# $hostOrBaseDomain (string) - The base domain (or host in case there is no base domain) for which data is being removed
+places-forget-about-this-site-confirmation-msg = การดำเนินการนี้จะลบข้อมูลที่เกี่ยวข้องกับ { $hostOrBaseDomain } รวมถึงประวัติ คุกกี้ แคช และการกำหนดลักษณะเนื้อหา ที่คั่นหน้าและรหัสผ่านที่เกี่ยวข้องจะไม่ถูกลบ คุณแน่ใจหรือไม่ว่าต้องการดำเนินการต่อ
+places-forget-about-this-site-forget = ลืม
+places-library3 =
+ .title = ห้องสมุด
+places-organize-button =
+ .label = จัดระเบียบ
+ .tooltiptext = จัดระเบียบที่คั่นหน้าของคุณ
+ .accesskey = จ
+places-organize-button-mac =
+ .label = จัดระเบียบ
+ .tooltiptext = จัดระเบียบที่คั่นหน้าของคุณ
+places-file-close =
+ .label = ปิด
+ .accesskey = ป
+places-cmd-close =
+ .key = w
+places-view-button =
+ .label = มุมมอง
+ .tooltiptext = เปลี่ยนมุมมองของคุณ
+ .accesskey = ม
+places-view-button-mac =
+ .label = มุมมอง
+ .tooltiptext = เปลี่ยนมุมมองของคุณ
+places-view-menu-columns =
+ .label = แสดงคอลัมน์
+ .accesskey = ส
+places-view-menu-sort =
+ .label = เรียง
+ .accesskey = ร
+places-view-sort-unsorted =
+ .label = ไม่เรียง
+ .accesskey = ม
+places-view-sort-ascending =
+ .label = เรียงลำดับ A > Z
+ .accesskey = A
+places-view-sort-descending =
+ .label = เรียงลำดับ Z > A
+ .accesskey = Z
+places-maintenance-button =
+ .label = นำเข้าและสำรองข้อมูล
+ .tooltiptext = นำเข้าและสำรองที่คั่นหน้าของคุณ
+ .accesskey = น
+places-maintenance-button-mac =
+ .label = นำเข้าและสำรองข้อมูล
+ .tooltiptext = นำเข้าและสำรองที่คั่นหน้าของคุณ
+places-cmd-backup =
+ .label = สำรองข้อมูล…
+ .accesskey = ง
+places-cmd-restore =
+ .label = เรียกคืน
+ .accesskey = ร
+places-cmd-restore-from-file =
+ .label = เลือกไฟล์…
+ .accesskey = ล
+places-import-bookmarks-from-html =
+ .label = นำเข้าที่คั่นหน้าจาก HTML…
+ .accesskey = น
+places-export-bookmarks-to-html =
+ .label = ส่งออกที่คั่นหน้าเป็น HTML…
+ .accesskey = ส
+places-import-other-browser =
+ .label = นำเข้าข้อมูลจากเบราว์เซอร์อื่น…
+ .accesskey = อ
+places-view-sort-col-name =
+ .label = ชื่อ
+places-view-sort-col-tags =
+ .label = แท็ก
+places-view-sort-col-url =
+ .label = ตำแหน่งที่ตั้ง
+places-view-sort-col-most-recent-visit =
+ .label = วันที่เยี่ยมชมล่าสุด
+places-view-sort-col-visit-count =
+ .label = จำนวนการเข้าชม
+places-view-sort-col-date-added =
+ .label = วันที่เพิ่ม
+places-view-sort-col-last-modified =
+ .label = วันที่เปลี่ยนแปลงล่าสุด
+places-view-sortby-name =
+ .label = เรียงตามชื่อ
+ .accesskey = ร
+places-view-sortby-url =
+ .label = เรียงตามตำแหน่งที่ตั้ง
+ .accesskey = ง
+places-view-sortby-date =
+ .label = เรียงตามวันที่เยี่ยมชมล่าสุด
+ .accesskey = ต
+places-view-sortby-visit-count =
+ .label = เรียงตามจำนวนการเข้าชม
+ .accesskey = ม
+places-view-sortby-date-added =
+ .label = เรียงตามวันที่เพิ่ม
+ .accesskey = ว
+places-view-sortby-last-modified =
+ .label = เรียงตามวันที่เปลี่ยนแปลงล่าสุด
+ .accesskey = น
+places-view-sortby-tags =
+ .label = เรียงตามป้ายกำกับ
+ .accesskey = ย
+places-cmd-find-key =
+ .key = f
+places-back-button =
+ .tooltiptext = ย้อนกลับ
+places-forward-button =
+ .tooltiptext = เดินหน้า
+places-details-pane-select-an-item-description = เลือกรายการเพื่อดูและแก้ไขคุณสมบัติ
+places-details-pane-no-items =
+ .value = ไม่มีรายการ
+# Variables:
+# $count (Number): number of items
+places-details-pane-items-count =
+ .value = { $count } รายการ
+
+## Strings used as a placeholder in the Library search field. For example,
+## "Search History" stands for "Search through the browser's history".
+
+places-search-bookmarks =
+ .placeholder = ค้นหาที่คั่นหน้า
+places-search-history =
+ .placeholder = ค้นหาประวัติ
+places-search-downloads =
+ .placeholder = ค้นหาการดาวน์โหลด
+
+##
+
+places-locked-prompt = ระบบที่คั่นหน้าและประวัติจะไม่ทำงานเนื่องจากหนึ่งในไฟล์ของ { -brand-short-name } มีการใช้งานโดยแอปพลิเคชันอื่น ซอฟต์แวร์ความปลอดภัยบางตัวสามารถก่อให้เกิดปัญหานี้
diff --git a/l10n-th/browser/browser/placesPrompts.ftl b/l10n-th/browser/browser/placesPrompts.ftl
new file mode 100644
index 0000000000..ad70424d47
--- /dev/null
+++ b/l10n-th/browser/browser/placesPrompts.ftl
@@ -0,0 +1,20 @@
+# 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/.
+
+places-error-title = { -brand-short-name }
+places-no-title = (ไม่มีชื่อเรื่อง)
+
+# Do not translate `javascript:` and `data:`, they refer to the scheme used in URLs
+places-load-js-data-url-error = ด้วยเหตุผลความปลอดภัย URL ที่ขึ้นต้นด้วย “javascript:” หรือ “data:” จะไม่ถูกโหลดจากหน้าต่างประวัติหรือแถบข้าง
+
+places-bookmarks-backup-title = ชื่อไฟล์สำรองข้อมูลที่คั่นหน้า
+places-bookmarks-restore-alert-title = คืนที่คั่นหน้ากลับ
+places-bookmarks-restore-alert = สิ่งนี้จะแทนที่ที่คั่นหน้าปัจจุบันทั้งหมดของคุณด้วยข้อมูลสำรอง คุณแน่ใจหรือไม่?
+places-bookmarks-restore-title = เลือกที่คั่นหน้าที่สำรองไว้
+places-bookmarks-restore-filter-name = JSON
+places-bookmarks-restore-format-error = ชนิดไฟล์ที่ไม่รองรับ
+places-bookmarks-restore-parse-error = ไม่สามารถประมวลผลไฟล์สำรองข้อมูล
+
+places-bookmarks-import = นำเข้าไฟล์ที่คั่นหน้า
+places-bookmarks-export = ส่งออกไฟล์ที่คั่นหน้า
diff --git a/l10n-th/browser/browser/policies/policies-descriptions.ftl b/l10n-th/browser/browser/policies/policies-descriptions.ftl
new file mode 100644
index 0000000000..f6630f1f6a
--- /dev/null
+++ b/l10n-th/browser/browser/policies/policies-descriptions.ftl
@@ -0,0 +1,129 @@
+# 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/.
+
+
+## The Enterprise Policies feature is aimed at system administrators
+## who want to deploy these settings across several Firefox installations
+## all at once. This is traditionally done through the Windows Group Policy
+## feature, but the system also supports other forms of deployment.
+## These are short descriptions for individual policies, to be displayed
+## in the documentation section in about:policies.
+
+policy-3rdparty = ตั้งนโยบายที่ WebExtensions สามารถเข้าถึงผ่าน chrome.storage.managed
+policy-AllowedDomainsForApps = กำหนดโดเมนที่อนุญาตให้เข้าถึง Google Workspace
+policy-AllowFileSelectionDialogs = อนุญาตกล่องโต้ตอบการเลือกไฟล์
+policy-AppAutoUpdate = เปิดใช้งานหรือปิดใช้งานการอัปเดตแอปพลิเคชันอัตโนมัติ
+policy-AppUpdatePin = ป้องกันไม่ให้อัปเดต { -brand-short-name } เกินกว่ารุ่นที่ระบุ
+policy-AppUpdateURL = ตั้ง URL การอัปเดตแอปที่กำหนดเอง
+policy-Authentication = กำหนดค่าการตรวจสอบสิทธิ์แบบรวมสำหรับเว็บไซต์ที่รองรับ
+policy-AutoLaunchProtocolsFromOrigins = แสดงรายการของโปรโตคอลภายนอกที่สามารถใช้งานได้จากแหล่งที่มาที่แสดงในรายการโดยไม่ต้องถามผู้ใช้
+policy-BackgroundAppUpdate2 = เปิดใช้งานหรือปิดใช้งานตัวอัปเดตเบื้องหลัง
+policy-BlockAboutAddons = ปิดกั้นการเข้าถึงตัวจัดการส่วนเสริม (about:addons)
+policy-BlockAboutConfig = ปิดกั้นการเข้าถึงหน้า about:config
+policy-BlockAboutProfiles = ปิดกั้นการเข้าถึงหน้า about:profiles
+policy-BlockAboutSupport = ปิดกั้นการเข้าถึงหน้า about:support
+policy-Bookmarks = สร้างที่คั่นหน้าในแถบเครื่องมือ ที่คั่นหน้า เมนู ที่คั่นหน้า หรือโฟลเดอร์ที่ระบุ
+policy-CaptivePortal = เปิดหรือปิดใช้งานการสนับสนุนพอร์ทัลคัดกรอง
+policy-CertificatesDescription = เพิ่มใบรับรองหรือใช้ใบรับรองในตัว
+policy-Cookies = อนุญาตหรือปฏิเสธเว็บไซต์เพื่อตั้งคุกกี้
+# Containers in this context is referring to container tabs in Firefox.
+policy-Containers = ตั้งค่านโยบายที่เกี่ยวข้องกับการแยกข้อมูล
+policy-DisableAccounts = ปิดใช้บริการที่ใช้บัญชี รวมถึงการซิงค์
+policy-DisabledCiphers = ปิดการใช้งานรหัสลับ
+policy-DefaultDownloadDirectory = ตั้งไดเรกทอรีการดาวน์โหลดเริ่มต้น
+policy-DisableAppUpdate = ป้องกันไม่ให้เบราว์เซอร์อัปเดต
+policy-DisableBuiltinPDFViewer = ปิดใช้งาน PDF.js ตัวดู PDF ในตัวใน { -brand-short-name }
+policy-DisableDefaultBrowserAgent = ป้องกันไม่ให้ตัวแทนเบราว์เซอร์เริ่มต้นทำงานใด ๆ ใช้ได้กับ Windows เท่านั้น เนื่องจากแพลตฟอร์มอื่น ๆ ไม่มีตัวแทน
+policy-DisableDeveloperTools = ปิดกั้นการเข้าถึงเครื่องมือนักพัฒนา
+policy-DisableFeedbackCommands = ปิดใช้งานคำสั่งสำหรับส่งความคิดเห็นจากเมนู วิธีใช้ (ส่งความคิดเห็นและรายงานไซต์หลอกลวง)
+policy-DisableFirefoxAccounts = ปิดใช้งานบริการที่ใช้ { -fxaccount-brand-name } รวมถึง Sync ด้วย
+# Firefox Screenshots is the name of the feature, and should not be translated.
+policy-DisableFirefoxScreenshots = ปิดใช้งานคุณลักษณะ Firefox Screenshots
+policy-DisableFirefoxStudies = ป้องกันไม่ให้ { -brand-short-name } เรียกใช้การศึกษา
+policy-DisableForgetButton = ป้องกันไม่ให้เข้าถึงปุ่ม ลืม
+policy-DisableFormHistory = ไม่จดจำประวัติการค้นหาและแบบฟอร์ม
+policy-DisablePrimaryPasswordCreation = หากเป็น true จะไม่สามารถสร้างรหัสผ่านหลักได้
+policy-DisablePasswordReveal = ไม่อนุญาตให้เปิดเผยรหัสผ่านในการเข้าสู่ระบบที่บันทึกไว้
+policy-DisablePocket2 = ปิดใช้งานคุณลักษณะในการบันทึกหน้าเว็บไปยัง { -pocket-brand-name }
+policy-DisablePrivateBrowsing = ปิดใช้งานการเรียกดูแบบส่วนตัว
+policy-DisableProfileImport = ปิดใช้งานคำสั่งเมนูในการนำเข้าข้อมูลจากเบราว์เซอร์อื่น
+policy-DisableProfileRefresh = ปิดใช้งานปุ่ม ล้าง { -brand-short-name } ใหม่ ในหน้า about:support
+policy-DisableSafeMode = ปิดใช้งานคุณลักษณะสำหรับเริ่มการทำงานใหม่ในโหมดปลอดภัย หมายเหตุ: สามารถปิดใช้งานแป้น Shift สำหรับเข้าสู่โหมดปลอดภัยได้บน Windows เท่านั้นโดยใช้นโยบายกลุ่ม
+policy-DisableSecurityBypass = ป้องกันไม่ให้ผู้ใช้เลี่ยงคำเตือนเกี่ยวกับความปลอดภัยบางรายการ
+policy-DisableSetAsDesktopBackground = ปิดใช้งานคำสั่งเมนู ตั้งเป็นพื้นหลังเดสก์ท็อป
+policy-DisableSystemAddonUpdate = ป้องกันไม่ให้เบราว์เซอร์ติดตั้งและอัปเดตส่วนเสริมของระบบ
+policy-DisableTelemetry = ปิดการวัดและส่งข้อมูลทางไกล
+policy-DisableThirdPartyModuleBlocking = ป้องกันไม่ให้ผู้ใช้ปิดกั้นโมดูลของบุคคลที่สามซึ่งแทรกเข้าไปในโปรเซสของ { -brand-short-name }
+policy-DisplayBookmarksToolbar = แสดงผลแถบเครื่องมือที่คั่นหน้าโดยค่าเริ่มต้น
+policy-DisplayMenuBar = แสดงแถบเมนูโดยค่าเริ่มต้น
+policy-DNSOverHTTPS = กำหนดค่า DNS ผ่าน HTTPS
+policy-DontCheckDefaultBrowser = ปิดใช้งานการตรวจสอบเบราว์เซอร์เริ่มต้นเมื่อเปิดโปรแกรม
+policy-DownloadDirectory = ตั้งและล็อคไดเรกทอรีการดาวน์โหลด
+# “lock” means that the user won’t be able to change this setting
+policy-EnableTrackingProtection = เปิดหรือปิดใช้งานการปิดกั้นเนื้อหาโดยเลือกล็อกการตั้งค่านี้ได้
+# “lock” means that the user won’t be able to change this setting
+policy-EncryptedMediaExtensions = เปิดหรือปิดใช้งาน Encrypted Media Extensions โดยเลือกล็อกคุณลักษณะนี้ได้
+policy-ExemptDomainFileTypePairsFromFileTypeDownloadWarnings = ปิดใช้งานคำเตือนตามนามสกุลไฟล์สำหรับชนิดไฟล์ที่เจาะจงบนโดเมน
+# A “locked” extension can’t be disabled or removed by the user. This policy
+# takes 3 keys (“Install”, ”Uninstall”, ”Locked”), you can either keep them in
+# English or translate them as verbs.
+policy-Extensions = ติดตั้ง ถอนการติดตั้ง หรือล็อกส่วนขยาย ตัวเลือกการติดตั้งนี้จะใช้ URL หรือเส้นทางเป็นพารามิเตอร์ ส่วนตัวเลือกถอนการติดตั้งและล็อกจะใช้ไอดีส่วนขยาย
+policy-ExtensionSettings = จัดการการติดตั้งส่วนขยายในทุกส่วน
+policy-ExtensionUpdate = เปิดใช้งานหรือปิดใช้งานการอัปเดตส่วนขยายอัตโนมัติ
+policy-FirefoxHome2 = กำหนดค่า { -firefox-home-brand-name }
+policy-FirefoxSuggest = กำหนดค่า { -firefox-suggest-brand-name }
+policy-GoToIntranetSiteForSingleWordEntryInAddressBar = บังคับใช้การนำทางไซต์อินทราเน็ตโดยตรงแทนการค้นหาเมื่อพิมพ์รายการคำเดียวในแถบที่อยู่
+policy-Handlers = กำหนดค่าตัวจัดการแอปพลิเคชันเริ่มต้น
+policy-HardwareAcceleration = ถ้าค่าเป็นเท็จ ให้ปิดการเร่งด้วยฮาร์ดแวร์
+# “lock” means that the user won’t be able to change this setting
+policy-Homepage = ตั้งค่าหน้าแรกโดยอาจเลือกล็อกการตั้งค่านี้ได้
+policy-InstallAddonsPermission = อนุญาตให้บางเว็บไซต์ติดตั้งส่วนเสริม
+policy-LegacyProfiles = ปิดใช้งานคุณลักษณะการบังคับใช้โปรไฟล์แยกต่างหากสำหรับการติดตั้งในแต่ละครั้ง
+
+## Do not translate "SameSite", it's the name of a cookie attribute.
+
+policy-LegacySameSiteCookieBehaviorEnabled = เปิดใช้งานการตั้งค่าลักษณะการทำงานของคุกกี้ SameSite แบบดั้งเดิมซึ่งเป็นค่าเริ่มต้น
+policy-LegacySameSiteCookieBehaviorEnabledForDomainList = แปลงกลับเป็นลักษณะการทำงานของ SameSite แบบดั้งเดิมสำหรับคุกกี้บนไซต์ที่ระบุ
+
+##
+
+policy-LocalFileLinks = อนุญาตให้เว็บไซต์ที่ระบุเชื่อมโยงไปยังไฟล์ในเครื่อง
+policy-ManagedBookmarks = กำหนดค่ารายชื่อที่คั่นหน้าที่จัดการโดยผู้ดูแลระบบที่ไม่สามารถเปลี่ยนโดยผู้ใช้ได้
+policy-ManualAppUpdateOnly = อนุญาตการอัปเดตด้วยตนเองและไม่ต้องแจ้งให้ผู้ใช้ทราบเกี่ยวกับการอัปเดต
+policy-PrimaryPassword = ต้องการหรือป้องกันการใช้รหัสผ่านหลัก
+policy-PrintingEnabled = เปิดหรือปิดใช้งานการพิมพ์
+policy-NetworkPrediction = เปิดหรือปิดใช้งานการคาดเดาเครือข่าย (การดึงข้อมูล DNS ล่วงหน้า)
+policy-NewTabPage = เปิดใช้งานหรือปิดใช้งานหน้าแท็บใหม่
+policy-NoDefaultBookmarks = ปิดใช้งานการสร้างที่คั่นหน้าเริ่มต้นที่มาพร้อมกับ { -brand-short-name } และที่คั่นหน้าอัจฉริยะ (ที่เยี่ยมชมมากที่สุด, แท็กล่าสุด) หมายเหตุ: นโยบายนี้มีผลถ้าใช้ก่อนเรียกใช้โปรไฟล์ครั้งแรกเท่านั้น
+policy-OfferToSaveLogins = บังคับให้การตั้งค่าอนุญาต { -brand-short-name } ให้เสนอให้จดจำการเข้าสู่ระบบและรหัสผ่านที่บันทึกไว้ โดยสามารถกำหนดค่าเป็นทั้ง true และ false ได้
+policy-OfferToSaveLoginsDefault = กำหนดค่าเริ่มต้นเพื่ออนุญาต { -brand-short-name } ให้เสนอให้จดจำการเข้าสู่ระบบและรหัสผ่านที่บันทึกไว้ โดยสามารถกำหนดค่าเป็นทั้ง true และ false ได้
+policy-OverrideFirstRunPage = แทนที่หน้าการเรียกใช้ครั้งแรก ตั้งค่านโยบายนี้เป็นว่างเปล่าถ้าคุณต้องการปิดใช้งานหน้าการเรียกใช้ครั้งแรก
+policy-OverridePostUpdatePage = แทนที่หน้า “มีอะไรใหม่” หลังการอัปเดต ตั้งค่านโยบายนี้เป็นว่างเปล่าถ้าคุณต้องการปิดใช้งานหน้าหลังการอัปเดต
+policy-PasswordManagerEnabled = เปิดใช้งานการบันทึกรหัสผ่านไปยังตัวจัดการรหัสผ่าน
+policy-PasswordManagerExceptions = ป้องกันไม่ให้ { -brand-short-name } บันทึกรหัสผ่านสำหรับไซต์ที่ระบุ
+# PDF.js and PDF should not be translated
+policy-PDFjs = ปิดใช้งานหรือกำหนดค่า PDF.js ตัวดู PDF ในตัวใน { -brand-short-name }
+policy-Permissions2 = กำหนดค่าสิทธิอนุญาตสำหรับกล้อง, ไมโครโฟน, ตำแหน่งที่ตั้ง, การแจ้งเตือน, และการเล่นอัตโนมัติ
+policy-PictureInPicture = เปิดหรือปิดใช้งานภาพที่เล่นควบคู่
+policy-PopupBlocking = อนุญาตให้บางเว็บไซต์แสดงป็อปอัปตามค่าเริ่มต้น
+policy-Preferences = ตั้งค่าและล็อคค่าสำหรับชุดย่อยของการกำหนดลักษณะ
+policy-PromptForDownloadLocation = ถามตำแหน่งที่จะบันทึกไฟล์เมื่อดาวน์โหลด
+policy-Proxy = กำหนดค่าการตั้งค่าพร็อกซี
+policy-RequestedLocales = ตั้งค่ารายการภาษาสำหรับแอปพลิเคชันตามลำดับที่ต้องการ
+policy-SanitizeOnShutdown2 = ล้างข้อมูลการนำทางเมื่อปิดเครื่อง
+policy-SearchBar = ตั้งค่าตำแหน่งที่ตั้งเริ่มต้นของแถบค้นหา โดยที่ผู้ใช้ยังคงสามารถปรับแต่งได้
+policy-SearchEngines = กำหนดค่าการตั้งค่าเครื่องมือค้นหา นโยบายนี้ใช้ได้บนรุ่น Extended Support Release (ESR) เท่านั้น
+policy-SearchSuggestEnabled = เปิดใช้งานหรือปิดใช้งานข้อเสนอแนะการค้นหา
+# For more information, see https://wikipedia.org/wiki/PKCS_11
+policy-SecurityDevices2 = เพิ่มหรือลบโมดูล PKCS #11
+policy-ShowHomeButton = แสดงปุ่มหน้าแรกบนแถบเครื่องมือ
+policy-SSLVersionMax = ตั้งรุ่น SSL สูงสุด
+policy-SSLVersionMin = ตั้งรุ่น SSL ต่ำสุด
+policy-StartDownloadsInTempDirectory = บังคับให้เริ่มดาวน์โหลดจากตำแหน่งที่ตั้งชั่วคราวภายในเครื่องแทนที่จะเป็นไดเรกทอรีดาวน์โหลดเริ่มต้น
+policy-SupportMenu = เพิ่มรายการเมนูการสนับสนุนที่กำหนดเองไปยังเมนูช่วยเหลือ
+policy-UserMessaging = ไม่ต้องแสดงข้อความบางส่วนถึงผู้ใช้
+policy-UseSystemPrintDialog = พิมพ์โดยใช้กล่องโต้ตอบระบบพิมพ์…
+# “format” refers to the format used for the value of this policy.
+policy-WebsiteFilter = ปิดกั้นไม่ให้เยี่ยมชมเว็บไซต์ ดูคู่มือสำหรับรายละเอียดเพิ่มเติมเกี่ยวกับรูปแบบ
+policy-Windows10SSO = อนุญาต Windows single sign-on สำหรับบัญชีที่ทำงานและโรงเรียนของ Microsoft
diff --git a/l10n-th/browser/browser/preferences/addEngine.ftl b/l10n-th/browser/browser/preferences/addEngine.ftl
new file mode 100644
index 0000000000..6e21dc3ed9
--- /dev/null
+++ b/l10n-th/browser/browser/preferences/addEngine.ftl
@@ -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/.
+
+add-engine-window2 =
+ .title = เพิ่มเครื่องมือค้นหา
+ .style = min-width: 32em;
+
+add-engine-button = เพิ่มเครื่องมือที่กำหนดเอง
+
+add-engine-name = ชื่อเครื่องมือค้นหา
+
+add-engine-alias = นามแฝง
+
+add-engine-url = URL ของเครื่องมือ ใช้ %s แทนคำค้นหา
+
+add-engine-dialog =
+ .buttonlabelaccept = เพิ่มเครื่องมือ
+ .buttonaccesskeyaccept = พ
+
+engine-name-exists = มีเครื่องมือค้นหาชื่อนี้แล้ว
+engine-alias-exists = มีเครื่องมือค้นหานามแฝงนี้แล้ว
diff --git a/l10n-th/browser/browser/preferences/applicationManager.ftl b/l10n-th/browser/browser/preferences/applicationManager.ftl
new file mode 100644
index 0000000000..0f34b0f143
--- /dev/null
+++ b/l10n-th/browser/browser/preferences/applicationManager.ftl
@@ -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/.
+
+app-manager-window2 =
+ .title = รายละเอียดแอปพลิเคชัน
+ .style = min-width: 30em; min-height: 20em;
+
+app-manager-remove =
+ .label = เอาออก
+ .accesskey = อ
+
+# Variables:
+# $type (String) - the URI scheme of the link (e.g. mailto:)
+app-manager-handle-protocol = แอปพลิเคชันดังต่อไปนี้สามารถใช้เพื่อจัดการกับ ลิงก์ { $type }
+
+# Variables:
+# $type (String) - the MIME type (e.g. application/binary)
+app-manager-handle-file = แอปพลิเคชันดังต่อไปนี้สามารถใช้เพื่อจัดการกับ เนื้อหา { $type }
+
+## These strings are followed, on a new line,
+## by the URL or path of the application.
+
+app-manager-web-app-info = เว็บแอปพลิเคชันนี้โฮสต์ที่:
+app-manager-local-app-info = แอปพลิเคชันนี้ตั้งอยู่ที่:
diff --git a/l10n-th/browser/browser/preferences/blocklists.ftl b/l10n-th/browser/browser/preferences/blocklists.ftl
new file mode 100644
index 0000000000..c7195c5ab3
--- /dev/null
+++ b/l10n-th/browser/browser/preferences/blocklists.ftl
@@ -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/.
+
+blocklist-window2 =
+ .title = รายการปิดกั้น
+ .style = min-width: 55em
+
+blocklist-description = เลือกรายการ { -brand-short-name } เพื่อใช้ในการปิดกั้นตัวติดตามออนไลน์ รายการนี้จัดหาให้โดย <a data-l10n-name="disconnect-link" title="Disconnect">Disconnect</a>
+blocklist-close-key =
+ .key = w
+
+blocklist-treehead-list =
+ .label = รายการ
+
+blocklist-dialog =
+ .buttonlabelaccept = บันทึกการเปลี่ยนแปลง
+ .buttonaccesskeyaccept = บ
+
+
+# This template constructs the name of the block list in the block lists dialog.
+# It combines the list name and description.
+# e.g. "Standard (Recommended). This list does a pretty good job."
+#
+# Variables:
+# $listName {string, "Standard (Recommended)."} - List name.
+# $description {string, "This list does a pretty good job."} - Description of the list.
+blocklist-item-list-template = { $listName } { $description }
+
+blocklist-item-moz-std-listName = รายการปิดกั้นระดับ 1 (แนะนำ)
+blocklist-item-moz-std-description = อนุญาตตัวติดตามบางตัวเพื่อจะได้มีเว็บที่ใช้งานไม่ได้น้อยลง
+blocklist-item-moz-full-listName = รายการปิดกั้นระดับ 2
+blocklist-item-moz-full-description = ปิดกั้นตัวติดตามทั้งหมด บางเว็บไซต์หรือเนื้อหาอาจโหลดมาไม่ครบ
diff --git a/l10n-th/browser/browser/preferences/clearSiteData.ftl b/l10n-th/browser/browser/preferences/clearSiteData.ftl
new file mode 100644
index 0000000000..12c995d7fe
--- /dev/null
+++ b/l10n-th/browser/browser/preferences/clearSiteData.ftl
@@ -0,0 +1,56 @@
+# 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/.
+
+clear-site-data-window2 =
+ .title = ล้างข้อมูล
+ .style = min-width: 35em
+
+clear-site-data-description = การล้างคุกกี้และข้อมูลไซต์ทั้งหมดที่จัดเก็บไว้โดย { -brand-short-name } อาจลงชื่อคุณออกจากเว็บไซต์และเอาเนื้อหาเว็บออฟไลน์ออก การล้างข้อมูลแคชจะไม่ส่งผลกระทบต่อการเข้าสู่ระบบของคุณ
+
+clear-site-data-close-key =
+ .key = w
+
+# The parameters in parentheses in this string describe disk usage
+# in the format ($amount $unit), e.g. "Cookies and Site Data (24 KB)"
+# Variables:
+# $amount (Number) - Amount of site data currently stored on disk
+# $unit (String) - Abbreviation of the unit that $amount is in, e.g. "MB"
+clear-site-data-cookies-with-data =
+ .label = คุกกี้และข้อมูลไซต์ ({ $amount } { $unit })
+ .accesskey = ค
+
+# This string is a placeholder for while the data used to fill
+# clear-site-data-cookies-with-data is loading. This placeholder is usually
+# only shown for a very short time (< 1s), so it should be very similar
+# or the same as clear-site-data-cookies-with-data (except the amount and unit),
+# to avoid flickering.
+clear-site-data-cookies-empty =
+ .label = คุกกี้และข้อมูลไซต์
+ .accesskey = ค
+
+clear-site-data-cookies-info = คุณอาจได้รับการลงชื่อออกจากเว็บไซต์หากล้างข้อมูล
+
+# The parameters in parentheses in this string describe disk usage
+# in the format ($amount $unit), e.g. "Cached Web Content (24 KB)"
+# Variables:
+# $amount (Number) - Amount of cache currently stored on disk
+# $unit (String) - Abbreviation of the unit that $amount is in, e.g. "MB"
+clear-site-data-cache-with-data =
+ .label = เนื้อหาเว็บที่ถูกแคชไว้ ({ $amount } { $unit })
+ .accesskey = น
+
+# This string is a placeholder for while the data used to fill
+# clear-site-data-cache-with-data is loading. This placeholder is usually
+# only shown for a very short time (< 1s), so it should be very similar
+# or the same as clear-site-data-cache-with-data (except the amount and unit),
+# to avoid flickering.
+clear-site-data-cache-empty =
+ .label = เนื้อหาเว็บที่ถูกแคชไว้
+ .accesskey = น
+
+clear-site-data-cache-info = จะต้องให้เว็บไซต์โหลดภาพและข้อมูลใหม่
+
+clear-site-data-dialog =
+ .buttonlabelaccept = ล้าง
+ .buttonaccesskeyaccept = ล
diff --git a/l10n-th/browser/browser/preferences/colors.ftl b/l10n-th/browser/browser/preferences/colors.ftl
new file mode 100644
index 0000000000..d00c1a954d
--- /dev/null
+++ b/l10n-th/browser/browser/preferences/colors.ftl
@@ -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/.
+
+colors-dialog2 =
+ .title = สี
+ .style = min-width: 41em;
+colors-close-key =
+ .key = w
+colors-page-override = เขียนทับสีที่ระบุโดยหน้าด้วยที่คุณเลือกไว้ด้านบน
+ .accesskey = ย
+colors-page-override-option-always =
+ .label = เสมอ
+colors-page-override-option-auto =
+ .label = เฉพาะกับชุดรูปแบบความเปรียบต่างสูง
+colors-page-override-option-never =
+ .label = ไม่เลย
+colors-text-and-background = ข้อความและพื้นหลัง
+colors-text-header = ข้อความ
+ .accesskey = ข
+colors-background = พื้นหลัง
+ .accesskey = พ
+colors-use-system =
+ .label = ใช้สีของระบบ
+ .accesskey = ส
+colors-underline-links =
+ .label = ขีดเส้นใต้ลิงก์
+ .accesskey = ด
+colors-links-header = สีลิงก์
+colors-unvisited-links = ลิงก์ที่ไม่ได้เยี่ยมชม
+ .accesskey = ล
+colors-visited-links = ลิงก์ที่เยี่ยมชมแล้ว
+ .accesskey = ง
diff --git a/l10n-th/browser/browser/preferences/connection.ftl b/l10n-th/browser/browser/preferences/connection.ftl
new file mode 100644
index 0000000000..6d5145bdb1
--- /dev/null
+++ b/l10n-th/browser/browser/preferences/connection.ftl
@@ -0,0 +1,99 @@
+# 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/.
+
+connection-window2 =
+ .title = การตั้งค่าการเชื่อมต่อ
+ .style =
+ { PLATFORM() ->
+ [macos] min-width: 44em
+ *[other] min-width: 49em
+ }
+
+connection-close-key =
+ .key = w
+
+connection-disable-extension =
+ .label = ปิดใช้งานส่วนขยาย
+
+connection-proxy-configure = กำหนดค่าการเข้าถึงพร็อกซีกับอินเทอร์เน็ต
+
+connection-proxy-option-no =
+ .label = ไม่มีพร็อกซี
+ .accesskey = ม
+connection-proxy-option-system =
+ .label = ใช้การตั้งค่าพร็อกซีของระบบ
+ .accesskey = ง
+connection-proxy-option-auto =
+ .label = ตรวจหาการตั้งค่าพร็อกซีอัตโนมัติสำหรับเครือข่ายนี้
+ .accesskey = ว
+connection-proxy-option-manual =
+ .label = การกำหนดค่าพร็อกซีด้วยตนเอง
+ .accesskey = ห
+
+connection-proxy-http = พร็อกซี HTTP
+ .accesskey = ก
+connection-proxy-http-port = พอร์ต
+ .accesskey = พ
+connection-proxy-https-sharing =
+ .label = ใช้พร็อกซีนี้สำหรับ HTTPS ด้วย
+ .accesskey = s
+
+connection-proxy-https = พร็อกซี HTTPS
+ .accesskey = พ
+connection-proxy-ssl-port = พอร์ต
+ .accesskey = อ
+
+connection-proxy-socks = โฮสต์ SOCKS
+ .accesskey = C
+connection-proxy-socks-port = พอร์ต
+ .accesskey = ต
+
+connection-proxy-socks4 =
+ .label = SOCKS v4
+ .accesskey = K
+connection-proxy-socks5 =
+ .label = SOCKS v5
+ .accesskey = v
+connection-proxy-noproxy = ไม่มีพร็อกซีสำหรับ
+ .accesskey = ส
+
+connection-proxy-noproxy-desc = ตัวอย่าง: .mozilla.org, .net.nz, 192.168.1.0/24
+
+# Do not translate "localhost", "127.0.0.1/8" and "::1". (You can translate "and".)
+connection-proxy-noproxy-localhost-desc-2 = การเชื่อมต่อไปยัง localhost, 127.0.0.1/8, และ ::1 จะไม่ผ่านพร็อกซี
+
+connection-proxy-autotype =
+ .label = URL กำหนดค่าพร็อกซีอัตโนมัติ
+ .accesskey = น
+
+connection-proxy-reload =
+ .label = โหลดใหม่
+ .accesskey = ล
+
+connection-proxy-autologin =
+ .label = ไม่ต้องถามสำหรับการรับรองความถูกต้องหากรหัสผ่านถูกบันทึกไว้
+ .accesskey = ถ
+ .tooltip = ตัวเลือกนี้จะรับรองความถูกต้องของคุณไปยังพร็อกซีโดยอัตโนมัติเมื่อคุณได้บันทึกข้อมูลรับรองไว้ คุณจะได้รับการแจ้งหากการรับรองความถูกต้องล้มเหลว
+
+connection-proxy-autologin-checkbox =
+ .label = ไม่ต้องถามสำหรับการรับรองความถูกต้องหากรหัสผ่านถูกบันทึกไว้
+ .accesskey = ถ
+ .tooltiptext = ตัวเลือกนี้จะรับรองความถูกต้องของคุณไปยังพร็อกซีโดยอัตโนมัติเมื่อคุณได้บันทึกข้อมูลรับรองไว้ คุณจะได้รับการแจ้งหากการรับรองความถูกต้องล้มเหลว
+
+connection-proxy-socks-remote-dns =
+ .label = DNS แบบพร็อกซีเมื่อใช้ SOCKS v5
+ .accesskey = d
+
+# Variables:
+# $name (String) - Display name or URL for the DNS over HTTPS provider
+connection-dns-over-https-url-item-default =
+ .label = { $name } (ค่าเริ่มต้น)
+ .tooltiptext = ใช้ URL เริ่มต้นสำหรับแปลงที่อยู่ DNS ผ่าน HTTPS
+
+connection-dns-over-https-url-custom =
+ .label = กำหนดเอง
+ .accesskey = ก
+ .tooltiptext = ป้อน URL ที่คุณต้องการสำหรับแปลงที่อยู่ DNS ผ่าน HTTPS
+
+connection-dns-over-https-custom-label = กำหนดเอง
diff --git a/l10n-th/browser/browser/preferences/containers.ftl b/l10n-th/browser/browser/preferences/containers.ftl
new file mode 100644
index 0000000000..608f65973d
--- /dev/null
+++ b/l10n-th/browser/browser/preferences/containers.ftl
@@ -0,0 +1,93 @@
+# 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/.
+
+containers-window-new2 =
+ .title = เพิ่มการแยกข้อมูลใหม่
+ .style = min-width: 45em
+# Variables
+# $name (String) - Name of the container
+containers-window-update-settings2 =
+ .title = การตั้งค่าการแยกข้อมูล { $name }
+ .style = min-width: 45em
+
+containers-window-close =
+ .key = w
+
+# This is a term to store style to be applied
+# on the three labels in the containers add/edit dialog:
+# - name
+# - icon
+# - color
+#
+# Using this term and referencing it in the `.style` attribute
+# of the three messages ensures that all three labels
+# will be aligned correctly.
+-containers-labels-style = min-width: 4rem
+
+containers-name-label = ชื่อ
+ .accesskey = ช
+ .style = { -containers-labels-style }
+
+containers-name-text =
+ .placeholder = ป้อนชื่อการแยกข้อมูล
+
+containers-icon-label = ไอคอน
+ .accesskey = อ
+ .style = { -containers-labels-style }
+
+containers-color-label = สี
+ .accesskey = ส
+ .style = { -containers-labels-style }
+
+containers-dialog =
+ .buttonlabelaccept = เสร็จสิ้น
+ .buttonaccesskeyaccept = ร
+
+containers-color-blue =
+ .label = น้ำเงิน
+containers-color-turquoise =
+ .label = ฟ้าเทอร์คอยส์
+containers-color-green =
+ .label = เขียว
+containers-color-yellow =
+ .label = เหลือง
+containers-color-orange =
+ .label = ส้ม
+containers-color-red =
+ .label = แดง
+containers-color-pink =
+ .label = ชมพู
+containers-color-purple =
+ .label = ม่วง
+containers-color-toolbar =
+ .label = จับคู่แถบเครื่องมือ
+
+containers-icon-fence =
+ .label = รั้ว
+containers-icon-fingerprint =
+ .label = ลายนิ้วมือ
+containers-icon-briefcase =
+ .label = กระเป๋าเอกสาร
+# String represents a money sign but currently uses a dollar sign
+# so don't change to local currency. See Bug 1291672.
+containers-icon-dollar =
+ .label = เครื่องหมายดอลลาร์
+containers-icon-cart =
+ .label = รถเข็นซื้อของ
+containers-icon-circle =
+ .label = จุด
+containers-icon-vacation =
+ .label = วันหยุดพักผ่อน
+containers-icon-gift =
+ .label = ของขวัญ
+containers-icon-food =
+ .label = อาหาร
+containers-icon-fruit =
+ .label = ผลไม้
+containers-icon-pet =
+ .label = สัตว์เลี้ยง
+containers-icon-tree =
+ .label = ต้นไม้
+containers-icon-chill =
+ .label = ผ่อนคลาย
diff --git a/l10n-th/browser/browser/preferences/fonts.ftl b/l10n-th/browser/browser/preferences/fonts.ftl
new file mode 100644
index 0000000000..f7357eab7b
--- /dev/null
+++ b/l10n-th/browser/browser/preferences/fonts.ftl
@@ -0,0 +1,121 @@
+# 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/.
+
+fonts-window =
+ .title = แบบอักษร
+
+fonts-window-close =
+ .key = w
+
+## Font groups by language
+
+fonts-langgroup-header = แบบอักษรสำหรับ
+ .accesskey = บ
+
+fonts-langgroup-arabic =
+ .label = อาหรับ
+fonts-langgroup-armenian =
+ .label = อาร์เมเนีย
+fonts-langgroup-bengali =
+ .label = เบงกาลี
+fonts-langgroup-simpl-chinese =
+ .label = จีนตัวย่อ
+fonts-langgroup-trad-chinese-hk =
+ .label = จีนตัวเต็ม (ฮ่องกง)
+fonts-langgroup-trad-chinese =
+ .label = จีนตัวเต็ม (ไต้หวัน)
+fonts-langgroup-cyrillic =
+ .label = ซิริลลิก
+fonts-langgroup-devanagari =
+ .label = เทวนาครี
+fonts-langgroup-ethiopic =
+ .label = เอธิโอเปีย
+fonts-langgroup-georgian =
+ .label = จอร์เจีย
+fonts-langgroup-el =
+ .label = กรีก
+fonts-langgroup-gujarati =
+ .label = คุชราตี
+fonts-langgroup-gurmukhi =
+ .label = เกอร์มุกห์
+fonts-langgroup-japanese =
+ .label = ญี่ปุ่น
+fonts-langgroup-hebrew =
+ .label = ฮิบรู
+fonts-langgroup-kannada =
+ .label = กัณณาท
+fonts-langgroup-khmer =
+ .label = เขมร
+fonts-langgroup-korean =
+ .label = เกาหลี
+# Translate "Latin" as the name of Latin (Roman) script, not as the name of the Latin language.
+fonts-langgroup-latin =
+ .label = ละติน
+fonts-langgroup-malayalam =
+ .label = มะละยาลัม
+fonts-langgroup-math =
+ .label = คณิตศาสตร์
+fonts-langgroup-odia =
+ .label = โอเดีย
+fonts-langgroup-sinhala =
+ .label = สิงหล
+fonts-langgroup-tamil =
+ .label = ทมิฬ
+fonts-langgroup-telugu =
+ .label = เตลูกู
+fonts-langgroup-thai =
+ .label = ไทย
+fonts-langgroup-tibetan =
+ .label = ทิเบต
+fonts-langgroup-canadian =
+ .label = อักษรพยางค์พื้นเมืองแคนาดา
+fonts-langgroup-other =
+ .label = ระบบการเขียนอื่น ๆ
+
+## Default fonts and their sizes
+
+fonts-proportional-header = ความกว้างตามสัดส่วน
+ .accesskey = ค
+
+fonts-default-serif =
+ .label = มีเชิง
+fonts-default-sans-serif =
+ .label = ไม่มีเชิง
+
+fonts-proportional-size = ขนาด
+ .accesskey = ข
+
+fonts-serif = มีเชิง
+ .accesskey = ม
+
+fonts-sans-serif = ไม่มีเชิง
+ .accesskey = ง
+
+fonts-monospace = ความกว้างคงที่
+ .accesskey = ว
+
+fonts-monospace-size = ขนาด
+ .accesskey = น
+
+fonts-minsize = ขนาดแบบอักษรต่ำสุด
+ .accesskey = ด
+
+fonts-minsize-none =
+ .label = ไม่มี
+
+fonts-allow-own =
+ .label = อนุญาตให้หน้าเลือกใช้แบบอักษรของตัวเอง แทนที่จะเป็นที่คุณเลือกไว้ด้านบน
+ .accesskey = อ
+
+## Text Encodings
+##
+## Translate the encoding names as adjectives for an encoding, not as the name
+## of the language.
+
+# Variables:
+# $name {string, "Arial"} - Name of the default font
+fonts-label-default =
+ .label = ค่าเริ่มต้น ({ $name })
+fonts-label-default-unnamed =
+ .label = ค่าเริ่มต้น
diff --git a/l10n-th/browser/browser/preferences/formAutofill.ftl b/l10n-th/browser/browser/preferences/formAutofill.ftl
new file mode 100644
index 0000000000..bd92d4d331
--- /dev/null
+++ b/l10n-th/browser/browser/preferences/formAutofill.ftl
@@ -0,0 +1,156 @@
+# 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/.
+
+
+## The address and credit card autofill management dialog in browser preferences
+
+autofill-manage-addresses-title = ที่อยู่ที่บันทึกไว้
+autofill-manage-addresses-list-header = ที่อยู่
+autofill-manage-credit-cards-title = บัตรเครดิตที่บันทึกไว้
+autofill-manage-credit-cards-list-header = บัตรเครดิต
+autofill-manage-payment-methods-title = วิธีการชำระเงินที่บันทึกไว้
+autofill-manage-cards-list-header = บัตร
+autofill-manage-dialog =
+ .style = min-width: 560px
+autofill-manage-remove-button = เอาออก
+autofill-manage-add-button = เพิ่ม…
+autofill-manage-edit-button = แก้ไข…
+
+## The address capture doorhanger
+
+address-capture-save-doorhanger-header = ต้องการบันทึกที่อยู่หรือไม่?
+address-capture-save-doorhanger-description = บันทึกข้อมูลลงใน { -brand-short-name } เพื่อให้สามารถกรอกแบบฟอร์มได้อย่างรวดเร็ว
+address-capture-update-doorhanger-header = ต้องการปรับเปลี่ยนที่อยู่หรือไม่?
+address-capture-edit-doorhanger-header = แก้ไขที่อยู่
+address-capture-save-button =
+ .label = บันทึก
+ .accessKey = บ
+address-capture-not-now-button =
+ .label = ยังไม่ทำตอนนี้
+ .accessKey = ม
+address-capture-cancel-button =
+ .label = ยกเลิก
+ .accessKey = ย
+address-capture-update-button =
+ .label = ปรับเปลี่ยน
+ .accessKey = ป
+address-capture-manage-address-button =
+ .label = การตั้งค่าที่อยู่
+address-capture-learn-more-button =
+ .label = เรียนรู้เพิ่มเติม
+# The dialog title for creating addresses in browser preferences.
+autofill-add-new-address-title = เพิ่มที่อยู่ใหม่
+address-capture-open-menu-button =
+ .aria-label = เปิดเมนู
+address-capture-edit-address-button =
+ .aria-label = แก้ไขที่อยู่
+# The dialog title for creating addresses in browser preferences.
+autofill-add-address-title = เพิ่มที่อยู่
+# The dialog title for editing addresses in browser preferences.
+autofill-edit-address-title = แก้ไขที่อยู่
+autofill-address-name = ชื่อ
+autofill-address-given-name = ชื่อจริง
+autofill-address-additional-name = ชื่อกลาง
+autofill-address-family-name = นามสกุล
+autofill-address-organization = องค์กร
+autofill-address-street-address = ที่อยู่ถนน
+autofill-address-street = ที่อยู่
+
+## address-level-3 (Sublocality) names
+
+# Used in IR, MX
+autofill-address-neighborhood = ชุมชน
+# Used in MY
+autofill-address-village-township = หมู่บ้านหรือเขตการปกครอง
+autofill-address-island = เกาะ
+# Used in IE
+autofill-address-townland = เขต
+
+## address-level-2 names
+
+autofill-address-city = เมือง
+# Used in HK, SD, SY, TR as Address Level-2 and used in KR as Sublocality.
+autofill-address-district = เขต
+# Used in GB, NO, SE
+autofill-address-post-town = เมือง
+# Used in AU as Address Level-2 and used in ZZ as Sublocality.
+autofill-address-suburb = ชานเมือง
+
+## address-level-1 names
+
+autofill-address-province = จังหวัด
+autofill-address-state = รัฐ
+autofill-address-county = เคาน์ตี
+# Used in BB, JM
+autofill-address-parish = ตำบล
+# Used in JP
+autofill-address-prefecture = อำเภอ
+# Used in HK
+autofill-address-area = เขต
+# Used in KR
+autofill-address-do-si = จังหวัด
+# Used in NI, CO
+autofill-address-department = จังหวัด
+# Used in AE
+autofill-address-emirate = เอมิเรต
+# Used in RU and UA
+autofill-address-oblast = แคว้น
+
+## Postal code name types
+
+# Used in IN
+autofill-address-pin = พิน
+autofill-address-postal-code = รหัสไปรษณีย์
+autofill-address-zip = รหัสไปรษณีย์
+# Used in IE
+autofill-address-eircode = เอียร์โค้ด
+
+##
+
+
+##
+
+autofill-address-country = ประเทศหรือภูมิภาค
+autofill-address-country-only = ประเทศ
+autofill-address-tel = โทรศัพท์
+autofill-address-email = อีเมล
+autofill-cancel-button = ยกเลิก
+autofill-save-button = บันทึก
+autofill-country-warning-message = ขณะนี้การกรอกแบบฟอร์มมีให้บริการเฉพาะบางประเทศเท่านั้น
+# The dialog title for creating credit cards in browser preferences.
+autofill-add-new-card-title = เพิ่มบัตรเครดิตใหม่
+# The dialog title for editing credit cards in browser preferences.
+autofill-edit-card-title = แก้ไขบัตรเครดิต
+# In macOS, this string is preceded by the operating system with "Firefox is trying to ",
+# and has a period added to its end. Make sure to test in your locale.
+autofill-edit-card-password-prompt =
+ { PLATFORM() ->
+ [macos] แสดงข้อมูลบัตรเครดิต
+ [windows] { -brand-short-name } กำลังพยายามจะแสดงข้อมูลบัตรเครดิต ยืนยันการเข้าถึงบัญชี Windows นี้ด้านล่าง
+ *[other] { -brand-short-name } กำลังพยายามจะแสดงข้อมูลบัตรเครดิต
+ }
+autofill-message-tooltip = ดูข้อความเกี่ยวกับการเติมอัตโนมัติ
+# The dialog title for creating credit cards in browser preferences.
+autofill-add-card-title = เพิ่มบัตร
+# The dialog title for editing credit cards in browser preferences.
+autofill-edit-card-title2 = แก้ไขบัตร
+autofill-card-number = หมายเลขบัตร
+autofill-card-invalid-number = โปรดป้อนหมายเลขบัตรที่ถูกต้อง
+autofill-card-name-on-card = ชื่อบนบัตร
+autofill-card-expires-month = เดือนที่หมดอายุ
+autofill-card-expires-year = ปีที่หมดอายุ
+autofill-card-billing-address = ที่อยู่สำหรับเรียกเก็บเงิน
+autofill-card-network = ชนิดบัตร
+
+## These are brand names and should only be translated when a locale-specific name for that brand is in common use
+
+autofill-card-network-amex = American Express
+autofill-card-network-cartebancaire = Carte Bancaire
+autofill-card-network-diners = Diners Club
+autofill-card-network-discover = Discover
+autofill-card-network-jcb = JCB
+autofill-card-network-mastercard = MasterCard
+autofill-card-network-mir = MIR
+autofill-card-network-unionpay = Union Pay
+autofill-card-network-visa = Visa
diff --git a/l10n-th/browser/browser/preferences/fxaPairDevice.ftl b/l10n-th/browser/browser/preferences/fxaPairDevice.ftl
new file mode 100644
index 0000000000..be2d1cf86a
--- /dev/null
+++ b/l10n-th/browser/browser/preferences/fxaPairDevice.ftl
@@ -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/.
+
+fxa-pair-device-dialog-sync2 =
+ .style = min-width: 32em;
+
+fxa-qrcode-pair-title = ซิงค์ { -brand-product-name } บนโทรศัพท์หรือแท็บเล็ตของคุณ
+fxa-qrcode-pair-step1 = 1. เปิด { -brand-product-name } บนอุปกรณ์มือถือของคุณ
+
+fxa-qrcode-pair-step2-signin = 2. ไปที่เมนู (<img data-l10n-name="ios-menu-icon"/> บน iOS หรือ <img data-l10n-name="android-menu-icon"/> บน Android) และแตะ <strong>ซิงค์และบันทึกข้อมูล</strong>
+
+fxa-qrcode-pair-step3 = 3. แตะ <strong>พร้อมที่จะสแกน</strong> และถือโทรศัพท์ของคุณเหนือโค้ดนี้
+
+fxa-qrcode-error-title = การจับคู่ไม่สำเร็จ
+
+fxa-qrcode-error-body = ลองอีกครั้ง
diff --git a/l10n-th/browser/browser/preferences/languages.ftl b/l10n-th/browser/browser/preferences/languages.ftl
new file mode 100644
index 0000000000..985d9127c0
--- /dev/null
+++ b/l10n-th/browser/browser/preferences/languages.ftl
@@ -0,0 +1,73 @@
+# 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/.
+
+webpage-languages-window2 =
+ .title = การตั้งค่าภาษาของหน้าเว็บ
+ .style = min-width: 40em
+
+languages-close-key =
+ .key = w
+
+languages-description = บางครั้งหน้าเว็บอาจนำเสนอมากกว่าหนึ่งภาษา เลือกภาษาสำหรับแสดงผลหน้าเว็บเหล่านี้ตามลำดับที่ต้องการ
+
+languages-customize-spoof-english =
+ .label = ขอหน้าเว็บภาษาอังกฤษเพื่อความเป็นส่วนตัวที่เพิ่มขึ้น
+
+languages-customize-moveup =
+ .label = ย้ายขึ้น
+ .accesskey = ย
+
+languages-customize-movedown =
+ .label = ย้ายลง
+ .accesskey = ล
+
+languages-customize-remove =
+ .label = เอาออก
+ .accesskey = อ
+
+languages-customize-select-language =
+ .placeholder = เลือกภาษาที่จะเพิ่ม…
+
+languages-customize-add =
+ .label = เพิ่ม
+ .accesskey = พ
+
+# The pattern used to generate strings presented to the user in the
+# locale selection list.
+#
+# Example:
+# Icelandic [is]
+# Spanish (Chile) [es-CL]
+#
+# Variables:
+# $locale (String) - A name of the locale (for example: "Icelandic", "Spanish (Chile)")
+# $code (String) - Locale code of the locale (for example: "is", "es-CL")
+languages-code-format =
+ .label = { $locale } [{ $code }]
+
+languages-active-code-format =
+ .value = { languages-code-format.label }
+
+browser-languages-window2 =
+ .title = การตั้งค่าภาษาของ { -brand-short-name }
+ .style = min-width: 40em
+
+browser-languages-description = { -brand-short-name } จะแสดงผลภาษาแรกเป็นค่าเริ่มต้นของคุณและจะแสดงผลภาษาอื่นแทนหากจำเป็นตามลำดับที่ปรากฏ
+
+browser-languages-search = ค้นหาภาษาเพิ่มเติม…
+
+browser-languages-searching =
+ .label = กำลังค้นหาภาษา…
+
+browser-languages-downloading =
+ .label = กำลังดาวน์โหลด…
+
+browser-languages-select-language =
+ .label = เลือกภาษาที่จะเพิ่ม…
+ .placeholder = เลือกภาษาที่จะเพิ่ม…
+
+browser-languages-installed-label = ภาษาที่ติดตั้ง
+browser-languages-available-label = ภาษาที่มี
+
+browser-languages-error = { -brand-short-name } ไม่สามารถอัปเดตภาษาของคุณได้ในขณะนี้ ตรวจสอบว่าคุณเชื่อมต่อกับอินเทอร์เน็ตแล้วหรือลองอีกครั้ง
diff --git a/l10n-th/browser/browser/preferences/moreFromMozilla.ftl b/l10n-th/browser/browser/preferences/moreFromMozilla.ftl
new file mode 100644
index 0000000000..7e95e37be2
--- /dev/null
+++ b/l10n-th/browser/browser/preferences/moreFromMozilla.ftl
@@ -0,0 +1,34 @@
+# 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/.
+
+
+## These strings are used in the about:preferences moreFromMozilla page
+
+more-from-moz-title = เพิ่มเติมจาก { -vendor-short-name }
+more-from-moz-category =
+ .tooltiptext = เพิ่มเติมจาก { -vendor-short-name }
+more-from-moz-subtitle = ดูผลิตภัณฑ์อื่น ๆ ของ { -vendor-short-name } ที่ร่วมสนับสนุนอินเทอร์เน็ตที่แข็งแกร่ง
+more-from-moz-firefox-mobile-title = { -brand-product-name } รุ่นมือถือ
+more-from-moz-firefox-mobile-description = เบราว์เซอร์มือถือที่ให้ความสำคัญกับความเป็นส่วนตัวของคุณเป็นอันดับแรก
+more-from-moz-mozilla-vpn-title = { -mozilla-vpn-brand-name }
+more-from-moz-mozilla-vpn-description = ค้นพบการเรียกดูและการป้องกันแบบไม่ระบุชื่อที่สูงขึ้นไปอีกขั้น
+more-from-moz-qr-code-box-firefox-mobile-title = ดาวน์โหลดโดยใช้อุปกรณ์มือถือของคุณ ชี้กล้องของคุณไปที่รหัส QR เมื่อลิงก์ปรากฏขึ้น ให้แตะที่ลิงก์นั้น
+more-from-moz-qr-code-box-firefox-mobile-button = ส่งอีเมลไปยังโทรศัพท์ของคุณแทน
+more-from-moz-qr-code-firefox-mobile-img =
+ .alt = รหัส QR สำหรับดาวน์โหลด { -brand-product-name } รุ่นมือถือ
+more-from-moz-button-mozilla-vpn-2 = รับ VPN
+more-from-moz-learn-more-link = เรียนรู้เพิ่มเติม
+
+## These strings are for the Firefox Relay card in about:preferences moreFromMozilla page
+
+more-from-moz-firefox-relay-title = { -relay-brand-name }
+more-from-moz-firefox-relay-description = ปกป้องกล่องจดหมายและตัวตนของคุณด้วยการปกปิดอีเมลฟรี
+more-from-moz-firefox-relay-button = รับ { -relay-brand-short-name }
+
+## These strings are for the Mozilla Monitor card in about:preferences moreFromMozilla page
+
+more-from-moz-mozilla-monitor-title = { -mozmonitor-brand-name }
+more-from-moz-mozilla-monitor-us-description = นำข้อมูลส่วนตัวที่ถูกเปิดเผยของคุณกลับคืนโดยอัตโนมัติ
+more-from-moz-mozilla-monitor-global-description = รับการเตือนเมื่อข้อมูลของคุณรั่วไหล
+more-from-moz-mozilla-monitor-button = รับ { -monitor-brand-short-name }
diff --git a/l10n-th/browser/browser/preferences/permissions.ftl b/l10n-th/browser/browser/preferences/permissions.ftl
new file mode 100644
index 0000000000..0e438c96b1
--- /dev/null
+++ b/l10n-th/browser/browser/preferences/permissions.ftl
@@ -0,0 +1,205 @@
+# 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/.
+
+permissions-window2 =
+ .title = ข้อยกเว้น
+ .style = min-width: 45em
+permissions-close-key =
+ .key = w
+permissions-address = ที่อยู่เว็บไซต์
+ .accesskey = ท
+permissions-block =
+ .label = ปิดกั้น
+ .accesskey = ป
+permissions-disable-etp =
+ .label = เพิ่มข้อยกเว้น
+ .accesskey = ย
+permissions-session =
+ .label = อนุญาตในวาระ
+ .accesskey = น
+permissions-allow =
+ .label = อนุญาต
+ .accesskey = อ
+permissions-button-off =
+ .label = ปิด
+ .accesskey = ด
+permissions-button-off-temporarily =
+ .label = ปิดชั่วคราว
+ .accesskey = ค
+permissions-site-name =
+ .label = เว็บไซต์
+permissions-status =
+ .label = สถานะ
+permissions-remove =
+ .label = เอาเว็บไซต์ออก
+ .accesskey = อ
+permissions-remove-all =
+ .label = เอาเว็บไซต์ทั้งหมดออก
+ .accesskey = ว
+permission-dialog =
+ .buttonlabelaccept = บันทึกการเปลี่ยนแปลง
+ .buttonaccesskeyaccept = บ
+permissions-autoplay-menu = ค่าเริ่มต้นสำหรับเว็บไซต์ทั้งหมด:
+permissions-searchbox =
+ .placeholder = ค้นหาเว็บไซต์
+permissions-capabilities-autoplay-allow =
+ .label = อนุญาตเสียงและวิดีโอ
+permissions-capabilities-autoplay-block =
+ .label = ปิดกั้นเสียง
+permissions-capabilities-autoplay-blockall =
+ .label = ปิดกั้นเสียงและวิดีโอ
+permissions-capabilities-allow =
+ .label = อนุญาต
+permissions-capabilities-block =
+ .label = ปิดกั้น
+permissions-capabilities-prompt =
+ .label = ถามเสมอ
+permissions-capabilities-listitem-allow =
+ .value = อนุญาต
+permissions-capabilities-listitem-block =
+ .value = ปิดกั้น
+permissions-capabilities-listitem-allow-session =
+ .value = อนุญาตในวาระ
+permissions-capabilities-listitem-off =
+ .value = ปิด
+permissions-capabilities-listitem-off-temporarily =
+ .value = ปิดชั่วคราว
+
+## Invalid Hostname Dialog
+
+permissions-invalid-uri-title = ชื่อโฮสต์ที่ป้อนไม่ถูกต้อง
+permissions-invalid-uri-label = โปรดป้อนชื่อโฮสต์ที่ถูกต้อง
+
+## Exceptions - Tracking Protection
+
+permissions-exceptions-etp-window2 =
+ .title = ข้อยกเว้นสำหรับการป้องกันการติดตามแบบพิเศษ
+ .style = { permissions-window2.style }
+permissions-exceptions-manage-etp-desc = คุณสามารถระบุเว็บไซต์ที่จะปิดการป้องกันการติดตามแบบพิเศษได้ พิมพ์ที่อยู่ของไซต์ที่คุณต้องการจัดการแล้วคลิก เพิ่มข้อยกเว้น
+
+## Exceptions - Cookies
+
+permissions-exceptions-cookie-window2 =
+ .title = ข้อยกเว้น - คุกกี้และข้อมูลไซต์
+ .style = { permissions-window2.style }
+permissions-exceptions-cookie-desc = คุณสามารถระบุเว็บไซต์ที่จะอนุญาตหรือไม่อนุญาตให้ใช้คุกกี้และข้อมูลไซต์เสมอได้ พิมพ์ที่อยู่ของไซต์ที่คุณต้องการจัดการแล้วคลิก ปิดกั้น อนุญาตในวาระ หรือ อนุญาต
+
+## Exceptions - HTTPS-Only Mode
+
+permissions-exceptions-https-only-window2 =
+ .title = ข้อยกเว้น - โหมด HTTPS-Only
+ .style = { permissions-window2.style }
+permissions-exceptions-https-only-desc = คุณสามารถปิดโหมด HTTPS-Only สำหรับแต่ละเว็บไซต์ได้ { -brand-short-name } จะไม่พยายามอัปเกรดการเชื่อมต่อเป็น HTTPS แบบปลอดภัยสำหรับไซต์เหล่านั้น ข้อยกเว้นจะไม่นำไปใช้กับหน้าต่างส่วนตัว
+permissions-exceptions-https-only-desc2 = คุณสามารถปิดโหมด HTTPS-Only สำหรับแต่ละเว็บไซต์ได้ { -brand-short-name } จะไม่พยายามอัปเกรดการเชื่อมต่อเป็น HTTPS แบบปลอดภัยสำหรับไซต์เหล่านั้น
+
+## Exceptions - Pop-ups
+
+permissions-exceptions-popup-window2 =
+ .title = เว็บไซต์ที่อนุญาต - ป๊อปอัป
+ .style = { permissions-window2.style }
+permissions-exceptions-popup-desc = คุณสามารถระบุเว็บไซต์ที่จะอนุญาตให้เปิดหน้าต่างป๊อปอัปได้ พิมพ์ที่อยู่ของไซต์ที่คุณต้องการอนุญาตแล้วคลิก อนุญาต
+
+## Exceptions - Saved Logins
+
+permissions-exceptions-saved-logins-window2 =
+ .title = ข้อยกเว้น - การเข้าสู่ระบบที่บันทึกไว้
+ .style = { permissions-window2.style }
+permissions-exceptions-saved-logins-desc = การเข้าสู่ระบบสำหรับเว็บไซต์ต่อไปนี้จะไม่ถูกบันทึก
+
+## Exceptions - Saved Passwords
+
+permissions-exceptions-saved-passwords-window =
+ .title = ข้อยกเว้น - รหัสผ่านที่บันทึกไว้
+ .style = { permissions-window2.style }
+permissions-exceptions-saved-passwords-desc = { -brand-short-name } จะไม่บันทึกรหัสผ่านสำหรับไซต์ที่แสดงไว้ที่นี่
+
+## Exceptions - Add-ons
+
+permissions-exceptions-addons-window2 =
+ .title = เว็บไซต์ที่อนุญาต - การติดตั้งส่วนเสริม
+ .style = { permissions-window2.style }
+permissions-exceptions-addons-desc = คุณสามารถระบุเว็บไซต์ที่จะอนุญาตให้ติดตั้งส่วนเสริมได้ พิมพ์ที่อยู่ของไซต์ที่คุณต้องการอนุญาตแล้วคลิก อนุญาต
+
+## Site Permissions - Autoplay
+
+permissions-site-autoplay-window2 =
+ .title = การตั้งค่า - การเล่นอัตโนมัติ
+ .style = { permissions-window2.style }
+permissions-site-autoplay-desc = คุณสามารถจัดการเว็บไซต์ที่ไม่ทำงานตามการตั้งค่าการเล่นอัตโนมัติเริ่มต้นได้ที่นี่
+
+## Site Permissions - Notifications
+
+permissions-site-notification-window2 =
+ .title = การตั้งค่า - สิทธิอนุญาตการแจ้งเตือน
+ .style = { permissions-window2.style }
+permissions-site-notification-desc = เว็บไซต์ดังต่อไปนี้ได้ขอส่งการแจ้งเตือนให้คุณ คุณสามารถระบุเว็บไซต์ที่อนุญาตให้ส่งการแจ้งเตือนให้คุณ คุณยังสามารถปิดกั้นคำขอใหม่ที่ขออนุญาตการแจ้งเตือน
+permissions-site-notification-disable-label =
+ .label = ปิดกั้นคำขอใหม่ที่ขออนุญาตการแจ้งเตือน
+permissions-site-notification-disable-desc = นี่จะป้องกันไม่ให้เว็บไซต์ใด ๆ ที่ไม่ได้ระบุไว้ด้านบนขออนุญาตเพื่อส่งการแจ้งเตือน การปิดกั้นการแจ้งเตือนอาจทำให้คุณลักษณะบางอย่างของเว็บไซต์ไม่สมบูรณ์
+
+## Site Permissions - Location
+
+permissions-site-location-window2 =
+ .title = การตั้งค่า - สิทธิอนุญาตตำแหน่งที่ตั้ง
+ .style = { permissions-window2.style }
+permissions-site-location-desc = เว็บไซต์ดังต่อไปนี้ได้ขอเข้าถึงตำแหน่งที่ตั้งของคุณ คุณสามารถระบุเว็บไซต์ที่อนุญาตให้เข้าถึงตำแหน่งที่ตั้งของคุณ คุณยังสามารถปิดกั้นคำขอใหม่ที่ขอเข้าถึงตำแหน่งที่ตั้งของคุณ
+permissions-site-location-disable-label =
+ .label = ปิดกั้นคำขอใหม่ที่ขอเข้าถึงตำแหน่งที่ตั้งของคุณ
+permissions-site-location-disable-desc = นี่จะป้องกันไม่ให้เว็บไซต์ใด ๆ ที่ไม่ได้ระบุไว้ด้านบนขออนุญาตเพื่อเข้าถึงตำแหน่งที่ตั้งของคุณ การปิดกั้นการเข้าถึงตำแหน่งที่ตั้งของคุณอาจทำให้คุณลักษณะบางอย่างของเว็บไซต์ไม่สมบูรณ์
+
+## Site Permissions - Virtual Reality
+
+permissions-site-xr-window2 =
+ .title = การตั้งค่า - สิทธิอนุญาตความจริงเสมือน
+ .style = { permissions-window2.style }
+permissions-site-xr-desc = เว็บไซต์ดังต่อไปนี้ได้ขอเข้าถึงอุปกรณ์ความจริงเสมือนของคุณ คุณสามารถระบุเว็บไซต์ที่อนุญาตให้เข้าถึงอุปกรณ์ความจริงเสมือนของคุณ คุณยังสามารถปิดกั้นคำขอใหม่ที่ขอเข้าถึงอุปกรณ์ความจริงเสมือนของคุณ
+permissions-site-xr-disable-label =
+ .label = ปิดกั้นคำขอใหม่ที่ขอเข้าถึงอุปกรณ์ความจริงเสมือนของคุณ
+permissions-site-xr-disable-desc = นี่จะป้องกันเว็บไซต์ใด ๆ ที่ไม่ได้ระบุไว้ด้านบนจากการขออนุญาตเพื่อเข้าถึงอุปกรณ์ความจริงเสมือนของคุณ การปิดกั้นการเข้าถึงอุปกรณ์ความจริงเสมือนของคุณอาจทำให้คุณลักษณะบางอย่างของเว็บไซต์ไม่สมบูรณ์
+
+## Site Permissions - Camera
+
+permissions-site-camera-window2 =
+ .title = การตั้งค่า - สิทธิอนุญาตกล้อง
+ .style = { permissions-window2.style }
+permissions-site-camera-desc = เว็บไซต์ดังต่อไปนี้ได้ขอเข้าถึงกล้องของคุณ คุณสามารถระบุเว็บไซต์ที่อนุญาตให้เข้าถึงกล้องของคุณ คุณยังสามารถปิดกั้นคำขอใหม่ที่ขอเข้าถึงกล้องของคุณ
+permissions-site-camera-disable-label =
+ .label = ปิดกั้นคำขอใหม่ที่ขอเข้าถึงกล้องของคุณ
+permissions-site-camera-disable-desc = นี่จะป้องกันไม่ให้เว็บไซต์ใด ๆ ที่ไม่ได้ระบุไว้ด้านบนขออนุญาตเพื่อเข้าถึงกล้องของคุณ การปิดกั้นการเข้าถึงกล้องของคุณอาจทำให้คุณลักษณะบางอย่างของเว็บไซต์ไม่สมบูรณ์
+
+## Site Permissions - Microphone
+
+permissions-site-microphone-window2 =
+ .title = การตั้งค่า - สิทธิอนุญาตไมโครโฟน
+ .style = { permissions-window2.style }
+permissions-site-microphone-desc = เว็บไซต์ดังต่อไปนี้ได้ขอเข้าถึงไมโครโฟนของคุณ คุณสามารถระบุเว็บไซต์ที่อนุญาตให้เข้าถึงไมโครโฟนของคุณ คุณยังสามารถปิดกั้นคำขอใหม่ที่ขอเข้าถึงไมโครโฟนของคุณ
+permissions-site-microphone-disable-label =
+ .label = ปิดกั้นคำขอใหม่ที่ขอเข้าถึงไมโครโฟนของคุณ
+permissions-site-microphone-disable-desc = นี่จะป้องกันไม่ให้เว็บไซต์ใด ๆ ที่ไม่ได้ระบุไว้ด้านบนขออนุญาตเพื่อเข้าถึงไมโครโฟนของคุณ การปิดกั้นการเข้าถึงไมโครโฟนของคุณอาจทำให้คุณลักษณะบางอย่างของเว็บไซต์ไม่สมบูรณ์
+
+## Site Permissions - Speaker
+##
+## "Speaker" refers to an audio output device.
+
+permissions-site-speaker-window =
+ .title = การตั้งค่า - สิทธิอนุญาตลำโพง
+ .style = { permissions-window2.style }
+permissions-site-speaker-desc = เว็บไซต์ดังต่อไปนี้ได้ร้องขอเพื่อเลือกอุปกรณ์เอาต์พุตเสียง คุณสามารถระบุเว็บไซต์ที่อนุญาตให้เลือกอุปกรณ์เอาต์พุตเสียง
+permissions-exceptions-doh-window =
+ .title = ข้อยกเว้นเว็บไซต์สำหรับ DNS over HTTPS
+ .style = { permissions-window2.style }
+permissions-exceptions-manage-doh-desc = { -brand-short-name } จะไม่ใช้ secure DNS บนไซต์เหล่านี้รวมถึงโดเมนย่อยของไซต์เหล่านี้
+permissions-doh-entry-field = ใส่ชื่อโดเมนของเว็บไซต์
+ .accesskey = ด
+permissions-doh-add-exception =
+ .label = เพิ่ม
+ .accesskey = พ
+permissions-doh-col =
+ .label = โดเมน
+permissions-doh-remove =
+ .label = เอาออก
+ .accesskey = อ
+permissions-doh-remove-all =
+ .label = เอาทั้งหมดออก
+ .accesskey = ม
diff --git a/l10n-th/browser/browser/preferences/preferences.ftl b/l10n-th/browser/browser/preferences/preferences.ftl
new file mode 100644
index 0000000000..895492bb06
--- /dev/null
+++ b/l10n-th/browser/browser/preferences/preferences.ftl
@@ -0,0 +1,1378 @@
+# 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/.
+
+do-not-track-description = ส่งสัญญาณ “ไม่ติดตาม” ให้กับเว็บไซต์ว่าคุณไม่ต้องการถูกติดตาม
+do-not-track-description2 =
+ .label = ส่งคำขอ “ไม่ติดตาม” ให้กับเว็บไซต์
+ .accesskey = ม
+do-not-track-learn-more = เรียนรู้เพิ่มเติม
+do-not-track-option-default-content-blocking-known =
+ .label = เฉพาะเมื่อ { -brand-short-name } ถูกตั้งให้ปิดกั้นตัวติดตามที่รู้จัก
+do-not-track-option-always =
+ .label = เสมอ
+global-privacy-control-description =
+ .label = บอกเว็บไซต์ไม่ให้ขายหรือแบ่งปันข้อมูลของฉัน
+ .accesskey = บ
+non-technical-privacy-header = การกำหนดลักษณะความเป็นส่วนตัวของเว็บ
+# Do not translate.
+# "Global Privacy Control" or "GPC" are a web platform feature name and abbreviation
+# included to facilitate power-user search of the about:preferences page.
+global-privacy-control-search = Global Privacy Control (GPC)
+settings-page-title = การตั้งค่า
+# This is used to determine the width of the search field in about:preferences,
+# in order to make the entire placeholder string visible
+#
+# Please keep the placeholder string short to avoid truncation.
+#
+# Notice: The value of the `.style` attribute is a CSS string, and the `width`
+# is the name of the CSS property. It is intended only to adjust the element's width.
+# Do not translate.
+search-input-box2 =
+ .style = width: 15.4em
+ .placeholder = ค้นหาในการตั้งค่า
+managed-notice = เบราว์เซอร์ของคุณกำลังถูกจัดการโดยองค์กรของคุณ
+category-list =
+ .aria-label = หมวดหมู่
+pane-general-title = ทั่วไป
+category-general =
+ .tooltiptext = { pane-general-title }
+pane-home-title = หน้าแรก
+category-home =
+ .tooltiptext = { pane-home-title }
+pane-search-title = ค้นหา
+category-search =
+ .tooltiptext = { pane-search-title }
+pane-privacy-title = ความเป็นส่วนตัวและความปลอดภัย
+category-privacy =
+ .tooltiptext = { pane-privacy-title }
+pane-sync-title3 = การซิงค์
+category-sync3 =
+ .tooltiptext = { pane-sync-title3 }
+pane-experimental-title = คุณลักษณะทดลองของ { -brand-short-name }
+category-experimental =
+ .tooltiptext = คุณลักษณะทดลองของ { -brand-short-name }
+pane-experimental-subtitle = ดำเนินการต่อด้วยความระมัดระวัง
+pane-experimental-search-results-header = คุณลักษณะทดลองของ { -brand-short-name }: ดำเนินการต่อด้วยความระมัดระวัง
+pane-experimental-description2 = การเปลี่ยนแปลงการตั้งค่าขั้นสูงอาจส่งผลต่อประสิทธิภาพหรือความปลอดภัยของ { -brand-short-name } ได้
+pane-experimental-reset =
+ .label = เรียกคืนค่าเริ่มต้น
+ .accesskey = R
+help-button-label = การสนับสนุนของ { -brand-short-name }
+addons-button-label = ส่วนขยายและชุดรูปแบบ
+focus-search =
+ .key = f
+close-button =
+ .aria-label = ปิด
+
+## Browser Restart Dialog
+
+feature-enable-requires-restart = { -brand-short-name } ต้องเริ่มการทำงานใหม่เพื่อเปิดใช้งานคุณลักษณะนี้
+feature-disable-requires-restart = { -brand-short-name } ต้องเริ่มการทำงานใหม่เพื่อปิดใช้งานคุณลักษณะนี้
+should-restart-title = เริ่มการทำงาน { -brand-short-name } ใหม่
+should-restart-ok = เริ่มการทำงาน { -brand-short-name } ใหม่ตอนนี้
+cancel-no-restart-button = ยกเลิก
+restart-later = เริ่มการทำงานใหม่ในภายหลัง
+
+## Extension Control Notifications
+##
+## These strings are used to inform the user
+## about changes made by extensions to browser settings.
+##
+## <img data-l10n-name="icon"/> is going to be replaced by the extension icon.
+##
+## Variables:
+## $name (string) - Name of the extension
+
+# This string is shown to notify the user that the password manager setting
+# is being controlled by an extension
+extension-controlling-password-saving = <img data-l10n-name="icon"/> <strong>{ $name }</strong> ควบคุมการตั้งค่านี้
+# This string is shown to notify the user that their notifications permission
+# is being controlled by an extension.
+extension-controlling-web-notifications = <img data-l10n-name="icon"/> <strong>{ $name }</strong> ควบคุมการตั้งค่านี้
+# This string is shown to notify the user that Container Tabs
+# are being enabled by an extension.
+extension-controlling-privacy-containers = <img data-l10n-name="icon"/> <strong>{ $name }</strong> ต้องการแท็บแยกข้อมูล
+# This string is shown to notify the user that their content blocking "All Detected Trackers"
+# preferences are being controlled by an extension.
+extension-controlling-websites-content-blocking-all-trackers = <img data-l10n-name="icon"/> <strong>{ $name }</strong> ควบคุมการตั้งค่านี้
+# This string is shown to notify the user that their proxy configuration preferences
+# are being controlled by an extension.
+extension-controlling-proxy-config = <img data-l10n-name ="icon"/> <strong>{ $name }</strong> ควบคุมวิธีที่ { -brand-short-name } เชื่อมต่อกับอินเทอร์เน็ต
+# This string is shown after the user disables an extension to notify the user
+# how to enable an extension that they disabled.
+#
+# <img data-l10n-name="addons-icon"/> will be replaced with Add-ons icon
+# <img data-l10n-name="menu-icon"/> will be replaced with Menu icon
+extension-controlled-enable = เพื่อเปิดใช้งานส่วนขยาย ไปยัง <img data-l10n-name="addons-icon"/> ส่วนเสริม ใน <img data-l10n-name="menu-icon"/> เมนู
+
+## Preferences UI Search Results
+
+search-results-header = ผลการค้นหา
+# `<span data-l10n-name="query"></span>` will be replaced by the search term.
+search-results-empty-message2 = ขออภัย! ไม่มีผลลัพธ์สำหรับ “<span data-l10n-name="query"></span>” ในการตั้งค่า
+search-results-help-link = ต้องการความช่วยเหลือ? เยี่ยมชม <a data-l10n-name="url">การสนับสนุนของ { -brand-short-name }</a>
+
+## General Section
+
+startup-header = เริ่มการทำงาน
+always-check-default =
+ .label = ตรวจสอบเสมอว่า { -brand-short-name } เป็นเบราว์เซอร์เริ่มต้นของคุณหรือไม่
+ .accesskey = ต
+is-default = { -brand-short-name } เป็นเบราว์เซอร์เริ่มต้นของคุณในขณะนี้
+is-not-default = { -brand-short-name } ไม่ได้เป็นเบราว์เซอร์เริ่มต้นของคุณ
+set-as-my-default-browser =
+ .label = ทำให้เป็นค่าเริ่มต้น…
+ .accesskey = ค
+startup-restore-windows-and-tabs =
+ .label = เปิดหน้าต่างและแท็บก่อนหน้า
+ .accesskey = ก
+windows-launch-on-login =
+ .label = เปิด { -brand-short-name } โดยอัตโนมัติตอนเปิดเครื่องคอมพิวเตอร์
+ .accesskey = ป
+windows-launch-on-login-disabled = การกำหนดลักษณะนี้ถูกปิดใช้งานใน Windows เมื่อต้องการเปลี่ยน ให้ไปที่ <a data-l10n-name="startup-link">แอปเริ่มต้น</a> ในการตั้งค่าระบบ
+startup-restore-warn-on-quit =
+ .label = เตือนคุณเมื่อออกจากเบราว์เซอร์
+disable-extension =
+ .label = ปิดใช้งานส่วนขยาย
+preferences-data-migration-header = นำเข้าข้อมูลเบราว์เซอร์
+preferences-data-migration-description = นำเข้าที่คั่นหน้า รหัสผ่าน ประวัติ และข้อมูลกรอกอัตโนมัติใน { -brand-short-name }
+preferences-data-migration-button =
+ .label = นำเข้าข้อมูล
+ .accesskey = น
+tabs-group-header = แท็บ
+ctrl-tab-recently-used-order =
+ .label = Ctrl+Tab เพื่อสลับเปลี่ยนแท็บตามลำดับที่ใช้ล่าสุด
+ .accesskey = T
+open-new-link-as-tabs =
+ .label = เปิดลิงก์ในแท็บแทนที่จะเป็นหน้าต่างใหม่
+ .accesskey = ป
+confirm-on-close-multiple-tabs =
+ .label = ยืนยันก่อนปิดหลายแท็บ
+ .accesskey = ย
+# This string is used for the confirm before quitting preference.
+# Variables:
+# $quitKey (string) - the quit keyboard shortcut, and formatted
+# in the same manner as it would appear,
+# for example, in the File menu.
+confirm-on-quit-with-key =
+ .label = ยืนยันก่อนออกด้วย { $quitKey }
+ .accesskey = อ
+warn-on-open-many-tabs =
+ .label = เตือนคุณเมื่อการเปิดหลายแท็บอาจทำให้ { -brand-short-name } ช้าลง
+ .accesskey = อ
+switch-to-new-tabs =
+ .label = เมื่อคุณเปิดลิงก์ รูปภาพ หรือสื่อในแท็บใหม่ สลับไปที่แท็บนั้นทันที
+ .accesskey = h
+show-tabs-in-taskbar =
+ .label = แสดงตัวอย่างแท็บในแถบงาน Windows
+ .accesskey = ส
+browser-containers-enabled =
+ .label = เปิดใช้งานแท็บแยกข้อมูล
+ .accesskey = ย
+browser-containers-learn-more = เรียนรู้เพิ่มเติม
+browser-containers-settings =
+ .label = การตั้งค่า…
+ .accesskey = ต
+containers-disable-alert-title = ปิดแท็บแยกข้อมูลทั้งหมด?
+
+## Variables:
+## $tabCount (number) - Number of tabs
+
+containers-disable-alert-desc = หากคุณปิดใช้งานแท็บแยกข้อมูลตอนนี้ { $tabCount } แท็บแยกข้อมูลจะถูกปิด คุณแน่ใจหรือไม่ว่าต้องการปิดใช้งานแท็บแยกข้อมูล?
+containers-disable-alert-ok-button = ปิด { $tabCount } แท็บแยกข้อมูล
+
+##
+
+containers-disable-alert-cancel-button = เปิดใช้งานต่อไป
+containers-remove-alert-title = เอาการแยกข้อมูลนี้ออก?
+# Variables:
+# $count (number) - Number of tabs that will be closed.
+containers-remove-alert-msg = หากคุณเอาการแยกข้อมูลนี้ออกตอนนี้ { $count } แท็บแยกข้อมูลจะถูกปิด คุณแน่ใจหรือไม่ว่าต้องการเอาการแยกข้อมูลนี้ออก?
+containers-remove-ok-button = เอาการแยกข้อมูลนี้ออก
+containers-remove-cancel-button = ไม่เอาการแยกข้อมูลนี้ออก
+settings-tabs-show-image-in-preview =
+ .label = แสดงตัวอย่างภาพเมื่อคุณวางเมาส์เหนือแท็บ
+ .accessKey = แ
+
+## General Section - Language & Appearance
+
+language-and-appearance-header = ภาษาและรูปลักษณ์
+preferences-web-appearance-header = รูปลักษณ์ของเว็บไซต์
+preferences-web-appearance-description = บางเว็บไซต์ปรับโทนสีตามการกำหนดลักษณะของคุณ เลือกชุดสีที่คุณต้องการใช้สำหรับไซต์เหล่านั้น
+preferences-web-appearance-choice-auto = อัตโนมัติ
+preferences-web-appearance-choice-light = สว่าง
+preferences-web-appearance-choice-dark = มืด
+preferences-web-appearance-choice-tooltip-auto =
+ .title = เปลี่ยนพื้นหลังและเนื้อหาของเว็บไซต์โดยอัตโนมัติตามการตั้งค่าระบบและชุดรูปแบบของ { -brand-short-name }
+preferences-web-appearance-choice-tooltip-light =
+ .title = ใช้รูปลักษณ์แบบสว่างสำหรับพื้นหลังและเนื้อหาของเว็บไซต์
+preferences-web-appearance-choice-tooltip-dark =
+ .title = ใช้รูปลักษณ์แบบมืดสำหรับพื้นหลังและเนื้อหาของเว็บไซต์
+preferences-web-appearance-choice-input-auto =
+ .aria-description = { preferences-web-appearance-choice-tooltip-auto.title }
+preferences-web-appearance-choice-input-light =
+ .aria-description = { preferences-web-appearance-choice-tooltip-light.title }
+preferences-web-appearance-choice-input-dark =
+ .aria-description = { preferences-web-appearance-choice-tooltip-dark.title }
+# This can appear when using windows HCM or "Override colors: always" without
+# system colors.
+preferences-web-appearance-override-warning = การเลือกสีของคุณมีผลเหนือรูปลักษณ์ของเว็บไซต์ <a data-l10n-name="colors-link">จัดการสี</a>
+# This can appear when using windows HCM or "Override colors: always" without
+# system colors.
+preferences-web-appearance-override-warning2 =
+ .message = การเลือกสีของคุณมีผลเหนือรูปลักษณ์ของเว็บไซต์
+# This message contains one link. It can be moved within the sentence as needed
+# to adapt to your language, but should not be changed.
+preferences-web-appearance-footer = จัดการชุดรูปแบบของ { -brand-short-name } ใน <a data-l10n-name="themes-link">ส่วนขยายและชุดรูปแบบ</a>
+preferences-colors-header = สี
+preferences-colors-description = แทนที่สีเริ่มต้นของ { -brand-short-name } สำหรับข้อความ พื้นหลังของเว็บไซต์ และลิงก์
+preferences-colors-manage-button =
+ .label = จัดการสี…
+ .accesskey = C
+preferences-fonts-header = แบบอักษร
+default-font = แบบอักษรเริ่มต้น
+ .accesskey = บ
+default-font-size = ขนาด
+ .accesskey = ข
+advanced-fonts =
+ .label = ขั้นสูง…
+ .accesskey = น
+# Zoom is a noun, and the message is used as header for a group of options
+preferences-zoom-header = ซูม
+preferences-default-zoom = ซูมเริ่มต้น
+ .accesskey = ร
+# Variables:
+# $percentage (number) - Zoom percentage value
+preferences-default-zoom-value =
+ .label = { $percentage }%
+preferences-zoom-text-only =
+ .label = ซูมข้อความเท่านั้น
+ .accesskey = ข
+language-header = ภาษา
+choose-language-description = เลือกภาษาที่คุณต้องการในการแสดงผลหน้า
+choose-button =
+ .label = เลือก…
+ .accesskey = ล
+choose-browser-language-description = เลือกภาษาที่ใช้แสดงเมนู, ข้อความ และการแจ้งเตือนจาก { -brand-short-name }
+manage-browser-languages-button =
+ .label = ตั้งทางเลือก…
+ .accesskey = ต
+confirm-browser-language-change-description = เริ่มการทำงาน { -brand-short-name } ใหม่เพื่อใช้การเปลี่ยนแปลงเหล่านี้
+confirm-browser-language-change-button = นำไปใช้แล้วเริ่มการทำงานใหม่
+translate-web-pages =
+ .label = แปลเนื้อหาเว็บ
+ .accesskey = ป
+fx-translate-web-pages = { -translations-brand-name }
+# The <img> element is replaced by the logo of the provider
+# used to provide machine translations for web pages.
+translate-attribution = แปลโดย <img data-l10n-name="logo"/>
+translate-exceptions =
+ .label = ข้อยกเว้น…
+ .accesskey = อ
+# Variables:
+# $localeName (string) - Localized name of the locale to be used.
+use-system-locale =
+ .label = ใช้การตั้งค่าระบบปฏิบัติการสำหรับ “{ $localeName }” ของคุณในการกำหนดรูปแบบวันที่ เวลา ตัวเลข และการวัดค่า
+check-user-spelling =
+ .label = ตรวจสอบการสะกดคำของคุณเมื่อคุณพิมพ์
+ .accesskey = จ
+
+## General Section - Files and Applications
+
+files-and-applications-title = ไฟล์และแอปพลิเคชัน
+download-header = การดาวน์โหลด
+download-save-where = บันทึกไฟล์ไปยัง
+ .accesskey = ฟ
+download-choose-folder =
+ .label =
+ { PLATFORM() ->
+ [macos] เลือก…
+ *[other] เรียกดู…
+ }
+ .accesskey =
+ { PLATFORM() ->
+ [macos] ล
+ *[other] ร
+ }
+download-always-ask-where =
+ .label = ถามคุณเสมอว่าจะบันทึกไฟล์ที่ไหน
+ .accesskey = ถ
+applications-header = แอปพลิเคชัน
+applications-description = เลือกวิธีที่ { -brand-short-name } จัดการกับไฟล์ที่คุณดาวน์โหลดจากเว็บหรือแอปพลิเคชันที่คุณใช้ขณะเรียกดู
+applications-filter =
+ .placeholder = ค้นหาชนิดไฟล์หรือแอปพลิเคชัน
+applications-type-column =
+ .label = ชนิดเนื้อหา
+ .accesskey = ช
+applications-action-column =
+ .label = การกระทำ
+ .accesskey = ก
+# Variables:
+# $extension (String) - file extension (e.g .TXT)
+applications-file-ending = ไฟล์ { $extension }
+applications-action-save =
+ .label = บันทึกไฟล์
+# Variables:
+# $app-name (String) - Name of an application (e.g Adobe Acrobat)
+applications-use-app =
+ .label = ใช้ { $app-name }
+# Variables:
+# $app-name (String) - Name of an application (e.g Adobe Acrobat)
+applications-use-app-default =
+ .label = ใช้ { $app-name } (ค่าเริ่มต้น)
+applications-use-os-default =
+ .label =
+ { PLATFORM() ->
+ [macos] ใช้ macOS เป็นแอปเริ่มต้น
+ [windows] ใช้ Windows เป็นแอปเริ่มต้น
+ *[other] ใช้แอปของระบบเป็นแอปเริ่มต้น
+ }
+applications-use-other =
+ .label = ใช้ตัวอื่น…
+applications-select-helper = เลือกแอปพลิเคชันตัวช่วย
+applications-manage-app =
+ .label = รายละเอียดแอปพลิเคชัน…
+applications-always-ask =
+ .label = ถามเสมอ
+# Variables:
+# $type-description (string) - Description of the type (e.g "Portable Document Format")
+# $type (string) - The MIME type (e.g application/binary)
+applications-type-description-with-type = { $type-description } ({ $type })
+# Variables:
+# $extension (string) - File extension (e.g .TXT)
+# $type (string) - The MIME type (e.g application/binary)
+applications-file-ending-with-type = { applications-file-ending } ({ $type })
+# Variables:
+# $plugin-name (string) - Name of a plugin (e.g Adobe Flash)
+applications-use-plugin-in =
+ .label = ใช้ { $plugin-name } (ใน { -brand-short-name })
+applications-open-inapp =
+ .label = เปิดใน { -brand-short-name }
+
+## The strings in this group are used to populate
+## selected label element based on the string from
+## the selected menu item.
+
+applications-use-plugin-in-label =
+ .value = { applications-use-plugin-in.label }
+applications-action-save-label =
+ .value = { applications-action-save.label }
+applications-use-app-label =
+ .value = { applications-use-app.label }
+applications-open-inapp-label =
+ .value = { applications-open-inapp.label }
+applications-always-ask-label =
+ .value = { applications-always-ask.label }
+applications-use-app-default-label =
+ .value = { applications-use-app-default.label }
+applications-use-other-label =
+ .value = { applications-use-other.label }
+applications-use-os-default-label =
+ .value = { applications-use-os-default.label }
+
+##
+
+applications-handle-new-file-types-description = { -brand-short-name } ควรจะทำอะไรกับไฟล์อื่น?
+applications-save-for-new-types =
+ .label = บันทึกไฟล์
+ .accesskey = S
+applications-ask-before-handling =
+ .label = ถามว่าจะเปิดหรือบันทึกไฟล์
+ .accesskey = A
+drm-content-header = เนื้อหา Digital Rights Management (DRM)
+play-drm-content =
+ .label = เล่นเนื้อหาที่ถูกควบคุมโดย DRM
+ .accesskey = ล
+play-drm-content-learn-more = เรียนรู้เพิ่มเติม
+update-application-title = การอัปเดต { -brand-short-name }
+update-application-description = คง { -brand-short-name } ให้เป็นรุ่นล่าสุดเพื่อประสิทธิภาพ, เสถียรภาพ และความปลอดภัยที่ดีที่สุด
+# Variables:
+# $version (string) - Firefox version
+update-application-version = รุ่น { $version } <a data-l10n-name="learn-more">มีอะไรใหม่</a>
+update-history =
+ .label = แสดงประวัติการอัปเดต…
+ .accesskey = ส
+update-application-allow-description = อนุญาตให้ { -brand-short-name }
+update-application-auto =
+ .label = ติดตั้งการอัปเดตโดยอัตโนมัติ (แนะนำ)
+ .accesskey = ด
+update-application-check-choose =
+ .label = ตรวจสอบการอัปเดตแต่ให้คุณเลือกว่าจะติดตั้งการอัปเดตหรือไม่
+ .accesskey = ว
+update-application-manual =
+ .label = ไม่ตรวจสอบการอัปเดตเสมอ (ไม่แนะนำ)
+ .accesskey = ม
+update-application-background-enabled =
+ .label = เมื่อ { -brand-short-name } ไม่ได้ทำงาน
+ .accesskey = ม
+update-application-warning-cross-user-setting = การตั้งค่านี้จะนำไปใช้กับบัญชี Windows ทั้งหมด และโปรไฟล์ { -brand-short-name } ในขณะการติดตั้ง { -brand-short-name }
+update-application-use-service =
+ .label = ใช้บริการเบื้องหลังเพื่อติดตั้งการอัปเดต
+ .accesskey = ช
+update-application-suppress-prompts =
+ .label = แสดงการแจ้งเตือนการอัปเดตน้อยลง
+ .accesskey = n
+update-setting-write-failure-title2 = เกิดข้อผิดพลาดในการบันทึกการตั้งค่าการอัปเดต
+# Variables:
+# $path (string) - Path to the configuration file
+# The newlines between the main text and the line containing the path is
+# intentional so the path is easier to identify.
+update-setting-write-failure-message2 =
+ { -brand-short-name } พบข้อผิดพลาดและไม่ได้บันทึกการเปลี่ยนแปลงนี้ โปรดทราบว่าการเปลี่ยนการตั้งค่าการอัปเดตนี้จำเป็นต้องได้รับสิทธิอนุญาตให้เขียนไปยังไฟล์ด้านล่าง คุณหรือผู้ดูแลระบบอาจสามารถแก้ไขข้อผิดพลาดได้ด้วยการมอบสิทธิ์ให้กับกลุ่มผู้ใช้เพื่อให้สามารถควบคุมไฟล์นี้ได้อย่างเต็มที่
+
+ ไม่สามารถเขียนไปยังไฟล์: { $path }
+update-in-progress-title = กำลังอัปเดต
+update-in-progress-message = คุณต้องการให้ { -brand-short-name } ดำเนินการต่อกับการอัปเดตนี้หรือไม่?
+update-in-progress-ok-button = &ละทิ้ง
+# Continue is the cancel button so pressing escape or using a platform standard
+# method of closing the UI will not discard the update.
+update-in-progress-cancel-button = &ดำเนินการต่อ
+
+## General Section - Performance
+
+performance-title = ประสิทธิภาพ
+performance-use-recommended-settings-checkbox =
+ .label = ใช้การตั้งค่าประสิทธิภาพที่แนะนำ
+ .accesskey = ภ
+performance-use-recommended-settings-desc = การตั้งค่าเหล่านี้ถูกปรับให้เหมาะสมกับฮาร์ดแวร์และระบบปฏิบัติการของคอมพิวเตอร์ของคุณ
+performance-settings-learn-more = เรียนรู้เพิ่มเติม
+performance-allow-hw-accel =
+ .label = ใช้การเร่งความเร็วด้วยฮาร์ดแวร์เมื่อพร้อมใช้งาน
+ .accesskey = ง
+performance-limit-content-process-option = ขีดจำกัดโปรเซสเนื้อหา
+ .accesskey = ข
+performance-limit-content-process-enabled-desc = โปรเซสเนื้อหาที่เพิ่มขึ้นสามารถปรับปรุงประสิทธิภาพเมื่อใช้หลายแท็บ แต่จะใช้หน่วยความจำมากขึ้นเช่นกัน
+performance-limit-content-process-blocked-desc = การเปลี่ยนแปลงจำนวนโปรเซสเนื้อหาทำได้เฉพาะกับ { -brand-short-name } แบบมัลติโปรเซส <a data-l10n-name="learn-more">เรียนรู้วิธีตรวจสอบว่าการทำงานมัลติโปรเซสถูกเปิดใช้งานอยู่หรือไม่</a>
+# Variables:
+# $num (number) - Default value of the `dom.ipc.processCount` pref.
+performance-default-content-process-count =
+ .label = { $num } (ค่าเริ่มต้น)
+
+## General Section - Browsing
+
+browsing-title = การเรียกดู
+browsing-use-autoscroll =
+ .label = ใช้การเลื่อนอัตโนมัติ
+ .accesskey = ช
+browsing-use-smooth-scrolling =
+ .label = ใช้การเลื่อนแบบลื่นไหล
+ .accesskey = ก
+browsing-gtk-use-non-overlay-scrollbars =
+ .label = แสดงแถบเลื่อนเสมอ
+ .accesskey = o
+browsing-always-underline-links =
+ .label = ขีดเส้นใต้ลิงก์เสมอ
+ .accesskey = ข
+browsing-use-onscreen-keyboard =
+ .label = แสดงแป้นพิมพ์แบบสัมผัสเมื่อจำเป็น
+ .accesskey = ผ
+browsing-use-cursor-navigation =
+ .label = ใช้ปุ่มลูกศรเพื่อนำทางภายในหน้าเสมอ
+ .accesskey = ป
+browsing-use-full-keyboard-navigation =
+ .label = ใช้ปุ่มแท็บเพื่อย้ายโฟกัสไปมาระหว่างตัวควบคุมแบบฟอร์มและลิงก์
+ .accesskey = ท
+browsing-search-on-start-typing =
+ .label = ค้นหาข้อความเมื่อคุณเริ่มพิมพ์
+ .accesskey = ว
+browsing-picture-in-picture-toggle-enabled =
+ .label = เปิดใช้งานการควบคุมวิดีโอที่เล่นควบคู่
+ .accesskey = ป
+browsing-picture-in-picture-learn-more = เรียนรู้เพิ่มเติม
+browsing-media-control =
+ .label = ควบคุมสื่อผ่านแป้นพิมพ์ ชุดหูฟัง หรือส่วนติดต่อเสมือน
+ .accesskey = า
+browsing-media-control-learn-more = เรียนรู้เพิ่มเติม
+browsing-cfr-recommendations =
+ .label = แนะนำส่วนขยายขณะที่คุณเรียกดู
+ .accesskey = น
+browsing-cfr-features =
+ .label = แนะนำคุณลักษณะขณะที่คุณเรียกดู
+ .accesskey = น
+browsing-cfr-recommendations-learn-more = เรียนรู้เพิ่มเติม
+
+## General Section - Proxy
+
+network-settings-title = การตั้งค่าเครือข่าย
+network-proxy-connection-description = กำหนดค่าวิธีที่ { -brand-short-name } เชื่อมต่อกับอินเทอร์เน็ต
+network-proxy-connection-learn-more = เรียนรู้เพิ่มเติม
+network-proxy-connection-settings =
+ .label = การตั้งค่า…
+ .accesskey = ต
+
+## Home Section
+
+home-new-windows-tabs-header = หน้าต่างและแท็บใหม่
+home-new-windows-tabs-description2 = เลือกสิ่งที่คุณเห็นเมื่อคุณเปิดหน้าแรก, หน้าต่างใหม่ และแท็บใหม่ของคุณ
+
+## Home Section - Home Page Customization
+
+home-homepage-mode-label = หน้าแรกและหน้าต่างใหม่
+home-newtabs-mode-label = แท็บใหม่
+home-restore-defaults =
+ .label = เรียกคืนค่าเริ่มต้น
+ .accesskey = ร
+home-mode-choice-default-fx =
+ .label = { -firefox-home-brand-name } (ค่าเริ่มต้น)
+home-mode-choice-custom =
+ .label = URL ที่กำหนดเอง…
+home-mode-choice-blank =
+ .label = หน้าว่าง
+home-homepage-custom-url =
+ .placeholder = วาง URL…
+# This string has a special case for '1' and [other] (default). If necessary for
+# your language, you can add {$tabCount} to your translations and use the
+# standard CLDR forms, or only use the form for [other] if both strings should
+# be identical.
+use-current-pages =
+ .label =
+ { $tabCount ->
+ [1] ใช้หน้าปัจจุบัน
+ *[other] ใช้หน้าปัจจุบัน
+ }
+ .accesskey = ช
+choose-bookmark =
+ .label = ใช้ที่คั่นหน้า…
+ .accesskey = ท
+
+## Home Section - Firefox Home Content Customization
+
+home-prefs-content-header2 = เนื้อหา { -firefox-home-brand-name }
+home-prefs-content-description2 = เลือกเนื้อหาที่คุณต้องการบนหน้าจอ { -firefox-home-brand-name } ของคุณ
+home-prefs-search-header =
+ .label = การค้นหาเว็บ
+home-prefs-shortcuts-header =
+ .label = ทางลัด
+home-prefs-shortcuts-description = ไซต์ที่คุณบันทึกหรือเยี่ยมชม
+home-prefs-shortcuts-by-option-sponsored =
+ .label = ทางลัดที่ได้รับการสนับสนุน
+
+## Variables:
+## $provider (string) - Name of the corresponding content provider, e.g "Pocket".
+
+home-prefs-recommended-by-header =
+ .label = แนะนำโดย { $provider }
+home-prefs-recommended-by-description-new = เนื้อหาสุดพิเศษที่คัดสรรโดย { $provider } ซึ่งเป็นส่วนหนึ่งของตระกูล { -brand-product-name }
+
+##
+
+home-prefs-recommended-by-learn-more = วิธีการทำงาน
+home-prefs-recommended-by-option-sponsored-stories =
+ .label = เรื่องราวที่ได้รับการสนับสนุน
+home-prefs-recommended-by-option-recent-saves =
+ .label = แสดงบันทึกล่าสุด
+home-prefs-highlights-option-visited-pages =
+ .label = หน้าที่เยี่ยมชมแล้ว
+home-prefs-highlights-options-bookmarks =
+ .label = ที่คั่นหน้า
+home-prefs-highlights-option-most-recent-download =
+ .label = การดาวน์โหลดล่าสุด
+home-prefs-highlights-option-saved-to-pocket =
+ .label = หน้าที่บันทึกไว้ใน { -pocket-brand-name }
+home-prefs-recent-activity-header =
+ .label = กิจกรรมล่าสุด
+home-prefs-recent-activity-description = ไซต์และเนื้อหาล่าสุดที่คัดสรรมา
+# For the "Snippets" feature traditionally on about:home.
+# Alternative translation options: "Small Note" or something that
+# expresses the idea of "a small message, shortened from something else,
+# and non-essential but also not entirely trivial and useless.
+home-prefs-snippets-header =
+ .label = ส่วนย่อย
+home-prefs-snippets-description-new = เคล็ดลับและข่าวสารจาก { -vendor-short-name } และ { -brand-product-name }
+# Variables:
+# $num (number) - Number of rows displayed
+home-prefs-sections-rows-option =
+ .label = { $num } แถว
+
+## Search Section
+
+search-bar-header = แถบค้นหา
+search-bar-hidden =
+ .label = ใช้แถบที่อยู่สำหรับการค้นหาและการนำทาง
+search-bar-shown =
+ .label = เพิ่มแถบค้นหาในแถบเครื่องมือ
+search-engine-default-header = เครื่องมือค้นหาเริ่มต้น
+search-engine-default-desc-2 = นี่คือเครื่องมือค้นหาเริ่มต้นของคุณในแถบที่อยู่และแถบค้นหา คุณสามารถเปลี่ยนได้ตลอดเวลา
+search-engine-default-private-desc-2 = เลือกเครื่องมือค้นหาเริ่มต้นอื่นสำหรับเฉพาะหน้าต่างส่วนตัว
+search-separate-default-engine =
+ .label = ใช้เครื่องมือค้นหานี้ในหน้าต่างส่วนตัว
+ .accesskey = U
+search-suggestions-header = ข้อเสนอแนะการค้นหา
+search-suggestions-desc = เลือกว่าจะทำให้เครื่องมือค้นหาปรากฏขึ้นมาอย่างไร
+search-suggestions-option =
+ .label = ให้ข้อเสนอแนะการค้นหา
+ .accesskey = ห
+search-show-suggestions-option =
+ .label = แสดงข้อเสนอแนะการค้นหา
+ .accesskey = ส
+search-show-suggestions-url-bar-option =
+ .label = แสดงข้อเสนอแนะการค้นหาในผลลัพธ์ของแถบที่อยู่
+ .accesskey = ส
+# With this option enabled, on the search results page
+# the URL will be replaced by the search terms in the address bar
+# when using the current default search engine.
+search-show-search-term-option =
+ .label = แสดงคำค้นหาแทน URL บนหน้าผลลัพธ์ของเครื่องมือค้นหาเริ่มต้น
+# This string describes what the user will observe when the system
+# prioritizes search suggestions over browsing history in the results
+# that extend down from the address bar. In the original English string,
+# "ahead" refers to location (appearing most proximate to), not time
+# (appearing before).
+search-show-suggestions-above-history-option =
+ .label = แสดงข้อเสนอแนะการค้นหานำหน้าประวัติการเรียกดูในผลลัพธ์ของแถบที่อยู่
+search-show-suggestions-private-windows =
+ .label = แสดงคำแนะนำการค้นหาในหน้าต่างส่วนตัว
+suggestions-addressbar-settings-generic2 = เปลี่ยนการตั้งค่าข้อเสนอแนะจากแถบที่อยู่อื่น ๆ
+search-suggestions-cant-show = ข้อเสนอแนะการค้นหาจะไม่แสดงในผลลัพธ์ของแถบตำแหน่งที่ตั้งเนื่องจากคุณได้กำหนดค่า { -brand-short-name } ให้ไม่จดจำประวัติเสมอ
+search-one-click-header2 = ทางลัดการค้นหา
+search-one-click-desc = เลือกเครื่องมือค้นหาทางเลือกที่จะปรากฏด้านล่างแถบที่อยู่และแถบค้นหาเมื่อคุณเริ่มป้อนคำสำคัญ
+search-choose-engine-column =
+ .label = เครื่องมือค้นหา
+search-choose-keyword-column =
+ .label = คำสำคัญ
+search-restore-default =
+ .label = เรียกคืนเครื่องมือค้นหาเริ่มต้น
+ .accesskey = ร
+search-remove-engine =
+ .label = เอาออก
+ .accesskey = อ
+search-add-engine =
+ .label = เพิ่ม
+ .accesskey = พ
+search-find-more-link = ค้นหาเครื่องมือค้นหาเพิ่มเติม
+# This warning is displayed when the chosen keyword is already in use
+# ('Duplicate' is an adjective)
+search-keyword-warning-title = คำสำคัญซ้ำกัน
+# Variables:
+# $name (string) - Name of a search engine.
+search-keyword-warning-engine = คุณได้เลือกคำสำคัญที่มีการใช้งานอยู่โดย “{ $name }” โปรดเลือกคำสำคัญอื่น
+search-keyword-warning-bookmark = คุณได้เลือกคำสำคัญที่มีการใช้งานอยู่โดยที่คั่นหน้า โปรดเลือกคำสำคัญอื่น
+
+## Containers Section
+
+containers-back-button2 =
+ .aria-label = กลับไปที่การตั้งค่า
+containers-header = แท็บแยกข้อมูล
+containers-add-button =
+ .label = เพิ่มการแยกข้อมูลใหม่
+ .accesskey = พ
+containers-new-tab-check =
+ .label = เลือกการแยกข้อมูลสำหรับแต่ละแท็บใหม่
+ .accesskey = ล
+containers-settings-button =
+ .label = การตั้งค่า
+containers-remove-button =
+ .label = เอาออก
+
+## Firefox account - Signed out. Note that "Sync" and "Firefox account" are now
+## more discrete ("signed in" no longer means "and sync is connected").
+
+sync-signedout-caption = นำเว็บของคุณไปกับคุณ
+sync-signedout-description2 = ประสานที่คั่นหน้า, ประวัติ, แท็บ, รหัสผ่าน, ส่วนเสริม และการตั้งค่าระหว่างอุปกรณ์ทั้งหมดของคุณ
+sync-signedout-account-signin3 =
+ .label = ลงชื่อเข้าเพื่อซิงค์…
+ .accesskey = ข
+# This message contains two links and two icon images.
+# `<img data-l10n-name="android-icon"/>` - Android logo icon
+# `<a data-l10n-name="android-link">` - Link to Android Download
+# `<img data-l10n-name="ios-icon">` - iOS logo icon
+# `<a data-l10n-name="ios-link">` - Link to iOS Download
+#
+# They can be moved within the sentence as needed to adapt
+# to your language, but should not be changed or translated.
+sync-mobile-promo = ดาวน์โหลด Firefox สำหรับ <img data-l10n-name="android-icon"/> <a data-l10n-name="android-link">Android</a> หรือ <img data-l10n-name="ios-icon"/> <a data-l10n-name="ios-link">iOS</a> เพื่อซิงค์กับอุปกรณ์มือถือของคุณ
+
+## Firefox account - Signed in
+
+sync-profile-picture =
+ .tooltiptext = เปลี่ยนรูปโปรไฟล์
+sync-sign-out =
+ .label = ลงชื่อออก…
+ .accesskey = g
+sync-manage-account = จัดการบัญชี
+ .accesskey = จ
+
+## Variables
+## $email (string) - Email used for Firefox account
+
+sync-signedin-unverified = { $email } ยังไม่ได้รับการยืนยัน
+sync-signedin-login-failure = โปรดลงชื่อเข้าเพื่อเชื่อมต่อ { $email } ใหม่
+
+##
+
+sync-resend-verification =
+ .label = ส่งการยืนยันใหม่
+ .accesskey = ส
+sync-verify-account =
+ .label = ยืนยันบัญชี
+ .accesskey = ย
+sync-remove-account =
+ .label = เอาบัญชีออก
+ .accesskey = อ
+sync-sign-in =
+ .label = ลงชื่อเข้า
+ .accesskey = ง
+
+## Sync section - enabling or disabling sync.
+
+prefs-syncing-on = การซิงค์: เปิด
+prefs-syncing-off = การซิงค์: ปิด
+prefs-sync-turn-on-syncing =
+ .label = เปิดการซิงค์…
+ .accesskey = ซ
+prefs-sync-offer-setup-label2 = ประสานที่คั่นหน้า, ประวัติ, แท็บ, รหัสผ่าน, ส่วนเสริม และการตั้งค่าระหว่างอุปกรณ์ทั้งหมดของคุณ
+prefs-sync-now =
+ .labelnotsyncing = ซิงค์ตอนนี้
+ .accesskeynotsyncing = N
+ .labelsyncing = กำลังซิงค์…
+prefs-sync-now-button =
+ .label = ซิงค์ตอนนี้
+ .accesskey = N
+prefs-syncing-button =
+ .label = กำลังซิงค์…
+
+## The list of things currently syncing.
+
+sync-syncing-across-devices-heading = คุณกำลังซิงค์รายการเหล่านี้กับอุปกรณ์ที่เชื่อมต่อทั้งหมดของคุณ:
+sync-currently-syncing-bookmarks = ที่คั่นหน้า
+sync-currently-syncing-history = ประวัติ
+sync-currently-syncing-tabs = แท็บที่เปิด
+sync-currently-syncing-logins-passwords = การเข้าสู่ระบบและรหัสผ่าน
+sync-currently-syncing-passwords = รหัสผ่าน
+sync-currently-syncing-addresses = ที่อยู่
+sync-currently-syncing-creditcards = บัตรเครดิต
+sync-currently-syncing-payment-methods = วิธีการชำระเงิน
+sync-currently-syncing-addons = ส่วนเสริม
+sync-currently-syncing-settings = การตั้งค่า
+sync-change-options =
+ .label = เปลี่ยน…
+ .accesskey = ป
+
+## The "Choose what to sync" dialog.
+
+sync-choose-what-to-sync-dialog3 =
+ .title = เลือกสิ่งที่จะซิงค์
+ .style = min-width: 36em;
+ .buttonlabelaccept = บันทึกการเปลี่ยนแปลง
+ .buttonaccesskeyaccept = S
+ .buttonlabelextra2 = ตัดการเชื่อมต่อ…
+ .buttonaccesskeyextra2 = D
+sync-choose-dialog-subtitle = การเปลี่ยนรายการที่จะซิงค์จะมีผลกับอุปกรณ์ที่เชื่อมต่อทั้งหมดของคุณ
+sync-engine-bookmarks =
+ .label = ที่คั่นหน้า
+ .accesskey = ท
+sync-engine-history =
+ .label = ประวัติ
+ .accesskey = ป
+sync-engine-tabs =
+ .label = แท็บที่เปิดอยู่
+ .tooltiptext = รายการสิ่งที่เปิดอยู่ในอุปกรณ์ที่ซิงค์ทั้งหมด
+ .accesskey = บ
+sync-engine-logins-passwords =
+ .label = การเข้าสู่ระบบและรหัสผ่าน
+ .tooltiptext = ชื่อผู้ใช้และรหัสผ่านที่คุณบันทึกไว้
+ .accesskey = L
+sync-engine-passwords =
+ .label = รหัสผ่าน
+ .tooltiptext = รหัสผ่านที่คุณบันทึกไว้
+ .accesskey = ร
+sync-engine-addresses =
+ .label = ที่อยู่
+ .tooltiptext = ที่อยู่ไปรษณีย์ที่คุณได้บันทึกไว้ (เดสก์ท็อปเท่านั้น)
+ .accesskey = อ
+sync-engine-creditcards =
+ .label = บัตรเครดิต
+ .tooltiptext = ชื่อ, หมายเลข และวันหมดอายุ (เดสก์ท็อปเท่านั้น)
+ .accesskey = ต
+sync-engine-payment-methods2 =
+ .label = วิธีการชำระเงิน
+ .tooltiptext = ชื่อ หมายเลขบัตร และวันหมดอายุ
+ .accesskey = ว
+sync-engine-addons =
+ .label = ส่วนเสริม
+ .tooltiptext = ส่วนขยายและชุดรูปแบบสำหรับ Firefox เดสก์ท็อป
+ .accesskey = ส
+sync-engine-settings =
+ .label = การตั้งค่า
+ .tooltiptext = การตั้งค่าทั่วไป ความเป็นส่วนตัว และความปลอดภัยที่คุณเปลี่ยน
+ .accesskey = ต
+
+## The device name controls.
+
+sync-device-name-header = ชื่ออุปกรณ์
+sync-device-name-change =
+ .label = เปลี่ยนชื่ออุปกรณ์…
+ .accesskey = ป
+sync-device-name-cancel =
+ .label = ยกเลิก
+ .accesskey = ย
+sync-device-name-save =
+ .label = บันทึก
+ .accesskey = บ
+sync-connect-another-device = เชื่อมต่ออุปกรณ์อื่น
+
+## These strings are shown in a desktop notification after the
+## user requests we resend a verification email.
+
+sync-verification-sent-title = ส่งการยืนยันแล้ว
+# Variables:
+# $email (String): Email address of user's Firefox account.
+sync-verification-sent-body = ส่งลิงก์ยืนยันไปยัง { $email } แล้ว
+sync-verification-not-sent-title = ไม่สามารถส่งการยืนยัน
+sync-verification-not-sent-body = เราไม่สามารถส่งจดหมายยืนยันได้ในตอนนี้ โปรดลองอีกครั้งในภายหลัง
+
+## Privacy Section
+
+privacy-header = ความเป็นส่วนตัวเบราว์เซอร์
+
+## Privacy Section - Logins and Passwords
+
+# The search keyword isn't shown to users but is used to find relevant settings in about:preferences.
+pane-privacy-logins-and-passwords-header = การเข้าสู่ระบบและรหัสผ่าน
+ .searchkeywords = { -lockwise-brand-short-name }
+# Checkbox to control whether UI is shown to users to save or fill logins/passwords.
+forms-ask-to-save-logins =
+ .label = ถามเพื่อบันทึกการเข้าสู่ระบบและรหัสผ่านสำหรับเว็บไซต์
+ .accesskey = ถ
+
+## Privacy Section - Passwords
+
+# "Logins" is the former term for "Passwords". Users should find password settings
+# by searching for the former term "logins". It's not displayed in the UI.
+pane-privacy-passwords-header = รหัสผ่าน
+ .searchkeywords = การเข้าสู่ระบบ
+# Checkbox to control whether UI is shown to users to save or fill logins/passwords.
+forms-ask-to-save-passwords =
+ .label = ถามว่าจะบันทึกรหัสผ่านหรือไม่
+ .accesskey = ถ
+forms-exceptions =
+ .label = ข้อยกเว้น…
+ .accesskey = อ
+forms-generate-passwords =
+ .label = แนะนำและสร้างรหัสผ่านที่คาดเดายาก
+ .accesskey = แ
+forms-suggest-passwords =
+ .label = แนะนำรหัสผ่านที่คาดเดายาก
+ .accesskey = น
+forms-breach-alerts =
+ .label = แสดงการแจ้งเตือนเกี่ยวกับรหัสผ่านสำหรับเว็บไซต์ที่มีการรั่วไหล
+ .accesskey = b
+forms-breach-alerts-learn-more-link = เรียนรู้เพิ่มเติม
+preferences-relay-integration-checkbox =
+ .label = แนะนำตัวปกปิดอีเมล { -relay-brand-name } เพื่อปกป้องที่อยู่อีเมลของคุณ
+preferences-relay-integration-checkbox2 =
+ .label = แนะนำตัวปกปิดอีเมล { -relay-brand-name } เพื่อปกป้องที่อยู่อีเมลของคุณ
+ .accesskey = แ
+relay-integration-learn-more-link = เรียนรู้เพิ่มเติม
+# Checkbox which controls filling saved logins into fields automatically when they appear, in some cases without user interaction.
+forms-fill-logins-and-passwords =
+ .label = กรอกการเข้าสู่ระบบและรหัสผ่านอัตโนมัติ
+ .accesskey = ร
+forms-saved-logins =
+ .label = การเข้าสู่ระบบที่บันทึกไว้…
+ .accesskey = ก
+# Checkbox which controls filling saved logins into fields automatically when they appear, in some cases without user interaction.
+forms-fill-usernames-and-passwords =
+ .label = เติมชื่อผู้ใช้และรหัสผ่านโดยอัตโนมัติ
+ .accesskey = ต
+forms-saved-passwords =
+ .label = รหัสผ่านที่บันทึกไว้
+ .accesskey = บ
+forms-primary-pw-use =
+ .label = ใช้รหัสผ่านหลัก
+ .accesskey = ช
+forms-primary-pw-learn-more-link = เรียนรู้เพิ่มเติม
+# This string uses the former name of the Primary Password feature
+# ("Master Password" in English) so that the preferences can be found
+# when searching for the old name. The accesskey is unused.
+forms-master-pw-change =
+ .label = เปลี่ยนรหัสผ่านหลัก…
+ .accesskey = ผ
+forms-primary-pw-change =
+ .label = เปลี่ยนรหัสผ่านหลัก…
+ .accesskey = ล
+# Leave this message empty if the translation for "Primary Password" matches
+# "Master Password" in your language. If you're editing the FTL file directly,
+# use { "" } as the value.
+forms-primary-pw-former-name = { "" }
+forms-primary-pw-fips-title = คุณกำลังอยู่ในโหมด FIPS ซึ่ง FIPS จำเป็นต้องมีรหัสผ่านหลักที่ไม่ว่างเปล่า
+forms-master-pw-fips-desc = การเปลี่ยนรหัสผ่านล้มเหลว
+forms-windows-sso =
+ .label = อนุญาต Windows single sign-on สำหรับบัญชีที่ทำงานและโรงเรียนของ Microsoft
+forms-windows-sso-learn-more-link = เรียนรู้เพิ่มเติม
+forms-windows-sso-desc = จัดการบัญชีในการตั้งค่าอุปกรณ์ของคุณ
+windows-passkey-settings-label = จัดการพาสคีย์ในการตั้งค่าระบบ
+
+## OS Authentication dialog
+
+# This message can be seen by trying to add a Primary Password.
+primary-password-os-auth-dialog-message-win = หากต้องการสร้างรหัสผ่านหลัก ให้ป้อนข้อมูลประจำตัวการเข้าสู่ระบบ Windows ของคุณ ซึ่งจะช่วยปกป้องความปลอดภัยให้กับบัญชีต่าง ๆ ของคุณ
+# This message can be seen by trying to add a Primary Password.
+# The macOS strings are preceded by the operating system with "Firefox is trying to "
+# and includes subtitle of "Enter password for the user "xxx" to allow this." These
+# notes are only valid for English. Please test in your locale.
+primary-password-os-auth-dialog-message-macosx = สร้างรหัสผ่านหลัก
+master-password-os-auth-dialog-caption = { -brand-full-name }
+
+## Privacy section - Autofill
+
+pane-privacy-autofill-header = การเติมอัตโนมัติ
+autofill-addresses-checkbox = บันทึกและเติมที่อยู่อัตโนมัติ
+ .accesskey = ท
+autofill-saved-addresses-button = ที่อยู่ที่บันทึกไว้
+ .accesskey = บ
+autofill-payment-methods-checkbox-message = บันทึกและเติมวิธีการชำระเงิน
+ .accesskey = ว
+autofill-payment-methods-checkbox-submessage = รวมบัตรเครดิตและเดบิตด้วย
+ .accesskey = ร
+autofill-saved-payment-methods-button = วิธีการชำระเงินที่บันทึกไว้
+ .accesskey = ไ
+autofill-reauth-checkbox =
+ { PLATFORM() ->
+ [macos] ต้องยืนยันตัวตนกับ macOS เพื่อเติมและแก้ไขวิธีการชำระเงิน
+ [windows] ต้องยืนยันตัวตนกับ Windows เพื่อเติมและแก้ไขวิธีการชำระเงิน
+ [linux] ต้องยืนยันตัวตนกับ Linux เพื่อเติมและแก้ไขวิธีการชำระเงิน
+ *[other] ต้องยืนยันตัวตนเพื่อเติมและแก้ไขวิธีการชำระเงิน
+ }
+ .accesskey = ต
+
+## Privacy Section - History
+
+history-header = ประวัติ
+# This label is followed, on the same line, by a dropdown list of options
+# (Remember history, etc.).
+# In English it visually creates a full sentence, e.g.
+# "Firefox will" + "Remember history".
+#
+# If this doesn't work for your language, you can translate this message:
+# - Simply as "Firefox", moving the verb into each option.
+# This will result in "Firefox" + "Will remember history", etc.
+# - As a stand-alone message, for example "Firefox history settings:".
+history-remember-label = { -brand-short-name } จะ
+ .accesskey = จ
+history-remember-option-all =
+ .label = จดจำประวัติ
+history-remember-option-never =
+ .label = ไม่จดจำประวัติเสมอ
+history-remember-option-custom =
+ .label = ใช้การตั้งค่าที่กำหนดเองสำหรับประวัติ
+history-remember-description = { -brand-short-name } จะจดจำประวัติการเรียกดู, การดาวน์โหลด, แบบฟอร์ม และการค้นหาของคุณ
+history-dontremember-description = { -brand-short-name } จะใช้การตั้งค่าเดียวกับการเรียกดูแบบส่วนตัวและจะไม่จดจำประวัติใด ๆ ขณะที่คุณเรียกดู
+history-private-browsing-permanent =
+ .label = ใช้โหมดการเรียกดูแบบส่วนตัวเสมอ
+ .accesskey = ช
+history-remember-browser-option =
+ .label = จดจำประวัติการเรียกดูและการดาวน์โหลด
+ .accesskey = จ
+history-remember-search-option =
+ .label = จดจำประวัติการค้นหาและแบบฟอร์ม
+ .accesskey = ด
+history-clear-on-close-option =
+ .label = ล้างประวัติเมื่อ { -brand-short-name } ปิด
+ .accesskey = ล
+history-clear-on-close-settings =
+ .label = การตั้งค่า…
+ .accesskey = ก
+history-clear-button =
+ .label = ล้างประวัติ…
+ .accesskey = ง
+
+## Privacy Section - Site Data
+
+sitedata-header = คุกกี้และข้อมูลไซต์
+sitedata-total-size-calculating = กำลังคำนวณขนาดข้อมูลไซต์และแคช…
+# Variables:
+# $value (number) - Value of the unit (for example: 4.6, 500)
+# $unit (string) - Name of the unit (for example: "bytes", "KB")
+sitedata-total-size = คุกกี้, ข้อมูลไซต์ และแคชที่จัดเก็บไว้ของคุณใช้พื้นที่ดิสก์ไป { $value } { $unit }
+sitedata-learn-more = เรียนรู้เพิ่มเติม
+sitedata-delete-on-close =
+ .label = ลบคุกกี้และข้อมูลไซต์เมื่อ { -brand-short-name } ถูกปิด
+ .accesskey = บ
+sitedata-delete-on-close-private-browsing = ในโหมดการเรียกดูแบบส่วนตัวแบบถาวร คุกกี้และข้อมูลไซต์จะถูกล้างทุกครั้งเมื่อปิด { -brand-short-name }
+sitedata-delete-on-close-private-browsing2 = ตามการตั้งค่าประวัติของคุณ { -brand-short-name } จะลบคุกกี้และข้อมูลไซต์ออกจากวาระของคุณเมื่อปิดเบราว์เซอร์
+sitedata-allow-cookies-option =
+ .label = ยอมรับคุกกี้และข้อมูลไซต์
+ .accesskey = ย
+sitedata-disallow-cookies-option =
+ .label = ปิดกั้นคุกกี้และข้อมูลไซต์
+ .accesskey = ป
+# This label means 'type of content that is blocked', and is followed by a drop-down list with content types below.
+# The list items are the strings named sitedata-block-*-option*.
+sitedata-block-desc = ชนิดที่ถูกปิดกั้น
+ .accesskey = ช
+sitedata-option-block-cross-site-trackers =
+ .label = ตัวติดตามข้ามไซต์
+sitedata-option-block-cross-site-tracking-cookies =
+ .label = คุกกี้ติดตามข้ามไซต์
+sitedata-option-block-cross-site-cookies =
+ .label = คุกกี้ติดตามข้ามไซต์ และคัดแยกคุกกี้ข้ามไซต์อื่นๆ
+sitedata-option-block-unvisited =
+ .label = คุกกี้จากเว็บไซต์ที่ไม่ได้เยี่ยมชม
+sitedata-option-block-all-cross-site-cookies =
+ .label = คุกกี้ข้ามไซต์ทั้งหมด (อาจส่งผลให้เว็บไซต์ไม่สมบูรณ์)
+sitedata-option-block-all =
+ .label = คุกกี้ทั้งหมด (จะส่งผลให้เว็บไซต์ไม่สมบูรณ์)
+sitedata-clear =
+ .label = ล้างข้อมูล…
+ .accesskey = ล
+sitedata-settings =
+ .label = จัดการข้อมูล…
+ .accesskey = จ
+sitedata-cookies-exceptions =
+ .label = จัดการข้อยกเว้น…
+ .accesskey = ข
+
+## Privacy Section - Cookie Banner Handling
+
+cookie-banner-handling-header = การลดแบนเนอร์คุกกี้
+cookie-banner-handling-description = { -brand-short-name } จะพยายามปฏิเสธคำขอคุกกี้บนไซต์ที่รองรับโดยอัตโนมัติ
+
+## Privacy Section - Cookie Banner Blocking
+
+cookie-banner-blocker-header = ตัวปิดกั้นแบนเนอร์คุกกี้
+cookie-banner-blocker-description = เมื่อมีไซต์ขอใช้คุกกี้ในโหมดการเรียกดูแบบส่วนตัว { -brand-short-name } จะปฏิเสธให้คุณโดยอัตโนมัติ ใช้ได้กับไซต์ที่รองรับเท่านั้น
+cookie-banner-learn-more = เรียนรู้เพิ่มเติม
+forms-handle-cookie-banners =
+ .label = ลดแบนเนอร์คุกกี้
+cookie-banner-blocker-checkbox-label =
+ .label = ปฏิเสธแบนเนอร์คุกกี้โดยอัตโนมัติ
+
+## Privacy Section - Address Bar
+
+addressbar-header = แถบที่อยู่
+addressbar-suggest = เมื่อใช้แถบที่อยู่ เสนอแนะ
+addressbar-locbar-history-option =
+ .label = ประวัติการเรียกดู
+ .accesskey = ว
+addressbar-locbar-bookmarks-option =
+ .label = ที่คั่นหน้า
+ .accesskey = ท
+addressbar-locbar-clipboard-option =
+ .label = คลิปบอร์ด
+ .accesskey = C
+addressbar-locbar-openpage-option =
+ .label = แท็บที่เปิดอยู่
+ .accesskey = บ
+# Shortcuts refers to the shortcut tiles on the new tab page, previously known as top sites. Translation should be consistent.
+addressbar-locbar-shortcuts-option =
+ .label = ทางลัด
+ .accesskey = ท
+addressbar-locbar-topsites-option =
+ .label = ไซต์เด่น
+ .accesskey = ด
+addressbar-locbar-engines-option =
+ .label = เครื่องมือค้นหา
+ .accesskey = a
+addressbar-locbar-quickactions-option =
+ .label = คำสั่งด่วน
+ .accesskey = ด
+addressbar-suggestions-settings = เปลี่ยนการกำหนดลักษณะสำหรับข้อเสนอแนะของเครื่องมือค้นหา
+addressbar-locbar-showrecentsearches-option =
+ .label = แสดงการค้นหาล่าสุด
+ .accesskey = ล
+addressbar-quickactions-learn-more = เรียนรู้เพิ่มเติม
+
+## Privacy Section - Content Blocking
+
+content-blocking-enhanced-tracking-protection = การป้องกันการติดตามแบบพิเศษ
+content-blocking-section-top-level-description = ตัวติดตามจะติดตามคุณทางออนไลน์เพื่อรวบรวมข้อมูลเกี่ยวกับพฤติกรรมการค้นหาและความสนใจของคุณ { -brand-short-name } ปิดกั้นตัวติดตามและสคริปต์ที่เป็นอันตรายอื่น ๆ จำนวนมาก
+content-blocking-learn-more = เรียนรู้เพิ่มเติม
+content-blocking-fpi-incompatibility-warning = คุณกำลังใช้ First Party Isolation (FPI) ซึ่งจะเขียนทับการตั้งค่าคุกกี้บางอย่างของ { -brand-short-name }
+# There is no need to translate "Resist Fingerprinting (RFP)". This is a
+# feature that can only be enabled via about:config, and it's not exposed to
+# standard users (e.g. via Settings).
+content-blocking-rfp-incompatibility-warning = คุณกำลังใช้ Resist Fingerprinting (RFP) ซึ่งจะแทนที่การตั้งค่าการป้องกันการตรวจลายนิ้วมือของ { -brand-short-name } บางส่วน ซึ่งอาจทำให้บางไซต์ใช้งานไม่ได้
+
+## These strings are used to define the different levels of
+## Enhanced Tracking Protection.
+
+# "Standard" in this case is an adjective, meaning "default" or "normal".
+enhanced-tracking-protection-setting-standard =
+ .label = มาตรฐาน
+ .accesskey = ม
+enhanced-tracking-protection-setting-strict =
+ .label = เข้มงวด
+ .accesskey = ข
+enhanced-tracking-protection-setting-custom =
+ .label = กำหนดเอง
+ .accesskey = ก
+
+##
+
+content-blocking-etp-standard-desc = การป้องกันและประสิทธิภาพแบบสมดุล หน้าเว็บจะโหลดเป็นปกติ
+content-blocking-etp-strict-desc = การป้องกันที่แกร่งขึ้น แต่อาจทำให้บางไซต์หรือเนื้อหาหยุดทำงานได้
+content-blocking-etp-custom-desc = เลือกตัวติดตามหรือสคริปต์ที่ต้องการปิดกั้น
+content-blocking-etp-blocking-desc = { -brand-short-name } จะปิดกั้นสิ่งต่อไปนี้:
+content-blocking-private-windows = ตัวติดตามเนื้อหาในหน้าต่างส่วนตัว
+content-blocking-cross-site-cookies-in-all-windows2 = คุกกี้แบบข้ามไซต์ในทุกหน้าต่าง
+content-blocking-cross-site-tracking-cookies = คุกกี้ติดตามข้ามไซต์
+content-blocking-all-cross-site-cookies-private-windows = คุกกี้แบบข้ามไซต์ในหน้าต่างส่วนตัว
+content-blocking-cross-site-tracking-cookies-plus-isolate = คุกกี้ติดตามข้ามไซต์ และคัดแยกคุกกี้ที่เหลืออยู่
+content-blocking-social-media-trackers = ตัวติดตามสื่อสังคมออนไลน์
+content-blocking-all-cookies = คุกกี้ทั้งหมด
+content-blocking-unvisited-cookies = คุกกี้จากไซต์ที่ไม่ได้เยี่ยมชม
+content-blocking-all-windows-tracking-content = ตัวติดตามเนื้อหาในทุกหน้าต่าง
+content-blocking-all-cross-site-cookies = คุกกี้ข้ามไซต์ทั้งหมด
+content-blocking-cryptominers = ตัวขุดเหรียญดิจิทัล
+content-blocking-fingerprinters = ลายนิ้วมือดิจิทัล
+# The known fingerprinters are those that are known for collecting browser fingerprints from user devices. And
+# the suspected fingerprinters are those that we are uncertain about browser fingerprinting activities. But they could
+# possibly acquire browser fingerprints because of the behavior on accessing APIs that expose browser fingerprints.
+content-blocking-known-and-suspected-fingerprinters = ลายนิ้วมือดิจิทัลที่รู้จักและต้องสงสัย
+
+# The tcp-rollout strings are no longer used for the rollout but for tcp-by-default in the standard section
+
+# "Contains" here means "isolates", "limits".
+content-blocking-etp-standard-tcp-rollout-description = การป้องกันคุกกี้ทั้งหมดประกอบด้วยคุกกี้สำหรับไซต์ที่คุณเยี่ยมชม ดังนั้นตัวติดตามจึงไม่สามารถใช้คุกกี้เหล่านี้เพื่อติดตามคุณบนไซต์ต่าง ๆ ได้
+content-blocking-etp-standard-tcp-rollout-learn-more = เรียนรู้เพิ่มเติม
+content-blocking-etp-standard-tcp-title = มาพร้อมกับการป้องกันคุกกี้แบบทั้งหมด คุณลักษณะความเป็นส่วนตัวที่ทรงพลังที่สุดของเรา
+content-blocking-warning-title = ระวัง!
+content-blocking-and-isolating-etp-warning-description-2 = การตั้งค่านี้อาจส่งผลให้บางเว็บไซต์ไม่แสดงผลเนื้อหาหรือไม่ทำงานอย่างถูกต้อง หากไซต์ดูเหมือนจะพัง คุณอาจต้องปิดการป้องกันการติดตามสำหรับไซต์นั้นเพื่อโหลดเนื้อหาทั้งหมด
+content-blocking-warning-learn-how = เรียนรู้วิธี
+content-blocking-reload-description = คุณจะต้องโหลดแท็บของคุณใหม่เพื่อใช้การเปลี่ยนแปลงเหล่านี้
+content-blocking-reload-tabs-button =
+ .label = โหลดแท็บทั้งหมดใหม่
+ .accesskey = ล
+content-blocking-tracking-content-label =
+ .label = ตัวติดตามเนื้อหา
+ .accesskey = T
+content-blocking-tracking-protection-option-all-windows =
+ .label = ในหน้าต่างทั้งหมด
+ .accesskey = น
+content-blocking-option-private =
+ .label = เฉพาะในหน้าต่างส่วนตัว
+ .accesskey = พ
+content-blocking-tracking-protection-change-block-list = เปลี่ยนรายการปิดกั้น
+content-blocking-cookies-label =
+ .label = คุกกี้
+ .accesskey = ค
+content-blocking-expand-section =
+ .tooltiptext = ข้อมูลเพิ่มเติม
+# Cryptomining refers to using scripts on websites that can use a computer’s resources to mine cryptocurrency without a user’s knowledge.
+content-blocking-cryptominers-label =
+ .label = ตัวขุดเหรียญดิจิทัล
+ .accesskey = y
+# Browser fingerprinting is a method of tracking users by the configuration and settings information (their "digital fingerprint")
+# that is visible to websites they browse, rather than traditional tracking methods such as IP addresses and unique cookies.
+content-blocking-fingerprinters-label =
+ .label = ลายนิ้วมือดิจิทัล
+ .accesskey = F
+# Browser fingerprinting is a method of tracking users by the configuration and settings information (their "digital fingerprint")
+# that is visible to websites they browse, rather than traditional tracking methods such as IP addresses and unique cookies.
+#
+# The known fingerprinters are those that are known for collecting browser fingerprints from user devices.
+content-blocking-known-fingerprinters-label =
+ .label = ลายนิ้วมือดิจิทัลที่รู้จัก
+ .accesskey = ร
+# The suspected fingerprinters are those that we are uncertain about browser fingerprinting activities. But they could
+# possibly acquire browser fingerprints because of the behavior on accessing APIs that expose browser fingerprints.
+content-blocking-suspected-fingerprinters-label =
+ .label = ลายนิ้วมือดิจิทัลที่ต้องสงสัย
+ .accesskey = ส
+
+## Privacy Section - Tracking
+
+tracking-manage-exceptions =
+ .label = จัดการข้อยกเว้น…
+ .accesskey = จ
+
+## Privacy Section - Permissions
+
+permissions-header = สิทธิอนุญาต
+permissions-location = ตำแหน่งที่ตั้ง
+permissions-location-settings =
+ .label = การตั้งค่า…
+ .accesskey = ต
+permissions-xr = ความจริงเสมือน
+permissions-xr-settings =
+ .label = การตั้งค่า…
+ .accesskey = ก
+permissions-camera = กล้อง
+permissions-camera-settings =
+ .label = การตั้งค่า…
+ .accesskey = ก
+permissions-microphone = ไมโครโฟน
+permissions-microphone-settings =
+ .label = การตั้งค่า…
+ .accesskey = ค
+# Short form for "the act of choosing sound output devices and redirecting audio to the chosen devices".
+permissions-speaker = การเลือกลำโพง
+permissions-speaker-settings =
+ .label = การตั้งค่า…
+ .accesskey = ต
+permissions-notification = การแจ้งเตือน
+permissions-notification-settings =
+ .label = การตั้งค่า…
+ .accesskey = ร
+permissions-notification-link = เรียนรู้เพิ่มเติม
+permissions-notification-pause =
+ .label = หยุดการแจ้งเตือนชั่วคราวจนกระทั่ง { -brand-short-name } เริ่มการทำงานใหม่
+ .accesskey = ห
+permissions-autoplay = การเล่นอัตโนมัติ
+permissions-autoplay-settings =
+ .label = การตั้งค่า…
+ .accesskey = t
+permissions-block-popups =
+ .label = ปิดกั้นหน้าต่างป๊อปอัป
+ .accesskey = ป
+# "popup" is a misspelling that is more popular than the correct spelling of
+# "pop-up" so it's included as a search keyword, not displayed in the UI.
+permissions-block-popups-exceptions-button =
+ .label = ข้อยกเว้น…
+ .accesskey = ข
+ .searchkeywords = ป๊อปอัป
+permissions-addon-install-warning =
+ .label = เตือนคุณเมื่อเว็บไซต์พยายามจะติดตั้งส่วนเสริม
+ .accesskey = ต
+permissions-addon-exceptions =
+ .label = ข้อยกเว้น…
+ .accesskey = ข
+
+## Privacy Section - Data Collection
+
+collection-header = การเก็บรวบรวมและใช้ข้อมูล { -brand-short-name }
+collection-header2 = การเก็บรวบรวมและใช้ข้อมูล { -brand-short-name }
+ .searchkeywords = การวัดและส่งข้อมูลทางไกล
+collection-description = เรามุ่งมั่นที่จะให้ทางเลือกกับคุณและเก็บรวบรวมเฉพาะสิ่งที่เราจำเป็นต้องให้บริการและปรับปรุง { -brand-short-name } สำหรับทุกคน เราขออนุญาตก่อนที่จะรับข้อมูลส่วนบุคคลเสมอ
+collection-privacy-notice = ข้อกำหนดความเป็นส่วนตัว
+collection-health-report-telemetry-disabled = คุณจะไม่อนุญาตให้ { -vendor-short-name } เก็บข้อมูลทางเทคนิคและการโต้ตอบอีกต่อไป ข้อมูลที่ผ่านมาทั้งหมดจะถูกลบภายใน 30 วัน
+collection-health-report-telemetry-disabled-link = เรียนรู้เพิ่มเติม
+collection-health-report =
+ .label = อนุญาตให้ { -brand-short-name } ส่งข้อมูลทางเทคนิคและการโต้ตอบไปยัง { -vendor-short-name }
+ .accesskey = อ
+collection-health-report-link = เรียนรู้เพิ่มเติม
+collection-studies =
+ .label = อนุญาตให้ { -brand-short-name } ติดตั้งและเรียกใช้การศึกษา
+collection-studies-link = ดูการศึกษาของ { -brand-short-name }
+addon-recommendations =
+ .label = อนุญาตให้ { -brand-short-name } สร้างคำแนะนำส่วนขยายส่วนบุคคล
+addon-recommendations-link = เรียนรู้เพิ่มเติม
+# This message is displayed above disabled data sharing options in developer builds
+# or builds with no Telemetry support available.
+collection-health-report-disabled = การรายงานข้อมูลถูกปิดใช้งานสำหรับการกำหนดค่าการสร้างนี้
+collection-backlogged-crash-reports-with-link = อนุญาตให้ { -brand-short-name } ส่งรายงานข้อขัดข้องในชื่อของคุณ <a data-l10n-name="crash-reports-link">เรียนรู้เพิ่มเติม</a>
+ .accesskey = ข
+privacy-segmentation-section-header = คุณลักษณะใหม่ที่จะทำให้การท่องเว็บของคุณดีขึ้น
+privacy-segmentation-section-description = เมื่อเรานำเสนอคุณลักษณะที่ใช้ข้อมูลของคุณเพื่อมอบประสบการณ์ที่เป็นส่วนตัวมากขึ้น:
+privacy-segmentation-radio-off =
+ .label = ใช้คำแนะนำจาก { -brand-product-name }
+privacy-segmentation-radio-on =
+ .label = แสดงข้อมูลโดยละเอียด
+
+## Privacy Section - Security
+##
+## It is important that wording follows the guidelines outlined on this page:
+## https://developers.google.com/safe-browsing/developers_guide_v2#AcceptableUsage
+
+security-header = ความปลอดภัย
+security-browsing-protection = การป้องกันเนื้อหาหลอกลวงและซอฟต์แวร์ที่เป็นอันตราย
+security-enable-safe-browsing =
+ .label = ปิดกั้นเนื้อหาที่เป็นอันตรายและหลอกลวง
+ .accesskey = ต
+security-enable-safe-browsing-link = เรียนรู้เพิ่มเติม
+security-block-downloads =
+ .label = ปิดกั้นการดาวน์โหลดที่เป็นอันตราย
+ .accesskey = อ
+security-block-uncommon-software =
+ .label = เตือนคุณเกี่ยวกับซอฟต์แวร์ไม่พึงประสงค์และไม่ปกติ
+ .accesskey = น
+
+## Privacy Section - Certificates
+
+certs-header = ใบรับรอง
+certs-enable-ocsp =
+ .label = สืบค้นเซิร์ฟเวอร์ตอบกลับ OCSP เพื่อยืนยันความถูกต้องของใบรับรองปัจจุบัน
+ .accesskey = ฟ
+certs-view =
+ .label = ดูใบรับรอง…
+ .accesskey = บ
+certs-devices =
+ .label = อุปกรณ์ความปลอดภัย…
+ .accesskey = ค
+certs-thirdparty-toggle =
+ .label = ยอมให้ { -brand-short-name } เชื่อถือใบรับรองหลักของบุคคลที่สามที่คุณติดตั้งโดยอัตโนมัติ
+ .accesskey = ช
+space-alert-over-5gb-settings-button =
+ .label = เปิดการตั้งค่า
+ .accesskey = ป
+space-alert-over-5gb-message2 = <strong>พื้นที่ดิสก์ของ { -brand-short-name } กำลังจะเต็ม</strong> เนื้อหาเว็บไซต์อาจแสดงผลไม่ถูกต้อง คุณสามารถล้างข้อมูลที่ถูกจัดเก็บไว้ได้ใน การตั้งค่า > ความเป็นส่วนตัวและความปลอดภัย > คุกกี้และข้อมูลไซต์
+space-alert-under-5gb-message2 = <strong>พื้นที่ดิสก์ของ { -brand-short-name } กำลังจะเต็ม</strong> เนื้อหาเว็บไซต์อาจแสดงผลไม่ถูกต้อง เยี่ยมชม “เรียนรู้เพิ่มเติม” เพื่อเพิ่มประสิทธิภาพการใช้งานดิสก์ของคุณสำหรับประสบการณ์การเรียกดูที่ดีขึ้น
+
+## Privacy Section - HTTPS-Only
+
+httpsonly-header = โหมด HTTPS-Only
+httpsonly-description = HTTPS จะจัดให้มีการเชื่อมต่อแบบเข้ารหัสที่ปลอดภัยระหว่าง { -brand-short-name } และเว็บไซต์ที่คุณเยี่ยมชม เว็บไซต์ส่วนใหญ่จะรองรับ HTTPS และหากเปิดใช้งานโหมด HTTPS-Only แล้ว { -brand-short-name } จะอัปเกรดการเชื่อมต่อทั้งหมดเป็น HTTPS
+httpsonly-learn-more = เรียนรู้เพิ่มเติม
+httpsonly-radio-enabled =
+ .label = เปิดใช้งานโหมด HTTPS-Only ในหน้าต่างทั้งหมด
+httpsonly-radio-enabled-pbm =
+ .label = เปิดใช้งานโหมด HTTPS-Only ในหน้าต่างส่วนตัวเท่านั้น
+httpsonly-radio-disabled =
+ .label = ไม่ต้องเปิดใช้งานโหมด HTTPS-Only
+
+## DoH Section
+
+preferences-doh-header = DNS over HTTPS
+preferences-doh-description = Domain Name System (DNS) over HTTPS จะส่งคำขอชื่อโดเมนของคุณผ่านการเชื่อมต่อที่มีการเข้ารหัส เพื่อเสริมความปลอดภัยให้กับ DNS และทำให้ผู้อื่นดูว่าคุณกำลังจะเข้าถึงเว็บไซต์ใดได้ยากขึ้น
+preferences-doh-description2 = Domain Name System (DNS) over HTTPS จะส่งคำขอชื่อโดเมนของคุณผ่านการเชื่อมต่อที่มีการเข้ารหัส เพื่อเสริมความปลอดภัยให้กับ DNS และทำให้ผู้อื่นดูว่าคุณกำลังจะเข้าถึงเว็บไซต์ใดได้ยากขึ้น
+# Variables:
+# $status (string) - The status of the DoH connection
+preferences-doh-status = สถานะ: { $status }
+# Variables:
+# $name (string) - The name of the DNS over HTTPS resolver. If a custom resolver is used, the name will be the domain of the URL.
+preferences-doh-resolver = ผู้ให้บริการ: { $name }
+# This is displayed instead of $name in preferences-doh-resolver
+# when the DoH URL is not a valid URL
+preferences-doh-bad-url = URL ไม่ถูกต้อง
+preferences-doh-steering-status = ใช้ผู้ให้บริการเฉพาะที่
+preferences-doh-status-active = ทำงาน
+preferences-doh-status-disabled = ปิด
+# Variables:
+# $reason (string) - A string representation of the reason DoH is not active. For example NS_ERROR_UNKNOWN_HOST or TRR_RCODE_FAIL.
+preferences-doh-status-not-active = ไม่ทำงาน ({ $reason })
+preferences-doh-group-message = เปิดใช้งาน secure DNS โดยใช้:
+preferences-doh-group-message2 = เปิดใช้งาน DNS over HTTPS โดยใช้:
+preferences-doh-expand-section =
+ .tooltiptext = ข้อมูลเพิ่มเติม
+preferences-doh-setting-default =
+ .label = การปกป้องแบบเริ่มต้น
+ .accesskey = ป
+preferences-doh-default-desc = { -brand-short-name } จะตัดสินใจว่าควรใช้ secure DNS เมื่อใดเพื่อที่จะปกป้องความเป็นส่วนตัวของคุณ
+preferences-doh-default-detailed-desc-1 = ใช้ secure DNS ในภูมิภาคที่สามารถใช้ได้
+preferences-doh-default-detailed-desc-2 = ใช้ DNS resolver เริ่มต้นของคุณหากมีปัญหากับผู้ให้บริการ secure DNS
+preferences-doh-default-detailed-desc-3 = ใช้ผู้ให้บริการเฉพาะที่หากเป็นไปได้
+preferences-doh-default-detailed-desc-4 = ปิดใช้เมื่อ VPN, การควบคุมโดยผู้ปกครอง, หรือนโยบายองค์กรทำงาน
+preferences-doh-default-detailed-desc-5 = ปิดใช้เมื่อเครือข่ายบอกกับ { -brand-short-name } ว่าไม่ควรใช้ secure DNS
+preferences-doh-setting-enabled =
+ .label = การปกป้องแบบเพิ่มเติม
+ .accesskey = พ
+preferences-doh-enabled-desc = ให้คุณควบคุมว่าควรใช้ secure DNS เมื่อใดและเลือกผู้ให้บริการของคุณเองได้
+preferences-doh-enabled-detailed-desc-1 = ใช้ผู้ให้บริการที่คุณเลือก
+preferences-doh-enabled-detailed-desc-2 = ใช้ DNS resolver เริ่มต้นของคุณเฉพาะเมื่อมีปัญหากับ secure DNS เท่านั้น
+preferences-doh-setting-strict =
+ .label = การปกป้องแบบสูงสุด
+ .accesskey = ส
+preferences-doh-strict-desc = { -brand-short-name } จะใช้ secure DNS เสมอ คุณจะเห็นคำเตือนเกี่ยวกับความเสี่ยงด้านความปลอดภัยก่อนที่เราจะใช้ DNS ของระบบของคุณ
+preferences-doh-strict-detailed-desc-1 = ใช้เฉพาะผู้ให้บริการที่คุณเลือกเท่านั้น
+preferences-doh-strict-detailed-desc-2 = เตือนเสมอเมื่อ secure DNS ใช้ไม่ได้
+preferences-doh-strict-detailed-desc-3 = หาก secure DNS ใช้ไม่ได้ ไซต์ต่างๆ จะไม่โหลดหรือทำงานถูกต้อง
+preferences-doh-setting-off =
+ .label = ปิด
+ .accesskey = ป
+preferences-doh-off-desc = ใช้ DNS resolver เริ่มต้นของคุณ
+preferences-doh-checkbox-warn =
+ .label = เตือนหากมีบุคคลที่สามเข้ามาขัดขวาง secure DNS อย่างต่อเนื่อง
+ .accesskey = ต
+preferences-doh-select-resolver = เลือกผู้ให้บริการ:
+preferences-doh-exceptions-description = { -brand-short-name } จะไม่ใช้ secure DNS บนไซต์เหล่านี้
+preferences-doh-manage-exceptions =
+ .label = จัดการข้อยกเว้น…
+ .accesskey = ย
+
+## The following strings are used in the Download section of settings
+
+desktop-folder-name = เดสก์ท็อป
+downloads-folder-name = การดาวน์โหลด
+choose-download-folder-title = เลือกโฟลเดอร์การดาวน์โหลด:
diff --git a/l10n-th/browser/browser/preferences/selectBookmark.ftl b/l10n-th/browser/browser/preferences/selectBookmark.ftl
new file mode 100644
index 0000000000..2d6964746c
--- /dev/null
+++ b/l10n-th/browser/browser/preferences/selectBookmark.ftl
@@ -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/.
+
+select-bookmark-window2 =
+ .title = ตั้งหน้าแรก
+ .style = min-width: 32em;
+
+select-bookmark-desc = เลือกที่คั่นหน้าเพื่อตั้งเป็นหน้าแรก หากเลือกโฟลเดอร์ ที่คั่นหน้าทั้งหมดในโฟลเดอร์ดังกล่าวจะถูกเปิดในแท็บ
diff --git a/l10n-th/browser/browser/preferences/siteDataSettings.ftl b/l10n-th/browser/browser/preferences/siteDataSettings.ftl
new file mode 100644
index 0000000000..a01c98cb5f
--- /dev/null
+++ b/l10n-th/browser/browser/preferences/siteDataSettings.ftl
@@ -0,0 +1,66 @@
+# 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/.
+
+
+## Settings
+
+site-data-settings-window =
+ .title = จัดการคุกกี้และข้อมูลไซต์
+
+site-data-settings-description = เว็บไซต์ดังต่อไปนี้จัดเก็บคุกกี้และข้อมูลไซต์ไว้ในคอมพิวเตอร์ของคุณ { -brand-short-name } เก็บข้อมูลจากเว็บไซต์ที่ใช้ที่เก็บข้อมูลถาวรจนกว่าคุณจะลบออก และลบข้อมูลจากเว็บไซต์ที่ใช้ที่เก็บข้อมูลไม่ถาวรออกเมื่อต้องการพื้นที่
+
+site-data-search-textbox =
+ .placeholder = ค้นหาเว็บไซต์
+ .accesskey = ค
+
+site-data-column-host =
+ .label = ไซต์
+site-data-column-cookies =
+ .label = คุกกี้
+site-data-column-storage =
+ .label = ที่เก็บข้อมูล
+site-data-column-last-used =
+ .label = วันที่ใช้ครั้งล่าสุด
+
+# This label is used in the "Host" column for local files, which have no host.
+site-data-local-file-host = (ไฟล์ในเครื่อง)
+
+site-data-remove-selected =
+ .label = เอาที่เลือกออก
+ .accesskey = อ
+
+site-data-settings-dialog =
+ .buttonlabelaccept = บันทึกการเปลี่ยนแปลง
+ .buttonaccesskeyaccept = บ
+
+# Variables:
+# $value (Number) - Value of the unit (for example: 4.6, 500)
+# $unit (String) - Name of the unit (for example: "bytes", "KB")
+site-storage-usage =
+ .value = { $value } { $unit }
+site-storage-persistent =
+ .value = { site-storage-usage.value } (ถาวร)
+
+site-data-remove-all =
+ .label = เอาทั้งหมดออก
+ .accesskey = ท
+
+site-data-remove-shown =
+ .label = เอาที่แสดงทั้งหมดออก
+ .accesskey = ท
+
+## Removing
+
+site-data-removing-dialog =
+ .title = { site-data-removing-header }
+ .buttonlabelaccept = เอาออก
+
+site-data-removing-header = การเอาคุกกี้และข้อมูลไซต์ออก
+
+site-data-removing-desc = การเอาคุกกี้และข้อมูลไซต์ออกอาจนำคุณออกจากระบบของเว็บไซต์ คุณแน่ใจหรือไม่ว่าต้องการทำการเปลี่ยนแปลง?
+# Variables:
+# $baseDomain (String) - The single domain for which data is being removed
+site-data-removing-single-desc = การเอาคุกกี้และข้อมูลไซต์ออกอาจนำคุณออกจากระบบเว็บไซต์ต่าง ๆ คุณแน่ใจหรือไม่ว่าต้องการเอาคุกกี้และข้อมูลไซต์สำหรับ <strong>{ $baseDomain }</strong> ออก?
+
+site-data-removing-table = คุกกี้และข้อมูลไซต์สำหรับเว็บไซต์ดังต่อไปนี้จะถูกเอาออก
diff --git a/l10n-th/browser/browser/preferences/translation.ftl b/l10n-th/browser/browser/preferences/translation.ftl
new file mode 100644
index 0000000000..08c8d693bf
--- /dev/null
+++ b/l10n-th/browser/browser/preferences/translation.ftl
@@ -0,0 +1,40 @@
+# 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/.
+
+translation-window2 =
+ .title = ข้อยกเว้น - การแปล
+ .style = min-width: 36em
+
+translation-close-key =
+ .key = w
+
+translation-languages-disabled-desc = การแปลจะไม่ถูกนำเสนอสำหรับภาษาดังต่อไปนี้
+
+translation-languages-column =
+ .label = ภาษา
+
+translation-languages-button-remove =
+ .label = เอาภาษาออก
+ .accesskey = อ
+
+translation-languages-button-remove-all =
+ .label = เอาภาษาทั้งหมดออก
+ .accesskey = ภ
+
+translation-sites-disabled-desc = การแปลจะไม่ถูกนำเสนอสำหรับไซต์ดังต่อไปนี้
+
+translation-sites-column =
+ .label = เว็บไซต์
+
+translation-sites-button-remove =
+ .label = เอาไซต์ออก
+ .accesskey = ต
+
+translation-sites-button-remove-all =
+ .label = เอาไซต์ทั้งหมดออก
+ .accesskey = ท
+
+translation-dialog =
+ .buttonlabelaccept = ปิด
+ .buttonaccesskeyaccept = ป
diff --git a/l10n-th/browser/browser/profile/default-bookmarks.ftl b/l10n-th/browser/browser/profile/default-bookmarks.ftl
new file mode 100644
index 0000000000..bb88658923
--- /dev/null
+++ b/l10n-th/browser/browser/profile/default-bookmarks.ftl
@@ -0,0 +1,53 @@
+# 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 file intentionally uses hard-coded brand names instead of Fluent terms.
+# This approach minimizes issues across multiple release channels and rebranded
+# versions.
+
+default-bookmarks-title = ที่คั่นหน้า
+default-bookmarks-heading = ที่คั่นหน้า
+
+default-bookmarks-toolbarfolder = โฟลเดอร์แถบเครื่องมือที่คั่นหน้า
+default-bookmarks-toolbarfolder-description = เพิ่มที่คั่นหน้าไปยังโฟลเดอร์นี้เพื่อให้แสดงผลบนแถบเครื่องมือที่คั่นหน้า
+
+# link title for https://www.mozilla.org/firefox/central/
+default-bookmarks-getting-started = เริ่มต้นใช้งาน
+
+# Firefox links folder name
+default-bookmarks-firefox-heading = Mozilla Firefox
+
+# link title for https://www.mozilla.org/firefox/help/
+default-bookmarks-firefox-get-help = รับความช่วยเหลือ
+
+# link title for https://www.mozilla.org/firefox/customize/
+default-bookmarks-firefox-customize = ปรับแต่ง Firefox
+
+# link title for https://www.mozilla.org/contribute/
+default-bookmarks-firefox-community = มีส่วนร่วม
+
+# link title for https://www.mozilla.org/about/
+default-bookmarks-firefox-about = เกี่ยวกับเรา
+
+# Firefox Nightly links folder name
+default-bookmarks-nightly-heading = ทรัพยากร Firefox Nightly
+
+# Nightly builds only, link title for https://blog.nightly.mozilla.org/
+default-bookmarks-nightly-blog = บล็อก Firefox Nightly
+
+# Nightly builds only, link title for https://bugzilla.mozilla.org/
+default-bookmarks-bugzilla = ตัวติดตามข้อบกพร่อง Mozilla
+
+# Nightly builds only, link title for https://developer.mozilla.org/
+default-bookmarks-mdn = Mozilla Developer Network
+
+# Nightly builds only, link title for https://addons.mozilla.org/firefox/addon/nightly-tester-tools/
+default-bookmarks-nightly-tester-tools = เครื่องมือทดสอบ Nightly
+
+# Nightly builds only, link title for about:crashes
+default-bookmarks-crashes = ข้อขัดข้องของคุณทั้งหมด
+
+# Nightly builds only, link title for https://planet.mozilla.org/
+default-bookmarks-planet = Planet Mozilla
diff --git a/l10n-th/browser/browser/protections.ftl b/l10n-th/browser/browser/protections.ftl
new file mode 100644
index 0000000000..f2081b02d4
--- /dev/null
+++ b/l10n-th/browser/browser/protections.ftl
@@ -0,0 +1,219 @@
+# 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/.
+
+# Variables:
+# $count (Number) - Number of tracking events blocked.
+graph-week-summary =
+ { $count ->
+ *[other] { -brand-short-name } ปิดกั้นตัวติดตาม { $count } ตัวตลอดสัปดาห์ที่ผ่านมา
+ }
+
+# Variables:
+# $count (Number) - Number of tracking events blocked.
+# $earliestDate (Number) - Unix timestamp in ms, representing a date. The
+# earliest date recorded in the database.
+graph-total-tracker-summary =
+ { $count ->
+ *[other] ตัวติดตาม <b>{ $count }</b> ตัวถูกปิดกั้นตั้งแต่ { DATETIME($earliestDate, day: "numeric", month: "long", year: "numeric") }
+ }
+
+# Text displayed instead of the graph when in Private Mode
+graph-private-window = { -brand-short-name } จะปิดกั้นตัวติดตามในหน้าต่างส่วนตัวต่อไป แต่จะไม่เก็บบันทึกสิ่งที่ถูกปิดกั้นไว้
+# Weekly summary of the graph when the graph is empty in Private Mode
+graph-week-summary-private-window = ตัวติดตามที่ { -brand-short-name } ปิดกั้นในสัปดาห์นี้
+
+protection-report-webpage-title = แดชบอร์ดการป้องกัน
+protection-report-page-content-title = แดชบอร์ดการป้องกัน
+# This message shows when all privacy protections are turned off, which is why we use the word "can", Firefox is able to protect your privacy, but it is currently not.
+protection-report-page-summary = { -brand-short-name } สามารถปกป้องความเป็นส่วนตัวของคุณในเบื้องหลังขณะที่คุณเรียกดูได้ นี่คือข้อมูลสรุปส่วนตัวของการปกป้องเหล่านั้น รวมถึงเครื่องมือที่ใช้ควบคุมความปลอดภัยออนไลน์ของคุณ
+# This message shows when at least some protections are turned on, we are more assertive compared to the message above, Firefox is actively protecting you.
+protection-report-page-summary-default = { -brand-short-name } จะปกป้องความเป็นส่วนตัวของคุณในเบื้องหลังขณะที่คุณเรียกดู นี่คือข้อมูลสรุปส่วนตัวของการปกป้องเหล่านั้น รวมถึงเครื่องมือที่ใช้ควบคุมความปลอดภัยออนไลน์ของคุณ
+
+protection-report-settings-link = จัดการการตั้งค่าความเป็นส่วนตัวและความปลอดภัย
+
+etp-card-title-always = การป้องกันการติดตามแบบพิเศษ: เปิดตลอด
+etp-card-title-custom-not-blocking = การป้องกันการติดตามแบบพิเศษ: ปิด
+etp-card-content-description = { -brand-short-name } จะหยุดบริษัทต่าง ๆ ไม่ให้ติดตามคุณอย่างลับ ๆ ขณะที่คุณเรียกดูโดยอัตโนมัติ
+protection-report-etp-card-content-custom-not-blocking = การป้องกันทั้งหมดถูกปิดในขณนี้ เลือกตัวติดตามที่จะปิดกั้นโดยจัดการการตั้งค่าการป้องกัน { -brand-short-name } ของคุณ
+protection-report-manage-protections = จัดการการตั้งค่า
+
+# This string is used to label the X axis of a graph. Other days of the week are generated via Intl.DateTimeFormat,
+# capitalization for this string should match the output for your locale.
+graph-today = วันนี้
+
+# This string is used to describe the graph for screenreader users.
+graph-legend-description = กราฟที่มีจำนวนตัวติดตามแต่ละชนิดทั้งหมดที่ถูกปิดกั้นในสัปดาห์นี้
+
+social-tab-title = ตัวติดตามสังคมออนไลน์
+social-tab-contant = เครือข่ายสังคมออนไลน์จะวางตัวติดตามบนเว็บไซต์อื่น ๆ เพื่อติดตามสิ่งที่คุณทำ และดูทางออนไลน์ ซึ่งทำให้บริษัทสังคมออนไลน์สามารถเรียนรู้เพิ่มเติมเกี่ยวกับคุณนอกเหนือจากที่คุณแบ่งปันในโปรไฟล์สังคมออนไลน์ของคุณ <a data-l10n-name="learn-more-link">เรียนรู้เพิ่มเติม</a>
+
+cookie-tab-title = คุกกี้ติดตามข้ามไซต์
+cookie-tab-content = คุกกี้เหล่านี้ติดตามคุณจากไซต์หนึ่งไปยังอีกไซต์หนึ่งเพื่อรวบรวมข้อมูลเกี่ยวกับสิ่งที่คุณทำทางออนไลน์ ซึ่งถูกตั้งค่าโดยบุคคลที่สาม เช่น ผู้โฆษณาและบริษัทการวิเคราะห์ การปิดกั้นคุกกี้ติดตามข้ามไซต์จะช่วยลดจำนวนโฆษณาที่ติดตามคุณไป <a data-l10n-name="learn-more-link">เรียนรู้เพิ่มเติม</a>
+
+tracker-tab-title = ตัวติดตามเนื้อหา
+tracker-tab-description = เว็บไซต์อาจโหลดโฆษณา วิดีโอ และเนื้อหาอื่น ๆ นอกเว็บที่มีโค้ดติดตาม การปิดกั้นเนื้อหาการติดตามจะทำให้เว็บไซต์โหลดเร็วขึ้น แต่ปุ่มบางปุ่ม ฟอร์ม และเขตข้อมูลการเข้าสู่ระบบอาจไม่ทำงาน <a data-l10n-name="learn-more-link">เรียนรู้เพิ่มเติม</a>
+
+fingerprinter-tab-title = ลายนิ้วมือดิจิทัล
+fingerprinter-tab-content = ลายนิ้วมือดิจิทัลรวบรวมการตั้งค่าจากเบราว์เซอร์และคอมพิวเตอร์ของคุณเพื่อสร้างโปรไฟล์ของคุณ การใช้ลายนิ้วมือดิจิทัลจะทำให้สามารถติดตามคุณผ่านเว็บไซต์ต่าง ๆ ได้ <a data-l10n-name="learn-more-link">เรียนรู้เพิ่มเติม</a>
+
+cryptominer-tab-title = ตัวขุดเหรียญดิจิทัล
+cryptominer-tab-content = ตัวขุดเหรียญคริปโตดิจิตอลใช้พลังการคำนวณของระบบของคุณเพื่อสร้างเงินคริปโตดิจิทัล สคริปต์ขุดเหรียญดิจิทัลจะทำให้พลังงานแบตเตอรี่ของคุณลดลง คอมพิวเตอร์ของคุณช้าลง และเพิ่มค่าไฟฟ้าของคุณได้ <a data-l10n-name="learn-more-link">เรียนรู้เพิ่มเติม</a>
+
+protections-close-button2 =
+ .aria-label = ปิด
+ .title = ปิด
+
+mobile-app-title = ปิดกั้นตัวติดตามโฆษณาในอุปกรณ์อื่น ๆ
+mobile-app-card-content = ใช้เบราว์เซอร์มือถือที่มีการป้องกันจากติดติดตามโฆษณา
+mobile-app-links = เบราว์เซอร์ { -brand-product-name } สำหรับ <a data-l10n-name="android-mobile-inline-link">Android</a>และ<a data-l10n-name="ios-mobile-inline-link">iOS</a>
+
+lockwise-title = จะไม่ลืมรหัสผ่านอีก
+passwords-title-logged-in = จัดการรหัสผ่านของคุณ
+passwords-header-content = { -brand-product-name } เก็บรหัสผ่านของคุณอย่างปลอดภัยในเบราว์เซอร์ของคุณ
+lockwise-header-content-logged-in = เก็บและซิงค์รหัสผ่านของคุณกับอุปกรณ์ทั้งหมดอย่างปลอดภัย
+protection-report-passwords-save-passwords-button = บันทึกรหัสผ่าน
+ .title = บันทึกรหัสผ่าน
+protection-report-passwords-manage-passwords-button = จัดการรหัสผ่าน
+ .title = จัดการรหัสผ่าน
+
+
+# Variables:
+# $count (Number) - Number of passwords exposed in data breaches.
+lockwise-scanned-text-breached-logins =
+ { $count ->
+ *[other] { $count } รหัสผ่านอาจถูกเปิดเผยในข้อมูลที่รั่วไหล
+ }
+
+# While English doesn't use the number in the plural form, you can add $count to your language
+# if needed for grammatical reasons.
+# Variables:
+# $count (Number) - Number of passwords stored in Lockwise.
+lockwise-scanned-text-no-breached-logins =
+ { $count ->
+ *[other] รหัสผ่านของคุณถูกเก็บอย่างปลอดภัย
+ }
+lockwise-how-it-works-link = วิธีการทำงาน
+
+monitor-title = ให้เราช่วยคอยเฝ้าระวังดูการละเมิดข้อมูล
+monitor-link = วิธีการทำงาน
+monitor-header-content-no-account = ตรวจสอบ { -monitor-brand-name } เพื่อดูว่าคุณเป็นส่วนหนึ่งของการรั่วไหลข้อมูลหรือไม่ และรับการแจ้งเตือนเกี่ยวกับข้อมูลที่รั่วไหลใหม่
+monitor-header-content-signed-in = { -monitor-brand-name } จะเตือนคุณหากข้อมูลของคุณปรากฏในการรั่วไหลข้อมูล
+monitor-sign-up-link = ลงทะเบียนเพื่อรับการเตือนการรั่วไหล
+ .title = ลงทะเบียนเพื่อรับการเตือนการรั่วไหลบน { -monitor-brand-name }
+auto-scan = สแกนอัตโนมัติเมื่อวันนี้
+
+monitor-emails-tooltip =
+ .title = ดูที่อยู่อีเมลที่เฝ้าระวังบน { -monitor-brand-short-name }
+monitor-breaches-tooltip =
+ .title = ดูข้อมูลที่รั่วไหลที่ทราบบน { -monitor-brand-short-name }
+monitor-passwords-tooltip =
+ .title = ดูรหัสผ่านที่ถูกเปิดเผยบน { -monitor-brand-short-name }
+
+# This string is displayed after a large numeral that indicates the total number
+# of email addresses being monitored. Don’t add $count to
+# your localization, because it would result in the number showing twice.
+info-monitored-emails =
+ { $count ->
+ *[other] ที่อยู่อีเมลที่ถูกตรวจสอบ
+ }
+
+# This string is displayed after a large numeral that indicates the total number
+# of known data breaches. Don’t add $count to
+# your localization, because it would result in the number showing twice.
+info-known-breaches-found =
+ { $count ->
+ *[other] การรั่วไหลของข้อมูลที่เรารู้เกิดขึ้นที่ได้เปิดเผยข้อมูลของคุณ
+ }
+
+# This string is displayed after a large numeral that indicates the total number
+# of known data breaches that are marked as resolved by the user. Don’t add $count
+# to your localization, because it would result in the number showing twice.
+info-known-breaches-resolved =
+ { $count ->
+ *[other] ข้อมูลที่รั่วไหลที่พบถูกทำเครื่องหมายว่าแก้ไขแล้ว
+ }
+
+# This string is displayed after a large numeral that indicates the total number
+# of exposed passwords. Don’t add $count to
+# your localization, because it would result in the number showing twice.
+info-exposed-passwords-found =
+ { $count ->
+ *[other] รหัสผ่านที่ถูกเปิดเผยในช่องโหว่ทั้งหมด
+ }
+
+# This string is displayed after a large numeral that indicates the total number
+# of exposed passwords that are marked as resolved by the user. Don’t add $count
+# to your localization, because it would result in the number showing twice.
+info-exposed-passwords-resolved =
+ { $count ->
+ *[other] รหัสผ่านที่ถูกเปิดเผยในข้อมูลที่รั่วไหลที่ยังไม่ถูกแก้ไข
+ }
+
+monitor-no-breaches-title = ข่าวดี!
+monitor-no-breaches-description = คุณไม่มีการรั่วไหลที่พบ หากมีการเปลี่ยนแปลง เราจะแจ้งให้คุณทราบ
+monitor-view-report-link = ดูรายงาน
+ .title = แก้ไขการรั่วไหลบน { -monitor-brand-short-name }
+monitor-breaches-unresolved-title = แก้ไขการรั่วไหลของคุณ
+monitor-breaches-unresolved-description = หลังจากตรวจสอบรายละเอียดของการรั่วไหลและดำเนินการเพื่อปกป้องข้อมูลของคุณแล้ว คุณสามารถทำเครื่องหมายการรั่วไหลว่าแก้ไขแล้วได้
+monitor-manage-breaches-link = จัดการการรั่วไหล
+ .title = จัดการการรั่วไหลบน { -monitor-brand-short-name }
+monitor-breaches-resolved-title = ดี! คุณได้แก้ไขการรั่วไหลที่พบทั้งหมดแล้ว
+monitor-breaches-resolved-description = หากอีเมลของคุณปรากฏในการรั่วไหลใหม่ใด ๆ เราจะแจ้งให้คุณทราบ
+
+# Variables:
+# $numBreachesResolved (Number) - Number of breaches marked as resolved by the user on Monitor.
+# $numBreaches (Number) - Number of breaches in which a user's data was involved, detected by Monitor.
+monitor-partial-breaches-title =
+ { $numBreaches ->
+ *[other] { $numBreachesResolved } จาก { $numBreaches } การรั่วไหลถูกทำเครื่องหมายว่าแก้ไขแล้ว
+ }
+
+# Variables:
+# $percentageResolved (Number) - Percentage of breaches marked as resolved by a user on Monitor.
+monitor-partial-breaches-percentage = { $percentageResolved }% เสร็จสมบูรณ์
+
+monitor-partial-breaches-motivation-title-start = เริ่มต้นใช้งาน!
+monitor-partial-breaches-motivation-title-middle = ทำต่อไป!
+monitor-partial-breaches-motivation-title-end = เกือบเสร็จแล้ว! ทำต่อไป
+monitor-partial-breaches-motivation-description = แก้ไขการรั่วไหลของคุณที่เหลือบน { -monitor-brand-short-name }
+monitor-resolve-breaches-link = แก้ไขการรั่วไหล
+ .title = แก้ไขการรั่วไหลบน { -monitor-brand-short-name }
+
+## The title attribute is used to display the type of protection.
+## The aria-label is spoken by screen readers to make the visual graph accessible to blind users.
+##
+## Variables:
+## $count (Number) - Number of specific trackers
+## $percentage (Number) - Percentage this type of tracker contributes to the whole graph
+
+bar-tooltip-social =
+ .title = ตัวติดตามสังคมออนไลน์
+ .aria-label =
+ { $count ->
+ *[other] { $count } ตัวติดตามสังคมออนไลน์ ({ $percentage }%)
+ }
+bar-tooltip-cookie =
+ .title = คุกกี้ติดตามข้ามไซต์
+ .aria-label =
+ { $count ->
+ *[other] { $count } คุกกี้ติดตามข้ามไซต์ ({ $percentage }%)
+ }
+bar-tooltip-tracker =
+ .title = ตัวติดตามเนื้อหา
+ .aria-label =
+ { $count ->
+ *[other] { $count } ตัวติดตามเนื้อหา ({ $percentage }%)
+ }
+bar-tooltip-fingerprinter =
+ .title = ลายนิ้วมือดิจิทัล
+ .aria-label =
+ { $count ->
+ *[other] { $count } ลายนิ้วมือดิจิทัล ({ $percentage }%)
+ }
+bar-tooltip-cryptominer =
+ .title = ตัวขุดเหรียญดิจิทัล
+ .aria-label =
+ { $count ->
+ *[other] { $count } ตัวขุดเหรียญดิจิทัล ({ $percentage }%)
+ }
diff --git a/l10n-th/browser/browser/protectionsPanel.ftl b/l10n-th/browser/browser/protectionsPanel.ftl
new file mode 100644
index 0000000000..4b34956b47
--- /dev/null
+++ b/l10n-th/browser/browser/protectionsPanel.ftl
@@ -0,0 +1,162 @@
+# 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/.
+
+protections-panel-sendreportview-error = เกิดข้อผิดพลาดในการส่งรายงาน โปรดลองอีกครั้งในภายหลัง
+# A link shown when ETP is disabled for a site. Opens the breakage report subview when clicked.
+protections-panel-sitefixedsendreport-label = ไซต์ถูกซ่อมแซม? ส่งรายงาน
+
+## These strings are used to define the different levels of
+## Enhanced Tracking Protection.
+
+protections-popup-footer-protection-label-strict = เข้มงวด
+ .label = เข้มงวด
+protections-popup-footer-protection-label-custom = กำหนดเอง
+ .label = กำหนดเอง
+protections-popup-footer-protection-label-standard = มาตรฐาน
+ .label = มาตรฐาน
+
+##
+
+# The text a screen reader speaks when focused on the info button.
+protections-panel-etp-more-info =
+ .aria-label = รายละเอียดเพิ่มเติมเกี่ยวกับการป้องกันการติดตามแบบพิเศษ
+protections-panel-etp-on-header = การป้องกันการติดตามแบบพิเศษเปิดอยู่สำหรับไซต์นี้
+protections-panel-etp-off-header = การป้องกันการติดตามแบบพิเศษปิดอยู่สำหรับไซต์นี้
+
+## Text for the toggles shown when ETP is enabled/disabled for a given site.
+## .description is transferred into a separate paragraph by the moz-toggle
+## custom element code.
+## $host (String): the hostname of the site that is being displayed.
+
+protections-panel-etp-toggle-on =
+ .label = การป้องกันการติดตามแบบพิเศษ
+ .description = เปิดสำหรับไซต์นี้
+ .aria-label = การป้องกันการติดตามแบบพิเศษ: เปิดสำหรับ { $host }
+protections-panel-etp-toggle-off =
+ .label = การป้องกันการติดตามแบบพิเศษ
+ .description = ปิดสำหรับไซต์นี้
+ .aria-label = การป้องกันการติดตามแบบพิเศษ: ปิดสำหรับ { $host }
+# The link to be clicked to open the sub-panel view
+protections-panel-site-not-working = ไซต์ไม่ทำงาน?
+# The heading/title of the sub-panel view
+protections-panel-site-not-working-view =
+ .title = ไซต์ไม่ทำงาน?
+
+## The "Allowed" header also includes a "Why?" link that, when hovered, shows
+## a tooltip explaining why these items were not blocked in the page.
+
+protections-panel-not-blocking-why-label = ทำไม?
+protections-panel-not-blocking-why-etp-on-tooltip = การปิดกั้นคุณลักษณะเหล่านี้อาจทำให้องค์ประกอบของบางเว็บไซต์เสียหายได้ หากไม่มีตัวติดตาม ปุ่ม แบบฟอร์ม และฟิลด์การเข้าสู่ระบบบางส่วนอาจไม่ทำงาน
+protections-panel-not-blocking-why-etp-off-tooltip = ตัวติดตามทั้งหมดในไซต์นี้ถูกโหลดเนื่องจากการป้องกันถูกปิด
+protections-panel-not-blocking-why-etp-on-tooltip-label =
+ .label = การปิดกั้นคุณลักษณะเหล่านี้อาจทำให้องค์ประกอบของบางเว็บไซต์เสียหายได้ หากไม่มีตัวติดตาม ปุ่ม แบบฟอร์ม และฟิลด์การเข้าสู่ระบบบางส่วนอาจไม่ทำงาน
+protections-panel-not-blocking-why-etp-off-tooltip-label =
+ .label = ตัวติดตามทั้งหมดในไซต์นี้ถูกโหลดเนื่องจากการป้องกันถูกปิด
+
+##
+
+protections-panel-no-trackers-found = ไม่มีตัวติดตามที่ { -brand-short-name } รู้จักถูกตรวจพบที่หน้านี้
+protections-panel-content-blocking-tracking-protection = ตัวติดตามเนื้อหา
+protections-panel-content-blocking-socialblock = ตัวติดตามสังคมออนไลน์
+protections-panel-content-blocking-cryptominers-label = ตัวขุดเหรียญดิจิทัล
+protections-panel-content-blocking-fingerprinters-label = ลายนิ้วมือดิจิทัล
+
+## In the protections panel, Content Blocking category items are in three sections:
+## "Blocked" for categories being blocked in the current page,
+## "Allowed" for categories detected but not blocked in the current page, and
+## "None Detected" for categories not detected in the current page.
+## These strings are used in the header labels of each of these sections.
+
+protections-panel-blocking-label = ปิดกั้นแล้ว
+protections-panel-not-blocking-label = อนุญาตแล้ว
+protections-panel-not-found-label = ตรวจไม่พบ
+
+##
+
+protections-panel-settings-label = การตั้งค่าการป้องกัน
+protections-panel-protectionsdashboard-label = แดชบอร์ดการป้องกัน
+
+## In the Site Not Working? view, we suggest turning off protections if
+## the user is experiencing issues with any of a variety of functionality.
+
+# The header of the list
+protections-panel-site-not-working-view-header = ปิดการป้องกันหากคุณมีปัญหากับ:
+# The list items, shown in a <ul>
+protections-panel-site-not-working-view-issue-list-login-fields = ช่องเข้าสู่ระบบ
+protections-panel-site-not-working-view-issue-list-forms = แบบฟอร์ม
+protections-panel-site-not-working-view-issue-list-payments = การชำระเงิน
+protections-panel-site-not-working-view-issue-list-comments = ความคิดเห็น
+protections-panel-site-not-working-view-issue-list-videos = วิดีโอ
+protections-panel-site-not-working-view-issue-list-fonts = แบบอักษร
+protections-panel-site-not-working-view-send-report = ส่งรายงาน
+
+##
+
+protections-panel-cross-site-tracking-cookies = คุกกี้เหล่านี้ติดตามคุณจากไซต์หนึ่งไปยังอีกไซต์หนึ่งเพื่อรวบรวมข้อมูลเกี่ยวกับสิ่งที่คุณทำทางออนไลน์ พวกมันถูกตั้งค่าโดยบุคคลที่สามเช่น นักโฆษณาและบริษัทวิเคราะห์
+protections-panel-cryptominers = ตัวขุดเหรียญคริปโตดิจิตอลใช้พลังการคำนวณของระบบของคุณเพื่อสร้างเงินคริปโตดิจิทัล สคริปต์ขุดเหรียญดิจิทัลจะทำให้พลังงานแบตเตอรี่ของคุณลดลง คอมพิวเตอร์ของคุณช้าลง และเพิ่มค่าไฟฟ้าของคุณได้
+protections-panel-fingerprinters = ลายนิ้วมือดิจิทัลรวบรวมการตั้งค่าจากเบราว์เซอร์และคอมพิวเตอร์ของคุณเพื่อสร้างโปรไฟล์ของคุณ การใช้ลายนิ้วมือดิจิทัลจะทำให้สามารถติดตามคุณผ่านเว็บไซต์ต่าง ๆ ได้
+protections-panel-tracking-content = เว็บไซต์อาจโหลดโฆษณา วิดีโอ และเนื้อหาอื่น ๆ นอกเว็บที่มีโค้ดติดตาม การปิดกั้นเนื้อหาการติดตามจะทำให้เว็บไซต์โหลดเร็วขึ้น แต่ปุ่มบางปุ่ม ฟอร์ม และเขตข้อมูลการเข้าสู่ระบบอาจไม่ทำงาน
+protections-panel-social-media-trackers = เครือข่ายสังคมออนไลน์จะวางตัวติดตามบนเว็บไซต์อื่น ๆ เพื่อติดตามสิ่งที่คุณทำ และดูทางออนไลน์ ซึ่งทำให้บริษัทสังคมออนไลน์สามารถเรียนรู้เพิ่มเติมเกี่ยวกับคุณนอกเหนือจากที่คุณแบ่งปันในโปรไฟล์สังคมออนไลน์ของคุณ
+protections-panel-description-shim-allowed = ตัวติดตามบางตัวที่ถูกทำเครื่องหมายไว้ด้านล่างนี้ได้ถูกเลิกปิดกั้นบนหน้านี้เนื่องจากคุณมีการโต้ตอบกับตัวติดตามเหล่านั้น
+protections-panel-description-shim-allowed-learn-more = เรียนรู้เพิ่มเติม
+protections-panel-shim-allowed-indicator =
+ .tooltiptext = เลิกปิดกั้นตัวติดตามบางส่วนแล้ว
+protections-panel-content-blocking-manage-settings =
+ .label = จัดการการตั้งค่าการป้องกัน
+ .accesskey = M
+protections-panel-content-blocking-breakage-report-view =
+ .title = รายงานไซต์ที่ใช้งานไม่ได้
+protections-panel-content-blocking-breakage-report-view-description = การปิดกั้นตัวติดตามบางตัวอาจทำให้เกิดปัญหากับบางเว็บไซต์ได้ การรายงานปัญหา ก็เท่ากับคุณช่วยทำให้ { -brand-short-name } ดีขึ้นสำหรับทุก ๆ คน การรายงานนี้จะส่ง URL พร้อมทั้งข้อมูลเกี่ยวกับการตั้งค่าเบราว์เซอร์ของคุณไปให้กับ Mozilla <label data-l10n-name="learn-more">เรียนรู้เพิ่มเติม</label>
+protections-panel-content-blocking-breakage-report-view-description2 = การปิดกั้นตัวติดตามบางตัวอาจทำให้เกิดปัญหากับบางเว็บไซต์ได้ การรายงานปัญหา ก็เท่ากับคุณช่วยทำให้ { -brand-short-name } ดีขึ้นสำหรับทุก ๆ คน การรายงานนี้จะส่ง URL พร้อมทั้งข้อมูลเกี่ยวกับการตั้งค่าเบราว์เซอร์ของคุณไปให้กับ { -vendor-short-name }
+protections-panel-content-blocking-breakage-report-view-collection-url = URL
+protections-panel-content-blocking-breakage-report-view-collection-url-label =
+ .aria-label = URL
+protections-panel-content-blocking-breakage-report-view-collection-comments = ทางเลือก: อธิบายปัญหา
+protections-panel-content-blocking-breakage-report-view-collection-comments-label =
+ .aria-label = ทางเลือก: อธิบายปัญหา
+protections-panel-content-blocking-breakage-report-view-cancel =
+ .label = ยกเลิก
+protections-panel-content-blocking-breakage-report-view-send-report =
+ .label = ส่งรายงาน
+
+# Cookie Banner Handling
+
+protections-panel-cookie-banner-handling-header = การลดแบนเนอร์คุกกี้
+protections-panel-cookie-banner-blocker-header = ตัวปิดกั้นแบนเนอร์คุกกี้
+protections-panel-cookie-banner-handling-enabled = เปิดสำหรับไซต์นี้
+protections-panel-cookie-banner-handling-disabled = ปิดสำหรับไซต์นี้
+protections-panel-cookie-banner-handling-undetected = ไม่รองรับไซต์ในขณะนี้
+protections-panel-cookie-banner-view-title =
+ .title = การลดแบนเนอร์คุกกี้
+# Variables
+# $host (String): the hostname of the site that is being displayed.
+protections-panel-cookie-banner-view-turn-off-for-site = ต้องการปิดการลดแบนเนอร์คุกกี้สำหรับ { $host } หรือไม่?
+protections-panel-cookie-banner-view-turn-on-for-site = ต้องการเปิดการลดแบนเนอร์คุกกี้สำหรับไซต์นี้หรือไม่?
+protections-panel-cookie-banner-blocker-view-title =
+ .title = ตัวปิดกั้นแบนเนอร์คุกกี้
+# Variables
+# $host (String): the hostname of the site that is being displayed.
+protections-panel-cookie-banner-blocker-view-turn-off-for-site = ปิดตัวปิดกั้นแบนเนอร์คุกกี้สำหรับ { $host } หรือไม่?
+protections-panel-cookie-banner-blocker-view-turn-on-for-site = ปิดตัวปิดกั้นแบนเนอร์คุกกี้สำหรับไซต์นี้หรือไม่?
+protections-panel-cookie-banner-view-cookie-clear-warning = { -brand-short-name } จะล้างคุกกี้ของไซต์นี้และรีเฟรชหน้า การล้างคุกกี้ทั้งหมดอาจนำคุณออกจากระบบหรือล้างรถเข็นช็อปปิ้ง
+protections-panel-cookie-banner-view-turn-on-description = { -brand-short-name } จะพยายามปฏิเสธคำขอคุกกี้ทั้งหมดบนไซต์ที่รองรับโดยอัตโนมัติ
+protections-panel-cookie-banner-view-cancel = ยกเลิก
+protections-panel-cookie-banner-view-turn-off = ปิด
+protections-panel-cookie-banner-view-turn-on = เปิด
+protections-panel-cookie-banner-blocker-view-turn-on-description = เปิดใช้งานแล้ว { -brand-short-name } จะพยายามปฏิเสธแบนเนอร์คุกกี้บนไซต์นี้โดยอัตโนมัติ
+protections-panel-cookie-banner-view-cancel-label =
+ .label = ยกเลิก
+protections-panel-cookie-banner-view-turn-off-label =
+ .label = ปิด
+protections-panel-cookie-banner-view-turn-on-label =
+ .label = เปิด
+protections-panel-report-broken-site =
+ .label = รายงานไซต์ที่ใช้งานไม่ได้
+ .title = รายงานไซต์ที่ใช้งานไม่ได้
+
+## Protections panel info message
+
+cfr-protections-panel-header = เรียกดูโดยไม่ต้องมีใครมาติดตาม
+cfr-protections-panel-body = เก็บข้อมูลของคุณไว้กับตัวคุณเอง { -brand-short-name } ปกป้องคุณจากตัวติดตามที่พบบ่อยที่สุดซึ่งติดตามสิ่งที่คุณทำทางออนไลน์
+cfr-protections-panel-link-text = เรียนรู้เพิ่มเติม
diff --git a/l10n-th/browser/browser/recentlyClosed.ftl b/l10n-th/browser/browser/recentlyClosed.ftl
new file mode 100644
index 0000000000..0c51aa94f8
--- /dev/null
+++ b/l10n-th/browser/browser/recentlyClosed.ftl
@@ -0,0 +1,29 @@
+# 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/.
+
+
+## These strings are used in the main menu,
+## and should follow the same capitalization (title case for English).
+## Check menubar.ftl for reference.
+
+recently-closed-menu-reopen-all-tabs = เปิดแท็บทั้งหมดใหม่
+recently-closed-menu-reopen-all-windows = เปิดหน้าต่างทั้งหมดใหม่
+
+## These strings are used in the app menu,
+## and should follow the same capitalization (sentence case for English).
+## Check appmenu.ftl for reference.
+
+recently-closed-panel-reopen-all-tabs = เปิดแท็บทั้งหมดใหม่
+recently-closed-panel-reopen-all-windows = เปิดหน้าต่างทั้งหมดใหม่
+
+##
+
+# Variables:
+# $tabCount (Number): Number of other tabs
+# $winTitle (String): Window title
+recently-closed-undo-close-window-label =
+ { $tabCount ->
+ [0] { $winTitle }
+ *[other] { $winTitle } (และ { $tabCount } แท็บอื่น ๆ)
+ }
diff --git a/l10n-th/browser/browser/reportBrokenSite.ftl b/l10n-th/browser/browser/reportBrokenSite.ftl
new file mode 100644
index 0000000000..0857c5fe1a
--- /dev/null
+++ b/l10n-th/browser/browser/reportBrokenSite.ftl
@@ -0,0 +1,43 @@
+# 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/.
+
+report-broken-site-mainview-title = รายงานไซต์ที่ใช้งานไม่ได้
+report-broken-site-panel-header =
+ .label = รายงานไซต์ที่ใช้งานไม่ได้
+ .title = รายงานไซต์ที่ใช้งานไม่ได้
+report-broken-site-panel-intro = ช่วยทำให้ { -brand-product-name } ดีขึ้นสำหรับทุกคน { -vendor-short-name } ใช้ข้อมูลที่คุณส่งมาเพื่อแก้ไขปัญหาเกี่ยวกับเว็บไซต์
+report-broken-site-panel-url = URL
+report-broken-site-panel-reason-label = มีอะไรเสียหาย?
+report-broken-site-panel-reason-optional-label = มีอะไรเสียหาย? (เพิ่มเติม)
+report-broken-site-panel-reason-choose =
+ .label = เลือกเหตุผล
+report-broken-site-panel-reason-slow =
+ .label = ไซต์ช้าหรือไม่ทำงาน
+report-broken-site-panel-reason-media =
+ .label = รูปภาพหรือวิดีโอ
+report-broken-site-panel-reason-content =
+ .label = ปุ่ม ลิงก์ และเนื้อหาอื่นๆ
+report-broken-site-panel-reason-account =
+ .label = ลงชื่อเข้าใช้หรือออกจากระบบ
+report-broken-site-panel-reason-adblockers =
+ .label = ตัวปิดกั้นโฆษณา
+report-broken-site-panel-reason-other =
+ .label = อื่น ๆ
+report-broken-site-panel-description-label = อธิบายปัญหา
+report-broken-site-panel-description-optional-label = อธิบายปัญหา (เพิ่มเติม)
+report-broken-site-panel-send-more-info-link = ส่งข้อมูลเพิ่มเติม
+report-broken-site-panel-button-cancel =
+ .label = ยกเลิก
+report-broken-site-panel-button-okay =
+ .label = ตกลง
+report-broken-site-panel-button-send =
+ .label = ส่ง
+report-broken-site-panel-unspecified = ไม่ระบุ
+report-broken-site-panel-report-sent-label = รายงานของคุณถูกส่งไปแล้ว
+report-broken-site-panel-report-sent-header =
+ .label = รายงานของคุณถูกส่งไปแล้ว
+ .title = รายงานของคุณถูกส่งไปแล้ว
+report-broken-site-panel-report-sent-text = ขอบคุณที่ช่วย { -brand-product-name } ทำให้เว็บเปิดกว้าง เข้าถึงได้ และดียิ่งขึ้นสำหรับทุกคน
+report-broken-site-panel-invalid-url-label = โปรดป้อน URL ที่ถูกต้อง
+report-broken-site-panel-missing-reason-label = โปรดเลือกเหตุผล
diff --git a/l10n-th/browser/browser/safeMode.ftl b/l10n-th/browser/browser/safeMode.ftl
new file mode 100644
index 0000000000..ba79130c80
--- /dev/null
+++ b/l10n-th/browser/browser/safeMode.ftl
@@ -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/.
+
+troubleshoot-mode-window =
+ .title = เปิด { -brand-short-name } ในโหมดแก้ไขปัญหาหรือไม่?
+ .style = max-width: 400px
+start-troubleshoot-mode =
+ .label = เปิด
+refresh-profile =
+ .label = ล้าง { -brand-short-name } ใหม่
+troubleshoot-mode-description = ใช้โหมดพิเศษนี้ของ { -brand-short-name } เพื่อวินิจฉัยปัญหา ส่วนขยายและการปรับแต่งของคุณจะถูกปิดใช้งานชั่วคราว
+skip-troubleshoot-refresh-profile = คุณยังสามารถข้ามการแก้ไขปัญหาและตั้งค่า { -brand-short-name } ใหม่แทนได้
+# Shown on the safe mode dialog after multiple startup crashes.
+auto-safe-mode-description = { -brand-short-name } ถูกปิดโดยไม่คาดคิดขณะเริ่ม ซึ่งอาจมีสาเหตุมาจากส่วนเสริมหรือปัญหาอื่น ๆ คุณสามารถลองแก้ไขปัญหาโดยการแก้ไขปัญหาในโหมดปลอดภัย
diff --git a/l10n-th/browser/browser/safebrowsing/blockedSite.ftl b/l10n-th/browser/browser/safebrowsing/blockedSite.ftl
new file mode 100644
index 0000000000..5519d2a76b
--- /dev/null
+++ b/l10n-th/browser/browser/safebrowsing/blockedSite.ftl
@@ -0,0 +1,58 @@
+# 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/.
+
+safeb-blocked-phishing-page-title = ไซต์หลอกลวงข้างหน้า
+safeb-blocked-malware-page-title = การเยี่ยมชมเว็บไซต์นี้อาจเป็นอันตรายต่อคอมพิวเตอร์ของคุณ
+safeb-blocked-unwanted-page-title = ไซต์ข้างหน้าอาจมีโปรแกรมที่เป็นอันตราย
+safeb-blocked-harmful-page-title = ไซต์ข้างหน้าอาจมีมัลแวร์
+safeb-blocked-phishing-page-short-desc = { -brand-short-name } ได้ปิดกั้นหน้านี้เนื่องจากหน้าอาจหลอกลวงคุณให้ทำบางอย่างที่เป็นอันตรายอย่างติดตั้งซอฟต์แวร์หรือเปิดเผยข้อมูลส่วนบุคคลอย่างรหัสผ่านหรือบัตรเครดิต
+safeb-blocked-malware-page-short-desc = { -brand-short-name } ได้ปิดกั้นหน้านี้เนื่องจากหน้าอาจพยายามติดตั้งซอฟต์แวร์ที่ประสงค์ร้ายที่อาจขโมยหรือลบข้อมูลส่วนบุคคลในคอมพิวเตอร์ของคุณ
+safeb-blocked-unwanted-page-short-desc = { -brand-short-name } ได้ปิดกั้นหน้านี้เนื่องจากหน้าอาจพยายามหลอกลวงคุณให้ติดตั้งโปรแกรมที่เป็นอันตรายต่อประสบการณ์การเรียกดูของคุณ (ตัวอย่างเช่น โดยการเปลี่ยนหน้าแรกของคุณหรือแสดงโฆษณาพิเศษในหน้าที่คุณเยี่ยมชม)
+safeb-blocked-harmful-page-short-desc = { -brand-short-name } ได้ปิดกั้นหน้านี้เนื่องจากหน้าอาจพยายามติดตั้งแอปที่เป็นอันตรายที่ขโมยหรือลบข้อมูลของคุณ (ตัวอย่างเช่น รูปถ่าย, รหัสผ่าน, ข้อความ และบัตรเครดิต)
+safeb-palm-advisory-desc = คำแนะนำโดย <a data-l10n-name='advisory_provider'>{ $advisoryname }</a>
+safeb-palm-accept-label = ย้อนกลับ
+safeb-palm-see-details-label = ดูรายละเอียด
+
+## Variables
+## $sitename (string) - Domain name for the blocked page
+
+safeb-blocked-phishing-page-error-desc-override = <span data-l10n-name='sitename'>{ $sitename }</span> <a data-l10n-name='error_desc_link'>ถูกรายงานว่าเป็นไซต์หลอกลวง</a> คุณสามารถ <a data-l10n-name='report_detection'>รายงานปัญหาการตรวจพบ</a> หรือ <a data-l10n-name='ignore_warning_link'>ไม่สนใจความเสี่ยง</a> และไปยังไซต์ที่ไม่ปลอดภัยนี้
+safeb-blocked-phishing-page-error-desc-no-override = <span data-l10n-name='sitename'>{ $sitename }</span> <a data-l10n-name='error_desc_link'>ถูกรายงานว่าเป็นไซต์หลอกลวง</a> คุณสามารถ <a data-l10n-name='report_detection'>รายงานปัญหาการตรวจพบ</a>
+
+##
+
+safeb-blocked-phishing-page-learn-more = เรียนรู้เพิ่มเติมเกี่ยวกับไซต์หลอกลวงและระบบฟิชชิ่งได้ที่ <a data-l10n-name='learn_more_link'>www.antiphishing.org</a> เรียนรู้เพิ่มเติมเกี่ยวกับระบบฟิชชิ่งและระบบป้องกันมัลแวร์ของ { -brand-short-name } ได้ที่ <a data-l10n-name='firefox_support'>support.mozilla.org</a>
+
+## Variables
+## $sitename (string) - Domain name for the blocked page
+
+safeb-blocked-malware-page-error-desc-override-sumo = <span data-l10n-name='sitename'>{ $sitename }</span> ได้ถูก<a data-l10n-name='error_desc_link'>รายงานว่ามีซอฟต์แวร์ที่เป็นอันตราย</a> คุณสามารถ<a data-l10n-name='ignore_warning_link'>เพิกเฉยความเสี่ยง</a>และไปยังไซต์ที่ไม่ปลอดภัยนี้ได้
+safeb-blocked-malware-page-error-desc-no-override-sumo = <span data-l10n-name='sitename'>{ $sitename }</span> ได้ถูก<a data-l10n-name='error_desc_link'>รายงานว่ามีซอฟต์แวร์ที่เป็นอันตราย</a>
+
+##
+
+safeb-blocked-malware-page-learn-more-sumo = เรียนรู้เพิ่มเติมเกี่ยวกับระบบฟิชชิ่งและระบบป้องก้นมัลแวร์ของ { -brand-short-name } ได้ที่ <a data-l10n-name='firefox_support'>support.mozilla.org</a>
+
+## Variables
+## $sitename (string) - Domain name for the blocked page
+
+safeb-blocked-unwanted-page-error-desc-override = <span data-l10n-name='sitename'>{ $sitename }</span> <a data-l10n-name='error_desc_link'>ถูกรายงานว่ามีซอฟต์แวร์ที่เป็นอันตราย</a> คุณสามารถ <a data-l10n-name='ignore_warning_link'>ไม่สนใจความเสี่ยง</a> และไปยังไซต์ที่ไม่ปลอดภัยนี้
+safeb-blocked-unwanted-page-error-desc-no-override = <span data-l10n-name='sitename'>{ $sitename }</span> <a data-l10n-name='error_desc_link'>ถูกรายงานว่ามีซอฟต์แวร์ที่เป็นอันตราย</a>
+
+##
+
+safeb-blocked-unwanted-page-learn-more = เรียนรู้เพิ่มเติมเกี่ยวกับซอฟต์แวร์ที่เป็นอันตรายและไม่ต้องการได้ที่ <a data-l10n-name='learn_more_link'>นโยบายซอฟต์แวร์ที่ไม่ต้องการ</a> เรียนรู้เพิ่มเติมเกี่ยวกับระบบฟิชชิ่งและระบบป้องกันมัลแวร์ของ { -brand-short-name } ได้ที่ <a data-l10n-name='firefox_support'>support.mozilla.org</a>
+
+## Variables
+## $sitename (string) - Domain name for the blocked page
+
+safeb-blocked-harmful-page-error-desc-override = <span data-l10n-name='sitename'>{ $sitename }</span> <a data-l10n-name='error_desc_link'>ถูกรายงานว่ามีแอปพลิเคชันที่อาจเป็นอันตราย</a> คุณสามารถ <a data-l10n-name='ignore_warning_link'>ไม่สนใจความเสี่ยง</a> และไปยังไซต์ที่ไม่ปลอดภัยนี้
+safeb-blocked-harmful-page-error-desc-no-override = <span data-l10n-name='sitename'>{ $sitename }</span> <a data-l10n-name='error_desc_link'>ถูกรายงานว่ามีแอปพลิเคชันที่อาจเป็นอันตราย</a>
+
+##
+
+safeb-blocked-harmful-page-learn-more = เรียนรู้เพิ่มเติมเกี่ยวกับระบบฟิชชิ่งและระบบป้องก้นมัลแวร์ของ { -brand-short-name } ได้ที่ <a data-l10n-name='firefox_support'>support.mozilla.org</a>
+safeb-palm-notdeceptive =
+ .label = นี่ไม่ใช่ไซต์หลอกลวง…
+ .accesskey = ห
diff --git a/l10n-th/browser/browser/sanitize.ftl b/l10n-th/browser/browser/sanitize.ftl
new file mode 100644
index 0000000000..2f59adfd2d
--- /dev/null
+++ b/l10n-th/browser/browser/sanitize.ftl
@@ -0,0 +1,125 @@
+# 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/.
+
+sanitize-prefs2 =
+ .title = การตั้งค่าการล้างประวัติ
+ .style = min-width: 34em
+sanitize-prefs-style =
+ .style = width: 17em
+sanitize-dialog-title2 =
+ .title = ล้างข้อมูลการเรียกดูและคุกกี้
+ .style = min-width: 34em
+sanitize-dialog-title =
+ .title = ล้างประวัติล่าสุด
+ .style = min-width: 34em
+# When "Time range to clear" is set to "Everything", this message is used for the
+# title instead of dialog-title.
+sanitize-dialog-title-everything =
+ .title = ล้างประวัติทั้งหมด
+ .style = min-width: 34em
+clear-data-settings-label = เมื่อปิด { -brand-short-name } ควรล้างทั้งหมดโดยอัตโนมัติ
+sanitize-on-shutdown-description = ล้างรายการที่เลือกทั้งหมดโดยอัตโนมัติเมื่อปิด { -brand-short-name }
+
+## clear-time-duration-prefix is followed by a dropdown list, with
+## values localized using clear-time-duration-value-* messages.
+## clear-time-duration-suffix is left empty in English, but can be
+## used in other languages to change the structure of the message.
+##
+## This results in English:
+## Time range to clear: (Last Hour, Today, etc.)
+
+clear-time-duration-prefix =
+ .value = ช่วงเวลาที่จะล้าง:{ " " }
+ .accesskey = ช
+clear-time-duration-prefix2 =
+ .value = เมื่อ:
+ .accesskey = ม
+clear-time-duration-value-last-hour =
+ .label = ชั่วโมงที่แล้ว
+clear-time-duration-value-last-2-hours =
+ .label = สองชั่วโมงที่แล้ว
+clear-time-duration-value-last-4-hours =
+ .label = สี่ชั่วโมงที่แล้ว
+clear-time-duration-value-today =
+ .label = วันนี้
+clear-time-duration-value-everything =
+ .label = ทั้งหมด
+clear-time-duration-suffix =
+ .value = { "" }
+
+## These strings are used as section comments and checkboxes
+## to select the items to remove
+
+history-section-label = ประวัติ
+item-history-and-downloads =
+ .label = ประวัติการเรียกดูและการดาวน์โหลด
+ .accesskey = ป
+item-history-form-data-downloads =
+ .label = ประวัติ
+ .accesskey = ป
+item-history-form-data-downloads-description = ล้างเว็บไซต์และประวัติการดาวน์โหลด ข้อมูลแบบฟอร์มที่บันทึกไว้ และการค้นหา
+item-cookies =
+ .label = คุกกี้
+ .accesskey = ค
+# Variables:
+# $amount (Number) - Amount of site data currently stored on disk
+# $unit (String) - Abbreviation of the unit that $amount is in, e.g. "MB"
+item-cookies-site-data-with-size =
+ .label = คุกกี้และข้อมูลไซต์ ({ $amount } { $unit })
+ .accesskey = ค
+item-cookies-site-data =
+ .label = คุกกี้และข้อมูลไซต์
+ .accesskey = ค
+item-cookies-site-data-description = อาจทำให้คุณออกจากระบบไซต์หรือทำให้ตะกร้าสินค้าว่างเปล่า
+item-active-logins =
+ .label = การเข้าสู่ระบบที่ใช้งานอยู่
+ .accesskey = ก
+item-cache =
+ .label = แคช
+ .accesskey = ช
+# Variables:
+# $amount (Number) - Amount of cached data
+# $unit (String) - Abbreviation of the unit that $amount is in, e.g. "MB"
+item-cached-content-with-size =
+ .label = ไฟล์และหน้าที่แคชชั่วคราว ({ $amount } { $unit })
+ .accesskey = ฟ
+item-cached-content =
+ .label = ไฟล์และหน้าที่แคชไว้ชั่วคราว
+ .accesskey = ฟ
+item-cached-content-description = ล้างรายการที่ช่วยให้โหลดไซต์ได้เร็วขึ้น
+item-form-search-history =
+ .label = ประวัติแบบฟอร์มและการค้นหา
+ .accesskey = ว
+item-site-prefs =
+ .label = การตั้งค่าไซต์
+ .accesskey = ไ
+item-site-prefs-description = รีเซ็ตสิทธิอนุญาตและการกำหนดลักษณะไซต์ของคุณเป็นการตั้งค่าดั้งเดิม
+data-section-label = ข้อมูล
+item-site-settings =
+ .label = การตั้งค่าไซต์
+ .accesskey = S
+item-offline-apps =
+ .label = ข้อมูลเว็บไซต์ออฟไลน์
+ .accesskey = ข
+sanitize-everything-undo-warning = การกระทำนี้ไม่สามารถเลิกทำได้
+window-close =
+ .key = w
+sanitize-button-ok =
+ .label = ล้างตอนนี้
+sanitize-button-ok2 =
+ .label = ล้าง
+sanitize-button-ok-on-shutdown =
+ .label = บันทึกการเปลี่ยนแปลง
+# The label for the default button between the user clicking it and the window
+# closing. Indicates the items are being cleared.
+sanitize-button-clearing =
+ .label = กำลังล้าง
+# Warning that appears when "Time range to clear" is set to "Everything" in Clear
+# Recent History dialog, provided that the user has not modified the default set
+# of history items to clear.
+sanitize-everything-warning = ประวัติทั้งหมดจะถูกล้าง
+# Warning that appears when "Time range to clear" is set to "Everything" in Clear
+# Recent History dialog, provided that the user has modified the default set of
+# history items to clear.
+sanitize-selected-warning = รายการที่เลือกทั้งหมดจะถูกล้าง
diff --git a/l10n-th/browser/browser/screenshots.ftl b/l10n-th/browser/browser/screenshots.ftl
new file mode 100644
index 0000000000..249d61b81f
--- /dev/null
+++ b/l10n-th/browser/browser/screenshots.ftl
@@ -0,0 +1,60 @@
+# 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/.
+
+screenshot-toolbarbutton =
+ .label = ภาพหน้าจอ
+ .tooltiptext = จับภาพหน้าจอ
+
+screenshot-shortcut =
+ .key = S
+
+screenshots-instructions = ลากหรือคลิกที่หน้าเพื่อเลือกบริเวณ กด ESC เพื่อยกเลิก
+screenshots-cancel-button = ยกเลิก
+screenshots-save-visible-button = บันทึกส่วนที่มองเห็น
+screenshots-save-page-button = บันทึกเต็มหน้า
+screenshots-download-button = ดาวน์โหลด
+screenshots-download-button-tooltip = ดาวน์โหลดภาพหน้าจอ
+screenshots-copy-button = คัดลอก
+screenshots-copy-button-tooltip = คัดลอกภาพหน้าจอไปยังคลิปบอร์ด
+screenshots-download-button-title =
+ .title = ดาวน์โหลดภาพหน้าจอ
+screenshots-copy-button-title =
+ .title = คัดลอกภาพหน้าจอไปยังคลิปบอร์ด
+screenshots-cancel-button-title =
+ .title = ยกเลิก
+screenshots-retry-button-title =
+ .title = ลองภาพหน้าจออีกครั้ง
+
+screenshots-meta-key =
+ { PLATFORM() ->
+ [macos] ⌘
+ *[other] Ctrl
+ }
+screenshots-notification-link-copied-title = คัดลอกลิงก์แล้ว
+screenshots-notification-link-copied-details = คัดลอกลิงก์ไปยังภาพหน้าจอของคุณไปยังคลิปบอร์ดแล้ว กด { screenshots-meta-key }-V เพื่อวาง
+
+screenshots-notification-image-copied-title = คัดลอกภาพหน้าจอแล้ว
+screenshots-notification-image-copied-details = คัดลอกภาพของคุณไปยังคลิปบอร์ดแล้ว กด { screenshots-meta-key }-V เพื่อวาง
+
+screenshots-request-error-title = ใช้งานไม่ได้
+screenshots-request-error-details = ขออภัย! เราไม่สามารถบันทึกภาพหน้าจอของคุณ โปรดลองอีกครั้งในภายหลัง
+
+screenshots-connection-error-title = เราไม่สามารถเชื่อมต่อกับภาพหน้าจอของคุณ
+screenshots-connection-error-details = โปรดตรวจสอบการเชื่อมต่ออินเทอร์เน็ตของคุณ หากคุณสามารถเชื่อมต่ออินเทอร์เน็ต บริการ { -screenshots-brand-name } อาจมีปัญหาชั่วคราว
+
+screenshots-login-error-details = เราไม่สามารถบันทึกภาพหน้าจอของคุณเนื่องจากบริการ { -screenshots-brand-name } มีปัญหา โปรดลองอีกครั้งในภายหลัง
+
+screenshots-unshootable-page-error-title = เราไม่สามารถจับภาพหน้าจอหน้านี้
+screenshots-unshootable-page-error-details = นี่ไม่ใช่หน้าเว็บมาตรฐาน คุณจึงไม่สามารถจับภาพหน้าจอได้
+
+screenshots-empty-selection-error-title = การเลือกของคุณเล็กเกินไป
+
+screenshots-private-window-error-title = { -screenshots-brand-name } ถูกปิดใช้งานในโหมดการเรียกดูแบบส่วนตัว
+screenshots-private-window-error-details = ขออภัยในความไม่สะดวก เรากำลังพัฒนาคุณลักษณะนี้สำหรับรุ่นในอนาคต
+
+screenshots-generic-error-title = โอ๊ย! { -screenshots-brand-name } รวน
+screenshots-generic-error-details = เราไม่แน่ใจว่าเกิดอะไรขึ้น ต้องการลองอีกครั้งหรือจับภาพหน้าจอของหน้าอื่น?
+
+screenshots-too-large-error-title = ภาพหน้าจอของคุณถูกครอบตัดเนื่องจากมีขนาดใหญ่เกินไป
+screenshots-too-large-error-details = ลองเลือกขอบเขตที่มีขนาดเล็กกว่า 32,700 พิกเซลที่ด้านยาวที่สุด หรือพื้นที่ทั้งหมด 124,900,000 พิกเซล
diff --git a/l10n-th/browser/browser/screenshotsOverlay.ftl b/l10n-th/browser/browser/screenshotsOverlay.ftl
new file mode 100644
index 0000000000..6383f01f5e
--- /dev/null
+++ b/l10n-th/browser/browser/screenshotsOverlay.ftl
@@ -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/.
+
+screenshots-overlay-cancel-button = ยกเลิก
+screenshots-overlay-instructions = ลากหรือคลิกที่หน้าเพื่อเลือกบริเวณ กด ESC เพื่อยกเลิก
+screenshots-overlay-download-button = ดาวน์โหลด
+screenshots-overlay-copy-button = คัดลอก
+# This string represents the selection size area
+# "x" here represents "by" (i.e 123 by 456)
+# Variables:
+# $width (Number) - The width of the selection region in pixels
+# $height (Number) - The height of the selection region in pixels
+screenshots-overlay-selection-region-size = { $width } x { $height }
diff --git a/l10n-th/browser/browser/search.ftl b/l10n-th/browser/browser/search.ftl
new file mode 100644
index 0000000000..f31bea09b4
--- /dev/null
+++ b/l10n-th/browser/browser/search.ftl
@@ -0,0 +1,35 @@
+# 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/.
+
+
+## These strings are used for errors when installing OpenSearch engines, e.g.
+## via "Add Search Engine" on the address bar or search bar.
+## Variables
+## $location-url (String) - the URL of the OpenSearch engine that was attempted to be installed.
+
+opensearch-error-duplicate-title = การติดตั้งผิดพลาด
+opensearch-error-duplicate-desc = { -brand-short-name } ไม่สามารถติดตั้งส่วนเสริมการค้นหาจาก “{ $location-url }” เพราะมีเครื่องมือค้นหาที่ใช้ชื่อเดียวกันอยู่แล้ว
+opensearch-error-format-title = รูปแบบผิดพลาด
+opensearch-error-format-desc = { -brand-short-name } ไม่สามารถติดตั้งเครื่องค้นหาจาก: { $location-url }
+opensearch-error-download-title = ข้อผิดพลาดการดาวน์โหลด
+opensearch-error-download-desc = { -brand-short-name } ไม่สามารถดาวน์โหลดส่วนเสริมการค้นหาจาก: { $location-url }
+
+##
+
+searchbar-submit =
+ .tooltiptext = ค้นหา
+# This string is displayed in the search box when the input field is empty
+searchbar-input =
+ .placeholder = ค้นหา
+searchbar-icon =
+ .tooltiptext = ค้นหา
+
+## Infobar shown when search engine is removed and replaced.
+## Variables
+## $oldEngine (String) - the search engine to be removed.
+## $newEngine (String) - the search engine to replace the removed search engine.
+
+removed-search-engine-message = <strong>เครื่องมือค้นหาเริ่มต้นของคุณได้ถูกเปลี่ยนแล้ว</strong> เนื่องจากใน { -brand-short-name } ไม่มี { $oldEngine } ให้ใช้เป็นเครื่องมือค้นหาเริ่มต้นอีกต่อไป ขณะนี้ { $newEngine } คือเครื่องมือค้นหาเริ่มต้นของคุณ เมื่อต้องการเปลี่ยนเป็นเครื่องมือค้นหาเริ่มต้นอื่น ให้ไปที่การตั้งค่า <label data-l10n-name="remove-search-engine-article">เรียนรู้เพิ่มเติม</label>
+removed-search-engine-message2 = <strong>เครื่องมือค้นหาเริ่มต้นของคุณได้ถูกเปลี่ยนแล้ว</strong> เนื่องจากใน { -brand-short-name } ไม่มี { $oldEngine } ให้ใช้เป็นเครื่องมือค้นหาเริ่มต้นอีกต่อไป ขณะนี้ { $newEngine } คือเครื่องมือค้นหาเริ่มต้นของคุณ เมื่อต้องการเปลี่ยนเป็นเครื่องมือค้นหาเริ่มต้นอื่น ให้ไปที่การตั้งค่า
+remove-search-engine-button = ตกลง
diff --git a/l10n-th/browser/browser/setDesktopBackground.ftl b/l10n-th/browser/browser/setDesktopBackground.ftl
new file mode 100644
index 0000000000..af7794f726
--- /dev/null
+++ b/l10n-th/browser/browser/setDesktopBackground.ftl
@@ -0,0 +1,40 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+set-desktop-background-window =
+ .title = ตั้งพื้นหลังเดสก์ท็อป
+
+set-desktop-background-accept =
+ .label = ตั้งพื้นหลังเดสก์ท็อป
+
+open-desktop-prefs =
+ .label = เปิดการกำหนดลักษณะเดสก์ท็อป
+
+set-background-preview-unavailable = การแสดงตัวอย่างไม่สามารถใช้ได้
+
+# This refers to the wallpaper "spanning" multiple monitors when the
+# user has more than one. Only some of the entire image will be on
+# each monitor. This should ideally match the wording in Windows' own
+# Desktop Background settings page.
+set-background-span =
+ .label = ยืดขยาย
+
+set-background-color = สี:
+
+set-background-position = ตำแหน่ง:
+
+set-background-tile =
+ .label = ไทล์
+
+set-background-center =
+ .label = กึ่งกลาง
+
+set-background-stretch =
+ .label = ยืดเต็มหน้าจอ
+
+set-background-fill =
+ .label = ขยายเต็มหน้าจอ
+
+set-background-fit =
+ .label = พอดีหน้าจอ
diff --git a/l10n-th/browser/browser/shopping.ftl b/l10n-th/browser/browser/shopping.ftl
new file mode 100644
index 0000000000..d8c531bbce
--- /dev/null
+++ b/l10n-th/browser/browser/shopping.ftl
@@ -0,0 +1,201 @@
+# 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/.
+
+shopping-page-title = { -brand-product-name } Shopping
+# Title for page showing where a user can check the
+# review quality of online shopping product reviews
+shopping-main-container-title = ตัวตรวจสอบบทวิจารณ์
+shopping-beta-marker = Beta
+# This string is for ensuring that screen reader technology
+# can read out the "Beta" part of the shopping sidebar header.
+# Any changes to shopping-main-container-title and
+# shopping-beta-marker should also be reflected here.
+shopping-a11y-header =
+ .aria-label = ตัวตรวจสอบบทวิจารณ์ - รุ่นเบต้า
+shopping-close-button =
+ .title = ปิด
+# This string is for notifying screen reader users that the
+# sidebar is still loading data.
+shopping-a11y-loading =
+ .aria-label = กำลังโหลด…
+
+## Strings for the letter grade component.
+## For now, we only support letter grades A, B, C, D and F.
+## Letter A indicates the highest grade, and F indicates the lowest grade.
+## Letters are hardcoded and cannot be localized.
+
+shopping-letter-grade-description-ab = บทวิจารณ์ที่น่าเชื่อถือ
+shopping-letter-grade-description-c = บทวิจารณ์ที่น่าเชื่อถือและไม่น่าเชื่อถือปนกัน
+shopping-letter-grade-description-df = บทวิจารณ์ที่ไม่น่าเชื่อถือ
+# This string is displayed in a tooltip that appears when the user hovers
+# over the letter grade component without a visible description.
+# It is also used for screen readers.
+# $letter (String) - The letter grade as A, B, C, D or F (hardcoded).
+# $description (String) - The localized letter grade description. See shopping-letter-grade-description-* strings above.
+shopping-letter-grade-tooltip =
+ .title = { $letter } - { $description }
+
+## Strings for the shopping message-bar
+
+shopping-message-bar-warning-stale-analysis-message-2 = ข้อมูลใหม่ที่ต้องตรวจสอบ
+shopping-message-bar-warning-stale-analysis-button = ตรวจสอบตอนนี้
+shopping-message-bar-generic-error =
+ .heading = ไม่มีข้อมูลในขณะนี้
+ .message = เรากำลังดำเนินการแก้ไขปัญหานี้ โปรดกลับมาตรวจสอบอีกครั้งเร็วๆ นี้
+shopping-message-bar-warning-not-enough-reviews =
+ .heading = บทวิจารณ์ยังไม่เพียงพอ
+ .message = เมื่อผลิตภัณฑ์นี้มีบทวิจารณ์มากขึ้น เราจะสามารถตรวจสอบคุณภาพของบทวิจารณ์ได้
+shopping-message-bar-warning-product-not-available =
+ .heading = สินค้าไม่พร้อมจำหน่าย
+ .message = หากคุณเห็นว่าสินค้านี้มีอยู่ในสต็อกแล้ว โปรดรายงานแล้วเราจะทำการตรวจสอบบทวิจารณ์
+shopping-message-bar-warning-product-not-available-button2 = รายงานว่าสินค้ามีในสต็อก
+shopping-message-bar-thanks-for-reporting =
+ .heading = ขอบคุณสำหรับการรายงาน!
+ .message = เราคาดว่าจะได้รับข้อมูลเกี่ยวกับบทวิจารณ์ของผลิตภัณฑ์นี้ภายใน 24 ชั่วโมง โปรดกลับมาตรวจสอบอีกครั้งในภายหลัง
+shopping-message-bar-warning-product-not-available-reported =
+ .heading = ข้อมูลจะมาเร็ว ๆ นี้
+ .message = เราคาดว่าจะได้รับข้อมูลเกี่ยวกับบทวิจารณ์ของผลิตภัณฑ์นี้ภายใน 24 ชั่วโมง โปรดกลับมาตรวจสอบอีกครั้งในภายหลัง
+shopping-message-bar-analysis-in-progress-title2 = กำลังตรวจสอบคุณภาพบทวิจารณ์
+shopping-message-bar-analysis-in-progress-message2 = การดำเนินการนี้อาจใช้เวลาประมาณ 60 วินาที
+# Variables:
+# $percentage (Number) - The percentage complete that the analysis is, per our servers.
+shopping-message-bar-analysis-in-progress-with-amount = กำลังตรวจสอบคุณภาพบทวิจารณ์ ({ $percentage }%)
+shopping-message-bar-page-not-supported =
+ .heading = เราไม่สามารถตรวจสอบบทวิจารณ์เหล่านี้ได้
+ .message = ขออภัย เราไม่สามารถตรวจสอบคุณภาพบทวิจารณ์สำหรับผลิตภัณฑ์บางชนิดได้ เช่น บัตรของขวัญ วิดีโอสตรีมมิง เพลง และเกม
+
+## Strings for the product review snippets card
+
+shopping-highlights-label =
+ .label = ไฮไลต์จากบทวิจารณ์ล่าสุด
+shopping-highlight-price = ราคา
+shopping-highlight-quality = คุณภาพ
+shopping-highlight-shipping = การส่งสินค้า
+shopping-highlight-competitiveness = ศักยภาพในการแข่งขัน
+shopping-highlight-packaging = บรรจุภัณฑ์
+
+## Strings for show more card
+
+shopping-show-more-button = แสดงเพิ่มเติม
+shopping-show-less-button = แสดงน้อยลง
+
+## Strings for the settings card
+
+shopping-settings-label =
+ .label = การตั้งค่า
+shopping-settings-recommendations-toggle =
+ .label = แสดงโฆษณาในตัวตรวจสอบบทวิจารณ์
+shopping-settings-recommendations-learn-more2 = คุณจะเห็นโฆษณาสำหรับผลิตภัณฑ์ที่เกี่ยวข้องเป็นครั้งคราว เราจะโฆษณาเฉพาะผลิตภัณฑ์ที่มีบทวิจารณ์ที่เชื่อถือได้เท่านั้น <a data-l10n-name="review-quality-url">เรียนรู้เพิ่มเติม</a>
+shopping-settings-opt-out-button = ปิดตัวตรวจสอบบทวิจารณ์
+powered-by-fakespot = ตัวตรวจสอบบทวิจารณ์ขับเคลื่อนโดย <a data-l10n-name="fakespot-link">{ -fakespot-brand-full-name }</a>
+
+## Strings for the adjusted rating component
+
+# "Adjusted rating" means a star rating that has been adjusted to include only
+# reliable reviews.
+shopping-adjusted-rating-label =
+ .label = คะแนนที่ปรับแล้ว
+shopping-adjusted-rating-unreliable-reviews = เอาบทวิจารณ์ที่ไม่น่าเชื่อถือออกแล้ว
+
+## Strings for the review reliability component
+
+shopping-review-reliability-label =
+ .label = บทวิจารณ์เหล่านี้น่าเชื่อถือแค่ไหน
+
+## Strings for the analysis explainer component
+
+shopping-analysis-explainer-label =
+ .label = วิธีที่เราพิจารณาคุณภาพบทวิจารณ์
+shopping-analysis-explainer-intro2 = เราใช้เทคโนโลยี AI จาก { -fakespot-brand-full-name } เพื่อตรวจสอบความน่าเชื่อถือของบทวิจารณ์ผลิตภัณฑ์ สิ่งนี้จะช่วยคุณประเมินคุณภาพของบทวิจารณ์เพียงอย่างเดียว ไม่ได้ประเมินคุณภาพของผลิตภัณฑ์
+shopping-analysis-explainer-grades-intro = เรากำหนด<strong>เกรดที่เป็นตัวอักษร</strong>ให้กับบทวิจารณ์ของผลิตภัณฑ์แต่ละรายการตั้งแต่ A ถึง F
+shopping-analysis-explainer-adjusted-rating-description = <strong>คะแนนที่ปรับปรุงแล้ว</strong>จะขึ้นอยู่กับบทวิจารณ์ที่เราเชื่อว่าน่าเชื่อถือเท่านั้น
+shopping-analysis-explainer-learn-more2 = เรียนรู้เพิ่มเติมเกี่ยวกับ<a data-l10n-name="review-quality-url">วิธีที่ { -fakespot-brand-name } พิจารณาคุณภาพบทวิจารณ์</a>
+# This string includes the short brand name of one of the three supported
+# websites, which will be inserted without being translated.
+# $retailer (String) - capitalized name of the shopping website, for example, "Amazon".
+shopping-analysis-explainer-highlights-description = <strong>ไฮไลต์</strong>มาจากบทวิจารณ์ใน { $retailer } ภายใน 80 วันที่ผ่านมา ซึ่งเราเชื่อว่าน่าเชื่อถือ
+shopping-analysis-explainer-review-grading-scale-reliable = บทวิจารณ์ที่น่าเชื่อถือ เราเชื่อว่าบทวิจารณ์นั้นน่าจะมาจากลูกค้าจริงซึ่งให้คำวิจารณ์อย่างตรงไปตรงมาและไม่มีอคติ
+shopping-analysis-explainer-review-grading-scale-mixed = เราเชื่อว่ามีทั้งบทวิจารณ์ที่น่าเชื่อถือและไม่น่าเชื่อถือปะปนกัน
+shopping-analysis-explainer-review-grading-scale-unreliable = บทวิจารณ์ที่ไม่น่าเชื่อถือ เราเชื่อว่าบทวิจารณ์นั้นน่าจะเป็นของปลอมหรือมาจากผู้วิจารณ์ที่มีอคติ
+
+## Strings for UrlBar button
+
+shopping-sidebar-open-button2 =
+ .tooltiptext = เปิดตัวตรวจสอบบทวิจารณ์
+shopping-sidebar-close-button2 =
+ .tooltiptext = ปิดตัวตรวจสอบบทวิจารณ์
+
+## Strings for the unanalyzed product card.
+## The word 'analyzer' when used here reflects what this tool is called on
+## fakespot.com. If possible, a different word should be used for the Fakespot
+## tool (the Fakespot by Mozilla 'analyzer') other than 'checker', which is
+## used in the name of the Firefox feature ('Review Checker'). If that is not
+## possible - if these terms are not meaningfully different - that is OK.
+
+shopping-unanalyzed-product-header-2 = ยังไม่มีข้อมูลเกี่ยวกับบทวิจารณ์เหล่านี้
+shopping-unanalyzed-product-message-2 = หากต้องการทราบว่าบทวิจารณ์ของผลิตภัณฑ์นี้เชื่อถือได้หรือไม่ ให้ตรวจสอบคุณภาพบทวิจารณ์ โดยจะใช้เวลาเพียงประมาณ 60 วินาที
+shopping-unanalyzed-product-analyze-button = ตรวจสอบคุณภาพบทวิจารณ์
+
+## Strings for the advertisement
+
+more-to-consider-ad-label =
+ .label = ลองดูเพิ่ม
+ad-by-fakespot = โฆษณาโดย { -fakespot-brand-name }
+
+## Shopping survey strings.
+
+shopping-survey-headline = ช่วยปรับปรุง { -brand-product-name }
+shopping-survey-question-one = คุณพอใจกับประสบการณ์การใช้ตัวตรวจสอบบทวิจารณ์ใน { -brand-product-name } มากน้อยเพียงใด?
+shopping-survey-q1-radio-1-label = พึงพอใจมาก
+shopping-survey-q1-radio-2-label = พึงพอใจ
+shopping-survey-q1-radio-3-label = เป็นกลาง
+shopping-survey-q1-radio-4-label = ไม่พอใจ
+shopping-survey-q1-radio-5-label = ไม่พอใจมาก
+shopping-survey-question-two = ตัวตรวจสอบบทวิจารณ์ช่วยให้คุณตัดสินใจในการสั่งซื้อได้ง่ายขึ้นหรือไม่?
+shopping-survey-q2-radio-1-label = ใช่
+shopping-survey-q2-radio-2-label = ไม่
+shopping-survey-q2-radio-3-label = ฉันไม่ทราบ
+shopping-survey-next-button-label = ถัดไป
+shopping-survey-submit-button-label = ส่ง
+shopping-survey-terms-link = เงื่อนไขการใช้งาน
+shopping-survey-thanks =
+ .heading = ขอบคุณสำหรับข้อคิดเห็นของคุณ!
+
+## Shopping Feature Callout strings.
+## "price tag" refers to the price tag icon displayed in the address bar to
+## access the feature.
+
+shopping-callout-closed-opted-in-subtitle = กลับมาใช้<strong>ตัวตรวจสอบบทวิจารณ์</strong>เมื่อใดก็ตามที่คุณเห็นป้ายราคา
+shopping-callout-pdp-opted-in-title = บทวิจารณ์เหล่านี้เชื่อถือได้หรือไม่? ค้นพบอย่างรวดเร็ว
+shopping-callout-pdp-opted-in-subtitle = เปิดตัวตรวจสอบบทวิจารณ์เพื่อดูคะแนนที่ปรับปรุงแล้วโดยลบบทวิจารณ์ที่ไม่น่าเชื่อถือออก รวมถึงดูไฮไลต์จากบทวิจารณ์ที่แท้จริงล่าสุด
+shopping-callout-closed-not-opted-in-title = ดูบทวิจารณ์ที่เชื่อถือได้ในคลิกเดียว
+shopping-callout-closed-not-opted-in-subtitle = ลองใช้ตัวตรวจสอบบทวิจารณ์ทุกครั้งที่คุณเห็นป้ายราคา รับข้อมูลเชิงลึกจากนักช็อปตัวจริงอย่างรวดเร็วก่อนตัดสินใจซื้อ
+
+## Onboarding message strings.
+
+shopping-onboarding-headline = ลองใช้คำแนะนำที่เชื่อถือได้ของเราเกี่ยวกับบทวิจารณ์ผลิตภัณฑ์
+# Dynamic subtitle. Sites are limited to Amazon, Walmart or Best Buy.
+# Variables:
+# $currentSite (str) - The current shopping page name
+# $secondSite (str) - A second shopping page name
+# $thirdSite (str) - A third shopping page name
+shopping-onboarding-dynamic-subtitle-1 = ดูว่าบทวิจารณ์ผลิตภัณฑ์น่าเชื่อถือแค่ไหนใน <b>{ $currentSite }</b> ก่อนตัดสินใจซื้อ ตัวตรวจสอบบทวิจารณ์ ซึ่งเป็นคุณลักษณะทดลองจาก { -brand-product-name } ถูกบรรจุไว้ภายในตัวเบราว์เซอร์โดยตรง ซึ่งสามารถใช้ใน <b>{ $secondSite }</b> และ <b>{ $thirdSite }</b> ได้ด้วย
+# Subtitle for countries where we only support one shopping website (e.g. currently used in FR/DE with Amazon)
+# Variables:
+# $currentSite (str) - The current shopping page name
+shopping-onboarding-single-subtitle = ดูว่าบทวิจารณ์ผลิตภัณฑ์น่าเชื่อถือแค่ไหนใน <b>{ $currentSite }</b> ก่อนตัดสินใจซื้อ ตัวตรวจสอบบทวิจารณ์ ซึ่งเป็นคุณลักษณะทดลองจาก { -brand-product-name } ถูกบรรจุไว้ภายในตัวเบราว์เซอร์โดยตรง
+shopping-onboarding-body = ด้วยการใช้พลังของ { -fakespot-brand-full-name } เราช่วยคุณหลีกเลี่ยงบทวิจารณ์ที่มีอคติและไม่น่าไว้วางใจ โมเดล AI ของเราจะปรับปรุงอยู่เสมอเพื่อปกป้องคุณในขณะที่คุณซื้อของ <a data-l10n-name="learn_more">เรียนรู้เพิ่มเติม</a>
+shopping-onboarding-opt-in-privacy-policy-and-terms-of-use2 = การเลือก “{ shopping-onboarding-opt-in-button }“ แสดงว่าคุณยอมรับ<a data-l10n-name="privacy_policy">นโยบายความเป็นส่วนตัว</a>และ <a data-l10n-name="terms_of_use">ข้อกำหนดการใช้งาน</a>ของ { -fakespot-brand-name }
+shopping-onboarding-opt-in-privacy-policy-and-terms-of-use3 = การเลือก “{ shopping-onboarding-opt-in-button }“ แสดงว่าคุณยอมรับ<a data-l10n-name="privacy_policy">นโยบายความเป็นส่วนตัว</a>ของ { -brand-product-name } และ <a data-l10n-name="terms_of_use">ข้อกำหนดการใช้งาน</a>ของ { -fakespot-brand-name }
+shopping-onboarding-opt-in-button = ใช่ ลองใช้เลย
+shopping-onboarding-not-now-button = ไม่ใช่ตอนนี้
+shopping-onboarding-dialog-close-button =
+ .title = ปิด
+ .aria-label = ปิด
+# Aria-label to make the "steps" of the shopping onboarding container visible to screen readers.
+# Variables:
+# $current (Int) - Number of the current page
+# $total (Int) - Total number of pages
+shopping-onboarding-welcome-steps-indicator-label =
+ .aria-label = ความคืบหน้า: ขั้นตอนที่ { $current } จาก { $total }
diff --git a/l10n-th/browser/browser/sidebarMenu.ftl b/l10n-th/browser/browser/sidebarMenu.ftl
new file mode 100644
index 0000000000..99b7447d9a
--- /dev/null
+++ b/l10n-th/browser/browser/sidebarMenu.ftl
@@ -0,0 +1,18 @@
+# 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/.
+
+sidebar-menu-bookmarks =
+ .label = ที่คั่นหน้า
+
+sidebar-menu-history =
+ .label = ประวัติ
+
+sidebar-menu-synced-tabs =
+ .label = แท็บที่ซิงค์
+
+sidebar-menu-close =
+ .label = ปิดแถบข้าง
+
+sidebar-close-button =
+ .tooltiptext = ปิดแถบข้าง
diff --git a/l10n-th/browser/browser/sitePermissions.ftl b/l10n-th/browser/browser/sitePermissions.ftl
new file mode 100644
index 0000000000..3272fbaafa
--- /dev/null
+++ b/l10n-th/browser/browser/sitePermissions.ftl
@@ -0,0 +1,11 @@
+# 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 is used to display the option to open blocked popup(s) in site permission management panels.
+# Variables:
+# $count (String) - Number of blocked pop-ups
+site-permissions-open-blocked-popups =
+ { $count ->
+ *[other] เปิด { $count } ป็อปอัปที่ถูกปิดกั้น…
+ }
diff --git a/l10n-th/browser/browser/siteProtections.ftl b/l10n-th/browser/browser/siteProtections.ftl
new file mode 100644
index 0000000000..578e7bf111
--- /dev/null
+++ b/l10n-th/browser/browser/siteProtections.ftl
@@ -0,0 +1,88 @@
+# 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/.
+
+content-blocking-trackers-view-empty = ไม่มีที่ตรวจพบในไซต์นี้
+content-blocking-cookies-blocking-trackers-label = คุกกี้ติดตามข้ามไซต์
+content-blocking-cookies-blocking-third-party-label = คุกกี้จากบุคคลที่สาม
+content-blocking-cookies-blocking-unvisited-label = คุกกี้ของไซต์ที่ไม่ได้เยี่ยมชม
+content-blocking-cookies-blocking-all-label = คุกกี้ทั้งหมด
+content-blocking-cookies-view-first-party-label = จากไซต์นี้
+content-blocking-cookies-view-trackers-label = คุกกี้ติดตามข้ามไซต์
+content-blocking-cookies-view-third-party-label = คุกกี้จากบุคคลที่สาม
+# This label is shown next to a cookie origin in the cookies subview.
+# It forms the end of the (imaginary) sentence "www.example.com [was] Allowed"
+content-blocking-cookies-view-allowed-label =
+ .value = อนุญาตแล้ว
+# This label is shown next to a cookie origin in the cookies subview.
+# It forms the end of the (imaginary) sentence "www.example.com [was] Blocked"
+content-blocking-cookies-view-blocked-label =
+ .value = ปิดกั้นแล้ว
+# Variables:
+# $domain (String): the domain of the site.
+content-blocking-cookies-view-remove-button =
+ .tooltiptext = ล้างข้อยกเว้นคุกกี้สำหรับ { $domain }
+tracking-protection-icon-active = กำลังปิดกั้นตัวติดตามสื่อสังคมออนไลน์ คุกกี้ติดตามข้ามไซต์ และลายนิ้วมือดิจิทัล
+tracking-protection-icon-active-container =
+ .aria-label = { tracking-protection-icon-active }
+tracking-protection-icon-disabled = การป้องกันการติดตามแบบพิเศษปิดอยู่สำหรับไซต์นี้
+tracking-protection-icon-disabled-container =
+ .aria-label = { tracking-protection-icon-disabled }
+tracking-protection-icon-no-trackers-detected = ไม่มีตัวติดตามที่ { -brand-short-name } รู้จักถูกตรวจพบที่หน้านี้
+tracking-protection-icon-no-trackers-detected-container =
+ .aria-label = { tracking-protection-icon-no-trackers-detected }
+
+## Variables:
+## $host (String): the site's hostname
+
+# Header of the Protections Panel.
+protections-header = การป้องกันสำหรับ { $host }
+
+## Blocking and Not Blocking sub-views in the Protections Panel
+
+protections-blocking-fingerprinters =
+ .title = ลายนิ้วมือดิจิทัลถูกปิดกั้น
+protections-blocking-cryptominers =
+ .title = ตัวขุดเหรียญดิจิทัลถูกปิดกั้น
+protections-blocking-cookies-trackers =
+ .title = คุกกี้ติดตามข้ามไซต์ถูกปิดกั้น
+protections-blocking-cookies-third-party =
+ .title = คุกกี้จากบุคคลที่สามถูกปิดกั้น
+protections-blocking-cookies-all =
+ .title = คุกกี้ทั้งหมดถูกปิดกั้น
+protections-blocking-cookies-unvisited =
+ .title = คุกกี้จากไซต์ที่ไม่ได้เยี่ยมชมถูกปิดกั้น
+protections-blocking-tracking-content =
+ .title = ตัวติดตามเนื้อหาถูกปิดกั้น
+protections-blocking-social-media-trackers =
+ .title = ตัวติดตามสังคมออนไลน์ถูกปิดกั้น
+protections-not-blocking-fingerprinters =
+ .title = ไม่ปิดกั้นลายนิ้วมือดิจิทัล
+protections-not-blocking-cryptominers =
+ .title = ไม่ปิดกั้นตัวขุดเหรียญดิจิทัล
+protections-not-blocking-cookies-third-party =
+ .title = ไม่ปิดกั้นคุกกี้จากบุคคลที่สาม
+protections-not-blocking-cookies-all =
+ .title = ไม่ปิดกั้นคุกกี้
+protections-not-blocking-cross-site-tracking-cookies =
+ .title = ไม่ปิดกั้นคุกกี้ติดตามข้ามไซต์
+protections-not-blocking-tracking-content =
+ .title = ไม่ได้ปิดกั้นเนื้อหาการติดตาม
+protections-not-blocking-social-media-trackers =
+ .title = ไม่ได้ปิดกั้นตัวติดตามสื่อสังคมออนไลน์
+
+## Footer and Milestones sections in the Protections Panel
+## Variables:
+## $trackerCount (Number): number of trackers blocked
+## $date (Date): the date on which we started counting
+
+# This text indicates the total number of trackers blocked on all sites.
+# In its tooltip, we show the date when we started counting this number.
+protections-footer-blocked-tracker-counter = { $trackerCount } ถูกปิดกั้น
+ .tooltiptext = ตั้งแต่ { DATETIME($date, year: "numeric", month: "long", day: "numeric") }
+# This text indicates the total number of trackers blocked on all sites.
+# It should be the same as protections-footer-blocked-tracker-counter;
+# this message is used to leave out the tooltip when the date is not available.
+protections-footer-blocked-tracker-counter-no-tooltip = { $trackerCount } ถูกปิดกั้น
+# In English this looks like "Firefox blocked over 10,000 trackers since October 2019"
+protections-milestone = { -brand-short-name } ปิดกั้นตัวติดตาม { $trackerCount } ตัวตั้งแต่ { DATETIME($date, year: "numeric", month: "long") }
diff --git a/l10n-th/browser/browser/speechDispatcher.ftl b/l10n-th/browser/browser/speechDispatcher.ftl
new file mode 100644
index 0000000000..d52564f30e
--- /dev/null
+++ b/l10n-th/browser/browser/speechDispatcher.ftl
@@ -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/.
+
+
+### Speech Dispatches is the name of a speech synthesis tool and shouldn’t be
+### localized (https://freebsoft.org/speechd).
+
+speech-dispatcher-lib-missing = คุณไม่สามารถใช้การสังเคราะห์เสียงได้เนื่องจากไม่มีไลบรารี Speech Dispatcher
+speech-dispatcher-lib-too-old = คุณไม่สามารถใช้การสังเคราะห์เสียงได้เนื่องจากต้องมีการอัปเดต Speech Dispatcher
+speech-dispatcher-missing-symbol = คุณไม่สามารถใช้การสังเคราะห์เสียงได้เนื่องจากไลบรารี Speech Dispatcher เสียหาย
+speech-dispatcher-open-fail = คุณไม่สามารถใช้การสังเคราะห์เสียงได้เนื่องจาก Speech Dispatcher เปิดไม่ได้
+speech-dispatcher-no-voices = คุณไม่สามารถใช้การสังเคราะห์เสียงได้เนื่องจากเสียงไม่พร้อมใช้งานใน Speech Dispatcher
+speech-dispatcher-dismiss-button =
+ .label = ไม่ต้องแสดงอีก
+ .accesskey = ม
diff --git a/l10n-th/browser/browser/spotlight.ftl b/l10n-th/browser/browser/spotlight.ftl
new file mode 100644
index 0000000000..cc54857340
--- /dev/null
+++ b/l10n-th/browser/browser/spotlight.ftl
@@ -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/.
+
+# Dialog close button
+spotlight-dialog-close-button =
+ .title = ปิด
+ .aria-label = ปิด
+
+## Mobile download button strings
+
+spotlight-android-marketplace-button =
+ .title = รับบน Google Play
+spotlight-ios-marketplace-button =
+ .title = ดาวน์โหลดบน App Store
+
+## Firefox Focus promo message strings
+
+spotlight-focus-promo-title = รับ { -focus-brand-name }
+spotlight-focus-promo-subtitle = สแกนรหัส QR นี้เพื่อดาวน์โหลด
+spotlight-focus-promo-qr-code =
+ .alt = สแกน QR code เพื่อรับ { -focus-brand-name }
diff --git a/l10n-th/browser/browser/sync.ftl b/l10n-th/browser/browser/sync.ftl
new file mode 100644
index 0000000000..542129c49d
--- /dev/null
+++ b/l10n-th/browser/browser/sync.ftl
@@ -0,0 +1,31 @@
+# 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/.
+
+fxa-toolbar-sync-syncing2 = กำลังซิงค์…
+sync-disconnect-dialog-title2 = ตัดการเชื่อมต่อหรือไม่
+sync-disconnect-dialog-body = { -brand-product-name } จะหยุดการซิงค์บัญชีของคุณ แต่จะไม่ลบข้อมูลการเรียกดูใด ๆ ของคุณบนอุปกรณ์นี้
+sync-disconnect-dialog-button = ตัดการเชื่อมต่อ
+fxa-signout-dialog2-title = ลงชื่อออก { -fxaccount-brand-name } หรือไม่
+fxa-signout-dialog-title2 = ออกจากระบบบัญชีของคุณหรือไม่?
+fxa-signout-dialog-body = ข้อมูลที่ซิงค์จะยังคงอยู่ในบัญชีของคุณ
+fxa-signout-dialog2-button = ลงชื่อออก
+fxa-signout-dialog2-checkbox = ลบข้อมูลจากอุปกรณ์นี้ (รหัสผ่าน ประวัติ ที่คั่นหน้า ฯลฯ)
+fxa-menu-sync-settings =
+ .label = การตั้งค่า Sync
+fxa-menu-turn-on-sync =
+ .value = เปิดใช้ Sync
+fxa-menu-turn-on-sync-default = เปิดใช้ Sync
+fxa-menu-connect-another-device =
+ .label = เชื่อมต่ออุปกรณ์อื่น…
+# Variables:
+# $tabCount (Number): The number of tabs sent to the device.
+fxa-menu-send-tab-to-device =
+ .label = ส่ง { $tabCount } แท็บไปยังอุปกรณ์
+# This is shown dynamically within "Send tab to device" in fxa menu.
+fxa-menu-send-tab-to-device-syncnotready =
+ .label = กำลังซิงค์อุปกรณ์…
+# This is shown within "Send tab to device" in fxa menu if account is not configured.
+fxa-menu-send-tab-to-device-description = ส่งแท็บทันทีไปยังอุปกรณ์ใด ๆ ที่คุณลงชื่อเข้าใช้
+fxa-menu-sign-out =
+ .label = ลงชื่อออก…
diff --git a/l10n-th/browser/browser/syncedTabs.ftl b/l10n-th/browser/browser/syncedTabs.ftl
new file mode 100644
index 0000000000..3777fcc2d0
--- /dev/null
+++ b/l10n-th/browser/browser/syncedTabs.ftl
@@ -0,0 +1,61 @@
+# 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/.
+
+synced-tabs-sidebar-title = แท็บที่ซิงค์
+synced-tabs-sidebar-noclients-subtitle = ต้องการเห็นแท็บของคุณจากอุปกรณ์อื่น ๆ ที่นี่?
+synced-tabs-sidebar-intro = ดูรายการแท็บจากอุปกรณ์อื่น ๆ ของคุณ
+synced-tabs-sidebar-unverified = บัญชีของคุณจำเป็นต้องได้รับการยืนยัน
+synced-tabs-sidebar-notabs = ไม่มีแท็บที่เปิดอยู่
+synced-tabs-sidebar-open-settings = เปิดการตั้งค่าการซิงค์
+synced-tabs-sidebar-tabsnotsyncing = เปิดการซิงค์แท็บเพื่อดูรายการแท็บจากอุปกรณ์อื่น ๆ ของคุณ
+synced-tabs-sidebar-connect-another-device = เชื่อมต่ออุปกรณ์อื่น
+synced-tabs-sidebar-search =
+ .placeholder = ค้นหาแท็บที่ซิงค์
+
+## Displayed in the Synced Tabs sidebar's context menu when right-clicking tabs
+## and/or devices in the list. The "Open" strings below should be translated
+## consistently with the equivalent strings for the bookmarks manager's context
+## menu. That menu is activated by right-clicking a bookmark in the Library
+## window. The bookmarks manager context's strings are located in places.ftl.
+
+synced-tabs-context-open =
+ .label = เปิด
+ .accesskey = ป
+synced-tabs-context-open-in-tab =
+ .label = เปิดในแท็บใหม่
+ .accesskey = ห
+synced-tabs-context-open-in-container-tab =
+ .label = เปิดในแท็บแยกข้อมูลใหม่
+ .accesskey = ใ
+synced-tabs-context-open-in-window =
+ .label = เปิดในหน้าต่างใหม่
+ .accesskey = ม
+synced-tabs-context-open-in-private-window =
+ .label = เปิดในหน้าต่างส่วนตัวใหม่
+ .accesskey = ส
+
+##
+
+# Displayed in the Synced Tabs sidebar's context menu when right-clicking tabs
+# and/or devices in the list. This string is for a menuitem equivalent to one in
+# the tab context menu (activated by right-clicking a tab in the tabstrip). That
+# string is located in tabContextMenu.ftl. So, this string should be translated
+# consistently with the "Bookmark Tab…" string there.
+synced-tabs-context-bookmark =
+ .label = เพิ่มที่คั่นหน้าสำหรับแท็บ…
+ .accesskey = ท
+synced-tabs-context-copy =
+ .label = คัดลอก
+ .accesskey = ค
+synced-tabs-context-open-all-in-tabs =
+ .label = เปิดทั้งหมดในแท็บ
+ .accesskey = ป
+synced-tabs-context-manage-devices =
+ .label = จัดการอุปกรณ์…
+ .accesskey = จ
+synced-tabs-context-sync-now =
+ .label = ซิงค์ตอนนี้
+ .accesskey = ง
+synced-tabs-fxa-sign-in = ลงชื่อเข้าใช้เพื่อซิงค์
+synced-tabs-turn-on-sync = เปิดการซิงค์
diff --git a/l10n-th/browser/browser/tabContextMenu.ftl b/l10n-th/browser/browser/tabContextMenu.ftl
new file mode 100644
index 0000000000..cbd4e5f046
--- /dev/null
+++ b/l10n-th/browser/browser/tabContextMenu.ftl
@@ -0,0 +1,106 @@
+# 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/.
+
+tab-context-new-tab =
+ .label = แท็บใหม่
+ .accesskey = w
+reload-tab =
+ .label = โหลดแท็บใหม่
+ .accesskey = ห
+select-all-tabs =
+ .label = เลือกแท็บทั้งหมด
+ .accesskey = ล
+tab-context-play-tab =
+ .label = เล่นแท็บ
+ .accesskey = ล
+tab-context-play-tabs =
+ .label = เล่นแท็บ
+ .accesskey = ล
+duplicate-tab =
+ .label = ทำสำเนาแท็บ
+ .accesskey = ท
+duplicate-tabs =
+ .label = ทำสำเนาแท็บ
+ .accesskey = ท
+# The following string is displayed on a menuitem that will close the tabs from the start of the tabstrip to the currently targeted tab (excluding the currently targeted and any other selected tabs).
+# In left-to-right languages this should use "Left" and in right-to-left languages this should use "Right".
+close-tabs-to-the-start =
+ .label = ปิดแท็บไปทางซ้าย
+ .accesskey = l
+# The following string is displayed on a menuitem that will close the tabs from the end of the tabstrip to the currently targeted tab (excluding the currently targeted and any other selected tabs).
+# In left-to-right languages this should use "Right" and in right-to-left languages this should use "Left".
+close-tabs-to-the-end =
+ .label = ปิดแท็บไปทางขวา
+ .accesskey = ข
+close-other-tabs =
+ .label = ปิดแท็บอื่น ๆ
+ .accesskey = น
+reload-tabs =
+ .label = โหลดแท็บใหม่
+ .accesskey = ห
+pin-tab =
+ .label = ปักหมุดแท็บ
+ .accesskey = ก
+unpin-tab =
+ .label = ถอนหมุดแท็บ
+ .accesskey = ถ
+pin-selected-tabs =
+ .label = ปักหมุดแท็บ
+ .accesskey = ก
+unpin-selected-tabs =
+ .label = ถอนหมุดแท็บ
+ .accesskey = ถ
+bookmark-selected-tabs =
+ .label = เพิ่มที่คั่นหน้าสำหรับแท็บ…
+ .accesskey = พ
+tab-context-bookmark-tab =
+ .label = เพิ่มที่คั่นหน้าสำหรับแท็บ…
+ .accesskey = ท
+tab-context-open-in-new-container-tab =
+ .label = เปิดในแท็บแยกข้อมูลใหม่
+ .accesskey = ย
+move-to-start =
+ .label = ย้ายไปยังจุดเริ่มต้น
+ .accesskey = ย
+move-to-end =
+ .label = ย้ายไปยังจุดสิ้นสุด
+ .accesskey = ป
+move-to-new-window =
+ .label = ย้ายไปยังหน้าต่างใหม่
+ .accesskey = ม
+tab-context-close-multiple-tabs =
+ .label = ปิดหลายแท็บ
+ .accesskey = ล
+tab-context-share-url =
+ .label = แบ่งปัน
+ .accesskey = h
+
+## Variables:
+## $tabCount (Number): the number of tabs that are affected by the action.
+
+tab-context-reopen-closed-tabs =
+ .label =
+ { $tabCount ->
+ [1] เปิดแท็บที่ปิดใหม่
+ *[other] เปิดแท็บที่ปิดใหม่
+ }
+ .accesskey = o
+tab-context-close-n-tabs =
+ .label =
+ { $tabCount ->
+ [1] ปิดแท็บ
+ *[other] ปิด { $tabCount } แท็บ
+ }
+ .accesskey = ป
+tab-context-move-tabs =
+ .label =
+ { $tabCount ->
+ [1] ย้ายแท็บ
+ *[other] ย้ายแท็บ
+ }
+ .accesskey = ย
+
+tab-context-send-tabs-to-device =
+ .label = ส่ง { $tabCount } แท็บไปยังอุปกรณ์
+ .accesskey = ส
diff --git a/l10n-th/browser/browser/tabbrowser.ftl b/l10n-th/browser/browser/tabbrowser.ftl
new file mode 100644
index 0000000000..cc9e9c615d
--- /dev/null
+++ b/l10n-th/browser/browser/tabbrowser.ftl
@@ -0,0 +1,136 @@
+# 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/.
+
+tabbrowser-empty-tab-title = แท็บใหม่
+tabbrowser-empty-private-tab-title = แท็บส่วนตัวใหม่
+
+tabbrowser-menuitem-close-tab =
+ .label = ปิดแท็บ
+tabbrowser-menuitem-close =
+ .label = ปิด
+
+# Displayed as a tooltip on container tabs
+# Variables:
+# $title (String): the title of the current tab.
+# $containerName (String): the name of the current container.
+tabbrowser-container-tab-title = { $title } - { $containerName }
+
+# Variables:
+# $tabCount (Number): The number of tabs that will be closed.
+tabbrowser-close-tabs-tooltip =
+ .label = ปิด { $tabCount } แท็บ
+
+## Tooltips for tab audio control
+## Variables:
+## $tabCount (Number): The number of tabs that will be affected.
+
+# Variables:
+# $shortcut (String): The keyboard shortcut for "Mute tab".
+tabbrowser-mute-tab-audio-tooltip =
+ .label = ปิดเสียง { $tabCount } แท็บ ({ $shortcut })
+# Variables:
+# $shortcut (String): The keyboard shortcut for "Unmute tab".
+tabbrowser-unmute-tab-audio-tooltip =
+ .label = เปิดเสียง { $tabCount } แท็บ ({ $shortcut })
+tabbrowser-mute-tab-audio-background-tooltip =
+ .label = ปิดเสียง { $tabCount } แท็บ
+tabbrowser-unmute-tab-audio-background-tooltip =
+ .label = เปิดเสียง { $tabCount } แท็บ
+tabbrowser-unblock-tab-audio-tooltip =
+ .label = เล่น { $tabCount } แท็บ
+
+## Confirmation dialog when closing a window with more than one tab open,
+## or when quitting when only one window is open.
+
+# The singular form is not considered since this string is used only for multiple tabs.
+# Variables:
+# $tabCount (Number): The number of tabs that will be closed.
+tabbrowser-confirm-close-tabs-title = ต้องการปิด { $tabCount } แท็บหรือไม่?
+tabbrowser-confirm-close-tabs-button = ปิดแท็บ
+tabbrowser-confirm-close-tabs-checkbox = ยืนยันก่อนปิดหลายแท็บ
+
+## Confirmation dialog when quitting using the menu and multiple windows are open.
+
+# The forms for 0 or 1 items are not considered since this string is used only for
+# multiple windows.
+# Variables:
+# $windowCount (Number): The number of windows that will be closed.
+tabbrowser-confirm-close-windows-title = ต้องการปิด { $windowCount } หน้าต่างหรือไม่?
+tabbrowser-confirm-close-windows-button =
+ { PLATFORM() ->
+ [windows] ปิดแล้วออก
+ *[other] ปิดแล้วออก
+ }
+
+## Confirmation dialog when quitting using the keyboard shortcut (Ctrl/Cmd+Q)
+## Windows does not show a prompt on quit when using the keyboard shortcut by default.
+
+tabbrowser-confirm-close-tabs-with-key-title = ต้องการปิดหน้าต่างแล้วออกจาก { -brand-short-name } หรือไม่?
+tabbrowser-confirm-close-tabs-with-key-button = ออกจาก { -brand-short-name }
+# Variables:
+# $quitKey (String): the text of the keyboard shortcut for quitting.
+tabbrowser-confirm-close-tabs-with-key-checkbox = ยืนยันก่อนออกด้วย { $quitKey }
+
+## Confirmation dialog when opening multiple tabs simultaneously
+
+tabbrowser-confirm-open-multiple-tabs-title = ยืนยันการเปิด
+# Variables:
+# $tabCount (Number): The number of tabs that will be opened.
+tabbrowser-confirm-open-multiple-tabs-message =
+ { $tabCount ->
+ *[other] คุณกำลังจะเปิด { $tabCount } แท็บ ซึ่งอาจทำให้ { -brand-short-name } ช้าลงขณะที่หน้ากำลังโหลด คุณแน่ใจหรือไม่ว่าต้องการดำเนินการต่อ?
+ }
+tabbrowser-confirm-open-multiple-tabs-button = เปิดแท็บ
+tabbrowser-confirm-open-multiple-tabs-checkbox = เตือนฉันเมื่อการเปิดหลายแท็บอาจทำให้ { -brand-short-name } ช้าลง
+
+## Confirmation dialog for enabling caret browsing
+
+tabbrowser-confirm-caretbrowsing-title = การเลื่อนดูด้วยแป้นพิมพ์
+tabbrowser-confirm-caretbrowsing-message = กด F7 เพื่อเปิดปิดการเลื่อนดูโดยแป้นพิมพ์ ในการเลื่อนดูแบบนี้ จะมีเคอร์เซอร์ที่เคลื่อนที่ได้อยู่บนหน้าเว็บทำให้คุณเลือกข้อความด้วยแป้นพิมพ์ได้ คุณต้องการเปิดการเลื่อนดูโดยแป้นพิมพ์หรือไม่?
+tabbrowser-confirm-caretbrowsing-checkbox = ไม่ต้องแสดงกล่องโต้ตอบนี้ให้ฉันเห็นอีก
+
+##
+
+# Variables:
+# $domain (String): URL of the page that is trying to steal focus.
+tabbrowser-allow-dialogs-to-get-focus =
+ .label = อนุญาตให้การแจ้งเตือนเช่นนี้จาก { $domain } นำคุณไปที่แท็บของไซต์
+
+tabbrowser-customizemode-tab-title = ปรับแต่ง { -brand-short-name }
+
+## Context menu buttons, of which only one will be visible at a time
+
+tabbrowser-context-mute-tab =
+ .label = ปิดเสียงแท็บ
+ .accesskey = ส
+tabbrowser-context-unmute-tab =
+ .label = เปิดเสียงแท็บ
+ .accesskey = ส
+# The accesskey should match the accesskey for tabbrowser-context-mute-tab
+tabbrowser-context-mute-selected-tabs =
+ .label = ปิดเสียงแท็บ
+ .accesskey = ส
+# The accesskey should match the accesskey for tabbrowser-context-unmute-tab
+tabbrowser-context-unmute-selected-tabs =
+ .label = เปิดเสียงแท็บ
+ .accesskey = ส
+
+# This string is used as an additional tooltip and accessibility description for tabs playing audio
+tabbrowser-tab-audio-playing-description = กำลังเล่นเสียง
+
+## Ctrl-Tab dialog
+
+# Variables:
+# $tabCount (Number): The number of tabs in the current browser window. It will always be 2 at least.
+tabbrowser-ctrl-tab-list-all-tabs =
+ .label = แสดงรายการ { $tabCount } แท็บทั้งหมด
+
+## Tab manager menu buttons
+
+tabbrowser-manager-mute-tab =
+ .tooltiptext = ปิดเสียงแท็บ
+tabbrowser-manager-unmute-tab =
+ .tooltiptext = เปิดเสียงแท็บ
+tabbrowser-manager-close-tab =
+ .tooltiptext = ปิดแท็บ
diff --git a/l10n-th/browser/browser/textRecognition.ftl b/l10n-th/browser/browser/textRecognition.ftl
new file mode 100644
index 0000000000..13391a220f
--- /dev/null
+++ b/l10n-th/browser/browser/textRecognition.ftl
@@ -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/.
+
+
+## Text recognition works through a modal that presents the text that is found
+## in an image, and copies the results to the clipboard.
+
+text-recognition-modal-searching-title = กำลังค้นหาข้อความจากภาพ...
+text-recognition-modal-results-title = ข้อความที่คัดลอกมาจากภาพ
+text-recognition-modal-no-results-title = ขออภัย เราไม่สามารถแยกข้อความใดๆ ลองใช้ภาพอื่น <a data-l10n-name="error-link">เรียนรู้เพิ่มเติม</a>
+text-recognition-modal-close-button = ปิด
+
+# The title of the the modal is only available to screen readers.
+text-recognition-modal-accessible-modal-title = ผลลัพธ์สำหรับการแยกข้อความ
diff --git a/l10n-th/browser/browser/toolbarContextMenu.ftl b/l10n-th/browser/browser/toolbarContextMenu.ftl
new file mode 100644
index 0000000000..aab3cf8ab7
--- /dev/null
+++ b/l10n-th/browser/browser/toolbarContextMenu.ftl
@@ -0,0 +1,88 @@
+# 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/.
+
+toolbar-context-menu-new-tab =
+ .label = แท็บใหม่
+ .accesskey = w
+toolbar-context-menu-reload-selected-tab =
+ .label = โหลดแท็บที่เลือกใหม่
+ .accesskey = ห
+toolbar-context-menu-reload-selected-tabs =
+ .label = โหลดแท็บที่เลือกใหม่
+ .accesskey = ห
+toolbar-context-menu-bookmark-selected-tab =
+ .label = เพิ่มที่คั่นหน้าสำหรับแท็บที่เลือก…
+ .accesskey = พ
+toolbar-context-menu-bookmark-selected-tabs =
+ .label = เพิ่มที่คั่นหน้าสำหรับแท็บที่เลือก…
+ .accesskey = พ
+toolbar-context-menu-select-all-tabs =
+ .label = เลือกแท็บทั้งหมด
+ .accesskey = ล
+toolbar-context-menu-reopen-closed-tabs =
+ .label =
+ { $tabCount ->
+ [1] เปิดแท็บที่ปิดใหม่
+ *[other] เปิดแท็บที่ปิดใหม่
+ }
+ .accesskey = เ
+
+toolbar-context-menu-manage-extension =
+ .label = จัดการส่วนขยาย
+ .accesskey = จ
+toolbar-context-menu-remove-extension =
+ .label = เอาส่วนขยายออก
+ .accesskey = อ
+
+# This label is used in the extensions toolbar buttons context menus,
+# a user can use this command to submit to Mozilla an abuse report
+# related to that extension. "Report" is a verb.
+toolbar-context-menu-report-extension =
+ .label = รายงานส่วนขยาย
+ .accesskey = ร
+
+# Can appear on the same context menu as toolbar-context-menu-menu-bar-cmd
+# ("Menu Bar") and personalbarCmd ("Bookmarks Toolbar"), so they should
+# have different access keys.
+toolbar-context-menu-pin-to-overflow-menu =
+ .label = ปักหมุดไปยังเมนูล้น
+ .accesskey = ป
+toolbar-context-menu-auto-hide-downloads-button-2 =
+ .label = ซ่อนปุ่มเมื่อว่างเปล่า
+ .accesskey = ซ
+toolbar-context-menu-always-open-downloads-panel =
+ .label = แสดงแผงเมื่อเริ่มดาวน์โหลด
+ .accesskey = ส
+toolbar-context-menu-remove-from-toolbar =
+ .label = เอาออกจากแถบเครื่องมือ
+ .accesskey = อ
+toolbar-context-menu-view-customize-toolbar =
+ .label = ปรับแต่ง…
+ .accesskey = ป
+toolbar-context-menu-view-customize-toolbar-2 =
+ .label = ปรับแต่งแถบเครื่องมือ…
+ .accesskey = ป
+# This is only ever shown when toolbar-context-menu-pin-to-overflow-menu
+# is hidden, so they can share access keys.
+toolbar-context-menu-pin-to-toolbar =
+ .label = ปักหมุดในแถบเครื่องมือ
+ .accesskey = ป
+
+toolbar-context-menu-bookmarks-toolbar-always-show-2 =
+ .label = แสดงเสมอ
+ .accesskey = A
+toolbar-context-menu-bookmarks-toolbar-never-show-2 =
+ .label = ไม่ต้องแสดง
+ .accesskey = N
+toolbar-context-menu-bookmarks-toolbar-on-new-tab-2 =
+ .label = แสดงบนแท็บใหม่เท่านั้น
+ .accesskey = O
+
+toolbar-context-menu-bookmarks-show-other-bookmarks =
+ .label = แสดงที่คั่นหน้าอื่น ๆ
+ .accesskey = h
+
+toolbar-context-menu-menu-bar-cmd =
+ .toolbarname = แถบเมนู
+ .accesskey = ถ
diff --git a/l10n-th/browser/browser/touchbar/touchbar.ftl b/l10n-th/browser/browser/touchbar/touchbar.ftl
new file mode 100644
index 0000000000..653d23e5a9
--- /dev/null
+++ b/l10n-th/browser/browser/touchbar/touchbar.ftl
@@ -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/.
+
+# Strings in this file are used to localize button titles displayed on the
+# MacBook Touch Bar.
+back = ย้อนกลับ
+forward = เดินหน้า
+reload = โหลดใหม่
+home = หน้าแรก
+fullscreen = เต็มหน้าจอ
+touchbar-fullscreen-exit = ออกจากภาพเต็มหน้าจอ
+find = ค้นหา
+new-tab = แท็บใหม่
+add-bookmark = เพิ่มที่คั่นหน้า
+reader-view = มุมมองผู้อ่าน
+# Meant to match the string displayed in an empty URL bar.
+open-location = ค้นหาหรือป้อนที่อยู่
+share = แบ่งปัน
+close-window = ปิดหน้าต่าง
+open-sidebar = แถบข้าง
+
+# This string describes shortcuts for search.
+search-popover = ทางลัดการค้นหา
+# Describes searches limited to a specific scope
+# (e.g. searching only in history).
+search-search-in = ค้นหาใน:
+
+## Various categories of shortcuts for search.
+
+search-bookmarks = ที่คั่นหน้า
+search-history = ประวัติ
+search-opentabs = แท็บที่เปิด
+search-tags = ป้ายกำกับ
+search-titles = ชื่อเรื่อง
+
+##
+
diff --git a/l10n-th/browser/browser/translations.ftl b/l10n-th/browser/browser/translations.ftl
new file mode 100644
index 0000000000..727dae5050
--- /dev/null
+++ b/l10n-th/browser/browser/translations.ftl
@@ -0,0 +1,172 @@
+# 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/.
+
+# The button for "Firefox Translations" in the url bar.
+urlbar-translations-button =
+ .tooltiptext = แปลหน้านี้
+# The button for "Firefox Translations" in the url bar. Note that here "Beta" should
+# not be translated, as it is a reflection of the un-localized BETA icon that is in the
+# panel.
+urlbar-translations-button2 =
+ .tooltiptext = แปลหน้านี้ - เบตา
+# Note that here "Beta" should not be translated, as it is a reflection of the
+# un-localized BETA icon that is in the panel.
+urlbar-translations-button-intro =
+ .tooltiptext = ลองใช้การแปลแบบส่วนตัวใน { -brand-shorter-name } - เบต้า
+# If your language requires declining the language name, a possible solution
+# is to adapt the structure of the phrase, or use a support noun, e.g.
+# `Page translated from: { $fromLanguage }. Current target language: { $toLanguage }`
+#
+# Variables:
+# $fromLanguage (string) - The original language of the document.
+# $toLanguage (string) - The target language of the translation.
+urlbar-translations-button-translated =
+ .tooltiptext = แปลหน้าจาก{ $fromLanguage }เป็น{ $toLanguage }แล้ว
+urlbar-translations-button-loading =
+ .tooltiptext = กำลังแปล
+translations-panel-settings-button =
+ .aria-label = จัดการการตั้งค่าการแปล
+# Text displayed on a language dropdown when the language is in beta
+# Variables:
+# $language (string) - The localized display name of the detected language
+translations-panel-displayname-beta =
+ .label = { $language } เบต้า
+
+## Options in the Firefox Translations settings.
+
+translations-panel-settings-manage-languages =
+ .label = จัดการภาษา
+translations-panel-settings-about = เกี่ยวกับการแปลใน { -brand-shorter-name }
+translations-panel-settings-about2 =
+ .label = เกี่ยวกับการแปลใน { -brand-shorter-name }
+# Text displayed for the option to always translate a given language
+# Variables:
+# $language (string) - The localized display name of the detected language
+translations-panel-settings-always-translate-language =
+ .label = แปล { $language } เสมอ
+translations-panel-settings-always-translate-unknown-language =
+ .label = แปลภาษานี้เสมอ
+translations-panel-settings-always-offer-translation =
+ .label = เสนอให้แปลอยู่เสมอ
+# Text displayed for the option to never translate a given language
+# Variables:
+# $language (string) - The localized display name of the detected language
+translations-panel-settings-never-translate-language =
+ .label = ไม่ต้องแปล { $language }
+translations-panel-settings-never-translate-unknown-language =
+ .label = ไม่ต้องแปลภาษานี้
+# Text displayed for the option to never translate this website
+translations-panel-settings-never-translate-site =
+ .label = ไม่ต้องแปลไซต์นี้
+
+## The translation panel appears from the url bar, and this view is the default
+## translation view.
+
+translations-panel-header = ต้องการแปลหน้านี้ไหม?
+translations-panel-translate-button =
+ .label = แปล
+translations-panel-translate-button-loading =
+ .label = โปรดรอ…
+translations-panel-translate-cancel =
+ .label = ยกเลิก
+translations-panel-learn-more-link = เรียนรู้เพิ่มเติม
+translations-panel-intro-header = ลองใช้การแปลแบบส่วนตัวใน { -brand-shorter-name }
+translations-panel-intro-description = เพื่อความเป็นส่วนตัวของคุณ ข้อมูลการแปลจะไม่ออกไปนอกอุปกรณ์ของคุณ ภาษาและการปรับปรุงใหม่ๆ จะมาในเร็วๆ นี้!
+translations-panel-error-translating = เกิดปัญหาในการแปล โปรดลองอีกครั้ง
+translations-panel-error-load-languages = ไม่สามารถโหลดภาษา
+translations-panel-error-load-languages-hint = ตรวจสอบการเชื่อมต่ออินเทอร์เน็ตของคุณแล้วลองอีกครั้ง
+translations-panel-error-load-languages-hint-button =
+ .label = ลองอีกครั้ง
+translations-panel-error-unsupported = ไม่มีการแปลสำหรับหน้านี้
+translations-panel-error-dismiss-button =
+ .label = เข้าใจแล้ว
+translations-panel-error-change-button =
+ .label = เปลี่ยนภาษาต้นฉบับ
+# If your language requires declining the language name, a possible solution
+# is to adapt the structure of the phrase, or use a support noun, e.g.
+# `Sorry, we don't support the language yet: { $language }
+#
+# Variables:
+# $language (string) - The language of the document.
+translations-panel-error-unsupported-hint-known = ขออภัย เรายังไม่รองรับ { $language }
+translations-panel-error-unsupported-hint-unknown = ขออภัย เรายังไม่รองรับภาษานี้
+
+## Each label is followed, on a new line, by a dropdown list of language names.
+## If this structure is problematic for your locale, an alternative way is to
+## translate them as `Source language:` and `Target language:`
+
+translations-panel-from-label = แปลจาก
+translations-panel-to-label = แปลเป็น
+
+## The translation panel appears from the url bar, and this view is the "restore" view
+## that lets a user restore a page to the original language, or translate into another
+## language.
+
+# If your language requires declining the language name, a possible solution
+# is to adapt the structure of the phrase, or use a support noun, e.g.
+# `The page is translated from: { $fromLanguage }. Current target language: { $toLanguage }`
+#
+# Variables:
+# $fromLanguage (string) - The original language of the document.
+# $toLanguage (string) - The target language of the translation.
+translations-panel-revisit-header = หน้านี้แปลจาก { $fromLanguage } เป็น { $toLanguage }
+translations-panel-choose-language =
+ .label = เลือกภาษา
+translations-panel-restore-button =
+ .label = แสดงต้นฉบับ
+
+## Firefox Translations language management in about:preferences.
+
+translations-manage-header = การแปล
+translations-manage-settings-button =
+ .label = การตั้งค่า…
+ .accesskey = ต
+translations-manage-description = ดาวน์โหลดภาษาสำหรับการแปลแบบออฟไลน์
+translations-manage-all-language = ภาษาทั้งหมด
+translations-manage-download-button = ดาวน์โหลด
+translations-manage-delete-button = ลบ
+translations-manage-error-download = เกิดปัญหาในการดาวน์โหลดไฟล์ภาษา โปรดลองอีกครั้ง
+translations-manage-error-delete = เกิดข้อผิดพลาดในการลบไฟล์ภาษา โปรดลองอีกครั้ง
+translations-manage-intro = ตั้งค่าการกำหนดลักษณะภาษาและการแปลไซต์ของคุณและจัดการภาษาที่ติดตั้งสำหรับการแปลแบบออฟไลน์
+translations-manage-install-description = ติดตั้งภาษาสำหรับการแปลแบบออฟไลน์
+translations-manage-language-install-button =
+ .label = ติดตั้ง
+translations-manage-language-install-all-button =
+ .label = ติดตั้งทั้งหมด
+ .accesskey = I
+translations-manage-language-remove-button =
+ .label = ลบ
+translations-manage-language-remove-all-button =
+ .label = เอาออกทั้งหมด
+ .accesskey = e
+translations-manage-error-install = มีปัญหาในการติดตั้งไฟล์ภาษา โปรดลองอีกครั้ง
+translations-manage-error-remove = มีข้อผิดพลาดในการลบไฟล์ภาษาออก โปรดลองอีกครั้ง
+translations-manage-error-list = ไม่สามารถรับรายชื่อภาษาที่ใช้ได้สำหรับการแปล เรียกหน้านี้ใหม่เพื่อลองอีกครั้ง
+translations-settings-title =
+ .title = การตั้งค่าการแปล
+ .style = min-width: 36em
+translations-settings-close-key =
+ .key = w
+translations-settings-always-translate-langs-description = ทำการแปลโดยอัตโนมัติสำหรับภาษาดังต่อไปนี้
+translations-settings-never-translate-langs-description = การแปลจะไม่ถูกนำเสนอสำหรับภาษาดังต่อไปนี้
+translations-settings-never-translate-sites-description = การแปลจะไม่ถูกนำเสนอสำหรับไซต์ดังต่อไปนี้
+translations-settings-languages-column =
+ .label = ภาษา
+translations-settings-remove-language-button =
+ .label = เอาภาษาออก
+ .accesskey = อ
+translations-settings-remove-all-languages-button =
+ .label = เอาภาษาทั้งหมดออก
+ .accesskey = เ
+translations-settings-sites-column =
+ .label = เว็บไซต์
+translations-settings-remove-site-button =
+ .label = เอาไซต์ออก
+ .accesskey = ซ
+translations-settings-remove-all-sites-button =
+ .label = เอาไซต์ทั้งหมดออก
+ .accesskey = า
+translations-settings-close-dialog =
+ .buttonlabelaccept = ปิด
+ .buttonaccesskeyaccept = ป
diff --git a/l10n-th/browser/browser/unifiedExtensions.ftl b/l10n-th/browser/browser/unifiedExtensions.ftl
new file mode 100644
index 0000000000..fd8b97ffb8
--- /dev/null
+++ b/l10n-th/browser/browser/unifiedExtensions.ftl
@@ -0,0 +1,49 @@
+# 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/.
+
+
+### These strings appear in the Unified Extensions panel.
+
+
+## Panel
+
+unified-extensions-header-title = ส่วนขยาย
+unified-extensions-manage-extensions =
+ .label = จัดการส่วนขยาย
+
+## An extension in the main list
+
+# Each extension in the unified extensions panel (list) has a secondary button
+# to open a context menu. This string is used for each of these buttons.
+# Variables:
+# $extensionName (String) - Name of the extension
+unified-extensions-item-open-menu =
+ .aria-label = เปิดเมนูสำหรับ { $extensionName }
+unified-extensions-item-message-manage = จัดการส่วนขยาย
+
+## Extension's context menu
+
+unified-extensions-context-menu-pin-to-toolbar =
+ .label = ปักหมุดในแถบเครื่องมือ
+unified-extensions-context-menu-manage-extension =
+ .label = จัดการส่วนขยาย
+unified-extensions-context-menu-remove-extension =
+ .label = เอาส่วนขยายออก
+unified-extensions-context-menu-report-extension =
+ .label = รายงานส่วนขยาย
+unified-extensions-context-menu-move-widget-up =
+ .label = ย้ายขึ้น
+unified-extensions-context-menu-move-widget-down =
+ .label = ย้ายลง
+
+## Notifications
+
+unified-extensions-mb-quarantined-domain-title = ส่วนขยายบางตัวไม่ได้รับอนุญาต
+unified-extensions-mb-quarantined-domain-message = ไซต์นี้อนุญาตเฉพาะส่วนขยายบางตัวที่ตรวจสอบโดย { -vendor-short-name } เท่านั้นเพื่อปกป้องข้อมูลของคุณ
+# .heading is processed by moz-message-bar to be used as a heading attribute
+unified-extensions-mb-quarantined-domain-message-3 =
+ .heading = ส่วนขยายบางตัวไม่ได้รับอนุญาต
+ .message = เพื่อเป็นการปกป้องข้อมูลของคุณ ส่วนขยายบางอย่างจะไม่สามารถอ่านหรือเปลี่ยนแปลงข้อมูลบนไซต์นี้ได้ โปรดใช้การตั้งค่าส่วนขยายเพื่ออนุญาตบนไซต์ที่ถูกจำกัดโดย { -vendor-short-name }
+unified-extensions-mb-quarantined-domain-learn-more = เรียนรู้เพิ่มเติม
+ .aria-label = เรียนรู้เพิ่มเติม: ไม่อนุญาตให้ใช้ส่วนขยายบางตัว
diff --git a/l10n-th/browser/browser/webProtocolHandler.ftl b/l10n-th/browser/browser/webProtocolHandler.ftl
new file mode 100644
index 0000000000..cc6e265ee1
--- /dev/null
+++ b/l10n-th/browser/browser/webProtocolHandler.ftl
@@ -0,0 +1,19 @@
+# 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/.
+
+protocolhandler-mailto-os-handler-notificationbox = ต้องการใช้ { -brand-short-name } เปิดลิงก์ที่ใช้ส่งอีเมลทุกครั้งหรือไม่?
+protocolhandler-mailto-os-handler-yes-confirm = ขณะนี้ { -brand-short-name } เป็นแอปพลิเคชันเริ่มต้นของคุณสำหรับเปิดลิงก์ที่ใช้ส่งอีเมลแล้ว
+protocolhandler-mailto-os-handler-yes-button = ตั้งเป็นค่าเริ่มต้น
+protocolhandler-mailto-os-handler-no-button = ไม่ใช่ตอนนี้
+
+## Variables:
+## $url (String): The url of a webmailer, but only its full domain name.
+
+protocolhandler-mailto-handler-notificationbox-always = ต้องการเปิดลิงก์อีเมลโดยใช้ { $url } ทุกครั้งหรือไม่?
+protocolhandler-mailto-handler-yes-confirm = ขณะนี้ { $url } เป็นไซต์เริ่มต้นของคุณสำหรับเปิดลิงก์ที่ใช้ส่งอีเมลแล้ว
+
+##
+
+protocolhandler-mailto-handler-yes-button = ตั้งเป็นค่าเริ่มต้น
+protocolhandler-mailto-handler-no-button = ไม่ใช่ตอนนี้
diff --git a/l10n-th/browser/browser/webauthnDialog.ftl b/l10n-th/browser/browser/webauthnDialog.ftl
new file mode 100644
index 0000000000..7a7380c483
--- /dev/null
+++ b/l10n-th/browser/browser/webauthnDialog.ftl
@@ -0,0 +1,19 @@
+# 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/.
+
+# Variables:
+# $retriesLeft (Number): number of tries left
+webauthn-pin-invalid-long-prompt = PIN ไม่ถูกต้อง คุณสามารถลองได้อีก { $retriesLeft } ครั้งก่อนที่คุณจะไม่สามารถเข้าถึงข้อมูลรับรองบนอุปกรณ์นี้ได้ถาวร
+webauthn-pin-invalid-short-prompt = PIN ไม่ถูกต้อง โปรดลองอีกครั้ง
+webauthn-pin-required-prompt = โปรดป้อน PIN สำหรับอุปกรณ์ของคุณ
+webauthn-select-sign-result-unknown-account = บัญชีที่ไม่รู้จัก
+webauthn-a-passkey-label = ใช้พาสคีย์
+webauthn-another-passkey-label = ใช้พาสคีย์อื่น
+# Variables:
+# $domain (String): the domain of the site.
+webauthn-specific-passkey-label = พาสคีย์สำหรับ { $domain }
+# Variables:
+# $retriesLeft (Number): number of tries left
+webauthn-uv-invalid-long-prompt = การตรวจสอบยืนยันผู้ใช้ล้มเหลว คุณลองได้อีก { $retriesLeft } ครั้ง โปรดลองอีกครั้ง
+webauthn-uv-invalid-short-prompt = การตรวจสอบยืนยันผู้ใช้ล้มเหลว โปรดลองอีกครั้ง
diff --git a/l10n-th/browser/browser/webrtcIndicator.ftl b/l10n-th/browser/browser/webrtcIndicator.ftl
new file mode 100644
index 0000000000..4ee6c636ce
--- /dev/null
+++ b/l10n-th/browser/browser/webrtcIndicator.ftl
@@ -0,0 +1,197 @@
+# 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/.
+
+
+## These strings are used so that the window has a title in tools that
+## enumerate/look for window titles. It is not normally visible anywhere.
+
+webrtc-indicator-title = { -brand-short-name } - ตัวบ่งชี้การแบ่งปัน
+webrtc-indicator-window =
+ .title = { -brand-short-name } - ตัวบ่งชี้การแบ่งปัน
+
+## Used as list items in sharing menu
+
+webrtc-item-camera = กล้อง
+webrtc-item-microphone = ไมโครโฟน
+webrtc-item-audio-capture = เสียงในแท็บ
+webrtc-item-application = แอปพลิเคชัน
+webrtc-item-screen = หน้าจอ
+webrtc-item-window = หน้าต่าง
+webrtc-item-browser = แท็บ
+
+##
+
+# This is used for the website origin for the sharing menu if no readable origin could be deduced from the URL.
+webrtc-sharing-menuitem-unknown-host = ไม่ทราบที่มา
+# Variables:
+# $origin (String): The website origin (e.g. www.mozilla.org)
+# $itemList (String): A formatted list of items (e.g. "camera, microphone and tab audio")
+webrtc-sharing-menuitem =
+ .label = { $origin } ({ $itemList })
+webrtc-sharing-menu =
+ .label = อุปกรณ์ที่แบ่งปันแท็บ
+ .accesskey = อ
+webrtc-sharing-window = คุณกำลังแบ่งปันหน้าต่างแอปพลิเคชันอื่น
+webrtc-sharing-browser-window = คุณกำลังแบ่งปัน { -brand-short-name }
+webrtc-sharing-screen = คุณกำลังแบ่งปันทั้งหน้าจอของคุณ
+webrtc-stop-sharing-button = หยุดการแบ่งปัน
+webrtc-microphone-unmuted =
+ .title = ปิดไมโครโฟน
+webrtc-microphone-muted =
+ .title = เปิดไมโครโฟน
+webrtc-camera-unmuted =
+ .title = ปิดกล้อง
+webrtc-camera-muted =
+ .title = เปิดกล้อง
+webrtc-minimize =
+ .title = ย่อตัวบ่งชี้ให้เล็กสุด
+
+## These strings will display as a tooltip on supported systems where we show
+## device sharing state in the OS notification area. We do not use these strings
+## on macOS, as global menu bar items do not have native tooltips.
+
+webrtc-camera-system-menu =
+ .label = คุณกำลังแบ่งปันกล้องของคุณ คลิกเพื่อควบคุมการแบ่งปัน
+webrtc-microphone-system-menu =
+ .label = คุณกำลังแบ่งปันไมโครโฟนของคุณ คลิกเพื่อควบคุมการแบ่งปัน
+webrtc-screen-system-menu =
+ .label = คุณกำลังแบ่งปันหน้าต่างหรือหน้าจอ คลิกเพื่อควบคุมการแบ่งปัน
+
+## Tooltips used by the legacy global sharing indicator
+
+webrtc-indicator-sharing-camera-and-microphone =
+ .tooltiptext = กล้องและไมโครโฟนของคุณกำลังถูกแบ่งปัน คลิกเพื่อควบคุมการแบ่งปัน
+webrtc-indicator-sharing-camera =
+ .tooltiptext = กล้องของคุณกำลังถูกแบ่งปัน คลิกเพื่อควบคุมการแบ่งปัน
+webrtc-indicator-sharing-microphone =
+ .tooltiptext = ไมโครโฟนของคุณกำลังถูกแบ่งปัน คลิกเพื่อควบคุมการแบ่งปัน
+webrtc-indicator-sharing-application =
+ .tooltiptext = แอปพลิเคชันกำลังถูกแบ่งปัน คลิกเพื่อควบคุมการแบ่งปัน
+webrtc-indicator-sharing-screen =
+ .tooltiptext = หน้าจอของคุณกำลังถูกแบ่งปัน คลิกเพื่อควบคุมการแบ่งปัน
+webrtc-indicator-sharing-window =
+ .tooltiptext = หน้าต่างกำลังถูกแบ่งปัน คลิกเพื่อควบคุมการแบ่งปัน
+webrtc-indicator-sharing-browser =
+ .tooltiptext = แท็บกำลังถูกแบ่งปัน คลิกเพื่อควบคุมการแบ่งปัน
+
+## These strings are only used on Mac for menus attached to icons
+## near the clock on the mac menubar.
+## Variables:
+## $streamTitle (String): the title of the tab using the share.
+## $tabCount (Number): the title of the tab using the share.
+
+webrtc-indicator-menuitem-control-sharing =
+ .label = ควบคุมการแบ่งปัน
+webrtc-indicator-menuitem-control-sharing-on =
+ .label = ควบคุมการแบ่งปันบน “{ $streamTitle }”
+webrtc-indicator-menuitem-sharing-camera-with =
+ .label = กำลังแบ่งปันกล้องกับ “{ $streamTitle }”
+webrtc-indicator-menuitem-sharing-camera-with-n-tabs =
+ .label = กำลังแบ่งปันกล้องกับ { $tabCount } แท็บ
+webrtc-indicator-menuitem-sharing-microphone-with =
+ .label = กำลังแบ่งปันไมโครโฟนกับ “{ $streamTitle }”
+webrtc-indicator-menuitem-sharing-microphone-with-n-tabs =
+ .label = กำลังแบ่งปันไมโครโฟนกับ { $tabCount } แท็บ
+webrtc-indicator-menuitem-sharing-application-with =
+ .label = กำลังแบ่งปันแอปพลิเคชันกับ “{ $streamTitle }”
+webrtc-indicator-menuitem-sharing-application-with-n-tabs =
+ .label = กำลังแบ่งปันแอปพลิเคชันกับ { $tabCount } แท็บ
+webrtc-indicator-menuitem-sharing-screen-with =
+ .label = กำลังแบ่งปันหน้าจอกับ “{ $streamTitle }”
+webrtc-indicator-menuitem-sharing-screen-with-n-tabs =
+ .label = กำลังแบ่งปันหน้าจอกับ { $tabCount } แท็บ
+webrtc-indicator-menuitem-sharing-window-with =
+ .label = กำลังแบ่งปันหน้าต่างกับ “{ $streamTitle }”
+webrtc-indicator-menuitem-sharing-window-with-n-tabs =
+ .label = กำลังแบ่งปันหน้าต่างกับ { $tabCount } แท็บ
+webrtc-indicator-menuitem-sharing-browser-with =
+ .label = กำลังแบ่งปันแท็บกับ “{ $streamTitle }”
+# This message is shown when the contents of a tab is shared during a WebRTC
+# session, which currently is only possible with Loop/Hello.
+webrtc-indicator-menuitem-sharing-browser-with-n-tabs =
+ .label = กำลังแบ่งปันแท็บกับ { $tabCount } แท็บ
+
+## Variables:
+## $origin (String): the website origin (e.g. www.mozilla.org).
+
+webrtc-allow-share-audio-capture = อนุญาตให้ { $origin } ฟังเสียงของแท็บนี้หรือไม่?
+webrtc-allow-share-camera = อนุญาตให้ { $origin } ใช้กล้องของคุณหรือไม่?
+webrtc-allow-share-microphone = อนุญาตให้ { $origin } ใช้ไมโครโฟนของคุณหรือไม่?
+webrtc-allow-share-screen = อนุญาตให้ { $origin } เห็นหน้าจอของคุณหรือไม่?
+# "Speakers" is used in a general sense that might include headphones or
+# another audio output connection.
+webrtc-allow-share-speaker = อนุญาตให้ { $origin } ใช้ลำโพงอื่น ๆ หรือไม่?
+webrtc-allow-share-camera-and-microphone = อนุญาตให้ { $origin } ใช้กล้องและไมโครโฟนของคุณหรือไม่?
+webrtc-allow-share-camera-and-audio-capture = อนุญาตให้ { $origin } ใช้กล้องของคุณและฟังเสียงของแท็บนี้หรือไม่?
+webrtc-allow-share-screen-and-microphone = อนุญาตให้ { $origin } ใช้ไมโครโฟนของคุณและเห็นหน้าจอของคุณหรือไม่?
+webrtc-allow-share-screen-and-audio-capture = อนุญาตให้ { $origin } ฟังเสียงของแท็บนี้และเห็นหน้าจอของคุณหรือไม่?
+
+## Special phrasing for sharing devices when the origin is a file url.
+
+webrtc-allow-share-audio-capture-with-file = อนุญาตให้ไฟล์ในเครื่องนี้ฟังเสียงของแท็บนี้หรือไม่?
+webrtc-allow-share-camera-with-file = อนุญาตให้ไฟล์ในเครื่องนี้ใช้กล้องของคุณหรือไม่?
+webrtc-allow-share-microphone-with-file = อนุญาตให้ไฟล์ในเครื่องนี้ใช้ไมโครโฟนของคุณหรือไม่?
+webrtc-allow-share-screen-with-file = อนุญาตให้ไฟล์ในเครื่องนี้เห็นหน้าจอของคุณหรือไม่?
+# "Speakers" is used in a general sense that might include headphones or
+# another audio output connection.
+webrtc-allow-share-speaker-with-file = อนุญาตให้ไฟล์ในเครื่องนี้ใช้ลำโพงอื่นหรือไม่?
+webrtc-allow-share-camera-and-microphone-with-file = อนุญาตให้ไฟล์ในเครื่องนี้ใช้กล้องและไมโครโฟนของคุณหรือไม่?
+webrtc-allow-share-camera-and-audio-capture-with-file = อนุญาตให้ไฟล์ในเครื่องนี้ใช้กล้องของคุณและฟังเสียงของแท็บนี้หรือไม่?
+webrtc-allow-share-screen-and-microphone-with-file = อนุญาตให้ไฟล์ในเครื่องนี้ใช้ไมโครโฟนของคุณและเห็นหน้าจอของคุณหรือไม่?
+webrtc-allow-share-screen-and-audio-capture-with-file = อนุญาตให้ไฟล์ในเครื่องนี้ฟังเสียงของแท็บนี้และเห็นหน้าจอของคุณหรือไม่?
+
+## Variables:
+## $origin (String): the first party origin.
+## $thirdParty (String): the third party origin.
+
+webrtc-allow-share-audio-capture-unsafe-delegation = อนุญาตให้ { $origin } มอบสิทธิอนุญาตให้กับ { $thirdParty } ในการฟังเสียงของแท็บนี้หรือไม่?
+webrtc-allow-share-camera-unsafe-delegation = อนุญาตให้ { $origin } มอบสิทธิให้กับ { $thirdParty } ในการเข้าถึงกล้องของคุณหรือไม่?
+webrtc-allow-share-microphone-unsafe-delegation = อนุญาตให้ { $origin } มอบสิทธิให้กับ { $thirdParty } ในการเข้าถึงไมโครโฟนของคุณหรือไม่?
+webrtc-allow-share-screen-unsafe-delegation = อนุญาตให้ { $origin } มอบสิทธิอนุญาตให้กับ { $thirdParty } ในการดูหน้าจอของคุณหรือไม่?
+# "Speakers" is used in a general sense that might include headphones or
+# another audio output connection.
+webrtc-allow-share-speaker-unsafe-delegation = อนุญาตให้ { $origin } มอบสิทธิให้กับ { $thirdParty } ในการเข้าถึงลำโพงอื่น ๆ หรือไม่?
+webrtc-allow-share-camera-and-microphone-unsafe-delegation = อนุญาตให้ { $origin } มอบสิทธิให้กับ { $thirdParty } ในการเข้าถึงกล้องและไมโครโฟนของคุณหรือไม่?
+webrtc-allow-share-camera-and-audio-capture-unsafe-delegation = อนุญาตให้ { $origin } มอบสิทธิให้กับ { $thirdParty } ในการเข้าถึงกล้องและฟังเสียงของแท็บนี้หรือไม่?
+webrtc-allow-share-screen-and-microphone-unsafe-delegation = อนุญาตให้ { $origin } มอบสิทธิให้กับ { $thirdParty } ในการเข้าถึงไมโครโฟนของคุณและดูหน้าจอของคุณหรือไม่?
+webrtc-allow-share-screen-and-audio-capture-unsafe-delegation = อนุญาตให้ { $origin } มอบสิทธิอนุญาตให้กับ { $thirdParty } ในการฟังเสียงของแท็บนี้และดูหน้าจอของคุณหรือไม่?
+
+##
+
+webrtc-share-screen-warning = โปรดแบ่งปันหน้าจอเฉพาะกับไซต์ที่คุณเชื่อถือเท่านั้น การแบ่งปันอาจอนุญาตให้ไซต์หลอกลวงเรียกดูในชื่อคุณและขโมยข้อมูลส่วนตัวของคุณ
+webrtc-share-browser-warning = โปรดแบ่งปัน { -brand-short-name } เฉพาะกับไซต์ที่คุณเชื่อถือเท่านั้น การแบ่งปันอาจอนุญาตให้ไซต์หลอกลวงเรียกดูในชื่อคุณและขโมยข้อมูลส่วนตัวของคุณ
+webrtc-share-screen-learn-more = เรียนรู้เพิ่มเติม
+webrtc-pick-window-or-screen = เลือกหน้าต่างหรือหน้าจอ
+webrtc-share-entire-screen = ทั้งหน้าจอ
+webrtc-share-pipe-wire-portal = ใช้การตั้งค่าระบบปฏิบัติการ
+# Variables:
+# $monitorIndex (String): screen number (digits 1, 2, etc).
+webrtc-share-monitor = หน้าจอ { $monitorIndex }
+# Variables:
+# $windowCount (Number): the number of windows currently displayed by the application.
+# $appName (String): the name of the application.
+webrtc-share-application = { $appName } ({ $windowCount } หน้าต่าง)
+
+## These buttons are the possible answers to the various prompts in the "webrtc-allow-share-*" strings.
+
+webrtc-action-allow =
+ .label = อนุญาต
+ .accesskey = อ
+webrtc-action-block =
+ .label = ปิดกั้น
+ .accesskey = ป
+webrtc-action-always-block =
+ .label = ปิดกั้นเสมอ
+ .accesskey = ส
+webrtc-action-not-now =
+ .label = ไม่ใช่ตอนนี้
+ .accesskey = ม
+
+##
+
+webrtc-remember-allow-checkbox = จดจำการตัดสินใจนี้
+webrtc-mute-notifications-checkbox = ปิดเสียงการแจ้งเตือนเว็บไซต์ขณะแบ่งปัน
+webrtc-reason-for-no-permanent-allow-screen = { -brand-short-name } ไม่สามารถอนุญาตการเข้าถึงแบบถาวรให้กับหน้าจอของคุณได้
+webrtc-reason-for-no-permanent-allow-audio = { -brand-short-name } ไม่อนุญาตให้เข้าถึงแท็บของคุณแบบถาวรโดยไม่ถามว่าจะแบ่งปันแท็บไหน
+webrtc-reason-for-no-permanent-allow-insecure = การเชื่อมต่อของคุณไปยังไซต์นี้ไม่ปลอดภัย เพื่อปกป้องคุณ { -brand-short-name } จะอนุญาตให้เข้าถึงเฉพาะในวาระนี้เท่านั้น
diff --git a/l10n-th/browser/chrome/browser/browser.properties b/l10n-th/browser/chrome/browser/browser.properties
new file mode 100644
index 0000000000..05e81d8943
--- /dev/null
+++ b/l10n-th/browser/chrome/browser/browser.properties
@@ -0,0 +1,530 @@
+# 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/.
+
+nv_timeout=หมดเวลารอ
+openFile=เปิดไฟล์
+
+droponhometitle=ตั้งหน้าแรก
+droponhomemsg=คุณต้องการให้เอกสารนี้เป็นหน้าแรกใหม่ของคุณหรือไม่?
+droponhomemsgMultiple=คุณต้องการให้เอกสารเหล่านี้เป็นหน้าแรกใหม่ของคุณหรือไม่?
+
+# context menu strings
+
+# LOCALIZATION NOTE (contextMenuSearch): %1$S is the search engine,
+# %2$S is the selection string.
+contextMenuSearch=ค้นหา %1$S สำหรับ “%2$S”
+contextMenuSearch.accesskey=ค
+contextMenuPrivateSearch=ค้นหาในหน้าต่างส่วนตัว
+contextMenuPrivateSearch.accesskey=า
+# LOCALIZATION NOTE (contextMenuPrivateSearchOtherEngine): %S is the search
+# engine name as set for Private Browsing mode. This label is only used when
+# this engine is different from the default engine name used in normal mode.
+contextMenuPrivateSearchOtherEngine=ค้นหาด้วย %S ในหน้าต่างส่วนตัว
+contextMenuPrivateSearchOtherEngine.accesskey=า
+
+# bookmark dialog strings
+
+bookmarkAllTabsDefault=[ชื่อโฟลเดอร์]
+
+unsignedAddonsDisabled.message=ไม่สามารถยืนยันส่วนเสริมที่ติดตั้งจำนวนหนึ่งหรือมากกว่าและถูกปิดใช้งาน
+unsignedAddonsDisabled.learnMore.label=เรียนรู้เพิ่มเติม
+unsignedAddonsDisabled.learnMore.accesskey=ร
+
+# LOCALIZATION NOTE (geolocationLastAccessIndicatorText): %S is the relative time of the most recent geolocation access (e.g. 5 min. ago)
+geolocationLastAccessIndicatorText=เข้าถึงล่าสุดเมื่อ %S
+
+# LOCALIZATION NOTE (openProtocolHandlerPermissionEntryLabel): %S is the scheme of the protocol the site may open an application for. For example: mailto
+openProtocolHandlerPermissionEntryLabel=ลิงก์ %S://
+
+crashedpluginsMessage.title=ปลั๊กอิน %S ขัดข้อง
+crashedpluginsMessage.reloadButton.label=โหลดหน้าใหม่
+crashedpluginsMessage.reloadButton.accesskey=ห
+crashedpluginsMessage.submitButton.label=ส่งรายงานข้อขัดข้อง
+crashedpluginsMessage.submitButton.accesskey=ส
+crashedpluginsMessage.learnMore=เรียนรู้เพิ่มเติม…
+
+# Keyword fixup messages
+# LOCALIZATION NOTE (keywordURIFixup.message): Used when the user tries to visit
+# a local host page, by the time the DNS request recognizes it, we have already
+# loaded a search page for the given word. An infobar then asks to the user
+# whether he rather wanted to visit the host. %S is the recognized host.
+keywordURIFixup.message=คุณหมายถึงจะไปยัง %S หรือไม่?
+keywordURIFixup.goTo=ใช่ พาฉันไปที่ %S
+keywordURIFixup.goTo.accesskey=ช
+
+# Sanitize
+# LOCALIZATION NOTE (update.downloadAndInstallButton.label): %S is replaced by the
+# version of the update: "Update to 28.0".
+update.downloadAndInstallButton.label=อัปเดตเป็น %S
+update.downloadAndInstallButton.accesskey=อ
+
+menuOpenAllInTabs.label=เปิดทั้งหมดในแท็บ
+
+# Unified Back-/Forward Popup
+tabHistory.reloadCurrent=โหลดหน้าใหม่
+tabHistory.goBack=ย้อนกลับไปยังหน้านี้
+tabHistory.goForward=เดินหน้าไปยังหน้านี้
+
+# URL Bar
+pasteAndGo.label=วางแล้วไป
+# LOCALIZATION NOTE (reloadButton.tooltip):
+# %S is the keyboard shortcut for reloading the current page
+reloadButton.tooltip=โหลดหน้าปัจจุบันใหม่ (%S)
+# LOCALIZATION NOTE (stopButton.tooltip):
+# %S is the keyboard shortcut for stopping loading the page
+stopButton.tooltip=หยุดการโหลดหน้านี้ (%S)
+# LOCALIZATION NOTE (urlbar-zoom-button.tooltip):
+# %S is the keyboard shortcut for resetting the zoom level to 100%
+urlbar-zoom-button.tooltip=กลับค่าเดิมของระดับการซูม (%S)
+# LOCALIZATION NOTE (reader-mode-button.tooltip):
+# %S is the keyboard shortcut for entering/exiting reader view
+reader-mode-button.tooltip=เปิด/ปิดมุมมองผู้อ่าน (%S)
+
+# LOCALIZATION NOTE(zoom-button.label): %S is the current page zoom level,
+# %% will be displayed as a single % character (% is commonly used to define
+# format specifiers, so it needs to be escaped).
+zoom-button.label = %S%%
+
+# General bookmarks button
+# LOCALIZATION NOTE (bookmarksMenuButton.tooltip):
+# %S is the keyboard shortcut for "Show All Bookmarks"
+bookmarksMenuButton.tooltip=แสดงที่คั่นหน้าของคุณ (%S)
+
+# Downloads button tooltip
+# LOCALIZATION NOTE (downloads.tooltip):
+# %S is the keyboard shortcut for "Downloads"
+downloads.tooltip=แสดงความคืบหน้าของการดาวน์โหลดที่ดำเนินอยู่ (%S)
+
+# New Window button tooltip
+# LOCALIZATION NOTE (newWindowButton.tooltip):
+# %S is the keyboard shortcut for "New Window"
+newWindowButton.tooltip=เปิดหน้าต่างใหม่ (%S)
+
+# New Tab button tooltip
+# LOCALIZATION NOTE (newTabButton.tooltip):
+# %S is the keyboard shortcut for "New Tab"
+newTabButton.tooltip=เปิดแท็บใหม่ (%S)
+newTabContainer.tooltip=เปิดแท็บใหม่ (%S)\nกดค้างไว้เพื่อเปิดแท็บแยกข้อมูลใหม่
+newTabAlwaysContainer.tooltip=เลือกการแยกข้อมูลที่จะใช้เปิดแท็บใหม่
+
+# Canvas permission prompt
+# LOCALIZATION NOTE (canvas.siteprompt2): %S is hostname
+canvas.siteprompt2=อนุญาตให้ %S ใช้ข้อมูลภาพผืนผ้าใบ HTML5 ของคุณหรือไม่?
+canvas.siteprompt2.warning=สิ่งนี้อาจถูกใช้เพื่อระบุคอมพิวเตอร์ของคุณ
+canvas.block=ปิดกั้น
+canvas.block.accesskey=ป
+canvas.allow2=อนุญาต
+canvas.allow2.accesskey=อ
+canvas.remember2=จดจำการตัดสินใจนี้
+
+# WebAuthn prompts
+# LOCALIZATION NOTE (webauthn.userPresence): %S is hostname
+webauthn.userPresencePrompt=สัมผัสคีย์ความปลอดภัยของคุณเพื่อไปยัง %S ต่อ
+# LOCALIZATION NOTE (webauthn.registerDirectPrompt3):
+# %S is hostname.
+# The website is asking for extended information about your
+# hardware authenticator that shouldn't be generally necessary. Permitting
+# this is safe if you only use one account at this website. If you have
+# multiple accounts at this website, and you use the same hardware
+# authenticator, then the website could link those accounts together.
+# And this is true even if you use a different profile / browser (or even Tor
+# Browser). To avoid this, you should use different hardware authenticators
+# for different accounts on this website.
+webauthn.registerDirectPrompt3=%S ขอข้อมูลแบบขยายเกี่ยวกับคีย์ความปลอดภัยของคุณ ซึ่งอาจส่งผลกระทบต่อความเป็นส่วนตัวของคุณได้
+# LOCALIZATION NOTE (webauthn.registerDirectPromptHint):
+# %S is brandShortName
+webauthn.registerDirectPromptHint=%S สามารถปกปิดตัวตนสิ่งนี้ให้คุณได้ แต่เว็บไซต์อาจจะปฏิเสธคีย์นี้ หากถูกปฏิเสธ คุณสามารถลองใหม่อีกครั้งได้
+# LOCALIZATION NOTE (webauthn.selectSignResultPrompt): %S is hostname
+webauthn.selectSignResultPrompt=พบบัญชีหลายบัญชีสำหรับ %S ให้เลือกบัญชีที่จะใช้หรือยกเลิก
+# LOCALIZATION NOTE (webauthn.selectDevicePrompt): %S is hostname
+webauthn.selectDevicePrompt=พบอุปกรณ์หลายเครื่องสำหรับ %S โปรดเลือกอุปกรณ์เครื่องหนึ่ง
+# LOCALIZATION NOTE (webauthn.deviceBlockedPrompt): %S is hostname
+webauthn.deviceBlockedPrompt=การยืนยันผู้ใช้ล้มเหลวบน %S ไม่มีความพยายามเหลืออยู่อีกและอุปกรณ์ของคุณได้ถูกล็อก เนื่องจากมีการป้อน PIN ไม่ถูกต้องหลายครั้งเกินไป จำเป็นต้องรีเซ็ตอุปกรณ์จึงจะใช้ได้
+# LOCALIZATION NOTE (webauthn.pinAuthBlockedPrompt): %S is hostname
+webauthn.pinAuthBlockedPrompt=การยืนยันผู้ใช้ล้มเหลวบน %S มีความพยายามที่ล้มเหลวติดต่อกันหลายครั้งเกินไปและการยืนยันตัวตนด้วย PIN ได้ถูกปิดกั้นชั่วคราว คุณจำเป็นต้องปิดและเปิดอุปกรณ์ของคุณใหม่ (ถอดปลั๊กแล้วเสียบปลั๊กใหม่)
+# LOCALIZATION NOTE (webauthn.pinNotSetPrompt): %S is hostname
+webauthn.pinNotSetPrompt=การยืนยันผู้ใช้ล้มเหลวบน %S คุณอาจต้องตั้งค่า PIN บนอุปกรณ์ของคุณ
+# LOCALIZATION NOTE (webauthn.uvBlockedPrompt): %S is hostname
+webauthn.uvBlockedPrompt=การตรวจสอบยืนยันผู้ใช้ล้มเหลวบน %S เนื่องจากลองไม่สำเร็จจำนวนหลายครั้งเกินไป และวิธีการตรวจสอบยืนยันผู้ใช้ในตัวถูกปิดกั้น
+webauthn.alreadyRegisteredPrompt=อุปกรณ์นี้ถูกลงทะเบียนไปแล้ว โปรดลองใช้อุปกรณ์อื่น
+webauthn.cancel=ยกเลิก
+webauthn.cancel.accesskey=ย
+webauthn.proceed=ดำเนินการต่อ
+webauthn.proceed.accesskey=ด
+webauthn.anonymize=ไม่ระบุตัวตนต่อไป
+
+# Spoof Accept-Language prompt
+privacy.spoof_english=การเปลี่ยนการตั้งค่าภาษาของคุณเป็นอังกฤษจะทำให้ระบุคุณได้ยากขึ้นและเพิ่มความเป็นส่วนตัวของคุณ คุณต้องการขอรุ่นภาษาอังกฤษของหน้าเว็บหรือไม่?
+
+# LOCALIZATION NOTE (identity.identified.verifier, identity.identified.state_and_country, identity.ev.contentOwner2):
+# %S is the hostname of the site that is being displayed.
+identity.identified.verifier=ยืนยันโดย: %S
+identity.identified.verified_by_you=คุณได้เพิ่มข้อยกเว้นความปลอดภัยสำหรับไซต์นี้
+identity.identified.state_and_country=%S, %S
+identity.ev.contentOwner2=ออกใบรับรองให้กับ: %S
+
+# LOCALIZATION NOTE (identity.notSecure.label):
+# Keep this string as short as possible, this is displayed in the URL bar
+# use a synonym for "safe" or "private" if "secure" is too long.
+identity.notSecure.label=ไม่ปลอดภัย
+identity.notSecure.tooltip=การเชื่อมต่อไม่ปลอดภัย
+
+identity.extension.label=ส่วนขยาย (%S)
+identity.extension.tooltip=ถูกโหลดโดยส่วนขยาย: %S
+
+# LOCALIZATION NOTE (contentBlocking.trackersView.blocked.label):
+# This label is shown next to a tracker in the trackers subview.
+# It forms the end of the (imaginary) sentence "www.example.com [was] Blocked"
+contentBlocking.trackersView.blocked.label=ปิดกั้นแล้ว
+
+contentBlocking.trackersView.empty.label=ไม่มีที่ตรวจพบในไซต์นี้
+
+# LOCALIZATION NOTE (contentBlocking.cookies.blockingTrackers.label, contentBlocking.cookies.blocking3rdParty.label,
+# contentBlocking.cookies.blockingUnvisited.label,contentBlocking.cookies.blockingAll.label):
+contentBlocking.cookies.blockingTrackers3.label=คุกกี้ติดตามข้ามไซต์
+contentBlocking.cookies.blocking3rdParty2.label=คุกกี้จากบุคคลที่สาม
+contentBlocking.cookies.blockingUnvisited2.label=คุกกี้ของไซต์ที่ไม่ได้เยี่ยมชม
+contentBlocking.cookies.blockingAll2.label=คุกกี้ทั้งหมด
+
+contentBlocking.cookiesView.firstParty.label=จากไซต์นี้
+# LOCALIZATION NOTE (contentBlocking.cookiesView.firstParty.empty.label):
+# This references the header from contentBlocking.cookiesView.firstParty.label:
+# "[Cookies] From This Site: None detected on this site".
+contentBlocking.cookiesView.firstParty.empty.label=ไม่มีที่ตรวจพบในไซต์นี้
+
+contentBlocking.cookiesView.trackers2.label=คุกกี้ติดตามข้ามไซต์
+# LOCALIZATION NOTE (contentBlocking.cookiesView.trackers.empty.label):
+# This references the header from contentBlocking.cookiesView.trackers.label:
+# "Tracking Cookies: None detected on this site".
+contentBlocking.cookiesView.trackers.empty.label=ไม่มีที่ตรวจพบในไซต์นี้
+
+contentBlocking.cookiesView.thirdParty.label=คุกกี้จากบุคคลที่สาม
+# LOCALIZATION NOTE (contentBlocking.cookiesView.thirdParty.empty.label):
+# This references the header from contentBlocking.cookiesView.thirdParty.label:
+# "Third-Party Cookies: None detected on this site".
+contentBlocking.cookiesView.thirdParty.empty.label=ไม่มีที่ตรวจพบในไซต์นี้
+
+# LOCALIZATION NOTE (contentBlocking.cookiesView.allowed.label):
+# This label is shown next to a cookie origin in the cookies subview.
+# It forms the end of the (imaginary) sentence "www.example.com [was] Allowed"
+contentBlocking.cookiesView.allowed.label=อนุญาตแล้ว
+# LOCALIZATION NOTE (contentBlocking.cookiesView.blocked.label):
+# This label is shown next to a cookie origin in the cookies subview.
+# It forms the end of the (imaginary) sentence "www.example.com [was] Blocked"
+contentBlocking.cookiesView.blocked.label=ปิดกั้นแล้ว
+# LOCALIZATION NOTE (contentBlocking.cookiesView.removeButton.tooltip): %S is the domain of the site.
+contentBlocking.cookiesView.removeButton.tooltip=ล้างข้อยกเว้นคุกกี้สำหรับ %S
+
+# LOCALIZATION NOTE (contentBlocking.fingerprintersView.blocked.label):
+# This label is shown next to a fingerprinter in the fingerprinters subview.
+# It forms the end of the (imaginary) sentence "www.example.com [was] Blocked"
+contentBlocking.fingerprintersView.blocked.label=ปิดกั้นแล้ว
+
+# LOCALIZATION NOTE (contentBlocking.cryptominersView.blocked.label):
+# This label is shown next to a cryptominer in the cryptominers subview.
+# It forms the end of the (imaginary) sentence "www.example.com [was] Blocked"
+contentBlocking.cryptominersView.blocked.label=ปิดกั้นแล้ว
+
+trackingProtection.icon.activeTooltip2=กำลังปิดกั้นตัวติดตามสื่อสังคมออนไลน์ คุกกี้ติดตามข้ามไซต์ และลายนิ้วมือดิจิทัล
+trackingProtection.icon.disabledTooltip2=การป้องกันการติดตามแบบพิเศษปิดอยู่สำหรับไซต์นี้
+# LOCALIZATION NOTE (trackingProtection.icon.noTrackersDetectedTooltip): %S is brandShortName.
+trackingProtection.icon.noTrackersDetectedTooltip=ไม่มีตัวติดตามที่ %S รู้จักถูกตรวจพบที่หน้านี้
+
+# LOCALIZATION NOTE (protections.header):
+# Header of the Protections Panel. %S is replaced with the site's hostname.
+protections.header=การป้องกันสำหรับ %S
+
+# LOCALIZATION NOTE (protections.disableAriaLabel):
+# Text that gets spoken by a screen reader if the button will disable protections.
+# %s is the site's hostname.
+protections.disableAriaLabel=ปิดใช้งานการป้องกันสำหรับ %S
+
+# LOCALIZATION NOTE (protections.enableAriaLabel):
+# Text that gets spoken by a screen reader if the button will enable protections.
+# %s is the site's hostname.
+protections.enableAriaLabel=เปิดใช้งานการป้องกันสำหรับ %S
+
+# Blocking and Not Blocking sub-views in the Protections Panel
+protections.blocking.fingerprinters.title=ลายนิ้วมือดิจิทัลถูกปิดกั้น
+protections.blocking.cryptominers.title=ตัวขุดเหรียญดิจิทัลถูกปิดกั้น
+protections.blocking.cookies.trackers.title=คุกกี้ติดตามข้ามไซต์ถูกปิดกั้น
+protections.blocking.cookies.3rdParty.title=คุกกี้จากบุคคลที่สามถูกปิดกั้น
+protections.blocking.cookies.all.title=คุกกี้ทั้งหมดถูกปิดกั้น
+protections.blocking.cookies.unvisited.title=คุกกี้จากไซต์ที่ไม่ได้เยี่ยมชมถูกปิดกั้น
+protections.blocking.trackingContent.title=ตัวติดตามเนื้อหาถูกปิดกั้น
+protections.blocking.socialMediaTrackers.title=ตัวติดตามสังคมออนไลน์ถูกปิดกั้น
+protections.notBlocking.fingerprinters.title=ไม่ปิดกั้นลายนิ้วมือดิจิทัล
+protections.notBlocking.cryptominers.title=ไม่ปิดกั้นตัวขุดเหรียญดิจิทัล
+protections.notBlocking.cookies.3rdParty.title=ไม่ปิดกั้นคุกกี้จากบุคคลที่สาม
+protections.notBlocking.cookies.all.title=ไม่ปิดกั้นคุกกี้
+protections.notBlocking.crossSiteTrackingCookies.title=ไม่ปิดกั้นคุกกี้ติดตามข้ามไซต์
+protections.notBlocking.trackingContent.title=ไม่ได้ปิดกั้นเนื้อหาการติดตาม
+protections.notBlocking.socialMediaTrackers.title=ไม่ได้ปิดกั้นตัวติดตามสื่อสังคมออนไลน์
+
+# Footer section in the Protections Panel
+# LOCALIZATION NOTE (protections.footer.blockedTrackerCounter.description,
+# protections.footer.blockedTrackerCounter.tooltip):
+# This text indicates the total number of trackers blocked on all sites. In
+# its tooltip, we show the date when we started counting this number.
+# LOCALIZATION NOTE (protections.footer.blockedTrackerCounter.description):
+# Semicolon-separated list of plural forms.
+# See: http://developer.mozilla.org/en/docs/Localization_and_Plurals
+# Replacement for #1 is a locale-string converted positive integer.
+protections.footer.blockedTrackerCounter.description=#1 ถูกปิดกั้น
+# LOCALIZATION NOTE (protections.footer.blockedTrackerCounter.tooltip):
+# %S is the date on which we started counting (e.g., July 17, 2019).
+protections.footer.blockedTrackerCounter.tooltip=ตั้งแต่ %S
+
+# Milestones section in the Protections Panel
+# LOCALIZATION NOTE (protections.milestone.description):
+# Semicolon-separated list of plural forms.
+# See: http://developer.mozilla.org/en/docs/Localization_and_Plurals
+# #1 is replaced with brandShortName.
+# #2 is replaced with the (locale-formatted) number of trackers blocked
+# #3 is replaced by a locale-formatted date with short month and numeric year.
+# In English this looks like "Firefox blocked over 10,000 trackers since Oct 2019"
+protections.milestone.description=#1 ปิดกั้นตัวติดตาม #2 ตัวตั้งแต่ #3
+
+# Application menu
+
+# LOCALIZATION NOTE(zoomReduce-button.tooltip): %S is the keyboard shortcut.
+zoomReduce-button.tooltip = ซูมออก (%S)
+# LOCALIZATION NOTE(zoomReset-button.tooltip): %S is the keyboard shortcut.
+zoomReset-button.tooltip = กลับค่าเดิมของระดับการซูม (%S)
+# LOCALIZATION NOTE(zoomEnlarge-button.tooltip): %S is the keyboard shortcut.
+zoomEnlarge-button.tooltip = ซูมเข้า (%S)
+
+# LOCALIZATION NOTE (cut-button.tooltip): %S is the keyboard shortcut.
+cut-button.tooltip = ตัด (%S)
+# LOCALIZATION NOTE (copy-button.tooltip): %S is the keyboard shortcut.
+copy-button.tooltip = คัดลอก (%S)
+# LOCALIZATION NOTE (paste-button.tooltip): %S is the keyboard shortcut.
+paste-button.tooltip = วาง (%S)
+
+# Geolocation UI
+
+geolocation.allow=อนุญาต
+geolocation.allow.accesskey=อ
+geolocation.block=ปิดกั้น
+geolocation.block.accesskey=ป
+geolocation.shareWithSite4=อนุญาตให้ %S เข้าถึงตำแหน่งที่ตั้งของคุณหรือไม่?
+geolocation.shareWithFile4=อนุญาตให้ไฟล์ในเครื่องนี้เข้าถึงตำแหน่งที่ตั้งของคุณหรือไม่?
+# LOCALIZATION NOTE(geolocation.shareWithSiteUnsafeDelegation2):
+# %1$S is the first party origin, %2$S is the third party origin.
+geolocation.shareWithSiteUnsafeDelegation2=อนุญาตให้ %1$S มอบสิทธิอนุญาตให้กับ %2$S ในการเข้าถึงตำแหน่งที่ตั้งของคุณหรือไม่?
+geolocation.remember=จดจำการตัดสินใจนี้
+
+# Virtual Reality Device UI
+xr.allow2=อนุญาต
+xr.allow2.accesskey=อ
+xr.block=ปิดกั้น
+xr.block.accesskey=ป
+xr.shareWithSite4=อนุญาตให้ %S เข้าถึงอุปกรณ์ความจริงเสมือนหรือไม่? การดำเนินการนี้อาจเป็นการเปิดเผยข้อมูลที่ละเอียดอ่อน
+xr.shareWithFile4=อนุญาตให้ไฟล์ภายในเครื่องนี้เข้าถึงอุปกรณ์ความจริงเสมือนหรือไม่? การดำเนินการนี้อาจเป็นการเปิดเผยข้อมูลที่ละเอียดอ่อน
+xr.remember=จดจำการตัดสินใจนี้
+
+# Persistent storage UI
+persistentStorage.allow=อนุญาต
+persistentStorage.allow.accesskey=อ
+persistentStorage.block.label=ปิดกั้น
+persistentStorage.block.accesskey=ป
+persistentStorage.allowWithSite2=อนุญาตให้ %S จัดเก็บข้อมูลในที่เก็บข้อมูลถาวรหรือไม่?
+
+# Web notifications UI
+# LOCALIZATION NOTE (alwaysBlock, block)
+# The two button strings will never be shown at the same time, so
+# it's okay for them to have the same access key
+webNotifications.allow2=อนุญาต
+webNotifications.allow2.accesskey=อ
+webNotifications.notNow=ไม่ใช่ตอนนี้
+webNotifications.notNow.accesskey=ม
+webNotifications.never=ไม่อนุญาตเสมอ
+webNotifications.never.accesskey=ส
+webNotifications.alwaysBlock=ปิดกั้นเสมอ
+webNotifications.alwaysBlock.accesskey=ป
+webNotifications.block=ปิดกั้น
+webNotifications.block.accesskey=ป
+webNotifications.receiveFromSite3=อนุญาตให้ %S ส่งการแจ้งเตือนหรือไม่?
+
+# Phishing/Malware Notification Bar.
+# LOCALIZATION NOTE (notADeceptiveSite, notAnAttack)
+# The two button strings will never be shown at the same time, so
+# it's okay for them to have the same access key
+safebrowsing.getMeOutOfHereButton.label=นำฉันออกไปจากที่นี่!
+safebrowsing.getMeOutOfHereButton.accessKey=น
+safebrowsing.deceptiveSite=ไซต์หลอกลวง!
+safebrowsing.notADeceptiveSiteButton.label=นี่ไม่ใช่ไซต์หลอกลวง…
+safebrowsing.notADeceptiveSiteButton.accessKey=ห
+safebrowsing.reportedAttackSite=ไซต์รุกรานตามการรายงาน!
+safebrowsing.notAnAttackButton.label=นี่ไม่ใช่ไซต์รุกราน…
+safebrowsing.notAnAttackButton.accessKey=ร
+safebrowsing.reportedUnwantedSite=ไซต์ที่มีซอฟต์แวร์ไม่พึงประสงค์ตามการรายงาน!
+safebrowsing.reportedHarmfulSite=ไซต์อันตรายตามการรายงาน!
+
+# LOCALIZATION NOTE (addKeywordTitleAutoFill): %S will be replaced by the page's title
+# Used as the bookmark name when saving a keyword for a search field.
+addKeywordTitleAutoFill=ค้นหา %S
+
+# troubleshootModeRestart
+# LOCALIZATION NOTE (troubleshootModeRestartPromptTitle): %S is the name of the product (e.g., Firefox)
+troubleshootModeRestartPromptTitle=เริ่มการทำงาน %S ใหม่ในโหมดแก้ไขปัญหาหรือไม่?
+troubleshootModeRestartPromptMessage=ส่วนขยาย ชุดรูปแบบ และการตั้งค่าที่กำหนดเองของคุณจะถูกปิดใช้งานชั่วคราว
+troubleshootModeRestartButton=เริ่มการทำงานใหม่
+
+# LOCALIZATION NOTE (browser.menu.showCharacterEncoding): Set to the string
+# "true" (spelled and capitalized exactly that way) to show the "Text
+# Encoding" menu in the main Firefox button on Windows. Any other value will
+# hide it. Regardless of the value of this setting, the "Text Encoding"
+# menu will always be accessible via the "Browser Tools" menu.
+# This is not a string to translate; it just controls whether the menu shows
+# up in the Firefox button. If users frequently use the "Text Encoding"
+# menu, set this to "true". Otherwise, you can leave it as "false".
+browser.menu.showCharacterEncoding=false
+
+# Process hang reporter
+# LOCALIZATION NOTE (processHang.selected_tab.label): %1$S is the name of the product (e.g., Firefox)
+processHang.selected_tab.label = หน้านี้กำลังทำให้ %1$S ทำงานช้า เมื่อต้องการเร่งความเร็วเบราว์เซอร์ของคุณ ให้หยุดการทำงานของหน้านี้
+# LOCALIZATION NOTE (processHang.nonspecific_tab.label): %1$S is the name of the product (e.g., Firefox)
+processHang.nonspecific_tab.label = หน้าเว็บกำลังทำให้ %1$S ทำงานช้า เมื่อต้องการเร่งความเร็วเบราว์เซอร์ของคุณ ให้หยุดการทำงานของหน้านั้น
+# LOCALIZATION NOTE (processHang.specific_tab.label): %1$S is the title of the tab.
+# %2$S is the name of the product (e.g., Firefox)
+processHang.specific_tab.label = “%1$S” กำลังทำให้ %2$S ทำงานช้า เมื่อต้องการเร่งความเร็วเบราว์เซอร์ของคุณ ให้หยุดการทำงานของหน้านั้น
+# LOCALIZATION NOTE (processHang.add-on.label2): %1$S is the name of the
+# extension. %2$S is the name of the product (e.g., Firefox)
+processHang.add-on.label2 = “%1$S” กำลังทำให้ %2$S ทำงานช้า เมื่อต้องการเร่งความเร็วเบราว์เซอร์ของคุณ ให้หยุดการทำงานของส่วนขยายนั้น
+processHang.add-on.learn-more.text = เรียนรู้เพิ่มเติม
+processHang.button_stop2.label = หยุด
+processHang.button_stop2.accessKey = ห
+processHang.button_debug.label = ดีบั๊กสคริปต์
+processHang.button_debug.accessKey = ด
+
+# LOCALIZATION NOTE (fullscreenButton.tooltip): %S is the keyboard shortcut for full screen
+fullscreenButton.tooltip=แสดงผลหน้าต่างเต็มหน้าจอ (%S)
+
+# These are visible when opening the popup inside the bookmarks sidebar
+sidebar.moveToLeft=ย้ายแถบข้างไปด้านซ้าย
+sidebar.moveToRight=ย้ายแถบข้างไปด้านขวา
+
+# LOCALIZATION NOTE(emeNotifications.drmContentDisabled.message): NB: inserted via innerHTML, so please don't use <, > or & in this string. %S will be the 'learn more' link
+emeNotifications.drmContentDisabled.message2 = คุณต้องเปิดใช้งาน DRM เพื่อเล่นเสียงหรือวิดีโอบางส่วนในหน้านี้
+emeNotifications.drmContentDisabled.button.label = เปิดใช้งาน DRM
+emeNotifications.drmContentDisabled.button.accesskey = ป
+
+# LOCALIZATION NOTE(emeNotifications.drmContentCDMInstalling.message): NB: inserted via innerHTML, so please don't use <, > or & in this string. %S is brandShortName
+emeNotifications.drmContentCDMInstalling.message = %S กำลังติดตั้งองค์ประกอบที่จำเป็นในการเล่นเสียงหรือวิดีโอในหน้านี้ โปรดลองอีกครั้งในภายหลัง
+
+emeNotifications.unknownDRMSoftware = ไม่ทราบ
+
+# LOCALIZATION NOTE (customizeMode.tabTitle): %S is brandShortName
+customizeMode.tabTitle = ปรับแต่ง %S
+
+e10s.accessibilityNotice.acceptButton.label = ตกลง
+e10s.accessibilityNotice.acceptButton.accesskey = ต
+
+# LOCALIZATION NOTE (e10s.accessibilityNotice.jawsMessage): %S is brandShortName
+e10s.accessibilityNotice.jawsMessage = การแสดงผลเนื้อหาแท็บถูกปิดใช้งานเนื่องจากความเข้ากันไม่ได้ระหว่าง %S และซอฟต์แวร์การช่วยการเข้าถึงของคุณ โปรดอัปเดตตัวอ่านหน้าจอของคุณหรือสลับเป็น Firefox Extended Support Release
+
+# 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.
+userContextPersonal.label = ส่วนบุคคล
+userContextWork.label = งาน
+userContextBanking.label = ธนาคาร
+userContextShopping.label = การซื้อของ
+userContextNone.label = ไม่มีการแยกข้อมูล
+
+userContextPersonal.accesskey = ส
+userContextWork.accesskey = ง
+userContextBanking.accesskey = น
+userContextShopping.accesskey = อ
+userContextNone.accesskey = ม
+
+userContext.aboutPage.label = จัดการการแยกข้อมูล
+userContext.aboutPage.accesskey = ย
+
+# LOCALIZATION NOTE (sendTabsToDevice.label):
+# Semi-colon list of plural forms.
+# See: https://developer.mozilla.org/en/docs/Localization_and_Plurals
+# #1 is the number of tabs sent to the device.
+sendTabsToDevice.label = ส่ง #1 แท็บไปยังอุปกรณ์
+sendTabsToDevice.accesskey = ส
+
+decoder.noCodecs.button = เรียนรู้วิธี
+decoder.noCodecs.accesskey = ร
+decoder.noCodecsLinux.message = เพื่อเล่นวิดีโอ คุณอาจจำเป็นต้องติดตั้งตัวถอดรหัสวิดีโอที่ต้องการ
+decoder.noHWAcceleration.message = เพื่อปรับปรุงคุณภาพวิดีโอ คุณอาจจำเป็นต้องติดตั้ง Media Feature Pack ของ Microsoft
+decoder.noPulseAudio.message = เพื่อเล่นเสียง คุณอาจจำเป็นต้องติดตั้งซอฟต์แวร์ PulseAudio ที่จำเป็น
+decoder.unsupportedLibavcodec.message = libavcodec อาจมีความเสี่ยงหรือไม่รองรับ และควรได้รับการอัปเดตเพื่อเล่นวิดีโอ
+
+decoder.decodeError.message = เกิดข้อผิดพลาดขณะถอดรหัสทรัพยากรสื่อ
+decoder.decodeError.button = รายงานปัญหาไซต์
+decoder.decodeError.accesskey = ร
+decoder.decodeWarning.message = เกิดข้อผิดพลาดที่สามารถกู้คืนได้ขณะถอดรหัสทรัพยากรสื่อ
+
+# LOCALIZATION NOTE (captivePortal.infoMessage3):
+# Shown in a notification bar when we detect a captive portal is blocking network access
+# and requires the user to log in before browsing.
+captivePortal.infoMessage3 = คุณต้องเข้าสู่ระบบเครือข่ายนี้ก่อนที่คุณจะสามารถเข้าถึงอินเทอร์เน็ตได้
+# LOCALIZATION NOTE (captivePortal.showLoginPage2):
+# The label for a button shown in the info bar in all tabs except the login page tab.
+# The button shows the portal login page tab when clicked.
+captivePortal.showLoginPage2 = เปิดหน้าเข้าสู่ระบบของเครือข่าย
+
+# LOCALIZATION NOTE (permissions.header):
+# %S is the hostname of the site that is being displayed.
+permissions.header = สิทธิอนุญาตสำหรับ %S
+permissions.remove.tooltip = ล้างสิทธิอนุญาตนี้และถามอีกครั้ง
+
+permissions.fullscreen.promptCanceled = ยกเลิกคำขอการอนุญาตที่รอดำเนินการแล้ว: ไม่ควรออกคำขอการอนุญาตก่อนเข้าสู่โหมดเต็มหน้าจอของ DOM
+permissions.fullscreen.fullScreenCanceled = ออกจากโหมดเต็มหน้าจอของ DOM แล้ว: ไม่ควรออกคำขอการอนุญาตในขณะที่อยู่ในโหมดเต็มหน้าจอของ DOM
+
+# LOCALIZATION NOTE (aboutDialog.architecture.*):
+# The sixtyFourBit and thirtyTwoBit strings describe the architecture of the
+# current Firefox build: 32-bit or 64-bit. These strings are used in parentheses
+# between the Firefox version and the "What's new" link in the About dialog,
+# e.g.: "48.0.2 (32-bit) <What's new>" or "51.0a1 (2016-09-05) (64-bit)".
+aboutDialog.architecture.sixtyFourBit = 64 บิต
+aboutDialog.architecture.thirtyTwoBit = 32 บิต
+
+midi.allow.label = อนุญาต
+midi.allow.accesskey = อ
+midi.block.label = ปิดกั้น
+midi.block.accesskey = ป
+midi.remember=จดจำการตัดสินใจนี้
+midi.shareWithFile = อนุญาตให้ไฟล์ในเครื่องนี้เข้าถึงอุปกรณ์ MIDI ของคุณหรือไม่?
+# LOCALIZATION NOTE (midi.shareWithSite): %S is the name of the site URL (https://...) requesting MIDI access
+midi.shareWithSite = อนุญาตให้ %S เข้าถึงอุปกรณ์ MIDI ของคุณหรือไม่?
+midi.shareSysexWithFile = อนุญาตให้ไฟล์ในเครื่องนี้เข้าถึงอุปกรณ์ MIDI ของคุณและส่ง/รับข้อความ SysEx หรือไม่?
+# LOCALIZATION NOTE (midi.shareSysexWithSite): %S is the name of the site URL (https://...) requesting MIDI access
+midi.shareSysexWithSite = อนุญาตให้ %S เข้าถึงอุปกรณ์ MIDI ของคุณและส่ง/รับข้อความ SysEx หรือไม่?
+
+# LOCALIZATION NOTE (panel.back):
+# This is used by screen readers to label the "back" button in various browser
+# popup panels, including the sliding subviews of the main menu.
+panel.back = ย้อนกลับ
+
+storageAccess1.Allow.label = อนุญาต
+storageAccess1.Allow.accesskey = อ
+storageAccess1.DontAllow.label = ปิดกั้น
+storageAccess1.DontAllow.accesskey = ป
+# LOCALIZATION NOTE (storageAccess4.message, storageAccess1.hintText):
+# %1$S is the name of the site URL (www.site1.example) trying to track the user's activity.
+# %2$S is the name of the site URL (www.site2.example) that the user is visiting. This is the same domain name displayed in the address bar.
+storageAccess4.message = อนุญาตให้ %1$S ใช้คุกกี้บน %2$S หรือไม่?
+storageAccess1.hintText = คุณสามารถปิดกั้นการเข้าถึงได้หากคุณไม่แน่ใจเหตุผลที่ %1$S ต้องการข้อมูลนี้
+
+# LOCALIZATION NOTE (gnomeSearchProviderSearchWeb):
+# Used for search by Gnome Shell activity screen, %S is a searched string.
+gnomeSearchProviderSearchWeb=ค้นหา “%S” ในเว็บ
diff --git a/l10n-th/browser/chrome/browser/customizableui/customizableWidgets.properties b/l10n-th/browser/chrome/browser/customizableui/customizableWidgets.properties
new file mode 100644
index 0000000000..cdb9c5e245
--- /dev/null
+++ b/l10n-th/browser/chrome/browser/customizableui/customizableWidgets.properties
@@ -0,0 +1,54 @@
+# 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/.
+
+history-panelmenu.label = ประวัติ
+# LOCALIZATION NOTE(history-panelmenu.tooltiptext2): %S is the keyboard shortcut
+history-panelmenu.tooltiptext2 = แสดงประวัติของคุณ (%S)
+
+find-button.label = ค้นหา
+# LOCALIZATION NOTE(find-button.tooltiptext3): %S is the keyboard shortcut.
+find-button.tooltiptext3 = ค้นหาในหน้านี้ (%S)
+
+developer-button.label = นักพัฒนา
+# LOCALIZATION NOTE(developer-button.tooltiptext): %S is the keyboard shortcut
+developer-button.tooltiptext2 = เปิดเครื่องมือนักพัฒนาเว็บ (%S)
+
+sidebar-button.label = แถบข้าง
+sidebar-button.tooltiptext2 = แสดงแถบข้าง
+
+zoom-controls.label = ปุ่มควบคุมการซูม
+zoom-controls.tooltiptext2 = ปุ่มควบคุมการซูม
+
+zoom-out-button.label = ซูมออก
+# LOCALIZATION NOTE(zoom-out-button.tooltiptext2): %S is the keyboard shortcut.
+zoom-out-button.tooltiptext2 = ซูมออก (%S)
+
+# LOCALIZATION NOTE(zoom-reset-button.tooltiptext2): %S is the keyboard shortcut.
+zoom-reset-button.tooltiptext2 = กลับค่าเดิมของระดับการซูม (%S)
+
+zoom-in-button.label = ซูมเข้า
+# LOCALIZATION NOTE(zoom-in-button.tooltiptext2): %S is the keyboard shortcut.
+zoom-in-button.tooltiptext2 = ซูมเข้า (%S)
+
+edit-controls.label = ปุ่มควบคุมการแก้ไข
+edit-controls.tooltiptext2 = ปุ่มควบคุมการแก้ไข
+
+cut-button.label = ตัด
+# LOCALIZATION NOTE(cut-button.tooltiptext2): %S is the keyboard shortcut.
+cut-button.tooltiptext2 = ตัด (%S)
+
+copy-button.label = คัดลอก
+# LOCALIZATION NOTE(copy-button.tooltiptext2): %S is the keyboard shortcut.
+copy-button.tooltiptext2 = คัดลอก (%S)
+
+paste-button.label = วาง
+# LOCALIZATION NOTE(paste-button.tooltiptext2): %S is the keyboard shortcut.
+paste-button.tooltiptext2 = วาง (%S)
+
+panic-button.label = ลืม
+panic-button.tooltiptext = ลืมประวัติการเรียกดูบางส่วน
+
+toolbarspring.label = ช่องว่างแบบยืดหยุ่น
+toolbarseparator.label = ตัวแบ่ง
+toolbarspacer.label = ช่องว่าง
diff --git a/l10n-th/browser/chrome/browser/downloads/downloads.properties b/l10n-th/browser/chrome/browser/downloads/downloads.properties
new file mode 100644
index 0000000000..bb249bee87
--- /dev/null
+++ b/l10n-th/browser/chrome/browser/downloads/downloads.properties
@@ -0,0 +1,82 @@
+# 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 (stateStarting):
+# Indicates that the download is starting.
+stateStarting=กำลังเริ่ม…
+# LOCALIZATION NOTE (stateFailed):
+# Indicates that the download failed because of an error.
+stateFailed=ล้มเหลว
+# LOCALIZATION NOTE (statePaused):
+# Indicates that the download was paused by the user.
+statePaused=หยุดชั่วคราวอยู่
+# LOCALIZATION NOTE (stateCanceled):
+# Indicates that the download was canceled by the user.
+stateCanceled=ยกเลิกแล้ว
+# LOCALIZATION NOTE (stateCompleted):
+# Indicates that the download was completed.
+stateCompleted=เสร็จสมบูรณ์
+# LOCALIZATION NOTE (stateBlockedParentalControls):
+# Indicates that the download was blocked by the Parental Controls feature of
+# Windows. "Parental Controls" should be consistently named and capitalized
+# with the display of this feature in Windows. The following article can
+# provide a reference for the translation of "Parental Controls" in various
+# languages:
+# http://windows.microsoft.com/en-US/windows-vista/Set-up-Parental-Controls
+stateBlockedParentalControls=ถูกปิดกั้นโดยการควบคุมโดยผู้ปกครอง
+# LOCALIZATION NOTE (blockedMalware, blockedPotentiallyUnwanted,
+# blockedUncommon2):
+# These strings are shown in the panel for some types of blocked downloads. You
+# may need to adjust "downloads.width" in "downloads.dtd" if this turns out to
+# be longer than the other existing status strings.
+blockedMalware=ไฟล์นี้มีไวรัสหรือมัลแวร์
+blockedPotentiallyUnwanted=ไฟล์นี้อาจเป็นอันตรายต่อคอมพิวเตอร์ของคุณ
+blockedPotentiallyInsecure=ไม่ได้ดาวน์โหลดไฟล์: ความเสี่ยงด้านความปลอดภัยที่อาจเกิดขึ้น
+blockedUncommon2=ไฟล์นี้ไม่ได้ดาวน์โหลดกันโดยทั่วไป
+
+# LOCALIZATION NOTE (fileMovedOrMissing):
+# Displayed when a complete download which is not at the original folder.
+fileMovedOrMissing=ไฟล์ถูกย้ายหรือหายไป
+
+# LOCALIZATION NOTE (fileDeleted):
+# Displayed when a downloaded file has been deleted by Firefox, e.g. by the
+# "Delete File" context menu item.
+fileDeleted=ไฟล์ที่ถูกลบ
+
+# LOCALIZATION NOTE (unblockHeaderUnblock, unblockHeaderOpen,
+# unblockTypeMalware, unblockTypePotentiallyUnwanted2,
+# unblockTypeUncommon2, unblockTip2, unblockButtonOpen,
+# unblockButtonUnblock, unblockButtonConfirmBlock, unblockInsecure2):
+# These strings are displayed in the dialog shown when the user asks a blocked
+# download to be unblocked. The severity of the threat is expressed in
+# descending order by the unblockType strings, it is higher for files detected
+# as malware and lower for uncommon downloads.
+unblockHeaderUnblock=คุณแน่ใจหรือไม่ว่าต้องการอนุญาตการดาวน์โหลดนี้?
+unblockHeaderOpen=คุณแน่ใจหรือไม่ว่าต้องการเปิดไฟล์นี้?
+unblockTypeMalware=ไฟล์นี้มีไวรัสหรือมัลแวร์อื่นที่อาจเป็นอันตรายต่อคอมพิวเตอร์ของคุณ
+unblockTypePotentiallyUnwanted2=ไฟล์นี้ได้ปลอมตัวเป็นการดาวน์โหลดที่มีประโยชน์ แต่มันสามารถเปลี่ยนแปลงแบบที่ไม่คาดไว้กับการตั้งค่าและโปรแกรมของคุณ
+unblockTypeUncommon2=ไฟล์นี้ไม่ได้ดาวน์โหลดกันโดยทั่วไปและอาจไม่ปลอดภัยที่จะเปิด ไฟล์อาจมีไวรัสหรือทำการเปลี่ยนแปลงที่ไม่คาดคิดกับโปรแกรมและการตั้งค่าของคุณ
+unblockInsecure2=การดาวน์โหลดนี้ทำผ่าน HTTP แม้เอกสารปัจจุบันจะถูกส่งผ่านการเชื่อมต่อ HTTPS ที่ปลอดภัยก็ตาม ถ้าคุณดำเนินการต่อ การดาวน์โหลดอาจเสียหายหรืออาจถูกดัดแปลงระหว่างกระบวนการดาวน์โหลด
+unblockTip2=คุณสามารถค้นหาแหล่งดาวน์โหลดอื่น หรือลองอีกครั้งในภายหลัง
+unblockButtonOpen=เปิด
+unblockButtonUnblock=อนุญาตการดาวน์โหลด
+unblockButtonConfirmBlock=เอาไฟล์ออก
+
+# LOCALIZATION NOTE (sizeWithUnits):
+# %1$S is replaced with the size number, and %2$S with the measurement unit.
+sizeWithUnits=%1$S %2$S
+sizeUnknown=ไม่ทราบขนาด
+
+# LOCALIZATION NOTE (statusSeparator, statusSeparatorBeforeNumber):
+# These strings define templates for the separation of different elements in the
+# status line of a download item. As a separator, by default we use the Unicode
+# character U+2014 'EM DASH' (long dash). Examples of status lines include
+# "Canceled - 222.net", "1.1 MB - website2.com", or "Paused - 1.1 MB". Note
+# that we use a wider space after the separator when it is followed by a number,
+# just to avoid visually confusing it with with a minus sign with some fonts.
+# If you use a different separator, this might not be necessary. However, there
+# is usually no need to change the separator or the order of the substitutions,
+# even for right-to-left languages, unless the defaults are not suitable.
+statusSeparator=%1$S \u2014 %2$S
+statusSeparatorBeforeNumber=%1$S \u2014 %2$S
diff --git a/l10n-th/browser/chrome/browser/feeds/subscribe.properties b/l10n-th/browser/chrome/browser/feeds/subscribe.properties
new file mode 100644
index 0000000000..62dd6b55c2
--- /dev/null
+++ b/l10n-th/browser/chrome/browser/feeds/subscribe.properties
@@ -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/.
+
+# LOCALIZATION NOTE (addProtocolHandlerMessage):
+# Message displayed when adding a protocol handler:
+# %1$S is the application's domain, %2$S is the type of protocol
+addProtocolHandlerMessage=เพิ่ม “%1$S” เป็นแอปพลิเคชันสำหรับลิงก์ %2$S?
+addProtocolHandlerAddButton=เพิ่มแอปพลิเคชัน
+addProtocolHandlerAddButtonAccesskey=พ
diff --git a/l10n-th/browser/chrome/browser/places/bookmarkProperties.properties b/l10n-th/browser/chrome/browser/places/bookmarkProperties.properties
new file mode 100644
index 0000000000..8c952e46d8
--- /dev/null
+++ b/l10n-th/browser/chrome/browser/places/bookmarkProperties.properties
@@ -0,0 +1,24 @@
+# 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/.
+
+dialogAcceptLabelAddItem=เพิ่ม
+dialogAcceptLabelSaveItem=บันทึก
+dialogAcceptLabelAddMulti=เพิ่มที่คั่นหน้า
+dialogAcceptLabelEdit=บันทึก
+dialogTitleAddBookmark=ที่คั่นหน้าใหม่
+dialogTitleAddFolder=โฟลเดอร์ใหม่
+dialogTitleAddMulti=ที่คั่นหน้าใหม่
+dialogTitleEdit=คุณสมบัติของ “%S”
+
+dialogTitleAddNewBookmark2=เพิ่มที่คั่นหน้า
+dialogTitleEditBookmark=แก้ไข “%S”
+dialogTitleEditBookmark2=แก้ไขที่คั่นหน้า
+dialogTitleAddBookmarksFolder=เพิ่มโฟลเดอร์ที่คั่นหน้า
+dialogTitleAddBookmarkFolder=เพิ่มโฟลเดอร์ที่คั่นหน้า
+dialogTitleEditBookmarksFolder=แก้ไขโฟลเดอร์ที่คั่นหน้า
+dialogTitleEditBookmarkFolder=แก้ไขโฟลเดอร์ที่คั่นหน้า
+
+bookmarkAllTabsDefault=[ชื่อโฟลเดอร์]
+newFolderDefault=โฟลเดอร์ใหม่
+newBookmarkDefault=ที่คั่นหน้าใหม่
diff --git a/l10n-th/browser/chrome/browser/safebrowsing/safebrowsing.properties b/l10n-th/browser/chrome/browser/safebrowsing/safebrowsing.properties
new file mode 100644
index 0000000000..d246b942aa
--- /dev/null
+++ b/l10n-th/browser/chrome/browser/safebrowsing/safebrowsing.properties
@@ -0,0 +1,6 @@
+# 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/.
+
+errorReportFalseDeceptiveTitle=นี่ไม่ใช่ไซต์หลอกลวง
+errorReportFalseDeceptiveMessage=ไม่สามารถรายงานข้อผิดพลาดได้ในขณะนี้
diff --git a/l10n-th/browser/chrome/browser/search.properties b/l10n-th/browser/chrome/browser/search.properties
new file mode 100644
index 0000000000..0ee7cd86ce
--- /dev/null
+++ b/l10n-th/browser/chrome/browser/search.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/.
+
+searchtip=ค้นหาโดยใช้ %S
+
+# LOCALIZATION NOTE (searchHeader): this is displayed at the top of the panel
+# showing search suggestions.
+# %S is replaced with the name of the current default search engine.
+searchHeader=ค้นหา %S
+
+# LOCALIZATION NOTE (cmd_pasteAndSearch): "Search" is a verb, this is the
+# search bar equivalent to the url bar's "Paste & Go"
+cmd_pasteAndSearch=วางแล้วค้นหา
+
+cmd_clearHistory=ล้างประวัติการค้นหา
+cmd_clearHistory_accesskey=ง
+
+# LOCALIZATION NOTE (searchForSomethingWith2):
+# This string is used to build the header above the list of one-click
+# search providers: "Search for <user-typed string> with:"
+searchForSomethingWith2=ค้นหา %S ด้วย:
+
+# LOCALIZATION NOTE (searchWithHeader):
+# The wording of this string should be as close as possible to
+# searchForSomethingWith2. This string will be used when the user
+# has not typed anything.
+searchWithHeader=ค้นหาด้วย:
+
+# LOCALIZATION NOTE (searchSettings):
+# This is the label for the button that opens Search preferences.
+searchSettings=เปลี่ยนการตั้งค่าการค้นหา
+
diff --git a/l10n-th/browser/chrome/browser/shellservice.properties b/l10n-th/browser/chrome/browser/shellservice.properties
new file mode 100644
index 0000000000..75d824a0dd
--- /dev/null
+++ b/l10n-th/browser/chrome/browser/shellservice.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 (setDefaultBrowserTitle, setDefaultBrowserMessage, setDefaultBrowserDontAsk, setDefaultBrowserAlertConfirm.label, setDefaultBrowserAlertNotNow.label):
+# These strings are used as an alternative to the ones above, in a modal dialog.
+# %S will be replaced by brandShortName
+setDefaultBrowserTitle=เบราว์เซอร์เริ่มต้น
+setDefaultBrowserMessage=%S ไม่ได้ถูกตั้งเป็นเบราว์เซอร์เริ่มต้นของคุณในปัจจุบัน คุณต้องการทำให้เป็นเบราว์เซอร์เริ่มต้นของคุณหรือไม่?
+setDefaultBrowserDontAsk=ตรวจสอบเช่นนี้เสมอเมื่อเริ่ม %S
+setDefaultBrowserAlertConfirm.label=ใช้ %S เป็นเบราว์เซอร์เริ่มต้นของฉัน
+setDefaultBrowserAlertNotNow.label=ไม่ใช่ตอนนี้
+
+desktopBackgroundLeafNameWin=พื้นหลังเดสก์ท็อป.bmp
+DesktopBackgroundDownloading=กำลังบันทึกรูปภาพ…
+DesktopBackgroundSet=ตั้งพื้นหลังเดสก์ท็อป
diff --git a/l10n-th/browser/chrome/browser/siteData.properties b/l10n-th/browser/chrome/browser/siteData.properties
new file mode 100644
index 0000000000..8c816451e0
--- /dev/null
+++ b/l10n-th/browser/chrome/browser/siteData.properties
@@ -0,0 +1,8 @@
+# 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/.
+
+clearSiteDataPromptTitle=ล้างคุกกี้และข้อมูลไซต์ทั้งหมด
+# LOCALIZATION NOTE (clearSiteDataPromptText): %S = brandShortName
+clearSiteDataPromptText=การเลือก ‘ล้างตอนนี้’ จะล้างคุกกี้และข้อมูลไซต์ทั้งหมดที่จัดเก็บโดย %S สิ่งนี้อาจลงชื่อคุณออกจากเว็บไซต์และเอาเนื้อหาเว็บออฟไลน์ออก
+clearSiteDataNow=ล้างตอนนี้
diff --git a/l10n-th/browser/chrome/browser/sitePermissions.properties b/l10n-th/browser/chrome/browser/sitePermissions.properties
new file mode 100644
index 0000000000..091f4c98c4
--- /dev/null
+++ b/l10n-th/browser/chrome/browser/sitePermissions.properties
@@ -0,0 +1,55 @@
+# 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 (state.current.allowed,
+# state.current.allowedForSession,
+# state.current.allowedTemporarily,
+# state.current.blockedTemporarily,
+# state.current.blocked,
+# state.current.hide):
+# This label is used to display active permission states in the site
+# identity popup (which does not have a lot of screen space).
+state.current.allowed = อนุญาตแล้ว
+state.current.allowedForSession = ได้รับอนุญาตในวาระ
+state.current.allowedTemporarily = ได้รับอนุญาตชั่วคราว
+state.current.blockedTemporarily = ปิดกั้นแล้วชั่วคราว
+state.current.blocked = ปิดกั้นแล้ว
+state.current.prompt = ถามเสมอ
+
+# LOCALIZATION NOTE (state.multichoice.alwaysAsk,
+# state.multichoice.allow,
+# state.multichoice.allowForSession,
+# state.multichoice.block):
+# Used to label permission state checkboxes in the page info dialog.
+state.multichoice.alwaysAsk = ถามเสมอ
+state.multichoice.allow = อนุญาต
+state.multichoice.allowForSession = อนุญาตในวาระ
+state.multichoice.block = ปิดกั้น
+
+state.multichoice.autoplayblock = ปิดกั้นเสียง
+state.multichoice.autoplayblockall = ปิดกั้นเสียงและวิดีโอ
+state.multichoice.autoplayallow = อนุญาตเสียงและวิดีโอ
+
+permission.autoplay.label = เล่นอัตโนมัติ
+permission.cookie.label = ตั้งคุกกี้
+permission.desktop-notification3.label = ส่งการแจ้งเตือน
+permission.camera.label = ใช้กล้อง
+permission.microphone.label = ใช้ไมโครโฟน
+permission.screen.label = แบ่งปันหน้าจอ
+# LOCALIZATION NOTE (permission.speaker.label):
+# Short form for (permission to) "Choose and change audio output devices".
+permission.speaker.label = เลือกลำโพง
+permission.install.label = ติดตั้งส่วนเสริม
+permission.popup.label = เปิดหน้าต่างป๊อปอัป
+permission.geo.label = เข้าถึงตำแหน่งที่ตั้งของคุณ
+permission.xr.label = เข้าถึงอุปกรณ์ความจริงเสมือน
+permission.shortcuts.label = เขียนทับแป้นพิมพ์ลัด
+permission.focus-tab-by-prompt.label = สลับไปยังแท็บนี้
+permission.persistent-storage.label = จัดเก็บข้อมูลในที่เก็บข้อมูลถาวร
+permission.canvas.label = ส่งออกข้อมูลผืนผ้าใบ
+permission.midi.label = เข้าถึงอุปกรณ์ MIDI
+permission.midi-sysex.label = เข้าถึงอุปกรณ์ MIDI พร้อมการสนับสนุน SysEx
+# LOCALIZATION NOTE (permission.open-protocol-handler.label):
+# Open as a verb. "This site may open applications".
+permission.open-protocol-handler.label = เปิดแอปพลิเคชัน
diff --git a/l10n-th/browser/chrome/browser/syncSetup.properties b/l10n-th/browser/chrome/browser/syncSetup.properties
new file mode 100644
index 0000000000..b3b515f344
--- /dev/null
+++ b/l10n-th/browser/chrome/browser/syncSetup.properties
@@ -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/.
+
+# Several other strings are used (via Weave.Status.login), but they come from
+# /services/sync
+
+# Firefox Accounts based setup.
+continue.label = ดำเนินการต่อ
+
+relinkVerify.title = คำเตือนการผสาน
+relinkVerify.heading = คุณแน่ใจหรือไม่ว่าต้องการลงชื่อเข้า Sync?
+# LOCALIZATION NOTE (relinkVerify.description): Email address of a user previously signed into sync.
+relinkVerify.description = ผู้ใช้ที่ต่างกันได้ลงชื่อเข้า Sync ก่อนหน้านี้ในคอมพิวเตอร์นี้ การลงชื่อเข้าจะผสานที่คั่นหน้า, รหัสผ่าน และการตั้งค่าอื่น ๆ ของเบราว์เซอร์นี้กับ %S
diff --git a/l10n-th/browser/chrome/browser/taskbar.properties b/l10n-th/browser/chrome/browser/taskbar.properties
new file mode 100644
index 0000000000..ab5be22ea4
--- /dev/null
+++ b/l10n-th/browser/chrome/browser/taskbar.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/.
+
+taskbar.tasks.newTab.label=เปิดแท็บใหม่
+taskbar.tasks.newTab.description=เปิดแท็บเบราว์เซอร์ใหม่
+taskbar.tasks.newWindow.label=เปิดหน้าต่างใหม่
+taskbar.tasks.newWindow.description=เปิดหน้าต่างเบราว์เซอร์ใหม่
+taskbar.tasks.newPrivateWindow.label=หน้าต่างส่วนตัวใหม่
+taskbar.tasks.newPrivateWindow.description=เปิดหน้าต่างใหม่ในโหมดการเรียกดูแบบส่วนตัว
+taskbar.frequent.label=ใช้บ่อย
+taskbar.recent.label=ล่าสุด
diff --git a/l10n-th/browser/chrome/browser/uiDensity.properties b/l10n-th/browser/chrome/browser/uiDensity.properties
new file mode 100644
index 0000000000..72d6f16a95
--- /dev/null
+++ b/l10n-th/browser/chrome/browser/uiDensity.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/.
+
+uiDensity.menuitem-touch.acceltext=โหมดแท็บเล็ตถูกเปิดใช้งานอยู่
diff --git a/l10n-th/browser/chrome/overrides/appstrings.properties b/l10n-th/browser/chrome/overrides/appstrings.properties
new file mode 100644
index 0000000000..f159603eca
--- /dev/null
+++ b/l10n-th/browser/chrome/overrides/appstrings.properties
@@ -0,0 +1,44 @@
+# 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/.
+
+malformedURI2=โปรดตรวจสอบว่า URL ถูกต้องและลองอีกครั้ง
+fileNotFound=Firefox ไม่พบไฟล์ที่ %S
+fileAccessDenied=ไฟล์ที่ %S ไม่สามารถอ่านได้
+dnsNotFound2=เราไม่สามารถเชื่อมต่อกับเซิร์ฟเวอร์ที่ %S
+unknownProtocolFound=Firefox ไม่ทราบวิธีเปิดที่อยู่นี้ เนื่องจากหนึ่งในโปรโตคอลดังต่อไปนี้ (%S) ไม่สัมพันธ์กับโปรแกรมใด ๆ หรือไม่อนุญาตในบริบทนี้
+connectionFailure=Firefox ไม่สามารถสร้างการเชื่อมต่อไปยังเซิร์ฟเวอร์ที่ %S
+netInterrupt=การเชื่อมต่อไปยัง %S ถูกขัดจังหวะขณะที่หน้ากำลังโหลด
+netTimeout=เซิร์ฟเวอร์ที่ %S ใช้เวลาตอบสนองนานเกินไป
+redirectLoop=Firefox ตรวจพบว่าเซิร์ฟเวอร์กำลังเปลี่ยนเส้นทางคำขอสำหรับที่อยู่นี้ในทางที่ไม่มีวันเสร็จสมบูรณ์
+## LOCALIZATION NOTE (confirmRepostPrompt): In this item, don’t translate "%S"
+confirmRepostPrompt=เพื่อแสดงผลหน้านี้ %S จะต้องส่งข้อมูลซึ่งจะทำซ้ำการกระทำใด ๆ (อย่างเช่น การค้นหาหรือการยืนยันคำสั่งซื้อ) ที่ได้ดำเนินการไว้ก่อนหน้านี้
+resendButton.label=ส่งใหม่
+unknownSocketType=Firefox ไม่ทราบว่าจะสื่อสารกับเซิร์ฟเวอร์อย่างไร
+netReset=การเชื่อมต่อไปยังเซิร์ฟเวอร์ถูกตัดขณะที่หน้ากำลังโหลด
+notCached=ไม่มีเอกสารนี้อีกต่อไป
+netOffline=ขณะนี้ Firefox อยู่ในโหมดออฟไลน์และไม่สามารถเรียกดูได้
+isprinting=ไม่สามารถเปลี่ยนแปลงเอกสารขณะกำลังพิมพ์หรืออยู่ในตัวอย่างก่อนพิมพ์
+deniedPortAccess=ที่อยู่นี้ใช้พอร์ตเครือข่ายซึ่งปกติใช้สำหรับวัตถุประสงค์อื่นนอกเหนือจากการเรียกดูเว็บ Firefox ได้ยกเลิกคำขอดังกล่าวเพื่อปกป้องคุณ
+proxyResolveFailure=Firefox ถูกกำหนดค่าให้ใช้เซิร์ฟเวอร์พร็อกซีที่ไม่สามารถหาพบ
+proxyConnectFailure=Firefox ถูกกำหนดค่าให้ใช้เซิร์ฟเวอร์พร็อกซีที่ปฏิเสธการเชื่อมต่อ
+contentEncodingError=ไม่สามารถแสดงหน้าที่คุณกำลังพยายามจะดูเนื่องจากหน้าใช้รูปแบบการบีบอัดที่ไม่ถูกต้องหรือไม่รองรับ
+unsafeContentType=ไม่สามารถแสดงหน้าที่คุณกำลังพยายามจะดูเนื่องจากหน้ามีชนิดไฟล์ที่อาจไม่ปลอดภัยที่จะเปิด โปรดติดต่อเจ้าของเว็บไซต์เพื่อแจ้งพวกเขาให้ทราบถึงปัญหานี้
+externalProtocolTitle=คำขอโปรโตคอลภายนอก
+externalProtocolPrompt=แอปพลิเคชันภายนอกต้องถูกเปิดเพื่อจัดการกับ %1$S: ลิงก์\n\n\nลิงก์ที่ขอ:\n\n%2$S\n\nแอปพลิเคชัน: %3$S\n\n\nหากคุณไม่ได้คาดหวังคำขอนี้ มันอาจจะเป็นความพยายามในการใช้ประโยชน์จากจุดอ่อนในโปรแกรมอื่นนั้น ยกเลิกคำขอนี้เว้นแต่คุณจะแน่ใจว่าคำขอนี้ไม่ได้ประสงค์ร้าย\n
+#LOCALIZATION NOTE (externalProtocolUnknown): The following string is shown if the application name can't be determined
+externalProtocolUnknown=<ไม่ทราบ>
+externalProtocolChkMsg=จดจำการเลือกของฉันสำหรับลิงก์ประเภทนี้ทั้งหมด
+externalProtocolLaunchBtn=เปิดแอปพลิเคชัน
+malwareBlocked=ไซต์ที่ %S ถูกรายงานว่าเป็นไซต์รุกรานและถูกปิดกั้นตามการกำหนดลักษณะความปลอดภัยของคุณ
+harmfulBlocked=ไซต์ที่ %S ถูกรายงานว่าเป็นไซต์ที่อาจเป็นอันตรายและถูกปิดกั้นตามการกำหนดลักษณะความปลอดภัยของคุณ
+unwantedBlocked=ไซต์ที่ %S ถูกรายงานว่าแจกจ่ายซอฟต์แวร์ไม่พึงประสงค์และถูกปิดกั้นตามการกำหนดลักษณะความปลอดภัยของคุณ
+deceptiveBlocked=หน้าเว็บนี้ที่ %S ถูกรายงานว่าเป็นไซต์หลอกลวงและถูกปิดกั้นตามการกำหนดลักษณะความปลอดภัยของคุณ
+cspBlocked=หน้านี้มีนโยบายความปลอดภัยของเนื้อหาที่ป้องกันไม่ให้หน้าถูกโหลดด้วยวิธีนี้
+xfoBlocked=หน้านี้มีนโยบาย X-Frame-Options ที่ป้องกันไม่ให้หน้าถูกโหลดในบริบทนี้
+corruptedContentErrorv2=ไซต์ที่ %S ได้พบการละเมิดโปรโตคอลเครือข่ายที่ไม่สามารถซ่อมแซมได้
+## LOCALIZATION NOTE (sslv3Used) - Do not translate "%S".
+sslv3Used=Firefox ไม่สามารถรับประกันความปลอดภัยของข้อมูลของคุณบน %S เนื่องจากใช้ SSLv3 ซึ่งเป็นโปรโตคอลที่มีปัญหาด้านความปลอดภัย
+inadequateSecurityError=เว็บไซต์พยายามจะแลกเปลี่ยนระดับความปลอดภัยที่ไม่เพียงพอ
+blockedByPolicy=องค์กรของคุณได้ปิดกั้นการเข้าถึงหน้าหรือเว็บไซต์นี้
+networkProtocolError=Firefox ได้พบการละเมิดโปรโตคอลเครือข่ายที่ไม่สามารถซ่อมแซมได้
diff --git a/l10n-th/browser/crashreporter/crashreporter-override.ini b/l10n-th/browser/crashreporter/crashreporter-override.ini
new file mode 100644
index 0000000000..171ac589af
--- /dev/null
+++ b/l10n-th/browser/crashreporter/crashreporter-override.ini
@@ -0,0 +1,8 @@
+; 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 file is in the UTF-8 encoding
+[Strings]
+; LOCALIZATION NOTE (CrashReporterProductErrorText2): The %s is replaced with a string containing detailed information.
+CrashReporterProductErrorText2=Firefox มีปัญหาและได้หยุดการทำงาน เราจะพยายามเรียกคืนแท็บและหน้าต่างของคุณกลับมาเหมือนเดิมเมื่อเริ่มทำงานใหม่\n\nโชคไม่ดีที่ตัวรายงานการขัดข้องไม่สามารถส่งข้อมูลรายงานการขัดข้องได้\n\nรายละเอียด: %s
+CrashReporterDescriptionText2=Firefox มีปัญหาและได้หยุดการทำงาน เราจะพยายามเรียกคืนแท็บและหน้าต่างของคุณกลับมาเหมือนเดิมเมื่อเริ่มทำงานใหม่\n\nคุณสามารถช่วยเหลือการวิเคราะห์แก้ปัญหานี้ได้ โดยการส่งรายงานการขัดข้องกลับมาที่เรา
diff --git a/l10n-th/browser/defaultagent/defaultagent_localized.ini b/l10n-th/browser/defaultagent/defaultagent_localized.ini
new file mode 100644
index 0000000000..5db75f2703
--- /dev/null
+++ b/l10n-th/browser/defaultagent/defaultagent_localized.ini
@@ -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/.
+
+# This file is in the UTF-8 encoding
+[Strings]
+DefaultBrowserAgentTaskDescription=งานของ Default Browser Agent จะตรวจสอบเมื่อมีการเปลี่ยนค่าเริ่มต้นจาก %MOZ_APP_DISPLAYNAME% เป็นเบราว์เซอร์อื่น หากการเปลี่ยนแปลงเกิดขึ้นภายใต้สถานการณ์ที่น่าสงสัย ระบบจะแจ้งให้ผู้ใช้เปลี่ยนกลับเป็น %MOZ_APP_DISPLAYNAME% ไม่เกินสองครั้ง งานนี้ถูกติดตั้งโดยอัตโนมัติโดย %MOZ_APP_DISPLAYNAME% และจะถูกติดตั้งใหม่เมื่อ %MOZ_APP_DISPLAYNAME% อัปเดต เมื่อต้องการปิดใช้งานงานนี้ ให้อัปเดตการกำหนดลักษณะ “default-browser-agent.enabled” บนหน้า about:config หรือการตั้งค่านโยบายองค์กร “DisableDefaultBrowserAgent” ของ %MOZ_APP_DISPLAYNAME%
+
+DefaultBrowserNotificationTitle=ทำให้ %MOZ_APP_DISPLAYNAME% เป็นเบราว์เซอร์เริ่มต้นของคุณ
+DefaultBrowserNotificationText=%MOZ_APP_DISPLAYNAME% ไม่ใช่เบราว์เซอร์เริ่มต้นของคุณอีกต่อไป ทำให้เป็นค่าเริ่มต้นของคุณหรือไม่?
+
+DefaultBrowserNotificationHeaderText=ต้องการใช้ %MOZ_APP_DISPLAYNAME% ต่อไปหรือไม่?
+DefaultBrowserNotificationBodyText=เบราว์เซอร์เริ่มต้นของคุณถูกเปลี่ยนไปเมื่อไม่นานมานี้ แตะเพื่อคืน %MOZ_APP_DISPLAYNAME% มาเป็นค่าเริ่มต้น
+DefaultBrowserNotificationYesButtonText=ใช่
+DefaultBrowserNotificationNoButtonText=ไม่
diff --git a/l10n-th/browser/extensions/formautofill/formautofill.properties b/l10n-th/browser/extensions/formautofill/formautofill.properties
new file mode 100644
index 0000000000..6c69b90139
--- /dev/null
+++ b/l10n-th/browser/extensions/formautofill/formautofill.properties
@@ -0,0 +1,135 @@
+# 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 (autofillOptionsLink, autofillOptionsLinkOSX): These strings are used in the doorhanger for
+# updating addresses. The link leads users to Form Autofill browser preferences.
+autofillOptionsLink = ตัวเลือกการกรอกแบบฟอร์มอัตโนมัติ
+autofillOptionsLinkOSX = การกำหนดลักษณะการกรอกแบบฟอร์มอัตโนมัติ
+# LOCALIZATION NOTE (changeAutofillOptions, changeAutofillOptionsOSX): These strings are used on the doorhanger
+# that notifies users that addresses are saved. The button leads users to Form Autofill browser preferences.
+changeAutofillOptions = เปลี่ยนตัวเลือกการกรอกแบบฟอร์มอัตโนมัติ
+changeAutofillOptionsOSX = เปลี่ยนการกำหนดลักษณะการกรอกแบบฟอร์มอัตโนมัติ
+changeAutofillOptionsAccessKey = ป
+# LOCALIZATION NOTE (addressesSyncCheckbox): If Sync is enabled, this checkbox is displayed on the doorhanger
+# shown when saving addresses.
+addressesSyncCheckbox = แบ่งปันที่อยู่กับอุปกรณ์ที่ซิงค์
+# LOCALIZATION NOTE (creditCardsSyncCheckbox): If Sync is enabled and credit card sync is available,
+# this checkbox is displayed on the doorhanger shown when saving credit card.
+creditCardsSyncCheckbox = แบ่งปันบัตรเครดิตกับอุปกรณ์ที่ซิงค์
+
+# LOCALIZATION NOTE (saveAddressesMessage): %S is brandShortName. This string is used on the doorhanger to
+# notify users that addresses are saved.
+saveAddressesMessage = %S สามารถบันทึกที่อยู่ได้ เพื่อให้คุณสามารถกรอกแบบฟอร์มได้เร็วขึ้น
+saveAddressDescriptionLabel = ที่อยู่ที่จะบันทึก:
+saveAddressLabel = บันทึกที่อยู่
+saveAddressAccessKey = บ
+# LOCALIZATION NOTE (updateAddressMessage, updateAddressDescriptionLabel, createAddressLabel, updateAddressLabel):
+# Used on the doorhanger when an address change is detected.
+updateAddressMessage = คุณต้องการอัปเดตที่อยู่ของคุณด้วยข้อมูลใหม่นี้หรือไม่?
+updateAddressOldDescriptionLabel = ที่อยู่เดิม:
+updateAddressNewDescriptionLabel = ที่อยู่ใหม่:
+createAddressLabel = สร้างที่อยู่ใหม่
+createAddressAccessKey = ส
+createAddressDescriptionLabel = ที่อยู่ที่จะสร้าง:
+cancelAddressLabel = ไม่บันทึก
+cancelAddressAccessKey = ม
+updateAddressLabel = อัปเดตที่อยู่
+updateAddressAccessKey = อ
+
+# LOCALIZATION NOTE (saveCreditCardMessage, saveCreditCardDescriptionLabel, saveCreditCardLabel, cancelCreditCardLabel, neverSaveCreditCardLabel):
+# Used on the doorhanger when users submit payment with credit card.
+# LOCALIZATION NOTE (saveCreditCardMessage): %S is brandShortName.
+saveCreditCardMessage = คุณต้องการให้ %S บันทึกบัตรเครดิตนี้หรือไม่? (รหัสความปลอดภัยจะไม่ถูกบันทึก)
+saveCreditCardDescriptionLabel = บัตรเครดิตที่จะบันทึก:
+saveCreditCardLabel = บันทึกบัตรเครดิต
+saveCreditCardAccessKey = บ
+cancelCreditCardLabel = ไม่บันทึก
+cancelCreditCardAccessKey = ม
+neverSaveCreditCardLabel = ไม่บันทึกบัตรเครดิตเสมอ
+neverSaveCreditCardAccessKey = น
+# LOCALIZATION NOTE (updateCreditCardMessage, updateCreditCardDescriptionLabel, createCreditCardLabel, updateCreditCardLabel):
+# Used on the doorhanger when an credit card change is detected.
+updateCreditCardMessage = คุณต้องการอัปเดตบัตรเครดิตของคุณด้วยข้อมูลใหม่นี้หรือไม่?
+updateCreditCardDescriptionLabel = บัตรเครดิตที่จะอัปเดต:
+createCreditCardLabel = สร้างบัตรเครดิตใหม่
+createCreditCardAccessKey = ส
+updateCreditCardLabel = อัปเดตบัตรเครดิต
+updateCreditCardAccessKey = อ
+# LOCALIZATION NOTE (openAutofillMessagePanel): Tooltip label for Form Autofill doorhanger icon on address bar.
+openAutofillMessagePanel = เปิดแผงข้อความการกรอกแบบฟอร์มอัตโนมัติ
+
+# LOCALIZATION NOTE (autocompleteFooterOption2):
+# Used as a label for the button, displayed at the bottom of the dropdown suggestion, to open Form Autofill browser preferences.
+autocompleteFooterOption2 = ตัวเลือกการกรอกแบบฟอร์มอัตโนมัติ
+# LOCALIZATION NOTE (autocompleteFooterOptionOSX2):
+# Used as a label for the button, displayed at the bottom of the dropdown suggestion, to open Form Autofill browser preferences.
+autocompleteFooterOptionOSX2 = การกำหนดลักษณะการกรอกแบบฟอร์มอัตโนมัติ
+# LOCALIZATION NOTE (autocompleteFooterOptionShort2):
+# Used as a label for the button, displayed at the bottom of the dropdown suggestion, to open Form Autofill browser preferences.
+# The short version is used for inputs below a certain width (e.g. 150px).
+autocompleteFooterOptionShort2 = ตัวเลือกการกรอกอัตโนมัติ
+# LOCALIZATION NOTE (autocompleteFooterOptionOSXShort2):
+# Used as a label for the button, displayed at the bottom of the dropdown suggestion, to open Form Autofill browser preferences.
+# The short version is used for inputs below a certain width (e.g. 150px).
+autocompleteFooterOptionOSXShort2 = การกำหนดลักษณะการกรอกอัตโนมัติ
+
+# LOCALIZATION NOTE (autocompleteManageCreditCards):
+# Used as a label for the button, displayed at the bottom of the dropdown suggestion, to open Form Autofill browser preferences.
+autocompleteManageCreditCards = จัดการบัตรเครดิต
+# LOCALIZATION NOTE (autocompleteManageAddresses):
+# Used as a label for the button, displayed at the bottom of the dropdown suggestion, to open Form Autofill browser preferences.
+autocompleteManageAddresses = จัดการที่อยู่
+# LOCALIZATION NOTE (category.address, category.name, category.organization2, category.tel, category.email):
+# Used in autofill drop down suggestion to indicate what other categories Form Autofill will attempt to fill.
+category.address = ที่อยู่
+category.name = ชื่อ
+category.organization2 = องค์กร
+category.tel = โทรศัพท์
+category.email = อีเมล
+# LOCALIZATION NOTE (fieldNameSeparator): This is used as a separator between categories.
+fieldNameSeparator = ,\u0020
+# LOCALIZATION NOTE (phishingWarningMessage, phishingWarningMessage2): The warning
+# text that is displayed for informing users what categories are about to be filled.
+# "%S" will be replaced with a list generated from the pre-defined categories.
+# The text would be e.g. Also autofills organization, phone, email.
+phishingWarningMessage = กรอก %S อัตโนมัติเช่นกัน
+phishingWarningMessage2 = กรอก %S อัตโนมัติ
+# LOCALIZATION NOTE (insecureFieldWarningDescription): %S is brandShortName. This string is used in drop down
+# suggestion when users try to autofill credit card on an insecure website (without https).
+insecureFieldWarningDescription = %S ตรวจพบไซต์ที่ไม่ปลอดภัย การกรอกแบบฟอร์มอัตโนมัติถูกปิดใช้งานชั่วคราว
+# LOCALIZATION NOTE (clearFormBtnLabel2): Label for the button in the dropdown menu that used to clear the populated
+# form.
+clearFormBtnLabel2 = ล้างแบบฟอร์มที่กรอกอัตโนมัติ
+
+autofillHeader = แบบฟอร์มและการกรอกอัตโนมัติ
+# LOCALIZATION NOTE (autofillAddressesCheckbox): Label for the checkbox that enables autofilling addresses.
+autofillAddressesCheckbox = กรอกที่อยู่อัตโนมัติ
+# LOCALIZATION NOTE (learnMoreLabel): Label for the link that leads users to the Form Autofill SUMO page.
+learnMoreLabel = เรียนรู้เพิ่มเติม
+# LOCALIZATION NOTE (savedAddressesBtnLabel): Label for the button that opens a dialog that shows the
+# list of saved addresses.
+savedAddressesBtnLabel = ที่อยู่ที่บันทึกไว้…
+# LOCALIZATION NOTE (autofillCreditCardsCheckbox): Label for the checkbox that enables autofilling credit cards.
+autofillCreditCardsCheckbox = กรอกบัตรเครดิตอัตโนมัติ
+# LOCALIZATION NOTE (savedCreditCardsBtnLabel): Label for the button that opens a dialog that shows the list
+# of saved credit cards.
+savedCreditCardsBtnLabel = บัตรเครดิตที่บันทึกไว้…
+
+autofillReauthCheckboxMac = ต้องการการรับรองความถูกต้องของ macOS เพื่อกรอกอัตโนมัติ ดู หรือแก้ไขบัตรเครดิตที่เก็บไว้
+autofillReauthCheckboxWin = ต้องการการรับรองความถูกต้องของ Windows เพื่อกรอกอัตโนมัติ ดู หรือแก้ไขบัตรเครดิตที่เก็บไว้
+autofillReauthCheckboxLin = ต้องการการรับรองความถูกต้องของ Linux เพื่อกรอกอัตโนมัติ ดู หรือแก้ไขบัตรเครดิตที่เก็บไว้
+
+# LOCALIZATION NOTE (autofillReauthOSDialogMac): This string is
+# preceded by the operating system (macOS) with "Firefox is trying to ", and
+# has a period added to its end. Make sure to test in your locale.
+autofillReauthOSDialogMac = เปลี่ยนการตั้งค่าการรับรองความถูกต้อง
+autofillReauthOSDialogWin = เมื่อต้องการเปลี่ยนการตั้งค่าการรับรองความถูกต้อง ให้ป้อนข้อมูลประจำตัวการเข้าสู่ระบบ Windows ของคุณ
+autofillReauthOSDialogLin = เมื่อต้องการเปลี่ยนการตั้งค่าการรับรองความถูกต้อง ให้ป้อนข้อมูลประจำตัวการเข้าสู่ระบบ Linux ของคุณ
+
+useCreditCardPasswordPrompt.win = %S กำลังพยายามจะใช้ข้อมูลบัตรเครดิตที่จัดเก็บไว้ ยืนยันการเข้าถึงบัญชี Windows นี้ด้านล่าง
+# LOCALIZATION NOTE (useCreditCardPasswordPrompt.macos): This string is
+# preceded by the operating system (macOS) with "Firefox is trying to ", and
+# has a period added to its end. Make sure to test in your locale.
+useCreditCardPasswordPrompt.macos = ใช้ข้อมูลบัตรเครดิตที่เก็บไว้
+useCreditCardPasswordPrompt.linux = %S กำลังพยายามจะใช้ข้อมูลบัตรเครดิตที่จัดเก็บไว้
diff --git a/l10n-th/browser/extensions/report-site-issue/webcompat.properties b/l10n-th/browser/extensions/report-site-issue/webcompat.properties
new file mode 100644
index 0000000000..f1ce586fbc
--- /dev/null
+++ b/l10n-th/browser/extensions/report-site-issue/webcompat.properties
@@ -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/.
+
+# LOCALIZATION NOTE(wc-reporter.label2): This string will be used in the
+# Firefox page actions menu. Localized length should be considered.
+wc-reporter.label2=รายงานปัญหาไซต์…
+# LOCALIZATION NOTE(wc-reporter.tooltip): A site compatibility issue is
+# a website bug that exists in one browser (Firefox), but not another.
+wc-reporter.tooltip=รายงานปัญหาความเข้ากันได้ของเว็บไซต์
diff --git a/l10n-th/browser/firefox-l10n.js b/l10n-th/browser/firefox-l10n.js
new file mode 100644
index 0000000000..b410ad9aef
--- /dev/null
+++ b/l10n-th/browser/firefox-l10n.js
@@ -0,0 +1,6 @@
+# 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 substitution
+
diff --git a/l10n-th/browser/installer/custom.properties b/l10n-th/browser/installer/custom.properties
new file mode 100644
index 0000000000..7adea29ff3
--- /dev/null
+++ b/l10n-th/browser/installer/custom.properties
@@ -0,0 +1,93 @@
+# 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:
+
+# This file must be saved as UTF8
+
+# Accesskeys are defined by prefixing the letter that is to be used for the
+# accesskey with an ampersand (e.g. &).
+
+# Do not replace $BrandShortName, $BrandFullName, or $BrandFullNameDA with a
+# custom string and always use the same one as used by the en-US files.
+# $BrandFullNameDA allows the string to contain an ampersand (e.g. DA stands
+# for double ampersand) and prevents the letter following the ampersand from
+# being used as an accesskey.
+
+# You can use \n to create a newline in the string but only when the string
+# from en-US contains a \n.
+
+REG_APP_DESC=$BrandShortName ให้คุณท่องเว็บอย่างปลอดภัยและง่ายดายด้วยหน้าตาที่คุ้นเคย ความสามารถด้านความปลอดภัยที่ถูกยกระดับ รวมไปถึงช่วยปกป้องคุณจากการขโมยอัตลักษณ์ และการค้นหาแบบรวมที่ทำให้คุณใช้ประโยชน์จากเว็บได้สูงสุด
+PRIVATE_BROWSING_SHORTCUT_TITLE=การเรียกดูแบบส่วนตัวของ $BrandShortName
+CONTEXT_OPTIONS=&ตัวเลือก $BrandShortName
+CONTEXT_SAFE_MODE=โหมด&ปลอดภัย $BrandShortName
+OPTIONS_PAGE_TITLE=ชนิดการติดตั้ง
+OPTIONS_PAGE_SUBTITLE=เลือกตัวเลือกการติดตั้ง
+SHORTCUTS_PAGE_TITLE=ติดตั้งทางลัด
+SHORTCUTS_PAGE_SUBTITLE=สร้างไอคอนโปรแกรม
+COMPONENTS_PAGE_TITLE=ติดตั้งส่วนประกอบเสริม
+COMPONENTS_PAGE_SUBTITLE=ส่วนประกอบเสริมที่แนะนำ
+OPTIONAL_COMPONENTS_DESC=บริการบำรุงรักษาจะอนุญาตให้คุณอัปเดต $BrandShortName อยู่เบื้องหลังโดยไม่รบกวน
+MAINTENANCE_SERVICE_CHECKBOX_DESC=ติดตั้งบริการ&บำรุงรักษา
+SUMMARY_PAGE_TITLE=สรุป
+SUMMARY_PAGE_SUBTITLE=พร้อมที่จะเริ่มติดตั้ง $BrandShortName
+SUMMARY_INSTALLED_TO=$BrandShortName จะถูกติดตั้งไว้ที่:
+SUMMARY_REBOOT_REQUIRED_INSTALL=คุณต้องทำการเริ่มคอมพิวเตอร์ของคุณใหม่เพื่อทำให้การติดตั้งสมบูรณ์
+SUMMARY_REBOOT_REQUIRED_UNINSTALL=คุณอาจจำเป็นต้องเริ่มการทำงานคอมพิวเตอร์ใหม่เพื่อให้การถอนการติดตั้งเสร็จสมบูรณ์
+SUMMARY_TAKE_DEFAULTS=ใ&ช้ $BrandShortName เป็นเว็บเบราว์เซอร์เริ่มต้นของฉัน
+SUMMARY_INSTALL_CLICK=คลิก ติดตั้ง เพื่อดำเนินการต่อ
+SUMMARY_UPGRADE_CLICK=คลิก อัปเกรด เพื่อดำเนินการต่อ
+SURVEY_TEXT=&บอกเราว่าคุณคิดอย่างไรกับ $BrandShortName
+LAUNCH_TEXT=เ&ริ่ม $BrandShortName ทันที
+CREATE_ICONS_DESC=สร้างไอคอนสำหรับ $BrandShortName:
+ICONS_DESKTOP=บน&เดสก์ท็อปของฉัน
+ICONS_STARTMENU=ในโฟลเดอร์บนเ&มนูเริ่มโปรแกรม
+ICONS_TASKBAR=บนแ&ถบงานของฉัน
+WARN_MANUALLY_CLOSE_APP_INSTALL=$BrandShortName จะต้องถูกปิดเพื่อทำการติดตั้ง\n\nโปรดปิด $BrandShortName เพื่อทำต่อ
+WARN_MANUALLY_CLOSE_APP_UNINSTALL=$BrandShortName ต้องถูกปิดเพื่อดำเนินการถอนการติดตั้ง\n\nโปรดปิด $BrandShortName เพื่อดำเนินการต่อ
+WARN_MANUALLY_CLOSE_APP_REFRESH=$BrandShortName ต้องถูกปิดเพื่อดำเนินการล้าง\n\nโปรดปิด $BrandShortName เพื่อดำเนินการต่อ
+WARN_WRITE_ACCESS=คุณไม่มีสิทธิในการเขียนไปยังไดเรคทอรี่ที่จะติดตั้ง\n\nคลิกตกลงเพื่อเลือกไดเรคทอรี่อื่น
+WARN_DISK_SPACE=คุณไม่มีพื้นที่ดิสก์เพียงพอที่จะติดตั้งไปยังตำแหน่งที่ตั้งนี้\n\nคลิก ตกลง เพื่อเลือกตำแหน่งที่ตั้งอื่น
+WARN_MIN_SUPPORTED_OSVER_MSG=ขออภัย ไม่สามารถติดตั้ง $BrandShortName ได้ $BrandShortName รุ่นนี้ต้องการ ${MinSupportedVer} หรือใหม่กว่า โปรดคลิกปุ่ม ตกลง สำหรับข้อมูลเพิ่มเติม
+WARN_MIN_SUPPORTED_CPU_MSG=ขออภัย ไม่สามารถติดตั้ง $BrandShortName ได้ $BrandShortName รุ่นนี้ต้องการหน่วยประมวลผลที่รองรับ ${MinSupportedCPU} โปรดคลิกปุ่ม ตกลง สำหรับข้อมูลเพิ่มเติม
+WARN_MIN_SUPPORTED_OSVER_CPU_MSG=ขออภัย ไม่สามารถติดตั้ง $BrandShortName ได้ $BrandShortName รุ่นนี้ต้องการ ${MinSupportedVer} หรือใหม่กว่าและหน่วยประมวลผลที่รองรับ ${MinSupportedCPU} โปรดคลิกปุ่ม ตกลง สำหรับข้อมูลเพิ่มเติม
+WARN_RESTART_REQUIRED_UNINSTALL=คอมพิวเตอร์ของคุณต้องเริ่มการทำงานใหม่เพื่อให้การถอนการติดตั้งก่อนหน้าของ $BrandShortName เสร็จสมบูรณ์ คุณต้องการเริ่มระบบใหม่ตอนนี้หรือไม่?
+WARN_RESTART_REQUIRED_UPGRADE=คอมพิวเตอร์ของคุณต้องเริ่มการทำงานใหม่เพื่อให้การอัปเกรดก่อนหน้าของ $BrandShortName เสร็จสมบูรณ์ คุณต้องการเริ่มระบบใหม่ตอนนี้หรือไม่?
+ERROR_CREATE_DIRECTORY_PREFIX=ข้อผิดพลาดการสร้างไดเรกทอรี:
+ERROR_CREATE_DIRECTORY_SUFFIX=คลิก ยกเลิก เพื่อหยุดการติดตั้งหรือ\nลองใหม่ เพื่อลองอีกครั้ง
+
+UN_CONFIRM_PAGE_TITLE=ถอนการติดตั้ง $BrandFullName
+UN_CONFIRM_PAGE_SUBTITLE=เอา $BrandFullName ออกจากคอมพิวเตอร์ของคุณ
+UN_CONFIRM_UNINSTALLED_FROM=$BrandShortName จะถูกถอนการติดตั้งจากตำแหน่งที่ตั้งดังต่อไปนี้:
+UN_CONFIRM_CLICK=คลิก ถอนการติดตั้ง เพื่อดำเนินการต่อ
+
+UN_REFRESH_PAGE_TITLE=ล้าง $BrandShortName ใหม่หรือไม่?
+UN_REFRESH_PAGE_EXPLANATION=หากคุณกำลังมีปัญหากับ $BrandShortName การล้างใหม่อาจช่วยได้\n\nการดำเนินการนี้จะเรียกคืนการตั้งค่าเริ่มต้นและเอาส่วนเสริมออก ล้างใหม่ให้สดเพื่อประสิทธิภาพที่ดีที่สุด
+UN_REFRESH_LEARN_MORE=เ&รียนรู้เพิ่มเติม
+UN_REFRESH_BUTTON=&ล้าง $BrandShortName ใหม่
+
+BANNER_CHECK_EXISTING=กำลังตรวจสอบการติดตั้งที่มีอยู่…
+
+STATUS_INSTALL_APP=กำลังติดตั้ง $BrandShortName…
+STATUS_INSTALL_LANG=กำลังติดตั้งไฟล์ภาษา (${AB_CD})…
+STATUS_UNINSTALL_MAIN=กำลังถอนการติดตั้ง $BrandShortName…
+STATUS_CLEANUP=กำลังเก็บกวาดอีกเล็กน้อย…
+
+UN_SURVEY_CHECKBOX_LABEL=บอก Mozilla ว่าทำไมคุณจึงถอนการติดตั้ง $BrandShortName
+
+# _DESC strings support approximately 65 characters per line.
+# One line
+OPTIONS_SUMMARY=เลือกชนิดการติดตั้งที่คุณต้องการ จากนั้นคลิก ถัดไป
+# One line
+OPTION_STANDARD_DESC=$BrandShortName จะถูกติดตั้งโดยใช้ตัวเลือกทั่วไป
+OPTION_STANDARD_RADIO=&มาตรฐาน
+# Two lines
+OPTION_CUSTOM_DESC=คุณอาจจะเลือกตัวเลือกเฉพาะในการติดตั้ง แนะนำเฉพาะผู้ใช้ที่เชี่ยวชาญเท่านั้น
+OPTION_CUSTOM_RADIO=&กำหนดเอง
+
+# LOCALIZATION NOTE:
+# The following text replaces the Install button text on the summary page.
+# Verify that the access key for InstallBtn (in override.properties) and
+# UPGRADE_BUTTON is not already used by SUMMARY_TAKE_DEFAULTS.
+UPGRADE_BUTTON=&อัปเกรด
diff --git a/l10n-th/browser/installer/mui.properties b/l10n-th/browser/installer/mui.properties
new file mode 100644
index 0000000000..ec8d16ff69
--- /dev/null
+++ b/l10n-th/browser/installer/mui.properties
@@ -0,0 +1,61 @@
+# 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/.
+
+# To make the l10n tinderboxen see changes to this file you can change a value
+# name by adding - to the end of the name followed by chars (e.g. Branding-2).
+
+# LOCALIZATION NOTE:
+
+# This file must be saved as UTF8
+
+# Accesskeys are defined by prefixing the letter that is to be used for the
+# accesskey with an ampersand (e.g. &).
+
+# Do not replace $BrandShortName, $BrandFullName, or $BrandFullNameDA with a
+# custom string and always use the same one as used by the en-US files.
+# $BrandFullNameDA allows the string to contain an ampersand (e.g. DA stands
+# for double ampersand) and prevents the letter following the ampersand from
+# being used as an accesskey.
+
+# You can use \n to create a newline in the string but only when the string
+# from en-US contains a \n.
+
+MUI_TEXT_WELCOME_INFO_TITLE=ยินดีต้อนรับสู่ตัวช่วยสร้างการติดตั้ง $BrandFullNameDA
+MUI_TEXT_WELCOME_INFO_TEXT=ตัวช่วยนี้จะแนะนำการติดตั้ง $BrandFullNameDA ให้กับคุณ\n\nแนะนำให้คุณปิดแอปพลิเคชันอื่น ๆ ทั้งหมดก่อนเริ่มการติดตั้ง สิ่งนี้ทำให้การอัปเดตไฟล์ระบบที่เกี่ยวข้องเป็นไปได้โดยไม่ต้องเริ่มระบบคอมพิวเตอร์ของคุณใหม่\n\n$_CLICK
+MUI_TEXT_COMPONENTS_TITLE=เลือกส่วนประกอบ
+MUI_TEXT_COMPONENTS_SUBTITLE=เลือกคุณลักษณะของ $BrandFullNameDA ที่คุณต้องการติดตั้ง
+MUI_INNERTEXT_COMPONENTS_DESCRIPTION_TITLE=คำอธิบาย
+MUI_INNERTEXT_COMPONENTS_DESCRIPTION_INFO=เลื่อนเมาส์ของคุณไปเหนือส่วนประกอบเพื่อดูรายละเอียด
+MUI_TEXT_DIRECTORY_TITLE=เลือกจุดติดตั้ง
+MUI_TEXT_DIRECTORY_SUBTITLE=เลือกโฟลเดอร์ที่จะติดตั้ง $BrandFullNameDA
+MUI_TEXT_INSTALLING_TITLE=กำลังติดตั้ง
+MUI_TEXT_INSTALLING_SUBTITLE=โปรดรอขณะที่ $BrandFullNameDA กำลังถูกติดตั้ง
+MUI_TEXT_FINISH_TITLE=การติดตั้งเสร็จสมบูรณ์
+MUI_TEXT_FINISH_SUBTITLE=การติดตั้งเสร็จสมบูรณ์
+MUI_TEXT_ABORT_TITLE=การติดตั้งถูกยกเลิก
+MUI_TEXT_ABORT_SUBTITLE=การติดตั้งไม่เสร็จสมบูรณ์
+MUI_BUTTONTEXT_FINISH=เ&สร็จสิ้น
+MUI_TEXT_FINISH_INFO_TITLE=กำลังทำให้การติดตั้ง $BrandFullNameDA สมบูรณ์
+MUI_TEXT_FINISH_INFO_TEXT=ติดตั้ง $BrandFullNameDA ในคอมพิวเตอร์ของคุณแล้ว\n\nคลิก เสร็จสิ้น เพื่อปิดตัวช่วยนี้
+MUI_TEXT_FINISH_INFO_REBOOT=คอมพิวเตอร์ของคุณต้องเริ่มการทำงานใหม่เพื่อให้การติดตั้งของ $BrandFullNameDA เสร็จสมบูรณ์ คุณต้องการเริ่มระบบใหม่ตอนนี้หรือไม่?
+MUI_TEXT_FINISH_REBOOTNOW=เริ่มระบบใหม่ตอนนี้
+MUI_TEXT_FINISH_REBOOTLATER=ฉันต้องการเริ่มคอมพิวเตอร์ใหม่เองทีหลัง
+MUI_TEXT_STARTMENU_TITLE=เลือกโฟลเดอร์ในเมนูเริ่ม
+MUI_TEXT_STARTMENU_SUBTITLE=เลือกโฟลเดอร์ในเมนูเริ่มเพื่อสร้างทางลัดของ $BrandFullNameDA
+MUI_INNERTEXT_STARTMENU_TOP=เลือกโฟลเดอร์เมนูเริ่มที่คุณต้องการสร้างทางลัดของโปรแกรม คุณยังสามารถป้อนชื่อเพื่อสร้างโฟลเดอร์ใหม่
+MUI_TEXT_ABORTWARNING=คุณแน่ใจหรือไม่ว่าต้องการออกจากการติดตั้ง $BrandFullName?
+MUI_UNTEXT_WELCOME_INFO_TITLE=ยินดีต้อนรับสู่ตัวช่วยถอนการติดตั้ง $BrandFullNameDA
+MUI_UNTEXT_WELCOME_INFO_TEXT=ตัวช่วยนี้จะนำคุณไปสู่การถอนการติดตั้ง $BrandFullNameDA\n\nก่อนเริ่มการถอนการติดตั้ง ตรวจสอบให้แน่ใจว่า $BrandFullNameDA ไม่ได้กำลังทำงานอยู่\n\n$_CLICK
+MUI_UNTEXT_CONFIRM_TITLE=ถอนการติดตั้ง $BrandFullNameDA
+MUI_UNTEXT_CONFIRM_SUBTITLE=เอา $BrandFullNameDA ออกจากคอมพิวเตอร์ของคุณ
+MUI_UNTEXT_UNINSTALLING_TITLE=กำลังถอนการติดตั้ง
+MUI_UNTEXT_UNINSTALLING_SUBTITLE=โปรดรอขณะที่ $BrandFullNameDA กำลังถูกถอนการติดตั้ง
+MUI_UNTEXT_FINISH_TITLE=การถอนการติดตั้งเสร็จสมบูรณ์
+MUI_UNTEXT_FINISH_SUBTITLE=การถอนการติดตั้งเสร็จสมบูรณ์แล้ว
+MUI_UNTEXT_ABORT_TITLE=การถอนการติดตั้งถูกยกเลิก
+MUI_UNTEXT_ABORT_SUBTITLE=การถอนการติดตั้งไม่เสร็จสมบูรณ์
+MUI_UNTEXT_FINISH_INFO_TITLE=กำลังเสร็จสิ้นตัวช่วยถอนการติดตั้ง $BrandFullNameDA
+MUI_UNTEXT_FINISH_INFO_TEXT=ถอนการติดตั้ง $BrandFullNameDA จากคอมพิวเตอร์ของคุณแล้ว\n\nคลิก เสร็จสิ้น เพื่อปิดตัวช่วยนี้
+MUI_UNTEXT_FINISH_INFO_REBOOT=คอมพิวเตอร์ของคุณต้องเริ่มการทำงานใหม่เพื่อให้การถอนการติดตั้งของ $BrandFullNameDA เสร็จสมบูรณ์ คุณต้องการเริ่มระบบใหม่ตอนนี้หรือไม่?
+MUI_UNTEXT_ABORTWARNING=คุณแน่ใจหรือไม่ว่าต้องการออกจากการถอนการติดตั้ง $BrandFullName?
diff --git a/l10n-th/browser/installer/nsisstrings.properties b/l10n-th/browser/installer/nsisstrings.properties
new file mode 100644
index 0000000000..f6381d7553
--- /dev/null
+++ b/l10n-th/browser/installer/nsisstrings.properties
@@ -0,0 +1,46 @@
+# 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:
+
+# This file must be saved as UTF8
+
+# Do not replace $BrandShortName, $BrandProductName, $BrandFullName,
+# or $BrandFullNameDA with a custom string and always use the same one as used
+# by the en-US files.
+# $BrandFullNameDA allows the string to contain an ampersand (e.g. DA stands
+# for double ampersand) and prevents the letter following the ampersand from
+# being used as an accesskey.
+
+# You can use \n to create a newline in the string but only when the string
+# from en-US contains a \n.
+
+INSTALLER_WIN_CAPTION=ตัวติดตั้ง $BrandShortName
+
+STUB_CLEANUP_PAVEOVER_HEADER2=มีการติดตั้ง $BrandShortName อยู่แล้ว มาอัปเดตกันเลย
+STUB_CLEANUP_REINSTALL_HEADER2=$BrandShortName ถูกติดตั้งอยู่ก่อนหน้า มารับสำเนาใหม่ให้คุณกันเลย
+STUB_CLEANUP_PAVEOVER_BUTTON2=ปรับปรุง
+STUB_CLEANUP_REINSTALL_BUTTON2=ติดตั้งใหม่
+STUB_CLEANUP_CHECKBOX_LABEL2=เรียกคืนการตั้งค่าเริ่มต้นและเอาส่วนเสริมเก่าออกเพื่อประสิทธิภาพที่ดีที่สุด
+
+STUB_INSTALLING_LABEL2=ขณะนี้กำลังติดตั้ง…
+STUB_INSTALLING_HEADLINE2=กำลังปรับการตั้งค่าของคุณเพื่อความเร็ว ความเป็นส่วนตัว และความปลอดภัย
+STUB_INSTALLING_BODY2=$BrandShortName จะพร้อมใช้ในอีกไม่นาน
+STUB_BLURB_FIRST1=$BrandShortName ที่เร็วที่สุดและตอบสนองได้ดีที่สุดเท่าที่เคยมีมา
+STUB_BLURB_SECOND1=การโหลดหน้าและการสลับแท็บที่เร็วขึ้น
+STUB_BLURB_THIRD1=การเรียกดูแบบส่วนตัวที่ทรงพลัง
+STUB_BLURB_FOOTER2=สร้างขึ้นสำหรับผู้คน ไม่ใช่ผลกำไร
+
+WARN_MIN_SUPPORTED_OSVER_MSG=ขออภัย ไม่สามารถติดตั้ง $BrandShortName ได้ $BrandShortName รุ่นนี้ต้องการ ${MinSupportedVer} หรือใหม่กว่า โปรดคลิกปุ่ม ตกลง สำหรับข้อมูลเพิ่มเติม
+WARN_MIN_SUPPORTED_CPU_MSG=ขออภัย ไม่สามารถติดตั้ง $BrandShortName ได้ $BrandShortName รุ่นนี้ต้องการหน่วยประมวลผลที่รองรับ ${MinSupportedCPU} โปรดคลิกปุ่ม ตกลง สำหรับข้อมูลเพิ่มเติม
+WARN_MIN_SUPPORTED_OSVER_CPU_MSG=ขออภัย ไม่สามารถติดตั้ง $BrandShortName ได้ $BrandShortName รุ่นนี้ต้องการ ${MinSupportedVer} หรือใหม่กว่าและหน่วยประมวลผลที่รองรับ ${MinSupportedCPU} โปรดคลิกปุ่ม ตกลง สำหรับข้อมูลเพิ่มเติม
+WARN_WRITE_ACCESS_QUIT=คุณไม่มีสิทธิเขียนไดเรกทอรีการติดตั้ง
+WARN_DISK_SPACE_QUIT=คุณไม่มีพื้นที่ดิสก์เพียงพอที่จะติดตั้ง
+
+ERROR_DOWNLOAD_CONT=อืมม ด้วยเหตุผลบางอย่าง เราไม่สามารถติดตั้ง $BrandShortName ได้\nเลือก ตกลง เพื่อเริ่มต้นใหม่
+
+STUB_CANCEL_PROMPT_HEADING=คุณต้องการติดตั้ง $BrandShortName หรือไม่?
+STUB_CANCEL_PROMPT_MESSAGE=หากคุณยกเลิก $BrandShortName จะไม่ถูกติดตั้ง
+STUB_CANCEL_PROMPT_BUTTON_CONTINUE=ติดตั้ง $BrandShortName
+STUB_CANCEL_PROMPT_BUTTON_EXIT=ยกเลิก
diff --git a/l10n-th/browser/installer/override.properties b/l10n-th/browser/installer/override.properties
new file mode 100644
index 0000000000..64701efe08
--- /dev/null
+++ b/l10n-th/browser/installer/override.properties
@@ -0,0 +1,86 @@
+# 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:
+
+# This file must be saved as UTF8
+
+# Accesskeys are defined by prefixing the letter that is to be used for the
+# accesskey with an ampersand (e.g. &).
+
+# Do not replace $BrandShortName, $BrandFullName, or $BrandFullNameDA with a
+# custom string and always use the same one as used by the en-US files.
+# $BrandFullNameDA allows the string to contain an ampersand (e.g. DA stands
+# for double ampersand) and prevents the letter following the ampersand from
+# being used as an accesskey.
+
+# You can use \n to create a newline in the string but only when the string
+# from en-US contains a \n.
+
+# Strings that require a space at the end should be enclosed with double
+# quotes and the double quotes will be removed. To add quotes to the beginning
+# and end of a strong enclose the add and additional double quote to the
+# beginning and end of the string (e.g. ""This will include quotes"").
+
+SetupCaption=การติดตั้ง $BrandFullName
+UninstallCaption=การถอนการติดตั้ง $BrandFullName
+BackBtn=< &ย้อนกลับ
+NextBtn=&ถัดไป >
+AcceptBtn=ฉัน&ยอมรับเงื่อนไขในข้อตกลงสัญญาอนุญาต
+DontAcceptBtn=ฉัน&ไม่ยอมรับเงื่อนไขในข้อตกลงสัญญาอนุญาต
+InstallBtn=&ติดตั้ง
+UninstallBtn=&ถอนการติดตั้ง
+CancelBtn=ยกเลิก
+CloseBtn=&ปิด
+BrowseBtn=&เรียกดู…
+ShowDetailsBtn=แสดง&รายละเอียด
+ClickNext=คลิก ถัดไป เพื่อดำเนินการต่อ
+ClickInstall=คลิก ติดตั้ง เพื่อเริ่มการติดตั้ง
+ClickUninstall=คลิก ถอนการติดตั้ง เพื่อเริ่มการถอนการติดตั้ง
+Completed=เสร็จสมบูรณ์
+LicenseTextRB=โปรดตรวจทานข้อตกลงสิทธิการใช้งานก่อนทำการติดตั้ง $BrandFullNameDA ถ้าคุณยอมรับข้อกำหนดทั้งหมดในข้อตกลง เลือกตัวเลือกแรกข้างล่าง $_CLICK
+ComponentsText=ตรวจสอบส่วนประกอบที่คุณต้องการติดตั้งและเลือกส่วนประกอบที่คุณไม่ต้องการออก $_CLICK
+ComponentsSubText2_NoInstTypes=เลือกส่วนประกอบเพื่อติดตั้ง:
+DirText=การติดตั้งจะติดตั้ง $BrandFullNameDA ไว้ในโฟลเดอร์ดังต่อไปนี้ เพื่อติดตั้งในโฟลเดอร์อื่น คลิก เรียกดู และเลือกโฟลเดอร์อื่น $_CLICK
+DirSubText=โฟลเดอร์ปลายทาง
+DirBrowseText=เลือกโฟลเดอร์เพื่อทำการติดตั้ง $BrandFullNameDA:
+SpaceAvailable="พื้นที่ว่าง: "
+SpaceRequired="พื้นที่ที่ต้องการ: "
+UninstallingText=$BrandFullNameDA จะถูกถอนการติดตั้งจากโฟลเดอร์ดังต่อไปนี้ $_CLICK
+UninstallingSubText=ถอนการติดตั้งจาก:
+FileError=ข้อผิดพลาดในการเปิดไฟล์เพื่อเขียน: \r\n\r\n$0\r\n\r\nคลิก ยกเลิก เพื่อหยุดการติดตั้ง\r\nลองใหม่ เพื่อลองอีกครั้ง หรือ\r\nเพิกเฉย เพื่อข้ามไฟล์นี้
+FileError_NoIgnore=ข้อผิดพลาดในการเปิดไฟล์เพื่อเขียน: \r\n\r\n$0\r\n\r\nคลิก ลองใหม่ เพื่อลองอีกครั้ง หรือ\r\nยกเลิก เพื่อหยุดการติดตั้ง
+CantWrite="ไม่สามารถเขียน: "
+CopyFailed=การคัดลอกล้มเหลว
+CopyTo="คัดลอกไปยัง "
+Registering="กำลังลงทะเบียน: "
+Unregistering="กำลังยกเลิกการลงทะเบียน: "
+SymbolNotFound="ไม่พบสัญลักษณ์: "
+CouldNotLoad="ไม่สามารถโหลด: "
+CreateFolder="สร้างโฟลเดอร์: "
+CreateShortcut="สร้างทางลัด: "
+CreatedUninstaller="ตัวถอนการติดตั้งที่สร้าง: "
+Delete="ลบไฟล์: "
+DeleteOnReboot="ลบขณะเริ่มคอมพิวเตอร์ใหม่: "
+ErrorCreatingShortcut="ผิดพลาดขณะสร้างทางลัด: "
+ErrorCreating="ผิดพลาดขณะสร้าง: "
+ErrorDecompressing=เกิดข้อผิดพลาดในการขยายข้อมูล! ตัวติดตั้งเสียหาย?
+ErrorRegistering=เกิดข้อผิดพลาดในการลงทะเบียน DLL
+ExecShell="ExecShell: "
+Exec="Execute: "
+Extract="ขยาย: "
+ErrorWriting="ขยาย: ข้อผิดพลาดขณะเขียนไปยังไฟล์ "
+InvalidOpcode=ตัวติดตั้งไม่สมบูรณ์: opcode ไม่ถูกต้อง
+NoOLE="ไม่มี OLE สำหรับ: "
+OutputFolder="โฟลเดอร์ผลลัพธ์: "
+RemoveFolder="เอาโฟลเดอร์ออก: "
+RenameOnReboot="เปลี่ยนชื่อขณะเริ่มคอมพิวเตอร์ใหม่: "
+Rename="เปลี่ยนชื่อ: "
+Skipped="ข้าม: "
+CopyDetails=คัดลอกรายละเอียดไปยังคลิปบอร์ด
+LogInstall=บันทึกปูมการติดตั้ง
+Byte=B
+Kilo=K
+Mega=M
+Giga=G
diff --git a/l10n-th/browser/langpack-metadata.ftl b/l10n-th/browser/langpack-metadata.ftl
new file mode 100644
index 0000000000..5a0c3a7408
--- /dev/null
+++ b/l10n-th/browser/langpack-metadata.ftl
@@ -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/.
+
+
+## Strings used to define the metadata of langpacks published on addons.mozilla.org.
+## Only text elements and literals are supported for these strings.
+
+langpack-creator = mozilla.org
+
+# To credit multiple contributors, use a comma-delimited list.
+# Example: Joe Solon, Suzy Solon
+langpack-contributors = Nattapong Ekudomsuk, Patipat Susumpow, Pittaya Sroilong, Teerapat Taechaiya, Vee Satayamas, Wichai Termwuttipreecha
diff --git a/l10n-th/browser/pdfviewer/chrome.properties b/l10n-th/browser/pdfviewer/chrome.properties
new file mode 100644
index 0000000000..087646dbe0
--- /dev/null
+++ b/l10n-th/browser/pdfviewer/chrome.properties
@@ -0,0 +1,20 @@
+# Copyright 2012 Mozilla Foundation
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+# Chrome notification bar messages and buttons
+unsupported_feature=เอกสาร PDF นี้อาจแสดงผลไม่ถูกต้อง
+unsupported_feature_forms=เอกสาร PDF นี้มีแบบฟอร์ม การกรอกฟอร์มยังไม่รองรับ
+unsupported_feature_signatures=เอกสาร PDF นี้มีลายเซ็นดิจิทัล ไม่รองรับการตรวจสอบลายเซ็น
+open_with_different_viewer=เปิดด้วยตัวดูอื่น
+open_with_different_viewer.accessKey=ป
diff --git a/l10n-th/browser/pdfviewer/viewer.properties b/l10n-th/browser/pdfviewer/viewer.properties
new file mode 100644
index 0000000000..f87651dba7
--- /dev/null
+++ b/l10n-th/browser/pdfviewer/viewer.properties
@@ -0,0 +1,302 @@
+# Copyright 2012 Mozilla Foundation
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+# Main toolbar buttons (tooltips and alt text for images)
+previous.title=หน้าก่อนหน้า
+previous_label=ก่อนหน้า
+next.title=หน้าถัดไป
+next_label=ถัดไป
+
+# LOCALIZATION NOTE (page.title): The tooltip for the pageNumber input.
+page.title=หน้า
+# LOCALIZATION NOTE (of_pages): "{{pagesCount}}" will be replaced by a number
+# representing the total number of pages in the document.
+of_pages=จาก {{pagesCount}}
+# LOCALIZATION NOTE (page_of_pages): "{{pageNumber}}" and "{{pagesCount}}"
+# will be replaced by a number representing the currently visible page,
+# respectively a number representing the total number of pages in the document.
+page_of_pages=({{pageNumber}} จาก {{pagesCount}})
+
+zoom_out.title=ซูมออก
+zoom_out_label=ซูมออก
+zoom_in.title=ซูมเข้า
+zoom_in_label=ซูมเข้า
+zoom.title=ซูม
+presentation_mode.title=สลับเป็นโหมดการนำเสนอ
+presentation_mode_label=โหมดการนำเสนอ
+open_file.title=เปิดไฟล์
+open_file_label=เปิด
+print.title=พิมพ์
+print_label=พิมพ์
+save.title=บันทึก
+save_label=บันทึก
+# LOCALIZATION NOTE (download_button.title): used in Firefox for Android as a tooltip for the download button (“download” is a verb).
+download_button.title=ดาวน์โหลด
+# LOCALIZATION NOTE (download_button_label): used in Firefox for Android as a label for the download button (“download” is a verb).
+# Length of the translation matters since we are in a mobile context, with limited screen estate.
+download_button_label=ดาวน์โหลด
+bookmark1.title=หน้าปัจจุบัน (ดู URL จากหน้าปัจจุบัน)
+bookmark1_label=หน้าปัจจุบัน
+# LOCALIZATION NOTE (open_in_app.title): This string is used in Firefox for Android.
+open_in_app.title=เปิดในแอป
+# LOCALIZATION NOTE (open_in_app_label): This string is used in Firefox for Android. Length of the translation matters since we are in a mobile context, with limited screen estate.
+open_in_app_label=เปิดในแอป
+
+# Secondary toolbar and context menu
+tools.title=เครื่องมือ
+tools_label=เครื่องมือ
+first_page.title=ไปยังหน้าแรก
+first_page_label=ไปยังหน้าแรก
+last_page.title=ไปยังหน้าสุดท้าย
+last_page_label=ไปยังหน้าสุดท้าย
+page_rotate_cw.title=หมุนตามเข็มนาฬิกา
+page_rotate_cw_label=หมุนตามเข็มนาฬิกา
+page_rotate_ccw.title=หมุนทวนเข็มนาฬิกา
+page_rotate_ccw_label=หมุนทวนเข็มนาฬิกา
+
+cursor_text_select_tool.title=เปิดใช้งานเครื่องมือการเลือกข้อความ
+cursor_text_select_tool_label=เครื่องมือการเลือกข้อความ
+cursor_hand_tool.title=เปิดใช้งานเครื่องมือมือ
+cursor_hand_tool_label=เครื่องมือมือ
+
+scroll_page.title=ใช้การเลื่อนหน้า
+scroll_page_label=การเลื่อนหน้า
+scroll_vertical.title=ใช้การเลื่อนแนวตั้ง
+scroll_vertical_label=การเลื่อนแนวตั้ง
+scroll_horizontal.title=ใช้การเลื่อนแนวนอน
+scroll_horizontal_label=การเลื่อนแนวนอน
+scroll_wrapped.title=ใช้การเลื่อนแบบคลุม
+scroll_wrapped_label=เลื่อนแบบคลุม
+
+spread_none.title=ไม่ต้องรวมการกระจายหน้า
+spread_none_label=ไม่กระจาย
+spread_odd.title=รวมการกระจายหน้าเริ่มจากหน้าคี่
+spread_odd_label=กระจายอย่างเหลือเศษ
+spread_even.title=รวมการกระจายหน้าเริ่มจากหน้าคู่
+spread_even_label=กระจายอย่างเท่าเทียม
+
+# Document properties dialog box
+document_properties.title=คุณสมบัติเอกสาร…
+document_properties_label=คุณสมบัติเอกสาร…
+document_properties_file_name=ชื่อไฟล์:
+document_properties_file_size=ขนาดไฟล์:
+# LOCALIZATION NOTE (document_properties_kb): "{{size_kb}}" and "{{size_b}}"
+# will be replaced by the PDF file size in kilobytes, respectively in bytes.
+document_properties_kb={{size_kb}} KB ({{size_b}} ไบต์)
+# LOCALIZATION NOTE (document_properties_mb): "{{size_mb}}" and "{{size_b}}"
+# will be replaced by the PDF file size in megabytes, respectively in bytes.
+document_properties_mb={{size_mb}} MB ({{size_b}} ไบต์)
+document_properties_title=ชื่อเรื่อง:
+document_properties_author=ผู้สร้าง:
+document_properties_subject=ชื่อเรื่อง:
+document_properties_keywords=คำสำคัญ:
+document_properties_creation_date=วันที่สร้าง:
+document_properties_modification_date=วันที่แก้ไข:
+# LOCALIZATION NOTE (document_properties_date_string): "{{date}}" and "{{time}}"
+# will be replaced by the creation/modification date, and time, of the PDF file.
+document_properties_date_string={{date}}, {{time}}
+document_properties_creator=ผู้สร้าง:
+document_properties_producer=ผู้ผลิต PDF:
+document_properties_version=รุ่น PDF:
+document_properties_page_count=จำนวนหน้า:
+document_properties_page_size=ขนาดหน้า:
+document_properties_page_size_unit_inches=in
+document_properties_page_size_unit_millimeters=mm
+document_properties_page_size_orientation_portrait=แนวตั้ง
+document_properties_page_size_orientation_landscape=แนวนอน
+document_properties_page_size_name_a3=A3
+document_properties_page_size_name_a4=A4
+document_properties_page_size_name_letter=จดหมาย
+document_properties_page_size_name_legal=ข้อกฎหมาย
+# LOCALIZATION NOTE (document_properties_page_size_dimension_string):
+# "{{width}}", "{{height}}", {{unit}}, and {{orientation}} will be replaced by
+# the size, respectively their unit of measurement and orientation, of the (current) page.
+document_properties_page_size_dimension_string={{width}} × {{height}} {{unit}} ({{orientation}})
+# LOCALIZATION NOTE (document_properties_page_size_dimension_name_string):
+# "{{width}}", "{{height}}", {{unit}}, {{name}}, and {{orientation}} will be replaced by
+# the size, respectively their unit of measurement, name, and orientation, of the (current) page.
+document_properties_page_size_dimension_name_string={{width}} × {{height}} {{unit}} ({{name}}, {{orientation}})
+# LOCALIZATION NOTE (document_properties_linearized): The linearization status of
+# the document; usually called "Fast Web View" in English locales of Adobe software.
+document_properties_linearized=มุมมองเว็บแบบรวดเร็ว:
+document_properties_linearized_yes=ใช่
+document_properties_linearized_no=ไม่
+document_properties_close=ปิด
+
+print_progress_message=กำลังเตรียมเอกสารสำหรับการพิมพ์…
+# LOCALIZATION NOTE (print_progress_percent): "{{progress}}" will be replaced by
+# a numerical per cent value.
+print_progress_percent={{progress}}%
+print_progress_close=ยกเลิก
+
+# Tooltips and alt text for side panel toolbar buttons
+# (the _label strings are alt text for the buttons, the .title strings are
+# tooltips)
+toggle_sidebar.title=เปิด/ปิดแถบข้าง
+toggle_sidebar_notification2.title=เปิด/ปิดแถบข้าง (เอกสารมีเค้าร่าง/ไฟล์แนบ/เลเยอร์)
+toggle_sidebar_label=เปิด/ปิดแถบข้าง
+document_outline.title=แสดงเค้าร่างเอกสาร (คลิกสองครั้งเพื่อขยาย/ยุบรายการทั้งหมด)
+document_outline_label=เค้าร่างเอกสาร
+attachments.title=แสดงไฟล์แนบ
+attachments_label=ไฟล์แนบ
+layers.title=แสดงเลเยอร์ (คลิกสองครั้งเพื่อรีเซ็ตเลเยอร์ทั้งหมดเป็นสถานะเริ่มต้น)
+layers_label=เลเยอร์
+thumbs.title=แสดงภาพขนาดย่อ
+thumbs_label=ภาพขนาดย่อ
+current_outline_item.title=ค้นหารายการเค้าร่างปัจจุบัน
+current_outline_item_label=รายการเค้าร่างปัจจุบัน
+findbar.title=ค้นหาในเอกสาร
+findbar_label=ค้นหา
+
+additional_layers=เลเยอร์เพิ่มเติม
+# LOCALIZATION NOTE (page_landmark): "{{page}}" will be replaced by the page number.
+page_landmark=หน้า {{page}}
+# Thumbnails panel item (tooltip and alt text for images)
+# LOCALIZATION NOTE (thumb_page_title): "{{page}}" will be replaced by the page
+# number.
+thumb_page_title=หน้า {{page}}
+# LOCALIZATION NOTE (thumb_page_canvas): "{{page}}" will be replaced by the page
+# number.
+thumb_page_canvas=ภาพขนาดย่อของหน้า {{page}}
+
+# Find panel button title and messages
+find_input.title=ค้นหา
+find_input.placeholder=ค้นหาในเอกสาร…
+find_previous.title=หาตำแหน่งก่อนหน้าของวลี
+find_previous_label=ก่อนหน้า
+find_next.title=หาตำแหน่งถัดไปของวลี
+find_next_label=ถัดไป
+find_highlight=เน้นสีทั้งหมด
+find_match_case_label=ตัวพิมพ์ใหญ่เล็กตรงกัน
+find_match_diacritics_label=เครื่องหมายกำกับการออกเสียงตรงกัน
+find_entire_word_label=ทั้งคำ
+find_reached_top=ค้นหาถึงจุดเริ่มต้นของหน้า เริ่มค้นต่อจากด้านล่าง
+find_reached_bottom=ค้นหาถึงจุดสิ้นสุดหน้า เริ่มค้นต่อจากด้านบน
+# LOCALIZATION NOTE (find_match_count): The supported plural forms are
+# [one|two|few|many|other], with [other] as the default value.
+# "{{current}}" and "{{total}}" will be replaced by a number representing the
+# index of the currently active find result, respectively a number representing
+# the total number of matches in the document.
+find_match_count={[ plural(total) ]}
+find_match_count[one]={{current}} จาก {{total}} ที่ตรงกัน
+find_match_count[two]={{current}} จาก {{total}} ที่ตรงกัน
+find_match_count[few]={{current}} จาก {{total}} ที่ตรงกัน
+find_match_count[many]={{current}} จาก {{total}} ที่ตรงกัน
+find_match_count[other]={{current}} จาก {{total}} ที่ตรงกัน
+# LOCALIZATION NOTE (find_match_count_limit): The supported plural forms are
+# [zero|one|two|few|many|other], with [other] as the default value.
+# "{{limit}}" will be replaced by a numerical value.
+find_match_count_limit={[ plural(limit) ]}
+find_match_count_limit[zero]=มากกว่า {{limit}} ที่ตรงกัน
+find_match_count_limit[one]=มากกว่า {{limit}} ที่ตรงกัน
+find_match_count_limit[two]=มากกว่า {{limit}} ที่ตรงกัน
+find_match_count_limit[few]=มากกว่า {{limit}} ที่ตรงกัน
+find_match_count_limit[many]=มากกว่า {{limit}} ที่ตรงกัน
+find_match_count_limit[other]=มากกว่า {{limit}} ที่ตรงกัน
+find_not_found=ไม่พบวลี
+
+# Predefined zoom values
+page_scale_width=ความกว้างหน้า
+page_scale_fit=พอดีหน้า
+page_scale_auto=ซูมอัตโนมัติ
+page_scale_actual=ขนาดจริง
+# LOCALIZATION NOTE (page_scale_percent): "{{scale}}" will be replaced by a
+# numerical scale value.
+page_scale_percent={{scale}}%
+
+# Loading indicator messages
+loading_error=เกิดข้อผิดพลาดขณะโหลด PDF
+invalid_file_error=ไฟล์ PDF ไม่ถูกต้องหรือเสียหาย
+missing_file_error=ไฟล์ PDF หายไป
+unexpected_response_error=การตอบสนองของเซิร์ฟเวอร์ที่ไม่คาดคิด
+rendering_error=เกิดข้อผิดพลาดขณะเรนเดอร์หน้า
+
+# LOCALIZATION NOTE (annotation_date_string): "{{date}}" and "{{time}}" will be
+# replaced by the modification date, and time, of the annotation.
+annotation_date_string={{date}}, {{time}}
+
+# LOCALIZATION NOTE (text_annotation_type.alt): This is used as a tooltip.
+# "{{type}}" will be replaced with an annotation type from a list defined in
+# the PDF spec (32000-1:2008 Table 169 – Annotation types).
+# Some common types are e.g.: "Check", "Text", "Comment", "Note"
+text_annotation_type.alt=[คำอธิบายประกอบ {{type}}]
+password_label=ป้อนรหัสผ่านเพื่อเปิดไฟล์ PDF นี้
+password_invalid=รหัสผ่านไม่ถูกต้อง โปรดลองอีกครั้ง
+password_ok=ตกลง
+password_cancel=ยกเลิก
+
+printing_not_supported=คำเตือน: เบราว์เซอร์นี้ไม่ได้สนับสนุนการพิมพ์อย่างเต็มที่
+printing_not_ready=คำเตือน: PDF ไม่ได้รับการโหลดอย่างเต็มที่สำหรับการพิมพ์
+web_fonts_disabled=แบบอักษรเว็บถูกปิดใช้งาน: ไม่สามารถใช้แบบอักษร PDF ฝังตัว
+
+# Editor
+editor_free_text2.title=ข้อความ
+editor_free_text2_label=ข้อความ
+editor_ink2.title=รูปวาด
+editor_ink2_label=รูปวาด
+
+editor_stamp1.title=เพิ่มหรือแก้ไขภาพ
+editor_stamp1_label=เพิ่มหรือแก้ไขภาพ
+
+free_text2_default_content=เริ่มพิมพ์…
+
+# Editor Parameters
+editor_free_text_color=สี
+editor_free_text_size=ขนาด
+editor_ink_color=สี
+editor_ink_thickness=ความหนา
+editor_ink_opacity=ความทึบ
+
+editor_stamp_add_image_label=เพิ่มภาพ
+editor_stamp_add_image.title=เพิ่มภาพ
+
+# Editor aria
+editor_free_text2_aria_label=ตัวแก้ไขข้อความ
+editor_ink2_aria_label=ตัวแก้ไขรูปวาด
+editor_ink_canvas_aria_label=ภาพที่ผู้ใช้สร้างขึ้น
+
+# Alt-text dialog
+# LOCALIZATION NOTE (editor_alt_text_button_label): Alternative text (alt text) helps
+# when people can't see the image.
+editor_alt_text_button_label=ข้อความทดแทน
+editor_alt_text_edit_button_label=แก้ไขข้อความทดแทน
+editor_alt_text_dialog_label=เลือกตัวเลือก
+editor_alt_text_dialog_description=ข้อความทดแทนสามารถช่วยเหลือได้เมื่อผู้ใช้มองไม่เห็นภาพ หรือภาพไม่โหลด
+editor_alt_text_add_description_label=เพิ่มคำอธิบาย
+editor_alt_text_add_description_description=แนะนำให้ใช้ 1-2 ประโยคซึ่งอธิบายหัวเรื่อง ฉาก หรือการกระทำ
+editor_alt_text_mark_decorative_label=ทำเครื่องหมายเป็นสิ่งตกแต่ง
+editor_alt_text_mark_decorative_description=สิ่งนี้ใช้สำหรับภาพที่เป็นสิ่งประดับ เช่น ขอบ หรือลายน้ำ
+editor_alt_text_cancel_button=ยกเลิก
+editor_alt_text_save_button=บันทึก
+editor_alt_text_decorative_tooltip=ทำเครื่องหมายเป็นสิ่งตกแต่งแล้ว
+# This is a placeholder for the alt text input area
+editor_alt_text_textarea.placeholder=ตัวอย่างเช่น “ชายหนุ่มคนหนึ่งนั่งลงที่โต๊ะเพื่อรับประทานอาหารมื้อหนึ่ง”
+
+# Editor resizers
+# LOCALIZATION NOTE (editor_resizer_label_topLeft): This is used in an aria label to help to understand the role of the resizer.
+editor_resizer_label_topLeft=มุมซ้ายบน — ปรับขนาด
+# LOCALIZATION NOTE (editor_resizer_label_topMiddle): This is used in an aria label to help to understand the role of the resizer.
+editor_resizer_label_topMiddle=ตรงกลางด้านบน — ปรับขนาด
+# LOCALIZATION NOTE (editor_resizer_label_topRight): This is used in an aria label to help to understand the role of the resizer.
+editor_resizer_label_topRight=มุมขวาบน — ปรับขนาด
+# LOCALIZATION NOTE (editor_resizer_label_middleRight): This is used in an aria label to help to understand the role of the resizer.
+editor_resizer_label_middleRight=ตรงกลางด้านขวา — ปรับขนาด
+# LOCALIZATION NOTE (editor_resizer_label_bottomRight): This is used in an aria label to help to understand the role of the resizer.
+editor_resizer_label_bottomRight=มุมขวาล่าง — ปรับขนาด
+# LOCALIZATION NOTE (editor_resizer_label_bottomMiddle): This is used in an aria label to help to understand the role of the resizer.
+editor_resizer_label_bottomMiddle=ตรงกลางด้านล่าง — ปรับขนาด
+# LOCALIZATION NOTE (editor_resizer_label_bottomLeft): This is used in an aria label to help to understand the role of the resizer.
+editor_resizer_label_bottomLeft=มุมซ้ายล่าง — ปรับขนาด
+# LOCALIZATION NOTE (editor_resizer_label_middleLeft): This is used in an aria label to help to understand the role of the resizer.
+editor_resizer_label_middleLeft=ตรงกลางด้านซ้าย — ปรับขนาด
diff --git a/l10n-th/browser/updater/updater.ini b/l10n-th/browser/updater/updater.ini
new file mode 100644
index 0000000000..a65c26f599
--- /dev/null
+++ b/l10n-th/browser/updater/updater.ini
@@ -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/.
+
+# This file is in the UTF-8 encoding
+# All strings must be less than 600 chars.
+[Strings]
+TitleText=การอัปเดต %MOZ_APP_DISPLAYNAME%
+InfoText=%MOZ_APP_DISPLAYNAME% กำลังติดตั้งการอัปเดตของคุณและจะเริ่มในอีกสักครู่…
+MozillaMaintenanceDescription=บริการบำรุงรักษาของ Mozilla ทำให้แน่ใจว่าคุณมี Mozilla Firefox รุ่นล่าสุดและปลอดภัยที่สุดอยู่ในคอมพิวเตอร์ของคุณ การทำ Firefox ให้เป็นรุ่นล่าสุดอยู่เสมอเป็นสิ่งสำคัญอย่างมากสำหรับความปลอดภัยออนไลน์ของคุณ และ Mozilla แนะนำเป็นอย่างยิ่งให้คุณเปิดใช้งานบริการนี้ไว้
diff --git a/l10n-th/devtools/client/aboutdebugging.ftl b/l10n-th/devtools/client/aboutdebugging.ftl
new file mode 100644
index 0000000000..6cb8b42e02
--- /dev/null
+++ b/l10n-th/devtools/client/aboutdebugging.ftl
@@ -0,0 +1,334 @@
+# 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/.
+
+
+### These strings are used inside the about:debugging UI.
+
+
+# Page Title strings
+
+# Page title (ie tab title) for the Setup page
+about-debugging-page-title-setup-page = การดีบั๊ก - ตั้งค่า
+# Page title (ie tab title) for the Runtime page
+# Variables:
+# $selectedRuntimeId - ID of the current runtime, such as "this-firefox", "localhost:6080", etc.
+about-debugging-page-title-runtime-page = การดีบั๊ก - รันไทม์ / { $selectedRuntimeId }
+
+# Sidebar strings
+
+# Display name of the runtime for the currently running instance of Firefox. Used in the
+# Sidebar and in the Setup page.
+about-debugging-this-firefox-runtime-name = { -brand-shorter-name } นี้
+# Sidebar heading for selecting the currently running instance of Firefox
+# .name is processed by fluent-react / SidebarFixedItem
+about-debugging-sidebar-this-firefox =
+ .name = { about-debugging-this-firefox-runtime-name }
+# Sidebar heading for connecting to some remote source
+# .name is processed by fluent-react / SidebarFixedItem
+about-debugging-sidebar-setup =
+ .name = ตั้งค่า
+# Text displayed in the about:debugging sidebar when USB devices discovery is enabled.
+about-debugging-sidebar-usb-enabled = เปิดใช้งาน USB อยู่
+# Text displayed in the about:debugging sidebar when USB devices discovery is disabled
+# (for instance because the mandatory ADB extension is not installed).
+about-debugging-sidebar-usb-disabled = ปิดใช้งาน USB อยู่
+# Connection status (connected) for runtime items in the sidebar
+aboutdebugging-sidebar-runtime-connection-status-connected = เชื่อมต่อแล้ว
+# Connection status (disconnected) for runtime items in the sidebar
+aboutdebugging-sidebar-runtime-connection-status-disconnected = ตัดการเชื่อมต่อแล้ว
+# Text displayed in the about:debugging sidebar when no device was found.
+about-debugging-sidebar-no-devices = ไม่พบอุปกรณ์
+# Text displayed in buttons found in sidebar items representing remote runtimes.
+# Clicking on the button will attempt to connect to the runtime.
+about-debugging-sidebar-item-connect-button = เชื่อมต่อ
+# Text displayed in buttons found in sidebar items when the runtime is connecting.
+about-debugging-sidebar-item-connect-button-connecting = กำลังเชื่อมต่อ…
+# Text displayed in buttons found in sidebar items when the connection failed.
+about-debugging-sidebar-item-connect-button-connection-failed = การเชื่อมต่อล้มเหลว
+# Text displayed in connection warning on sidebar item of the runtime when connecting to
+# the runtime is taking too much time.
+about-debugging-sidebar-item-connect-button-connection-not-responding = การเชื่อมต่อยังรอค้างอยู่ ตรวจสอบข้อความบนเบราว์เซอร์เป้าหมาย
+# Text displayed as connection error in sidebar item when the connection has timed out.
+about-debugging-sidebar-item-connect-button-connection-timeout = การเชื่อมต่อหมดเวลา
+# Text displayed in sidebar items for remote devices where a compatible browser (eg
+# Firefox) has not been detected yet. Typically, Android phones connected via USB with
+# USB debugging enabled, but where Firefox is not started.
+about-debugging-sidebar-runtime-item-waiting-for-browser = กำลังรอเบราว์เซอร์…
+# Text displayed in sidebar items for remote devices that have been disconnected from the
+# computer.
+about-debugging-sidebar-runtime-item-unplugged = ถอดปลั๊กแล้ว
+# Title for runtime sidebar items that are related to a specific device (USB, WiFi).
+# Variables:
+# $displayName (string) - Displayed name
+# $deviceName (string) - Name of the device
+about-debugging-sidebar-runtime-item-name =
+ .title = { $displayName } ({ $deviceName })
+# Title for runtime sidebar items where we cannot get device information (network
+# locations).
+# Variables:
+# $displayName (string) - Displayed name
+about-debugging-sidebar-runtime-item-name-no-device =
+ .title = { $displayName }
+# Text to show in the footer of the sidebar that links to a help page
+# (currently: https://firefox-source-docs.mozilla.org/devtools-user/about_colon_debugging/)
+about-debugging-sidebar-support = ฝ่ายสนับสนุนการดีบั๊ก
+# Text to show as the ALT attribute of a help icon that accompanies the help about
+# debugging link in the footer of the sidebar
+about-debugging-sidebar-support-icon =
+ .alt = ไอคอนช่วยเหลือ
+# Text displayed in a sidebar button to refresh the list of USB devices. Clicking on it
+# will attempt to update the list of devices displayed in the sidebar.
+about-debugging-refresh-usb-devices-button = เรียกอุปกรณ์ใหม่
+
+# Setup Page strings
+
+# Title of the Setup page.
+about-debugging-setup-title = ตั้งค่า
+# Introduction text in the Setup page to explain how to configure remote debugging.
+about-debugging-setup-intro = กำหนดค่าวิธีการเชื่อมต่อที่คุณต้องการดีบั๊กอุปกรณ์ของคุณจากระยะไกล
+# Explanatory text in the Setup page about what the 'This Firefox' page is for
+about-debugging-setup-this-firefox2 = ใช้ <a>{ about-debugging-this-firefox-runtime-name }</a> เพื่อดีบั๊กส่วนขยายและ Service Worker บน { -brand-shorter-name } รุ่นนี้
+# Title of the heading Connect section of the Setup page.
+about-debugging-setup-connect-heading = เชื่อมต่ออุปกรณ์
+# USB section of the Setup page
+about-debugging-setup-usb-title = USB
+# Explanatory text displayed in the Setup page when USB debugging is disabled
+about-debugging-setup-usb-disabled = การเปิดใช้งานสิ่งนี้จะดาวน์โหลดและเพิ่มส่วนประกอบการดีบั๊กผ่าน USB ของ Android ที่จำเป็นใน { -brand-shorter-name }
+# Text of the button displayed in the USB section of the setup page when USB debugging is disabled.
+# Clicking on it will download components needed to debug USB Devices remotely.
+about-debugging-setup-usb-enable-button = เปิดใช้งานอุปกรณ์ USB
+# Text of the button displayed in the USB section of the setup page when USB debugging is enabled.
+about-debugging-setup-usb-disable-button = ปิดใช้งานอุปกรณ์ USB
+# Text of the button displayed in the USB section of the setup page while USB debugging
+# components are downloaded and installed.
+about-debugging-setup-usb-updating-button = กำลังอัปเดต…
+# USB section of the Setup page (USB status)
+about-debugging-setup-usb-status-enabled = เปิดใช้งานอยู่
+about-debugging-setup-usb-status-disabled = ปิดใช้งานอยู่
+about-debugging-setup-usb-status-updating = กำลังอัปเดต…
+# USB section step by step guide
+about-debugging-setup-usb-step-enable-dev-menu2 = เปิดใช้งานเมนูนักพัฒนาในอุปกรณ์ Android ของคุณ
+# USB section step by step guide
+about-debugging-setup-usb-step-enable-debug2 = เปิดใช้งานการดีบั๊ก USB ในเมนูนักพัฒนา Android
+# USB section step by step guide
+about-debugging-setup-usb-step-enable-debug-firefox2 = เปิดใช้งานการดีบั๊ก USB ใน Firefox ในอุปกรณ์ Android
+# USB section step by step guide
+about-debugging-setup-usb-step-plug-device = เชื่อมต่ออุปกรณ์ Android กับคอมพิวเตอร์ของคุณ
+# Text shown in the USB section of the setup page with a link to troubleshoot connection errors.
+# The link goes to https://firefox-source-docs.mozilla.org/devtools-user/about_colon_debugging/index.html#connecting-to-a-remote-device
+about-debugging-setup-usb-troubleshoot = มีปัญหาในการเชื่อมต่อกับอุปกรณ์ USB? <a>แก้ไขปัญหา</a>
+# Network section of the Setup page
+about-debugging-setup-network =
+ .title = ตำแหน่งที่ตั้งเครือข่าย
+# Text shown in the Network section of the setup page with a link to troubleshoot connection errors.
+# The link goes to https://firefox-source-docs.mozilla.org/devtools-user/about_colon_debugging/index.html#connecting-over-the-network
+about-debugging-setup-network-troubleshoot = มีปัญหาในการเชื่อมต่อผ่านตำแหน่งที่ตั้งเครือข่าย? <a>แก้ไขปัญหา</a>
+# Text of a button displayed after the network locations "Host" input.
+# Clicking on it will add the new network location to the list.
+about-debugging-network-locations-add-button = เพิ่ม
+# Text to display when there are no locations to show.
+about-debugging-network-locations-empty-text = ยังไม่ได้เพิ่มตำแหน่งที่ตั้งเครือข่าย
+# Text of the label for the text input that allows users to add new network locations in
+# the Connect page. A host is a hostname and a port separated by a colon, as suggested by
+# the input's placeholder "localhost:6080".
+about-debugging-network-locations-host-input-label = โฮสต์
+# Text of a button displayed next to existing network locations in the Connect page.
+# Clicking on it removes the network location from the list.
+about-debugging-network-locations-remove-button = เอาออก
+# Text used as error message if the format of the input value was invalid in the network locations form of the Setup page.
+# Variables:
+# $host-value (string) - The input value submitted by the user in the network locations form
+about-debugging-network-location-form-invalid = โฮสต์ “{ $host-value }” ไม่ถูกต้อง รูปแบบที่ต้องการคือ “hostname:portnumber”
+# Text used as error message if the input value was already registered in the network locations form of the Setup page.
+# Variables:
+# $host-value (string) - The input value submitted by the user in the network locations form
+about-debugging-network-location-form-duplicate = โฮสต์ “{ $host-value }” ถูกลงทะเบียนแล้ว
+
+# Runtime Page strings
+
+# Below are the titles for the various categories of debug targets that can be found
+# on "runtime" pages of about:debugging.
+# Title of the temporary extensions category (only available for "This Firefox" runtime).
+# .name is processed by fluent-react / DebugTargetPane
+about-debugging-runtime-temporary-extensions =
+ .name = ส่วนขยายชั่วคราว
+# Title of the extensions category.
+# .name is processed by fluent-react / DebugTargetPane
+about-debugging-runtime-extensions =
+ .name = ส่วนขยาย
+# Title of the tabs category.
+# .name is processed by fluent-react / DebugTargetPane
+about-debugging-runtime-tabs =
+ .name = แท็บ
+# Title of the service workers category.
+# .name is processed by fluent-react / DebugTargetPane
+about-debugging-runtime-service-workers =
+ .name = Service Worker
+# Title of the shared workers category.
+# .name is processed by fluent-react / DebugTargetPane
+about-debugging-runtime-shared-workers =
+ .name = ตัวทำงานที่ใช้ร่วมกัน
+# Title of the other workers category.
+# .name is processed by fluent-react / DebugTargetPane
+about-debugging-runtime-other-workers =
+ .name = ตัวทำงานอื่น ๆ
+# Title of the processes category.
+# .name is processed by fluent-react / DebugTargetPane
+about-debugging-runtime-processes =
+ .name = โปรเซส
+# Label of the button opening the performance profiler panel in runtime pages for remote
+# runtimes.
+about-debugging-runtime-profile-button2 = ประสิทธิภาพโปรไฟล์
+# This string is displayed in the runtime page if the current configuration of the
+# target runtime is incompatible with service workers. "Learn more" points to:
+# https://firefox-source-docs.mozilla.org/devtools-user/about_colon_debugging/index.html#service-workers-not-compatible
+about-debugging-runtime-service-workers-not-compatible = การกำหนดค่าเบราว์เซอร์ของคุณใช้ร่วมกับ Service Worker ไม่ได้ <a>เรียนรู้เพิ่มเติม</a>
+# This string is displayed in the runtime page if the remote browser version is too old.
+# "Troubleshooting" link points to https://firefox-source-docs.mozilla.org/devtools-user/about_colon_debugging/
+# { $runtimeVersion } is the version of the remote browser (for instance "67.0a1")
+# { $minVersion } is the minimum version that is compatible with the current Firefox instance (same format)
+about-debugging-browser-version-too-old = เบราว์เซอร์ที่เชื่อมต่อมีรุ่นเก่า ({ $runtimeVersion }) รุ่นที่รองรับขั้นต่ำคือ ({ $minVersion }) นี่เป็นการตั้งค่าที่ไม่รองรับและอาจทำให้ DevTools ล้มเหลว โปรดอัปเดตเบราว์เซอร์ที่เชื่อมต่อ <a>การแก้ไขปัญหา</a>
+# Dedicated message for a backward compatibility issue that occurs when connecting:
+# from Fx 70+ to the old Firefox for Android (aka Fennec) which uses Fx 68.
+about-debugging-browser-version-too-old-fennec = Firefox รุ่นนี้ไม่สามารถดีบั๊ก Firefox สำหรับ Android (68) ได้ เราแนะนำให้ติดตั้ง Firefox สำหรับ Android Nightly บนโทรศัพท์ของคุณเพื่อทำการทดสอบ <a>รายละเอียดเพิ่มเติม</a>
+# This string is displayed in the runtime page if the remote browser version is too recent.
+# "Troubleshooting" link points to https://firefox-source-docs.mozilla.org/devtools-user/about_colon_debugging/
+# { $runtimeID } is the build ID of the remote browser (for instance "20181231", format is yyyyMMdd)
+# { $localID } is the build ID of the current Firefox instance (same format)
+# { $runtimeVersion } is the version of the remote browser (for instance "67.0a1")
+# { $localVersion } is the version of your current browser (same format)
+about-debugging-browser-version-too-recent = เบราว์เซอร์ที่เชื่อมต่อเป็นรุ่น ({ $runtimeVersion }, buildID { $runtimeID }) ซึ่งใหม่กว่า { -brand-shorter-name } ({ $localVersion }, buildID { $localID }) ซึ่งไม่รองรับและอาจทำให้ DevTools ทำงานล้มเหลวได้ โปรดอัปเดต Firefox <a>การแก้ไขปัญหา</a>
+# Displayed for runtime info in runtime pages.
+# { $name } is brand name such as "Firefox Nightly"
+# { $version } is version such as "64.0a1"
+about-debugging-runtime-name = { $name } ({ $version })
+# Text of a button displayed in Runtime pages for remote runtimes.
+# Clicking on the button will close the connection to the runtime.
+about-debugging-runtime-disconnect-button = ตัดการเชื่อมต่อ
+# Text of the connection prompt button displayed in Runtime pages, when the preference
+# "devtools.debugger.prompt-connection" is false on the target runtime.
+about-debugging-connection-prompt-enable-button = เปิดใช้งานพรอมต์การเชื่อมต่อ
+# Text of the connection prompt button displayed in Runtime pages, when the preference
+# "devtools.debugger.prompt-connection" is true on the target runtime.
+about-debugging-connection-prompt-disable-button = ปิดใช้งานพรอมต์การเชื่อมต่อ
+# Title of a modal dialog displayed on remote runtime pages after clicking on the Profile Runtime button.
+about-debugging-profiler-dialog-title2 = ตัวสร้างโปรไฟล์
+# Clicking on the header of a debug target category will expand or collapse the debug
+# target items in the category. This text is used as ’title’ attribute of the header,
+# to describe this feature.
+about-debugging-collapse-expand-debug-targets = ยุบ / ขยาย
+
+# Debug Targets strings
+
+# Displayed in the categories of "runtime" pages that don't have any debug target to
+# show. Debug targets depend on the category (extensions, tabs, workers...).
+about-debugging-debug-target-list-empty = ยังไม่มีสิ่งใด
+# Text of a button displayed next to debug targets of "runtime" pages. Clicking on this
+# button will open a DevTools toolbox that will allow inspecting the target.
+# A target can be an addon, a tab, a worker...
+about-debugging-debug-target-inspect-button = ตรวจสอบ
+# Text of a button displayed in the "This Firefox" page, in the Temporary Extension
+# section. Clicking on the button will open a file picker to load a temporary extension
+about-debugging-tmp-extension-install-button = โหลดส่วนเสริมชั่วคราว…
+# Text displayed when trying to install a temporary extension in the "This Firefox" page.
+about-debugging-tmp-extension-install-error = เกิดข้อผิดพลาดระหว่างติดตั้งส่วนเสริมแบบชั่วคราว
+# Text of a button displayed for a temporary extension loaded in the "This Firefox" page.
+# Clicking on the button will reload the extension.
+about-debugging-tmp-extension-reload-button = โหลดใหม่
+# Text of a button displayed for a temporary extension loaded in the "This Firefox" page.
+# Clicking on the button will uninstall the extension and remove it from the page.
+about-debugging-tmp-extension-remove-button = เอาออก
+# Text of a button displayed for a temporary extension loaded in the "This Firefox" page.
+# Clicking on the button will forcefully terminate the extension background script (button
+# only visible in extensions that includes a non-persistent background script, either an
+# event page or a background service worker).
+about-debugging-tmp-extension-terminate-bgscript-button = หยุดการทำงานของสคริปต์เบื้องหลัง
+# Message displayed in the file picker that opens to select a temporary extension to load
+# (triggered by the button using "about-debugging-tmp-extension-install-button")
+# manifest.json .xpi and .zip should not be localized.
+# Note: this message is only displayed in Windows and Linux platforms.
+about-debugging-tmp-extension-install-message = เลือกไฟล์ manifest.json หรือไฟล์เก็บถาวร .xpi/.zip
+# This string is displayed as a message about the add-on having a temporaryID.
+about-debugging-tmp-extension-temporary-id = WebExtension นี้มี ID ชั่วคราว <a>เรียนรู้เพิ่มเติม</a>
+# Text displayed for extensions in "runtime" pages, before displaying a link the extension's
+# manifest URL.
+about-debugging-extension-manifest-url =
+ .label = URL ไฟล์กำกับ
+# Text displayed for extensions in "runtime" pages, before displaying the extension's uuid.
+# UUIDs look like b293e463-481e-5148-a487-5aaf7a130429
+about-debugging-extension-uuid =
+ .label = UUID ภายใน
+# Text displayed for extensions (temporary extensions only) in "runtime" pages, before
+# displaying the location of the temporary extension.
+about-debugging-extension-location =
+ .label = ตำแหน่งที่ตั้ง
+# Text displayed for extensions in "runtime" pages, before displaying the extension's ID.
+# For instance "geckoprofiler@mozilla.com" or "{ed26ddcb-5611-4512-a89a-51b8db81cfb2}".
+about-debugging-extension-id =
+ .label = ID ส่วนขยาย
+# Text displayed for extensions in "runtime" pages, before displaying the status of the
+# extension background script.
+about-debugging-extension-backgroundscript =
+ .label = สคริปต์เบื้องหลัง
+# Displayed for extension using a non-persistent background page (either an event page or
+# background service worker) when the background script is currently running.
+about-debugging-extension-backgroundscript-status-running = กำลังทำงาน
+# Displayed for extension using a non-persistent background page when is currently stopped.
+about-debugging-extension-backgroundscript-status-stopped = หยุดแล้ว
+# This string is displayed as a label of the button that pushes a test payload
+# to a service worker.
+# Note this relates to the "Push" API, which is normally not localized so it is
+# probably better to not localize it.
+# .disabledTitle is processed by the fluent-react / ActionButton code.
+about-debugging-worker-action-push2 = ผลัก
+ .disabledTitle = การผลักตัวทำงานบริการถูกปิดใช้งานอยู่สำหรับ { -brand-shorter-name } แบบหลายกระบวนการในขณะนี้
+# This string is displayed as a label of the button that starts a service worker.
+# .disabledTitle is processed by the fluent-react / ActionButton code.
+about-debugging-worker-action-start2 = เริ่ม
+ .disabledTitle = การเริ่มตัวทำงานบริการถูกปิดใช้งานอยู่สำหรับ { -brand-shorter-name } แบบหลายกระบวนการในขณะนี้
+# This string is displayed as a label of the button that unregisters a service worker.
+about-debugging-worker-action-unregister = เลิกลงทะเบียน
+# Displayed for service workers in runtime pages that listen to Fetch events.
+about-debugging-worker-fetch-listening =
+ .label = ดึงข้อมูล
+ .value = กำลังรับฟังเหตุการณ์การดึงข้อมูล
+# Displayed for service workers in runtime pages that do not listen to Fetch events.
+about-debugging-worker-fetch-not-listening =
+ .label = ดึงข้อมูล
+ .value = ไม่ได้รับฟังเหตุการณ์การดึงข้อมูลอยู่
+# Displayed for service workers in runtime pages that are currently running (service
+# worker instance is active).
+about-debugging-worker-status-running = กำลังทำงาน
+# Displayed for service workers in runtime pages that are registered but stopped.
+about-debugging-worker-status-stopped = หยุดอยู่
+# Displayed for service workers in runtime pages that are registering.
+about-debugging-worker-status-registering = กำลังลงทะเบียน
+# Displayed for service workers in runtime pages, to label the scope of a worker
+about-debugging-worker-scope =
+ .label = ขอบเขต
+# Displayed for service workers in runtime pages, to label the push service endpoint (url)
+# of a worker
+about-debugging-worker-push-service =
+ .label = บริการผลัก
+# Displayed as title of the inspect button when service worker debugging is disabled.
+about-debugging-worker-inspect-action-disabled =
+ .title = การตรวจสอบ Service Worker ถูกปิดใช้งานอยู่สำหรับ { -brand-shorter-name } แบบมัลติโปรเซสในขณะนี้
+# Displayed as title of the inspect button for zombie tabs (e.g. tabs loaded via a session restore).
+about-debugging-zombie-tab-inspect-action-disabled =
+ .title = แท็บยังไม่ได้โหลดอย่างเต็มที่และไม่สามารถตรวจสอบได้
+# Displayed as name for the Main Process debug target in the Processes category. Only for
+# remote runtimes, if `devtools.aboutdebugging.process-debugging` is true.
+about-debugging-multiprocess-toolbox-name = กล่องเครื่องมือมัลติโปรเซส
+# Displayed as description for the Main Process debug target in the Processes category.
+# Only for remote browsers, if `devtools.aboutdebugging.process-debugging` is true.
+about-debugging-multiprocess-toolbox-description = โปรเซสหลักและโปรเซสเนื้อหาสำหรับเบราว์เซอร์เป้าหมาย
+# Alt text used for the close icon of message component (warnings, errors and notifications).
+about-debugging-message-close-icon =
+ .alt = ปิดข้อความ
+# Label text used for the error details of message component.
+about-debugging-message-details-label-error = รายละเอียดข้อผิดพลาด
+# Label text used for the warning details of message component.
+about-debugging-message-details-label-warning = รายละเอียดคำเตือน
+# Label text used for default state of details of message component.
+about-debugging-message-details-label = รายละเอียด
diff --git a/l10n-th/devtools/client/accessibility.ftl b/l10n-th/devtools/client/accessibility.ftl
new file mode 100644
index 0000000000..209be1ec55
--- /dev/null
+++ b/l10n-th/devtools/client/accessibility.ftl
@@ -0,0 +1,64 @@
+# 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/.
+
+
+### These strings are used inside the Accessibility panel.
+
+accessibility-learn-more = เรียนรู้เพิ่มเติม
+accessibility-text-label-header = ป้ายชื่อและชื่อข้อความ
+accessibility-keyboard-header = แป้นพิมพ์
+
+## These strings are used in the overlay displayed when running an audit in the accessibility panel
+
+accessibility-progress-initializing = กำลังเตรียมใช้งาน…
+ .aria-valuetext = กำลังเตรียมใช้งาน…
+# This string is displayed in the audit progress bar in the accessibility panel.
+# Variables:
+# $nodeCount (Integer) - The number of nodes for which the audit was run so far.
+accessibility-progress-progressbar = กำลังตรวจสอบ { $nodeCount } โหนด
+accessibility-progress-finishing = กำลังดำเนินการให้เสร็จสิ้น…
+ .aria-valuetext = กำลังดำเนินการให้เสร็จสิ้น…
+
+## Text entries that are used as text alternative for icons that depict accessibility issues.
+
+accessibility-warning =
+ .alt = คำเตือน
+accessibility-fail =
+ .alt = ข้อผิดพลาด
+accessibility-best-practices =
+ .alt = วิธีปฏิบัติที่ดีที่สุด
+
+## Text entries for a paragraph used in the accessibility panel sidebar's checks section
+## that describe that currently selected accessible object has an accessibility issue
+## with its text label or accessible name.
+
+accessibility-text-label-issue-area = ใช้แอตทริบิวต์ <code>alt</code> เพื่อกำหนดป้ายชื่อให้กับอิลิเมนต์ <div>area</div> ที่มีแอตทริบิวต์ <span>href</span> <a>เรียนรู้เพิ่มเติม</a>
+accessibility-text-label-issue-dialog = กล่องโต้ตอบควรมีป้ายชื่อ <a>เรียนรู้เพิ่มเติม</a>
+accessibility-text-label-issue-document-title = เอกสารต้องมี <code>title</code> <a>เรียนรู้เพิ่มเติม</a>
+accessibility-text-label-issue-embed = เนื้อหาที่ฝังต้องมีป้ายชื่อ <a>เรียนรู้เพิ่มเติม</a>
+accessibility-text-label-issue-figure = รูปภาพที่มีคำอธิบายภาพเพิ่มเติมควรมีป้ายกำกับ <a>เรียนรู้เพิ่มเติม</a>
+accessibility-text-label-issue-fieldset = อิลิเมนต์ <code>fieldset</code> ต้องมีป้ายกำกับ <a>เรียนรู้เพิ่มเติม</a>
+accessibility-text-label-issue-fieldset-legend2 = ใช้อิลิเมนต์ <code>legend</code> เพื่อกำหนดป้ายกำกับให้กับ <span>fieldset</span> <a>เรียนรู้เพิ่มเติม</a>
+accessibility-text-label-issue-form = อิลิเมนต์แบบฟอร์มต้องมีป้ายชื่อ <a>เรียนรู้เพิ่มเติม</a>
+accessibility-text-label-issue-form-visible = อิลิเมนต์แบบฟอร์มต้องมีป้ายกำกับข้อความที่สามารถมองเห็นได้ <a>เรียนรู้เพิ่มเติม</a>
+accessibility-text-label-issue-frame = อิลิเมนต์ <code>frame</code> ต้องมีป้ายกำกับ <a>เรียนรู้เพิ่มเติม</a>
+accessibility-text-label-issue-glyph = ใช้แอตทริบิวต์ <code>alt</code> เพื่อกำหนดป้ายกำกับให้กับอิลิเมนต์ <span>mglyph</span> <a>เรียนรู้เพิ่มเติม</a>
+accessibility-text-label-issue-heading = หัวเรื่องต้องมีป้ายชื่อ <a>เรียนรู้เพิ่มเติม</a>
+accessibility-text-label-issue-heading-content = หัวเรื่องควรมีบริบทข้อความที่มองเห็นได้ <a>เรียนรู้เพิ่มเติม</a>
+accessibility-text-label-issue-iframe = ใช้แอตทริบิวต์ <code>title</code> เพื่ออธิบายเนื้อหา <span>iframe</span> <a>เรียนรู้เพิ่มเติม</a>
+accessibility-text-label-issue-image = เนื้อหาที่มีภาพต้องมีป้ายชื่อ <a>เรียนรู้เพิ่มเติม</a>
+accessibility-text-label-issue-interactive = อิลิเมนต์แบบโต้ตอบต้องมีป้ายชื่อ <a>เรียนรู้เพิ่มเติม</a>
+accessibility-text-label-issue-optgroup-label2 = ใช้แอตทริบิวต์ <code>label</code> เพื่อกำหนดป้ายกำกับให้กับ <span>optgroup</span> <a>เรียนรู้เพิ่มเติม</a>
+accessibility-text-label-issue-toolbar = แถบเครื่องมือต้องมีป้ายชื่อเมื่อมีแถบเครื่องมือมากกว่าหนึ่งแถบ <a>เรียนรู้เพิ่มเติม</a>
+
+## Text entries for a paragraph used in the accessibility panel sidebar's checks section
+## that describe that currently selected accessible object has a keyboard accessibility
+## issue.
+
+accessibility-keyboard-issue-semantics = อิลิเมนต์แบบโฟกัสได้ควรมีการสื่อความหมายเชิงโต้ตอบ <a>เรียนรู้เพิ่มเติม</a>
+accessibility-keyboard-issue-tabindex = หลีกเลี่ยงการใช้แอตทริบิวต์ <code>tabindex</code> ที่มีค่ามากกว่าศูนย์ <a>เรียนรู้เพิ่มเติม</a>
+accessibility-keyboard-issue-action = อิลิเมนต์แบบโต้ตอบต้องสามารถเปิดใช้งานโดยใช้แป้นพิมพ์ได้ <a>เรียนรู้เพิ่มเติม</a>
+accessibility-keyboard-issue-focusable = อิลิเมนต์แบบโต้ตอบต้องสามารถโฟกัสได้ <a>เรียนรู้เพิ่มเติม</a>
+accessibility-keyboard-issue-focus-visible = อิลิเมนต์แบบโฟกัสได้อาจขาดการกำหนดสไตล์สำหรับการโฟกัส <a>เรียนรู้เพิ่มเติม</a>
+accessibility-keyboard-issue-mouse-only = อิลิเมนต์แบบคลิกได้ต้องสามารถโฟกัสได้และควรมีการสื่อความหมายเชิงโต้ตอบ <a>เรียนรู้เพิ่มเติม</a>
diff --git a/l10n-th/devtools/client/accessibility.properties b/l10n-th/devtools/client/accessibility.properties
new file mode 100644
index 0000000000..97fc38cef6
--- /dev/null
+++ b/l10n-th/devtools/client/accessibility.properties
@@ -0,0 +1,314 @@
+# 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 These strings are used inside the Accessibility panel
+# which is available from the Web Developer sub-menu -> 'Accessibility'.
+# The correct localization of this file might be to keep it in
+# English, or another language commonly spoken among web developers.
+# You want to make that choice consistent across the developer tools.
+# A good criteria is the language in which you'd find the best
+# documentation on web development on the web.
+
+# LOCALIZATION NOTE These strings are used inside the Accessibility panel
+# which is in the Developer Tools, available in the
+# Browser Tools sub-menu -> 'Web Developer Tools'
+#
+# The correct localization of this file might be to keep it in
+# English, or another language commonly spoken among web developers.
+# You want to make that choice consistent across the developer tools.
+# A good criteria is the language in which you'd find the best
+# documentation on web development on the web.
+
+# LOCALIZATION NOTE (accessibility.role): A title text used for Accessibility
+# tree header column that represents accessible element role.
+accessibility.role=บทบาท
+
+# LOCALIZATION NOTE (accessibility.name): A title text used for Accessibility
+# tree header column that represents accessible element name.
+accessibility.name=ชื่อ
+
+# LOCALIZATION NOTE (accessibility.logo): A title text used for Accessibility
+# logo used on the accessibility panel landing page.
+accessibility.logo=โลโก้การช่วยการเข้าถึง
+
+# LOCALIZATION NOTE (accessibility.properties): A title text used for header
+# for Accessibility details sidebar.
+accessibility.properties=คุณสมบัติ
+
+# LOCALIZATION NOTE (accessibility.treeName): A title text used for
+# Accessibility tree (that represents accessible element name) container.
+accessibility.treeName=ต้นไม้การช่วยการเข้าถึง
+
+# LOCALIZATION NOTE (accessibility.accessible.selectElement.title): A title text
+# displayed on buttons next to accessible elements in the `relations` section, allowing the
+# user to select the element in the accessibility tree.
+accessibility.accessible.selectElement.title=คลิกเพื่อเลือกโหนดในทรีการช่วยการเข้าถึง
+
+# LOCALIZATION NOTE (accessibility.accessible.selectNodeInInspector.title): A title text
+# displayed on buttons next to nodes in the sidebar, allowing the user to select the node
+# in the Inspector panel.
+accessibility.accessible.selectNodeInInspector.title=คลิกเพื่อเลือกโหนดในตัวตรวจสอบ
+
+# LOCALIZATION NOTE (accessibility.accessible.notAvailable): A title text
+# displayed when accessible sidebar panel does not have an accessible object to
+# display.
+accessibility.accessible.notAvailable=ไม่มีข้อมูลที่ช่วยการเข้าถึง
+
+# LOCALIZATION NOTE (accessibility.enable): A title text for Enable
+# accessibility button used to enable accessibility service.
+accessibility.enable=เปิดคุณลักษณะการช่วยการเข้าถึง
+
+# LOCALIZATION NOTE (accessibility.enabling): A title text for Enable
+# accessibility button used when accessibility service is being enabled.
+accessibility.enabling=กำลังเปิดคุณลักษณะการช่วยการเข้าถึง…
+
+# LOCALIZATION NOTE (accessibility.disable): A title text for Disable
+# accessibility button used to disable accessibility service.
+accessibility.disable=ปิดคุณลักษณะการช่วยการเข้าถึง
+
+# LOCALIZATION NOTE (accessibility.disabling): A title text for Disable
+# accessibility button used when accessibility service is being
+# disabled.
+accessibility.disabling=กำลังปิดคุณลักษณะการช่วยการเข้าถึง…
+
+# LOCALIZATION NOTE (accessibility.pick): A title text for Picker button
+# button used to pick accessible objects from the page.
+accessibility.pick=เลือกวัตถุที่เข้าถึงได้จากหน้า
+
+# LOCALIZATION NOTE (accessibility.disable.disabledTitle): A title text used for
+# a tooltip for Disable accessibility button when accessibility service can not
+# be disabled. It is the case when a user is using a 3rd party accessibility
+# tool such as screen reader.
+accessibility.disable.disabledTitle=บริการการช่วยการเข้าถึงไม่สามารถปิดได้ เนื่องจากถูกใช้ภายนอกเครื่องมือนักพัฒนา
+
+# LOCALIZATION NOTE (accessibility.disable.enabledTitle): A title text used for
+# a tooltip for Disable accessibility button when accessibility service can be
+# disabled.
+accessibility.disable.enabledTitle=บริการการช่วยการเข้าถึงจะถูกปิดสำหรับแท็บและหน้าต่างทั้งหมด
+
+# LOCALIZATION NOTE (accessibility.enable.disabledTitle): A title text used for
+# a tooltip for Enabled accessibility button when accessibility service can not
+# be enabled.
+accessibility.enable.disabledTitle=บริการการช่วยการเข้าถึงไม่สามารถเปิดได้ เนื่องจากถูกปิดผ่านค่ากำหนดความเป็นส่วนตัวบริการการช่วยการเข้าถึง
+
+# LOCALIZATION NOTE (accessibility.enable.enabledTitle): A title text used for
+# a tooltip for Enabled accessibility button when accessibility service can be
+# enabled.
+accessibility.enable.enabledTitle=บริการการช่วยการเข้าถึงจะถูกเปิดสำหรับแท็บและหน้าต่างทั้งหมด
+
+# LOCALIZATION NOTE (accessibility.learnMore): A text that is used as is or as textual
+# description in places that link to accessibility inspector documentation.
+accessibility.learnMore=เรียนรู้เพิ่มเติม
+
+# LOCALIZATION NOTE (accessibility.description.general.p1): A title text for the first
+# paragraph, used when accessibility service description is provided before accessibility
+# inspector is enabled. %S in the content will be replaced by a link at run time
+# with the accessibility.learnMore string.
+accessibility.description.general.p1=ตัวตรวจสอบการช่วยการเข้าถึงให้คุณตรวจสอบโครงสร้างการช่วยการเข้าถึงของหน้าปัจจุบัน ซึ่งถูกใช้โดยโปรแกรมอ่านหน้าจอและเทคโนโลยีช่วยเหลืออื่นๆ %S
+
+# LOCALIZATION NOTE (accessibility.description.general.p2): A title text for the second
+# paragraph, used when accessibility service description is provided before accessibility
+# inspector is enabled.
+accessibility.description.general.p2=คุณลักษณะการช่วยการเข้าถึงอาจส่งผลต่อแผงเครื่องมือนักพัฒนาและควรปิดเมื่อไม่ได้ใช้
+
+# LOCALIZATION NOTE (accessibility.tree.menu.printToJSON): A title text used when a
+# context menu item for printing an accessible tree to JSON is rendered after triggering a
+# context menu for an accessible tree row.
+accessibility.tree.menu.printToJSON=พิมพ์เป็น JSON
+
+# LOCALIZATION NOTE (accessibility.checks): A title text used for header for checks
+# section in Accessibility details sidebar.
+accessibility.checks=การตรวจสอบ
+
+# LOCALIZATION NOTE (accessibility.checks.empty2): A title text used for indicating that
+# accessibility checks for a node yielded no results and another node should be
+# selected.
+accessibility.checks.empty2=ไม่มีการตรวจสอบสำหรับโหนดนี้
+
+# LOCALIZATION NOTE (accessibility.contrast.header): A title text used for header for
+# checks related to color and contrast.
+accessibility.contrast.header=สีและความเปรียบต่าง
+
+# LOCALIZATION NOTE (accessibility.contrast.error): A title text for the color
+# contrast ratio, used when the tool is unable to calculate the contrast ratio value.
+accessibility.contrast.error=ไม่สามารถคำนวณ
+
+# LOCALIZATION NOTE (accessibility.contrast.large.text): A title text for the color
+# contrast ratio label indicating that the color contrast criteria used is if for large
+# text. This is lower case because it's used as a label for a tree item in accessibility
+# tree.
+accessibility.contrast.large.text=ข้อความขนาดใหญ่
+
+# LOCALIZATION NOTE (accessibility.contrast.large.title): A title text for the tooltip
+# used for the large text label (see accessibility.contrast.large.text).
+accessibility.contrast.large.title=ข้อความมีขนาด 14 จุดและหนาหรือใหญ่กว่า หรือมีขนาด 18 จุดหรือใหญ่กว่า
+
+# LOCALIZATION NOTE (accessibility.contrast.annotation.AA): A title text for the paragraph
+# describing that the given colour contrast satisfies AA standard from Web Content
+# Accessibility Guidelines. %S in the content will be replaced by a link at run time
+# with the accessibility.learnMore string.
+accessibility.contrast.annotation.AA=ตรงตามมาตรฐาน WCAG AA สำหรับข้อความที่เข้าถึงได้ %S
+
+# LOCALIZATION NOTE (accessibility.contrast.annotation.AAA): A title text for the
+# paragraph describing that the given colour contrast satisfies AAA standard from Web
+# Content Accessibility Guidelines. %S in the content will be replaced by a link at run
+# time with the accessibility.learnMore string.
+accessibility.contrast.annotation.AAA=ตรงตามมาตรฐาน WCAG AAA สำหรับข้อความที่เข้าถึงได้ %S
+
+# LOCALIZATION NOTE (accessibility.contrast.annotation.FAIL): A title text for the
+# paragraph describing that the given colour contrast fails to meet the minimum level from
+# Web Content Accessibility Guidelines. %S in the content will be replaced by a link at
+# run time with the accessibility.learnMore string.
+accessibility.contrast.annotation.FAIL=ไม่ตรงตามมาตรฐาน WCAG สำหรับข้อความที่เข้าถึงได้ %S
+
+# LOCALIZATION NOTE (accessibility.contrast.annotation.transparent.error): A title text for the
+# paragraph suggesting a fix for error in color contrast calculation for text nodes with zero alpha.
+accessibility.contrast.annotation.transparent.error=เลือกสีที่ไม่โปร่งใส
+
+# LOCALIZATION NOTE (accessibility.badges): A title text for the group of badges
+# that are rendered for each accessible row within the accessibility tree when
+# one or more accessibility checks fail.
+accessibility.badges=การตรวจสอบการช่วยการเข้าถึง
+
+# LOCALIZATION NOTE (accessibility.filter.none): A title text for the filter
+# that is rendered within the accessibility panel toolbar for a menu item that
+# resets all filtering in tree, and for the simulation menu item that resets
+# applied color matrices to the default matrix.
+accessibility.filter.none=ไม่มี
+
+# LOCALIZATION NOTE (accessibility.filter.all2): A title text for the filter
+# that is rendered within the accessibility panel toolbar for a menu item that
+# filters the tree based on all accessibility failures within it.
+accessibility.filter.all2=ปัญหาทั้งหมด
+
+# LOCALIZATION NOTE (accessibility.filter.contrast): A title text for the filter
+# that is rendered within the accessibility panel toolbar for a menu item that
+# filters the tree based on contrast accessibility failures within it.
+accessibility.filter.contrast=ความเปรียบต่าง
+
+# LOCALIZATION NOTE (accessibility.filter.textLabel): A title text for the filter
+# that is rendered within the accessibility panel toolbar for a menu item that
+# filters the tree based on text label and name accessibility failures within it.
+accessibility.filter.textLabel=ป้ายชื่อข้อความ
+
+# LOCALIZATION NOTE (accessibility.filter.keyboard): A title text for the filter
+# that is rendered within the accessibility panel toolbar for a menu item that
+# filters the tree based on keyboard accessibility failures within it.
+accessibility.filter.keyboard=แป้นพิมพ์
+
+# LOCALIZATION NOTE (accessibility.badge.contrast): A title text for the badge
+# that is rendered within the accessible row in the accessibility tree for a
+# given accessible object that does not satisfy the WCAG guideline for colour
+# contrast.
+accessibility.badge.contrast=ความเปรียบต่าง
+
+# LOCALIZATION NOTE (accessibility.badge.contrast.warning): A label for the
+# badge and attached warning icon that is rendered within the accessible row in
+# the accessibility tree for a given accessible object that does not satisfy the
+# WCAG guideline for colour contrast.
+accessibility.badge.contrast.warning=คำเตือนความเปรียบต่าง
+
+# LOCALIZATION NOTE (accessibility.badge.keyboard): A title text for the
+# badge that is rendered within the accessible row in the accessibility tree for
+# a given accessible object that does not satisfy the WCAG guideline for
+# keyboard accessibility.
+accessibility.badge.keyboard=แป้นพิมพ์
+
+# LOCALIZATION NOTE (accessibility.badge.textLabel): A title text for the
+# badge that is rendered within the accessible row in the accessibility tree for
+# a given accessible object that does not satisfy the WCAG guideline for text
+# alternative.
+accessibility.badge.textLabel=ป้ายชื่อข้อความ
+
+# LOCALIZATION NOTE (accessibility.badge.contrast.tooltip): A title text for the
+# badge tooltip that is rendered on mouse hover over the badge in the accessible
+# row in the accessibility tree for a given accessible object that does not
+# satisfy the WCAG guideline for colour contrast.
+accessibility.badge.contrast.tooltip=ไม่ตรงตามมาตรฐาน WCAG สำหรับข้อความที่เข้าถึงได้
+
+# LOCALIZATION NOTE (accessibility.badge.keyboard.tooltip): A title text
+# for the badge tooltip that is rendered on mouse hover over the badge in the
+# accessible row in the accessibility tree for a given accessible object that
+# does not satisfy the WCAG guideline for keyboard accessibility.
+accessibility.badge.keyboard.tooltip=ไม่ตรงตามมาตรฐาน WCAG สำหรับการช่วยการเข้าถึงแป้นพิมพ์
+
+# LOCALIZATION NOTE (accessibility.badge.textLabel.tooltip): A title text
+# for the badge tooltip that is rendered on mouse hover over the badge in the
+# accessible row in the accessibility tree for a given accessible object that
+# does not satisfy the WCAG guideline for text alternative.
+accessibility.badge.textLabel.tooltip=ไม่ตรงตามมาตรฐาน WCAG สำหรับข้อความแสดงแทน
+
+# LOCALIZATION NOTE (accessibility.tree.filters): A title text for the toolbar
+# within the main accessibility panel that contains a list of filters to be for
+# accessibility audit.
+accessibility.tree.filters=ตรวจสอบปัญหา:
+
+# LOCALIZATION NOTE (accessibility.tree.filters.prefs): A title text for the
+# preferences button tooltip that contains preferences for accessibility audit.
+accessibility.tree.filters.prefs=กำหนดค่าการกำหนดลักษณะ
+
+# LOCALIZATION NOTE (accessibility.progress.initializing): A title text for the
+# accessibility panel overlay shown when accessibility audit is starting up.
+accessibility.progress.initializing=กำลังเตรียมใช้งาน…
+
+# LOCALIZATION NOTE (accessibility.progress.initializing): A title text for the
+# accessibility panel overlay shown when accessibility audit is running showing
+# the number of nodes being audited. Semi-colon list of plural forms. See:
+# http://developer.mozilla.org/en/docs/Localization_and_Plurals
+accessibility.progress.progressbar=กำลังตรวจสอบ #1 โหนด
+
+# LOCALIZATION NOTE (accessibility.progress.finishing): A title text for the
+# accessibility panel overlay shown when accessibility audit is finishing up.
+accessibility.progress.finishing=กำลังดำเนินการให้เสร็จสิ้น…
+
+# LOCALIZATION NOTE (accessibility.pref.scroll.into.view.title): A title
+# text for the tooltip for the checkbox pref in the accessibility panel that
+# sets node auto scroll.
+accessibility.pref.scroll.into.view.title=เลื่อนโหนดที่เลือกไปในมุมมองโดยอัตโนมัติ
+
+# LOCALIZATION NOTE (accessibility.pref.scroll.into.view.label): A title
+# text for the checkbox pref in the accessibility panel that sets node auto
+# scroll.
+accessibility.pref.scroll.into.view.label=เลื่อนไปในมุมมอง
+
+# LOCALIZATION NOTE (accessibility.documentation.label): This is the label for
+# the Documentation menu item.
+accessibility.documentation.label=เอกสารประกอบ…
+
+# LOCALIZATION NOTE (accessibility.simulation): A title text for the toolbar
+# within the main accessibility panel that contains a list of simulations for
+# vision deficiencies.
+accessibility.simulation=จำลอง:
+
+# LOCALIZATION NOTE (accessibility.simulation.protanopia): This label is shown
+# in the "Simulate" menu in the accessibility panel and represent the protanopia simulation option.
+accessibility.simulation.protanopia=ตาบอดสีแดง
+
+# LOCALIZATION NOTE (accessibility.simulation.deuteranopia): This label is shown
+# in the "Simulate" menu in the accessibility panel and represent the deuteranopia simulation option.
+accessibility.simulation.deuteranopia=ตาบอดสีเขียว
+
+# LOCALIZATION NOTE (accessibility.simulation.tritanopia): This label is shown
+# in the "Simulate" menu in the accessibility panel and represent the tritanopia simulation option.
+accessibility.simulation.tritanopia=ตาบอดสีน้ำเงิน
+
+# LOCALIZATION NOTE (accessibility.simulation.contrastLoss): This label is shown
+# in the "Simulate" menu in the accessibility panel and represent the contrast loss simulation option.
+# It is also shown in the simulation menu button in the accessibility panel and represent the
+# contrast loss simulation option currently selected.
+accessibility.simulation.contrastLoss=การสูญเสียความเปรียบต่าง
+
+# LOCALIZATION NOTE (accessibility.simulation.achromatopsia): This label is shown
+# in the "Simulate" menu in the accessibility panel and represent the achromatopsia simulation option.
+accessibility.simulation.achromatopsia=ตาบอดทุกสี
+
+# LOCALIZATION NOTE (accessibility.toolbar.displayTabbingOrder.label): A title text for a checkbox label
+# in the accessibility panel toolbar that turns on/off the overlay of focusable elements in their
+# tabbing order.
+accessibility.toolbar.displayTabbingOrder.label=แสดงลำดับแท็บ
+
+# LOCALIZATION NOTE (accessibility.toolbar.displayTabbingOrder.tooltip): A title text for a checkbox
+# tooltip in the accessibility panel toolbar that turns on/off the overlay of focusable elements in
+# their tabbing order.
+accessibility.toolbar.displayTabbingOrder.tooltip=แสดงลำดับแท็บขององค์ประกอบและดัชนีแท็บ
diff --git a/l10n-th/devtools/client/animationinspector.properties b/l10n-th/devtools/client/animationinspector.properties
new file mode 100644
index 0000000000..0c4dc953ea
--- /dev/null
+++ b/l10n-th/devtools/client/animationinspector.properties
@@ -0,0 +1,182 @@
+# 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 These strings are used inside the Animation inspector
+# which is available as a sidebar panel in the Inspector.
+# The correct localization of this file might be to keep it in
+# English, or another language commonly spoken among web developers.
+# You want to make that choice consistent across the developer tools.
+# A good criteria is the language in which you'd find the best
+# documentation on web development on the web.
+
+# LOCALIZATION NOTE (panel.noAnimation):
+# This is the label shown in the panel when there are no displayable animations.
+# (e.g. In case of user selected a non-element node or a node that is not animated).
+panel.noAnimation=ไม่พบภาพเคลื่อนไหวสำหรับอิลิเมนต์ปัจจุบัน\nเลือกอิลิเมนต์อื่นจากหน้า
+
+# LOCALIZATION NOTE (player.animationDurationLabel):
+# This string is displayed in each animation player widget. It is the label
+# displayed before the animation duration.
+player.animationDurationLabel=ระยะเวลา:
+
+# LOCALIZATION NOTE (player.infiniteDurationText):
+# This string is displayed in a tooltip on animation player widget, in case the
+# duration of the animation is infinite.
+player.infiniteDurationText=∞
+
+# LOCALIZATION NOTE (player.animationDelayLabel):
+# This string is displayed in each animation player widget. It is the label
+# displayed before the animation delay.
+player.animationDelayLabel=หน่วงเวลา:
+
+# LOCALIZATION NOTE (player.animationEndDelayLabel):
+# This string is displayed in each animation player widget. It is the label
+# displayed before the animation endDelay.
+player.animationEndDelayLabel=จบการหน่วงเวลา:
+
+# LOCALIZATION NOTE (player.animationRateLabel):
+# This string is displayed in each animation player widget. It is the label
+# displayed before the animation playback rate.
+player.animationRateLabel=อัตราการเล่น:
+
+# LOCALIZATION NOTE (player.animationIterationCountLabel):
+# This string is displayed in each animation player widget. It is the label
+# displayed before the number of times the animation is set to repeat.
+player.animationIterationCountLabel=ทำซ้ำ:
+
+# LOCALIZATION NOTE (player.infiniteIterationCount):
+# In case the animation repeats infinitely, this string is displayed next to the
+# player.animationIterationCountLabel string, instead of a number.
+player.infiniteIterationCount=&#8734;
+
+# LOCALIZATION NOTE (player.infiniteIterationCountText):
+# See player.infiniteIterationCount for a description of what this is.
+# Unlike player.infiniteIterationCount, this string isn't used in HTML, but in
+# a tooltip.
+player.infiniteIterationCountText=∞
+
+# LOCALIZATION NOTE (player.animationIterationStartLabel2):
+# This string is displayed in a tooltip that appears when hovering over
+# animations in the timeline. It is the label displayed before the animation
+# iterationStart value.
+# %1$S will be replaced by the original iteration start value
+# %2$S will be replaced by the actual time of iteration start without time unit
+# e.g.
+# If iterationStart of animation is 0.5 and duration is 1 sec, the string will be
+# "Iteration start: 0.5 (0.5s)"
+player.animationIterationStartLabel2=การทวนซ้ำเริ่ม: %1$S (%2$S)
+
+# LOCALIZATION NOTE (player.animationOverallEasingLabel):
+# This string is displayed in a tooltip that appears when hovering over
+# animations in the timeline. It is the label displayed before the easing
+# that applies to a whole iteration of an animation as opposed to the
+# easing that applies between animation keyframes.
+player.animationOverallEasingLabel=Easing ทั้งหมด:
+
+# LOCALIZATION NOTE (player.animationTimingFunctionLabel):
+# This string is displayed in a tooltip that appears when hovering over
+# animations in the timeline. It is the label displayed before the
+# animation-timing-function for CSS Animations.
+player.animationTimingFunctionLabel=ฟังก์ชันการจับเวลาภาพเคลื่อนไหว:
+
+# LOCALIZATION NOTE (player.animationFillLabel):
+# This string is displayed in a tooltip that appears when hovering over
+# animations in the timeline. It is the label displayed before the animation
+# fill mode value.
+player.animationFillLabel=เติม:
+
+# LOCALIZATION NOTE (player.animationDirectionLabel):
+# This string is displayed in a tooltip that appears when hovering over
+# animations in the timeline. It is the label displayed before the animation
+# direction value.
+player.animationDirectionLabel=ทิศทาง:
+
+# LOCALIZATION NOTE (player.timeLabel):
+# This string is displayed in each animation player widget, to indicate either
+# how long (in seconds) the animation lasts, or what is the animation's current
+# time (in seconds too);
+player.timeLabel=%Ss
+
+# LOCALIZATION NOTE (player.infiniteDurationText):
+# This string is displayed in animation player widget, in case the duration of the
+# animation is infinite.
+player.infiniteTimeLabel=∞
+
+# LOCALIZATION NOTE (player.playbackRateLabel):
+# This string is displayed in each animation player widget, as the label of
+# drop-down list items that can be used to change the rate at which the
+# animation runs (1× being the default, 2× being twice as fast).
+player.playbackRateLabel=%S×
+
+# LOCALIZATION NOTE (player.runningOnCompositorTooltip):
+# This string is displayed as a tooltip for the icon that indicates that the
+# animation is running on the compositor thread.
+player.runningOnCompositorTooltip=ภาพเคลื่อนไหวนี้กำลังทำงานบน Compositor thread
+
+# LOCALIZATION NOTE (player.allPropertiesOnCompositorTooltip):
+# This string is displayed as a tooltip for the icon that indicates that
+# all of animation is running on the compositor thread.
+player.allPropertiesOnCompositorTooltip=คุณสมบัติภาพเคลื่อนไหวทั้งหมดถูกเพิ่มประสิทธิภาพ
+
+# LOCALIZATION NOTE (player.somePropertiesOnCompositorTooltip):
+# This string is displayed as a tooltip for the icon that indicates that
+# all of animation is not running on the compositor thread.
+player.somePropertiesOnCompositorTooltip=คุณสมบัติภาพเคลื่อนไหวบางส่วนถูกเพิ่มประสิทธิภาพ
+
+# LOCALIZATION NOTE (timeline.pausedButtonTooltip):
+# This string is displayed in the timeline toolbar, as the tooltip of the
+# pause/resume button that can be used to pause or resume the animations
+timeline.pausedButtonTooltip=เล่นภาพเคลื่อนไหวต่อ
+
+# LOCALIZATION NOTE (timeline.resumedButtonTooltip):
+# This string is displayed in the timeline toolbar, as the tooltip of the
+# pause/resume button that can be used to pause or resume the animations
+timeline.resumedButtonTooltip=หยุดภาพเคลื่อนไหวชั่วคราว
+
+# LOCALIZATION NOTE (timeline.rewindButtonTooltip):
+# This string is displayed in the timeline toolbar, as the tooltip of the
+# rewind button that can be used to rewind the animations
+timeline.rewindButtonTooltip=กรอภาพเคลื่อนไหวกลับ
+
+# LOCALIZATION NOTE (timeline.timeGraduationLabel):
+# This string is displayed at the top of the animation panel, next to each time
+# graduation, to indicate what duration (in milliseconds) this graduation
+# corresponds to.
+timeline.timeGraduationLabel=%Sms
+
+# LOCALIZATION NOTE (timeline.cssanimation.nameLabel):
+# This string is displayed in a tooltip of the animation panel that is shown
+# when hovering over the name of a CSS Animation in the timeline UI.
+# %S will be replaced by the name of the animation at run-time.
+timeline.cssanimation.nameLabel=%S - ภาพเคลื่อนไหว CSS
+
+# LOCALIZATION NOTE (timeline.csstransition.nameLabel):
+# This string is displayed in a tooltip of the animation panel that is shown
+# when hovering over the name of a CSS Transition in the timeline UI.
+# %S will be replaced by the name of the transition at run-time.
+timeline.csstransition.nameLabel=%S - การเปลี่ยนผ่าน CSS
+
+# LOCALIZATION NOTE (timeline.scriptanimation.nameLabel):
+# This string is displayed in a tooltip of the animation panel that is shown
+# when hovering over the name of a script-generated animation in the timeline UI.
+# %S will be replaced by the name of the animation at run-time.
+timeline.scriptanimation.nameLabel=%S - ภาพเคลื่อนไหวจากสคริปต์
+
+# LOCALIZATION NOTE (timeline.scriptanimation.unnamedLabel):
+# This string is displayed in a tooltip of the animation panel that is shown
+# when hovering over an unnamed script-generated animation in the timeline UI.
+timeline.scriptanimation.unnamedLabel=ภาพเคลื่อนไหวจากสคริปต์
+
+# LOCALIZATION NOTE (timeline.unknown.nameLabel):
+# This string is displayed in a tooltip of the animation panel that is shown
+# when hovering over the name of an unknown animation type in the timeline UI.
+# This can happen if devtools couldn't figure out the type of the animation.
+# %S will be replaced by the name of the transition at run-time.
+timeline.unknown.nameLabel=%S
+
+# LOCALIZATION NOTE (detail.propertiesHeader.percentage):
+# This string is displayed on header label in .animated-properties-header.
+# %S represents the value in percentage with two decimal points, localized.
+# there are two "%" after %S to escape and display "%"
+detail.propertiesHeader.percentage=%S%%
diff --git a/l10n-th/devtools/client/application.ftl b/l10n-th/devtools/client/application.ftl
new file mode 100644
index 0000000000..235def2f5d
--- /dev/null
+++ b/l10n-th/devtools/client/application.ftl
@@ -0,0 +1,121 @@
+# 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/.
+
+
+### These strings are used inside the Application panel which is available
+### by setting the preference `devtools-application-enabled` to true.
+
+
+### The correct localization of this file might be to keep it in English, or another
+### language commonly spoken among web developers. You want to make that choice consistent
+### across the developer tools. A good criteria is the language in which you'd find the
+### best documentation on web development on the web.
+
+# Header for the list of Service Workers displayed in the application panel for the current page.
+serviceworker-list-header = Service Worker
+# Text displayed next to the list of Service Workers to encourage users to check out
+# about:debugging to see all registered Service Workers.
+serviceworker-list-aboutdebugging = เปิด <a>about:debugging</a> สำหรับ Service Worker จากโดเมนอื่นๆ
+# Text for the button to unregister a Service Worker. Displayed for active Service Workers.
+serviceworker-worker-unregister = เลิกลงทะเบียน
+# Text for the debug link displayed for an already started Service Worker. Clicking on the
+# link opens a new devtools toolbox for this service worker. The title attribute is only
+# displayed when the link is disabled.
+serviceworker-worker-debug = ดีบั๊ก
+ .title = สามารถดีบั๊กได้เฉพาะเวิร์กเกอร์บริการที่ทำงานอยู่เท่านั้น
+# Alt text for the image icon displayed inside a debug link for a service worker.
+serviceworker-worker-inspect-icon =
+ .alt = ตรวจสอบ
+# Text for the start link displayed for a registered but not running Service Worker.
+# Clicking on the link will attempt to start the service worker.
+serviceworker-worker-start3 = เริ่ม
+# Text displayed for the updated time of the service worker. The <time> element will
+# display the last update time of the service worker script.
+# Variables:
+# $date (date) - Update date
+serviceworker-worker-updated = อัปเดตเมื่อ <time>{ DATETIME($date, month: "long", year: "numeric", day: "numeric", hour: "numeric", minute: "numeric", second: "numeric") }</time>
+
+## Service Worker status strings: all serviceworker-worker-status-* strings are also
+## defined in aboutdebugging.properties and should be synchronized with them.
+
+# Service Worker status. A running service worker is registered, currently executed, can
+# be debugged and stopped.
+serviceworker-worker-status-running = กำลังทำงาน
+# Service Worker status. A stopped service worker is registered but not currently active.
+serviceworker-worker-status-stopped = หยุดอยู่
+# Text displayed when no service workers are visible for the current page.
+serviceworker-empty-intro2 = ไม่พบ Service Worker
+# Link will open https://developer.mozilla.org/docs/Web/API/Service_Worker_API/Using_Service_Workers
+serviceworker-empty-intro-link = เรียนรู้เพิ่มเติม
+# Text displayed when there are no Service Workers to display for the current page,
+# introducing hints to debug Service Worker issues.
+# <a> and <span> are links that will open the webconsole and the debugger, respectively.
+serviceworker-empty-suggestions2 = หากหน้าปัจจุบันควรมี Service Worker คุณสามารถมองหาข้อผิดพลาดใน<a>คอนโซล</a>หรือลงทะเบียน Service Worker ของคุณใน<span>ตัวดีบั๊ก</span>ได้
+# Suggestion to go to about:debugging in order to see Service Workers for all domains.
+# Link will open about:debugging in a new tab.
+serviceworker-empty-suggestions-aboutdebugging2 = ดู Service Worker จากโดเมนอื่น
+# Header for the Manifest page when we have an actual manifest
+manifest-view-header = ไฟล์กำกับของแอป
+# Header for the Manifest page when there's no manifest to inspect
+manifest-empty-intro2 = ตรวจไม่พบไฟล์กำกับเว็บแอป
+# The link will open https://developer.mozilla.org/en-US/docs/Web/Manifest
+manifest-empty-intro-link = เรียนรู้วิธีเพิ่มไฟล์กำกับ
+# Header for the Errors and Warnings section of Manifest inspection displayed in the application panel.
+manifest-item-warnings = ข้อผิดพลาดและคำเตือน
+# Header for the Identity section of Manifest inspection displayed in the application panel.
+manifest-item-identity = ข้อมูลประจำตัว
+# Header for the Presentation section of Manifest inspection displayed in the application panel.
+manifest-item-presentation = งานนำเสนอ
+# Header for the Icon section of Manifest inspection displayed in the application panel.
+manifest-item-icons = ไอคอน
+# Text displayed while we are loading the manifest file
+manifest-loading = กำลังโหลดไฟล์กำกับ…
+# Text displayed when the manifest has been successfully loaded
+manifest-loaded-ok = โหลดไฟล์กำกับแล้ว
+# Text displayed as a caption when there has been an error while trying to
+# load the manifest
+manifest-loaded-error = มีข้อผิดพลาดขณะโหลดไฟล์กำกับ:
+# Text displayed as an error when there has been a Firefox DevTools error while
+# trying to load the manifest
+manifest-loaded-devtools-error = ข้อผิดพลาด Firefox DevTools
+# Text displayed when the page has no manifest available
+manifest-non-existing = ไม่พบไฟล์กำกับที่จะตรวจสอบ
+# Text displayed when the page has a manifest embedded in a Data URL and
+# thus we cannot link to it.
+manifest-json-link-data-url = ไฟล์กำกับถูกฝังอยู่ใน URL ข้อมูล
+# Text displayed at manifest icons to label their purpose, as declared
+# in the manifest.
+# Variables:
+# $purpose (string) - Manifest purpose
+manifest-icon-purpose = จุดประสงค์: <code>{ $purpose }</code>
+# Text displayed as the alt attribute for <img> tags showing the icons in the
+# manifest.
+manifest-icon-img =
+ .alt = ไอคอน
+# Text displayed as the title attribute for <img> tags showing the icons in the
+# manifest.
+# Variables:
+# $sizes (string) - User-dependent string that has been parsed as a
+# space-separated list of `<width>x<height>` sizes or
+# the keyword `any`.
+manifest-icon-img-title = ไอคอนที่มีขนาด: { $sizes }
+# Text displayed as the title attribute for <img> tags showing the icons in the
+# manifest, in case there's no icon size specified by the user
+manifest-icon-img-title-no-sizes = ไอคอนขนาดที่ไม่ระบุ
+# Sidebar navigation item for Manifest sidebar item section
+sidebar-item-manifest = ไฟล์กำกับ
+ .alt = ไอคอนไฟล์กำกับ
+ .title = ไฟล์กำกับ
+# Sidebar navigation item for Service Workers sidebar item section
+sidebar-item-service-workers = Service Worker
+ .alt = ไอคอน Service Worker
+ .title = Service Worker
+# Text for the ALT and TITLE attributes of the warning icon
+icon-warning =
+ .alt = ไอคอนคำเตือน
+ .title = คำเตือน
+# Text for the ALT and TITLE attributes of the error icon
+icon-error =
+ .alt = ไอคอนข้อผิดพลาด
+ .title = ข้อผิดพลาด
diff --git a/l10n-th/devtools/client/boxmodel.properties b/l10n-th/devtools/client/boxmodel.properties
new file mode 100644
index 0000000000..0dfa5361dd
--- /dev/null
+++ b/l10n-th/devtools/client/boxmodel.properties
@@ -0,0 +1,47 @@
+# 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 : FILE This file contains the Layout View strings.
+# The Layout View is a panel displayed in the computed view tab of the Inspector sidebar.
+
+# LOCALIZATION NOTE : FILE The correct localization of this file might be to
+# keep it in English, or another language commonly spoken among web developers.
+# You want to make that choice consistent across the developer tools.
+# A good criteria is the language in which you'd find the best
+# documentation on web development on the web.
+
+# LOCALIZATION NOTE (boxmodel.title) This is the title of the box model panel and is
+# displayed as a label.
+boxmodel.title=โมเดลกล่อง
+
+# LOCALIZATION NOTE: (boxmodel.geometryButton.tooltip) This label is displayed as a
+# tooltip that appears when hovering over the button that allows users to edit the
+# position of an element in the page.
+boxmodel.geometryButton.tooltip=แก้ไขตำแหน่ง
+
+# LOCALIZATION NOTE: (boxmodel.propertiesLabel) This label is displayed as the header
+# for showing and collapsing the properties underneath the box model in the layout view
+boxmodel.propertiesLabel=คุณสมบัติโมเดลกล่อง
+
+# LOCALIZATION NOTE (boxmodel.propertiesHideLabel):
+# This is the spoken label for the twisty.
+# If the properties are currently showing, it will say "Hide".
+boxmodel.propertiesHideLabel=ซ่อน
+
+# LOCALIZATION NOTE (boxmodel.propertiesShowLabel):
+# This is the spoken label for the twisty.
+# If the properties are currently hidden, it will say "Show".
+boxmodel.propertiesShowLabel=แสดง
+
+# LOCALIZATION NOTE: (boxmodel.offsetParent) This label is displayed inside the list of
+# properties, below the box model, in the layout view. It is displayed next to the
+# position property, when position is absolute, relative, sticky. This label tells users
+# what the DOM node previewed next to it is: an offset parent for the position element.
+boxmodel.offsetParent=ออฟเซต
+
+# LOCALIZATION NOTE: (boxmodel.offsetParent.title) This label is displayed as a
+# tooltip that appears when hovering over the offset label, inside the list of properties,
+# below the box model, in the layout view. This label tells users
+# what the DOM node previewed next to it is: an offset parent for the position element.
+boxmodel.offsetParent.title=ข้อมูลหลักออฟเซตของอิลิเมนต์ที่เลือก
diff --git a/l10n-th/devtools/client/changes.properties b/l10n-th/devtools/client/changes.properties
new file mode 100644
index 0000000000..5c43cf7041
--- /dev/null
+++ b/l10n-th/devtools/client/changes.properties
@@ -0,0 +1,64 @@
+# 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 This file contains the strings for the Changes panel accessible from
+# the Inspector sidebar.
+
+# LOCALIZATION NOTE (changes.noChanges): This text is shown when no changes are available.
+changes.noChanges=ไม่พบการเปลี่ยนแปลง
+
+# LOCALIZATION NOTE (changes.noChangesDescription): This text is shown when no changes are
+# available and provides additional context for the purpose of the Changes panel.
+changes.noChangesDescription=การเปลี่ยนแปลง CSS ในตัวตรวจสอบจะปรากฏที่นี่
+
+# LOCALIZATION NOTE (changes.inlineStyleSheetLabel): This label appears in the Changes
+# panel above changes done to inline stylesheets. The variable will be replaced with the
+# index of the stylesheet within its document like so: Inline #1
+changes.inlineStyleSheetLabel=%S แบบอินไลน์
+
+# LOCALIZATION NOTE (changes.elementStyleLabel): This label appears in the Changes
+# panel above changes done to element styles.
+changes.elementStyleLabel=อิลิเมนต์
+
+# LOCALIZATION NOTE (changes.iframeLabel): This label appears next to URLs of stylesheets
+# and element inline styles hosted by iframes. Lowercase intentional.
+changes.iframeLabel=iframe
+
+# LOCALIZATION NOTE (changes.contextmenu.copy): Label for "Copy" option in Changes panel
+# context menu
+changes.contextmenu.copy=คัดลอก
+
+# LOCALIZATION NOTE (changes.contextmenu.copy.accessKey): Access key for "Copy"
+# option in the Changes panel.
+changes.contextmenu.copy.accessKey=ค
+
+# LOCALIZATION NOTE (changes.contextmenu.copyAllChanges): Label for "Copy All Changes"
+# option in Changes panel context menu which copies all changed CSS declarations from a
+# stylesheet
+changes.contextmenu.copyAllChanges=คัดลอกการเปลี่ยนแปลงทั้งหมด
+
+# LOCALIZATION NOTE (changes.contextmenu.copyAllChangesDescription): Detailed explanation
+# for "Copy All Changes" option in Changes panel. Used as title attribute on "Copy All
+# Changes" button
+changes.contextmenu.copyAllChangesDescription=คัดลอกรายการการเปลี่ยนแปลง CSS ทั้งหมดไปยังคลิปบอร์ด
+
+# LOCALIZATION NOTE (changes.contextmenu.copyDeclaration): Label for "Copy Declaration"
+# option in Changes panel context menu which copies the target CSS declaration.
+changes.contextmenu.copyDeclaration=คัดลอกการประกาศ
+
+# LOCALIZATION NOTE (changes.contextmenu.copyRule): Label for "Copy Rule" option in
+# Changes panel context menu which copies the complete contents of a CSS rule.
+changes.contextmenu.copyRule=คัดลอกกฎ
+
+# LOCALIZATION NOTE (changes.contextmenu.copyRuleDescription): Detailed explanation for
+# "Copy Rule" option in Changes panel. Used as title attribute on "Copy Rule" button.
+changes.contextmenu.copyRuleDescription=คัดลอกเนื้อหาของกฎ CSS นี้ไปยังคลิปบอร์ด
+
+# LOCALIZATION NOTE (changes.contextmenu.selectAll): Label for "Select All" option in the
+# Changes panel context menu to select all text content.
+changes.contextmenu.selectAll=เลือกทั้งหมด
+
+# LOCALIZATION NOTE (changes.contextmenu.selectAll.accessKey): Access key for "Select All"
+# option in the Changes panel.
+changes.contextmenu.selectAll.accessKey=ล
diff --git a/l10n-th/devtools/client/compatibility.ftl b/l10n-th/devtools/client/compatibility.ftl
new file mode 100644
index 0000000000..d7018ed45a
--- /dev/null
+++ b/l10n-th/devtools/client/compatibility.ftl
@@ -0,0 +1,51 @@
+# 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/.
+
+
+## Messages used as headers in the main pane
+
+compatibility-selected-element-header = อิลิเมนต์ที่ถูกเลือก
+compatibility-all-elements-header = ปัญหาทั้งหมด
+
+## Message used as labels for the type of issue
+
+compatibility-issue-deprecated = (เลิกใช้)
+compatibility-issue-experimental = (ทดลอง)
+compatibility-issue-prefixneeded = (จำเป็นต้องใส่คำนำหน้า)
+compatibility-issue-deprecated-experimental = (เลิกใช้, ทดลอง)
+compatibility-issue-deprecated-prefixneeded = (เลิกใช้แล้ว และจำเป็นต้องใส่คำนำหน้า)
+compatibility-issue-experimental-prefixneeded = (เป็นคุณลักษณะทดลอง และจำเป็นต้องใส่คำนำหน้า)
+compatibility-issue-deprecated-experimental-prefixneeded = (เลิกใช้แล้ว เป็นคุณลักษณะทดลอง และจำเป็นต้องใส่คำนำหน้า)
+
+## Messages used as labels and titles for buttons in the footer
+
+compatibility-settings-button-label = การตั้งค่า
+compatibility-settings-button-title =
+ .title = การตั้งค่า
+
+## Messages used as headers in settings pane
+
+compatibility-settings-header = การตั้งค่า
+compatibility-target-browsers-header = เบราว์เซอร์เป้าหมาย
+
+##
+
+# Text used as the label for the number of nodes where the issue occurred
+# Variables:
+# $number (Number) - The number of nodes where the issue occurred
+compatibility-issue-occurrences =
+ { $number ->
+ *[other] { $number } ครั้งที่ปรากฏ
+ }
+compatibility-no-issues-found = ไม่พบปัญหาความเข้ากันได้
+compatibility-close-settings-button =
+ .title = ปิดการตั้งค่า
+# Text used in the element containing the browser icons for a given compatibility issue.
+# Line breaks are significant.
+# Variables:
+# $browsers (String) - A line-separated list of browser information (e.g. Firefox 98\nChrome 99).
+compatibility-issue-browsers-list =
+ .title =
+ มีปัญหาเกี่ยวกับความเข้ากันได้ใน:
+ { $browsers }
diff --git a/l10n-th/devtools/client/components.properties b/l10n-th/devtools/client/components.properties
new file mode 100644
index 0000000000..230e2528c7
--- /dev/null
+++ b/l10n-th/devtools/client/components.properties
@@ -0,0 +1,61 @@
+# 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 These strings are used in the shared React components,
+# so files in `devtools/client/shared/components/*`.
+
+# LOCALIZATION NOTE (frame.unknownSource): When we do not know the source filename of
+# a frame, we use this string instead.
+frame.unknownSource=(ไม่ทราบ)
+
+# LOCALIZATION NOTE (frame.viewsourceindebugger): The label for the tooltip when hovering over
+# a source link that links to the debugger.
+# %S represents the URL to match in the debugger.
+frame.viewsourceindebugger=ดูต้นฉบับในตัวดีบั๊ก → %S
+
+# LOCALIZATION NOTE (frame.viewsourceinstyleeditor): The label for the tooltip when hovering over
+# a source link that links to the Style Editor.
+# %S represents the URL to match in the style editor.
+frame.viewsourceinstyleeditor=ดูต้นฉบับในตัวแก้ไขสไตล์ → %S
+
+# LOCALIZATION NOTE (notificationBox.closeTooltip): The content of a tooltip that
+# appears when hovering over the close button in a notification box.
+notificationBox.closeTooltip=ปิดข้อความนี้
+
+# LOCALIZATION NOTE (appErrorBoundary.description): This is the information displayed
+# once the panel errors.
+# %S represents the name of panel which has the crash.
+appErrorBoundary.description=แผง %S ขัดข้อง
+
+# LOCALIZATION NOTE (appErrorBoundary.fileBugButton): This is the text that appears in
+# the button to visit the bug filing link.
+appErrorBoundary.fileBugButton=รายงานข้อบกพร่อง
+
+# LOCALIZATION NOTE (appErrorBoundary.reloadPanelInfo): This is the text that appears
+# after the panel errors to instruct the user to reload the panel.
+appErrorBoundary.reloadPanelInfo=ปิดและเปิดกล่องเครื่องมือใหม่เพื่อล้างข้อผิดพลาดนี้
+
+# LOCALIZATION NOTE(searchModifier.regExpModifier): A search option
+# when searching text in a file
+searchModifier.regExpModifier=ใช้นิพจน์ปกติ
+
+# LOCALIZATION NOTE(searchModifier.caseSensitiveModifier): A search option
+# when searching text in a file
+searchModifier.caseSensitiveModifier=เทียบตัวพิมพ์ใหญ่เล็ก
+
+# LOCALIZATION NOTE(searchModifier.wholeWordModifier): A search option
+# when searching text in a file
+searchModifier.wholeWordModifier=เทียบทั้งคำ
+
+# LOCALIZATION NOTE (searchBox.clearButtonTitle): The title of the SearchBox clear input
+# button, which is displayed when the input is not empty.
+searchBox.clearButtonTitle=ล้างการป้อนตัวกรอง
+
+# LOCALIZATION NOTE treeNode.collapseButtonTitle): The title of the Tree node toggle
+# button when the node is expanded.
+treeNode.collapseButtonTitle=ยุบ
+
+# LOCALIZATION NOTE treeNode.expandButtonTitle): The title of the Tree node toggle
+# button when the node is collapsed.
+treeNode.expandButtonTitle=ขยาย
diff --git a/l10n-th/devtools/client/debugger.properties b/l10n-th/devtools/client/debugger.properties
new file mode 100644
index 0000000000..8d5cd8b861
--- /dev/null
+++ b/l10n-th/devtools/client/debugger.properties
@@ -0,0 +1,1159 @@
+# 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 These strings are used inside the Debugger
+# which is available from the Browser Tools sub-menu -> 'Debugger'.
+# The correct localization of this file might be to keep it in
+# English, or another language commonly spoken among web developers.
+# You want to make that choice consistent across the developer tools.
+# A good criteria is the language in which you'd find the best
+# documentation on web development on the web.
+
+# LOCALIZATION NOTE (collapseSources): This is the tooltip for the button
+# that collapses the Sources and Outlines panes in the debugger UI.
+collapseSources=ยุบบานหน้าต่างแหล่งที่มาและเค้าร่าง
+
+# LOCALIZATION NOTE (collapseBreakpoints): This is the tooltip for the button
+# that collapses the Breakpoints panes in the debugger UI.
+collapseBreakpoints=ยุบบานหน้าต่างจุดพัก
+
+# LOCALIZATION NOTE (copyToClipboard.label): This is the text that appears in the
+# context menu to copy the text that the user selected.
+copyToClipboard.label=คัดลอกไปยังคลิปบอร์ด
+copyToClipboard.accesskey=ค
+
+# LOCALIZATION NOTE (copySource.label): This is the text that appears in the
+# context menu to copy all of the text in the open file.
+copySource.label=คัดลอกข้อความต้นฉบับ
+copySource.accesskey=ด
+
+# LOCALIZATION NOTE (copySourceUri2): This is the text that appears in the
+# context menu to copy the source URI of file open.
+copySourceUri2=คัดลอก URI ต้นฉบับ
+copySourceUri2.accesskey=ล
+
+# LOCALIZATION NOTE (collapseAll.label): This is the text that appears in the
+# context menu to collapse a directory and all of its subdirectories.
+collapseAll.label=ยุบทั้งหมด
+
+# LOCALIZATION NOTE (expandAll.label): This is the text that appears in the
+# context menu to expand a directory and all of its subdirectories.
+expandAll.label=ขยายทั้งหมด
+
+# LOCALIZATION NOTE (setDirectoryRoot.label): This is the text that appears in the
+# context menu to set a directory as root directory
+setDirectoryRoot.label=ตั้งค่าไดเรกทอรีราก
+setDirectoryRoot.accesskey=ต
+
+# LOCALIZATION NOTE (removeDirectoryRoot.label): This is the text that appears in the
+# context menu to remove a directory as root directory
+removeDirectoryRoot.label=เอาไดเรกทอรีรากออก
+
+# LOCALIZATION NOTE (ignoreAll.label): Text associated with the ignore context menu item
+ignoreAll.label=เพิกเฉย
+
+# LOCALIZATION NOTE (ignoreAllInGroup.label): This is the text that appears in the
+# context submenu to ignore all files inside of the selected group
+ignoreAllInGroup.label=เพิกเฉยไฟล์ที่อยู่ในกลุ่มนี้
+
+# LOCALIZATION NOTE (unignoreAllInGroup.label): This is the text that appears in the
+# context submenu to unignore all files inside of the selected group
+unignoreAllInGroup.label=เลิกเพิกเฉยไฟล์ที่อยู่ในกลุ่มนี้
+
+# LOCALIZATION NOTE (ignoreAllOutsideGroup.label): This is the text that appears in the
+# context submenu to ignore all files outside of the selected group
+ignoreAllOutsideGroup.label=เพิกเฉยไฟล์ที่อยู่นอกกลุ่มนี้
+
+# LOCALIZATION NOTE (unignoreAllOutsideGroup.label): This is the text that appears in the
+# context submenu to unignore all files outside of the selected group
+unignoreAllOutsideGroup.label=เลิกเพิกเฉยไฟล์ที่อยู่นอกกลุ่มนี้
+
+# LOCALIZATION NOTE (ignoreAllInDir.label): This is the text that appears in the
+# context submenu to ignore all files inside of the selected directory
+ignoreAllInDir.label=เพิกเฉยไฟล์ที่อยู่ในไดเรกทอรีนี้
+
+# LOCALIZATION NOTE (unignoreAllInDir.label): This is the text that appears in the
+# context submenu to unignore all files inside of the selected directory
+unignoreAllInDir.label=เลิกเพิกเฉยไฟล์ที่อยู่ในไดเรกทอรีนี้
+
+# LOCALIZATION NOTE (ignoreAllOutsideDir.label): This is the text that appears in the
+# context submenu to ignore all files outside of the selected directory
+ignoreAllOutsideDir.label=เพิกเฉยไฟล์ที่อยู่นอกไดเรกทอรีนี้
+
+# LOCALIZATION NOTE (unignoreAllOutsideDir.label: This is the text that appears in the
+# context submenu to unignore all files outside of the selected directory
+unignoreAllOutsideDir.label=เลิกเพิกเฉยไฟล์ที่อยู่นอกไดเรกทอรีนี้
+
+# LOCALIZATION NOTE (copyFunction.label): This is the text that appears in the
+# context menu to copy the function the user selected
+copyFunction.label=คัดลอกฟังก์ชัน
+copyFunction.accesskey=อ
+
+# LOCALIZATION NOTE (copyStackTrace): This is the text that appears in the
+# context menu to copy the stack trace methods, file names and row number.
+copyStackTrace=คัดลอกการติดตามสแตก
+copyStackTrace.accesskey=ค
+
+# LOCALIZATION NOTE (restartFrame): This is the text that appears in the
+# context menu to restart a frame.
+restartFrame=เริ่มเฟรมใหม่
+restartFrame.accesskey=r
+
+# LOCALIZATION NOTE (expandSources): This is the tooltip for the button
+# that expands the Sources and Outlines panes in the debugger UI.
+expandSources=ขยายบานหน้าต่างแหล่งที่มาและเค้าร่าง
+
+# LOCALIZATION NOTE (expandBreakpoints): This is the tooltip for the button
+# that expands the Breakpoints panes in the debugger UI.
+expandBreakpoints=ขยายบานหน้าต่างจุดพัก
+
+# LOCALIZATION NOTE (evaluateInConsole.label): Editor right-click menu item
+# to execute selected text in browser console.
+evaluateInConsole.label=ประเมินในคอนโซล
+
+# LOCALIZATION NOTE (pauseButtonTooltip): The tooltip that is displayed for the pause
+# button when the debugger is in a running state.
+pauseButtonTooltip=คลิกเพื่อหยุดชั่วคราว (%S)
+
+# LOCALIZATION NOTE (pausePendingButtonTooltip): The tooltip that is displayed for
+# the pause button after it's been clicked but before the next JavaScript to run.
+pausePendingButtonTooltip=กำลังรอการดำเนินการถัดไป
+
+# LOCALIZATION NOTE (startTraceButtonTooltip): The label that is displayed on the trace
+# button in the top of the debugger right sidebar. %S is for the log output location (webconsole or stdout).
+startTraceButtonTooltip=ติดตามเฟรม JavaScript ทั้งหมดไปที่ %S\nคลิกขวาเพื่อเปลี่ยนผลลัพธ์
+
+# LOCALIZATION NOTE (stopTraceButtonTooltip): The label that is displayed on the trace
+# button in the top of the debugger right sidebar. This label is only displayed when we are current tracing
+# JavaScript.
+stopTraceButtonTooltip=หยุดติดตามเฟรม JavaScript
+
+# LOCALIZATION NOTE (startTraceButtonTooltip): The label that is displayed on the trace
+# button in the top of the debugger right sidebar.
+# %1$S is for the key shortcut
+# %2$S is for the log output location (webconsole or stdout).
+startTraceButtonTooltip2=ติดตามเฟรม JavaScript ทั้งหมดไปที่ %2$S (%1$S)\nคลิกขวาเพื่อเปลี่ยนผลลัพธ์
+
+# LOCALIZATION NOTE (stopTraceButtonTooltip): The label that is displayed on the trace
+# button in the top of the debugger right sidebar. This label is only displayed when we are current tracing
+# JavaScript.
+# %S is for the key shortcut
+stopTraceButtonTooltip2=หยุดติดตามเฟรม JavaScript (%S)
+
+# LOCALIZATION NOTE (traceInWebConsole): The label that is displayed in the context menu
+# of the trace button, which is in the top of the debugger right sidebar.
+# This is used to force logging JavaScript traces in the Web Console.
+traceInWebConsole=ติดตามในคอนโซลเว็บ
+
+# LOCALIZATION NOTE (traceInWebConsole): The label that is displayed in the context menu
+# of the trace button, which is in the top of the debugger right sidebar.
+# This is used to force logging JavaScript traces in the stdout.
+traceInStdout=ติดตามใน stdout
+
+# LOCALIZATION NOTE (traceValues): The label that is displayed in the context menu
+# of the trace button, which is in the top of the debugger right sidebar.
+# This is used to enable logging arguments passed to function calls
+# as well as returned values (only for JS function calls, but not native function calls)
+traceValues=บันทึกอาร์กิวเมนต์ของฟังก์ชันและค่าที่ส่งกลับลงปูม
+
+# LOCALIZATION NOTE (traceOnNextLoad): The label that is displayed in the context menu
+# of the trace button, which is in the top of the debugger right sidebar.
+# This is used to automatically start the tracing on next user interaction (mousedown/keydown)
+traceOnNextInteraction=ตามรอยเมื่อมีการโต้ตอบจากผู้ใช้ครั้งถัดไปเท่านั้น (mousedown/keydown)
+
+# LOCALIZATION NOTE (resumeButtonTooltip): The label that is displayed on the pause
+# button when the debugger is in a paused state.
+resumeButtonTooltip=คลิกเพื่อทำต่อ (%S)
+
+# LOCALIZATION NOTE (stepOverTooltip): The label that is displayed on the
+# button that steps over a function call.
+stepOverTooltip=ก้าวข้าม (%S)
+
+# LOCALIZATION NOTE (stepInTooltip): The label that is displayed on the
+# button that steps into a function call.
+stepInTooltip=ก้าวเข้า (%S)
+
+# LOCALIZATION NOTE (stepOutTooltip): The label that is displayed on the
+# button that steps out of a function call.
+stepOutTooltip=ก้าวออก (%S)
+
+# LOCALIZATION NOTE (skipPausingTooltip.label): The tooltip text for disabling all
+# breakpoints and pausing triggers
+skipPausingTooltip.label=ปิดใช้งานจุดพัก
+
+# LOCALIZATION NOTE (undoSkipPausingTooltip.label): The tooltip text for enabling all
+# breakpoints and pausing triggers
+undoSkipPausingTooltip.label=เปิดใช้งานจุดพัก
+
+# LOCALIZATION NOTE (pauseOnDebuggerStatement): The pause on debugger statement checkbox label
+pauseOnDebuggerStatement=หยุดชั่วคราวที่คำสั่งของตัวดีบั๊ก
+
+# LOCALIZATION NOTE (pauseOnExceptionsItem2): The pause on exceptions checkbox description
+# when the debugger will pause on all exceptions.
+pauseOnExceptionsItem2=หยุดชั่วคราวที่ข้อยกเว้น
+
+# LOCALIZATION NOTE (pauseOnCaughtExceptionsItem): The pause on exceptions checkbox description
+# when the debugger should pause on caught exceptions
+pauseOnCaughtExceptionsItem=หยุดชั่วคราวที่ข้อยกเว้นที่จับ
+
+# LOCALIZATION NOTE (threadsHeader): The text to describe the threads header
+threadsHeader=เธรด
+
+# LOCALIZATION NOTE (mainThread): The text to describe the thread of the
+# program as opposed to worker threads.
+mainThread=เธรดหลัก
+
+# LOCALIZATION NOTE (pausedThread): The text to describe the status of paused threads
+pausedThread=ถูกหยุดชั่วคราว
+
+# LOCALIZATION NOTE (noSourcesText): The text to display in the sources list
+# when there are no sources.
+noSourcesText=หน้านี้ไม่มีแหล่งที่มา
+
+# LOCALIZATION NOTE (ignoredSourcesHidden): Notification message displayed in the
+# sources list footer when ignored sources are hidden.
+ignoredSourcesHidden=ต้นฉบับที่ละเลยถูกซ่อนไว้
+
+# LOCALIZATION NOTE (showIgnoredSources): Notification button displayed in the
+# source next to the "ignored sources are hidden" string. Clicking on this link
+# shows all the ignored sources which are currently hidden.
+showIgnoredSources=แสดงต้นฉบับทั้งหมด
+
+# LOCALIZATION NOTE (showIgnoredSources.tooltip.label): Message displayed in the tooltip of the notification
+# link displayed in the sources list footer when ignored sources are hidden.
+showIgnoredSources.tooltip.label=แสดงต้นฉบับที่ละเลยทั้งหมด (ซึ่งถูกซ่อนในขณะนี้) ในทรี
+
+# LOCALIZATION NOTE (eventListenersHeader1): The text to display in the events
+# header.
+eventListenersHeader1=จุดพักตัวฟังเหตุการณ์
+
+# LOCALIZATION NOTE (noDomMutationBreakpoints): The text to
+# display in the DOM Mutation Breakpoints pane when there are no events.
+# %S will be replaced by an active link using inspectorTool as text
+noDomMutationBreakpoints=คลิกขวาอิลิเมนต์ใน %S และเลือก “พักเมื่อ…” เพื่อเพิ่มจุดพัก
+
+# LOCALIZATION NOTE (inspectorTool): The text to describe the the Inspector tool
+inspectorTool=ตัวตรวจสอบ
+
+# LOCALIZATION NOTE (eventListenersHeader1.placeholder): The placeholder text in
+# the event search input bar
+eventListenersHeader1.placeholder=กรองตามประเภทเหตุการณ์
+
+# LOCALIZATION NOTE (domMutationHeader): The text to display in the
+# DOM Mutation Breakpoints header
+domMutationHeader=จุดพัก DOM Mutation
+
+# LOCALIZATION NOTE (domMutationTypes.attribute): The text to display in the
+# DOM Mutation Breakpoints panel for an attribute change
+domMutationTypes.attribute=การปรับเปลี่ยนแอตทริบิวต์
+
+# LOCALIZATION NOTE (domMutationTypes.removal): The text to display in the
+# DOM Mutation Breakpoints panel for a DOM node removal
+domMutationTypes.removal=การเอาโหนดออก
+
+# LOCALIZATION NOTE (domMutationTypes.subtree): The text to display in the
+# DOM Mutation Breakpoints panel for a DOM subtree change
+domMutationTypes.subtree=การปรับเปลี่ยนทรีย่อย
+
+# LOCALIZATION NOTE (sources.search.key2): Key shortcut to open the search for
+# searching all the source files the debugger has seen.
+# Do not localize "CmdOrCtrl+P", or change the format of the string. These are
+# key identifiers, not messages displayed to the user.
+sources.search.key2=CmdOrCtrl+P
+
+# LOCALIZATION NOTE (sources.search.alt.key): A second key shortcut to open the
+# search for searching all the source files the debugger has seen.
+# Do not localize "CmdOrCtrl+O", or change the format of the string. These are
+# key identifiers, not messages displayed to the user.
+sources.search.alt.key=CmdOrCtrl+O
+
+# LOCALIZATION NOTE (projectTextSearch.key): A key shortcut to open the
+# full project text search for searching all the files the debugger has seen.
+# Do not localize "CmdOrCtrl+Shift+F", or change the format of the string. These are
+# key identifiers, not messages displayed to the user.
+projectTextSearch.key=CmdOrCtrl+Shift+F
+
+# LOCALIZATION NOTE (allShortcut.key): A key shortcut to open the
+# modal of full shortcuts list.
+# Do not localize "CmdOrCtrl+/", or change the format of the string. These are
+# key identifiers, not messages displayed to the user.
+allShortcut.key=CmdOrCtrl+/
+
+# LOCALIZATION NOTE (functionSearch.key): A key shortcut to open the
+# modal for searching functions in a file.
+# Do not localize "CmdOrCtrl+Shift+O", or change the format of the string. These are
+# key identifiers, not messages displayed to the user.
+functionSearch.key=CmdOrCtrl+Shift+O
+
+# LOCALIZATION NOTE (toggleBreakpoint.key): A key shortcut to toggle
+# breakpoints.
+# Do not localize "CmdOrCtrl+B", or change the format of the string. These are
+# key identifiers, not messages displayed to the user.
+toggleBreakpoint.key=CmdOrCtrl+B
+
+# LOCALIZATION NOTE (toggleCondPanel.breakpoint.key): A key shortcut to toggle
+# the conditional panel for breakpoints.
+# Do not localize "CmdOrCtrl+Shift+B", or change the format of the string. These are
+# key identifiers, not messages displayed to the user.
+toggleCondPanel.breakpoint.key=CmdOrCtrl+Shift+B
+
+# LOCALIZATION NOTE (toggleCondPanel.logPoint.key): A key shortcut to toggle
+# the conditional panel for log points.
+# Do not localize "CmdOrCtrl+Shift+Y", or change the format of the string. These are
+# key identifiers, not messages displayed to the user.
+toggleCondPanel.logPoint.key=CmdOrCtrl+Shift+Y
+
+# LOCALIZATION NOTE (stepOut.key): A key shortcut to
+# step out.
+stepOut.key=Shift+F11
+
+# LOCALIZATION NOTE (shortcuts.header.editor): Sections header in
+# the shortcuts modal for keyboard shortcuts related to editing.
+shortcuts.header.editor=ตัวแก้ไข
+
+# LOCALIZATION NOTE (shortcuts.header.stepping): Sections header in
+# the shortcuts modal for keyboard shortcuts related to stepping.
+shortcuts.header.stepping=การก้าว
+
+# LOCALIZATION NOTE (shortcuts.header.search): Sections header in
+# the shortcuts modal for keyboard shortcuts related to search.
+shortcuts.header.search=ค้นหา
+
+# LOCALIZATION NOTE (projectTextSearch.placeholder): A placeholder shown
+# when searching across all of the files in a project.
+projectTextSearch.placeholder=ค้นหาในไฟล์…
+
+# LOCALIZATION NOTE (projectTextSearch.excludePatterns.label): A label shown
+# above the exclude patterns field when searching across all of the files in a project.
+projectTextSearch.excludePatterns.label=ไฟล์ที่จะไม่รวม
+
+# LOCALIZATION NOTE (projectTextSearch.excludePatterns.placeholder): A placeholder shown
+# for the exclude patterns field when searching across all of the files in a project.
+projectTextSearch.excludePatterns.placeholder=เช่น **/node_modules/**,app.js
+
+# LOCALIZATION NOTE (projectTextSearch.noResults): The center pane Text Search
+# message when the query did not match any text of all files in a project.
+projectTextSearch.noResults=ไม่พบผลลัพธ์
+
+# LOCALIZATION NOTE (projectTextSearch.pageNavigated): Tooltip shown on the refresh
+# button, only when it is highlighted because the page navigated to a new document
+# and the results might be obsolete.
+projectTextSearch.refreshButtonTooltip=คลิกเพื่อเรียกผลการค้นหาใหม่
+
+# LOCALIZATION NOTE (projectTextSearch.pageNavigated): Tooltip shown on the refresh
+# button, only when it is highlighted because the page navigated to a new document
+# and the results might be obsolete.
+projectTextSearch.refreshButtonTooltipOnNavigation=หน้านี้นำทางไปยังเอกสารใหม่ คลิกเพื่อเรียกผลการค้นหาใหม่
+
+# LOCALIZATION NOTE (projectTextSearch.sourceNoLongerAvailable): Tooltip message shown
+# on Text Search results when the related source no longer exists.
+# This typically happens after navigating or reloading the page and search results are obsolete.
+projectTextSearch.sourceNoLongerAvailable=ซอร์สนี้ไม่สามารถใช้ได้อีกต่อไป\nเรียกข้อมูลการค้นหาใหม่เพื่อให้ได้ซอร์สล่าสุด
+
+# LOCALIZATION NOTE (sourceSearch.search.key2): Key shortcut to open the search
+# for searching within a the currently opened files in the editor
+# Do not localize "CmdOrCtrl+F", or change the format of the string. These are
+# key identifiers, not messages displayed to the user.
+sourceSearch.search.key2=CmdOrCtrl+F
+
+# LOCALIZATION NOTE (sourceSearch.search.placeholder): placeholder text in
+# the source search input bar
+sourceSearch.search.placeholder=ค้นหาในไฟล์…
+
+# LOCALIZATION NOTE (sourceSearch.search.placeholder2): placeholder text in
+# the source search input bar
+sourceSearch.search.placeholder2=ค้นหาในไฟล์…
+
+# LOCALIZATION NOTE (sourceSearch.resultsSummary2): Semi-colon list of plural forms.
+# See: http://developer.mozilla.org/en/docs/Localization_and_Plurals
+# Shows a summary of the number of matches for autocomplete
+sourceSearch.resultsSummary2=#1 ผลลัพธ์
+
+# LOCALIZATION NOTE (breakpointHeadingMenuItem.*): The text for all the elements
+# that are displayed in the breakpoint headings menu item popup.
+breakpointHeadingsMenuItem.enableInSource.label=เปิดใช้งานจุดพัก
+breakpointHeadingsMenuItem.enableInSource.accesskey=ป
+breakpointHeadingsMenuItem.disableInSource.label=ปิดใช้งานจุดพัก
+breakpointHeadingsMenuItem.disableInSource.accesskey=ป
+breakpointHeadingsMenuItem.removeInSource.label=เอาจุดพักออก
+breakpointHeadingsMenuItem.removeInSource.accesskey=อ
+
+# LOCALIZATION NOTE (breakpointMenuItem): The text for all the elements that
+# are displayed in the breakpoints menu item popup.
+breakpointMenuItem.enableSelf2.label=เปิดใช้งาน
+breakpointMenuItem.enableSelf2.accesskey=ป
+breakpointMenuItem.disableSelf2.label=ปิดใช้งาน
+breakpointMenuItem.disableSelf2.accesskey=ป
+breakpointMenuItem.deleteSelf2.label=เอาออก
+breakpointMenuItem.deleteSelf2.accesskey=อ
+breakpointMenuItem.disabledbg.label=ไม่ต้องพักที่นี่
+breakpointMenuItem.enabledbg.label=พักที่นี่
+breakpointMenuItem.enableOthers2.label=เปิดใช้งานอื่น ๆ
+breakpointMenuItem.enableOthers2.accesskey=ด
+breakpointMenuItem.disableOthers2.label=ปิดใช้งานอื่น ๆ
+breakpointMenuItem.disableOthers2.accesskey=ด
+breakpointMenuItem.deleteOthers2.label=เอาอื่น ๆ ออก
+breakpointMenuItem.deleteOthers2.accesskey=น
+breakpointMenuItem.enableAll2.label=เปิดใช้งานทั้งหมด
+breakpointMenuItem.enableAll2.accesskey=ช
+breakpointMenuItem.disableAll2.label=ปิดใช้งานทั้งหมด
+breakpointMenuItem.disableAll2.accesskey=ช
+breakpointMenuItem.deleteAll2.label=เอาทั้งหมดออก
+breakpointMenuItem.deleteAll2.accesskey=อ
+breakpointMenuItem.removeCondition2.label=เอาเงื่อนไขออก
+breakpointMenuItem.removeCondition2.accesskey=อ
+breakpointMenuItem.addCondition2.label=เพิ่มเงื่อนไข
+breakpointMenuItem.addCondition2.accesskey=พ
+breakpointMenuItem.editCondition2.label=แก้ไขเงื่อนไข
+breakpointMenuItem.editCondition2.accesskey=ก
+breakpointMenuItem.enableSelf=เปิดใช้งานจุดพัก
+breakpointMenuItem.disableSelf=ปิดใช้งานจุดพัก
+breakpointMenuItem.deleteSelf=เอาจุดพักออก
+breakpointMenuItem.enableOthers=เปิดใช้งานอื่น ๆ
+breakpointMenuItem.disableOthers=ปิดใช้งานอื่น ๆ
+breakpointMenuItem.deleteOthers=เอาอื่น ๆ ออก
+breakpointMenuItem.enableAll=เปิดใช้งานจุดพักทั้งหมด
+breakpointMenuItem.disableAll=ปิดใช้งานจุดพักทั้งหมด
+breakpointMenuItem.deleteAll=เอาจุดพักทั้งหมดออก
+breakpointMenuItem.disableAllAtLine.label=ปิดใช้งานจุดพักบนบรรทัด
+breakpointMenuItem.disableAllAtLine.accesskey=ป
+breakpointMenuItem.enableAllAtLine.label=เปิดใช้งานจุดพักบนบรรทัด
+breakpointMenuItem.enableAllAtLine.accesskey=ป
+breakpointMenuItem.removeAllAtLine.label=เอาจุดพักบนบรรทัดออก
+breakpointMenuItem.removeAllAtLine.accesskey=อ
+
+# LOCALIZATION NOTE (breakpoints.header): Breakpoints right sidebar pane header.
+breakpoints.header=จุดพัก
+
+# LOCALIZATION NOTE (breakpoints.removeBreakpointTooltip): The tooltip that is displayed
+# for remove breakpoint button in right sidebar
+breakpoints.removeBreakpointTooltip=เอาจุดพักออก
+
+# LOCALIZATION NOTE (callStack.header): Call Stack right sidebar pane header.
+callStack.header=สแตกการเรียก
+
+# LOCALIZATION NOTE (callStack.notPaused): Call Stack right sidebar pane
+# message when not paused.
+callStack.notPaused=ไม่ได้หยุดชั่วคราว
+
+# LOCALIZATION NOTE (callStack.collapse): Call Stack right sidebar pane
+# message to hide some of the frames that are shown.
+callStack.collapse=ยุบแถว
+
+# LOCALIZATION NOTE (callStack.expand): Call Stack right sidebar pane
+# message to show more of the frames.
+callStack.expand=ขยายแถว
+
+# LOCALIZATION NOTE (callStack.group.expandTooltip): The text that will appear
+# when hovering a collapsed Group of frames in the callStack panel. `frames` is
+# always plural since a group can only exist if it contain more that 1 frame.
+# %S is replaced by the name of the library of the frames in the group.
+# example: `Show React frames`.
+callStack.group.expandTooltip=แสดงเฟรม %S
+
+# LOCALIZATION NOTE (callStack.group.collapseTooltip): The text that will appear
+# when hovering an expanded Group of frames in the callStack panel. `frames` is
+# always plural since a group can only exist if it contain more that 1 frame.
+# %S is replaced by the name of the library of the frames in the group.
+# example: `Collapse React frames`.
+callStack.group.collapseTooltip=ยุบเฟรม %S
+
+# LOCALIZATION NOTE (editor.searchResults1): Semi-colon list of plural forms.
+# See: http://developer.mozilla.org/en/docs/Localization_and_Plurals
+# Editor Search bar message to summarize the selected search result. e.g. 5 of 10 results.
+editor.searchResults1=%d จาก #1 ผลลัพธ์
+
+# LOCALIZATION NOTE (editor.noResultsFound): Editor Search bar message
+# for when no results found.
+editor.noResultsFound=ไม่พบผลลัพธ์
+
+# LOCALIZATION NOTE (editor.searchResults.nextResult): Editor Search bar
+# tooltip for traversing to the Next Result
+editor.searchResults.nextResult=ผลลัพธ์ถัดไป
+
+# LOCALIZATION NOTE (editor.searchResults.prevResult): Editor Search bar
+# tooltip for traversing to the Previous Result
+editor.searchResults.prevResult=ผลลัพธ์ก่อนหน้า
+
+# LOCALIZATION NOTE (editor.continueToHere.label): Editor gutter context
+# menu item for jumping to a new paused location
+editor.continueToHere.label=ดำเนินการต่อไปยังที่นี่
+editor.continueToHere.accesskey=น
+
+# LOCALIZATION NOTE (editor.addBreakpoint): Editor gutter context menu item
+# for adding a breakpoint on a line.
+editor.addBreakpoint=เพิ่มจุดพัก
+
+# LOCALIZATION NOTE (editor.disableBreakpoint): Editor gutter context menu item
+# for disabling a breakpoint on a line.
+editor.disableBreakpoint=ปิดใช้งานจุดพัก
+editor.disableBreakpoint.accesskey=ป
+
+# LOCALIZATION NOTE (editor.enableBreakpoint): Editor gutter context menu item
+# for enabling a breakpoint on a line.
+editor.enableBreakpoint=เปิดใช้งานจุดพัก
+
+# LOCALIZATION NOTE (editor.removeBreakpoint): Editor gutter context menu item
+# for removing a breakpoint on a line.
+editor.removeBreakpoint=เอาจุดพักออก
+
+# LOCALIZATION NOTE (editor.addConditionBreakpoint): Editor gutter context
+# menu item for adding a breakpoint condition on a line.
+editor.addConditionBreakpoint=เพิ่มเงื่อนไข
+editor.addConditionBreakpoint.accesskey=พ
+
+# LOCALIZATION NOTE (editor.editConditionBreakpoint): Editor gutter context menu item
+# for setting a breakpoint condition on a line.
+editor.editConditionBreakpoint=แก้ไขเงื่อนไข
+
+# LOCALIZATION NOTE (editor.addLogPoint): Editor gutter context
+# menu item for adding a log point on a line.
+editor.addLogPoint=เพิ่มรายการบันทึก
+editor.addLogPoint.accesskey=ม
+
+# LOCALIZATION NOTE (editor.editLogPoint): Editor gutter context menu item
+# for editing a log point already set on a line.
+editor.editLogPoint=แก้ไขรายการบันทึก
+editor.editLogPoint.accesskey=ก
+
+# LOCALIZATION NOTE (editor.removeLogPoint): Context menu item for removing
+# a log point on a line.
+editor.removeLogPoint.label=เอารายการบันทึกออก
+editor.removeLogPoint.accesskey=อ
+
+# LOCALIZATION NOTE (editor.conditionalPanel.placeholder2): Placeholder text for
+# input element inside ConditionalPanel component
+editor.conditionalPanel.placeholder2=เงื่อนไขของจุดพัก เช่น items.length > 0
+
+# LOCALIZATION NOTE (editor.conditionalPanel.logPoint.placeholder2): Placeholder text for
+# input element inside ConditionalPanel component when a log point is set
+editor.conditionalPanel.logPoint.placeholder2=ข้อความรายการบันทึก เช่น displayName
+
+# LOCALIZATION NOTE (editor.jumpToMappedLocation1): Context menu item
+# for navigating to a source mapped location
+editor.jumpToMappedLocation1=กระโดดไปยังตำแหน่ง %S
+editor.jumpToMappedLocation1.accesskey=ก
+
+# LOCALIZATION NOTE (downloadFile.label): Context menu item
+# for downloading a source's content
+downloadFile.label=ดาวน์โหลดไฟล์
+downloadFile.accesskey=ด
+
+# LOCALIZATION NOTE (inlinePreview.show.label): Context menu item
+# for showing the inline preview blocks
+inlinePreview.show.label=แสดงตัวอย่างแบบอินไลน์
+
+# LOCALIZATION NOTE (inlinePreview.hide.label): Context menu item
+# for hiding the inline preview block
+inlinePreview.hide.label=ซ่อนตัวอย่างแบบอินไลน์
+
+# LOCALIZATION NOTE (inlinePreview.toggle.label): Context menu item
+# that will toggle display of inline preview
+inlinePreview.toggle.label=แสดงตัวอย่างตัวแปรแบบอินไลน์
+
+# LOCALIZATION NOTE (inlinePreview.toggle.tooltip): Context menu item
+# tooltip that will describe toggling inline preview
+inlinePreview.toggle.tooltip=แสดงตัวอย่างแบบอินไลน์ในตัวแก้ไขตัวดีบั๊ก
+
+# LOCALIZATION NOTE (editorWrapping.show.label): Context menu item
+# for showing the wrap lines block
+editorWrapping.show.label=ตัดบรรทัด
+
+# LOCALIZATION NOTE (editorWrapping.hide.label): Context menu item
+# for showing the wrap lines block
+editorWrapping.hide.label=เลิกตัดบรรทัด
+
+# LOCALIZATION NOTE (editorWrapping.toggle.label): Context menu item
+# label for toggling the lines wrapping feature
+editorWrapping.toggle.label=ตัดบรรทัด
+
+# LOCALIZATION NOTE (editorWrapping.toggle.tooltip): Context menu item
+# tooltip for toggling the lines wrapping feature
+editorWrapping.toggle.tooltip=ตัดบรรทัดในตัวแก้ไขตัวดีบั๊ก
+
+# LOCALIZATION NOTE (settings.button.label): Label for Settings button
+settings.button.label=การตั้งค่าตัวดีบั๊ก
+
+# LOCALIZATION NOTE (settings.disableJavaScript.label): Context menu item
+# label for disabling JavaScript
+settings.disableJavaScript.label=ปิดใช้งาน JavaScript
+
+# LOCALIZATION NOTE (settings.disableJavaScript.tooltip): Context menu item
+# tooltip for disabling JavaScript
+settings.disableJavaScript.tooltip=ปิดใช้งาน JavaScript (ต้องเรียกใหม่)
+
+# LOCALIZATION NOTE (settings.toggleSourceMaps.tooltip): Context menu item
+# tooltip for toggling the source maps feature
+settings.toggleSourceMaps.tooltip=เปิดใช้งานการแมปต้นฉบับเพื่อให้ DevTools โหลดต้นฉบับเดิมของคุณนอกเหนือจากที่คุณสร้างไว้
+
+# LOCALIZATION NOTE (settings.toggleSourceMaps.label): Context menu item
+# label for toggling the source maps feature
+settings.toggleSourceMaps.label=การแมปต้นฉบับ
+
+# LOCALIZATION NOTE (settings.hideIgnoredSources.tooltip): Context menu item
+# tooltip for hiding and showing all the ignored sources
+settings.hideIgnoredSources.tooltip=ซ่อนต้นฉบับที่ละเลยทั้งหมดในแผง ต้นฉบับ
+
+# LOCALIZATION NOTE (settings.hideIgnoredSources.label): Context menu item
+# label for hiding all ignored sources when enabled (indicated by the check mark)
+# Ignored sources will be shown when disabled (no check mark).
+settings.hideIgnoredSources.label=ซ่อนต้นฉบับที่ละเลย
+
+# LOCALIZATION NOTE (settings.enableSourceMapIgnoreList.tooltip): Context menu item
+# tooltip for ignoring all sources on the sourcemaps ignore list.
+# Note: x_google_ignoreList should not be translated.
+settings.enableSourceMapIgnoreList.tooltip=ละเลยต้นฉบับทั้งหมดในฟิลด์ x_google_ignoreList ของแมปต้นฉบับ
+
+# LOCALIZATION NOTE (settings.enableSourceMapIgnoreList.label): Context menu item
+# label for ignoring all sources on the sourcemaps ignore list when enabled
+# (indicated by the check mark). The sources on the ignore list are un-ignored
+# when disabled (no check mark).
+# Note: Make sure to also keep 'sourceFooter.ignoreList' in sync when this changes
+settings.enableSourceMapIgnoreList.label=ละเลยสคริปต์บุคคลที่สามที่รู้จัก
+
+# LOCALIZATION NOTE (preview.noProperties): Label shown in the preview
+# popup when there are no properties to show.
+preview.noProperties=ไม่มีคุณสมบัติ
+
+# LOCALIZATION NOTE (framework.disableGrouping): This is the text that appears in the
+# context menu to disable framework grouping.
+framework.disableGrouping=ปิดใช้งานการจัดกลุ่มเฟรมเวิร์ก
+framework.disableGrouping.accesskey=ฟ
+
+# LOCALIZATION NOTE (framework.enableGrouping): This is the text that appears in the
+# context menu to enable framework grouping.
+framework.enableGrouping=เปิดใช้งานการจัดกลุ่มเฟรมเวิร์ก
+framework.enableGrouping.accesskey=ฟ
+
+# LOCALIZATION NOTE (generated): Source Map term for a server source location
+generated=ที่สร้างขึ้น
+
+# LOCALIZATION NOTE (original): Source Map term for a debugger UI source location
+original=ต้นฉบับ
+
+# LOCALIZATION NOTE (expressions.placeholder): Placeholder text for expression
+# input element
+expressions.placeholder=เพิ่มการดูนิพจน์
+
+# LOCALIZATION NOTE (expressions.noOriginalScopes): Expressions right sidebar pane message
+# for when the`map variable names`is off and the debugger is paused in an original source
+expressions.noOriginalScopes=การแมปชื่อตัวแปรแบบดั้งเดิมถูกปิด ค่านิพจน์อาจไม่แม่นยำ
+
+# LOCALIZATION NOTE (expressions.errorMsg): Error text for expression
+# input element
+expressions.errorMsg=นิพจน์ไม่ถูกต้อง…
+expressions.label=เพิ่มการดูนิพจน์
+expressions.accesskey=พ
+expressions.remove.tooltip=เอาการดูนิพจน์ออก
+
+# LOCALIZATION NOTE (xhrBreakpoints.header): The pause on any XHR breakpoints headings
+xhrBreakpoints.header=จุดพัก XHR
+xhrBreakpoints.placeholder=พักเมื่อ URL มี
+xhrBreakpoints.label=เพิ่มจุดพัก XHR
+
+# LOCALIZATION NOTE (xhrBreakpoints.removeAll.tooltip): For the `Remove all XHR breakpoints' button in the header of the XHR breakpoints panel
+xhrBreakpoints.removeAll.tooltip=เอาจุดหยุด XHR ทั้งหมดออก
+
+
+# LOCALIZATION NOTE (xhrBreakpoints.item.label): message displayed when reaching a breakpoint for XHR requests. %S is replaced by the path provided as condition for the breakpoint.
+xhrBreakpoints.item.label=URL มี “%S”
+
+# LOCALIZATION NOTE (pauseOnAnyXHR): The pause on any XHR checkbox description
+# when the debugger will pause on any XHR requests.
+pauseOnAnyXHR=หยุดชั่วคราวที่ URL ใด ๆ
+
+# LOCALIZATION NOTE (watchpoints.submenu): This is the text for the watchpoints sub-menu.
+watchpoints.submenu=พักเมื่อ…
+
+# LOCALIZATION NOTE (watchpoints.getWatchpoint): This is the text that appears in the
+# watchpoints sub-menu to add a "get" watchpoint on an object property.
+watchpoints.getWatchpoint=การรับคุณสมบัติ
+
+# LOCALIZATION NOTE (watchpoints.setWatchpoint): This is the text that appears in the
+# watchpoints submenu to add a "set" watchpoint on an object property.
+watchpoints.setWatchpoint=การตั้งคุณสมบัติ
+
+# LOCALIZATION NOTE (watchpoints.getOrSetWatchpoint): This is the text that appears in the
+# watchpoints submenu to add a "set" watchpoint on an object property.
+watchpoints.getOrSetWatchpoint=การรับหรือตั้งคุณสมบัติ
+
+# LOCALIZATION NOTE (watchpoints.removeWatchpoint): This is the text that appears in the
+# context menu to delete a watchpoint on an object property.
+watchpoints.removeWatchpoint=เอาจุดเฝ้าดูออก
+
+# LOCALIZATION NOTE (watchpoints.removeWatchpointTooltip): This is the text that appears in the
+# tooltip to delete a watchpoint on an object property.
+watchpoints.removeWatchpointTooltip=ลบจุดเฝ้าดู
+
+# LOCALIZATION NOTE (sourceTabs.closeTab): Editor source tab context menu item
+# for closing the selected tab below the mouse.
+sourceTabs.closeTab=ปิดแท็บ
+sourceTabs.closeTab.accesskey=ป
+sourceTabs.closeTab.key=CmdOrCtrl+W
+
+# LOCALIZATION NOTE (sourceTabs.closeOtherTabs): Editor source tab context menu item
+# for closing the other tabs.
+sourceTabs.closeOtherTabs=ปิดแท็บอื่น ๆ
+sourceTabs.closeOtherTabs.accesskey=ด
+
+# LOCALIZATION NOTE (sourceTabs.closeTabsToEnd): Editor source tab context menu item
+# for closing the tabs to the end (the right for LTR languages) of the selected tab.
+sourceTabs.closeTabsToEnd=ปิดแท็บไปทางขวา
+sourceTabs.closeTabsToEnd.accesskey=ท
+
+# LOCALIZATION NOTE (sourceTabs.closeAllTabs): Editor source tab context menu item
+# for closing all tabs.
+sourceTabs.closeAllTabs=ปิดแท็บทั้งหมด
+sourceTabs.closeAllTabs.accesskey=บ
+
+# LOCALIZATION NOTE (sourceTabs.revealInTree): Editor source tab context menu item
+# for revealing source in tree.
+sourceTabs.revealInTree=แสดงในต้นไม้
+sourceTabs.revealInTree.accesskey=ส
+
+# LOCALIZATION NOTE (sourceTabs.prettyPrint): Editor source tab context menu item
+# for pretty printing the source.
+sourceTabs.prettyPrint=แสดงซอร์สแบบสวยงาม (Pretty print)
+sourceTabs.prettyPrint.accesskey=ส
+
+# LOCALIZATION NOTE (sourceFooter.prettyPrint.isPrettyPrintedMessage): Tooltip text for the disabled
+# pretty print button in editor footer. This displays when the file is already pretty printed.
+sourceFooter.prettyPrint.isPrettyPrintedMessage=ไม่สามารถ pretty print ได้ เนื่องจากไฟล์ถูกทำการ pretty print แล้ว
+
+# LOCALIZATION NOTE (sourceFooter.prettyPrint.isOriginalMessage): Tooltip text for the disabled
+# pretty print button in editor footer. This displays when the file is an original source.
+sourceFooter.prettyPrint.isOriginalMessage=ไม่สามารถ pretty print ซอร์สต้นฉบับได้ เนื่องจากไฟล์สามารถอ่านได้อยู่แล้ว
+
+# LOCALIZATION NOTE (sourceFooter.prettyPrint.hasSourceMapMessage): Tooltip text for the disabled
+# pretty print button in editor footer. This displays when the file has a valid sourcemap with original sources.
+sourceFooter.prettyPrint.hasSourceMapMessage=ไม่สามารถ pretty print ซอร์สที่สร้างขึ้นด้วย sourcemaps ที่ถูกต้องได้ โปรดใช้ซอร์สต้นฉบับ
+
+# LOCALIZATION NOTE (sourceFooter.prettyPrint.noContentMessage): Tooltip text for the disabled
+# pretty print button in editor footer. This displays when the file has no content.
+sourceFooter.prettyPrint.noContentMessage=ไม่สามารถ pretty print ได้ เนื่องจากไฟล์ไม่มีเนื้อหาใด
+
+# LOCALIZATION NOTE (sourceFooter.prettyPrint.isNotJavascriptMessage): Tooltip text for the disabled
+# pretty print button in editor footer. This displays when the file is not JavaScript code.
+sourceFooter.prettyPrint.isNotJavascriptMessage=ไม่สามารถ pretty print ได้ เนื่องจากไฟล์ไม่ใช่ JavaScript
+
+# LOCALIZATION NOTE (sourceFooter.ignores): Tooltip text associated
+# with the ignores button
+sourceFooter.ignore=เพิกเฉยต้นฉบับ
+
+# LOCALIZATION NOTE (sourceFooter.unignore): Tooltip text associated
+# with the ignore button
+sourceFooter.unignore=เลิกเพิกเฉยต้นฉบับ
+
+# LOCALIZATION NOTE (sourceFooter.ignoreList): Tooltip text associated
+# with the ignore source button when the selected source is on the ignore list
+sourceFooter.ignoreList=ต้นฉบับนี้อยู่ในรายชื่อละเลย โปรดปิดตัวเลือก `ละเลยสคริปต์บุคคลที่สามที่รู้จัก` เพื่อเปิดใช้งาน
+
+# LOCALIZATION NOTE (editorNotificationFooter.noOriginalScopes): The notification message displayed in the editor notification footer
+# when paused in an original file and original variable mapping is turned off
+# %S is text from the label for checkbox to show original scopes
+editorNotificationFooter.noOriginalScopes=การแมปชื่อตัวแปรแบบดั้งเดิมถูกปิด ดังนั้นการแสดงตัวอย่างแบบอินไลน์และเคล็ดลับเครื่องมือทั้งหมดจึงถูกปิดใช้งาน คลิกช่องทำเครื่องหมาย `%S` ในแผงขอบเขตเพื่อเปิด
+
+# LOCALIZATION NOTE (ignoreContextItem.ignore): Text associated
+# with the ignore context menu item
+ignoreContextItem.ignore=เพิกเฉยต้นฉบับ
+ignoreContextItem.ignore.accesskey=พ
+
+# LOCALIZATION NOTE (ignoreContextItem.unignore): Text associated
+# with the unignore context menu item
+ignoreContextItem.unignore=เลิกเพิกเฉยต้นฉบับ
+ignoreContextItem.unignore.accesskey=ล
+
+# LOCALIZATION NOTE (overridesContextItem.override): Text associated
+# with the add overrides context menu item
+overridesContextItem.override=เพิ่มการแทนที่สคริปต์
+overridesContextItem.override.accesskey=ท
+
+# LOCALIZATION NOTE (overridesContextItem.removeOverride): Text associated
+# with the remove override context menu item
+overridesContextItem.removeOverride=เอาการแทนที่สคริปต์ออก
+overridesContextItem.removeOverride.accesskey=ท
+
+# LOCALIZATION NOTE (ignoreContextItem.ignoreLine): Text associated
+# with the ignore line context menu item
+ignoreContextItem.ignoreLine=เพิกเฉยบรรทัด
+ignoreContextItem.ignoreLine.accesskey=พ
+
+# LOCALIZATION NOTE (ignoreContextItem.unignoreLine): Text associated
+# with the unignore line context menu item
+ignoreContextItem.unignoreLine=ไม่เพิกเฉยบรรทัด
+ignoreContextItem.unignoreLine.accesskey=ม
+
+# LOCALIZATION NOTE (ignoreContextItem.ignoreLines): Text associated
+# with the ignore lines context menu item
+ignoreContextItem.ignoreLines=เพิกเฉยบรรทัด
+ignoreContextItem.ignoreLines.accesskey=พ
+
+# LOCALIZATION NOTE (ignoreContextItem.unignoreLines): Text associated
+# with the unignore lines context menu item
+ignoreContextItem.unignoreLines=ไม่เพิกเฉยบรรทัด
+ignoreContextItem.unignoreLines.accesskey=ม
+
+# LOCALIZATION NOTE (sourceFooter.mappedSource): Text associated
+# with a mapped source. %S is replaced by the source map origin.
+sourceFooter.mappedSource=(จาก %S)
+
+# LOCALIZATION NOTE (sourceFooter.mappedSourceTooltip): Tooltip text associated
+# with a mapped source. %S is replaced by the source map origin.
+sourceFooter.mappedSourceTooltip=(ซอร์สถูกแมปจาก %S)
+
+# LOCALIZATION NOTE (sourceFooter.mappedOriginalSource.title): Text associated
+# with an original source mapped to a bundle. %S is replaced by the bundle url.
+sourceFooter.mappedOriginalSource.title=จาก %S
+
+# LOCALIZATION NOTE (sourceFooter.mappedOriginalSource.tooltip): Tooltip text associated
+# with an original source mapped to a bundle. %S is replaced by bundle url.
+sourceFooter.mappedOriginalSource.tooltip=เปิดบันเดิลที่เกี่ยวข้อง (%S)
+
+# LOCALIZATION NOTE (sourceFooter.mappedGeneratedSource.title): Text associated
+# with a bundled source mapped to an original source. %S is replaced by the original source url.
+sourceFooter.mappedGeneratedSource.title=ไปยัง %S
+
+# LOCALIZATION NOTE (sourceFooter.mappedGeneratedSource.tooltip): Tooltip text associated
+# with a bundled source mapped to an original source. %S is replaced by the original source url.
+sourceFooter.mappedGeneratedSource.tooltip=เปิดซอร์สดั้งเดิมที่เกี่ยวข้อง (%S)
+
+# LOCALIZATION NOTE (sourceFooter.mappedSuffix): Text associated
+# with a mapped source. Displays next to URLs in tree and tabs.
+sourceFooter.mappedSuffix=(ถูกแมป)
+
+# LOCALIZATION NOTE (sourceFooter.currentCursorPosition): Text associated
+# with the current cursor line and column
+sourceFooter.currentCursorPosition=(%S, %S)
+
+# LOCALIZATION NOTE (sourceFooter.currentCursorPosition.tooltip): Text associated
+# with the current cursor line and column
+sourceFooter.currentCursorPosition.tooltip=(บรรทัด %1$S, คอลัมน์ %2$S)
+
+# LOCALIZATION NOTE (sourceTabs.closeTabButtonTooltip): The tooltip that is displayed
+# for close tab button in source tabs.
+sourceTabs.closeTabButtonTooltip=ปิดแท็บ
+
+# LOCALIZATION NOTE (scopes.header): Scopes right sidebar pane header.
+scopes.header=ขอบเขต
+
+# LOCALIZATION NOTE (scopes.notAvailable): Scopes right sidebar pane message
+# for when the debugger is paused, but there isn't pause data.
+scopes.notAvailable=ไม่มีขอบเขต
+
+# LOCALIZATION NOTE (scopes.noOriginalScopes): Scopes right sidebar pane message
+# for when original variable mapping is disabled. This is only displayed when paused in an original source.
+# %S is text from the label for checkbox to show original scopes
+scopes.noOriginalScopes=การแมปชื่อตัวแปรแบบดั้งเดิมถูกปิด ไม่สามารถแสดงขอบเขตได้ คลิกช่องทำเครื่องหมาย `%S` ด้านบนเพื่อเปิด
+
+# LOCALIZATION NOTE (scopes.loadingOriginalScopes): Scopes right sidebar pane message
+# for when the debugger is still loading the original variable mapping information.
+scopes.loadingOriginalScopes=กำลังโหลดตัวแปรสำหรับซอร์สแบบดั้งเดิม…
+
+# LOCALIZATION NOTE (scopes.notPaused): Scopes right sidebar pane message
+# for when the debugger is not paused.
+scopes.notPaused=ไม่ได้หยุดชั่วคราว
+
+# LOCALIZATION NOTE (scopes.mapping.label): Scopes right sidebar pane
+# tooltip for checkbox and label
+scopes.mapping.label=แมปชื่อตัวแปรต้นฉบับ
+
+# LOCALIZATION NOTE (eventlisteners.log.label): Event listeners tooltip for
+# checkbox and label
+eventlisteners.log.label=บันทึกเหตุการณ์ไปยังคอนโซล
+
+# LOCALIZATION NOTE (eventlisteners.log): Checkbox label for logging events
+eventlisteners.log=รายการบันทึก
+
+# LOCALIZATION NOTE (scopes.helpTooltip.label): Scopes right sidebar pane
+# icon tooltip for link to MDN
+scopes.helpTooltip.label=เรียนรู้เพิ่มเติมเกี่ยวกับขอบเขตการแมป
+
+# LOCALIZATION NOTE (scopes.map.label): Checkbox label to map scopes
+scopes.map.label=แมป
+
+# LOCALIZATION NOTE (scopes.showOriginalScopesHelpTooltip): Scopes right sidebar pane
+# icon tooltip for link to MDN
+scopes.showOriginalScopesHelpTooltip=เรียนรู้เพิ่มเติมเกี่ยวกับการแมปตัวแปรและการแสดงขอบเขตแบบดั้งเดิม
+
+# LOCALIZATION NOTE (scopes.showOriginalScopesTooltip): Scopes right sidebar pane
+# tooltip for checkbox and label
+scopes.showOriginalScopesTooltip=แสดงขอบเขตพร้อมชื่อตัวแปรที่ถูกแมปสำหรับซอร์สแบบดั้งเดิม
+
+# LOCALIZATION NOTE (scopes.showOriginalScopes): Checkbox label to show original scopes
+scopes.showOriginalScopes=แสดงตัวแปรแบบดั้งเดิม
+
+# LOCALIZATION NOTE (scopes.block): Refers to a block of code in
+# the scopes pane when the debugger is paused.
+scopes.block=บล็อก
+
+# LOCALIZATION NOTE (sources.header): Sources left sidebar header
+sources.header=แหล่งที่มา
+
+# LOCALIZATION NOTE (outline.header): Outline left sidebar header
+outline.header=เค้าร่าง
+
+# LOCALIZATION NOTE (search.header): Search left sidebar header
+search.header=ค้นหา
+
+# LOCALIZATION NOTE (outline.placeholder): Placeholder text for the filter input
+# element
+outline.placeholder=กรองฟังก์ชัน
+
+# LOCALIZATION NOTE (outline.sortLabel): Label for the sort button
+outline.sortLabel=เรียงตามชื่อ
+
+# LOCALIZATION NOTE (outline.noFunctions): Outline text when there are no functions to display
+outline.noFunctions=ไม่มีฟังก์ชัน
+
+# LOCALIZATION NOTE (outline.noFileSelected): Outline text when there are no files selected
+outline.noFileSelected=ไม่ได้เลือกไฟล์
+
+# LOCALIZATION NOTE (sources.search): Sources left sidebar prompt
+# e.g. Cmd+P to search. On a mac, we use the command unicode character.
+# On windows, it's ctrl.
+sources.search=%S เพื่อค้นหา
+
+# LOCALIZATION NOTE (watchExpressions.header): Watch Expressions right sidebar
+# pane header.
+watchExpressions.header=การดูนิพจน์
+
+# LOCALIZATION NOTE (watchExpressions.refreshButton): Watch Expressions header
+# button for refreshing the expressions.
+watchExpressions.refreshButton=เรียกใหม่
+
+# LOCALIZATION NOTE (welcome.search): The center pane welcome panel's
+# search prompt. e.g. cmd+p to search for files. On windows, it's ctrl, on
+# a mac we use the unicode character.
+welcome.search=%S เพื่อค้นหาแหล่งที่มา
+
+# LOCALIZATION NOTE (welcome.search2): The center pane welcome panel's
+# search prompt. e.g. cmd+p to search for files. On windows, it's ctrl, on
+# a mac we use the unicode character.
+welcome.search2=%S ไปยังไฟล์
+
+# LOCALIZATION NOTE (welcome.findInFiles): The center pane welcome panel's
+# search prompt. e.g. cmd+f to search for files. On windows, it's ctrl+shift+f, on
+# a mac we use the unicode character.
+welcome.findInFiles=%S เพื่อค้นหาในไฟล์
+
+# LOCALIZATION NOTE (welcome.findInFiles2): The center pane welcome panel's
+# search prompt. e.g. cmd+f to search for files. On windows, it's ctrl+shift+f, on
+# a mac we use the unicode character.
+welcome.findInFiles2=%S ค้นหาในไฟล์
+
+# LOCALIZATION NOTE (welcome.allShortcuts): The label to open the modal of
+# shortcuts, displayed in the welcome panel.
+welcome.allShortcuts=แสดงทางลัดทั้งหมด
+
+# LOCALIZATION NOTE (sourceSearch.search): The center pane Source Search
+# prompt for searching for files.
+sourceSearch.search=ค้นหา…
+
+# LOCALIZATION NOTE (sourceSearch.search2): The center pane Source Search
+# prompt for searching for files.
+sourceSearch.search2=ไปยังไฟล์…
+
+# LOCALIZATION NOTE (pauseOnExceptions): The pause on exceptions button tooltip
+# when the debugger will pause on all exceptions.
+pauseOnExceptions=หยุดชั่วคราวที่ข้อยกเว้นทั้งหมด คลิกเพื่อละเว้นข้อยกเว้น
+
+# LOCALIZATION NOTE (loadingText): The text that is displayed in the script
+# editor when the loading process has started but there is no file to display
+# yet.
+loadingText=กำลังโหลด\u2026
+
+# LOCALIZATION NOTE (wasmIsNotAvailable): The text that is displayed in the
+# script editor when the WebAssembly source is not available.
+wasmIsNotAvailable=โปรดเรียกใหม่เพื่อดีบั๊กโมดูลนี้
+
+# LOCALIZATION NOTE (errorLoadingText3): The text that is displayed in the debugger
+# viewer when there is an error loading a file
+errorLoadingText3=เกิดข้อผิดพลาดในการโหลด URI นี้: %S
+
+# LOCALIZATION NOTE(gotoLineModal.placeholder): The placeholder
+# text displayed when the user searches for specific lines in a file
+gotoLineModal.placeholder=ไปยังบรรทัดที่…
+
+# LOCALIZATION NOTE(gotoLineModal.title): The message shown to users
+# to open the go to line modal
+gotoLineModal.title=ไปยังหมายเลขบรรทัดในไฟล์
+
+# LOCALIZATION NOTE(gotoLineModal.key3): The shortcut for opening the
+# go to line modal
+# Do not localize "Ctrl+G", or change the format of the string. These are
+# key identifiers, not messages displayed to the user.
+gotoLineModal.key3=Ctrl+G
+
+# LOCALIZATION NOTE(symbolSearch.search.functionsPlaceholder): The placeholder
+# text displayed when the user searches for functions in a file
+symbolSearch.search.functionsPlaceholder=ค้นหาฟังก์ชัน…
+symbolSearch.search.functionsPlaceholder.title=ค้นหาฟังก์ชันในไฟล์
+
+# LOCALIZATION NOTE(symbolSearch.search.variablesPlaceholder): The placeholder
+# text displayed when the user searches for variables in a file
+symbolSearch.search.variablesPlaceholder=ค้นหาตัวแปร…
+symbolSearch.search.variablesPlaceholder.title=ค้นหาตัวแปรในไฟล์
+
+# LOCALIZATION NOTE(symbolSearch.search.key2): The Key Shortcut for
+# searching for a function or variable
+# Do not localize "CmdOrCtrl+Shift+O", or change the format of the string. These are
+# key identifiers, not messages displayed to the user.
+symbolSearch.search.key2=CmdOrCtrl+Shift+O
+
+experimental=นี่เป็นคุณลักษณะทดลอง
+
+# LOCALIZATION NOTE (ctrl): The text that is used for documenting
+# keyboard shortcuts that use the control key
+ctrl=Ctrl
+
+# LOCALIZATION NOTE (anonymousFunction): this string is used to display
+# JavaScript functions that have no given name - they are said to be
+# anonymous.
+anonymousFunction=<ไม่ระบุชื่อ>
+
+# LOCALIZATION NOTE (stacktrace.asyncStack): this string is used to
+# indicate that a given stack frame has an async parent.
+# %S is the "Async Cause" of the frame.
+stacktrace.asyncStack=(ไม่ตรงกัน: %S)
+
+# LOCALIZATION NOTE (shortcuts.toggleBreakpoint): text describing
+# keyboard shortcut action for toggling breakpoint
+shortcuts.toggleBreakpoint=เปิด/ปิดจุดพัก
+shortcuts.toggleBreakpoint.accesskey=ป
+
+# LOCALIZATION NOTE (shortcuts.toggleCondPanel.breakpoint): text describing
+# keyboard shortcut action for toggling conditional panel for breakpoints
+shortcuts.toggleCondPanel.breakpoint=แก้ไขจุดพักแบบมีเงื่อนไข
+
+# LOCALIZATION NOTE (shortcuts.toggleCondPanel.logPoint): text describing
+# keyboard shortcut action for toggling conditional panel for log points
+shortcuts.toggleCondPanel.logPoint=แก้ไขจุดรายการบันทึก
+
+# LOCALIZATION NOTE (shortcuts.pauseOrResume): text describing
+# keyboard shortcut action for pause of resume
+shortcuts.pauseOrResume=หยุดชั่วคราว/ทำต่อ
+
+# LOCALIZATION NOTE (shortcuts.stepOver): text describing
+# keyboard shortcut action for stepping over
+shortcuts.stepOver=ก้าวข้าม
+
+# LOCALIZATION NOTE (shortcuts.stepIn): text describing
+# keyboard shortcut action for stepping in
+shortcuts.stepIn=ก้าวเข้า
+
+# LOCALIZATION NOTE (shortcuts.stepOut): text describing
+# keyboard shortcut action for stepping out
+shortcuts.stepOut=ก้าวออก
+
+# LOCALIZATION NOTE (shortcuts.fileSearch): text describing
+# keyboard shortcut action for source file search
+shortcuts.fileSearch=การค้นหาไฟล์ต้นฉบับ
+
+# LOCALIZATION NOTE (shortcuts.fileSearch2): text describing
+# keyboard shortcut action for source file search
+shortcuts.fileSearch2=ไปยังไฟล์
+
+# LOCALIZATION NOTE (shortcuts.gotoLine): text describing
+# keyboard shortcut for jumping to a specific line
+shortcuts.gotoLine=ไปยังบรรทัดที่
+
+# LOCALIZATION NOTE (shortcuts.projectSearch): text describing
+# keyboard shortcut action for full project search
+shortcuts.projectSearch=การค้นหาโครงการแบบเต็ม
+
+# LOCALIZATION NOTE (shortcuts.projectSearch2): text describing
+# keyboard shortcut action for full project search
+shortcuts.projectSearch2=ค้นหาในไฟล์
+
+# LOCALIZATION NOTE (shortcuts.functionSearch): text describing
+# keyboard shortcut action for function search
+shortcuts.functionSearch=การค้นหาฟังก์ชัน
+
+# LOCALIZATION NOTE (shortcuts.functionSearch2): text describing
+# keyboard shortcut action for function search
+shortcuts.functionSearch2=ค้นหาฟังก์ชัน
+
+# LOCALIZATION NOTE (shortcuts.buttonName): text describing
+# keyboard shortcut button text
+shortcuts.buttonName=แป้นพิมพ์ลัด
+
+# LOCALIZATION NOTE (variablesSeparatorLabel): The text that is displayed
+# in the variables list as a separator between the name and value.
+variablesSeparatorLabel=:
+variablesViewOptimizedOut=(ถูกปรับให้เหมาะสมแล้ว)
+variablesViewUninitialized=(ไม่ได้เตรียมใช้งาน)
+variablesViewMissingArgs=(ไม่พร้อมใช้งาน)
+
+# LOCALIZATION NOTE (variablesDomNodeValueTooltip): The text that is displayed
+# in a tooltip on the "open in inspector" button in the the variables list for a
+# DOMNode item.
+variablesDomNodeValueTooltip=คลิกเพื่อเลือกโหนดในตัวตรวจสอบ
+
+# LOCALIZATION NOTE (variablesEditButtonTooltip): The text that is displayed
+# in the variables list on a getter or setter which can be edited.
+variablesEditButtonTooltip=คลิกเพื่อตั้งค่า
+
+# LOCALIZATION NOTE (variablesViewErrorStacktrace): This is the text that is
+# shown before the stack trace in an error.
+variablesViewErrorStacktrace=การติดตามสแตก:
+
+# LOCALIZATION NOTE (variablesViewMoreObjects): the text that is displayed
+# when you have an object preview that does not show all of the elements. At the end of the list
+# you see "N more..." in the web console output.
+# This is a semi-colon list of plural forms.
+# See: http://developer.mozilla.org/en/docs/Localization_and_Plurals
+# #1 number of remaining items in the object
+# example: 3 more…
+variablesViewMoreObjects=#1 เพิ่มเติม…
+
+# LOCALIZATION NOTE (variablesEditableNameTooltip): The text that is displayed
+# in the variables list on an item with an editable name.
+variablesEditableNameTooltip=คลิกสองครั้งเพื่อแก้ไข
+
+# LOCALIZATION NOTE (variablesEditableValueTooltip): The text that is displayed
+# in the variables list on an item with an editable value.
+variablesEditableValueTooltip=คลิกเพื่อเปลี่ยนค่า
+
+# LOCALIZATION NOTE (variablesCloseButtonTooltip): The text that is displayed
+# in the variables list on an item which can be removed.
+variablesCloseButtonTooltip=คลิกเพื่อเอาออก
+
+# LOCALIZATION NOTE (configurable|...|Tooltip): The text that is displayed
+# in the variables list on certain variables or properties as tooltips.
+# Explanations of what these represent can be found at the following links:
+# https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Object/defineProperty
+# https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Object/isExtensible
+# https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Object/isFrozen
+# https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Object/isSealed
+# It's probably best to keep these in English.
+configurableTooltip=กำหนดค่าได้
+enumerableTooltip=แจงจำนวนไม่ได้
+writableTooltip=เขียนได้
+frozenTooltip=หยุดดำเนินการ
+sealedTooltip=ปิดผนึก
+extensibleTooltip=ขยายได้
+overriddenTooltip=ถูกแทนที่
+WebIDLTooltip=WebIDL
+
+# LOCALIZATION NOTE (serviceWorkerInfo.parsed): State displayed for a service
+# worker that has been parsed.
+serviceWorkerInfo.parsed=ถูกแจงส่วน
+# LOCALIZATION NOTE (serviceWorkerInfo.installing): State displayed for a
+# service worker that is being installed.
+serviceWorkerInfo.installing=กำลังติดตั้ง
+# LOCALIZATION NOTE (serviceWorkerInfo.installed): State displayed for a
+# service worker that has finished being installed.
+serviceWorkerInfo.installed=ติดตั้งแล้ว
+# LOCALIZATION NOTE (serviceWorkerInfo.activating): State displayed for a
+# service worker that is being activated.
+serviceWorkerInfo.activating=กำลังเปิดใช้งาน
+# LOCALIZATION NOTE (serviceWorkerInfo.activated): State displayed for a
+# service worker that has finished being activated.
+serviceWorkerInfo.activated=เปิดใช้งานแล้ว
+# LOCALIZATION NOTE (serviceWorkerInfo.redundant): State displayed for a
+# service worker that is redundant.
+serviceWorkerInfo.redundant=ซ้ำซ้อน
+# LOCALIZATION NOTE (serviceWorkerInfo.unknown): State displayed for a
+# service worker that is in an unknown state.
+serviceWorkerInfo.unknown=ไม่ทราบ
diff --git a/l10n-th/devtools/client/device.properties b/l10n-th/devtools/client/device.properties
new file mode 100644
index 0000000000..f540f1cec5
--- /dev/null
+++ b/l10n-th/devtools/client/device.properties
@@ -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/.
+
+# LOCALIZATION NOTE These strings are used inside Device Emulation developer
+# tools. The correct localization of this file might be to keep it in English,
+# or another language commonly spoken among web developers. You want to make
+# that choice consistent across the developer tools. A good criteria is the
+# language in which you'd find the best documentation on web development on the
+# web.
+
+# LOCALIZATION NOTE:
+# These strings are category names in a list of devices that a user can choose
+# to simulate (e.g. "ZTE Open C", "VIA Vixen", "720p HD Television", etc).
+device.phones=โทรศัพท์
+device.tablets=แท็บเล็ต
+device.laptops=แล็ปท็อป
+device.televisions=โทรทัศน์
+device.consoles=คอนโซลเกม
+device.watches=นาฬิกา
+device.custom=กำหนดเอง
diff --git a/l10n-th/devtools/client/dom.properties b/l10n-th/devtools/client/dom.properties
new file mode 100644
index 0000000000..f6b016b2f6
--- /dev/null
+++ b/l10n-th/devtools/client/dom.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/.
+
+# LOCALIZATION NOTE These strings are used inside the DOM panel
+# which is available from the Web Developer sub-menu -> 'DOM'.
+# The correct localization of this file might be to keep it in
+# English, or another language commonly spoken among web developers.
+# You want to make that choice consistent across the developer tools.
+# A good criteria is the language in which you'd find the best
+# documentation on web development on the web.
+
+# LOCALIZATION NOTE These strings are used inside the DOM panel
+# which is available from the Browser Tools sub-menu -> 'DOM'.
+# The correct localization of this file might be to keep it in
+# English, or another language commonly spoken among web developers.
+# You want to make that choice consistent across the developer tools.
+# A good criteria is the language in which you'd find the best
+# documentation on web development on the web.
+
+# LOCALIZATION NOTE (dom.filterDOMPanel): A placeholder text used for
+# DOM panel search box.
+dom.filterDOMPanel=กรองแผง DOM
+
+# LOCALIZATION NOTE (dom.refresh): A label for Refresh button in
+# DOM panel toolbar
+dom.refresh=เรียกใหม่
diff --git a/l10n-th/devtools/client/filterwidget.properties b/l10n-th/devtools/client/filterwidget.properties
new file mode 100644
index 0000000000..ae4c869784
--- /dev/null
+++ b/l10n-th/devtools/client/filterwidget.properties
@@ -0,0 +1,61 @@
+# 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 These strings are used in the CSS Filter Editor Widget
+# which can be found in a tooltip that appears in the Rule View when clicking
+# on a filter swatch displayed next to CSS declarations like 'filter: blur(2px)'.
+
+# LOCALIZATION NOTE (emptyFilterList):
+# This string is displayed when filter's list is empty
+# (no filter specified / all removed)
+emptyFilterList=ไม่ได้ระบุตัวกรอง
+
+# LOCALIZATION NOTE (emptyPresetList):
+# This string is displayed when preset's list is empty
+emptyPresetList=คุณไม่มีค่าที่ตั้งไว้ล่วงหน้า \
+คุณสามารถจัดเก็บค่าที่ตั้งไว้ล่วงหน้าของตัวกรองได้โดยเลือกชื่อและบันทึก \
+ค่าที่ตั้งไว้ล่วงหน้าสามารถเข้าถึงได้อย่างรวดเร็วและคุณสามารถนำกลับมาใช้ได้อย่างง่ายดาย
+
+# LOCALIZATION NOTE (addUsingList):
+# This string is displayed under [emptyFilterList] when filter's
+# list is empty, guiding user to add a filter using the list below it
+addUsingList=เพิ่มตัวกรองโดยใช้รายการด้านล่าง
+
+# LOCALIZATION NOTE (dropShadowPlaceholder):
+# This string is used as a placeholder for drop-shadow's input
+# in the filter list (shown when <input> is empty)
+dropShadowPlaceholder=สีรัศมี x y
+
+# LOCALIZATION NOTE (dragHandleTooltipText):
+# This string is used as a tooltip text (shown on mouse hover) on the
+# drag handles of filters which are used to re-order filters
+dragHandleTooltipText=ลากขึ้นหรือลงเพื่อเรียงลำดับตัวกรองใหม่
+
+# LOCALIZATION NOTE (labelDragTooltipText):
+# This string is used as a tooltip text (shown on mouse hover) on the
+# filters' labels which can be dragged left/right to increase/decrease
+# the filter's value (like photoshop)
+labelDragTooltipText=ลากไปทางซ้ายหรือขวาเพื่อเพิ่มหรือลดค่า
+
+# LOCALIZATION NOTE (filterListSelectPlaceholder):
+# This string is used as a preview option in the list of possible filters
+# <select>
+filterListSelectPlaceholder=เลือกตัวกรอง
+
+# LOCALIZATION NOTE (addNewFilterButton):
+# This string is displayed on a button used to add new filters
+addNewFilterButton=เพิ่ม
+
+# LOCALIZATION NOTE (newPresetPlaceholder):
+# This string is used as a placeholder in the list of presets which is used to
+# save a new preset
+newPresetPlaceholder=ชื่อ Preset
+
+# LOCALIZATION NOTE (savePresetButton):
+# This string is displayed on a button used to save a new preset
+savePresetButton=บันทึก
+
+# LOCALIZATION NOTE(presetsToggleButton):
+# This string is used in a button which toggles the presets list
+presetsToggleButton=ค่าที่ตั้งไว้
diff --git a/l10n-th/devtools/client/font-inspector.properties b/l10n-th/devtools/client/font-inspector.properties
new file mode 100644
index 0000000000..904996a21c
--- /dev/null
+++ b/l10n-th/devtools/client/font-inspector.properties
@@ -0,0 +1,69 @@
+# 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 This file contains the Font Inspector strings.
+# The Font Inspector is a panel accessible in the Inspector sidebar.
+
+# LOCALIZATION NOTE (fontinspector.system) This label indicates that the font is a local
+# system font.
+fontinspector.system=ระบบ
+
+# LOCALIZATION NOTE (fontinspector.noFontsUsedOnCurrentElement): This label is shown when
+# no fonts were used on the selected element.
+fontinspector.noFontsUsedOnCurrentElement=ไม่มีแบบอักษรที่ถูกใช้ในอิลิเมนต์ปัจจุบัน
+
+# LOCALIZATION NOTE (fontinspector.copyURL): This is the text that appears in a tooltip
+# displayed when the user hovers over the copy icon next to the font URL.
+# Clicking the copy icon copies the full font URL to the user's clipboard
+fontinspector.copyURL=คัดลอก URL
+
+# LOCALIZATION NOTE (fontinspector.customInstanceName): Think of instances as presets
+# (groups of settings that apply in bulk to a thing). Instances have names. When the user
+# creates a new instance, it doesn't have a name. This is the text that appears as the
+# default name for a new instance. It shows up in a dropdown from which users can select
+# between predefined instances and this custom instance.
+fontinspector.customInstanceName=กำหนดเอง
+
+# LOCALIZATION NOTE (fontinspector.fontInstanceLabel): This label is shown next to the UI
+# in the font editor which allows a user to select a font instance option from a
+# dropdown. An instance is like a preset. A "font instance" is the term used by the font
+# authors to mean a group of predefined font settings.
+fontinspector.fontInstanceLabel=อินสแตนซ์
+
+# LOCALIZATION NOTE (fontinspector.fontSizeLabel): This label is shown next to the UI
+# in the font editor which allows the user to change the font size.
+fontinspector.fontSizeLabel=ขนาด
+
+# LOCALIZATION NOTE (fontinspector.fontWeightLabel): This label is shown next to the UI
+# in the font editor which allows the user to change the font weight.
+fontinspector.fontWeightLabel=น้ำหนัก
+
+# LOCALIZATION NOTE (fontinspector.fontItalicLabel): This label is shown next to the UI
+# in the font editor which allows the user to change the style of the font to italic.
+fontinspector.fontItalicLabel=ตัวเอียง
+
+# LOCALIZATION NOTE (fontinspector.showMore): Label for a collapsed list of fonts.
+fontinspector.showMore=แสดงเพิ่มเติม
+
+# LOCALIZATION NOTE (fontinspector.showLess): Label for an expanded list of fonts.
+fontinspector.showLess=แสดงน้อยลง
+
+# LOCALIZATION NOTE (fontinspector.letterSpacingLabel): Label for the UI to change the
+# letter spacing in the font editor.
+fontinspector.letterSpacingLabel=ระยะห่าง
+
+# LOCALIZATION NOTE (fontinspector.lineHeightLabelCapitalized): Label for the UI to change the line height in the font editor.
+fontinspector.lineHeightLabelCapitalized=ความสูงของบรรทัด
+
+# LOCALIZATION NOTE (fontinspector.allFontsOnPageHeader): Header for the section listing
+# all the fonts on the current page.
+fontinspector.allFontsOnPageHeader=แบบอักษรทั้งหมดในหน้า
+
+# LOCALIZATION NOTE (fontinspector.fontsUsedLabel): Label for the Font Editor section
+# which shows the fonts used on the selected element.
+fontinspector.fontsUsedLabel=แบบอักษรที่ใช้
+
+# LOCALIZATION NOTE (fontinspector.previewTextPlaceholder): Placeholder for the input
+# where the user can type text to get a preview of it using a font.
+fontinspector.previewTextPlaceholder=ข้อความแสดงตัวอย่างแบบอักษร
diff --git a/l10n-th/devtools/client/har.properties b/l10n-th/devtools/client/har.properties
new file mode 100644
index 0000000000..ffbc2296f2
--- /dev/null
+++ b/l10n-th/devtools/client/har.properties
@@ -0,0 +1,30 @@
+# 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 These strings are used inside the Network Monitor
+# which is available from the Web Developer sub-menu -> 'Network Monitor'.
+# The correct localization of this file might be to keep it in
+# English, or another language commonly spoken among web developers.
+# You want to make that choice consistent across the developer tools.
+# A good criteria is the language in which you'd find the best
+# documentation on web development on the web.
+
+# LOCALIZATION NOTE These strings are used inside the Network Monitor
+# which is available from the Browser Tools sub-menu -> 'Network Monitor'.
+# The correct localization of this file might be to keep it in
+# English, or another language commonly spoken among web developers.
+# You want to make that choice consistent across the developer tools.
+# A good criteria is the language in which you'd find the best
+# documentation on web development on the web.
+
+# LOCALIZATION NOTE (har.responseBodyNotIncluded): A label used within
+# HAR file explaining that HTTP response bodies are not includes
+# in exported data.
+har.responseBodyNotIncluded=ไม่รวมเนื้อหาการตอบสนอง
+
+# LOCALIZATION NOTE (har.requestBodyNotIncluded): A label used within
+# HAR file explaining that HTTP request bodies are not includes
+# in exported data.
+har.requestBodyNotIncluded=ไม่รวมเนื้อหาคำขอ
+
diff --git a/l10n-th/devtools/client/inspector.properties b/l10n-th/devtools/client/inspector.properties
new file mode 100644
index 0000000000..84c74a9a63
--- /dev/null
+++ b/l10n-th/devtools/client/inspector.properties
@@ -0,0 +1,602 @@
+# 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 These strings are used inside the Inspector
+# which is available from the Browser Tools sub-menu -> 'Inspect'.
+#
+# The correct localization of this file might be to keep it in
+# English, or another language commonly spoken among web developers.
+# You want to make that choice consistent across the developer tools.
+# A good criteria is the language in which you'd find the best
+# documentation on web development on the web.
+
+inspector.panelLabel.markupView=มุมมองมาร์กอัป
+
+# LOCALIZATION NOTE (markupView.more.showing)
+# When there are too many nodes to load at once, we will offer to
+# show all the nodes.
+markupView.more.showing=บางโหนดถูกซ่อนไว้
+
+# LOCALIZATION NOTE (markupView.more.showAll2): Semi-colon list of plural forms.
+# See: http://developer.mozilla.org/en/docs/Localization_and_Plurals
+markupView.more.showAll2=แสดง #1 โหนดทั้งหมด
+
+# LOCALIZATION NOTE (markupView.whitespaceOnly.label)
+# Used in the badge that appears when whitespace-only text nodes are displayed in the
+# inspector.
+markupView.whitespaceOnly.label=ช่องว่าง
+
+# LOCALIZATION NOTE (markupView.unavailableChildren.label)
+# Used in the badge that appears when the Browser Toolbox is in "parent-process"
+# mode and the markup view cannot display the children from a content browser.
+markupView.unavailableChildren.label=ไม่พร้อมใช้งาน
+
+# LOCALIZATION NOTE (markupView.unavailableChildren.title)
+# Title for the badge that appears when the Browser Toolbox is in "parent-process"
+# mode and the markup view cannot display the children from a content browser.
+markupView.unavailableChildren.title=อิลิเมนต์ลูกของอิลิเมนต์นี้ไม่สามารถใช้ได้กับโหมดกล่องเครื่องมือเบราว์เซอร์ปัจจุบัน
+
+# LOCALIZATION NOTE (markupView.whitespaceOnly)
+# Used in a tooltip that appears when the user hovers over whitespace-only text nodes in
+# the inspector. %S in the content will be replaced by the whitespace characters used in
+# the text node.
+markupView.whitespaceOnly=โหนดข้อความที่มีเฉพาะช่องว่างเท่านั้น: %S
+
+# LOCALIZATION NOTE (markupView.display.flex.tooltiptext2)
+# Used in a tooltip that appears when the user hovers over the display type button in
+# the markup view.
+markupView.display.flex.tooltiptext2=อิลิเมนต์นี้ทำงานเหมือนอิลิเมนต์แบบบล็อกและวางเนื้อหาตามแบบจำลอง flexbox คลิกเพื่อเปิด/ปิดการซ้อนทับ flexbox สำหรับอิลิเมนต์นี้
+
+# LOCALIZATION NOTE (markupView.display.inlineFlex.tooltiptext2)
+# Used in a tooltip that appears when the user hovers over the display type button in
+# the markup view.
+markupView.display.inlineFlex.tooltiptext2=อิลิเมนต์นี้ทำงานเหมือนอิลิเมนต์แบบอินไลน์และวางเนื้อหาตามแบบจำลอง flexbox คลิกเพื่อเปิด/ปิดการซ้อนทับ flexbox สำหรับอิลิเมนต์นี้
+
+# LOCALIZATION NOTE (markupView.display.grid.tooltiptext2)
+# Used in a tooltip that appears when the user hovers over the display type button in
+# the markup view.
+markupView.display.grid.tooltiptext2=อิลิเมนต์นี้ทำงานเหมือนอิลิเมนต์แบบบล็อกและวางเนื้อหาตามแบบจำลอง grid คลิกเพื่อเปิด/ปิดการซ้อนทับ flexbox สำหรับอิลิเมนต์นี้
+
+# LOCALIZATION NOTE (markupView.display.inlineGrid.tooltiptext2)
+# Used in a tooltip that appears when the user hovers over the display type button in
+# the markup view.
+markupView.display.inlineGrid.tooltiptext2=อิลิเมนต์นี้ทำงานเหมือนอิลิเมนต์แบบอินไลน์และวางเนื้อหาตามแบบจำลอง grid คลิกเพื่อเปิด/ปิดการซ้อนทับ flexbox สำหรับอิลิเมนต์นี้
+
+# LOCALIZATION NOTE (markupView.display.subgrid.tooltiptext)
+# Used in a tooltip that appears when the user hovers over the display type button in
+# the markup view.
+markupView.display.subgrid.tooltiptiptext=อิลิเมนต์นี้วางโครงร่างเนื้อหาตามรูปแบบ grid แต่กำหนดนิยามของแถวและ/หรือคอลัมน์ไปยังตัวบรรจุ grid ของข้อมูลหลัก
+
+# LOCALIZATION NOTE (markupView.display.flowRoot.tooltiptext)
+# Used in a tooltip that appears when the user hovers over the display type button in
+# the markup view.
+markupView.display.flowRoot.tooltiptext=อิลิเมนต์นี้สร้างกล่องอิลิเมนต์แบบบล็อกที่สร้างบริบทการจัดรูปแบบบล็อกใหม่
+
+# LOCALIZATION NOTE (markupView.display.contents.tooltiptext2)
+# Used in a tooltip that appears when the user hovers over the display type button in
+# the markup view.
+markupView.display.contents.tooltiptext2=อิลิเมนต์นี้ไม่ได้ผลิตกล่องเฉพาะด้วยตัวเอง แต่แสดงผลเนื้อหา
+
+# LOCALIZATION NOTE (markupView.event.tooltiptext)
+# Used in a tooltip that appears when the user hovers over 'event' badge in
+# the markup view.
+markupView.event.tooltiptext=ตัวเฝ้าดูเหตุการณ์
+
+# LOCALIZATION NOTE (markupView.event.tooltiptext)
+# Used in a tooltip that appears when the user hovers over 'event' badge in
+# the markup view.
+markupView.event.tooltiptext2=คลิกเพื่อแสดงตัวเฝ้าดูเหตุการณ์สำหรับอิลิเมนต์นี้
+
+# LOCALIZATION NOTE (markupView.custom.tooltiptext)
+# Used in a tooltip that appears when the user hovers over 'custom' badge in
+# the markup view. Only displayed on custom elements with a shadow root attached.
+markupView.custom.tooltiptext=แสดงการกำหนดอิลิเมนต์ที่กำหนดเอง
+
+# LOCALIZATION NOTE (markupView.newAttribute.label)
+# This is used to speak the New Attribute button when editing a tag
+# and a screen reader user tabs to it. This string is not visible onscreen.
+markupView.newAttribute.label=แอตทริบิวต์ใหม่
+
+# LOCALIZATION NOTE (markupView.revealLink.tooltip)
+# Used as a tooltip for an icon in the markup view when displaying elements inserted in
+# <slot> nodes in a custom component. When clicking on the icon, the corresponding
+# non-slotted container will be selected
+markupView.revealLink.tooltip=เปิดเผย
+
+#LOCALIZATION NOTE: Used in the image preview tooltip when the image could not be loaded
+previewTooltip.image.brokenImage=ไม่สามารถโหลดภาพ
+
+# LOCALIZATION NOTE: Used in color picker tooltip when the eyedropper is disabled for
+# non-HTML documents
+eyedropper.disabled.title=ไม่พร้อมใช้งานในเอกสารที่ไม่ใช่ HTML
+
+#LOCALIZATION NOTE: Used in the event tooltip to allow the debugger to be opened
+eventsTooltip.openInDebugger=เปิดในตัวดีบั๊ก
+
+# LOCALIZATION NOTE: Used in the event tooltip for the toggle button.
+# Parameter is the event type (e.g. "click")
+eventsTooltip.toggleButton.label=โค้ดตัวเฝ้าดูเหตุการณ์ “%S”
+
+#LOCALIZATION NOTE: Used in the event tooltip to allow the debugger to be opened
+eventsTooltip.openInDebugger2=เปิด “%S” ในตัวดีบั๊ก
+
+#LOCALIZATION NOTE: Used in the event tooltip when a script's filename cannot be detected
+eventsTooltip.unknownLocation=ไม่ทราบตำแหน่งที่ตั้ง
+
+#LOCALIZATION NOTE: Used in the mouseover tooltip when hovering "Unknown location."
+eventsTooltip.unknownLocationExplanation=ไม่สามารถตรวจพบตำแหน่งที่ตั้งดั้งเดิมของตัวเฝ้าดูนี้ได้ อาจเป็นรหัสที่แปลโดยโปรแกรมอรรถประโยชน์ เช่น Babel
+
+# LOCALIZATION NOTE: Label for the checkbox in the event tooltip that toggles event listeners
+# Parameter is the event type (e.g. "click")
+eventsTooltip.toggleListenerLabel=เปิดใช้งานตัวเฝ้าดูเหตุการณ์ “%S”
+
+#LOCALIZATION NOTE: Used in the tooltip for Bubbling
+eventsTooltip.Bubbling=Bubbling
+
+#LOCALIZATION NOTE: Used in the tooltip for Capturing
+eventsTooltip.Capturing=Capturing
+
+# LOCALIZATION NOTE: Title of the iframe we use in the event tooltip to display the code of
+# the event listener. Parameter is the event type (e.g. "click")
+eventsTooltip.codeIframeTitle=โค้ดตัวเฝ้าดูเหตุการณ์ “%S”
+
+# LOCALIZATION NOTE (allTabsMenuButton.tooltip): The tooltip that gets
+# displayed when hovering over the tabs overflow button.
+allTabsMenuButton.tooltip=แสดงแท็บทั้งหมด
+
+# LOCALIZATION NOTE (inspector.showThreePaneMode): This is the tooltip for the button
+# that toggles on the 3 pane inspector mode.
+inspector.showThreePaneMode=เปิดตัวตรวจสอบแบบ 3 บานหน้าต่าง
+
+# LOCALIZATION NOTE (inspector.hideThreePaneMode): This is the tooltip for the button
+# that toggles off the 3 pane inspector mode.
+inspector.hideThreePaneMode=ปิดตัวตรวจสอบแบบ 3 บานหน้าต่าง
+
+# LOCALIZATION NOTE (inspector.searchResultsCount2): This is the label that
+# will show up next to the inspector search box. %1$S is the current result
+# index and %2$S is the total number of search results. For example: "3 of 9".
+# This won't be visible until the search box is updated in Bug 835896.
+inspector.searchResultsCount2=%1$S จาก %2$S
+
+# LOCALIZATION NOTE (inspector.searchResultsNone): This is the label that
+# will show up next to the inspector search box when no matches were found
+# for the given string.
+# This won't be visible until the search box is updated in Bug 835896.
+inspector.searchResultsNone=ไม่มีที่ตรงกัน
+
+# LOCALIZATION NOTE (inspector.menu.openUrlInNewTab.label): This is the label of
+# a menu item in the inspector contextual-menu that appears when the user right-
+# clicks on the attribute of a node in the inspector that is a URL, and that
+# allows to open that URL in a new tab.
+inspector.menu.openUrlInNewTab.label=เปิดลิงก์ในแท็บใหม่
+
+# LOCALIZATION NOTE (inspector.menu.copyUrlToClipboard.label): This is the label
+# of a menu item in the inspector contextual-menu that appears when the user
+# right-clicks on the attribute of a node in the inspector that is a URL, and
+# that allows to copy that URL in the clipboard.
+inspector.menu.copyUrlToClipboard.label=คัดลอกที่อยู่ลิงก์
+
+# LOCALIZATION NOTE (inspector.menu.selectElement.label): This is the label of a
+# menu item in the inspector contextual-menu that appears when the user right-
+# clicks on the attribute of a node in the inspector that is the ID of another
+# element in the DOM (like with <label for="input-id">), and that allows to
+# select that element in the inspector.
+inspector.menu.selectElement.label=เลือกอิลิเมนต์ #%S
+
+# LOCALIZATION NOTE (inspectorEditAttribute.label): This is the label of a
+# sub-menu "Attribute" in the inspector contextual-menu that appears
+# when the user right-clicks on the node in the inspector, and that allows
+# to edit an attribute on this node.
+inspectorEditAttribute.label=แก้ไขแอตทริบิวต์ %S
+inspectorEditAttribute.accesskey=ก
+
+# LOCALIZATION NOTE (inspectorRemoveAttribute.label): This is the label of a
+# sub-menu "Attribute" in the inspector contextual-menu that appears
+# when the user right-clicks on the attribute of a node in the inspector,
+# and that allows to remove this attribute.
+inspectorRemoveAttribute.label=เอาแอตทริบิวต์ “%S” ออก
+inspectorRemoveAttribute.accesskey=อ
+
+# LOCALIZATION NOTE (inspectorCopyAttributeValue.label): This is the label of a
+# sub-menu "Attribute" in the inspector contextual-menu that appears
+# when the user right-clicks on the attribute of a node in the inspector,
+# and that allows to copy the attribute value to clipboard.
+inspectorCopyAttributeValue.label=คัดลอกค่าแอตทริบิวต์ “%S”
+inspectorCopyAttributeValue.accesskey=ค
+
+# LOCALIZATION NOTE (inspector.nodePreview.highlightNodeLabel):
+# This string is displayed in a tooltip that is shown when hovering over a the
+# inspector icon displayed next to a DOM node preview (e.g. next to something
+# like "div#foo.bar").
+# DOM node previews can be displayed in places like the animation-inspector, the
+# console or the object inspector.
+# The tooltip invites the user to click on the icon in order to highlight the
+# node in the page.
+inspector.nodePreview.highlightNodeLabel=คลิกเพื่อเน้นสีโหนดนี้ในหน้า
+
+# LOCALIZATION NOTE (inspectorHTMLEdit.label): This is the label shown
+# in the inspector contextual-menu for the item that lets users edit the
+# (outer) HTML of the current node
+inspectorXMLEdit.label=แก้ไขเป็น XML
+inspectorHTMLEdit.label=แก้ไขเป็น HTML
+inspectorSVGEdit.label=แก้ไขเป็น SVG
+inspectorMathMLEdit.label=แก้ไขเป็น MathML
+inspectorHTMLEdit.accesskey=ก
+
+# LOCALIZATION NOTE (inspectorCopyInnerHTML.label): This is the label shown
+# in the inspector contextual-menu for the item that lets users copy the
+# inner HTML of the current node
+inspectorCopyInnerHTML.label=HTML ภายใน
+inspectorCopyInnerHTML.accesskey=ภ
+
+# LOCALIZATION NOTE (inspectorCopyOuterHTML.label): This is the label shown
+# in the inspector contextual-menu for the item that lets users copy the
+# outer HTML of the current node
+inspectorCopyOuterHTML.label=HTML ภายนอก
+inspectorCopyOuterHTML.accesskey=ย
+
+# LOCALIZATION NOTE (inspectorCopyCSSSelector.label): This is the label
+# shown in the inspector contextual-menu for the item that lets users copy
+# the CSS Selector of the current node
+inspectorCopyCSSSelector.label=ตัวเลือก CSS
+inspectorCopyCSSSelector.accesskey=ต
+
+# LOCALIZATION NOTE (inspectorCopyCSSPath.label): This is the label
+# shown in the inspector contextual-menu for the item that lets users copy
+# the full CSS path of the current node
+inspectorCopyCSSPath.label=เส้นทาง CSS
+inspectorCopyCSSPath.accesskey=ส
+
+# LOCALIZATION NOTE (inspectorCopyXPath.label): This is the label
+# shown in the inspector contextual-menu for the item that lets users copy
+# the XPath of the current node
+inspectorCopyXPath.label=XPath
+inspectorCopyXPath.accesskey=X
+
+# LOCALIZATION NOTE (inspectorPasteOuterHTML.label): This is the label shown
+# in the inspector contextual-menu for the item that lets users paste outer
+# HTML in the current node
+inspectorPasteOuterHTML.label=HTML ภายนอก
+inspectorPasteOuterHTML.accesskey=ย
+
+# LOCALIZATION NOTE (inspectorPasteInnerHTML.label): This is the label shown
+# in the inspector contextual-menu for the item that lets users paste inner
+# HTML in the current node
+inspectorPasteInnerHTML.label=HTML ภายใน
+inspectorPasteInnerHTML.accesskey=ภ
+
+# LOCALIZATION NOTE (inspectorHTMLPasteBefore.label): This is the label shown
+# in the inspector contextual-menu for the item that lets users paste
+# the HTML before the current node
+inspectorHTMLPasteBefore.label=ก่อนหน้า
+inspectorHTMLPasteBefore.accesskey=ก
+
+# LOCALIZATION NOTE (inspectorHTMLPasteAfter.label): This is the label shown
+# in the inspector contextual-menu for the item that lets users paste
+# the HTML after the current node
+inspectorHTMLPasteAfter.label=หลังจาก
+inspectorHTMLPasteAfter.accesskey=ห
+
+# LOCALIZATION NOTE (inspectorHTMLPasteFirstChild.label): This is the label
+# shown in the inspector contextual-menu for the item that lets users paste
+# the HTML as the first child the current node
+inspectorHTMLPasteFirstChild.label=เป็นรายการย่อยแรก
+inspectorHTMLPasteFirstChild.accesskey=ป
+
+# LOCALIZATION NOTE (inspectorHTMLPasteLastChild.label): This is the label
+# shown in the inspector contextual-menu for the item that lets users paste
+# the HTML as the last child the current node
+inspectorHTMLPasteLastChild.label=เป็นรายการย่อยสุดท้าย
+inspectorHTMLPasteLastChild.accesskey=น
+
+# LOCALIZATION NOTE (inspectorScrollNodeIntoView.label): This is the label
+# shown in the inspector contextual-menu for the item that lets users scroll
+# the current node into view
+inspectorScrollNodeIntoView.label=เลื่อนไปในมุมมอง
+inspectorScrollNodeIntoView.accesskey=น
+
+# LOCALIZATION NOTE (inspectorHTMLDelete.label): This is the label shown in
+# the inspector contextual-menu for the item that lets users delete the
+# current node
+inspectorHTMLDelete.label=ลบโหนด
+inspectorHTMLDelete.accesskey=ล
+
+# LOCALIZATION NOTE (inspectorAttributesSubmenu.label): This is the label
+# shown in the inspector contextual-menu for the sub-menu of the other
+# attribute items, which allow to:
+# - add new attribute
+# - edit attribute
+# - remove attribute
+inspectorAttributesSubmenu.label=แอตทริบิวต์
+inspectorAttributesSubmenu.accesskey=อ
+
+# LOCALIZATION NOTE (inspectorAddAttribute.label): This is the label shown in
+# the inspector contextual-menu for the item that lets users add attribute
+# to current node
+inspectorAddAttribute.label=เพิ่มแอตทริบิวต์
+inspectorAddAttribute.accesskey=พ
+
+# LOCALIZATION NOTE (inspectorPseudoClassSubmenu.label): This is the label
+# shown in the inspector contextual-menu for the sub-menu of the pseudo-classes.
+inspectorPseudoClassSubmenu.label=เปลี่ยนคลาสแฝง
+
+# LOCALIZATION NOTE (inspectorBreakpointSubmenu.label): This is the label
+# shown in the inspector contextual-menu for the sub-menu of the DOM breakpoints.
+inspectorBreakpointSubmenu.label=พักเมื่อ…
+
+# LOCALIZATION NOTE (inspectorSubtreeModification.label): This is the label shown
+# in the inspector contextual-menu for the item that lets users add a DOM breakpoint
+# for subtree modification.
+inspectorSubtreeModification.label=การปรับเปลี่ยนทรีย่อย
+
+# LOCALIZATION NOTE (inspectorAttributeModification.label): This is the label shown
+# in the inspector contextual-menu for the item that lets users add a DOM breakpoint
+# for attribute modification.
+inspectorAttributeModification.label=การปรับเปลี่ยนแอตทริบิวต์
+
+# LOCALIZATION NOTE (inspectorNodeRemoval.label): This is the label shown
+# in the inspector contextual-menu for the item that lets users add a DOM breakpoint
+# for node removal.
+inspectorNodeRemoval.label=การเอาโหนดออก
+
+# LOCALIZATION NOTE (inspectorSearchHTML.label3): This is the label that is
+# shown as the placeholder for the markup view search in the inspector.
+inspectorSearchHTML.label3=ค้นหา HTML
+
+# LOCALIZATION NOTE (inspectorImageDataUri.label): This is the label
+# shown in the inspector contextual-menu for the item that lets users copy
+# the URL embedding the image data encoded in Base 64 (what we name
+# here Image Data URL). For more information:
+# https://developer.mozilla.org/en-US/docs/Web/HTTP/data_URIs
+inspectorImageDataUri.label=Data-URL ภาพ
+
+# LOCALIZATION NOTE (inspectorShowDOMProperties.label): This is the label
+# shown in the inspector contextual-menu for the item that lets users see
+# the DOM properties of the current node. When triggered, this item
+# opens the split Console and displays the properties in its side panel.
+inspectorShowDOMProperties.label=แสดงคุณสมบัติ DOM
+
+# LOCALIZATION NOTE (inspectorShowAccessibilityProperties.label): This is the
+# label shown in the inspector contextual-menu for the item that lets users see
+# the accessibility tree and accessibility properties of the current node.
+# When triggered, this item opens accessibility panel and selects an accessible
+# object for the given node.
+inspectorShowAccessibilityProperties.label=แสดงคุณสมบัติการช่วยการเข้าถึง
+
+# LOCALIZATION NOTE (inspectorUseInConsole.label): This is the label
+# shown in the inspector contextual-menu for the item that outputs a
+# variable for the current node to the console. When triggered,
+# this item opens the split Console.
+inspectorUseInConsole.label=ใช้ในคอนโซล
+
+# LOCALIZATION NOTE (inspectorExpandNode.label): This is the label
+# shown in the inspector contextual-menu for recursively expanding
+# mark-up elements
+inspectorExpandNode.label=ขยายทั้งหมด
+
+# LOCALIZATION NOTE (inspectorCollapseAll.label): This is the label
+# shown in the inspector contextual-menu for recursively collapsing
+# mark-up elements
+inspectorCollapseAll.label=ยุบทั้งหมด
+
+# LOCALIZATION NOTE (inspectorScreenshotNode.label): This is the label
+# shown in the inspector contextual-menu for the item that lets users take
+# a screenshot of the currently selected node.
+inspectorScreenshotNode.label=จับภาพหน้าจอโหนด
+
+# LOCALIZATION NOTE (inspectorDuplicateNode.label): This is the label
+# shown in the inspector contextual-menu for the item that lets users
+# duplicate the currently selected node.
+inspectorDuplicateNode.label=ทำสำเนาโหนด
+
+# LOCALIZATION NOTE (inspectorAddNode.label): This is the label shown in
+# the inspector toolbar for the button that lets users add elements to the
+# DOM (as children of the currently selected element).
+inspectorAddNode.label=สร้างโหนดใหม่
+inspectorAddNode.accesskey=ส
+
+# LOCALIZATION NOTE (inspectorCopyHTMLSubmenu.label): This is the label
+# shown in the inspector contextual-menu for the sub-menu of the other
+# copy items, which allow to:
+# - Copy Inner HTML
+# - Copy Outer HTML
+# - Copy Unique selector
+# - Copy Image data URI
+inspectorCopyHTMLSubmenu.label=คัดลอก
+
+# LOCALIZATION NOTE (inspectorPasteHTMLSubmenu.label): This is the label
+# shown in the inspector contextual-menu for the sub-menu of the other
+# paste items, which allow to:
+# - Paste Inner HTML
+# - Paste Outer HTML
+# - Before
+# - After
+# - As First Child
+# - As Last Child
+inspectorPasteHTMLSubmenu.label=วาง
+
+# LOCALIZATION NOTE (inspectorCustomElementDefinition.label): This is the label
+# shown in the inspector contextual-menu for custom elements to which a shadow root has
+# been attached. Clicking on the menu item will open the Debugger on the custom element
+# definition location.
+inspectorCustomElementDefinition.label=แสดงอิลิเมนต์ที่กำหนดเอง
+
+# LOCALIZATION NOTE (inspector.searchHTML.key):
+# Key shortcut used to focus the DOM element search box on top-right corner of
+# the markup view
+inspector.searchHTML.key=CmdOrCtrl+F
+
+# LOCALIZATION NOTE (markupView.hide.key):
+# Key shortcut used to hide the selected node in the markup view.
+markupView.hide.key=h
+
+# LOCALIZATION NOTE (markupView.edit.key):
+# Key shortcut used to hide the selected node in the markup view.
+markupView.edit.key=F2
+
+# LOCALIZATION NOTE (markupView.scrollInto.key):
+# Key shortcut used to scroll the webpage in order to ensure the selected node
+# is visible
+markupView.scrollInto.key=s
+
+# LOCALIZATION NOTE (inspector.sidebar.fontInspectorTitle):
+# This is the title shown in a tab in the side panel of the Inspector panel
+# that corresponds to the tool displaying the list of fonts used in the page.
+inspector.sidebar.fontInspectorTitle=แบบอักษร
+
+# LOCALIZATION NOTE (inspector.sidebar.changesViewTitle):
+# Title of the Changes sidebar tab shown in the Inspector panel. The Changes panel shows
+# style changes made using DevTools.
+inspector.sidebar.changesViewTitle=การเปลี่ยนแปลง
+
+# LOCALIZATION NOTE (inspector.sidebar.ruleViewTitle):
+# This is the title shown in a tab in the side panel of the Inspector panel
+# that corresponds to the tool displaying the list of CSS rules used
+# in the page.
+inspector.sidebar.ruleViewTitle=กฎ
+
+# LOCALIZATION NOTE (inspector.sidebar.computedViewTitle):
+# This is the title shown in a tab in the side panel of the Inspector panel
+# that corresponds to the tool displaying the list of computed CSS values
+# used in the page.
+inspector.sidebar.computedViewTitle=คำนวณ
+
+# LOCALIZATION NOTE (inspector.sidebar.layoutViewTitle2):
+# This is the title shown in a tab in the side panel of the Inspector panel
+# that corresponds to the tool displaying layout information defined in the page.
+inspector.sidebar.layoutViewTitle2=เค้าโครง
+
+# LOCALIZATION NOTE (inspector.sidebar.animationInspectorTitle):
+# This is the title shown in a tab in the side panel of the Inspector panel
+# that corresponds to the tool displaying animations defined in the page.
+inspector.sidebar.animationInspectorTitle=ภาพเคลื่อนไหว
+
+# LOCALIZATION NOTE (inspector.sidebar.compatibilityViewTitle):
+# This is the title shown in a tab in the side panel of the Inspector panel
+# that corresponds to the tool displaying web compatibility information about the page.
+inspector.sidebar.compatibilityViewTitle=ความเข้ากันได้
+
+# LOCALIZATION NOTE (inspector.eyedropper.label): A string displayed as the tooltip of
+# a button in the inspector which toggles the Eyedropper tool
+inspector.eyedropper.label=ดูดสีจากหน้า
+
+# LOCALIZATION NOTE (inspector.breadcrumbs.label): A string visible only to a screen reader and
+# is used to label (using aria-label attribute) a container for inspector breadcrumbs
+inspector.breadcrumbs.label=เส้นทาง
+
+# LOCALIZATION NOTE (inspector.browserStyles.label): This is the label for the checkbox
+# that specifies whether the styles that are not from the user's stylesheet should be
+# displayed or not.
+inspector.browserStyles.label=ลักษณะเบราว์เซอร์
+
+# LOCALIZATION NOTE (inspector.filterStyles.label): This is the label for the search box
+inspector.filterStyles.label=กรองสไตล์
+
+# LOCALIZATION NOTE (inspector.filterStyles.placeholder): This is the placeholder that
+# goes in the search box when no search term has been entered.
+inspector.filterStyles.placeholder=กรองสไตล์
+
+# LOCALIZATION NOTE (inspector.filterStylesClearButton.title): This is the title
+# for the search box clear button displayed when the input is not empty.
+inspector.filterStylesClearButton.title = ล้างการป้อนตัวกรอง
+
+# LOCALIZATION NOTE (inspector.addRule.tooltip): This is the tooltip shown when
+# hovering the `Add new rule` button in the rules view toolbar. This should
+# match ruleView.contextmenu.addNewRule in styleinspector.properties
+inspector.addRule.tooltip=เพิ่มกฎใหม่
+
+# LOCALIZATION NOTE (inspector.togglePseudo.tooltip): This is the tooltip
+# shown when hovering over the `Toggle Pseudo Class Panel` button in the
+# rule view toolbar.
+inspector.togglePseudo.tooltip=เปิด/ปิดคลาสแฝง
+
+# LOCALIZATION NOTE (inspector.classPanel.toggleClass.tooltip): This is the tooltip
+# shown when hovering over the `Toggle Class Panel` button in the
+# rule view toolbar.
+inspector.classPanel.toggleClass.tooltip=เปิด/ปิดคลาส
+
+# LOCALIZATION NOTE (inspector.classPanel.newClass.placeholder): This is the placeholder
+# shown inside the text field used to add a new class in the rule-view.
+inspector.classPanel.newClass.placeholder=เพิ่มคลาสใหม่
+
+# LOCALIZATION NOTE (inspector.classPanel.noClasses): This is the text displayed in the
+# class panel when the current element has no classes applied.
+inspector.classPanel.noClasses=ไม่มีคลาสบนอิลิเมนต์นี้
+
+# LOCALIZATION NOTE (inspector.noProperties): In the case where there are no CSS
+# properties to display e.g. due to search criteria this message is
+# displayed.
+inspector.noProperties=ไม่พบคุณสมบัติ CSS
+
+# LOCALIZATION NOTE (inspector.printSimulation.tooltip):
+# This is the tooltip of the print simulation button in the Rule View toolbar
+# that toggles print simulation.
+inspector.printSimulation.tooltip = เปิด/ปิดการจำลองสื่อสิ่งพิมพ์สำหรับหน้า
+
+# LOCALIZATION NOTE (inspector.colorSchemeSimulationLight.tooltip):
+# This is the tooltip of the light color scheme simulation button in the Rule View
+# toolbar that toggles light color scheme simulation.
+inspector.colorSchemeSimulationLight.tooltip=เปิด/ปิดการจำลองแบบแผนสีสว่างสำหรับหน้า
+
+# LOCALIZATION NOTE (inspector.colorSchemeSimulationDark.tooltip):
+# This is the tooltip of the dark color scheme simulation button in the Rule View
+# toolbar that toggles dark color scheme simulation.
+inspector.colorSchemeSimulationDark.tooltip=เปิด/ปิดการจำลองแบบแผนสีมืดสำหรับหน้า
+
+# LOCALIZATION NOTE (markupView.scrollableBadge.label): This is the text displayed inside a
+# badge, in the inspector, next to nodes that are scrollable in the page.
+markupView.scrollableBadge.label=เลื่อน
+
+# LOCALIZATION NOTE (markupView.scrollableBadge.tooltip): This is the tooltip that is displayed
+# when hovering over badges next to scrollable elements in the inspector.
+markupView.scrollableBadge.tooltip=อิลิเมนต์นี้มีส่วนล้นแบบเลื่อนได้
+
+# LOCALIZATION NOTE (markupView.scrollableBadge.interactive.tooltip): This is the tooltip that is displayed
+# when hovering over interactive badges next to scrollable elements in the inspector.
+markupView.scrollableBadge.interactive.tooltip=อิลิเมนต์นี้มีส่วนล้นแบบเลื่อนได้ คลิกเพื่อเปิดเผยอิลิเมนต์ที่ทำให้เกิดส่วนล้น
+
+# LOCALIZATION NOTE (markupView.overflowBadge.label): This is the text displayed inside a
+# badge, in the inspector, next to nodes that are causing overflow in other elements.
+markupView.overflowBadge.label=overflow
+
+# LOCALIZATION NOTE (markupView.overflowBadge.tooltip): This is the tooltip that is displayed
+# when hovering over badges next to overflow causing elements in the inspector.
+markupView.overflowBadge.tooltip=อิลิเมนต์นี้กำลังทำให้อิลิเมนต์เกิดส่วนล้น
+
+# LOCALIZATION NOTE (rulePreviewTooltip.noAssociatedRule): This is the text displayed inside
+# the RulePreviewTooltip when a rule cannot be found for a CSS property declaration.
+rulePreviewTooltip.noAssociatedRule=ไม่มีกฎที่เกี่ยวข้อง
+
+# LOCALIZATION NOTE (colorPickerTooltip.contrastAgainstBgTitle): A title text for the
+# contrast ratio value description that labels the background the color contrast ratio is calculated
+# against, used together with the actual background color. %S in the content will be replaced by a
+# span (containing bg color swatch) and textNode (containing bg color hex string) at run time
+colorPickerTooltip.contrastAgainstBgTitle=คำนวณในเบื้องหลัง: %S
+
+# LOCALIZATION NOTE (colorPickerTooltip.spectrumDraggerTitle): A title text for the
+# spectrum dragger panel in the color picker tooltip.
+colorPickerTooltip.spectrumDraggerTitle=สเปกตรัม
+
+# LOCALIZATION NOTE (colorPickerTooltip.eyedropperTitle): A title text for the
+# eyedropper in the color picker tooltip.
+colorPickerTooltip.eyedropperTitle=เลือกสีบนหน้า
+
+# LOCALIZATION NOTE (colorPickerTooltip.colorNameTitle): A title text for the
+# closest color name shown in the color picker tooltip, used together with the actual color.
+# %S in the content will be replaced by the color name the current color is closest to.
+colorPickerTooltip.colorNameTitle=ใกล้เคียงที่สุดกับ: %S
+
+# LOCALIZATION NOTE (colorPickerTooltip.hueSliderTitle): A title text for the
+# hue slider in the color picker tooltip.
+colorPickerTooltip.hueSliderTitle=สีสัน
+
+# LOCALIZATION NOTE (colorPickerTooltip.alphaSliderTitle): A title text for the
+# alpha slider in the color picker tooltip.
+colorPickerTooltip.alphaSliderTitle=ความทึบ
+
+# LOCALIZATION NOTE (colorPickerTooltip.contrast.large.title): A title text for the color
+# contrast ratio description in the color picker tooltip, used together with the specification
+# that the color contrast criteria used is for large text. %S in the content will be replaced by a
+# large text indicator span at run time.
+colorPickerTooltip.contrast.large.title=ความเปรียบต่าง %S:
diff --git a/l10n-th/devtools/client/jsonview.properties b/l10n-th/devtools/client/jsonview.properties
new file mode 100644
index 0000000000..8288e17086
--- /dev/null
+++ b/l10n-th/devtools/client/jsonview.properties
@@ -0,0 +1,45 @@
+# 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 These strings are used in the JSON View tool
+# that is used to inspect application/json document types loaded
+# in the browser.
+
+# LOCALIZATION NOTE The correct localization of this file might be to keep it
+# in English, or another language commonly spoken among web developers.
+# You want to make that choice consistent across the developer tools.
+# A good criteria is the language in which you'd find the best documentation
+# on web development on the web.
+
+# LOCALIZATION NOTE (jsonViewer.tab.JSON, jsonViewer.tab.RawData,
+# jsonViewer.tab.Headers): Label for a panel tab.
+jsonViewer.tab.JSON=JSON
+jsonViewer.tab.RawData=ข้อมูลดิบ
+jsonViewer.tab.Headers=เฮดเดอร์
+
+# LOCALIZATION NOTE (jsonViewer.responseHeaders, jsonViewer.requestHeaders):
+# Label for header groups within the 'Headers' panel.
+jsonViewer.responseHeaders=เฮดเดอร์การตอบสนอง
+jsonViewer.requestHeaders=เฮดเดอร์คำขอ
+
+# LOCALIZATION NOTE (jsonViewer.Save): Label for save command
+jsonViewer.Save=บันทึก
+
+# LOCALIZATION NOTE (jsonViewer.Copy): Label for clipboard copy command
+jsonViewer.Copy=คัดลอก
+
+# LOCALIZATION NOTE (jsonViewer.ExpandAll): Label for expanding all nodes
+jsonViewer.ExpandAll=ขยายทั้งหมด
+jsonViewer.ExpandAllSlow=ขยายทั้งหมด (ช้า)
+
+# LOCALIZATION NOTE (jsonViewer.CollapseAll): Label for collapsing all nodes
+jsonViewer.CollapseAll=ยุบทั้งหมด
+
+# LOCALIZATION NOTE (jsonViewer.PrettyPrint): Label for JSON
+# pretty print action button.
+jsonViewer.PrettyPrint=แสดงแบบสวยงาม
+
+# LOCALIZATION NOTE (jsonViewer.filterJSON): Label used in search box
+# at the top right cornder of the JSON Viewer.
+jsonViewer.filterJSON=กรอง JSON
diff --git a/l10n-th/devtools/client/layout.properties b/l10n-th/devtools/client/layout.properties
new file mode 100644
index 0000000000..e456935659
--- /dev/null
+++ b/l10n-th/devtools/client/layout.properties
@@ -0,0 +1,138 @@
+# 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 This file contains the Layout Inspector strings.
+# The Layout Inspector is a panel accessible in the Inspector sidebar.
+
+# LOCALIZATION NOTE (flexbox.header): The accordion header for the Flexbox panel when
+# no flex container or item is selected.
+flexbox.header=Flexbox
+
+# LOCALIZATION NOTE (flexbox.backButtonLabel): The spoken label for the button
+# that returns from the display of a flex item to the flex item list.
+# This label is spoken by screen readers, not displayed on screen.
+flexbox.backButtonLabel=กลับไปที่ตัวบรรจุ Flex
+
+# LOCALIZATION (flexbox.flexContainer): The accordion header for the Flexbox panel
+# when a flex container is selected.
+flexbox.flexContainer=ตัวบรรจุ Flex
+
+# LOCALIZATION NOTE) (flexbox.flexItemOf): The accordion header for the Flexbox panel
+# when a flex item is selected. %s represents the flex container selector.
+flexbox.flexItemOf=รายการ Flex ของ %S
+
+# LOCALIZATION NOTE (flexbox.noFlexboxeOnThisPage): In the case where there are no CSS
+# flex containers to display.
+flexbox.noFlexboxeOnThisPage=เลือกตัวบรรจุ Flex หรือรายการเพื่อดำเนินการต่อ
+
+# LOCALIZATION NOTE (flexbox.flexItems): Header label displayed for the flex item list.
+flexbox.flexItems=รายการ Flex
+
+# LOCALIZATION NOTE (flexbox.noFlexItems): Label shown in the flex items list section if
+# there are no flex items for the flex container to display.
+flexbox.noFlexItems=ไม่มีรายการ Flex
+
+# LOCALIZATION NOTE (flexbox.itemSizing.baseSizeSectionHeader): Header label displayed
+# at the start of the flex item sizing Base Size section.
+flexbox.itemSizing.baseSizeSectionHeader=ขนาดฐาน
+
+# LOCALIZATION NOTE (flexbox.itemSizing.flexibilitySectionHeader): Header label displayed
+# at the start of the flex item sizing Flexibility section.
+flexbox.itemSizing.flexibilitySectionHeader=ความยืดหยุ่น
+
+# LOCALIZATION NOTE (flexbox.itemSizing.minSizeSectionHeader): Header label displayed
+# at the start of the flex item sizing Minimum Size section.
+flexbox.itemSizing.minSizeSectionHeader=ขนาดต่ำสุด
+
+# LOCALIZATION NOTE (flexbox.itemSizing.maxSizeSectionHeader): Header label displayed at
+# the start of the flex item sizing Maximum Size section.
+flexbox.itemSizing.maxSizeSectionHeader=ขนาดสูงสุด
+
+# LOCALIZATION NOTE (flexbox.itemSizing.finalSizeSectionHeader): Header label displayed at
+# the start of the flex item sizing Final Size section.
+flexbox.itemSizing.finalSizeSectionHeader=ขนาดสุดท้าย
+
+# LOCALIZATION NOTE (flexbox.itemSizing.itemContentSize): Label shown in the flex item
+# sizing panel. It tells users that a given item’s base size was calculated from its
+# content size when unconstrained.
+flexbox.itemSizing.itemContentSize=ขนาดเนื้อหา
+
+# LOCALIZATION NOTE (flexbox.itemSizing.clampedToMax): Label shown in the flexbox item
+# sizing panel. It tells users that a given item attempted to grow but ended up being
+# clamped to a smaller max size.
+# (Note that clamp is a common word in flexbox terminology. It refers to constraining an
+# item's size to some defined min/max-width/height set on the element, even though there
+# might have been room for it to grow, or reason for it to shrink more).
+flexbox.itemSizing.clampedToMax=รายการถูกบีบให้มีขนาดสูงสุด
+
+# LOCALIZATION NOTE (flexbox.itemSizing.clampedToMin): Label shown in the flexbox item
+# sizing panel. It tells users that a given item attempted to grow but ended up being
+# clamped to a larger min size.
+# (Note that clamp is a common word in flexbox terminology. It refers to constraining an
+# item's size to some defined min/max-width/height set on the element, even though there
+# might have been room for it to grow, or reason for it to shrink more).
+flexbox.itemSizing.clampedToMin=รายการถูกบีบให้มีขนาดต่ำสุด
+
+# LOCALIZATION NOTE (flexbox.itemSizing.setToGrow): Label shown in the flex item sizing
+# panel. It tells users that a given item was set to grow.
+flexbox.itemSizing.setToGrow=รายการถูกตั้งค่าให้เพิ่มขนาด
+
+# LOCALIZATION NOTE (flexbox.itemSizing.setToShrink): Label shown in the flexbox item
+# sizing panel. It tells users that a given item was set to shrink.
+flexbox.itemSizing.setToShrink=รายการถูกตั้งค่าให้ลดขนาด
+
+# LOCALIZATION NOTE (flexbox.itemSizing.notSetToGrow): Label shown in the
+# flexbox item sizing panel. It tells users that a given item was not set to grow, even
+# though there might have been space on the flex line for it to grow.
+flexbox.itemSizing.notSetToGrow=รายการไม่ได้ถูกตั้งค่าให้เพิ่มขนาด
+
+# LOCALIZATION NOTE (flexbox.itemSizing.notSetToShrink): Label shown in the
+# flexbox item sizing panel. It tells users that a given item did not shrink even though
+# there might not have been enough space on the flex line for all items to fit.
+flexbox.itemSizing.notSetToShrink=รายการไม่ได้ถูกตั้งค่าให้ลดขนาด
+
+# LOCALIZATION NOTE (flexbox.togglesFlexboxHighlighter2): The tooltip text for the Flexbox
+# toggle button.
+flexbox.togglesFlexboxHighlighter2=เปิด/ปิดตัวเน้น Flexbox
+
+# LOCALIZATION NOTE (layout.overlayCheckbox.label): Label used for checkboxes in the grid
+# sections of the layout panel that control the display of the grid highlighter.
+layout.toggleGridHighlighter=เปิด/ปิดตัวเน้นกริด
+
+# LOCALIZATION NOTE (layout.cannotShowGridOutline, layout.cannotSHowGridOutline.title):
+# In the case where the grid outline cannot be effectively displayed.
+layout.cannotShowGridOutline=ไม่สามารถแสดงเค้าร่างสำหรับเส้นตารางนี้
+layout.cannotShowGridOutline.title=ไม่สามารถปรับเค้าร่างของเส้นตารางที่เลือกให้พอดีกับภายในแผงเค้าโครงได้อย่างมีประสิทธิภาพเพื่อให้สามารถใช้งานได้
+
+# LOCALIZATION NOTE (layout.displayAreaNames): Label of the display area names setting
+# option in the CSS Grid panel.
+layout.displayAreaNames=แสดงชื่อพื้นที่
+
+# LOCALIZATION NOTE (layout.displayLineNumbers): Label of the display line numbers
+# setting option in the CSS Grid panel.
+layout.displayLineNumbers=แสดงตัวเลขบอกบรรทัด
+
+# LOCALIZATION NOTE (layout.extendLinesInfinitely): Label of the extend lines
+# infinitely setting option in the CSS Grid panel.
+layout.extendLinesInfinitely=ขยายเส้นไปอย่างไม่มีขอบเขต
+
+# LOCALIZATION NOTE (layout.header): The accordion header for the CSS Grid panel.
+layout.header=เส้นตาราง
+
+# LOCALIZATION NOTE (layout.gridDisplaySettings): The header for the grid display
+# settings container in the CSS Grid panel.
+layout.gridDisplaySettings=การตั้งค่าการแสดง Grid
+
+# LOCALIZATION NOTE (layout.noGridsOnThisPage): In the case where there are no CSS grid
+# containers to display.
+layout.noGridsOnThisPage=ไม่มีการใช้ CSS Grid ในหน้านี้
+
+# LOCALIZATION NOTE (layout.overlayGrid): Alternate header for the list of grid container
+# elements if only one item can be selected.
+layout.overlayGrid=แสดงเส้นตารางแบบซ้อนทับกัน
+
+# LOCALIZATION NOTE (layout.colorSwatch.tooltip): Text displayed in a tooltip
+# when the mouse is over a color swatch in the layout panel (for flexbox/grid highlighter color).
+# %s represents the current selected color in hex format (e.g. #FF0000).
+layout.colorSwatch.tooltip=สวอตช์สี: %S คลิกเพื่อเปิดเครื่องมือเลือกสี
diff --git a/l10n-th/devtools/client/memory.properties b/l10n-th/devtools/client/memory.properties
new file mode 100644
index 0000000000..5136147900
--- /dev/null
+++ b/l10n-th/devtools/client/memory.properties
@@ -0,0 +1,434 @@
+# 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 These strings are used inside the Memory Tools
+# which is available from the Web Developer sub-menu -> 'Memory'.
+# The correct localization of this file might be to keep it in
+# English, or another language commonly spoken among web developers.
+# You want to make that choice consistent across the developer tools.
+# A good criteria is the language in which you'd find the best
+# documentation on web development on the web.
+
+# LOCALIZATION NOTE These strings are used inside the Memory Tools
+# which is available from the Browser Tools sub-menu -> 'Memory'.
+# The correct localization of this file might be to keep it in
+# English, or another language commonly spoken among web developers.
+# You want to make that choice consistent across the developer tools.
+# A good criteria is the language in which you'd find the best
+# documentation on web development on the web.
+
+# LOCALIZATION NOTE (snapshot.io.save): The label for the link that saves a
+# snapshot to disk.
+snapshot.io.save=บันทึก
+
+# LOCALIZATION NOTE (snapshot.io.delete): The label for the link that deletes
+# a snapshot
+snapshot.io.delete=ลบ
+
+# LOCALIZATION NOTE (snapshot.io.save.window): The title for the window
+# displayed when saving a snapshot to disk.
+snapshot.io.save.window=บันทึกสแนปช็อต
+
+# LOCALIZATION NOTE (snapshot.io.import.window): The title for the window
+# displayed when importing a snapshot form disk.
+snapshot.io.import.window=นำเข้าสแนปช็อต
+
+# LOCALIZATION NOTE (snapshot.io.filter): The title for the filter used to
+# filter file types (*.fxsnapshot)
+snapshot.io.filter=Firefox Snapshots
+
+# LOCALIZATION NOTE (aggregate.mb): The label annotating the number of bytes (in
+# megabytes) in a snapshot. %S represents the value, rounded to 2 decimal
+# points.
+aggregate.mb=%S MB
+
+# LOCALIZATION NOTE (snapshot-title.loading): The title for a snapshot before
+# it has a creation time to display.
+snapshot-title.loading=กำลังประมวลผล…
+
+# LOCALIZATION NOTE (checkbox.recordAllocationStacks): The label describing the
+# boolean checkbox whether or not to record call stacks.
+checkbox.recordAllocationStacks=อัดบันทึกสแตกการเรียก
+
+# LOCALIZATION NOTE (checkbox.recordAllocationStacks.tooltip): The tooltip for
+# the label describing the boolean checkbox whether or not to record call
+# stacks.
+checkbox.recordAllocationStacks.tooltip=เปิด/ปิดการอัดบันทึกสแตกการเรียกเมื่อวัตถุถูกจัดสรร สแนปช็อตต่อไปจะสามารถจัดกลุ่มและกำหนดป้ายกำกับให้กับวัตถุตามสแตกการเรียก โดยจะดำเนินการกับวัตถุที่สร้างหลังจากเปิด/ปิดตัวเลือกนี้เท่านั้น การอัดบันทึกสแตกการเรียกต้องใช้ประสิทธิภาพมาก
+
+# LOCALIZATION NOTE (toolbar.displayBy): The label describing the select menu
+# options of the display options.
+toolbar.displayBy=จัดกลุ่มตาม:
+
+# LOCALIZATION NOTE (toolbar.displayBy.tooltip): The tooltip for the label
+# describing the select menu options of the display options.
+toolbar.displayBy.tooltip=เปลี่ยนวิธีจัดกลุ่มวัตถุ
+
+# LOCALIZATION NOTE (toolbar.pop-view): The text in the button to go back to the
+# previous view.
+toolbar.pop-view=←
+
+# LOCALIZATION NOTE (toolbar.pop-view.label): The text for the label for the
+# button to go back to the previous view.
+toolbar.pop-view.label=กลับไปที่ค่ารวม
+
+# LOCALIZATION NOTE (toolbar.viewing-individuals): The text letting the user
+# know that they are viewing individual nodes from a census group.
+toolbar.viewing-individuals=⁂ ดูแต่ละรายการในกลุ่ม
+
+# LOCALIZATION NOTE (censusDisplays.coarseType.tooltip): The tooltip for the
+# "coarse type" display option.
+censusDisplays.coarseType.tooltip=จัดกลุ่มรายการตามชนิด
+
+# LOCALIZATION NOTE (censusDisplays.allocationStack.tooltip): The tooltip for
+# the "call stack" display option.
+censusDisplays.allocationStack.tooltip=จัดกลุ่มรายการตามสแตก JavaScript ที่อัดบันทึกเมื่อวัตถุถูกจัดสรร
+
+# LOCALIZATION NOTE (censusDisplays.invertedAllocationStack.tooltip): The
+# tooltip for the "inverted call stack" display option.
+censusDisplays.invertedAllocationStack.tooltip=จัดกลุ่มรายการตามสแตกการเรียก JavaScript แบบย้อนกลับที่อัดบันทึกเมื่อวัตถุถูกสร้างขึ้น
+
+# LOCALIZATION NOTE (toolbar.labelBy): The label describing the select menu
+# options of the label options.
+toolbar.labelBy=ติดป้ายโดย:
+
+# LOCALIZATION NOTE (toolbar.labelBy.tooltip): The tooltip for the label describing the
+# select menu options of the label options.
+toolbar.labelBy.tooltip=เปลี่ยนวิธีติดป้ายกำกับวัตถุ
+
+# LOCALIZATION NOTE (dominatorTreeDisplays.coarseType.tooltip): The tooltip for
+# the "coarse type" dominator tree display option.
+dominatorTreeDisplays.coarseType.tooltip=กำหนดป้ายกำกับให้กับวัตถุตามหมวดหมู่กว้าง ๆ ที่มีขนาดพอดี
+
+# LOCALIZATION NOTE (dominatorTreeDisplays.allocationStack.tooltip): The
+# tooltip for the "call stack" dominator tree display option.
+dominatorTreeDisplays.allocationStack.tooltip=กำหนดป้ายกำกับให้กับวัตถุตามสแตก JavaScript ที่อัดบันทึกเมื่อถูกจัดสรร
+
+# LOCALIZATION NOTE (treeMapDisplays.coarseType.tooltip): The tooltip for
+# the "coarse type" tree map display option.
+treeMapDisplays.coarseType.tooltip=กำหนดป้ายกำกับให้กับวัตถุตามหมวดหมู่กว้าง ๆ ที่มีขนาดพอดี
+
+# LOCALIZATION NOTE (toolbar.view): The label for the view selector in the
+# toolbar.
+toolbar.view=มุมมอง:
+
+# LOCALIZATION NOTE (toolbar.view.tooltip): The tooltip for the label for the
+# view selector in the toolbar.
+toolbar.view.tooltip=เปลี่ยนมุมมองของสแนปช็อต
+
+# LOCALIZATION NOTE (toolbar.view.census): The label for the census view option
+# in the toolbar.
+toolbar.view.census=ค่ารวม
+
+# LOCALIZATION NOTE (toolbar.view.census.tooltip): The tooltip for the label for
+# the census view option in the toolbar.
+toolbar.view.census.tooltip=ดูสรุปเนื้อหาของสแนปช็อตโดยรวมวัตถุเป็นกลุ่ม
+
+# LOCALIZATION NOTE (toolbar.view.dominators): The label for the dominators view
+# option in the toolbar.
+toolbar.view.dominators=ตัวควบคุม
+
+# LOCALIZATION NOTE (toolbar.view.dominators.tooltip): The tooltip for the label
+# for the dominators view option in the toolbar.
+toolbar.view.dominators.tooltip=ดูต้นไม้ตัวควบคุมและทำโครงสร้างที่ใหญ่ที่สุดในสแนปช็อตให้มีขนาดเท่ากัน
+
+# LOCALIZATION NOTE (toolbar.view.treemap): The label for the tree map option
+# in the toolbar.
+toolbar.view.treemap=แผนที่ต้นไม้
+
+# LOCALIZATION NOTE (toolbar.view.treemap.tooltip): The tooltip for the label for
+# the tree map view option in the toolbar.
+toolbar.view.treemap.tooltip=แสดงภาพการใช้หน่วยความจำ: บล็อกที่มีขนาดใหญ่หมายถึงมีเปอร์เซ็นต์การใช้หน่วยความจำมาก
+
+# LOCALIZATION NOTE (take-snapshot): The label describing the button that
+# initiates taking a snapshot, either as the main label, or a tooltip.
+take-snapshot=ถ่ายสแนปช็อต
+
+# LOCALIZATION NOTE (import-snapshot): The label describing the button that
+# initiates importing a snapshot.
+import-snapshot=นำเข้า…
+
+# LOCALIZATION NOTE (clear-snapshots.tooltip): The tooltip for the button that
+# deletes existing snapshot.
+clear-snapshots.tooltip=ลบสแนปช็อตทั้งหมด
+
+# LOCALIZATION NOTE (diff-snapshots.tooltip): The tooltip for the button that
+# initiates selecting two snapshots to diff with each other.
+diff-snapshots.tooltip=เปรียบเทียบสแนปช็อต
+
+# LOCALIZATION NOTE (filter.placeholder): The placeholder text used for the
+# memory tool's filter search box.
+filter.placeholder=ตัวกรอง
+
+# LOCALIZATION NOTE (filter.tooltip): The tooltip text used for the memory
+# tool's filter search box.
+filter.tooltip=กรองเนื้อหาของสแนปช็อต
+
+# LOCALIZATION NOTE (tree-item.view-individuals.tooltip): The tooltip for the
+# button to view individuals in this group.
+tree-item.view-individuals.tooltip=ดูแต่ละโหนดที่อยู่ในกลุ่มนี้และเส้นทางการเก็บข้อมูลของแต่ละโหนด
+
+# LOCALIZATION NOTE (tree-item.load-more): The label for the links to fetch the
+# lazily loaded sub trees in the dominator tree view.
+tree-item.load-more=โหลดเพิ่มเติม…
+
+# LOCALIZATION NOTE (tree-item.rootlist): The label for the root of the
+# dominator tree.
+tree-item.rootlist=ราก GC
+
+# LOCALIZATION NOTE (tree-item.nostack): The label describing the row in the heap tree
+# that represents a row broken down by call stack when no stack was available.
+tree-item.nostack=(ไม่มีสแตก)
+
+# LOCALIZATION NOTE (tree-item.nofilename): The label describing the row in the
+# heap tree that represents a row broken down by filename when no filename was
+# available.
+tree-item.nofilename=(ไม่มีชื่อไฟล์)
+
+# LOCALIZATION NOTE (tree-item.root): The label describing the row in the heap tree
+# that represents the root of the tree when inverted.
+tree-item.root=(ราก)
+
+# LOCALIZATION NOTE (tree-item.percent2): A percent of bytes or count displayed in the tree view.
+# there are two "%" after %S to escape and display "%"
+tree-item.percent2=%S%%
+
+# LOCALIZATION NOTE (diffing.baseline): The name of the baseline snapshot in a
+# diffing comparison.
+diffing.baseline=ขั้นต้น
+
+# LOCALIZATION NOTE (diffing.comparison): The name of the snapshot being
+# compared to the baseline in a diffing comparison.
+diffing.comparison=การเปรียบเทียบ
+
+# LOCALIZATION NOTE (diffing.prompt.selectBaseline): The prompt to select the
+# first snapshot when doing a diffing comparison.
+diffing.prompt.selectBaseline=เลือกสแนปช็อตขั้นต้น
+
+# LOCALIZATION NOTE (diffing.prompt.selectComparison): The prompt to select the
+# second snapshot when doing a diffing comparison.
+diffing.prompt.selectComparison=เลือกสแนปช็อตเพื่อเปรียบเทียบกับสแนปช็อตขั้นต้น
+
+# LOCALIZATION NOTE (diffing.state.error): The label describing the diffing
+# state ERROR, used in the snapshot list when an error occurs while diffing two
+# snapshots.
+diffing.state.error=ข้อผิดพลาด
+
+# LOCALIZATION NOTE (diffing.state.error.full): The text describing the diffing
+# state ERROR, used in the main view when an error occurs while diffing two
+# snapshots.
+diffing.state.error.full=มีข้อผิดพลาดขณะเปรียบเทียบสแนปช็อต
+
+# LOCALIZATION NOTE (diffing.state.taking-diff): The label describing the diffin
+# state TAKING_DIFF, used in the snapshots list when computing the difference
+# between two snapshots.
+diffing.state.taking-diff=กำลังคำนวณความแตกต่าง…
+
+# LOCALIZATION NOTE (diffing.state.taking-diff.full): The label describing the
+# diffing state TAKING_DIFF, used in the main view when computing the difference
+# between two snapshots.
+diffing.state.taking-diff.full=กำลังคำนวณความแตกต่าง…
+
+# LOCALIZATION NOTE (diffing.state.selecting): The label describing the diffing
+# state SELECTING.
+diffing.state.selecting=เลือก 2 สแนปช็อตที่จะเปรียบเทียบ
+
+# LOCALIZATION NOTE (diffing.state.selecting.full): The label describing the
+# diffing state SELECTING, used in the main view when selecting snapshots to
+# diff.
+diffing.state.selecting.full=เลือก 2 สแนปช็อตที่จะเปรียบเทียบ
+
+# LOCALIZATION NOTE (dominatorTree.state.computing): The label describing the
+# dominator tree state COMPUTING.
+dominatorTree.state.computing=กำลังสร้างรายงานตัวควบคุม…
+
+# LOCALIZATION NOTE (dominatorTree.state.computing.full): The label describing the
+# dominator tree state COMPUTING, used in the dominator tree view.
+dominatorTree.state.computing.full=กำลังสร้างรายงานตัวควบคุม…
+
+# LOCALIZATION NOTE (dominatorTree.state.fetching): The label describing the
+# dominator tree state FETCHING.
+dominatorTree.state.fetching=กำลังคำนวณขนาด…
+
+# LOCALIZATION NOTE (dominatorTree.state.fetching.full): The label describing the
+# dominator tree state FETCHING, used in the dominator tree view.
+dominatorTree.state.fetching.full=กำลังคำนวณขนาดสะสมของตัวควบคุม…
+
+# LOCALIZATION NOTE (dominatorTree.state.incrementalFetching): The label
+# describing the dominator tree state INCREMENTAL_FETCHING.
+dominatorTree.state.incrementalFetching=กำลังดึงข้อมูล…
+
+# LOCALIZATION NOTE (dominatorTree.state.incrementalFetching.full): The label describing the
+# dominator tree state INCREMENTAL_FETCHING, used in the dominator tree view.
+dominatorTree.state.incrementalFetching.full=กำลังดึงข้อมูลเพิ่มเติม…
+
+# LOCALIZATION NOTE (dominatorTree.state.error): The label describing the
+# dominator tree state ERROR.
+dominatorTree.state.error=ข้อผิดพลาด
+
+# LOCALIZATION NOTE (dominatorTree.state.error.full): The label describing the
+# dominator tree state ERROR, used in the dominator tree view.
+dominatorTree.state.error.full=เกิดข้อผิดพลาดขณะประมวลผลทรีตัวควบคุม
+
+# LOCALIZATION NOTE (snapshot.state.saving.full): The label describing the
+# snapshot state SAVING, used in the main heap view.
+snapshot.state.saving.full=กำลังบันทึกสแนปช็อต…
+
+# LOCALIZATION NOTE (snapshot.state.reading.full): The label describing the
+# snapshot state READING, and SAVED, due to these states being combined
+# visually, used in the main heap view.
+snapshot.state.reading.full=กำลังอ่านสแนปช็อต…
+
+# LOCALIZATION NOTE (snapshot.state.saving-census.full): The label describing
+# the snapshot state SAVING, used in the main heap view.
+snapshot.state.saving-census.full=กำลังสร้างรายงานค่ารวม…
+
+# LOCALIZATION NOTE (snapshot.state.saving-tree-map.full): The label describing
+# the snapshot state SAVING, used in the main heap view.
+snapshot.state.saving-tree-map.full=กำลังบันทึกแผนที่ต้นไม้…
+
+# LOCALIZATION NOTE (snapshot.state.error.full): The label describing the
+# snapshot state ERROR, used in the main heap view.
+snapshot.state.error.full=เกิดข้อผิดพลาดในการประมวลผลสแนปช็อตนี้
+
+# LOCALIZATION NOTE (individuals.state.error): The short message displayed when
+# there is an error fetching individuals from a group.
+individuals.state.error=ข้อผิดพลาด
+
+# LOCALIZATION NOTE (individuals.state.error.full): The longer message displayed
+# when there is an error fetching individuals from a group.
+individuals.state.error.full=มีข้อผิดพลาดขณะดึงข้อมูลของแต่ละรายการที่อยู่ในกลุ่ม
+
+# LOCALIZATION NOTE (individuals.state.fetching): The short message displayed
+# while fetching individuals.
+individuals.state.fetching=กำลังดึงข้อมูล…
+
+# LOCALIZATION NOTE (individuals.state.fetching.full): The longer message
+# displayed while fetching individuals.
+individuals.state.fetching.full=กำลังดึงข้อมูลของแต่ละรายการที่อยู่ในกลุ่ม…
+
+# LOCALIZATION NOTE (individuals.field.node): The header label for an individual
+# node.
+individuals.field.node=โหนด
+
+# LOCALIZATION NOTE (individuals.field.node.tooltip): The tooltip for the header
+# label for an individual node.
+individuals.field.node.tooltip=แต่ละโหนดที่อยู่ในสแนปช็อต
+
+# LOCALIZATION NOTE (snapshot.state.saving): The label describing the snapshot
+# state SAVING, used in the snapshot list view
+snapshot.state.saving=กำลังบันทึกสแนปช็อต…
+
+# LOCALIZATION NOTE (snapshot.state.importing): The label describing the
+# snapshot state IMPORTING, used in the snapshot list view
+snapshot.state.importing=กำลังนำเข้าสแนปช็อต…
+
+# LOCALIZATION NOTE (snapshot.state.reading): The label describing the snapshot
+# state READING, and SAVED, due to these states being combined visually, used in
+# the snapshot list view.
+snapshot.state.reading=กำลังอ่านสแนปช็อต…
+
+# LOCALIZATION NOTE (snapshot.state.saving-census): The label describing the
+# snapshot state SAVING, used in snapshot list view.
+snapshot.state.saving-census=กำลังบันทึกรายงาน…
+
+# LOCALIZATION NOTE (snapshot.state.saving-census): The label describing the
+# snapshot state SAVING, used in snapshot list view.
+snapshot.state.saving-tree-map=กำลังบันทึกแผนที่ต้นไม้…
+
+# LOCALIZATION NOTE (snapshot.state.error): The label describing the snapshot
+# state ERROR, used in the snapshot list view.
+snapshot.state.error=ข้อผิดพลาด
+
+# LOCALIZATION NOTE (heapview.no-difference): Message displayed when there is no
+# difference between two snapshots.
+heapview.no-difference=ไม่มีความแตกต่างระหว่างสแนปช็อตขั้นต้นกับสแนปช็อตที่นำมาเปรียบเทียบ
+
+# LOCALIZATION NOTE (heapview.none-match): Message displayed when there are no
+# matches when filtering.
+heapview.none-match=ไม่มีที่ตรงกัน
+
+# LOCALIZATION NOTE (heapview.none-match): Message displayed when there report
+# is empty.
+heapview.empty=ว่างเปล่า
+
+# LOCALIZATION NOTE (heapview.noAllocationStacks): The message displayed to
+# users when selecting a display by "call stack" but no call stacks
+# were recorded in the heap snapshot.
+heapview.noAllocationStacks=ไม่พบสแตกการเรียก อัดบันทึกสแตกการเรียกก่อนที่จะถ่ายสแนปช็อต
+
+# LOCALIZATION NOTE (heapview.field.retainedSize): The name of the column in the
+# dominator tree view for retained byte sizes.
+heapview.field.retainedSize=ขนาดที่เก็บ (ไบต์)
+
+# LOCALIZATION NOTE (heapview.field.retainedSize.tooltip): The tooltip for the
+# column header in the dominator tree view for retained byte sizes.
+heapview.field.retainedSize.tooltip=ผลรวมของขนาดของวัตถุเองและขนาดของวัตถุอื่นทั้งหมดที่เกี่ยวข้อง
+
+# LOCALIZATION NOTE (heapview.field.shallowSize): The name of the column in the
+# dominator tree view for shallow byte sizes.
+heapview.field.shallowSize=ขนาดโครงสร้างข้อมูลหลัก (ไบต์)
+
+# LOCALIZATION NOTE (heapview.field.shallowSize.tooltip): The tooltip for the
+# column header in the dominator tree view for shallow byte sizes.
+heapview.field.shallowSize.tooltip=ขนาดของวัตถุเอง
+
+# LOCALIZATION NOTE (dominatortree.field.label): The name of the column in the
+# dominator tree for an object's label.
+dominatortree.field.label=ตัวควบคุม
+
+# LOCALIZATION NOTE (dominatortree.field.label.tooltip): The tooltip for the column
+# header in the dominator tree view for an object's label.
+dominatortree.field.label.tooltip=ป้ายกำกับสำหรับวัตถุที่อยู่ในหน่วยความจำ
+
+# LOCALIZATION NOTE (heapview.field.bytes): The name of the column in the heap
+# view for bytes.
+heapview.field.bytes=ไบต์
+
+# LOCALIZATION NOTE (heapview.field.bytes.tooltip): The tooltip for the column
+# header in the heap view for bytes.
+heapview.field.bytes.tooltip=จำนวนไบต์ที่ใช้ไปโดยกลุ่มนี้ ไม่รวมถึงกลุ่มย่อย
+
+# LOCALIZATION NOTE (heapview.field.count): The name of the column in the heap
+# view for count.
+heapview.field.count=จำนวน
+
+# LOCALIZATION NOTE (heapview.field.count.tooltip): The tooltip for the column
+# header in the heap view for count.
+heapview.field.count.tooltip=จำนวนวัตถุที่เข้าถึงได้ที่อยู่ในกลุ่มนี้ ไม่รวมถึงกลุ่มย่อย
+
+# LOCALIZATION NOTE (heapview.field.totalbytes): The name of the column in the
+# heap view for total bytes.
+heapview.field.totalbytes=จำนวนไบต์รวม
+
+# LOCALIZATION NOTE (heapview.field.totalbytes.tooltip): The tooltip for the
+# column header in the heap view for total bytes.
+heapview.field.totalbytes.tooltip=จำนวนไบต์ที่ใช้ไปโดยกลุ่มนี้ รวมถึงกลุ่มย่อย
+
+# LOCALIZATION NOTE (heapview.field.totalcount): The name of the column in the
+# heap view for total count.
+heapview.field.totalcount=จำนวนรวม
+
+# LOCALIZATION NOTE (heapview.field.totalcount.tooltip): The tooltip for the
+# column header in the heap view for total count.
+heapview.field.totalcount.tooltip=จำนวนวัตถุที่เข้าถึงได้ที่อยู่ในกลุ่มนี้ รวมถึงกลุ่มย่อย
+
+# LOCALIZATION NOTE (heapview.field.name): The name of the column in the heap
+# view for name.
+heapview.field.name=กลุ่ม
+
+# LOCALIZATION NOTE (heapview.field.name.tooltip): The tooltip for the column
+# header in the heap view for name.
+heapview.field.name.tooltip=ชื่อของกลุ่ม
+
+# LOCALIZATION NOTE (shortest-paths.header): The header label for the shortest
+# paths pane.
+shortest-paths.header=เส้นทางการเก็บข้อมูล (จากรากตัวรวบรวมขยะ)
+
+# LOCALIZATION NOTE (shortest-paths.select-node): The message displayed in the
+# shortest paths pane when a node is not yet selected.
+shortest-paths.select-node=เลือกรายการเพื่อดูเส้นทางการเก็บข้อมูล
+
+# LOCALIZATION NOTE (tree-map.node-count): The label for the count value of a
+# node in the tree map
+tree-map.node-count=จำนวน
diff --git a/l10n-th/devtools/client/menus.properties b/l10n-th/devtools/client/menus.properties
new file mode 100644
index 0000000000..227b2d8aad
--- /dev/null
+++ b/l10n-th/devtools/client/menus.properties
@@ -0,0 +1,29 @@
+# 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 (devtoolsRemoteDebugging.label): This is the label for the menu item
+# in Tools > Web Developer. Clicking on this menu item will open about:debugging which
+# acts as a hub for debugging remote devices.
+devtoolsRemoteDebugging.label = การดีบั๊กระยะไกล
+devtoolsRemoteDebugging.accesskey = ก
+
+browserConsoleCmd.label = คอนโซลเบราว์เซอร์
+browserConsoleCmd.accesskey = ค
+
+responsiveDesignMode.label = โหมดการออกแบบเชิงตอบสนอง
+responsiveDesignMode.accesskey = ห
+
+eyedropper.label = หลอดดูดสี
+eyedropper.accesskey = ล
+
+# LOCALIZATION NOTE (browserToolboxMenu.label): This is the label for the
+# application menu item that opens the browser toolbox UI in the Tools menu.
+browserToolboxMenu.label = กล่องเครื่องมือเบราว์เซอร์
+browserToolboxMenu.accesskey = อ
+
+webDeveloperToolsMenu.label = เครื่องมือนักพัฒนาเว็บ
+webDeveloperToolsMenu.accesskey = ค
+
+extensionsForDevelopersCmd.label = ส่วนขยายสำหรับนักพัฒนา
+extensionsForDevelopersCmd.accesskey = ร
diff --git a/l10n-th/devtools/client/netmonitor.properties b/l10n-th/devtools/client/netmonitor.properties
new file mode 100644
index 0000000000..f995ecab00
--- /dev/null
+++ b/l10n-th/devtools/client/netmonitor.properties
@@ -0,0 +1,1707 @@
+# 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 These strings are used inside the Network Monitor
+# which is available from the Browser Tools sub-menu -> 'Network Monitor'.
+# The correct localization of this file might be to keep it in
+# English, or another language commonly spoken among web developers.
+# You want to make that choice consistent across the developer tools.
+# A good criteria is the language in which you'd find the best
+# documentation on web development on the web.
+
+# LOCALIZATION NOTE (netmonitor.security.state.secure)
+# This string is used as an tooltip for request that was performed over secure
+# channel i.e. the connection was encrypted.
+netmonitor.security.state.secure=การเชื่อมต่อที่ใช้ดึงทรัพยากรนี้ปลอดภัย
+
+# LOCALIZATION NOTE (netmonitor.security.state.insecure)
+# This string is used as an tooltip for request that was performed over insecure
+# channel i.e. the connection was not https
+netmonitor.security.state.insecure=การเชื่อมต่อที่ใช้ดึงทรัพยากรนี้ไม่ปลอดภัย
+
+# LOCALIZATION NOTE (netmonitor.security.state.broken)
+# This string is used as an tooltip for request that failed due to security
+# issues.
+netmonitor.security.state.broken=ข้อผิดพลาดความปลอดภัยป้องกันไม่ให้ทรัพยากรถูกโหลด
+
+# LOCALIZATION NOTE (netmonitor.security.state.weak)
+# This string is used as an tooltip for request that had minor security issues
+netmonitor.security.state.weak=ทรัพยากรนี้ถูกถ่ายโอนผ่านการเชื่อมต่อที่ใช้การเข้ารหัสที่อ่อนแอ
+
+# LOCALIZATION NOTE (netmonitor.security.enabled):
+# This string is used to indicate that a specific security feature is used by
+# a connection in the security details tab.
+# For example: "HTTP Strict Transport Security: Enabled"
+netmonitor.security.enabled=เปิดใช้งานอยู่
+
+# LOCALIZATION NOTE (netmonitor.security.disabled):
+# This string is used to indicate that a specific security feature is not used by
+# a connection in the security details tab.
+# For example: "HTTP Strict Transport Security: Disabled"
+netmonitor.security.disabled=ปิดใช้งานอยู่
+
+# LOCALIZATION NOTE (netmonitor.security.hostHeader):
+# This string is used as a header for section containing security information
+# related to the remote host. %S is replaced with the domain name of the remote
+# host. For example: Host example.com
+netmonitor.security.hostHeader=โฮสต์ %S:
+
+# LOCALIZATION NOTE (netmonitor.security.notAvailable):
+# This string is used to indicate that a certain piece of information is not
+# available to be displayed. For example a certificate that has no organization
+# defined:
+# Organization: <Not Available>
+netmonitor.security.notAvailable=<ไม่พร้อมใช้งาน>
+
+# LOCALIZATION NOTE (collapseDetailsPane): This is the tooltip for the button
+# that collapses the network details pane in the UI.
+collapseDetailsPane=ซ่อนรายละเอียดคำขอ
+
+# LOCALIZATION NOTE (collapseActionPane): This is the tooltip for the button
+# that collapses the network action pane in the UI.
+collapseActionPane=ซ่อนการกระทำของเครือข่าย
+
+# LOCALIZATION NOTE (allTabsMenuButton.tooltip): The tooltip that gets
+# displayed when hovering over the tabs overflow button.
+allTabsMenuButton.tooltip=แสดงแท็บทั้งหมด
+
+# LOCALIZATION NOTE (headersEmptyText): This is the text displayed in the
+# headers tab of the network details pane when there are no headers available.
+headersEmptyText=ไม่มีเฮดเดอร์สำหรับคำขอนี้
+
+# LOCALIZATION NOTE (headersFilterText): This is the text displayed in the
+# headers tab of the network details pane for the filtering input.
+headersFilterText=กรองเฮดเดอร์
+
+# LOCALIZATION NOTE (messagesEmptyText): This is the text displayed in the
+# WebSockets tab of the network details pane when there are no frames available.
+messagesEmptyText=ไม่มีข้อความสำหรับคำขอนี้
+
+# LOCALIZATION NOTE (cookiesEmptyText): This is the text displayed in the
+# cookies tab of the network details pane when there are no cookies available.
+cookiesEmptyText=ไม่มีคุกกี้สำหรับคำขอนี้
+
+# LOCALIZATION NOTE (cookiesFilterText): This is the text displayed in the
+# cookies tab of the network details pane for the filtering input.
+cookiesFilterText=กรองคุกกี้
+
+# LOCALIZATION NOTE (responseEmptyText): This is the text displayed in the
+# response tab of the network details pane when the response is empty or not
+# available for shown.
+responseEmptyText=ไม่มีข้อมูลการตอบกลับที่ใช้ได้สำหรับคำขอนี้
+
+# LOCALIZATION NOTE (paramsNoPayloadText): This is the text displayed in the
+# request tab of the network details pane when there are no params available.
+paramsNoPayloadText=ไม่มีเพย์โหลดสำหรับคำร้องขอนี้
+
+# LOCALIZATION NOTE (paramsFilterText): This is the text displayed in the
+# request tab of the network details pane for the filtering input.
+paramsFilterText=กรองพารามิเตอร์ของคำขอ
+
+# LOCALIZATION NOTE (paramsQueryString): This is the label displayed
+# in the network details request tab identifying the query string.
+paramsQueryString=สตริงการสืบค้น
+
+# LOCALIZATION NOTE (paramsFormData): This is the label displayed
+# in the network details request tab identifying the form data.
+paramsFormData=ข้อมูลแบบฟอร์ม
+
+# LOCALIZATION NOTE (paramsPostPayload): This is the label displayed
+# in the network details request tab identifying the request payload.
+paramsPostPayload=ส่วนข้อมูลคำขอ
+
+# LOCALIZATION NOTE (netmonitor.request.raw): This is the label displayed
+# on the button in the network details request tab that toggles the
+# view of the network request between the raw data and the formatted display.
+netmonitor.request.raw=ดิบ
+
+# LOCALIZATION NOTE (requestHeaders): This is the label displayed
+# in the network details headers tab identifying the request headers.
+requestHeaders=เฮดเดอร์คำขอ
+
+# LOCALIZATION NOTE (requestHeadersFromUpload): This is the label displayed
+# in the network details headers tab identifying the request headers from
+# the upload stream of a POST request's body.
+requestHeadersFromUpload=ขอเฮดเดอร์จากสตรีมการอัปโหลด
+
+# LOCALIZATION NOTE (responseHeaders): This is the label displayed
+# in the network details headers tab identifying the response headers.
+responseHeaders=เฮดเดอร์การตอบสนอง
+
+# LOCALIZATION NOTE (requestCookies): This is the label displayed
+# in the network details request tab identifying the request cookies.
+requestCookies=คุกกี้คำขอ
+
+# LOCALIZATION NOTE (responseCookies): This is the label displayed
+# in the network details request tab identifying the response cookies.
+responseCookies=คุกกี้การตอบสนอง
+
+# LOCALIZATION NOTE (responsePayload): This is the label displayed
+# in the network details response tab identifying the response payload.
+responsePayload=ส่วนข้อมูลการตอบสนอง
+
+# LOCALIZATION NOTE (netmonitor.response.raw): This is the label displayed
+# on the button in the network details response tab that toggles the
+# view of the network response between the raw data and the formatted display.
+netmonitor.response.raw=ดิบ
+
+# LOCALIZATION NOTE (netmonitor.response.html): This is the text displayed
+# in the response tab of the network details pane for an HTML preview.
+netmonitor.response.html=HTML
+
+# LOCALIZATION NOTE (jsonFilterText): This is the text displayed
+# in the response tab of the network details pane for the JSON filtering input.
+jsonFilterText=กรองคุณสมบัติ
+
+# LOCALIZATION NOTE (jsonScopeName): This is the text displayed
+# in the response tab of the network details pane for a JSON scope.
+jsonScopeName=JSON
+
+# LOCALIZATION NOTE (jsonpScopeName): This is the text displayed
+# in the response tab of the network details pane for a JSONP scope.
+jsonpScopeName=JSONP → callback %S()
+
+# LOCALIZATION NOTE (jsonXssiStripped): This is the text displayed
+# in a notification in the response tab of the network details pane
+# when a JSON payload had XSSI escape characters which were removed
+jsonXssiStripped=สตริง “%S” ถูกลบออกจากจุดเริ่มต้นของ JSON ที่แสดงด้านล่าง
+
+# LOCALIZATION NOTE (responseTruncated): This is the text displayed
+# in the response tab of the network details pane when the response is over
+# the truncation limit and thus was truncated.
+responseTruncated=การตอบกลับได้ถูกตัดทอนแล้ว
+
+# LOCALIZATION NOTE (requestTruncated): This is the text displayed
+# in the request tab of the network details pane when the request is over
+# the truncation limit and thus was truncated.
+requestTruncated=การตอบกลับได้ถูกตัดทอนแล้ว
+
+# LOCALIZATION NOTE (networkMenu.raced): This is the label displayed
+# in the network menu specifying the transfer or a request is
+# raced. %S refers to the current transfer size.
+networkMenu.raced=%S (ถูกแย่งชิง)
+
+# LOCALIZATION NOTE (networkMenu.sortedAsc): This is the tooltip displayed
+# in the network table toolbar, for any column that is sorted ascending.
+networkMenu.sortedAsc=เรียงจากน้อยไปมาก
+
+# LOCALIZATION NOTE (networkMenu.sortedDesc): This is the tooltip displayed
+# in the network table toolbar, for any column that is sorted descending.
+networkMenu.sortedDesc=เรียงจากมากไปน้อย
+
+# LOCALIZATION NOTE (networkMenu.summary.tooltip.perf): A tooltip explaining
+# what the perf button does
+networkMenu.summary.tooltip.perf=เริ่มการวิเคราะห์ประสิทธิภาพ
+
+# LOCALIZATION NOTE (networkMenu.summary.tooltip.domContentLoaded): A tooltip explaining
+# what the DOMContentLoaded label displays
+networkMenu.summary.tooltip.domContentLoaded=เวลาที่เกิดเหตุการณ์ “DOMContentLoad”
+
+# LOCALIZATION NOTE (networkMenu.summary.tooltip.load): A tooltip explaining
+# what the load label displays
+networkMenu.summary.tooltip.load=เวลาที่เกิดเหตุการณ์ “load”
+
+# LOCALIZATION NOTE (networkMenu.summary.requestsCount2): This label is displayed
+# in the network table footer providing the number of requests
+# See: http://developer.mozilla.org/en/docs/Localization_and_Plurals
+networkMenu.summary.requestsCount2=#1 คำขอ
+
+# LOCALIZATION NOTE (networkMenu.summary.requestsCountEmpty): This label is displayed
+# in the network table footer when there are no requests
+networkMenu.summary.requestsCountEmpty=ไม่มีคำขอ
+
+# LOCALIZATION NOTE (networkMenu.summary.tooltip.requestsCount): A tooltip explaining
+# what the requestsCount label displays
+networkMenu.summary.tooltip.requestsCount=จำนวนคำขอ
+
+# LOCALIZATION NOTE (networkMenu.summary.transferred): This label is displayed
+# in the network table footer providing the transferred size.
+networkMenu.summary.transferred=ถ่ายโอนแล้ว %S / %S
+
+# LOCALIZATION NOTE (networkMenu.summary.tooltip.transferred): A tooltip explaining
+# what the transferred label displays
+networkMenu.summary.tooltip.transferred=ขนาด/ขนาดเมื่อถ่ายโอนของคำขอทั้งหมด
+
+# LOCALIZATION NOTE (networkMenu.summary.finish): This label is displayed
+# in the network table footer providing the transfer time.
+networkMenu.summary.finish=เสร็จสิ้น: %S
+
+# LOCALIZATION NOTE (networkMenu.summary.tooltip.finish): A tooltip explaining
+# what the finish label displays
+networkMenu.summary.tooltip.finish=เวลาทั้งหมดที่ต้องใช้ในการโหลดคำขอทั้งหมด
+
+# LOCALIZATION NOTE (networkMenu.ws.summary.framesCount2): This label is displayed
+# in the messages table footer providing the number of frames
+# See: http://developer.mozilla.org/en/docs/Localization_and_Plurals
+networkMenu.ws.summary.framesCount2=#1 ข้อความ
+
+# LOCALIZATION NOTE (networkMenu.ws.summary.framesCountEmpty): This label is displayed
+# in the messages table footer when there are no frames
+networkMenu.ws.summary.framesCountEmpty=ไม่มีข้อความ
+
+# LOCALIZATION NOTE (networkMenu.ws.summary.tooltip.framesCount): A tooltip explaining
+# what the framesCount label displays
+networkMenu.ws.summary.tooltip.framesCount=จำนวนข้อความ
+
+# LOCALIZATION NOTE (networkMenu.ws.summary.tooltip.framesTotalSize): A tooltip explaining
+# what the framesTotalSize label displays
+networkMenu.ws.summary.tooltip.framesTotalSize=ขนาดทั้งหมดของข้อความที่แสดง
+
+# LOCALIZATION NOTE (networkMenu.ws.summary.label.framesTranferredSize): A label showing
+# summary size info related to the current list of WS messages
+# %1$S is the total size of the transferred data, %2$S is the size of sent data, %3$S is the size of received data.
+networkMenu.ws.summary.label.framesTranferredSize=รวม %1$S, ส่งแล้ว %2$S, ได้รับแล้ว %3$S
+
+# LOCALIZATION NOTE (networkMenu.ws.summary.tooltip.framesTotalTime): A tooltip explaining
+# what framesTotalTime displays
+networkMenu.ws.summary.tooltip.framesTotalTime=เวลาที่ผ่านไปโดยรวมระหว่างข้อความที่แสดงครั้งแรกและครั้งสุดท้าย
+
+# LOCALIZATION NOTE (networkMenu.sizeB): This is the label displayed
+# in the network menu specifying the size of a request (in bytes).
+networkMenu.sizeB=%S B
+
+# LOCALIZATION NOTE (networkMenu.size.kB): This is the label displayed
+# in the network menu specifying the size of a request (in kilobytes).
+networkMenu.size.kB=%S kB
+
+# LOCALIZATION NOTE (networkMenu.sizeMB): This is the label displayed
+# in the network menu specifying the size of a request (in megabytes).
+networkMenu.sizeMB=%S MB
+
+# LOCALIZATION NOTE (networkMenu.sizeGB): This is the label displayed
+# in the network menu specifying the size of a request (in gigabytes).
+networkMenu.sizeGB=%S GB
+
+# LOCALIZATION NOTE (networkMenu.sizeUnavailable): This is the label displayed
+# in the network menu specifying the transferred size of a request is
+# unavailable.
+networkMenu.sizeUnavailable=—
+
+# LOCALIZATION NOTE (networkMenu.sizeUnavailable.title): This is the tooltip
+# displayed in the network menu specifying that the transferred size of a
+# request is unavailable.
+networkMenu.sizeUnavailable.title=ขนาดที่ถ่ายโอนไม่สามารถใช้ได้
+
+# LOCALIZATION NOTE (networkMenu.sizeCached): This is the label displayed
+# in the network menu and the headers panel specifying the transfer or a request is
+# cached.
+networkMenu.sizeCached=ถูกแคช
+
+# LOCALIZATION NOTE (networkMenu.sizeServiceWorker): This is the label displayed
+# in the network menu and the headers panel specifying the transferred of a request
+# computed by a service worker.
+networkMenu.sizeServiceWorker=Service Worker
+
+# LOCALIZATION NOTE (networkMenu.blocked2): This is a generic message for a
+# URL that has been blocked for an unknown reason
+networkMenu.blocked2=ถูกปิดกั้น
+
+# LOCALIZATION NOTE (networkMenu.blockedby): This is a generic message for a
+# URL that has been blocked by an extension
+# %S is the extension name.
+networkMenu.blockedby=ปิดกั้นอยู่โดย %S
+
+# LOCALIZATION NOTE (networkMenu.blockedTooltip): This is a the text displayed
+# as a tooltip for the blocked icon in the request list
+networkMenu.blockedTooltip=ถูกปิดกั้น
+
+# LOCALIZATION NOTE (networkMenu.totalMS2): This is the label displayed
+# in the network menu specifying the time for a request to finish (in milliseconds).
+networkMenu.totalMS2=%S ms
+
+# This string is used to concatenate tooltips (netmonitor.waterfall.tooltip.*)
+# in the requests waterfall for total time (in milliseconds). \\u0020 represents
+# a whitespace. You can replace this with a different character, e.g. an hyphen
+# or a period, if a comma doesn't work for your language.
+netmonitor.waterfall.tooltip.separator=,\u0020
+
+# LOCALIZATION NOTE (netmonitor.waterfall.tooltip.total): This is part of the tooltip
+# displayed in the requests waterfall for total time (in milliseconds).
+netmonitor.waterfall.tooltip.total=รวม %S ms
+
+# LOCALIZATION NOTE (netmonitor.waterfall.tooltip.blocked): This is part of the tooltip
+# displayed in the requests waterfall for blocked time (in milliseconds).
+netmonitor.waterfall.tooltip.blocked=ถูกปิดกั้น %S ms
+
+# LOCALIZATION NOTE (netmonitor.waterfall.tooltip.dns): This is part of the tooltip
+# displayed in the requests waterfall for dns time (in milliseconds).
+netmonitor.waterfall.tooltip.dns=DNS %S ms
+
+# LOCALIZATION NOTE (netmonitor.waterfall.tooltip.ssl): This is part of the tooltip
+# displayed in the requests waterfall for tls setup time (in milliseconds).
+netmonitor.waterfall.tooltip.ssl=TLS %S ms
+
+# LOCALIZATION NOTE (netmonitor.waterfall.tooltip.connect): This is part of the tooltip
+# displayed in the requests waterfall for connect time (in milliseconds).
+netmonitor.waterfall.tooltip.connect=เชื่อมต่อ %S ms
+
+# LOCALIZATION NOTE (netmonitor.waterfall.tooltip.send): This is part of the tooltip
+# displayed in the requests waterfall for send time (in milliseconds).
+netmonitor.waterfall.tooltip.send=ส่ง %S ms
+
+# LOCALIZATION NOTE (netmonitor.waterfall.tooltip.wait): This is part of the tooltip
+# displayed in the requests waterfall for wait time (in milliseconds).
+netmonitor.waterfall.tooltip.wait=รอ %S ms
+
+# LOCALIZATION NOTE (netmonitor.waterfall.tooltip.receive): This is part of the tooltip
+# displayed in the requests waterfall for receive time (in milliseiconds).
+netmonitor.waterfall.tooltip.receive=รับ %S ms
+
+# LOCALIZATION NOTE (netmonitor.timings.requestTiming): This is the title of the existing
+# section in Timings side panel. This section contains request timings.
+netmonitor.timings.requestTiming=การจับเวลาคำขอ
+
+# LOCALIZATION NOTE (netmonitor.timings.serverTiming): This is the title of a new section
+# in Timings side panel. This section contains server timings transferred from the server
+# through the "Server-Timing" header.
+netmonitor.timings.serverTiming=การจับเวลาเซิร์ฟเวอร์
+
+# LOCALIZATION NOTE (netmonitor.timings.serviceWorkerTiming): This is the title of a new section
+# in Timings side panel. This section contains service worker timings transferred from the
+# service worker.
+netmonitor.timings.serviceWorkerTiming=การเทียบเวลาของ Service Worker
+
+# LOCALIZATION NOTE (netmonitor.timings.queuedAt): This is relative queued time to the
+# first request. %S is time expressed in milliseconds or minutes.
+netmonitor.timings.queuedAt=เข้าคิวแล้ว: %S
+
+# LOCALIZATION NOTE (netmonitor.timings.startedAt): Relative to the first request,
+# when the request actually started. %S is time expressed in milliseconds or minutes.
+netmonitor.timings.startedAt=เริ่มแล้ว: %S
+
+# LOCALIZATION NOTE (netmonitor.timings.downloadedAt): Relative to first request,
+# when the request actually finished downloading.
+# %S is time expressed in milliseconds or minutes.
+netmonitor.timings.downloadedAt=ดาวน์โหลดแล้ว: %S
+
+# LOCALIZATION NOTE (netmonitor.timings.noTimings): Message that displays in the
+# timings pane when thea request has been blocked
+netmonitor.timings.noTimings=ไม่มีการจับเวลาสำหรับคำร้องขอนี้
+
+# LOCALIZATION NOTE (networkMenu.millisecond): This is the label displayed
+# in the network menu specifying timing interval divisions (in milliseconds).
+networkMenu.millisecond=%S ms
+
+# LOCALIZATION NOTE (networkMenu.second): This is the label displayed
+# in the network menu specifying timing interval divisions (in seconds).
+networkMenu.second=%S s
+
+# LOCALIZATION NOTE (networkMenu.minute): This is the label displayed
+# in the network menu specifying timing interval divisions (in minutes).
+networkMenu.minute=%S min
+
+# LOCALIZATION NOTE (pieChart.loading): This is the label displayed
+# for pie charts (e.g., in the performance analysis view) when there is
+# no data available yet.
+pieChart.loading=กำลังโหลด
+
+# LOCALIZATION NOTE (pieChart.unavailable): This is the label displayed
+# for pie charts (e.g., in the performance analysis view) when there is
+# no data available, even after loading it.
+pieChart.unavailable=ว่างเปล่า
+
+# LOCALIZATION NOTE (pieChart.ariaLabel): This is the text used for the aria-label attribute
+# for SVG pie charts (e.g., in the performance analysis view).
+pieChart.ariaLabel=แผนภูมิวงกลมแสดงขนาดคำขอแต่ละชนิดเป็นสัดส่วน
+
+# LOCALIZATION NOTE (pieChart.sliceAriaLabel): This is the text used for the aria-label attribute
+# for SVG pie charts slices (e.g., in the performance analysis view).
+# %1$S is the slice label (e.g. "html")
+# %2$S is the percentage (e.g. "33.23%").
+pieChart.sliceAriaLabel=%1$S: %2$S
+
+# LOCALIZATION NOTE (tableChart.loading): This is the label displayed
+# for table charts (e.g., in the performance analysis view) when there is
+# no data available yet.
+tableChart.loading=โปรดรอ…
+
+# LOCALIZATION NOTE (tableChart.unavailable): This is the label displayed
+# for table charts (e.g., in the performance analysis view) when there is
+# no data available, even after loading it.
+tableChart.unavailable=ไม่มีข้อมูล
+
+# LOCALIZATION NOTE (charts.size.kB): This is the label displayed
+# in pie or table charts specifying the size of a request (in kilobytes).
+charts.size.kB=%S kB
+
+# LOCALIZATION NOTE (charts.transferredSize.kB): This is the label displayed
+# in pie or table charts specifying the size of a transferred request (in kilobytes).
+charts.transferredSize.kB=%S kB
+
+# LOCALIZATION NOTE (charts.totalS): This is the label displayed
+# in pie or table charts specifying the time for a request to finish (in seconds).
+charts.totalS=%S s
+
+# LOCALIZATION NOTE (charts.totalTransferredSize.kB): This is the label displayed
+# in the performance analysis view for total transferred size, in kilobytes.
+charts.totalTransferredSize.kB=ขนาดที่ถ่ายโอน: %S kB
+
+# LOCALIZATION NOTE (charts.cacheEnabled): This is the label displayed
+# in the performance analysis view for "cache enabled" charts.
+charts.cacheEnabled=แคชขั้นต้น
+
+# LOCALIZATION NOTE (charts.cacheDisabled): This is the label displayed
+# in the performance analysis view for "cache disabled" charts.
+charts.cacheDisabled=แคชที่ว่างเปล่า
+
+# LOCALIZATION NOTE (charts.learnMore): This is the label displayed
+# in the performance analysis view, with a link to external documentation.
+charts.learnMore=เรียนรู้เพิ่มเติมเกี่ยวกับการวิเคราะห์ประสิทธิภาพ
+
+# LOCALIZATION NOTE (charts.totalSize.kB): This is the label displayed
+# in the performance analysis view for total requests size, in kilobytes.
+charts.totalSize.kB=ขนาด: %S kB
+
+# LOCALIZATION NOTE (charts.totalSeconds): Semi-colon list of plural forms.
+# See: http://developer.mozilla.org/en/docs/Localization_and_Plurals
+# This is the label displayed in the performance analysis view for the
+# total requests time, in seconds.
+charts.totalSeconds=เวลา: #1 วินาที
+
+# LOCALIZATION NOTE (charts.totalSecondsNonBlocking): Semi-colon list of plural forms.
+# See: http://developer.mozilla.org/en/docs/Localization_and_Plurals
+# This is the label displayed in the performance analysis view for the
+# total requests time (non-blocking), in seconds.
+charts.totalSecondsNonBlocking=เวลาที่ไม่ใช่การปิดกั้น: #1 วินาที
+
+# LOCALIZATION NOTE (charts.totalCached): This is the label displayed
+# in the performance analysis view for total cached responses.
+charts.totalCached=การตอบสนองที่แคชไว้: %S
+
+# LOCALIZATION NOTE (charts.totalCount): This is the label displayed
+# in the performance analysis view for total requests.
+charts.totalCount=คำขอรวม: %S
+
+# LOCALIZATION NOTE (charts.requestsNumber): This is the label for the header column in
+# the performance analysis view for the number of requests. The label is not visible on screen,
+# but is set in the DOM for accessibility sake.
+charts.requestsNumber=จำนวนคำร้องขอ
+
+# LOCALIZATION NOTE (charts.size): This is the label displayed
+# in the header column in the performance analysis view for size of the request.
+charts.size=ขนาด
+
+# LOCALIZATION NOTE (charts.type): This is the label displayed
+# in the header column in the performance analysis view for type of request.
+charts.type=ชนิด
+
+# LOCALIZATION NOTE (charts.transferred): This is the label displayed
+# in the header column in the performance analysis view for transferred
+# size of the request.
+charts.transferred=ถ่ายโอนแล้ว
+
+# LOCALIZATION NOTE (charts.time): This is the label displayed
+# in the header column in the performance analysis view for time of request.
+charts.time=เวลา
+
+# LOCALIZATION NOTE (charts.nonBlockingTime): This is the label displayed
+# in the header column in the performance analysis view for non blocking
+# time of request.
+charts.nonBlockingTime=เวลาที่ไม่ใช่การปิดกั้น
+
+# LOCALIZATION NOTE (netRequest.originalFileURL.tooltip): This is the tooltip
+# displayed for the file's original URL value displayed in the file column of
+# a request.
+netRequest.originalFileURL.tooltip=ต้นฉบับ: %S
+
+# LOCALIZATION NOTE (netRequest.decodedFileURL.tooltip): This is the tooltip
+# displayed for the file's decoded URL value displayed in the file column of
+# a request.
+netRequest.decodedFileURL.tooltip=ถอดรหัส: %S
+
+# LOCALIZATION NOTE (certmgr.subjectinfo.label):
+# A label used for a certificate section in security tab.
+# This section displays Name and organization who has been assigned the fingerprints
+certmgr.subjectinfo.label=ออกให้
+
+# LOCALIZATION NOTE (certmgr.certdetail.cn):
+# A label used for Issued To and Issued By sub-section in security tab
+certmgr.certdetail.cn=ชื่อสามัญ (CN):
+
+# LOCALIZATION NOTE (certmgr.certdetail.o):
+# A label used for Issued To and Issued By sub-section in security tab
+certmgr.certdetail.o=องค์กร (O):
+
+# LOCALIZATION NOTE (certmgr.certdetail.ou):
+# A label used for Issued To and Issued By sub-section in security tab
+certmgr.certdetail.ou=หน่วยงาน (OU):
+
+# LOCALIZATION NOTE (certmgr.issuerinfo.label):
+# A label used for a certificate section in security tab
+# This section displays Name and organization who issued the fingerprints
+certmgr.issuerinfo.label=ออกโดย
+
+# LOCALIZATION NOTE (certmgr.periodofvalidity.label):
+# A label used for a certificate section in security tab
+# This section displays the valid period of this fingerprints
+certmgr.periodofvalidity.label=ระยะเวลาที่มีผล
+
+# LOCALIZATION NOTE (certmgr.begins):
+# A label used for Period of Validity sub-section in security tab
+certmgr.begins=เริ่มเมื่อ:
+
+# LOCALIZATION NOTE (certmgr.expires):
+# A label used for Period of Validity sub-section in security tab
+certmgr.expires=หมดอายุเมื่อ:
+
+# LOCALIZATION NOTE (certmgr.fingerprints.label):
+# A label used for a certificate section in security tab
+# This section displays the valid period of this fingerprints
+certmgr.fingerprints.label=ลายนิ้วมือ
+
+# LOCALIZATION NOTE (certmgr.certdetail.sha256fingerprint):
+# A label used for Fingerprints sub-section in security tab
+certmgr.certdetail.sha256fingerprint=ลายนิ้วมือ SHA-256:
+
+# LOCALIZATION NOTE (certmgr.certdetail.sha1fingerprint):
+# A label used for Fingerprints sub-section in security tab
+certmgr.certdetail.sha1fingerprint=ลายนิ้วมือ SHA1:
+
+# LOCALIZATION NOTE (certmgr.certificateTransparency.label):
+# This string is used as a label in the security tab.
+certmgr.certificateTransparency.label=ความโปร่งใส:
+
+# LOCALIZATION NOTE (certmgr.certificateTransparency.status.ok):
+# This string is used to indicate that there are valid signed certificate
+# timestamps. This is a property for the 'Transparency'
+# field in the security tab.
+certmgr.certificateTransparency.status.ok=การบันทึก SCT ที่ถูกต้อง
+
+# LOCALIZATION NOTE (certmgr.certificateTransparency.status.notEnoughSCTS):
+# This string is used to indicate that there are not enough valid signed
+# certificate timestamps. This is a property for the 'Transparency'
+# field in the security tab.
+certmgr.certificateTransparency.status.notEnoughSCTS=SCT ไม่เพียงพอ
+
+# LOCALIZATION NOTE (certmgr.certificateTransparency.status.notDiverseSCTS):
+# This string is used to indicate that there ar not enough diverse signed
+# certificate timestamps. This is a property for the 'Transparency'
+# field in the security tab.
+certmgr.certificateTransparency.status.notDiverseSCTS=SCT ไม่หลากหลาย
+
+# LOCALIZATION NOTE (netmonitor.perfNotice1/2/3): These are the labels displayed
+# in the network table when empty to start performance analysis.
+netmonitor.perfNotice1=• คลิกที่ปุ่ม
+netmonitor.perfNotice2=เพื่อเริ่มการวิเคราะห์ประสิทธิภาพ
+netmonitor.perfNotice3=วิเคราะห์
+
+# LOCALIZATION NOTE (netmonitor.reload1/2/3): These are the labels displayed
+# in the network table when empty to start logging network requests.
+netmonitor.reloadNotice1=• ดำเนินการส่งคำขอหรือ
+netmonitor.reloadNotice2=โหลดใหม่
+netmonitor.reloadNotice3=หน้าเพื่อดูข้อมูลโดยละเอียดเกี่ยวกับกิจกรรมเครือข่าย
+netmonitor.emptyBrowserToolbox=ส่งคำขอเพื่อดูข้อมูลโดยละเอียดเกี่ยวกับกิจกรรมเครือข่าย
+
+# LOCALIZATION NOTE (netmonitor.toolbar.status3): This is the label displayed
+# in the network table toolbar, above the "status" column.
+netmonitor.toolbar.status3=สถานะ
+
+# LOCALIZATION NOTE (netmonitor.toolbar.method): This is the label displayed
+# in the network table toolbar, above the "method" column.
+netmonitor.toolbar.method=วิธีการ
+
+# LOCALIZATION NOTE (netmonitor.toolbar.priority): This is the label displayed
+# in the network table toolbar, above the "priority" column.
+netmonitor.toolbar.priority=ความสำคัญ
+
+# LOCALIZATION NOTE (netmonitor.toolbar.file): This is the label displayed
+# in the network table toolbar, above the "file" column.
+netmonitor.toolbar.file=ไฟล์
+
+# LOCALIZATION NOTE (netmonitor.toolbar.url): This is the label displayed
+# in the network table toolbar, above the "url" column.
+netmonitor.toolbar.url=URL
+
+# LOCALIZATION NOTE (netmonitor.toolbar.protocol): This is the label displayed
+# in the network table toolbar, above the "protocol" column.
+netmonitor.toolbar.protocol=โปรโตคอล
+
+# LOCALIZATION NOTE (netmonitor.toolbar.domain): This is the label displayed
+# in the network table toolbar, above the "domain" column.
+netmonitor.toolbar.domain=โดเมน
+
+# LOCALIZATION NOTE (netmonitor.toolbar.remoteip): This is the label displayed
+# in the network table toolbar, above the "remoteip" column.
+netmonitor.toolbar.remoteip=IP ระยะไกล
+
+# LOCALIZATION NOTE (netmonitor.toolbar.initiator): This is the label displayed
+# in the network table toolbar, above the "initiator" column.
+netmonitor.toolbar.initiator=ตัวเริ่มต้น
+
+# LOCALIZATION NOTE (netmonitor.toolbar.type): This is the label displayed
+# in the network table toolbar, above the "type" column.
+netmonitor.toolbar.type=ชนิด
+
+# LOCALIZATION NOTE (netmonitor.toolbar.cookies): This is the label displayed
+# in the network table toolbar, above the "cookies" column.
+netmonitor.toolbar.cookies=คุกกี้
+
+# LOCALIZATION NOTE (netmonitor.toolbar.setCookies): This is the label displayed
+# in the network table toolbar, above the "set cookies" column.
+# Set-Cookie is a HTTP response header. This string is the plural form of it.
+# See https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Set-Cookie
+netmonitor.toolbar.setCookies=Set-Cookies
+
+# LOCALIZATION NOTE (netmonitor.toolbar.scheme): This is the label displayed
+# in the network table toolbar, above the "scheme" column.
+netmonitor.toolbar.scheme=แบบแผน
+
+# LOCALIZATION NOTE (netmonitor.toolbar.startTime): This is the label displayed
+# in the network table toolbar, above the "start time" column, which is the time
+# from start of 1st request until the start of this request.
+netmonitor.toolbar.startTime=เวลาเริ่ม
+
+# LOCALIZATION NOTE (netmonitor.toolbar.endTime): This is the label displayed
+# in the network table toolbar, above the "end time" column, which is the time
+# from start of 1st request until the end of this response.
+netmonitor.toolbar.endTime=เวลาสิ้นสุด
+
+# LOCALIZATION NOTE (netmonitor.toolbar.responseTime): This is the label displayed
+# in the network table toolbar, above the "response time" column, which is the time
+# from start of 1st request until the beginning of download of this response.
+netmonitor.toolbar.responseTime=เวลาตอบสนอง
+
+# LOCALIZATION NOTE (netmonitor.toolbar.duration): This is the label displayed
+# in the network table toolbar, above the "duration" column, which is the time
+# from start of this request until the end of this response.
+netmonitor.toolbar.duration=ระยะเวลา
+
+# LOCALIZATION NOTE (netmonitor.toolbar.latency): This is the label displayed
+# in the network table toolbar, above the "latency" column, which is the time
+# from end of this request until the beginning of download of this response.
+netmonitor.toolbar.latency=เวลาแฝง
+
+# LOCALIZATION NOTE (netmonitor.toolbar.transferred): This is the label displayed
+# in the network table toolbar, above the "transferred" column and in general
+# section of the headers panel, which is the compressed / encoded size.
+netmonitor.toolbar.transferred=ถ่ายโอนแล้ว
+
+# LOCALIZATION NOTE (netmonitor.toolbar.contentSize): This is the label displayed
+# in the network table toolbar, above the "size" column, which is the
+# uncompressed / decoded size.
+netmonitor.toolbar.contentSize=ขนาด
+
+# LOCALIZATION NOTE (netmonitor.toolbar.waterfall): This is the label displayed
+# in the network table toolbar, above the "waterfall" column.
+netmonitor.toolbar.waterfall=เส้นเวลา
+
+# LOCALIZATION NOTE (netmonitor.ws.toolbar.size): This is the label displayed
+# in the messages table header, above the "size" column.
+netmonitor.ws.toolbar.size=ขนาด
+
+# LOCALIZATION NOTE (netmonitor.ws.toolbar.data): This is the label displayed
+# in the messages table header, above the "data" column.
+netmonitor.ws.toolbar.data=ข้อมูล
+
+# LOCALIZATION NOTE (netmonitor.ws.toolbar.opCode): This is the label displayed
+# in the messages table header, above the "opCode" column.
+netmonitor.ws.toolbar.opCode=OpCode
+
+# LOCALIZATION NOTE (netmonitor.ws.toolbar.maskBit): This is the label displayed
+# in the messages table header, above the "maskBit" column.
+netmonitor.ws.toolbar.maskBit=MaskBit
+
+# LOCALIZATION NOTE (netmonitor.ws.toolbar.finBit): This is the label displayed
+# in the messages table header, above the "finBit" column.
+netmonitor.ws.toolbar.finBit=FinBit
+
+# LOCALIZATION NOTE (netmonitor.ws.toolbar.time): This is the label displayed
+# in the messages table header, above the "time" column.
+netmonitor.ws.toolbar.time=เวลา
+
+# LOCALIZATION NOTE (netmonitor.ws.toolbar.eventName): This is the label displayed
+# in the messages table header, above the "eventName" column.
+netmonitor.ws.toolbar.eventName=ชื่อเหตุการณ์
+
+# LOCALIZATION NOTE (netmonitor.ws.toolbar.retry): This is the label displayed
+# in the messages table header, above the "retry" column.
+netmonitor.ws.toolbar.retry=ลองใหม่
+
+# LOCALIZATION NOTE (netmonitor.ws.toolbar.lastEventId): This is the label displayed
+# in the messages table header, above the "lastEventId" column.
+netmonitor.ws.toolbar.lastEventId=ID เหตุการณ์ล่าสุด
+
+# LOCALIZATION NOTE (netmonitor.ws.toolbar.clear): This is the label displayed
+# in the messages panel toolbar for the "Clear" button.
+netmonitor.ws.toolbar.clear=ล้าง
+
+# LOCALIZATION NOTE (netmonitor.ws.toolbar.filterFreetext.label): This is the label
+# displayed in the messages panel toolbar for the frames filtering textbox.
+netmonitor.ws.toolbar.filterFreetext.label=กรองข้อความ
+
+# LOCALIZATION NOTE (netmonitor.ws.toolbar.filterFreetext.key): This is the
+# shortcut key to focus on the messages panel toolbar messages filtering textbox
+netmonitor.ws.toolbar.filterFreetext.key=CmdOrCtrl+E
+
+# LOCALIZATION NOTE (netmonitor.ws.toolbar.resetColumns): This is the label
+# displayed in the messages panel table header context menu.
+netmonitor.ws.toolbar.resetColumns=กลับค่าเดิมของคอลัมน์
+
+# LOCALIZATION NOTE (netmonitor.ws.context.all): This is the label displayed
+# on the context menu that shows "All" WebSocket frames.
+netmonitor.ws.context.all=ทั้งหมด
+
+# LOCALIZATION NOTE (netmonitor.ws.context.all.accesskey): This is the access key
+# for the "All" menu item displayed in the context menu in the websocket toolbar.
+netmonitor.ws.context.all.accesskey=ท
+
+# LOCALIZATION NOTE (netmonitor.ws.context.sent): This is the label displayed
+# on the context menu that shows "Sent" WebSocket frames.
+netmonitor.ws.context.sent=ส่ง
+
+# LOCALIZATION NOTE (netmonitor.ws.context.sent.accesskey): This is the access key
+# for the "Sent" menu item displayed in the context menu in the websocket toolbar.
+netmonitor.ws.context.sent.accesskey=ส
+
+# LOCALIZATION NOTE (netmonitor.ws.context.received): This is the label displayed
+# on the context menu that shows "Received" WebSocket frames.
+netmonitor.ws.context.received=รับ
+
+# LOCALIZATION NOTE (netmonitor.ws.context.received.accesskey): This is the access key
+# for the "Received" menu item displayed in the context menu in the websocket toolbar.
+netmonitor.ws.context.received.accesskey=ร
+
+# LOCALIZATION NOTE (netmonitor.ws.context.controlFrames): This is the label displayed
+# on the context menu that shows "Control Frames" WebSocket frames.
+netmonitor.ws.context.controlFrames=การควบคุม
+
+# LOCALIZATION NOTE (netmonitor.ws.context.controlFrames.accesskey): This is the access key
+# for the "Control Frames" menu item displayed in the context menu in the websocket toolbar.
+netmonitor.ws.context.controlFrames.accesskey=ค
+
+# LOCALIZATION NOTE (netmonitor.ws.context.copyFrame): This is the label displayed
+# on the context menu that shows "Copy Message".
+netmonitor.ws.context.copyFrame=คัดลอกข้อความ
+
+# LOCALIZATION NOTE (netmonitor.ws.context.copyFrame.accesskey): This is the access key
+# for the "Copy Message" menu item displayed in the context menu of a WebSocket frame.
+netmonitor.ws.context.copyFrame.accesskey=ค
+
+# LOCALIZATION NOTE (netmonitor.ws.context.copyFrameAsBase64): This is the label displayed
+# on the context menu that shows "Copy as Base64" displayed in the context menu of a binary WebSocket frame.
+netmonitor.ws.context.copyFrameAsBase64=คัดลอกเป็น Base64
+
+# LOCALIZATION NOTE (netmonitor.ws.context.copyFrameAsBase64.accesskey): This is the access key
+# for the "Copy as Base64" menu item displayed in the context menu of a binary WebSocket frame.
+netmonitor.ws.context.copyFrameAsBase64.accesskey=B
+
+# LOCALIZATION NOTE (netmonitor.ws.context.copyFrameAsHex): This is the label displayed
+# on the context menu that shows "Copy as Hex" displayed in the context menu of a binary WebSocket frame.
+netmonitor.ws.context.copyFrameAsHex=คัดลอกเป็นเลขฐานสิบหก
+
+# LOCALIZATION NOTE (netmonitor.ws.context.copyFrameAsHex.accesskey): This is the access key
+# for the "Copy as Hex" menu item displayed in the context menu of a binary WebSocket frame.
+netmonitor.ws.context.copyFrameAsHex.accesskey=ส
+
+# LOCALIZATION NOTE (netmonitor.ws.context.copyFrameAsText): This is the label displayed
+# on the context menu that shows "Copy as Text" displayed in the context menu of a binary WebSocket frame.
+netmonitor.ws.context.copyFrameAsText=คัดลอกเป็นข้อความ
+
+# LOCALIZATION NOTE (netmonitor.ws.context.copyFrameAsText.accesskey): This is the access key
+# for the "Copy as Text" menu item displayed in the context menu of a binary WebSocket frame.
+netmonitor.ws.context.copyFrameAsText.accesskey=ข
+
+# LOCALIZATION NOTE (netmonitor.ws.connection.closed): This is the text displayed in the
+# websocket messages panel when the connection is closed
+netmonitor.ws.connection.closed=ปิดการเชื่อมต่อ
+
+# LOCALIZATION NOTE (netmonitor.ws.type.sent): This is the label used as
+# accessible text for the "sent" type icon in the websocket table's "data" column.
+netmonitor.ws.type.sent=ส่ง
+
+# LOCALIZATION NOTE (netmonitor.ws.type.received): This is the label used as
+# accessible text for the "received" type icon in the websocket table's "data" column.
+netmonitor.ws.type.received=รับ
+
+# LOCALIZATION NOTE (netmonitor.ws.rawData.header): This is the label displayed
+# in the messages panel identifying the raw data.
+netmonitor.ws.rawData.header=ข้อมูลดิบ (%S)
+
+# LOCALIZATION NOTE (netmonitor.search.toolbar.inputPlaceholder): This is the label
+# displayed in the search toolbar for the search input as the placeholder.
+netmonitor.search.toolbar.inputPlaceholder=ค้นหาในทรัพยากร…
+
+# LOCALIZATION NOTE (netmonitor.search.toolbar.close): This is the label
+# displayed in the search toolbar to close the search panel.
+netmonitor.search.toolbar.close=ปิดแผงการค้นหา
+
+# LOCALIZATION NOTE (netmonitor.search.toolbar.clear): This is the label
+# displayed in the search toolbar to clear the search panel.
+netmonitor.search.toolbar.clear=ล้างผลลัพธ์การค้นหา
+
+# LOCALIZATION NOTE (netmonitor.search.toolbar.caseSensitive): This is the label
+# displayed in the search toolbar to do a case sensitive search.
+netmonitor.search.toolbar.caseSensitive=ตัวพิมพ์ใหญ่เล็กตรงกัน
+
+# LOCALIZATION NOTE (netmonitor.search.status.labels.fetching): This is the label
+# displayed in the search results status bar when status is set to fetching.
+netmonitor.search.status.labels.fetching=กำลังค้นหา…
+
+# LOCALIZATION NOTE (netmonitor.search.status.labels.canceled): This is the label
+# displayed in the search results status bar when status is set to cancelled.
+netmonitor.search.status.labels.canceled=ยกเลิกการค้นหาแล้ว
+
+# LOCALIZATION NOTE (netmonitor.search.status.labels.done): This is the label
+# displayed in the search results status bar when status is set to done.
+# %1$S is the number of matching lines in search results (netmonitor.search.status.labels.matchingLines)
+# %2$S is the number of files in which matching lines were found (netmonitor.search.status.labels.fileCount)
+netmonitor.search.status.labels.done=สิ้นสุดการค้นหาแล้ว %1$S %2$S
+
+# LOCALIZATION NOTE (netmonitor.search.status.labels.matchingLines): Semi-colon list of plural forms.
+# This is the label displayed in the search results status bar showing matching lines found.
+# See: http://developer.mozilla.org/en/docs/Localization_and_Plurals
+# #1 is the number of matching lines found
+netmonitor.search.status.labels.matchingLines=พบ #1 บรรทัดที่ตรงกัน
+
+# LOCALIZATION NOTE (netmonitor.search.status.labels.fileCount): Semi-colon list of plural forms.
+# This is the label displayed in the search results status bar showing file count
+# See: http://developer.mozilla.org/en/docs/Localization_and_Plurals
+# #1 is the number of files in which matching lines were found
+netmonitor.search.status.labels.fileCount=ใน #1 ไฟล์
+
+# LOCALIZATION NOTE (netmonitor.search.status.labels.error): This is the label
+# displayed in the search results status bar when status is set to error.
+netmonitor.search.status.labels.error=มีข้อผิดพลาดในการค้นหา
+
+# LOCALIZATION NOTE (netmonitor.toolbar.requestBlocking): This is the tooltip displayed
+# over the toolbar's Request Blocking button
+netmonitor.toolbar.requestBlocking=การปิดกั้นคำขอ
+
+# LOCALIZATION NOTE (netmonitor.actionbar.requestBlocking2): This is the label displayed
+# in the action bar's request blocking tab
+netmonitor.actionbar.requestBlocking2=การปิดกั้น
+
+# LOCALIZATION NOTE (netmonitor.actionbar.enableBlocking): This is the label displayed
+# in request blocking tab to represent if requests blocking should be enabled
+netmonitor.actionbar.enableBlocking=เปิดใช้งานการปิดกั้นคำขอ
+
+# LOCALIZATION NOTE (netmonitor.actionbar.blockSearchPlaceholder): This is the
+# placeholder text for the request addition form
+netmonitor.actionbar.blockSearchPlaceholder=ปิดกั้นทรัพยากรเมื่อ URL มี
+
+# LOCALIZATION NOTE (netmonitor.actionbar.removeBlockedUrl): This is the
+# tooltip shown over the remove button for blocked URL item
+netmonitor.actionbar.removeBlockedUrl=ลบรูปแบบ
+
+# LOCALIZATION NOTE (netmonitor.actionbar.requestBlockingUsageNotice): This is the
+# usage notice displayed when network blocking list is empty
+netmonitor.actionbar.requestBlockingUsageNotice=เพิ่มรูปแบบ URL ที่นี่เพื่อปิดกั้นคำขอที่ตรงกัน
+
+# LOCALIZATION NOTE (netmonitor.actionbar.requestBlockingAddNotice): This is the
+# add notice that explains ways to add blocking pattern that is displayed when
+# network blocking list is empty
+netmonitor.actionbar.requestBlockingAddNotice=เริ่มโดยเพิ่มรูปแบบหรือลากแถวจากตารางเครือข่าย
+
+# LOCALIZATION NOTE (netmonitor.requestBlockingMenu.removeAllBlockedUrls): This is the
+# context menu item for removing all blocked URLs
+netmonitor.requestBlockingMenu.removeAllBlockedUrls=เอาออกทั้งหมด
+
+# LOCALIZATION NOTE (netmonitor.requestBlockingMenu.enableAllBlockedUrls): This is the
+# context menu item for enabling all blocked URLs
+netmonitor.requestBlockingMenu.enableAllBlockedUrls=เปิดใช้งานทั้งหมด
+
+# LOCALIZATION NOTE (netmonitor.requestBlockingMenu.disableAllBlockedUrls): This is the
+# context menu item for disabling all blocked URLs
+netmonitor.requestBlockingMenu.disableAllBlockedUrls=ปิดใช้งานทั้งหมด
+
+# LOCALIZATION NOTE (netmonitor.actionbar.search): This is the label displayed
+# in the action bar's search tab
+netmonitor.actionbar.search=ค้นหา
+
+# LOCALIZATION NOTE (netmonitor.actionbar.HTTPCustomRequest): This is the label displayed
+# in the action bar's edit and resend tab
+netmonitor.actionbar.HTTPCustomRequest=คำขอใหม่
+
+# LOCALIZATION NOTE (messagesTruncated): This is the text displayed
+# in the messages panel when the number of messages is over the
+# truncation limit.
+# See: http://developer.mozilla.org/en/docs/Localization_and_Plurals
+netmonitor.ws.truncated-messages.warning=#1 ข้อความได้ถูกตัดทอนเพื่อประหยัดหน่วยความจำ
+
+# LOCALIZATION NOTE (disableMessagesTruncation): This is the text displayed
+# in the messages panel checkbox label for toggling message truncation.
+toggleMessagesTruncation=เก็บข้อความในอนาคตทั้งหมด
+
+# LOCALIZATION NOTE (toggleMessagesTruncation.title): This is the title used
+# to describe the checkbox used to toggle message truncation.
+toggleMessagesTruncation.title=เก็บข้อความในอนาคตทั้งหมดหรือแสดงข้อความที่ถูกตัดทอนต่อไป
+
+# LOCALIZATION NOTE (messageDataTruncated): This is the text displayed
+# to describe to describe data truncation in the messages panel.
+messageDataTruncated=ข้อมูลได้ถูกตัดทอนแล้ว
+
+# LOCALIZATION NOTE (netmonitor.tab.headers): This is the label displayed
+# in the network details pane identifying the headers tab.
+netmonitor.tab.headers=เฮดเดอร์
+
+# LOCALIZATION NOTE (netmonitor.tab.messages): This is the label displayed
+# in the network details pane identifying the messages tab.
+netmonitor.tab.messages=ข้อความ
+
+# LOCALIZATION NOTE (netmonitor.tab.cookies): This is the label displayed
+# in the network details pane identifying the cookies tab.
+netmonitor.tab.cookies=คุกกี้
+
+# LOCALIZATION NOTE (netmonitor.tab.cache): This is the label displayed
+# in the network details pane identifying the cache tab.
+netmonitor.tab.cache=แคช
+
+# LOCALIZATION NOTE (netmonitor.tab.params): This is the label displayed
+# in the network details pane identifying the params tab.
+netmonitor.tab.params=พารามิเตอร์
+
+# LOCALIZATION NOTE (netmonitor.tab.request): This is the label displayed
+# in the network details pane identifying the request tab.
+netmonitor.tab.request=คำขอ
+
+# LOCALIZATION NOTE (netmonitor.tab.response): This is the label displayed
+# in the network details pane identifying the response tab.
+netmonitor.tab.response=การตอบสนอง
+
+# LOCALIZATION NOTE (netmonitor.tab.timings): This is the label displayed
+# in the network details pane identifying the timings tab.
+netmonitor.tab.timings=การจับเวลา
+
+# LOCALIZATION NOTE (netmonitor.tab.stackTrace): This is the label displayed
+# in the network details pane identifying the stack-trace tab.
+netmonitor.tab.stackTrace=การติดตามสแตก
+
+# LOCALIZATION NOTE (netmonitor.tab.security): This is the label displayed
+# in the network details pane identifying the security tab.
+netmonitor.tab.security=ความปลอดภัย
+
+# LOCALIZATION NOTE (netmonitor.toolbar.filter.all): This is the label displayed
+# in the network toolbar for the "All" filtering button.
+netmonitor.toolbar.filter.all=ทั้งหมด
+
+# LOCALIZATION NOTE (netmonitor.toolbar.filter.html): This is the label displayed
+# in the network toolbar for the "HTML" filtering button.
+netmonitor.toolbar.filter.html=HTML
+
+# LOCALIZATION NOTE (netmonitor.toolbar.filter.css): This is the label displayed
+# in the network toolbar for the "CSS" filtering button.
+netmonitor.toolbar.filter.css=CSS
+
+# LOCALIZATION NOTE (netmonitor.toolbar.filter.js): This is the label displayed
+# in the network toolbar for the "JS" filtering button.
+netmonitor.toolbar.filter.js=JS
+
+# LOCALIZATION NOTE (netmonitor.toolbar.filter.xhr): This is the label displayed
+# in the network toolbar for the "XHR" filtering button.
+netmonitor.toolbar.filter.xhr=XHR
+
+# LOCALIZATION NOTE (netmonitor.toolbar.filter.fonts): This is the label displayed
+# in the network toolbar for the "Fonts" filtering button.
+netmonitor.toolbar.filter.fonts=แบบอักษร
+
+# LOCALIZATION NOTE (netmonitor.toolbar.filter.images): This is the label displayed
+# in the network toolbar for the "Images" filtering button.
+netmonitor.toolbar.filter.images=ภาพ
+
+# LOCALIZATION NOTE (netmonitor.toolbar.filter.media): This is the label displayed
+# in the network toolbar for the "Media" filtering button.
+netmonitor.toolbar.filter.media=สื่อ
+
+# LOCALIZATION NOTE (netmonitor.toolbar.filter.flash): This is the label displayed
+# in the network toolbar for the "Flash" filtering button.
+netmonitor.toolbar.filter.flash=Flash
+
+# LOCALIZATION NOTE (netmonitor.toolbar.filter.ws): This is the label displayed
+# in the network toolbar for the "WS" filtering button.
+netmonitor.toolbar.filter.ws=WS
+
+# LOCALIZATION NOTE (netmonitor.toolbar.filter.other): This is the label displayed
+# in the network toolbar for the "Other" filtering button.
+netmonitor.toolbar.filter.other=อื่น ๆ
+
+# LOCALIZATION NOTE (netmonitor.toolbar.filterFreetext.label): This is the label
+# displayed in the network toolbar for the url filtering textbox.
+netmonitor.toolbar.filterFreetext.label=กรอง URL
+
+# LOCALIZATION NOTE (netmonitor.toolbar.filterFreetext.key): This is the
+# shortcut key to focus on the toolbar url filtering textbox
+netmonitor.toolbar.filterFreetext.key=CmdOrCtrl+F
+
+# LOCALIZATION NOTE (netmonitor.toolbar.search.key): This is the
+# shortcut key to toggle the search panel
+netmonitor.toolbar.search.key=CmdOrCtrl+Shift+F
+
+# LOCALIZATION NOTE (netmonitor.toolbar.copy.key): This is the
+# shortcut key to copy a selected request url from the network table
+netmonitor.toolbar.copy.key=CmdOrCtrl+C
+
+# LOCALIZATION NOTE (netmonitor.toolbar.filterFreetext.learnMore): This is
+# the title used for MDN icon in filtering textbox
+netmonitor.toolbar.filterFreetext.learnMore=เรียนรู้เพิ่มเติมเกี่ยวกับการกรอง
+
+# LOCALIZATION NOTE (netmonitor.toolbar.enablePersistentLogs.label): This is the label
+# displayed for the checkbox for enabling persistent logs.
+netmonitor.toolbar.enablePersistentLogs.label=คงรายการบันทึก
+
+# LOCALIZATION NOTE (netmonitor.toolbar.enablePersistentLogs.tooltip): This is the tooltip
+# displayed for the checkbox for enabling persistent logs.
+netmonitor.toolbar.enablePersistentLogs.tooltip=หากคุณเปิดใช้งานตัวเลือกนี้ รายการคำขอจะไม่ถูกล้างในแต่ละครั้งที่คุณนำทางไปยังหน้าใหม่
+
+# LOCALIZATION NOTE (netmonitor.toolbar.disableCache.label): This is the label
+# displayed for the checkbox for disabling browser cache.
+netmonitor.toolbar.disableCache.label=ปิดใช้งานแคช
+
+# LOCALIZATION NOTE (netmonitor.toolbar.disableCache.tooltip): This is the tooltip
+# displayed for the checkbox for disabling browser cache.
+netmonitor.toolbar.disableCache.tooltip=ปิดใช้งานแคช HTTP
+
+# LOCALIZATION NOTE (netmonitor.toolbar.clear): This is the label displayed
+# in the network toolbar for the "Clear" button.
+netmonitor.toolbar.clear=ล้าง
+
+# LOCALIZATION NOTE (netmonitor.toolbar.toggleRecording): This is the label displayed
+# in the network toolbar for the toggle recording button.
+netmonitor.toolbar.toggleRecording=พัก/บันทึกรายการบันทึกเครือข่ายต่อ
+
+# LOCALIZATION NOTE (netmonitor.toolbar.search): This is the tooltip label displayed
+# in the network toolbar for the search button.
+netmonitor.toolbar.search=ค้นหา
+
+# LOCALIZATION NOTE (netmonitor.toolbar.HTTPCustomRequest): This is the tooltip label displayed
+# in the network toolbar for the new HTTP Custom Request button.
+netmonitor.toolbar.HTTPCustomRequest=คำขอใหม่
+
+# LOCALIZATION NOTE (netmonitor.toolbar.resetColumns): This is the label
+# displayed in the network table header context menu.
+netmonitor.toolbar.resetColumns=กลับค่าเดิมของคอลัมน์
+
+# LOCALIZATION NOTE (netmonitor.toolbar.resetSorting): This is the label
+# displayed in the network table header context menu to reset sorting
+netmonitor.toolbar.resetSorting=กลับค่าเดิมของการเรียง
+
+# LOCALIZATION NOTE (netmonitor.toolbar.resizeColumnToFitContent): This is the label
+# displayed in the network table header context menu to resize a column to fit its content
+netmonitor.toolbar.resizeColumnToFitContent=ปรับขนาดคอลัมน์ให้พอดีกับเนื้อหา
+
+# LOCALIZATION NOTE (netmonitor.toolbar.resizeColumnToFitContent.title): This is the title
+# tooltip displayed when draggable resizer in network table headers is hovered
+netmonitor.toolbar.resizeColumnToFitContent.title=คลิกสองครั้งเพื่อให้คอลัมน์พอดีกับเนื้อหา
+
+# LOCALIZATION NOTE (netmonitor.toolbar.timings): This is the label
+# displayed in the network table header context menu for the timing submenu
+netmonitor.toolbar.timings=การจับเวลา
+
+# LOCALIZATION NOTE (netmonitor.toolbar.responseHeaders): This is the
+# label displayed in the network table header context menu for the
+# response headers submenu.
+netmonitor.toolbar.responseHeaders=เฮดเดอร์การตอบสนอง
+
+# LOCALIZATION NOTE (netmonitor.headers.toolbar.block): This is the
+# label displayed in the network details headers tab identifying the
+# block url toolbar button.
+netmonitor.headers.toolbar.block=ปิดกั้น
+
+# LOCALIZATION NOTE (netmonitor.headers.address): This is the label displayed
+# in the network details headers tab identifying the remote address.
+netmonitor.headers.address=ที่อยู่
+
+# LOCALIZATION NOTE (netmonitor.headers.proxyAddress): This is the label displayed
+# in the network details headers tab identifying the proxy address.
+netmonitor.headers.proxyAddress=ที่อยู่พร็อกซี
+
+# LOCALIZATION NOTE (netmonitor.headers.status): This is the label displayed
+# in the network details headers tab identifying the status code.
+netmonitor.headers.status=สถานะ
+
+# LOCALIZATION NOTE (netmonitor.headers.proxyStatus): This is the label displayed
+# in the network details headers tab identifying the status code for the proxy.
+netmonitor.headers.proxyStatus=สถานะพร็อกซี
+
+# LOCALIZATION NOTE (netmonitor.headers.size): This is the label displayed
+# in the network details headers tab identifying the size.
+netmonitor.headers.size=ขนาด
+
+# LOCALIZATION NOTE (networkMenu.headers.sizeDetails): This label is displayed
+# in the network details headers tab providing the size details.
+# %1$S is the transferred size, %2$S is the size.
+netmonitor.headers.sizeDetails=%1$S (ขนาด %2$S)
+
+# LOCALIZATION NOTE (netmonitor.headers.version): This is the label displayed
+# in the network details headers tab identifying the http version.
+netmonitor.headers.version=รุ่น
+
+# LOCALIZATION NOTE (netmonitor.headers.proxyVersion): This is the label displayed
+# in the network details headers tab identifying the http version of the proxy.
+netmonitor.headers.proxyVersion=รุ่นของพร็อกซี
+
+# LOCALIZATION NOTE (netmonitor.summary.learnMore): This is the label displayed
+# in the network details headers tab, with a link to external documentation for
+# status codes.
+netmonitor.summary.learnMore=เรียนรู้เพิ่มเติมเกี่ยวกับรหัสสถานะ
+
+# LOCALIZATION NOTE (netmonitor.headers.referrerPolicy): This is the label displayed
+# in the network details headers tab identifying the referrer policy.
+netmonitor.headers.referrerPolicy=นโยบาย Referrer
+
+# LOCALIZATION NOTE (netmonitor.headers.contentBlocking): This is the label displayed
+# in the network details headers tab identifying the content blocking mode.
+netmonitor.headers.contentBlocking=การปิดกั้น
+
+# LOCALIZATION NOTE (netmonitor.headers.requestPriority): This is the label displayed
+# in the network details headers tab identifying the request priority.
+netmonitor.headers.requestPriority=ขอลำดับความสำคัญ
+
+# LOCALIZATION NOTE (netmonitor.headers.dns): This is the label displayed
+# in the network details headers tab identifying the DNS resolution.
+netmonitor.headers.dns=การแปลงที่อยู่ DNS
+
+# LOCALIZATION NOTE (netmonitor.headers.dns.basic): This is the label value displayed
+# in the network details headers tab identifying the Basic DNS resolution.
+netmonitor.headers.dns.basic=ระบบ
+
+# LOCALIZATION NOTE (netmonitor.headers.dns.doh): This is the label value displayed
+# in the network details headers tab identifying the DNS over HTTPS resolution.
+netmonitor.headers.dns.overHttps=DNS over HTTPS
+
+# LOCALIZATION NOTE (netmonitor.summary.editAndResend): This is the label displayed
+# on the button in the headers tab that opens a form to edit and resend the currently
+# displayed request
+netmonitor.summary.editAndResend=แก้ไขและส่งใหม่
+
+# LOCALIZATION NOTE (netmonitor.headers.raw): This is the label displayed
+# on the button in the headers tab that toggle view for raw request/response headers
+# from the currently displayed request
+netmonitor.headers.raw=ดิบ
+
+# LOCALIZATION NOTE (netmonitor.headers.blockedByCORS): This is the message displayed
+# in the notification shown when a request has been blocked by CORS with a more
+# specific reason shown in the parenthesis
+netmonitor.headers.blockedByCORS=เนื้อความการตอบกลับไม่พร้อมใช้งานสำหรับสคริปต์ (เหตุผล: %S)
+
+#LOCALIZATION NOTE (netmonitor.headers.blockedByCORSTooltip): This is the tooltip
+# displayed on the learnmore link of the blocked by CORS notification.
+netmonitor.headers.blockedByCORSTooltip=เรียนรู้เพิ่มเติมเกี่ยวกับข้อผิดพลาด CORS นี้
+
+# LOCALIZATION NOTE (netmonitor.response.name): This is the label displayed
+# in the network details response tab identifying an image's file name or font face's name.
+netmonitor.response.name=ชื่อ:
+
+# LOCALIZATION NOTE (netmonitor.response.dimensions): This is the label displayed
+# in the network details response tab identifying an image's dimensions.
+netmonitor.response.dimensions=มิติ:
+
+# LOCALIZATION NOTE (netmonitor.response.mime): This is the label displayed
+# in the network details response tab identifying an image's or font's MIME type.
+netmonitor.response.mime=ชนิด MIME:
+
+# LOCALIZATION NOTE (netmonitor.response.fontPreviewFailed): This is the notice displayed
+# in the network details response tab if the font preview could not be generated due to
+# an error.
+netmonitor.response.fontPreviewFailed=ไม่สามารถสร้างตัวอย่างแบบอักษรได้
+
+# LOCALIZATION NOTE (netmonitor.timings.blocked): This is the label displayed
+# in the network details timings tab identifying the amount of time spent
+# in a "blocked" state.
+netmonitor.timings.blocked=ถูกปิดกั้น:
+
+# LOCALIZATION NOTE (netmonitor.timings.dns): This is the label displayed
+# in the network details timings tab identifying the amount of time spent
+# in a "dns" state.
+netmonitor.timings.dns=การแปลงที่อยู่ DNS:
+
+# LOCALIZATION NOTE (netmonitor.timings.ssl): This is the label displayed
+# in the network details timings tab identifying the amount of time spent
+# in a "tls" handshake state.
+netmonitor.timings.ssl=การตั้งค่า TLS:
+
+# LOCALIZATION NOTE (netmonitor.timings.connect): This is the label displayed
+# in the network details timings tab identifying the amount of time spent
+# in a "connect" state.
+netmonitor.timings.connect=การเชื่อมต่อ:
+
+# LOCALIZATION NOTE (netmonitor.timings.send): This is the label displayed
+# in the network details timings tab identifying the amount of time spent
+# in a "send" state.
+netmonitor.timings.send=การส่ง:
+
+# LOCALIZATION NOTE (netmonitor.timings.wait): This is the label displayed
+# in the network details timings tab identifying the amount of time spent
+# in a "wait" state.
+netmonitor.timings.wait=การรอ:
+
+# LOCALIZATION NOTE (netmonitor.timings.receive): This is the label displayed
+# in the network details timings tab identifying the amount of time spent
+# in a "receive" state.
+netmonitor.timings.receive=การรับ:
+
+# LOCALIZATION NOTE (netmonitor.timings.launchServiceWorker): This is the label displayed
+# in the network details timings tab identifying the amount of time spent
+# during the launch of the service worker.
+netmonitor.timings.launchServiceWorker=เริ่มการทำงาน:
+
+# LOCALIZATION NOTE (netmonitor.timings.requestToServiceWorker): This is the label displayed
+# in the network details timings tab identifying the amount of time spent while a request is
+# made to the service worker.
+netmonitor.timings.requestToServiceWorker=ดิสแพตช์ fetch:
+
+# LOCALIZATION NOTE (netmonitor.timings.handledByServiceWorker): This is the label displayed
+# in the network details timings tab identifying the amount of time spent while a request is
+# handled by the service worker.
+netmonitor.timings.handledByServiceWorker=จัดการ fetch:
+
+# LOCALIZATION NOTE (netmonitor.timings.learnMore): This is the label displayed
+# in the network details timings tab, with a link to external documentation
+netmonitor.timings.learnMore=เรียนรู้เพิ่มเติมเกี่ยวกับการกำหนดเวลา
+
+# LOCALIZATION NOTE (netmonitor.audits.slowIconTooltip): This is the tooltip text displayed
+# in the network request list file column, on the slow icon button.
+# %1$S is the waiting time %2$S is the slow threshold.
+netmonitor.audits.slowIconTooltip=เวลาในการตอบสนองของเซิร์ฟเวอร์ช้า (%1$S) ขีดจำกัดที่แนะนำคือ %2$S
+
+# LOCALIZATION NOTE (netmonitor.security.warning.cipher): A tooltip
+# for warning icon that indicates a connection uses insecure cipher suite.
+netmonitor.security.warning.cipher=การเข้ารหัสที่ใช้เลิกใช้แล้วและไม่ปลอดภัย
+
+# LOCALIZATION NOTE (netmonitor.security.error): This is the label displayed
+# in the security tab if a security error prevented the connection.
+netmonitor.security.error=เกิดข้อผิดพลาด:
+
+# LOCALIZATION NOTE (netmonitor.security.protocolVersion): This is the label displayed
+# in the security tab describing TLS/SSL protocol version.
+netmonitor.security.protocolVersion=รุ่นโปรโตคอล:
+
+# LOCALIZATION NOTE (netmonitor.security.cipherSuite): This is the label displayed
+# in the security tab describing the cipher suite used to secure this connection.
+netmonitor.security.cipherSuite=ชุดการเข้ารหัส:
+
+# LOCALIZATION NOTE (netmonitor.security.keaGroup): This is the label displayed
+# in the security tab describing the key exchange group suite used to secure
+# this connection.
+netmonitor.security.keaGroup=กลุ่มการแลกเปลี่ยนกุญแจ:
+
+# LOCALIZATION NOTE (netmonitor.security.keaGroup.none): This is the label
+# displayed in the security tab describing the case when no group was used.
+netmonitor.security.keaGroup.none=ไม่มี
+
+# LOCALIZATION NOTE (netmonitor.security.keaGroup.custom): This is the label
+# displayed in the security tab describing the case when a custom group was used.
+netmonitor.security.keaGroup.custom=กำหนดเอง
+
+# LOCALIZATION NOTE (netmonitor.security.keaGroup.unknown): This is the value
+# displayed in the security tab describing an unknown group.
+netmonitor.security.keaGroup.unknown=ไม่ทราบกลุ่ม
+
+# LOCALIZATION NOTE (netmonitor.security.signatureScheme): This is the label
+# displayed in the security tab describing the signature scheme used by for
+# the server certificate in this connection.
+netmonitor.security.signatureScheme=แบบแผนลายเซ็น:
+
+# LOCALIZATION NOTE (netmonitor.security.signatureScheme.none): This is the
+# label displayed in the security tab describing the case when no signature
+# was used.
+netmonitor.security.signatureScheme.none=ไม่มี
+
+# LOCALIZATION NOTE (netmonitor.security.signatureScheme.unknown): This is the
+# value displayed in the security tab describing an unknown signature scheme.
+netmonitor.security.signatureScheme.unknown=แบบแผนลายเซ็นที่ไม่รู้จัก
+
+# LOCALIZATION NOTE (netmonitor.security.hsts): This is the label displayed
+# in the security tab describing the usage of HTTP Strict Transport Security.
+netmonitor.security.hsts=HTTP Strict Transport Security:
+
+# LOCALIZATION NOTE (netmonitor.security.hpkp): This is the label displayed
+# in the security tab describing the usage of Public Key Pinning.
+netmonitor.security.hpkp=Public Key Pinning:
+
+# LOCALIZATION NOTE (netmonitor.security.connection): This is the label displayed
+# in the security tab describing the section containing information related to
+# the secure connection.
+netmonitor.security.connection=การเชื่อมต่อ:
+
+# LOCALIZATION NOTE (netmonitor.security.certificate): This is the label displayed
+# in the security tab describing the server certificate section.
+netmonitor.security.certificate=ใบรับรอง:
+
+# LOCALIZATION NOTE (netmonitor.trackingResource.tooltip): This is the label used
+# in the Network monitor panel as a tooltip for tracking resource icon.
+netmonitor.trackingResource.tooltip=URL นี้ตรงกับตัวติดตามที่รู้จักและจะถูกปิดกั้นเมื่อเปิดใช้งานการปิดกั้นเนื้อหา
+
+# LOCALIZATION NOTE (netmonitor.trackingResource.enhancedTrackingProtection): This is
+# the label used in the Network monitor panel for showing enhanced tracking protection.
+netmonitor.trackingResource.enhancedTrackingProtection=การป้องกันการติดตามแบบพิเศษ
+
+# LOCALIZATION NOTE (netmonitor.enhancedTrackingProtection.learnMore): This is the label
+# displayed in the network details headers tab, with a link to external documentation for
+# enhanced tracking protection.
+netmonitor.enhancedTrackingProtection.learnMore=เรียนรู้เพิ่มเติมเกี่ยวกับการป้องกันการติดตามแบบพิเศษ
+
+# LOCALIZATION NOTE (netmonitor.context.copyValue): This is the label displayed
+# for the copy sub-menu in the context menu for a request
+netmonitor.context.copyValue=คัดลอกค่า
+
+# LOCALIZATION NOTE (netmonitor.context.copyValue.accesskey): This is the access key
+# for the copy menu/sub-menu displayed in the context menu for a request
+netmonitor.context.copyValue.accesskey=ค
+
+# LOCALIZATION NOTE (netmonitor.context.copyUrl): This is the label displayed
+# on the context menu that copies the selected request's url
+netmonitor.context.copyUrl=คัดลอก URL
+
+# LOCALIZATION NOTE (netmonitor.context.copyUrl.accesskey): This is the access key
+# for the Copy URL menu item displayed in the context menu for a request
+netmonitor.context.copyUrl.accesskey=ด
+
+# LOCALIZATION NOTE (netmonitor.context.copyUrlParams): This is the label displayed
+# on the context menu that copies the selected request's url parameters
+netmonitor.context.copyUrlParams=คัดลอกพารามิเตอร์ URL
+
+# LOCALIZATION NOTE (netmonitor.context.copyUrlParams.accesskey): This is the access key
+# for the Copy URL Parameters menu item displayed in the context menu for a request
+netmonitor.context.copyUrlParams.accesskey=ล
+
+# LOCALIZATION NOTE (netmonitor.context.copyRequestData): This is the label displayed
+# on the context menu that copies the selected request's data
+netmonitor.context.copyRequestData=คัดลอกข้อมูล %S
+
+# LOCALIZATION NOTE (netmonitor.context.copyRequestData.accesskey): This is the access key
+# for the Copy POST/PATCH/PUT/DELETE Data menu item displayed in the context menu for a request
+netmonitor.context.copyRequestData.accesskey=อ
+
+# LOCALIZATION NOTE (netmonitor.context.copyAsPowerShell): This is the label displayed
+# on the context menu that copies the selected request as a PowerShell command.
+netmonitor.context.copyAsPowerShell=คัดลอกเป็น PowerShell
+
+# LOCALIZATION NOTE (netmonitor.context.copyAsPowerShell.accesskey): This is the access key
+# for the Copy as PowerShell menu item displayed in the context menu for a request
+netmonitor.context.copyAsPowerShell.accesskey=S
+
+# LOCALIZATION NOTE (netmonitor.context.copyAsCurl): This is the label displayed
+# on the context menu that copies the selected request as a cURL command.
+# The capitalization is part of the official name and should be used throughout all languages.
+# http://en.wikipedia.org/wiki/CURL
+netmonitor.context.copyAsCurl=คัดลอกเป็น cURL
+
+# LOCALIZATION NOTE (netmonitor.context.copyAsCurl.accesskey): This is the access key
+# for the Copy as cURL menu item displayed in the context menu for a request
+netmonitor.context.copyAsCurl.accesskey=ก
+
+# LOCALIZATION NOTE (netmonitor.context.copyAsCurl.*): This is the template used to add
+# a target platform to the label for "Copy as cURL" command
+# e.g. Copy as cURL (Windows)
+# Localized label for "Copy as cURL": %S
+netmonitor.context.copyAsCurl.win=%S (Windows)
+netmonitor.context.copyAsCurl.win.accesskey=ค
+netmonitor.context.copyAsCurl.posix=%S (POSIX)
+netmonitor.context.copyAsCurl.posix.accesskey=P
+
+# LOCALIZATION NOTE (netmonitor.context.copyAsFetch): This is the label displayed
+# on the context menu that copies the selected request as a fetch request.
+netmonitor.context.copyAsFetch=คัดลอกเป็น Fetch
+
+# LOCALIZATION NOTE (netmonitor.context.copyAsFetch.accesskey): This is the access key
+# for the Copy as fetch menu item displayed in the context menu for a request
+netmonitor.context.copyAsFetch.accesskey=F
+
+# LOCALIZATION NOTE (netmonitor.context.copyRequestHeaders): This is the label displayed
+# on the context menu that copies the selected item's request headers
+netmonitor.context.copyRequestHeaders=คัดลอกเฮดเดอร์คำขอ
+
+# LOCALIZATION NOTE (netmonitor.context.copyRequestHeaders.accesskey): This is the access key
+# for the Copy Request Headers menu item displayed in the context menu for a request
+netmonitor.context.copyRequestHeaders.accesskey=ส
+
+# LOCALIZATION NOTE (netmonitor.context.copyResponseHeaders): This is the label displayed
+# on the context menu that copies the selected item's response headers
+netmonitor.context.copyResponseHeaders=คัดลอกเฮดเดอร์การตอบสนอง
+
+# LOCALIZATION NOTE (netmonitor.context.copyResponseHeaders.accesskey): This is the access key
+# for the Copy Response Headers menu item displayed in the context menu for a response
+netmonitor.context.copyResponseHeaders.accesskey=ว
+
+# LOCALIZATION NOTE (netmonitor.context.copyResponse): This is the label displayed
+# on the context menu that copies the selected response as a string
+netmonitor.context.copyResponse=คัดลอกการตอบสนอง
+
+# LOCALIZATION NOTE (netmonitor.context.copyResponse.accesskey): This is the access key
+# for the Copy Response menu item displayed in the context menu for a request
+netmonitor.context.copyResponse.accesskey=ร
+
+# LOCALIZATION NOTE (netmonitor.context.copyImageAsDataUri): This is the label displayed
+# on the context menu that copies the selected image as data uri
+netmonitor.context.copyImageAsDataUri=คัดลอกภาพเป็น URI ของข้อมูล
+
+# LOCALIZATION NOTE (netmonitor.context.copyImageAsDataUri.accesskey): This is the access key
+# for the Copy Image As Data URI menu item displayed in the context menu for a request
+netmonitor.context.copyImageAsDataUri.accesskey=ภ
+
+# LOCALIZATION NOTE (netmonitor.context.useAsFetch): This is the label displayed
+# on the context menu that copies the selected request as a fetch command.
+netmonitor.context.useAsFetch=ใช้เป็น Fetch ในคอนโซล
+
+# LOCALIZATION NOTE (netmonitor.context.useAsFetch.accesskey): This is the access key
+# for the Copy as fetch menu item displayed in the context menu for a request
+netmonitor.context.useAsFetch.accesskey=F
+
+# LOCALIZATION NOTE (netmonitor.context.saveImageAs): This is the label displayed
+# on the context menu that save the Image
+netmonitor.context.saveImageAs=บันทึกภาพเป็น…
+
+# LOCALIZATION NOTE (netmonitor.context.saveImageAs.accesskey): This is the access key
+# for the Copy Image As Data URI menu item displayed in the context menu for a request
+netmonitor.context.saveImageAs.accesskey=บ
+
+# LOCALIZATION NOTE (netmonitor.context.saveResponseAs): This is the label displayed
+# on the context menu that saves the response
+netmonitor.context.saveResponseAs=บันทึกการตอบกลับเป็น
+
+# LOCALIZATION NOTE (netmonitor.context.saveResponseAs.accesskey): This is the access key
+# for the Save Response As menu item displayed in the context menu for a request
+netmonitor.context.saveResponseAs.accesskey=บ
+
+# LOCALIZATION NOTE (netmonitor.context.copyAll): This is the label displayed
+# on the context menu that copies all data
+netmonitor.context.copyAll=คัดลอกทั้งหมด
+
+# LOCALIZATION NOTE (netmonitor.context.copyAll.accesskey): This is the access key
+# for the Copy All menu item displayed in the context menu for a properties view panel
+netmonitor.context.copyAll.accesskey=ค
+
+# LOCALIZATION NOTE (netmonitor.context.copyAllAsHar): This is the label displayed
+# on the context menu that copies all as HAR format
+netmonitor.context.copyAllAsHar=คัดลอกทั้งหมดเป็น HAR
+
+# LOCALIZATION NOTE (netmonitor.context.copyAllAsHar.accesskey): This is the access key
+# for the Copy All As HAR menu item displayed in the context menu for a network panel
+netmonitor.context.copyAllAsHar.accesskey=ด
+
+# LOCALIZATION NOTE (netmonitor.context.saveAllAsHar): This is the label displayed
+# on the context menu that saves all as HAR format
+netmonitor.context.saveAllAsHar=บันทึกทั้งหมดเป็น HAR
+
+# LOCALIZATION NOTE (netmonitor.context.saveAllAsHar.accesskey): This is the access key
+# for the Save All As HAR menu item displayed in the context menu for a network panel
+netmonitor.context.saveAllAsHar.accesskey=H
+
+# LOCALIZATION NOTE (netmonitor.context.importHar.accesskey): This is the access key
+# for the Import HAR menu item displayed in the context menu for a network panel
+netmonitor.context.importHar.accesskey=น
+
+# LOCALIZATION NOTE (netmonitor.har.importHarDialogTitle): This is a label
+# used for import file open dialog
+netmonitor.har.importHarDialogTitle=นำเข้าไฟล์ HAR
+
+# LOCALIZATION NOTE (netmonitor.har.importDialogHARFilter):
+# This string is displayed as a filter for importing HAR file
+netmonitor.har.importDialogHARFilter=ไฟล์ HAR
+
+# LOCALIZATION NOTE (netmonitor.har.importDialogAllFilter):
+# This string is displayed as a filter for importing HAR file
+netmonitor.har.importDialogAllFilter=ไฟล์ทั้งหมด
+
+# LOCALIZATION NOTE (netmonitor.context.resend.label): This is the label displayed
+# on the context menu that resends the currently displayed request immediately
+netmonitor.context.resend.label=ส่งใหม่
+
+# LOCALIZATION NOTE (netmonitor.context.resend.accesskey): This is the access key
+# for the "Resend" menu item displayed in the context menu for a request
+netmonitor.context.resend.accesskey=ส
+
+# LOCALIZATION NOTE (netmonitor.context.editAndResend): This is the label displayed
+# on the context menu that opens a form to edit and resend the currently
+# displayed request
+netmonitor.context.editAndResend=แก้ไขและส่งใหม่
+
+# LOCALIZATION NOTE (netmonitor.context.editAndResend.accesskey): This is the access key
+# for the "Edit and Resend" menu item displayed in the context menu for a request
+netmonitor.context.editAndResend.accesskey=ก
+
+# LOCALIZATION NOTE (netmonitor.context.blockURL): This is the label displayed
+# on the context menu that blocks any requests matching the selected request's URL.
+netmonitor.context.blockURL=ปิดกั้น URL
+
+# LOCALIZATION NOTE (netmonitor.context.unblockURL): This is the label displayed
+# on the context menu that unblocks any requests matching the selected request's URL.
+netmonitor.context.unblockURL=เลิกปิดกั้น URL
+
+# LOCALIZATION NOTE (netmonitor.context.newTab): This is the label
+# for the Open in New Tab menu item displayed in the context menu of the
+# network container
+netmonitor.context.newTab=เปิดในแท็บใหม่
+
+# LOCALIZATION NOTE (netmonitor.context.newTab.accesskey): This is the access key
+# for the Open in New Tab menu item displayed in the context menu of the
+# network container
+netmonitor.context.newTab.accesskey=ป
+
+# LOCALIZATION NOTE (netmonitor.context.openInDebugger): This is the label
+# for the Open in Debugger menu item displayed in the context menu of the
+# network container
+netmonitor.context.openInDebugger=เปิดในตัวดีบั๊ก
+
+# LOCALIZATION NOTE (netmonitor.context.openInDebugger.accesskey): This is the access key
+# for the Open in Debugger menu item displayed in the context menu of the
+# network container
+netmonitor.context.openInDebugger.accesskey=ด
+
+# LOCALIZATION NOTE (netmonitor.context.openInStyleEditor): This is the label
+# for the Open in Style Editor menu item displayed in the context menu of the
+# network container
+netmonitor.context.openInStyleEditor=เปิดในตัวแก้ไขสไตล์
+
+# LOCALIZATION NOTE (netmonitor.context.openInStyleEditor.accesskey): This is
+# the access key for the Open in Style Editor menu item displayed in the
+# context menu of the network container
+netmonitor.context.openInStyleEditor.accesskey=น
+
+# LOCALIZATION NOTE (netmonitor.context.perfTools): This is the label displayed
+# on the context menu that shows the performance analysis tools
+netmonitor.context.perfTools=เริ่มการวิเคราะห์ประสิทธิภาพ…
+
+# LOCALIZATION NOTE (netmonitor.context.perfTools.accesskey): This is the access key
+# for the performance analysis menu item displayed in the context menu for a request
+netmonitor.context.perfTools.accesskey=ร
+
+# LOCALIZATION NOTE (netmonitor.custom.newRequest): This is the label displayed
+# as the title of the new custom request form
+netmonitor.custom.newRequest=คำขอใหม่
+
+# LOCALIZATION NOTE (netmonitor.custom.newRequestMethodLabel): This is the label displayed
+# above the method text input field of the new custom request form
+netmonitor.custom.newRequestMethodLabel=วิธีการ
+
+# LOCALIZATION NOTE (netmonitor.custom.newRequestUrlLabel): This is the label displayed
+# above the url text input field of the new custom request form
+netmonitor.custom.newRequestUrlLabel=URL
+
+# LOCALIZATION NOTE (netmonitor.custom.query): This is the label displayed
+# above the query string entry in the custom request form
+netmonitor.custom.query=สตริงการสืบค้น:
+
+# LOCALIZATION NOTE (netmonitor.custom.urlParameters): This is the label displayed
+# above the query string entry in the custom request form
+netmonitor.custom.urlParameters=พารามิเตอร์ URL
+
+# LOCALIZATION NOTE (netmonitor.custom.headers): This is the label displayed
+# above the request headers entry in the custom request form
+netmonitor.custom.headers=เฮดเดอร์คำขอ
+
+# LOCALIZATION NOTE (netmonitor.custom.newRequestHeaders): This is the label displayed
+# above the request headers entry in the new custom request form
+netmonitor.custom.newRequestHeaders=เฮดเดอร์
+
+# LOCALIZATION NOTE (netmonitor.custom.placeholder.name): This is the placeholder displayed
+# on the input on the headers and query params on new custom request form
+netmonitor.custom.placeholder.name=ชื่อ
+
+# LOCALIZATION NOTE (netmonitor.custom.placeholder.value): This is the placeholder displayed
+# on the input on the headers and query params on new custom request form
+netmonitor.custom.placeholder.value=ค่า
+
+# LOCALIZATION NOTE (netmonitor.custom.postBody): This is the label displayed
+# above the request body entry in the new custom request form
+netmonitor.custom.postBody=เนื้อหา
+
+# LOCALIZATION NOTE (netmonitor.custom.postBody.placeholder): This is the placeholder displayed
+# on the textarea body in the new custom request form
+netmonitor.custom.postBody.placeholder=ส่วนข้อมูล
+
+# LOCALIZATION NOTE (netmonitor.custom.postData): This is the label displayed
+# above the request body entry in the custom request form
+netmonitor.custom.postData=เนื้อหาคำขอ
+
+# LOCALIZATION NOTE (netmonitor.custom.send): This is the label displayed
+# on the button which sends the custom request
+netmonitor.custom.send=ส่ง
+
+# LOCALIZATION NOTE (netmonitor.custom.cancel): This is the label displayed
+# on the button which cancels and closes the custom request form
+netmonitor.custom.cancel=ยกเลิก
+
+# LOCALIZATION NOTE (netmonitor.custom.clear): This is the label displayed
+# on the button which clears the content of the new custom request panel
+netmonitor.custom.clear=ล้าง
+
+# LOCALIZATION NOTE (netmonitor.custom.removeItem): This is the
+# tooltip shown over the remove button for headers and query params item
+netmonitor.custom.removeItem=เอารายการออก
+
+# LOCALIZATION NOTE (netmonitor.backButton): This is the label displayed
+# on the button which exists the performance statistics view
+netmonitor.backButton=ย้อนกลับ
+
+# LOCALIZATION NOTE (netmonitor.status.tooltip.simple): This is the tooltip of the
+# column status code, when request is not being cached or is not from a service worker
+# %1$S is the status code, %2$S is the status text.
+netmonitor.status.tooltip.simple = %1$S %2$S
+
+# LOCALIZATION NOTE (netmonitor.status.tooltip.cached): This is the tooltip of
+# the column status code, when the request is cached
+# %1$S is the status code, %2$S is the status text.
+netmonitor.status.tooltip.cached = %1$S %2$S (ถูกแคช)
+
+# LOCALIZATION NOTE (netmonitor.status.tooltip.worker): This is the tooltip of
+# the column status code, when the request is from a service worker
+# %1$S is the status code, %2$S is the status text.
+netmonitor.status.tooltip.worker = %1$S %2$S (Service Worker)
+
+# LOCALIZATION NOTE (netmonitor.status.tooltip.cachedworker): This is the tooltip
+# of the column status code, when the request is cached and is from a service worker
+# %1$S is the status code, %2$S is the status text.
+netmonitor.status.tooltip.cachedworker = %1$S %2$S (ถูกแคช, Service Worker)
+
+# LOCALIZATION NOTE (netmonitor.label.dropHarFiles): This is a label
+# rendered within the Network panel when *.har file(s) are dragged
+# over the content.
+netmonitor.label.dropHarFiles = ปล่อยไฟล์ HAR ที่นี่
+
+# LOCALIZATION NOTE (netmonitor.label.har): This is a label used
+# as a tooltip for toolbar drop-down button with HAR actions
+netmonitor.label.har=การส่งออก/การนำเข้า HAR
+
+# LOCALIZATION NOTE (netmonitor.cache.cache): This is the label text for the parent
+# node in the TreeView.
+netmonitor.cache.cache=แคช
+
+# LOCALIZATION NOTE (netmonitor.cache.empty): This is the text displayed when cache
+# information is not available.
+netmonitor.cache.empty=ไม่มีข้อมูลแคช
+
+# LOCALIZATION NOTE (netmonitor.cache.notAvailable): This is the text displayed under
+# a node that has no information available.
+netmonitor.cache.notAvailable=ไม่พร้อมใช้งาน
+
+# LOCALIZATION NOTE (netmonitor.cache.dataSize): This is the label text for
+# the datasize of the cached object.
+netmonitor.cache.dataSize=ขนาดข้อมูล
+
+# LOCALIZATION NOTE (netmonitor.cache.expires): This is the label text for the
+# expires time of the cached object.
+netmonitor.cache.expires=หมดอายุ
+
+# LOCALIZATION NOTE (netmonitor.cache.fetchCount): This is the label text for the
+# fetch count of the cached object.
+netmonitor.cache.fetchCount=จำนวนการดึงข้อมูล
+
+# LOCALIZATION NOTE (netmonitor.cache.lastFetched): This is the label text for the
+# last fetched date/time of the cached object.
+netmonitor.cache.lastFetched=ดึงข้อมูลล่าสุด
+
+# LOCALIZATION NOTE (netmonitor.cache.lastModified): This is the label text for the
+# last modified date/time of the cached object.
+netmonitor.cache.lastModified=วันที่เปลี่ยนแปลงล่าสุด
+
+# LOCALIZATION NOTE (netmonitor.cache.device): This is the label text for the device
+# where a cached object was fetched from (e.g. "disk").
+netmonitor.cache.device=อุปกรณ์
+
+# LOCALIZATION NOTE (netmonitor.settings.menuTooltip): This is the tooltip that gets displayed
+# when the settings menu button is hovered.
+netmonitor.settings.menuTooltip=การตั้งค่าเครือข่าย
+
+# LOCALIZATION NOTE (netmonitor.settings.importHarTooltip): This is the tooltip that gets displayed
+# when the HAR import menu item is hovered
+netmonitor.settings.importHarTooltip=นำเข้าไฟล์ HAR ของข้อมูลเครือข่าย
+
+# LOCALIZATION NOTE (netmonitor.settings.saveHarTooltip): This is the tooltip that gets displayed
+# when the HAR save menu item is hovered
+netmonitor.settings.saveHarTooltip=บันทึกข้อมูลเครือข่ายเป็นไฟล์ HAR
+
+# LOCALIZATION NOTE (netmonitor.settings.copyHarTooltip): This is the tooltip that gets displayed
+# when the HAR copy menu item is hovered
+netmonitor.settings.copyHarTooltip=คัดลอกข้อมูลเครือข่ายไปยังคลิปบอร์ด
diff --git a/l10n-th/devtools/client/network-throttling.properties b/l10n-th/devtools/client/network-throttling.properties
new file mode 100644
index 0000000000..788a6e7c1a
--- /dev/null
+++ b/l10n-th/devtools/client/network-throttling.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/.
+
+# LOCALIZATION NOTE These strings are used inside the NetworkThrottlingMenu
+# component used to throttle network bandwidth.
+#
+# The correct localization of this file might be to keep it in
+# English, or another language commonly spoken among web developers.
+# You want to make that choice consistent across the developer tools.
+# A good criteria is the language in which you'd find the best
+# documentation on web development on the web.
+
+# LOCALIZATION NOTE (responsive.noThrottling): UI option in a menu to configure
+# network throttling. This option is the default and disables throttling so you
+# just have normal network conditions. There is not very much room in the UI
+# so a short string would be best if possible.
+responsive.noThrottling=ไม่มีการควบคุมปริมาณ
+
+# LOCALIZATION NOTE (throttling.profile.description): Tooltip for the throttling
+# menu button, which gives details about the currently selected profile.
+# %1$S: Download speed value (number)
+# %2$S: Download speed unit (eg "Kbps", "Mbps")
+# %3$S: Upload speed value (number)
+# %4$S: Upload speed unit (eg "Kbps", "Mbps")
+# %5$S: Latency value, (number, in ms)
+throttling.profile.description = ดาวน์โหลด %1$S%2$S อัปโหลด %3$S%4$S เวลาในการตอบสนอง %5$S ms
diff --git a/l10n-th/devtools/client/perftools.ftl b/l10n-th/devtools/client/perftools.ftl
new file mode 100644
index 0000000000..716fc7cc0d
--- /dev/null
+++ b/l10n-th/devtools/client/perftools.ftl
@@ -0,0 +1,147 @@
+# 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/.
+
+
+### These strings are used in DevTools’ performance-new panel, about:profiling, and
+### the remote profiling panel. There are additional profiler strings in the appmenu.ftl
+### file that are used for the profiler popup.
+
+perftools-intro-title = การตั้งค่า Profiler
+perftools-intro-description =
+ การอัดบันทึกจะเปิด profiler.firefox.com ในแท็บใหม่ ข้อมูลทั้งหมดจะถูกเก็บ
+ ในเครื่อง แต่คุณสามารถเลือกที่จะอัปโหลดเพื่อแบ่งปันได้
+
+## All of the headings for the various sections.
+
+perftools-heading-settings = การตั้งค่าแบบเต็ม
+perftools-heading-buffer = การตั้งค่าบัฟเฟอร์
+perftools-heading-features = คุณลักษณะ
+perftools-heading-features-default = คุณสมบัติ (แนะนำโดยค่าเริ่มต้น)
+perftools-heading-features-disabled = คุณสมบัติที่ปิดใช้งาน
+perftools-heading-features-experimental = การทดลอง
+perftools-heading-threads = เธรด
+perftools-heading-threads-jvm = เธรด JVM
+perftools-heading-local-build = บิลด์ภายในเครื่อง
+
+##
+
+perftools-description-intro =
+ การอัดบันทึกจะเปิด <a>profiler.firefox.com</a> ในแท็บใหม่ ข้อมูลทั้งหมดจะถูกเก็บ
+ ในเครื่อง แต่คุณสามารถเลือกที่จะอัปโหลดเพื่อแบ่งปันได้
+perftools-description-local-build =
+ หากคุณกำลังสร้างโปรไฟล์ให้กับบิลด์ที่คุณคอมไพล์ด้วยตัวเอง บนเครื่องนี้
+ โปรดเพิ่ม objdir ของบิลด์ของคุณลงในรายการด้านล่างเพื่อให้สามารถ
+ นำมาใช้ในการค้นหาข้อมูลสัญลักษณ์ได้
+
+## The controls for the interval at which the profiler samples the code.
+
+perftools-range-interval-label = ช่วงการสุ่มตัวอย่าง:
+perftools-range-interval-milliseconds = { NUMBER($interval, maxFractionalUnits: 2) } มิลลิวินาที
+
+##
+
+# The size of the memory buffer used to store things in the profiler.
+perftools-range-entries-label = ขนาดบัฟเฟอร์:
+perftools-custom-threads-label = เพิ่มหัวข้อที่กำหนดเองตามชื่อ:
+perftools-devtools-interval-label = ช่วงเวลา:
+perftools-devtools-threads-label = เธรด:
+perftools-devtools-settings-label = การตั้งค่า
+
+## Various statuses that affect the current state of profiling, not typically displayed.
+
+perftools-status-recording-stopped-by-another-tool = การบันทึกถูกหยุดโดยเครื่องมืออื่น
+perftools-status-restart-required = ต้องเริ่มการทำงานเบราว์เซอร์ใหม่เพื่อเปิดใช้งานคุณลักษณะนี้
+
+## These are shown briefly when the user is waiting for the profiler to respond.
+
+perftools-request-to-stop-profiler = กำลังหยุดการบันทึก
+perftools-request-to-get-profile-and-stop-profiler = กำลังจับโปรไฟล์
+
+##
+
+perftools-button-start-recording = เริ่มการบันทึก
+perftools-button-capture-recording = จับการอัดบันทึก
+perftools-button-cancel-recording = ยกเลิกการบันทึก
+perftools-button-save-settings = บันทึกการตั้งค่าและย้อนกลับ
+perftools-button-restart = เริ่มการทำงานใหม่
+perftools-button-add-directory = เพิ่มไดเร็กทอรี
+perftools-button-remove-directory = เอาที่เลือกออก
+perftools-button-edit-settings = แก้ไขการตั้งค่า…
+
+## These messages are descriptions of the threads that can be enabled for the profiler.
+
+perftools-thread-gecko-main =
+ .title = โปรเซสหลักสำหรับทั้งโปรเซสแม่และโปรเซสเนื้อหา
+perftools-thread-compositor =
+ .title = รวมอิลิเมนต์ที่ถูกระบายสีต่าง ๆ บนหน้านี้เข้าด้วยกัน
+perftools-thread-dom-worker =
+ .title = เธรดนี้จัดการทั้ง Web Worker และ Service Worker
+perftools-thread-renderer =
+ .title = เมื่อเปิดใช้งาน WebRender แล้ว เธรดที่ดำเนินการเรียก OpenGL
+perftools-thread-render-backend =
+ .title = เธรด RenderBackend ของ WebRender
+perftools-thread-timer =
+ .title = ตัวจับเวลาการจัดการเธรด (setTimeout, setInterval, nsITimer)
+perftools-thread-style-thread =
+ .title = การคำนวณรูปแบบจะแบ่งออกเป็นหลายเธรด
+pref-thread-stream-trans =
+ .title = การขนส่งกระแสเครือข่าย
+perftools-thread-socket-thread =
+ .title = เธรดที่รหัสการเชื่อมต่อเครือข่ายเรียกใช้การเรียกซ็อกเก็ตการปิดกั้นใด ๆ
+perftools-thread-img-decoder =
+ .title = เธรดการถอดรหัสรูปภาพ
+perftools-thread-dns-resolver =
+ .title = การแก้ปัญหา DNS เกิดขึ้นในเธรดนี้
+perftools-thread-task-controller =
+ .title = เธรดในเธรดพูล TaskController
+perftools-thread-jvm-gecko =
+ .title = เธรดหลักของ Gecko JVM
+perftools-thread-jvm-nimbus =
+ .title = เธรดหลักสำหรับ Nimbus experiments SDK
+perftools-thread-jvm-default-dispatcher =
+ .title = ตัวจ่ายงานเริ่มต้นสำหรับไลบรารี coroutines ของ Kotlin
+perftools-thread-jvm-glean =
+ .title = เธรดหลักสำหรับ Glean telemetry SDK
+perftools-thread-jvm-arch-disk-io =
+ .title = ตัวจ่ายงาน IO สำหรับไลบรารี coroutines ของ Kotlin
+perftools-thread-jvm-pool =
+ .title = เธรดที่สร้างขึ้นในพูลเธรดที่ไม่มีชื่อ
+
+##
+
+perftools-record-all-registered-threads = ข้ามการเลือกด้านบนและบันทึกเธรดที่ลงทะเบียนทั้งหมด
+perftools-tools-threads-input-label =
+ .title = ชื่อเธรดเหล่านี้เป็นรายการที่คั่นด้วยจุลภาคที่ใช้ในการเปิดใช้งานการสร้างโปรไฟล์ของเธรดในตัวสร้างโปรไฟล์ ชื่อจะต้องตรงกับชื่อเธรดที่จะรวมเพียงบางส่วนเท่านั้น โดยจะมีการเทียบช่องว่างด้วย
+
+## Onboarding UI labels. These labels are displayed in the new performance panel UI, when
+## devtools.performance.new-panel-onboarding preference is true.
+
+perftools-onboarding-message = <b>ใหม่</b>: { -profiler-brand-name } ถูกรวมเข้ากับเครื่องมือสำหรับนักพัฒนาแล้ว <a>เรียนรู้เพิ่มเติม</a>เกี่ยวกับเครื่องมือใหม่อันทรงพลังนี้
+perftools-onboarding-close-button =
+ .aria-label = ปิดข้อความออนบอร์ด
+
+## Profiler presets
+
+
+# Presets and their l10n IDs are defined in the file
+# devtools/client/performance-new/shared/background.jsm.js
+# The same labels and descriptions are also defined in appmenu.ftl.
+
+perftools-presets-web-developer-label = นักพัฒนาเว็บ
+perftools-presets-web-developer-description = ค่าที่ตั้งล่วงหน้าที่แนะนำสำหรับการดีบั๊กเว็บแอปส่วนใหญ่ โดยมีโอเวอร์เฮดต่ำ
+perftools-presets-firefox-label = { -brand-shorter-name }
+perftools-presets-firefox-description = ค่าที่ตั้งล่วงหน้าที่แนะนำสำหรับการรวบรวมประวัติ { -brand-shorter-name }
+perftools-presets-graphics-label = กราฟิก
+perftools-presets-graphics-description = ค่าที่ตั้งล่วงหน้าสำหรับการตรวจสอบบั๊กเกี่ยวกับกราฟิกใน { -brand-shorter-name }
+perftools-presets-media-label = สื่อ
+perftools-presets-media-description2 = ค่าที่ตั้งล่วงหน้าสำหรับการตรวจสอบบั๊กเกี่ยวกับเสียงและวิดีโอใน { -brand-shorter-name }
+perftools-presets-networking-label = ระบบเครือข่าย
+perftools-presets-networking-description = ค่าที่ตั้งล่วงหน้าสำหรับการตรวจสอบบั๊กเกี่ยวกับระบบเครือข่ายใน { -brand-shorter-name }
+# "Power" is used in the sense of energy (electricity used by the computer).
+perftools-presets-power-label = พลังงาน
+perftools-presets-power-description = ค่าที่ตั้งล่วงหน้าสำหรับการตรวจสอบบั๊กเกี่ยวกับการใช้พลังงานใน { -brand-shorter-name } โดยมีโอเวอร์เฮดต่ำ
+perftools-presets-custom-label = กำหนดเอง
+
+##
+
diff --git a/l10n-th/devtools/client/responsive.properties b/l10n-th/devtools/client/responsive.properties
new file mode 100644
index 0000000000..9ff6c343c4
--- /dev/null
+++ b/l10n-th/devtools/client/responsive.properties
@@ -0,0 +1,182 @@
+# 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 These strings are used inside the Responsive Design Mode,
+# available from the Web Developer sub-menu -> 'Responsive Design Mode'.
+#
+# The correct localization of this file might be to keep it in
+# English, or another language commonly spoken among web developers.
+# You want to make that choice consistent across the developer tools.
+# A good criteria is the language in which you'd find the best
+# documentation on web development on the web.
+
+# LOCALIZATION NOTE These strings are used inside the Responsive Design Mode,
+# available from the Browser Tools sub-menu -> 'Responsive Design Mode'.
+#
+# The correct localization of this file might be to keep it in
+# English, or another language commonly spoken among web developers.
+# You want to make that choice consistent across the developer tools.
+# A good criteria is the language in which you'd find the best
+# documentation on web development on the web.
+
+# LOCALIZATION NOTE (responsive.editDeviceList2): Context menu item displayed in the
+# device selector.
+responsive.editDeviceList2=แก้ไขรายการ…
+
+# LOCALIZATION NOTE (responsive.exit): Tooltip text of the exit button.
+responsive.exit=ปิดโหมดการออกแบบเชิงตอบสนอง
+
+# LOCALIZATION NOTE (responsive.rotate): Tooltip text of the rotate button.
+responsive.rotate=หมุนมุมมองพื้นที่ทำงาน
+
+# LOCALIZATION NOTE (responsive.responsiveMode): Placeholder text for the
+# device selector.
+responsive.responsiveMode=เชิงตอบสนอง
+
+# LOCALIZATION NOTE (responsive.enableTouch): Tooltip text for the touch
+# simulation button when it's disabled.
+responsive.enableTouch=เปิดใช้งานการจำลองการสัมผัส
+
+# LOCALIZATION NOTE (responsive.disableTouch): Tooltip text for the touch
+# simulation button when it's enabled.
+responsive.disableTouch=ปิดใช้งานการจำลองการสัมผัส
+
+# LOCALIZATION NOTE (responsive.screenshot): Tooltip of the screenshot button.
+responsive.screenshot=จับภาพหน้าจอของมุมมองพื้นที่ทำงาน
+
+# LOCALIZATION NOTE (responsive.screenshotGeneratedFilename): The auto generated
+# filename.
+# The first argument (%1$S) is the date string in yyyy-mm-dd format and the
+# second argument (%2$S) is the time string in HH.MM.SS format.
+responsive.screenshotGeneratedFilename=ภาพหน้าจอ %1$S ที่ %2$S
+
+# LOCALIZATION NOTE (responsive.remoteOnly): Message displayed in the tab's
+# notification box if a user tries to open Responsive Design Mode in a
+# non-remote tab.
+responsive.remoteOnly=โหมดออกแบบเชิงตอบสนองพร้อมใช้งานสำหรับเฉพาะแบบเบราว์เซอร์ระยะไกลเท่านั้น เช่น แท็บเหล่านั้นที่ใช้สำหรับเนื้อหาเว็บใน Firefox แบบมัลติโปรเซส
+
+# LOCALIZATION NOTE (responsive.changeDevicePixelRatio): Tooltip for the
+# device pixel ratio dropdown when is enabled.
+responsive.changeDevicePixelRatio=เปลี่ยนอัตราส่วนพิกเซลของอุปกรณ์ของมุมมองพื้นที่ทำงาน
+
+# LOCALIZATION NOTE (responsive.devicePixelRatio.auto): Tooltip for the device pixel ratio
+# dropdown when it is disabled because a device is selected.
+# The argument (%1$S) is the selected device (e.g. iPhone 6) that set
+# automatically the device pixel ratio value.
+responsive.devicePixelRatio.auto=อัตราส่วนพิกเซลของอุปกรณ์ถูกตั้งค่าเป็น %1$S โดยอัตโนมัติ
+
+# LOCALIZATION NOTE (responsive.customDeviceName): Default value in a form to
+# add a custom device based on an arbitrary size (no association to an existing
+# device).
+responsive.customDeviceName=อุปกรณ์ที่กำหนดเอง
+
+# LOCALIZATION NOTE (responsive.customDeviceNameFromBase): Default value in a
+# form to add a custom device based on the properties of another. %1$S is the
+# name of the device we're staring from, such as "Apple iPhone 6".
+responsive.customDeviceNameFromBase=%1$S (กำหนดเอง)
+
+# LOCALIZATION NOTE (responsive.addDevice2): Button text that reveals a form to
+# be used for adding custom devices.
+responsive.addDevice2=เพิ่มอุปกรณ์ที่กำหนดเอง…
+
+# LOCALIZATION NOTE (responsive.deviceAdderName): Label of form field for the
+# name of a new device.
+responsive.deviceAdderName=ชื่อ
+
+# LOCALIZATION NOTE (responsive.deviceAdderSize): Label of form field for the
+# size of a new device.
+responsive.deviceAdderSize=ขนาด
+
+# LOCALIZATION NOTE (responsive.deviceAdderPixelRatio2): Label of form field for
+# the device pixel ratio of a new device.
+responsive.deviceAdderPixelRatio2=อัตราส่วนพิกเซลของอุปกรณ์
+
+# LOCALIZATION NOTE (responsive.deviceAdderUserAgent2): Label of form field for
+# the user agent of a new device.
+responsive.deviceAdderUserAgent2=สตริงตัวแทนผู้ใช้
+
+# LOCALIZATION NOTE (responsive.deviceAdderTouch2): Label of form field for the
+# touch input support of a new device.
+responsive.deviceAdderTouch2=หน้าจอสัมผัส
+
+# LOCALIZATION NOTE (responsive.deviceAdderSave): Button text that submits a
+# form to add a new device.
+responsive.deviceAdderSave=บันทึก
+
+# LOCALIZATION NOTE (responsive.deviceAdderCancel): Button text that cancels a
+# form to add a new device.
+responsive.deviceAdderCancel=ยกเลิก
+
+# LOCALIZATION NOTE (responsive.deviceDetails): Tooltip that appears when
+# hovering on a device in the device modal. %1$S is the width of the device.
+# %2$S is the height of the device. %3$S is the device pixel ratio value of the
+# device. %4$S is the user agent of the device. %5$S is a boolean value
+# noting whether touch input is supported.
+responsive.deviceDetails=ขนาด: %1$S x %2$S\nDPR: %3$S\nUA: %4$S\nสัมผัส: %5$S
+
+# LOCALIZATION NOTE (responsive.deviceDetails.browserAndOS): Used to display the browser
+# and the OS in a tooltip that appears when hovering on a device in the device modal.
+# %1$S: browser
+# %2$S: OS
+responsive.deviceDetails.browserAndOS=%1$S บน %2$S
+
+# LOCALIZATION NOTE (responsive.deviceDetails.size): Used to display the pixel
+# size in a tooltip that appears when hovering on a device in the device modal.
+# %1$S: width
+# %2$S: height
+responsive.deviceDetails.size=ขนาด: %1$S x %2$S
+
+# LOCALIZATION NOTE (responsive.deviceDetails.DPR): Used to display the DPR in a tooltip
+# that appears when hovering on a device in the device modal.
+# %1$S: device pixel ratio
+responsive.deviceDetails.DPR=DPR: %1$S
+
+# LOCALIZATION NOTE (responsive.deviceDetails.UA): Used to display the UA in a tooltip
+# that appears when hovering on a device in the device modal.
+# %1$S: user agent
+responsive.deviceDetails.UA=UA: %1$S
+
+# LOCALIZATION NOTE (responsive.deviceDetails.touch): Used to display a boolean value
+# which is whether the touch input is supported or not in a tooltip that appears when
+# hovering on a device in the device modal.
+# %1$S: touch
+responsive.deviceDetails.touch=อุปกรณ์สัมผัส: %1$S
+
+# LOCALIZATION NOTE (responsive.devicePixelRatioOption): UI option in a menu to configure
+# the device pixel ratio. %1$S is the devicePixelRatio value of the device.
+responsive.devicePixelRatioOption=DPR: %1$S
+
+# LOCALIZATION NOTE (responsive.reloadConditions.touchSimulation): Label on checkbox used
+# to select whether to reload when touch simulation is toggled.
+responsive.reloadConditions.touchSimulation=โหลดใหม่เมื่อเปิด/ปิดการจำลองการสัมผัส
+
+# LOCALIZATION NOTE (responsive.reloadConditions.userAgent): Label on checkbox used
+# to select whether to reload when user agent is changed.
+responsive.reloadConditions.userAgent=โหลดใหม่เมื่อตัวแทนผู้ใช้ถูกเปลี่ยน
+
+# LOCALIZATION NOTE (responsive.reloadNotification.description2): Text in notification bar
+# shown on first open to clarify that some features need a reload to apply.
+responsive.reloadNotification.description2=การเปลี่ยนแปลงการจำลองอุปกรณ์จำเป็นต้องให้โหลดใหม่เพื่อให้นำไปใช้ได้อย่างเต็มรูปแบบ การโหลดใหม่อัตโนมัติถูกปิดใช้งานตามค่าเริ่มต้นเพื่อป้องกันการสูญเสียการเปลี่ยนแปลงใด ๆ ใน DevTools คุณสามารถเปิดใช้งานการโหลดใหม่ได้ผ่านเมนู การตั้งค่า
+
+# LOCALIZATION NOTE (responsive.leftAlignViewport): Label on checkbox used in the settings
+# menu.
+responsive.leftAlignViewport=จัดมุมมองพื้นที่ทำงานแบบชิดซ้าย
+
+# LOCALIZATION NOTE (responsive.customUserAgent): This is the placeholder for the user
+# agent input in the responsive design mode toolbar.
+responsive.customUserAgent=ตัวแทนผู้ใช้ที่กำหนดเอง
+
+responsive.showUserAgentInput=แสดงตัวแทนผู้ใช้
+
+# LOCALIZATION NOTE (responsive.deviceSettings): The header text for the device settings
+# view.
+responsive.deviceSettings=การตั้งค่าอุปกรณ์
+
+# LOCALIZATION NOTE (responsive.deviceNameAlreadyInUse): This is the text shown when adding a new
+# device with an already existing device name.
+responsive.deviceNameAlreadyInUse=มีการใช้ชื่ออุปกรณ์อยู่แล้ว
+
+# LOCALIZATION NOTE (responsive.deviceFormUpdate): Button text that updates a custom
+# device when the form is submitted.
+responsive.deviceFormUpdate=อัปเดต
diff --git a/l10n-th/devtools/client/shared.properties b/l10n-th/devtools/client/shared.properties
new file mode 100644
index 0000000000..9f7fce1cf5
--- /dev/null
+++ b/l10n-th/devtools/client/shared.properties
@@ -0,0 +1,26 @@
+# 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 (dimensions): This is used to display the dimensions
+# of a node or image, like 100×200.
+dimensions=%S\u00D7%S
+
+# LOCALIZATION NOTE (boxModelSize.accessibleLabel): This is used to read the
+# dimensions of a node by a screen reader. This helps communicate
+# the visual information in a more explicit form. Example:
+# Size: Width 100, height 200.
+boxModelSize.accessibleLabel=ขนาด: ความกว้าง %1$S, ความสูง %2$S
+
+# LOCALIZATION NOTE (boxModelInfo.accessibleLabel): This is used to read the
+# dimensions and position of a node by a screen reader. This helps communicate
+# the visual information in a more explicit form. Example:
+# Dimensions: Width 100, height 200, position static.
+boxModelInfo.accessibleLabel=มิติ: ความกว้าง %1$S, ความสูง %2$S, ตำแหน่ง %3$S
+
+# LOCALIZATION NOTE (boxModelEditable.accessibleLabel): The string spoken by
+# screen readers for each button in the box model view that opens that property
+# for editing. %1$S is the property displayed in the tooltip when hovering.
+# %2$S is the value that is visually displayed.
+# Example: margin-left: 0.
+boxModelEditable.accessibleLabel=%1$S: %2$S
diff --git a/l10n-th/devtools/client/sourceeditor.properties b/l10n-th/devtools/client/sourceeditor.properties
new file mode 100644
index 0000000000..b7a888c015
--- /dev/null
+++ b/l10n-th/devtools/client/sourceeditor.properties
@@ -0,0 +1,117 @@
+# 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 These strings are used inside the Source Editor component.
+# This component is used whenever source code is displayed for the purpose of
+# being edited, inside the Firefox developer tools - current examples are the
+# Scratchpad and the Style Editor tools.
+
+# LOCALIZATION NOTE These strings are used inside the Source Editor component.
+# This component is used whenever source code is displayed for the purpose of
+# being edited, inside the Firefox developer tools (like Style Editor).
+
+# LOCALIZATION NOTE The correct localization of this file might be to keep it
+# in English, or another language commonly spoken among web developers.
+# You want to make that choice consistent across the developer tools.
+# A good criteria is the language in which you'd find the best documentation
+# on web development on the web.
+
+# LOCALIZATION NOTE (findCmd.promptMessage): This is the message shown when
+# the user wants to search for a string in the code. You can
+# access this feature by pressing Ctrl-F on Windows/Linux or Cmd-F on Mac.
+findCmd.promptMessage=ค้นหา:
+
+# LOCALIZATION NOTE (gotoLineCmd.promptTitle): This is the dialog title used
+# when the user wants to jump to a specific line number in the code. You can
+# access this feature by pressing Ctrl-J on Windows/Linux or Cmd-J on Mac.
+gotoLineCmd.promptTitle=ไปยังบรรทัดที่…
+
+# LOCALIZATION NOTE (autocompletion.docsLink): This is the text shown on
+# the link inside of the documentation popup. If you type 'document' in Scratchpad
+# then press Shift+Space you can see the popup.
+autocompletion.docsLink=docs
+
+# LOCALIZATION NOTE (autocompletion.notFound): This is the text shown in
+# the documentation popup if Tern fails to find a type for the object.
+autocompletion.notFound=ไม่พบ
+
+# LOCALIZATION NOTE (jumpToLine.commandkey): This is the key to use in
+# conjunction with accel (Command on Mac or Ctrl on other platforms) to jump to
+# a specific line in the editor.
+jumpToLine.commandkey=J
+
+# LOCALIZATION NOTE (toggleComment.commandkey): This is the key to use in
+# conjunction with accel (Command on Mac or Ctrl on other platforms) to either
+# comment or uncomment selected lines in the editor.
+toggleComment.commandkey=/
+
+# LOCALIZATION NOTE (indentLess.commandkey): This is the key to use in
+# conjunction with accel (Command on Mac or Ctrl on other platforms) to reduce
+# indentation level in CodeMirror. However, its default value also used by
+# the Toolbox to switch between tools so we disable it.
+#
+# DO NOT translate this key without proper synchronization with toolbox.dtd.
+indentLess.commandkey=[
+
+# LOCALIZATION NOTE (indentMore.commandkey): This is the key to use in
+# conjunction with accel (Command on Mac or Ctrl on other platforms) to increase
+# indentation level in CodeMirror. However, its default value also used by
+# the Toolbox to switch between tools
+#
+# DO NOT translate this key without proper synchronization with toolbox.dtd.
+indentMore.commandkey=]
+
+# LOCALIZATION NOTE (moveLineUp.commandkey): This is the combination of keys
+# used to move the current line up.
+# Do not localize "Alt", "Up", or change the format of the string. These are key
+# identifiers, not messages displayed to the user.
+moveLineUp.commandkey=Alt-Up
+
+# LOCALIZATION NOTE (moveLineDown.commandkey): This is the combination of keys
+# used to move the current line up.
+# Do not localize "Alt", "Down", or change the format of the string. These are
+# key identifiers, not messages displayed to the user.
+moveLineDown.commandkey=Alt-Down
+
+# LOCALIZATION NOTE (autocompletion.commandkey): This is the key, used with
+# Ctrl, for code autocompletion.
+# Do not localize "Space", it's the key identifier, not a message displayed to
+# the user.
+autocompletion.commandkey=Space
+
+# LOCALIZATION NOTE (showInformation2.commandkey): This is the combination of
+# keys used to display more information, like type inference.
+# Do not localize "Shift", "Ctrl", "Space", or change the format of the string.
+# These are key identifiers, not messages displayed to the user.
+showInformation2.commandkey=Shift-Ctrl-Space
+
+# LOCALIZATION NOTE (find.key):
+# Key shortcut used to find the typed search
+# Do not localize "CmdOrCtrl", "F", or change the format of the string. These are
+# key identifiers, not messages displayed to the user.
+find.key=CmdOrCtrl+F
+
+# LOCALIZATION NOTE (replaceAll.key):
+# Key shortcut used to replace the content of the editor
+# Do not localize "Shift", "CmdOrCtrl", "F", or change the format of the string. These are
+# key identifiers, not messages displayed to the user.
+replaceAll.key=Shift+CmdOrCtrl+F
+
+# LOCALIZATION NOTE (replaceAllMac.key):
+# Key shortcut used to replace the content of the editor on Mac
+# Do not localize "Alt", "CmdOrCtrl", "F", or change the format of the string. These are
+# key identifiers, not messages displayed to the user.
+replaceAllMac.key=Alt+CmdOrCtrl+F
+
+# LOCALIZATION NOTE (findNext.key):
+# Key shortcut used to find again the typed search
+# Do not localize "CmdOrCtrl", "G", or change the format of the string. These are
+# key identifiers, not messages displayed to the user.
+findNext.key=CmdOrCtrl+G
+
+# LOCALIZATION NOTE (findPrev.key):
+# Key shortcut used to find the previous typed search
+# Do not localize "Shift", "CmdOrCtrl", "G", or change the format of the string. These are
+# key identifiers, not messages displayed to the user.
+findPrev.key=Shift+CmdOrCtrl+G
diff --git a/l10n-th/devtools/client/startup.properties b/l10n-th/devtools/client/startup.properties
new file mode 100644
index 0000000000..14c4fcd679
--- /dev/null
+++ b/l10n-th/devtools/client/startup.properties
@@ -0,0 +1,247 @@
+# 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 (optionsButton.tooltip): This is used as the tooltip
+# for the options panel tab.
+optionsButton.tooltip=ตัวเลือกกล่องเครื่องมือ
+
+# LOCALIZATION NOTE (options.label): This is used as the label of the tab in
+# the devtools window.
+options.label=ตัวเลือก
+
+# LOCALIZATION NOTE (options.panelLabel): This is used as the label for the
+# toolbox panel.
+options.panelLabel=แผงตัวเลือกกล่องเครื่องมือ
+
+# LOCALIZATION NOTE (options.darkTheme.label2)
+# Used as a label for dark theme
+options.darkTheme.label2=มืด
+
+# LOCALIZATION NOTE (options.lightTheme.label2)
+# Used as a label for light theme
+options.lightTheme.label2=สว่าง
+
+# LOCALIZATION NOTE (performance.label):
+# This string is displayed in the title of the tab when the profiler is
+# displayed inside the developer tools window and in the Developer Tools Menu.
+performance.label=ประสิทธิภาพ
+
+# LOCALIZATION NOTE (performance.panelLabel):
+# This is used as the label for the toolbox panel.
+performance.panelLabel=แผงประสิทธิภาพ
+
+# LOCALIZATION NOTE (performance.accesskey)
+# Used for the menuitem in the tool menu
+performance.accesskey=ป
+
+# LOCALIZATION NOTE (performance.tooltip):
+# This string is displayed in the tooltip of the tab when the profiler is
+# displayed inside the developer tools window.
+# Keyboard shortcut for Performance Tools will be shown inside brackets.
+performance.tooltip=ประสิทธิภาพ (%S)
+
+# LOCALIZATION NOTE (MenuWebconsole.label): the string displayed in the Tools
+# menu as a shortcut to open the devtools with the Web Console tab selected.
+MenuWebconsole.label=คอนโซลเว็บ
+
+# LOCALIZATION NOTE (ToolboxTabWebconsole.label): the string displayed as the
+# label of the tab in the devtools window.
+ToolboxTabWebconsole.label=คอนโซล
+
+# LOCALIZATION NOTE (ToolboxWebConsole.panelLabel): the string used as the
+# label for the toolbox panel.
+ToolboxWebConsole.panelLabel=แผงคอนโซล
+
+# LOCALIZATION NOTE (ToolboxWebconsole.tooltip2): the string displayed in the
+# tooltip of the tab when the Web Console is displayed inside the developer
+# tools window.
+# Keyboard shortcut for Console will be shown inside the brackets.
+ToolboxWebconsole.tooltip2=คอนโซลเว็บ (%S)
+
+webConsoleCmd.accesskey=ค
+
+# LOCALIZATION NOTE (ToolboxDebugger.label):
+# This string is displayed in the title of the tab when the debugger is
+# displayed inside the developer tools window and in the Developer Tools Menu.
+ToolboxDebugger.label=ตัวดีบั๊ก
+
+# LOCALIZATION NOTE (ToolboxDebugger.panelLabel):
+# This is used as the label for the toolbox panel.
+ToolboxDebugger.panelLabel=แผงตัวดีบั๊ก
+
+# LOCALIZATION NOTE (ToolboxDebugger.tooltip4):
+# This string is displayed in the tooltip of the tab when the debugger is
+# displayed inside the developer tools window.
+ToolboxDebugger.tooltip4=ตัวดีบั๊ก JavaScript (%S)
+
+# LOCALIZATION NOTE (debuggerMenu.accesskey)
+# Used for the menuitem in the tool menu
+debuggerMenu.accesskey=ต
+
+# LOCALIZATION NOTE (ToolboxStyleEditor.label):
+# This string is displayed in the title of the tab when the style editor is
+# displayed inside the developer tools window and in the Developer Tools Menu.
+ToolboxStyleEditor.label=ตัวแก้ไขสไตล์
+
+# LOCALIZATION NOTE (ToolboxStyleEditor.panelLabel):
+# This is used as the label for the toolbox panel.
+ToolboxStyleEditor.panelLabel=แผงตัวแก้ไขสไตล์
+
+# LOCALIZATION NOTE (ToolboxStyleEditor.tooltip3):
+# This string is displayed in the tooltip of the tab when the style editor is
+# displayed inside the developer tools window.
+# A keyboard shortcut for Stylesheet Editor will be shown inside the latter pair of brackets.
+ToolboxStyleEditor.tooltip3=ตัวแก้ไขสไตล์ชีต (CSS) (%S)
+
+# LOCALIZATION NOTE (open.accesskey): The access key used to open the style
+# editor.
+open.accesskey=ว
+
+# LOCALIZATION NOTE (inspector.*)
+# Used for the menuitem in the tool menu
+inspector.label=ตัวตรวจสอบ
+inspector.accesskey=ร
+
+# LOCALIZATION NOTE (inspector.panelLabel)
+# Labels applied to the panel and views within the panel in the toolbox
+inspector.panelLabel=แผงตัวตรวจสอบ
+
+# LOCALIZATION NOTE (inspector.tooltip2)
+# Keyboard shortcut for DOM and Style Inspector will be shown inside brackets.
+inspector.tooltip2=ตัวตรวจสอบ DOM และสไตล์ (%S)
+
+# LOCALIZATION NOTE (inspector.mac.tooltip)
+# This is the exact same string as inspector.tooltip2, except that we show it
+# on mac only, where we support toggling the inspector with either cmd+shift+C,
+# or cmd+opt+C
+inspector.mac.tooltip=ตัวตรวจสอบ DOM และสไตล์ (%1$S หรือ %2$S)
+
+# LOCALIZATION NOTE (netmonitor.label):
+# This string is displayed in the title of the tab when the Network Monitor is
+# displayed inside the developer tools window and in the Developer Tools Menu.
+netmonitor.label=เครือข่าย
+
+# LOCALIZATION NOTE (netmonitor.panelLabel):
+# This is used as the label for the toolbox panel.
+netmonitor.panelLabel=แผงเครือข่าย
+
+# LOCALIZATION NOTE (netmonitor.accesskey)
+# Used for the menuitem in the tool menu
+netmonitor.accesskey=อ
+
+# LOCALIZATION NOTE (netmonitor.tooltip2):
+# This string is displayed in the tooltip of the tab when the Network Monitor is
+# displayed inside the developer tools window.
+# Keyboard shortcut for Network Monitor will be shown inside the brackets.
+netmonitor.tooltip2=ตัวเฝ้าสังเกตเครือข่าย (%S)
+
+# LOCALIZATION NOTE (storage.accesskey): The access key used to open the storage
+# editor.
+storage.accesskey=ท
+
+# LOCALIZATION NOTE (storage.label):
+# This string is displayed as the label of the tab in the developer tools window
+storage.label=ที่เก็บข้อมูล
+
+# LOCALIZATION NOTE (storage.menuLabel):
+# This string is displayed in the Tools menu as a shortcut to open the devtools
+# with the Storage Inspector tab selected.
+storage.menuLabel=ตัวตรวจสอบที่เก็บข้อมูล
+
+# LOCALIZATION NOTE (storage.panelLabel):
+# This string is used as the aria-label for the iframe of the Storage Inspector
+# tool in developer tools toolbox.
+storage.panelLabel=แผงที่เก็บข้อมูล
+
+# LOCALIZATION NOTE (storage.tooltip3):
+# This string is displayed in the tooltip of the tab when the storage editor is
+# displayed inside the developer tools window.
+# A keyboard shortcut for Storage Inspector will be shown inside the brackets.
+storage.tooltip3=ตัวตรวจสอบที่เก็บข้อมูล (คุกกี้, ที่เก็บข้อมูลในเครื่อง, …) (%S)
+
+# LOCALIZATION NOTE (memory.label): This string is displayed in the title of the
+# tab when the memory tool is displayed inside the developer tools window and in
+# the Developer Tools Menu.
+memory.label=หน่วยความจำ
+
+# LOCALIZATION NOTE (memory.panelLabel): This is used as the label for the
+# toolbox panel.
+memory.panelLabel=แผงหน่วยความจำ
+
+# LOCALIZATION NOTE (memory.tooltip): This string is displayed in the tooltip of
+# the tab when the memory tool is displayed inside the developer tools window.
+memory.tooltip=หน่วยความจำ
+
+# LOCALIZATION NOTE (dom.label):
+# This string is displayed in the title of the tab when the DOM panel is
+# displayed inside the developer tools window and in the Developer Tools Menu.
+dom.label=DOM
+
+# LOCALIZATION NOTE (dom.panelLabel):
+# This is used as the label for the toolbox panel.
+dom.panelLabel=แผง DOM
+
+# LOCALIZATION NOTE (dom.accesskey)
+# Used for the menuitem in the tool menu
+dom.accesskey=D
+
+# LOCALIZATION NOTE (dom.tooltip):
+# This string is displayed in the tooltip of the tab when the DOM is
+# displayed inside the developer tools window.
+# Keyboard shortcut for DOM panel will be shown inside the brackets.
+dom.tooltip=DOM (%S)
+
+# LOCALIZATION NOTE (accessibility.label):
+# This string is displayed in the title of the tab when the Accessibility panel
+# is displayed inside the developer tools window and in the Developer Tools Menu.
+accessibility.label=การช่วยการเข้าถึง
+
+# LOCALIZATION NOTE (accessibility.panelLabel):
+# This is used as the label for the toolbox panel.
+accessibility.panelLabel=แผงการช่วยการเข้าถึง
+
+# LOCALIZATION NOTE (accessibility.accesskey)
+# Used for the menuitem in the tool menu
+accessibility.accesskey=ก
+
+# LOCALIZATION NOTE (accessibility.tooltip3):
+# This string is displayed in the tooltip of the tab when the Accessibility is
+# displayed inside the developer tools window.
+# Keyboard shortcut for Accessibility panel will be shown inside the brackets.
+accessibility.tooltip3=การช่วยการเข้าถึง (%S)
+
+# LOCALIZATION NOTE (application.label):
+# This string is displayed in the title of the tab when the Application panel
+# is displayed inside the developer tools window and in the Developer Tools Menu.
+application.label=แอปพลิเคชัน
+
+# LOCALIZATION NOTE (application.panelLabel):
+# This is used as the label for the toolbox panel.
+application.panelLabel=แผงแอปพลิเคชัน
+
+# LOCALIZATION NOTE (application.tooltip):
+# This string is displayed in the tooltip of the tab when the Application panel is
+# displayed inside the developer tools window.
+application.tooltip=แผงแอปพลิเคชัน
+
+# LOCALIZATION NOTE (toolbox.buttons.responsive):
+# This is the tooltip of the button in the toolbox toolbar that toggles
+# the Responsive mode.
+# Keyboard shortcut will be shown inside brackets.
+toolbox.buttons.responsive = โหมดการออกแบบเชิงตอบสนอง (%S)
+
+# LOCALIZATION NOTE (toolbox.buttons.screenshot):
+# This is the tooltip of the button in the toolbox toolbar that allows you to
+# take a screenshot of the entire page
+toolbox.buttons.screenshot = จับภาพหน้าจอทั้งหน้า
+
+# LOCALIZATION NOTE (toolbox.buttons.rulers):
+# This is the tooltip of the button in the toolbox toolbar that toggles the
+# rulers in the page
+toolbox.buttons.rulers = เปิด/ปิดไม้บรรทัดสำหรับหน้า
+
+# LOCALIZATION NOTE (toolbox.buttons.measure):
+# This is the tooltip of the button in the toolbox toolbar that toggles the
+# measuring tools
+toolbox.buttons.measure = วัดส่วนของหน้า
diff --git a/l10n-th/devtools/client/storage.ftl b/l10n-th/devtools/client/storage.ftl
new file mode 100644
index 0000000000..8d070a6da5
--- /dev/null
+++ b/l10n-th/devtools/client/storage.ftl
@@ -0,0 +1,109 @@
+# 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/.
+
+
+### These strings are used inside the Storage Inspector.
+
+# Key shortcut used to focus the filter box on top of the data view
+storage-filter-key = CmdOrCtrl+F
+# Hint shown when the selected storage host does not contain any data
+storage-table-empty-text = ไม่มีข้อมูลปรากฏสำหรับโฮสต์ที่เลือก
+# Hint shown when the cookies storage type is selected. Clicking the link will open
+# https://firefox-source-docs.mozilla.org/devtools-user/storage_inspector/cookies/
+storage-table-type-cookies-hint = ดูและแก้ไขคุกกี้โดยเลือกโฮสต์ <a data-l10n-name="learn-more-link">เรียนรู้เพิ่มเติม</a>
+# Hint shown when the local storage type is selected. Clicking the link will open
+# https://firefox-source-docs.mozilla.org/devtools-user/storage_inspector/local_storage_session_storage/
+storage-table-type-localstorage-hint = ดูและแก้ไขที่เก็บภายในเครื่องโดยเลือกโฮสต์ <a data-l10n-name="learn-more-link">เรียนรู้เพิ่มเติม</a>
+# Hint shown when the session storage type is selected. Clicking the link will open
+# https://firefox-source-docs.mozilla.org/devtools-user/storage_inspector/local_storage_session_storage/
+storage-table-type-sessionstorage-hint = ดูและแก้ไขที่เก็บวาระโดยเลือกโฮสต์ <a data-l10n-name="learn-more-link">เรียนรู้เพิ่มเติม</a>
+# Hint shown when the IndexedDB storage type is selected. Clicking the link will open
+# https://firefox-source-docs.mozilla.org/devtools-user/storage_inspector/indexeddb/
+storage-table-type-indexeddb-hint = ดูและลบรายการ IndexedDB โดยเลือกฐานข้อมูล <a data-l10n-name="learn-more-link">เรียนรู้เพิ่มเติม</a>
+# Hint shown when the cache storage type is selected. Clicking the link will open
+# https://firefox-source-docs.mozilla.org/devtools-user/storage_inspector/cache_storage/
+storage-table-type-cache-hint = ดูและลบรายการที่เก็บแคชโดยเลือกที่เก็บ <a data-l10n-name="learn-more-link">เรียนรู้เพิ่มเติม</a>
+# Hint shown when the extension storage type is selected. Clicking the link will open
+# https://firefox-source-docs.mozilla.org/devtools-user/storage_inspector/extension_storage/
+storage-table-type-extensionstorage-hint = ดูและแก้ไขที่เก็บส่วนขยายโดยเลือกโฮสต์ <a data-l10n-name="learn-more-link">เรียนรู้เพิ่มเติม</a>
+# Placeholder for the searchbox that allows you to filter the table items
+storage-search-box =
+ .placeholder = กรองรายการ
+# Placeholder text in the sidebar search box
+storage-variable-view-search-box =
+ .placeholder = กรองค่า
+# Add Item button title
+storage-add-button =
+ .title = เพิ่มรายการ
+# Refresh button title
+storage-refresh-button =
+ .title = เรียกรายการใหม่
+# Context menu action to delete all storage items
+storage-context-menu-delete-all =
+ .label = ลบทั้งหมด
+# Context menu action to delete all session cookies
+storage-context-menu-delete-all-session-cookies =
+ .label = ลบคุกกี้ในวาระทั้งหมด
+# Context menu action to copy a storage item
+storage-context-menu-copy =
+ .label = คัดลอก
+# Context menu action to delete storage item
+# Variables:
+# $itemName (String) - Name of the storage item that will be deleted
+storage-context-menu-delete =
+ .label = ลบ “{ $itemName }”
+# Context menu action to add an item
+storage-context-menu-add-item =
+ .label = เพิ่มรายการ
+# Context menu action to delete all storage items from a given host
+# Variables:
+# $host (String) - Host for which we want to delete the items
+storage-context-menu-delete-all-from =
+ .label = ลบทั้งหมดจาก “{ $host }”
+
+## Header names of the columns in the Storage Table for each type of storage available
+## through the Storage Tree to the side.
+
+storage-table-headers-cookies-name = ชื่อ
+storage-table-headers-cookies-value = ค่า
+storage-table-headers-cookies-expires = Expires / Max-Age
+storage-table-headers-cookies-size = ขนาด
+storage-table-headers-cookies-last-accessed = เข้าถึงล่าสุด
+storage-table-headers-cookies-creation-time = สร้างเมื่อ
+storage-table-headers-cache-status = สถานะ
+storage-table-headers-extension-storage-area = พื้นที่เก็บข้อมูล
+
+## Labels for Storage type groups present in the Storage Tree, like cookies, local storage etc.
+
+storage-tree-labels-cookies = คุกกี้
+storage-tree-labels-local-storage = ที่เก็บข้อมูลในเครื่อง
+storage-tree-labels-session-storage = ที่เก็บข้อมูลวาระ
+storage-tree-labels-indexed-db = Indexed DB
+storage-tree-labels-cache = ที่เก็บข้อมูลแคช
+storage-tree-labels-extension-storage = ที่เก็บข้อมูลส่วนขยาย
+
+##
+
+# Tooltip for the button that collapses the right panel in the
+# storage UI when the panel is closed.
+storage-expand-pane =
+ .title = ขยายบานหน้าต่าง
+# Tooltip for the button that collapses the right panel in the
+# storage UI when the panel is open.
+storage-collapse-pane =
+ .title = ยุบบานหน้าต่าง
+# String displayed in the expires column when the cookie is a Session Cookie
+storage-expires-session = วาระ
+# Heading displayed over the item value in the sidebar
+storage-data = ข้อมูล
+# Heading displayed over the item parsed value in the sidebar
+storage-parsed-value = ค่าที่แจงส่วน
+# Warning notification when IndexedDB database could not be deleted immediately.
+# Variables:
+# $dbName (String) - Name of the database
+storage-idb-delete-blocked = ฐานข้อมูล “{ $dbName }” จะถูกลบหลังจากการเชื่อมต่อทั้งหมดถูกปิด
+# Error notification when IndexedDB database could not be deleted.
+# Variables:
+# $dbName (String) - Name of the database
+storage-idb-delete-error = ไม่สามารถลบฐานข้อมูล “{ $dbName }”
diff --git a/l10n-th/devtools/client/styleeditor.ftl b/l10n-th/devtools/client/styleeditor.ftl
new file mode 100644
index 0000000000..0c2de2a0e7
--- /dev/null
+++ b/l10n-th/devtools/client/styleeditor.ftl
@@ -0,0 +1,52 @@
+# 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/.
+
+styleeditor-new-button =
+ .tooltiptext = สร้างและผนวกสไตล์ชีตใหม่ไปยังเอกสาร
+ .accesskey = ห
+styleeditor-import-button =
+ .tooltiptext = นำเข้าและผนวกสไตล์ชีตที่มีอยู่ไปยังเอกสาร
+ .accesskey = น
+styleeditor-filter-input =
+ .placeholder = กรองสไตล์ชีต
+styleeditor-visibility-toggle =
+ .tooltiptext = เปิด/ปิดการมองเห็นสไตล์ชีต
+ .accesskey = บ
+styleeditor-visibility-toggle-system =
+ .tooltiptext = ไม่สามารถปิดใช้งานสไตล์ชีตระบบได้
+styleeditor-save-button = บันทึก
+ .tooltiptext = บันทึกแผ่นลักษณะนี้เป็นไฟล์
+ .accesskey = บ
+styleeditor-options-button =
+ .tooltiptext = ตัวเลือกของตัวแก้ไขสไตล์
+styleeditor-at-rules = At-rules
+styleeditor-editor-textbox =
+ .data-placeholder = พิมพ์ CSS ที่นี่
+styleeditor-no-stylesheet = หน้านี้ไม่มีสไตล์ชีต
+styleeditor-no-stylesheet-tip = บางทีคุณอาจต้องการ <a data-l10n-name="append-new-stylesheet">ผนวกสไตล์ชีตใหม่</a>หรือไม่
+styleeditor-open-link-new-tab =
+ .label = เปิดลิงก์ในแท็บใหม่
+styleeditor-copy-url =
+ .label = คัดลอก URL
+styleeditor-find =
+ .label = ค้นหา
+ .accesskey = น
+styleeditor-find-again =
+ .label = ค้นหาอีกครั้ง
+ .accesskey = ห
+styleeditor-go-to-line =
+ .label = กระโดดไปบรรทัดที่…
+ .accesskey = ป
+# Label displayed when searching a term that is not found in any stylesheet path
+styleeditor-stylesheet-all-filtered = ไม่พบสไตล์ชีตที่ตรงกัน
+# This string is shown in the style sheets list
+# Variables:
+# $ruleCount (Integer) - The number of rules in the stylesheet.
+styleeditor-stylesheet-rule-count = { $ruleCount } กฎ
+# Title for the pretty print button in the editor footer.
+styleeditor-pretty-print-button =
+ .title = แสดงสไตล์ชีตแบบสวยงาม
+# Title for the pretty print button in the editor footer, when it's disabled
+styleeditor-pretty-print-button-disabled =
+ .title = สามารถแสดงแบบสวยงามได้เฉพาะไฟล์ CSS เท่านั้น
diff --git a/l10n-th/devtools/client/styleeditor.properties b/l10n-th/devtools/client/styleeditor.properties
new file mode 100644
index 0000000000..661cf6d260
--- /dev/null
+++ b/l10n-th/devtools/client/styleeditor.properties
@@ -0,0 +1,74 @@
+# 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 These strings are used inside the Style Editor.
+# LOCALIZATION NOTE The correct localization of this file might be to keep it
+# in English, or another language commonly spoken among web developers.
+# You want to make that choice consistent across the developer tools.
+# A good criteria is the language in which you'd find the best documentation
+# on web development on the web.
+
+# LOCALIZATION NOTE (inlineStyleSheet): This is the name used for an style sheet
+# that is declared inline in the <style> element. Shown in the stylesheets list.
+# the argument is the index (order) of the containing <style> element in the
+# document.
+inlineStyleSheet=<สไตล์ชีตแบบอินไลน์ #%S>
+
+# LOCALIZATION NOTE (newStyleSheet): This is the default name for a new
+# user-created style sheet.
+newStyleSheet=สไตล์ชีตใหม่ #%S
+
+# LOCALIZATION NOTE (ruleCount.label): Semicolon-separated list of plural forms.
+# See: http://developer.mozilla.org/en/docs/Localization_and_Plurals
+# This is shown in the style sheets list.
+# #1 rule.
+# example: 111 rules.
+ruleCount.label=#1 กฎ
+
+# LOCALIZATION NOTE (error-load): This is shown when loading fails.
+error-load=ไม่สามารถโหลดสไตล์ชีต
+
+# LOCALIZATION NOTE (error-save): This is shown when saving fails.
+error-save=ไม่สามารถบันทึกสไตล์ชีต
+
+# LOCALIZATION NOTE (importStyleSheet.title): This is the file picker title,
+# when you import a style sheet into the Style Editor.
+importStyleSheet.title=นำเข้าสไตล์ชีต
+
+# LOCALIZATION NOTE (importStyleSheet.filter): This is the *.css filter title
+importStyleSheet.filter=ไฟล์ CSS
+
+# LOCALIZATION NOTE (saveStyleSheet.title): This is the file picker title,
+# when you save a style sheet from the Style Editor.
+saveStyleSheet.title=บันทึกสไตล์ชีต
+
+# LOCALIZATION NOTE (saveStyleSheet.filter): This is the *.css filter title
+saveStyleSheet.filter=ไฟล์ CSS
+
+# LOCALIZATION NOTE (saveStyleSheet.commandkey): This the key to use in
+# conjunction with accel (Command on Mac or Ctrl on other platforms) to Save
+saveStyleSheet.commandkey=S
+
+# LOCALIZATION NOTE (focusFilterInput.commandkey): This is the key to use in
+# conjunction with accel (Command on Mac or Ctrl on other platforms) to focus the
+# filter input. Don't use "F" as it's used by the CodeMirror editor to perform an
+# in-file search; if possible, keep it the same as sources.search.key2.
+focusFilterInput.commandkey=P
+
+# LOCALIZATION NOTE (showOriginalSources.label): This is the label on the context
+# menu item to toggle showing original sources in the editor.
+showOriginalSources.label=แสดงแหล่งต้นฉบับ
+
+# LOCALIZATION NOTE (showOriginalSources.accesskey): This is the access key for
+# the menu item to toggle showing original sources in the editor.
+showOriginalSources.accesskey=ส
+
+# LOCALIZATION NOTE (showAtRulesSidebar.label): This is the label on the context
+# menu item to toggle showing at-rules shortcuts in a sidebar.
+# "@media" and "@supports" should not be translated as they are CSS rule identifiers.
+showAtRulesSidebar.label=แสดงแถบด้านข้าง At-rules (@media, @supports, …)
+
+# LOCALIZATION NOTE (showAtRulesSidebar.accesskey): This is the access key for
+# the menu item to toggle showing the at-rules sidebar.
+showAtRulesSidebar.accesskey=แ
diff --git a/l10n-th/devtools/client/toolbox-options.ftl b/l10n-th/devtools/client/toolbox-options.ftl
new file mode 100644
index 0000000000..88051086c9
--- /dev/null
+++ b/l10n-th/devtools/client/toolbox-options.ftl
@@ -0,0 +1,133 @@
+# 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 for Developer Tools options
+
+
+## Default Developer Tools section
+
+# The heading
+options-select-default-tools-label = เครื่องมือนักพัฒนาเริ่มต้น
+# The label for the explanation of the * marker on a tool which is currently not supported
+# for the target of the toolbox.
+options-tool-not-supported-label = * ไม่รองรับในชุดเครื่องมือปัจจุบัน
+# The label for the heading of group of checkboxes corresponding to the developer tools
+# added by add-ons. This heading is hidden when there is no developer tool installed by add-ons.
+options-select-additional-tools-label = เครื่องมือนักพัฒนาที่ติดตั้งผ่านส่วนเสริม
+# The label for the heading of group of checkboxes corresponding to the default developer
+# tool buttons.
+options-select-enabled-toolbox-buttons-label = ปุ่มกล่องเครื่องมือที่มี
+# The label for the heading of the radiobox corresponding to the theme
+options-select-dev-tools-theme-label = ชุดรูปแบบ
+
+## Inspector section
+
+# The heading
+options-context-inspector = ตัวตรวจสอบ
+# The label for the checkbox option to show user agent styles
+options-show-user-agent-styles-label = แสดงสไตล์ของเบราว์เซอร์
+options-show-user-agent-styles-tooltip =
+ .title = การเปิดตัวเลือกนี้จะแสดงสไตล์เริ่มต้นที่เบราว์เซอร์ได้ทำการโหลดขึ้นมา
+# The label for the checkbox option to enable collapse attributes
+options-collapse-attrs-label = ตัดทอนแอตทริบิวต์ DOM
+options-collapse-attrs-tooltip =
+ .title = ตัดทอนแอตทริบิวต์แบบยาวในตัวตรวจสอบ
+# The label for the checkbox option to enable the "drag to update" feature
+options-inspector-draggable-properties-label = คลิกและลากเพื่อแก้ไขค่าขนาด
+options-inspector-draggable-properties-tooltip =
+ .title = คลิกและลากเพื่อแก้ไขค่าขนาดในมุมมองกฎของตัวตรวจสอบ
+# The label for the checkbox option to enable simplified highlighting on page elements
+# within the inspector for users who enabled prefers-reduced-motion = reduce
+options-inspector-simplified-highlighters-label = ใช้ตัวเน้นสีแบบง่ายขึ้นด้วย prefers-reduced-motion
+options-inspector-simplified-highlighters-tooltip =
+ .title = เปิดใช้งานตัวเน้นสีแบบง่ายเมื่อ prefers-reduced-motion เปิดใช้งาน วาดเส้นแทนสี่เหลี่ยมเติมสีรอบๆ อิลิเมนต์ที่เน้นสีไว้เพื่อหลีกเลี่ยงเอฟเฟกต์กะพริบ
+
+## "Default Color Unit" options for the Inspector
+
+options-default-color-unit-label = หน่วยสีเริ่มต้น
+options-default-color-unit-authored = ตามหน่วยเดิม
+options-default-color-unit-hex = Hex
+options-default-color-unit-hsl = HSL(A)
+options-default-color-unit-rgb = RGB(A)
+options-default-color-unit-hwb = HWB
+options-default-color-unit-name = ชื่อสี
+
+## Style Editor section
+
+# The heading
+options-styleeditor-label = ตัวแก้ไขสไตล์
+# The label for the checkbox that toggles autocompletion of css in the Style Editor
+options-stylesheet-autocompletion-label = เติมเต็ม CSS อัตโนมัติ
+options-stylesheet-autocompletion-tooltip =
+ .title = เติมเต็ม CSS อัตโนมัติ คุณสมบัติ ค่า และตัวเลือกในตัวแก้ไขสไตล์ตามที่คุณพิมพ์
+
+## Screenshot section
+
+# The heading
+options-screenshot-label = ลักษณะการทำงานของภาพหน้าจอ
+# Label for the checkbox that toggles screenshot to clipboard feature
+options-screenshot-clipboard-only-label = จับภาพหน้าจอไปยังคลิปบอร์ดเท่านั้น
+options-screenshot-clipboard-tooltip2 =
+ .title = บันทึกภาพหน้าจอโดยตรงไปยังคลิปบอร์ด
+# Label for the checkbox that toggles the camera shutter audio for screenshot tool
+options-screenshot-audio-label = เล่นเสียงชัตเตอร์กล้อง
+options-screenshot-audio-tooltip =
+ .title = เปิดใช้งานเสียงกล้องเมื่อถ่ายภาพหน้าจอ
+
+## Editor section
+
+# The heading
+options-sourceeditor-label = การกำหนดลักษณะตัวแก้ไข
+options-sourceeditor-detectindentation-tooltip =
+ .title = กะประมาณการเยื้องขึ้นอยู่กับเนื้อหาต้นฉบับ
+options-sourceeditor-detectindentation-label = ตรวจสอบการเยื้อง
+options-sourceeditor-autoclosebrackets-tooltip =
+ .title = ใส่วงเล็บปิดอัตโนมัติ
+options-sourceeditor-autoclosebrackets-label = ปิดวงเล็บอัตโนมัติ
+options-sourceeditor-expandtab-tooltip =
+ .title = ใช้ช่องว่างแทนอักขระแท็บ
+options-sourceeditor-expandtab-label = เยื้องโดยใช้ช่องว่าง
+options-sourceeditor-tabsize-label = ขนาดแท็บ
+options-sourceeditor-keybinding-label = ปุ่มลัด
+options-sourceeditor-keybinding-default-label = ค่าเริ่มต้น
+
+## Advanced section
+
+# The heading (this item is also used in perftools.ftl)
+options-context-advanced-settings = การตั้งค่าขั้นสูง
+# The label for the checkbox that toggles the HTTP cache on or off
+options-disable-http-cache-label = ปิดใช้งานแคช HTTP (เมื่อกล่องเครื่องมือเปิดอยู่)
+options-disable-http-cache-tooltip =
+ .title = การเปิดตัวเลือกนี้จะเป็นการปิดการใช้งานแคช HTTP สำหรับแท็บทั้งหมดที่เปิดกล่องเครื่องมือ Service Worker จะไม่ได้รับผลกระทบจากตัวเลือกนี้
+# The label for checkbox that toggles JavaScript on or off
+options-disable-javascript-label = ปิดใช้งาน JavaScript *
+options-disable-javascript-tooltip =
+ .title = การเปิดใช้ตัวเลือกนี้จะปิดใช้งาน JavaScript ในแท็บปัจจุบัน ถ้าแท็บนี้ถูกปิดไป ค่าที่ตั้งนี้จะถูกล้าง
+# The label for checkbox that toggles chrome debugging, i.e. the devtools.chrome.enabled preference
+options-enable-chrome-label = เปิดใช้งานเบราว์เซอร์ chrome และกล่องเครื่องมือการดีบั๊กส่วนเสริม
+options-enable-chrome-tooltip =
+ .title = การเปิดตัวเลือกนี้จะช่วยให้คุณสามารถใช้เครื่องมือนักพัฒนาในบริบทของเบราว์เซอร์ได้ (ผ่าน เครื่องมือ > นักพัฒนาเว็บ > กล่องเครื่องมือเบราว์เซอร์) และดีบั๊กส่วนเสริมจากตัวจัดการส่วนเสริม
+# The label for checkbox that toggles remote debugging, i.e. the devtools.debugger.remote-enabled preference
+options-enable-remote-label = เปิดใช้งานการดีบั๊กระยะไกล
+options-enable-remote-tooltip2 =
+ .title = การเปิดตัวเลือกนี้จะอนุญาตให้สามารถดีบั๊กอินสแตนซ์เบราว์เซอร์นี้จากระยะไกลได้
+# The label for checkbox that enables F12 as a shortcut to open DevTools
+options-enable-f12-label = ใช้แป้น F12 เพื่อเปิดหรือปิด DevTools
+options-enable-f12-tooltip =
+ .title = การเปิดใช้ตัวเลือกนี้จะผูกแป้น F12 เพื่อใช้เปิดหรือปิดกล่องเครื่องมือของ DevTools
+# The label for checkbox that toggles custom formatters for objects
+options-enable-custom-formatters-label = เปิดใช้งานตัวจัดรูปแบบที่กำหนดเอง
+options-enable-custom-formatters-tooltip =
+ .title = การเปิดตัวเลือกนี้จะทำให้ไซต์ต่าง ๆ สามารถกำหนดตัวจัดรูปแบบที่กำหนดเองสำหรับวัตถุ DOM ได้
+# The label for checkbox that toggles the service workers testing over HTTP on or off.
+options-enable-service-workers-http-label = เปิดใช้งาน Service Workers over HTTP (เมื่อกล่องเครื่องมือเปิดอยู่)
+options-enable-service-workers-http-tooltip =
+ .title = การเปิดตัวเลือกนี้จะเป็นการเปิดใช้งาน Service Worker ผ่าน HTTP สำหรับแท็บทั้งหมดที่เปิดกล่องเครื่องมือ
+# The label for the checkbox that toggles source maps in all tools.
+options-source-maps-label = เปิดใช้งานการแมปต้นฉบับ
+options-source-maps-tooltip =
+ .title = หากคุณเปิดใช้งานตัวเลือกนี้ ต้นฉบับจะถูกแมปในเครื่องมือ
+# The message shown for settings that trigger page reload
+options-context-triggers-page-refresh = *เรียกหน้าเว็บใหม่เฉพาะวาระปัจจุบันเท่านั้น
diff --git a/l10n-th/devtools/client/toolbox.ftl b/l10n-th/devtools/client/toolbox.ftl
new file mode 100644
index 0000000000..bd806e311f
--- /dev/null
+++ b/l10n-th/devtools/client/toolbox.ftl
@@ -0,0 +1,55 @@
+# 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/.
+
+
+### These messages are used in the DevTools toolbox.
+
+
+## These labels are shown in the "..." menu in the toolbox, and represent different
+## commands such as the docking of DevTools, toggling features, and viewing some
+## external links. Some of the commands have the keyboard shortcut shown next to
+## the label.
+
+toolbox-meatball-menu-dock-bottom-label = วางบนแท่นด้านล่าง
+toolbox-meatball-menu-dock-left-label = วางบนแท่นด้านซ้าย
+toolbox-meatball-menu-dock-right-label = วางบนแท่นด้านขวา
+toolbox-meatball-menu-dock-separate-window-label = แยกหน้าต่าง
+
+toolbox-meatball-menu-splitconsole-label = แสดงคอนโซลแยก
+toolbox-meatball-menu-hideconsole-label = ซ่อนคอนโซลแยก
+
+toolbox-meatball-menu-settings-label = การตั้งค่า
+toolbox-meatball-menu-documentation-label = เอกสารประกอบ…
+toolbox-meatball-menu-community-label = ชุมชน…
+
+# This menu item is only available in the browser toolbox. It forces the popups/panels
+# to stay visible on blur, which is primarily useful for addon developers and Firefox
+# contributors.
+toolbox-meatball-menu-noautohide-label = ปิดใช้งานการซ่อนป๊อปอัปอัตโนมัติ
+
+toolbox-meatball-menu-pseudo-locale-accented = เปิดใช้งานรูปแบบภาษา “accented”
+toolbox-meatball-menu-pseudo-locale-bidi = เปิดใช้งานรูปแบบภาษา “bidi”
+
+##
+
+
+## These labels are shown in the top-toolbar in the Browser Toolbox and Browser Console
+
+toolbox-mode-browser-toolbox-label = โหมดกล่องเครื่องมือเบราว์เซอร์
+toolbox-mode-browser-console-label = โหมดคอนโซลเบราว์เซอร์
+
+toolbox-mode-everything-label = มัลติโปรเซส
+toolbox-mode-everything-sub-label = (ช้ากว่า)
+toolbox-mode-everything-container =
+ .title = ดีบั๊กทุกอย่างในโปรเซสทั้งหมด
+
+toolbox-mode-parent-process-label = โปรเซสแม่เท่านั้น
+toolbox-mode-parent-process-sub-label = (เร็ว)
+toolbox-mode-parent-process-container =
+ .title = โฟกัสเฉพาะทรัพยากรจากโปรเซสหลักเท่านั้น
+
+toolbox-always-on-top-enabled2 = ปิดใช้งานอยู่ด้านบนเสมอ
+ .title = การดำเนินการนี้จะเริ่มการทำงานของเครื่องมือนักพัฒนาใหม่
+toolbox-always-on-top-disabled2 = เปิดใช้งานอยู่ด้านบนเสมอ
+ .title = การดำเนินการนี้จะเริ่มการทำงานของเครื่องมือนักพัฒนาใหม่
diff --git a/l10n-th/devtools/client/toolbox.properties b/l10n-th/devtools/client/toolbox.properties
new file mode 100644
index 0000000000..56cce82de5
--- /dev/null
+++ b/l10n-th/devtools/client/toolbox.properties
@@ -0,0 +1,266 @@
+# 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 (toolbox.titleTemplate1): This is the template
+# used to format the title of the toolbox.
+# The URL of the page being targeted: %1$S.
+toolbox.titleTemplate1=เครื่องมือนักพัฒนา - %1$S
+
+# LOCALIZATION NOTE (toolbox.titleTemplate2): This is the template
+# used to format the title of the toolbox.
+# The page title or other name for the thing being targeted: %1$S
+# The URL of the page being targeted: %2$S.
+toolbox.titleTemplate2=เครื่องมือนักพัฒนา - %1$S - %2$S
+
+# LOCALIZATION NOTE (toolbox.multiProcessBrowserToolboxTitle): Title used for
+# the Browser Toolbox when the pref `devtools.browsertoolbox.scope` is set to "everything".
+# This Browser Toolbox allows to debug the parent process as well as the content
+# processes in the same toolbox.
+toolbox.multiProcessBrowserToolboxTitle=กล่องเครื่องมือเบราว์เซอร์แบบมัลติโปรเซส
+
+# LOCALIZATION NOTE (toolbox.parentProcessBrowserToolboxTitle): Title used for
+# the Browser Toolbox when the pref `devtools.browsertoolbox.scope` is set to "parent-process".
+# This Browser Toolbox allows to debug only the parent process resources.
+toolbox.parentProcessBrowserToolboxTitle=กล่องเครื่องมือเบราว์เซอร์สำหรับโปรเซสหลัก
+
+# LOCALIZATION NOTE (toolbox.defaultTitle): This is used as the tool
+# name when no tool is selected.
+toolbox.defaultTitle=เครื่องมือนักพัฒนา
+
+# LOCALIZATION NOTE (toolbox.label): This is used as the label for the
+# toolbox as a whole
+toolbox.label=เครื่องมือนักพัฒนา
+
+# LOCALIZATION NOTE (options.autoTheme.label)
+# Used as a label for auto theme
+options.autoTheme.label=อัตโนมัติ
+
+# LOCALIZATION NOTE (options.toolNotSupportedMarker): This is the template
+# used to add a * marker to the label for the Options Panel tool checkbox for the
+# tool which is not supported for the current toolbox target.
+# The name of the tool: %1$S.
+options.toolNotSupportedMarker=%1$S *
+
+# LOCALIZATION NOTE (toolbox.pickButton.tooltip)
+# This is the tooltip of the element picker button in the toolbox toolbar.
+# %S is the keyboard shortcut that toggles the element picker.
+toolbox.elementPicker.tooltip=เลือกอิลิเมนต์จากหน้า (%S)
+
+# LOCALIZATION NOTE (toolbox.pickButton.mac.tooltip)
+# Like toolbox.pickButton.tooltip, but for macOS there are two possible keyboard
+# shortcuts: Cmd+Shift+C or Cmd+Opt+C
+toolbox.elementPicker.mac.tooltip=เลือกอิลิเมนต์จากหน้า (%1$S หรือ %2$S)
+
+# LOCALIZATION NOTE (toolbox.androidElementPicker.tooltip)
+# This is the tooltip of the element picker button in the about:devtools-toolbox toolbox toolbar
+# when debugging an Android device
+# %S is the keyboard shortcut that toggles the element picker.
+toolbox.androidElementPicker.tooltip=เลือกอิลิเมนต์จากโทรศัพท์ Android (%S)
+
+# LOCALIZATION NOTE (toolbox.androidElementPicker.mac.tooltip)
+# Like toolbox.androidElementPicker.tooltip, but for macOS as there are two possible keyboard
+# shortcuts (Cmd+Shift+C or Cmd+Opt+C)
+# %1$S and %2$S are the keyboard shortcuts that toggle the element picker.
+toolbox.androidElementPicker.mac.tooltip=เลือกอิลิเมนต์จากโทรศัพท์ Android (%1$S หรือ %2$S)
+
+# LOCALIZATION NOTE (toolbox.elementPicker.key)
+# Key shortcut used to toggle the element picker.
+toolbox.elementPicker.key=CmdOrCtrl+Shift+C
+
+# LOCALIZATION NOTE (toolbox.elementPicker.mac.key)
+# Key shortcut used to toggle the element picker for macOS.
+toolbox.elementPicker.mac.key=Cmd+Opt+C
+
+# LOCALIZATION NOTE (toolbox.viewCssSourceInStyleEditor.label)
+# Used as a message in either tooltips or contextual menu items to open the
+# corresponding URL as a css file in the Style-Editor tool.
+# DEV NOTE: Mostly used wherever toolbox.viewSourceInStyleEditorByXX is used.
+toolbox.viewCssSourceInStyleEditor.label=เปิดไฟล์ในตัวแก้ไขสไตล์
+
+# LOCALIZATION NOTE (toolbox.viewJsSourceInDebugger.label)
+# Used as a message in either tooltips or contextual menu items to open the
+# corresponding URL as a js file in the Debugger tool.
+# DEV NOTE: Mostly used wherever toolbox.viewSourceInDebugger is used.
+toolbox.viewJsSourceInDebugger.label=เปิดไฟล์ในตัวดีบั๊ก
+
+toolbox.resumeOrderWarning=หน้าไม่ทำงานต่อหลังจากแนบตัวดีบั๊กแล้ว โปรดปิดแล้วเปิดกล่องเครื่องมือใหม่เพื่อแก้ไขปัญหานี้
+
+# LOCALIZATION NOTE (toolbox.help.key)
+# Key shortcut used to open the options panel
+toolbox.help.key=F1
+
+# LOCALIZATION NOTE (toolbox.nextTool.key)
+# Key shortcut used to select the next tool
+toolbox.nextTool.key=CmdOrCtrl+]
+
+# LOCALIZATION NOTE (toolbox.previousTool.key)
+# Key shortcut used to select the previous tool
+toolbox.previousTool.key=CmdOrCtrl+[
+
+# LOCALIZATION NOTE (toolbox.zoom*.key)
+# Key shortcuts used to zomm in/out or reset the toolbox
+# Should match full-zoom-*-shortcut values from browserSets.ftl
+toolbox.zoomIn.key=CmdOrCtrl+Plus
+toolbox.zoomIn2.key=CmdOrCtrl+=
+
+toolbox.zoomOut.key=CmdOrCtrl+-
+toolbox.zoomOut2.key=
+
+toolbox.zoomReset.key=CmdOrCtrl+0
+toolbox.zoomReset2.key=
+
+# LOCALIZATION NOTE (toolbox.reload*.key)
+# Key shortcuts used to reload the page
+toolbox.reload.key=CmdOrCtrl+R
+toolbox.reload2.key=F5
+
+# LOCALIZATION NOTE (toolbox.forceReload*.key)
+# Key shortcuts used to force reload of the page by bypassing caches
+toolbox.forceReload.key=CmdOrCtrl+Shift+R
+toolbox.forceReload2.key=CmdOrCtrl+F5
+
+# LOCALIZATION NOTE (toolbox.toggleHost.key)
+# Key shortcut used to move the toolbox in bottom or side of the browser window
+toolbox.toggleHost.key=CmdOrCtrl+Shift+D
+
+# LOCALIZATION NOTE (toolbox.closeToolbox.key) Key shortcut used to close the toolbox
+toolbox.closeToolbox.key=CmdOrCtrl+W
+
+# LOCALIZATION NOTE (toolbox.toggleToolbox.key) Key shortcut used to toggle the toolbox
+toolbox.toggleToolbox.key=CmdOrCtrl+Shift+I
+
+# LOCALIZATION NOTE (toolbox.toggleToolboxOSX.key) Key shortcut used to toggle the toolbox
+toolbox.toggleToolboxOSX.key=CmdOrCtrl+Alt+I
+
+# LOCALIZATION NOTE (toolbox.toggleToolboxF12.key) Key shortcut used to toggle the toolbox
+toolbox.toggleToolboxF12.key=F12
+
+# LOCALIZATION NOTE (toolbox.frames.tooltip): This is the label for
+# the iframes menu list that appears only when the document has some.
+# It allows you to switch the context of the whole toolbox.
+toolbox.frames.tooltip=เลือก iframe เป็นเอกสารเป้าหมายในปัจจุบัน
+
+# LOCALIZATION NOTE (toolbox.frames.disabled.tooltip): This is the title
+# displayed as a tooltip of the iframes menu button, when disabled. The button
+# is normally hidden when no frames are available. But if the user is on the
+# DevTools Options panel, the button is always shown for discoverability.
+toolbox.frames.disabled.tooltip=ปุ่มนี้พร้อมใช้งานบนหน้าที่มีหลาย iframe เท่านั้น
+
+# LOCALIZATION NOTE (toolbox.showFrames.key)
+# Key shortcut used to show frames menu when 'frames' button is focused
+toolbox.showFrames.key=Alt+Down
+
+# LOCALIZATION NOTE (toolbox.meatballMenu.button.tooltip): This is the tooltip
+# for the "..." button on the developer tools toolbox.
+toolbox.meatballMenu.button.tooltip=ปรับแต่งเครื่องมือนักพัฒนาและรับความช่วยเหลือ
+
+# LOCALIZATION NOTE (toolbox.closebutton.tooltip): This is the tooltip for
+# the close button the developer tools toolbox.
+toolbox.closebutton.tooltip=ปิดเครื่องมือนักพัฒนา
+
+# LOCALIZATION NOTE (toolbox.errorCountButton.tooltip): This is the tooltip for
+# the error count button displayed in the developer tools toolbox.
+toolbox.errorCountButton.tooltip=แสดงคอนโซลแยก
+
+# LOCALIZATION NOTE (toolbox.errorCountButton.description): This is the description that
+# will be used for the error count button in the devTools settings panel.
+toolbox.errorCountButton.description=แสดงจำนวนข้อผิดพลาดบนหน้า
+
+# LOCALIZATION NOTE (toolbox.sourceMapFailure): This is shown in the web console
+# when there is a failure to fetch or parse a source map.
+# The text of the error: %1$S
+# The URL that caused DevTools to try to fetch a source map: %2$S
+# The URL of the source map itself: %3$S
+toolbox.sourceMapFailure=ข้อผิดพลาดการแมปต้นฉบับ: %1$S\nURL ทรัพยากร: %2$S\nURL การแมปต้นฉบับ: %3$S
+
+# LOCALIZATION NOTE (toolbox.sourceMapSourceFailure): This is shown in
+# the web console when there is a failure to fetch or parse an
+# original source that was mentioned in a source map.
+# The text of the error: %1$S
+# The URL of the source: %2$S
+toolbox.sourceMapSourceFailure=เกิดข้อผิดพลาดขณะดึงข้อมูลต้นฉบับ: %1$S\nURL ต้นฉบับ: %2$S
+
+# LOCALIZATION NOTE (toolbox.debugTargetInfo.runtimeLabel): This is displayed as a toolbox
+# header in about:devtools-toolbox. about:devtools-toolbox is used for instance when
+# inspecting tabs in about:debugging.
+# e.g. Mozilla Fennec (65.0a1)
+# The name of runtime: %1$S
+# The version of runtime: %2$S
+toolbox.debugTargetInfo.runtimeLabel=%1$S (%2$S)
+
+# LOCALIZATION NOTE (toolbox.debugTargetInfo.runtimeLabel.thisRuntime): this is displayed
+# as a toolbox header in about:devtools-toolbox, when inspecting the current Firefox runtime
+# (for instance, when inspecting one of its tabs in about:debugging)
+# e.g. This Firefox (65.0a1)
+# The name of the current runtime/application (brandShorterName): %1$S
+# The version of runtime: %2$S
+toolbox.debugTargetInfo.runtimeLabel.thisRuntime=%1$S นี้ (%2$S)
+
+# LOCALIZATION NOTE (toolbox.debugTargetInfo.tabTitleRemote):
+# Used as the tab title for about:devtools-toolbox when connected to a remote target.
+# The connection type (see toolbox.debugTargetInfo.connection.*): %1$S
+# The target type (see toolbox.debugTargetInfo.targetType.*): %2$S
+# The target name (retrieved from DevTools, eg the extension's name): %3$S
+toolbox.debugTargetInfo.tabTitleRemote=กล่องเครื่องมือ (%1$S) - %2$S / %3$S
+
+# LOCALIZATION NOTE (toolbox.debugTargetInfo.tabTitleLocal):
+# Used as the tab title for about:devtools-toolbox when connected to This Firefox.
+# The target type (see toolbox.debugTargetInfo.targetType.*): %1$S
+# The target name (retrieved from DevTools, eg the extension's name): %2$S
+toolbox.debugTargetInfo.tabTitleLocal=กล่องเครื่องมือ - %1$S / %2$S
+
+# LOCALIZATION NOTE (toolbox.debugTargetInfo.tabTitleError):
+# Used as the tab title for about:devtools-toolbox when it failed to connect to the
+# target.
+toolbox.debugTargetInfo.tabTitleError=กล่องเครื่องมือ - เกิดข้อผิดพลาด
+
+# LOCALIZATION NOTE (toolbox.debugTargetInfo.connection.*): This is displayed in the
+# toolbox header in about:devtools-toolbox, to indicate how the connection to the
+# runtime being inspected was made.
+toolbox.debugTargetInfo.connection.usb=USB
+toolbox.debugTargetInfo.connection.network=เครือข่าย
+
+# LOCALIZATION NOTE (toolbox.debugTargetInfo.reload):
+# Used as the reload button tooltip
+toolbox.debugTargetInfo.reload=โหลดใหม่
+
+# LOCALIZATION NOTE (toolbox.debugTargetInfo.forward):
+# Used as the navigation's "forward" button tooltip
+toolbox.debugTargetInfo.forward=เดินหน้า
+
+# LOCALIZATION NOTE (toolbox.debugTargetInfo.back):
+# Used as the navigation's "back" button tooltip
+toolbox.debugTargetInfo.back=ย้อนกลับ
+
+# LOCALIZATION NOTE (toolbox.debugTargetInfo.targetType.*): This is displayed as the
+# alt attribute for an icon in the toolbox header in about:devtools-toolbox,
+# to indicate what is the type of the debug target being inspected.
+toolbox.debugTargetInfo.targetType.extension=ส่วนขยาย
+toolbox.debugTargetInfo.targetType.process=โปรเซส
+toolbox.debugTargetInfo.targetType.tab=แท็บ
+toolbox.debugTargetInfo.targetType.worker=ตัวทำงาน
+
+# LOCALIZATION NOTE (browserToolbox.statusMessage): This is the label
+# shown next to status details when the Browser Toolbox fails to connect or
+# appears to be taking a while to do so.
+browserToolbox.statusMessage=สถานะการเชื่อมต่อของกล่องเครื่องมือเบราว์เซอร์:
+
+# LOCALIZATION NOTE (toolbox.debugTargetErrorPage.title): This is the title
+# for the Error view shown by the toolbox when a connection to a debug target
+# could not be made
+toolbox.debugTargetErrorPage.title = ข้อผิดพลาด
+
+# LOCALIZATION NOTE (toolbox.debugTargetErrorPage.description): This is the
+# text that appears in the Error view and explains to the user that an error
+# has happened while trying to connect to a debug target
+toolbox.debugTargetErrorPage.description = ไม่สามารถเชื่อมต่อไปยังเป้าหมายการดีบั๊กได้ ดูรายละเอียดข้อผิดพลาดด้านล่างนี้:
+
+# LOCALIZATION NOTE (options.deprecationNotice): This is the text that appears in the
+# settings panel for panel that will be removed in future releases.
+# This entire text is treated as a link to an MDN page.
+options.deprecationNotice=เลิกใช้แล้ว เรียนรู้เพิ่มเติม…
+
+# LOCALIZATION NOTE (options.enableMultiProcessToolbox): This is the text that appears in the
+# settings panel for the checkbox that enables the Multiprocess Browser Toolbox.
+options.enableMultiProcessToolbox=เปิดใช้งานกล่องเครื่องมือเบราว์เซอร์มัลติโปรเซส (ต้องเริ่มการทำงานของกล่องเครื่องมือเบราว์เซอร์ใหม่)
diff --git a/l10n-th/devtools/client/tooltips.ftl b/l10n-th/devtools/client/tooltips.ftl
new file mode 100644
index 0000000000..3b38caa8a9
--- /dev/null
+++ b/l10n-th/devtools/client/tooltips.ftl
@@ -0,0 +1,97 @@
+# 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 for Developer Tools tooltips.
+
+learn-more = <span data-l10n-name="link">เรียนรู้เพิ่มเติม</span>
+
+## In the Rule View when a CSS property cannot be successfully applied we display
+## an icon. When this icon is hovered this message is displayed to explain why
+## the property is not applied.
+## Variables:
+## $property (string) - A CSS property name e.g. "color".
+## $display (string) - A CSS display value e.g. "inline-block".
+
+inactive-css-not-grid-or-flex-container = <strong>{ $property }</strong> ไม่มีผลกับอิลิเมนต์นี้เนื่องจากไม่ใช่ทั้งคอนเทนเนอร์แบบยืดหยุ่นหรือคอนเทนเนอร์แบบเส้นตาราง
+inactive-css-not-grid-or-flex-container-or-multicol-container = <strong>{ $property }</strong> ไม่มีผลกับอิลิเมนต์นี้เนื่องจากไม่ใช่ทั้งคอนเทนเนอร์แบบยืดหยุ่น คอนเทนเนอร์แบบเส้นตาราง หรือคอนเทนเนอร์แบบหลายคอลัมน์
+inactive-css-not-multicol-container = <strong>{ $property }</strong> ไม่มีผลกับอิลิเมนต์นี้เนื่องจากไม่ใช่คอนเทนเนอร์แบบหลายคอลัมน์
+inactive-css-not-grid-or-flex-item = <strong>{ $property }</strong> ไม่มีผลกับอิลิเมนต์นี้เนื่องจากไม่ใช่รายการแบบเส้นตารางหรือแบบยืดหยุ่น
+inactive-css-not-grid-item = <strong>{ $property }</strong> ไม่มีผลกับอิลิเมนต์นี้เนื่องจากไม่ใช่รายการแบบเส้นตาราง
+inactive-css-not-grid-container = <strong>{ $property }</strong> ไม่มีผลกับอิลิเมนต์นี้เนื่องจากไม่ใช่คอนเทนเนอร์แบบเส้นตาราง
+inactive-css-not-flex-item = <strong>{ $property }</strong> ไม่มีผลกับอิลิเมนต์นี้เนื่องจากไม่ใช่รายการแบบยืดหยุ่น
+inactive-css-not-flex-container = <strong>{ $property }</strong> ไม่มีผลกับอิลิเมนต์นี้เนื่องจากไม่ใช่คอนเทนเนอร์แบบยืดหยุ่น
+inactive-css-not-inline-or-tablecell = <strong>{ $property }</strong> ไม่มีผลกับอิลิเมนต์นี้เนื่องจากไม่ใช่อิลิเมนต์แบบอินไลน์หรือแบบเซลล์ตาราง
+inactive-css-first-line-pseudo-element-not-supported = ไม่รองรับ <strong>{ $property }</strong> บนอิลิเมนต์แฝง ::first-line
+inactive-css-first-letter-pseudo-element-not-supported = ไม่รองรับ <strong>{ $property }</strong> บนอิลิเมนต์แฝง ::first-letter
+inactive-css-placeholder-pseudo-element-not-supported = ไม่รองรับ <strong>{ $property }</strong> บนอิลิเมนต์แฝง ::placeholder
+inactive-css-property-because-of-display = <strong>{ $property }</strong> ไม่มีผลกับอิลิเมนต์นี้เนื่องจากมีค่าคุณสมบัติ display เป็น <strong>{ $display }</strong>
+inactive-css-not-display-block-on-floated = ค่า <strong>display</strong> ได้ถูกเปลี่ยนโดยเอนจินเป็น <strong>block</strong> เนื่องจากมีอิลิเมนต์แบบ <strong>floated</strong>
+inactive-css-property-is-impossible-to-override-in-visited = ไม่สามารถเขียนทับ <strong>{ $property }</strong> เนื่องจากข้อจำกัดของ <strong>:visited</strong>
+inactive-css-position-property-on-unpositioned-box = <strong>{ $property }</strong> ไม่มีผลต่ออิลิเมนต์นี้เนื่องจากไม่ใช่อิลิเมนต์ที่ถูกจัดตำแหน่ง
+inactive-text-overflow-when-no-overflow = <strong>{ $property }</strong> ไม่มีผลต่ออิลิเมนต์นี้เนื่องจากไม่ได้ตั้งค่า <strong>overflow:hidden</strong>
+inactive-css-not-for-internal-table-elements = <strong>{ $property }</strong> ไม่มีผลกับอิลิเมนต์ตารางภายใน
+inactive-css-not-for-internal-table-elements-except-table-cells = <strong>{ $property }</strong> ไม่มีผลกับอิลิเมนต์ตารางภายในยกเว้นเซลล์ตาราง
+inactive-css-not-table = <strong>{ $property }</strong> ไม่มีผลกับอิลิเมนต์นี้เนื่องจากไม่ใช่ตาราง
+inactive-css-not-table-cell = <strong>{ $property }</strong> ไม่มีผลกับอิลิเมนต์นี้เนื่องจากไม่ใช่เซลล์ตาราง
+inactive-scroll-padding-when-not-scroll-container = <strong>{ $property }</strong> ไม่มีผลกับอิลิเมนต์นี้เนื่องจากไม่มีการเลื่อน
+inactive-css-border-image = <strong>{ $property }</strong> ไม่มีผลกับอิลิเมนต์นี้ เนื่องจากไม่สามารถใช้กับอิลิเมนต์ตารางภายในที่ตั้งค่า <strong>border-collapse</strong> เป็น <strong>collapse</strong> บนอิลิเมนต์ตารางแม่ได้
+inactive-css-ruby-element = <strong>{ $property }</strong> ไม่มีผลกับอิลิเมนต์นี้ เนื่องจากเป็นอิลิเมนต์ ruby ขนาดของอิลิเมนต์นี้ถูกกำหนดโดยขนาดตัวอักษรของข้อความ ruby
+inactive-css-highlight-pseudo-elements-not-supported = ไม่รองรับ <strong>{ $property }</strong> บนอิลิเมนต์แฝง highlight
+inactive-css-cue-pseudo-element-not-supported = ไม่รองรับ <strong>{ $property }</strong> บนอิลิเมนต์แฝง ::cue
+# Variables:
+# $lineCount (integer) - The number of lines the element has.
+inactive-css-text-wrap-balance-lines-exceeded = <strong>{ $property }</strong> ไม่มีผลกับอิลิเมนต์นี้เนื่องจากมีจำนวนบรรทัดมากกว่า { $lineCount } บรรทัด
+inactive-css-text-wrap-balance-fragmented = <strong>{ $property }</strong> ไม่มีผลกับอิลิเมนต์นี้เนื่องจากมีการแยกส่วน กล่าวคือเนื้อหาถูกแบ่งออกเป็นหลายคอลัมน์หรือหลายหน้า
+
+## In the Rule View when a CSS property cannot be successfully applied we display
+## an icon. When this icon is hovered this message is displayed to explain how
+## the problem can be solved.
+
+inactive-css-not-grid-or-flex-container-fix = ลองเพิ่ม <strong>display:grid</strong> หรือ <strong>display:flex</strong> { learn-more }
+inactive-css-not-grid-or-flex-container-or-multicol-container-fix = ลองเพิ่ม <strong>display:grid</strong>, <strong>display:flex</strong>, หรือ <strong>columns:2</strong> { learn-more }
+inactive-css-not-multicol-container-fix = ลองเพิ่ม <strong>column-count</strong> หรือ <strong>column-width</strong> { learn-more }
+inactive-css-not-grid-or-flex-item-fix-3 = ลองเพิ่ม <strong>display:grid</strong>, <strong>display:flex</strong>, <strong>display:inline-grid</strong> หรือ <strong>display:inline-flex</strong> ไปยังอิลิเมนต์แม่ของอิลิเมนต์ { learn-more }
+inactive-css-not-grid-item-fix-2 = ลองเพิ่ม <strong>display:grid</strong> หรือ <strong>display:inline-grid</strong> ไปยังอิลิเมนต์แม่ของอิลิเมนต์ { learn-more }
+inactive-css-not-grid-container-fix = ลองเพิ่ม <strong>display:grid</strong> หรือ <strong>display:inline-grid</strong> { learn-more }
+inactive-css-not-flex-item-fix-2 = ลองเพิ่ม <strong>display:flex</strong> หรือ <strong>display:inline-flex</strong> ไปยังอิลิเมนต์แม่ของอิลิเมนต์ { learn-more }
+inactive-css-not-flex-container-fix = ลองเพิ่ม <strong>display:flex</strong> หรือ <strong>display:inline-flex</strong> { learn-more }
+inactive-css-not-inline-or-tablecell-fix = ลองเพิ่ม <strong>display:inline</strong> หรือ <strong>display:table-cell</strong> { learn-more }
+inactive-css-non-replaced-inline-or-table-row-or-row-group-fix = ลองเพิ่ม <strong>display:inline-block</strong> หรือ <strong>display:block</strong> { learn-more }
+inactive-css-non-replaced-inline-or-table-column-or-column-group-fix = ลองเพิ่ม <strong>display:inline-block</strong> { learn-more }
+inactive-css-not-display-block-on-floated-fix = ลองเอา <strong>float</strong> ออกหรือเพิ่ม <strong>display:block</strong> { learn-more }
+inactive-css-position-property-on-unpositioned-box-fix = ลองตั้งค่าคุณสมบัติ <strong>position</strong> เป็นอย่างอื่นนอกจาก <strong>static</strong> { learn-more }
+inactive-text-overflow-when-no-overflow-fix = ลองเพิ่ม <strong>overflow:hidden</strong> { learn-more }
+inactive-css-not-for-internal-table-elements-fix = ลองตั้งค่าคุณสมบัติ <strong>display</strong> เป็นอย่างอื่นนอกจาก <strong>table-cell</strong>, <strong>table-column</strong>, <strong>table-row</strong>, <strong>table-column-group</strong>, <strong>table-row-group</strong>, หรือ <strong>table-footer-group</strong> { learn-more }
+inactive-css-not-for-internal-table-elements-except-table-cells-fix = ลองตั้งค่าคุณสมบัติ <strong>display</strong> เป็นอย่างอื่นนอกจาก <strong>table-column</strong>, <strong>table-row</strong>, <strong>table-column-group</strong>, <strong>table-row-group</strong>, หรือ <strong>table-footer-group</strong> { learn-more }
+inactive-css-not-table-fix = ลองเพิ่ม <strong>display:table</strong> หรือ <strong>display:inline-table</strong> { learn-more }
+inactive-css-not-table-cell-fix = ลองเพิ่ม <strong>display:table-cell</strong> { learn-more }
+inactive-scroll-padding-when-not-scroll-container-fix = ลองเพิ่ม <strong>overflow:auto</strong>, <strong>overflow:scroll</strong> หรือ <strong>overflow:hidden</strong> { learn-more }
+inactive-css-border-image-fix = บนอิลิเมนต์ตารางแม่ ให้เอาคุณสมบัติออก หรือเปลี่ยนค่าของ <strong>border-collapse</strong> เป็นค่าอื่น ๆ ที่ไม่ใช่ <strong>collapse</strong> { learn-more }
+inactive-css-ruby-element-fix = ลองเปลี่ยน <strong>font-size</strong> ของข้อความ ruby { learn-more }
+inactive-css-text-wrap-balance-lines-exceeded-fix = โปรดลองลดจำนวนบรรทัด { learn-more }
+inactive-css-text-wrap-balance-fragmented-fix = หลีกเลี่ยงการแยกเนื้อหาของอิลิเมนต์ เช่น โดยการลบคอลัมน์ออก หรือใช้ <strong>page-break-inside:avoid</strong> { learn-more }
+
+## In the Rule View when a CSS property may have compatibility issues with other browsers
+## we display an icon. When this icon is hovered this message is displayed to explain why
+## the property is incompatible and the platforms it is incompatible on.
+## Variables:
+## $property (string) - A CSS declaration name e.g. "-moz-user-select" that can be a platform specific alias.
+## $rootProperty (string) - A raw CSS property name e.g. "user-select" that is not a platform specific alias.
+
+css-compatibility-default-message = ไม่รองรับ <strong>{ $property }</strong> ในเบราว์เซอร์ต่อไปนี้:
+css-compatibility-deprecated-experimental-message = <strong>{ $property }</strong> เป็นคุณสมบัติทดลองซึ่งเลิกใช้แล้วตามมาตรฐาน W3C โดยไม่รองรับในเบราว์เซอร์ต่อไปนี้:
+css-compatibility-deprecated-experimental-supported-message = <strong>{ $property }</strong> เป็นคุณสมบัติทดลองซึ่งเลิกใช้แล้วตามมาตรฐาน W3C
+css-compatibility-deprecated-message = <strong>{ $property }</strong> เลิกใช้แล้วตามมาตรฐาน W3C โดยไม่รองรับในเบราว์เซอร์ต่อไปนี้:
+css-compatibility-deprecated-supported-message = <strong>{ $property }</strong> เลิกใช้แล้วตามมาตรฐาน W3C
+css-compatibility-experimental-message = <strong>{ $property }</strong> เป็นคุณสมบัติทดลอง โดยไม่รองรับในเบราว์เซอร์ต่อไปนี้:
+css-compatibility-experimental-supported-message = <strong>{ $property }</strong> เป็นคุณสมบัติทดลอง
+css-compatibility-learn-more-message = <span data-l10n-name="link">เรียนรู้เพิ่มเติม</span>เกี่ยวกับ <strong>{ $rootProperty }</strong>
+
+## In the Rule View when a rule selector can causes issues, we display an icon.
+## When this icon is hovered one or more of those messages are displayed to explain what
+## the issue are.
+
+# :has() should not be translated
+css-selector-warning-unconstrained-has = เครื่องมือเลือกนี้ใช้ <strong>:has()</strong> แบบไม่มีข้อจำกัด ซึ่งอาจทำงานช้า
diff --git a/l10n-th/devtools/client/webconsole.properties b/l10n-th/devtools/client/webconsole.properties
new file mode 100644
index 0000000000..9523770b5e
--- /dev/null
+++ b/l10n-th/devtools/client/webconsole.properties
@@ -0,0 +1,610 @@
+# 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
+# The correct localization of this file might be to keep it in
+# English, or another language commonly spoken among web developers.
+# You want to make that choice consistent across the developer tools.
+# A good criteria is the language in which you'd find the best
+# documentation on web development on the web.
+
+# LOCALIZATION NOTE (multiProcessBrowserConsole.title): Title of the Browser
+# Console window when the pref `devtools.browsertoolbox.scope` is set to "everything". This
+# Browser Console will log messages from all processes, not just the the parent
+# process.
+multiProcessBrowserConsole.title=คอนโซลเบราว์เซอร์มัลติโปรเซส
+
+# LOCALIZATION NOTE (parentProcessBrowserConsole.title): Title used for
+# the Browser Console when the pref `devtools.browsertoolbox.scope` is set to "parent-process".
+parentProcessBrowserConsole.title=คอนโซลเบราว์เซอร์สำหรับโปรเซสหลัก
+
+# LOCALIZATION NOTE (timestampFormat): %1$02S = hours (24-hour clock),
+# %2$02S = minutes, %3$02S = seconds, %4$03S = milliseconds.
+timestampFormat=%02S:%02S:%02S.%03S
+
+ConsoleAPIDisabled=API การบันทึกของคอนโซลเว็บ (console.log, console.info, console.warn, console.error) ถูกปิดใช้งานโดยสคริปต์บนหน้านี้
+
+# LOCALIZATION NOTE (webConsoleXhrIndicator): the indicator displayed before
+# a URL in the Web Console that was requested using an XMLHttpRequest.
+webConsoleXhrIndicator=XHR
+
+# LOCALIZATION NOTE (webConsoleMoreInfoLabel): the more info tag displayed
+# after security related web console messages.
+webConsoleMoreInfoLabel=เรียนรู้เพิ่มเติม
+
+# LOCALIZATION NOTE (stacktrace.anonymousFunction): this string is used to
+# display JavaScript functions that have no given name - they are said to be
+# anonymous. Test console.trace() in the webconsole.
+stacktrace.anonymousFunction=<ไม่ระบุชื่อ>
+
+# LOCALIZATION NOTE (stacktrace.asyncStack): this string is used to
+# indicate that a given stack frame has an async parent.
+# %S is the "Async Cause" of the frame.
+stacktrace.asyncStack=(ไม่ตรงกัน: %S)
+
+# LOCALIZATION NOTE (timeLog): this string is used to display the result of
+# the console.timeLog() call. Parameters: %1$S is the name of the timer, %2$S
+# is the number of milliseconds.
+timeLog=%1$S: %2$Sms
+
+# LOCALIZATION NOTE (console.timeEnd): this string is used to display the result of
+# the console.timeEnd() call. Parameters: %1$S is the name of the timer, %2$S
+# is the number of milliseconds.
+console.timeEnd=%1$S: %2$Sms - สิ้นสุดการจับเวลาแล้ว
+
+# LOCALIZATION NOTE (consoleCleared): this string is displayed when receiving a
+# call to console.clear() to let the user know the previous messages of the
+# console have been removed programmatically.
+consoleCleared=คอนโซลถูกล้าง
+
+# LOCALIZATION NOTE (preventedConsoleClear): this string is displayed when receiving a
+# call to console.clear() when the user has the "Persist logs" option enabled, to let the
+# user know the console method call was ignored.
+# "Persist Logs" should be kept in sync with webconsole.console.settings.menu.item.enablePersistentLogs.label
+preventedConsoleClear=console.clear() ถูกป้องกันเนื่องจาก “Persist Logs”
+
+# LOCALIZATION NOTE (noCounterLabel): this string is used to display
+# count-messages with no label provided.
+noCounterLabel=<ไม่มีป้ายชื่อ>
+
+# LOCALIZATION NOTE (counterDoesntExist): this string is displayed when
+# console.countReset() is called with a counter that doesn't exist.
+counterDoesntExist=ไม่มีตัวนับ “%S” อยู่
+
+# LOCALIZATION NOTE (noGroupLabel): this string is used to display
+# console.group messages with no label provided.
+noGroupLabel=<ไม่มีป้ายชื่อกลุ่ม>
+
+maxTimersExceeded=มีตัวจับเวลาเกินจำนวนที่รับได้
+timerAlreadyExists=มีตัวจับเวลา “%S” อยู่แล้ว
+timerDoesntExist=ไม่มีตัวจับเวลา “%S” อยู่
+timerJSError=ไม่สามารถประมวลผลชื่อตัวจับเวลา
+
+# LOCALIZATION NOTE (connectionTimeout): message displayed when the Remote Web
+# Console fails to connect to the server due to a timeout.
+connectionTimeout=การเชื่อมต่อหมดเวลา ตรวจสอบคอนโซลข้อผิดพลาดทั้งสองฝั่งสำหรับข้อความข้อผิดพลาดที่อาจเกิดขึ้น เปิดคอนโซลเว็บใหม่เพื่อลองอีกครั้ง
+
+# LOCALIZATION NOTE (propertiesFilterPlaceholder): this is the text that
+# appears in the filter text box for the properties view container.
+propertiesFilterPlaceholder=กรองคุณสมบัติ
+
+# LOCALIZATION NOTE (messageRepeats.tooltip2): the tooltip text that is displayed
+# when you hover the red bubble that shows how many times a message is repeated
+# in the web console output.
+# This is a semi-colon list of plural forms.
+# See: http://developer.mozilla.org/en/docs/Localization_and_Plurals
+# #1 number of message repeats
+# example: 3 repeats
+messageRepeats.tooltip2=การทำซ้ำ #1 ครั้ง
+
+# LOCALIZATION NOTE (openNodeInInspector): the text that is displayed in a
+# tooltip when hovering over the inspector icon next to a DOM Node in the console
+# output
+openNodeInInspector=คลิกเพื่อเลือกโหนดในตัวตรวจสอบ
+
+# LOCALIZATION NOTE (selfxss.msg): the text that is displayed when
+# a new user of the developer tools pastes code into the console
+# %1 is the text of selfxss.okstring
+selfxss.msg=คำเตือนการหลอกลวง: ระวังเมื่อวางสิ่งที่คุณไม่เข้าใจ วิธีนี้อาจทำให้ผู้โจมตีสามารถขโมยข้อมูลประจำตัวของคุณหรือควบคุมคอมพิวเตอร์ของคุณได้ โปรดพิมพ์ ‘%S’ ด้านล่าง (ไม่ต้องกด Enter) เพื่ออนุญาตให้วาง
+
+# LOCALIZATION NOTE (selfxss.okstring): the string to be typed
+# in by a new user of the developer tools when they receive the sefxss.msg prompt.
+# Please avoid using non-keyboard characters here
+selfxss.okstring=อนุญาตการวาง
+
+# LOCALIZATION NOTE (evaluationNotifcation.noOriginalVariableMapping.msg): the text for the notification message that is displayed
+# in the console when the debugger is paused in a non-pretty printed original file and original variable mapping is turned off.
+# `Show original variables` should be kept in sync with the checkbox label in the Scopes panel header.
+evaluationNotifcation.noOriginalVariableMapping.msg=การแมปชื่อตัวแปรแบบดั้งเดิมในตัวดีบั๊กถูกปิดใช้งาน ผลการประเมินอาจไม่แม่นยำ คลิกช่องทำเครื่องหมาย `แสดงตัวแปรแบบดั้งเดิม` ในแผงขอบเขตตัวดีบั๊กเพื่อเปิดใช้งาน
+
+# LOCALIZATION NOTE (messageToggleDetails): the text that is displayed when
+# you hover the arrow for expanding/collapsing the message details. For
+# console.error() and other messages we show the stacktrace.
+messageToggleDetails=แสดง/ซ่อนรายละเอียดข้อความ
+
+# LOCALIZATION NOTE (groupToggle): the text that is displayed when
+# you hover the arrow for expanding/collapsing the messages of a group.
+groupToggle=แสดง/ซ่อนกลุ่ม
+
+# LOCALIZATION NOTE (table.index, table.iterationIndex, table.key, table.value):
+# the column header displayed in the console table widget.
+table.index=(ดัชนี)
+table.iterationIndex=(ดัชนีการวนซ้ำ)
+table.key=กุญแจ
+table.value=ค่า
+
+# LOCALIZATION NOTE (level.error, level.warn, level.info, level.log, level.debug, level.jstracer):
+# tooltip for icons next to console output.
+# "level.jstracer" isn't related to console.api call, but rather to the JavaScript Tracer,
+# each item represents a function call being logged in the console.
+level.error=ข้อผิดพลาด
+level.warn=คำเตือน
+level.info=ข้อมูล
+level.log=รายการบันทึก
+level.debug=ดีบั๊ก
+
+level.jstracer=การเรียกฟังก์ชัน
+
+# LOCALIZATION NOTE (logpoint.title)
+# Tooltip shown for logpoints sent from the debugger
+logpoint.title=จุดบันทึกจากตัวดีบั๊ก
+
+# LOCALIZATION NOTE (logtrace.title)
+# Tooltip shown for JavaScript tracing logs
+logtrace.title=การติดตาม JavaScript
+
+# LOCALIZATION NOTE (blockedReason.title)
+# Tooltip shown for blocked network events sent from the network panel
+blockedrequest.label=ถูกปิดกั้นโดย DevTools
+
+# LOCALIZATION NOTE (webconsole.disableIcon.title)
+# Tooltip shown for disabled console messages
+webconsole.disableIcon.title=ข้อความนี้ใช้งานไม่ได้แล้ว รายละเอียดข้อความไม่พร้อมใช้งาน
+
+# LOCALIZATION NOTE (command.title)
+# Tooltip shown for console input evaluated code displayed in the console output
+command.title=โค้ดที่ประเมิน
+
+# LOCALIZATION NOTE (result.title)
+# Tooltip shown for evaluation result displayed in the console output
+result.title=ผลการประเมิน
+
+# LOCALIZATION NOTE (webconsole.find.key)
+# Key shortcut used to focus the search box on upper right of the console
+webconsole.find.key=CmdOrCtrl+F
+
+# LOCALIZATION NOTE (webconsole.close.key)
+# Key shortcut used to close the Browser console (doesn't work in regular web console)
+webconsole.close.key=CmdOrCtrl+W
+
+# LOCALIZATION NOTE (webconsole.clear.key*)
+# Key shortcut used to clear the console output
+webconsole.clear.key=Ctrl+Shift+L
+webconsole.clear.keyOSX=Ctrl+L
+webconsole.clear.alternativeKeyOSX=Cmd+K
+
+# LOCALIZATION NOTE (webconsole.menu.copyURL.label)
+# Label used for a context-menu item displayed for network message logs. Clicking on it
+# copies the URL displayed in the message to the clipboard.
+webconsole.menu.copyURL.label=คัดลอกตำแหน่งที่ตั้งลิงก์
+webconsole.menu.copyURL.accesskey=อ
+
+# LOCALIZATION NOTE (webconsole.menu.openURL.label)
+# Label used for a context-menu item displayed for network message logs. Clicking on it
+# opens the URL displayed in a new browser tab.
+webconsole.menu.openURL.label=เปิด URL ในแท็บใหม่
+webconsole.menu.openURL.accesskey=ป
+
+# LOCALIZATION NOTE (webconsole.menu.openInNetworkPanel.label)
+# Label used for a context-menu item displayed for network message logs. Clicking on it
+# opens the network message in the Network panel
+webconsole.menu.openInNetworkPanel.label=เปิดในแผงเครือข่าย
+webconsole.menu.openInNetworkPanel.accesskey=ผ
+
+# LOCALIZATION NOTE (webconsole.menu.resendNetworkRequest.label)
+# Label used for a context-menu item displayed for network message logs. Clicking on it
+# resends the network request
+webconsole.menu.resendNetworkRequest.label=ส่งคำขอใหม่
+webconsole.menu.resendNetworkRequest.accesskey=ส
+
+# LOCALIZATION NOTE (webconsole.menu.openNodeInInspector.label)
+# Label used for a context-menu item displayed for DOM Node logs. Clicking on it will
+# reveal that specific DOM Node in the Inspector.
+webconsole.menu.openNodeInInspector.label=เปิดเผยในตัวตรวจสอบ
+webconsole.menu.openNodeInInspector.accesskey=Q
+
+# LOCALIZATION NOTE (webconsole.menu.storeAsGlobalVar.label)
+# Label used for a context-menu item displayed for object/variable logs. Clicking on it
+# creates a new global variable pointing to the logged variable.
+webconsole.menu.storeAsGlobalVar.label=จัดเก็บเป็นตัวแปรส่วนกลาง
+webconsole.menu.storeAsGlobalVar.accesskey=จ
+
+# LOCALIZATION NOTE (webconsole.menu.copyMessage.label)
+# Label used for a context-menu item displayed for any log. Clicking on it will copy the
+# content of the log (or the user selection, if any).
+webconsole.menu.copyMessage.label=คัดลอกข้อความ
+webconsole.menu.copyMessage.accesskey=ค
+
+# LOCALIZATION NOTE (webconsole.menu.copyObject.label)
+# Label used for a context-menu item displayed for object/variable log. Clicking on it
+# will copy the object/variable.
+webconsole.menu.copyObject.label=คัดลอกวัตถุ
+webconsole.menu.copyObject.accesskey=ด
+
+# LOCALIZATION NOTE (webconsole.menu.openInSidebar.label)
+# Label used for a context-menu item displayed for object/variable logs. Clicking on it
+# opens the webconsole sidebar for the logged variable.
+webconsole.menu.openInSidebar.label1=ตรวจสอบวัตถุในแถบด้านข้าง
+webconsole.menu.openInSidebar.accesskey=น
+
+# LOCALIZATION NOTE (webconsole.menu.copyAllMessages.label)
+# Label used for a context-menu item displayed on the output. Clicking on it
+# copies the entire output of the console to the clipboard.
+webconsole.menu.copyAllMessages.label=คัดลอกข้อความทั้งหมด
+webconsole.menu.copyAllMessages.accesskey=ข
+
+# LOCALIZATION NOTE (webconsole.menu.saveAllMessagesFile.label)
+# Label used for a context-menu item displayed on the output. Clicking on it
+# opens a file picker to allow the user save a file containing
+# the output of the console.
+webconsole.menu.saveAllMessagesFile.label=บันทึกข้อความทั้งหมดไปยังไฟล์
+webconsole.menu.saveAllMessagesFile.accesskey=ฟ
+
+# LOCALIZATION NOTE (webconsole.clearButton.tooltip)
+# Label used for the tooltip on the clear logs button in the console top toolbar bar.
+# Clicking on it will clear the content of the console.
+webconsole.clearButton.tooltip=ล้างค่าออกของคอนโซลเว็บ
+
+# LOCALIZATION NOTE (webconsole.toggleFilterButton.tooltip)
+# Label used for the tooltip on the toggle filter bar button in the console top
+# toolbar bar. Clicking on it will toggle the visibility of an additional bar which
+# contains filter buttons.
+webconsole.toggleFilterButton.tooltip=เปิด/ปิดแถบตัวกรอง
+
+# LOCALIZATION NOTE (webconsole.filterInput.placeholder)
+# Label used for for the placeholder on the filter input, in the console top toolbar.
+webconsole.filterInput.placeholder=กรองค่าออก
+
+# LOCALIZATION NOTE (webconsole.errorsFilterButton.label)
+# Label used as the text of the "Errors" button in the additional filter toolbar.
+# It shows or hides error messages, either inserted in the page using
+# console.error() or as a result of a javascript error..
+webconsole.errorsFilterButton.label=ข้อผิดพลาด
+
+# LOCALIZATION NOTE (webconsole.warningsFilterButton.label)
+# Label used as the text of the "Warnings" button in the additional filter toolbar.
+# It shows or hides warning messages, inserted in the page using console.warn().
+webconsole.warningsFilterButton.label=คำเตือน
+
+# LOCALIZATION NOTE (webconsole.logsFilterButton.label)
+# Label used as the text of the "Logs" button in the additional filter toolbar.
+# It shows or hides log messages, inserted in the page using console.log().
+webconsole.logsFilterButton.label=รายการบันทึก
+
+# LOCALIZATION NOTE (webconsole.infoFilterButton.label)
+# Label used as the text of the "Info" button in the additional filter toolbar.
+# It shows or hides info messages, inserted in the page using console.info().
+webconsole.infoFilterButton.label=ข้อมูล
+
+# LOCALIZATION NOTE (webconsole.debugFilterButton.label)
+# Label used as the text of the "Debug" button in the additional filter toolbar.
+# It shows or hides debug messages, inserted in the page using console.debug().
+webconsole.debugFilterButton.label=ดีบั๊ก
+
+# LOCALIZATION NOTE (webconsole.cssFilterButton.label)
+# Label used as the text of the "CSS" button in the additional filter toolbar.
+# It shows or hides CSS warning messages, inserted in the page by the browser
+# when there are CSS errors in the page.
+webconsole.cssFilterButton.label=CSS
+
+# LOCALIZATION NOTE (webconsole.cssFilterButton.inactive.tooltip)
+# Label used as the tooltip of the "CSS" button in the additional filter toolbar, when the
+# filter is inactive (=unchecked).
+webconsole.cssFilterButton.inactive.tooltip=สไตล์ชีตจะถูกแจงส่วนใหม่เพื่อตรวจสอบข้อผิดพลาด เรียกหน้าใหม่เพื่อดูข้อผิดพลาดอื่น ๆ จากสไตล์ชีตที่แก้ไขจาก Javascript
+
+# LOCALIZATION NOTE (webconsole.xhrFilterButton.label)
+# Label used as the text of the "XHR" button in the additional filter toolbar.
+# It shows or hides messages displayed when the page makes an XMLHttpRequest or
+# a fetch call.
+webconsole.xhrFilterButton.label=XHR
+
+# LOCALIZATION NOTE (webconsole.requestsFilterButton.label)
+# Label used as the text of the "Requests" button in the additional filter toolbar.
+# It shows or hides messages displayed when the page makes a network call, for example
+# when an image or a scripts is requested.
+webconsole.requestsFilterButton.label=คำขอ
+
+# LOCALIZATION NOTE (webconsole.filteredMessagesByText.label)
+# Text on the filter input displayed when some console messages are hidden because the
+# user has filled in the input.
+# This is a semi-colon list of plural forms.
+# See: http://developer.mozilla.org/en/docs/Localization_and_Plurals
+# example: 345 hidden.
+webconsole.filteredMessagesByText.label=#1 ที่ซ่อนอยู่
+
+# LOCALIZATION NOTE (webconsole.filteredMessagesByText.tooltip)
+# Tooltip on the filter input "hidden" text, displayed when some console messages are
+# hidden because the user has filled in the input.
+# This is a semi-colon list of plural forms.
+# See: http://developer.mozilla.org/en/docs/Localization_and_Plurals
+# example: 345 items hidden by text filter.
+webconsole.filteredMessagesByText.tooltip=#1 รายการถูกซ่อนไว้โดยตัวกรองข้อความ
+
+# LOCALIZATION NOTE (webconsole.console.settings.menu.menuButton.tooltip)
+# Tooltip for the filter bar preferences menu. This menu will display multiple perefences for the
+# filter bar, such as enabling the compact toolbar mode, enable the timestamps, persist logs, etc
+webconsole.console.settings.menu.button.tooltip=การตั้งค่าคอนโซล
+
+# LOCALIZATION NOTE (webconsole.console.settings.menu.item.compactToolbar.label)
+# Label for the `Compact Toolbar` preference option. This will turn the message filters buttons
+# into a Menu Button, making the filter bar more compact.
+webconsole.console.settings.menu.item.compactToolbar.label=แถบเครื่องมือแบบกะทัดรัด
+
+# LOCALIZATION NOTE (webconsole.console.settings.menu.item.timestamps.label)
+# Label for enabling the timestamps in the Web Console.
+webconsole.console.settings.menu.item.timestamps.label=แสดงตราเวลา
+# LOCALIZATION NOTE (webconsole.console.settings.menu.item.timestamps.tooltip)
+webconsole.console.settings.menu.item.timestamps.tooltip=ถ้าคุณเปิดใช้งานตัวเลือกคำสั่งนี้ การแสดงผลในเว็บคอนโซลจะแสดงตราเวลา
+
+# LOCALIZATION NOTE (webconsole.console.settings.menu.item.warningGroups.label)
+# Label for grouping the similar messages in the Web Console
+webconsole.console.settings.menu.item.warningGroups.label=จัดข้อความที่คล้ายกันเป็นกลุ่ม
+# LOCALIZATION NOTE (webconsole.console.settings.menu.item.warningGroups.tooltip)
+webconsole.console.settings.menu.item.warningGroups.tooltip=เมื่อเปิดใช้งาน ข้อความที่คล้ายกันจะถูกวางไว้ในกลุ่มเดียวกัน
+
+# LOCALIZATION NOTE (webconsole.console.settings.menu.item.autocomplete.label)
+# Label for enabling autocomplete for input in the Web Console
+webconsole.console.settings.menu.item.autocomplete.label=เปิดใช้งานการเติมให้สมบูรณ์อัตโนมัติ
+# LOCALIZATION NOTE (webconsole.console.settings.menu.item.autocomplete.tooltip)
+webconsole.console.settings.menu.item.autocomplete.tooltip=หากคุณเปิดใช้งานตัวเลือกนี้ โปรแกรมจะแสดงคำแนะนำขณะที่คุณพิมพ์ข้อความลงไป
+
+# LOCALIZATION NOTE (webconsole.console.settings.menu.item.enablePersistentLogs.label)
+webconsole.console.settings.menu.item.enablePersistentLogs.label=คงรายการบันทึก
+# LOCALIZATION NOTE (webconsole.console.settings.menu.item.enablePersistentLogs.tooltip)
+webconsole.console.settings.menu.item.enablePersistentLogs.tooltip=หากคุณเปิดใช้งานตัวเลือกนี้ ผลลัพธ์จะไม่ถูกล้างในแต่ละครั้งที่คุณนำทางไปยังหน้าใหม่
+
+# LOCALIZATION NOTE (webconsole.console.settings.menu.item.instantEvaluation.label)
+webconsole.console.settings.menu.item.instantEvaluation.label=การประเมินผลแบบทันที
+# LOCALIZATION NOTE (webconsole.console.settings.menu.item.instantEvaluation.tooltip)
+webconsole.console.settings.menu.item.instantEvaluation.tooltip=หากคุณเปิดใช้งานตัวเลือกนี้ โปรแกรมจะประเมินผลลัพธ์โดยทันทีขณะที่คุณพิมพ์ข้อความลงไป
+
+# LOCALIZATION NOTE (browserconsole.enableNetworkMonitoring.label)
+# Label used in the browser console / browser toolbox console. This label is used for a checkbox that
+# allows the user enable monitoring of network requests.
+browserconsole.enableNetworkMonitoring.label=เปิดใช้งานการตรวจสอบเครือข่าย
+# LOCALIZATION NOTE (browserconsole.enableNetworkMonitoring.tooltip)
+# Tooltip for the "Enable Network Monitoring" check item.
+browserconsole.enableNetworkMonitoring.tooltip=เปิดใช้งานตัวเลือกนี้เพื่อเริ่มรับฟังคำขอเครือข่าย
+
+# LOCALIZATION NOTE (webconsole.navigated): this string is used in the console when the
+# current inspected page is navigated to a new location.
+# Parameters: %S is the new URL.
+webconsole.navigated=นำทางไปยัง %S
+
+# LOCALIZATION NOTE (webconsole.closeSplitConsoleButton.tooltip): This is the tooltip for
+# the close button of the split console.
+webconsole.closeSplitConsoleButton.tooltip=ปิดคอนโซลแยก (Esc)
+
+# LOCALIZATION NOTE (webconsole.closeSidebarButton.tooltip): This is the tooltip for
+# the close button of the sidebar.
+webconsole.closeSidebarButton.tooltip=ปิดแถบข้าง
+
+# LOCALIZATION NOTE (webconsole.reverseSearch.input.placeHolder):
+# This string is displayed in the placeholder of the reverse search input in the console.
+webconsole.reverseSearch.input.placeHolder=ค้นหาประวัติ
+
+# LOCALIZATION NOTE (webconsole.reverseSearch.result.closeButton.tooltip):
+# This string is displayed in the tooltip of the close button in the reverse search toolbar.
+# A keyboard shortcut will be shown inside the latter pair of brackets.
+webconsole.reverseSearch.closeButton.tooltip=ปิด (%S)
+
+# LOCALIZATION NOTE (webconsole.reverseSearch.results):
+# This string is displayed in the reverse search UI when there are at least one result
+# to the search.
+# This is a semi-colon list of plural forms.
+# See: http://developer.mozilla.org/en/docs/Localization_and_Plurals
+# #1 index of current search result displayed.
+# #2 total number of search results.
+webconsole.reverseSearch.results=#1 จาก #2 ผลลัพธ์
+
+# LOCALIZATION NOTE (webconsole.reverseSearch.noResult):
+# This string is displayed in the reverse search UI when there is no results to the search.
+webconsole.reverseSearch.noResult=ไม่มีผลลัพธ์
+
+# LOCALIZATION NOTE (webconsole.reverseSearch.result.previousButton.tooltip):
+# This string is displayed in the tooltip of the "previous result" button in the reverse search toolbar.
+# A keyboard shortcut will be shown inside the latter pair of brackets.
+webconsole.reverseSearch.result.previousButton.tooltip=ผลลัพธ์ก่อนหน้า (%S)
+
+# LOCALIZATION NOTE (webconsole.reverseSearch.result.nextButton.tooltip):
+# This string is displayed in the tooltip of the "next result" button in the reverse search toolbar.
+# A keyboard shortcut will be shown inside the latter pair of brackets.
+webconsole.reverseSearch.result.nextButton.tooltip=ผลลัพธ์ถัดไป (%S)
+
+# LOCALIZATION NOTE (webconsole.confirmDialog.getter.label)
+# Label used for the "invoke getter" confirm dialog that appears in the console when
+# a user tries to autocomplete a property with a getter.
+# Example: given the following object `x = {get y() {}}`, when the user types `x.y.`, it
+# would return "Invoke getter y to retrieve the property list?".
+# Parameters: %S is the name of the getter.
+webconsole.confirmDialog.getter.label=ต้องการเรียก getter %S เพื่อดึงข้อมูลรายการคุณสมบัติหรือไม่?
+
+# LOCALIZATION NOTE (webconsole.confirmDialog.getter.invokeButtonLabelWithShortcut)
+# Label used for the confirm button in the "invoke getter" dialog that appears in the
+# console when a user tries to autocomplete a property with a getter.
+# A keyboard shortcut will be shown inside the latter pair of brackets.
+webconsole.confirmDialog.getter.invokeButtonLabelWithShortcut=เรียก (%S)
+
+# LOCALIZATION NOTE (webconsole.confirmDialog.getter.closeButton.tooltip)
+# Label used as the tooltip for the close button in the "invoke getter" dialog that
+# appears in the console when a user tries to autocomplete a property with a getter.
+# A keyboard shortcut will be shown inside the latter pair of brackets.
+webconsole.confirmDialog.getter.closeButton.tooltip=ปิด (%S)
+
+# LOCALIZATION NOTE (webconsole.cssWarningElements.label)
+# Label for the list of HTML elements matching the selector associated
+# with the CSS warning. Parameters: %S is the CSS selector.
+webconsole.cssWarningElements.label=อิลิเมนต์ที่ตรงกับเครื่องมือเลือก: %S
+
+# LOCALIZATION NOTE (webconsole.message.componentDidCatch.label)
+# Label displayed when the webconsole couldn't handle a given packet.
+# Parameters: %S is the URL to file a bug about the error.
+webconsole.message.componentDidCatch.label=[ข้อผิดพลาดเครื่องมือนักพัฒนา] ขออภัย เราไม่สามารถเรนเดอร์ข้อความได้ ซึ่งปัญหานี้ไม่ควรเกิดขึ้น โปรดรายงานบั๊กที่ %S พร้อมกับข้อมูลเมตาของข้อความในคำอธิบาย
+
+# LOCALIZATION NOTE (webconsole.message.commands.copyValueToClipboard)
+# Label displayed when the string is copied to the clipboard as a result of a copy command,
+# in the console, for example, copy({hello: "world"}).
+webconsole.message.commands.copyValueToClipboard=คัดลอกสตริงไปยังคลิปบอร์ดแล้ว
+
+# LOCALIZATION NOTE (webconsole.message.commands.startTracingToWebConsole)
+# Label displayed when :trace command was executed and the JavaScript tracer started to log to the web console.
+webconsole.message.commands.startTracingToWebConsole=เริ่มการติดตามไปยังคอนโซลเว็บแล้ว
+
+# LOCALIZATION NOTE (webconsole.message.commands.startTracingToStdout)
+# Label displayed when :trace command was executed and the JavaScript tracer started to log to stdout.
+webconsole.message.commands.startTracingToStdout=เริ่มการติดตามไปยัง stdout แล้ว
+
+# LOCALIZATION NOTE (webconsole.message.commands.startTracingToProfiler)
+# Label displayed when :trace command was executed and the JavaScript tracer will open the profiler showing all the traces,
+# but only on stop.
+webconsole.message.commands.startTracingToProfiler=เริ่มการติดตามไปยังตัวสร้างโปรไฟล์แล้ว ร่องรอยการติดตามจะแสดงในตัวสร้างโปรไฟล์เมื่อหยุด
+
+# LOCALIZATION NOTE (webconsole.message.commands.stopTracing)
+# Label displayed when the JavaScript tracer stopped
+webconsole.message.commands.stopTracing=หยุดการติดตามแล้ว
+
+# LOCALIZATION NOTE (webconsole.message.commands.stopTracingWithReason)
+# Label displayed when the JavaScript tracer stopped with a particular reason
+# which isn't user explicit stop request. Can be reaching the max-depth option, or an infinite loop.
+webconsole.message.commands.stopTracingWithReason=หยุดการติดตามแล้ว (เหตุผล: %S)
+
+# LOCALIZATION NOTE (webconsole.error.commands.copyError):
+# the error that is displayed when the "copy" command can't stringify an object
+# "copy" should not be translated, because is a function name.
+# Parameters: %S is the original error message
+webconsole.error.commands.copyError=คำสั่ง `copy` ล้มเหลว ไม่สามารถทำให้วัตถุเป็นสตริงได้: %S
+
+# LOCALIZATION NOTE (webconsole.message.commands.blockedUR)
+# Label displayed when the :block <url> command is successful
+# Parameters: %S is the URL filter
+webconsole.message.commands.blockedURL=คำร้องขอไปยัง URL ที่มี “%S” ถูกปิดกั้นแล้วในตอนนี้
+
+# LOCALIZATION NOTE (webconsole.message.commands.unblockedURL)
+# Label displayed when the :unblock <url> command is successful
+# Parameters: %S is the URL filter
+webconsole.message.commands.unblockedURL=เอาตัวกรองการปิดกั้น “%S” ออกแล้ว
+
+# LOCALIZATION NOTE (webconsole.messages.commands.blockArgMissing)
+# Message displayed when no filter is passed to block/unblock command
+webconsole.messages.commands.blockArgMissing=ไม่ได้ระบุตัวกรองใด
+
+# LOCALIZATION NOTE (webconsole.message.componentDidCatch.copyButton.label)
+# Label displayed on the button next to the message we display when the webconsole
+# couldn't handle a given packet (See webconsole.message.componentDidCatch.label).
+webconsole.message.componentDidCatch.copyButton.label=คัดลอกข้อมูลเมตาของข้อความไปยังคลิปบอร์ด
+
+
+# LOCALIZATION NOTE (webconsole.editor.toolbar.executeButton.label)
+# Label used for the text of the execute button, in the editor toolbar, which is
+# displayed when the editor mode is enabled (devtools.webconsole.input.editor=true).
+webconsole.editor.toolbar.executeButton.label=เรียกใช้
+
+# LOCALIZATION NOTE (webconsole.editor.toolbar.reverseSearchButton.openReverseSearch.tooltip)
+# Label used for the tooltip on the reverse search button for opening the Reverse Search UI.
+# The Reverse Search is a feature that mimics the bash-like reverse search of
+# command history in WebConsole, searching commands from the last item backwards.
+# Parameters: %S is the keyboard shortcut.
+webconsole.editor.toolbar.reverseSearchButton.openReverseSearch.tooltip=เปิดการค้นหาประวัติแบบย้อนกลับ (%S)
+
+# LOCALIZATION NOTE (webconsole.editor.toolbar.reverseSearchButton.closeReverseSearch.tooltip)
+# Label used for the tooltip on the reverse search button for closing the Reverse Search UI.
+# The Reverse Search is a feature that mimics the bash-like reverse search of
+# command history in WebConsole, searching commands from the last item backwards.
+# Parameters: %S is the keyboard shortcut.
+webconsole.editor.toolbar.reverseSearchButton.closeReverseSearch.tooltip=ปิดการค้นหาประวัติแบบย้อนกลับ (%S)
+
+# LOCALIZATION NOTE (webconsole.editor.toolbar.executeButton.tooltip)
+# Label used for the tooltip on the execute button, in the editor toolbar, which is
+# displayed when the editor mode is enabled (devtools.webconsole.input.editor=true).
+# Parameters: %S is the keyboard shortcut.
+webconsole.editor.toolbar.executeButton.tooltip=เรียกใช้นิพจน์ (%S) การดำเนินการนี้จะไม่ล้างข้อมูลที่ป้อน
+
+# LOCALIZATION NOTE (webconsole.editor.toolbar.prettyPrintButton.tooltip)
+# Label used for the tooltip on the prettyPrint button, in the editor toolbar, which is
+# displayed when the editor mode is enabled (devtools.webconsole.input.editor=true).
+webconsole.editor.toolbar.prettyPrintButton.tooltip=Pretty print expression
+
+# LOCALIZATION NOTE (webconsole.editor.toolbar.executeButton.tooltip)
+# Label used for the tooltip on the history previous expression, in the editor toolbar,
+# which is displayed when the editor mode is enabled (devtools.webconsole.input.editor=true).
+webconsole.editor.toolbar.history.prevExpressionButton.tooltip=นิพจน์ก่อนหน้า
+
+
+# LOCALIZATION NOTE (webconsole.editor.toolbar.executeButton.tooltip)
+# Label used for the tooltip on the history next expression, in the editor toolbar,
+# which is displayed when the editor mode is enabled (devtools.webconsole.input.editor=true).
+webconsole.editor.toolbar.history.nextExpressionButton.tooltip=นิพจน์ถัดไป
+
+# LOCALIZATION NOTE (webconsole.editor.toolbar.closeButton.tooltip2)
+# Label used for the tooltip on the close button, in the editor toolbar, which is
+# displayed when the editor mode is enabled (devtools.webconsole.input.editor=true).
+# Parameters: %S is the keyboard shortcut.
+webconsole.editor.toolbar.closeButton.tooltip2=สลับกลับไปยังโหมดอินไลน์ (%S)
+
+# LOCALIZATION NOTE (webconsole.input.openEditorButton.tooltip2)
+# Label used for the tooltip on the open editor button, in console input, which is
+# displayed when the console is in regular mode.
+# Parameters: %S is the keyboard shortcut.
+webconsole.input.openEditorButton.tooltip2=สลับไปยังโหมดตัวแก้ไขแบบหลายบรรทัด (%S)
+
+# LOCALIZATION NOTE (webconsole.warningGroup.messageCount.tooltip): the tooltip text
+# displayed when you hover a warning group badge (i.e. repeated warning messages for a
+# given category, for example Content Blocked messages) in the web console output.
+# This is a semi-colon list of plural forms.
+# See: http://developer.mozilla.org/en/docs/Localization_and_Plurals
+# #1 number of message in the group.
+# example: 3 messages
+webconsole.warningGroup.messageCount.tooltip=#1 ข้อความ
+
+# LOCALIZATION NOTE (webconsole.input.editor.onboarding.label): the text that is displayed
+# when displaying the multiline-input mode for the first time, until the user dismiss the
+# text.
+# Parameters: %1$S is Enter key, %2$S is the shortcut to evaluate the expression (
+# Ctrl+Enter or Cmd+Enter on OSX).
+webconsole.input.editor.onboarding.label=ตรวจทานรหัสของคุณได้เร็วขึ้นด้วยโหมดตัวแก้ไขแบบหลายบรรทัดใหม่ ใช้ %1$S เพื่อเพิ่มบรรทัดใหม่และ %2$S เพื่อเรียกใช้
+
+# LOCALIZATION NOTE (webconsole.input.editor.onboarding.dismiss.label): the text that is
+# displayed in the multiline-input mode onboarding UI to dismiss it.
+webconsole.input.editor.onboarding.dismiss.label=เข้าใจแล้ว!
+
+# LOCALIZATION NOTE (webconsole.enterKey): The text that will be used to represent the
+# Enter key in the editor onboarding UI, as well as on the Editor toolbar "Run" button
+# tooltip.
+webconsole.enterKey=Enter
+
+# LOCALIZATION NOTE (webconsole.input.openJavaScriptFile): This is a label
+# used for opening a file in the console input (Ctrl+O or Cmd+O on OSX while
+# being focused on the input).
+webconsole.input.openJavaScriptFile=เปิดไฟล์ JavaScript
+
+# LOCALIZATION NOTE (webconsole.input.openJavaScriptFileFilter):
+# This string is displayed as a filter when opening a file in the console input.
+webconsole.input.openJavaScriptFileFilter=ไฟล์ JavaScript
+
+# LOCALIZATION NOTE (webconsole.input.selector.top): This is the term used
+# to describe the primary thread of execution in the page
+webconsole.input.selector.top=ด้านบน
+
+# LOCALIZATION NOTE (webconsole.input.selector.tooltip): This is the tooltip
+# shown when users select a thread that they want to evaluate an
+# expression for.
+webconsole.input.selector.tooltip=เลือกบริบทการประเมิน
+
+# LOCALIZATION NOTE (webconsole.group.cookieSameSiteLaxByDefaultEnabled2): do not translate 'SameSite'.
+webconsole.group.cookieSameSiteLaxByDefaultEnabled2=คุกกี้บางส่วนใช้แอตทริบิวต์ “SameSite“ ในทางที่ผิด ดังนั้นคุกกี้เหล่านั้นจะไม่ทำงานอย่างที่คาดคิด
+# LOCALIZATION NOTE (webconsole.group.cookieSameSiteLaxByDefaultDisabled2): do not translate 'SameSite'.
+webconsole.group.cookieSameSiteLaxByDefaultDisabled2=คุกกี้บางส่วนใช้แอตทริบิวต์ “SameSite“ ที่แนะนำในทางที่ผิด
+
+# LOCALIZATION NOTE (webconsole.group.csp): do not translate
+# 'Content-Security-Policy', as that's the name of the header.
+webconsole.group.csp=คำเตือน Content-Security-Policy
diff --git a/l10n-th/devtools/shared/accessibility.properties b/l10n-th/devtools/shared/accessibility.properties
new file mode 100644
index 0000000000..ae78ce075b
--- /dev/null
+++ b/l10n-th/devtools/shared/accessibility.properties
@@ -0,0 +1,142 @@
+# 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 (accessibility.contrast.ratio): A title text for the color contrast
+# ratio description, used by the accessibility highlighter to display the value. %S in the
+# content will be replaced by the contrast ratio numerical value.
+accessibility.contrast.ratio=ความเปรียบต่าง: %S
+
+# LOCALIZATION NOTE (accessibility.contrast.ratio.error): A title text for the color
+# contrast ratio, used when the tool is unable to calculate the contrast ratio value.
+accessibility.contrast.ratio.error=ไม่สามารถคำนวณ
+
+# LOCALIZATION NOTE (accessibility.contrast.ratio.label): A title text for the color
+# contrast ratio description, used together with the actual values.
+accessibility.contrast.ratio.label=ความเปรียบต่าง:
+
+# LOCALIZATION NOTE (accessibility.contrast.ratio.label.large): A title text for the color
+# contrast ratio description that also specifies that the color contrast criteria used is
+# if for large text.
+accessibility.contrast.ratio.label.large=ความเปรียบต่าง (ข้อความขนาดใหญ่):
+
+# LOCALIZATION NOTE (accessibility.text.label.issue.area): A title text that
+# describes that currently selected accessible object for an <area> element must have
+# its name provided via the alt attribute.
+accessibility.text.label.issue.area = ใช้แอตทริบิวต์ “alt” เพื่อกำหนดป้ายกำกับให้กับอิลิเมนต์ “area” ที่มีแอตทริบิวต์ “href”
+
+# LOCALIZATION NOTE (accessibility.text.label.issue.dialog): A title text that
+# describes that currently selected accessible object for a dialog should have a name
+# provided.
+accessibility.text.label.issue.dialog = กล่องโต้ตอบควรมีป้ายกำกับ
+
+# LOCALIZATION NOTE (accessibility.text.label.issue.document.title): A title text that
+# describes that currently selected accessible object for a document must have a name
+# provided via title.
+accessibility.text.label.issue.document.title = เอกสารต้องมีชื่อเรื่อง
+
+# LOCALIZATION NOTE (accessibility.text.label.issue.embed): A title text that
+# describes that currently selected accessible object for an <embed> must have a name
+# provided.
+accessibility.text.label.issue.embed = เนื้อหาที่ฝังต้องมีป้ายกำกับ
+
+# LOCALIZATION NOTE (accessibility.text.label.issue.figure): A title text that
+# describes that currently selected accessible object for a figure should have a name
+# provided.
+accessibility.text.label.issue.figure = รูปภาพที่มีคำอธิบายภาพเพิ่มเติมควรมีป้ายกำกับ
+
+# LOCALIZATION NOTE (accessibility.text.label.issue.fieldset): A title text that
+# describes that currently selected accessible object for a <fieldset> must have a name
+# provided.
+accessibility.text.label.issue.fieldset = อิลิเมนต์ “fieldset” ต้องมีป้ายกำกับ
+
+# LOCALIZATION NOTE (accessibility.text.label.issue.fieldset.legend2): A title text that
+# describes that currently selected accessible object for a <fieldset> must have a name
+# provided via <legend> element.
+accessibility.text.label.issue.fieldset.legend2 = ใช้อิลิเมนต์ “legend” เพื่อกำหนดป้ายกำกับให้กับ “fieldset”
+
+# LOCALIZATION NOTE (accessibility.text.label.issue.form): A title text that
+# describes that currently selected accessible object for a form element must have a name
+# provided.
+accessibility.text.label.issue.form = อิลิเมนต์แบบฟอร์มต้องมีป้ายกำกับ
+
+# LOCALIZATION NOTE (accessibility.text.label.issue.form.visible): A title text that
+# describes that currently selected accessible object for a form element should have a name
+# provided via a visible label/element.
+accessibility.text.label.issue.form.visible = อิลิเมนต์แบบฟอร์มควรมีป้ายกำกับข้อความแบบมองเห็นได้
+
+# LOCALIZATION NOTE (accessibility.text.label.issue.frame): A title text that
+# describes that currently selected accessible object for a <frame> must have a name
+# provided.
+accessibility.text.label.issue.frame = อิลิเมนต์ “frame” ต้องมีป้ายกำกับ
+
+# LOCALIZATION NOTE (accessibility.text.label.issue.glyph): A title text that
+# describes that currently selected accessible object for a <mglyph> must have a name
+# provided via alt attribute.
+accessibility.text.label.issue.glyph = ใช้แอตทริบิวต์ “alt” เพื่อกำหนดป้ายกำกับให้กับอิลิเมนต์ “mglyph”
+
+# LOCALIZATION NOTE (accessibility.text.label.issue.heading): A title text that
+# describes that currently selected accessible object for a heading must have a name
+# provided.
+accessibility.text.label.issue.heading = หัวเรื่องต้องมีป้ายกำกับ
+
+# LOCALIZATION NOTE (accessibility.text.label.issue.heading.content): A title text that
+# describes that currently selected accessible object for a heading must have visible
+# content.
+accessibility.text.label.issue.heading.content = หัวเรื่องควรมีบริบทข้อความที่มองเห็นได้
+
+# LOCALIZATION NOTE (accessibility.text.label.issue.iframe): A title text that
+# describes that currently selected accessible object for an <iframe> have a name
+# provided via title attribute.
+accessibility.text.label.issue.iframe = ใช้แอตทริบิวต์ “title” เพื่ออธิบายเนื้อหา “iframe”
+
+# LOCALIZATION NOTE (accessibility.text.label.issue.image): A title text that
+# describes that currently selected accessible object for graphical content must have a
+# name provided.
+accessibility.text.label.issue.image = เนื้อหาที่มีภาพต้องมีป้ายกำกับ
+
+# LOCALIZATION NOTE (accessibility.text.label.issue.interactive): A title text that
+# describes that currently selected accessible object for interactive element must have a
+# name provided.
+accessibility.text.label.issue.interactive = อิลิเมนต์แบบโต้ตอบต้องมีป้ายกำกับ
+
+# LOCALIZATION NOTE (accessibility.text.label.issue.optgroup.label2): A title text that
+# describes that currently selected accessible object for an <optgroup> must have a
+# name provided via label attribute.
+accessibility.text.label.issue.optgroup.label2 = ใช้แอตทริบิวต์ “label” เพื่อกำหนดป้ายกำกับให้กับ “optgroup”
+
+# LOCALIZATION NOTE (accessibility.text.label.issue.toolbar): A title text that
+# describes that currently selected accessible object for a toolbar must have a
+# name provided when there is more than one toolbar in the document.
+accessibility.text.label.issue.toolbar = แถบเครื่องมือต้องมีป้ายกำกับเมื่อมีแถบเครื่องมือมากกว่าหนึ่งแถบ
+
+# LOCALIZATION NOTE (accessibility.keyboard.issue.semantics): A title text that
+# describes that currently selected accessible object is focusable and should
+# indicate that it could be interacted with.
+accessibility.keyboard.issue.semantics=อิลิเมนต์แบบโฟกัสได้ควรมีการสื่อความหมายเชิงโต้ตอบ
+
+# LOCALIZATION NOTE (accessibility.keyboard.issue.tabindex): A title text that
+# describes that currently selected accessible object has a corresponding
+# DOMNode that defines a tabindex attribute greater that 0 which can result in
+# unexpected behaviour when navigating with keyboard.
+accessibility.keyboard.issue.tabindex=หลีกเลี่ยงการใช้แอตทริบิวต์ “tabindex” ที่มีค่ามากกว่าศูนย์
+
+# LOCALIZATION NOTE (accessibility.keyboard.issue.action): A title text that
+# describes that currently selected accessible object is interactive but can not
+# be activated using keyboard or accessibility API.
+accessibility.keyboard.issue.action=อิลิเมนต์แบบโต้ตอบต้องสามารถเรียกใช้งานโดยใช้แป้นพิมพ์ได้
+
+# LOCALIZATION NOTE (accessibility.keyboard.issue.focusable): A title text that
+# describes that currently selected accessible object is interactive but is not
+# focusable with a keyboard.
+accessibility.keyboard.issue.focusable=อิลิเมนต์แบบโต้ตอบต้องสามารถโฟกัสได้
+
+# LOCALIZATION NOTE (accessibility.keyboard.issue.focus.visible): A title text
+# that describes that currently selected accessible object is focusable but
+# might not have appropriate focus styling.
+accessibility.keyboard.issue.focus.visible=อิลิเมนต์แบบโฟกัสได้อาจขาดการกำหนดสไตล์สำหรับการโฟกัส
+
+# LOCALIZATION NOTE (accessibility.keyboard.issue.mouse.only): A title text that
+# describes that currently selected accessible object is not focusable and not
+# semantic but can be activated via mouse (e.g. has click handler).
+accessibility.keyboard.issue.mouse.only=อิลิเมนต์แบบคลิกได้ต้องสามารถโฟกัสได้และควรมีการสื่อความหมายเชิงโต้ตอบ
diff --git a/l10n-th/devtools/shared/debugger-paused-reasons.ftl b/l10n-th/devtools/shared/debugger-paused-reasons.ftl
new file mode 100644
index 0000000000..d92c6fb6f9
--- /dev/null
+++ b/l10n-th/devtools/shared/debugger-paused-reasons.ftl
@@ -0,0 +1,87 @@
+# 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/.
+
+
+### These strings are used inside the Debugger which is available from the Web
+### Developer sub-menu -> 'Debugger', as well as in the "Paused Debugger
+### Overlay" that is displayed in the content page when it pauses.
+
+
+### The correct localization of this file might be to keep it in
+### English, or another language commonly spoken among web developers.
+### You want to make that choice consistent across the developer tools.
+### A good criteria is the language in which you'd find the best
+### documentation on web development on the web.
+
+# The text that is displayed in a info block explaining how the debugger is
+# currently paused due to a `debugger` statement in the code
+whypaused-debugger-statement = ถูกหยุดชั่วคราวจากคำสั่งของตัวดีบั๊ก
+
+# The text that is displayed in a info block explaining how the debugger is
+# currently paused on a breakpoint
+whypaused-breakpoint = ถูกหยุดชั่วคราวจากจุดพัก
+
+# The text that is displayed in a info block explaining how the debugger is
+# currently paused on an event breakpoint.
+whypaused-event-breakpoint = ถูกหยุดชั่วคราวบนจุดพักเหตุการณ์
+
+# The text that is displayed in a info block explaining how the debugger is
+# currently paused on an exception
+whypaused-exception = ถูกหยุดชั่วคราวจากข้อยกเว้น
+
+# The text that is displayed in a info block explaining how the debugger is
+# currently paused on a DOM mutation breakpoint
+whypaused-mutation-breakpoint = พักเมื่อ DOM mutation
+
+# The text that is displayed to describe an added node which triggers a subtree
+# modification
+whypaused-mutation-breakpoint-added = เพิ่มแล้ว:
+
+# The text that is displayed to describe a removed node which triggers a subtree
+# modification
+whypaused-mutation-breakpoint-removed = เอาออกแล้ว:
+
+# The text that is displayed in a info block explaining how the debugger is
+# currently paused at a JS execution
+whypaused-interrupted = หยุดชั่วคราวเมื่อเรียกใช้งาน
+
+# The text that is displayed in a info block explaining how the debugger is
+# currently paused while stepping in or out of the stack
+whypaused-resume-limit = ถูกหยุดชั่วคราวขณะการก้าว
+
+# The text that is displayed in a info block explaining how the debugger is
+# currently paused on a dom event
+whypaused-pause-on-dom-events = ถูกหยุดชั่วคราวจากตัวเฝ้าดูเหตุการณ์
+
+# The text that is displayed in an info block when evaluating a conditional
+# breakpoint throws an error
+whypaused-breakpoint-condition-thrown = เกิดข้อผิดพลาดกับจุดพักแบบมีเงื่อนไข
+
+# The text that is displayed in a info block explaining how the debugger is
+# currently paused on an xml http request
+whypaused-xhr = ถูกพักเนื่องจาก XMLHttpRequest
+
+# The text that is displayed in a info block explaining how the debugger is
+# currently paused on a promise rejection
+whypaused-promise-rejection = ถูกหยุดชั่วคราวจากการปฏิเสธ promise
+
+# The text that is displayed in a info block explaining how the debugger is
+# currently paused at a watchpoint on an object property
+whypaused-get-watchpoint = ถูกพักเนื่องจากมีการรับคุณสมบัติ
+
+# The text that is displayed in an info block explaining how the debugger is
+# currently paused at a watchpoint on an object property
+whypaused-set-watchpoint = ถูกพักเนื่องจากมีการตั้งคุณสมบัติ
+
+# The text that is displayed in a info block explaining how the debugger is
+# currently paused on an assert
+whypaused-assert = ถูกหยุดชั่วคราวจากการตรวจสอบเงื่อนไข
+
+# The text that is displayed in a info block explaining how the debugger is
+# currently paused on a debugger statement
+whypaused-debug-command = ถูกหยุดชั่วคราวจากฟังก์ชันที่ถูกดีบั๊ก
+
+# The text that is displayed in a info block explaining how the debugger is
+# currently paused on an event listener breakpoint set
+whypaused-other = ตัวดีบั๊กถูกหยุดชั่วคราว
diff --git a/l10n-th/devtools/shared/debugger.properties b/l10n-th/devtools/shared/debugger.properties
new file mode 100644
index 0000000000..6201a4075e
--- /dev/null
+++ b/l10n-th/devtools/shared/debugger.properties
@@ -0,0 +1,67 @@
+# 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 These strings are used inside the Debugger
+# which is available from the Web Developer sub-menu -> 'Debugger'.
+# The correct localization of this file might be to keep it in
+# English, or another language commonly spoken among web developers.
+# You want to make that choice consistent across the developer tools.
+# A good criteria is the language in which you'd find the best
+# documentation on web development on the web.
+
+# LOCALIZATION NOTE These strings are used inside the Debugger
+# which is available from the Browser Tools sub-menu -> 'Debugger'.
+# The correct localization of this file might be to keep it in
+# English, or another language commonly spoken among web developers.
+# You want to make that choice consistent across the developer tools.
+# A good criteria is the language in which you'd find the best
+# documentation on web development on the web.
+
+# LOCALIZATION NOTE (remoteIncomingPromptTitle): The title displayed on the
+# dialog that prompts the user to allow the incoming connection.
+remoteIncomingPromptTitle=การเชื่อมต่อขาเข้า
+
+# LOCALIZATION NOTE (remoteIncomingPromptHeader): Header displayed on the
+# dialog that prompts the user to allow the incoming connection.
+remoteIncomingPromptHeader=ตรวจพบคำขอขาเข้าที่จะอนุญาตการเชื่อมต่อการดีบั๊กระยะไกล ไคลเอ็นต์ระยะไกลสามารถควบคุมเบราว์เซอร์ของคุณได้อย่างสมบูรณ์!
+# LOCALIZATION NOTE (remoteIncomingPromptClientEndpoint): Part of the prompt
+# dialog for the user to choose whether an incoming connection should be
+# allowed.
+# %1$S: The host and port of the client such as "127.0.0.1:6000"
+remoteIncomingPromptClientEndpoint=ปลายทางของไคลเอ็นต์: %1$S
+# LOCALIZATION NOTE (remoteIncomingPromptServerEndpoint): Part of the prompt
+# dialog for the user to choose whether an incoming connection should be
+# allowed.
+# %1$S: The host and port of the server such as "127.0.0.1:6000"
+remoteIncomingPromptServerEndpoint=ปลายทางของเซิร์ฟเวอร์: %1$S
+# LOCALIZATION NOTE (remoteIncomingPromptFooter): Footer displayed on the
+# dialog that prompts the user to allow the incoming connection.
+remoteIncomingPromptFooter=อนุญาตการเชื่อมต่อ?
+
+# LOCALIZATION NOTE (remoteIncomingPromptDisable): The label displayed on the
+# third button in the incoming connection dialog that lets the user disable the
+# remote debugger server.
+remoteIncomingPromptDisable=ปิดใช้งาน
+
+# LOCALIZATION NOTE (clientSendOOBTitle): The title displayed on the dialog that
+# instructs the user to transfer an authentication token to the server.
+clientSendOOBTitle=การระบุไคลเอนต์
+# LOCALIZATION NOTE (clientSendOOBHeader): Header displayed on the dialog that
+# instructs the user to transfer an authentication token to the server.
+clientSendOOBHeader=ปลายทางที่คุณกำลังเชื่อมต่อต้องการข้อมูลเพิ่มเติมเพื่อรับรองความถูกต้องของการเชื่อมต่อนี้ โปรดระบุโทเค็นด้านล่างในพรอมต์ที่ปรากฏในส่วนอื่น ๆ
+# LOCALIZATION NOTE (clientSendOOBHash): Part of the dialog that instructs the
+# user to transfer an authentication token to the server.
+# %1$S: The client's cert fingerprint
+clientSendOOBHash=ใบรับรองของฉัน: %1$S
+# LOCALIZATION NOTE (clientSendOOBToken): Part of the dialog that instructs the
+# user to transfer an authentication token to the server.
+# %1$S: The authentication token that the user will transfer.
+clientSendOOBToken=โทเค็น: %1$S
+
+# LOCALIZATION NOTE (serverReceiveOOBTitle): The title displayed on the dialog
+# that instructs the user to provide an authentication token from the client.
+serverReceiveOOBTitle=ระบุโทเค็นไคลเอนต์
+# LOCALIZATION NOTE (serverReceiveOOBBody): Main text displayed on the dialog
+# that instructs the user to provide an authentication token from the client.
+serverReceiveOOBBody=ไคลเอ็นต์ควรแสดงค่าโทเค็น ป้อนค่าโทเค็นที่นี่เพื่อทำการรับรองความถูกต้องกับไคลเอ็นต์นี้
diff --git a/l10n-th/devtools/shared/eyedropper.properties b/l10n-th/devtools/shared/eyedropper.properties
new file mode 100644
index 0000000000..6ce08356e0
--- /dev/null
+++ b/l10n-th/devtools/shared/eyedropper.properties
@@ -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/.
+
+# LOCALIZATION NOTE These strings are used in the Eyedropper color tool.
+# LOCALIZATION NOTE The correct localization of this file might be to keep it
+# in English, or another language commonly spoken among web developers.
+# You want to make that choice consistent across the developer tools.
+# A good criteria is the language in which you'd find the best documentation
+# on web development on the web.
+
+# LOCALIZATION NOTE (colorValue.copied): This text is displayed when the user selects a
+# color with the eyedropper and it's copied to the clipboard.
+colorValue.copied=คัดลอกแล้ว
diff --git a/l10n-th/devtools/shared/highlighters.ftl b/l10n-th/devtools/shared/highlighters.ftl
new file mode 100644
index 0000000000..6f3dcd5df3
--- /dev/null
+++ b/l10n-th/devtools/shared/highlighters.ftl
@@ -0,0 +1,55 @@
+# 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 file contains strings used in highlighters.
+### Highlighters are visualizations that DevTools draws on top of content to aid
+### in understanding content sizing, etc.
+
+# The row and column position of a grid cell shown in the grid cell infobar when hovering
+# over the CSS grid outline.
+# Variables
+# $row (integer) - The row index
+# $column (integer) - The column index
+grid-row-column-positions = แถว { $row } / คอลัมน์ { $column }
+# The layout type of an element shown in the infobar when hovering over a DOM element and
+# it is a grid container.
+gridtype-container = ตัวบรรจุ Grid
+# The layout type of an element shown in the infobar when hovering over a DOM element and
+# it is a grid item.
+gridtype-item = รายการ Grid
+# The layout type of an element shown in the infobar when hovering over a DOM element and
+# it is both a grid container and a grid item.
+gridtype-dual = ตัวบรรจุ/รายการ Grid
+# The layout type of an element shown in the infobar when hovering over a DOM element and
+# it is a flex container.
+flextype-container = ตัวบรรจุ Flex
+# The layout type of an element shown in the infobar when hovering over a DOM element and
+# it is a flex item.
+flextype-item = รายการ Flex
+# The layout type of an element shown in the infobar when hovering over a DOM element and
+# it is both a flex container and a flex item.
+flextype-dual = ตัวบรรจุ/รายการ Flex
+# The message displayed in the content page when the user clicks on the
+# "Pick an element from the page" in about:devtools-toolbox inspector panel, when
+# debugging a remote page.
+# Variables
+# $action (string) - Will either be remote-node-picker-notice-action-desktop or
+# remote-node-picker-notice-action-touch
+remote-node-picker-notice = เปิดใช้งานตัวเลือกโหนด DevTools แล้ว { $action }
+# Text displayed in `remote-node-picker-notice`, when the remote page is on desktop
+remote-node-picker-notice-action-desktop = คลิกอิลิเมนต์เพื่อเลือกในตัวตรวจสอบ
+# Text displayed in `remote-node-picker-notice`, when the remote page is on Android
+remote-node-picker-notice-action-touch = แตะอิลิเมนต์เพื่อเลือกในตัวตรวจสอบ
+# The text displayed in the button that is in the notice in the content page when the user
+# clicks on the "Pick an element from the page" in about:devtools-toolbox inspector panel,
+# when debugging a remote page.
+remote-node-picker-notice-hide-button = ซ่อน
+# The text displayed in a toolbox notification message which is only displayed
+# if prefers-reduced-motion is enabled (via OS-level settings or by using the
+# ui.prefersReducedMotion=1 preference).
+simple-highlighters-message = เมื่อเปิดใช้ prefers-reduced-motion แล้ว ก็จะสามารถเปิดใช้ตัวเน้นสีจากในแผงการตั้งค่า เพื่อป้องกันการเปลี่ยนไปมาของสีได้
+# Text displayed in a button inside the "simple-highlighters-message" toolbox
+# notification. "Settings" here refers to the DevTools settings panel.
+simple-highlighters-settings-button = เปิดการตั้งค่า
diff --git a/l10n-th/devtools/shared/screenshot.properties b/l10n-th/devtools/shared/screenshot.properties
new file mode 100644
index 0000000000..12da2a6cf4
--- /dev/null
+++ b/l10n-th/devtools/shared/screenshot.properties
@@ -0,0 +1,138 @@
+# 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 These strings are used inside the Web Console commands
+# which can be executed in the Developer Tools, available in the
+# Browser Tools sub-menu -> 'Web Developer Tools'
+#
+# The correct localization of this file might be to keep it in
+# English, or another language commonly spoken among web developers.
+# You want to make that choice consistent across the developer tools.
+# A good criteria is the language in which you'd find the best
+# documentation on web development on the web.
+
+# LOCALIZATION NOTE (screenshotDesc) A very short description of the
+# 'screenshot' command. Displayed when the --help flag is passed to
+# the screenshot command.
+screenshotDesc=บันทึกภาพของหน้า
+
+# LOCALIZATION NOTE (screenshotFilenameDesc) A very short string to describe
+# the 'filename' parameter to the 'screenshot' command. Displayed when the
+# --help flag is passed to the screenshot command.
+screenshotFilenameDesc=ชื่อไฟล์ปลายทาง
+
+# LOCALIZATION NOTE (screenshotFilenameManual) A fuller description of the
+# 'filename' parameter to the 'screenshot' command.
+screenshotFilenameManual=ชื่อไฟล์ (ควรมีนามสกุลเป็น '.png') ที่จะบันทึกภาพหน้าจอ
+
+# LOCALIZATION NOTE (screenshotClipboardDesc) A very short string to describe
+# the 'clipboard' parameter to the 'screenshot' command. Displayed when the
+# --help flag is passed to the screenshot command.
+screenshotClipboardDesc=คัดลอกภาพหน้าจอไปยังคลิปบอร์ด? (true/false)
+
+# LOCALIZATION NOTE (screenshotClipboardManual) A fuller description of the
+# 'clipboard' parameter to the 'screenshot' command. Displayed when the
+# --help flag is passed to the screenshot command.
+screenshotClipboardManual=ตั้งเป็น True ถ้าคุณต้องการคัดลอกภาพหน้าจอแทนการบันทึกไปยังไฟล์
+
+# LOCALIZATION NOTE (screenshotGroupOptions) A label for the optional options of
+# the screenshot command. Displayed when the --help flag is passed to the
+# screenshot command.
+screenshotGroupOptions=ตัวเลือก
+
+# LOCALIZATION NOTE (screenshotDelayDesc) A very short string to describe
+# the 'delay' parameter to the 'screenshot' command. Displayed when the
+# --help flag is passed to the screenshot command.
+screenshotDelayDesc=หน่วงเวลา (วินาที)
+
+# LOCALIZATION NOTE (screenshotDelayManual) A fuller description of the
+# 'delay' parameter to the 'screenshot' command. Displayed when the
+# --help flag is passed to the screenshot command.
+screenshotDelayManual=เวลาที่หน่วง (หน่วยเป็นวินาที) ก่อนที่จะถ่ายภาพหน้าจอ
+
+# LOCALIZATION NOTE (screenshotDPRDesc) A very short string to describe
+# the 'dpr' parameter to the 'screenshot' command. Displayed when the
+# --help flag is passed to the `screenshot command.
+screenshotDPRDesc=อัตราส่วนพิกเซลของอุปกรณ์
+
+# LOCALIZATION NOTE (screenshotDPRManual) A fuller description of the
+# 'dpr' parameter to the 'screenshot' command. Displayed when the
+# --help flag is passed to the `screenshot command.
+screenshotDPRManual=อัตราส่วนพิกเซลของอุปกรณ์ที่จะใช้เมื่อจับภาพหน้าจอ
+
+# LOCALIZATION NOTE (screenshotFullPageDesc) A very short string to describe
+# the 'fullpage' parameter to the 'screenshot' command. Displayed when the
+# --help flag is passed to the `screenshot command.
+screenshotFullPageDesc=ทั้งหน้าเว็บ? (true/false)
+
+# LOCALIZATION NOTE (screenshotFullPageManual) A fuller description of the
+# 'fullpage' parameter to the 'screenshot' command. Displayed when the
+# --help flag is passed to the `screenshot command.
+screenshotFullPageManual=ตั้งเป็น True ถ้าจะถ่ายภาพหน้าจอโดยรวมเอาส่วนของหน้าเว็บที่อยู่เลยขอบเขตการเลื่อนหน้าจอปัจจุบันไว้ด้วย
+
+# LOCALIZATION NOTE (screenshotFileDesc) A very short string to describe
+# the 'file' parameter to the 'screenshot' command. Displayed when the
+# --help flag is passed to the `screenshot command.
+screenshotFileDesc=บันทึกเป็นไฟล์? (true/false)
+
+# LOCALIZATION NOTE (screenshotFileManual) A fuller description of the
+# 'file' parameter to the 'screenshot' command. Displayed when the
+# --help flag is passed to the `screenshot command.
+screenshotFileManual=ตั้งเป็น True หากคุณต้องการให้บันทึกภาพหน้าจอเป็นไฟล์เมื่อตัวเลือกอื่นถูกเปิดใช้งาน (ตัวอย่างเช่น คลิปบอร์ด)
+
+# LOCALIZATION NOTE (screenshotGeneratedFilename) The auto generated filename
+# when no file name is provided. The first argument (%1$S) is the date string
+# in yyyy-mm-dd format and the second argument (%2$S) is the time string
+# in HH.MM.SS format. Please don't add the extension here.
+screenshotGeneratedFilename=ภาพหน้าจอเมื่อ %1$S ณ เวลา %2$S
+
+# LOCALIZATION NOTE (screenshotErrorSavingToFile) Text displayed to user upon
+# encountering error while saving the screenshot to the file specified.
+# The argument (%1$S) is the filename.
+screenshotErrorSavingToFile=เกิดข้อผิดพลาดในการบันทึกเป็น %1$S
+
+# LOCALIZATION NOTE (screenshotSavedToFile) Text displayed to user when the
+# screenshot is successfully saved to the file specified.
+# The argument (%1$S) is the filename.
+screenshotSavedToFile=บันทึกเป็น %1$S แล้ว
+
+# LOCALIZATION NOTE (screenshotErrorCopying) Text displayed to user upon
+# encountering error while copying the screenshot to clipboard.
+screenshotErrorCopying=เกิดข้อผิดพลาดขณะคัดลอกภาพหน้าจอไปยังคลิปบอร์ด
+
+# LOCALIZATION NOTE (screenshotCopied) Text displayed to user when the
+# screenshot is successfully copied to the clipboard.
+screenshotCopied=คัดลอกภาพหน้าจอไปยังคลิปบอร์ดแล้ว
+
+# LOCALIZATION NOTE (inspectNodeDesc) A very short string to describe the
+# 'node' parameter to the 'inspect' command. Displayed when the
+# --help flag is passed to the `screenshot command.
+inspectNodeDesc=ตัวเลือก CSS
+
+# LOCALIZATION NOTE (inspectNodeManual) A fuller description of the 'node'
+# parameter to the 'inspect' command. Displayed when the --help flag is
+# passed to the `screenshot command.
+inspectNodeManual=เครื่องมือเลือก CSS สำหรับใช้กับ Document.querySelector เพื่อระบุอิลิเมนต์ตัวเดียว
+
+# LOCALIZATION NOTE (screenshotTruncationWarning) Text displayed to user when the image
+# that would be created by the screenshot is too big and needs to be truncated to avoid
+# errors.
+# The first parameter is the width of the final image and the second parameter is the
+# height of the image.
+screenshotTruncationWarning=ภาพถูกตัดออกเป็น %1$S×%2$S เนื่องจากภาพที่ได้มีขนาดใหญ่เกินไป
+
+# LOCALIZATION NOTE (screenshotDPRDecreasedWarning2) Text displayed to user when
+# taking the screenshot initially failed. When the Device Pixel Ratio is larger
+# than 1.0 a second try immediately after displaying this message is attempted.
+screenshotDPRDecreasedWarning=อัตราส่วนพิกเซลของอุปกรณ์ถูกลดลงเป็น 1 เนื่องจากภาพที่ได้มีขนาดใหญ่เกินไป
+
+# LOCALIZATION NOTE (screenshotRenderingError) Text displayed to user upon
+# encountering an error while rendering the screenshot. This most often happens when the
+# resulting image is too large to be rendered.
+screenshotRenderingError=เกิดข้อผิดพลาดในการสร้างภาพ ภาพที่ได้อาจมีขนาดใหญ่เกินไป
+
+# LOCALIZATION NOTE (screenshotNoSelectorMatchWarning) Text displayed to user when the
+# provided selector for the screenshot does not match any element on the page.
+# The argument (%1$S) is selector.
+screenshotNoSelectorMatchWarning=เครื่องมือเลือก ‘%S’ ไม่ตรงกับอิลิเมนต์ใดบนหน้า
diff --git a/l10n-th/devtools/shared/shared.properties b/l10n-th/devtools/shared/shared.properties
new file mode 100644
index 0000000000..0978450dee
--- /dev/null
+++ b/l10n-th/devtools/shared/shared.properties
@@ -0,0 +1,6 @@
+# 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 (ellipsis): The ellipsis (three dots) character
+ellipsis=…
diff --git a/l10n-th/devtools/shared/styleinspector.properties b/l10n-th/devtools/shared/styleinspector.properties
new file mode 100644
index 0000000000..6e8976814c
--- /dev/null
+++ b/l10n-th/devtools/shared/styleinspector.properties
@@ -0,0 +1,267 @@
+# 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 These strings are used inside the Style Inspector.
+#
+# The correct localization of this file might be to keep it in
+# English, or another language commonly spoken among web developers.
+# You want to make that choice consistent across the developer tools.
+# A good criteria is the language in which you'd find the best
+# documentation on web development on the web.
+
+
+# LOCALIZATION NOTE (rule.status): For each style property the panel shows
+# the rules which hold that specific property. For every rule, the rule status
+# is also displayed: a rule can be the best match, a match, a parent match, or a
+# rule did not match the element the user has highlighted.
+rule.status.BEST=ตรงกันมากที่สุด
+rule.status.MATCHED=ตรงกัน
+rule.status.PARENT_MATCH=ตรงกันกับรายการหลัก
+
+# LOCALIZATION NOTE (rule.sourceElement, rule.sourceInline,
+# rule.sourceConstructed): For each style property the panel shows the rules
+# which hold that specific property.
+# For every rule, the rule source is also displayed: a rule can come from a
+# file, from the same page (inline), from a constructed style sheet
+# (constructed), or from the element itself (element).
+rule.sourceInline=อินไลน์
+rule.sourceConstructed=สร้างขึ้น
+rule.sourceElement=อิลิเมนต์
+
+# LOCALIZATION NOTE (rule.inheritedFrom): Shown for CSS rules
+# that were inherited from a parent node. Will be passed a node
+# identifier of the parent node.
+# e.g "Inherited from body#bodyID"
+rule.inheritedFrom=สืบทอดจาก %S
+
+# LOCALIZATION NOTE (rule.keyframe): Shown for CSS Rules keyframe header.
+# Will be passed an identifier of the keyframe animation name.
+rule.keyframe=คีย์เฟรม %S
+
+# LOCALIZATION NOTE (rule.userAgentStyles): Shown next to the style sheet
+# link for CSS rules that were loaded from a user agent style sheet.
+# These styles will not be editable, and will only be visible if the
+# devtools.inspector.showUserAgentStyles pref is true.
+rule.userAgentStyles=(ตัวแทนผู้ใช้)
+
+# LOCALIZATION NOTE (rule.pseudoElement): Shown for CSS rules
+# pseudo element header
+rule.pseudoElement=อิลิเมนต์แฝง
+
+# LOCALIZATION NOTE (rule.selectedElement): Shown for CSS rules element header if
+# pseudo elements are present in the rule view.
+rule.selectedElement=อิลิเมนต์นี้
+
+# LOCALIZATION NOTE (rule.warning.title): When an invalid property value is
+# entered into the rule view a warning icon is displayed. This text is used for
+# the title attribute of the warning icon.
+rule.warning.title=ค่าคุณสมบัติไม่ถูกต้อง
+
+# LOCALIZATION NOTE (rule.warningName.title): When an invalid property name is
+# entered into the rule view a warning icon is displayed. This text is used for
+# the title attribute of the warning icon.
+rule.warningName.title=ชื่อคุณสมบัติไม่ถูกต้อง
+
+# LOCALIZATION NOTE (rule.filterProperty.title): Text displayed in the tooltip
+# of the search button that is shown next to a property that has been overridden
+# in the rule view.
+rule.filterProperty.title=กฎตัวกรองที่มีคุณสมบัตินี้
+
+# LOCALIZATION NOTE (rule.empty): Text displayed when the highlighter is
+# first opened and there's no node selected in the rule view.
+rule.empty=ไม่มีอิลิเมนต์ถูกเลือก
+
+# LOCALIZATION NOTE (rule.variableValue): Text displayed in a tooltip
+# when the mouse is over a variable use (like "var(--something)") in
+# the rule view. The first argument is the variable name and the
+# second argument is the value.
+rule.variableValue=%S = %S
+
+# LOCALIZATION NOTE (rule.variableUnset): Text displayed in a tooltip
+# when the mouse is over a variable use (like "var(--something)"),
+# where the variable is not set. the rule view. The argument is the
+# variable name.
+rule.variableUnset=%S ไม่ได้ถูกเตรียมไว้
+
+# LOCALIZATION NOTE (rule.selectorHighlighter.tooltip): Text displayed in a
+# tooltip when the mouse is over a selector highlighter icon in the rule view.
+rule.selectorHighlighter.tooltip=เน้นอิลิเมนต์ทั้งหมดที่ตรงกับตัวเลือกนี้
+
+# LOCALIZATION NOTE (rule.colorSwatch.tooltip): Text displayed in a tooltip
+# when the mouse is over a color swatch in the rule view.
+rule.colorSwatch.tooltip=คลิกเพื่อเปิดตัวเลือกสี กดแป้น Shift+คลิกเพื่อเปลี่ยนรูปแบบสี
+
+# LOCALIZATION NOTE (rule.bezierSwatch.tooltip): Text displayed in a tooltip
+# when the mouse is over a cubic-bezier swatch in the rule view.
+rule.bezierSwatch.tooltip=คลิกเพื่อเปิดตัวแก้ไขฟังก์ชันการตั้งเวลา
+
+# LOCALIZATION NOTE (rule.filterSwatch.tooltip): Text displayed in a tooltip
+# when the mouse is over a filter swatch in the rule view.
+rule.filterSwatch.tooltip=คลิกเพื่อเปิดตัวแก้ไขตัวกรอง
+
+# LOCALIZATION NOTE (rule.angleSwatch.tooltip): Text displayed in a tooltip
+# when the mouse is over a angle swatch in the rule view.
+rule.angleSwatch.tooltip=กดแป้น Shift+คลิกเพื่อเปลี่ยนรูปแบบมุม
+
+# LOCALIZATION NOTE (rule.flexToggle.tooltip): Text displayed in a tooltip
+# when the mouse is over a Flexbox toggle icon in the rule view.
+rule.flexToggle.tooltip=คลิกเพื่อเปิด/ปิดตัวเน้น Flexbox
+
+# LOCALIZATION NOTE (rule.gridToggle.tooltip): Text displayed in a tooltip
+# when the mouse is over a CSS Grid toggle icon in the rule view.
+rule.gridToggle.tooltip=คลิกเพื่อเปิด/ปิดตัวเน้นเส้นตาราง CSS
+
+# LOCALIZATION NOTE (rule.filterStyles.placeholder): This is the placeholder that
+# goes in the search box when no search term has been entered.
+rule.filterStyles.placeholder=กรองสไตล์
+
+# LOCALIZATION NOTE (rule.addRule.tooltip): This is the tooltip shown when
+# hovering the `Add new rule` button in the rules view toolbar.
+rule.addRule.tooltip=เพิ่มกฎใหม่
+
+# LOCALIZATION NOTE (rule.togglePseudo.tooltip): This is the tooltip
+# shown when hovering over the `Toggle Pseudo Class Panel` button in the
+# rule view toolbar.
+rule.togglePseudo.tooltip=เปิด/ปิดคลาสแฝง
+
+# LOCALIZATION NOTE (rule.classPanel.toggleClass.tooltip): This is the tooltip
+# shown when hovering over the `Toggle Class Panel` button in the
+# rule view toolbar.
+rule.classPanel.toggleClass.tooltip=เปิด/ปิดคลาส
+
+# LOCALIZATION NOTE (rule.classPanel.newClass.placeholder): This is the placeholder
+# shown inside the text field used to add a new class in the rule-view.
+rule.classPanel.newClass.placeholder=เพิ่มคลาสใหม่
+
+# LOCALIZATION NOTE (rule.classPanel.noClasses): This is the text displayed in the
+# class panel when the current element has no classes applied.
+rule.classPanel.noClasses=ไม่มีคลาสบนอิลิเมนต์นี้
+
+# LOCALIZATION NOTE (rule.printSimulation.tooltip):
+# This is the tooltip of the print simulation button in the Rule View toolbar
+# that toggles print simulation.
+rule.printSimulation.tooltip=เปิด/ปิดการจำลองสื่อสิ่งพิมพ์สำหรับหน้า
+
+# LOCALIZATION NOTE (rule.colorSchemeSimulation.tooltip):
+# This is the tooltip of the color scheme simulation button in the Rule View
+# toolbar that toggles color-scheme simulation.
+rule.colorSchemeSimulation.tooltip=เปิด/ปิดการจำลองแบบแผนสีสำหรับหน้า
+
+# LOCALIZATION NOTE (rule.twistyCollapse.label): The text a screen reader
+# speaks when the header of a rule is expanded.
+rule.twistyCollapse.label=ยุบ
+
+# LOCALIZATION NOTE (rule.twistyExpand.label): The text a screen reader
+# speaks when the header of a rule is collapsed.
+rule.twistyExpand.label=ขยาย
+
+# LOCALIZATION NOTE (rule.expandableContainerToggleButton.title):
+# This is the tooltip for expandable container toggle button in the Rule View (Pseudo-elements, keyframes, …)
+rule.expandableContainerToggleButton.title=แสดง/ซ่อนแผง
+
+# LOCALIZATION NOTE (rule.containerQuery.selectContainerButton.tooltip): Text displayed in a
+# tooltip when the mouse is over the icon to select a container in a container query in the rule view.
+rule.containerQuery.selectContainerButton.tooltip=คลิกเพื่อเลือกโหนดคอนเทนเนอร์
+
+# LOCALIZATION NOTE (rule.propertyToggle.label):
+# This is the label for the checkbox input in the rule view that allow to disable/re-enable
+# a specific property in a rule.
+# The argument is the property name.
+rule.propertyToggle.label=เปิดใช้งานคุณสมบัติ %S
+
+# LOCALIZATION NOTE (rule.newPropertyName.label):
+# This is the label for the new property input in the rule view.
+rule.newPropertyName.label=ชื่อคุณสมบัติใหม่
+
+# LOCALIZATION NOTE (rule.propertyName.label):
+# This is the label for the property name input in the rule view.
+rule.propertyName.label=ชื่อคุณสมบัติ
+
+# LOCALIZATION NOTE (styleinspector.contextmenu.copyColor): Text displayed in the rule
+# and computed view context menu when a color value was clicked.
+styleinspector.contextmenu.copyColor=คัดลอกสี
+
+# LOCALIZATION NOTE (styleinspector.contextmenu.copyColor.accessKey): Access key for
+# the rule and computed view context menu "Copy Color" entry.
+styleinspector.contextmenu.copyColor.accessKey=ด
+
+# LOCALIZATION NOTE (styleinspector.contextmenu.copyUrl): In rule and computed view :
+# text displayed in the context menu for an image URL.
+# Clicking it copies the URL to the clipboard of the user.
+styleinspector.contextmenu.copyUrl=คัดลอก URL
+
+# LOCALIZATION NOTE (styleinspector.contextmenu.copyUrl.accessKey): Access key for
+# the rule and computed view context menu "Copy URL" entry.
+styleinspector.contextmenu.copyUrl.accessKey=อ
+
+# LOCALIZATION NOTE (styleinspector.contextmenu.copyImageDataUrl): In rule and computed view :
+# text displayed in the context menu for an image URL.
+# Clicking it copies the image as Data-URL to the clipboard of the user.
+styleinspector.contextmenu.copyImageDataUrl=คัดลอก Data-URL ภาพ
+
+# LOCALIZATION NOTE (styleinspector.contextmenu.copyImageDataUrl.accessKey): Access key for
+# the rule and computed view context menu "Copy Image Data-URL" entry.
+styleinspector.contextmenu.copyImageDataUrl.accessKey=ก
+
+# LOCALIZATION NOTE (styleinspector.copyImageDataUrlError): Text set in the clipboard
+# if an error occurs when using the copyImageDataUrl context menu action
+# (invalid image link, timeout, etc...)
+styleinspector.copyImageDataUrlError=ไม่สามารถคัดลอก Data-URL ภาพ
+
+# LOCALIZATION NOTE (styleinspector.contextmenu.toggleOrigSources): Text displayed in the rule view
+# context menu.
+styleinspector.contextmenu.toggleOrigSources=แสดงแหล่งต้นฉบับ
+
+# LOCALIZATION NOTE (styleinspector.contextmenu.toggleOrigSources.accessKey): Access key for
+# the rule view context menu "Show original sources" entry.
+styleinspector.contextmenu.toggleOrigSources.accessKey=ส
+
+# LOCALIZATION NOTE (styleinspector.contextmenu.addNewRule): Text displayed in the
+# rule view context menu for adding a new rule to the element.
+# This should match inspector.addRule.tooltip in inspector.properties
+styleinspector.contextmenu.addNewRule=เพิ่มกฎใหม่
+
+# LOCALIZATION NOTE (styleinspector.contextmenu.addNewRule.accessKey): Access key for
+# the rule view context menu "Add rule" entry.
+styleinspector.contextmenu.addNewRule.accessKey=พ
+
+# LOCALIZATION NOTE (styleinspector.contextmenu.selectAll): Text displayed in the
+# computed view context menu.
+styleinspector.contextmenu.selectAll=เลือกทั้งหมด
+
+# LOCALIZATION NOTE (styleinspector.contextmenu.selectAll.accessKey): Access key for
+# the computed view context menu "Select all" entry.
+styleinspector.contextmenu.selectAll.accessKey=ล
+
+# LOCALIZATION NOTE (styleinspector.contextmenu.copy): Text displayed in the
+# computed view context menu.
+styleinspector.contextmenu.copy=คัดลอก
+
+# LOCALIZATION NOTE (styleinspector.contextmenu.copy.accessKey): Access key for
+# the computed view context menu "Copy" entry.
+styleinspector.contextmenu.copy.accessKey=ค
+
+# LOCALIZATION NOTE (styleinspector.contextmenu.copyLocation): Text displayed in the
+# rule view context menu for copying the source location.
+styleinspector.contextmenu.copyLocation=คัดลอกตำแหน่งที่ตั้ง
+
+# LOCALIZATION NOTE (styleinspector.contextmenu.copyDeclaration): Text
+# displayed in the rule view context menu for copying the CSS declaration.
+styleinspector.contextmenu.copyDeclaration=คัดลอกการประกาศ
+
+# LOCALIZATION NOTE (styleinspector.contextmenu.copyPropertyName): Text displayed in
+# the rule view context menu for copying the property name.
+styleinspector.contextmenu.copyPropertyName=คัดลอกชื่อคุณสมบัติ
+
+# LOCALIZATION NOTE (styleinspector.contextmenu.copyPropertyValue): Text displayed in
+# the rule view context menu for copying the property value.
+styleinspector.contextmenu.copyPropertyValue=คัดลอกค่าคุณสมบัติ
+
+# LOCALIZATION NOTE (styleinspector.contextmenu.copyRule): Text displayed in the
+# rule view context menu for copying the rule.
+styleinspector.contextmenu.copyRule=คัดลอกกฎ
+
+# LOCALIZATION NOTE (styleinspector.contextmenu.copySelector): Text displayed in the
+# rule view context menu for copying the selector.
+styleinspector.contextmenu.copySelector=คัดลอกตัวเลือก
diff --git a/l10n-th/devtools/shared/webconsole-commands.ftl b/l10n-th/devtools/shared/webconsole-commands.ftl
new file mode 100644
index 0000000000..0766cb936f
--- /dev/null
+++ b/l10n-th/devtools/shared/webconsole-commands.ftl
@@ -0,0 +1,34 @@
+# 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/.
+
+
+# These strings are used inside the Web Console commands
+# which can be executed in the Developer Tools, available in the
+# Browser Tools sub-menu -> 'Web Developer Tools'
+
+# Usage string for :block command
+webconsole-commands-usage-block =
+ :block URL_STRING
+
+ เริ่มปิดกั้นคำขอเครือข่าย
+
+ รับเฉพาะอาร์กิวเมนต์ URL_STRING เพียงตัวเดียวเท่านั้น ซึ่งเป็นสตริงที่ไม่มีเครื่องหมายคำพูดซึ่งจะใช้ในการปิดกั้นคำขอทั้งหมดที่ URL มีสตริงนี้
+ ใช้ :unblock หรือแถบข้างการปิดกั้นคำขอตัวเฝ้าสังเกตเครือข่ายเพื่อยกเลิกการดำเนินการนี้
+# Usage string for :unblock command
+webconsole-commands-usage-unblock =
+ :unblock URL_STRING
+
+ หยุดปิดกั้นคำขอเครือข่าย
+
+ รับเฉพาะอาร์กิวเมนต์เพียงตัวเดียวเท่านั้น ซึ่งเป็นสตริงที่เหมือนกันทุกประการที่ส่งผ่านไปยัง :block เมื่อก่อนหน้านี้
+# Usage string for :trace command
+webconsole-commands-usage-trace =
+ :trace
+
+ เปิด/ปิดใช้ตัวเฝ้าสังเกต JavaScript
+
+ รองรับอาร์กิวเมนต์ต่อไปนี้:
+ --logMethod ซึ่งตั้งเป็น ‘console’ สำหรับการบันทึกรายการลงในคอนโซลเว็บ (ค่าเริ่มต้น) หรือ ‘stdout’ สำหรับบันทึกรายการลงในเอาต์พุตมาตรฐาน
+ --prefix สตริงทางเลือกซึ่งจะถูกบันทึกรายการก่อนรายการบันทึกการติดตามทั้งหมด
+ --help หรือ --usage เพื่อแสดงข้อความนี้
diff --git a/l10n-th/devtools/startup/key-shortcuts.ftl b/l10n-th/devtools/startup/key-shortcuts.ftl
new file mode 100644
index 0000000000..bbc2c7ca1e
--- /dev/null
+++ b/l10n-th/devtools/startup/key-shortcuts.ftl
@@ -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/.
+
+# Key pressed to open a toolbox with the default panel selected
+devtools-commandkey-toggle-toolbox = I
+# Alternative key pressed to open a toolbox with the default panel selected
+devtools-commandkey-toggle-toolbox-f12 = VK_F12
+# Key pressed to open the Browser Toolbox, used for debugging Firefox itself
+devtools-commandkey-browser-toolbox = I
+# Key pressed to open the Browser Console, used for debugging Firefox itself
+devtools-commandkey-browser-console = J
+# Key pressed to toggle on the Responsive Design Mode
+devtools-commandkey-responsive-design-mode = M
+# Key pressed to open a toolbox with the inspector panel selected
+devtools-commandkey-inspector = C
+# Key pressed to open a toolbox with the web console panel selected
+devtools-commandkey-webconsole = K
+# Key pressed to open a toolbox with the debugger panel selected
+devtools-commandkey-jsdebugger = Z
+# Key pressed to open a toolbox with the network monitor panel selected
+devtools-commandkey-netmonitor = E
+# Key pressed to open a toolbox with the style editor panel selected
+devtools-commandkey-styleeditor = VK_F7
+# Key pressed to open a toolbox with the performance panel selected
+devtools-commandkey-performance = VK_F5
+# Key pressed to open a toolbox with the storage panel selected
+devtools-commandkey-storage = VK_F9
+# Key pressed to open a toolbox with the DOM panel selected
+devtools-commandkey-dom = W
+# Key pressed to open a toolbox with the accessibility panel selected
+devtools-commandkey-accessibility-f12 = VK_F12
+# Key pressed to start or stop the performance profiler
+devtools-commandkey-profiler-start-stop = VK_1
+# Key pressed to capture a recorded performance profile
+devtools-commandkey-profiler-capture = VK_2
+# Key pressed to toggle the JavaScript tracing
+devtools-commandkey-javascript-tracing-toggle = VK_5
diff --git a/l10n-th/dom/chrome/accessibility/AccessFu.properties b/l10n-th/dom/chrome/accessibility/AccessFu.properties
new file mode 100644
index 0000000000..8e6d2338e8
--- /dev/null
+++ b/l10n-th/dom/chrome/accessibility/AccessFu.properties
@@ -0,0 +1,111 @@
+# 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/.
+
+# Roles
+menubar = แถบเมนู
+scrollbar = แถบเลื่อน
+grip = ที่จับ
+alert = การแจ้งเตือน
+menupopup = เมนูป๊อปอัป
+document = เอกสาร
+pane = บานหน้าต่าง
+dialog = กล่องโต้ตอบ
+separator = ตัวแบ่ง
+toolbar = แถบเครื่องมือ
+statusbar = แถบสถานะ
+table = ตาราง
+columnheader = เฮดเดอร์คอลัมน์
+rowheader = เฮดเดอร์แถว
+column = คอลัมน์
+row = แถว
+cell = เซลล์
+link = ลิงก์
+list = รายการ
+listitem = รายการในรายการ
+outline = เค้าร่าง
+outlineitem = รายการเค้าร่าง
+pagetab = แท็บ
+propertypage = หน้าคุณสมบัติ
+graphic = กราฟิก
+switch = สลับ
+pushbutton = ปุ่ม
+checkbutton = ปุ่มกาเครื่องหมาย
+radiobutton = ปุ่มตัวเลือก
+combobox = กล่องคำสั่งผสม
+progressbar = แถบความคืบหน้า
+slider = แถบเลื่อน
+spinbutton = ปุ่มปรับค่า
+diagram = แผนภาพ
+animation = ภาพเคลื่อนไหว
+equation = สมการ
+buttonmenu = เมนูปุ่ม
+whitespace = ช่องว่าง
+pagetablist = รายการแท็บ
+canvas = ผืนผ้าใบ
+checkmenuitem = รายการเมนูกาเครื่องหมาย
+passwordtext = ข้อความรหัสผ่าน
+radiomenuitem = รายการเมนูตัวเลือก
+textcontainer = ตัวบรรจุข้อความ
+togglebutton = ปุ่มสลับค่า
+treetable = ตารางแบบต้นไม้
+header = เฮดเดอร์
+footer = ฟุตเตอร์
+paragraph = ย่อหน้า
+entry = รายการ
+caption = คำบรรยาย
+heading = หัวเรื่อง
+section = ส่วน
+form = แบบฟอร์ม
+comboboxlist = รายการกล่องคำสั่งผสม
+comboboxoption = ตัวเลือกกล่องคำสั่งผสม
+imagemap = แผนที่ภาพ
+listboxoption = ตัวเลือก
+listbox = กล่องรายการ
+flatequation = flat equation
+gridcell = เซลล์ตาราง
+note = หมายเหตุ
+figure = รูป
+definitionlist = รายการคำจำกัดความ
+term = คำ
+definition = คำจำกัดความ
+
+mathmltable = ตารางคณิตศาสตร์
+mathmlcell = เซลล์
+mathmlenclosed = ล้อมรอบ
+mathmlfraction = เศษส่วน
+mathmlfractionwithoutbar = เศษส่วนแบบไม่มีเส้นแนวนอน
+mathmlroot = ราก
+mathmlscripted = ตัวห้อย
+mathmlsquareroot = รากที่สอง
+
+# More sophisticated roles which are not actual numeric roles
+textarea = พื้นที่ข้อความ
+
+base = ฐาน
+close-fence = วงเล็บปิด
+denominator = ตัวหาร
+numerator = ตัวเศษ
+open-fence = วงเล็บเปิด
+overscript = ตัวยก
+presubscript = ตัวห้อยด้านหน้า
+presuperscript = ตัวยกด้านหน้า
+root-index = ดัชนีราก
+subscript = ตัวห้อย
+superscript = ตัวยก
+underscript = ตัวห้อยด้านล่าง
+
+# More sophisticated object descriptions
+headingLevel = ระดับหัวเรื่อง %S
+
+# Landmark announcements
+banner = ป้าย
+complementary = เพิ่มเติม
+contentinfo = ข้อมูลเนื้อหา
+main = หลัก
+navigation = การนำทาง
+search = ค้นหา
+region = ภูมิภาค
+
+# Object states
+stateRequired = จำเป็น
diff --git a/l10n-th/dom/chrome/accessibility/mac/accessible.properties b/l10n-th/dom/chrome/accessibility/mac/accessible.properties
new file mode 100644
index 0000000000..7c2f7ef3a7
--- /dev/null
+++ b/l10n-th/dom/chrome/accessibility/mac/accessible.properties
@@ -0,0 +1,71 @@
+# 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/.
+
+jump = กระโดด
+press = กด
+check = กาเครื่องหมาย
+uncheck = ยกเลิกการกาเครื่องหมาย
+select = เลือก
+open = เปิด
+close = ปิด
+switch = สลับ
+click = คลิก
+collapse= ยุบ
+expand = ขยาย
+activate= เปิดใช้งาน
+cycle = รอบ
+# An action provided to accessibility clients such as screen readers to allow
+# them to click an element when the click will be handled by a container
+# (ancestor) element. This is not normally reported to users.
+click ancestor = คลิกต้นกำเนิด
+
+# Universal Access API support
+# (Mac Only)
+# The Role Description for AXWebArea (the web widget). Like in Safari.
+htmlContent = เนื้อหา HTML
+# The Role Description for the Tab button.
+tab = แท็บ
+# The Role Description for definition list dl, dt and dd
+term = คำ
+definition = คำนิยาม
+# The Role Description for an input type="search" text field
+searchTextField = ช่องข้อความการค้นหา
+# Role Description (exposed as AXTitle) for datepickers
+dateField = ช่องวันที่
+# The Role Description for WAI-ARIA Landmarks
+application = แอปพลิเคชัน
+search = ค้นหา
+banner = ป้าย
+navigation = การนำทาง
+complementary = เพิ่มเติม
+content = เนื้อหา
+main = ส่วนหลัก
+# The (spoken) role description for various WAI-ARIA roles
+alert = การแจ้งเตือน
+alertDialog = กล่องโต้ตอบการแจ้งเตือน
+dialog = กล่องโต้ตอบ
+article = บทความ
+document = เอกสาร
+# The (spoken) role description for the WAI-ARIA figure role
+# https://w3c.github.io/aria/core-aam/core-aam.html#role-map-figure
+figure = รูป
+# The (spoken) role description for the WAI-ARIA heading role
+# https://w3c.github.io/aria/core-aam/core-aam.html#role-map-heading
+heading = หัวเรื่อง
+log = รายการบันทึก
+marquee = ตัวอักษรวิ่ง
+math = คณิตศาสตร์
+note = หมายเหตุ
+region = ขอบเขต
+status = สถานะแอปพลิเคชัน
+timer = ตัวจับเวลา
+tooltip = เคล็ดลับเครื่องมือ
+separator = ตัวแบ่ง
+tabPanel = แผงแท็บ
+# The roleDescription for the html:mark element
+highlight = การเน้น
+# The roleDescription for the details element
+details = รายละเอียด
+# The roleDescription for the summary element
+summary = สรุป
diff --git a/l10n-th/dom/chrome/accessibility/unix/accessible.properties b/l10n-th/dom/chrome/accessibility/unix/accessible.properties
new file mode 100644
index 0000000000..daa3de7c3d
--- /dev/null
+++ b/l10n-th/dom/chrome/accessibility/unix/accessible.properties
@@ -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/.
+
+jump = กระโดด
+press = กด
+check = กาเครื่องหมาย
+uncheck = ยกเลิกการกาเครื่องหมาย
+select = เลือก
+open = เปิด
+close = ปิด
+switch = สลับ
+click = คลิก
+collapse= ยุบ
+expand = ขยาย
+activate= เปิดใช้งาน
+cycle = รอบ
+# An action provided to accessibility clients such as screen readers to allow
+# them to click an element when the click will be handled by a container
+# (ancestor) element. This is not normally reported to users.
+click ancestor = คลิกต้นกำเนิด
diff --git a/l10n-th/dom/chrome/accessibility/win/accessible.properties b/l10n-th/dom/chrome/accessibility/win/accessible.properties
new file mode 100644
index 0000000000..daa3de7c3d
--- /dev/null
+++ b/l10n-th/dom/chrome/accessibility/win/accessible.properties
@@ -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/.
+
+jump = กระโดด
+press = กด
+check = กาเครื่องหมาย
+uncheck = ยกเลิกการกาเครื่องหมาย
+select = เลือก
+open = เปิด
+close = ปิด
+switch = สลับ
+click = คลิก
+collapse= ยุบ
+expand = ขยาย
+activate= เปิดใช้งาน
+cycle = รอบ
+# An action provided to accessibility clients such as screen readers to allow
+# them to click an element when the click will be handled by a container
+# (ancestor) element. This is not normally reported to users.
+click ancestor = คลิกต้นกำเนิด
diff --git a/l10n-th/dom/chrome/appstrings.properties b/l10n-th/dom/chrome/appstrings.properties
new file mode 100644
index 0000000000..cfe97eca20
--- /dev/null
+++ b/l10n-th/dom/chrome/appstrings.properties
@@ -0,0 +1,37 @@
+# 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/.
+
+malformedURI2=โปรดตรวจสอบว่า URL ถูกต้องและลองอีกครั้ง
+fileNotFound=ไม่พบไฟล์ %S โปรดตรวจสอบตำแหน่งที่ตั้งและลองอีกครั้ง
+fileAccessDenied=ไฟล์ที่ %S ไม่สามารถอ่านได้
+dnsNotFound2=ไม่พบ %S โปรดตรวจสอบชื่อและลองอีกครั้ง
+unknownProtocolFound=หนึ่งในดังต่อไปนี้ (%S) ไม่ใช่โปรโตคอลที่ลงทะเบียนไว้หรือไม่อนุญาตในบริบทนี้
+connectionFailure=การเชื่อมต่อถูกปฏิเสธขณะพยายามติดต่อไปยัง %S
+netInterrupt=การเชื่อมต่อไปยัง %S ถูกยกเลิกอย่างไม่คาดคิด ข้อมูลบางส่วนอาจถูกโอนไปแล้ว
+netTimeout=หมดเวลารอขณะพยายามติดต่อไปยัง %S
+redirectLoop=จำนวนครั้งการเปลี่ยนเส้นทางสำหรับ URL นี้ได้เกินกำหนดแล้ว ไม่สามารถโหลดหน้าที่ต้องการได้ ปัญหานี้อาจเกิดจากคุกกี้ถูกปิดกั้น
+confirmRepostPrompt=เพื่อการแสดงผลหน้านี้ โปรแกรมจำเป็นต้องส่งข้อมูลซึ่งจะทำให้การกระทำใด ๆ ก่อนหน้านี้ถูกทำซ้ำอีกครั้ง (เช่นการค้นหาหรือการยืนยันการสั่งซื้อสินค้า)
+resendButton.label=ส่งใหม่
+unknownSocketType=ไม่สามารถแสดงเอกสารนี้ได้จนกว่าคุณจะทำการติดตั้งตัวจัดการความปลอดภัยส่วนบุคคล (Personal Security Manager) ดาวน์โหลดและติดตั้งตัวจัดการความปลอดภัยส่วนบุคคลและลองใหม่อีกครั้งหรือติดต่อผู้ดูแลระบบ
+netReset=เอกสารนี้ไม่มีข้อมูล
+notCached=ไม่มีเอกสารนี้อีกต่อไป
+netOffline=ไม่สามารถแสดงผลเอกสารนี้ขณะออฟไลน์ได้ เพื่อออนไลน์ให้ยกเลิกการกาเครื่องหมาย ทำงานออฟไลน์ จากเมนู ไฟล์
+isprinting=ไม่สามารถเปลี่ยนแปลงเอกสารขณะกำลังพิมพ์หรืออยู่ในตัวอย่างก่อนพิมพ์
+deniedPortAccess=การเข้าถึงพอร์ตที่ระบุถูกระงับด้วยเหตุผลทางความปลอดภัย
+proxyResolveFailure=ไม่พบเซิร์ฟเวอร์พร็อกซีที่ตั้งค่าไว้ โปรดตรวจสอบการตั้งค่าพร็อกซีของคุณและลองใหม่อีกครั้ง
+proxyConnectFailure=การเชื่อมต่อไปยังเซิร์ฟเวอร์พร็อกซีที่ตั้งค่าไว้ถูกยกเลิก โปรดตรวจสอบการตั้งค่าพร็อกซีของคุณและลองใหม่อีกครั้ง
+contentEncodingError=ไม่สามารถแสดงหน้าที่คุณกำลังพยายามจะดูเนื่องจากหน้าใช้รูปแบบการบีบอัดที่ไม่ถูกต้องหรือไม่รองรับ
+unsafeContentType=ไม่สามารถแสดงหน้าที่คุณกำลังพยายามจะดูเนื่องจากหน้ามีชนิดไฟล์ที่อาจไม่ปลอดภัยที่จะเปิด โปรดติดต่อเจ้าของเว็บไซต์เพื่อแจ้งพวกเขาให้ทราบถึงปัญหานี้
+malwareBlocked=ไซต์ที่ %S ถูกรายงานว่าเป็นไซต์รุกรานและถูกปิดกั้นตามการกำหนดลักษณะความปลอดภัยของคุณ
+harmfulBlocked=ไซต์ที่ %S ถูกรายงานว่าเป็นไซต์ที่อาจเป็นอันตรายและถูกปิดกั้นตามการกำหนดลักษณะความปลอดภัยของคุณ
+unwantedBlocked=ไซต์ที่ %S ถูกรายงานว่าแจกจ่ายซอฟต์แวร์ไม่พึงประสงค์และถูกปิดกั้นตามการกำหนดลักษณะความปลอดภัยของคุณ
+deceptiveBlocked=หน้าเว็บนี้ที่ %S ถูกรายงานว่าเป็นไซต์หลอกลวงและถูกปิดกั้นตามการกำหนดลักษณะความปลอดภัยของคุณ
+cspBlocked=หน้านี้มีนโยบายความปลอดภัยของเนื้อหาที่ป้องกันไม่ให้หน้าถูกโหลดด้วยวิธีนี้
+xfoBlocked=หน้านี้มีนโยบาย X-Frame-Options ที่ป้องกันไม่ให้หน้าถูกโหลดในบริบทนี้
+corruptedContentErrorv2=ไซต์ที่ %S ได้พบการละเมิดโปรโตคอลเครือข่ายที่ไม่สามารถซ่อมแซมได้
+sslv3Used=ไม่สามารถรับประกันความปลอดภัยของข้อมูลของคุณบน %S เนื่องจากใช้ SSLv3 ซึ่งเป็นโปรโตคอลที่มีปัญหาด้านความปลอดภัย
+weakCryptoUsed=เจ้าของ %S ได้กำหนดค่าเว็บไซต์ของพวกเขาไม่เหมาะสม เพื่อปกป้องข้อมูลของคุณจากการถูกขโมย การเชื่อมต่อไปยังเว็บไซต์นี้จึงไม่ถูกสร้าง
+inadequateSecurityError=เว็บไซต์พยายามจะแลกเปลี่ยนระดับความปลอดภัยที่ไม่เพียงพอ
+blockedByPolicy=องค์กรของคุณได้ปิดกั้นการเข้าถึงหน้าหรือเว็บไซต์นี้
+networkProtocolError=Firefox ได้พบการละเมิดโปรโตคอลเครือข่ายที่ไม่สามารถซ่อมแซมได้
diff --git a/l10n-th/dom/chrome/dom/dom.properties b/l10n-th/dom/chrome/dom/dom.properties
new file mode 100644
index 0000000000..31653884fa
--- /dev/null
+++ b/l10n-th/dom/chrome/dom/dom.properties
@@ -0,0 +1,488 @@
+# 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/.
+
+KillScriptTitle=คำเตือน: สคริปต์ไม่ตอบสนอง
+KillScriptMessage=สคริปต์ในหน้านี้อาจกำลังทำงานอยู่หรืออาจไม่ตอบสนอง คุณสามารถหยุดการทำงานของสคริปต์ได้ในตอนนี้ หรือปล่อยให้สคริปต์ทำงานต่อเพื่อดูว่าจะทำงานจนเสร็จหรือไม่
+KillScriptWithDebugMessage=สคริปต์ในหน้านี้อาจกำลังทำงานอยู่หรืออาจไม่ตอบสนอง คุณสามารถหยุดการทำงานของสคริปต์ได้ในตอนนี้, เปิดสคริปต์ในเครื่องมือดีบั๊ก, หรือปล่อยให้สคริปต์ทำงานต่อ
+KillScriptLocation=สคริปต์: %S
+
+KillAddonScriptTitle=คำเตือน: สคริปต์ส่วนเสริมไม่ตอบสนอง
+# LOCALIZATION NOTE (KillAddonScriptMessage): %1$S is the name of an extension.
+# %2$S is the name of the application (e.g., Firefox).
+KillAddonScriptMessage=สคริปต์จากส่วนเสริม “%1$S” กำลังทำงานบนหน้านี้ และกำลังทำให้ %2$S ไม่ตอบสนอง\n\nสคริปต์อาจกำลังทำงานอยู่หรืออาจไม่ตอบสนองอีกแล้ว คุณสามารถหยุดการทำงานของสคริปต์ได้ในตอนนี้ หรือปล่อยให้ทำงานต่อเพื่อรอดูว่าจะทำงานจนเสร็จหรือไม่
+KillAddonScriptGlobalMessage=ห้ามสคริปต์ส่วนขยายไม่ให้ทำงานบนหน้านี้จนกว่าจะโหลดใหม่ครั้งถัดไป
+
+StopScriptButton=หยุดการทำงานของสคริปต์
+DebugScriptButton=ดีบั๊กสคริปต์
+WaitForScriptButton=ดำเนินการต่อ
+DontAskAgain=ไ&ม่ต้องถามฉันอีก
+WindowCloseBlockedWarning=สคริปต์ไม่สามารถปิดหน้าต่างที่ไม่ได้เปิดโดยสคริปต์
+OnBeforeUnloadTitle=คุณแน่ใจหรือไม่?
+OnBeforeUnloadMessage2=หน้านี้กำลังถามคุณให้ยืนยันว่าคุณต้องการออกจากหน้าเว็บนี้ — ข้อมูลที่คุณกรอกไว้อาจจะไม่ถูกบันทึก
+OnBeforeUnloadStayButton=อยู่ในหน้าต่อ
+OnBeforeUnloadLeaveButton=ออกจากหน้า
+EmptyGetElementByIdParam=ส่งค่าสตริงว่างให้กับ getElementById()
+SpeculationFailed2=document.write() ได้เขียนทรีที่ไม่สมดุล ทำให้ข้อมูลจากเครือข่ายต้องถูกวิเคราะห์โครงสร้างใหม่ ดูข้อมูลเพิ่มเติมที่: https://developer.mozilla.org/en-US/docs/Glossary/speculative_parsing
+DocumentWriteIgnored=การเรียกใช้ document.write() จากสคริปต์ภายนอกที่โหลดแบบ asynchronous ถูกเพิกเฉย
+# LOCALIZATION NOTE (EditorFileDropFailed): Do not translate contenteditable, %S is the error message explaining why the drop failed.
+EditorFileDropFailed=การปล่อยไฟล์ลงในอิลิเมนต์ contenteditable ล้มเหลว: %S
+FormValidationTextTooLong=โปรดปรับความยาวข้อความให้เหลือ %S ตัวอักษรหรือสั้นกว่า (ขณะนี้ความยาว %S ตัวอักษร)
+FormValidationTextTooShort=โปรดป้อนอย่างน้อย %S ตัวอักษร (ขณะนี้ความยาว %S ตัวอักษร)
+FormValidationValueMissing=โปรดกรอกช่องนี้
+FormValidationCheckboxMissing=โปรดกาเครื่องหมายกล่องนี้หากคุณต้องการดำเนินการต่อ
+FormValidationRadioMissing=โปรดเลือกหนึ่งในตัวเลือกเหล่านี้
+FormValidationFileMissing=โปรดเลือกไฟล์
+FormValidationSelectMissing=โปรดเลือกสิ่งที่อยู่ในรายการ
+FormValidationInvalidEmail=โปรดป้อนที่อยู่อีเมล
+FormValidationInvalidURL=โปรดป้อน URL
+FormValidationInvalidDate=โปรดป้อนวันที่ที่ถูกต้อง
+FormValidationInvalidTime=โปรดกรอกเวลาที่ถูกต้อง
+FormValidationInvalidDateTime=โปรดป้อนวันที่และเวลาที่ถูกต้อง
+FormValidationInvalidDateMonth=โปรดป้อนเดือนที่ถูกต้อง
+FormValidationInvalidDateWeek=โปรดป้อนสัปดาห์ที่ถูกต้อง
+FormValidationPatternMismatch=โปรดทำให้ตรงกับรูปแบบที่ขอ
+# LOCALIZATION NOTE (FormValidationPatternMismatchWithTitle): %S is the (possibly truncated) title attribute value.
+FormValidationPatternMismatchWithTitle=โปรดทำให้ตรงกับรูปแบบที่ขอ: %S
+# LOCALIZATION NOTE (FormValidationNumberRangeOverflow): %S is a number.
+FormValidationNumberRangeOverflow=โปรดเลือกค่าที่ไม่มากกว่า %S
+# LOCALIZATION NOTE (FormValidationDateTimeRangeOverflow): %S is a date or a time.
+FormValidationDateTimeRangeOverflow=โปรดเลือกค่าที่ไม่มากกว่า %S
+# LOCALIZATION NOTE (FormValidationNumberRangeUnderflow): %S is a number.
+FormValidationNumberRangeUnderflow=โปรดเลือกค่าที่ไม่น้อยกว่า %S
+# LOCALIZATION NOTE (FormValidationDateTimeRangeUnderflow): %S is a date or a time.
+FormValidationDateTimeRangeUnderflow=โปรดเลือกค่าที่ไม่น้อยกว่า %S
+# LOCALIZATION NOTE (FormValidationStepMismatch): both %S can be a number, a date or a time.
+FormValidationStepMismatch=โปรดเลือกค่าที่ถูกต้อง สองค่าที่ถูกต้องที่ใกล้เคียงที่สุดคือ %S และ %S
+# LOCALIZATION NOTE (FormValidationStepMismatchOneValue): %S can be a number, a date or a time. This is called instead of FormValidationStepMismatch when the second value is the same as the first.
+FormValidationStepMismatchOneValue=โปรดเลือกค่าที่ถูกต้อง ค่าที่ถูกต้องที่ใกล้เคียงที่สุดคือ %S
+# LOCALIZATION NOTE (FormValidationTimeReversedRangeUnderflowAndOverflow): %1$S,%2$S are time.
+FormValidationTimeReversedRangeUnderflowAndOverflow=โปรดเลือกค่าระหว่าง %1$S และ %2$S
+FormValidationBadInputNumber=โปรดป้อนตัวเลข
+FullscreenDeniedDisabled=การร้องขอการแสดงผลเต็มหน้าจอถูกปฏิเสธเนื่องจาก API แบบเต็มหน้าจอถูกปิดใช้งานโดยการกำหนดลักษณะผู้ใช้
+FullscreenDeniedFocusedPlugin=การร้องขอการแสดงผลเต็มจอถูกปฏิเสธเนื่องจากปลั๊กอินที่เป็นหน้าต่างถูกโฟกัส
+FullscreenDeniedHidden=การร้องขอการแสดงผลเต็มจอถูกปฏิเสธเนื่องจากเอกสารไม่สามารถมองเห็นได้อีกต่อไป
+FullscreenDeniedHTMLDialog=การร้องขอการแสดงผลเต็มจอถูกปฏิเสธเนื่องจากอิลิเมนต์ที่ร้องขอเป็นอิลิเมนต์ <dialog>
+FullscreenDeniedContainerNotAllowed=การร้องขอการแสดงผลเต็มจอถูกปฏิเสธเนื่องจากเอกสารอย่างน้อยหนึ่งชิ้นมี iframe ที่ไม่มีแอตทริบิวต์ “allowfullscreen”
+FullscreenDeniedNotInputDriven=การร้องขอการแสดงผลเต็มจอถูกปฏิเสธเนื่องจากไม่ได้เรียกใช้ Element.requestFullscreen() จากภายในตัวจัดการเหตุการณ์ที่ผู้ใช้สร้างขึ้นซึ่งทำงานระยะสั้น
+FullscreenDeniedMouseEventOnlyLeftBtn=การร้องขอการแสดงผลเต็มจอถูกปฏิเสธเนื่องจากมีการเรียก Element.requestFullscreen() จากภายในตัวจัดการเหตุการณ์เมาส์ที่ไม่ได้กระตุ้นโดยปุ่มเมาส์ซ้าย
+FullscreenDeniedNotHTMLSVGOrMathML=การร้องขอการแสดงผลเต็มจอถูกปฏิเสธเนื่องจากอิลิเมนต์ที่ร้องขอไม่ใช่อิลิเมนต์แบบ <svg>, <math>, หรือ HTML
+FullscreenDeniedNotInDocument=การร้องขอการแสดงผลเต็มจอถูกปฏิเสธเนื่องจากอิลิเมนต์ที่ร้องขอไม่มีอยู่ในเอกสารอีกต่อไป
+FullscreenDeniedMovedDocument=การร้องขอการแสดงผลเต็มจอถูกปฏิเสธเนื่องจากอิลิเมนต์ที่ร้องขอได้ย้ายเอกสาร
+FullscreenDeniedLostWindow=การร้องขอการแสดงผลเต็มจอถูกปฏิเสธเนื่องจากเราไม่มีหน้าต่างให้อีกต่อไปแล้ว
+FullscreenDeniedPopoverOpen=การร้องขอการแสดงผลเต็มจอถูกปฏิเสธเนื่องจากอิลิเมนต์ถูกเปิดแบบป็อปโอเวอร์แล้ว
+FullscreenDeniedSubDocFullscreen=การร้องขอการแสดงผลเต็มจอถูกปฏิเสธเนื่องจากเอกสารย่อยของเอกสารที่ร้องขอการแสดงผลเต็มจอเป็นแบบเต็มจออยู่แล้ว
+FullscreenDeniedNotFocusedTab=การร้องขอการแสดงผลเต็มจอถูกปฏิเสธเนื่องจากอิลิเมนต์ที่ร้องขอไม่ได้อยู่ในแท็บที่โฟกัสในขณะนี้
+FullscreenDeniedFeaturePolicy=การร้องขอการแสดงผลเต็มจอถูกปฏิเสธเนื่องจากคำสั่ง FeaturePolicy
+FullscreenExitWindowFocus=ออกจากการแสดงผลเต็มจอเนื่องจากหน้าต่างถูกโฟกัส
+RemovedFullscreenElement=ออกจากการแสดงผลเต็มจอเนื่องจากอิลิเมนต์การแสดงผลเต็มจอถูกเอาออกจากเอกสารแล้ว
+FocusedWindowedPluginWhileFullscreen=ออกจากการแสดงผลเต็มจอเนื่องจากปลั๊กอินที่เป็นหน้าต่างถูกโฟกัส
+PointerLockDeniedDisabled=การร้องขอการล็อกตัวชี้ถูกปฏิเสธเนื่องจาก API การล็อกตัวชี้ถูกปิดใช้งานโดยค่ากำหนดผู้ใช้
+PointerLockDeniedInUse=การร้องขอการล็อกตัวชี้ถูกปฏิเสธเนื่องจากขณะนี้ตัวชี้ถูกควบคุมโดยเอกสารอื่น
+PointerLockDeniedNotInDocument=การร้องขอการล็อกตัวชี้ถูกปฏิเสธเนื่องจากอิลิเมนต์ที่ร้องขอไม่อยู่ในเอกสาร
+PointerLockDeniedSandboxed=การร้องขอการล็อกตัวชี้ถูกปฏิเสธเนื่องจาก API การล็อกตัวชี้ถูกจำกัดผ่าน sandbox
+PointerLockDeniedHidden=การร้องขอการล็อกตัวชี้ถูกปฏิเสธเนื่องจากเอกสารไม่สามารถมองเห็นได้
+PointerLockDeniedNotFocused=การร้องขอการล็อกตัวชี้ถูกปฏิเสธเนื่องจากเอกสารไม่ได้ถูกโฟกัส
+PointerLockDeniedMovedDocument=การร้องขอการล็อกตัวชี้ถูกปฏิเสธเนื่องจากอิลิเมนต์ที่ร้องขอได้ย้ายเอกสาร
+PointerLockDeniedNotInputDriven=การร้องขอการล็อกตัวชี้ถูกปฏิเสธเนื่องจาก Element.requestPointerLock() ไม่ถูกเรียกจากภายในตัวจัดการเหตุการณ์ที่สร้างโดยผู้ใช้ซึ่งทำงานในระยะสั้น และเอกสารไม่ได้แสดงผลเต็มจอ
+PointerLockDeniedFailedToLock=การร้องขอการล็อกตัวชี้ถูกปฏิเสธเนื่องจากเบราว์เซอร์ไม่สามารถล็อกตัวชี้ได้
+HTMLSyncXHRWarning=ไม่รองรับการแยกวิเคราะห์ HTML ใน XMLHttpRequest ในโหมดซิงโครนัส
+# LOCALIZATION NOTE: %S is the name of the header in question
+ForbiddenHeaderWarning=ความพยายามตั้งเฮดเดอร์ที่ไม่อนุญาตถูกปฏิเสธ: %S
+ResponseTypeSyncXHRWarning=ไม่รองรับการใช้แอตทริบิวต์ responseType ของ XMLHttpRequest ในโหมดซิงโครนัสในบริบทหน้าต่างอีกต่อไป
+TimeoutSyncXHRWarning=ไม่รองรับการใช้แอตทริบิวต์ timeout ของ XMLHttpRequest ในโหมดซิงโครนัสในบริบทหน้าต่างอีกต่อไป
+# LOCALIZATION NOTE: Do not translate navigator.sendBeacon, unload, pagehide, or XMLHttpRequest.
+UseSendBeaconDuringUnloadAndPagehideWarning=การใช้ navigator.sendBeacon แทน XMLHttpRequest แบบซิงโครนัสระหว่าง unload และ pagehide ปรับปรุงประสบการณ์ผู้ใช้
+JSONCharsetWarning=มีความพยายามจะประกาศรหัสอักขระของ JSON ที่ได้จาก XMLHttpRequest ให้เป็นรหัสอักขระที่ไม่ใช่ UTF-8 การถอดรหัส JSON รองรับเฉพาะ UTF-8 เท่านั้น
+# LOCALIZATION NOTE: Do not translate HTMLMediaElement and createMediaElementSource.
+MediaElementAudioSourceNodeCrossOrigin=HTMLMediaElement ที่ผ่านไปยัง createMediaElementSource มีทรัพยากร cross-origin โหนดจะไม่ส่งเสียงใด ๆ
+# LOCALIZATION NOTE: Do not translate MediaStream and createMediaStreamSource.
+MediaStreamAudioSourceNodeCrossOrigin=MediaStream ที่ผ่านไปยัง createMediaStreamSource มีทรัพยากร cross-origin โหนดจะไม่ส่งเสียงใด ๆ
+# LOCALIZATION NOTE : Do not translate MediaStreamTrack and createMediaStreamTrackSource.
+MediaStreamTrackAudioSourceNodeCrossOrigin=MediaStreamTrack ที่ผ่านไปยัง createMediaStreamTrackSource มีทรัพยากร cross-origin โหนดจะไม่ส่งเสียงใด ๆ
+# LOCALIZATION NOTE: Do not translate HTMLMediaElement and MediaStream.
+MediaElementAudioCaptureOfMediaStreamError=HTMLMediaElement ที่จับกำลังเล่น MediaStream ขณะนี้ยังไม่รองรับการนำระดับเสียงหรือสถานะปิดเสียงไปใช้
+# LOCALIZATION NOTE: Do not translate HTMLMediaElement and MediaStream.
+MediaElementStreamCaptureCycle=MediaStream ที่กำหนดให้กับ srcObject มาจาก HTMLMediaElement ที่จับนี้กำลังสร้างวัฏจักร ค่าที่กำหนดจึงถูกเพิกเฉย
+MediaLoadExhaustedCandidates=ไม่สามารถโหลดทรัพยากรทางเลือกทั้งหมด การโหลดสื่อถูกหยุดชั่วคราว
+MediaLoadSourceMissingSrc=อิลิเมนต์ <source> ไม่มีแอตทริบิวต์ “src” การโหลดทรัพยากรสื่อล้มเหลว
+MediaStreamAudioSourceNodeDifferentRate=ขณะนี้ยังไม่รองรับการเชื่อมต่อ AudioNodes จาก AudioContexts ที่มีอัตราการสุ่มตัวอย่างอื่น
+# LOCALIZATION NOTE: %1$S is the Http error code the server returned (e.g. 404, 500, etc), %2$S is the URL of the media resource which failed to load.
+MediaLoadHttpError=การโหลด HTTP ล้มเหลวด้วยสถานะ %1$S การโหลดทรัพยากรสื่อ %2$S ล้มเหลว
+# LOCALIZATION NOTE: %S is the URL of the media resource which failed to load.
+MediaLoadInvalidURI=URI ไม่ถูกต้อง การโหลดทรัพยากรสื่อ %S ล้มเหลว
+# LOCALIZATION NOTE: %1$S is the media resource's format/codec type (basically equivalent to the file type, e.g. MP4,AVI,WMV,MOV etc), %2$S is the URL of the media resource which failed to load.
+MediaLoadUnsupportedTypeAttribute=ไม่รองรับแอตทริบิวต์ “type” ที่ระบุ “%1$S” การโหลดทรัพยากรสื่อ %2$S ล้มเหลว
+MediaLoadUnsupportedTypeAttributeLoadingNextChild=ไม่รองรับแอตทริบิวต์ “type” ที่ระบุของ “%1$S” การโหลดทรัพยากรสื่อ %2$S ล้มเหลว กำลังพยายามโหลดจากอิลิเมนต์ <source> ตัวถัดไป
+# LOCALIZATION NOTE: %1$S is the MIME type HTTP header being sent by the web server, %2$S is the URL of the media resource which failed to load.
+MediaLoadUnsupportedMimeType=ไม่รองรับ HTTP “Content-Type” ของ “%1$S” การโหลดทรัพยากรสื่อ %2$S ล้มเหลว
+# LOCALIZATION NOTE: %S is the URL of the media resource which failed to load because of error in decoding.
+MediaLoadDecodeError=ไม่สามารถถอดรหัสทรัพยากรสื่อ %S ได้
+MediaWidevineNoWMF=กำลังพยายามเล่น Widevine โดยไม่มี Windows Media Foundation ดู https://support.mozilla.org/kb/fix-video-audio-problems-firefox-windows
+# LOCALIZATION NOTE: %S is a comma-separated list of codecs (e.g. 'video/mp4, video/webm')
+MediaWMFNeeded=หากต้องการเล่นวิดีโอในรูปแบบ %S คุณจำเป็นต้องติดตั้งซอฟต์แวร์ของ Microsoft เพิ่มเติม ดู https://support.mozilla.org/kb/fix-video-audio-problems-firefox-windows
+# LOCALIZATION NOTE: %S is a comma-separated list of codecs (e.g. 'video/mp4, video/webm')
+MediaPlatformDecoderNotFound=ไม่สามารถเล่นวิดีโอที่อยู่บนหน้านี้ได้ ระบบของคุณอาจไม่มีตัวแปลงสัญญาณวิดีโอที่จำเป็นสำหรับ: %S
+MediaUnsupportedLibavcodec=ไม่สามารถเล่นวิดีโอที่อยู่บนหน้านี้ได้ ระบบของคุณมี libavcodec รุ่นที่ไม่รองรับ
+# LOCALIZATION NOTE: %1$S is the URL of the media resource, %2$S is technical information (in English)
+MediaDecodeError=ไม่สามารถถอดรหัสทรัพยากรสื่อ %1$S ได้ ข้อผิดพลาด: %2$S
+# LOCALIZATION NOTE: %1$S is the URL of the media resource, %2$S is technical information (in English)
+MediaDecodeWarning=สามารถถอดรหัสทรัพยากรสื่อ %1$S ได้ แต่มีข้อผิดพลาด: %2$S
+# LOCALIZATION NOTE: %S is a comma-separated list of codecs (e.g. 'video/mp4, video/webm')
+MediaCannotPlayNoDecoders=ไม่สามารถเล่นสื่อได้ ไม่มีตัวถอดรหัสสำหรับรูปแบบที่ร้องขอ: %S
+# LOCALIZATION NOTE: %S is a comma-separated list of codecs (e.g. 'video/mp4, video/webm')
+MediaNoDecoders=ไม่มีตัวถอดรหัสสำหรับรูปแบบที่ร้องขอบางรูปแบบ: %S
+MediaCannotInitializePulseAudio=ไม่สามารถใช้ PulseAudio ได้
+# LOCALIZATION NOTE: %S is the URL of the web page which is not served on HTTPS and thus is not encrypted and considered insecure.
+MediaEMEInsecureContextDeprecatedWarning=การใช้ส่วนขยายสื่อที่เข้ารหัสที่ %S บนบริบทที่ไม่ปลอดภัย (เช่น บริบทที่ไม่ใช่ HTTPS) เลิกใช้แล้วและจะถูกเอาออกในไม่ช้า คุณควรพิจารณาเปลี่ยนไปใช้ที่มาที่ปลอดภัย เช่น HTTPS
+# LOCALIZATION NOTE: %S is the URL of the web page which is calling web APIs without passing data (either an audioCapabilities or a videoCapabilities) that will soon be required. See https://bugzilla.mozilla.org/show_bug.cgi?id=1368583#c21 for explanation of this string.
+MediaEMENoCapabilitiesDeprecatedWarning=การเรียก navigator.requestMediaKeySystemAccess() (ที่ %S) โดยไม่ผ่าน MediaKeySystemConfiguration ทางเลือกที่มี audioCapabilities หรือ videoCapabilities เลิกใช้แล้ว
+# LOCALIZATION NOTE: %S is the URL of the web page which is calling web APIs without passing data (a "codecs" string in the "contentType") that will soon be required. See https://bugzilla.mozilla.org/show_bug.cgi?id=1368583#c21 for explanation of this string.
+MediaEMENoCodecsDeprecatedWarning=การเรียก navigator.requestMediaKeySystemAccess() (ที่ %S) ที่ผ่าน MediaKeySystemConfiguration ทางเลือกที่มี audioCapabilities หรือ videoCapabilities โดยไม่มี contentType ที่มีสตริง “codecs” เลิกใช้แล้ว
+# LOCALIZATION NOTE: Do not translate "Mutation Event" and "MutationObserver"
+MutationEventWarning=เลิกใช้ Mutation Events แล้ว ให้ใช้ MutationObserver แทน
+BlockAutoplayError=การเล่นอัตโนมัติได้รับอนุญาตเฉพาะเมื่อได้รับอนุมัติจากผู้ใช้เท่านั้น ไซต์ถูกเปิดใช้งานโดยผู้ใช้ หรือสื่อถูกปิดเสียง
+BlockAutoplayWebAudioStartError=AudioContext ถูกป้องกันไม่ให้เริ่มทำงานโดยอัตโนมัติ โดยจะต้องสร้างหรือดำเนินการต่อหลังจากท่าทางของผู้ใช้ที่อยู่บนหน้า
+# LOCALIZATION NOTE: Do not translate "Components"
+ComponentsWarning=เลิกใช้วัตถุ Components แล้ว จะเอาออกในเร็ว ๆ นี้
+PluginHangUITitle=คำเตือน: ปลั๊กอินไม่ตอบสนอง
+PluginHangUIMessage=%S ในหน้านี้อาจกำลังทำงานอยู่หรืออาจไม่ตอบสนอง คุณสามารถหยุดการทำงานของสคริปต์ได้ในตอนนี้ หรือปล่อยให้สคริปต์ทำงานต่อเพื่อดูว่าจะทำงานจนเสร็จหรือไม่
+PluginHangUIWaitButton=ดำเนินการต่อ
+PluginHangUIStopButton=หยุดปลั๊กอิน
+# LOCALIZATION NOTE: Do not translate "NodeIterator" or "detach()".
+NodeIteratorDetachWarning=การร้องเรียก detach() บน NodeIterator ไม่มีผล
+# LOCALIZATION NOTE: Do not translate "LenientThis" and "this"
+LenientThisWarning=ไม่สนการรับค่าหรือตั้งค่าของคุณสมบัติที่มี [LenientThis] เพราะว่าการใช้อ็อบเจ็คต์ "this" ไม่ถูกต้อง
+# LOCALIZATION NOTE: Do not translate "captureEvents()" or "addEventListener()"
+UseOfCaptureEventsWarning=เลิกใช้ captureEvents() แล้ว เพื่ออัปเกรดโค้ดของคุณ ให้ใช้วิธีการ addEventListener() ของ DOM 2 สำหรับความช่วยเหลือเพิ่มเติม http://developer.mozilla.org/en/docs/DOM:element.addEventListener
+# LOCALIZATION NOTE: Do not translate "releaseEvents()" or "removeEventListener()"
+UseOfReleaseEventsWarning=เลิกใช้ releaseEvents() แล้ว เพื่ออัปเกรดโค้ดของคุณ ให้ใช้วิธีการ removeEventListener() ของ DOM 2 สำหรับความช่วยเหลือเพิ่มเติม http://developer.mozilla.org/en/docs/DOM:element.removeEventListener
+# LOCALIZATION NOTE: Do not translate "XMLHttpRequest"
+SyncXMLHttpRequestWarning=เลิกใช้ XMLHttpRequest แบบสมวารในเธรดหลักแล้วเนื่องจากผลกระทบที่เป็นอันตรายต่อประสบการณ์ของผู้ใช้ สำหรับความช่วยเหลือเพิ่มเติม http://xhr.spec.whatwg.org/
+# LOCALIZATION NOTE: Do not translate "XMLHttpRequest"
+SyncXMLHttpRequestDeprecatedWarning=Synchronous XMLHttpRequest บนเธรดหลักถูกเลิกใช้แล้วเนื่องจากก่อผลกระทบที่ค่อนข้างร้ายแรงต่อประสบการณ์ผู้ใช้ปลายทาง สำหรับข้อมูลเพิ่มเติมให้ดู https://xhr.spec.whatwg.org/#sync-warning
+# LOCALIZATION NOTE: Do not translate "window.controllers/Controllers"
+Window_Cc_ontrollersWarning=เลิกใช้ window.controllers/Controllers แล้ว อย่าใช้เพื่อตรวจหา UA
+ImportXULIntoContentWarning=เลิกใช้การนำเข้าโหนด XUL สู่เอกสารเนื้อหาแล้ว อาจเอาฟังก์ชันการทำงานนี้ออกในเร็ว ๆ นี้
+# LOCALIZATION NOTE: Do not translate "IndexedDB".
+IndexedDBTransactionAbortNavigation=รายการเปลี่ยนแปลง IndexedDB ไม่สามารถทำให้เสร็จสมบูรณ์ได้เนื่องถูกยกเลิกจากหน้าการนำทาง
+# LOCALIZATION NOTE: Do not translate Will-change, %1$S,%2$S are numbers.
+IgnoringWillChangeOverBudgetWarning=การใช้หน่วยความจำของ Will-change สูงเกินไป ขีดจำกัดงบประมาณคือพื้นที่พื้นผิวเอกสารคูณด้วย %1$S (%2$S พิกเซล) เหตุการณ์ที่เกิดของ will-change ที่เกินงบประมาณจะถูกเพิกเฉย
+# LOCALIZATION NOTE: Do not translate "Worker".
+HittingMaxWorkersPerDomain2=ไม่สามารถเริ่ม Worker ได้ทันทีเนื่องจากเอกสารอื่น ๆ ในที่มาเดียวกันใช้จำนวน Worker มากสุดแล้ว Worker อยู่ในคิวและจะเริ่มหลังจากที่ Worker อื่นเสร็จสมบูรณ์
+# LOCALIZATION NOTE: Do not translate "Application Cache API", "AppCache" and "ServiceWorker".
+AppCacheWarning=Application Cache API (AppCache) เลิกใช้แล้วและจะถูกเอาออกในอนาคต โปรดพิจารณาใช้ ServiceWorker สำหรับการสนับสนุนออฟไลน์
+# LOCALIZATION NOTE: Do not translate "Worker".
+EmptyWorkerSourceWarning=กำลังพยายามสร้างตัวทำงานจากที่มาที่ว่างเปล่า การดำเนินการนี้น่าจะเกิดขึ้นโดยไม่ได้ตั้งใจ
+NavigatorGetUserMediaWarning=navigator.mozGetUserMedia ได้ถูกแทนที่โดย navigator.mediaDevices.getUserMedia
+# LOCALIZATION NOTE: Do not translate "RTCPeerConnection", "getLocalStreams", "getRemoteStreams", "getSenders" or "getReceivers".
+RTCPeerConnectionGetStreamsWarning=RTCPeerConnection.getLocalStreams/getRemoteStreams เลิกใช้แล้ว ใช้ RTCPeerConnection.getSenders/getReceivers แทน
+# LOCALIZATION NOTE: Do not translate "ServiceWorker". %S is a URL.
+InterceptionFailedWithURL=ไม่สามารถโหลด ‘%S’ ServiceWorker ขัดขวางคำขอและพบข้อผิดพลาดที่ไม่คาดคิด
+# LOCALIZATION NOTE: Do not translate "ServiceWorker", "cors", "Response", "same-origin" or "Request". %1$S is a URL, %2$S is a URL.
+CorsResponseForSameOriginRequest=ไม่สามารถโหลด ‘%1$S’ ได้โดยตอบกลับ ‘%2$S’ ServiceWorker ไม่ได้รับอนุญาตให้สังเคราะห์ cors Response สำหรับคำขอ same-origin
+# LOCALIZATION NOTE: Do not translate "ServiceWorker", "FetchEvent.respondWith()", "FetchEvent", "no-cors", "opaque", "Response", or "RequestMode". %1$S is a URL. %2$S is a RequestMode value.
+BadOpaqueInterceptionRequestModeWithURL=ไม่สามารถโหลด ‘%1$S’ ServiceWorker ส่ง opaque Response ไปที่ FetchEvent.respondWith() ในขณะที่จัดการ FetchEvent ‘%2$S’ Opaque Response ใช้ได้เฉพาะเมื่อ RequestMode เป็น ‘no-cors’
+# LOCALIZATION NOTE: Do not translate "ServiceWorker", "Error", "Response", "FetchEvent.respondWith()", or "fetch()". %S is a URL.
+InterceptedErrorResponseWithURL=ไม่สามารถโหลด ‘%S’ ServiceWorker ส่ง Error Response ไปที่ FetchEvent.respondWith() ซึ่งโดยทั่วไปหมายความว่า ServiceWorker ทำการเรียก fetch() ที่ไม่ถูกต้อง
+# LOCALIZATION NOTE: Do not translate "ServiceWorker", "Response", "FetchEvent.respondWith()", or "Response.clone()". %S is a URL.
+InterceptedUsedResponseWithURL=ไม่สามารถโหลด ‘%S’ ServiceWorker ส่ง used Response ไปที่ FetchEvent.respondWith() เนื้อความของ Response สามารถอ่านได้เพียงครั้งเดียว ใช้ Response.clone() เพื่อให้สามารถเข้าถึงเนื้อความได้หลายครั้ง
+# LOCALIZATION NOTE: Do not translate "ServiceWorker", "opaqueredirect", "Response", "FetchEvent.respondWith()", or "FetchEvent". %S is a URL.
+BadOpaqueRedirectInterceptionWithURL=ไม่สามารถโหลด ‘%S’ ServiceWorker ส่ง opaqueredirect Response ไปที่ FetchEvent.respondWith() ในขณะที่จัดการ FetchEvent ที่ไม่ใช่การนำทาง
+# LOCALIZATION NOTE: Do not translate "ServiceWorker", "Response", "FetchEvent.respondWith()", "RedirectMode" or "follow". %S is a URL.
+BadRedirectModeInterceptionWithURL=ไม่สามารถโหลด ‘%S’ ServiceWorker ส่ง redirected Response ไปที่ FetchEvent.respondWith() ในขณะที่ RedirectMode ไม่ใช่ ‘follow’
+# LOCALIZATION NOTE: Do not translate "ServiceWorker" or "FetchEvent.preventDefault()". %S is a URL.
+InterceptionCanceledWithURL=ไม่สามารถโหลด ‘%S’ ServiceWorker ยกเลิกการโหลดโดยเรียก FetchEvent.preventDefault()
+# LOCALIZATION NOTE: Do not translate "ServiceWorker", "promise", or "FetchEvent.respondWith()". %1$S is a URL. %2$S is an error string.
+InterceptionRejectedResponseWithURL=ไม่สามารถโหลด ‘%1$S’ ServiceWorker ส่ง promise ไปที่ FetchEvent.respondWith() ซึ่งปฏิเสธด้วย ‘%2$S’
+# LOCALIZATION NOTE: Do not translate "ServiceWorker", "promise", "FetchEvent.respondWith()", or "Response". %1$S is a URL. %2$S is an error string.
+InterceptedNonResponseWithURL=ไม่สามารถโหลด ‘%1$S’ ServiceWorker ส่ง promise ไปที่ FetchEvent.respondWith() ซึ่งแปลงด้วยค่าที่ไม่ใช่ Response ‘%2$S’
+
+# LOCALIZATION NOTE: Do not translate "ServiceWorker", "Service-Worker-Allowed" or "HTTP". %1$S and %2$S are URLs.
+ServiceWorkerScopePathMismatch=ไม่สามารถลงทะเบียน ServiceWorker: เส้นทางของสโคปที่ระบุ ‘%1$S’ ไม่อยู่ภายใต้สโคปสูงสุดที่อนุญาต ‘%2$S’ ปรับสโคป, ย้ายสคริปต์ Service Worker หรือใช้เฮดเดอร์ Service-Worker-Allowed HTTP เพื่ออนุญาตสโคป
+# LOCALIZATION NOTE: Do not translate "ServiceWorker". %1$S is a URL representing the scope of the ServiceWorker, %2$S is a stringified numeric HTTP status code like "404" and %3$S is a URL.
+ServiceWorkerRegisterNetworkError=ไม่สามารถลงทะเบียน/อัปเดต ServiceWorker สำหรับ scope ‘%1$S’ ได้: การโหลดล้มเหลวด้วยสถานะ %2$S สำหรับสคริปต์ ‘%3$S’
+# LOCALIZATION NOTE: Do not translate "ServiceWorker". %1$S is a URL representing the scope of the ServiceWorker, %2$S is a MIME Media Type like "text/plain" and %3$S is a URL.
+ServiceWorkerRegisterMimeTypeError2=ไม่สามารถลงทะเบียน/อัปเดต ServiceWorker สำหรับ scope ‘%1$S’ ได้: ได้รับ Content-Type ‘%2$S’ ที่ไม่ถูกต้องสำหรับสคริปต์ ‘%3$S’ ต้องเป็นชนิด JavaScript MIME
+# LOCALIZATION NOTE: Do not translate "ServiceWorker". %S is a URL representing the scope of the ServiceWorker.
+ServiceWorkerRegisterStorageError=ไม่สามารถลงทะเบียน/อัปเดต ServiceWorker สำหรับ scope ‘%S’ ได้: การเข้าถึงที่เก็บข้อมูลถูกจำกัดในบริบทนี้เนื่องจากการตั้งค่าผู้ใช้หรือโหมดการเรียกดูแบบส่วนตัว
+ServiceWorkerGetRegistrationStorageError=ไม่สามารถรับข้อมูลเกี่ยวกับการลงทะเบียน Service Worker ได้: การเข้าถึงที่เก็บข้อมูลถูกจำกัดในบริบทนี้เนื่องจากการตั้งค่าผู้ใช้หรือโหมดการเรียกดูแบบส่วนตัว
+ServiceWorkerGetClientStorageError=ไม่สามารถรับข้อมูลเกี่ยวกับไคลเอ็นต์ของ Service Worker ได้: การเข้าถึงที่เก็บข้อมูลถูกจำกัดในบริบทนี้เนื่องจากการตั้งค่าผู้ใช้หรือโหมดการเรียกดูแบบส่วนตัว
+# LOCALIZATION NOTE: Do not translate "ServiceWorker" and "postMessage". %S is a URL representing the scope of the ServiceWorker.
+ServiceWorkerPostMessageStorageError=ServiceWorker สำหรับ scope ‘%S’ ไม่สามารถดำเนินการ ‘postMessage‘ ได้เนื่องจากการเข้าถึงที่เก็บข้อมูลถูกจำกัดในบริบทนี้เนื่องจากการตั้งค่าผู้ใช้หรือโหมดการเรียกดูแบบส่วนตัว
+# LOCALIZATION NOTE: Do not translate "ServiceWorker". %1$S is a URL representing the scope of the ServiceWorker.
+ServiceWorkerGraceTimeoutTermination=สิ้นสุด ServiceWorker สำหรับ scope ‘%1$S’ ที่มี waitUntil/respondWith promise รออยู่เนื่องจากรออยู่เนื่องจากหมดเวลาผ่อนผัน
+# LOCALIZATION NOTE (ServiceWorkerNoFetchHandler): Do not translate "Fetch".
+ServiceWorkerNoFetchHandler=ต้องเพิ่มตัวจัดการเหตุการณ์ Fetch ระหว่างการประเมินเริ่มต้นของสคริปต์ของตัวทำงาน
+ExecCommandCutCopyDeniedNotInputDriven=document.execCommand (‘cut’/‘copy’) ถูกปฏิเสธเนื่องจากไม่ได้ถูกเรียกจากภายในตัวจัดการเหตุการณ์ที่ผู้ใช้สร้างขึ้นที่ทำงานในระยะสั้น
+ManifestIdIsInvalid=สมาชิก id ไม่ได้แปลงที่อยู่ไปยัง URL ที่ถูกต้อง
+ManifestIdNotSameOrigin=สมาชิก id ต้องมีที่มาเดียวกับสมาชิก start_url
+ManifestShouldBeObject=ไฟล์กำกับควรเป็นวัตถุ
+ManifestScopeURLInvalid=URL ของ scope ไม่ถูกต้อง
+ManifestScopeNotSameOrigin=URL ของ scope ต้องเป็นที่มาเดียวกับเอกสาร
+ManifestStartURLOutsideScope=URL เริ่มต้นอยู่ภายนอก scope ดังนั้น scope ดังกล่าวจึงไม่ถูกต้อง
+ManifestStartURLInvalid=URL เริ่มต้นไม่ถูกต้อง
+ManifestStartURLShouldBeSameOrigin=URL เริ่มต้นต้องเป็นที่มาเดียวกับเอกสาร
+# LOCALIZATION NOTE: %1$S is the name of the object whose property is invalid. %2$S is the name of the invalid property. %3$S is the expected type of the property value. E.g. "Expected the manifest's start_url member to be a string."
+ManifestInvalidType=ต้องการให้สมาชิก %2$S ของ %1$S เป็น %3$S
+# LOCALIZATION NOTE: %1$S is the name of the property whose value is invalid. %2$S is the (invalid) value of the property. E.g. "theme_color: 42 is not a valid CSS color."
+ManifestInvalidCSSColor=%1$S: %2$S ไม่ใช่สี CSS ที่ถูกต้อง
+# LOCALIZATION NOTE: %1$S is the name of the property whose value is invalid. %2$S is the (invalid) value of the property. E.g. "lang: 42 is not a valid language code."
+ManifestLangIsInvalid=%1$S: %2$S ไม่ใช่รหัสภาษาที่ถูกต้อง
+# LOCALIZATION NOTE: %1$S is the name of the parent property whose value is invalid (e.g., "icons"). %2$S is the index of the image object that is invalid (from 0). %3$S is the name of actual member that is invalid. %4$S is the invalid value. E.g. "icons item at index 2 is invalid. The src member is an invalid URL http://:Invalid"
+ManifestImageURLIsInvalid=รายการ %1$S ที่ดัชนี %2$S ไม่ถูกต้อง สมาชิก %3$S เป็น URL ที่ไม่ถูกต้อง %4$S
+# LOCALIZATION NOTE: %1$S is the name of the parent property that that contains the unusable image object (e.g., "icons"). %2$S is the index of the image object that is unusable (from 0). E.g. "icons item at index 2 lacks a usable purpose. It will be ignored."
+ManifestImageUnusable=รายการ %1$S ที่ดัชนี %2$S ขาดวัตถุประสงค์ที่ใช้งานได้ และจะถูกเพิกเฉย
+# LOCALIZATION NOTE: %1$S is the name of the parent property that contains the unsupported value (e.g., "icons"). %2$S is the index of the image object that has the unsupported value (from 0). %3$S are the unknown purposes. E.g. "icons item at index 2 includes unsupported purpose(s): a b."
+ManifestImageUnsupportedPurposes=รายการ %1$S ที่ดัชนี %2$S มีวัตถุประสงค์ที่ไม่รองรับ: %3$S
+# LOCALIZATION NOTE: %1$S is the name of the parent property that has a repeated purpose (e.g., "icons"). %2$S is the index of the image object that has the repeated purpose (from 0). %3$S is the repeated purposes. E.g. "icons item at index 2 includes repeated purpose(s): a b."
+ManifestImageRepeatedPurposes=รายการ %1$S ที่ดัชนี %2$S มีวัตถุประสงค์ที่ซ้ำ: %3$S
+PatternAttributeCompileFailure=ไม่สามารถตรวจสอบ <input pattern='%S'> ได้เนื่องจากรูปแบบดังกล่าวไม่ใช่ regexp ที่ถูกต้อง: %S
+# LOCALIZATION NOTE: Do not translate "postMessage" or DOMWindow. %S values are origins, like https://domain.com:port
+TargetPrincipalDoesNotMatch=ไม่สามารถดำเนินการ ‘postMessage’ ใน ‘DOMWindow’ ได้: ที่มาเป้าหมายที่ระบุ (‘%S’) ไม่ตรงกับที่มาของหน้าต่างผู้รับ (‘%S’)
+# LOCALIZATION NOTE: Do not translate 'YouTube'. %S values are origins, like https://domain.com:port
+RewriteYouTubeEmbed=กำลังเขียน YouTube Flash embed แบบเก่า (%S) ใหม่เป็น iframe embed (%S) โปรดอัปเดตหน้าเพื่อใช้ iframe แทน embed/object หากเป็นไปได้
+# LOCALIZATION NOTE: Do not translate 'YouTube'. %S values are origins, like https://domain.com:port
+RewriteYouTubeEmbedPathParams=กำลังเขียน YouTube Flash embed แบบเก่า (%S) ใหม่เป็น iframe embed (%S) Params ไม่รองรับโดย iframe embeds และถูกแปลงแล้ว โปรดอัปเดตหน้าเพื่อใช้ iframe แทน embed/object หากเป็นไปได้
+# LOCALIZATION NOTE: This error is reported when the "Encryption" header for an
+# incoming push message is missing or invalid. Do not translate "ServiceWorker",
+# "Encryption", and "salt". %1$S is the ServiceWorker scope URL.
+PushMessageBadEncryptionHeader=ServiceWorker สำหรับสโคป ‘%1$S’ ไม่สามารถถอดรหัสข้อความพุชได้ เฮดเดอร์ ‘Encryption’ ต้องมีพารามิเตอร์ ‘salt‘ ที่ไม่ซ้ำกันสำหรับแต่ละข้อความ ดู https://tools.ietf.org/html/draft-ietf-httpbis-encryption-encoding-02#section-3.1 สำหรับข้อมูลเพิ่มเติม
+# LOCALIZATION NOTE: This error is reported when the "Crypto-Key" header for an
+# incoming push message is missing or invalid. Do not translate "ServiceWorker",
+# "Crypto-Key", and "dh". %1$S is the ServiceWorker scope URL.
+PushMessageBadCryptoKeyHeader=ServiceWorker สำหรับสโคป ‘%1$S’ ไม่สามารถถอดรหัสข้อความพุชได้ เฮดเดอร์ ‘Crypto-Key’ ต้องมีพารามิเตอร์ ‘dh‘ ที่มีคีย์สาธารณะของเซิร์ฟเวอร์แอป ดู https://tools.ietf.org/html/draft-ietf-httpbis-encryption-encoding-02#section-4 สำหรับข้อมูลเพิ่มเติม
+# LOCALIZATION NOTE: This error is reported when a push message fails to decrypt because the deprecated
+# "Encryption-Key" header for an incoming push message is missing or invalid.
+# Do not translate "ServiceWorker", "Encryption-Key", "dh", "Crypto-Key", and
+# "Content-Encoding: aesgcm". %1$S is the ServiceWorker scope URL.
+PushMessageBadEncryptionKeyHeader=ServiceWorker สำหรับสโคป ‘%1$S’ ไม่สามารถถอดรหัสข้อความพุชได้ เฮดเดอร์ ‘Encryption-Key’ ต้องมีพารามิเตอร์ ‘dh‘ เฮดเดอร์นี้เลิกใช้แล้วและจะถูกเอาออกในไม่ช้า โปรดใช้ ‘Crypto-Key‘ พร้อมด้วย ‘Content-Encoding: aesgcm‘ แทน ดู https://tools.ietf.org/html/draft-ietf-httpbis-encryption-encoding-02#section-4 สำหรับข้อมูลเพิ่มเติม
+# LOCALIZATION NOTE: This error is reported when a push message fails to decrypt
+# because the "Content-Encoding" header is missing or contains an
+# unsupported encoding. Do not translate "ServiceWorker", "Content-Encoding",
+# "aesgcm", and "aesgcm128". %1$S is the ServiceWorker scope URL.
+PushMessageBadEncodingHeader=ServiceWorker สำหรับสโคป ‘%1$S’ ไม่สามารถถอดรหัสข้อความพุชได้ เฮดเดอร์ ‘Content-Encoding’ ต้องเป็น ‘aesgcm‘ โดยสามารถใช้ ‘aesgcm128‘ ได้ แต่เลิกใช้แล้วและจะถูกเอาออกในไม่ช้า ดู https://tools.ietf.org/html/draft-ietf-httpbis-encryption-encoding-02#section-2 สำหรับข้อมูลเพิ่มเติม
+# LOCALIZATION NOTE: This error is reported when a push message fails to decrypt
+# because the "dh" parameter is not valid base64url. Do not translate
+# "ServiceWorker", "dh", "Crypto-Key", and "base64url". %1$S is the
+# ServiceWorker scope URL.
+PushMessageBadSenderKey=ServiceWorker สำหรับสโคป ‘%1$S’ ไม่สามารถถอดรหัสข้อความพุชได้ พารามิเตอร์ ‘dh‘ ในเฮดเดอร์ ‘Crypto-Key‘ ต้องเป็นคีย์สาธารณะ Diffie-Hellman ของเซิร์ฟเวอร์แอปซึ่งเข้ารหัสแบบ base64url (https://tools.ietf.org/html/rfc7515#appendix-C) และอยู่ในรูปแบบ “uncompressed” หรือ “raw” (65 ไบต์ก่อนการเข้ารหัส) ดู https://tools.ietf.org/html/draft-ietf-httpbis-encryption-encoding-02#section-4 สำหรับข้อมูลเพิ่มเติม
+# LOCALIZATION NOTE: This error is reported when a push message fails to decrypt
+# because the "salt" parameter is not valid base64url. Do not translate
+# "ServiceWorker", "salt", "Encryption", and "base64url". %1$S is the
+# ServiceWorker scope URL.
+PushMessageBadSalt=ServiceWorker สำหรับสโคป ‘%1$S’ ไม่สามารถถอดรหัสข้อความพุชได้ พารามิเตอร์ ‘salt‘ ในเฮดเดอร์ ‘Encryption‘ ต้องเข้ารหัสแบบ base64url (https://tools.ietf.org/html/rfc7515#appendix-C) และอยู่ที่อย่างน้อย 16 ไบต์ก่อนการเข้ารหัส ดู https://tools.ietf.org/html/draft-ietf-httpbis-encryption-encoding-02#section-3.1 สำหรับข้อมูลเพิ่มเติม
+# LOCALIZATION NOTE: This error is reported when a push message fails to decrypt
+# because the "rs" parameter is not a number, or is less than the pad size.
+# Do not translate "ServiceWorker", "rs", or "Encryption". %1$S is the
+# ServiceWorker scope URL. %2$S is the minimum value (1 for aesgcm128, 2 for
+# aesgcm).
+PushMessageBadRecordSize=ServiceWorker สำหรับสโคป ‘%1$S’ ไม่สามารถถอดรหัสข้อความพุชได้ พารามิเตอร์ ‘rs‘ ของเฮดเดอร์ ‘Encryption‘ ต้องอยู่ระหว่าง %2$S และ 2^36-31 หรือเว้นไว้ทั้งหมด ดู https://tools.ietf.org/html/draft-ietf-httpbis-encryption-encoding-02#section-3.1 สำหรับข้อมูลเพิ่มเติม
+# LOCALIZATION NOTE: This error is reported when a push message fails to decrypt
+# because an encrypted record is shorter than the pad size, the pad is larger
+# than the record, or any of the padding bytes are non-zero. Do not translate
+# "ServiceWorker". %1$S is the ServiceWorker scope URL. %2$S is the pad size
+# (1 for aesgcm128, 2 for aesgcm).
+PushMessageBadPaddingError=ServiceWorker สำหรับ scope ‘%1$S’ ไม่สามารถถอดรหัสข้อความพุชได้ เรกคอร์ดในข้อความที่เข้ารหัสไม่ได้มีการเติมช่องว่างภายในอย่างถูกต้อง ดู https://tools.ietf.org/html/draft-ietf-httpbis-encryption-encoding-02#section-2 สำหรับข้อมูลเพิ่มเติม
+# LOCALIZATION NOTE: This error is reported when push message decryption fails
+# and no specific error info is available. Do not translate "ServiceWorker".
+# %1$S is the ServiceWorker scope URL.
+PushMessageBadCryptoError=ServiceWorker สำหรับ scope ‘%1$S’ ไม่สามารถถอดรหัสข้อความพุชได้ สำหรับวิธีใช้เกี่ยวกับการเข้ารหัส โปรดดู https://developer.mozilla.org/docs/Web/API/Push_API/Using_the_Push_API#Encryption
+# LOCALIZATION NOTE: %1$S is the type of a DOM event. 'passive' is a literal parameter from the DOM spec.
+PreventDefaultFromPassiveListenerWarning=เพิกเฉยการเรียก ‘preventDefault()’ บนเหตุการณ์ชนิด ‘%1$S’ จากตัวฟังที่ลงทะเบียนเป็น ‘passive’
+# LOCALIZATION NOTE: 'ImageBitmapRenderingContext.transferImageBitmap' and 'ImageBitmapRenderingContext.transferFromImageBitmap' should not be translated
+ImageBitmapRenderingContext_TransferImageBitmapWarning=เลิกใช้ ImageBitmapRenderingContext.transferImageBitmap แล้วและจะถูกเอาออกในไม่ช้า ใช้ ImageBitmapRenderingContext.transferFromImageBitmap แทน
+IIRFilterChannelCountChangeWarning=การเปลี่ยนแปลงจำนวนช่องของ IIRFilterNode อาจทำให้เกิดข้อบกพร่องของเสียง
+BiquadFilterChannelCountChangeWarning=การเปลี่ยนแปลงจำนวนช่องของ BiquadFilterNode อาจทำให้เกิดข้อบกพร่องของเสียง
+# LOCALIZATION NOTE: Do not translate ".png"
+GenericImageNamePNG=ภาพ.png
+GenericFileName=ไฟล์
+GeolocationInsecureRequestIsForbidden=คำขอตำแหน่งที่ตั้งทางภูมิศาสตร์สามารถดำเนินการได้ในบริบทที่ปลอดภัยเท่านั้น
+NotificationsInsecureRequestIsForbidden=สามารถขอการอนุญาตการแจ้งเตือนได้เฉพาะในบริบทที่ปลอดภัยเท่านั้น
+NotificationsCrossOriginIframeRequestIsForbidden=สามารถขอสิทธิ์การแจ้งเตือนได้เฉพาะในเอกสารระดับบนสุด (top-level) หรือ iframe แบบ same-origin เท่านั้น
+NotificationsRequireUserGesture=สามารถขอการอนุญาตการแจ้งเตือนได้เฉพาะจากภายในตัวจัดการเหตุการณ์ที่สร้างโดยผู้ใช้ที่ทำงานในระยะสั้นเท่านั้น
+NotificationsRequireUserGestureDeprecationWarning=การขอการอนุญาตการแจ้งเตือนภายนอกตัวจัดการเหตุการณ์ที่สร้างโดยผู้ใช้ที่ทำงานในระยะสั้นเลิกใช้แล้วและจะไม่รองรับอีกในอนาคต
+# LOCALIZATION NOTE: Do not translate "content", "Window", and "window.top"
+WindowContentUntrustedWarning=เลิกใช้แอตทริบิวต์ ‘content’ ของวัตถุ Window แล้ว โปรดใช้ ‘window.top’ แทน
+
+# LOCALIZATION NOTE: The first %S is the tag name of the element that starts the loop, the second %S is the element's ID.
+SVGRefLoopWarning=SVG <%S> ที่มี ID “%S” มีลูปการอ้างอิง
+# LOCALIZATION NOTE: The first %S is the tag name of the element in the chain where the chain was broken, the second %S is the element's ID.
+SVGRefChainLengthExceededWarning=โซ่อ้างอิง SVG <%S> ซึ่งยาวเกินไปถูกทอดทิ้งในอิลิเมนต์ที่มี ID “%S”
+# LOCALIZATION NOTE: Do not translate SVGSVGElement.deselectAll.
+SVGDeselectAll=SVGSVGElement.deselectAll เลิกใช้แล้วเนื่องจากมีฟังก์ชันการทำงานที่ซ้ำกับ Selection API
+# LOCALIZATION NOTE: Do not translate SVGGraphicsElement.nearestViewportElement or SVGElement.viewportElement.
+SVGNearestViewportElement=SVGGraphicsElement.nearestViewportElement เลิกใช้แล้วและจะถูกเอาออกในอนาคต ให้ใช้ SVGElement.viewportElement แทน
+# LOCALIZATION NOTE: Do not translate SVGGraphicsElement.farthestViewportElement.
+SVGFarthestViewportElement=SVGGraphicsElement.farthestViewportElement เลิกใช้แล้วและจะถูกเอาออกในอนาคต
+# LOCALIZATION NOTE: Do not translate SVGSVGElement.deselectAll.
+SVGDeselectAllWarning=SVGSVGElement.deselectAll เลิกใช้แล้วเนื่องจากมีฟังก์ชันการทำงานที่ซ้ำกับ Selection API
+# LOCALIZATION NOTE: Do not translate SVGGraphicsElement.nearestViewportElement or SVGElement.viewportElement.
+SVGNearestViewportElementWarning=SVGGraphicsElement.nearestViewportElement เลิกใช้แล้วและจะถูกเอาออกในอนาคต ให้ใช้ SVGElement.viewportElement แทน
+# LOCALIZATION NOTE: Do not translate SVGGraphicsElement.farthestViewportElement.
+SVGFarthestViewportElementWarning=SVGGraphicsElement.farthestViewportElement เลิกใช้แล้วและจะถูกเอาออกในอนาคต
+
+# LOCALIZATION NOTE: Do not translate "<script>".
+ScriptSourceEmpty=แอตทริบิวต์ ‘%S’ ของอิลิเมนต์ <script> ว่างเปล่า
+# LOCALIZATION NOTE: Do not translate "<script>".
+ScriptSourceInvalidUri=แอตทริบิวต์ ‘%S’ ของอิลิเมนต์ <script> ไม่ใช่ URI ที่ถูกต้อง: “%S”
+# LOCALIZATION NOTE: Do not translate "<script>".
+ScriptSourceLoadFailed=การโหลดล้มเหลวสำหรับ <script> ที่มีต้นฉบับ “%S”
+ModuleSourceLoadFailed=การโหลดล้มเหลวสำหรับโมดูลที่มีต้นฉบับ “%S”
+# LOCALIZATION NOTE: Do not translate "<script>".
+ScriptSourceMalformed=URI ที่มาของ <script> มีรูปแบบที่ไม่ถูกต้อง: “%S”
+ModuleSourceMalformed=URI ที่มาของโมดูลมีรูปแบบที่ไม่ถูกต้อง: “%S”
+# LOCALIZATION NOTE: Do not translate "<script>".
+ScriptSourceNotAllowed=ไม่อนุญาตให้มี URI ที่มาของ <script> ในเอกสารนี้: “%S”
+ModuleSourceNotAllowed=ไม่อนุญาตให้มี URI ที่มาของโมดูลในเอกสารนี้: “%S”
+WebExtContentScriptModuleSourceNotAllowed=สคริปต์เนื้อหา WebExtension อาจโหลดเฉพาะโมดูลที่มี URL moz-extension และไม่ใช่: “%S”
+ModuleResolveFailureNoWarn=เกิดข้อผิดพลาดในการแปลงที่อยู่ตัวระบุโมดูล “%S”
+ModuleResolveFailureWarnRelative=เกิดข้อผิดพลาดในการแปลงที่อยู่ตัวระบุโมดูล “%S” ตัวระบุโมดูลสัมพัทธ์จะต้องขึ้นต้นด้วย “./” “../” หรือ “/”
+# LOCALIZATION NOTE: Do not translate "locale" and "IDBObjectStore.createIndex()".
+IDBObjectStoreCreateIndexLocaleWarning=ตัวเลือก ‘locale’ สำหรับ IDBObjectStore.createIndex() เลิกใช้แล้ว
+ImportMapInvalidTopLevelKey=มีคีย์ระดับบนสุดที่ไม่ถูกต้อง “%S” ในแมปการนำเข้า
+ImportMapEmptySpecifierKeys=คีย์ตัวระบุไม่สามารถเป็นสตริงว่างได้
+ImportMapAddressesNotStrings=ที่อยู่ต้องเป็นสตริง
+ImportMapInvalidAddress=ที่อยู่ “%S” ไม่ถูกต้อง
+# %1$S is the specifier key, %2$S is the URL.
+ImportMapAddressNotEndsWithSlash=มีการกำหนดที่อยู่ไม่ถูกต้องสำหรับคีย์ตัวระบุ “%1$S” เนื่องจาก “%1$S” ลงท้ายด้วยเครื่องหมายทับ ที่อยู่ “%2$S” ก็ต้องลงท้ายด้วยเครื่องหมายทับเช่นกัน
+ImportMapScopePrefixNotParseable=URL ส่วนนำหน้าขอบเขต “%S” ไม่สามารถแจงส่วนได้
+ImportMapResolutionBlockedByNullEntry=การจำแนกตัวระบุ “%S” ถูกปิดกั้นโดยรายการค่าว่าง
+ImportMapResolutionBlockedByAfterPrefix=การจำแนกตัวระบุ “%S” ถูกปิดกั้นเนื่องจากไม่สามารถแจงส่วนสตริงย่อยหลังส่วนนำหน้าเป็น URL สัมพัทธ์สำหรับที่อยู่ในแมปการนำเข้าได้
+ImportMapResolutionBlockedByBacktrackingPrefix=การจำแนกตัวระบุ “%S” ถูกปิดกั้นเนื่องจาก URL ที่แจงส่วนไม่ขึ้นต้นด้วยที่อยู่ในแมปการนำเข้า
+ImportMapResolveInvalidBareSpecifierWarnRelative=ตัวระบุ “%S” เป็นตัวระบุแบบ bare แต่ไม่ได้ถูกแมปใหม่กับอะไรเลย ตัวระบุโมดูลสัมพัทธ์ต้องขึ้นต้นด้วย “./”, “../” หรือ “/”
+# LOCALIZATION NOTE: Do not translate "<script type='importmap'>", "src".
+ImportMapExternalNotSupported=ไม่รองรับแมปการนำเข้าภายนอก: ไม่รองรับ <script type='importmap'> ที่มีแอตทริบิวต์ src ในขณะนี้
+ImportMapNotAllowedMultiple=ไม่อนุญาตให้ใช้แมปการนำเข้าหลายอัน
+ImportMapNotAllowedAfterModuleLoad=ไม่อนุญาตให้ใช้แมปการนำเข้าหลังจากที่เริ่มการโหลดโมดูลหรือการโหลดโมดูลแบบล่วงหน้าแล้ว
+# LOCALIZATION NOTE: %1$S is the invalid property value and %2$S is the property name.
+InvalidKeyframePropertyValue=ค่าคุณสมบัติคีย์เฟรม “%1$S” ไม่ถูกต้องตามไวยากรณ์สำหรับ “%2$S”
+# LOCALIZATION NOTE: Do not translate "ReadableStream".
+ReadableStreamReadingFailed=ไม่สามารถอ่านข้อมูลจาก ReadableStream ได้: “%S”
+# LOCALIZATION NOTE: Do not translate "registerProtocolHandler"
+RegisterProtocolHandlerPrivateBrowsingWarning=ไม่สามารถใช้ registerProtocolHandler ในโหมดการเรียกดูแบบส่วนตัวได้
+MotionEventWarning=เลิกใช้การใช้เซ็นเซอร์ตรวจจับความเคลื่อนไหวแล้ว
+OrientationEventWarning=เลิกใช้การใช้เซ็นเซอร์ตรวจจับการวางแนวแล้ว
+ProximityEventWarning=เลิกใช้การใช้เซ็นเซอร์ตรวจจับบริเวณใกล้เคียงแล้ว
+AmbientLightEventWarning=เลิกใช้การใช้เซ็นเซอร์ตรวจจับแสงที่ล้อมรอบแล้ว
+UnsupportedEntryTypesIgnored=เพิกเฉย entryTypes ที่ไม่รองรับ: %S
+AllEntryTypesIgnored=ไม่มี entryTypes ที่ถูกต้อง; กำลังยกเลิกการลงทะเบียน
+# LOCALIZATION NOTE: do not localize key=“%S” modifiers=“%S” id=“%S”
+GTK2Conflict2=ไม่พบเหตุการณ์หลักบน GTK2: key=“%S” modifiers=“%S” id=“%S”
+WinConflict2=ไม่พบเหตุการณ์หลักสำหรับบางผังแป้นพิมพ์: key=“%S” modifiers=“%S” id=“%S”
+# LOCALIZATION NOTE: do not translated "document.domain"
+DocumentSetDomainNotAllowedWarning=ไม่อนุญาตให้ตั้งค่า document.domain ในสภาพแวดล้อมแยกต่างหากแบบ cross-origin
+
+#LOCALIZATION NOTE(DeprecatedTestingInterfaceWarning): Do not translate this message. It's just testing only.
+DeprecatedTestingInterfaceWarning=TestingDeprecatedInterface เป็นส่วนติดต่อสำหรับการทดสอบเท่านั้นและนี่คือข้อความการทดสอบการเลิกใช้
+#LOCALIZATION NOTE(DeprecatedTestingMethodWarning): Do not translate this message. It's just testing only.
+DeprecatedTestingMethodWarning=TestingDeprecatedInterface.deprecatedMethod() เป็นวิธีสำหรับการทดสอบเท่านั้นและนี่คือข้อความการทดสอบการเลิกใช้
+#LOCALIZATION NOTE(DeprecatedTestingAttributeWarning): Do not translate this message. It's just testing only.
+DeprecatedTestingAttributeWarning=TestingDeprecatedInterface.deprecatedAttribute เป็นแอตทริบิวต์สำหรับการทดสอบเท่านั้นและนี่คือข้อความการทดสอบการเลิกใช้
+# LOCALIZATION NOTE (CreateImageBitmapCanvasRenderingContext2DWarning): Do not translate CanvasRenderingContext2D and createImageBitmap.
+CreateImageBitmapCanvasRenderingContext2DWarning=เลิกใช้ CanvasRenderingContext2D ใน createImageBitmap แล้ว
+
+# LOCALIZATION NOTE (DrawWindowCanvasRenderingContext2DWarning): Do not translate CanvasRenderingContext2D, drawWindow and tabs.captureTab.
+DrawWindowCanvasRenderingContext2DWarning=การใช้วิธี drawWindow จากCanvasRenderingContext2D เลิกใช้แล้ว ใช้ tabs.captureTab ของ API ของส่วนขยายแทน https://developer.mozilla.org/docs/Mozilla/Add-ons/WebExtensions/API/tabs/captureTab
+
+# LOCALIZATION NOTE (MozRequestFullScreenDeprecatedPrefixWarning): Do not translate mozRequestFullScreen.
+MozRequestFullScreenDeprecatedPrefixWarning=เลิกใช้ mozRequestFullScreen() แล้ว
+# LOCALIZATION NOTE (MozfullscreenchangeDeprecatedPrefixWarning): Do not translate onmozfullscreenchange.
+MozfullscreenchangeDeprecatedPrefixWarning=เลิกใช้ onmozfullscreenchange แล้ว
+# LOCALIZATION NOTE (MozfullscreenerrorDeprecatedPrefixWarning): Do not translate onmozfullscreenerror.
+MozfullscreenerrorDeprecatedPrefixWarning=เลิกใช้ onmozfullscreenerror แล้ว
+# LOCALIZATION NOTE(External_AddSearchProviderWarning): Do not translate AddSearchProvider.
+External_AddSearchProviderWarning=เลิกใช้ AddSearchProvider แล้ว
+
+# LOCALIZATION NOTE: Do not translate "MouseEvent.mozPressure" and "PointerEvent.pressure".
+MouseEvent_MozPressureWarning=เลิกใช้ MouseEvent.mozPressure แล้ว ให้ใช้ PointerEvent.pressure แทน
+# LOCALIZATION NOTE: Do not translate small, normal, big and mathsize.
+MathML_DeprecatedMathSizeValueWarning=“small”, “normal” และ “big” เป็นค่าที่เลิกใช้แล้วสำหรับแอตทริบิวต์ mathsize และจะถูกเอาออกในอนาคต
+# LOCALIZATION NOTE: Do not translate veryverythinmathspace, verythinmathspace,
+# thinmathspace, mediummathspace, thickmathspace, verythickmathspace, veryverythickmathspace and MathML.
+MathML_DeprecatedMathSpaceValueWarning=“veryverythinmathspace”, “verythinmathspace”, “thinmathspace”, “mediummathspace”, “thickmathspace”, “verythickmathspace” และ “veryverythickmathspace” เป็นค่าที่เลิกใช้แล้วสำหรับความยาว MathML lengths และจะถูกเอาออกในอนาคต
+# LOCALIZATION NOTE: Do not translate MathML, background, color, fontfamily, fontsize, fontstyle and fontweight.
+MathML_DeprecatedStyleAttributeWarning=แอตทริบิวต์ MathML “background”, “color”, “fontfamily”, “fontsize”, “fontstyle” และ “fontweight” เลิกใช้แล้วและจะถูกเอาออกในอนาคต
+# LOCALIZATION NOTE: Do not translate "MouseEvent.mozInputSource" and "PointerEvent.pointerType".
+MozInputSourceWarning=เลิกใช้ MouseEvent.mozInputSource แล้ว ให้ใช้ PointerEvent.pointerType แทน
+# LOCALIZATION NOTE: Do not translate "initMouseEvent()" and "MouseEvent()".
+InitMouseEventWarning=เลิกใช้ initMouseEvent() แล้ว ให้ใช้คอนสตรัคเตอร์ MouseEvent() แทน
+# LOCALIZATION NOTE: Do not translate "initNSMouseEvent()" and "MouseEvent()".
+InitNSMouseEventWarning=เลิกใช้ initNSMouseEvent() แล้ว ให้ใช้คอนสตรัคเตอร์ MouseEvent() แทน
+# LOCALIZATION NOTE: Do not translate MathML. %S is the deprecated length value.
+MathML_DeprecatedMathSpaceValue2Warning=ค่า length สำหรับ MathML “%S” เลิกใช้แล้วและจะถูกเอาออกในอนาคต
+# LOCALIZATION NOTE: Do not translate mathvariant or MathML. %S is the deprecated value of the mathvariant attribute.
+MathML_DeprecatedMathVariantWarning=“mathvariant='%S'” บนอิลิเมนต์ MathML เลิกใช้แล้วและจะถูกเอาออกในอนาคต
+# LOCALIZATION NOTE: Do not translate MathML and STIXGeneral. %S is a documentation URL.
+MathML_DeprecatedStixgeneralOperatorStretchingWarning=เลิกรองรับการเรนเดอร์ตัวดำเนินการ MathML แบบยืดด้วยแบบอักษรของ STIXGeneral แล้วและจะถูกเอาออกในอนาคต สำหรับรายละเอียดเกี่ยวกับแบบอักษรที่ใหม่กว่าที่จะยังคงรองรับต่อไป ดูที่ %S
+# LOCALIZATION NOTE: Do not translate MathML and scriptminsize.
+MathML_DeprecatedScriptminsizeAttributeWarning=แอตทริบิวต์ MathML “scriptminsize” เลิกใช้แล้วและจะถูกเอาออกในอนาคต
+# LOCALIZATION NOTE: Do not translate MathML and scriptsizemultiplier.
+MathML_DeprecatedScriptsizemultiplierAttributeWarning=แอตทริบิวต์ MathML “scriptsizemultiplier” เลิกใช้แล้วและจะถูกเอาออกในอนาคต
+FormSubmissionUntrustedEventWarning=การส่งฟอร์มผ่านเหตุการณ์ submit ที่ไม่เชื่อถือเลิกใช้แล้วและจะถูกเอาออกในอนาคต
+
+# LOCALIZATION NOTE: Do not translate "sizeToContent()".
+SizeToContentWarning=sizeToContent() เลิกใช้แล้วและจะถูกลบออกในอนาคต
+
+WebShareAPI_Failed=การดำเนินการแบ่งปันล้มเหลว
+WebShareAPI_Aborted=การดำเนินการแบ่งปันถูกยกเลิก
+# LOCALIZATION NOTE (UnknownProtocolNavigationPrevented): %1$S is the destination URL.
+UnknownProtocolNavigationPrevented=ป้องกันการนำทางไปยัง “%1$S” แล้วเนื่องจากเป็นโปรโตคอลที่ไม่รู้จัก
+PostMessageSharedMemoryObjectToCrossOriginWarning=ไม่สามารถ post ข้อความที่ประกอบด้วยอ็อบเจกต์หน่วยความจำที่ใช้ร่วมกันลงใน cross-origin window ได้
+# LOCALIZATION NOTE: %S is the URL of the resource in question
+UnusedLinkPreloadPending=ทรัพยากรที่ “%S” ที่โหลดไว้ล่วงหน้าที่มีการโหลดลิงก์ล่วงหน้าไม่ได้ถูกใช้ในช่วงไม่กี่วินาทีที่ผ่านมา ตรวจสอบให้แน่ใจว่าแอตทริบิวต์ทั้งหมดของแท็ก preload ได้รับการตั้งค่าอย่างถูกต้อง
+
+# LOCALIZATION NOTE: Do not translate document.requestStorageAccess(), iframe, allow-same-origin and sandbox (though you may translate "sandboxed").
+RequestStorageAccessNullPrincipal=document.requestStorageAccess() อาจไม่ถูกเรียกบนเอกสารที่มีที่มาที่มืดทึบ เช่น iframe without ที่มี sandbox ซึ่งไม่มี allow-same-origin ในแอตทริบิวต์ sandbox
+# LOCALIZATION NOTE: Do not translate document.requestStorageAccess(), iframe, allow-storage-access-by-user-activation and sandbox (though you may translate "sandboxed").
+RequestStorageAccessSandboxed=document.requestStorageAccess() อาจไม่ถูกเรียกใน iframe ที่มี sandbox ซึ่งไม่มี allow-storage-access-by-user-activation ในแอตทริบิวต์ sandbox
+# LOCALIZATION NOTE: Do not translate document.requestStorageAccess() and iframe.
+RequestStorageAccessNested=document.requestStorageAccess() อาจไม่ถูกเรียกใน iframe ที่ซ้อนกัน
+# LOCALIZATION NOTE: Do not translate document.requestStorageAccess(). In some locales it may be preferable to not translate "event handler", either.
+RequestStorageAccessUserGesture=สามารถร้องขอ document.requestStorageAccess() ได้เฉพาะจากภายในตัวจัดการเหตุการณ์ที่สร้างโดยผู้ใช้ที่ทำงานในระยะสั้นเท่านั้น
+# LOCALIZATION NOTE: Do not translate document.requestStorageAccess(), Permissions Policy and storage-access.
+RequestStorageAccessPermissionsPolicy=document.requestStorageAccess() อาจไม่ถูกเรียกหากคุณลักษณะ storage-access ถูกปิดกั้นโดยนโยบายสิทธิ์อนุญาต
+# LOCALIZATION NOTE: Do not translate document.requestStorageAccess()
+RequestStorageAccessNotSecureContext=document.requestStorageAccess() อาจให้สิทธิ์เข้าถึงเฉพาะบริบทที่ปลอดภัย
+# LOCALIZATION NOTE: Do not translate "Location" and "History".
+LocChangeFloodingPrevented=มีการเรียก Location หรือ History API มากเกินไปภายในระยะเวลาสั้น ๆ
+FolderUploadPrompt.title = ยืนยันการอัปโหลด
+# LOCALIZATION NOTE: %S is the name of the folder the user selected in the file picker.
+FolderUploadPrompt.message = คุณแน่ใจหรือไม่ว่าคุณต้องการอัปโหลดไฟล์ทั้งหมดจาก “%S”? ดำเนินการนี้เฉพาะเมื่อคุณเชื่อถือไซต์เท่านั้น
+FolderUploadPrompt.acceptButtonLabel = อัปโหลด
+InputPickerBlockedNoUserActivation=ตัวเลือก <input> ถูกปิดกั้นเนื่องจากไม่มีการเปิดใช้งานโดยผู้ใช้
+ExternalProtocolFrameBlockedNoUserActivation=Iframe ที่มีโปรโตคอลภายนอกถูกปิดกั้นเนื่องจากไม่มีการเปิดใช้งานโดยผู้ใช้ หรือเนื่องจากมีเวลาที่ผ่านไปไม่เพียงพอนับตั้งแต่โหลด Iframe นั้นครั้งล่าสุด
+MultiplePopupsBlockedNoUserActivation=การเปิดหลายป็อปอัปถูกปิดกั้นเนื่องจากไม่มีการเปิดใช้งานโดยผู้ใช้
+# LOCALIZATION NOTE: %S is the URL of the preload that was ignored.
+PreloadIgnoredInvalidAttr=การโหลด %S ล่วงหน้าถูกเพิกเฉยเนื่องจากมีค่า “as” หรือ “type” ที่ไม่รู้จัก หรือมีแอตทริบิวต์ “media” ที่ไม่ตรงกัน
+# LOCALIZATION NOTE: %S is the blob URL. Don't translate "agent cluster".
+BlobDifferentClusterError=ไม่สามารถเข้าถึง Blob URL “%S” จาก Agent Cluster อื่นได้
+# LOCALIZATION NOTE: %S is the blob URL. Don't translate "partition key".
+PartitionKeyDifferentError=ไม่สามารถเข้าถึง blob URL “%S” ด้วย partition key อื่นได้
+# LOCALIZATION NOTE: Do not translate "Element.setCapture()" and "Element.setPointerCapture()"".
+ElementSetCaptureWarning=Element.setCapture() เลิกใช้แล้ว ใช้ Element.setPointerCapture() แทน สำหรับวิธีใช้เพิ่มเติม https://developer.mozilla.org/docs/Web/API/Element/setPointerCapture
+# LOCALIZATION NOTE: Do not translate "Element.releaseCapture()" and "Element.releasePointerCapture()".
+ElementReleaseCaptureWarning=Element.releaseCapture() เลิกใช้แล้ว ใช้ Element.releasePointerCapture() แทน สำหรับวิธีใช้เพิ่มเติม https://developer.mozilla.org/docs/Web/API/Element/releasePointerCapture
+# LOCALIZATION NOTE: Do not translate "Document.releaseCapture()" and "Element.releasePointerCapture()".
+DocumentReleaseCaptureWarning=Document.releaseCapture() เลิกใช้แล้ว ใช้ Element.releasePointerCapture() แทน สำหรับวิธีใช้เพิ่มเติม https://developer.mozilla.org/docs/Web/API/Element/releasePointerCapture
+
+# LOCALIZATION NOTE: Don't translate browser.runtime.lastError, %S is the error message from the unchecked value set on browser.runtime.lastError.
+WebExtensionUncheckedLastError=ไม่ได้ตรวจสอบค่า browser.runtime.lastError: %S
+
+# LOCALIZATION NOTE: Do not translate "OffscreenCanvas.toBlob()" and "OffscreenCanvas.convertToBlob()".
+OffscreenCanvasToBlobWarning=OffscreenCanvas.toBlob() เลิกใช้แล้ว ให้ใช้ OffscreenCanvas.convertToBlob() แทน
+
+# LOCALIZATION NOTE: Do not translate "InstallTrigger"
+InstallTriggerDeprecatedWarning=InstallTrigger เลิกใช้แล้วและจะถูกลบออกในอนาคต
+# LOCALIZATION NOTE: Do not translate "InstallTrigger.install()"
+InstallTriggerInstallDeprecatedWarning=InstallTrigger.install() เลิกใช้แล้วและจะถูกลบออกในอนาคต สำหรับวิธีใช้เพิ่มเติม ให้ดูที่ https://extensionworkshop.com/documentation/publish/self-distribution/
+
+# LOCALIZATION NOTE: Do not translate "HTMLOptionsCollection.length". %1$S is the invalid value, %2$S is the current limit.
+SelectOptionsLengthAssignmentWarning=ได้ปฏิเสธที่จะขยายรายการตัวเลือก <select> ผ่านค่าที่กำหนดให้ HTMLOptionsCollection.length (ค่า %1$S) ขนาดสูงสุดที่รองรับคือ %2$S
+
+# LOCALIZATION NOTE: Do not translate "isExternalCTAP2SecurityKeySupported".
+IsExternalCTAP2SecurityKeySupportedWarning=isExternalCTAP2SecurityKeySupported() เลิกใช้แล้ว
+
+InvalidFormControlUnfocusable=ส่วนควบคุมฟอร์มที่ไม่ถูกต้องไม่สามารถโฟกัสได้
+# LOCALIZATION NOTE: Do not translate "name="
+InvalidNamedFormControlUnfocusable=ส่วนควบคุมฟอร์มที่ไม่ถูกต้องที่มี name=‘%S’ ไม่สามารถโฟกัสได้
diff --git a/l10n-th/dom/chrome/global-strres.properties b/l10n-th/dom/chrome/global-strres.properties
new file mode 100644
index 0000000000..2ffeaaf0df
--- /dev/null
+++ b/l10n-th/dom/chrome/global-strres.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/.
+
+16389=เกิดข้อผิดพลาดที่ไม่รู้จัก (%1$S)
diff --git a/l10n-th/dom/chrome/layout/HtmlForm.properties b/l10n-th/dom/chrome/layout/HtmlForm.properties
new file mode 100644
index 0000000000..18cf158e1d
--- /dev/null
+++ b/l10n-th/dom/chrome/layout/HtmlForm.properties
@@ -0,0 +1,35 @@
+# 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/.
+
+Reset=กลับค่าเดิม
+Submit=ส่ง
+Browse=เรียกดู…
+FileUpload=อัปโหลดไฟล์
+DirectoryUpload=เลือกโฟลเดอร์ที่จะอัปโหลด
+DirectoryPickerOkButtonLabel=อัปโหลด
+ForgotPostWarning=แบบฟอร์มมี enctype=%S แต่ไม่มี method=post จึงส่งตามปกติด้วย method=GET และไม่มี enctype แทน
+ForgotFileEnctypeWarning=แบบฟอร์มมีการป้อนข้อมูลไฟล์ แต่ขาด method=POST และ enctype=multipart/form-data บนแบบฟอร์ม ไฟล์จะไม่ถูกส่ง
+# LOCALIZATION NOTE (DefaultFormSubject): %S will be replaced with brandShortName
+DefaultFormSubject=ฟอร์มถูกส่งจาก %S
+CannotEncodeAllUnicode=ฟอร์มถูกส่งด้วยการเข้ารหัสอักขระแบบ %S ซึ่งไม่สามารถเข้ารหัสอักขระยูนิโค้ดทั้งหมดได้ อาจทำให้ข้อมูลที่ผู้ใช้ป้อนเสียหายได้ การหลีกเลี่ยงปัญหานี้ทำได้โดยเปลี่ยนให้หน้าเว็บส่งข้อมูลด้วยการเข้ารหัสอักขระแบบ UTF-8 ซึ่งทำได้โดยเปลี่ยนการเข้ารหัสอักขระของหน้าเว็บให้เป็น UTF-8 หรือระบุ accept-charset=utf-8 ข้างในฟอร์ม
+AllSupportedTypes=ประเภทที่รองรับทั้งหมด
+# LOCALIZATION NOTE (NoFileSelected): this string is shown on a
+# <input type='file'> when there is no file selected yet.
+NoFileSelected=ไม่มีไฟล์ที่ถูกเลือก
+# LOCALIZATION NOTE (NoFilesSelected): this string is shown on a
+# <input type='file' multiple> when there is no file selected yet.
+NoFilesSelected=ไม่มีไฟล์ที่ถูกเลือก
+# LOCALIZATION NOTE (NoDirSelected): this string is shown on a
+# <input type='file' directory/webkitdirectory> when there is no directory
+# selected yet.
+NoDirSelected=ไม่มีไดเรกทอรีที่ถูกเลือก
+# LOCALIZATION NOTE (XFilesSelected): this string is shown on a
+# <input type='file' multiple> when there are more than one selected file.
+# %S will be a number greater or equal to 2.
+XFilesSelected=%S ไฟล์ถูกเลือก
+ColorPicker=เลือกสี
+# LOCALIZATION NOTE (DefaultSummary): this string is shown on a <details> when
+# it has no direct <summary> child. Google Chrome should already have this
+# string translated.
+DefaultSummary=รายละเอียด
diff --git a/l10n-th/dom/chrome/layout/MediaDocument.properties b/l10n-th/dom/chrome/layout/MediaDocument.properties
new file mode 100644
index 0000000000..a3963f25b2
--- /dev/null
+++ b/l10n-th/dom/chrome/layout/MediaDocument.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/.
+
+#LOCALIZATION NOTE (ImageTitleWithDimensions2AndFile): first %S is filename, second %S is type, third %S is width and fourth %S is height
+#LOCALIZATION NOTE (ImageTitleWithoutDimensions): first %S is filename, second %S is type
+#LOCALIZATION NOTE (ImageTitleWithDimensions2): first %S is type, second %S is width and third %S is height
+#LOCALIZATION NOTE (ImageTitleWithNeitherDimensionsNorFile): first %S is type
+#LOCALIZATION NOTE (MediaTitleWithFile): first %S is filename, second %S is type
+#LOCALIZATION NOTE (MediaTitleWithNoInfo): first %S is type
+ImageTitleWithDimensions2AndFile=%S (ภาพ %S, %S × %S พิกเซล)
+ImageTitleWithoutDimensions=%S (ภาพ %S)
+ImageTitleWithDimensions2=(ภาพ %S, %S × %S พิกเซล)
+ImageTitleWithNeitherDimensionsNorFile=(ภาพ %S)
+MediaTitleWithFile=%S (วัตถุ %S)
+MediaTitleWithNoInfo=(วัตถุ %S)
+
+InvalidImage=ไม่สามารถแสดงผลภาพ “%S” เนื่องจากมีข้อผิดพลาด
+UnsupportedImage=ไม่สามารถแสดงภาพ “%S” ได้เนื่องจากต้องใช้คุณสมบัติที่ไม่รองรับ
+ScaledImage=สัดส่วน (%S%%)
+
+TitleWithStatus=%S - %S
diff --git a/l10n-th/dom/chrome/layout/css.properties b/l10n-th/dom/chrome/layout/css.properties
new file mode 100644
index 0000000000..81285acfe2
--- /dev/null
+++ b/l10n-th/dom/chrome/layout/css.properties
@@ -0,0 +1,52 @@
+# 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/.
+
+MimeNotCss=ไม่สามารถโหลดสไตล์ชีต %1$S ได้เนื่องจากชนิด MIME เป็น “%2$S” ไม่ใช่ “text/css”
+MimeNotCssWarn=สไตล์ชีต %1$S ถูกโหลดเป็น CSS ถึงแม้ชนิด MIME จะเป็น “%2$S” ไม่ใช่ “text/css”
+
+PEDeclDropped=ยกเลิกการประกาศ
+PEDeclSkipped=ข้ามการประกาศถัดไป
+PEUnknownProperty=คุณสมบัติที่ไม่ทราบ ‘%1$S’
+PEPRSyntaxFieldEmptyInput=ตัวอธิบายไวยากรณ์ของ @property ว่างเปล่า
+PEPRSyntaxFieldExpectedPipe=ตัวอธิบายไวยากรณ์ของ @property ‘%S’ มีส่วนประกอบที่ไม่มีไปป์คั่นกลาง
+PEPRSyntaxFieldInvalidNameStart=ตัวอธิบายไวยากรณ์ของ @property ‘%S’ มีชื่อส่วนประกอบที่ขึ้นต้นด้วยอักขระที่ไม่ถูกต้อง
+PEPRSyntaxFieldInvalidName=ตัวอธิบายไวยากรณ์ของ @property ‘%S’ มีชื่อส่วนประกอบที่มีอักขระที่ไม่ถูกต้อง
+PEPRSyntaxFieldUnclosedDataTypeName=ตัวอธิบายไวยากรณ์ของ @property ‘%S’ มีชื่อชนิดข้อมูลที่ไม่มีการปิดท้าย
+PEPRSyntaxFieldUnexpectedEOF=ตัวอธิบายไวยากรณ์ของ @property ‘%S’ ไม่สมบูรณ์
+PEPRSyntaxFieldUnknownDataTypeName=ตัวอธิบายไวยากรณ์ของ @property ‘%S’ มีชื่อชนิดข้อมูลที่ไม่รู้จัก
+PEValueParsingError=ผิดพลาดในการแจงค่าสำหรับ ‘%1$S’
+PEUnknownAtRule=ไม่รู้จัก at-rule หรือผิดพลาดขณะอ่าน at-rule ‘%1$S’
+PEMQUnexpectedOperator=พบตัวดำเนินการที่ไม่คาดคิดในรายการสื่อ
+PEMQUnexpectedToken=พบโทเค็น ‘%1$S’ ที่ไม่คาดคิดในรายการสื่อ
+PEAtNSUnexpected=โทเค็นที่ไม่ได้คาดหวังใน @namespace: ‘%1$S’
+PEKeyframeBadName=คาดหวังตัวระบุสำหรับกฎของ @keyframes
+PEBadSelectorRSIgnored=ชุดกฎถูกเพิกเฉยเนื่องจาก selector ไม่ถูกต้อง
+PEBadSelectorKeyframeRuleIgnored=กฎของคีย์เฟรมถูกเพิกเฉยเนื่องจาก selector ไม่ถูกต้อง
+PESelectorGroupNoSelector=คาดหวัง selector
+PESelectorGroupExtraCombinator=Dangling combinator.
+PEClassSelNotIdent=คาดหวังตัวระบุสำหรับคลาส selector แต่พบ ‘%1$S’
+PETypeSelNotType=คาดหวังชื่ออิลิเมนต์หรือ ‘*’ แต่พบ ‘%1$S’
+PEUnknownNamespacePrefix=ไม่ทราบคำนำเนมสเปซ ‘%1$S’
+PEAttributeNameExpected=คาดหวังตัวระบุสำหรับชื่อแอตทริบิวต์ แต่พบ ‘%1$S’
+PEAttributeNameOrNamespaceExpected=คาดหวังชื่อหรือเนมสเปซแอตทริบิวต์ แต่พบ ‘%1$S’
+PEAttSelNoBar=คาดหวัง ‘|’ แต่พบ ‘%1$S’
+PEAttSelUnexpected=โทเค็นไม่คาดหวังในเครื่องมือเลือกแอตทริบิวต์: ‘%1$S’
+PEAttSelBadValue=คาดหวังตัวระบุหรือสตริงสำหรับค่าในเครื่องมือเลือกแอตทริบิวต์ แต่พบ ‘%1$S’
+PEPseudoSelBadName=คาดหวังตัวระบุสำหรับคลาสแฝงหรืออิลิเมนต์แฝง แต่พบ ‘%1$S’
+PEPseudoSelEndOrUserActionPC=คาดหวังจุดสิ้นสุดของ selector หรือคลาสแฝง user action หลังจากอิลิเมนต์แฝง แต่พบ ‘%1$S’
+PEPseudoSelUnknown=ไม่รู้จักคลาสแฝงหรืออิลิเมนต์แฝง ‘%1$S’
+PEPseudoClassArgNotIdent=คาดหวังตัวระบุสำหรับพารามิเตอร์คลาสแฝง แต่พบ ‘%1$S’
+PEColorNotColor=คาดหวังค่าสี แต่พบ ‘%1$S’
+PEParseDeclarationDeclExpected=คาดหวังการประกาศแต่พบ ‘%1$S’
+PEUnknownFontDesc=ตัวบอกลักษณะที่ไม่รู้จัก ‘%1$S’ ในกฎ @font-face
+PEMQExpectedFeatureName=คาดหวังชื่อคุณลักษณะสื่อแต่พบ ‘%1$S’
+PEMQNoMinMaxWithoutValue=ต้องระบุค่าให้คุณลักษณะสื่อ ที่มี min- หรือ max-
+PEMQExpectedFeatureValue=พบค่าของคุณลักษณะสื่อที่ใช้ไม่ได้
+PEExpectedNoneOrURL=คาดหวัง ‘none’ หรือ URL แต่พบ ‘%1$S’
+PEExpectedNoneOrURLOrFilterFunction=คาดหวัง ‘none’, URL หรือฟังก์ชันตัวกรอง แต่พบ ‘%1$S’
+PEDisallowedImportRule=กฎ @import ยังไม่สามารถใช้ได้ในสไตล์ชีตที่สร้างขึ้น
+PENeverMatchingHostSelector=ตัวเลือก :host ใน ‘%S’ มีฟีเจอร์อื่นอีกและจะไม่ตรงกัน คุณอาจตั้งใจใช้งาน :host() หรือไม่
+
+TooLargeDashedRadius=รัศมีเส้นขอบใหญ่เกินไปสำหรับสไตล์ ‘dashed’ (ขีดจำกัดคือ 100000px) จึงแสดงผลแบบ solid
+TooLargeDottedRadius=รัศมีเส้นขอบใหญ่เกินไปสำหรับสไตล์ ‘dotted’ (ขีดจำกัดคือ 100000px) จึงแสดงผลแบบ solid
diff --git a/l10n-th/dom/chrome/layout/htmlparser.properties b/l10n-th/dom/chrome/layout/htmlparser.properties
new file mode 100644
index 0000000000..b1048993a4
--- /dev/null
+++ b/l10n-th/dom/chrome/layout/htmlparser.properties
@@ -0,0 +1,144 @@
+# 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/.
+
+# Encoding warnings and errors
+EncNoDeclarationFrame=เอกสารภายในเฟรมไม่ได้ประกาศการเข้ารหัสอักขระ การแสดงผลเอกสารอาจต่างออกไปถ้าหากเปิดดูโดยไม่อยู่ในเฟรมของเอกสารอื่น
+EncXmlDecl=รหัสอักขระของเอกสาร HTML ถูกประกาศโดยใช้ไวยากรณ์ในการประกาศแบบ XML ซึ่งไม่เป็นไปตามข้อกำหนด และการประกาศรหัสอักขระโดยใช้แท็ก meta ที่จุดเริ่มต้นของส่วน head จะมีประสิทธิภาพมากกว่า
+EncMetaTooLate=พบแท็ก meta ที่พยายามประกาศรหัสอักขระช้าเกินไป และได้เดารหัสอักขระจากเนื้อหาแทน แท็ก meta จะต้องถูกย้ายไปอยู่ที่จุดเริ่มต้นของส่วน head ของเอกสาร
+EncMetaTooLateFrame=พบแท็ก meta ที่พยายามประกาศรหัสอักขระช้าเกินไป และได้ใช้รหัสอักขระของเอกสารแม่แทน แท็ก meta จะต้องถูกย้ายไปอยู่ที่จุดเริ่มต้นของส่วน head ของเอกสาร
+EncMetaAfterHeadInKilobyte=แท็ก meta ที่ประกาศรหัสอักขระของเอกสารควรจะถูกย้ายไปที่จุดเริ่มต้นของส่วน head ของเอกสาร
+EncNoDecl=ไม่ได้ประกาศรหัสอักขระของเอกสาร จึงได้เดารหัสอักขระจากเนื้อหาแทน รหัสอักขระจะต้องถูกประกาศในเฮดเดอร์ HTTP Content-Type โดยใช้แท็ก meta หรือโดยใช้เครื่องหมายลำดับไบต์
+EncNoDeclPlain=ไม่ได้ประกาศรหัสอักขระของเอกสาร จึงได้เดารหัสอักขระจากเนื้อหาแทน รหัสอักขระจะต้องถูกประกาศในเฮดเดอร์ HTTP Content-Type โดยใช้เครื่องหมายลำดับไบต์
+EncMetaUnsupported=เอกสาร HTML ประกาศการเข้ารหัสอักขระที่ไม่สนับสนุนโดยใช้แท็ก meta การประกาศนี้จะไม่มีผล
+EncProtocolUnsupported=เอกสาร HTML ประกาศการเข้ารหัสอักขระที่ไม่สนับสนุนในระดับโปรโตคอลการส่งข้อมูล การประกาศนี้จะไม่มีผล
+EncMetaUtf16=แท็ก meta ถูกใช้ประกาศการเข้ารหัสอักขระเป็นแบบ UTF-16 จะถูกตีความว่าเป็นการประกาศแบบ UTF-8 แทน
+EncMetaUserDefined=แท็ก meta ถูกใช้ประกาศการเข้ารหัสอักขระเป็นแบบ x-user-defined จะถูกตีความว่าเป็นการประกาศแบบ windows-1252 แทนเพื่อให้เข้ากันได้กับแบบอักษรแบบเก่าซึ่งเข้ารหัสอักขระผิดโดยตั้งใจ ไซต์นี้ควรเปลี่ยนไปใช้รหัสอักขระแบบ Unicode
+EncMetaReplacement=แท็ก meta ถูกใช้เพื่อประกาศรหัสอักขระที่เป็นอันตรายต่อการเขียนสคริปต์แบบข้ามไซต์ (cross-site scripting) จึงใช้รหัสอักขระทดแทน
+EncProtocolReplacement=รหัสอักขระที่เป็นอันตรายต่อการเขียนสคริปต์แบบข้ามไซต์ (cross-site scripting) ถูกประกาศที่ระดับโปรโตคอลการถ่ายโอน จึงใช้รหัสอักขระทดแทน
+EncDetectorReload=ไม่ได้ประกาศรหัสอักขระของเอกสาร และได้เดารหัสอักขระจากเนื้อหา ซึ่งส่งผลให้เอกสารถูกโหลดซ้ำ รหัสอักขระจะต้องถูกประกาศในเฮดเดอร์ HTTP Content-Type โดยใช้แท็ก meta หรือโดยใช้เครื่องหมายลำดับไบต์
+EncDetectorReloadPlain=ไม่ได้ประกาศรหัสอักขระของเอกสาร และได้เดารหัสอักขระจากเนื้อหา ซึ่งส่งผลให้เอกสารถูกโหลดซ้ำ รหัสอักขระจะต้องถูกประกาศในเฮดเดอร์ HTTP Content-Type หรือโดยใช้เครื่องหมายลำดับไบต์
+EncError=สตรีมไบต์มีข้อผิดพลาดตามรหัสอักขระที่ประกาศ การประกาศรหัสอักขระอาจไม่ถูกต้อง
+EncErrorFrame=สตรีมไบต์มีข้อผิดพลาดตามรหัสอักขระที่สืบทอดมาจากเอกสารแม่ รหัสอักขระจะต้องถูกประกาศในเฮดเดอร์ HTTP Content-Type โดยใช้แท็ก meta หรือโดยใช้เครื่องหมายลำดับไบต์
+EncErrorFramePlain=สตรีมไบต์มีข้อผิดพลาดตามรหัสอักขระที่สืบทอดมาจากเอกสารแม่ รหัสอักขระจะต้องถูกประกาศในเฮดเดอร์ HTTP Content-Type หรือโดยใช้เครื่องหมายลำดับไบต์
+EncSpeculationFailMeta=ส่วนเริ่มต้นของเอกสารถูกแจงส่วนใหม่ เนื่องจากมีอักขระที่ไม่ใช่ ASCII ก่อนแท็ก meta ที่ประกาศรหัสอักขระไว้ meta ควรเป็นแท็กลูกแท็กแรกของเฮดเดอร์ที่ไม่มีคำอธิบายที่ไม่ใช่ ASCII มาก่อน
+EncSpeculationFailXml=ส่วนเริ่มต้นของเอกสารถูกแจงส่วนใหม่ เนื่องจากมีอักขระที่ไม่ใช่ ASCII ในส่วนของเอกสารที่ค้นหาแท็ก meta ไม่สำเร็จก่อนที่จะถอยกลับไปใช้ไวยาการณ์การประกาศแบบ XML ควรใช้แท็ก meta ที่ส่วนเริ่มต้นของเฮดเดอร์แทนไวยากรณ์การประกาศแบบ XML
+# The audience of the following message isn't the author of the document but other people debugging browser behavior.
+EncSpeculationFail2022=ส่วนเริ่มต้นของเอกสารถูกแจงส่วนใหม่ เนื่องจาก ISO-2022-JP เป็นรหัสอักขระที่ใช้ร่วมกับ ASCII ไม่ได้
+
+# The bulk of the messages below are derived from
+# https://hg.mozilla.org/projects/htmlparser/file/1f633cef7de7/src/nu/validator/htmlparser/impl/ErrorReportingTokenizer.java
+# which is available under the MIT license.
+
+# Tokenizer errors
+errGarbageAfterLtSlash=พบเนื้อหาที่ไม่ถูกต้องหลังจาก “</”
+errLtSlashGt=Saw “</>”. Probable causes: Unescaped “<” (escape as “&lt;”) or mistyped end tag.
+errCharRefLacksSemicolon=Character reference was not terminated by a semicolon.
+errNoDigitsInNCR=No digits in numeric character reference.
+errGtInSystemId=“>” ในตัวระบุระบบ
+errGtInPublicId=“>” ในตัวระบุสาธารณะ
+errNamelessDoctype=Nameless doctype.
+errConsecutiveHyphens=Consecutive hyphens did not terminate a comment. “--” is not permitted inside a comment, but e.g. “- -” is.
+errPrematureEndOfComment=Premature end of comment. Use “-->” to end a comment properly.
+errBogusComment=Bogus comment.
+errUnquotedAttributeLt=“<” in an unquoted attribute value. Probable cause: Missing “>” immediately before.
+errUnquotedAttributeGrave=“`” in an unquoted attribute value. Probable cause: Using the wrong character as a quote.
+errUnquotedAttributeQuote=Quote in an unquoted attribute value. Probable causes: Attributes running together or a URL query string in an unquoted attribute value.
+errUnquotedAttributeEquals=“=” in an unquoted attribute value. Probable causes: Attributes running together or a URL query string in an unquoted attribute value.
+errSlashNotFollowedByGt=A slash was not immediately followed by “>”.
+errNoSpaceBetweenAttributes=No space between attributes.
+errUnquotedAttributeStartLt=“<” at the start of an unquoted attribute value. Probable cause: Missing “>” immediately before.
+errUnquotedAttributeStartGrave=“`” at the start of an unquoted attribute value. Probable cause: Using the wrong character as a quote.
+errUnquotedAttributeStartEquals=“=” at the start of an unquoted attribute value. Probable cause: Stray duplicate equals sign.
+errAttributeValueMissing=ค่าแอตทริบิวต์ขาดหายไป
+errBadCharBeforeAttributeNameLt=Saw “<” when expecting an attribute name. Probable cause: Missing “>” immediately before.
+errEqualsSignBeforeAttributeName=Saw “=” when expecting an attribute name. Probable cause: Attribute name missing.
+errBadCharAfterLt=Bad character after “<”. Probable cause: Unescaped “<”. Try escaping it as “&lt;”.
+errLtGt=Saw “<>”. Probable causes: Unescaped “<” (escape as “&lt;”) or mistyped start tag.
+errProcessingInstruction=พบ “<?” สาเหตุที่เป็นไปได้: พยายามใช้คำสั่งการประมวลผล XML ใน HTML (ไม่รองรับคำสั่งการประมวลผล XML ใน HTML)
+errUnescapedAmpersandInterpretedAsCharacterReference=The string following “&” was interpreted as a character reference. (“&” probably should have been escaped as “&amp;”.)
+errNotSemicolonTerminated=Named character reference was not terminated by a semicolon. (Or “&” should have been escaped as “&amp;”.)
+errNoNamedCharacterMatch=“&” did not start a character reference. (“&” probably should have been escaped as “&amp;”.)
+errQuoteBeforeAttributeName=Saw a quote when expecting an attribute name. Probable cause: “=” missing immediately before.
+errLtInAttributeName=“<” in attribute name. Probable cause: “>” missing immediately before.
+errQuoteInAttributeName=Quote in attribute name. Probable cause: Matching quote missing somewhere earlier.
+errExpectedPublicId=Expected a public identifier but the doctype ended.
+errBogusDoctype=Bogus doctype.
+maybeErrAttributesOnEndTag=End tag had attributes.
+maybeErrSlashInEndTag=Stray “/” at the end of an end tag.
+errNcrNonCharacter=Character reference expands to a non-character.
+errNcrSurrogate=Character reference expands to a surrogate.
+errNcrControlChar=Character reference expands to a control character.
+errNcrCr=A numeric character reference expanded to carriage return.
+errNcrInC1Range=A numeric character reference expanded to the C1 controls range.
+errEofInPublicId=End of file inside public identifier.
+errEofInComment=End of file inside comment.
+errEofInDoctype=End of file inside doctype.
+errEofInAttributeValue=End of file reached when inside an attribute value. Ignoring tag.
+errEofInAttributeName=End of file occurred in an attribute name. Ignoring tag.
+errEofWithoutGt=Saw end of file without the previous tag ending with “>”. Ignoring tag.
+errEofInTagName=End of file seen when looking for tag name. Ignoring tag.
+errEofInEndTag=End of file inside end tag. Ignoring tag.
+errEofAfterLt=End of file after “<”.
+errNcrOutOfRange=Character reference outside the permissible Unicode range.
+errNcrUnassigned=Character reference expands to a permanently unassigned code point.
+errDuplicateAttribute=Duplicate attribute.
+errEofInSystemId=End of file inside system identifier.
+errExpectedSystemId=Expected a system identifier but the doctype ended.
+errMissingSpaceBeforeDoctypeName=Missing space before doctype name.
+errNestedComment=พบ “<!--” ในความคิดเห็น สาเหตุที่เป็นไปได้: ความคิดเห็นที่ซ้อนกัน (ไม่อนุญาต)
+errNcrZero=Character reference expands to zero.
+errNoSpaceBetweenDoctypeSystemKeywordAndQuote=No space between the doctype “SYSTEM” keyword and the quote.
+errNoSpaceBetweenPublicAndSystemIds=No space between the doctype public and system identifiers.
+errNoSpaceBetweenDoctypePublicKeywordAndQuote=No space between the doctype “PUBLIC” keyword and the quote.
+
+# Tree builder errors
+errDeepTree=ทรีเอกสารลึกเกินไป ทรีจะถูกลดขนาดให้เหลือความลึกเพียง 513 อิลิเมนต์
+errStrayStartTag2=Stray start tag “%1$S”.
+errStrayEndTag=Stray end tag “%1$S”.
+errUnclosedElements=End tag “%1$S” seen, but there were open elements.
+errUnclosedElementsImplied=End tag “%1$S” implied, but there were open elements.
+errUnclosedElementsCell=A table cell was implicitly closed, but there were open elements.
+errStrayDoctype=Stray doctype.
+errAlmostStandardsDoctype=Almost standards mode doctype. Expected “<!DOCTYPE html>”.
+errQuirkyDoctype=Quirky doctype. Expected “<!DOCTYPE html>”.
+errAlmostStandardsDoctypeVerbose=หน้านี้อยู่ในโหมดเกือบมาตรฐาน เค้าโครงหน้าอาจได้รับผลกระทบ สำหรับโหมดมาตรฐาน ให้ใช้ “<!DOCTYPE html>”
+errQuirkyDoctypeVerbose=หน้านี้อยู่ในโหมด Quirks เค้าโครงหน้าอาจได้รับผลกระทบ สำหรับโหมดมาตรฐาน ให้ใช้ “<!DOCTYPE html>”
+errNonSpaceInTrailer=Non-space character in page trailer.
+errNonSpaceAfterFrameset=Non-space after “frameset”.
+errNonSpaceInFrameset=Non-space in “frameset”.
+errNonSpaceAfterBody=Non-space character after body.
+errNonSpaceInColgroupInFragment=Non-space in “colgroup” when parsing fragment.
+errNonSpaceInNoscriptInHead=Non-space character inside “noscript” inside “head”.
+errFooBetweenHeadAndBody=“%1$S” element between “head” and “body”.
+errStartTagWithoutDoctype=Start tag seen without seeing a doctype first. Expected “<!DOCTYPE html>”.
+errNoSelectInTableScope=No “select” in table scope.
+errStartSelectWhereEndSelectExpected=“select” start tag where end tag expected.
+errStartTagWithSelectOpen=“%1$S” start tag with “select” open.
+errBadStartTagInNoscriptInHead=แท็กเริ่มต้น “%1$S” ใน “noscript” ใน “head” ไม่ถูกต้อง
+errImage=Saw a start tag “image”.
+errFooSeenWhenFooOpen2=เห็นแท็กเริ่มต้น “%1$S” แล้วแต่อิลิเมนต์ของชนิดเดียวกันถูกเปิดไว้อยู่แล้ว
+errHeadingWhenHeadingOpen=Heading cannot be a child of another heading.
+errFramesetStart=“frameset” start tag seen.
+errNoCellToClose=No cell to close.
+errStartTagInTable=Start tag “%1$S” seen in “table”.
+errFormWhenFormOpen=Saw a “form” start tag, but there was already an active “form” element. Nested forms are not allowed. Ignoring the tag.
+errTableSeenWhileTableOpen=Start tag for “table” seen but the previous “table” is still open.
+errStartTagInTableBody=“%1$S” start tag in table body.
+errEndTagSeenWithoutDoctype=End tag seen without seeing a doctype first. Expected “<!DOCTYPE html>”.
+errEndTagAfterBody=Saw an end tag after “body” had been closed.
+errEndTagSeenWithSelectOpen=“%1$S” end tag with “select” open.
+errGarbageInColgroup=Garbage in “colgroup” fragment.
+errEndTagBr=End tag “br”.
+errNoElementToCloseButEndTagSeen=No “%1$S” element in scope but a “%1$S” end tag seen.
+errHtmlStartTagInForeignContext=HTML start tag “%1$S” in a foreign namespace context.
+errNoTableRowToClose=No table row to close.
+errNonSpaceInTable=Misplaced non-space characters inside a table.
+errUnclosedChildrenInRuby=Unclosed children in “ruby”.
+errStartTagSeenWithoutRuby=Start tag “%1$S” seen without a “ruby” element being open.
+errSelfClosing=Self-closing syntax (“/>”) used on a non-void HTML element. Ignoring the slash and treating as a start tag.
+errNoCheckUnclosedElementsOnStack=Unclosed elements on stack.
+errEndTagDidNotMatchCurrentOpenElement=End tag “%1$S” did not match the name of the current open element (“%2$S”).
+errEndTagViolatesNestingRules=End tag “%1$S” violates nesting rules.
+errEndWithUnclosedElements=พบแท็กปิดท้ายสำหรับ “%1$S” แต่มีอิลิเมนต์ที่ยังไม่ได้ปิด
+errListUnclosedStartTags=อิลิเมนต์ที่ไม่ได้ปิด
diff --git a/l10n-th/dom/chrome/layout/layout_errors.properties b/l10n-th/dom/chrome/layout/layout_errors.properties
new file mode 100644
index 0000000000..c8ff4d9713
--- /dev/null
+++ b/l10n-th/dom/chrome/layout/layout_errors.properties
@@ -0,0 +1,53 @@
+# 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/.
+
+ImageMapRectBoundsError=แอตทริบิวต์ "coords" ของแท็ก <area shape="rect"> ไม่ได้อยู่ในรูปแบบ "left,top,right,bottom".
+ImageMapCircleWrongNumberOfCoords=แอตทริบิวต์ "coords" ของแท็ก <area shape="circle"> ไม่ได้อยู่ในรูปแบบ "center-x,center-y,radius".
+ImageMapCircleNegativeRadius=แอตทริบิวต์ "coords" ของแท็ก <area shape="circle"> มีค่ารัศมีติดลบ.
+ImageMapPolyWrongNumberOfCoords=แอตทริบิวต์ "coords" ของแท็ก <area shape="poly"> ไม่ได้อยู่ในรูปแบบ"x1,y1,x2,y2 …".
+ImageMapPolyOddNumberOfCoords=แอตทริบิวต์ "coords" ของแท็ก <area shape="poly"> ขาดพิกัด "y" ตัวสุดท้ายไป (รูปแบบที่ถูกต้องคือ "x1,y1,x2,y2 …").
+
+ScrollLinkedEffectFound3=ไซต์นี้ดูเหมือนจะใช้เอฟเฟ็กต์การวางตำแหน่งที่เชื่อมโยงกับการเลื่อน คุณลักษณะนี้อาจทำงานได้ไม่ดีกับการแพนแบบอะซิงโครนัส ดู https://firefox-source-docs.mozilla.org/performance/scroll-linked_effects.html สำหรับรายละเอียดเพิ่มเติมและเข้าร่วมการสนทนาเกี่ยวกับเครื่องมือและคุณลักษณะที่เกี่ยวข้อง!
+
+## LOCALIZATION NOTE(CompositorAnimationWarningContentTooLargeArea):
+## %1$S is an integer value of the area of the frame
+## %2$S is an integer value of the area of a limit based on the viewport size
+CompositorAnimationWarningContentTooLargeArea=ไม่สามารถเรียกใช้ภาพเคลื่อนไหวบนคอมโพสิเตอร์ได้เนื่องจากพื้นที่ของเฟรม (%1$S) มีขนาดใหญ่เกินไปเมื่อเทียบกับกรอบการมองเห็น (มีขนาดใหญ่กว่า %2$S)
+## LOCALIZATION NOTE(CompositorAnimationWarningContentTooLarge2):
+## (%1$S, %2$S) is a pair of integer values of the frame size
+## (%3$S, %4$S) is a pair of integer values of a limit based on the viewport size
+## (%5$S, %6$S) is a pair of integer values of an absolute limit
+CompositorAnimationWarningContentTooLarge2=ไม่สามารถเรียกใช้ภาพเคลื่อนไหวบนคอมโพสิเตอร์ได้เนื่องจากขนาดเฟรม (%1$S, %2$S) มีขนาดเชิงสัมพันธ์ใหญ่เกินกว่ากรอบการมองเห็น (มีขนาดใหญ่กว่า (%3$S, %4$S)) หรือมีขนาดใหญ่กว่าค่าที่อนุญาตสูงสุด (%5$S, %6$S)
+## LOCALIZATION NOTE(CompositorAnimationWarningTransformBackfaceVisibilityHidden):
+## 'backface-visibility: hidden' is a CSS property, don't translate it.
+CompositorAnimationWarningTransformBackfaceVisibilityHidden=ไม่สามารถเรียกใช้ภาพเคลื่อนไหวการแปลง ‘backface-visibility: hidden’ บนคอมโพสิเตอร์ได้
+## LOCALIZATION NOTE(CompositorAnimationWarningTransformSVG,
+## CompositorAnimationWarningTransformWithGeometricProperties,
+## CompositorAnimationWarningTransformWithSyncGeometricAnimations,
+## CompositorAnimationWarningTransformFrameInactive,
+## CompositorAnimationWarningOpacityFrameInactive):
+## 'transform' and 'opacity' mean CSS property names, don't translate it.
+CompositorAnimationWarningTransformSVG=ไม่สามารถเรียกใช้ภาพเคลื่อนไหวการแปลง ‘transform’ ที่อยู่บนอิลิเมนต์ที่มี SVG บนคอมโพสิเตอร์ได้
+CompositorAnimationWarningTransformWithGeometricProperties=ไม่สามารถเรียกใช้ภาพเคลื่อนไหว ‘transform’ บนคอมโพสิเตอร์เมื่อคุณสมบัติเมื่อคุณสมบัติด้านเรขาคณิตเคลื่อนไหวอยู่บนอิลิเมนต์เดียวกันในเวลาเดียวกันได้
+CompositorAnimationWarningTransformWithSyncGeometricAnimations=ไม่สามารถเรียกใช้ภาพเคลื่อนไหว ‘transform’ บนคอมโพสิเตอร์ได้เนื่องจากควรซิงโครไนซ์กับภาพเคลื่อนไหวคุณสมบัติด้านเรขาคณิตซึ่งเริ่มที่เวลาเดียวกัน
+CompositorAnimationWarningTransformFrameInactive=ไม่สามารถเรียกใช้ภาพเคลื่อนไหวบนคอมโพสิเตอร์ได้เนื่องจากเฟรมไม่ได้ถูกทำเครื่องหมายว่าใช้งานอยู่สำหรับภาพเคลื่อนไหว ‘transform’
+CompositorAnimationWarningTransformIsBlockedByImportantRules=ไม่สามารถเรียกใช้ภาพเคลื่อนไหว transform บนคอมโพสิเตอร์ได้เนื่องจากคุณสมบัติที่เกี่ยวข้องกับ transform ถูกเขียนทับโดยกฎ !important
+CompositorAnimationWarningOpacityFrameInactive=ไม่สามารถเรียกใช้ภาพเคลื่อนไหวบนคอมโพสิเตอร์ได้เนื่องจากเฟรมไม่ได้ถูกทำเครื่องหมายว่าใช้งานอยู่สำหรับภาพเคลื่อนไหว ‘opacity’
+CompositorAnimationWarningHasRenderingObserver=ไม่สามารถเรียกใช้ภาพเคลื่อนไหวบนคอมโพสิเตอร์ได้เนื่องจากอิลิเมนต์มีตัวสังเกตการแสดงผล (-moz-element หรือ SVG clipping/masking)
+CompositorAnimationWarningHasCurrentColor=ไม่สามารถเรียกใช้ภาพเคลื่อนไหวของ ‘background-color’ บนตัวจัดวางองค์ประกอบด้วยคีย์เฟรม ‘current-color’ ได้
+
+## LOCALIZATION NOTE: Do not translate zoom, calc(), "transform", "transform-origin: 0 0"
+ZoomPropertyWarning=หน้านี้ใช้คุณสมบัติ “zoom” ซึ่งไม่ใช่มาตรฐาน พิจารณาใช้ calc() ในค่าคุณสมบัติที่สัมพันธ์กัน หรือใช้ “transform” ควบคู่กับ “transform-origin: 0 0”
+
+## LOCALIZATION NOTE(PrincipalWritingModePropagationWarning):
+## Do not translate <html>, <body>, CSS, "writing-mode", "direction", "text-orientation", :root, and "The Principal Writing Mode" because they are technical terms.
+PrincipalWritingModePropagationWarning=เมื่อแสดงผลอิลิเมนต์ <html> ค่าของคุณสมบัติ CSS “writing-mode”, “direction”, และ “text-orientation” ที่ใช้บนอิลิเมนต์ <html> จะถูกนำมาจากค่าของอิลิเมนต์ <body> ที่คำนวณแล้ว ไม่ใช่จากค่าของตัวอิลิเมนต์ <html> เอง ให้พิจารณาตั้งค่าคุณสมบัติเหล่านี้บนคลาสแฝง CSS ใน :root สำหรับข้อมูลเพิ่มเติม ให้ดูที่ “The Principal Writing Mode” ใน https://www.w3.org/TR/css-writing-modes-3/#principal-flow
+
+## LOCALIZATION NOTE(ScrollAnchoringDisabledInContainer):
+## %1$S is an integer value with the total number of adjustments
+## %2$S is a floating point value with the average distance adjusted
+## %3$S is a floating point value with the total adjusted distance
+ScrollAnchoringDisabledInContainer=การกำหนดจุดยึดการเลื่อนถูกปิดใช้งานในคอนเทนเนอร์การเลื่อนเนื่องจากมีการปรับเปลี่ยนอย่างต่อเนื่องมากเกินไป (%1$S) พร้อมระยะทางรวมที่น้อยเกินไป (เฉลี่ย %2$S px, รวม %3$S px)
+
+ForcedLayoutStart=เค้าโครงถูกบังคับก่อนที่หน้าจะโหลดอย่างครบถ้วน หากสไตล์ชีตยังไม่ถูกโหลด สิ่งนี้อาจทำให้เนื้อหาที่ไม่มีการจัดรูปแบบแสดงผลแบบกะพริบได้
diff --git a/l10n-th/dom/chrome/layout/printing.properties b/l10n-th/dom/chrome/layout/printing.properties
new file mode 100644
index 0000000000..0fca1f03b9
--- /dev/null
+++ b/l10n-th/dom/chrome/layout/printing.properties
@@ -0,0 +1,56 @@
+# 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/.
+
+# Page number formatting
+## @page_number The current page number
+#LOCALIZATION NOTE (pagenumber): Do not translate %ld in the following line.
+# Place the word %ld where the page number and number of pages should be
+# The first %ld will receive the the page number
+pagenumber=%1$d
+
+# Page number formatting
+## @page_number The current page number
+## @page_total The total number of pages
+#LOCALIZATION NOTE (pageofpages): Do not translate %ld in the following line.
+# Place the word %ld where the page number and number of pages should be
+# The first %ld will receive the the page number
+# the second %ld will receive the total number of pages
+pageofpages=%1$d จาก %2$d
+
+PrintToFile=พิมพ์เป็นไฟล์
+print_error_dialog_title=ข้อผิดพลาดเครื่องพิมพ์
+printpreview_error_dialog_title=ข้อผิดพลาดตัวอย่างก่อนพิมพ์
+
+# Printing error messages.
+#LOCALIZATION NOTE: Some of these messages come in pairs, one
+# for printing and one for print previewing. You can remove that
+# distinction in your language by removing the entity with the _PP
+# suffix; then the entity without a suffix will be used for both.
+# You can also add that distinction to any of the messages that don't
+# already have it by adding a new entity with a _PP suffix.
+#
+# For instance, if you delete PERR_GFX_PRINTER_DOC_IS_BUSY_PP, then
+# the PERR_GFX_PRINTER_DOC_IS_BUSY message will be used for that error
+# condition when print previewing as well as when printing. If you
+# add PERR_FAILURE_PP, then PERR_FAILURE will only be used when
+# printing, and PERR_FAILURE_PP will be used under the same conditions
+# when print previewing.
+#
+PERR_FAILURE=เกิดข้อผิดพลาดขณะพิมพ์
+
+PERR_ABORT=งานพิมพ์ถูกขัดขวางหรือยกเลิก
+PERR_NOT_AVAILABLE=ฟังก์ชันการพิมพ์บางอย่างไม่พร้อมใช้งานในขณะนี้
+PERR_NOT_IMPLEMENTED=ฟังก์ชันการพิมพ์บางอย่างยังไม่มีการนำมาใช้
+PERR_OUT_OF_MEMORY=มีหน่วยความจำว่างไม่เพียงพอที่จะพิมพ์
+PERR_UNEXPECTED=เกิดปัญหาที่ไม่คาดคิดขณะพิมพ์
+
+PERR_GFX_PRINTER_NO_PRINTER_AVAILABLE=ไม่มีเครื่องพิมพ์
+PERR_GFX_PRINTER_NO_PRINTER_AVAILABLE_PP=ไม่มีเครื่องพิมพ์ ไม่สามารถแสดงตัวอย่างก่อนพิมพ์
+PERR_GFX_PRINTER_NAME_NOT_FOUND=ไม่พบเครื่องพิมพ์ที่เลือก
+PERR_GFX_PRINTER_COULD_NOT_OPEN_FILE=ไม่สามารถเปิดไฟล์ปลายทางสำหรับพิมพ์เป็นไฟล์
+PERR_GFX_PRINTER_STARTDOC=การพิมพ์ล้มเหลวขณะเริ่มงานพิมพ์
+PERR_GFX_PRINTER_ENDDOC=การพิมพ์ล้มเหลวขณะเสร็จสิ้นงานพิมพ์
+PERR_GFX_PRINTER_STARTPAGE=การพิมพ์ล้มเหลวขณะเริ่มหน้าใหม่
+PERR_GFX_PRINTER_DOC_IS_BUSY=ยังไม่สามารถพิมพ์เอกสารนี้ได้ เอกสารกำลังโหลดอยู่
+PERR_GFX_PRINTER_DOC_IS_BUSY_PP=เอกสารยังโหลดไม่เสร็จ ไม่สามารถแสดงตัวอย่างการพิมพ์ได้ในตอนนี้
diff --git a/l10n-th/dom/chrome/layout/xmlparser.properties b/l10n-th/dom/chrome/layout/xmlparser.properties
new file mode 100644
index 0000000000..1b7032c01a
--- /dev/null
+++ b/l10n-th/dom/chrome/layout/xmlparser.properties
@@ -0,0 +1,48 @@
+# 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/.
+
+# Map Expat error codes to error strings
+1 = หน่วยความจำหมด
+2 = ผิดไวยากรณ์
+3 = ไม่พบอิลิเมนต์ราก
+4 = ไม่ถูกรูปแบบที่ดี
+5 = ไม่ได้ปิดโทเค็น
+6 = ส่วนของอักขระ
+7 = แท็กไม่เข้าคู่กัน
+8 = คุณลักษณะซ้ำซ้อน
+9 = มีขยะอยู่หลังอิลิเมนต์เอกสาร
+10 = อ้างถึงพารามิเตอร์ไม่ถูกต้อง
+11 = ไม่ได้ระบุเอนทิตี
+12 = อ้างถึงเอนทิตีวนซ้ำ
+13 = เอนทิตีไม่ประสานเวลา
+14 = อ้างถึงจำนวนอักขระไม่ถูกต้อง
+15 = อ้างถึงไบนารีเอนทิตี
+16 = อ้างถึงเอนทิตีภายนอก
+17 = ไม่ได้ประกาศข้อความหรือ XML ที่จุดเริ่มต้นเอนทิตี
+18 = ไม่รู้จักรหัสอักขระ
+19 = การประกาศรหัสอักขระในเอกสาร XML ไม่ถูกต้อง
+20 = ไม่ได้ปิดส่วน CDATA
+21 = มีความผิดพลาดในการประมวลผลอ้างอิงเอนทิตีภายนอก
+22 = เอกสารไม่เป็นเอกเทศ
+23 = ยังไม่มีสถานะตัวแจง
+24 = เอนทิตีถูกประกาศในเอนทิตีพารามิเตอร์
+27 = คำนำหน้าไม่ผูกกับเนมสเปซ
+28 = ไม่ต้องประกาศคำนำหน้า
+29 = มาร์กอัพในพารามิเตอร์เอนทิตีไม่สมบูรณ์
+30 = การประกาศรูปแบบเอกสาร XML ไม่เป็นแบบที่ถูกต้อง
+31 = text declaration not well-formed
+32 = illegal character(s) in public id
+38 = reserved prefix (xml) must not be undeclared or bound to another namespace name
+39 = reserved prefix (xmlns) must not be declared or undeclared
+40 = prefix must not be bound to one of the reserved namespace names
+
+# %1$S is replaced by the Expat error string, may be followed by Expected (see below)
+# %2$S is replaced by URL
+# %3$u is replaced by line number
+# %4$u is replaced by column number
+XMLParsingError = การแจกแจงเอกสาร XML ผิดพลาด : %1$S\nที่ตั้ง : %2$S\nบรรทัดที่ %3$u, คอลัมน์ %4$u :
+
+# %S is replaced by a tag name.
+# This gets appended to the error string if the error is mismatched tag.
+Expected = . คาดหวัง : </%S>.
diff --git a/l10n-th/dom/chrome/layout/xul.properties b/l10n-th/dom/chrome/layout/xul.properties
new file mode 100644
index 0000000000..34414b3c3a
--- /dev/null
+++ b/l10n-th/dom/chrome/layout/xul.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/.
+
+PINotInProlog=<?%1$S?> การประมวลผลคำสั่งจะไม่เกิดผลภายนอก prolog อีก (ดู bug 360119).
diff --git a/l10n-th/dom/chrome/mathml/mathml.properties b/l10n-th/dom/chrome/mathml/mathml.properties
new file mode 100644
index 0000000000..1724c4fecf
--- /dev/null
+++ b/l10n-th/dom/chrome/mathml/mathml.properties
@@ -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/.
+
+InvalidChild=มาร์กอัพไม่ถูกต้อง: <%1$S> ไม่ได้รับอนุญาตให้เป็น child ของ <%2$S>
+ChildCountIncorrect=มาร์กอัพไม่ถูกต้อง: จำนวนของ children สำหรับแท็ก <%1$S/> ไม่ถูกต้อง
+DuplicateMprescripts=มาร์กอัพไม่ถูกต้อง: มี <mprescripts/> มากกว่าหนึ่งใน <mmultiscripts/>
+# LOCALIZATION NOTE: The first child of <mmultiscript/> is the base, that is the element to which scripts are attached.
+NoBase=มาร์กอัพไม่ถูกต้อง: คาดหวัง Base element ตัวเดียวที่ถูกต้องใน <mmultiscripts/> ไม่พบอะไรเลย
+SubSupMismatch=มาร์กอัพไม่ถูกต้อง: คู่ของ subscript/superscript ใน <mmultiscripts/> ไม่สมบูรณ์
+
+# LOCALIZATION NOTE: When localizing the single quotes ('), follow the conventions in css.properties for your target locale.
+AttributeParsingError=ข้อผิดพลาดในการแจงค่า '%1$S' สำหรับ '%2$S' แอตทริบิวต์ของ <%3$S/> แอตทริบิวต์ถูกเพิกเฉย
+AttributeParsingErrorNoTag=ข้อผิดพลาดในการแจงค่า '%1$S' สำหรับ '%2$S' แอตทริบิวต์ แอตทริบิวต์ถูกเพิกเฉย
+LengthParsingError=ข้อผิดพลาดในการแจงค่าแอตทริบิวต์ MathML '%1$S' เป็นความยาว แอตทริบิวต์ถูกเพิกเฉย
diff --git a/l10n-th/dom/chrome/nsWebBrowserPersist.properties b/l10n-th/dom/chrome/nsWebBrowserPersist.properties
new file mode 100644
index 0000000000..ada03ceae6
--- /dev/null
+++ b/l10n-th/dom/chrome/nsWebBrowserPersist.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/.
+
+readError=ไม่สามารถบันทึก %S ได้เนื่องจากไม่สามารถอ่านไฟล์ต้นฉบับ\n\nลองอีกครั้งในภายหลัง หรือติดต่อผู้ดูแลเซิร์ฟเวอร์
+writeError=ไม่สามารถบันทึก %S เนื่องจากเกิดความผิดพลาดที่ระบุไม่ได้\n\nลองบันทึกอีกครั้งลงในตำแหน่งอื่น
+launchError=ไม่สามารถเปิด %S เนื่องจากเกิดข้อผิดพลาดที่ไม่รู้จัก\n\nลองบันทึกไปยังดิสก์ก่อนแล้วเปิดไฟล์
+diskFull=มีพื้นที่ว่างในดิสก์ไม่พอสำหรับการบันทึก %S\n\nลบไฟล์ที่ไม่จำเป็นออกจากดิสก์แล้วลองใหม่อีกครั้ง หรือลองบันทึกลงในตำแหน่งที่ตั้งอื่น
+readOnly=ไม่สามารถบันทึก %S ได้ เนื่องจากดิสก์, โฟลเดอร์, หรือไฟล์ถูกป้องกันการเขียนทับ\n\nปิดการป้องกันการเขียนทับแล้วลองอีกครั้ง หรือลองบันทึกลงในตำแหน่งที่ตั้งอื่น
+accessError=ไม่สามารถบันทึก %S ได้ เนื่องจากคุณไม่สามารถเปลี่ยนแปลงเนื้อหาของโฟลเดอร์\n\nเปลี่ยนการตั้งค่าของโฟลเดอร์แล้วลองอีกครั้ง หรือลองบันทึกลงในตำแหน่งอื่น
+SDAccessErrorCardReadOnly=ไม่สามารถดาวน์โหลดไฟล์เนื่องจากการ์ด SD ถูกใช้งานอยู่
+SDAccessErrorCardMissing=ไม่สามารถดาวน์โหลดไฟล์เนื่องจากการ์ด SD หายไป
+helperAppNotFound=ไม่สามารถเปิด %S เนื่องจากไม่พบแอปพลิเคชันช่วยเหลือที่สัมพันธ์กัน เปลี่ยนความสัมพันธ์ในการตั้งค่าของคุณ
+noMemory=มีหน่วยความจำไม่พอจะทำงานที่คุณสั่ง\n\nปิดโปรแกรมบางตัวแล้วลองใหม่อีกครั้ง
+title=กำลังดาวน์โหลด %S
+fileAlreadyExistsError=ไม่สามารถบันทึก %S ได้ เนื่องจากมีไฟล์ชื่อเดียวกับโฟลเดอร์ที่ชื่อลงท้ายด้วย ‘_files’ อยู่แล้ว\n\nลองบันทึกลงในตำแหน่งที่ตั้งอื่น
+fileNameTooLongError=ไม่สามารถบันทึก %S ได้ เนื่องจากชื่อไฟล์ยาวเกินไป\n\nลองบันทึกด้วยชื่อที่สั้นกว่านั้น
diff --git a/l10n-th/dom/chrome/security/caps.properties b/l10n-th/dom/chrome/security/caps.properties
new file mode 100644
index 0000000000..5ee6738fa4
--- /dev/null
+++ b/l10n-th/dom/chrome/security/caps.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/.
+CheckLoadURIError = ข้อผิดพลาดความปลอดภัย: เนื้อหาที่ %S อาจไม่โหลดหรือลิงก์ไปยัง %S
+CheckSameOriginError = ข้อผิดพลาดความปลอดภัย: เนื้อหาที่ %S อาจไม่โหลดข้อมูลจาก %S
+ExternalDataError = ข้อผิดพลาดความปลอดภัย: เนื้อหาที่ %S พยายามโหลด %S แต่อาจไม่โหลดข้อมูลภายนอกเมื่อถูกใช้เป็นภาพ
+
+CreateWrapperDenied = ไม่มีสิทธิเข้าถึงการสร้างตัวหุ้มสำหรับวัตถุของคลาส %S
+CreateWrapperDeniedForOrigin = Permission denied for <%2$S> to create wrapper for object of class %1$S
diff --git a/l10n-th/dom/chrome/security/csp.properties b/l10n-th/dom/chrome/security/csp.properties
new file mode 100644
index 0000000000..dfa9dbedc9
--- /dev/null
+++ b/l10n-th/dom/chrome/security/csp.properties
@@ -0,0 +1,125 @@
+# 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/.
+
+# CSP Warnings:
+# LOCALIZATION NOTE (CSPViolation):
+# %1$S is the reason why the resource has not been loaded.
+CSPViolation = การตั้งค่าของหน้าได้ปิดกั้นการโหลดทรัพยากร: %1$S
+# LOCALIZATION NOTE (CSPViolationWithURI):
+# %1$S is the directive that has been violated.
+# %2$S is the URI of the resource which violated the directive.
+CSPViolationWithURI = การตั้งค่าของหน้าได้ปิดกั้นการโหลดทรัพยากรที่ %2$S (“%1$S”)
+# LOCALIZATION NOTE (CSPROViolation):
+# %1$S is the reason why the resource has not been loaded.
+CSPROViolation = เกิดการละเมิดสำหรับนโยบาย CSP แบบ report-only (“%1$S”) อนุญาตให้ใช้ลักษณะการทำงานนี้ และส่งรายงาน CSP แล้ว
+# LOCALIZATION NOTE (CSPROViolationWithURI):
+# %1$S is the directive that has been violated.
+# %2$S is the URI of the resource which violated the directive.
+CSPROViolationWithURI = การตั้งค่าของหน้าได้สังเกตการโหลดทรัพยากรที่ %2$S (“%1$S”) รายงาน CSP กำลังจะถูกส่ง
+# LOCALIZATION NOTE (triedToSendReport):
+# %1$S is the URI we attempted to send a report to.
+triedToSendReport = พยายามส่งรายงานไปยัง URI ที่ใช้ไม่ได้ : "%1$S"
+tooManyReports = ได้ป้องกันไม่ให้รายงาน CSP ถูกส่งภายในระยะเวลาอันสั้นแล้ว
+# LOCALIZATION NOTE (couldNotParseReportURI):
+# %1$S is the report URI that could not be parsed
+couldNotParseReportURI = ไม่สามารถแยกส่วน URI ของรายงาน: %1$S
+# LOCALIZATION NOTE (couldNotProcessUnknownDirective):
+# %1$S is the unknown directive
+couldNotProcessUnknownDirective = ไม่สามารถทำตามคำสั่งที่ไม่รู้จัก '%1$S'
+# LOCALIZATION NOTE (ignoringUnknownOption):
+# %1$S is the option that could not be understood
+ignoringUnknownOption = ละเลยตัวเลือกที่ไม่รู้จัก %1$S
+# LOCALIZATION NOTE (ignoringDuplicateSrc):
+# %1$S defines the duplicate src
+ignoringDuplicateSrc = ละเลยต้นฉบับที่ซ้ำกัน %1$S
+# LOCALIZATION NOTE (ignoringNonAsciiToken):
+# %1$S defines the name of the directive
+# %2$S is the token string containing non-ASCII characters.
+ignoringNonAsciiToken = ละเลยคำสั่ง ‘%1$S’ ที่มีโทเค็น ‘%2$S’ ซึ่งประกอบด้วยอักขระที่ไม่ได้อยู่ใน ASCII
+# LOCALIZATION NOTE (ignoringSrcFromMetaCSP):
+# %1$S defines the ignored src
+ignoringSrcFromMetaCSP = ละเลยต้นฉบับ ‘%1$S’ (ไม่รองรับเมื่อส่งผ่านอิลิเมนต์ meta)
+# LOCALIZATION NOTE (ignoringSrcWithinNonceOrHashDirective):
+# %1$S is the ignored src (e.g. "unsafe-inline")
+# %2$S is the directive (e.g. "script-src-elem")
+ignoringSrcWithinNonceOrHashDirective = ละเลย “%1$S” ที่อยู่ภายใน %2$S: มีการระบุ nonce-source หรือ hash-source
+# LOCALIZATION NOTE (ignoringScriptSrcForStrictDynamic):
+# %1$S is the ignored src
+# %1$S is the directive src (e.g. "script-src-elem")
+# 'strict-dynamic' should not be localized
+ignoringScriptSrcForStrictDynamic = ละเลย “%1$S” ที่อยู่ภายใน %2$S: มีการระบุ ‘strict-dynamic’
+# LOCALIZATION NOTE (ignoringStrictDynamic):
+# %1$S is the ignored src
+ignoringStrictDynamic = ละเลยต้นฉบับ “%1$S” (รองรับภายใน script-src เท่านั้น)
+# LOCALIZATION NOTE (ignoringUnsafeEval):
+# %1$S is the csp directive (e.g. script-src-elem)
+# 'unsafe-eval' and 'wasm-unsafe-eval' should not be localized
+ignoringUnsafeEval = ละเลย ‘unsafe-eval’ หรือ ‘wasm-unsafe-eval’ ที่อยู่ภายใน “%1$S”
+# LOCALIZATION NOTE (strictDynamicButNoHashOrNonce):
+# %1$S is the csp directive that contains 'strict-dynamic'
+# 'strict-dynamic' should not be localized
+strictDynamicButNoHashOrNonce = คำสำคัญ ‘strict-dynamic’ ที่อยู่ภายใน “%1$S” ที่ไม่มี nonce หรือแฮชที่ถูกต้องอาจปิดกั้นสคริปต์ทั้งหมดไม่ให้โหลดได้
+# LOCALIZATION NOTE (reportURInotHttpsOrHttp2):
+# %1$S is the ETLD of the report URI that is not HTTP or HTTPS
+reportURInotHttpsOrHttp2 = URI ของรายงาน (%1$S) ควรเป็น URI แบบ HTTP หรือ HTTPS
+# LOCALIZATION NOTE (reportURInotInReportOnlyHeader):
+# %1$S is the ETLD of the page with the policy
+reportURInotInReportOnlyHeader = ไซต์ (%1$S) มีนโยบาย Report-Only ที่ไม่มี URI รายงาน CSP จะไม่ปิดกั้นและไม่สามารถรายงานการละเมิดนโยบายนี้ได้
+# LOCALIZATION NOTE (failedToParseUnrecognizedSource):
+# %1$S is the CSP Source that could not be parsed
+failedToParseUnrecognizedSource = ไม่สามารถวิเคราะห์รูปแบบต้นฉบับที่ไม่รู้จัก %1$S
+# LOCALIZATION NOTE (upgradeInsecureRequest):
+# %1$S is the URL of the upgraded request; %2$S is the upgraded scheme.
+upgradeInsecureRequest = อัปเกรดคำขอที่ไม่ปลอดภัย ‘%1$S’ เพื่อใช้ ‘%2$S’
+# LOCALIZATION NOTE (ignoreSrcForDirective):
+ignoreSrcForDirective = ละเลย srcs สำหรับคำสั่ง ‘%1$S’
+# LOCALIZATION NOTE (hostNameMightBeKeyword):
+# %1$S is the hostname in question and %2$S is the keyword
+hostNameMightBeKeyword = ตีความ %1$S เป็นชื่อโฮสต์แทนที่จะเป็นคำสำคัญ หากคุณต้องการให้ตีความเป็นคำสำคัญ ให้ใช้ ‘%2$S’ (อยู่ในอัญประกาศเดี่ยว)
+# LOCALIZATION NOTE (notSupportingDirective):
+# directive is not supported (e.g. 'reflected-xss')
+notSupportingDirective = ไม่รองรับคำสั่ง ‘%1$S’ คำสั่งและค่าต่าง ๆ จะถูกละเลย
+# LOCALIZATION NOTE (blockAllMixedContent):
+# %1$S is the URL of the blocked resource load.
+blockAllMixedContent = ปิดกั้นคำขอที่ไม่ปลอดภัย ‘%1$S’
+# LOCALIZATION NOTE (ignoringDirectiveWithNoValues):
+# %1$S is the name of a CSP directive that requires additional values
+ignoringDirectiveWithNoValues = ละเลย ‘%1$S’ เนื่องจากไม่มีพารามิเตอร์ใด
+# LOCALIZATION NOTE (ignoringReportOnlyDirective):
+# %1$S is the directive that is ignored in report-only mode.
+ignoringReportOnlyDirective = ละเลยคำสั่ง sandbox เมื่อถูกส่งในนโยบาย report-only ‘%1$S’
+# LOCALIZATION NOTE (IgnoringSrcBecauseOfDirective):
+# %1$S is the name of the src that is ignored.
+# %2$S is the name of the directive that causes the src to be ignored.
+IgnoringSrcBecauseOfDirective=ละเลย ‘%1$S’ เนื่องจากคำสั่ง ‘%2$S’
+# LOCALIZATION NOTE (IgnoringSourceWithinDirective):
+# %1$S is the ignored src
+# %2$S is the directive which supports src
+IgnoringSourceWithinDirective = ละเลยต้นฉบับ “%1$S” (ไม่รองรับภายใน ‘%2$S’)
+# LOCALIZATION NOTE (IgnoringSourceWithinDirective):
+# %1$S is the ignored src
+obsoleteBlockAllMixedContent = ละเลย ‘%1$S’ เนื่องจากการอัปเกรดการแสดงผลเนื้อหาแบบผสมทำให้ block-all-mixed-content ถูกเลิกใช้
+
+
+# CSP Errors:
+# LOCALIZATION NOTE (couldntParseInvalidSource):
+# %1$S is the source that could not be parsed
+couldntParseInvalidSource = ไม่สามารถแยกส่วนต้นฉบับที่ไม่ถูกต้อง %1$S
+# LOCALIZATION NOTE (couldntParseInvalidHost):
+# %1$S is the host that's invalid
+couldntParseInvalidHost = ไม่สามารถแยกส่วนโฮสต์ที่ใช้ไม่ได้ %1$S
+# LOCALIZATION NOTE (couldntParsePort):
+# %1$S is the string source
+couldntParsePort = ไม่สามารถแยกส่วนพอร์ตใน %1$S
+# LOCALIZATION NOTE (duplicateDirective):
+# %1$S is the name of the duplicate directive
+duplicateDirective = คำสั่ง %1$S ได้ถูกตรวจพบว่าซ้ำ ทั้งหมดแต่กรณีตัวอย่างแรกจะถูกยกเว้น
+# LOCALIZATION NOTE (couldntParseInvalidSandboxFlag):
+# %1$S is the option that could not be understood
+couldntParseInvalidSandboxFlag = ไม่สามารถแยกส่วนค่าสถานะของ sandbox ‘%1$S’
+
+# LOCALIZATION NOTE (CSPMessagePrefix):
+# Do not translate "Content-Security-Policy", only handle spacing for the colon.
+# %S is a console message that is being prefixed here.
+CSPMessagePrefix = Content-Security-Policy: %S
diff --git a/l10n-th/dom/chrome/security/security.properties b/l10n-th/dom/chrome/security/security.properties
new file mode 100644
index 0000000000..1e712aaa7d
--- /dev/null
+++ b/l10n-th/dom/chrome/security/security.properties
@@ -0,0 +1,167 @@
+# 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/.
+
+# Mixed Content Blocker
+# LOCALIZATION NOTE: "%1$S" is the URI of the blocked mixed content resource
+BlockMixedDisplayContent = ปิดกั้นการโหลดเนื้อหาแบบ mixed display “%1$S” แล้ว
+BlockMixedActiveContent = ปิดกั้นการโหลดเนื้อหาแบบ mixed active “%1$S” แล้ว
+
+# CORS
+# LOCALIZATION NOTE: Do not translate "Access-Control-Allow-Origin", Access-Control-Allow-Credentials, Access-Control-Allow-Methods, Access-Control-Allow-Headers
+CORSDisabled=คำขอ Cross-Origin ถูกปิดกั้น: นโยบาย Same Origin ไม่อนุญาตให้อ่านทรัพยากรระยะไกลที่ %1$S (เหตุผล: CORS ปิดใช้งานอยู่)
+CORSDidNotSucceed2=คำขอ Cross-Origin ถูกปิดกั้น: นโยบาย Same Origin ไม่อนุญาตให้อ่านทรัพยากรระยะไกลที่ %1$S (เหตุผล: คำขอ CORS ไม่สำเร็จ) รหัสสถานะ: %2$S
+CORSOriginHeaderNotAdded=คำขอ Cross-Origin ถูกปิดกั้น: นโยบาย Same Origin ไม่อนุญาตให้อ่านทรัพยากรระยะไกลที่ %1$S (เหตุผล: ไม่สามารถเพิ่มเฮดเดอร์ CORS ‘Origin’ ได้)
+CORSExternalRedirectNotAllowed=คำขอ Cross-Origin ถูกปิดกั้น: นโยบาย Same Origin ไม่อนุญาตให้อ่านทรัพยากรระยะไกลที่ %1$S (เหตุผล: ไม่อนุญาตให้มีการเปลี่ยนเส้นทางภายนอกสำหรับคำขอ CORS)
+CORSRequestNotHttp=คำขอ Cross-Origin ถูกปิดกั้น: นโยบาย Same Origin ไม่อนุญาตให้อ่านทรัพยากรระยะไกลที่ %1$S (เหตุผล: คำขอ CORS ไม่ใช่ http)
+CORSMissingAllowOrigin2=คำขอ Cross-Origin ถูกปิดกั้น: นโยบาย Same Origin ไม่อนุญาตให้อ่านทรัพยากรระยะไกลที่ %1$S (เหตุผล: เฮดเดอร์ CORS ‘Access-Control-Allow-Origin’ ขาดหายไป) รหัสสถานะ: %2$S
+CORSMultipleAllowOriginNotAllowed=คำขอ Cross-Origin ถูกปิดกั้น: นโยบาย Same Origin ไม่อนุญาตให้อ่านทรัพยากรระยะไกลที่ %1$S (เหตุผล: ไม่อนุญาตให้มีเฮดเดอร์ CORS ‘Access-Control-Allow-Origin’ หลายอัน)
+CORSAllowOriginNotMatchingOrigin=คำขอ Cross-Origin ถูกปิดกั้น: นโยบาย Same Origin ไม่อนุญาตให้อ่านทรัพยากรระยะไกลที่ %1$S (เหตุผล: เฮดเดอร์ CORS ‘Access-Control-Allow-Origin’ ไม่ตรงกับ ‘%2$S’)
+CORSNotSupportingCredentials=คำขอ Cross-Origin ถูกปิดกั้น: นโยบาย Same Origin ไม่อนุญาตให้อ่านทรัพยากรระยะไกลที่ %1$S (เหตุผล: ไม่รองรับข้อมูลประจำตัวหากเฮดเดอร์ CORS ‘Access-Control-Allow-Origin’ เป็น ‘*’)
+CORSMethodNotFound=คำขอ Cross-Origin ถูกปิดกั้น: นโยบาย Same Origin ไม่อนุญาตให้อ่านทรัพยากรระยะไกลที่ %1$S (เหตุผล: ไม่พบเมธอดในเฮดเดอร์ CORS ‘Access-Control-Allow-Methods’)
+CORSMissingAllowCredentials=คำขอ Cross-Origin ถูกปิดกั้น: นโยบาย Same Origin ไม่อนุญาตให้อ่านทรัพยากรระยะไกลที่ %1$S (เหตุผล: ต้องการค่า ‘true’ ในเฮดเดอร์ CORS ‘Access-Control-Allow-Credentials’)
+CORSPreflightDidNotSucceed3=คำขอ Cross-Origin ถูกปิดกั้น: นโยบาย Same Origin ไม่อนุญาตให้อ่านทรัพยากรระยะไกลที่ %1$S (เหตุผล: การตอบสนอง CORS preflight ไม่สำเร็จ) รหัสสถานะ: %2$S
+CORSInvalidAllowMethod=คำขอ Cross-Origin ถูกปิดกั้น: นโยบาย Same Origin ไม่อนุญาตให้อ่านทรัพยากรระยะไกลที่ %1$S (เหตุผล: โทเค็น ‘%2$S’ ไม่ถูกต้องในเฮดเดอร์ CORS ‘Access-Control-Allow-Methods’)
+CORSInvalidAllowHeader=คำขอ Cross-Origin ถูกปิดกั้น: นโยบาย Same Origin ไม่อนุญาตให้อ่านทรัพยากรระยะไกลที่ %1$S (เหตุผล: โทเค็น ‘%2$S’ ไม่ถูกต้องในเฮดเดอร์ CORS ‘Access-Control-Allow-Headers’)
+CORSMissingAllowHeaderFromPreflight2=คำขอ Cross-Origin ถูกปิดกั้น: นโยบาย Same Origin ไม่อนุญาตให้อ่านทรัพยากรระยะไกลที่ %1$S (เหตุผล: ไม่อนุญาตให้ใช้เฮดเดอร์ ‘%2$S’ ตามเฮดเดอร์ ‘Access-Control-Allow-Headers’ จากการตอบกลับในการตอบสนอง CORS preflight)
+CORSAllowHeaderFromPreflightDeprecation=คำเตือนเกี่ยวกับคำขอ Cross-Origin: นโยบาย Same Origin จะไม่อนุญาตการอ่านทรัพยากรระยะไกลที่ %1$S ในอีกไม่ช้า (เหตุผล: เมื่อ `Access-Control-Allow-Headers` เป็น `*` เฮดเดอร์ `Authorization` จะไม่ถูกปกคลุม หากต้องการรวมเฮดเดอร์ `Authorization` เฮดเดอร์นั้นจะต้องอยู่ในรายชื่ออย่างชัดเจนในเฮดเดอร์ CORS `Access-Control-Allow-Headers`)
+
+# LOCALIZATION NOTE: Do not translate "Strict-Transport-Security", "HSTS", "max-age" or "includeSubDomains"
+STSUnknownError=Strict-Transport-Security: เกิดข้อผิดพลาดที่ไม่รู้จักในการประมวลผลเฮดเดอร์ที่ระบุโดยไซต์
+STSCouldNotParseHeader=Strict-Transport-Security: ไซต์ระบุเฮดเดอร์ที่ไม่สามารถแจงส่วนได้สำเร็จ
+STSNoMaxAge=Strict-Transport-Security: ไซต์ระบุเฮดเดอร์ที่ไม่มีคำสั่ง ‘max-age’
+STSMultipleMaxAges=Strict-Transport-Security: ไซต์ระบุเฮดเดอร์ที่มีคำสั่ง ‘max-age’ หลายคำสั่ง
+STSInvalidMaxAge=Strict-Transport-Security: ไซต์ระบุเฮดเดอร์ที่มีคำสั่ง ‘max-age’ ที่ไม่ถูกต้อง
+STSMultipleIncludeSubdomains=Strict-Transport-Security: ไซต์ระบุเฮดเดอร์ที่มีคำสั่ง ‘includeSubDomains’ หลายคำสั่ง
+STSInvalidIncludeSubdomains=Strict-Transport-Security: ไซต์ระบุเฮดเดอร์ที่มีคำสั่ง ‘includeSubDomains’ ที่ไม่ถูกต้อง
+STSCouldNotSaveState=Strict-Transport-Security: เกิดข้อผิดพลาดในการจดจำไซต์ในฐานะโฮสต์ Strict-Transport-Security
+
+InsecurePasswordsPresentOnPage=มีช่องกรอกรหัสผ่านอยู่บนหน้าที่ไม่ปลอดภัย (http://) นี่เป็นความเสี่ยงด้านความปลอดภัยที่เปิดโอกาสให้ข้อมูลรับรองการเข้าสู่ระบบของผู้ใช้ถูกขโมยได้
+InsecureFormActionPasswordsPresent=มีช่องกรอกรหัสผ่านในรูปแบบที่มีการกระทำแบบฟอร์มที่ไม่ปลอดภัย (http://) นี่เป็นความเสี่ยงด้านความปลอดภัยที่เปิดโอกาสให้ข้อมูลรับรองการเข้าสู่ระบบของผู้ใช้ถูกขโมยได้
+InsecurePasswordsPresentOnIframe=มีช่องกรอกรหัสผ่านอยู่บน iframe ที่ไม่ปลอดภัย (http://) นี่เป็นความเสี่ยงด้านความปลอดภัยที่เปิดโอกาสให้ข้อมูลรับรองการเข้าสู่ระบบของผู้ใช้ถูกขโมยได้
+# LOCALIZATION NOTE: "%1$S" is the URI of the insecure mixed content resource
+LoadingMixedActiveContent2=โหลดเนื้อหาที่ใช้งานแบบผสม (ไม่ปลอดภัย) “%1$S” บนหน้าที่ปลอดภัย
+LoadingMixedDisplayContent2=โหลดเนื้อหาที่แสดงผลแบบผสม (ไม่ปลอดภัย) “%1$S” บนหน้าที่ปลอดภัย
+LoadingMixedDisplayObjectSubrequestDeprecation=ไม่แนะนำให้โหลดเนื้อหาแบบผสม (ไม่ปลอดภัย) “%1$S” ภายในปลั๊กอินบนหน้าที่ปลอดภัย และจะถูกปิดกั้นในไม่ช้า
+# LOCALIZATION NOTE: "%S" is the URI of the insecure mixed content download
+MixedContentBlockedDownload = ปิดกั้นการดาวน์โหลดเนื้อหาที่ไม่ปลอดภัย “%S” แล้ว
+
+# LOCALIZATION NOTE: Do not translate "allow-scripts", "allow-same-origin", "sandbox" or "iframe"
+BothAllowScriptsAndSameOriginPresent=iframe ที่มีทั้ง allow-scripts และ allow-same-origin เดียวกันสำหรับแอตทริบิวต์ sandbox สามารถเอาคุณลักษณะการทำ sandbox ออกได้
+# LOCALIZATION NOTE: Do not translate "allow-top-navigation-by-user-activation", "allow-top-navigation", "sandbox" or "iframe"
+BothAllowTopNavigationAndUserActivationPresent=iframe ที่มีทั้ง allow-top-navigation และ allow-top-navigation-by-user-activation สำหรับแอตทริบิวต์ sandbox จะอนุญาตการนำทางด้านบน
+
+# Sub-Resource Integrity
+# LOCALIZATION NOTE: Do not translate "script" or "integrity". "%1$S" is the invalid token found in the attribute.
+MalformedIntegrityHash=อิลิเมนต์ script มีแฮชที่มีรูปแบบไม่ถูกต้องในแอตทริบิวต์ integrity: “%1$S” โดยรูปแบบที่ถูกต้องคือ “<อัลกอริทึมแฮช>-<ค่าแฮช>”
+# LOCALIZATION NOTE: Do not translate "integrity"
+InvalidIntegrityLength=แฮชที่มีอยู่ในแอตทริบิวต์ integrity มีความยาวที่ไม่ถูกต้อง
+# LOCALIZATION NOTE: Do not translate "integrity"
+InvalidIntegrityBase64=ไม่สามารถถอดรหัสแฮชที่มีอยู่ในแอตทริบิวต์ integrity ได้
+# LOCALIZATION NOTE: Do not translate "integrity". "%1$S" is the type of hash algorithm in use (e.g. "sha256"). "%2$S" is the value we saw.
+IntegrityMismatch2=ไม่มีแฮช “%1$S” ใดในแอตทริบิวต์ integrity ที่ตรงกับเนื้อหาของทรัพยากรย่อย แฮชที่คำนวณได้คือ “%2$S”
+# LOCALIZATION NOTE: "%1$S" is the URI of the sub-resource that cannot be protected using SRI.
+IneligibleResource=“%1$S” ไม่มีสิทธิ์ตรวจสอบความถูกต้องเนื่องจากไม่ได้เปิดใช้งาน CORS หรือไม่ใช่ same-origin
+# LOCALIZATION NOTE: Do not translate "integrity". "%1$S" is the invalid hash algorithm found in the attribute.
+UnsupportedHashAlg=ไม่รองรับอัลกอริทึมแฮชนี้ในแอตทริบิวต์ integrity: “%1$S”
+# LOCALIZATION NOTE: Do not translate "integrity"
+NoValidMetadata=แอตทริบิวต์ integrity ไม่มีข้อมูลกำกับที่ถูกต้อง
+
+# LOCALIZATION NOTE: Do not translate "RC4".
+WeakCipherSuiteWarning=ไซต์นี้ใช้การเข้ารหัสแบบ RC4 ซึ่งเลิกใช้แล้วและไม่ปลอดภัย
+
+DeprecatedTLSVersion2=ไซต์นี้ใช้ TLS รุ่นที่เลิกใช้แล้ว โปรดอัปเกรดเป็น TLS 1.2 หรือ 1.3
+
+#XCTO: nosniff
+# LOCALIZATION NOTE: Do not translate "X-Content-Type-Options: nosniff".
+MimeTypeMismatch2=ทรัพยากรจาก “%1$S” ถูกปิดกั้นเนื่องจากชนิด MIME (“%2$S”) ไม่ตรงกัน (X-Content-Type-Options: nosniff)
+# LOCALIZATION NOTE: Do not translate "X-Content-Type-Options" and also do not translate "nosniff".
+XCTOHeaderValueMissing=คำเตือนเฮดเดอร์ X-Content-Type-Options: ค่าเป็น “%1$S” คุณตั้งใจจะส่ง “nosniff” ใช่ไหม?
+# LOCALIZATION NOTE: Do not translate "X-Content-Type-Options" and also do not translate "nosniff".
+XTCOWithMIMEValueMissing=ทรัพยากรจาก “%1$S” ไม่ถูกแสดงผลเนื่องจากมีชนิด MIME ที่ไม่รู้จัก, ไม่ถูกต้อง หรือขาดหายไป (X-Content-Type-Options: nosniff)
+
+BlockScriptWithWrongMimeType2=สคริปต์จาก “%1$S” ถูกปิดกั้นเนื่องจากชนิด MIME ที่ไม่ได้รับอนุญาต (“%2$S”)
+WarnScriptWithWrongMimeType=สคริปต์จาก “%1$S” ได้ถูกโหลดถึงแม้ว่าชนิด MIME (“%2$S”) จะไม่ใช่ชนิด MIME ของ JavaScript ที่ถูกต้อง
+# LOCALIZATION NOTE: Do not translate "importScripts()"
+BlockImportScriptsWithWrongMimeType=การโหลดสคริปต์จาก “%1$S” ด้วย importScripts() ถูกปิดกั้นเนื่องจากชนิด MIME ที่ไม่ได้รับอนุญาต (“%2$S”)
+BlockWorkerWithWrongMimeType=การโหลด Worker จาก “%1$S” ถูกปิดกั้นเนื่องจากชนิด MIME ที่ไม่ได้รับอนุญาต (“%2$S”)
+BlockModuleWithWrongMimeType=การโหลดโมดูลจาก “%1$S” ถูกปิดกั้นเนื่องจากชนิด MIME ที่ไม่ได้รับอนุญาต (“%2$S”)
+
+# LOCALIZATION NOTE: Do not translate "data: URI".
+BlockTopLevelDataURINavigation=การนำทางไปยัง data ระดับบนสุด: ไม่อนุญาตให้ใช้ URI (ได้ปิดกั้นการโหลดของ: “%1$S”)
+BlockRedirectToDataURI=ไม่อนุญาตให้เปลี่ยนเส้นทางไปยัง data: URI (ได้ปิดกั้นการโหลด: “%1$S”)
+
+# LOCALIZATION NOTE: Do not translate "file: URI". “%1$S” is the whole URI of the loaded file. “%2$S” is the MIME type e.g. "text/plain".
+BlockFileScriptWithWrongMimeType=การโหลดสคริปต์จากไฟล์: URI (“%1$S”) ถูกปิดกั้นเนื่องจากชนิด MIME (“%2$S”) ไม่ใช่ชนิด MIME ของ JavaScript ที่ถูกต้อง
+
+# LOCALIZATION NOTE: “%S” is the whole URI of the loaded file.
+BlockExtensionScriptWithWrongExt=การโหลดสคริปต์ด้วย URI “%S” ถูกปิดกั้นเนื่องจากไม่อนุญาตให้ใช้ส่วนขยายไฟล์
+
+RestrictBrowserEvalUsage=ไม่อนุญาตให้ใช้ eval() และ eval-like ในโปรเซสหลักหรือในบริบทระบบ (ปิดกั้นการใช้ใน “%1$S”)
+
+# LOCALIZATION NOTE (MixedContentAutoUpgrade):
+# %1$S is the URL of the upgraded request; %2$S is the upgraded scheme.
+MixedContentAutoUpgrade=อัปเกรดคำขอแสดงผลที่ไม่ปลอดภัย ‘%1$S’ ให้ใช้ ‘%2$S’
+# LOCALIZATION NOTE (RunningClearSiteDataValue):
+# %S is the URI of the resource whose data was cleaned up
+RunningClearSiteDataValue=เฮดเดอร์ Clear-Site-Data บังคับให้ล้างข้อมูลของ “%S”
+UnknownClearSiteDataValue=พบเฮดเดอร์ Clear-Site-Data ไม่รู้จักค่า “%S”
+
+# Reporting API
+ReportingHeaderInvalidJSON=เฮดเดอร์ Reporting: ได้รับค่า JSON ที่ไม่ถูกต้อง
+ReportingHeaderInvalidNameItem=เฮดเดอร์ Reporting: ชื่อไม่ถูกต้องสำหรับกลุ่ม
+ReportingHeaderDuplicateGroup=เฮดเดอร์ Reporting: เพิกเฉยกลุ่มที่ซ้ำกันชื่อ “%S”
+ReportingHeaderInvalidItem=เฮดเดอร์ Reporting: เพิกเฉยรายการที่ไม่ถูกต้องชื่อ “%S”
+ReportingHeaderInvalidEndpoint=เฮดเดอร์ Reporting: เพิกเฉยตำแหน่งข้อมูลที่ไม่ถูกต้องสำหรับรายการชื่อ “%S”
+# LOCALIZATION NOTE(ReportingHeaderInvalidURLEndpoint): %1$S is the invalid URL, %2$S is the group name
+ReportingHeaderInvalidURLEndpoint=เฮดเดอร์ Reporting: เพิกเฉย URL ตำแหน่งข้อมูลที่ไม่ถูกต้อง “%1$S” สำหรับรายการชื่อ “%2$S”
+
+FeaturePolicyUnsupportedFeatureName=นโยบาย Feature: ข้ามชื่อฟีเจอร์ “%S” ซึ่งไม่รองรับ
+# TODO: would be nice to add a link to the Feature-Policy MDN documentation here. See bug 1449501
+FeaturePolicyInvalidEmptyAllowValue= นโยบาย Feature: ข้ามรายการ allow เปล่าสำหรับฟีเจอร์: “%S”
+# TODO: would be nice to add a link to the Feature-Policy MDN documentation here. See bug 1449501
+FeaturePolicyInvalidAllowValue=นโยบาย Feature: ข้ามค่า allow “%S” ซึ่งไม่รองรับ
+
+# LOCALIZATION NOTE: "%1$S" is the limitation length (bytes) of referrer URI, "%2$S" is the origin of the referrer URI.
+ReferrerLengthOverLimitation=เฮดเดอร์ HTTP Referrer: ความยาวเกินขีดจำกัด “%1$S” ไบต์ - กำลังลดขนาดเฮดเดอร์ Referrer ลงเป็น origin: “%2$S”
+# LOCALIZATION NOTE: "%1$S" is the limitation length (bytes) of referrer URI, "%2$S" is the origin of the referrer URI.
+ReferrerOriginLengthOverLimitation=เฮดเดอร์ HTTP Referrer: ความยาวของ origin ภายใน Referrer เกินขีดจำกัด “%1$S” ไบต์ - กำลังเอา Referrer ที่มี origin “%2$S” ออก
+
+# LOCALIZATION NOTE: Do not translate "no-referrer-when-downgrade", "origin-when-cross-origin" and "unsafe-url". %S is the URI of the loading channel.
+ReferrerPolicyDisallowRelaxingWarning=นโยบาย Referrer: นโยบายที่มีข้อจำกัดน้อยลงรวมถึง ‘no-referrer-when-downgrade’, ‘origin-when-cross-origin’ และ ‘unsafe-url’ จะถูกเพิกเฉยในไม่ช้าสำหรับคำขอแบบ Cross-site: %S
+# LOCALIZATION NOTE: %1$S is the ignored referrer policy, %2$S is the URI of the loading channel.
+ReferrerPolicyDisallowRelaxingMessage=นโยบาย Referrer: เพิกเฉยนโยบาย Referrer ที่มีข้อจำกัดน้อยลง “%1$S” สำหรับคำขอแบบ Cross-site: %2$S
+
+# X-Frame-Options
+# LOCALIZATION NOTE(XFrameOptionsInvalid): %1$S is the header value, %2$S is frame URI. Do not translate "X-Frame-Options".
+XFrameOptionsInvalid = พบเฮดเดอร์ X-Frame-Options ที่ไม่ถูกต้องเมื่อโหลด “%2$S”: “%1$S” ไม่ใช่คำสั่งที่ใช้ได้
+# LOCALIZATION NOTE(XFrameOptionsDeny): %1$S is the header value, %2$S is frame URI and %3$S is the parent document URI. Do not translate "X-Frame-Options".
+XFrameOptionsDeny=การโหลด “%2$S” ในเฟรมถูกปฏิเสธโดยคำสั่ง “X-Frame-Options“ ที่กำหนดเป็น “%1$S“
+
+# HTTPS-Only Mode
+# LOCALIZATION NOTE: %1$S is the URL of the upgraded request; %2$S is the upgraded scheme.
+HTTPSOnlyUpgradeRequest = กำลังอัปเกรดคำขอไม่ปลอดภัย “%1$S” ให้ใช้ “%2$S”
+# LOCALIZATION NOTE: %1$S is the URL of request.
+HTTPSOnlyNoUpgradeException = ไม่อัปเกรดคำขอไม่ปลอดภัย “%1$S” เนื่องจากได้รับการยกเว้น
+# LOCALIZATION NOTE: %1$S is the URL of the failed request; %2$S is an error-code.
+HTTPSOnlyFailedRequest = การอัปเกรดคำขอไม่ปลอดภัย “%1$S” ล้มเหลว (%2$S)
+# LOCALIZATION NOTE: %S is the URL of the failed request;
+HTTPSOnlyFailedDowngradeAgain = การอัปเกรดคำขอไม่ปลอดภัย “%S” ล้มเหลว กำลังดาวน์เกรดเป็น “http” อีกครั้ง
+# LOCALIZATION NOTE: Hints or indicates a new transaction for a URL is likely coming soon. We use
+# a speculative connection to start a TCP connection so that the resource is immediately ready
+# when the transaction is actually submitted. HTTPS-Only and HTTPS-First will upgrade such
+# speculative TCP connections from http to https.
+# %1$S is the URL of the upgraded speculative TCP connection; %2$S is the upgraded scheme.
+HTTPSOnlyUpgradeSpeculativeConnection = กำลังอัปเกรดการเชื่อมต่อ TCP แบบคาดการณ์ที่ไม่ปลอดภัย “%1$S” ให้ไปใช้ “%2$S”
+
+HTTPSFirstSchemeless = กำลังอัปเกรด URL ที่โหลดในแถบที่อยู่ซึ่งไม่มีแบบแผนโปรโตคอลที่ชัดเจนให้ไปใช้ HTTPS
+
+# LOCALIZATION NOTE: %S is the URL of the blocked request;
+IframeSandboxBlockedDownload = การดาวน์โหลด “%S” ถูกปิดกั้นเนื่องจาก iframe ที่กระตุ้นมีการตั้งค่าสถานะ sandbox ไว้
+
+# LOCALIZATION NOTE: %S is the URL of the blocked request;
+SandboxBlockedCustomProtocols = ปิดกั้นการนำทางไปยังโปรโตคอลที่กำหนดเอง “%S” จากบริบทที่อยู่ใน sandbox
+
+# Sanitizer API
+# LOCALIZATION NOTE: Please do not localize "DocumentFragment". It's the name of an API.
+SanitizerRcvdNoInput = ได้รับอินพุตเปล่าหรือไม่ได้รับอินพุตใด กำลังส่งกลับ DocumentFragment เปล่า
diff --git a/l10n-th/dom/chrome/svg/svg.properties b/l10n-th/dom/chrome/svg/svg.properties
new file mode 100644
index 0000000000..5a8e924dc4
--- /dev/null
+++ b/l10n-th/dom/chrome/svg/svg.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/.
+
+AttributeParseWarning=ค่าที่ไม่คาดคิด %2$S กำลังแจงส่วนแอตทริบิวต์ %1$S
diff --git a/l10n-th/dom/chrome/xslt/xslt.properties b/l10n-th/dom/chrome/xslt/xslt.properties
new file mode 100644
index 0000000000..c7be2b10a2
--- /dev/null
+++ b/l10n-th/dom/chrome/xslt/xslt.properties
@@ -0,0 +1,39 @@
+# 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/.
+
+1 = การแยกวิเคราะห์สไตล์ชีต XSLT ล้มเหลว
+2 = การแยกวิเคราะห์นิพจน์ XPath ล้มเหลว
+3 =
+4 = การแปลง XSLT ล้มเหลว
+5 = ฟังก์ชัน XSLT/XPath ไม่ถูกต้อง
+6 = สไตล์ชีต XSLT (อาจ) มีการเรียกซ้ำ
+7 = ค่าแอตทริบิวต์ไม่ถูกต้องใน XSLT 1.0
+8 = นิพจน์ XPath ถูกคาดไว้ให้ส่งกลับ NodeSet
+9 = การแปลง XSLT ถูกสิ้นสุดโดย <xsl:message>
+10 = เกิดข้อผิดพลาดเกี่ยวกับเครือข่ายในการโหลดสไตล์ชีต XSLT:
+11 = สไตล์ชีต XSLT ไม่มี XML mimetype:
+12 = สไตล์ชีต XSLT นำเข้าหรือรวมตัวเองแบบโดยตรงหรือไม่โดยตรง:
+13 = ฟังก์ชัน XPath ถูกเรียกด้วยจำนวนอาร์กิวเมนต์ที่ไม่ถูกต้อง
+14 = ฟังก์ชันส่วนขยาย XPath ที่ไม่รู้จักถูกเรียก
+15 = ความล้มเหลวในการแจงส่วน XPath: คาดหวัง ‘)’:
+16 = ความล้มเหลวในการแจงส่วน XPath: แกนไม่ถูกต้อง:
+17 = ความล้มเหลวในการแจงส่วน XPath: คาดหวังการทดสอบชื่อหรือชนิดโหนด:
+18 = ความล้มเหลวในการแจงส่วน XPath: คาดหวัง ‘]’:
+19 = ความล้มเหลวในการแจงส่วน XPath: ชื่อตัวแปรไม่ถูกต้อง:
+20 = ความล้มเหลวในการแจงส่วน XPath: จุดสิ้นสุดของนิพจน์ที่ไม่คาดคิด:
+21 = ความล้มเหลวในการแจงส่วน XPath: คาดหวังตัวดำเนินการ:
+22 = ความล้มเหลวในการแจงส่วน XPath: ไม่ได้ปิดสัญพจน์:
+23 = ความล้มเหลวในการแจงส่วน XPath: ไม่ได้คาดหวัง ‘:’:
+24 = ความล้มเหลวในการแจงส่วน XPath: ไม่ได้คาดหวัง ‘!’, นิเสธเป็น not():
+25 = ความล้มเหลวในการแจงส่วน XPath: พบอักขระที่ผิดกฎ:
+26 = ความล้มเหลวในการแจงส่วน XPath: คาดหวังตัวดำเนินการไบนารี:
+27 = การโหลดสไตล์ชีต XSLT ถูกปิดกั้นเนื่องจากเหตุผลด้านความปลอดภัย
+28 = กำลังประเมินนิพจน์ที่ไม่ถูกต้อง
+29 = วงเล็บปีกกาไม่สมดุล
+30 = กำลังสร้างอิลิเมนต์ด้วย QName ที่ไม่ถูกต้อง
+31 = Variable binding shadows variable binding within the same template.
+32 = ไม่อนุญาตให้ทำการเรียกไปยังฟังก์ชัน key
+
+LoadingError = เกิดข้อผิดพลาดในการโหลดสไตล์ชีต: %S
+TransformError = เกิดข้อผิดพลาดระหว่างการแปลง XSLT: %S
diff --git a/l10n-th/dom/dom/XMLPrettyPrint.ftl b/l10n-th/dom/dom/XMLPrettyPrint.ftl
new file mode 100644
index 0000000000..1c899918f7
--- /dev/null
+++ b/l10n-th/dom/dom/XMLPrettyPrint.ftl
@@ -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/.
+
+xml-nostylesheet = ไฟล์ XML นี้ดูเหมือนจะไม่มีข้อมูลสไตล์ใด ๆ ที่เกี่ยวข้องกัน ต้นไม้เอกสารถูกแสดงด้านล่าง
diff --git a/l10n-th/dom/dom/media.ftl b/l10n-th/dom/dom/media.ftl
new file mode 100644
index 0000000000..e47a66f1fc
--- /dev/null
+++ b/l10n-th/dom/dom/media.ftl
@@ -0,0 +1,6 @@
+# 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/.
+
+default-audio-output-device-label = อุปกรณ์เอาต์พุตเสียงเริ่มต้น
+mediastatus-fallback-title = { -brand-short-name } กำลังเล่นสื่อ
diff --git a/l10n-th/mobile/android/chrome/browser.properties b/l10n-th/mobile/android/chrome/browser.properties
new file mode 100644
index 0000000000..df3dae45d2
--- /dev/null
+++ b/l10n-th/mobile/android/chrome/browser.properties
@@ -0,0 +1,44 @@
+# 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/.
+
+# Popup Blocker
+
+# In Extension.jsm
+
+
+# LOCALIZATION NOTE (password.logins): Label that will be used in
+ # Web Console API
+stacktrace.anonymousFunction=<ไม่ระบุชื่อ>
+stacktrace.outputMessage=Stack trace จาก %S, ฟังก์ชัน %S, บรรทัด %S
+timer.start=%S: เริ่มจับเวลา
+
+# 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
+
+# Site settings dialog
+
+# In ContextualIdentityService.jsm
+
+# 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 = ส่วนบุคคล
+userContextWork.label = งาน
+userContextBanking.label = ธนาคาร
+userContextShopping.label = การซื้อของ
+
diff --git a/l10n-th/mobile/android/chrome/passwordmgr.properties b/l10n-th/mobile/android/chrome/passwordmgr.properties
new file mode 100644
index 0000000000..3290fe9876
--- /dev/null
+++ b/l10n-th/mobile/android/chrome/passwordmgr.properties
@@ -0,0 +1,20 @@
+# 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=คุณต้องการให้ %S จดจำการเข้าสู่ระบบนี้หรือไม่?
+rememberButton=จดจำ
+neverButton=ไม่เลย
+
+# String is the login's hostname
+updatePassword=อัปเดตรหัสผ่านที่บันทึกไว้สำหรับ %S?
+updatePasswordNoUser=อัปเดตรหัสผ่านที่บันทึกไว้สำหรับการเข้าสู่ระบบนี้?
+updateButton=อัปเดต
+dontUpdateButton=ไม่อัปเดต
+
+userSelectText2=เลือกการเข้าสู่ระบบที่จะอัปเดต:
+passwordChangeTitle=ยืนยันการเปลี่ยนรหัสผ่าน
+
+username=ชื่อผู้ใช้
+password=รหัสผ่าน
diff --git a/l10n-th/mobile/android/mobile/android/aboutConfig.ftl b/l10n-th/mobile/android/mobile/android/aboutConfig.ftl
new file mode 100644
index 0000000000..3c2330631b
--- /dev/null
+++ b/l10n-th/mobile/android/mobile/android/aboutConfig.ftl
@@ -0,0 +1,28 @@
+# 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/.
+
+config-toolbar-search =
+ .placeholder = ค้นหา
+config-new-pref-name =
+ .placeholder = ชื่อ
+
+config-new-pref-value-boolean = ค่าตรรกะ
+config-new-pref-value-string = สตริง
+config-new-pref-value-integer = จำนวนเต็ม
+
+config-new-pref-string =
+ .placeholder = ป้อนสตริง
+config-new-pref-number =
+ .placeholder = ป้อนตัวเลข
+config-new-pref-cancel-button = ยกเลิก
+config-new-pref-create-button = สร้าง
+config-new-pref-change-button = เปลี่ยน
+
+config-pref-toggle-button = เปิด/ปิด
+config-pref-reset-button = กลับค่าเดิม
+
+config-context-menu-copy-pref-name =
+ .label = คัดลอกชื่อ
+config-context-menu-copy-pref-value =
+ .label = คัดลอกค่า
diff --git a/l10n-th/mobile/android/mobile/android/geckoViewConsole.ftl b/l10n-th/mobile/android/mobile/android/geckoViewConsole.ftl
new file mode 100644
index 0000000000..0b14b2d688
--- /dev/null
+++ b/l10n-th/mobile/android/mobile/android/geckoViewConsole.ftl
@@ -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/.
+
+
+## Web Console API (in GeckoViewConsole.sys.mjs)
+
+console-stacktrace-anonymous-function = <ไม่ระบุชื่อ>
+# Variables:
+# $filename (String): Source file name
+# $functionName (String): JavaScript function name
+# $lineNumber (String): The line number of the stacktrace call
+console-stacktrace = Stack trace จาก { $filename }, ฟังก์ชัน { $functionName }, บรรทัด { $lineNumber }
+# Variables:
+# $name (String): user-defined name for the timer
+console-timer-start = { $name }: เริ่มจับเวลา
+# This string is used to display the result of the console.timeEnd() call.
+#
+# Variables:
+# $name (String): user-defined name for the timer
+# $duration (String): number of milliseconds
+console-timer-end = { $name }: { $duration }ms
diff --git a/l10n-th/mobile/chrome/region.properties b/l10n-th/mobile/chrome/region.properties
new file mode 100644
index 0000000000..0ff06da932
--- /dev/null
+++ b/l10n-th/mobile/chrome/region.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/.
+
+# increment this number when anything gets changed in the list below. This will
+# cause Firefox to re-read these prefs and inject any new handlers into the
+# profile database. Note that "new" is defined as "has a different URL"; this
+# means that it's not possible to update the name of existing handler, so
+# don't make any spelling errors here.
+gecko.handlerService.defaultHandlersVersion=3
+
+# The default set of protocol handlers for mailto:
+gecko.handlerService.schemes.mailto.0.name=Yahoo! Mail
+gecko.handlerService.schemes.mailto.0.uriTemplate=https://compose.mail.yahoo.com/?To=%s
+gecko.handlerService.schemes.mailto.1.name=Gmail
+gecko.handlerService.schemes.mailto.1.uriTemplate=https://mail.google.com/mail/?extsrc=mailto&url=%s
+
+# This is the default set of web based feed handlers shown in the reader
+# selection UI
+browser.contentHandlers.types.0.title=My Yahoo!
+browser.contentHandlers.types.0.uri=https://add.my.yahoo.com/rss?url=%s
+
diff --git a/l10n-th/netwerk/necko.properties b/l10n-th/netwerk/necko.properties
new file mode 100644
index 0000000000..4ffa30a2ec
--- /dev/null
+++ b/l10n-th/netwerk/necko.properties
@@ -0,0 +1,106 @@
+# 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/.
+
+3=กำลังมองหา %1$S…
+4=เชื่อมต่อไปยัง %1$S แล้ว…
+5=กำลังส่งคำขอไปยัง %1$S…
+6=กำลังถ่ายโอนข้อมูลจาก %1$S…
+7=กำลังเชื่อมต่อไปยัง %1$S…
+8=อ่าน %1$S
+9=เขียน %1$S
+10=กำลังรอ %1$S…
+11=มองหา %1$S แล้ว…
+12=กำลังดำเนินการแฮนด์เชค TLS กับ %1$S…
+13=แฮนด์เชค TLS เสร็จสิ้นสำหรับ %1$S…
+
+RepostFormData=หน้าเว็บนี้กำลังถูกเปลี่ยนเส้นทางไปยังตำแหน่งที่ตั้งใหม่ คุณต้องการส่งข้อมูลแบบฟอร์มที่คุณพิมพ์ใหม่ไปยังตำแหน่งที่ตั้งใหม่หรือไม่?
+
+# Directory listing strings
+DirTitle=ดัชนีของ %1$S
+DirGoUp=ขึ้นไปสู่ไดเรกทอรีระดับสูงกว่า
+ShowHidden=แสดงวัตถุที่ซ่อนอยู่
+DirColName=ชื่อ
+DirColSize=ขนาด
+DirColMTime=วันที่เปลี่ยนแปลงล่าสุด
+DirFileLabel=ไฟล์:
+
+SuperfluousAuth=คุณกำลังจะเข้าสู่ระบบไซต์ “%1$S” ด้วยชื่อผู้ใช้ “%2$S” แต่เว็บไซต์ไม่จำเป็นต้องใช้การยืนยันตัวตน สิ่งนี้อาจเป็นความพยายามในการหลอกลวงคุณ\n\n“%1$S” เป็นไซต์ที่คุณต้องการเยี่ยมชมหรือไม่?
+AutomaticAuth=คุณกำลังจะเข้าสู่ระบบไซต์ “%1$S” ด้วยชื่อผู้ใช้ “%2$S”
+
+TrackerUriBlocked=ทรัพยากรที่ “%1$S” ถูกปิดกั้นเนื่องจากการปิดกั้นเนื้อหาถูกเปิดใช้งาน
+UnsafeUriBlocked=ปิดกั้นทรัพยากรที่ “%1$S” โดยการเรียกดูแบบปลอดภัย
+
+# LOCALIZATION NOTE (StrictUrlProtocolSetter): %1$S is the URL that has attempted to be changed. %2$S is the invalid target protocol.
+StrictUrlProtocolSetter=การเปลี่ยน Url “%1$S“ เป็นโปรโตคอล “%2$S“ ถูกปิดกั้น
+
+# LOCALIZATION NOTE (CORPBlocked): %1$S is the URL of the blocked resource. %2$S is the URL of the MDN page about CORP.
+CORPBlocked=ทรัพยากรที่ “%1$S” ถูกปิดกั้นเนื่องจากเฮดเดอร์ Cross-Origin-Resource-Policy (หรือไม่มี) ดูที่ %2$S
+CookieBlockedByPermission=คำขอเข้าถึงคุกกี้หรือที่เก็บข้อมูลบน “%1$S” ถูกปิดกั้นเนื่องจากการอนุญาตคุกกี้ที่กำหนดเอง
+CookieBlockedTracker=คำขอเข้าถึงคุกกี้หรือที่เก็บข้อมูลบน “%1$S” ถูกปิดกั้นเนื่องจากมาจากตัวติดตามและการปิดกั้นเนื้อหาเปิดใช้งานอยู่
+CookieBlockedAll=คำขอเข้าถึงคุกกี้หรือที่เก็บข้อมูลบน “%1$S” ถูกปิดกั้นเนื่องจากเรากำลังปิดกั้นคำขอการเข้าถึงที่เก็บข้อมูลทั้งหมด
+CookieBlockedForeign=คำขอเข้าถึงคุกกี้หรือที่เก็บข้อมูลบน “%1$S” ถูกปิดกั้นเนื่องจากเรากำลังปิดกั้นคำขอการเข้าถึงที่เก็บข้อมูลจากบุคคลที่สามทั้งหมดและการปิดกั้นเนื้อหาเปิดใช้งานอยู่
+# As part of dynamic state partitioning, third-party resources might be limited to "partitioned" storage access that is separate from the first-party context.
+# This allows e.g. cookies to still be set, and prevents tracking without totally blocking storage access. This message is shown in the web console when this happens
+# to inform developers that their storage is isolated.
+CookiePartitionedForeign2=คุกกี้ที่มีการทำพาร์ทิชันหรือการเข้าถึงที่เก็บข้อมูลถูกมอบให้กับ “%1$S” เนื่องจากถูกโหลดในบริบทของบุคคลที่สามและการทำพาร์ทิชันสถานะไดนามิกเปิดใช้งานอยู่
+
+# LOCALIZATION NOTE (CookieAllowedForOriginByStorageAccessAPI): %2$S and %1$S are URLs.
+CookieAllowedForOriginByStorageAccessAPI=อนุญาตการเข้าถึงที่เก็บข้อมูลสำหรับที่มา “%2$S” บน “%1$S” แล้ว
+# LOCALIZATION NOTE (CookieAllowedForOriginByHeuristic): %2$S and %1$S are URLs.
+CookieAllowedForOriginByHeuristic=อนุญาตการเข้าถึงที่เก็บข้อมูลสำหรับที่มา “%2$S” บน “%1$S” โดยอัตโนมัติแล้ว
+# LOCALIZATION NOTE (CookieAllowedForFpiByHeuristic): %2$S and %1$S are URLs.
+CookieAllowedForFpiByHeuristic=อนุญาตให้เข้าถึงที่เก็บข้อมูลโดยอัตโนมัติสำหรับการแยกบุคคลที่หนึ่ง “%2$S” บน “%1$S” แล้ว
+
+# LOCALIZATION NOTE(CookieRejectedNonRequiresSecure2): %1$S is the cookie name. Do not localize "SameSite=None" and "secure".
+CookieRejectedNonRequiresSecure2=คุกกี้ “%1$S” ถูกปฏิเสธเนื่องจากมีแอตทริบิวต์ “SameSite=None” แต่แอตทริบิวต์ “secure” ขาดหายไป
+# LOCALIZATION NOTE(CookieRejectedNonRequiresSecureForBeta3): %1$S is the cookie name. %2$S is a URL. Do not localize "SameSite", "SameSite=None" and "secure".
+CookieRejectedNonRequiresSecureForBeta3=คุกกี้ “%1$S” จะถูกปฏิเสธในไม่ช้าเนื่องจากแอตทริบิวต์ “SameSite” ถูกตั้งเป็น “None” โดยไม่มีแอตทริบิวต์ “secure” หากต้องการรู้ข้อมูลเพิ่มเติมเกี่ยวกับแอตทริบิวต์ “SameSite“ อ่าน %2$S
+# LOCALIZATION NOTE(CookieLaxForced2): %1$S is the cookie name. Do not localize "SameSite", "Lax" and "SameSite=Lax".
+CookieLaxForced2=คุกกี้ “%1$S” มีนโยบาย “SameSite” ที่ถูกตั้งเป็น “Lax” เนื่องจากมีแอตทริบิวต์ “SameSite” แต่ “SameSite=Lax” เป็นค่าตามค่าเริ่มต้นสำหรับแอตทริบิวต์นี้
+# LOCALIZATION NOTE(CookieLaxForcedForBeta2): %1$S is the cookie name. %2$S is a URL. Do not localize "SameSite", "Lax" and "SameSite=Lax", "SameSite=None".
+CookieLaxForcedForBeta2=คุกกี้ “%1$S” ไม่มีค่าแอตทริบิวต์ “SameSite” ที่เหมาะสม อีกไม่ช้า คุกกี้ที่ไม่มีแอตทริบิวต์ “SameSite” หรือมีค่าที่ไม่ถูกต้องจะถือว่าเป็น “Lax” ซึ่งหมายถึงว่าคุกกี้จะไม่ถูกส่งในบริบทของบุคคลที่สามอีกต่อไป หากแอปพลิเคชันของคุณต้องการให้มีคุกกี้นี้ในบริบทดังกล่าว โปรดเพิ่มแอตทริบิวต์ “SameSite=None“ หากต้องการรู้ข้อมูลเพิ่มเติมเกี่ยวกับแอตทริบิวต์ “SameSite“ อ่าน %2$S
+# LOCALIZATION NOTE(CookieSameSiteValueInvalid2): %1$S is cookie name. Do not localize "SameSite", "Lax", "Strict" and "None"
+CookieSameSiteValueInvalid2=ค่า “SameSite“ ไม่ถูกต้องสำหรับคุกกี้ “%1$S” ค่าที่รองรับได้แก่: “Lax“, “Strict“, “None“
+# LOCALIZATION NOTE (CookieOversize): %1$S is the cookie name. %2$S is the number of bytes. "B" means bytes.
+CookieOversize=คุกกี้ “%1$S” ไม่ถูกต้องเนื่องจากมีขนาดใหญ่เกินไป ขนาดสูงสุดคือ %2$S B
+# LOCALIZATION NOTE (CookiePathOversize): %1$S is the cookie name. %2$S is the number of bytes. "B" means bytes.
+CookiePathOversize=คุกกี้ “%1$S” ไม่ถูกต้องเนื่องจากขนาดเส้นทางมีขนาดใหญ่เกินไป ขนาดสูงสุดคือ %2$S B
+# LOCALIZATION NOTE (CookieRejectedByPermissionManager): %1$S is the cookie response header.
+CookieRejectedByPermissionManager=คุกกี้ “%1$S” ถูกปฏิเสธโดยสิทธิ์ที่ผู้ใช้ตั้งค่า
+# LOCALIZATION NOTE (CookieRejectedInvalidCharName): %1$S is the cookie name.
+CookieRejectedInvalidCharName=คุกกี้ “%1$S” ได้ถูกปฏิเสธเนื่องจากมีอักขระที่ไม่ถูกต้องในชื่อ
+# LOCALIZATION NOTE (CookieRejectedInvalidDomain): %1$S is the cookie name.
+CookieRejectedInvalidDomain=คุกกี้ “%1$S” ได้ถูกปฏิเสธเนื่องจากโดเมนไม่ถูกต้อง
+# LOCALIZATION NOTE (CookieRejectedInvalidPrefix): %1$S is the cookie name.
+CookieRejectedInvalidPrefix=คุกกี้ “%1$S” ได้ถูกปฏิเสธเนื่องจากคำนำหน้าไม่ถูกต้อง
+# LOCALIZATION NOTE (CookieRejectedInvalidCharValue): %1$S is the cookie name.
+CookieRejectedInvalidCharValue=คุกกี้ “%1$S” ได้ถูกปฏิเสธเนื่องจากมีอักขระที่ไม่ถูกต้องในค่า
+# LOCALIZATION NOTE (CookieRejectedHttpOnlyButFromScript): %1$S is the cookie name.
+CookieRejectedHttpOnlyButFromScript=คุกกี้ “%1$S” ได้ถูกปฏิเสธเนื่องจากมีคุกกี้ HTTP-Only อยู่แล้ว แต่สคริปต์พยายามเก็บคุกกี้ใหม่
+# LOCALIZATION NOTE (CookieRejectedSecureButHttp): %1$S is the cookie name.
+CookieRejectedSecureButNonHttps=คุกกี้ “%1$S” ได้ถูกปฏิเสธเนื่องจากไม่สามารถตั้งค่าคุกกี้ที่ไม่ใช่ HTTPS เป็น “secure” ได้
+# LOCALIZATION NOTE (CookieRejectedThirdParty): %1$S is the cookie response header.
+CookieRejectedThirdParty=คุกกี้ “%1$S” ถูกปฏิเสธเนื่องจากมาจากบุคคลที่สาม
+# LOCALIZATION NOTE (CookieRejectedNonsecureOverSecure): %1$S is the cookie name.
+CookieRejectedNonsecureOverSecure=คุกกี้ “%1$S” ได้ถูกปฏิเสธเนื่องจากมีคุกกี้ “secure” ที่มีอยู่
+# LOCALIZATION NOTE (CookieRejectedForNonSameSiteness): %1$S is the cookie name.
+CookieRejectedForNonSameSiteness=คุกกี้ “%1$S” ได้ถูกปฏิเสธเนื่องจากอยู่ในบริบทข้ามไซต์และ “SameSite” เป็น “Lax” หรือ “Strict”
+
+# LOCALIZATION NOTE (CookieForeignNoPartitionedWarning): %1$S is the cookie name. Do not translate "Partitioned"
+CookieForeignNoPartitionedWarning=คุกกี้ “%1$S” จะถูกปฏิเสธเร็วๆ นี้ เนื่องจากเป็นคุกกี้ภายนอกและไม่มีแอตทริบิวต์ “Partitioned“
+
+# LOCALIZATION NOTE (CookieForeignNoPartitionedError): %1$S is the cookie name. Do not translate "Partitioned"
+CookieForeignNoPartitionedError=คุกกี้ “%1$S” ถูกปฏิเสธเนื่องจากเป็นคุกกี้ภายนอกและไม่มีแอตทริบิวต์ “Partitioned”
+
+# LOCALIZATION NOTE (CookieBlockedCrossSiteRedirect): %1$S is the cookie name. Do not translate "SameSite", "Lax" or "Strict".
+CookieBlockedCrossSiteRedirect=คุกกี้ “%1$S” ที่มีค่าแอตทริบิวต์ “SameSite” เป็น “Lax” หรือ “Strict” ถูกละเว้นเนื่องจากการเปลี่ยนเส้นทางข้ามไซต์
+
+# LOCALIZATION NOTE (APIDeprecationWarning): %1$S is the deprecated API; %2$S is the API function that should be used.
+APIDeprecationWarning=คำเตือน: ‘%1$S’ เลิกใช้แล้ว โปรดใช้ ‘%2$S’
+
+# LOCALIZATION NOTE (ResourceBlockedCORS): %1$S is the url of the resource blocked by ORB. $2$S is the reason.
+# example: The resource at <url> was blocked by OpaqueResponseBlocking. Reason: “nosniff with either blocklisted or text/plain”.
+ResourceBlockedORB=ทรัพยากรที่ “%1$S” ถูกปิดกั้นโดย OpaqueResponseBlocking ด้วยเหตุผล: “%2$S”
+
+InvalidHTTPResponseStatusLine=บรรทัด status ของการตอบสนอง HTTP ไม่ถูกต้อง
diff --git a/l10n-th/security/manager/chrome/pipnss/nsserrors.properties b/l10n-th/security/manager/chrome/pipnss/nsserrors.properties
new file mode 100644
index 0000000000..21fbf95a9b
--- /dev/null
+++ b/l10n-th/security/manager/chrome/pipnss/nsserrors.properties
@@ -0,0 +1,331 @@
+# 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/.
+
+SSL_ERROR_EXPORT_ONLY_SERVER=ไม่สามารถสื่อสารอย่างปลอดภัย อีกฝั่งไม่รองรับการเข้ารหัสระดับสูง
+SSL_ERROR_US_ONLY_SERVER=ไม่สามารถสื่อสารอย่างปลอดภัย อีกฝั่งต้องการการเข้ารหัสระดับสูงซึ่งไม่รองรับ
+SSL_ERROR_NO_CYPHER_OVERLAP=ไม่สามารถสื่อสารอย่างปลอดภัยกับอีกฝั่ง: ไม่มีอัลกอริทึมการเข้ารหัสร่วมกัน
+SSL_ERROR_NO_CERTIFICATE=ไม่สามารถค้นหาใบรับรองหรือกุญแจที่จำเป็นสำหรับการรับรองความถูกต้อง
+SSL_ERROR_BAD_CERTIFICATE=ไม่สามารถสื่อสารอย่างปลอดภัยกับอีกฝั่ง: ใบรับรองของอีกฝั่งถูกปฏิเสธ
+SSL_ERROR_BAD_CLIENT=เซิร์ฟเวอร์พบข้อมูลเสียจากลูกข่าย
+SSL_ERROR_BAD_SERVER=ลูกข่ายพบข้อมูลเสียจากเซิร์ฟเวอร์
+SSL_ERROR_UNSUPPORTED_CERTIFICATE_TYPE=ไม่รองรับใบรับรองประเภทนี้
+SSL_ERROR_UNSUPPORTED_VERSION=ไม่รองรับโปรโตคอลความปลอดภัยของปลายทาง
+SSL_ERROR_WRONG_CERTIFICATE=การรับรองลูกข่ายล้มเหลว: กุญแจส่วนตัวในฐานข้อมูลไม่ตรงกับกุญแจสาธารณะในฐานข้อมูลใบรับรอง
+SSL_ERROR_BAD_CERT_DOMAIN=ไม่สามารถสื่อสารอย่างปลอดภัยกับอีกฝั่ง: ชื่อโดเมนที่ขอไม่ตรงกับใบรับรองของเซิร์ฟเวอร์
+SSL_ERROR_POST_WARNING=รหัสข้อผิดพลาด SSL ที่ไม่รู้จัก
+SSL_ERROR_SSL2_DISABLED=ปลายทางรองรับแค่ SSL รุ่นท่ 2 ซึ่งถึงปิดใช้งานไว้
+SSL_ERROR_BAD_MAC_READ=SSL ได้รับข้อมูล Message Authentication Code ที่ไม่ถูกต้อง
+SSL_ERROR_BAD_MAC_ALERT=SSL ปลายทางรายงาน Message Authentication Code ที่ไม่ถูกต้อง
+SSL_ERROR_BAD_CERT_ALERT=SSL ปลายทางไม่สามารถตรวจสอบใบรับรองของคุณได้
+SSL_ERROR_REVOKED_CERT_ALERT=SSL ปลายตีกลับใบรับรองของคุณด้วยสถานะถอดถอน
+SSL_ERROR_EXPIRED_CERT_ALERT=SSL ปลายทางตีกลับใบรับรองของคุณด้วยสถานะหมดอายุ
+SSL_ERROR_SSL_DISABLED=ไม่สามารถเชื่อมต่อได้: SSL ถูกปิดใช้งาน
+SSL_ERROR_FORTEZZA_PQG=ไม่สามารถเชื่อมต่อได้: SSL ปลายทางเป็นโดเมน FORTEZZA ประเภทอื่น
+SSL_ERROR_UNKNOWN_CIPHER_SUITE=มีการร้องขอการแปรรหัส SSL ที่ไม่ทราบประเภท
+SSL_ERROR_NO_CIPHERS_SUPPORTED=ไม่มีชุดการแปรรหัสที่เปิดใช้งานในโปรแกรมนี้
+SSL_ERROR_BAD_BLOCK_PADDING=SSL ได้รับข้อมูลเสียเพราะ bad block padding.
+SSL_ERROR_RX_RECORD_TOO_LONG=SSL ได้รับข้อมูลที่เกินความยาวที่ถูกกำหนดไว้
+SSL_ERROR_TX_RECORD_TOO_LONG=SSL พยายามส่งข้อมูลที่เกินความยาวที่ถูกกำหนดไว้
+SSL_ERROR_RX_MALFORMED_HELLO_REQUEST=SSL ได้รับข้อความ Hello Request handshake ที่ผิดรูปแบบ
+SSL_ERROR_RX_MALFORMED_CLIENT_HELLO=SSL ได้รับข้อความ Client Hello handshake ที่ผิดรูปแบบ
+SSL_ERROR_RX_MALFORMED_SERVER_HELLO=SSL ได้รับข้อความ Server Hello handshake ที่ผิดรูปแบบ
+SSL_ERROR_RX_MALFORMED_CERTIFICATE=SSL ได้รับข้อความ Certificate handshake ที่ผิดรูปแบบ
+SSL_ERROR_RX_MALFORMED_SERVER_KEY_EXCH=SSL ได้รับข้อความ Server Key Exchange handshake ที่ผิดรูปแบบ
+SSL_ERROR_RX_MALFORMED_CERT_REQUEST=SSL ได้รับข้อความ Certificate Request handshake ที่ผิดรูปแบบ
+SSL_ERROR_RX_MALFORMED_HELLO_DONE=SSL ได้รับข้อความ Server Hello Done handshake ที่ผิดรูปแบบ
+SSL_ERROR_RX_MALFORMED_CERT_VERIFY=SSL ได้รับข้อความ Certificate Verify handshake ที่ผิดรูปแบบ
+SSL_ERROR_RX_MALFORMED_CLIENT_KEY_EXCH=SSL ได้รับข้อความ Client Key Exchange handshake ที่ผิดรูปแบบ
+SSL_ERROR_RX_MALFORMED_FINISHED=SSL ได้รับข้อความ Finished handshake ที่ผิดรูปแบบ
+SSL_ERROR_RX_MALFORMED_CHANGE_CIPHER=SSL ได้รับข้อมูล Change Cipher Spec ที่ผิดรูปแบบ
+SSL_ERROR_RX_MALFORMED_ALERT=SSL ได้รับข้อมูล Alert ที่ผิดรูปแบบ
+SSL_ERROR_RX_MALFORMED_HANDSHAKE=SSL ได้รับข้อมูล Handshake ที่ผิดรูปแบบ
+SSL_ERROR_RX_MALFORMED_APPLICATION_DATA=SSL ได้รับข้อมูล Application Data ที่ผิดรูปแบบ
+SSL_ERROR_RX_UNEXPECTED_HELLO_REQUEST=SSL ได้รับข้อความ Hello Request handshake ที่ไม่คาดคิด
+SSL_ERROR_RX_UNEXPECTED_CLIENT_HELLO=SSL ได้รับข้อความ Client Hello handshake ที่ไม่คาดคิด
+SSL_ERROR_RX_UNEXPECTED_SERVER_HELLO=SSL ได้รับข้อความ Server Hello handshake ที่ไม่คาดคิด
+SSL_ERROR_RX_UNEXPECTED_CERTIFICATE=SSL ได้รับข้อความ Certificate handshake ที่ไม่คาดคิด
+SSL_ERROR_RX_UNEXPECTED_SERVER_KEY_EXCH=SSL ได้รับข้อความ Server Key Exchange handshake ที่ไม่คาดคิด
+SSL_ERROR_RX_UNEXPECTED_CERT_REQUEST=SSL ได้รับข้อความ Certificate Request handshake ที่ไม่คาดคิด
+SSL_ERROR_RX_UNEXPECTED_HELLO_DONE=SSL ได้รับข้อความ Server Hello Done handshake ที่ไม่คาดคิด
+SSL_ERROR_RX_UNEXPECTED_CERT_VERIFY=SSL ได้รับข้อความ Certificate Verify handshake ที่ไม่คาดคิด
+SSL_ERROR_RX_UNEXPECTED_CLIENT_KEY_EXCH=SSL ได้รับข้อความ Client Key Exchange handshake ที่ไม่คาดคิด
+SSL_ERROR_RX_UNEXPECTED_FINISHED=SSL ได้รับข้อความ Finished handshake ที่ไม่คาดคิด
+SSL_ERROR_RX_UNEXPECTED_CHANGE_CIPHER=SSL ได้รับข้อมูล Change Cipher Spec ที่ไม่คาดคิด
+SSL_ERROR_RX_UNEXPECTED_ALERT=SSL ได้รับข้อมูล Alert ที่ไม่คาดคิด
+SSL_ERROR_RX_UNEXPECTED_HANDSHAKE=SSL ได้รับข้อมูล Handshake ที่ไม่คาดคิด
+SSL_ERROR_RX_UNEXPECTED_APPLICATION_DATA=SSL ได้รับข้อมูล Application Data ที่ไม่คาดคิด
+SSL_ERROR_RX_UNKNOWN_RECORD_TYPE=SSL ได้รับข้อมูลที่ไม่ทราบประเภท
+SSL_ERROR_RX_UNKNOWN_HANDSHAKE=SSL ได้รับข้อความที่ไม่ทราบประเภท
+SSL_ERROR_RX_UNKNOWN_ALERT=SSL ได้รับข้อมูลเตือนที่ไม่ทราบรายละเอียด
+SSL_ERROR_CLOSE_NOTIFY_ALERT=SSL ปลายทางได้ทำการปิดการเชื่อมต่อนี้
+SSL_ERROR_HANDSHAKE_UNEXPECTED_ALERT=SSL ปลายทางไม่ได้คาดหวังข้อความ handshake ที่ได้รับ
+SSL_ERROR_DECOMPRESSION_FAILURE_ALERT=SSL ปลายทางไม่สามารถขยายข้อมูล SSL ที่ได้รับ
+SSL_ERROR_HANDSHAKE_FAILURE_ALERT=SSL ปลายทางไม่สามารถต่อรองชุดตัวแปรความปลอดภัยที่ยอมรับได้
+SSL_ERROR_ILLEGAL_PARAMETER_ALERT=SSL ปลายทางตีกลับข้อความ handshake เพราะไม่ใช่เนื้อหาที่ยอมรับได้
+SSL_ERROR_UNSUPPORTED_CERT_ALERT=SSL ปลายทางไม่รองรับใบรับรองที่ได้รับ
+SSL_ERROR_CERTIFICATE_UNKNOWN_ALERT=SSL ปลายทางมีปัญหาที่ระบุไม่ได้บางอย่างกับใบรับรองที่ได้รับ
+SSL_ERROR_GENERATE_RANDOM_FAILURE=SSL ไม่สามารถใช้งานตัวสร้างเลขสุ่มได้
+SSL_ERROR_SIGN_HASHES_FAILURE=ไม่สามารถเซ็นรับรองข้อมูลแบบดิจิทัลที่ต้องใช้เพื่อตรวจสอบใบรับรองของคุณได้
+SSL_ERROR_EXTRACT_PUBLIC_KEY_FAILURE=SSL ไม่สามารถแตกกุญแจสาธารณะออกจากใบรับรองของปลายทางได้
+SSL_ERROR_SERVER_KEY_EXCHANGE_FAILURE=ไม่สามารถระบุความผิดพลาดในขณะกำลังประมวลผล SSL Server Key Exchange handshake
+SSL_ERROR_CLIENT_KEY_EXCHANGE_FAILURE=ไม่สามารถระบุความผิดพลาดในขณะกำลังประมวลผล SSL Client Key Exchange handshake
+SSL_ERROR_ENCRYPTION_FAILURE=ชุดแปรรหัสที่เลือกไม่สามารถเข้ารหัสชุดข้อมูลได้
+SSL_ERROR_DECRYPTION_FAILURE=ชุดแปรรหัสที่เลือกไม่สามารถถอดรหัสชุดข้อมูลได้
+SSL_ERROR_SOCKET_WRITE_FAILURE=ความพยายามในการเขียนข้อมูลที่เข้ารหัสไปยังซ็อกเก็ตที่อยู่ภายใต้ล้มเหลว
+SSL_ERROR_MD5_DIGEST_FAILURE=ฟังก์ชั่นการย่อย MD5 ผิดพลาด
+SSL_ERROR_SHA_DIGEST_FAILURE=ฟังก์ชั่นการย่อย SHA-1 ผิดพลาด
+SSL_ERROR_MAC_COMPUTATION_FAILURE=การคำนวน MAC ผิดพลาด
+SSL_ERROR_SYM_KEY_CONTEXT_FAILURE=ไม่สามารถสร้าง Symmetric Key ได้
+SSL_ERROR_SYM_KEY_UNWRAP_FAILURE=ไม่สามารถแกะ Symmetric key ที่อยู่ในข้อความ Client Key Exchange ได้
+SSL_ERROR_PUB_KEY_SIZE_LIMIT_EXCEEDED=SSL เซิร์ฟเวอร์พยายามใช้กุญแจสาธารณะขั้นท้องถิ่นกับการส่งออกชุดแปรรหัส
+SSL_ERROR_IV_PARAM_FAILURE=ไม่สามารถแปรรหัส PKCS11 ส่วน IV เป็นตัวแปรได้
+SSL_ERROR_INIT_CIPHER_SUITE_FAILURE=ไม่สามารถเริ่มใช้ชุดแปรรหัสได้
+SSL_ERROR_SESSION_KEY_GEN_FAILURE=ลูกข่ายไม่สามารถร้างกุญแจวาระเพื่อวาระ SSL ได้
+SSL_ERROR_NO_SERVER_KEY_FOR_ALG=เซิร์ฟเวอร์ไม่มีกุญแจสำหรับขั้นตอนวิธีการแลกเปลี่ยนกุญแจ
+SSL_ERROR_TOKEN_INSERTION_REMOVAL=โทเค็น PKCS#11 ได้ถูกใส่เข้าหรือดึงออกในขณะที่กำลังทำงาน
+SSL_ERROR_TOKEN_SLOT_NOT_FOUND=ไม่พบโทเค็น PKCS#11 ที่จำเป็นในการทำงาน
+SSL_ERROR_NO_COMPRESSION_OVERLAP=ไม่สามารถสื่อสารอย่างปลอดภัยกับอีกฝั่ง: ไม่มีอัลกอริทึมการบีบอัดร่วมกัน
+SSL_ERROR_HANDSHAKE_NOT_COMPLETED=ไม่สามารถเริ่ม SSL handshake อื่นได้จนกว่า handshake ปัจจุบันจะเสร็จสิ้น
+SSL_ERROR_BAD_HANDSHAKE_HASH_VALUE=ได้รับค่า handshake hash ที่ไม่ถูกต้องจากปลายทาง
+SSL_ERROR_CERT_KEA_MISMATCH=ใบรับรองที่มีไม่สามารถใช้ได้กับขั้นตอนวิธีการแลกเปลี่ยนกุญแจที่เลือกไว้ได้
+SSL_ERROR_NO_TRUSTED_SSL_CLIENT_CA=ไม่มีผู้ออกใบรับรองใดที่เชื่อถือได้กับการยืนยันตัวตนของ SSL ลูกข่าย
+SSL_ERROR_SESSION_NOT_FOUND=ไม่พบ SSL session ID ของเครื่องลูกข่ายในแคช session ของเซิร์ฟเวอร์
+SSL_ERROR_DECRYPTION_FAILED_ALERT=ปลายทางไม่สามารถถอดรหัสค่า SSL ที่ได้รับได้
+SSL_ERROR_RECORD_OVERFLOW_ALERT=ปลายทางได้รับค่า SSL ที่ยาวกว่าที่อนุญาต
+SSL_ERROR_UNKNOWN_CA_ALERT=ปลายทางไม่เชื่อถือ CA ที่คุณมีอยู่
+SSL_ERROR_ACCESS_DENIED_ALERT=ปลายทางได้รับใบรับรองที่ถูกต้อง แต่เข้าถึงไม่ได้
+SSL_ERROR_DECODE_ERROR_ALERT=ปลายทางไม่สามารถถอดรหัสข้อความ SSL handshake ได้
+SSL_ERROR_DECRYPT_ERROR_ALERT=ปลายทางได้รายงานถึงความล้มเหลวในการตรวจสอบลายเซ็นหรือการแลกเปลี่ยนกุญแจ
+SSL_ERROR_EXPORT_RESTRICTION_ALERT=ปลายทางรายงานถึงการต่อรองที่ไม่เข้ากับกฎการส่งออก
+SSL_ERROR_PROTOCOL_VERSION_ALERT=อีกฝั่งรายงานถึงรุ่นโปรโตคอลที่ใช้ร่วมกันไม่ได้หรือไม่รองรับ
+SSL_ERROR_INSUFFICIENT_SECURITY_ALERT=เซิร์ฟเวอร์ต้องการการเข้ารหัสที่ปลอดภัยกว่าที่รองรับโดยลูกข่าย
+SSL_ERROR_INTERNAL_ERROR_ALERT=ปลายทางรายงานถึงการผิดพลาดภายใน
+SSL_ERROR_USER_CANCELED_ALERT=ผู้ใช้ปลายทางยกเลิก handshake
+SSL_ERROR_NO_RENEGOTIATION_ALERT=ปลายทางไม่อนุญาตการต่อรองซ้ำกับ SSL security parameters
+SSL_ERROR_SERVER_CACHE_NOT_CONFIGURED=แคชแม่ข่าย SSL ไม่ได้ถูกตั้งค่าและไม่ถูกปิดใช้งานสำหรับซอกเก็ตนี้
+SSL_ERROR_UNSUPPORTED_EXTENSION_ALERT=SSL ปลายทางไม่รองรับส่วนขยาย TLS hello
+SSL_ERROR_CERTIFICATE_UNOBTAINABLE_ALERT=SSL ปลายทางไม่สามารถรับใบรับรองของคุณจาก URL ที่แจ้งไว้ได้
+SSL_ERROR_UNRECOGNIZED_NAME_ALERT=SSL ปลายทางไม่มีใบรับรองสำหรับชื่อ DNS ที่ร้องขอ
+SSL_ERROR_BAD_CERT_STATUS_RESPONSE_ALERT=SSL ปลายทางไม่สามารถรับการตอบรับ OCSP ของใบรับรองของมันได้
+SSL_ERROR_BAD_CERT_HASH_VALUE_ALERT=SSL ปลายทางรายงานถึงค่า hash ของใบรับรองที่ผิดพลาด
+SSL_ERROR_RX_UNEXPECTED_NEW_SESSION_TICKET=SSL ได้รับข้อความ New Session Ticket handshake ที่ไม่คาดคิด
+SSL_ERROR_RX_MALFORMED_NEW_SESSION_TICKET=SSL ได้รับข้อความ New Session Ticket handshake ที่ผิดรูปแบบ
+SSL_ERROR_DECOMPRESSION_FAILURE=SSL ได้รับค่าที่ถูกบีบอัดที่ไม่สามารถแตกออกได้
+SSL_ERROR_RENEGOTIATION_NOT_ALLOWED=SSL ซ็อกเก็ตนี้ไม่อนุญาตให้มีการต่อรองซ้ำ
+SSL_ERROR_UNSAFE_NEGOTIATION=อีกฝั่งพยายามจะ Handshake แบบเก่า (อาจมีความเสี่ยง)
+SSL_ERROR_RX_UNEXPECTED_UNCOMPRESSED_RECORD=SSL ได้รับค่าที่ไม่บีบอัดที่ไม่คาดคิด
+SSL_ERROR_WEAK_SERVER_EPHEMERAL_DH_KEY=SSL ได้รับคีย์ Diffie-Hellman แบบชั่วคราวที่มีความปลอดภัยต่ำในข้อความ Server Key Exchange handshake
+SSL_ERROR_NEXT_PROTOCOL_DATA_INVALID=SSL ได้รับข้อมูลส่วนขยาย NPN ที่ไม่ถูกต้อง
+SSL_ERROR_FEATURE_NOT_SUPPORTED_FOR_SSL2=คุณสมบัติ SSL ไม่รองรับโดยการเชื่อมต่อ SSL 2.0
+SSL_ERROR_FEATURE_NOT_SUPPORTED_FOR_SERVERS=คุณสมบัติ SSL ไม่รองรับโดยเซิร์ฟเวอร์
+SSL_ERROR_FEATURE_NOT_SUPPORTED_FOR_CLIENTS=คุณสมบัติ SSL ไม่รองรับโดยลูกข่าย
+SSL_ERROR_INVALID_VERSION_RANGE=ช่วงรุ่นของ SSL ไม่ถูกต้อง
+SSL_ERROR_CIPHER_DISALLOWED_FOR_VERSION=SSL ปลายทางเลือกชุดการเข้ารหัสที่ไม่ได้รับอนุญาตสำหรับรุ่นโปรโตคอลที่เลือก
+SSL_ERROR_RX_MALFORMED_HELLO_VERIFY_REQUEST=SSL ได้รับข้อความ Hello Verify Request handshake ที่ผิดรูปแบบ
+SSL_ERROR_RX_UNEXPECTED_HELLO_VERIFY_REQUEST=SSL ได้รับข้อความ Hello Verify Request handshake ที่ไม่คาดคิด
+SSL_ERROR_FEATURE_NOT_SUPPORTED_FOR_VERSION=คุณลักษณะ SSL ไม่รองรับในรุ่นโปรโตคอล
+SSL_ERROR_RX_UNEXPECTED_CERT_STATUS=SSL ได้รับข้อความ Certificate Status handshake ที่ไม่คาดคิด
+SSL_ERROR_UNSUPPORTED_HASH_ALGORITHM=TLS ปลายทางใช้อัลกอริทึมแฮชที่ไม่รองรับ
+SSL_ERROR_DIGEST_FAILURE=ฟังก์ชันการย่อยล้มเหลว
+SSL_ERROR_INCORRECT_SIGNATURE_ALGORITHM=มีการระบุอัลกอริทึมลายเซ็นที่ไม่ถูกต้องในอิลิเมนต์ที่ลงลายเซ็นแบบดิจิทัล
+SSL_ERROR_NEXT_PROTOCOL_NO_CALLBACK=ส่วนขยาย next protocol negotiation ถูกเปิดใช้งาน แต่การเรียกกลับถูกล้างก่อนที่จะถูกต้องการ
+SSL_ERROR_NEXT_PROTOCOL_NO_PROTOCOL=เซิร์ฟเวอร์ไม่รองรับโปรโตคอลที่ไคลเอนต์โฆษณาในส่วนขยาย ALPN
+SSL_ERROR_INAPPROPRIATE_FALLBACK_ALERT=เซิร์ฟเวอร์ปฏิเสธการจับมือเนื่องจากลูกข่ายปรับลดเป็นรุ่น TLS ที่ต่ำกว่าที่เซิร์ฟเวอร์รองรับ
+SSL_ERROR_WEAK_SERVER_CERT_KEY=ใบรับรองเซิร์ฟเวอร์รวมคีย์สาธารณะที่มีความปลอดภัยต่ำเกินไป
+SSL_ERROR_RX_SHORT_DTLS_READ=มีพื้นที่ไม่เพียงพอในบัฟเฟอร์สำหรับอัดบันทึก DTLS
+SSL_ERROR_NO_SUPPORTED_SIGNATURE_ALGORITHM=ไม่ได้กำหนดค่าอัลกอริทึมลายเซ็น TLS ที่รองรับ
+SSL_ERROR_UNSUPPORTED_SIGNATURE_ALGORITHM=ปลายทางใช้ชุดอัลกอริทึมลายเซ็นและแฮชที่ไม่รองรับ
+SSL_ERROR_MISSING_EXTENDED_MASTER_SECRET=ปลายทางพยายามดำเนินการต่อโดยไม่มีส่วนขยาย extension_master_secret ที่ถูกต้อง
+SSL_ERROR_UNEXPECTED_EXTENDED_MASTER_SECRET=ปลายทางพยายามดำเนินการต่อด้วยส่วนขยาย extension_master_secret ที่ไม่คาดคิด
+SEC_ERROR_IO=พบข้อผิดพลาด I/O ระหว่างการรับรองความปลอดภัย
+SEC_ERROR_LIBRARY_FAILURE=ห้องสมุดความปลอดภัยผิดพลาด
+SEC_ERROR_BAD_DATA=ห้องสมุดความปลอดภัย: ได้รับข้อมูลเสีย
+SEC_ERROR_OUTPUT_LEN=ห้องสมุดความปลอดภัย: ความยาวค่าออกผิดพลาด
+SEC_ERROR_INPUT_LEN=ห้องสมุดความปลอดภัยพบว่าความยาวค่ารับเข้าผิดพลาด
+SEC_ERROR_INVALID_ARGS=ห้องสมุดความปลอดภัย: อาร์กิวเมนต์ไม่ถูกต้อง
+SEC_ERROR_INVALID_ALGORITHM=ห้องสมุดความปลอดภัย: อัลกอริทึมไม่ถูกต้อง
+SEC_ERROR_INVALID_AVA=ห้องสมุดความปลอดภัย: AVA ไม่ถูกต้อง
+SEC_ERROR_INVALID_TIME=เวลาผิดรูปแบบ
+SEC_ERROR_BAD_DER=ห้องสมุดความปลอดภัย: ข้อความเข้ารหัสแบบ DER ผิดรูปแบบ
+SEC_ERROR_BAD_SIGNATURE=ใบรับรองของอีกฝั่งมีลายเซ็นที่ไม่ถูกต้อง
+SEC_ERROR_EXPIRED_CERTIFICATE=ใบรับรองของอีกฝั่งหมดอายุแล้ว
+SEC_ERROR_REVOKED_CERTIFICATE=ใบรับรองของอีกฝั่งถูกเพิกถอน
+SEC_ERROR_UNKNOWN_ISSUER=ไม่รู้จักผู้ออกใบรับรองของอีกฝั่ง
+SEC_ERROR_BAD_KEY=กุญแจสาธารณะของอีกฝั่งไม่ถูกต้อง
+SEC_ERROR_BAD_PASSWORD=รหัสผ่านความปลอดภัยที่กรอกไม่ถูกต้อง
+SEC_ERROR_RETRY_PASSWORD=รหัสผ่านใหม่ที่ป้อนไม่ถูกต้อง โปรดลองอีกครั้ง
+SEC_ERROR_NO_NODELOCK=ห้องสมุดความปลอดภัย: ไม่มี nodelock
+SEC_ERROR_BAD_DATABASE=ห้องสมุดความปลอดภัย: ฐานข้อมูลใช้ไม่ได้
+SEC_ERROR_NO_MEMORY=ห้องสมุดความปลอดภัย: การจองหน่วยความจำล้มเหลว
+SEC_ERROR_UNTRUSTED_ISSUER=ผู้ออกใบรับรองของปลายทางถูกทำเครื่องหมายว่าไม่น่าเชื่อถือโดยผู้ใช้
+SEC_ERROR_UNTRUSTED_CERT=ใบรับรองของปลายทางถูกทำเครื่องหมายว่าไม่น่าเชื่อถือโดยผู้ใช้
+SEC_ERROR_DUPLICATE_CERT=มีใบรับรองอยู่แล้วในฐานข้อมูลของคุณ
+SEC_ERROR_DUPLICATE_CERT_NAME=ชื่อใบรับรองที่ดาวน์โหลดมาชื่อซ้ำกับใบรับรองที่มีอยู่แล้วในฐานข้อมูลของคุณ
+SEC_ERROR_ADDING_CERT=เกิดข้อผิดพลาดในการเพิ่มใบรับรองไปยังฐานข้อมูล
+SEC_ERROR_FILING_KEY=เกิดข้อผิดพลาดในการต่อกุญแจสำหรับใบรับรองนี้
+SEC_ERROR_NO_KEY=กุญแจส่วนตัวสำหรับใบรับรองนี้ไม่พบในฐานข้อมูลกุญแจ
+SEC_ERROR_CERT_VALID=ใบรับรองนี้ถูกต้อง
+SEC_ERROR_CERT_NOT_VALID=ใบรับรองนี้ไม่ถูกต้อง
+SEC_ERROR_CERT_NO_RESPONSE=ห้องสมุดใบรับรอง: ไม่ตอบสนอง
+SEC_ERROR_EXPIRED_ISSUER_CERTIFICATE=ใบรับรองของผู้ออกใบรับรองหมดอายุ  ตรวจสอบวันที่และเวลาในระบบของคุณ
+SEC_ERROR_CRL_EXPIRED=CRL สำหรับผู้ออกใบรับรองหมดอายุแล้ว อัปเดตหรือตรวจสอบวันที่และเวลาในระบบของคุณ
+SEC_ERROR_CRL_BAD_SIGNATURE=CRL สำหรับผู้ออกใบรับรองมีลายเซ็นที่ไม่ถูกต้อง
+SEC_ERROR_CRL_INVALID=CRL ใหม่มีรูปแบบที่ไม่ถูกต้อง
+SEC_ERROR_EXTENSION_VALUE_INVALID=ค่าส่วนขยายของใบรับรองไม่ถูกต้อง
+SEC_ERROR_EXTENSION_NOT_FOUND=ไม่พบส่วนขยายใบรับรอง
+SEC_ERROR_CA_CERT_INVALID=ใบรับรองของผู้ออกไม่ถูกต้อง
+SEC_ERROR_PATH_LEN_CONSTRAINT_INVALID=ข้อบังคับความยาวของเส้นทางใบรับรองไม่ถูกต้อง
+SEC_ERROR_CERT_USAGES_INVALID=ช่องข้อมูลการใช้งานใบรับรองไม่ถูกต้อง
+SEC_INTERNAL_ONLY=**โมดูลเฉพาะภายใน**
+SEC_ERROR_INVALID_KEY=กุญแจไม่รองรับการดำเนินการที่ขอ
+SEC_ERROR_UNKNOWN_CRITICAL_EXTENSION=ใบรับรองประกอบด้วยส่วนขยายสำคัญที่ไม่รู้จัก
+SEC_ERROR_OLD_CRL=CRL ใหม่นั้นไม่ใหม่กว่าของปัจจุบัน
+SEC_ERROR_NO_EMAIL_CERT=ไม่ถูกเข้ารหัสหรือเซ็น: คุณยังไม่มีใบรับรองอีเมล
+SEC_ERROR_NO_RECIPIENT_CERTS_QUERY=ไม่ถูกเข้ารหัส: คุณไม่มีใบรับรองสำหรับแต่ละผู้รับ
+SEC_ERROR_NOT_A_RECIPIENT=ไม่สามารถถอดรหัส: คุณไม่ใช่ผู้รับ หรือไม่พบใบรับรองและกุญแจส่วนตัวที่ตรงกัน
+SEC_ERROR_PKCS7_KEYALG_MISMATCH=ไม่สามารถถอดรหัส: อัลกอริทึมการเข้ารหัสกุญแจไม่ตรงกับใบรับรองของคุณ
+SEC_ERROR_PKCS7_BAD_SIGNATURE=การตรวจสอบลายเซ็นล้มเหลว: ไม่พบผู้เซ็น พบผู้เซ็นมากเกินไป หรือข้อมูลผิดรูปแบบหรือเสียหาย
+SEC_ERROR_UNSUPPORTED_KEYALG=อัลกอริทึมกุญแจที่ไม่รองรับหรือไม่รู้จัก
+SEC_ERROR_DECRYPTION_DISALLOWED=ไม่สามารถถอดรหัส: ถูกเข้ารหัสโดยใช้อัลกอริทึมหรือขนาดกุญแจที่ไม่อนุญาต
+XP_SEC_FORTEZZA_BAD_CARD=การ์ด Fortezza ไม่ได้เริ่มอย่างถูกต้อง โปรดเอาออกและส่งคืนให้กับผู้ออกของคุณ
+XP_SEC_FORTEZZA_NO_CARD=ไม่พบการ์ด Fortezza
+XP_SEC_FORTEZZA_NONE_SELECTED=ไม่มีการ์ด Fortezza ที่เลือก
+XP_SEC_FORTEZZA_MORE_INFO=โปรดเลือกการตั้งค่าส่วนบุคคลเพื่อรับข้อมูลเพิ่มเติม
+XP_SEC_FORTEZZA_PERSON_NOT_FOUND=ไม่พบการตั้งค่าส่วนบุคคล
+XP_SEC_FORTEZZA_NO_MORE_INFO=ไม่มีข้อมูลเพิ่มเติมเกี่ยวกับการตั้งค่าส่วนบุคคลนั้น
+XP_SEC_FORTEZZA_BAD_PIN=Pin ไม่ถูกต้อง
+XP_SEC_FORTEZZA_PERSON_ERROR=ไม่สามารถเริ่มการตั้งค่าส่วนบุคคล Fortezza ได้
+SEC_ERROR_NO_KRL=ไม่พบ KRL สำหรับใบรับรองของเว็บไซต์นี้
+SEC_ERROR_KRL_EXPIRED=KRL สำหรับใบรับรองของเว็บไซต์นี้หมดอายุแล้ว
+SEC_ERROR_KRL_BAD_SIGNATURE=KRL สำหรับใบรับรองของเว็บไซต์นี้มีลายเซ็นที่ไม่ถูกต้อง
+SEC_ERROR_REVOKED_KEY=KRL สำหรับใบรับรองของเว็บไซต์นี้หมดอายุแล้ว
+SEC_ERROR_KRL_INVALID=KRL ใหม่มีรูปแบบที่ไม่ถูกต้อง
+SEC_ERROR_NEED_RANDOM=ห้องสมุดความปลอดภัย: ต้องการข้อมูลแบบสุ่ม
+SEC_ERROR_NO_MODULE=ห้องสมุดความปลอดภัย: ไม่มีโมดูลความปลอดภัยที่สามารถทำตามการดำเนินการที่ขอ
+SEC_ERROR_NO_TOKEN=ไม่มีการ์ดความปลอดภัยหรือโทเค็นอยู่ ต้องเริ่มใหม่อีกครั้ง หรือถูกเอาออกไปแล้ว
+SEC_ERROR_READ_ONLY=ห้องสมุดความปลอดภัย: ฐานข้อมูลแบบอ่านอย่างเดียว
+SEC_ERROR_NO_SLOT_SELECTED=ไม่ได้เลือกสล็อตหรือโทเค็น
+SEC_ERROR_CERT_NICKNAME_COLLISION=มีใบรับรองที่มีชื่อเล่นเหมือนกันอยู่แล้ว
+SEC_ERROR_KEY_NICKNAME_COLLISION=มีกุญแจที่มีชื่อเล่นเดียวกันอยู่แล้ว
+SEC_ERROR_SAFE_NOT_CREATED=เกิดข้อผิดพลาดขณะสร้างวัตถุแบบปลอดภัย
+SEC_ERROR_BAGGAGE_NOT_CREATED=เกิดข้อผิดพลาดขณะสร้างวัตถุสัมภาระ
+XP_JAVA_REMOVE_PRINCIPAL_ERROR=ไม่สามารถเอา principal ออกได้
+XP_JAVA_DELETE_PRIVILEGE_ERROR=ไม่สามารถลบ privilege ได้
+XP_JAVA_CERT_NOT_EXISTS_ERROR=Principle นี้ไม่มีใบรับรอง
+SEC_ERROR_BAD_EXPORT_ALGORITHM=อัลกอริทึมที่ต้องการนั้นไม่อนุญาต
+SEC_ERROR_EXPORTING_CERTIFICATES=เกิดข้อผิดพลาดขณะพยายามส่งออกใบรับรอง
+SEC_ERROR_IMPORTING_CERTIFICATES=เกิดข้อผิดพลาดขณะพยายามนำเข้าใบรับรอง
+SEC_ERROR_PKCS12_DECODING_PFX=ไม่สามารถนำเข้า ข้อผิดพลาดการถอดรหัส ไฟล์ไม่ถูกต้อง
+SEC_ERROR_PKCS12_INVALID_MAC=ไม่สามารถนำเข้า MAC ไม่ถูกต้อง รหัสผ่านไม่ถูกต้องหรือไฟล์เสียหาย
+SEC_ERROR_PKCS12_UNSUPPORTED_MAC_ALGORITHM=ไม่สามารถนำเข้า ไม่รองรับอัลกอริทึม MAC
+SEC_ERROR_PKCS12_UNSUPPORTED_TRANSPORT_MODE=ไม่สามารถนำเข้า รองรับเฉพาะโหมดความเป็นส่วนตัวและความสมบูรณ์ของรหัสผ่านเท่านั้น
+SEC_ERROR_PKCS12_CORRUPT_PFX_STRUCTURE=ไม่สามารถนำเข้า โครงสร้างไฟล์เสียหาย
+SEC_ERROR_PKCS12_UNSUPPORTED_PBE_ALGORITHM=ไม่สามารถนำเข้า อัลกอริทึมการเข้ารหัสไม่รองรับ
+SEC_ERROR_PKCS12_UNSUPPORTED_VERSION=ไม่สามารถนำเข้า ไม่รองรับรุ่นไฟล์
+SEC_ERROR_PKCS12_PRIVACY_PASSWORD_INCORRECT=ไม่สามารถนำเข้า รหัสผ่านความเป็นส่วนตัวไม่ถูกต้อง
+SEC_ERROR_PKCS12_CERT_COLLISION=ไม่สามารถนำเข้า มีชื่อเล่นเดียวกันอยู่แล้วในฐานข้อมูล
+SEC_ERROR_USER_CANCELLED=ผู้ใช้กดยกเลิก
+SEC_ERROR_PKCS12_DUPLICATE_DATA=ไม่ถูกนำเข้า มีอยู่แล้วในฐานข้อมูล
+SEC_ERROR_MESSAGE_SEND_ABORTED=ข้อความไม่ถูกส่ง
+SEC_ERROR_INADEQUATE_KEY_USAGE=การใช้งานกุญแจของใบรับรองไม่เพียงพอสำหรับการดำเนินการที่พยายาม
+SEC_ERROR_INADEQUATE_CERT_TYPE=ประเภทของใบรับรองไม่ได้รับอนุญาตสำหรับแอปพลิเคชัน
+SEC_ERROR_CERT_ADDR_MISMATCH=ที่อยู่ในใบรับรองที่เซ็นไม่ตรงกับที่อยู่ในเฮดเดอร์ของข้อความ
+SEC_ERROR_PKCS12_UNABLE_TO_IMPORT_KEY=ไม่สามารถนำเข้าได้ มีข้อผิดพลาดในการพยายามนำเข้าคีย์ส่วนตัว
+SEC_ERROR_PKCS12_IMPORTING_CERT_CHAIN=ไม่สามารถนำเข้าได้ มีข้อผิดพลาดในการพยายามนำเข้าสายใบรับรอง
+SEC_ERROR_PKCS12_UNABLE_TO_LOCATE_OBJECT_BY_NAME=ไม่สามารถส่งออกได้ ไม่สามารถระบุตำแหน่งที่ตั้งของใบรับรองหรือคีย์ด้วยชื่อเล่นได้
+SEC_ERROR_PKCS12_UNABLE_TO_EXPORT_KEY=ไม่สามารถส่งออกได้ ไม่สามารถระบุตำแหน่งที่ตั้งและส่งออกคีย์ส่วนตัวได้
+SEC_ERROR_PKCS12_UNABLE_TO_WRITE=ไม่สามารถส่งออก ไม่สามารถเขียนไฟล์ส่งออก
+SEC_ERROR_PKCS12_UNABLE_TO_READ=ไม่สามารถนำเข้า ไม่สามารถอ่านไฟล์นำเข้า
+SEC_ERROR_PKCS12_KEY_DATABASE_NOT_INITIALIZED=ไม่สามารถส่งออกได้ ฐานข้อมูลคีย์เสียหายหรือถูกลบไปแล้ว
+SEC_ERROR_KEYGEN_FAIL=ไม่สามารถสุ่มคู่กุญแจสาธารณะ/ส่วนตัว
+SEC_ERROR_INVALID_PASSWORD=รหัสผ่านที่ป้อนไม่ถูกต้อง โปรดเลือกรหัสผ่านอื่น
+SEC_ERROR_RETRY_OLD_PASSWORD=รหัสผ่านเก่าที่ป้อนไม่ถูกต้อง โปรดลองอีกครั้ง
+SEC_ERROR_BAD_NICKNAME=ชื่อเล่นใบรับรองมีการใช้งานอยู่แล้ว
+SEC_ERROR_NOT_FORTEZZA_ISSUER=สาย FORTEZZA ปลายทางมีใบรับรองที่ไม่ใช่ FORTEZZA
+SEC_ERROR_CANNOT_MOVE_SENSITIVE_KEY=ไม่สามารถย้ายคีย์ที่ละเอียดอ่อนไปยังสล็อตที่ต้องการได้
+SEC_ERROR_JS_INVALID_MODULE_NAME=ชื่อโมดูลไม่ถูกต้อง
+SEC_ERROR_JS_INVALID_DLL=เส้นทางโมดูล/ชื่อไฟล์ไม่ถูกต้อง
+SEC_ERROR_JS_ADD_MOD_FAILURE=ไม่สามารถเพิ่มโมดูล
+SEC_ERROR_JS_DEL_MOD_FAILURE=ไม่สามารถลบโมดูล
+SEC_ERROR_OLD_KRL=KRL ใหม่นั้นไม่ใหม่กว่าปัจจุบัน
+SEC_ERROR_CKL_CONFLICT=CKL ใหม่มีผู้ออกที่แตกต่างจาก CKL ปัจจุบัน ลบ CKL ปัจจุบัน
+SEC_ERROR_CERT_NOT_IN_NAME_SPACE=ผู้ออกใบรับรองสำหรับใบรับรองนี้ไม่ได้รับอนุญาตให้ออกใบรับรองด้วยชื่อนี้
+SEC_ERROR_KRL_NOT_YET_VALID=รายการการเพิกถอนคีย์สำหรับใบรับรองนี้ยังไม่ถูกต้อง
+SEC_ERROR_CRL_NOT_YET_VALID=รายการการเพิกถอนใบอนุญาตสำหรับใบรับรองนี้ยังไม่ถูกต้อง
+SEC_ERROR_UNKNOWN_CERT=ไม่พบใบรับรองที่ขอ
+SEC_ERROR_UNKNOWN_SIGNER=ไม่พบใบรับรองของผู้ลงลายเซ็น
+SEC_ERROR_CERT_BAD_ACCESS_LOCATION=ตำแหน่งที่ตั้งสำหรับเซิร์ฟเวอร์สถานะใบรับรองมีรูปแบบที่ไม่ถูกต้อง
+SEC_ERROR_OCSP_UNKNOWN_RESPONSE_TYPE=ไม่สามารถถอดรหัสการตอบกลับ OCSP ได้อย่างสมบูรณ์ เนื่องจากเป็นประเภทที่ไม่รู้จัก
+SEC_ERROR_OCSP_BAD_HTTP_RESPONSE=เซิร์ฟเวอร์ OCSP ส่งกลับข้อมูล HTTP ที่ไม่คาดคิด/ไม่ถูกต้อง
+SEC_ERROR_OCSP_MALFORMED_REQUEST=เซิร์ฟเวอร์ OCSP พบคำขอที่เสียหายหรือมีรูปแบบที่ไม่ถูกต้อง
+SEC_ERROR_OCSP_SERVER_ERROR=เซิร์ฟเวอร์ OCSP พบข้อผิดพลาดภายใน
+SEC_ERROR_OCSP_TRY_SERVER_LATER=เซิร์ฟเวอร์ OCSP แนะนำให้ลองอีกครั้งในภายหลัง
+SEC_ERROR_OCSP_REQUEST_NEEDS_SIG=เซิร์ฟเวอร์ OCSP ต้องการลายเซ็นบนคำขอนี้
+SEC_ERROR_OCSP_UNAUTHORIZED_REQUEST=เซิร์ฟเวอร์ OCSP ปฏิเสธคำขอนี้เนื่องจากไม่ได้รับอนุญาต
+SEC_ERROR_OCSP_UNKNOWN_RESPONSE_STATUS=เซิร์ฟเวอร์ OCSP ส่งกลับสถานะที่ไม่รู้จัก
+SEC_ERROR_OCSP_UNKNOWN_CERT=เซิร์ฟเวอร์ OCSP ไม่มีสถานะสำหรับใบรับรอง
+SEC_ERROR_OCSP_NOT_ENABLED=คุณต้องเปิดใช้งาน OCSP ก่อนดำเนินการนี้
+SEC_ERROR_OCSP_NO_DEFAULT_RESPONDER=คุณต้องตั้งตัวตอบกลับเริ่มต้น OCSP ก่อนดำเนินการนี้
+SEC_ERROR_OCSP_MALFORMED_RESPONSE=การตอบกลับจากเซิร์ฟเวอร์ OCSP เสียหายหรือมีรูปแบบที่ไม่ถูกต้อง
+SEC_ERROR_OCSP_UNAUTHORIZED_RESPONSE=ผู้ลงลายเซ็นของการตอบกลับ OCSP ไม่ได้รับอนุญาตให้ระบุสถานะสำหรับใบรับรองนี้
+SEC_ERROR_OCSP_FUTURE_RESPONSE=การตอบกลับ OCSP ยังไม่ถูกต้อง (มีวันในอนาคต)
+SEC_ERROR_OCSP_OLD_RESPONSE=การตอบกลับ OCSP มีข้อมูลที่ล้าสมัย
+SEC_ERROR_DIGEST_NOT_FOUND=ไม่พบส่วนย่อย CMS หรือ PKCS #7 ในข้อความที่ลงลายเซ็น
+SEC_ERROR_UNSUPPORTED_MESSAGE_TYPE=ไม่รองรับชนิดข้อความ CMS หรือ PKCS #7
+SEC_ERROR_MODULE_STUCK=ไม่สามารถเอาโมดูล PKCS #11 ออกได้เนื่องจากใช้งานอยู่
+SEC_ERROR_BAD_TEMPLATE=ไม่สามารถถอดรหัสข้อมูล ASN.1 ได้ แม่แบบที่ระบุไม่ถูกต้อง
+SEC_ERROR_CRL_NOT_FOUND=ไม่พบ CRL ที่ตรงกัน
+SEC_ERROR_REUSED_ISSUER_AND_SERIAL=คุณกำลังพยายามนำเข้าใบรับรองที่มีผู้ออก/เลขอนุกรมเดียวกันเป็นใบรับรองที่มีอยู่แล้ว แต่ไม่ใช่ใบรับรองเดียวกัน
+SEC_ERROR_BUSY=ไม่สามารถปิด NSS ได้ วัตถุยังถูกใช้งานอยู่
+SEC_ERROR_EXTRA_INPUT=ข้อความที่เข้ารหัสแบบ DER มีข้อมูลที่ไม่ได้ใช้เพิ่มเติม
+SEC_ERROR_UNSUPPORTED_ELLIPTIC_CURVE=ไม่รองรับเส้นโค้งรูปไข่นี้
+SEC_ERROR_UNSUPPORTED_EC_POINT_FORM=ไม่รองรับรูปแบบจุดเส้นโค้งรูปไข่นี้
+SEC_ERROR_UNRECOGNIZED_OID=ตัวระบุวัตถุที่ไม่รู้จัก
+SEC_ERROR_OCSP_INVALID_SIGNING_CERT=ใบรับรองการลงลายเซ็น OCSP ไม่ถูกต้องในการตอบกลับ OCSP
+SEC_ERROR_REVOKED_CERTIFICATE_CRL=ใบรับรองถูกเพิกถอนในรายการเพิกถอนใบรับรองของผู้ออก
+SEC_ERROR_REVOKED_CERTIFICATE_OCSP=ใบรับรองรายงานผู้ตอบกลับ OCSP ของผู้ออกถูกเพิกถอน
+SEC_ERROR_CRL_INVALID_VERSION=รายการเพิกถอนใบรับรองของผู้ออกมีหมายเลขรุ่นที่ไม่รู้จัก
+SEC_ERROR_CRL_V1_CRITICAL_EXTENSION=รายการเพิกถอนใบรับรอง V1 ของผู้ออกมีส่วนขยายสำคัญ
+SEC_ERROR_CRL_UNKNOWN_CRITICAL_EXTENSION=รายการเพิกถอนใบรับรอง V2 ของผู้ออกมีส่วนขยายสำคัญที่ไม่รู้จัก
+SEC_ERROR_UNKNOWN_OBJECT_TYPE=ไม่รู้จักชนิดวัตถุที่ระบุ
+SEC_ERROR_INCOMPATIBLE_PKCS11=ไดรเวอร์ PKCS #11 ละเมิดข้อกำหนดในแบบที่ใช้ร่วมกันไม่ได้
+SEC_ERROR_NO_EVENT=ไม่มีเหตุการณ์สล็อตใหม่ในเวลานี้
+SEC_ERROR_CRL_ALREADY_EXISTS=มี CRL อยู่แล้ว
+SEC_ERROR_NOT_INITIALIZED=ไม่ได้เตรียมใช้งาน NSS
+SEC_ERROR_TOKEN_NOT_LOGGED_IN=การดำเนินการล้มเหลวเนื่องจากไม่ได้เข้าสู่ระบบโทเค็น PKCS#11
+SEC_ERROR_OCSP_RESPONDER_CERT_INVALID=ใบรับรองของผู้ตอบกลับ OCSP ที่กำหนดค่าไม่ถูกต้อง
+SEC_ERROR_OCSP_BAD_SIGNATURE=การตอบกลับ OCSP มีลายเซ็นที่ไม่ถูกต้อง
+SEC_ERROR_OUT_OF_SEARCH_LIMITS=การค้นหาการตรวจสอบความถูกต้องของใบรับรองเกินขีดจำกัดในการค้นหา
+SEC_ERROR_INVALID_POLICY_MAPPING=การแมปนโยบายมี anypolicy
+SEC_ERROR_POLICY_VALIDATION_FAILED=การตรวจสอบความถูกต้องของนโยบายของสายใบรับรองล้มเหลว
+SEC_ERROR_UNKNOWN_AIA_LOCATION_TYPE=ไม่รู้จักชนิดตำแหน่งที่ตั้งที่ระบุในส่วนขยาย AIA
+SEC_ERROR_BAD_HTTP_RESPONSE=เซิร์ฟเวอร์ส่งกลับการตอบกลับ HTTP ที่ไม่ถูกต้อง
+SEC_ERROR_BAD_LDAP_RESPONSE=เซิร์ฟเวอร์ส่งกลับการตอบกลับ LDAP ที่ไม่ถูกต้อง
+SEC_ERROR_FAILED_TO_ENCODE_DATA=ล้มเหลวในการเข้ารหัสข้อมูลด้วยตัวเข้ารหัส ASN1
+SEC_ERROR_BAD_INFO_ACCESS_LOCATION=ตำแหน่งการเข้าถึงข้อมูลไม่ถูกต้องในส่วนขยายใบรับรอง
+SEC_ERROR_LIBPKIX_INTERNAL=เกิดข้อผิดพลาดภายในของ Libpkix ระหว่างการตรวจสอบความถูกต้องของใบรับรอง
+SEC_ERROR_PKCS11_GENERAL_ERROR=โมดูล PKCS #11 ส่งกลับ CKR_GENERAL_ERROR ซึ่งบ่งชี้ว่าเกิดข้อผิดพลาดที่ไม่สามารถกู้คืนได้
+SEC_ERROR_PKCS11_FUNCTION_FAILED=โมดูล PKCS #11 ส่งกลับ CKR_FUNCTION_FAILED ซึ่งบ่งชี้ว่าไม่สามารถดำเนินการตามฟังก์ชันที่ขอได้ การลองการดำเนินการเดียวกันอีกครั้งอาจสำเร็จ
+SEC_ERROR_PKCS11_DEVICE_ERROR=โมดูล PKCS #11 ส่งกลับ CKR_DEVICE_ERROR ซึ่งบ่งชี้ว่าเกิดปัญหาขึ้นกับโทเค็นหรือสล็อต
+SEC_ERROR_BAD_INFO_ACCESS_METHOD=วิธีการเข้าถึงข้อมูลที่ไม่รู้จักในส่วนขยายใบรับรอง
+SEC_ERROR_CRL_IMPORT_FAILED=เกิดข้อผิดพลาดในการพยายามนำเข้า CRL
+SEC_ERROR_EXPIRED_PASSWORD=รหัสผ่านหมดอายุ
+SEC_ERROR_LOCKED_PASSWORD=รหัสผ่านถูกล็อค
+SEC_ERROR_UNKNOWN_PKCS11_ERROR=ข้อผิดพลาด PKCS #11 ที่ไม่รู้จัก
+SEC_ERROR_BAD_CRL_DP_URL=URL ไม่ถูกต้องหรือไม่รองรับในชื่อจุดแจกจ่าย CRL
+SEC_ERROR_CERT_SIGNATURE_ALGORITHM_DISABLED=ใบรับรองถูกเซ็นโดยใช้อัลกอริทึมใบรับรองที่ถูกปิดการใช้งานเนื่องจากไม่ปลอดภัย
+MOZILLA_PKIX_ERROR_KEY_PINNING_FAILURE=เซิร์ฟเวอร์ใช้ key pinning (HPKP) แต่ไม่สามารถสร้างสายใบรับรองที่เชื่อถือได้ซึ่งตรงกับ pinset ไม่สามารถแทนที่การละเมิด Key pinning ได้
+MOZILLA_PKIX_ERROR_CA_CERT_USED_AS_END_ENTITY=เซิร์ฟเวอร์ใช้ใบรับรองที่มีข้อจำกัดพื้นฐานที่ระบุว่าเป็นผู้ออกใบรับรอง สำหรับใบรับรองที่ออกให้อย่างถูกต้องไม่ควรเป็นเช่นนี้
+MOZILLA_PKIX_ERROR_INADEQUATE_KEY_SIZE=เซิร์ฟเวอร์แสดงใบรับรองที่มีขนาดคีย์ที่เล็กเกินไปที่จะสร้างการเชื่อมต่อที่ปลอดภัย
+MOZILLA_PKIX_ERROR_V1_CERT_USED_AS_CA=ใบรับรอง X.509 รุ่น 1 ที่ไม่ใช่ trust anchor ถูกใช้เพื่อออกใบรับรองของเซิร์ฟเวอร์ ใบรับรอง X.509 รุ่น 1 เลิกใช้แล้วและไม่ควรใช้เพื่อลงลายเซ็นให้กับใบรับรองอื่น ๆ
+MOZILLA_PKIX_ERROR_NOT_YET_VALID_CERTIFICATE=เซิร์ฟเวอร์เสนอใบรับรองที่ยังไม่ถูกต้อง
+MOZILLA_PKIX_ERROR_NOT_YET_VALID_ISSUER_CERTIFICATE=ใบรับรองที่ยังไม่ถูกต้องถูกใช้เพื่อออกใบรับรองของเซิร์ฟเวอร์
+MOZILLA_PKIX_ERROR_SIGNATURE_ALGORITHM_MISMATCH=อัลกอริทึมลายเซ็นในฟิลด์ลายเซ็นของใบรับรองไม่ตรงกับอัลกอริทึมในฟิลด์ SignatureAlgorithm
+MOZILLA_PKIX_ERROR_OCSP_RESPONSE_FOR_CERT_MISSING=การตอบกลับ OCSP ไม่มีสถานะสำหรับใบรับรองที่กำลังจะถูกตรวจสอบ
+MOZILLA_PKIX_ERROR_VALIDITY_TOO_LONG=เซิร์ฟเวอร์เสนอใบรับรองที่มีผลในระยะเวลานานเกินไป
+MOZILLA_PKIX_ERROR_REQUIRED_TLS_FEATURE_MISSING=ไม่มีคุณลักษณะ TLS ที่จำเป็น
+MOZILLA_PKIX_ERROR_INVALID_INTEGER_ENCODING=เซิร์ฟเวอร์เสนอใบรับรองที่มีการเข้ารหัสจำนวนเต็มที่ไม่ถูกต้อง สาเหตุที่พบบ่อย ได้แก่ หมายเลขซีเรียลเป็นค่าลบ โมดูลัส RSA เป็นค่าลบ และการเข้ารหัสที่ยาวเกินความจำเป็น
+MOZILLA_PKIX_ERROR_EMPTY_ISSUER_NAME=เซิร์ฟเวอร์เสนอใบรับรองที่มีชื่อต่างหากของผู้ออกที่ว่างเปล่า
+MOZILLA_PKIX_ERROR_ADDITIONAL_POLICY_CONSTRAINT_FAILED=ข้อจำกัดนโยบายเพิ่มเติมล้มเหลวเมื่อตรวจสอบความถูกต้องของใบรับรองนี้
+MOZILLA_PKIX_ERROR_SELF_SIGNED_CERT=ใบรับรองไม่น่าเชื่อถือเนื่องจากเป็นการออกใบรับรองโดยเจ้าของเว็บไซต์เอง
diff --git a/l10n-th/security/manager/chrome/pipnss/pipnss.properties b/l10n-th/security/manager/chrome/pipnss/pipnss.properties
new file mode 100644
index 0000000000..c4de3e5be2
--- /dev/null
+++ b/l10n-th/security/manager/chrome/pipnss/pipnss.properties
@@ -0,0 +1,136 @@
+#
+# 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/.
+
+CertPasswordPrompt=โปรดใส่รหัสผ่านสำหรับโทเค็น PKCS#11 %S
+
+CertPasswordPromptDefault=โปรดป้อนรหัสผ่านหลักของคุณ
+
+# The following strings have special requirements: they must fit in a 32 or 64
+# bytes buffer after being encoded to UTF-8.
+#
+# It's possible to verify the length of a translation using the Browser Console
+# in Firefox and evaluating the following code:
+#
+# (new TextEncoder('utf-8').encode('YOURSTRING')).length
+#
+# Simply replace YOURSTRING with your translation.
+#
+# If it's not possible to produce an understandable translation within these
+# limits, keeping the English text is an acceptable workaround.
+
+# The following strings have special requirements: they must fit in a 32 or 64
+# bytes buffer after being encoded to UTF-8.
+#
+# It's possible to verify the length of a translation using the Browser Console
+# in Firefox and evaluating the following code:
+#
+# (new TextEncoder().encode('YOURSTRING')).length
+#
+# Simply replace YOURSTRING with your translation.
+#
+# If it's not possible to produce an understandable translation within these
+# limits, keeping the English text is an acceptable workaround.
+
+# LOCALIZATION NOTE (RootCertModuleName): string limit is 64 bytes after
+# conversion to UTF-8.
+# length_limit = 64 bytes
+RootCertModuleName=Builtin Roots Module
+# LOCALIZATION NOTE (ManufacturerID): string limit is 32 bytes after conversion
+# to UTF-8.
+# length_limit = 32 bytes
+ManufacturerID=Mozilla.org
+# LOCALIZATION NOTE (LibraryDescription): string limit is 32 bytes after
+# conversion to UTF-8.
+# length_limit = 32 bytes
+LibraryDescription=PSM Internal Crypto Services
+# LOCALIZATION NOTE (TokenDescription): string limit is 32 bytes after
+# conversion to UTF-8.
+# length_limit = 32 bytes
+TokenDescription=Generic Crypto Services
+# LOCALIZATION NOTE (PrivateTokenDescription): string limit is 32 bytes after
+# conversion to UTF-8.
+# length_limit = 32 bytes
+PrivateTokenDescription=Software Security Device
+# LOCALIZATION NOTE (SlotDescription): string limit is 64 bytes after conversion
+# to UTF-8.
+# length_limit = 64 bytes
+SlotDescription=PSM Internal Cryptographic Services
+# LOCALIZATION NOTE (PrivateSlotDescription): string limit is 64 bytes after
+# conversion to UTF-8.
+# length_limit = 64 bytes
+PrivateSlotDescription=PSM Private Keys
+# LOCALIZATION NOTE (Fips140TokenDescription): string limit is 32 bytes after
+# conversion to UTF-8.
+# length_limit = 32 bytes
+Fips140TokenDescription=Software Security Device (FIPS)
+# LOCALIZATION NOTE (Fips140SlotDescription): string limit is 64 bytes after
+# conversion to UTF-8.
+# length_limit = 64 bytes
+Fips140SlotDescription=FIPS 140 Cryptographic, Key and Certificate Services
+
+# LOCALIZATION NOTE (nick_template): $1s is the common name from a cert (e.g. "Mozilla"), $2s is the CA name (e.g. VeriSign)
+nick_template=%1$s's %2$s ID
+
+CertDumpKUSign=ลงลายเซ็น
+CertDumpKUNonRep=Non-repudiation
+CertDumpKUEnc=Key Encipherment
+CertDumpKUDEnc=Data Encipherment
+CertDumpKUKA=Key Agreement
+CertDumpKUCertSign=ผู้เซ็นใบรับรอง
+CertDumpKUCRLSigner=ผู้เซ็น CRL
+
+PSMERR_SSL_Disabled=ไม่สามารถเชื่อมต่ออย่างปลอดภัยเนื่องจากโปรโตคอล SSL ถูกปิดใช้งาน
+PSMERR_SSL2_Disabled=ไม่สามารถเชื่อมต่ออย่างปลอดภัยเนื่องจากไซต์ใช้โปรโตคอล SSL รุ่นเก่าที่ไม่ปลอดภัย
+PSMERR_HostReusedIssuerSerial=คุณได้รับใบรับรองที่ไม่ถูกต้อง โปรดติดต่อผู้ดูแลเซิร์ฟเวอร์หรือส่งอีเมลหาผู้ที่เกี่ยวข้องโดบแนบข้อมูลดังกล่าวไปด้วย:\n\nใบรับรองของคุณมีเลขอนุกรมที่เหมือนกับใบรับรองอื่นที่ออกมาแล้ว โปรดรับใบรับรองใหม่ที่มีเลขอนุกรมไม่ซ้ำ (Your certificate contains the same serial number as another certificate issued by the certificate authority. Please get a new certificate containing a unique serial number.)
+
+# LOCALIZATION NOTE (SSLConnectionErrorPrefix2): %1$S is the host string, %2$S is more detailed information (localized as well).
+SSLConnectionErrorPrefix2=เกิดข้อผิดพลาดระหว่างการเชื่อมต่อไปยัง %1$S %2$S\n
+
+certErrorIntro=%S ใช้ใบรับรองความปลอดภัยที่ผิดกฎ
+
+certErrorTrust_SelfSigned=ใบรับรองของไม่น่าเชื่อถือเพราะเป็นการออกใบรับรองโดยเจ้าของเว็บไซต์เอง
+certErrorTrust_UnknownIssuer=ใบรับรองไม่น่าเชื่อถือเพราะรับรองโดยผู้รับรองนิรนาม
+certErrorTrust_UnknownIssuer2=เซิร์ฟเวอร์อาจไม่ส่งใบรับรองระดับกลางที่เหมาะสม
+certErrorTrust_UnknownIssuer3=อาจต้องนำเข้าใบรับรองรากเพิ่มเติม
+certErrorTrust_CaInvalid=ใบรับรองไม่น่าเชื่อถือเพราะออกให้โดยผู้ออกที่ไม่ได้รับอนุญาต
+certErrorTrust_Issuer=ใบรับรองไม่น่าเชื่อถือเพราะออกให้โดยผู้ที่ไม่ได้รับการเชื่อถือ
+certErrorTrust_SignatureAlgorithmDisabled=ใบรับรองไม่น่าเชื่อถือเพราะเซ็นรับโดยใช้อัลกอริทึมลายเซ็นที่ถูกปิดใช้งานเนื่องจากไม่ปลอดภัย
+certErrorTrust_ExpiredIssuer=ใบรับรองไม่น่าเชื่อถือเพราะผู้ให้การรับรองหมดอายุการรับรองแล้ว
+certErrorTrust_Untrusted=ใบรับรองมาจากแหล่งที่ไม่น่าเชื่อถือ
+certErrorTrust_MitM=การเชื่อมต่อของคุณกำลังถูกสกัดกั้นโดยพร็อกซี TLS ถอนการติดตั้งหากเป็นไปได้หรือกำหนดค่าอุปกรณ์ของคุณให้เชื่อถือใบรับรองราก
+
+certErrorMismatch=ใบรับรองใช้ไม่ได้กับ %S
+# LOCALIZATION NOTE (certErrorMismatchSinglePrefix): %S is replaced by the domain for which the certificate is valid
+certErrorMismatchSinglePrefix=ใบรับรองนี้ใช้ได้กับ %S เท่านั้น
+certErrorMismatchMultiple=ใบรับรองถูกต้องเฉพาะสำหรับชื่อดังต่อไปนี้:
+
+# LOCALIZATION NOTE (certErrorExpiredNow): Do not translate %1$S (date+time of expired certificate) or %2$S (current date+time)
+certErrorExpiredNow=ใบรับรองหมดอายุเมื่อ %1$S เวลาปัจจุบันคือ %2$S
+
+# LOCALIZATION NOTE (certErrorNotYetValidNow): Do not translate %1$S (date+time certificate will become valid) or %2$S (current date+time)
+certErrorNotYetValidNow=ใบรับรองจะยังคงใช้ไม่ได้จนกว่า %1$S เวลาปัจจุบันคือ %2$S
+
+certErrorMitM=เว็บไซต์พิสูจน์ข้อมูลประจำตัวของตัวเองผ่านใบรับรองซึ่งออกโดยผู้ออกใบรับรอง
+# LOCALIZATION NOTE (certErrorMitM2): %S is brandShortName
+certErrorMitM2=%S ได้รับการสนับสนุนโดย Mozilla ที่ไม่แสวงหาผลกำไรซึ่งดูแลที่เก็บผู้ออกใบรับรอง (CA) ที่เปิดอย่างสมบูรณ์ ที่เก็บ CA ช่วยให้มั่นใจได้ว่าผู้ออกใบรับรองปฏิบัติตามแนวทางที่ดีที่สุดเพื่อความปลอดภัยของผู้ใช้
+# LOCALIZATION NOTE (certErrorMitM3): %S is brandShortName
+certErrorMitM3=%S ใช้ที่เก็บ Mozilla CA เพื่อตรวจสอบว่าการเชื่อมต่อนั้นปลอดภัยมากกว่าใบรับรองที่จัดทำโดยระบบปฏิบัติการของผู้ใช้ ดังนั้นหากโปรแกรมป้องกันไวรัสหรือเครือข่ายขัดขวางการเชื่อมต่อกับใบรับรองความปลอดภัยที่ออกโดย CA ที่ไม่ได้อยู่ในที่เก็บ Mozilla CA การเชื่อมต่อจะถือว่าไม่ปลอดภัย
+
+certErrorSymantecDistrustAdministrator=คุณสามารถแจ้งปัญหานี้แก่ผู้ดูแลระบบของเว็บไซต์
+
+# LOCALIZATION NOTE (certErrorCodePrefix3): %S is replaced by the error code.
+certErrorCodePrefix3=รหัสข้อผิดพลาด: %S
+
+P12DefaultNickname=ใบรับรองนำเข้า
+CertUnknown=ไม่ทราบ
+CertNoEmailAddress=(ไม่มีที่อยู่อีเมล)
+CaCertExists=ใบรับรองนี้ได้ถูกติดตั้งไว้ให้เป็นใบรับรองที่ใช้งานจริง
+NotACACert=นี่ไม่ใช่ใบรับรองที่ใช้งานจริงจึงไม่สามารถนำเข้าไปยังรายการใบรับรองที่ใช้งานจริงได้
+UserCertIgnoredNoPrivateKey=ไม่สามารถติดตั้งใบรับรองส่วนบุคคลนี้ได้เพราะคุณไม่มีกุญแจส่วนตัวที่ถูกสร้างขึ้นมาพร้อมกับใบรับรองนี้
+UserCertImported=ใบรับรองส่วนบุคคลของคุณได้ถูกติดตั้งแล้ว คุณควรทำการสำรองใบรับรองนี้ไว้
+CertOrgUnknown=(ไม่ทราบ)
+CertNotStored=(ไม่ได้เก็บไว้)
+CertExceptionPermanent=ถาวร
+CertExceptionTemporary=ชั่วคราว
diff --git a/l10n-th/security/manager/chrome/pippki/pippki.properties b/l10n-th/security/manager/chrome/pippki/pippki.properties
new file mode 100644
index 0000000000..0bbc7f0c8d
--- /dev/null
+++ b/l10n-th/security/manager/chrome/pippki/pippki.properties
@@ -0,0 +1,76 @@
+# 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/.
+
+# Download Cert dialog
+# LOCALIZATION NOTE(newCAMessage1):
+# %S is a string representative of the certificate being downloaded/imported.
+newCAMessage1=คุณต้องการเชื่อถือ "%S" ด้วยเหตุผลดังกล่าวหรือไม่?
+unnamedCA=ผู้ออกใบรับรอง (ไม่มีชื่อ)
+
+# PKCS#12 file dialogs
+getPKCS12FilePasswordMessage=โปรดป้อนรหัสผ่านที่ใช้ในการเข้ารหัสข้อมูลสำรองใบรับรองนี้:
+
+# Client auth
+clientAuthRemember=จดจำการตัดสินใจนี้
+# LOCALIZATION NOTE(clientAuthNickAndSerial): 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.
+clientAuthNickAndSerial=%1$S [%2$S]
+# LOCALIZATION NOTE(clientAuthHostnameAndPort):
+# %1$S is the hostname of the server.
+# %2$S is the port of the server.
+clientAuthHostnameAndPort=%1$S:%2$S
+# LOCALIZATION NOTE(clientAuthMessage1): %S is the Organization of the server
+# cert.
+clientAuthMessage1=องค์กร: “%S”
+# LOCALIZATION NOTE(clientAuthMessage2): %S is the Organization of the issuer
+# cert of the server cert.
+clientAuthMessage2=ออกให้ภายใต้: “%S”
+# LOCALIZATION NOTE(clientAuthIssuedTo): %1$S is the Distinguished Name of the
+# currently selected client cert, such as "CN=John Doe,OU=Example" (without
+# quotes).
+clientAuthIssuedTo=ออกให้: %1$S
+# LOCALIZATION NOTE(clientAuthSerial): %1$S is the serial number of the selected
+# cert in AA:BB:CC hex format.
+clientAuthSerial=หมายเลขอนุกรม: %1$S
+# LOCALIZATION NOTE(clientAuthValidityPeriod):
+# %1$S is the already localized notBefore date of the selected cert.
+# %2$S is the already localized notAfter date of the selected cert.
+clientAuthValidityPeriod=มีผลตั้งแต่ %1$S ถึง %2$S
+# LOCALIZATION NOTE(clientAuthKeyUsages): %1$S is a comma separated list of
+# already localized key usages the selected cert is valid for.
+clientAuthKeyUsages=การใช้กุญแจ: %1$S
+# LOCALIZATION NOTE(clientAuthEmailAddresses): %1$S is a comma separated list of
+# e-mail addresses the selected cert is valid for.
+clientAuthEmailAddresses=ที่อยู่อีเมล: %1$S
+# LOCALIZATION NOTE(clientAuthIssuedBy): %1$S is the Distinguished Name of the
+# cert which issued the selected cert.
+clientAuthIssuedBy=ออกโดย: %1$S
+# LOCALIZATION NOTE(clientAuthStoredOn): %1$S is the name of the PKCS #11 token
+# the selected cert is stored on.
+clientAuthStoredOn=จัดเก็บไว้ใน: %1$S
+
+# Page Info
+pageInfo_NoEncryption=การเชื่อมต่อไม่ได้ถูกเข้ารหัส
+pageInfo_Privacy_None1=เว็บไซต์ %S ไม่รองรับการเข้ารหัสสำหรับหน้าที่คุณกำลังดู
+pageInfo_Privacy_None2=ข้อมูลที่ถูกส่งผ่านอินเทอร์เน็ตโดยไม่มีการเข้ารหัสสามารถมองเห็นได้โดยผู้คนอื่น ๆ ขณะอยู่ในระหว่างการขนส่ง
+pageInfo_Privacy_None4=หน้าที่คุณกำลังดูไม่ได้ถูกเข้ารหัสก่อนที่จะถูกส่งผ่านอินเทอร์เน็ต
+# LOCALIZATION NOTE (pageInfo_EncryptionWithBitsAndProtocol and pageInfo_BrokenEncryption):
+# %1$S is the name of the encryption standard,
+# %2$S is the key size of the cipher.
+# %3$S is protocol version like "SSL 3" or "TLS 1.2"
+pageInfo_EncryptionWithBitsAndProtocol=การเชื่อมต่อถูกเข้ารหัส (%1$S, กุญแจ %2$S บิต, %3$S)
+pageInfo_BrokenEncryption=การเข้ารหัสเสียหาย (%1$S, กุญแจ %2$S บิต, %3$S)
+pageInfo_Privacy_Encrypted1=หน้าที่คุณกำลังดูถูกเข้ารหัสก่อนที่จะถูกส่งผ่านอินเทอร์เน็ต
+pageInfo_Privacy_Encrypted2=การเข้ารหัสทำให้ผู้คนที่ไม่ได้รับอนุญาตดูข้อมูลที่เดินทางระหว่างคอมพิวเตอร์ได้ยาก ดังนั้นจึงไม่น่ามีใครก็ตามอ่านหน้านี้ในขณะที่หน้าเดินทางผ่านเครือข่าย
+pageInfo_MixedContent=การเชื่อมต่อถูกเข้ารหัสบางส่วน
+pageInfo_MixedContent2=บางส่วนของหน้าที่คุณกำลังดูไม่ได้ถูกเข้ารหัสก่อนที่จะถูกส่งผ่านอินเทอร์เน็ต
+pageInfo_WeakCipher=การเชื่อมต่อของคุณไปยังเว็บไซต์นี้ใช้การเข้ารหัสที่อ่อนแอและไม่เป็นส่วนตัว ผู้คนอื่น ๆ สามารถดูข้อมูลของคุณหรือเปลี่ยนแปลงลักษณะการทำงานของเว็บไซต์
+pageInfo_CertificateTransparency_Compliant=เว็บไซต์นี้สอดคล้องกับนโยบายความโปร่งใสของใบรับรอง
+
+# Token Manager
+password_not_set=(ไม่ได้ตั้ง)
+enable_fips=เปิดใช้งาน FIPS
+
diff --git a/l10n-th/security/manager/security/certificates/certManager.ftl b/l10n-th/security/manager/security/certificates/certManager.ftl
new file mode 100644
index 0000000000..1f1df217f5
--- /dev/null
+++ b/l10n-th/security/manager/security/certificates/certManager.ftl
@@ -0,0 +1,228 @@
+# 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/.
+
+certmgr-title =
+ .title = ตัวจัดการใบรับรอง
+
+certmgr-tab-mine =
+ .label = ใบรับรองของคุณ
+
+certmgr-tab-remembered =
+ .label = การตัดสินใจการรับรองความถูกต้อง
+
+certmgr-tab-people =
+ .label = ผู้คน
+
+certmgr-tab-servers =
+ .label = เซิร์ฟเวอร์
+
+certmgr-tab-ca =
+ .label = หน่วยงาน
+
+certmgr-mine = คุณมีใบรับรองจากองค์กรเหล่านี้ที่ระบุตัวตนคุณ
+certmgr-remembered = ใบรับรองเหล่านี้ถูกใช้เพื่อระบุตัวตนของคุณต่อเว็บไซต์
+certmgr-people = คุณมีใบรับรองในไฟล์ที่ระบุผู้คนเหล่านี้
+certmgr-server = รายการเหล่านี้ระบุข้อผิดพลาดของใบรับรองเซิร์ฟเวอร์
+certmgr-ca = คุณมีใบรับรองในไฟล์ที่ระบุผู้ออกใบรับรองเหล่านี้
+
+certmgr-edit-ca-cert2 =
+ .title = แก้ไขการตั้งค่าความน่าเชื่อถือของใบรับรอง CA
+ .style = min-width: 48em;
+
+certmgr-edit-cert-edit-trust = แก้ไขการตั้งค่าความน่าเชื่อถือ :
+
+certmgr-edit-cert-trust-ssl =
+ .label = ใบรับรองนี้สามารถระบุเว็บไซต์
+
+certmgr-edit-cert-trust-email =
+ .label = ใบรับรองนี้สามารถระบุผู้ใช้จดหมาย
+
+certmgr-delete-cert2 =
+ .title = ลบใบรับรอง
+ .style = min-width: 48em; min-height: 24em;
+
+certmgr-cert-host =
+ .label = โฮสต์
+
+certmgr-cert-name =
+ .label = ชื่อใบรับรอง
+
+certmgr-cert-server =
+ .label = เซิร์ฟเวอร์
+
+certmgr-token-name =
+ .label = อุปกรณ์ความปลอดภัย
+
+certmgr-begins-label =
+ .label = เริ่มเมื่อ
+
+certmgr-expires-label =
+ .label = หมดอายุเมื่อ
+
+certmgr-email =
+ .label = ที่อยู่อีเมล
+
+certmgr-serial =
+ .label = หมายเลขอนุกรม
+
+certmgr-fingerprint-sha-256 =
+ .label = ลายนิ้วมือ SHA-256
+
+certmgr-view =
+ .label = ดู…
+ .accesskey = ด
+
+certmgr-edit =
+ .label = แก้ไขการเชื่อถือ…
+ .accesskey = ก
+
+certmgr-export =
+ .label = ส่งออก…
+ .accesskey = ส
+
+certmgr-delete =
+ .label = ลบ…
+ .accesskey = ล
+
+certmgr-delete-builtin =
+ .label = ลบหรือเลิกเชื่อถือ…
+ .accesskey = ถ
+
+certmgr-backup =
+ .label = สำรองข้อมูล…
+ .accesskey = ร
+
+certmgr-backup-all =
+ .label = สำรองข้อมูลทั้งหมด…
+ .accesskey = อ
+
+certmgr-restore =
+ .label = นำเข้า…
+ .accesskey = น
+
+certmgr-add-exception =
+ .label = เพิ่มข้อยกเว้น…
+ .accesskey = ย
+
+exception-mgr =
+ .title = เพิ่มข้อยกเว้นความปลอดภัย
+
+exception-mgr-extra-button =
+ .label = ยืนยันข้อยกเว้นความปลอดภัย
+ .accesskey = ย
+
+exception-mgr-supplemental-warning = ธนาคาร, ห้างร้าน และเว็บไซต์สาธารณะที่ถูกกฎหมายจะไม่ให้คุณทำเช่นนี้
+
+exception-mgr-cert-location-url =
+ .value = ตำแหน่งที่ตั้ง:
+
+exception-mgr-cert-location-download =
+ .label = รับใบรับรอง
+ .accesskey = ร
+
+exception-mgr-cert-status-view-cert =
+ .label = ดู…
+ .accesskey = ด
+
+exception-mgr-permanent =
+ .label = จัดเก็บข้อยกเว้นนี้อย่างถาวร
+ .accesskey = ถ
+
+pk11-bad-password = รหัสผ่านที่ป้อนไม่ถูกต้อง
+pkcs12-decode-err = ไม่สามารถถอดรหัสไฟล์ได้ อาจเป็นไปได้ว่าไฟล์ไม่อยู่ในรูปแบบ PKCS #12 เสียหาย หรือรหัสผ่านที่คุณกรอกนั้นไม่ถูกต้อง
+pkcs12-unknown-err-restore = ไม่ทราบสาเหตุที่ไม่สามารถเรียกคืนไฟล์ PKCS #12 ได้
+pkcs12-unknown-err-backup = ไม่ทราบสาเหตุที่ไม่สามารถสร้างไฟล์สำรองข้อมูลของ PKCS #12 ได้
+pkcs12-unknown-err = ไม่ทราบสาเหตุที่การกระทำ PKCS #12 ล้มเหลว
+pkcs12-info-no-smartcard-backup = ไม่สามารถสำรองใบรับรองจากอุปกรณ์รักษาความปลอดภัยเช่นสมาร์ตการ์ดได้
+pkcs12-dup-data = มีใบรับรองและกุญแจส่วนตัวอยู่แล้วในอุปกรณ์รักษาความปลอดภัย
+
+## PKCS#12 file dialogs
+
+choose-p12-backup-file-dialog = ชื่อไฟล์ที่จะสำรองข้อมูล
+file-browse-pkcs12-spec = ไฟล์ PKCS12
+choose-p12-restore-file-dialog = ไฟล์ใบรับรองที่จะนำเข้า
+
+## Import certificate(s) file dialog
+
+file-browse-certificate-spec = ไฟล์ใบรับรอง
+import-ca-certs-prompt = เลือกไฟล์ที่มีใบรับรอง CA เพื่อนำเข้า
+import-email-cert-prompt = เลือกไฟล์ที่มีใบรับรองอีเมลของใครบางคนเพื่อนำเข้า
+
+## For editing certificates trust
+
+# Variables:
+# $certName: the name of certificate
+edit-trust-ca = ใบรับรอง "{ $certName }" เป็น Certificate Authority
+
+## For Deleting Certificates
+
+delete-user-cert-title =
+ .title = ลบใบรับรองของคุณ
+delete-user-cert-confirm = คุณแน่ใจหรือไม่ว่าต้องการลบใบรับรองเหล่านี้?
+delete-user-cert-impact = ถ้าคุณลบใบรับรองใด ๆ ของคุณ คุณจะไม่สามารถระบุตัวคุณเองได้อีกต่อไป
+
+
+delete-ssl-override-title =
+ .title = ลบข้อยกเว้นใบรับรองของเซิร์ฟเวอร์
+delete-ssl-override-confirm = คุณแน่ใจหรือไม่ว่าต้องการลบข้อยกเว้นเซิร์ฟเวอร์นี้?
+delete-ssl-override-impact = ถ้าคุณลบข้อยกเว้นเซิร์ฟเวอร์นี้ นั่นเป็นการเปิดใช้การรักษาความปลอดภัยตามปกติกับเซิร์ฟเวอร์นี้ และเซิร์ฟเวอร์นี้ต้องการใบรับรองที่ถูกต้องเพื่อให้ใช้งานได้
+
+delete-ca-cert-title =
+ .title = ลบหรือเลิกเชื่อถือใบรับรอง CA
+delete-ca-cert-confirm = คุณได้ขอลบใบรับรอง CA เหล่านี้ สำหรับใบรับรองในตัวการเชื่อถือทั้งหมดจะถูกเอาออก ซึ่งมีผลเดียวกัน คุณแน่ใจหรือไม่ว่าต้องการลบหรือเลิกเชื่อถือ?
+delete-ca-cert-impact = หากคุณลบหรือเลิกเชื่อถือใบรับรองของผู้ออกใบรับรอง (CA) แอปพลิเคชันนี้จะไม่เชื่อถือใบรับรองใด ๆ ที่ออกโดย CA นั้นอีกต่อไป
+
+
+delete-email-cert-title =
+ .title = ลบใบรับรองอีเมล
+delete-email-cert-confirm = คุณต้องการลบใบรับรองอีเมลของบุคคลเหล่านี้หรือไม่?
+delete-email-cert-impact = หากคุณลบใบรับรองอีเมลของบุคคล คุณจะไม่สามารถส่งอีเมลที่เข้ารหัสให้กับบุคคลนั้นได้อีกต่อไป
+
+# Used for semi-uniquely representing a cert.
+#
+# Variables:
+# $serialNumber : the serial number of the cert in AA:BB:CC hex format.
+cert-with-serial =
+ .value = ใบรับรองที่มีหมายเลขซีเรียล: { $serialNumber }
+
+# Used to indicate that the user chose not to send a client authentication certificate to a server that requested one in a TLS handshake.
+send-no-client-certificate = ไม่ต้องส่งใบรับรองไคลเอ็นต์ใด ๆ
+
+# Used when no cert is stored for an override
+no-cert-stored-for-override = (ไม่ได้เก็บไว้)
+
+# When a certificate is unavailable (for example, it has been deleted or the token it exists on has been removed).
+certificate-not-available = (ไม่พร้อมใช้งาน)
+
+## Used to show whether an override is temporary or permanent
+
+permanent-override = ถาวร
+temporary-override = ชั่วคราว
+
+## Add Security Exception dialog
+
+add-exception-branded-warning = คุณกำลังก้าวล่วงวิธีการที่ { -brand-short-name } จะทำการระบุตัวตนเว็บไซต์นี้
+add-exception-invalid-header = ไซต์นี้พยายามจะระบุตัวเองด้วยข้อมูลที่ไม่ถูกต้อง
+add-exception-domain-mismatch-short = เว็บไซต์ผิด
+add-exception-domain-mismatch-long = ใบรับรองเป็นของไซต์อื่น ซึ่งอาจหมายความว่ามีคนพยายามปลอมแปลงไซต์นี้
+add-exception-expired-short = ข้อมูลล้าสมัย
+add-exception-expired-long = ใบรับรองไม่ถูกต้องในขณะนี้ อาจถูกขโมยหรือสูญหาย และอาจถูกนำไปใช้โดยบางคนเพื่อปลอมแปลงไซต์นี้
+add-exception-unverified-or-bad-signature-short = ไม่ทราบข้อมูลประจำตัว
+add-exception-unverified-or-bad-signature-long = ใบรับรองไม่น่าเชื่อถือ เพราะไม่ได้รับการตรวจสอบจากองค์กรรับรองที่เป็นที่รู้จักโดยใช้ลายเซ็นที่ปลอดภัย
+add-exception-valid-short = ใบรับรองถูกต้อง
+add-exception-valid-long = เว็บไซต์นี้มีการระบุตัวตนที่ถูกต้อง คุณไม่จำเป็นต้องทำการเพิ่มข้อยกเว้น
+add-exception-checking-short = กำลังตรวจสอบข้อมูล
+add-exception-checking-long = กำลังพยายามระบุไซต์นี้…
+add-exception-no-cert-short = ไม่มีข้อมูล
+add-exception-no-cert-long = ไม่สามารถรับสถานะการระบุตัวตนสำหรับไซต์นี้
+
+## Certificate export "Save as" and error dialogs
+
+save-cert-as = บันทึกใบรับรองเป็นไฟล์
+cert-format-base64 = ใบรับรอง X.509 (PEM)
+cert-format-base64-chain = ใบรับรอง X.509 พร้อม chian (PEM)
+cert-format-der = ใบรับรอง X.509 (DER)
+cert-format-pkcs7 = ใบรับรอง X.509 (PKCS#7)
+cert-format-pkcs7-chain = ใบรับรอง X.509 พร้อม chain (PKCS#7)
+write-file-failure = ข้อผิดพลาดไฟล์
diff --git a/l10n-th/security/manager/security/certificates/deviceManager.ftl b/l10n-th/security/manager/security/certificates/deviceManager.ftl
new file mode 100644
index 0000000000..f18fd96c31
--- /dev/null
+++ b/l10n-th/security/manager/security/certificates/deviceManager.ftl
@@ -0,0 +1,133 @@
+# 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/.
+
+
+## Strings used for device manager
+
+devmgr-window =
+ .title = ตัวจัดการอุปกรณ์
+ .style = min-width: 67em; min-height: 32em;
+
+devmgr-devlist =
+ .label = โมดูลและอุปกรณ์ความปลอดภัย
+
+devmgr-header-details =
+ .label = รายละเอียด
+
+devmgr-header-value =
+ .label = ค่า
+
+devmgr-button-login =
+ .label = เข้าสู่ระบบ
+ .accesskey = ข
+
+devmgr-button-logout =
+ .label = ออกจากระบบ
+ .accesskey = อ
+
+devmgr-button-changepw =
+ .label = เปลี่ยนรหัสผ่าน
+ .accesskey = ป
+
+devmgr-button-load =
+ .label = โหลด
+ .accesskey = ห
+
+devmgr-button-unload =
+ .label = เลิกโหลด
+ .accesskey = ล
+
+devmgr-button-enable-fips =
+ .label = เปิดใช้งาน FIPS
+ .accesskey = F
+
+devmgr-button-disable-fips =
+ .label = ปิดใช้งาน FIPS
+ .accesskey = F
+
+## Strings used for load device
+
+load-device =
+ .title = โหลดไดรเวอร์อุปกรณ์ PKCS#11
+
+load-device-info = ใส่ข้อมูลโมดูลที่ต้องการ
+
+load-device-modname =
+ .value = ชื่อโมดูล
+ .accesskey = ช
+
+load-device-modname-default =
+ .value = สร้างโมดูล PKCS#11
+
+load-device-filename =
+ .value = ชื่อไฟล์โมดูล
+ .accesskey = อ
+
+load-device-browse =
+ .label = เรียกดู…
+ .accesskey = ร
+
+## Token Manager
+
+devinfo-status =
+ .label = สถานะ
+
+devinfo-status-disabled =
+ .label = ปิดใช้งานอยู่
+
+devinfo-status-not-present =
+ .label = ไม่ระบุ
+
+devinfo-status-uninitialized =
+ .label = ไม่ได้เตรียมใช้งาน
+
+devinfo-status-not-logged-in =
+ .label = ไม่ได้เข้าสู่ระบบ
+
+devinfo-status-logged-in =
+ .label = เข้าสู่ระบบแล้ว
+
+devinfo-status-ready =
+ .label = พร้อม
+
+devinfo-desc =
+ .label = คำอธิบาย
+
+devinfo-man-id =
+ .label = ผู้ผลิต
+
+devinfo-hwversion =
+ .label = รุ่น HW
+devinfo-fwversion =
+ .label = รุ่น FW
+
+devinfo-modname =
+ .label = โมดูล
+
+devinfo-modpath =
+ .label = เส้นทาง
+
+login-failed = ไม่สามารถเข้าสู่ระบบ
+
+devinfo-label =
+ .label = ป้ายชื่อ
+
+devinfo-serialnum =
+ .label = หมายเลขอนุกรม
+
+fips-nonempty-primary-password-required = โหมด FIPS ต้องการให้คุณตั้งรหัสผ่านหลักสำหรับอุปกรณ์ความปลอดภัยแต่ละเครื่อง โปรดตั้งรหัสผ่านก่อนลองเปิดใช้งานโหมด FIPS
+unable-to-toggle-fips = ไม่สามารถเปลี่ยนโหมด FIPS ให้เข้ากับอุปกรณ์รักษาความปลอดภัย แนะนำให้คุณออกและเริ่มโปรแกรมใหม่
+load-pk11-module-file-picker-title = เลือกไดรเวอร์อุปกรณ์ PKCS#11 ที่จะโหลด
+
+# Load Module Dialog
+load-module-help-empty-module-name =
+ .value = ชื่อโมดูลต้องไม่ว่างเปล่า
+
+# Do not translate 'Root Certs'
+load-module-help-root-certs-module-name =
+ .value = ‘Root Certs‘ ถูกสงวนไว้และไม่สามารถนำมาใช้เป็นชื่อโมดูลได้
+
+add-module-failure = ไม่สามารถเพิ่มโมดูล
+del-module-warning = คุณแน่ใจหรือไม่ว่าต้องการลบโมดูลความปลอดภัยนี้?
+del-module-error = ไม่สามารถลบโมดูล
diff --git a/l10n-th/security/manager/security/pippki/pippki.ftl b/l10n-th/security/manager/security/pippki/pippki.ftl
new file mode 100644
index 0000000000..f03fc50193
--- /dev/null
+++ b/l10n-th/security/manager/security/pippki/pippki.ftl
@@ -0,0 +1,106 @@
+# 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/.
+
+password-quality-meter = มาตรวัดคุณภาพรหัสผ่าน
+
+## Change Password dialog
+
+change-device-password-window =
+ .title = เปลี่ยนรหัสผ่าน
+# Variables:
+# $tokenName (String) - Security device of the change password dialog
+change-password-token = อุปกรณ์ความปลอดภัย: { $tokenName }
+change-password-old = รหัสผ่านปัจจุบัน:
+change-password-new = รหัสผ่านใหม่:
+change-password-reenter = รหัสผ่านใหม่ (อีกครั้ง):
+pippki-failed-pw-change = ไม่สามารถเปลี่ยนรหัสผ่านได้
+pippki-incorrect-pw = คุณใส่รหัสผ่านปัจจุบันไม่ถูกต้อง โปรดลองอีกครั้ง
+pippki-pw-change-ok = เปลี่ยนรหัสผ่านสำเร็จแล้ว
+pippki-pw-empty-warning = รหัสผ่านที่บันทึกไว้และคีย์ส่วนตัวของคุณจะไม่ได้รับการปกป้อง
+pippki-pw-erased-ok = คุณได้ลบรหัสผ่านของคุณแล้ว { pippki-pw-empty-warning }
+pippki-pw-not-wanted = คำเตือน! คุณได้ตัดสินใจไม่ใช้รหัสผ่าน { pippki-pw-empty-warning }
+pippki-pw-change2empty-in-fips-mode = ขณะนี้คุณอยู่ในโหมด FIPS ซึ่ง FIPS จำเป็นต้องมีรหัสผ่านที่ไม่ว่างเปล่า
+
+## Reset Primary Password dialog
+
+reset-primary-password-window2 =
+ .title = ตั้งรหัสผ่านหลักใหม่
+ .style = min-width: 40em
+reset-password-button-label =
+ .label = ตั้งค่าใหม่
+reset-primary-password-text = หากคุณตั้งรหัสผ่านหลักของคุณใหม่ รหัสผ่านเว็บและอีเมล, ใบรับรองส่วนบุคคล, และกุญแจส่วนตัวทั้งหมดที่คุณจัดเก็บจะถูกลืม คุณแน่ใจหรือไม่ว่าต้องการตั้งรหัสผ่านหลักของคุณใหม่?
+pippki-reset-password-confirmation-title = ตั้งรหัสผ่านหลักใหม่
+pippki-reset-password-confirmation-message = รหัสผ่านหลักของคุณถูกตั้งใหม่แล้ว
+
+## Downloading cert dialog
+
+download-cert-window2 =
+ .title = กำลังดาวน์โหลดใบรับรอง
+ .style = min-width: 46em
+download-cert-message = คุณได้รับคำขอให้เชื่อถือผู้ออกใบรับรอง (CA) ใหม่
+download-cert-trust-ssl =
+ .label = เชื่อถือ CA นี้เพื่อระบุเว็บไซต์
+download-cert-trust-email =
+ .label = เชื่อถือ CA นี้เพื่อระบุผู้ใช้อีเมล
+download-cert-message-desc = ก่อนที่จะเชื่อมั่น CA แห่งนี้ไม่ว่าเพื่อวัตถุประสงค์ใดก็ตาม คุณควรตรวจสอบใบรับรองตลอดจนนโยบายและขั้นตอนการรับรองของ CA แห่งนั้นเสียก่อน (ถ้ามี)
+download-cert-view-cert =
+ .label = ดู
+download-cert-view-text = ตรวจสอบใบรับรอง CA
+
+## Client Authorization Ask dialog
+
+
+## Client Authentication Ask dialog
+
+client-auth-window =
+ .title = คำขออัตลักษณ์ผู้ใช้
+client-auth-site-description = ไซต์นี้ได้ขอให้คุณระบุตัวคุณเองด้วยใบรับรอง:
+client-auth-choose-cert = เลือกใบรับรองเพื่อระบุตัวตน:
+client-auth-send-no-certificate =
+ .label = อย่าส่งใบรับรอง
+# Variables:
+# $hostname (String) - The domain name of the site requesting the client authentication certificate
+client-auth-site-identification = “{ $hostname }” ได้ขอให้คุณระบุตัวตนของคุณเองด้วยใบรับรอง:
+client-auth-cert-details = รายละเอียดของใบรับรองที่เลือก:
+# Variables:
+# $issuedTo (String) - The subject common name of the currently-selected client authentication certificate
+client-auth-cert-details-issued-to = ออกให้: { $issuedTo }
+# Variables:
+# $serialNumber (String) - The serial number of the certificate (hexadecimal of the form "AA:BB:...")
+client-auth-cert-details-serial-number = หมายเลขอนุกรม: { $serialNumber }
+# Variables:
+# $notBefore (String) - The date before which the certificate is not valid (e.g. Apr 21, 2023, 1:47:53 PM UTC)
+# $notAfter (String) - The date after which the certificate is not valid
+client-auth-cert-details-validity-period = มีผลตั้งแต่ { $notBefore } ถึง { $notAfter }
+# Variables:
+# $keyUsages (String) - A list of already-localized key usages for which the certificate may be used
+client-auth-cert-details-key-usages = การใช้กุญแจ: { $keyUsages }
+# Variables:
+# $emailAddresses (String) - A list of email addresses present in the certificate
+client-auth-cert-details-email-addresses = ที่อยู่อีเมล: { $emailAddresses }
+# Variables:
+# $issuedBy (String) - The issuer common name of the certificate
+client-auth-cert-details-issued-by = ออกโดย: { $issuedBy }
+# Variables:
+# $storedOn (String) - The name of the token holding the certificate (for example, "OS Client Cert Token (Modern)")
+client-auth-cert-details-stored-on = จัดเก็บไว้ใน: { $storedOn }
+client-auth-cert-remember-box =
+ .label = จดจำการตัดสินใจนี้
+
+## Set password (p12) dialog
+
+set-password-window =
+ .title = เลือกรหัสผ่านสำรองใบรับรอง :
+set-password-message = รหัสผ่านสำรองใบรับรองที่กำลังจะตั้งนี้จะช่วยปกป้องไฟล์ข้อมูลสำรองที่คุณกำลังจะสร้างขึ้น คุณจำเป็นต้องตั้งรหัสผ่านนี้ก่อนที่จะดำเนินการสำรองข้อมูลต่อ
+set-password-backup-pw =
+ .value = รหัสผ่านสำรองใบรับรอง :
+set-password-repeat-backup-pw =
+ .value = รหัสผ่านสำรองใบรับรอง (อีกครั้ง) :
+set-password-reminder = สำคัญมาก : หากคุณลืมรหัสผ่านสำรองใบรับรอง คุณจะไม่สามารถเรียกคืนข้อมูลที่สำรองไว้ได้อีกต่อไป ควรบันทึกรหัสผ่านนี้ไว้ในที่ปลอดภัย
+
+## Protected authentication alert
+
+# Variables:
+# $tokenName (String) - The name of the token to authenticate to (for example, "OS Client Cert Token (Modern)")
+protected-auth-alert = โปรดยืนยันตัวตนกับโทเค็น “{ $tokenName }” วิธีดำเนินการดังกล่าวขึ้นอยู่กับโทเค็น (เช่น การใช้เครื่องอ่านลายนิ้วมือ หรือการป้อนรหัสด้วยแป้นตัวเลข)
diff --git a/l10n-th/toolkit/chrome/alerts/alert.properties b/l10n-th/toolkit/chrome/alerts/alert.properties
new file mode 100644
index 0000000000..bc12c0d785
--- /dev/null
+++ b/l10n-th/toolkit/chrome/alerts/alert.properties
@@ -0,0 +1,23 @@
+# 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(closeButton.title): Used as the close button text for web notifications on OS X.
+# This should ideally match the string that OS X uses for the close button on alert-type
+# notifications. OS X will truncate the value if it's too long.
+closeButton.title = ปิด
+# LOCALIZATION NOTE(actionButton.label): Used as the button label to provide more actions on OS X notifications. OS X will truncate this if it's too long.
+actionButton.label = …
+# LOCALIZATION NOTE(webActions.disableForOrigin.label): %S is replaced
+# with the hostname origin of the notification.
+webActions.disableForOrigin.label = ปิดใช้งานการแจ้งเตือนจาก %S
+
+# LOCALIZATION NOTE(source.label): Used to show the URL of the site that
+# sent the notification (e.g., "via mozilla.org"). "%1$S" is the source host
+# and port.
+source.label=ผ่าน %1$S
+webActions.settings.label = การตั้งค่าการแจ้งเตือน
+
+# LOCALIZATION NOTE(pauseNotifications.label): %S is replaced with the
+# brandShortName of the application.
+pauseNotifications.label = หยุดการแจ้งเตือนชั่วคราวจนกระทั่ง %S เริ่มการทำงานใหม่
diff --git a/l10n-th/toolkit/chrome/autoconfig/autoconfig.properties b/l10n-th/toolkit/chrome/autoconfig/autoconfig.properties
new file mode 100644
index 0000000000..1374be9446
--- /dev/null
+++ b/l10n-th/toolkit/chrome/autoconfig/autoconfig.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/.
+
+readConfigTitle = การตั้งค่าผิดพลาด
+readConfigMsg = การอ่านไฟล์กำหนดค่าล้มเหลว โปรดติดต่อผู้ดูแลระบบของคุณ
+
+autoConfigTitle = เตือน AutoConfig
+autoConfigMsg = Netscape.cfg/AutoConfig ล้มเหลว กรุณาติดต่อผู้ดูแลระบบของคุณ \n ผิดพลาด: %S ล้มเหลว:
+
+emailPromptTitle = ที่อยู่อีเมล
+emailPromptMsg = ป้อนที่อยู่อีเมลของคุณ
diff --git a/l10n-th/toolkit/chrome/global-platform/mac/intl.properties b/l10n-th/toolkit/chrome/global-platform/mac/intl.properties
new file mode 100644
index 0000000000..71265a9ef1
--- /dev/null
+++ b/l10n-th/toolkit/chrome/global-platform/mac/intl.properties
@@ -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/.
+
+# LOCALIZATION NOTE (intl.ellipsis): Use the unicode ellipsis char, \u2026,
+# or use "..." if \u2026 doesn't suit traditions in your locale.
+intl.ellipsis=…
diff --git a/l10n-th/toolkit/chrome/global-platform/mac/platformKeys.properties b/l10n-th/toolkit/chrome/global-platform/mac/platformKeys.properties
new file mode 100644
index 0000000000..626a82f089
--- /dev/null
+++ b/l10n-th/toolkit/chrome/global-platform/mac/platformKeys.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/.
+
+# Platform: Mac
+# This file defines the on-screen display names for the various modifier keys
+# and the Return key (VK_RETURN).
+# These are used in XP menus to show keyboard shortcuts.
+
+# The Shift key - open up arrow symbol (ctrl-e)
+VK_SHIFT=\u21e7
+
+# The Command key - clover leaf symbol (ctrl-q)
+VK_META=\u2318
+
+# The Win key - never generated by native key event
+VK_WIN=win
+
+# The Command key - clover leaf symbol (ctrl-q)
+VK_COMMAND_OR_WIN=\u2318
+
+# The Option/Alt key - splitting tracks symbol (ctrl-g)
+VK_ALT=\u2325
+
+# The Control key - hat symbol (ctrl-f)
+VK_CONTROL=\u2303
+
+# The Return key (on the main keyboard or numpad):
+# "Enter" on Windows/Unix, "Return" on Mac
+VK_RETURN=Return
+
+# The separator character used between modifiers (none on Mac OS)
+MODIFIER_SEPARATOR=
diff --git a/l10n-th/toolkit/chrome/global-platform/unix/intl.properties b/l10n-th/toolkit/chrome/global-platform/unix/intl.properties
new file mode 100644
index 0000000000..71265a9ef1
--- /dev/null
+++ b/l10n-th/toolkit/chrome/global-platform/unix/intl.properties
@@ -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/.
+
+# LOCALIZATION NOTE (intl.ellipsis): Use the unicode ellipsis char, \u2026,
+# or use "..." if \u2026 doesn't suit traditions in your locale.
+intl.ellipsis=…
diff --git a/l10n-th/toolkit/chrome/global-platform/unix/platformKeys.properties b/l10n-th/toolkit/chrome/global-platform/unix/platformKeys.properties
new file mode 100644
index 0000000000..fded02a68e
--- /dev/null
+++ b/l10n-th/toolkit/chrome/global-platform/unix/platformKeys.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/.
+
+# Platform: Unix
+# This file defines the on-screen display names for the various modifier keys
+# and the Enter key (VK_RETURN).
+# These are used in XP menus to show keyboard shortcuts.
+
+# The Shift key
+VK_SHIFT=Shift
+
+# The Command key
+VK_META=Meta
+
+# The Win key (Super key and Hyper keys are mapped to DOM Win key)
+VK_WIN=Win
+
+# The Super/Hyper key
+VK_COMMAND_OR_WIN=Win
+
+# The Alt key
+VK_ALT=Alt
+
+# The Control key
+VK_CONTROL=Ctrl
+
+# The Enter key (on the main keyboard or numpad):
+# "Enter" on Windows/Unix, "Return" on Mac
+VK_RETURN=Enter
+
+# The separator character used between modifiers
+MODIFIER_SEPARATOR=+
diff --git a/l10n-th/toolkit/chrome/global-platform/win/intl.properties b/l10n-th/toolkit/chrome/global-platform/win/intl.properties
new file mode 100644
index 0000000000..71265a9ef1
--- /dev/null
+++ b/l10n-th/toolkit/chrome/global-platform/win/intl.properties
@@ -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/.
+
+# LOCALIZATION NOTE (intl.ellipsis): Use the unicode ellipsis char, \u2026,
+# or use "..." if \u2026 doesn't suit traditions in your locale.
+intl.ellipsis=…
diff --git a/l10n-th/toolkit/chrome/global-platform/win/platformKeys.properties b/l10n-th/toolkit/chrome/global-platform/win/platformKeys.properties
new file mode 100644
index 0000000000..1df027dccf
--- /dev/null
+++ b/l10n-th/toolkit/chrome/global-platform/win/platformKeys.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/.
+
+# Platform: Windows
+# This file defines the on-screen display names for the various modifier keys
+# and the Enter key (VK_RETURN).
+# These are used in XP menus to show keyboard shortcuts.
+
+# The Shift key
+VK_SHIFT=Shift
+
+# The Command key
+VK_META=Meta
+
+# The Win key
+VK_WIN=Win
+
+# The Win key
+VK_COMMAND_OR_WIN=Win
+
+# The Alt key
+VK_ALT=Alt
+
+# The Control key
+VK_CONTROL=Ctrl
+
+# The Enter key (on the main keyboard or numpad):
+# "Enter" on Windows/Unix, "Return" on Mac
+VK_RETURN=Enter
+
+# The separator character used between modifiers
+MODIFIER_SEPARATOR=+
diff --git a/l10n-th/toolkit/chrome/global/aboutStudies.properties b/l10n-th/toolkit/chrome/global/aboutStudies.properties
new file mode 100644
index 0000000000..418cda812c
--- /dev/null
+++ b/l10n-th/toolkit/chrome/global/aboutStudies.properties
@@ -0,0 +1,32 @@
+# 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 (title): keep "Shield" in English. See
+# https://wiki.mozilla.org/Firefox/Shield/Shield_Studies for more information
+title = การศึกษา Shield
+removeButton = เอาออก
+
+# LOCALIZATION NOTE (activeStudiesList): Title above a list of active studies
+activeStudiesList = การศึกษาที่ใช้งานอยู่
+# LOCALIZATION NOTE (activeStudiesList): Title above a list of completed studies
+completedStudiesList = การศึกษาที่เสร็จสมบูรณ์
+# LOCALIZATION NOTE (activeStatus): Displayed for an active study
+activeStatus = ใช้งานอยู่
+# LOCALIZATION NOTE (completeStatus): Displayed for a study that is already complete
+completeStatus = เสร็จสมบูรณ์
+
+updateButtonWin = อัปเดตตัวเลือก
+updateButtonUnix = อัปเดตการกำหนดลักษณะ
+learnMore = เรียนรู้เพิ่มเติม
+noStudies = คุณไม่ได้เข้าร่วมในการศึกษาใด ๆ
+disabledList = นี่คือรายการของการศึกษาที่คุณเข้าร่วม ไม่มีการศึกษาใหม่ที่จะทำงาน
+# LOCALIZATION NOTE (enabledList): %S is brandShortName (e.g. Firefox)
+enabledList = สิ่งนี้คืออะไร? %S อาจติดตั้งและเรียกใช้การศึกษาเป็นครั้งคราว
+
+# LOCALIZATION NOTE (preferenceStudyDescription) $1%S will be replaced with the
+# name of a preference (such as "stream.improvesearch.topSiteSearchShortcuts")
+# and $2%S will be replaced with the value of that preference. Both values will
+# be formatted differently than the surrounding text.
+preferenceStudyDescription = การศึกษานี้ตั้ง %1$S เป็น %2$S
diff --git a/l10n-th/toolkit/chrome/global/autocomplete.properties b/l10n-th/toolkit/chrome/global/autocomplete.properties
new file mode 100644
index 0000000000..105e0ff25c
--- /dev/null
+++ b/l10n-th/toolkit/chrome/global/autocomplete.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/.
+
+# LOCALIZATION NOTE (bookmarkKeywordSearch): This is the title of autocomplete
+# entries that are bookmark keyword searches. %1$S will be replaced with the
+# domain name of the bookmark, and %2$S will be replaced with the keyword
+# search text that the user is typing. %2$S will not be empty.
+bookmarkKeywordSearch = %1$S: %2$S
diff --git a/l10n-th/toolkit/chrome/global/browser.properties b/l10n-th/toolkit/chrome/global/browser.properties
new file mode 100644
index 0000000000..ef0b2d9fa9
--- /dev/null
+++ b/l10n-th/toolkit/chrome/global/browser.properties
@@ -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/.
+
+formPostSecureToInsecureWarning.title = คำเตือนความปลอดภัย
+formPostSecureToInsecureWarning.message = ข้อมูลที่คุณได้ป้อนในหน้านี้จะถูกส่งผ่านการเชื่อมต่อที่ไม่ปลอดภัยและอาจถูกอ่านได้โดยบุคคลที่สาม\n\nคุณแน่ใจหรือไม่ว่าต้องการส่งข้อมูลนี้?
+formPostSecureToInsecureWarning.continue = ดำเนินการต่อ
diff --git a/l10n-th/toolkit/chrome/global/commonDialogs.properties b/l10n-th/toolkit/chrome/global/commonDialogs.properties
new file mode 100644
index 0000000000..d062cb55fc
--- /dev/null
+++ b/l10n-th/toolkit/chrome/global/commonDialogs.properties
@@ -0,0 +1,46 @@
+# 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/.
+
+Alert=แจ้งเตือน
+Confirm=ยืนยัน
+ConfirmCheck=ยืนยัน
+Prompt=ถาม
+# LOCALIZATION NOTE - %S is brandFullName
+PromptUsernameAndPassword3=ต้องมีการรับรองความถูกต้อง - %S
+# LOCALIZATION NOTE - %S is brandFullName
+PromptPassword3=ต้องการรหัสผ่าน - %S
+Select=เลือก
+OK=ตกลง
+Cancel=ยกเลิก
+Yes=ใ&ช่
+No=ไ&ม่
+Save=&บันทึก
+Revert=เ&ปลี่ยนกลับ
+DontSave=ไ&ม่บันทึก
+ScriptDlgGenericHeading=[แอปพลิเคชัน JavaScript]
+ScriptDlgHeading=หน้าที่ %S ระบุว่า:
+ScriptDlgNullPrincipalHeading=หน้านี้ระบุว่า:
+ScriptDialogLabel=ป้องกันไม่ให้หน้านี้สร้างกล่องโต้ตอบเพิ่มเติม
+ScriptDialogLabelNullPrincipal=ไม่อนุญาตให้ไซต์นี้แจ้งให้คุณทราบอีกครั้ง
+# LOCALIZATION NOTE (ScriptDialogLabelContentPrincipal):
+# %S is either the domain and port of the site prompting, or the name of
+# an add-on prompting.
+ScriptDialogLabelContentPrincipal=ไม่อนุญาตให้ %S แจ้งให้คุณทราบอีกครั้ง
+ScriptDialogPreventTitle=การกำหนดลักษณะกล่องโต้ตอบการยืนยัน
+# LOCALIZATION NOTE (EnterLoginForRealm3, EnterLoginForProxy3):
+# %1 is an untrusted string provided by a remote server. It could try to
+# take advantage of sentence structure in order to mislead the user (see
+# bug 244273). %1 should be integrated into the translated sentences as
+# little as possible. %2 is the url of the site being accessed.
+EnterLoginForRealm3=%2$S กำลังขอชื่อผู้ใช้และรหัสผ่านของคุณ ไซต์ระบุว่า: “%1$S”
+EnterLoginForProxy3=พร็อกซี %2$S กำลังขอชื่อผู้ใช้และรหัสผ่าน ไซต์ระบุว่า: “%1$S”
+EnterUserPasswordFor2=%1$S กำลังขอชื่อผู้ใช้และรหัสผ่านของคุณ
+EnterUserPasswordForCrossOrigin2=%1$S กำลังขอชื่อผู้ใช้และรหัสผ่านของคุณ คำเตือน: รหัสผ่านของคุณจะไม่ถูกส่งไปยังเว็บไซต์ที่คุณกำลังเยี่ยมชมอยู่ในขณะนี้!
+EnterPasswordFor=ป้อนรหัสผ่านสำหรับ %1$S บน %2$S
+EnterCredentials=ไซต์นี้ขอให้คุณลงชื่อเข้า
+# %S is the username for which a password is requested.
+EnterPasswordOnlyFor=ไซต์นี้ขอให้คุณลงชื่อเข้าในชื่อ %S
+# %S is the domain of the site being accessed.
+EnterCredentialsCrossOrigin=ไซต์นี้ขอให้คุณลงชื่อเข้า คำเตือน: ข้อมูลการเข้าสู่ระบบของคุณจะถูกแบ่งปันกับ %S ไม่ใช่กับเว็บไซต์ที่คุณเยี่ยมชมอยู่ในขณะนี้
+SignIn=ลงชื่อเข้า
diff --git a/l10n-th/toolkit/chrome/global/contentAreaCommands.properties b/l10n-th/toolkit/chrome/global/contentAreaCommands.properties
new file mode 100644
index 0000000000..37d69467a1
--- /dev/null
+++ b/l10n-th/toolkit/chrome/global/contentAreaCommands.properties
@@ -0,0 +1,28 @@
+# 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/.
+
+# context menu strings
+
+SaveImageTitle=บันทึกภาพ
+SaveMediaTitle=บันทึกสื่อ
+SaveVideoTitle=บันทึกวิดีโอ
+SaveAudioTitle=บันทึกเสียง
+SaveLinkTitle=บันทึกเป็น
+WebPageCompleteFilter=หน้าเว็บแบบสมบูรณ์
+WebPageHTMLOnlyFilter=หน้าเว็บ HTML เท่านั้น
+WebPageXHTMLOnlyFilter=หน้าเว็บ XHTML เท่านั้น
+WebPageSVGOnlyFilter=หน้าเว็บ SVG เท่านั้น
+WebPageXMLOnlyFilter=หน้าเว็บ XML เท่านั้น
+
+# LOCALIZATION NOTE (UntitledSaveFileName):
+# This is the default filename used when saving a file if a filename could
+# not be determined or if a filename was invalid. A period and file
+# extension may be appended to this string.
+UntitledSaveFileName=ไม่มีชื่อ
+
+# LOCALIZATION NOTE (filesFolder):
+# This is the name of the folder that is created parallel to a HTML file
+# when it is saved "With Images". The %S section is replaced with the
+# leaf name of the file being saved (minus extension).
+filesFolder=ไฟล์_%S
diff --git a/l10n-th/toolkit/chrome/global/dialog.properties b/l10n-th/toolkit/chrome/global/dialog.properties
new file mode 100644
index 0000000000..1dd3c8e247
--- /dev/null
+++ b/l10n-th/toolkit/chrome/global/dialog.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/.
+
+button-accept=ตกลง
+button-cancel=ยกเลิก
+button-help=ช่วยเหลือ
+button-disclosure=ข้อมูลเพิ่มเติม
+accesskey-accept=
+accesskey-cancel=
+accesskey-help=ช
+accesskey-disclosure=ข
diff --git a/l10n-th/toolkit/chrome/global/extensions.properties b/l10n-th/toolkit/chrome/global/extensions.properties
new file mode 100644
index 0000000000..f16483608c
--- /dev/null
+++ b/l10n-th/toolkit/chrome/global/extensions.properties
@@ -0,0 +1,26 @@
+# 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 (uninstall.confirmation.title) %S is the name of the extension which is about to be uninstalled.
+uninstall.confirmation.title = ถอนการติดตั้ง %S
+
+#LOCALIZATION NOTE (uninstall.confirmation.message) %S is the name of the extension which is about to be uninstalled.
+uninstall.confirmation.message = ส่วนขยาย “%S” กำลังขอเพื่อถอนการติดตั้ง คุณต้องการทำอะไร?
+
+uninstall.confirmation.button-0.label = ถอนการติดตั้ง
+uninstall.confirmation.button-1.label = ติดตั้งไว้ต่อไป
+
+saveaspdf.saveasdialog.title = บันทึกเป็น
+
+#LOCALIZATION NOTE (newTabControlled.message2) %S is the icon and name of the extension which updated the New Tab page.
+newTabControlled.message2 = ส่วนขยาย %S ได้เปลี่ยนหน้าที่คุณเห็นเมื่อคุณเปิดแท็บใหม่
+newTabControlled.learnMore = เรียนรู้เพิ่มเติม
+
+#LOCALIZATION NOTE (homepageControlled.message) %S is the icon and name of the extension which updated the homepage.
+homepageControlled.message = ส่วนขยาย %S ได้เปลี่ยนสิ่งที่คุณเห็นเมื่อคุณเปิดหน้าแรกและหน้าต่างใหม่ของคุณ
+homepageControlled.learnMore = เรียนรู้เพิ่มเติม
+
+#LOCALIZATION NOTE (tabHideControlled.message) %1$S is the icon and name of the extension which hid tabs, %2$S is the icon of the all tabs button.
+tabHideControlled.message = ส่วนขยาย %1$S กำลังซ่อนแท็บบางแท็บของคุณอยู่ คุณยังสามารถเข้าถึงแท็บทั้งหมดของคุณได้จาก %2$S
+tabHideControlled.learnMore = เรียนรู้เพิ่มเติม
diff --git a/l10n-th/toolkit/chrome/global/fallbackMenubar.properties b/l10n-th/toolkit/chrome/global/fallbackMenubar.properties
new file mode 100644
index 0000000000..5b737c6f43
--- /dev/null
+++ b/l10n-th/toolkit/chrome/global/fallbackMenubar.properties
@@ -0,0 +1,8 @@
+# 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/.
+
+# OSX only. Default menu label when there is no xul menubar.
+
+quitMenuitem.label=ออก
+quitMenuitem.key=q
diff --git a/l10n-th/toolkit/chrome/global/filepicker.properties b/l10n-th/toolkit/chrome/global/filepicker.properties
new file mode 100644
index 0000000000..8f116ec37c
--- /dev/null
+++ b/l10n-th/toolkit/chrome/global/filepicker.properties
@@ -0,0 +1,20 @@
+# 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: The extensions to which these descriptions refer
+# now live in toolkit/content/filepicker.properties
+allTitle=ไฟล์ทั้งหมด
+htmlTitle=ไฟล์ HTML
+textTitle=ไฟล์ข้อความ
+imageTitle=ไฟล์ภาพ
+xmlTitle=ไฟล์ XML
+xulTitle=ไฟล์ XUL
+appsTitle=แอปพลิเคชัน
+audioTitle=ไฟล์เสียง
+videoTitle=ไฟล์วิดีโอ
+
+pdfTitle=ไฟล์ PDF
+
+formatLabel=รูปแบบ:
+selectedFileNotReadableError=ไฟล์ที่เลือกไม่มีสิทธิอนุญาตในการอ่าน
diff --git a/l10n-th/toolkit/chrome/global/intl.css b/l10n-th/toolkit/chrome/global/intl.css
new file mode 100644
index 0000000000..2f54eb367d
--- /dev/null
+++ b/l10n-th/toolkit/chrome/global/intl.css
@@ -0,0 +1,11 @@
+/* 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 file contains all localizable skin settings such as
+ * font, layout, and geometry
+ */
+window {
+ font: 3mm tahoma,arial,helvetica,sans-serif;
+}
diff --git a/l10n-th/toolkit/chrome/global/intl.properties b/l10n-th/toolkit/chrome/global/intl.properties
new file mode 100644
index 0000000000..83d7c86b20
--- /dev/null
+++ b/l10n-th/toolkit/chrome/global/intl.properties
@@ -0,0 +1,43 @@
+# 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 (intl.accept_languages):
+# This is a comma-separated list of valid BCP 47 language tags.
+#
+# Begin with the value of 'general.useragent.locale'. Next, include language
+# tags for other languages that you expect most users of your locale to be
+# able to speak, so that their browsing experience degrades gracefully if
+# content is not available in their primary language.
+#
+# It is recommended that you include "en-US, en" at the end of the list as a
+# last resort. However, if you know that users of your locale would prefer a
+# different variety of English, or if they are not likely to understand
+# English at all, you may opt to include a different English language tag, or
+# to exclude English altogether.
+#
+# For example, the Breton [br] locale might consider including French and
+# British English in their list, since those languages are commonly spoken in
+# the same area as Breton:
+# intl.accept_languages=br, fr-FR, fr, en-GB, en
+intl.accept_languages=th, en-US, en
+
+# LOCALIZATION NOTE (font.language.group):
+# This preference controls the initial setting of the language drop-down menu
+# in the Content > Fonts & Colors > Advanced preference panel.
+#
+# Set it to the value of one of the menuitems in the "selectLangs" menulist in
+# http://dxr.mozilla.org/mozilla-central/source/browser/components/preferences/fonts.xul
+font.language.group=th
+
+# LOCALIZATION NOTE (pluralRule): Pick the appropriate plural rule for your
+# language. This will determine how many plural forms of a word you will need
+# to provide and in what order.
+# See: http://developer.mozilla.org/en/docs/Localization_and_Plurals
+pluralRule=0
+
+# LOCALIZATION NOTE (intl.menuitems.alwaysappendaccesskeys, intl.menuitems.insertseparatorbeforeaccesskeys):
+# Valid values are: true, false, <empty string>
+# Missing preference or empty value equals false.
+intl.menuitems.alwaysappendaccesskeys=
+intl.menuitems.insertseparatorbeforeaccesskeys=true
diff --git a/l10n-th/toolkit/chrome/global/keys.properties b/l10n-th/toolkit/chrome/global/keys.properties
new file mode 100644
index 0000000000..e7da94b0a4
--- /dev/null
+++ b/l10n-th/toolkit/chrome/global/keys.properties
@@ -0,0 +1,70 @@
+# 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 : FILE This file contains the application's labels for keys on the keyboard.
+# If you decide to translate this file, you should translate it based on
+# the prevalent kind of keyboard for your target user.
+# LOCALIZATION NOTE : There are two types of keys, those w/ text on their labels
+# and those w/ glyphs.
+# LOCALIZATION NOTE : VK_<…> represents a key on the keyboard.
+#
+# For more information please see bugzilla bug 90888.
+
+# F1..F10 should probably not be translated unless there are keyboards that actually have other labels
+# F11..F20 might be something else, but are really keyboard specific and not region/language specific
+# there are actually two different F11/F12 keys, I don't know which one these labels represent.
+# eg, F13..F20 on a sparc keyboard are labeled Props, Again .. Find, Cut
+# sparc also has Stop, Again and F11/F12. VK_F11/VK_F12 probably map to Stop/Again
+# LOCALIZATION NOTE : BLOCK Do not translate the next block
+VK_F1=F1
+VK_F2=F2
+VK_F3=F3
+VK_F4=F4
+VK_F5=F5
+VK_F6=F6
+VK_F7=F7
+VK_F8=F8
+VK_F9=F9
+VK_F10=F10
+
+VK_F11=F11
+VK_F12=F12
+VK_F13=F13
+VK_F14=F14
+VK_F15=F15
+VK_F16=F16
+VK_F17=F17
+VK_F18=F18
+VK_F19=F19
+VK_F20=F20
+# LOCALIZATION NOTE : BLOCK end do not translate block
+
+# LOCALIZATION NOTE : BLOCK GLYPHS, DO translate this block
+VK_UP=ลูกศรขึ้น
+VK_DOWN=ลูกศรลง
+VK_LEFT=ลูกศรซ้าย
+VK_RIGHT=ลูกศรขวา
+VK_PAGE_UP=เลื่อนหน้าขึ้น
+VK_PAGE_DOWN=เลื่อนหน้าลง
+# LOCALIZATION NOTE : BLOCK end GLYPHS
+
+# Enter, backspace, and Tab might have both glyphs and text
+# if the keyboards usually have a glyph,
+# if there is a meaningful translation,
+# or if keyboards are localized
+# then translate them or insert the appropriate glyph
+# otherwise you should probably just translate the glyph regions
+
+# LOCALIZATION NOTE : BLOCK maybe GLYPHS
+VK_TAB=Tab
+VK_BACK=Backspace
+VK_DELETE=Del
+# LOCALIZATION NOTE : BLOCK end maybe GLYPHS
+# LOCALIZATION NOTE : BLOCK typing state keys
+VK_HOME=Home
+VK_END=End
+
+VK_ESCAPE=Esc
+VK_INSERT=Ins
+# LOCALIZATION NOTE : BLOCK end
diff --git a/l10n-th/toolkit/chrome/global/narrate.properties b/l10n-th/toolkit/chrome/global/narrate.properties
new file mode 100644
index 0000000000..f568c888b7
--- /dev/null
+++ b/l10n-th/toolkit/chrome/global/narrate.properties
@@ -0,0 +1,29 @@
+# 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/.
+
+# "Listen, which allows users to listen to Firefox reading the text,
+# instead of having to read it themselves." This is the name
+# of the feature and it is the label for the popup button.
+# %S is the keyboard shortcut for the listen command
+listen-label = ฟัง (%S)
+back = ย้อนกลับ
+# %S is the keyboard shortcut for the skip back command
+previous-label = ถอยกลับ (%S)
+# %S is the keyboard shortcut for the start command
+start-label = เริ่ม (%S)
+# %S is the keyboard shortcut for the stop command
+stop-label = หยุด (%S)
+# Keyboard shortcut to toggle the narrate feature
+narrate-key-shortcut = บ
+forward = เดินหน้า
+# %S is the keyboard shortcut for the skip forward command
+next-label = เดินหน้า (%S)
+speed = ความเร็ว
+selectvoicelabel = เสียงพูด:
+# Default voice is determined by the language of the document.
+defaultvoice = ค่าเริ่มต้น
+
+# Voice name and language.
+# eg. David (English)
+voiceLabel = %S (%S)
diff --git a/l10n-th/toolkit/chrome/global/printdialog.properties b/l10n-th/toolkit/chrome/global/printdialog.properties
new file mode 100644
index 0000000000..53231ea789
--- /dev/null
+++ b/l10n-th/toolkit/chrome/global/printdialog.properties
@@ -0,0 +1,53 @@
+# 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/.
+
+# These strings are used in the native GTK, Mac and Windows print dialogs.
+
+# GTK titles:
+printTitleGTK=พิมพ์
+optionsTabLabelGTK=ตัวเลือก
+
+# Mac titles:
+optionsTitleMac=ตัวเลือก:
+appearanceTitleMac=รูปลักษณ์:
+pageHeadersTitleMac=ส่วนหัวหน้า:
+pageFootersTitleMac=ส่วนท้ายหน้า:
+
+# Windows titles:
+optionsTitleWindows=ตัวเลือก
+
+# TRANSLATOR NOTE: For radio button labels and check button labels, an underscore _
+# before a character will turn that character into an accesskey in the GTK dialog.
+# e.g. "_As laid out" will make A the accesskey.
+# In the Windows labels, use an ampersand (&).
+# On Mac, underscores will be stripped.
+
+shrinkToFit=ไม่สนใจสัดส่วนและ_ย่อให้พอดีความกว้างหน้า
+selectionOnly=พิมพ์ส่วนที่เลือก_เท่านั้น
+printBGOptions=พิมพ์พื้นหลัง
+printBGColors=พิมพ์_สีพื้นหลัง
+printBGImages=พิมพ์_ภาพพื้นหลัง
+headerFooter=ส่วนหัวและส่วนท้าย
+left=ซ้าย
+center=กึ่งกลาง
+right=ขวา
+headerFooterBlank=--ว่าง--
+headerFooterTitle=ชื่อเรื่อง
+headerFooterURL=URL
+headerFooterDate=วันที่/เวลา
+headerFooterPage=หน้า #
+headerFooterPageTotal=หน้า # จาก #
+headerFooterCustom=กำหนดเอง…
+customHeaderFooterPrompt=โปรดป้อนข้อความส่วนหัว/ส่วนท้ายที่กำหนดเองของคุณ
+
+# These are for the summary view in the Mac dialog:
+summarySelectionOnlyTitle=พิมพ์ส่วนที่เลือก
+summaryShrinkToFitTitle=ย่อให้พอดี
+summaryPrintBGColorsTitle=พิมพ์สีพื้นหลัง
+summaryPrintBGImagesTitle=พิมพ์ภาพพื้นหลัง
+summaryHeaderTitle=ส่วนหัวของหน้า
+summaryFooterTitle=ส่วนท้ายหน้า
+summaryNAValue=ไม่มี
+summaryOnValue=เปิด
+summaryOffValue=ปิด
diff --git a/l10n-th/toolkit/chrome/global/resetProfile.properties b/l10n-th/toolkit/chrome/global/resetProfile.properties
new file mode 100644
index 0000000000..6cd4d7a234
--- /dev/null
+++ b/l10n-th/toolkit/chrome/global/resetProfile.properties
@@ -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/.
+
+# LOCALIZATION NOTE: These strings are used for profile reset.
+
+# LOCALIZATION NOTE (resetUnusedProfile.message): %S is brandShortName.
+resetUnusedProfile.message=ดูเหมือนว่าคุณไม่ได้เปิด %S มาสักพักแล้ว คุณต้องการล้างทุกอย่างเพื่อเริ่มต้นใหม่หมดจดหรือไม่? อ้อแล้วนอกจากนั้น ยินดีต้อนรับกลับ!
+# LOCALIZATION NOTE (resetUninstalled.message): %S is brandShortName.
+resetUninstalled.message=ดูเหมือนว่าคุณได้ติดตั้ง %S ใหม่ ต้องการให้เราล้างทุกอย่างเพื่อเริ่มต้นใหม่หมดจด?
+
+# LOCALIZATION NOTE (refreshProfile.resetButton.label): %S is brandShortName.
+refreshProfile.resetButton.label=ล้าง %S ใหม่…
+refreshProfile.resetButton.accesskey=ล
diff --git a/l10n-th/toolkit/chrome/global/viewSource.properties b/l10n-th/toolkit/chrome/global/viewSource.properties
new file mode 100644
index 0000000000..96d5bb4e4c
--- /dev/null
+++ b/l10n-th/toolkit/chrome/global/viewSource.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/.
+
+goToLineTitle = ไปยังบรรทัดที่
+goToLineText = ป้อนหมายเลขบรรทัด
+invalidInputTitle = ข้อมูลนำเข้าผิดพลาด
+invalidInputText = หมายเลขบรรทัดที่ป้อนผิดพลาด
+outOfRangeTitle = ไม่พบบรรทัด
+outOfRangeText = ไม่พบบรรทัดที่ระบุ
+viewSelectionSourceTitle = ต้นฉบับ DOM ของส่วนที่เลือก
+
+context_goToLine_label = ไปยังบรรทัดที่…
+context_goToLine_accesskey = ป
+context_wrapLongLines_label = ปัดบรรทัดล้น
+context_highlightSyntax_label = การเน้นสีไวยากรณ์
diff --git a/l10n-th/toolkit/chrome/global/wizard.properties b/l10n-th/toolkit/chrome/global/wizard.properties
new file mode 100644
index 0000000000..a3228bb26b
--- /dev/null
+++ b/l10n-th/toolkit/chrome/global/wizard.properties
@@ -0,0 +1,8 @@
+# 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/.
+
+default-first-title=ยินดีต้อนรับสู่ %S
+default-last-title=เสร็จสิ้นการ %S
+default-first-title-mac=หน้าแนะนำ
+default-last-title-mac=หน้าสรุป
diff --git a/l10n-th/toolkit/chrome/mozapps/downloads/downloads.properties b/l10n-th/toolkit/chrome/mozapps/downloads/downloads.properties
new file mode 100644
index 0000000000..a16f26d676
--- /dev/null
+++ b/l10n-th/toolkit/chrome/mozapps/downloads/downloads.properties
@@ -0,0 +1,6 @@
+# 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/.
+
+# Desktop folder name for downloaded files
+downloadsFolder=การดาวน์โหลด
diff --git a/l10n-th/toolkit/chrome/mozapps/downloads/unknownContentType.properties b/l10n-th/toolkit/chrome/mozapps/downloads/unknownContentType.properties
new file mode 100644
index 0000000000..d81eeb65fe
--- /dev/null
+++ b/l10n-th/toolkit/chrome/mozapps/downloads/unknownContentType.properties
@@ -0,0 +1,23 @@
+# -*- Mode: Java; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*-
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+title=กำลังเปิด %S
+saveDialogTitle=ป้อนชื่อไฟล์ที่จะบันทึก…
+defaultApp=%S (ค่าเริ่มต้น)
+chooseAppFilePickerTitle=เลือกแอปพลิเคชันช่วย
+badApp=ไม่พบแอปพลิเคชันที่คุณเลือก (“%S”)  ตรวจสอบชื่อไฟล์หรือเลือกแอปพลิเคชันอื่น
+badApp.title=ไม่พบแอปพลิเคชัน
+badPermissions=ไม่สามารถบันทึกไฟล์เนื่องจากคุณไม่มีสิทธิที่เหมาะสม เลือกไดเรกทอรีอื่นเพื่อบันทึก
+badPermissions.title=สิทธิอนุญาตการบันทึกไม่ถูกต้อง
+unknownAccept.label=บันทึกไฟล์
+unknownCancel.label=ยกเลิก
+fileType=ไฟล์ %S
+# LOCALIZATION NOTE (orderedFileSizeWithType): first %S is type, second %S is size, and third %S is unit
+orderedFileSizeWithType=%1$S (%2$S %3$S)
+avifExtHandlerDescription=AV1 Image File (AVIF)
+pdfExtHandlerDescription=Portable Document Format (PDF)
+svgExtHandlerDescription=Scalable Vector Graphics (SVG)
+webpExtHandlerDescription=WebP Image
+xmlExtHandlerDescription=Extensible Markup Language (XML)
diff --git a/l10n-th/toolkit/chrome/mozapps/profile/profileSelection.properties b/l10n-th/toolkit/chrome/mozapps/profile/profileSelection.properties
new file mode 100644
index 0000000000..b316522506
--- /dev/null
+++ b/l10n-th/toolkit/chrome/mozapps/profile/profileSelection.properties
@@ -0,0 +1,55 @@
+# 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: These strings are used for startup/profile problems and the profile manager.
+
+# Application not responding
+# LOCALIZATION NOTE (restartTitle, restartMessageNoUnlocker2, restartMessageUnlocker, restartMessageNoUnlockerMac, restartMessageUnlockerMac): Messages displayed when the application is running but is not responding to commands. %S is the application name.
+restartTitle=ปิด %S
+restartMessageNoUnlocker2=%S กำลังทำงานอยู่แล้ว แต่ไม่ตอบสนอง หากต้องการใช้ %S คุณต้องปิดโปรเซส %S ที่มีอยู่ก่อน แล้วเริ่มการทำงานของอุปกรณ์ของคุณใหม่ หรือใช้โปรไฟล์อื่น
+restartMessageUnlocker=%S กำลังทำงานอยู่ แต่ไม่มีการตอบสนอง คุณจำเป็นต้องปิดโปรเซส %S ก่อนจึงจะเปิดหน้าต่างใหม่ได้
+restartMessageNoUnlockerMac=มี %S เปิดใช้งานอยู่ คุณสามารถเปิดใช้งาน %S ได้ครั้งละหนึ่งตัว
+restartMessageUnlockerMac=มี %S เปิดใช้งานอยู่ %S ที่กำลังทำงานอยู่จะถูกปิดเพื่อเปิดให้ตัวนี้ทำงาน
+
+# Profile manager
+# LOCALIZATION NOTE (profileTooltip): First %S is the profile name, second %S is the path to the profile folder.
+profileTooltip=โปรไฟล์: ‘%S’ - เส้นทาง: ‘%S’
+
+pleaseSelectTitle=เลือกโปรไฟล์
+pleaseSelect=โปรดเลือกโปรไฟล์ที่จะเริ่ม %S หรือสร้างโปรไฟล์ใหม่
+
+renameProfileTitle=เปลี่ยนชื่อโปรไฟล์
+renameProfilePrompt=เปลี่ยนชื่อโปรไฟล์ “%S” เป็น:
+
+profileNameInvalidTitle=ชื่อโปรไฟล์ไม่ถูกต้อง
+profileNameInvalid=ไม่อนุญาตให้ใช้ชื่อโปรไฟล์ “%S”
+
+chooseFolder=เลือกโฟลเดอร์โปรไฟล์
+profileNameEmpty=ไม่อนุญาตให้ใช้ชื่อโปรไฟล์ว่างเปล่า
+invalidChar=ไม่อนุญาตให้ใช้ตัวอักษร “%S” ในชื่อโปรไฟล์ โปรดเลือกชื่ออื่น
+
+deleteTitle=ลบโปรไฟล์
+deleteProfileConfirm=การลบโปรไฟล์จะเอาโปรไฟล์ออกจากรายการโปรไฟล์ที่มีและไม่สามารถเลิกทำได้\nคุณยังอาจเลือกที่จะลบไฟล์ข้อมูลของโปรไฟล์ รวมไปถึงการตั้งค่า, ใบรับรอง และข้อมูลที่เกี่ยวข้องกับผู้ใช้ ตัวเลือกนี้จะลบโฟลเดอร์ “%S” และไม่สามารถเลิกทำได้\nคุณต้องการลบไฟล์ข้อมูลของโปรไฟล์หรือไม่?
+deleteFiles=ลบไฟล์
+dontDeleteFiles=ไม่ลบไฟล์
+
+profileCreationFailed=ไม่สามารถสร้างโปรไฟล์ โฟลเดอร์ที่เลือกอาจไม่สามารถเขียนได้
+profileCreationFailedTitle=การสร้างโปรไฟล์ล้มเหลว
+profileExists=มีโปรไฟล์ที่มีชื่อนี้อยู่แล้ว โปรดเลือกชื่ออื่น
+profileFinishText=คลิก เสร็จสิ้น เพื่อสร้างโปรไฟล์ใหม่นี้
+profileFinishTextMac=คลิก เสร็จสิ้น เพื่อสร้างโปรไฟล์ใหม่นี้
+profileMissing=ไม่สามารถโหลดโปรไฟล์ %S ของคุณ โปรไฟล์อาจขาดหายไปหรือไม่สามารถเข้าถึงได้
+profileMissingTitle=โปรไฟล์หายไป
+profileDeletionFailed=โปรไฟล์ไม่สามารถลบได้เนื่องจากอาจยังถูกใช้งานอยู่
+profileDeletionFailedTitle=การลบล้มเหลว
+
+# Profile reset
+# LOCALIZATION NOTE (resetBackupDirectory): Directory name for the profile directory backup created during reset. This directory is placed in a location users will see it (ie. their desktop). %S is the application name.
+resetBackupDirectory=ข้อมูลเก่าของ %S
+
+flushFailTitle=ไม่ได้บันทึกการเปลี่ยนแปลง
+flushFailMessage=ข้อผิดพลาดที่ไม่คาดคิดได้ขัดขวางการบันทึกการเปลี่ยนแปลงของคุณ
+# LOCALIZATION NOTE (flushFailRestartButton): $S is brandShortName.
+flushFailRestartButton=เริ่มการทำงาน %S ใหม่
+flushFailExitButton=ออก
diff --git a/l10n-th/toolkit/chrome/mozapps/update/updates.properties b/l10n-th/toolkit/chrome/mozapps/update/updates.properties
new file mode 100644
index 0000000000..6e8707859f
--- /dev/null
+++ b/l10n-th/toolkit/chrome/mozapps/update/updates.properties
@@ -0,0 +1,45 @@
+# 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: The 1st %S is brandShortName and 2nd %S is update version
+# where update version from the update xml
+# example: MyApplication 10.0.5
+updateName=%S %S
+
+noThanksButton=ไม่ ขอบคุณ
+noThanksButton.accesskey=ม
+restartLaterButton=เริ่มการทำงานใหม่ในภายหลัง
+restartLaterButton.accesskey=ม
+restartNowButton=เริ่มการทำงาน %S ใหม่
+restartNowButton.accesskey=ร
+
+statusFailed=การติดตั้งล้มเหลว
+
+installSuccess=ติดตั้งการอัปเดตสำเร็จ
+installPending=รอการติดตั้ง
+patchApplyFailure=ไม่สามารถติดตั้งการอัปเดต (การใช้แพตช์ล้มเหลว)
+elevationFailure=คุณไม่มีสิทธิอนุญาตที่จำเป็นในการติดตั้งการอัปเดตนี้ โปรดติดต่อผู้ดูแลระบบของคุณ
+
+check_error-200=ไฟล์ XML การอัปเดตผิดรูปแบบ (200)
+check_error-403=การเข้าถึงถูกปฏิเสธ (403)
+check_error-404=ไม่พบไฟล์ XML การอัปเดต (404)
+check_error-500=ข้อผิดพลาดเซิร์ฟเวอร์ภายใน (500)
+check_error-2152398849=ล้มเหลว (ไม่ทราบสาเหตุ)
+check_error-2152398861=การเชื่อมต่อถูกปฏิเสธ
+check_error-2152398862=การเชื่อมต่อหมดเวลา
+# NS_ERROR_OFFLINE
+check_error-2152398864=เครือข่ายออฟไลน์อยู่ (ต้องออนไลน์)
+check_error-2152398867=พอร์ตไม่อนุญาต
+check_error-2152398868=ไม่มีข้อมูลที่ได้รับ (โปรดลองอีกครั้ง)
+check_error-2152398878=ไม่พบเซิร์ฟเวอร์อัปเดต (ตรวจสอบการเชื่อมต่ออินเทอร์เน็ตของคุณ)
+check_error-2152398890=ไม่พบเซิร์ฟเวอร์พร็อกซี (ตรวจสอบการเชื่อมต่ออินเทอร์เน็ตของคุณ)
+# NS_ERROR_DOCUMENT_NOT_CACHED
+check_error-2152398918=เครือข่ายออฟไลน์อยู่ (ต้องออนไลน์)
+check_error-2152398919=การถ่ายโอนข้อมูลถูกขัดจังหวะ (โปรดลองอีกครั้ง)
+check_error-2152398920=การเชื่อมต่อเซิร์ฟเวอร์พร็อกซีถูกปฏิเสธ
+check_error-2153390069=ใบรับรองเซิร์ฟเวอร์หมดอายุ (โปรดปรับนาฬิกาในระบบของคุณให้เป็นวันที่และเวลาที่ถูกต้องหากยังไม่ถูกต้อง)
+check_error-verification_failed=ไม่สามารถยืนยันความสมบูรณ์ของการอัปเดต
+check_error-move_failed=ไม่สามารถเตรียมการอัปเดตสำหรับการติดตั้งได้
+check_error-update_url_not_available=URL อัปเดตไม่พร้อมใช้
+check_error-connection_aborted=การเชื่อมต่อถูกยกเลิก
diff --git a/l10n-th/toolkit/chrome/passwordmgr/passwordmgr.properties b/l10n-th/toolkit/chrome/passwordmgr/passwordmgr.properties
new file mode 100644
index 0000000000..8c704c58a6
--- /dev/null
+++ b/l10n-th/toolkit/chrome/passwordmgr/passwordmgr.properties
@@ -0,0 +1,79 @@
+# 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/.
+
+rememberPassword = ใช้ตัวจัดการรหัสผ่านเพื่อจดจำรหัสผ่านนี้
+savePasswordTitle = ยืนยัน
+# LOCALIZATION NOTE (saveLoginMsg2, saveLoginMsgNoUser2):
+# %S is the login's hostname.
+saveLoginMsg2 = บันทึกการเข้าสู่ระบบสำหรับ %S หรือไม่?
+saveLoginMsgNoUser2 = บันทึกรหัสผ่านสำหรับ %S หรือไม่?
+saveLoginButtonAllow.label = บันทึก
+saveLoginButtonAllow.accesskey = บ
+saveLoginButtonDeny.label = ไม่บันทึก
+saveLoginButtonDeny.accesskey = ม
+saveLoginButtonNever.label = ไม่บันทึกเสมอ
+saveLoginButtonNever.accesskey = ส
+# LOCALIZATION NOTE (updateLoginMsg3, updateLoginMsgNoUser3):
+# %S is the login's hostname.
+updateLoginMsg3 = อัปเดตการเข้าสู่ระบบสำหรับ %S หรือไม่
+updateLoginMsgNoUser3 = อัปเดตรหัสผ่านสำหรับ %S หรือไม่
+updateLoginMsgAddUsername2 = เพิ่มชื่อผู้ใช้ในรหัสผ่านที่บันทึกไว้หรือไม่?
+updateLoginButtonText = อัปเดต
+updateLoginButtonAccessKey = อ
+updateLoginButtonDeny.label = ไม่อัปเดต
+updateLoginButtonDeny.accesskey = ม
+updateLoginButtonDelete.label = เอาการเข้าสู่ระบบที่บันทึกไว้ออก
+updateLoginButtonDelete.accesskey = อ
+# LOCALIZATION NOTE (rememberPasswordMsg):
+# 1st string is the username for the login, 2nd is the login's hostname.
+# Note that long usernames may be truncated.
+rememberPasswordMsg = คุณต้องการให้จดจำรหัสผ่านสำหรับ “%1$S” บน %2$S หรือไม่?
+# LOCALIZATION NOTE (rememberPasswordMsgNoUsername):
+# String is the login's hostname.
+rememberPasswordMsgNoUsername = คุณต้องการให้จดจำรหัสผ่านบน %S หรือไม่?
+# LOCALIZATION NOTE (noUsernamePlaceholder):
+# This is displayed in place of the username when it is missing.
+noUsernamePlaceholder=ไม่มีชื่อผู้ใช้
+togglePasswordLabel=แสดงรหัสผ่าน
+togglePasswordAccessKey2=ส
+notNowButtonText = ไ&ม่ใช่ตอนนี้
+neverForSiteButtonText = ไม่&เลยสำหรับไซต์นี้
+rememberButtonText = &จดจำ
+passwordChangeTitle = ยืนยันการเปลี่ยนรหัสผ่าน
+# LOCALIZATION NOTE (updatePasswordMsg):
+# String is the username for the login.
+updatePasswordMsg = คุณต้องการอัปเดตรหัสผ่านที่บันทึกไว้สำหรับ “%S” หรือไม่?
+updatePasswordMsgNoUser = คุณต้องการอัปเดตรหัสผ่านที่บันทึกไว้หรือไม่?
+userSelectText2 = เลือกการเข้าสู่ระบบที่จะอัปเดต:
+loginsDescriptionAll2=การเข้าสู่ระบบสำหรับไซต์ต่อไปนี้ถูกจัดเก็บอยู่ในคอมพิวเตอร์ของคุณ
+
+# LOCALIZATION NOTE (useASecurelyGeneratedPassword):
+# Shown in the autocomplete popup to allow filling a generated password into a password field.
+useASecurelyGeneratedPassword=ใช้รหัสผ่านที่สร้างขึ้นอย่างปลอดภัย
+# LOCALIZATION NOTE (generatedPasswordWillBeSaved):
+# %S will contain the brandShorterName. This informs the user that the generated password will be automatically saved.
+generatedPasswordWillBeSaved=%S จะบันทึกรหัสผ่านสำหรับเว็บไซต์นี้
+# LOCALIZATION NOTE (loginHostAge):
+# This is used to show the context menu login items with their age.
+# 1st string is the username for the login, 2nd is the login's age.
+loginHostAge=%1$S (%2$S)
+# LOCALIZATION NOTE (noUsername):
+# String is used on the context menu when a login doesn't have a username.
+noUsername=ไม่มีชื่อผู้ใช้
+# LOCALIZATION NOTE (displaySameOrigin):
+# String is used on the autocomplete row when the login origin is a domain match with the document origin
+displaySameOrigin=จากเว็บไซต์นี้
+
+# LOCALIZATION NOTE (insecureFieldWarningDescription2):
+# %1$S will contain insecureFieldWarningLearnMore and look like a link to indicate that clicking will open a tab with support information.
+insecureFieldWarningDescription2 = การเชื่อมต่อนี้ไม่ปลอดภัย การเข้าสู่ระบบที่ป้อนที่นี่อาจถูกบุกรุกได้ %1$S
+insecureFieldWarningLearnMore = เรียนรู้เพิ่มเติม
+
+# LOCALIZATION NOTE (viewSavedLogins.label):
+# This label is used in the footer of login autocomplete menus.
+viewSavedLogins.label= ดูการเข้าสู่ระบบที่บันทึกไว้
+
+# LOCALIZATION NOTE (managePasswords.label):
+# This label is used in the footer of login autocomplete menus.
+managePasswords.label= จัดการรหัสผ่าน
diff --git a/l10n-th/toolkit/chrome/places/places.properties b/l10n-th/toolkit/chrome/places/places.properties
new file mode 100644
index 0000000000..118276d010
--- /dev/null
+++ b/l10n-th/toolkit/chrome/places/places.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/.
+
+BookmarksMenuFolderTitle=เมนูที่คั่นหน้า
+BookmarksToolbarFolderTitle=แถบเครื่องมือที่คั่นหน้า
+OtherBookmarksFolderTitle=ที่คั่นหน้าอื่น ๆ
+TagsFolderTitle=ป้ายกำกับ
+MobileBookmarksFolderTitle=ที่คั่นหน้าในมือถือ
+
+OrganizerQueryHistory=ประวัติ
+OrganizerQueryDownloads=การดาวน์โหลด
+OrganizerQueryAllBookmarks=ที่คั่นหน้าทั้งหมด
+
+# LOCALIZATION NOTE :
+# These are used to generate history containers when history is grouped by date
+finduri-AgeInDays-is-0=วันนี้
+finduri-AgeInDays-is-1=เมื่อวานนี้
+finduri-AgeInDays-is=%S วันที่แล้ว
+finduri-AgeInDays-last-is=%S วันที่ผ่านมา
+finduri-AgeInDays-isgreater=นานกว่า %S วันที่แล้ว
+finduri-AgeInMonths-is-0=เดือนนี้
+finduri-AgeInMonths-isgreater=เก่ากว่า %S เดือน
+
+# LOCALIZATION NOTE (localhost):
+# This is used to generate local files container when history is grouped by site
+localhost=(ไฟล์ในเครื่อง)
+
+# LOCALIZATION NOTE (backupFileSizeText):
+# The string is used for showing file size of each backup in the "fileRestorePopup" popup
+# %1$S is the file size
+# %2$S is the file size unit
+backupFileSizeText=%1$S %2$S
diff --git a/l10n-th/toolkit/crashreporter/aboutcrashes.ftl b/l10n-th/toolkit/crashreporter/aboutcrashes.ftl
new file mode 100644
index 0000000000..5b0ea1b39f
--- /dev/null
+++ b/l10n-th/toolkit/crashreporter/aboutcrashes.ftl
@@ -0,0 +1,31 @@
+# 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 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/.
+
+crash-reports-title = รายงานข้อขัดข้อง
+
+submit-all-button-label = ส่งทั้งหมด
+delete-button-label = ล้างทั้งหมด
+delete-confirm-title = คุณแน่ใจหรือไม่?
+delete-unsubmitted-description = สิ่งนี้จะลบรายงานข้อขัดข้องที่ยังไม่ได้ส่งทั้งหมดและไม่สามารถเลิกทำได้
+delete-submitted-description = สิ่งนี้จะเอารายการรายงานข้อขัดข้องที่ส่งแล้วออกแต่จะไม่ลบข้อมูลที่ส่งแล้ว สิ่งนี้ไม่สามารถเลิกทำได้
+
+crashes-unsubmitted-label = รายงานข้อขัดข้องที่ยังไม่ได้ส่ง
+id-heading = ID รายงาน
+date-crashed-heading = วันที่ขัดข้อง
+submit-crash-button-label = ส่ง
+# This text is used to replace the label of the crash submit button
+# if the crash submission fails.
+submit-crash-button-failure-label = ล้มเหลว
+
+crashes-submitted-label = รายงานข้อขัดข้องที่ส่งแล้ว
+date-submitted-heading = วันที่ส่ง
+view-crash-button-label = ดู
+
+no-reports-label = ยังไม่เคยมีการรายงานข้อขัดข้อง
+no-config-label = แอปพลิเคชันนี้ไม่ได้ถูกกำหนดค่าให้แสดงผลรายงานข้อขัดข้อง ค่ากำหนด <code>breakpad.reportURL</code> ต้องถูกตั้ง
diff --git a/l10n-th/toolkit/crashreporter/crashreporter.ini b/l10n-th/toolkit/crashreporter/crashreporter.ini
new file mode 100644
index 0000000000..5517ca5fe2
--- /dev/null
+++ b/l10n-th/toolkit/crashreporter/crashreporter.ini
@@ -0,0 +1,58 @@
+# 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 file is in the UTF-8 encoding
+[Strings]
+# LOCALIZATION NOTE (isRTL):
+# Leave this entry empty unless your language requires right-to-left layout,
+# for example like Arabic, Hebrew, Persian. If your language needs RTL, please
+# use the untranslated English word "yes" as value
+isRTL=
+CrashReporterTitle=ตัวรายงานข้อขัดข้อง
+# LOCALIZATION NOTE (CrashReporterVendorTitle): %s is replaced with the vendor name. (i.e. "Mozilla")
+CrashReporterVendorTitle=ตัวรายงานข้อขัดข้องของ %s
+# LOCALIZATION NOTE (CrashReporterErrorText): %s is replaced with another string containing detailed information.
+CrashReporterErrorText=แอปพลิเคชันมีปัญหาและขัดข้อง\n\nโชคไม่ดีที่ตัวรายงานข้อขัดข้องไม่สามารถส่งรายงานข้อขัดข้องนี้ได้\n\nรายละเอียด: %s
+# LOCALIZATION NOTE (CrashReporterProductErrorText2): The first %s is replaced with the product name (i.e. "Firefox"), the second is replaced with another string containing detailed information. These two substitutions can not be reordered!
+CrashReporterProductErrorText2=%s มีปัญหาและขัดข้อง\n\nโชคไม่ดีที่ตัวรายงานข้อขัดข้องไม่สามารถส่งรายงานข้อขัดข้องได้\n\nรายละเอียด: %s
+CrashReporterSorry=เราขออภัย
+# LOCALIZATION NOTE (CrashReporterDescriptionText2): The %s is replaced with the product name.
+CrashReporterDescriptionText2=%s มีปัญหาและขัดข้อง\n\nเพื่อช่วยเราวินิจฉัยและแก้ไขปัญหา คุณสามารถส่งรายงานข้อขัดข้องให้กับเรา
+CrashReporterDefault=แอปพลิเคชันนี้จะทำงานหลังจากเกิดข้อขัดข้องเพื่อรายงานปัญหาไปยังผู้จำหน่ายแอปพลิเคชัน  แอปพลิเคชันไม่ควรถูกเรียกใช้โดยตรง
+Details=รายละเอียด…
+ViewReportTitle=เนื้อหารายงาน
+CommentGrayText=เพิ่มความคิดเห็น (ความคิดเห็นจะปรากฏต่อสาธารณะ)
+ExtraReportInfo=รายงานนี้ยังมีข้อมูลทางเทคนิคเกี่ยวกับสถานะของแอปพลิเคชันขณะขัดข้อง
+# LOCALIZATION NOTE (CheckSendReport): The %s is replaced with the vendor name.
+CheckSendReport=บอก %s เกี่ยวกับข้อขัดข้องนี้เพื่อให้สามารถแก้ไขได้
+CheckIncludeURL=รวมที่อยู่ของหน้าที่ฉันเข้าชมอยู่
+ReportPreSubmit2=จะส่งรายงานข้อขัดข้องของคุณก่อนที่คุณจะออกหรือเริ่มการทำงานใหม่
+ReportDuringSubmit2=กำลังส่งรายงานของคุณ…
+ReportSubmitSuccess=ส่งรายงานสำเร็จ!
+ReportSubmitFailed=เกิดปัญหาในการส่งรายงานของคุณ
+ReportResubmit=กำลังส่งรายงานที่ก่อนหน้านี้ส่งไม่ผ่านใหม่…
+# LOCALIZATION NOTE (Quit2): The %s is replaced with the product name.
+Quit2=ออกจาก %s
+# LOCALIZATION NOTE (Restart): The %s is replaced with the product name.
+Restart=เริ่มการทำงาน %s ใหม่
+Ok=ตกลง
+Close=ปิด
+
+# LOCALIZATION NOTE (CrashID): The %s is replaced with the Crash ID from the server, which is a string like abc12345-6789-0abc-def1-23456abcdef1
+CrashID=ID ข้อขัดข้อง: %s
+# LOCALIZATION NOTE (CrashDetailsURL): The %s is replaced with a URL that the user can visit to view the crash details.
+CrashDetailsURL=คุณสามารถดูรายละเอียดข้อขัดข้องนี้ได้ที่ %s
+ErrorBadArguments=แอปพลิเคชันส่งอาร์กิวเมนต์ที่ไม่ถูกต้อง
+ErrorExtraFileExists=แอปพลิเคชันไม่ได้สร้างไฟล์ข้อมูลแอปพลิเคชันไว้
+ErrorExtraFileRead=ไม่สามารถอ่านไฟล์ข้อมูลแอปพลิเคชัน
+ErrorExtraFileMove=ไม่สามารถย้ายไฟล์ข้อมูลแอปพลิเคชัน
+ErrorDumpFileExists=แอปพลิเคชันไม่ได้สร้างไฟล์บันทึกข้อขัดข้องไว้
+ErrorDumpFileMove=ไม่สามารถย้ายบันทึกข้อขัดข้อง
+ErrorNoProductName=แอปพลิเคชันไม่ได้ระบุตัวเอง
+ErrorNoServerURL=แอปพลิเคชันไม่ได้ระบุเซิร์ฟเวอร์สำหรับรายงานข้อขัดข้อง
+ErrorNoSettingsPath=ไม่พบการตั้งค่าของตัวรายงานข้อขัดข้อง
+ErrorCreateDumpDir=ไม่สามารถสร้างไดเรกทอรีสำหรับรอดำเนินการบันทึก
+# LOCALIZATION NOTE (ErrorEndOfLife): The %s is replaced with the product name.
+ErrorEndOfLife=%s รุ่นที่คุณกำลังใช้ไม่ได้รับการสนับสนุนอีกต่อไป รายงานข้อขัดข้องในรุ่นนี้จึงไม่ได้รับการยอมรับ โปรดพิจารณาอัปเกรดเป็นรุ่นที่ได้รับการสนับสนุน
+
diff --git a/l10n-th/toolkit/services/accounts.ftl b/l10n-th/toolkit/services/accounts.ftl
new file mode 100644
index 0000000000..4b6f85ce5c
--- /dev/null
+++ b/l10n-th/toolkit/services/accounts.ftl
@@ -0,0 +1,8 @@
+# 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/.
+
+# Variables:
+# $user (String): the user name (e.g. "Ed")
+# $system (String): the operating system (e.g. "Android")
+account-client-name = { -brand-short-name } ของ { $user } บน { $system }
diff --git a/l10n-th/toolkit/toolkit/about/aboutAbout.ftl b/l10n-th/toolkit/toolkit/about/aboutAbout.ftl
new file mode 100644
index 0000000000..59ba1b5995
--- /dev/null
+++ b/l10n-th/toolkit/toolkit/about/aboutAbout.ftl
@@ -0,0 +1,6 @@
+# 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/.
+
+about-about-title = เกี่ยวกับเกี่ยวกับ
+about-about-note = นี่คือรายการของหน้า “เกี่ยวกับ” เพื่อความสะดวกของคุณ<br/> บางหน้าอาจทำให้เกิดความสับสน บางหน้ามีเพื่อวัตถุประสงค์ในการวินิจฉัยเท่านั้น<br/> และบางหน้าถูกละเว้นไว้เนื่องจากจำเป็นต้องส่งค่าสตริง
diff --git a/l10n-th/toolkit/toolkit/about/aboutAddons.ftl b/l10n-th/toolkit/toolkit/about/aboutAddons.ftl
new file mode 100644
index 0000000000..93d2387b58
--- /dev/null
+++ b/l10n-th/toolkit/toolkit/about/aboutAddons.ftl
@@ -0,0 +1,499 @@
+# 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/.
+
+addons-page-title = ตัวจัดการส่วนเสริม
+search-header =
+ .placeholder = ค้นหา addons.mozilla.org
+ .searchbuttonlabel = ค้นหา
+
+## Variables
+## $domain - Domain name where add-ons are available (e.g. addons.mozilla.org)
+
+list-empty-get-extensions-message = รับส่วนขยายและชุดรูปแบบใน <a data-l10n-name="get-extensions">{ $domain }</a>
+list-empty-get-dictionaries-message = รับพจนานุกรมบน <a data-l10n-name="get-extensions">{ $domain }</a>
+list-empty-get-language-packs-message = รับชุดภาษาบน <a data-l10n-name="get-extensions">{ $domain }</a>
+
+##
+
+list-empty-installed =
+ .value = คุณไม่ได้ติดตั้งส่วนเสริมประเภทนี้ไว้
+list-empty-available-updates =
+ .value = ไม่พบการอัปเดต
+list-empty-recent-updates =
+ .value = คุณไม่ได้อัปเดตส่วนเสริมใด ๆ เมื่อเร็ว ๆ นี้
+list-empty-find-updates =
+ .label = ตรวจสอบการอัปเดต
+list-empty-button =
+ .label = เรียนรู้เพิ่มเติมเกี่ยวกับส่วนเสริม
+help-button = การสนับสนุนของส่วนเสริม
+sidebar-help-button-title =
+ .title = การสนับสนุนของส่วนเสริม
+addons-settings-button = การตั้งค่า { -brand-short-name }
+sidebar-settings-button-title =
+ .title = การตั้งค่า { -brand-short-name }
+show-unsigned-extensions-button =
+ .label = ไม่สามารถยืนยันส่วนขยายบางตัว
+show-all-extensions-button =
+ .label = แสดงส่วนขยายทั้งหมด
+detail-version =
+ .label = รุ่น
+detail-last-updated =
+ .label = อัปเดตล่าสุด
+addon-detail-description-expand = แสดงเพิ่มเติม
+addon-detail-description-collapse = แสดงน้อยลง
+detail-contributions-description = นักพัฒนาส่วนเสริมนี้ใคร่ขอให้คุณช่วยสนับสนุนการพัฒนาอย่างต่อเนื่องโดยการสมทบทุนสักเล็กน้อย
+detail-contributions-button = มีส่วนร่วม
+ .title = มีส่วนร่วมกับการพัฒนาส่วนเสริมนี้
+ .accesskey = ม
+detail-update-type =
+ .value = การอัปเดตอัตโนมัติ
+detail-update-default =
+ .label = ค่าเริ่มต้น
+ .tooltiptext = ติดตั้งการอัปเดตโดยอัตโนมัติเฉพาะเมื่อเป็นค่าเริ่มต้น
+detail-update-automatic =
+ .label = เปิด
+ .tooltiptext = ติดตั้งการอัปเดตโดยอัตโนมัติ
+detail-update-manual =
+ .label = ปิด
+ .tooltiptext = ไม่ติดตั้งการอัปเดตโดยอัตโนมัติ
+# Used as a description for the option to allow or block an add-on in private windows.
+detail-private-browsing-label = เรียกใช้ในหน้าต่างส่วนตัว
+# Some add-ons may elect to not run in private windows by setting incognito: not_allowed in the manifest. This
+# cannot be overridden by the user.
+detail-private-disallowed-label = ไม่อนุญาตในหน้าต่างส่วนตัว
+detail-private-disallowed-description2 = ส่วนขยายนี้จะไม่ทำงานในขณะที่เรียกดูแบบส่วนตัว<a data-l10n-name="learn-more">เรียนรู้เพิ่มเติม</a>
+# Some special add-ons are privileged, run in private windows automatically, and this permission can't be revoked
+detail-private-required-label = จำเป็นต้องเข้าถึงหน้าต่างแบบส่วนตัว
+detail-private-required-description2 = ส่วนขยายนี้สามารถเข้าถึงกิจกรรมออนไลน์ของคุณในขณะที่เรียกดูแบบส่วนตัว<a data-l10n-name="learn-more">เรียนรู้เพิ่มเติม</a>
+detail-private-browsing-on =
+ .label = อนุญาต
+ .tooltiptext = เปิดใช้งานในการเรียกดูแบบส่วนตัว
+detail-private-browsing-off =
+ .label = ไม่อนุญาต
+ .tooltiptext = ปิดใช้งานในการเรียกดูแบบส่วนตัว
+detail-home =
+ .label = หน้าแรก
+detail-home-value =
+ .value = { detail-home.label }
+detail-repository =
+ .label = โปรไฟล์ส่วนเสริม
+detail-repository-value =
+ .value = { detail-repository.label }
+detail-check-for-updates =
+ .label = ตรวจสอบการอัปเดต
+ .accesskey = ต
+ .tooltiptext = ตรวจสอบการอัปเดตสำหรับส่วนเสริมนี้
+detail-show-preferences =
+ .label =
+ { PLATFORM() ->
+ [windows] ตัวเลือก
+ *[other] การกำหนดลักษณะ
+ }
+ .accesskey =
+ { PLATFORM() ->
+ [windows] ต
+ *[other] ก
+ }
+ .tooltiptext =
+ { PLATFORM() ->
+ [windows] เปลี่ยนตัวเลือกของส่วนเสริมนี้
+ *[other] เปลี่ยนการกำหนดลักษณะของส่วนเสริมนี้
+ }
+detail-rating =
+ .value = การจัดอันดับ
+addon-restart-now =
+ .label = เริ่มการทำงานใหม่ตอนนี้
+disabled-unsigned-heading =
+ .value = ส่วนเสริมบางตัวถูกปิดใช้งาน
+disabled-unsigned-description = ส่วนเสริมดังต่อไปนี้ไม่ได้รับการยืนยันสำหรับใช้ใน { -brand-short-name } คุณสามารถ <label data-l10n-name="find-addons">ค้นหาตัวทดแทน</label> หรือขอนักพัฒนาให้นำส่วนเสริมไปรับการยืนยัน
+disabled-unsigned-learn-more = เรียนรู้เพิ่มเติมเกี่ยวกับความพยายามของเราที่ช่วยให้คุณปลอดภัยขณะออนไลน์
+disabled-unsigned-devinfo = นักพัฒนาที่สนใจนำส่วนเสริมของเขาไปรับการยืนยันสามารถดำเนินการต่อโดยอ่าน <label data-l10n-name="learn-more">ด้วยตนเอง</label>
+plugin-deprecation-description = มีบางอย่างขาดหายไป? ปลั๊กอินบางตัวไม่ได้รับการสนับสนุนโดย { -brand-short-name } อีกต่อไป <label data-l10n-name="learn-more">เรียนรู้เพิ่มเติม</label>
+legacy-warning-show-legacy = แสดงส่วนขยายแบบเก่า
+legacy-extensions =
+ .value = ส่วนขยายแบบเก่า
+legacy-extensions-description = ส่วนขยายเหล่านี้ไม่ตรงตามมาตรฐานปัจจุบันของ { -brand-short-name } จึงถูกปิดใช้งาน <label data-l10n-name="legacy-learn-more">เรียนรู้เกี่ยวกับการเปลี่ยนแปลงกับส่วนเสริม</label>
+private-browsing-description2 =
+ { -brand-short-name } กำลังเปลี่ยนวิธีที่ส่วนขยายทำงานในขณะที่เรียกดูแบบส่วนตัว ส่วนขยายใด ๆ ที่คุณเพิ่มไปยัง { -brand-short-name }
+ จะไม่ทำงานตามค่าเริ่มต้นในหน้าต่างแบบส่วนตัว นอกจากคุณจะอนุญาตในการตั้งค่า ส่วนขยายจะไม่ทำงาน
+ ในขณะที่เรียกดูแบบส่วนตัว และจะไม่สามารถเข้าถึงกิจกรรมออนไลน์ของคุณที่นั่นได้ เราได้ทำการเปลี่ยนแปลง
+ นี้เพื่อรักษาความเป็นส่วนตัวให้กับการเรียกดูแบบส่วนตัวของคุณ
+ <label data-l10n-name="private-browsing-learn-more">เรียนรู้วิธีจัดการการตั้งค่าส่วนขยาย</label>
+addon-category-discover = คำแนะนำ
+addon-category-discover-title =
+ .title = คำแนะนำ
+addon-category-extension = ส่วนขยาย
+addon-category-extension-title =
+ .title = ส่วนขยาย
+addon-category-theme = ชุดรูปแบบ
+addon-category-theme-title =
+ .title = ชุดรูปแบบ
+addon-category-plugin = ปลั๊กอิน
+addon-category-plugin-title =
+ .title = ปลั๊กอิน
+addon-category-dictionary = พจนานุกรม
+addon-category-dictionary-title =
+ .title = พจนานุกรม
+addon-category-locale = ภาษา
+addon-category-locale-title =
+ .title = ภาษา
+addon-category-available-updates = การอัปเดตที่มี
+addon-category-available-updates-title =
+ .title = การอัปเดตที่มี
+addon-category-recent-updates = การอัปเดตล่าสุด
+addon-category-recent-updates-title =
+ .title = การอัปเดตล่าสุด
+addon-category-sitepermission = สิทธิอนุญาตไซต์
+addon-category-sitepermission-title =
+ .title = สิทธิอนุญาตไซต์
+# String displayed in about:addons in the Site Permissions section
+# Variables:
+# $host (string) - DNS host name for which the webextension enables permissions
+addon-sitepermission-host = สิทธิอนุญาตไซต์สำหรับ { $host }
+
+## These are global warnings
+
+extensions-warning-safe-mode = ส่วนเสริมทั้งหมดถูกปิดใช้งานโดยโหมดปลอดภัย
+extensions-warning-check-compatibility = การตรวจสอบความเข้ากันได้ของส่วนเสริมถูกปิดใช้งาน คุณอาจมีส่วนเสริมที่ใช้ร่วมกันไม่ได้
+extensions-warning-safe-mode2 =
+ .message = ส่วนเสริมทั้งหมดถูกปิดใช้งานโดยโหมดปลอดภัย
+extensions-warning-check-compatibility2 =
+ .message = การตรวจสอบความเข้ากันได้ของส่วนเสริมถูกปิดใช้งาน คุณอาจมีส่วนเสริมที่ใช้ร่วมกันไม่ได้
+extensions-warning-check-compatibility-button = เปิดใช้งาน
+ .title = เปิดใช้งานการตรวจสอบความเข้ากันได้ของส่วนเสริม
+extensions-warning-update-security = การตรวจสอบความปลอดภัยของการอัปเดตส่วนเสริมถูกปิดใช้งาน คุณอาจถูกบุกรุกโดยการอัปเดต
+extensions-warning-update-security2 =
+ .message = การตรวจสอบความปลอดภัยของการอัปเดตส่วนเสริมถูกปิดใช้งาน คุณอาจถูกบุกรุกโดยการอัปเดต
+extensions-warning-update-security-button = เปิดใช้งาน
+ .title = เปิดใช้งานการตรวจสอบความปลอดภัยของการอัปเดตส่วนเสริม
+extensions-warning-imported-addons2 =
+ .message = โปรดติดตั้งส่วนขยายที่นำเข้าไปยัง { -brand-short-name } ให้เสร็จสิ้น
+extensions-warning-imported-addons-button = ติดตั้งส่วนขยาย
+
+## Strings connected to add-on updates
+
+addon-updates-check-for-updates = ตรวจสอบการอัปเดต
+ .accesskey = ต
+addon-updates-view-updates = ดูการอัปเดตล่าสุด
+ .accesskey = ด
+
+# This menu item is a checkbox that toggles the default global behavior for
+# add-on update checking.
+
+addon-updates-update-addons-automatically = อัปเดตส่วนเสริมโดยอัตโนมัติ
+ .accesskey = อ
+
+## Specific add-ons can have custom update checking behaviors ("Manually",
+## "Automatically", "Use default global behavior"). These menu items reset the
+## update checking behavior for all add-ons to the default global behavior
+## (which itself is either "Automatically" or "Manually", controlled by the
+## extensions-updates-update-addons-automatically.label menu item).
+
+addon-updates-reset-updates-to-automatic = กลับค่าเดิมของส่วนเสริมทั้งหมดเป็นอัปเดตโดยอัตโนมัติ
+ .accesskey = ก
+addon-updates-reset-updates-to-manual = กลับค่าเดิมของส่วนเสริมทั้งหมดเป็นอัปเดตด้วยตนเอง
+ .accesskey = ก
+
+## Status messages displayed when updating add-ons
+
+addon-updates-updating = กำลังอัปเดตส่วนเสริม
+addon-updates-installed = อัปเดตส่วนเสริมของคุณแล้ว
+addon-updates-none-found = ไม่พบการอัปเดต
+addon-updates-manual-updates-found = ดูการอัปเดตที่มี
+
+## Add-on install/debug strings for page options menu
+
+addon-install-from-file = ติดตั้งส่วนเสริมจากไฟล์…
+ .accesskey = ง
+addon-install-from-file-dialog-title = เลือกส่วนเสริมที่จะติดตั้ง
+addon-install-from-file-filter-name = ส่วนเสริม
+addon-open-about-debugging = ดีบั๊กส่วนเสริม
+ .accesskey = บ
+
+## Extension shortcut management
+
+# This is displayed in the page options menu
+addon-manage-extensions-shortcuts = จัดการทางลัดส่วนขยาย
+ .accesskey = จ
+shortcuts-no-addons = คุณไม่ได้เปิดใช้งานส่วนขยายใด ๆ
+shortcuts-no-commands = ส่วนขยายดังต่อไปนี้ไม่มีทางลัด:
+shortcuts-input =
+ .placeholder = พิมพ์ทางลัด
+# Accessible name for a trashcan icon button that removes an existent shortcut
+shortcuts-remove-button =
+ .aria-label = เอาทางลัดออก
+shortcuts-browserAction2 = เปิดใช้งานปุ่มแถบเครื่องมือ
+shortcuts-pageAction = เปิดใช้งานการกระทำหน้า
+shortcuts-sidebarAction = เปิด/ปิดแถบข้าง
+shortcuts-modifier-mac = รวม Ctrl, Alt หรือ ⌘
+shortcuts-modifier-other = รวม Ctrl หรือ Alt
+shortcuts-invalid = ลำดับแป้นพิมพ์ไม่ถูกต้อง
+shortcuts-letter = พิมพ์ตัวอักษร
+shortcuts-system = ไม่สามารถเขียนทับทางลัด { -brand-short-name }
+# String displayed in warning label when there is a duplicate shortcut
+shortcuts-duplicate = ทางลัดซ้ำกัน
+# String displayed when a keyboard shortcut is already assigned to more than one add-on
+# Variables:
+# $shortcut (string) - Shortcut string for the add-on
+shortcuts-duplicate-warning-message = { $shortcut } กำลังถูกใช้เป็นทางลัดในกรณีมากกว่าหนึ่งกรณี ทางลัดที่ซ้ำกันอาจทำให้เกิดลักษณะการทำงานที่ไม่คาดคิด
+# String displayed when a keyboard shortcut is already assigned to more than one add-on
+# Variables:
+# $shortcut (string) - Shortcut string for the add-on
+shortcuts-duplicate-warning-message2 =
+ .message = { $shortcut } กำลังถูกใช้เป็นทางลัดในกรณีมากกว่าหนึ่งกรณี ทางลัดที่ซ้ำกันอาจทำให้เกิดลักษณะการทำงานที่ไม่คาดคิด
+# String displayed when a keyboard shortcut is already used by another add-on
+# Variables:
+# $addon (string) - Name of the add-on
+shortcuts-exists = มีการใช้งานอยู่แล้วโดย { $addon }
+# Variables:
+# $numberToShow (number) - Number of other elements available to show
+shortcuts-card-expand-button =
+ { $numberToShow ->
+ *[other] แสดงเพิ่มเติมอีก { $numberToShow }
+ }
+shortcuts-card-collapse-button = แสดงน้อยลง
+header-back-button =
+ .title = ย้อนกลับ
+
+## Recommended add-ons page
+
+# Explanatory introduction to the list of recommended add-ons. The action word
+# ("recommends") in the final sentence is a link to external documentation.
+discopane-intro =
+ ส่วนขยายและชุดรูปแบบเป็นเหมือนแอปสำหรับเบราว์เซอร์ของคุณ ซึ่งให้คุณป้องกัน
+ รหัสผ่าน ดาวน์โหลดวิดีโอ ค้นหาดีล ปิดกั้นโฆษณาที่น่ารำคาญ เปลี่ยนรูปลักษณ์ของ
+ เบราว์เซอร์ของคุณ และอื่น ๆ อีกมากมาย โปรแกรมซอฟต์แวร์ขนาดเล็กเหล่านั้นมักถูก
+ พัฒนาโดยบุคคลที่สาม นี่คือตัวเลือกที่ { -brand-product-name } <a data-l10n-name="learn-more-trigger">แนะนำ</a>เพื่อ
+ ความปลอดภัย ประสิทธิภาพ และการทำงานที่ดีกว่า
+# Notice to make user aware that the recommendations are personalized.
+discopane-notice-recommendations =
+ บางคำแนะนำเหล่านี้ถูกปรับเปลี่ยนตามแบบส่วนบุคคล ซึ่งขึ้นอยู่กับส่วนขยายอื่นที่คุณติดตั้ง,
+ ค่ากำหนดโปรไฟล์, และสถิติการใช้งาน
+# Notice to make user aware that the recommendations are personalized.
+discopane-notice-recommendations2 =
+ .message =
+ บางคำแนะนำเหล่านี้ถูกปรับเปลี่ยนตามแบบส่วนบุคคล ซึ่งขึ้นอยู่กับส่วนขยายอื่นที่คุณติดตั้ง,
+ ค่ากำหนดโปรไฟล์, และสถิติการใช้งาน
+discopane-notice-learn-more = เรียนรู้เพิ่มเติม
+privacy-policy = นโยบายความเป็นส่วนตัว
+# Refers to the author of an add-on, shown below the name of the add-on.
+# Variables:
+# $author (string) - The name of the add-on developer.
+created-by-author = โดย <a data-l10n-name="author">{ $author }</a>
+# Shows the number of daily users of the add-on.
+# Variables:
+# $dailyUsers (number) - The number of daily users.
+user-count = ผู้ใช้: { $dailyUsers }
+install-extension-button = เพิ่มลงใน { -brand-product-name }
+install-theme-button = ติดตั้งชุดรูปแบบ
+# The label of the button that appears after installing an add-on. Upon click,
+# the detailed add-on view is opened, from where the add-on can be managed.
+manage-addon-button = จัดการ
+find-more-addons = ค้นหาส่วนเสริมเพิ่มเติม
+find-more-themes = ค้นหาชุดรูปแบบเพิ่มเติม
+# This is a label for the button to open the "more options" menu, it is only
+# used for screen readers.
+addon-options-button =
+ .aria-label = ตัวเลือกเพิ่มเติม
+
+## Add-on actions
+
+report-addon-button = รายงาน
+remove-addon-button = เอาออก
+# The link will always be shown after the other text.
+remove-addon-disabled-button = ไม่สามารถเอาออกได้ <a data-l10n-name="link">ทำไม?</a>
+disable-addon-button = ปิดใช้งาน
+enable-addon-button = เปิดใช้งาน
+# This is used for the toggle on the extension card, it's a checkbox and this
+# is always its label.
+extension-enable-addon-button-label =
+ .aria-label = เปิดใช้งาน
+preferences-addon-button =
+ { PLATFORM() ->
+ [windows] ตัวเลือก
+ *[other] การกำหนดลักษณะ
+ }
+details-addon-button = รายละเอียด
+release-notes-addon-button = บันทึกประจำรุ่น
+permissions-addon-button = การอนุญาต
+extension-enabled-heading = ถูกเปิดใช้งาน
+extension-disabled-heading = ถูกปิดใช้งาน
+theme-enabled-heading = เปิดใช้งาน
+theme-disabled-heading2 = ชุดรูปแบบที่บันทึกไว้
+plugin-enabled-heading = ถูกเปิดใช้งาน
+plugin-disabled-heading = ถูกปิดใช้งาน
+dictionary-enabled-heading = ถูกเปิดใช้งาน
+dictionary-disabled-heading = ถูกปิดใช้งาน
+locale-enabled-heading = ถูกเปิดใช้งาน
+locale-disabled-heading = ถูกปิดใช้งาน
+sitepermission-enabled-heading = เปิดใช้งานอยู่
+sitepermission-disabled-heading = ปิดใช้งานอยู่
+always-activate-button = เปิดใช้งานเสมอ
+never-activate-button = ไม่เปิดใช้งานเสมอ
+addon-detail-author-label = ผู้สร้าง
+addon-detail-version-label = รุ่น
+addon-detail-last-updated-label = อัปเดตล่าสุด
+addon-detail-homepage-label = หน้าแรก
+addon-detail-rating-label = การจัดอันดับ
+# Message for add-ons with a staged pending update.
+install-postponed-message = ส่วนขยายนี้จะถูกอัปเดตเมื่อ { -brand-short-name } เริ่มการทำงานใหม่
+# Message for add-ons with a staged pending update.
+install-postponed-message2 =
+ .message = ส่วนขยายนี้จะถูกอัปเดตเมื่อ { -brand-short-name } เริ่มการทำงานใหม่
+install-postponed-button = อัปเดตตอนนี้
+# The average rating that the add-on has received.
+# Variables:
+# $rating (number) - A number between 0 and 5. The translation should show at most one digit after the comma.
+five-star-rating =
+ .title = ได้รับการจัดอันดับ { NUMBER($rating, maximumFractionDigits: 1) } จาก 5
+# This string is used to show that an add-on is disabled.
+# Variables:
+# $name (string) - The name of the add-on
+addon-name-disabled = { $name } (ปิดใช้งานอยู่)
+# The number of reviews that an add-on has received on AMO.
+# Variables:
+# $numberOfReviews (number) - The number of reviews received
+addon-detail-reviews-link =
+ { $numberOfReviews ->
+ *[other] { $numberOfReviews } บทวิจารณ์
+ }
+
+## Pending uninstall message bar
+
+# Variables:
+# $addon (string) - Name of the add-on
+pending-uninstall-description = เอา <span data-l10n-name="addon-name">{ $addon }</span> ออกแล้ว
+# Variables:
+# $addon (string) - Name of the add-on
+pending-uninstall-description2 =
+ .message = เอา { $addon } ออกแล้ว
+pending-uninstall-undo-button = เลิกทำ
+addon-detail-updates-label = อนุญาตให้อัปเดตโดยอัตโนมัติ
+addon-detail-updates-radio-default = ค่าเริ่มต้น
+addon-detail-updates-radio-on = เปิด
+addon-detail-updates-radio-off = ปิด
+addon-detail-update-check-label = ตรวจสอบการอัปเดต
+install-update-button = อัปเดต
+# aria-label associated to the updates row to help screen readers to announce the group
+# of input controls being entered.
+addon-detail-group-label-updates =
+ .aria-label = { addon-detail-updates-label }
+# This is the tooltip text for the private browsing badge in about:addons. The
+# badge is the private browsing icon included next to the extension's name.
+addon-badge-private-browsing-allowed2 =
+ .title = อนุญาตในหน้าต่างส่วนตัวแล้ว
+ .aria-label = { addon-badge-private-browsing-allowed2.title }
+addon-detail-private-browsing-help = เมื่อได้รับอนุญาต ส่วนขยายจะสามารถเข้าถึงกิจกรรมออนไลน์ของคุณได้ในขณะที่เรียกดูแบบส่วนตัว <a data-l10n-name="learn-more">เรียนรู้เพิ่มเติม</a>
+addon-detail-private-browsing-allow = อนุญาต
+addon-detail-private-browsing-disallow = ไม่อนุญาต
+# aria-label associated to the private browsing row to help screen readers to announce the group
+# of input controls being entered.
+addon-detail-group-label-private-browsing =
+ .aria-label = { detail-private-browsing-label }
+
+## "sites with restrictions" (internally called "quarantined") are special domains
+## where add-ons are normally blocked for security reasons.
+
+# Used as a description for the option to allow or block an add-on on quarantined domains.
+addon-detail-quarantined-domains-label = เรียกใช้งานบนไซต์ที่มีข้อจำกัด
+# Used as help text part of the quarantined domains UI controls row.
+addon-detail-quarantined-domains-help = เมื่ออนุญาตแล้ว ส่วนขยายจะสามารถเข้าถึงไซต์ที่ { -vendor-short-name } จำกัดไว้ได้ ให้อนุญาตก็ต่อเมื่อคุณไว้ใจส่วนขยายนี้เท่านั้น
+# Used as label and tooltip text on the radio inputs associated to the quarantined domains UI controls.
+addon-detail-quarantined-domains-allow = อนุญาต
+addon-detail-quarantined-domains-disallow = ไม่อนุญาต
+# aria-label associated to the quarantined domains exempt row to help screen readers to announce the group.
+addon-detail-group-label-quarantined-domains =
+ .aria-label = { addon-detail-quarantined-domains-label }
+
+## This is the tooltip text for the recommended badges for an extension in about:addons. The
+## badge is a small icon displayed next to an extension when it is recommended on AMO.
+
+addon-badge-recommended2 =
+ .title = { -brand-product-name } แนะนำเฉพาะส่วนขยายที่ตรงตามมาตรฐานของเราเท่านั้นเพื่อความปลอดภัยและประสิทธิภาพ
+ .aria-label = { addon-badge-recommended2.title }
+# We hard code "Mozilla" in the string below because the extensions are built
+# by Mozilla and we don't want forks to display "by Fork".
+addon-badge-line3 =
+ .title = ส่วนขยายอย่างเป็นทางการที่สร้างขึ้นโดย Mozilla ซึ่งตรงตามมาตรฐานความปลอดภัยและประสิทธิภาพ
+ .aria-label = { addon-badge-line3.title }
+addon-badge-verified2 =
+ .title = ส่วนขยายนี้ได้รับการตรวจสอบว่าเป็นไปตามมาตรฐานด้านความปลอดภัยและประสิทธิภาพของเรา
+ .aria-label = { addon-badge-verified2.title }
+
+##
+
+available-updates-heading = การอัปเดตที่มี
+recent-updates-heading = การอัปเดตล่าสุด
+release-notes-loading = กำลังโหลด…
+release-notes-error = ขออภัย แต่เกิดข้อผิดพลาดในการโหลดบันทึกประจำรุ่น
+addon-permissions-empty = ส่วนขยายนี้ไม่ต้องการการอนุญาตใด ๆ
+addon-permissions-required = สิทธิอนุญาตที่ต้องการสำหรับฟังก์ชันการทำงานหลัก:
+addon-permissions-optional = สิทธิอนุญาตที่เลือกได้สำหรับฟังก์ชันการทำงานที่เพิ่ม:
+addon-permissions-learnmore = เรียนรู้เพิ่มเติมเกี่ยวกับสิทธิอนุญาต
+recommended-extensions-heading = ส่วนขยายที่แนะนำ
+recommended-themes-heading = ชุดรูปแบบที่แนะนำ
+# Variables:
+# $hostname (string) - Host where the permissions are granted
+addon-sitepermissions-required = มอบความสามารถต่อไปนี้ให้ <span data-l10n-name="hostname">{ $hostname }</span>:
+# A recommendation for the Firefox Color theme shown at the bottom of the theme
+# list view. The "Firefox Color" name itself should not be translated.
+recommended-theme-1 = รู้สึกสร้างสรรค์ใช่ไหม? <a data-l10n-name="link">สร้างชุดรูปแบบในแบบของคุณเองด้วย Firefox Color</a>
+
+## Page headings
+
+extension-heading = จัดการส่วนขยายของคุณ
+theme-heading = จัดการชุดรูปแบบของคุณ
+plugin-heading = จัดการปลั๊กอินของคุณ
+dictionary-heading = จัดการพจนานุกรมของคุณ
+locale-heading = จัดการภาษาของคุณ
+updates-heading = จัดการการอัปเดตของคุณ
+sitepermission-heading = จัดการสิทธิอนุญาตไซต์ของคุณ
+discover-heading = ปรับแต่ง { -brand-short-name } ของคุณ
+shortcuts-heading = จัดการทางลัดส่วนขยาย
+default-heading-search-label = ค้นหาส่วนเสริมเพิ่มเติม
+addons-heading-search-input =
+ .placeholder = ค้นหา addons.mozilla.org
+addon-page-options-button =
+ .title = เครื่องมือสำหรับส่วนเสริมทั้งหมด
+
+## Detail notifications
+## Variables:
+## $name (string) - Name of the add-on.
+
+# Variables:
+# $version (string) - Application version.
+details-notification-incompatible = { $name } ใช้ร่วมกับ { -brand-short-name } { $version } ไม่ได้
+# Variables:
+# $version (string) - Application version.
+details-notification-incompatible2 =
+ .message = { $name } ใช้ร่วมกับ { -brand-short-name } { $version } ไม่ได้
+details-notification-incompatible-link = ข้อมูลเพิ่มเติม
+details-notification-unsigned-and-disabled = { $name } ไม่สามารถยืนยันสำหรับใช้ใน { -brand-short-name } และถูกปิดใช้งาน
+details-notification-unsigned-and-disabled2 =
+ .message = { $name } ไม่สามารถยืนยันสำหรับใช้ใน { -brand-short-name } และถูกปิดใช้งาน
+details-notification-unsigned-and-disabled-link = ข้อมูลเพิ่มเติม
+details-notification-unsigned = { $name } ไม่สามารถยืนยันสำหรับใช้ใน { -brand-short-name } ดำเนินการต่อด้วยความระมัดระวัง
+details-notification-unsigned2 =
+ .message = { $name } ไม่สามารถยืนยันสำหรับใช้ใน { -brand-short-name } ดำเนินการต่อด้วยความระมัดระวัง
+details-notification-unsigned-link = ข้อมูลเพิ่มเติม
+details-notification-blocked = { $name } ถูกปิดใช้งานเนื่องจากปัญหาด้านความปลอดภัยหรือเสถียรภาพ
+details-notification-blocked2 =
+ .message = { $name } ถูกปิดใช้งานเนื่องจากปัญหาด้านความปลอดภัยหรือเสถียรภาพ
+details-notification-blocked-link = ข้อมูลเพิ่มเติม
+details-notification-softblocked = { $name } เป็นที่ทราบว่าก่อให้เกิดปัญหาด้านความปลอดภัยหรือเสถียรภาพ
+details-notification-softblocked2 =
+ .message = { $name } เป็นที่ทราบว่าก่อให้เกิดปัญหาด้านความปลอดภัยหรือเสถียรภาพ
+details-notification-softblocked-link = ข้อมูลเพิ่มเติม
+details-notification-gmp-pending = { $name } จะถูกติดตั้งในไม่ช้า
+details-notification-gmp-pending2 =
+ .message = { $name } จะถูกติดตั้งในไม่ช้า
+
+## Gecko Media Plugins (GMPs)
+
+plugins-gmp-license-info = ข้อมูลสัญญาอนุญาต
+plugins-gmp-privacy-info = ข้อมูลความเป็นส่วนตัว
+plugins-openh264-name = ตัวแปลงสัญญาณวิดีโอ OpenH264 ให้บริการโดย Cisco Systems, Inc.
+plugins-openh264-description = ปลั๊กอินนี้ติดตั้งโดยอัตโนมัติโดย Mozilla เพื่อให้สอดคล้องกับข้อกำหนด WebRTC และเปิดใช้งานการเรียก WebRTC ด้วยอุปกรณ์ที่ต้องใช้ตัวแปลงสัญญาณวิดีโอ H.264 เยี่ยมชม https://www.openh264.org/ เพื่อดูรหัสต้นฉบับของตัวแปลงสัญญาณและเรียนรู้เพิ่มเติมเกี่ยวกับการใช้งาน
+plugins-widevine-name = โมดูลถอดรหัสเนื้อหา Widevine ให้บริการโดย Google Inc.
+plugins-widevine-description = ปลั๊กอินนี้ช่วยให้สามารถเล่นสื่อที่เข้ารหัสตามข้อกำหนดของ Encrypted Media Extensions ได้ โดยทั่วไปแล้วสื่อที่เข้ารหัสจะถูกใช้โดยไซต์เพื่อป้องกันการคัดลอกเนื้อหาสื่อพรีเมียม เยี่ยมชม https://www.w3.org/TR/encrypted-media/ สำหรับข้อมูลเพิ่มเติมเกี่ยวกับ Encrypted Media Extensions
diff --git a/l10n-th/toolkit/toolkit/about/aboutCompat.ftl b/l10n-th/toolkit/toolkit/about/aboutCompat.ftl
new file mode 100644
index 0000000000..7e1b0ad755
--- /dev/null
+++ b/l10n-th/toolkit/toolkit/about/aboutCompat.ftl
@@ -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/.
+
+label-disable = ปิดใช้งาน
+label-enable = เปิดใช้งาน
+label-interventions = การแทรกแซง
+label-more-information = ข้อมูลเพิ่มเติม: ข้อบกพร่อง { $bug }
+label-overrides = การแทนที่ตัวแทนผู้ใช้
+text-disabled-in-about-config = คุณลักษณะนี้ได้ถูกปิดใช้งานใน about:config
+text-no-interventions = ไม่มีการแทรกแซงใด ๆ ที่ถูกใช้
+text-no-overrides = ไม่มีการแทนที่ตัวแทนผู้ใช้ใด ๆ ที่ถูกใช้
+text-title = about:compat
+
+## Do not translate "SmartBlock". For reference, SmartBlock is a feature
+## of Firefox anti-tracking which fixes website breakage caused when
+## trackers are blocked, by acting just enough like those trackers to fix the
+## breakage. SmartBlock also contains special fixes for sites broken by
+## Firefox's Total Cookie Protection feature.
+
+label-smartblock = การซ่อมแซม SmartBlock
+text-no-smartblock = ไม่มีการซ่อมแซม SmartBlock ที่กำลังใช้งานอยู่
diff --git a/l10n-th/toolkit/toolkit/about/aboutGlean.ftl b/l10n-th/toolkit/toolkit/about/aboutGlean.ftl
new file mode 100644
index 0000000000..c196ec2365
--- /dev/null
+++ b/l10n-th/toolkit/toolkit/about/aboutGlean.ftl
@@ -0,0 +1,107 @@
+# 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/.
+
+
+### "FOG", "Glean", and "Glean SDK" should remain in English.
+
+-fog-brand-name = FOG
+-glean-brand-name = Glean
+glean-sdk-brand-name = { -glean-brand-name } SDK
+glean-debug-ping-viewer-brand-name = ตัวแสดง Ping สำหรับดีบั๊กของ { -glean-brand-name }
+about-glean-page-title2 = เกี่ยวกับ { -glean-brand-name }
+about-glean-header = เกี่ยวกับ { -glean-brand-name }
+about-glean-interface-description =
+ <a data-l10n-name="glean-sdk-doc-link">{ glean-sdk-brand-name }</a>
+ เป็นไลบรารีรวบรวมข้อมูลที่ใช้ในโครงการต่างๆ ของ { -vendor-short-name }
+ อินเทอร์เฟซนี้ถูกออกแบบมาเพื่อให้นักพัฒนาและนักทดสอบใช้ในการ
+ <a data-l10n-name="fog-link">กำหนดเครื่องมือที่จะใช้ในการทดสอบ</a>ด้วยตนเอง
+about-glean-upload-enabled = เปิดใช้งานการอัปโหลดข้อมูลแล้ว
+about-glean-upload-disabled = ปิดใช้งานการอัปโหลดข้อมูลแล้ว
+about-glean-upload-enabled-local = เปิดใช้งานการอัปโหลดข้อมูลสำหรับส่งไปยังเซิร์ฟเวอร์เฉพาะที่เท่านั้น
+about-glean-upload-fake-enabled =
+ ปิดใช้งานการอัปโหลดข้อมูลแล้ว
+ แต่เรากำลังหลอกและบอก { glean-sdk-brand-name } ว่าเปิดใช้งานอยู่
+ เพื่อให้ข้อมูลถูกบันทึกไว้ในเครื่อง
+ หมายเหตุ: หากคุณกำหนดแท็กการดีบั๊ก Ping ต่างๆ จะถูกอัปโหลดไปยัง
+ <a data-l10n-name="glean-debug-ping-viewer">{ glean-debug-ping-viewer-brand-name }</a> โดยไม่คำนึงถึงการตั้งค่าใดๆ
+# This message is followed by a bulleted list.
+about-glean-prefs-and-defines = <a data-l10n-name="fog-prefs-and-defines-doc-link">การกำหนดลักษณะและค่ากำหนด</a>ที่เกี่ยวข้องประกอบด้วย:
+# Variables:
+# $data-upload-pref-value (String): the value of the datareporting.healthreport.uploadEnabled pref. Typically "true", sometimes "false"
+# Do not translate strings between <code> </code> tags.
+about-glean-data-upload = <code>datareporting.healthreport.uploadEnabled</code>: { $data-upload-pref-value }
+# Variables:
+# $local-port-pref-value (Integer): the value of the telemetry.fog.test.localhost_port pref. Typically 0. Can be negative.
+# Do not translate strings between <code> </code> tags.
+about-glean-local-port = <code>telemetry.fog.test.localhost_port</code>: { $local-port-pref-value }
+# Variables:
+# $glean-android-define-value (Boolean): the value of the MOZ_GLEAN_ANDROID define. Typically "false", sometimes "true".
+# Do not translate strings between <code> </code> tags.
+about-glean-glean-android = <code>MOZ_GLEAN_ANDROID</code>: { $glean-android-define-value }
+# Variables:
+# $moz-official-define-value (Boolean): the value of the MOZILLA_OFFICIAL define.
+# Do not translate strings between <code> </code> tags.
+about-glean-moz-official = <code>MOZILLA_OFFICIAL</code>: { $moz-official-define-value }
+about-glean-about-testing-header = เกี่ยวกับการทดสอบ
+# This message is followed by a numbered list.
+about-glean-manual-testing =
+ คำแนะนำแบบเต็มมีอยู่ใน
+ <a data-l10n-name="fog-instrumentation-test-doc-link">คู่มือการทดสอบด้วยเครื่องมือที่กำหนดของ { -fog-brand-name }</a>
+ และใน<a data-l10n-name="glean-sdk-doc-link">คู่มือของ { glean-sdk-brand-name }</a>
+ แต่โดยสรุปแล้ว เมื่อต้องการทดสอบด้วยตนเองว่าเครื่องมือที่กำหนดของคุณใช้ได้หรือไม่ คุณควร:
+# This message is an option in a dropdown filled with untranslated names of pings.
+about-glean-no-ping-label = (ไม่ต้องส่ง Ping ใดๆ)
+# An in-line text input field precedes this string.
+about-glean-label-for-tag-pings = ตรวจดูให้แน่ใจว่ามีแท็กการดีบั๊กที่จำง่ายในฟิลด์ที่นำหน้าเพื่อให้คุณสามารถพบ Ping ของคุณภายหลังได้
+# An in-line text input field precedes this string.
+about-glean-label-for-tag-pings-with-requirements = ตั้งแท็กดีบั๊กที่จำง่าย <span>(อักขระไม่เกิน 20 ตัว ประกอบด้วยตัวอักษรเลขและ - เท่านั้น)</span> เพื่อให้คุณรู้จำ ping ของคุณได้ในภายหลัง
+# An in-line drop down list precedes this string.
+# Do not translate strings between <code> </code> tags.
+about-glean-label-for-ping-names =
+ เลือก Ping ที่มีเครื่องมือที่ใช้ทดสอบของคุณอยู่จากรายชื่อก่อนหน้านี้
+ หากเครื่องมือนั้นอยู่ใน <a data-l10n-name="custom-ping-link">Ping ที่กำหนดเอง</a> ให้เลือกเครื่องมือนั้น
+ หรือมิฉะนั้น ค่าเริ่มต้นสำหรับเมตริก <code>event</code> คือ
+ Ping <code>events</code>
+ และค่าเริ่มต้นสำหรับเมตริกทั้งหมดคือ
+ Ping <code>metrics</code>
+# An in-line check box precedes this string.
+about-glean-label-for-log-pings =
+ (ไม่บังคับ ทำเครื่องหมายที่ช่องก่อนหน้าหากคุณต้องการให้ Ping ถูกบันทึกเมื่อมีการส่ง
+ คุณจะต้อง<a data-l10n-name="enable-logging-link">เปิดใช้งานการบันทึก</a>เพิ่มเติม)
+# Variables
+# $debug-tag (String): The user-set value of the debug tag input on this page. Like "about-glean-kV"
+# An in-line button labeled "Apply settings and submit ping" precedes this string.
+about-glean-label-for-controls-submit =
+ กดปุ่มก่อนหน้าเพื่อแท็ก { -glean-brand-name } ping ทั้งหมดด้วยแท็กของคุณ และส่ง Ping ที่เลือก
+ (Ping ทั้งหมดที่ส่งมานับจากนั้นจนกว่าคุณจะเริ่มแอปพลิเคชันใหม่จะถูกแท็กด้วย
+ <code>{ $debug-tag }</code>)
+about-glean-li-for-visit-gdpv =
+ <a data-l10n-name="gdpv-tagged-pings-link">เข้าไปที่หน้า { glean-debug-ping-viewer-brand-name } เพื่อส่ง Ping กับแท็กของคุณ</a>
+ ปกติจะใช้เวลาเพียงไม่กี่วินาทีในการกดปุ่มจนกว่า Ping ของคุณจะมาถึง
+ แต่บางครั้งก็อาจใช้เวลามากเพียงไม่กี่นาที
+# Do not translate strings between <code> </code> tags.
+about-glean-adhoc-explanation =
+ สำหรับการทดสอบ<i>เฉพาะกิจ</i>เพิ่มเติม
+ คุณยังสามารถกำหนดค่าปัจจุบันของเครื่องมือเฉพาะชิ้นได้อีกด้วย
+ โดยเปิดคอนโซล devtools ที่นี่ใน <code>about:glean</code>
+ และใช้ <code>testGetValue()</code> API เช่น
+ <code>Glean.metricCategory.metricName.testGetValue()</code>
+# Do not translate strings between <code> </code> tags.
+about-glean-adhoc-explanation2 =
+ สำหรับการทดสอบ<i>เฉพาะกิจ</i>เพิ่มเติม
+ คุณยังสามารถกำหนดค่าปัจจุบันของเครื่องมือเฉพาะชิ้นได้อีกด้วย
+ โดยเปิดคอนโซล devtools ที่นี่ใน <code>about:glean</code>
+ และใช้ <code>testGetValue()</code> API เช่น
+ <code>Glean.metricCategory.metricName.testGetValue()</code>
+ สำหรับเมตริกที่ชื่อ <code>metric.category.metric_name</code>
+# Do not translate strings between <code> </code> tags.
+about-glean-adhoc-note =
+ โปรดทราบว่าคุณกำลังใช้ Glean JS API โดยใช้คอนโซล devtools
+ ซึ่งหมายความว่าหมวดหมู่เมตริกและชื่อเมตริกจะถูกจัดเป็นรูปแบบ
+ <code>camelCase</code> ซึ่งต่างจากใน API สำหรับ Rust และ C++
+controls-button-label-verbose = นำการตั้งค่าไปใช้และส่ง ping
+about-glean-about-data-header = เกี่ยวกับข้อมูล
+about-glean-about-data-explanation =
+ หากต้องการเรียกดูรายการข้อมูลที่รวบรวม โปรดดูที่
+ <a data-l10n-name="glean-dictionary-link">{ -glean-brand-name } Dictionary</a>
diff --git a/l10n-th/toolkit/toolkit/about/aboutHttpsOnlyError.ftl b/l10n-th/toolkit/toolkit/about/aboutHttpsOnlyError.ftl
new file mode 100644
index 0000000000..815a4f2331
--- /dev/null
+++ b/l10n-th/toolkit/toolkit/about/aboutHttpsOnlyError.ftl
@@ -0,0 +1,30 @@
+# 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/.
+
+about-httpsonly-title-alert = การแจ้งเตือนโหมด HTTPS-Only
+about-httpsonly-title-site-not-available = ไซต์ที่ปลอดภัยไม่พร้อมใช้งาน
+
+# Variables:
+# $websiteUrl (String) - Url of the website that failed to load. Example: www.example.com
+about-httpsonly-explanation-unavailable2 = คุณได้เปิดใช้งานโหมด HTTPS-Only สำหรับความปลอดภัยที่มากขึ้น และรุ่น HTTPS ของ <em>{ $websiteUrl }</em> ไม่พร้อมใช้งาน
+about-httpsonly-explanation-question = ปัญหานี้อาจเกิดจากอะไรได้บ้าง?
+about-httpsonly-explanation-nosupport = อาจเป็นไปได้มากว่าเว็บไซต์ไม่รองรับ HTTPS
+about-httpsonly-explanation-risk = อาจเป็นไปได้ว่ามีผู้โจมตีเข้ามาเกี่ยวข้องด้วย หากคุณตัดสินใจเยี่ยมชมเว็บไซต์ คุณไม่ควรใส่ข้อมูลใด ๆ ที่ละเอียดอ่อน เช่น รหัสผ่าน อีเมล หรือรายละเอียดบัตรเครดิต
+about-httpsonly-explanation-continue = หากคุณดำเนินการต่อ โหมด HTTPS-Only จะถูกปิดชั่วคราวสำหรับไซต์นี้
+
+about-httpsonly-button-continue-to-site = ดำเนินการต่อไปยังไซต์ HTTP
+about-httpsonly-button-go-back = ย้อนกลับ
+about-httpsonly-link-learn-more = เรียนรู้เพิ่มเติม…
+
+## Suggestion Box that only shows up if a secure connection to www can be established
+## Variables:
+## $websiteUrl (String) - Url of the website that can be securely loded with these alternatives. Example: example.com
+
+## Suggestion Box that only shows up if a secure connection to www can be established
+## Variables:
+## $websiteUrl (String) - Url of the website that can be securely loaded with these alternatives. Example: example.com
+
+about-httpsonly-suggestion-box-header = ทางเลือกอื่นที่เป็นไปได้
+about-httpsonly-suggestion-box-www-text = มีรุ่นที่ปลอดภัยของ <em>www.{ $websiteUrl }</em> คุณสามารถเยี่ยมชมหน้านั้นแทน <em>{ $websiteUrl }</em> ได้
+about-httpsonly-suggestion-box-www-button = ไปยัง www.{ $websiteUrl }
diff --git a/l10n-th/toolkit/toolkit/about/aboutLogging.ftl b/l10n-th/toolkit/toolkit/about/aboutLogging.ftl
new file mode 100644
index 0000000000..4e9e4734c3
--- /dev/null
+++ b/l10n-th/toolkit/toolkit/about/aboutLogging.ftl
@@ -0,0 +1,69 @@
+# 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 is the title of the page
+about-logging-title = เกี่ยวกับการบันทึก
+about-logging-page-title = ตัวจัดการการบันทึก
+about-logging-current-log-file = ไฟล์ปูมปัจจุบัน:
+about-logging-new-log-file = ไฟล์ปูมใหม่:
+about-logging-currently-enabled-log-modules = โมดูลบันทึกที่เปิดใช้งานในขณะนี้:
+about-logging-log-tutorial = ดู<a data-l10n-name="logging">การบันทึกปูม HTTP</a>สำหรับคำแนะนำเกี่ยวกับวิธีการใช้เครื่องมือนี้
+# This message is used as a button label, "Open" indicates an action.
+about-logging-open-log-file-dir = เปิดไดเรกทอรี
+about-logging-set-log-file = ตั้งไฟล์ปูม
+about-logging-set-log-modules = ตั้งโมดูลบันทึก
+about-logging-start-logging = เริ่มการบันทึก
+about-logging-stop-logging = หยุดการบันทึก
+about-logging-buttons-disabled = การบันทึกถูกกำหนดค่าผ่านตัวแปรสภาพแวดล้อม การกำหนดค่าแบบไดนามิกไม่พร้อมใช้งาน
+about-logging-some-elements-disabled = การบันทึกถูกกำหนดค่าผ่าน URL ตัวเลือกการกำหนดค่าบางอย่างไม่สามารถใช้งานได้
+about-logging-info = ข้อมูล:
+about-logging-log-modules-selection = การเลือกโมดูลบันทึก
+about-logging-new-log-modules = โมดูลบันทึกใหม่:
+about-logging-logging-output-selection = ผลลัพธ์การบันทึก
+about-logging-logging-to-file = การบันทึกลงไฟล์
+about-logging-logging-to-profiler = การบันทึกลง { -profiler-brand-name }
+about-logging-no-log-modules = ไม่มี
+about-logging-no-log-file = ไม่มี
+about-logging-logging-preset-selector-text = ค่าที่ตั้งไว้ล่วงหน้าของการบันทึก:
+about-logging-with-profiler-stacks-checkbox = เปิดใช้งานการตามรอยสแต็กสำหรับข้อความในปูม
+
+## Logging presets
+
+about-logging-preset-networking-label = ระบบเครือข่าย
+about-logging-preset-networking-description = โมดูลบันทึกสำหรับวินิจฉัยปัญหาระบบเครือข่าย
+about-logging-preset-networking-cookie-label = คุกกี้
+about-logging-preset-networking-cookie-description = โมดูลบันทึกสำหรับวินิจฉัยปัญหาคุกกี้
+about-logging-preset-networking-websocket-label = WebSockets
+about-logging-preset-networking-websocket-description = โมดูลบันทึกสำหรับวินิจฉัยปัญหา WebSocket
+about-logging-preset-networking-http3-label = HTTP/3
+about-logging-preset-networking-http3-description = โมดูลบันทึกสำหรับวินิจฉัยปัญหา HTTP/3 และ QUIC
+about-logging-preset-networking-http3-upload-speed-label = ความเร็วการอัปโหลด HTTP/3
+about-logging-preset-networking-http3-upload-speed-description = โมดูลบันทึกสำหรับวินิจฉัยปัญหาความเร็วการอัปโหลด HTTP/3
+about-logging-preset-media-playback-label = การเล่นสื่อ
+about-logging-preset-media-playback-description = โมดูลบันทึกสำหรับวินิจฉัยปัญหาการเล่นสื่อ (ไม่ใช่ปัญหาการประชุมทางวิดีโอ)
+about-logging-preset-webrtc-label = WebRTC
+about-logging-preset-webrtc-description = โมดูลบันทึกสำหรับวินิจฉัยการเรียก WebRTC
+about-logging-preset-webgpu-label = WebGPU
+about-logging-preset-webgpu-description = โมดูลบันทึกสำหรับวินิจฉัยปัญหา WebGPU
+about-logging-preset-gfx-label = กราฟิก
+about-logging-preset-gfx-description = โมดูลบันทึกสำหรับวินิจฉัยปัญหากราฟิก
+# This is specifically "Microsoft Windows". Microsoft normally doesn't localize it, and we should follow their convention here.
+about-logging-preset-windows-label = Windows
+about-logging-preset-windows-description = โมดูลบันทึกสำหรับวินิจฉัยปัญหาของ Microsoft Windows โดยเฉพาะ
+about-logging-preset-custom-label = กำหนดเอง
+about-logging-preset-custom-description = โมดูลบันทึกที่เลือกด้วยตนเอง
+# Error handling
+about-logging-error = ข้อผิดพลาด:
+
+## Variables:
+## $k (String) - Variable name
+## $v (String) - Variable value
+
+about-logging-invalid-output = ค่า “{ $v }“ ไม่ถูกต้องสำหรับคีย์ “{ $k }“
+about-logging-unknown-logging-preset = ไม่รู้จักค่าที่ตั้งไว้ล่วงหน้าของการบันทึก “{ $v }“
+about-logging-unknown-profiler-preset = ไม่รู้จักค่าที่ตั้งไว้ล่วงหน้าของตัวสร้างโปรไฟล์ “{ $v }“
+about-logging-unknown-option = ไม่รู้จักตัวเลือก about:logging “{ $k }“
+about-logging-configuration-url-ignored = เพิกเฉย URL การกำหนดค่าแล้ว
+about-logging-file-and-profiler-override = ไม่สามารถบังคับให้ส่งออกไฟล์และแทนที่ตัวเลือกตัวสร้างโปรไฟล์พร้อมกันได้
+about-logging-configured-via-url = ตัวเลือกที่กำหนดค่าผ่าน URL
diff --git a/l10n-th/toolkit/toolkit/about/aboutMozilla.ftl b/l10n-th/toolkit/toolkit/about/aboutMozilla.ftl
new file mode 100644
index 0000000000..b63497f9e0
--- /dev/null
+++ b/l10n-th/toolkit/toolkit/about/aboutMozilla.ftl
@@ -0,0 +1,11 @@
+# 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/.
+
+about-mozilla-title-6-27 = หนังสือ Mozilla, 6:27
+about-mozilla-quote-6-27 =
+ The Beast continued its studies with renewed <em>Focus</em>, building great <em>Reference</em>
+ works and contemplating new <em>Realities</em>. The Beast brought forth its followers and
+ acolytes to create a renewed smaller form of itself and, through <em>Mischievous</em> means,
+ sent it out across the world.
+about-mozilla-from-6-27 = จาก <strong>หนังสือ Mozilla,</strong> 6:27
diff --git a/l10n-th/toolkit/toolkit/about/aboutNetworking.ftl b/l10n-th/toolkit/toolkit/about/aboutNetworking.ftl
new file mode 100644
index 0000000000..ead94246b8
--- /dev/null
+++ b/l10n-th/toolkit/toolkit/about/aboutNetworking.ftl
@@ -0,0 +1,68 @@
+# 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/.
+
+about-networking-title = เกี่ยวกับเครือข่าย
+about-networking-http = HTTP
+about-networking-sockets = ซ็อกเก็ต
+about-networking-dns = DNS
+about-networking-dns-clear-cache-button = ล้างแคช DNS
+about-networking-dns-trr-url = URL DoH
+about-networking-dns-trr-mode = โหมด DoH
+about-networking-dns-suffix = คำลงท้าย DNS
+about-networking-websockets = WebSockets
+about-networking-refresh = เรียกใหม่
+about-networking-auto-refresh = เรียกใหม่อัตโนมัติทุก 3 วินาที
+about-networking-hostname = ชื่อโฮสต์
+about-networking-port = พอร์ต
+about-networking-http-version = รุ่น HTTP
+about-networking-ssl = SSL
+about-networking-active = ใช้งานอยู่
+about-networking-idle = ว่าง
+about-networking-host = โฮสต์
+about-networking-type = ชนิด
+about-networking-sent = ส่ง
+about-networking-received = รับ
+about-networking-family = กลุ่ม
+about-networking-trr = TRR
+about-networking-addresses = ที่อยู่
+about-networking-expires = หมดอายุ (วินาที)
+about-networking-originAttributesSuffix = คีย์การคัดแยก
+about-networking-flags = ค่าสถานะพิเศษ
+about-networking-messages-sent = ข้อความที่ส่ง
+about-networking-messages-received = ข้อความที่รับ
+about-networking-bytes-sent = จำนวนไบต์ที่ส่ง
+about-networking-bytes-received = จำนวนไบต์ที่รับ
+about-networking-logging = การบันทึก
+about-networking-dns-lookup = การค้นหา DNS
+about-networking-dns-lookup-button = แปลงที่อยู่
+about-networking-dns-domain = โดเมน:
+about-networking-dns-lookup-table-column = IP
+about-networking-dns-https-rr-lookup-table-column = RR HTTP
+about-networking-rcwn = สถิติ RCWN
+about-networking-rcwn-status = สถานะ RCWN
+about-networking-rcwn-cache-won-count = จำนวนการใช้แคช
+about-networking-rcwn-net-won-count = จำนวนการใช้เครือข่าย
+about-networking-total-network-requests = จำนวนคำขอเครือข่ายรวม
+about-networking-rcwn-operation = การดำเนินการแคช
+about-networking-rcwn-perf-open = เปิด
+about-networking-rcwn-perf-read = อ่าน
+about-networking-rcwn-perf-write = เขียน
+about-networking-rcwn-perf-entry-open = เปิดรายการ
+about-networking-rcwn-avg-short = ค่าเฉลี่ยแบบสั้น
+about-networking-rcwn-avg-long = ค่าเฉลี่ยแบบยาว
+about-networking-rcwn-std-dev-long = ค่าเบี่ยงเบนมาตรฐานแบบยาว
+about-networking-rcwn-cache-slow = จำนวนแคชที่หน่วงเวลา
+about-networking-rcwn-cache-not-slow = จำนวนแคชที่ไม่ได้หน่วงเวลา
+about-networking-networkid = ID เครือข่าย
+about-networking-networkid-id = ID เครือข่าย
+# Note: do not translate about:logging, as it is a URL.
+about-networking-moved-about-logging = หน้านี้ถูกย้ายไปที่ <a data-l10n-name="about-logging-url">about:logging</a> แล้ว
+
+## Link is intended as "network link"
+
+about-networking-networkid-is-up = ลิงก์ถูกเชื่อมต่อแล้ว
+about-networking-networkid-status-known = ทราบสถานะลิงก์แล้ว
+
+##
+
diff --git a/l10n-th/toolkit/toolkit/about/aboutPerformance.ftl b/l10n-th/toolkit/toolkit/about/aboutPerformance.ftl
new file mode 100644
index 0000000000..dd3238bd6a
--- /dev/null
+++ b/l10n-th/toolkit/toolkit/about/aboutPerformance.ftl
@@ -0,0 +1,67 @@
+# 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/.
+
+# Page title
+about-performance-title = ตัวจัดการงาน
+
+## Column headers
+
+column-name = ชื่อ
+column-type = ชนิด
+column-energy-impact = ผลกระทบด้านพลังงาน
+column-memory = หน่วยความจำ
+
+## Special values for the Name column
+
+ghost-windows = แท็บที่ปิดล่าสุด
+# Variables:
+# $title (String) - the title of the preloaded page, typically 'New Tab'
+preloaded-tab = โหลดไว้ล่วงหน้า: { $title }
+
+## Values for the Type column
+
+type-tab = แท็บ
+type-subframe = เฟรมย่อย
+type-tracker = ตัวติดตาม
+type-addon = ส่วนเสริม
+type-browser = เบราว์เซอร์
+type-worker = ตัวทำงาน
+type-other = อื่น ๆ
+
+## Values for the Energy Impact column
+##
+## Variables:
+## $value (Number) - Value of the energy impact, eg. 0.25 (low),
+## 5.38 (medium), 105.38 (high)
+
+energy-impact-high = สูง ({ $value })
+energy-impact-medium = ปานกลาง ({ $value })
+energy-impact-low = ต่ำ ({ $value })
+
+## Values for the Memory column
+##
+## Variables:
+## $value (Number) - How much memory is used
+
+size-KB = { $value } KB
+size-MB = { $value } MB
+size-GB = { $value } GB
+
+## Tooltips for the action buttons
+
+close-tab =
+ .title = ปิดแท็บ
+show-addon =
+ .title = แสดงในตัวจัดการส่วนเสริม
+
+# Tooltip when hovering an item of the about:performance table
+# Variables:
+# $totalDispatches (Number) - how many dispatches occurred for this page since it loaded
+# $totalDuration (Number) - how much CPU time was used by this page since it loaded
+# $dispatchesSincePrevious (Number) - how many dispatches occurred in the last 2 seconds
+# $durationSincePrevious (Number) - how much CPU time was used in the last 2 seconds
+item =
+ .title =
+ การแยกส่งตั้งแต่โหลด: { $totalDispatches } ({ $totalDuration }ms)
+ การแยกส่งในช่วงวินาทีที่ผ่านมา: { $dispatchesSincePrevious } ({ $durationSincePrevious }ms)
diff --git a/l10n-th/toolkit/toolkit/about/aboutPlugins.ftl b/l10n-th/toolkit/toolkit/about/aboutPlugins.ftl
new file mode 100644
index 0000000000..88781b850f
--- /dev/null
+++ b/l10n-th/toolkit/toolkit/about/aboutPlugins.ftl
@@ -0,0 +1,43 @@
+# 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/.
+
+title-label = เกี่ยวกับปลั๊กอิน
+installed-plugins-label = ปลั๊กอินที่ติดตั้ง
+no-plugins-are-installed-label = ไม่พบปลั๊กอินที่ติดตั้ง
+deprecation-description = มีบางอย่างขาดหายไป? ปลั๊กอินบางตัวไม่ได้รับการสนับสนุนอีกต่อไป <a data-l10n-name="deprecation-link">เรียนรู้เพิ่มเติม</a>
+deprecation-description2 =
+ .message = มีบางอย่างขาดหายไป? ปลั๊กอินบางตัวไม่ได้รับการสนับสนุนอีกต่อไป
+
+## The information of plugins
+##
+## Variables:
+## $pluginLibraries: the plugin library
+## $pluginFullPath: path of the plugin
+## $version: version of the plugin
+
+file-dd = <span data-l10n-name="file">ไฟล์:</span> { $pluginLibraries }
+path-dd = <span data-l10n-name="path">เส้นทาง:</span> { $pluginFullPath }
+version-dd = <span data-l10n-name="version">รุ่น:</span> { $version }
+
+## These strings describe the state of plugins
+##
+## Variables:
+## $blockListState: show some special state of the plugin, such as blocked, outdated
+
+state-dd-enabled = <span data-l10n-name="state">สถานะ:</span> ถูกเปิดใช้งาน
+state-dd-enabled-block-list-state = <span data-l10n-name="state">สถานะ:</span> ถูกเปิดใช้งาน ({ $blockListState })
+state-dd-Disabled = <span data-l10n-name="state">สถานะ:</span> ถูกปิดใช้งาน
+state-dd-Disabled-block-list-state = <span data-l10n-name="state">สถานะ:</span> ถูกปิดใช้งาน ({ $blockListState })
+mime-type-label = ชนิดของ MIME
+description-label = คำอธิบาย
+suffixes-label = ส่วนต่อท้าย
+
+## Gecko Media Plugins (GMPs)
+
+plugins-gmp-license-info = ข้อมูลสัญญาอนุญาต
+plugins-gmp-privacy-info = ข้อมูลความเป็นส่วนตัว
+plugins-openh264-name = ตัวแปลงสัญญาณวิดีโอ OpenH264 ให้บริการโดย Cisco Systems, Inc.
+plugins-openh264-description = ปลั๊กอินนี้ติดตั้งโดยอัตโนมัติโดย Mozilla เพื่อให้สอดคล้องกับข้อกำหนด WebRTC และเปิดใช้งานการเรียก WebRTC ด้วยอุปกรณ์ที่ต้องใช้ตัวแปลงสัญญาณวิดีโอ H.264 เยี่ยมชม https://www.openh264.org/ เพื่อดูรหัสต้นฉบับของตัวแปลงสัญญาณและเรียนรู้เพิ่มเติมเกี่ยวกับการใช้งาน
+plugins-widevine-name = โมดูลถอดรหัสเนื้อหา Widevine ให้บริการโดย Google Inc.
+plugins-widevine-description = ปลั๊กอินนี้ช่วยให้สามารถเล่นสื่อที่เข้ารหัสตามข้อกำหนดของ Encrypted Media Extensions ได้ โดยทั่วไปแล้วสื่อที่เข้ารหัสจะถูกใช้โดยไซต์เพื่อป้องกันการคัดลอกเนื้อหาสื่อพรีเมียม เยี่ยมชม https://www.w3.org/TR/encrypted-media/ สำหรับข้อมูลเพิ่มเติมเกี่ยวกับ Encrypted Media Extensions
diff --git a/l10n-th/toolkit/toolkit/about/aboutProcesses.ftl b/l10n-th/toolkit/toolkit/about/aboutProcesses.ftl
new file mode 100644
index 0000000000..cf4e254c51
--- /dev/null
+++ b/l10n-th/toolkit/toolkit/about/aboutProcesses.ftl
@@ -0,0 +1,186 @@
+# 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/.
+
+# Page title
+about-processes-title = ตัวจัดการโปรเซส
+# The Actions column
+about-processes-column-action =
+ .title = การกระทำ
+
+## Tooltips
+
+about-processes-shutdown-process =
+ .title = เลิกโหลดแท็บและหยุดการทำงานของโปรเซส
+about-processes-shutdown-tab =
+ .title = ปิดแท็บ
+# Profiler icons
+# Variables:
+# $duration (Number) The time in seconds during which the profiler will be running.
+# The value will be an integer, typically less than 10.
+about-processes-profile-process =
+ .title =
+ { $duration ->
+ *[other] สร้างโปรไฟล์เธรดทั้งหมดของโปรเซสนี้เป็นเวลา { $duration } วินาที
+ }
+
+## Column headers
+
+about-processes-column-name = ชื่อ
+about-processes-column-memory-resident = หน่วยความจำ
+about-processes-column-cpu-total = CPU
+
+## Process names
+## Variables:
+## $pid (String) The process id of this process, assigned by the OS.
+
+about-processes-browser-process = { -brand-short-name }{ $pid }
+about-processes-web-process = กระบวนการเว็บที่ใช้ร่วมกัน ({ $pid })
+about-processes-file-process = ไฟล์ ({ $pid })
+about-processes-extension-process = ส่วนขยาย ({ $pid })
+about-processes-privilegedabout-process = หน้าเกี่ยวกับ ({ $pid })
+about-processes-plugin-process = ปลั๊กอิน ({ $pid })
+about-processes-privilegedmozilla-process = ไซต์ { -vendor-short-name } ({ $pid })
+about-processes-gmp-plugin-process = ปลั๊กอินสื่อของ Gecko ({ $pid })
+about-processes-gpu-process = GPU ({ $pid })
+about-processes-vr-process = VR ({ $pid })
+about-processes-rdd-process = ตัวถอดรหัสข้อมูล ({ $pid })
+about-processes-socket-process = เครือข่าย ({ $pid })
+about-processes-remote-sandbox-broker-process = ตัวกลาง Sandbox ระยะไกล ({ $pid })
+about-processes-fork-server-process = ฟอร์คเซิร์ฟเวอร์ ({ $pid })
+about-processes-preallocated-process = จัดสรรล่วงหน้า ({ $pid })
+about-processes-utility-process = โปรแกรมอรรถประโยชน์ ({ $pid })
+# Unknown process names
+# Variables:
+# $pid (String) The process id of this process, assigned by the OS.
+# $type (String) The raw type for this process.
+about-processes-unknown-process = อื่น ๆ : { $type } ({ $pid })
+
+## Isolated process names
+## Variables:
+## $pid (String) The process id of this process, assigned by the OS.
+## $origin (String) The domain name for this process.
+
+about-processes-web-isolated-process = { $origin } ({ $pid })
+about-processes-web-serviceworker = { $origin } ({ $pid }, serviceworker)
+about-processes-with-coop-coep-process = { $origin } ({ $pid }, ถูกคัดแยกข้ามที่มา)
+about-processes-web-isolated-process-private = { $origin } — ส่วนตัว ({ $pid })
+about-processes-with-coop-coep-process-private = { $origin } — ส่วนตัว ({ $pid }, ถูกคัดแยกข้ามที่มา)
+
+## Details within processes
+
+# Single-line summary of threads (non-idle process)
+# Variables:
+# $number (Number) The number of threads in the process. Typically larger
+# than 30. We don't expect to ever have processes with less
+# than 5 threads.
+# $active (Number) The number of active threads in the process.
+# The value will be greater than 0 and will never be
+# greater than $number.
+# $list (String) Comma separated list of active threads.
+# Can be an empty string if the process is idle.
+about-processes-active-threads =
+ { $active ->
+ *[other] { $active } เธรดที่ใช้งานอยู่จาก { $number }: { $list }
+ }
+# Single-line summary of threads (idle process)
+# Variables:
+# $number (Number) The number of threads in the process. Typically larger
+# than 30. We don't expect to ever have processes with less
+# than 5 threads.
+# The process is idle so all threads are inactive.
+about-processes-inactive-threads =
+ { $number ->
+ *[other] { $number } เธรดที่ไม่ได้ใช้งาน
+ }
+# Thread details
+# Variables:
+# $name (String) The name assigned to the thread.
+# $tid (String) The thread id of this thread, assigned by the OS.
+about-processes-thread-name-and-id = { $name }
+ .title = เธรด id: { $tid }
+# Tab
+# Variables:
+# $name (String) The name of the tab (typically the title of the page, might be the url while the page is loading).
+about-processes-tab-name = แท็บ: { $name }
+about-processes-preloaded-tab = แท็บใหม่ที่โหลดไว้ล่วงหน้า
+# Single subframe
+# Variables:
+# $url (String) The full url of this subframe.
+about-processes-frame-name-one = เฟรมย่อย: { $url }
+# Group of subframes
+# Variables:
+# $number (Number) The number of subframes in this group. Always ≥ 1.
+# $shortUrl (String) The shared prefix for the subframes in the group.
+about-processes-frame-name-many = เฟรมย่อย ({ $number }): { $shortUrl }
+
+## Utility process actor names
+
+about-processes-utility-actor-unknown = ตัวดำเนินการที่ไม่รู้จัก
+about-processes-utility-actor-audio-decoder-generic = ตัวถอดรหัสเสียงทั่วไป
+about-processes-utility-actor-audio-decoder-applemedia = ตัวถอดรหัสเสียง Apple Media
+about-processes-utility-actor-audio-decoder-wmf = ตัวถอดรหัสเสียง Windows Media Framework
+about-processes-utility-actor-mf-media-engine = Windows Media Foundation Media Engine CDM
+# "Oracle" refers to an internal Firefox process and should be kept in English
+about-processes-utility-actor-js-oracle = JavaScript Oracle
+about-processes-utility-actor-windows-utils = Windows Utils
+about-processes-utility-actor-windows-file-dialog = กล่องโต้ตอบไฟล์ของ Windows
+
+## Displaying CPU (percentage and total)
+## Variables:
+## $percent (Number) The percentage of CPU used by the process or thread.
+## Always > 0, generally <= 200.
+## $total (Number) The amount of time used by the process or thread since
+## its start.
+## $unit (String) The unit in which to display $total. See the definitions
+## of `duration-unit-*`.
+
+# Common case.
+about-processes-cpu = { NUMBER($percent, maximumSignificantDigits: 2, style: "percent") }
+ .title = เวลาของ CPU ทั้งหมด: { NUMBER($total, maximumFractionDigits: 0) }{ $unit }
+# Special case: data is not available yet.
+about-processes-cpu-user-and-kernel-not-ready = (กำลังวัด)
+# Special case: process or thread is almost idle (using less than 0.1% of a CPU core).
+# This case only occurs on Windows where the precision of the CPU times is low.
+about-processes-cpu-almost-idle = < 0.1%
+ .title = เวลาของ CPU ทั้งหมด: { NUMBER($total, maximumFractionDigits: 0) }{ $unit }
+# Special case: process or thread is currently idle.
+about-processes-cpu-fully-idle = ว่าง
+ .title = เวลาของ CPU ทั้งหมด: { NUMBER($total, maximumFractionDigits: 0) }{ $unit }
+
+## Displaying Memory (total and delta)
+## Variables:
+## $total (Number) The amount of memory currently used by the process.
+## $totalUnit (String) The unit in which to display $total. See the definitions
+## of `memory-unit-*`.
+## $delta (Number) The absolute value of the amount of memory added recently.
+## $deltaSign (String) Either "+" if the amount of memory has increased
+## or "-" if it has decreased.
+## $deltaUnit (String) The unit in which to display $delta. See the definitions
+## of `memory-unit-*`.
+
+# Common case.
+about-processes-total-memory-size-changed = { NUMBER($total, maximumFractionDigits: 0) }{ $totalUnit }
+ .title = วิวัฒนาการ: { $deltaSign }{ NUMBER($delta, maximumFractionDigits: 0) }{ $deltaUnit }
+# Special case: no change.
+about-processes-total-memory-size-no-change = { NUMBER($total, maximumFractionDigits: 0) }{ $totalUnit }
+
+## Duration units
+
+duration-unit-ns = ns
+duration-unit-us = µs
+duration-unit-ms = ms
+duration-unit-s = วินาที
+duration-unit-m = นาที
+duration-unit-h = ชม.
+duration-unit-d = วัน
+
+## Memory units
+
+memory-unit-B = B
+memory-unit-KB = KB
+memory-unit-MB = MB
+memory-unit-GB = GB
+memory-unit-TB = TB
+memory-unit-PB = PB
+memory-unit-EB = EB
diff --git a/l10n-th/toolkit/toolkit/about/aboutProfiles.ftl b/l10n-th/toolkit/toolkit/about/aboutProfiles.ftl
new file mode 100644
index 0000000000..7aeaa0abed
--- /dev/null
+++ b/l10n-th/toolkit/toolkit/about/aboutProfiles.ftl
@@ -0,0 +1,74 @@
+# 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/.
+
+
+profiles-title = เกี่ยวกับโปรไฟล์
+profiles-subtitle = หน้านี้ช่วยให้คุณจัดการโปรไฟล์ของคุณ แต่ละโปรไฟล์นั้นเป็นโลกที่แบ่งแยกออกจากกันซึ่งมีประวัติ, ที่คั่นหน้า, การตั้งค่า และส่วนเสริมที่แยกกัน
+profiles-create = สร้างโปรไฟล์ใหม่
+profiles-restart-title = เริ่มการทำงานใหม่
+profiles-restart-in-safe-mode = เริ่มการทำงานใหม่พร้อมปิดใช้งานส่วนเสริม…
+profiles-restart-normal = เริ่มการทำงานใหม่ปกติ…
+profiles-conflict = สำเนาอื่นของ { -brand-product-name } ได้ทำการเปลี่ยนแปลงกับโปรไฟล์ คุณต้องเริ่มการทำงาน { -brand-short-name } ใหม่ก่อนจึงจะสามารถทำการเปลี่ยนแปลงเพิ่มเติมได้
+profiles-flush-fail-title = ไม่ได้บันทึกการเปลี่ยนแปลง
+profiles-flush-conflict = { profiles-conflict }
+profiles-flush-failed = ข้อผิดพลาดที่ไม่คาดคิดได้ขัดขวางการบันทึกการเปลี่ยนแปลงของคุณ
+profiles-flush-restart-button = เริ่มการทำงาน { -brand-short-name } ใหม่
+
+# Variables:
+# $name (String) - Name of the profile
+profiles-name = โปรไฟล์: { $name }
+profiles-is-default = โปรไฟล์เริ่มต้น
+profiles-rootdir = ไดเรกทอรีราก
+
+# localDir is used to show the directory corresponding to
+# the main profile directory that exists for the purpose of storing data on the
+# local filesystem, including cache files or other data files that may not
+# represent critical user data. (e.g., this directory may not be included as
+# part of a backup scheme.)
+# In case localDir and rootDir are equal, localDir is not shown.
+profiles-localdir = ไดเรกทอรีในเครื่อง
+profiles-current-profile = นี่เป็นโปรไฟล์ที่ใช้งานอยู่และไม่สามารถลบได้
+profiles-in-use-profile = โปรไฟล์นี้ถูกใช้งานในแอปพลิเคชันอื่นและไม่สามารถลบได้
+
+profiles-rename = เปลี่ยนชื่อ
+profiles-remove = เอาออก
+profiles-set-as-default = ตั้งเป็นโปรไฟล์เริ่มต้น
+profiles-launch-profile = เปิดโปรไฟล์ในเบราว์เซอร์ใหม่
+
+profiles-cannot-set-as-default-title = ไม่สามารถตั้งค่าเริ่มต้น
+profiles-cannot-set-as-default-message = ไม่สามารถเปลี่ยนแปลงโปรไฟล์เริ่มต้นสำหรับ { -brand-short-name }
+
+profiles-yes = ใช่
+profiles-no = ไม่
+
+profiles-rename-profile-title = เปลี่ยนชื่อโปรไฟล์
+# Variables:
+# $name (String) - Name of the profile
+profiles-rename-profile = เปลี่ยนชื่อโปรไฟล์ { $name }
+
+profiles-invalid-profile-name-title = ชื่อโปรไฟล์ไม่ถูกต้อง
+# Variables:
+# $name (String) - Name of the profile
+profiles-invalid-profile-name = ไม่อนุญาตให้ใช้ชื่อโปรไฟล์ “{ $name }”
+
+profiles-delete-profile-title = ลบโปรไฟล์
+# Variables:
+# $dir (String) - Path to be displayed
+profiles-delete-profile-confirm =
+ การลบโปรไฟล์จะเอาโปรไฟล์ออกจากรายการโปรไฟล์ที่มีและไม่สามารถเลิกทำได้
+ คุณยังอาจเลือกที่จะลบไฟล์ข้อมูลของโปรไฟล์ รวมไปถึงการตั้งค่า, ใบรับรอง และข้อมูลที่เกี่ยวข้องกับผู้ใช้ ตัวเลือกนี้จะลบโฟลเดอร์ “{ $dir }” และไม่สามารถเลิกทำได้
+ คุณต้องการลบไฟล์ข้อมูลของโปรไฟล์หรือไม่?
+profiles-delete-files = ลบไฟล์
+profiles-dont-delete-files = ไม่ลบไฟล์
+
+profiles-delete-profile-failed-title = ข้อผิดพลาด
+profiles-delete-profile-failed-message = เกิดข้อผิดพลาดขณะพยายามลบโปรไฟล์นี้
+
+
+profiles-opendir =
+ { PLATFORM() ->
+ [macos] แสดงใน Finder
+ [windows] เปิดโฟลเดอร์
+ *[other] เปิดไดเรกทอรี
+ }
diff --git a/l10n-th/toolkit/toolkit/about/aboutReader.ftl b/l10n-th/toolkit/toolkit/about/aboutReader.ftl
new file mode 100644
index 0000000000..679ac5ed51
--- /dev/null
+++ b/l10n-th/toolkit/toolkit/about/aboutReader.ftl
@@ -0,0 +1,48 @@
+# 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/.
+
+about-reader-loading = กำลังโหลด…
+about-reader-load-error = ไม่สามารถโหลดบทความจากหน้า
+
+about-reader-color-scheme-light = สว่าง
+ .title = แบบแผนชุดสีสว่าง
+about-reader-color-scheme-dark = มืด
+ .title = แบบแผนชุดสีมืด
+about-reader-color-scheme-sepia = ซีเปีย
+ .title = แบบแผนชุดสีซีเปีย
+about-reader-color-scheme-auto = อัตโนมัติ
+ .title = แบบแผนชุดสีอัตโนมัติ
+
+# An estimate for how long it takes to read an article,
+# expressed as a range covering both slow and fast readers.
+# Variables:
+# $rangePlural (String): The plural category of the range, using the same set as for numbers.
+# $range (String): The range of minutes as a localised string. Examples: "3-7", "~1".
+about-reader-estimated-read-time = { $range } นาที
+
+## These are used as tooltips in Type Control
+
+about-reader-toolbar-minus =
+ .title = ลดขนาดแบบอักษร
+about-reader-toolbar-plus =
+ .title = เพิ่มขนาดแบบอักษร
+about-reader-toolbar-contentwidthminus =
+ .title = ลดความกว้างของเนื้อหา
+about-reader-toolbar-contentwidthplus =
+ .title = เพิ่มความกว้างของเนื้อหา
+about-reader-toolbar-lineheightminus =
+ .title = ลดความสูงของบรรทัด
+about-reader-toolbar-lineheightplus =
+ .title = เพิ่มความสูงของบรรทัด
+
+## These are the styles of typeface that are options in the reader view controls.
+
+about-reader-font-type-serif = มีเชิง
+about-reader-font-type-sans-serif = ไม่มีเชิง
+
+## Reader View toolbar buttons
+
+about-reader-toolbar-close = ปิดมุมมองผู้อ่าน
+about-reader-toolbar-type-controls = ปุ่มควบคุมชนิด
+about-reader-toolbar-savetopocket = บันทึกไปยัง { -pocket-brand-name }
diff --git a/l10n-th/toolkit/toolkit/about/aboutRights.ftl b/l10n-th/toolkit/toolkit/about/aboutRights.ftl
new file mode 100644
index 0000000000..381988c7e7
--- /dev/null
+++ b/l10n-th/toolkit/toolkit/about/aboutRights.ftl
@@ -0,0 +1,36 @@
+# 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/.
+
+rights-title = เกี่ยวกับสิทธิของคุณ
+rights-intro = { -brand-full-name } เป็นซอฟต์แวร์เสรีและเปิดต้นฉบับ สร้างขึ้นโดยชุมชนของคนนับพันจากทั่วโลก มีบางสิ่งที่คุณควรทราบ:
+rights-intro-point-1 = { -brand-short-name } ให้คุณใช้ภายใต้เงื่อนไขของ <a data-l10n-name="mozilla-public-license-link">Mozilla Public License</a> สิ่งนี้หมายถึงคุณอาจใช้งาน คัดลอก และแจกจ่าย { -brand-short-name } ให้กับผู้อื่น คุณยังสามารถแก้ไขโค้ดต้นฉบับของ { -brand-short-name } ตามที่คุณต้องการเพื่อให้ตรงกับความต้องการของคุณ Mozilla Public License ยังให้สิทธิคุณในการแจกจ่ายรุ่นที่คุณแก้ไขอีกด้วย
+rights-intro-point-2 = คุณไม่ได้รับสิทธิหรือสัญญาอนุญาตเครื่องหมายการค้าใด ๆ ในเครื่องหมายการค้าของมูลนิธิ Mozilla หรือบุคคลใด ๆ ไม่จำกัดทั้งชื่อหรือโลโก้ Firefox ข้อมูลเพิ่มเติมเกี่ยวกับเครื่องหมายการค้าอาจพบได้ <a data-l10n-name="mozilla-trademarks-link">ที่นี่</a>
+rights-intro-point-3 = บางคุณลักษณะใน { -brand-short-name } อย่างตัวรายงานข้อขัดข้อง ให้ตัวเลือกคุณในการเสนอข้อคิดเห็นมายัง { -vendor-short-name } โดยการเลือกส่งข้อคิดเห็นหมายถึงคุณให้อนุญาต { -vendor-short-name } ในการใช้ข้อคิดเห็นนั้นเพื่อปรับปรุงผลิตภัณฑ์ เผยแพร่ข้อคิดเห็นบนเว็บไซต์ และแจกจ่ายข้อคิดเห็น
+rights-intro-point-4 = วิธีที่เราใช้ข้อมูลส่วนบุคคลและข้อคิดเห็นของคุณที่ส่งมายัง { -vendor-short-name } ผ่าน { -brand-short-name } ได้รับการอธิบายไว้ใน <a data-l10n-name="mozilla-privacy-policy-link">นโยบายความเป็นส่วนตัว { -brand-short-name }</a>
+rights-intro-point-4-unbranded = นโยบายความเป็นส่วนตัวใด ๆ ที่บังคับใช้สำหรับผลิตภัณฑ์นี้ควรถูกแสดงรายการไว้ที่นี่
+rights-intro-point-5 = บางคุณสมบัติของ { -brand-short-name } ใช้บริการข้อมูลจากเว็บภายนอก อย่างไรก็ตาม เราไม่สามารถรับประกันได้ว่าบริการเหล่านั้นจะทำงานได้ถูกต้อง 100% หรือปราศจากความผิดพลาด รายละเอียดเพิ่มเติมรวมไปถึงวิธียกเลิกใช้บริการเหล่านั้น สามารถอ่านได้ที่ <a data-l10n-name="mozilla-service-terms-link">ข้อตกลงบริการ</a>
+rights-intro-point-5-unbranded = ถ้าผลิตภัณฑ์นี้ได้ทำการรวมบริการเว็บไว้ ข้อตกลงบริการใด ๆ สำหรับบริการนั้น ๆ ที่สามารถนำไปปรับใช้ได้จะถูกลงรายการไว้ที่ส่วน<a data-l10n-name="mozilla-website-services-link">บริการเว็บ</a> หัวข้อ
+rights-intro-point-6 = เพื่อเล่นเนื้อหาวิดีโอบางชนิด { -brand-short-name } ดาวน์โหลดโมดูลถอดรหัสเนื้อหาบางส่วนจากบุคคลที่สาม
+rights-webservices-header = บริการข้อมูลผ่านเว็บ { -brand-full-name }
+rights-webservices = { -brand-full-name } ใช้บริการข้อมูลผ่านเว็บ ("บริการ") ในการเสนอความสามารถให้กับคุณใน { -brand-short-name } รุ่นนี้ภายใต้ข้อตกลงที่อธิบายไว้ข้างล่าง ถ้าคุณไม่ต้องการใช้งานบริการเหล่านั้นหรือข้อตกลงข้างล่างนั้นไม่สามารถยอมรับได้ คุณอาจจะปิดการใช้งานความสามารถเหล่านั้น วิธีการปิดใช้งานความสามารถส่วนใดส่วนหนึ่งอาจจะพบได้ <a data-l10n-name="mozilla-disable-service-link">ที่นี่</a> คุณลักษณะและบริการอื่น ๆ สามารถปิดใช้งานได้ในค่ากำหนดแอปพลิเคชัน
+rights-safebrowsing = <strong>การเรียกดูแบบปลอดภัย: </strong>ไม่แนะนำให้ปิดใช้งานการเรียกดูแบบปลอดภัยเพราะอาจจะส่งผลให้คุณเข้าไปยังเว็บไซต์ที่ไม่ปลอดภัย ถ้าคุณต้องการปิดความสามารถนี้อย่างถาวร โปรแกรมทำตามขั้นตอนนี้:
+rights-safebrowsing-term-1 = เปิดการกำหนดลักษณะแอปพลิเคชัน
+rights-safebrowsing-term-2 = เลือก ความปลอดภัย
+rights-safebrowsing-term-3 = ยกเลิกการกาเครื่องหมายตัวเลือก "{ enableSafeBrowsing-label }"
+enableSafeBrowsing-label = ปิดกั้นเนื้อหาที่เป็นอันตรายและหลอกลวง
+rights-safebrowsing-term-4 = ปิดใช้งานการเรียกดูแบบปลอดภัยแล้ว
+rights-locationawarebrowsing = <strong>การเรียกดูที่ผูกพันกับสถานที่: </strong>เป็นการใช้งานตามความสมัครใจเสมอ ข้อมูลที่เกี่ยวข้องกับสถานที่จะไม่ถูกส่งออกหากคุณไม่อนุญาต ถ้าคุณต้องการปิดใช้งาน โปรดทำตามขั้นตอนนี้:
+rights-locationawarebrowsing-term-1 = ในแถบ URL พิมพ์ <code>about:config</code>
+rights-locationawarebrowsing-term-2 = พิมพ์ geo.enabled
+rights-locationawarebrowsing-term-3 = คลิกสองครั้งที่การกำหนดลักษณะ geo.enabled
+rights-locationawarebrowsing-term-4 = การเรียกดูที่ผูกพันกับสถานที่ถูกปิดใช้งานแล้ว
+rights-webservices-unbranded = ภาพรวมของบริการเว็บที่ได้รวมเข้าในผลิตภัณฑ์ รวมไปถึงวิธีใช้การยกเลิกใช้งานบริการเหล่านั้น ควรนำมารวมไว้ที่นี่
+rights-webservices-term-unbranded = ข้อกำหนดการของบริการใดๆ ที่เข้ากันควรจะแสดงไว้ที่นี่
+rights-webservices-term-1 = { -vendor-short-name } ตลอดจนผู้ร่วมสมทบ ผู้อนุญาตให้ใช้สิทธิ และภาคีได้ร่วมทำงานเพื่อสร้างฐานข้อมูลเว็บไซต์หลอกลวงและมัลแวร์ที่มีความเที่ยงตรงและทันสมัยที่สุด อย่างไรก็ตาม กลุ่มผู้ร่วมทำงานไม่สามารถรับประกันได้ว่าข้อมูลเหล่านี้จะครอบคลุมและปราศจากความผิดพลาด เว็บไซต์ที่มีความเสี่ยงบางเว็บอาจจะไม่ถูกบ่งชี้ว่าอันตรายและบางเว็บไซต์ที่ปลอดภัยอาจจะถูกบ่งชี้ว่าอันตรายได้
+rights-webservices-term-2 = { -vendor-short-name } อาจพิจารณายกเลิกหรือแก้ไขบริการเหล่านี้ได้ในภายหลัง
+rights-webservices-term-3 = คุณสามารถใช้บริการเหล่านี้ในรุ่นเพิ่มเติมของ { -brand-short-name } และ { -vendor-short-name } ให้สิทธิในการทำเช่นนั้น { -vendor-short-name } และเจ้าของสัญญาอนุญาตที่เกี่ยวข้องขอสงวนสิทธิ์ต่างๆ ในบริการ ข้อตกลงเหล่านี้ไม่ได้มีไว้เพื่อจำกัดสิทธิ์ที่ถูกให้ไว้ภายใต้สัญญาอนุญาตซอฟต์แวร์เปิดรหัสใดๆ ที่ { -brand-short-name } ใช้งานอยู่และที่สอดคล้องกับต้นรหัสของ { -brand-short-name }
+rights-webservices-term-4 = <strong>บริการเหล่านี้ได้รับการจัดหาให้ "ตามที่เป็น" { -vendor-short-name }, ผู้ร่วมสมทบ ผู้อนุญาตให้ใช้สิทธิ์ และผู้แจกจ่ายขอปฏิเสธการรับประกันใด ๆ ทั้งที่แจ้งไว้และโดยนัยยะ รวมถึงโดยไม่จำกัดเพียงการรับประกันว่าบริการนั้นสามารถใช้เพื่อการค้าได้และตรงตามความวัตถุประสงค์เฉพาะของคุณ คุณได้ยอมรับความเสี่ยงรวมไปถึงคุณภาพและประสิทธิภาพในการใช้บริการเพื่อวัตถุประสงค์ของคุณ เขตอำนาจศาลบางแห่งไม่อนุญาตการยกเว้นหรือจำกัดการรับประกันโดยนัยยะ ดังนั้นข้อความปฏิเสธความรับผิดนี้อาจจะไม่มีผลกับคุณ</strong>
+rights-webservices-term-5 = <strong>เว้นแต่ที่กฎหมายบังคับไว้ { -vendor-short-name } ผู้ร่วมสมทบ ผู้อนุญาตให้ใช้สิทธิ์ และผู้แจกจ่ายไม่พึงต้องรับผิดแก่ความเสียหายไม่ว่าจะในรูปแบบใด ไม่ว่าจะในทางตรงหรือทางอ้อมอันเนื่องมาจากการใช้งาน { -brand-short-name } และบริการต่าง ๆ ทั้งนี้ความเสียหายตามข้อตกลงข้างต้นนี้จะต้องไม่เกิน $500 (ห้าร้อยดอลลาร์สหรัฐอเมริกา) เขตอำนาจศาลบางแห่งไม่อนุญาตการยกเว้นหรือจำกัดความเสียหายบางประเภท ดังนั้นข้อความยกเว้นและข้อจำกัดเหล่านี้อาจไม่มีผลกับคุณ</strong>
+rights-webservices-term-6 = { -vendor-short-name } อาจแก้ไขข้อกำหนดเงื่อนไขเหล่านี้ได้ตามความจำเป็นเมื่อเวลาผ่านไป ข้อกำหนดเงื่อนไขเหล่านี้ไม่อาจถูกแก้ไขหรือยกเลิกได้โดยไม่มีข้อตกลงที่เป็นลายลักษณ์อักษรจาก { -vendor-short-name }.
+rights-webservices-term-7 = ข้อตกลงบริการเหล่านี้บังคับใช้โดยกฎหมายแห่งรัฐแคลิฟอร์เนีย ประเทศสหรัฐอเมริกา ทั้งนี้เว้นแต่มีข้อขัดแย้งของบทบัญญัติ หากส่วนหนึ่งส่วนใดของข้อกำหนดเงื่อนไขเหล่านี้เป็นโมฆะหรือไม่สามารถบังคับใช้ได้ ส่วนที่เหลือยังคงมีผลบังคับใช้เช่นเดิม ในกรณีที่เกิดความขัดแย้งระหว่างข้อกำหนดเงื่อนไขรุ่นที่แปลแล้วกับรุ่นภาษาอังกฤษ ให้ยึดถือรุ่นภาษาอังกฤษเป็นหลัก
diff --git a/l10n-th/toolkit/toolkit/about/aboutServiceWorkers.ftl b/l10n-th/toolkit/toolkit/about/aboutServiceWorkers.ftl
new file mode 100644
index 0000000000..d0e1c8823c
--- /dev/null
+++ b/l10n-th/toolkit/toolkit/about/aboutServiceWorkers.ftl
@@ -0,0 +1,35 @@
+# 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/.
+
+
+### The term "Service Workers" and "Workers" should not be translated
+
+about-service-workers-title = เกี่ยวกับ Service Workers
+about-service-workers-main-title = Service Worker ที่ลงทะเบียน
+about-service-workers-warning-not-enabled = ไม่ได้เปิดใช้งาน Service Workers
+about-service-workers-warning-no-service-workers = ไม่มี Service Workers ที่ได้ลงทะเบียนไว้
+# The original title of service workers' information
+#
+# Variables:
+# $originTitle: original title
+origin-title = แหล่งที่มา: { $originTitle }
+
+## These strings are for showing the information of workers.
+##
+## Variables:
+## $name: the name of scope, active cache, waiting cache and the push end point.
+## $url: the url of script specification and current worker.
+
+scope = <strong>ขอบเขต:</strong> { $name }
+script-spec = <strong>ข้อมูลจำเพาะของสคริปต์:</strong> <a data-l10n-name="link">{ $url }</a>
+current-worker-url = <strong>URL ของตัวทำงานปัจจุบัน:</strong> <a data-l10n-name="link">{ $url }</a>
+active-cache-name = <strong>ชื่อแคชที่ใช้งานอยู่:</strong> { $name }
+waiting-cache-name = <strong>ชื่อแคชที่กำลังรออยู่:</strong> { $name }
+push-end-point-waiting = <strong>จุดปลายทางการสื่อสารสำหรับรับแจ้งแบบทันที:</strong> { waiting }
+push-end-point-result = <strong>จุดปลายทางการสื่อสารสำหรับรับแจ้งแบบทันที:</strong> { $name }
+# This term is used as a button label (verb, not noun).
+update-button = อัปเดต
+unregister-button = เลิกลงทะเบียน
+unregister-error = ไม่สามารถเลิกลงทะเบียน Service Worker นี้
+waiting = กำลังรอ…
diff --git a/l10n-th/toolkit/toolkit/about/aboutSupport.ftl b/l10n-th/toolkit/toolkit/about/aboutSupport.ftl
new file mode 100644
index 0000000000..f6dd438c87
--- /dev/null
+++ b/l10n-th/toolkit/toolkit/about/aboutSupport.ftl
@@ -0,0 +1,410 @@
+# 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/.
+
+page-title = ข้อมูลการแก้ไขปัญหา
+page-subtitle = หน้านี้มีข้อมูลทางเทคนิคที่อาจเป็นประโยชน์เมื่อคุณกำลังพยายามแก้ไขปัญหา หากคุณกำลังมองหาคำตอบสำหรับคำถามที่พบบ่อยเกี่ยวกับ { -brand-short-name } ตรวจสอบ <a data-l10n-name="support-link">เว็บไซต์สนับสนุน</a> ของเรา
+crashes-title = รายงานข้อขัดข้อง
+crashes-id = ID รายงาน
+crashes-send-date = ส่งข้อมูลแล้ว
+crashes-all-reports = รายงานข้อขัดข้องทั้งหมด
+crashes-no-config = แอปพลิเคชันนี้ไม่ได้ถูกกำหนดค่าให้แสดงผลรายงานข้อข้อง
+support-addons-title = ส่วนเสริม
+support-addons-name = ชื่อ
+support-addons-type = ชนิด
+support-addons-enabled = ถูกเปิดใช้งาน
+support-addons-version = รุ่น
+support-addons-id = ID
+legacy-user-stylesheets-title = สไตล์ชีตผู้ใช้แบบเดิม
+legacy-user-stylesheets-enabled = ใช้งานอยู่
+legacy-user-stylesheets-stylesheet-types = สไตล์ชีต
+legacy-user-stylesheets-no-stylesheets-found = ไม่พบสไตล์ชีต
+security-software-title = ซอฟต์แวร์ความปลอดภัย
+security-software-type = ชนิด
+security-software-name = ชื่อ
+security-software-antivirus = ป้องกันไวรัส
+security-software-antispyware = ป้องกันสปายแวร์
+security-software-firewall = ไฟร์วอลล์
+features-title = คุณลักษณะของ { -brand-short-name }
+features-name = ชื่อ
+features-version = รุ่น
+features-id = ID
+processes-title = โปรเซสระยะไกล
+processes-type = ชนิด
+processes-count = ครั้ง
+app-basics-title = พื้นฐานแอปพลิเคชัน
+app-basics-name = ชื่อ
+app-basics-version = รุ่น
+app-basics-build-id = Build ID
+app-basics-distribution-id = ID การแจกจ่าย
+app-basics-update-channel = ช่องทางการอัปเดต
+# This message refers to the folder used to store updates on the device,
+# as in "Folder for updates". "Update" is a noun, not a verb.
+app-basics-update-dir =
+ { PLATFORM() ->
+ [linux] อัปเดตไดเรกทอรี
+ *[other] อัปเดตโฟลเดอร์
+ }
+app-basics-update-history = ประวัติการอัปเดต
+app-basics-show-update-history = แสดงประวัติการอัปเดต
+# Represents the path to the binary used to start the application.
+app-basics-binary = ไบนารีแอปพลิเคชัน
+app-basics-profile-dir =
+ { PLATFORM() ->
+ [linux] ไดเรกทอรีโปรไฟล์
+ *[other] โฟลเดอร์โปรไฟล์
+ }
+app-basics-enabled-plugins = ปลั๊กอินที่เปิดใช้งาน
+app-basics-build-config = การกำหนดค่าการสร้าง
+app-basics-user-agent = ตัวแทนผู้ใช้
+app-basics-os = ระบบปฏิบัติการ
+app-basics-os-theme = ชุดรูปแบบของระบบปฏิบัติการ
+# Rosetta is Apple's translation process to run apps containing x86_64
+# instructions on Apple Silicon. This should remain in English.
+app-basics-rosetta = แปลด้วย Rosetta
+app-basics-memory-use = หน่วยความจำที่ใช้
+app-basics-performance = ประสิทธิภาพ
+app-basics-service-workers = Service Worker ที่ลงทะเบียน
+app-basics-third-party = โมดูลบุคคลที่สาม
+app-basics-profiles = โปรไฟล์
+app-basics-launcher-process-status = โปรเซสของตัวเรียกใช้
+app-basics-multi-process-support = หน้าต่างแบบหลายโปรเซส
+app-basics-fission-support = หน้าต่าง Fission
+app-basics-remote-processes-count = โปรเซสระยะไกล
+app-basics-enterprise-policies = นโยบายองค์กร
+app-basics-location-service-key-google = คีย์ Google Location Service
+app-basics-safebrowsing-key-google = คีย์ Google Safebrowsing
+app-basics-key-mozilla = คีย์ Mozilla Location Service
+app-basics-safe-mode = โหมดปลอดภัย
+app-basics-memory-size = ขนาดหน่วยความจำ (RAM)
+app-basics-disk-available = พื้นที่ที่เหลือในดิสก์:
+app-basics-pointing-devices = อุปกรณ์ชี้ตำแหน่ง
+# Variables:
+# $value (number) - Amount of data being stored
+# $unit (string) - The unit of data being stored (e.g. MB)
+app-basics-data-size = { $value } { $unit }
+show-dir-label =
+ { PLATFORM() ->
+ [macos] แสดงใน Finder
+ [windows] เปิดโฟลเดอร์
+ *[other] เปิดไดเรกทอรี
+ }
+environment-variables-title = ตัวแปรสภาพแวดล้อม
+environment-variables-name = ชื่อ
+environment-variables-value = ค่า
+experimental-features-title = คุณลักษณะทดลอง
+experimental-features-name = ชื่อ
+experimental-features-value = ค่า
+modified-key-prefs-title = ค่ากำหนดสำคัญที่ถูกเปลี่ยนแปลง
+modified-prefs-name = ชื่อ
+modified-prefs-value = ค่า
+user-js-title = การกำหนดลักษณะ user.js
+user-js-description = โฟลเดอร์โปรไฟล์ของคุณมี <a data-l10n-name="user-js-link">ไฟล์ user.js</a> ซึ่งมีค่ากำหนดที่ไม่ได้ถูกสร้างโดย { -brand-short-name }
+locked-key-prefs-title = ค่ากำหนดสำคัญที่ถูกล็อค
+locked-prefs-name = ชื่อ
+locked-prefs-value = ค่า
+graphics-title = กราฟิก
+graphics-features-title = คุณลักษณะ
+graphics-diagnostics-title = การวินิจฉัย
+graphics-failure-log-title = รายการบันทึกความล้มเหลว
+graphics-gpu1-title = GPU #1
+graphics-gpu2-title = GPU #2
+graphics-decision-log-title = รายการบันทึกการตัดสินใจ
+graphics-crash-guards-title = คุณสมบัติที่ถูกปิดใช้งานโดย Crash Guard
+graphics-workarounds-title = วิธีการแก้ไข
+graphics-device-pixel-ratios = อัตราส่วนพิกเซลของอุปกรณ์ในหน้าต่าง
+# Windowing system in use on Linux (e.g. X11, Wayland).
+graphics-window-protocol = โปรโตคอลหน้าต่าง
+# Desktop environment in use on Linux (e.g. GNOME, KDE, XFCE, etc).
+graphics-desktop-environment = สภาพแวดล้อมเดสก์ท็อป
+place-database-title = ฐานข้อมูลสถานที่
+place-database-stats = สถิติ
+place-database-stats-show = แสดงสถิติ
+place-database-stats-hide = ซ่อนสถิติ
+place-database-stats-entity = เอนทิตี
+place-database-stats-count = จำนวน
+place-database-stats-size-kib = ขนาด (KiB)
+place-database-stats-size-perc = ขนาด (%)
+place-database-stats-efficiency-perc = ประสิทธิภาพ (%)
+place-database-stats-sequentiality-perc = ความเป็นลำดับ (%)
+place-database-integrity = ความสมบูรณ์
+place-database-verify-integrity = ยืนยันความสมบูรณ์
+a11y-title = การช่วยการเข้าถึง
+a11y-activated = เปิดใช้งานแล้ว
+a11y-force-disabled = ป้องกันการช่วยการเข้าถึง
+a11y-handler-used = ใช้ตัวจัดการที่เข้าถึงได้
+a11y-instantiator = ตัวสร้างอินสแตนซ์การช่วยการเข้าถึง
+library-version-title = รุ่น Library
+copy-text-to-clipboard-label = คัดลอกข้อความไปยังคลิปบอร์ด
+copy-raw-data-to-clipboard-label = คัดลอกข้อมูลดิบไปยังคลิปบอร์ด
+sandbox-title = กระบะทราย
+sandbox-sys-call-log-title = ปฏิเสธการเรียกของระบบ
+sandbox-sys-call-index = #
+sandbox-sys-call-age = วินาทีที่แล้ว
+sandbox-sys-call-pid = PID
+sandbox-sys-call-tid = TID
+sandbox-sys-call-proc-type = ชนิดโปรเซส
+sandbox-sys-call-number = การเรียกของระบบ
+sandbox-sys-call-args = อาร์กิวเมนต์
+troubleshoot-mode-title = วินิจฉัยปัญหา
+restart-in-troubleshoot-mode-label = โหมดแก้ไขปัญหา…
+clear-startup-cache-title = ลองล้างแคชเมื่อเริ่มการทำงาน
+clear-startup-cache-label = ล้างแคชเมื่อเริ่มการทำงาน…
+startup-cache-dialog-title2 = ต้องการเริ่มการทำงาน { -brand-short-name } ใหม่เพื่อล้างแคชการเริ่มการทำงานหรือไม่
+startup-cache-dialog-body2 = การดำเนินการนี้จะไม่เปลี่ยนการตั้งค่าของคุณหรือเอาส่วนขยายของคุณออก
+restart-button-label = เริ่มการทำงานใหม่
+
+## Media titles
+
+audio-backend = แบ็กเอนด์เสียง
+max-audio-channels = จำนวนแชนเนลสูงสุด
+sample-rate = อัตราการสุ่มตัวอย่างที่ต้องการ
+roundtrip-latency = เวลาหน่วงในการเดินทางแบบเป็นรอบ (ค่าเบี่ยงเบนมาตรฐาน)
+media-title = สื่อ
+media-output-devices-title = อุปกรณ์ส่งออก
+media-input-devices-title = อุปกรณ์รับข้อมูล
+media-device-name = ชื่อ
+media-device-group = กลุ่ม
+media-device-vendor = ผู้จำหน่าย
+media-device-state = สถานะ
+media-device-preferred = ที่ต้องการ
+media-device-format = รูปแบบ
+media-device-channels = ช่อง
+media-device-rate = อัตรา
+media-device-latency = เวลาแฝง
+media-capabilities-title = ความสามารถของสื่อ
+media-codec-support-info = ข้อมูลการสนับสนุนตัวแปลงสัญญาณ
+# List all the entries of the database.
+media-capabilities-enumerate = แจงนับฐานข้อมูล
+
+## Codec support table
+
+media-codec-support-sw-decoding = การถอดรหัสด้วยซอฟต์แวร์
+media-codec-support-hw-decoding = การถอดรหัสด้วยฮาร์ดแวร์
+media-codec-support-codec-name = ชื่อตัวแปลงสัญญาณ
+media-codec-support-supported = รองรับ
+media-codec-support-unsupported = ไม่รองรับ
+media-codec-support-error = ข้อมูลการรองรับโคเดกไม่พร้อมใช้ โปรดลองอีกครั้งหลังจากเล่นไฟล์สื่อแล้ว
+media-codec-support-lack-of-extension = ติดตั้งส่วนขยาย
+
+## Media Content Decryption Modules (CDM)
+## See EME Spec for more explanation for following technical terms
+## https://w3c.github.io/encrypted-media/
+
+media-content-decryption-modules-title = ข้อมูลโมดูลถอดรหัสเนื้อหา
+media-key-system-name = ชื่อระบบคีย์
+media-video-robustness = ความคงทนของข้อมูลภาพ
+media-audio-robustness = ความคงทนของข้อมูลเสียง
+media-cdm-capabilities = ความสามารถ
+# Clear Lead isn't defined in the spec, which means the the first few seconds
+# are not encrypted. It allows playback to start without having to wait for
+# license response, improving video start time and user experience.
+media-cdm-clear-lead = ส่วนนำที่ไม่เข้ารหัส (Clear Lead)
+# We choose 2.2 as this is the version which the video provider usually want to have in order to stream 4K video securely
+# HDCP version https://w3c.github.io/encrypted-media/#idl-def-hdcpversion
+media-hdcp-22-compatible = รองรับ HDCP 2.2
+
+##
+
+intl-title = การทำให้เป็นสากลและการแปลเป็นภาษาท้องถิ่น
+intl-app-title = การตั้งค่าแอปพลิเคชัน
+intl-locales-requested = ภาษาที่ขอ
+intl-locales-available = ภาษาที่มี
+intl-locales-supported = ภาษาของแอป
+intl-locales-default = ภาษาเริ่มต้น
+intl-os-title = ระบบปฏิบัติการ
+intl-os-prefs-system-locales = ภาษาของระบบ
+intl-regional-prefs = การกำหนดลักษณะภูมิภาค
+
+## Remote Debugging
+##
+## The Firefox remote protocol provides low-level debugging interfaces
+## used to inspect state and control execution of documents,
+## browser instrumentation, user interaction simulation,
+## and for subscribing to browser-internal events.
+##
+## See also https://firefox-source-docs.mozilla.org/remote/
+
+remote-debugging-title = การดีบั๊กระยะไกล (โปรโตคอล Chromium)
+remote-debugging-accepting-connections = การยอมรับการเชื่อมต่อ
+remote-debugging-url = URL
+
+##
+
+# Variables
+# $days (Integer) - Number of days of crashes to log
+report-crash-for-days = รายงานข้อขัดข้องของ { $days } วันที่ผ่านมา
+# Variables
+# $minutes (integer) - Number of minutes since crash
+crashes-time-minutes = { $minutes } นาทีที่แล้ว
+# Variables
+# $hours (integer) - Number of hours since crash
+crashes-time-hours = { $hours } ชั่วโมงที่แล้ว
+# Variables
+# $days (integer) - Number of days since crash
+crashes-time-days = { $days } วันที่แล้ว
+# Variables
+# $reports (integer) - Number of pending reports
+pending-reports = รายงานข้อขัดข้องทั้งหมด (รวม { $reports } ข้อขัดข้องที่ยังไม่ได้รายงานในช่วงเวลาที่กำหนด)
+raw-data-copied = คัดลอกข้อมูลดิบไปยังคลิปบอร์ดแล้ว
+text-copied = คัดลอกข้อความไปยังคลิปบอร์ดแล้ว
+
+## The verb "blocked" here refers to a graphics feature such as "Direct2D" or "OpenGL layers".
+
+blocked-driver = ถูกปิดกั้นจากรุ่นไดรเวอร์กราฟิกของคุณ
+blocked-gfx-card = ถูกปิดกั้นจากการ์ดกราฟิกของคุณเนื่องจากปัญหาไดรเวอร์ที่ยังไม่ได้รับการแก้ไข
+blocked-os-version = ถูกปิดกั้นจากรุ่นระบบปฏิบัติการของคุณ
+blocked-mismatched-version = ถูกปิดกั้นจากรุ่นไดรเวอร์กราฟิกของคุณไม่ตรงกันระหว่าง registry และ DLL
+# Variables
+# $driverVersion - The graphics driver version string
+try-newer-driver = ถูกปิดกั้นจากรุ่นไดรเวอร์กราฟิกของคุณ ลองปรับปรุงไดรเวอร์กราฟิกของคุณเป็นรุ่น { $driverVersion } หรือใหม่กว่า
+# "ClearType" is a proper noun and should not be translated. Feel free to leave English strings if
+# there are no good translations, these are only used in about:support
+clear-type-parameters = พารามิเตอร์ ClearType
+compositing = การจัดองค์ประกอบ
+support-font-determination = ข้อมูลดีบั๊กการมองเห็นแบบอักษร
+hardware-h264 = การถอดรหัสฮาร์ดแวร์ H264
+main-thread-no-omtc = เธรดหลัก ไม่มี OMTC
+yes = ใช่
+no = ไม่
+unknown = ไม่ทราบ
+virtual-monitor-disp = จอแสดงผลเสมือนจริง
+
+## The following strings indicate if an API key has been found.
+## In some development versions, it's expected for some API keys that they are
+## not found.
+
+found = พบ
+missing = หายไป
+gpu-process-pid = GPUProcessPid
+gpu-process = GPUProcess
+gpu-description = คำอธิบาย
+gpu-vendor-id = ID ผู้จำหน่าย
+gpu-device-id = ID อุปกรณ์
+gpu-subsys-id = Subsys ID
+gpu-drivers = ไดรเวอร์
+gpu-ram = RAM
+gpu-driver-vendor = ผู้จำหน่ายไดรเวอร์
+gpu-driver-version = รุ่นไดรเวอร์
+gpu-driver-date = วันที่ไดรเวอร์
+gpu-active = ใช้งานอยู่
+webgl1-wsiinfo = ข้อมูลไดรเวอร์ WebGL 1
+webgl1-renderer = ตัวเรนเดอร์ไดรเวอร์ WebGL 1
+webgl1-version = รุ่นไดรเวอร์ WebGL 1
+webgl1-driver-extensions = ส่วนขยายไดรเวอร์ WebGL 1
+webgl1-extensions = ส่วนขยาย WebGL 1
+webgl2-wsiinfo = ข้อมูลไดรเวอร์ WebGL 2
+webgl2-renderer = ตัวเรนเดอร์ไดรเวอร์ WebGL 2
+webgl2-version = รุ่นไดรเวอร์ WebGL 2
+webgl2-driver-extensions = ส่วนขยายไดรเวอร์ WebGL 2
+webgl2-extensions = ส่วนขยาย WebGL 2
+webgpu-default-adapter = อะแดปเตอร์เริ่มต้นของ WebGPU
+webgpu-fallback-adapter = อะแดปเตอร์สำรองของ WebGPU
+# Variables
+# $bugNumber (string) - Bug number on Bugzilla
+support-blocklisted-bug = ถูกเพิ่มในรายการปิดกั้นเนื่องจากมีปัญหาที่ทราบสาเหตุ: <a data-l10n-name="bug-link">bug { $bugNumber }</a>
+# Variables
+# $failureCode (string) - String that can be searched in the source tree.
+unknown-failure = ถูกเพิ่มในรายการปิดกั้นแล้ว; รหัสความล้มเหลว { $failureCode }
+d3d11layers-crash-guard = คอมโพสิเตอร์ D3D11
+glcontext-crash-guard = OpenGL
+wmfvpxvideo-crash-guard = ตัวถอดรหัสวิดีโอ WMF VPX
+reset-on-next-restart = กลับค่าเดิมเมื่อเริ่มการทำงานใหม่ในครั้งถัดไป
+gpu-process-kill-button = สิ้นสุดโปรเซส GPU
+gpu-device-reset = การกลับค่าเดิมของอุปกรณ์
+gpu-device-reset-button = ทริกเกอร์การกลับค่าเดิมของอุปกรณ์
+uses-tiling = ใช้ Tiling
+content-uses-tiling = ใช้ Tiling (เนื้อหา)
+off-main-thread-paint-enabled = เปิดใช้งาน Off Main Thread Painting แล้ว
+off-main-thread-paint-worker-count = จำนวนตัวทำงาน Off Main Thread Painting
+target-frame-rate = อัตราเฟรมเป้าหมาย
+min-lib-versions = รุ่นต่ำสุดที่ใช้ได้
+loaded-lib-versions = รุ่นที่ใช้อยู่
+has-seccomp-bpf = Seccomp-BPF (System Call Filtering)
+has-seccomp-tsync = Seccomp Thread Synchronization
+has-user-namespaces = เนมสเปซผู้ใช้
+has-privileged-user-namespaces = เนมสเปซผู้ใช้สำหรับโปรเซสที่ได้รับสิทธิ์
+can-sandbox-content = Content Process Sandboxing
+can-sandbox-media = Media Plugin Sandboxing
+content-sandbox-level = ระดับ Sandbox ของโปรเซสเนื้อหา
+effective-content-sandbox-level = ระดับ Sandbox ของโปรเซสเนื้อหาที่มีประสิทธิภาพ
+content-win32k-lockdown-state = สถานะล็อกดาวน์ของ Win32k สำหรับการประมวลผลเนื้อหา
+support-sandbox-gpu-level = ระดับ Sandbox ของโปรเซส GPU
+sandbox-proc-type-content = เนื้อหา
+sandbox-proc-type-file = เนื้อหาไฟล์
+sandbox-proc-type-media-plugin = ปลั๊กอินสื่อ
+sandbox-proc-type-data-decoder = ตัวถอดรหัสข้อมูล
+startup-cache-title = แคชเมื่อเริ่มการทำงาน
+startup-cache-disk-cache-path = เส้นทางแคชดิสก์
+startup-cache-ignore-disk-cache = ละเว้นแคชดิสก์
+startup-cache-found-disk-cache-on-init = แคชดิสก์ที่พบเมื่อเตรียมใช้งาน
+startup-cache-wrote-to-disk-cache = ที่เขียนลงในแคชดิสก์
+launcher-process-status-0 = เปิดใช้งานอยู่
+launcher-process-status-1 = ถูกปิดใช้งานเนื่องจากความล้มเหลว
+launcher-process-status-2 = ถูกปิดใช้งานโดยการบังคับ
+launcher-process-status-unknown = ไม่ทราบสถานะ
+# Variables
+# $remoteWindows (integer) - Number of remote windows
+# $totalWindows (integer) - Number of total windows
+multi-process-windows = { $remoteWindows }/{ $totalWindows }
+# Variables
+# $fissionWindows (integer) - Number of remote windows
+# $totalWindows (integer) - Number of total windows
+fission-windows = { $fissionWindows }/{ $totalWindows }
+fission-status-experiment-control = ถูกปิดใช้งานโดยการทดสอบ
+fission-status-experiment-treatment = ถูกเปิดใช้งานโดยการทดสอบ
+fission-status-disabled-by-e10s-env = ถูกปิดใช้งานโดยสภาพแวดล้อม
+fission-status-enabled-by-env = ถูกเปิดใช้งานโดยสภาพแวดล้อม
+fission-status-disabled-by-env = ถูกปิดใช้งานโดยสภาพแวดล้อม
+fission-status-enabled-by-default = ถูกเปิดใช้งานตามค่าเริ่มต้น
+fission-status-disabled-by-default = ถูกปิดใช้งานตามค่าเริ่มต้น
+fission-status-enabled-by-user-pref = ถูกเปิดใช้งานโดยผู้ใช้
+fission-status-disabled-by-user-pref = ถูกปิดใช้งานโดยผู้ใช้
+fission-status-disabled-by-e10s-other = ปิดใช้งาน E10s แล้ว
+fission-status-enabled-by-rollout = เปิดใช้งานโดย phased rollout
+async-pan-zoom = การเลื่อน/ซูมแบบอะซิงโครนัส
+apz-none = ไม่มี
+wheel-enabled = เปิดใช้งานการป้อนข้อมูลด้วยล้อแล้ว
+touch-enabled = เปิดใช้งานการป้อนข้อมูลด้วยการสัมผัสแล้ว
+drag-enabled = เปิดใช้งานการลากแถบเลื่อนแล้ว
+keyboard-enabled = เปิดใช้งานแป้นพิมพ์แล้ว
+autoscroll-enabled = เปิดใช้งานการเลื่อนอัตโนมัติแล้ว
+zooming-enabled = เปิดใช้งานการซูมโดยการหุบ/กางนิ้วแบบราบรื่นแล้ว
+
+## Variables
+## $preferenceKey (string) - String ID of preference
+
+wheel-warning = การป้อนข้อมูลด้วยล้อแบบอะซิงโครนัสถูกปิดใช้งานเนื่องจากค่ากำหนดที่ไม่รองรับ: { $preferenceKey }
+touch-warning = การป้อนข้อมูลด้วยการสัมผัสแบบอะซิงโครนัสถูกปิดใช้งานเนื่องจากค่ากำหนดที่ไม่รองรับ: { $preferenceKey }
+
+## Strings representing the status of the Enterprise Policies engine.
+
+policies-inactive = ไม่มีการใช้งานอยู่
+policies-active = ใช้งานอยู่
+policies-error = ข้อผิดพลาด
+
+## Printing section
+
+support-printing-title = การพิมพ์
+support-printing-troubleshoot = การแก้ไขปัญหา
+support-printing-clear-settings-button = ล้างการตั้งค่าการพิมพ์ที่บันทึกไว้
+support-printing-modified-settings = การตั้งค่าการพิมพ์ที่ถูกเปลี่ยนแปลง
+support-printing-prefs-name = ชื่อ
+support-printing-prefs-value = ค่า
+
+## Normandy sections
+
+support-remote-experiments-title = คุณลักษณะทดลองระยะไกล
+support-remote-experiments-name = ชื่อ
+support-remote-experiments-branch = สาขาการทดลอง
+support-remote-experiments-see-about-studies = ดูที่ <a data-l10n-name="support-about-studies-link">about:studies</a> สำหรับข้อมูลเพิ่มเติม รวมถึงวิธีการปิดใช้งานคุณลักษณะทดลองแต่ละอย่าง หรือปิดใช้งานไม่ให้ { -brand-short-name } เรียกใช้คุณลักษณะทดสอบชนิดนี้อีกในอนาคต
+support-remote-features-title = คุณลักษณะระยะไกล
+support-remote-features-name = ชื่อ
+support-remote-features-status = สถานะ
+
+## Pointing devices
+
+pointing-device-mouse = เมาส์
+pointing-device-touchscreen = หน้าจอสัมผัส
+pointing-device-pen-digitizer = ปากกาดิจิตอล
+pointing-device-none = ไม่มีอุปกรณ์ชี้ตำแหน่ง
diff --git a/l10n-th/toolkit/toolkit/about/aboutTelemetry.ftl b/l10n-th/toolkit/toolkit/about/aboutTelemetry.ftl
new file mode 100644
index 0000000000..a586bb6a3f
--- /dev/null
+++ b/l10n-th/toolkit/toolkit/about/aboutTelemetry.ftl
@@ -0,0 +1,135 @@
+# 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/.
+
+about-telemetry-ping-data-source = แหล่งข้อมูล Ping:
+about-telemetry-show-current-data = ข้อมูลปัจจุบัน
+about-telemetry-show-archived-ping-data = ข้อมูล ping ที่เก็บถาวร
+about-telemetry-show-subsession-data = แสดงข้อมูลการส่ง
+about-telemetry-choose-ping = เลือก ping:
+about-telemetry-archive-ping-type = ชนิด Ping
+about-telemetry-archive-ping-header = Ping
+about-telemetry-option-group-today = วันนี้
+about-telemetry-option-group-yesterday = เมื่อวานนี้
+about-telemetry-option-group-older = เก่ากว่า
+about-telemetry-previous-ping = <<
+about-telemetry-next-ping = >>
+about-telemetry-page-title = ข้อมูลการวัดและส่งข้อมูลทางไกล
+about-telemetry-current-store = ส่วนจัดเก็บปัจจุบัน:
+about-telemetry-more-information = กำลังมองหาข้อมูลเพิ่มเติม?
+about-telemetry-firefox-data-doc = <a data-l10n-name="data-doc-link">เอกสารข้อมูล Firefox</a> มีคำแนะนำเกี่ยวกับวิธีการทำงานกับเครื่องมือข้อมูลของเรา
+about-telemetry-telemetry-client-doc = <a data-l10n-name="client-doc-link">เอกสารเกี่ยวกับไคลเอนต์การวัดและส่งข้อมูลทางไกลของ Firefox</a> มีคำจำกัดความสำหรับหลักการทำงาน, เอกสาร API และการอ้างอิงข้อมูล
+about-telemetry-telemetry-dashboard = <a data-l10n-name="dashboard-link">แดชบอร์ดการวัดและส่งข้อมูลทางไกล</a>ช่วยให้คุณเห็นภาพข้อมูลที่ Mozilla ได้รับผ่านการวัดและส่งข้อมูลทางไกล
+about-telemetry-telemetry-probe-dictionary = <a data-l10n-name="probe-dictionary-link">Probe Dictionary</a> มีรายละเอียดและคำอธิบายสำหรับโพรบที่รวบรวมโดยการวัดและส่งข้อมูลทางไกล
+about-telemetry-show-in-Firefox-json-viewer = เปิดในตัวดู JSON
+about-telemetry-home-section = หน้าแรก
+about-telemetry-general-data-section = ข้อมูลทั่วไป
+about-telemetry-environment-data-section = ข้อมูลสภาพแวดล้อม
+about-telemetry-session-info-section = ข้อมูลวาระ
+about-telemetry-scalar-section = สเกลาร์
+about-telemetry-keyed-scalar-section = สเกลาร์ที่สำคัญ
+about-telemetry-histograms-section = ฮิสโทแกรม
+about-telemetry-keyed-histogram-section = ฮิสโทแกรมที่สำคัญ
+about-telemetry-events-section = เหตุการณ์
+about-telemetry-simple-measurements-section = การวัดอย่างง่าย
+about-telemetry-slow-sql-section = คำสั่ง SQL ที่ช้า
+about-telemetry-addon-details-section = รายละเอียดส่วนเสริม
+about-telemetry-late-writes-section = การเขียนทีหลัง
+about-telemetry-raw-payload-section = ส่วนข้อมูลดิบ
+about-telemetry-raw = ข้อมูลดิบ JSON
+about-telemetry-full-sql-warning = หมายเหตุ: การดีบั๊ก SQL ที่ทำงานช้าถูกเปิดใช้งาน คำสั่ง SQL แบบเต็มอาจถูกแสดงไว้ด้านล่างแต่จะไม่ถูกส่งออกไป
+about-telemetry-fetch-stack-symbols = ดึงข้อมูลชื่อของฟังก์ชันสำหรับสแตก
+about-telemetry-hide-stack-symbols = แสดงข้อมูลสแตกดิบ
+# Selects the correct release version
+# Variables:
+# $channel (String): represents the corresponding release data string
+about-telemetry-data-type =
+ { $channel ->
+ [release] ข้อมูลการเปิดตัว
+ *[prerelease] ข้อมูลก่อนเปิดตัว
+ }
+# Selects the correct upload string
+# Variables:
+# $uploadcase (String): represents a corresponding upload string
+about-telemetry-upload-type =
+ { $uploadcase ->
+ [enabled] เปิดใช้งานแล้ว
+ *[disabled] ปิดใช้งานแล้ว
+ }
+# Example Output: 1 sample, average = 0, sum = 0
+# Variables:
+# $sampleCount (Integer): amount of histogram samples
+# $prettyAverage (Integer): average of histogram samples
+# $sum (Integer): sum of histogram samples
+about-telemetry-histogram-stats =
+ { $sampleCount ->
+ *[other] { $sampleCount } ตัวอย่าง, เฉลี่ย = { $prettyAverage }, ผลรวม = { $sum }
+ }
+# Variables:
+# $telemetryServerOwner (String): the value of the toolkit.telemetry.server_owner preference. Typically "Mozilla"
+about-telemetry-page-subtitle = หน้านี้แสดงข้อมูลเกี่ยวกับประสิทธิภาพ, ฮาร์ดแวร์, การใช้งาน และการปรับแต่งที่เก็บรวบรวมไว้โดยตัววัดและส่งข้อมูลทางไกล ข้อมูลนี้จะถูกส่งไปยัง { $telemetryServerOwner } เพื่อช่วยปรับปรุง { -brand-full-name }
+about-telemetry-settings-explanation = การวัดและส่งข้อมูลทางไกลกำลังรวบรวม { about-telemetry-data-type } และการอัปโหลด<a data-l10n-name="upload-link">{ about-telemetry-upload-type }</a>
+# Variables:
+# $name (String): ping name, e.g. “saved-session”
+# $timeStamp (String): ping localized timestamp, e.g. “2017/07/08 10:40:46”
+about-telemetry-ping-details = ข้อมูลแต่ละชิ้นจะถูกส่งไปรวมไว้ใน “<a data-l10n-name="ping-link">pings</a>” คุณกำลังดู ping { $name }, { $timestamp }
+about-telemetry-data-details-current = ข้อมูลแต่ละชิ้นจะถูกส่งไปรวมไว้ใน “<a data-l10n-name="ping-link">pings</a>” คุณกำลังดูข้อมูลปัจจุบัน
+# string used as a placeholder for the search field
+# More info about it can be found here:
+# https://firefox-source-docs.mozilla.org/toolkit/components/telemetry/telemetry/data/main-ping.html
+# Variables:
+# $selectedTitle (String): the section name from the structure of the ping.
+about-telemetry-filter-placeholder =
+ .placeholder = ค้นหาใน { $selectedTitle }
+about-telemetry-filter-all-placeholder =
+ .placeholder = ค้นหาในส่วนทั้งหมด
+# Variables:
+# $searchTerms (String): the searched terms
+about-telemetry-results-for-search = ผลลัพธ์สำหรับ “{ $searchTerms }”
+# More info about it can be found here: https://firefox-source-docs.mozilla.org/toolkit/components/telemetry/telemetry/data/main-ping.html
+# Variables:
+# $sectionName (String): the section name from the structure of the ping.
+# $currentSearchText (String): the current text in the search input
+about-telemetry-no-search-results = ขออภัย! ไม่มีผลลัพธ์ใน { $sectionName } สำหรับ “{ $currentSearchText }”
+# Variables:
+# $searchTerms (String): the searched terms
+about-telemetry-no-search-results-all = ขออภัย! ไม่มีผลลัพธ์ในส่วนใด ๆ สำหรับ “{ $searchTerms }”
+# This message is displayed when a section is empty.
+# Variables:
+# $sectionName (String): is replaced by the section name.
+about-telemetry-no-data-to-display = ขออภัย! ขณะนี้ไม่มีข้อมูลใน “{ $sectionName }”
+# used as a tooltip for the “current” ping title in the sidebar
+about-telemetry-current-data-sidebar = ข้อมูลปัจจุบัน
+# used in the “Ping Type” select
+about-telemetry-telemetry-ping-type-all = ทั้งหมด
+# button label to copy the histogram
+about-telemetry-histogram-copy = คัดลอก
+# these strings are used in the “Slow SQL Statements” section
+about-telemetry-slow-sql-main = คำสั่ง SQL ที่ช้าในเธรดหลัก
+about-telemetry-slow-sql-other = คำสั่ง SQL ที่ช้าในเธรดตัวช่วย
+about-telemetry-slow-sql-hits = ครั้ง
+about-telemetry-slow-sql-average = เวลาเฉลี่ย (ms)
+about-telemetry-slow-sql-statement = คำสั่ง
+# these strings are used in the “Add-on Details” section
+about-telemetry-addon-table-id = ID ส่วนเสริม
+about-telemetry-addon-table-details = รายละเอียด
+# Variables:
+# $addonProvider (String): the name of an Add-on Provider (e.g. “XPI”, “Plugin”)
+about-telemetry-addon-provider = ผู้ให้บริการ { $addonProvider }
+about-telemetry-keys-header = คุณสมบัติ
+about-telemetry-names-header = ชื่อ
+about-telemetry-values-header = ค่า
+# Variables:
+# $lateWriteCount (Integer): the number of the late writes
+about-telemetry-late-writes-title = การเขียนภายหลัง #{ $lateWriteCount }
+about-telemetry-stack-title = สแตก:
+about-telemetry-memory-map-title = ผังหน่วยความจำ:
+about-telemetry-error-fetching-symbols = เกิดข้อผิดพลาดระหว่างการดึงข้อมูลสัญลักษณ์ ตรวจสอบว่าคุณเชื่อมต่อกับอินเทอร์เน็ตอยู่แล้วลองใหม่อีกครั้ง
+about-telemetry-time-stamp-header = บันทึกเวลา
+about-telemetry-category-header = หมวดหมู่
+about-telemetry-method-header = วิธีการ
+about-telemetry-object-header = วัตถุ
+about-telemetry-extra-header = พิเศษ
+# Variables:
+# $process (String): type of process in subsection headers ( e.g. "content", "parent" )
+about-telemetry-process = โปรเซส { $process }
diff --git a/l10n-th/toolkit/toolkit/about/aboutThirdParty.ftl b/l10n-th/toolkit/toolkit/about/aboutThirdParty.ftl
new file mode 100644
index 0000000000..f281dd9c71
--- /dev/null
+++ b/l10n-th/toolkit/toolkit/about/aboutThirdParty.ftl
@@ -0,0 +1,83 @@
+# 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/.
+
+third-party-page-title = ข้อมูลโมดูลบุคคลที่สาม
+third-party-section-title = รายการโมดูลบุคคลที่สามใน { -brand-short-name }
+third-party-intro =
+ หน้านี้แสดงโมดูลบุคคลที่สามซึ่งถูกส่งเข้าไปใน { -brand-short-name } ของคุณ
+ โมดูลใด ๆ ที่ไม่ได้ลงลายเซ็นโดย Microsoft หรือ
+ { -vendor-short-name } ถือเป็นโมดูลของบุคคลที่สาม
+third-party-message-empty = ไม่พบโมดูลของบุคคลที่สาม
+third-party-message-no-duration = ไม่ได้บันทึก
+third-party-detail-version = รุ่นไฟล์
+third-party-detail-vendor = ข้อมูลผู้จำหน่าย
+third-party-detail-occurrences = จำนวนเหตุการณ์
+ .title = จำนวนครั้งที่โหลดโมดูลนี้
+third-party-detail-duration = เวลาที่ใช้ในการปิดกั้นโดยเฉลี่ย (ms)
+ .title = ระยะเวลาที่โมดูลนี้ถูกปิดกั้น
+third-party-detail-app = แอปพลิเคชัน
+third-party-detail-publisher = ผู้เผยแพร่
+third-party-th-process = กระบวนการ
+third-party-th-duration = ระยะเวลาในการโหลด (ms)
+third-party-th-status = สถานะ
+third-party-tag-ime = IME
+ .title = โมดูลชนิดนี้จะถูกโหลดเมื่อคุณใช้งาน IME ของบุคคลที่สาม
+third-party-tag-shellex = ส่วนขยายของ Shell
+ .title = โมดูลชนิดนี้จะถูกโหลดเมื่อคุณเปิดกล่องโต้ตอบไฟล์ของระบบ
+third-party-tag-background = เบื้องหลัง
+ .title = โมดูลนี้ไม่ปิดกั้นแอปพลิเคชันเพราะถูกโหลดในเบื้องหลัง
+third-party-icon-unsigned =
+ .title = โมดูลนี้ไม่มีการลงลายเซ็น
+ .alt = โมดูลนี้ไม่มีการลงลายเซ็น
+third-party-icon-warning =
+ .title = { -brand-short-name } ขัดข้องในโค้ดจากโมดูลนี้
+ .alt = { -brand-short-name } ขัดข้องในโค้ดจากโมดูลนี้
+third-party-status-loaded = โหลดแล้ว
+third-party-status-blocked = ถูกปิดกั้น
+third-party-status-redirected = ถูกเปลี่ยนเส้นทาง
+third-party-button-copy-to-clipboard = คัดลอกข้อมูลดิบไปยังคลิปบอร์ด
+third-party-loading-data =
+ .alt = กำลังโหลดข้อมูลระบบ…
+ .title = กำลังโหลดข้อมูลระบบ…
+third-party-button-reload = โหลดใหม่ด้วยข้อมูลระบบ
+ .title = โหลดใหม่ด้วยข้อมูลระบบ
+third-party-button-open =
+ .title = เปิดตำแหน่งที่ตั้งไฟล์…
+third-party-button-to-block =
+ .title = ปิดกั้นโมดูลนี้
+ .aria-label = ปิดกั้นโมดูลนี้
+third-party-button-to-unblock =
+ .title = ขณะนี้ถูกปิดกั้นอยู่ คลิกเพื่อเลิกปิดกั้น
+ .aria-label = ขณะนี้ถูกปิดกั้นอยู่ คลิกเพื่อเลิกปิดกั้น
+third-party-button-to-unblock-disabled =
+ .title =
+ ขณะนี้ถูกทำเครื่องหมายว่าปิดกั้นอยู่ แม้ว่ารายการปิดกั้นจะถูกปิดใช้งานในการเรียกใช้
+ { -brand-short-name } ครั้งนี้ก็ตาม คลิกเพื่อเลิกปิดกั้น
+ .aria-label =
+ ขณะนี้ถูกทำเครื่องหมายว่าปิดกั้นอยู่ แม้ว่ารายการปิดกั้นจะถูกปิดใช้งานในการเรียกใช้
+ { -brand-short-name } ครั้งนี้ก็ตาม คลิกเพื่อเลิกปิดกั้น
+third-party-button-to-block-module = ปิดกั้นโมดูลนี้
+ .title = ปิดกั้นโมดูลนี้
+ .aria-label = ปิดกั้นโมดูลนี้
+third-party-button-to-unblock-module = เลิกปิดกั้นโมดูลนี้
+ .title = ขณะนี้ถูกปิดกั้นอยู่ คลิกเพื่อเลิกปิดกั้น
+ .aria-label = ขณะนี้ถูกปิดกั้นอยู่ คลิกเพื่อเลิกปิดกั้น
+third-party-button-to-unblock-module-disabled = เลิกปิดกั้นโมดูลนี้ (รายการปิดกั้นถูกปิดใช้งานอยู่ในขณะนี้)
+ .title =
+ ขณะนี้ถูกทำเครื่องหมายว่าปิดกั้นอยู่ แม้ว่ารายการปิดกั้นจะถูกปิดใช้งานในการเรียกใช้
+ { -brand-short-name } ครั้งนี้ คลิกเพื่อเลิกปิดกั้นโมดูล
+ .aria-label =
+ ขณะนี้ถูกทำเครื่องหมายว่าปิดกั้นอยู่ แม้ว่ารายการปิดกั้นจะถูกปิดใช้งานในการเรียกใช้
+ { -brand-short-name } ครั้งนี้ คลิกเพื่อเลิกปิดกั้นโมดูล
+third-party-button-expand =
+ .title = แสดงข้อมูลโดยละเอียด
+third-party-button-collapse =
+ .title = ยุบข้อมูลโดยละเอียด
+third-party-blocking-requires-restart = หากต้องการบล็อกโมดูลของบุคคลที่สาม { -brand-short-name } ต้องเริ่มการทำงานใหม่
+third-party-should-restart-title = เริ่มการทำงาน { -brand-short-name } ใหม่
+third-party-restart-now = เริ่มการทำงานใหม่ตอนนี้
+third-party-restart-later = เริ่มการทำงานใหม่ภายหลัง
+third-party-blocked-by-builtin =
+ .title = ถูกปิดกั้นโดย { -brand-short-name }
+ .alt = ถูกปิดกั้นโดย { -brand-short-name }
diff --git a/l10n-th/toolkit/toolkit/about/aboutWebauthn.ftl b/l10n-th/toolkit/toolkit/about/aboutWebauthn.ftl
new file mode 100644
index 0000000000..062fb6128d
--- /dev/null
+++ b/l10n-th/toolkit/toolkit/about/aboutWebauthn.ftl
@@ -0,0 +1,133 @@
+# 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 for about:webauthn, a security token management page
+
+# Page title
+# 'WebAuthn' is a protocol name and should not be translated
+about-webauthn-page-title = เกี่ยวกับ WebAuthn
+
+## Section titles
+
+about-webauthn-info-section-title = ข้อมูลอุปกรณ์
+about-webauthn-info-subsection-title = ข้อมูลเครื่องมือยืนยันตัวตน
+about-webauthn-options-subsection-title = ตัวเลือกของเครื่องมือยืนยันตัวตน
+about-webauthn-pin-section-title = การจัดการ PIN
+about-webauthn-credential-management-section-title = จัดการข้อมูลประจำตัว
+about-webauthn-pin-required-section-title = ต้องป้อน PIN
+about-webauthn-confirm-deletion-section-title = ยืนยันการลบ
+
+## Info field texts
+
+about-webauthn-text-connect-device = โปรดเชื่อมต่อโทเค็นความปลอดภัย
+# If multiple devices are plugged in, they will blink and we are asking the user to select one by touching the device they want.
+about-webauthn-text-select-device = โปรดเลือกโทเค็นความปลอดภัยที่คุณต้องการโดยสัมผัสที่อุปกรณ์
+# CTAP2 refers to Client to Authenticator Protocol version 2
+about-webauthn-text-non-ctap2-device = ไม่สามารถจัดการตัวเลือกได้เนื่องจากโทเค็นความปลอดภัยของคุณไม่รองรับ CTAP2
+about-webauthn-text-not-available = ไม่พร้อมใช้งานในแพลตฟอร์มนี้
+
+## Results label
+
+about-webauthn-results-success = สำเร็จ!
+about-webauthn-results-general-error = ผิดพลาด!
+# Variables:
+# $retriesLeft (Number): number of tries left
+about-webauthn-results-pin-invalid-error =
+ { $retriesLeft ->
+ [0] ข้อผิดพลาด: PIN ไม่ถูกต้อง โปรดลองอีกครั้ง
+ *[other] ข้อผิดพลาด: PIN ไม่ถูกต้อง คุณสามารถลองได้อีก { $retriesLeft } ครั้ง
+ }
+about-webauthn-results-pin-blocked-error = ข้อผิดพลาด: ไม่สามารถลองได้อีกและอุปกรณ์ของคุณได้ถูกล็อก เนื่องจากมีการป้อน PIN ไม่ถูกต้องหลายครั้งเกินไป จำเป็นต้องรีเซ็ตอุปกรณ์จึงจะใช้ได้
+about-webauthn-results-pin-too-short-error = ข้อผิดพลาด: PIN ที่ป้อนมาสั้นเกินไป
+about-webauthn-results-pin-too-long-error = ข้อผิดพลาด: PIN ที่ป้อนมายาวเกินไป
+about-webauthn-results-pin-auth-blocked-error = ข้อผิดพลาด: การลองล้มเหลวติดต่อกันหลายครั้งเกินไปและการยืนยันตัวตนด้วย PIN ได้ถูกปิดกั้นชั่วคราว คุณจำเป็นต้องปิดและเปิดอุปกรณ์ของคุณใหม่ (ถอดปลั๊กแล้วเสียบปลั๊กใหม่)
+about-webauthn-results-cancelled-by-user-error = ข้อผิดพลาด: การดำเนินการถูกยกเลิกโดยผู้ใช้
+
+## Labels
+
+about-webauthn-new-pin-label = PIN ใหม่:
+about-webauthn-repeat-pin-label = ทวน PIN ใหม่:
+about-webauthn-current-pin-label = PIN ปัจจุบัน:
+about-webauthn-pin-required-label = โปรดป้อน PIN ของคุณ:
+about-webauthn-credential-list-subsection-title = ข้อมูลประจำตัว:
+about-webauthn-credential-list-empty = ไม่พบข้อมูลประจำตัวบนอุปกรณ์
+about-webauthn-confirm-deletion-label = คุณกำลังจะลบ:
+
+## Buttons
+
+about-webauthn-current-set-pin-button = ตั้ง PIN
+about-webauthn-current-change-pin-button = เปลี่ยน PIN
+# List is a verb, as in "Show list of credentials"
+about-webauthn-list-credentials-button = แสดงรายการข้อมูลประจำตัว
+about-webauthn-cancel-button = ยกเลิก
+about-webauthn-send-pin-button = ตกลง
+about-webauthn-delete-button = ลบ
+
+## Authenticator options fields
+## Option fields correspond to the CTAP2 option IDs and definitions found in https://fidoalliance.org/specs/fido-v2.1-ps-20210615/fido-client-to-authenticator-protocol-v2.1-ps-20210615.html#option-id
+
+about-webauthn-auth-option-uv = การยืนยันผู้ใช้
+about-webauthn-auth-option-up = การปรากฏตัวของผู้ใช้
+about-webauthn-auth-option-clientpin = PIN ไคลเอ็นต์
+about-webauthn-auth-option-rk = Resident key
+about-webauthn-auth-option-plat = อุปกรณ์แพลตฟอร์ม
+# pinUvAuthToken should not be translated.
+about-webauthn-auth-option-pinuvauthtoken = สิทธิอนุญาตคำสั่ง (pinUvAuthToken)
+# MakeCredential and GetAssertion should not be translated.
+about-webauthn-auth-option-nomcgapermissionswithclientpin = ไม่มีสิทธิอนุญาต MakeCredential / GetAssertion สำหรับ PIN ของไคลเอนต์
+about-webauthn-auth-option-largeblobs = blob ขนาดใหญ่
+about-webauthn-auth-option-ep = การรับรององค์กร
+about-webauthn-auth-option-bioenroll = การลงทะเบียนไบโอเมตริก
+# FIDO_2_1_PRE should not be translated.
+about-webauthn-auth-option-userverificationmgmtpreview = ต้นแบบการลงทะเบียนไบโอเมตริก (FIDO_2_1_PRE)
+about-webauthn-auth-option-uvbioenroll = สิทธิอนุญาตการลงทะเบียนไบโอเมตริก
+about-webauthn-auth-option-authnrcfg = การกำหนดค่าเครื่องมือยืนยันตัวตน
+about-webauthn-auth-option-uvacfg = สิทธิอนุญาตการกำหนดค่าเครื่องมือยืนยันตัวตน
+about-webauthn-auth-option-credmgmt = การจัดการข้อมูลประจำตัว
+about-webauthn-auth-option-credentialmgmtpreview = การจัดการข้อมูลรับรองต้นแบบ
+about-webauthn-auth-option-setminpinlength = ตั้งความยาว PIN ขั้นต่ำ
+# MakeCredential should not be translated.
+about-webauthn-auth-option-makecreduvnotrqd = MakeCredential ที่ไม่มีการยืนยันผู้ใช้
+about-webauthn-auth-option-alwaysuv = ต้องมีการยืนยันผู้ใช้เสมอ
+# Shows when boolean value for an option is True. True should not be translated.
+about-webauthn-auth-option-true = True
+# Shows when boolean value of an option is False. False should not be translated.
+about-webauthn-auth-option-false = False
+# If the value is missing (null), it means a certain feature is not supported.
+about-webauthn-auth-option-null = ไม่รองรับ
+
+## Authenticator info fields
+## Info fields correspond to the CTAP2 authenticatorGetInfo field member name and definitions found in https://fidoalliance.org/specs/fido-v2.1-ps-20210615/fido-client-to-authenticator-protocol-v2.1-ps-20210615.html#authenticatorGetInfo
+
+about-webauthn-auth-info-vendor-prototype-config-commands = คำสั่งกำหนดค่าต้นแบบของผู้ขาย
+about-webauthn-auth-info-remaining-discoverable-credentials = ข้อมูลประจำตัวที่ค้นพบได้ที่เหลืออยู่
+about-webauthn-auth-info-certifications = ใบรับรอง
+about-webauthn-auth-info-uv-modality = ชุดรวมโหมดการยืนยันผู้ใช้
+about-webauthn-auth-info-preferred-platform-uv-attempts = แพลตฟอร์มที่ต้องการใช้ในการพยายามยืนยันผู้ใช้
+about-webauthn-auth-info-max-cred-blob-length = ความยาว blob สูงสุดสำหรับข้อมูลประจำตัว
+about-webauthn-auth-info-firmware-version = รุ่นของเฟิร์มแวร์
+about-webauthn-auth-info-min-pin-length = ความยาว PIN ขั้นต่ำ
+about-webauthn-auth-info-force-pin-change = บังคับการเปลี่ยน PIN
+about-webauthn-auth-info-algorithms = อัลกอริทึม
+about-webauthn-auth-info-pin-protocols = โปรโตคอล PIN
+about-webauthn-auth-info-max-msg-size = ขนาดข้อความสูงสุด
+# AAGUID should not be translated.
+about-webauthn-auth-info-aaguid = AAGUID
+about-webauthn-auth-info-extensions = ส่วนขยาย
+about-webauthn-auth-info-versions = รุ่น
+# Shows when boolean value for an info field is True. True should not be translated.
+about-webauthn-auth-info-true = True
+# Shows when boolean value for an info field is False. False should not be translated.
+about-webauthn-auth-info-false = False
+about-webauthn-auth-info-null = ไม่รองรับ
+
+## Bio enrollment sample feedbacks
+
+
+## Scan (e.g. of fingerprint) was off-center (e.g. too high, too left, etc.).
+
+
+##
+
diff --git a/l10n-th/toolkit/toolkit/about/aboutWebrtc.ftl b/l10n-th/toolkit/toolkit/about/aboutWebrtc.ftl
new file mode 100644
index 0000000000..8658059eda
--- /dev/null
+++ b/l10n-th/toolkit/toolkit/about/aboutWebrtc.ftl
@@ -0,0 +1,322 @@
+# 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 for about:webrtc, a troubleshooting and diagnostic page
+### for WebRTC calls. See https://developer.mozilla.org/en-US/docs/Web/API/WebRTC_API.
+
+# The text "WebRTC" is a proper noun and should not be translated.
+about-webrtc-document-title = WebRTC Internals
+# "about:webrtc" is a internal browser URL and should not be
+# translated. This string is used as a title for a file save dialog box.
+about-webrtc-save-page-dialog-title = บันทึก about:webrtc เป็น
+
+## These labels are for a disclosure which contains the information for closed PeerConnection sections
+
+about-webrtc-closed-peerconnection-disclosure-show-msg = แสดง PeerConnections ที่ปิด
+about-webrtc-closed-peerconnection-disclosure-hide-msg = ซ่อน PeerConnections ที่ปิด
+
+## AEC is an abbreviation for Acoustic Echo Cancellation.
+
+about-webrtc-aec-logging-msg-label = การบันทึก AEC
+about-webrtc-aec-logging-off-state-label = เริ่มการบันทึก AEC
+about-webrtc-aec-logging-on-state-label = หยุดการบันทึก AEC
+about-webrtc-aec-logging-on-state-msg = การบันทึก AEC ทำงานอยู่ (พูดกับผู้โทรไม่กี่นาทีแล้วหยุดการจับ)
+about-webrtc-aec-logging-toggled-on-state-msg = การบันทึก AEC ทำงานอยู่ (พูดกับผู้โทรไม่กี่นาทีแล้วหยุดการจับ)
+about-webrtc-aec-logging-unavailable-sandbox = ตัวแปรสภาพแวดล้อม MOZ_DISABLE_CONTENT_SANDBOX=1 จำเป็นสำหรับการส่งออกปูม AEC ให้ตั้งค่าตัวแปรนี้ก็ต่อเมื่อคุณเข้าใจความเสี่ยงที่อาจเกิดขึ้นเท่านั้น
+# Variables:
+# $path (String) - The path to which the aec log file is saved.
+about-webrtc-aec-logging-toggled-off-state-msg = ไฟล์บันทึกที่จับสามารถพบได้ใน: { $path }
+
+##
+
+# The autorefresh checkbox causes a stats section to autorefresh its content when checked
+about-webrtc-auto-refresh-label = การรีเฟรชอัตโนมัติ
+# Determines the default state of the Auto Refresh check boxes
+about-webrtc-auto-refresh-default-label = เรียกใหม่อัตโนมัติตามค่าเริ่มต้น
+# A button which forces a refresh of displayed statistics
+about-webrtc-force-refresh-button = เรียกใหม่
+# "PeerConnection" is a proper noun associated with the WebRTC module. "ID" is
+# an abbreviation for Identifier. This string should not normally be translated
+# and is used as a data label.
+about-webrtc-peerconnection-id-label = PeerConnection ID:
+# The number of DataChannels that a PeerConnection has opened
+about-webrtc-data-channels-opened-label = ช่องข้อมูลที่เปิด:
+# The number of once open DataChannels that a PeerConnection has closed
+about-webrtc-data-channels-closed-label = ช่องข้อมูลที่ปิด:
+
+## "SDP" is an abbreviation for Session Description Protocol, an IETF standard.
+## See http://wikipedia.org/wiki/Session_Description_Protocol
+
+about-webrtc-sdp-heading = SDP
+about-webrtc-local-sdp-heading = SDP ในเครื่อง
+about-webrtc-local-sdp-heading-offer = SDP ในเครื่อง (ข้อเสนอ)
+about-webrtc-local-sdp-heading-answer = SDP ในเครื่อง (คำตอบ)
+about-webrtc-remote-sdp-heading = SDP ระยะไกล
+about-webrtc-remote-sdp-heading-offer = SDP ระยะไกล (ข้อเสนอ)
+about-webrtc-remote-sdp-heading-answer = SDP ระยะไกล (คำตอบ)
+about-webrtc-sdp-history-heading = ประวัติ SDP
+about-webrtc-sdp-parsing-errors-heading = ข้อผิดพลาดในการแยกวิเคราะห์ SDP
+
+##
+
+# "RTP" is an abbreviation for the Real-time Transport Protocol, an IETF
+# specification, and should not normally be translated. "Stats" is an
+# abbreviation for Statistics.
+about-webrtc-rtp-stats-heading = สถิติ RTP
+
+## "ICE" is an abbreviation for Interactive Connectivity Establishment, which
+## is an IETF protocol, and should not normally be translated.
+
+about-webrtc-ice-state = สถานะ ICE
+# "Stats" is an abbreviation for Statistics.
+about-webrtc-ice-stats-heading = สถิติ ICE
+about-webrtc-ice-restart-count-label = การเริ่มการทำงานใหม่ของ ICE:
+about-webrtc-ice-rollback-count-label = การย้อนกลับของ ICE:
+about-webrtc-ice-pair-bytes-sent = จำนวนไบต์ที่ส่ง:
+about-webrtc-ice-pair-bytes-received = จำนวนไบต์ที่รับ:
+about-webrtc-ice-component-id = ID ส่วนประกอบ
+
+## These adjectives are used to label a line of statistics collected for a peer
+## connection. The data represents either the local or remote end of the
+## connection.
+
+about-webrtc-type-local = ในเครื่อง
+about-webrtc-type-remote = ระยะไกล
+
+##
+
+# This adjective is used to label a table column. Cells in this column contain
+# the localized javascript string representation of "true" or are left blank.
+about-webrtc-nominated = ถูกกำหนด
+# This adjective is used to label a table column. Cells in this column contain
+# the localized javascript string representation of "true" or are left blank.
+# This represents an attribute of an ICE candidate.
+about-webrtc-selected = เลือกแล้ว
+about-webrtc-save-page-label = บันทึกหน้า
+about-webrtc-debug-mode-msg-label = โหมดดีบั๊ก
+about-webrtc-debug-mode-off-state-label = เริ่มโหมดดีบั๊ก
+about-webrtc-debug-mode-on-state-label = หยุดโหมดดีบั๊ก
+about-webrtc-enable-logging-label = เปิดใช้งานพรีเซ็ตปูม WebRTC
+about-webrtc-stats-heading = สถิติวาระ
+about-webrtc-peerconnections-section-heading = สถิติ RTCPeerConnection
+about-webrtc-peerconnections-section-show-msg = แสดงสถิติ RTCPeerConnection
+about-webrtc-peerconnections-section-hide-msg = ซ่อนสถิติ RTCPeerConnection
+about-webrtc-stats-clear = ล้างประวัติ
+about-webrtc-log-heading = รายการบันทึกการเชื่อมต่อ
+about-webrtc-log-clear = ล้างรายการบันทึก
+about-webrtc-log-show-msg = แสดงรายการบันทึก
+ .title = คลิกเพื่อขยายส่วนนี้
+about-webrtc-log-hide-msg = ซ่อนรายการบันทึก
+ .title = คลิกเพื่อยุบส่วนนี้
+about-webrtc-log-section-show-msg = แสดงรายการบันทึก
+ .title = คลิกเพื่อขยายส่วนนี้
+about-webrtc-log-section-hide-msg = ซ่อนรายการบันทึก
+ .title = คลิกเพื่อยุบส่วนนี้
+about-webrtc-copy-report-button = คัดลอกรายงาน
+about-webrtc-copy-report-history-button = คัดลอกประวัติรายงาน
+
+## These are used to display a header for a PeerConnection.
+## Variables:
+## $browser-id (Number) - A numeric id identifying the browser tab for the PeerConnection.
+## $id (String) - A globally unique identifier for the PeerConnection.
+## $url (String) - The url of the site which opened the PeerConnection.
+## $now (Date) - The JavaScript timestamp at the time the report was generated.
+
+about-webrtc-connection-open = [ { $browser-id } | { $id } ] { $url } { $now }
+about-webrtc-connection-closed = [ { $browser-id } | { $id } ] { $url } (ปิดแล้ว) { $now }
+
+## These are used to indicate what direction media is flowing.
+## Variables:
+## $codecs - a list of media codecs
+
+about-webrtc-short-send-receive-direction = ส่ง / รับ: { $codecs }
+about-webrtc-short-send-direction = ส่ง: { $codecs }
+about-webrtc-short-receive-direction = รับ: { $codecs }
+
+##
+
+about-webrtc-local-candidate = แคนดิเดตภายใน
+about-webrtc-remote-candidate = แคนดิเดตระยะไกล
+about-webrtc-raw-candidates-heading = แคนดิเดตดิบทั้งหมด
+about-webrtc-raw-local-candidate = แคนดิเดตภายในดิบ
+about-webrtc-raw-remote-candidate = แคนดิเดตระยะไกลดิบ
+about-webrtc-raw-cand-show-msg = แสดงแคนดิเดตดิบ
+ .title = คลิกเพื่อขยายส่วนนี้
+about-webrtc-raw-cand-hide-msg = ซ่อนแคนดิเดตดิบ
+ .title = คลิกเพื่อยุบส่วนนี้
+about-webrtc-raw-cand-section-show-msg = แสดงแคนดิเดตดิบ
+ .title = คลิกเพื่อขยายส่วนนี้
+about-webrtc-raw-cand-section-hide-msg = ซ่อนแคนดิเดตดิบ
+ .title = คลิกเพื่อยุบส่วนนี้
+about-webrtc-priority = ความสำคัญ
+about-webrtc-fold-show-msg = แสดงรายละเอียด
+ .title = คลิกเพื่อขยายส่วนนี้
+about-webrtc-fold-hide-msg = ซ่อนรายละเอียด
+ .title = คลิกเพื่อยุบส่วนนี้
+about-webrtc-fold-default-show-msg = แสดงรายละเอียด
+ .title = คลิกเพื่อขยายส่วนนี้
+about-webrtc-fold-default-hide-msg = ซ่อนรายละเอียด
+ .title = คลิกเพื่อยุบส่วนนี้
+about-webrtc-dropped-frames-label = เฟรมที่ถูกดรอป:
+about-webrtc-discarded-packets-label = แพ็คเก็ตที่ถูกละทิ้ง:
+about-webrtc-decoder-label = ตัวถอดรหัส
+about-webrtc-encoder-label = ตัวเข้ารหัส
+about-webrtc-show-tab-label = แสดงแท็บ
+about-webrtc-current-framerate-label = อัตราเฟรม
+about-webrtc-width-px = ความกว้าง (px)
+about-webrtc-height-px = ความสูง (px)
+about-webrtc-consecutive-frames = เฟรมต่อเนื่อง
+about-webrtc-time-elapsed = เวลาที่ผ่านไป (วินาที)
+about-webrtc-estimated-framerate = อัตราเฟรมโดยประมาณ
+about-webrtc-rotation-degrees = การหมุน (องศา)
+about-webrtc-first-frame-timestamp = การประทับเวลาการรับข้อมูลเฟรมแรก
+about-webrtc-last-frame-timestamp = การประทับเวลาการรับข้อมูลเฟรมสุดท้าย
+
+## SSRCs are identifiers that represent endpoints in an RTP stream
+
+# This is an SSRC on the local side of the connection that is receiving RTP
+about-webrtc-local-receive-ssrc = SSRC การรับข้อมูลภายใน
+# This is an SSRC on the remote side of the connection that is sending RTP
+about-webrtc-remote-send-ssrc = SSRC การส่งข้อมูลระยะไกล
+
+## These are displayed on the button that shows or hides the
+## PeerConnection configuration disclosure
+
+about-webrtc-pc-configuration-show-msg = แสดงการกำหนดค่า
+about-webrtc-pc-configuration-hide-msg = ซ่อนการกำหนดค่า
+
+##
+
+# An option whose value will not be displayed but instead noted as having been
+# provided
+about-webrtc-configuration-element-provided = จัดเตรียมไว้
+# An option whose value will not be displayed but instead noted as having not
+# been provided
+about-webrtc-configuration-element-not-provided = ไม่ได้จัดเตรียมไว้
+# The options set by the user in about:config that could impact a WebRTC call
+about-webrtc-custom-webrtc-configuration-heading = การกำหนดลักษณะ WebRTC ที่ตั้งโดยผู้ใช้
+# The options set by the user in about:config that could impact a WebRTC call
+about-webrtc-user-modified-configuration-heading = การกำหนดค่า WebRTC ที่ผู้ใช้เปลี่ยนแปลง
+
+## These are displayed on the button that shows or hides the
+## user modified configuration disclosure
+
+about-webrtc-user-modified-configuration-show-msg = แสดงการกำหนดค่าที่ผู้ใช้เปลี่ยนแปลง
+about-webrtc-user-modified-configuration-hide-msg = ซ่อนการกำหนดค่าที่ผู้ใช้เปลี่ยนแปลง
+
+##
+
+# Section header for estimated bandwidths of WebRTC media flows
+about-webrtc-bandwidth-stats-heading = แบนด์วิดท์โดยประมาณ
+# The ID of the MediaStreamTrack
+about-webrtc-track-identifier = ตัวระบุแทร็ก
+# The estimated bandwidth available for sending WebRTC media in bytes per second
+about-webrtc-send-bandwidth-bytes-sec = แบนด์วิดท์ที่ส่ง (ไบต์/วินาที)
+# The estimated bandwidth available for receiving WebRTC media in bytes per second
+about-webrtc-receive-bandwidth-bytes-sec = แบนด์วิดท์ที่ได้รับ (ไบต์/วินาที)
+# Maximum number of bytes per second that will be padding zeros at the ends of packets
+about-webrtc-max-padding-bytes-sec = ช่องว่างสูงสุด (ไบต์/วินาที)
+# The amount of time inserted between packets to keep them spaced out
+about-webrtc-pacer-delay-ms = หน่วงเวลาระยะห่าง ms
+# The amount of time it takes for a packet to travel from the local machine to the remote machine,
+# and then have a packet return
+about-webrtc-round-trip-time-ms = RTT ms
+# This is a section heading for video frame statistics for a MediaStreamTrack.
+# see https://developer.mozilla.org/en-US/docs/Web/API/MediaStreamTrack.
+# Variables:
+# $track-identifier (String) - The unique identifier for the MediaStreamTrack.
+about-webrtc-frame-stats-heading = สถิติเฟรมวิดีโอ - รหัส MediaStreamTrack: { $track-identifier }
+
+## These are paths used for saving the about:webrtc page or log files so
+## they can be attached to bug reports.
+## Variables:
+## $path (String) - The path to which the file is saved.
+
+about-webrtc-save-page-msg = ได้บันทึกหน้าลงใน: { $path }
+about-webrtc-debug-mode-off-state-msg = บันทึกร่องรอยสามารถพบได้ที่: { $path }
+about-webrtc-debug-mode-on-state-msg = โหมดดีบั๊กทำงานอยู่ บันทึกการติดตามอยู่ที่: { $path }
+about-webrtc-aec-logging-off-state-msg = ไฟล์บันทึกที่จับสามารถพบได้ใน: { $path }
+# This path is used for saving the about:webrtc page so it can be attached to
+# bug reports.
+# Variables:
+# $path (String) - The path to which the file is saved.
+about-webrtc-save-page-complete-msg = ได้บันทึกหน้าลงใน: { $path }
+# This is the total number of frames encoded or decoded over an RTP stream.
+# Variables:
+# $frames (Number) - The number of frames encoded or decoded.
+about-webrtc-frames =
+ { $frames ->
+ *[other] { $frames } เฟรม
+ }
+# This is the number of audio channels encoded or decoded over an RTP stream.
+# Variables:
+# $channels (Number) - The number of channels encoded or decoded.
+about-webrtc-channels =
+ { $channels ->
+ *[other] { $channels } ช่องสัญญาณ
+ }
+# This is the total number of packets received on the PeerConnection.
+# Variables:
+# $packets (Number) - The number of packets received.
+about-webrtc-received-label =
+ { $packets ->
+ *[other] ได้รับ { $packets } แพ็กเก็ต
+ }
+# This is the total number of packets lost by the PeerConnection.
+# Variables:
+# $packets (Number) - The number of packets lost.
+about-webrtc-lost-label =
+ { $packets ->
+ *[other] สูญเสีย { $packets } แพ็กเก็ต
+ }
+# This is the total number of packets sent by the PeerConnection.
+# Variables:
+# $packets (Number) - The number of packets sent.
+about-webrtc-sent-label =
+ { $packets ->
+ *[other] ส่งแล้ว { $packets } แพ็กเก็ต
+ }
+# Jitter is the variance in the arrival time of packets.
+# See: https://w3c.github.io/webrtc-stats/#dom-rtcreceivedrtpstreamstats-jitter
+# Variables:
+# $jitter (Number) - The jitter.
+about-webrtc-jitter-label = จิทเทอร์ { $jitter }
+# ICE candidates arriving after the remote answer arrives are considered trickled
+# (an attribute of an ICE candidate). These are highlighted in the ICE stats
+# table with light blue background.
+about-webrtc-trickle-caption-msg = แคนดิเดตแบบ Trickled (ที่มาถึงหลังจากคำตอบ) จะถูกเน้นเป็น น้ำเงิน
+
+## "SDP" is an abbreviation for Session Description Protocol, an IETF standard.
+## See http://wikipedia.org/wiki/Session_Description_Protocol
+
+# This is used as a header for local SDP.
+# Variables:
+# $timestamp (Number) - The Unix Epoch time at which the SDP was set.
+about-webrtc-sdp-set-at-timestamp-local = ตั้งค่า SDP ในเครื่อง ที่การประทับเวลา { NUMBER($timestamp, useGrouping: "false") }
+# This is used as a header for remote SDP.
+# Variables:
+# $timestamp (Number) - The Unix Epoch time at which the SDP was set.
+about-webrtc-sdp-set-at-timestamp-remote = ตั้งค่า SDP ระยะไกล ที่การประทับเวลา { NUMBER($timestamp, useGrouping: "false") }
+# This is used as a header for an SDP section contained in two columns allowing for side-by-side comparisons.
+# Variables:
+# $timestamp (Number) - The Unix Epoch time at which the SDP was set.
+# $relative-timestamp (Number) - The timestamp relative to the timestamp of the earliest received SDP.
+about-webrtc-sdp-set-timestamp = ประทับเวลา { NUMBER($timestamp, useGrouping: "false") } (+ { $relative-timestamp } ms)
+
+## These are displayed on the button that shows or hides the SDP information disclosure
+
+about-webrtc-show-msg-sdp = แสดง SDP
+about-webrtc-hide-msg-sdp = ซ่อน SDP
+
+## These are displayed on the button that shows or hides the Media Context information disclosure.
+## The Media Context is the set of preferences and detected capabilities that informs
+## the negotiated CODEC settings.
+
+about-webrtc-media-context-show-msg = แสดงบริบทสื่อ
+about-webrtc-media-context-hide-msg = ซ่อนบริบทสื่อ
+about-webrtc-media-context-heading = บริบทสื่อ
+
+##
+
diff --git a/l10n-th/toolkit/toolkit/about/aboutWindowsMessages.ftl b/l10n-th/toolkit/toolkit/about/aboutWindowsMessages.ftl
new file mode 100644
index 0000000000..35649d81cb
--- /dev/null
+++ b/l10n-th/toolkit/toolkit/about/aboutWindowsMessages.ftl
@@ -0,0 +1,20 @@
+# 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 for the about:windows-messages page, which is only available
+### on the Windows operating system.
+### This page records and shows messages sent from the operating system to
+### individual browser windows. These messages can be useful in debugging
+### hard-to-reproduce issues with window sizing and position.
+
+# Windows refers to the operating system
+windows-messages-page-title = ข้อมูลเกี่ยวกับข้อความจาก Windows
+windows-messages-intro =
+ หน้านี้แสดงข้อความล่าสุดที่ส่งโดย Windows
+ ไปยังหน้าต่างเบราว์เซอร์ของ { -brand-short-name }
+ รายการที่เป็นตัวหนาแสดงถึงหน้าต่างนี้ โปรดทราบว่าหน้านี้แสดง
+ ข้อความล่าสุดในขณะที่โหลดหน้าเว็บ
+ หากต้องการดูรายการปัจจุบัน คุณจะต้องเรียกหน้านี้ใหม่
+windows-messages-copy-to-clipboard = คัดลอกไปยังคลิปบอร์ด
diff --git a/l10n-th/toolkit/toolkit/about/abuseReports.ftl b/l10n-th/toolkit/toolkit/about/abuseReports.ftl
new file mode 100644
index 0000000000..3ce18aa6f6
--- /dev/null
+++ b/l10n-th/toolkit/toolkit/about/abuseReports.ftl
@@ -0,0 +1,104 @@
+# 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/.
+
+# Localized string used as the dialog window title.
+# "Report" is a noun in this case, "Report for AddonName".
+#
+# Variables:
+# $addon-name (string) - Name of the add-on being reported
+abuse-report-dialog-title = รายงานสำหรับ { $addon-name }
+abuse-report-title-extension = รายงานส่วนขยายนี้ไปยัง { -vendor-short-name }
+abuse-report-title-sitepermission = รายงานส่วนเสริมสิทธิอนุญาตไซต์นี้ไปยัง { -vendor-short-name }
+abuse-report-title-theme = รายงานชุดรูปแบบนี้ไปยัง { -vendor-short-name }
+abuse-report-subtitle = มีปัญหาอะไร?
+# Variables:
+# $author-name (string) - Name of the add-on author
+abuse-report-addon-authored-by = โดย <a data-l10n-name="author-name">{ $author-name }</a>
+abuse-report-learnmore =
+ ไม่แน่ใจว่าจะเลือกประเด็นไหนใช่ไหม?
+ <a data-l10n-name="learnmore-link">เรียนรู้เพิ่มเติมเกี่ยวกับการรายงานส่วนขยายและชุดรูปแบบ</a>
+abuse-report-learnmore-intro = ไม่มั่นใจว่าประเด็นอะไรที่จะเลือก?
+abuse-report-learnmore-link = เรียนรู้เพิ่มเติมเกี่ยวกับการรายงานส่วนขยายและชุดรูปแบบ
+abuse-report-submit-description = อธิบายปัญหา (เพิ่มเติม)
+abuse-report-textarea =
+ .placeholder = เราจะสามารถแก้ไขปัญหาได้ง่ายขึ้นหากคุณระบุปัญหาที่เกิดขึ้นให้เราทราบ โปรดอธิบายปัญหาที่คุณพบ ขอบคุณที่ช่วยเรารักษาเว็บให้แข็งแรง
+abuse-report-submit-note =
+ หมายเหตุ: ไม่ต้องรวมข้อมูลส่วนบุคคล (เช่น ชื่อ ที่อยู่อีเมล เบอร์โทรศัพท์ ที่อยู่จริง)
+ { -vendor-short-name } เป็นผู้เก็บบันทึกรายงานนี้ไว้อย่างถาวร
+
+## Panel buttons.
+
+abuse-report-cancel-button = ยกเลิก
+abuse-report-next-button = ถัดไป
+abuse-report-goback-button = ย้อนกลับ
+abuse-report-submit-button = ส่ง
+
+## Message bars descriptions.
+##
+## Variables:
+## $addon-name (string) - Name of the add-on
+
+abuse-report-messagebar-aborted = รายงานสำหรับ <span data-l10n-name="addon-name">{ $addon-name }</span> ถูกยกเลิก
+abuse-report-messagebar-submitting = ส่งรายงานสำหรับ <span data-l10n-name="addon-name">{ $addon-name }</span>
+abuse-report-messagebar-submitted = ขอบคุณที่ส่งรายงาน คุณต้องการลบ <span data-l10n-name="addon-name">{ $addon-name }</span> ไหม?
+abuse-report-messagebar-submitted-noremove = ขอบคุณที่ส่งรายงาน
+abuse-report-messagebar-removed-extension = ขอบคุณที่ส่งรายงาน คุณได้ลบส่วนขยาย <span data-l10n-name="addon-name">{ $addon-name }</span> แล้ว
+abuse-report-messagebar-removed-sitepermission = ขอบคุณที่ส่งรายงาน คุณได้ลบส่วนเสริมสิทธิอนุญาตไซต์ <span data-l10n-name="addon-name">{ $addon-name }</span> แล้ว
+abuse-report-messagebar-removed-theme = ขอบคุณที่ส่งรายงาน คุณได้ลบชุดรูปแบบ <span data-l10n-name="addon-name">{ $addon-name }</span> ออกแล้ว
+abuse-report-messagebar-error = เกิดข้อผิดพลาดขึ้นขณะส่งรายงานสำหรับ <span data-l10n-name="addon-name">{ $addon-name }</span>
+abuse-report-messagebar-error-recent-submit = รายงานของ <span data-l10n-name="addon-name">{ $addon-name }</span> ไม่สามารถส่งได้เนื่องจากเพิ่งมีรายงานอีกฉบับถูกส่งไปเร็ว ๆ นี้
+abuse-report-messagebar-aborted2 =
+ .message = รายงานสำหรับ { $addon-name } ถูกยกเลิก
+abuse-report-messagebar-submitting2 =
+ .message = ส่งรายงานสำหรับ { $addon-name }
+abuse-report-messagebar-submitted2 =
+ .message = ขอบคุณที่ส่งรายงาน คุณต้องการลบ { $addon-name } ไหม?
+abuse-report-messagebar-submitted-noremove2 =
+ .message = ขอบคุณที่ส่งรายงาน
+abuse-report-messagebar-removed-extension2 =
+ .message = ขอบคุณที่ส่งรายงาน คุณได้ลบส่วนขยาย { $addon-name } แล้ว
+abuse-report-messagebar-removed-sitepermission2 =
+ .message = ขอบคุณที่ส่งรายงาน คุณได้ลบส่วนเสริมสิทธิอนุญาตไซต์ { $addon-name } แล้ว
+abuse-report-messagebar-removed-theme2 =
+ .message = ขอบคุณที่ส่งรายงาน คุณได้ลบชุดรูปแบบ { $addon-name } ออกแล้ว
+abuse-report-messagebar-error2 =
+ .message = เกิดข้อผิดพลาดขึ้นขณะส่งรายงานสำหรับ { $addon-name }
+abuse-report-messagebar-error-recent-submit2 =
+ .message = รายงานของ { $addon-name } ไม่สามารถส่งได้เนื่องจากเพิ่งมีรายงานอีกฉบับถูกส่งไปเร็ว ๆ นี้
+
+## Message bars actions.
+
+abuse-report-messagebar-action-remove-extension = ใช่ เอาออก
+abuse-report-messagebar-action-keep-extension = ไม่ เก็บไว้
+abuse-report-messagebar-action-remove-sitepermission = ใช่ เอาออก
+abuse-report-messagebar-action-keep-sitepermission = ไม่ เก็บไว้
+abuse-report-messagebar-action-remove-theme = ใช่ เอาออก
+abuse-report-messagebar-action-keep-theme = ไม่ เก็บไว้
+abuse-report-messagebar-action-retry = ลองใหม่
+abuse-report-messagebar-action-cancel = ยกเลิก
+
+## Abuse report reasons (optionally paired with related examples and/or suggestions)
+
+abuse-report-damage-reason-v2 = มันทำให้คอมพิวเตอร์หรือข้อมูลของฉันเสียหาย
+abuse-report-damage-example = ตัวอย่างเช่น: สอดแทรกมัลแวร์หรือขโมยข้อมูล
+abuse-report-spam-reason-v2 = มันมีสแปมหรือแทรกโฆษณาที่ไม่พึงประสงค์
+abuse-report-spam-example = ตัวอย่างเช่น: ใส่โฆษณาบนหน้าเว็บ
+abuse-report-settings-reason-v2 = มันเปลี่ยนเครื่องมือค้นหา, หน้าแรก, หรือแท็บใหม่ของฉันโดยไม่แจ้งหรือถามฉัน
+abuse-report-settings-suggestions = ก่อนรายงานส่วนขยายนี้ คุณสามารถทดลองเปลี่ยนการตั้งค่าของคุณ:
+abuse-report-settings-suggestions-search = เปลี่ยนการตั้งค่าการค้นหาเริ่มต้นของคุณ
+abuse-report-settings-suggestions-homepage = เปลี่ยนหน้าแรกและแท็บใหม่ของคุณ
+abuse-report-deceptive-reason-v2 = มันอ้างว่าเป็นอย่างอื่นที่มันไม่ได้เป็น
+abuse-report-deceptive-example = ตัวอย่างเช่น: คำอธิบายหรือรูปภาพชี้นำไปในทางที่ผิด
+abuse-report-broken-reason-extension-v2 = มันไม่ทำงาน, ทำให้เว็บไซต์ล่ม, หรือทำให้ { -brand-product-name } ช้าลง
+abuse-report-broken-reason-sitepermission-v2 = ส่วนเสริมนี้ไม่ทำงาน ทำให้เว็บไซต์ล่ม หรือทำให้ { -brand-product-name } ช้าลง
+abuse-report-broken-reason-theme-v2 = มันไม่ทำงานหรือทำให้การแสดงผลของเบราว์เซอร์เสียหาย
+abuse-report-broken-example = ตัวอย่างเช่น: คุณลักษณะใช้งานได้ช้า ใช้งานได้ยาก หรือใช้งานไม่ได้เลย บางส่วนของเว็บไซต์ไม่โหลดหรือดูผิดปกติ
+abuse-report-broken-suggestions-extension = ดูเหมือนคุณจะระบุบั๊กแล้ว นอกจากคุณจะส่งรายงานที่นี่แล้ว วิธีที่ดีที่สุดเพื่อให้ปัญหาเกี่ยวกับการทำงานได้รับการแก้ไขคือให้ติดต่อนักพัฒนาส่วนขยาย <a data-l10n-name="support-link">เยี่ยมชมเว็บไซต์ของส่วนขยาย</a>เพื่อดูข้อมูลเพิ่มเติมเกี่ยวกับนักพัฒนา
+abuse-report-broken-suggestions-sitepermission = ดูเหมือนคุณจะระบุบั๊กแล้ว นอกจากคุณจะส่งรายงานที่นี่แล้ว วิธีที่ดีที่สุดเพื่อให้ปัญหาเกี่ยวกับการทำงานได้รับการแก้ไขคือให้ติดต่อนักพัฒนาชุดตกแต่ง <a data-l10n-name="support-link">เยี่ยมชมเว็บไซต์</a>เพื่อดูข้อมูลเพิ่มเติมเกี่ยวกับนักพัฒนา
+abuse-report-broken-suggestions-theme = ดูเหมือนคุณจะระบุข้อบกพร่องแล้ว นอกจากคุณจะส่งรายงานที่นี่แล้ว วิธีที่ดีที่สุดเพื่อให้ปัญหาด้านฟังก์ชันการทำงานได้รับการแก้ไขคือให้ติดต่อนักพัฒนาชุดรูปแบบ <a data-l10n-name="support-link">เยี่ยมชมเว็บไซต์ของชุดรูปแบบ</a>เพื่อดูข้อมูลเพิ่มเติมเกี่ยวกับนักพัฒนา
+abuse-report-policy-reason-v2 = มันมีเนื้อหาที่แสดงความเกลียดชัง ความรุนแรง หรือผิดกฎหมาย
+abuse-report-policy-suggestions = หมายเหตุ: ประเด็นด้านลิขสิทธิ์และเครื่องหมายการค้าจะต้องถูกรายงานในกระบวนการแยกจากนี้ <a data-l10n-name="report-infringement-link">ใช้คำแนะนำเหล่านี้</a>ในการรายงานปัญหา
+abuse-report-unwanted-reason-v2 = ฉันไม่เคยต้องการมันและไม่รู้จะกำจัดมันได้อย่างไร
+abuse-report-unwanted-example = ตัวอย่าง: แอปพลิเคชันติดตั้งส่วนขยายนี้โดยที่ฉันไม่อนุญาต
+abuse-report-other-reason = อื่น ๆ
diff --git a/l10n-th/toolkit/toolkit/about/certviewer.ftl b/l10n-th/toolkit/toolkit/about/certviewer.ftl
new file mode 100644
index 0000000000..2d3f0052dd
--- /dev/null
+++ b/l10n-th/toolkit/toolkit/about/certviewer.ftl
@@ -0,0 +1,122 @@
+# 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/.
+
+certificate-viewer-certificate-section-title = ใบรับรอง
+
+## Error messages
+
+certificate-viewer-error-message = เราไม่พบข้อมูลใบรับรองหรือใบรับรองเสียหาย โปรดลองอีกครั้ง
+certificate-viewer-error-title = มีบางอย่างผิดพลาด
+
+## Certificate information labels
+
+certificate-viewer-algorithm = อัลกอริทึม
+certificate-viewer-certificate-authority = ผู้ออกใบรับรอง
+certificate-viewer-cipher-suite = ชุดการเข้ารหัส
+certificate-viewer-common-name = ชื่อทั่วไป
+certificate-viewer-email-address = ที่อยู่อีเมล
+# Variables:
+# $firstCertName (String) - Common Name for the displayed certificate
+certificate-viewer-tab-title = ใบรับรองสำหรับ { $firstCertName }
+# Inc. means Incorporated, e.g GitHub is incorporated in Delaware
+certificate-viewer-inc-country = ประเทศที่จดทะเบียน
+certificate-viewer-country = ประเทศ
+certificate-viewer-curve = เส้นโค้ง
+certificate-viewer-distribution-point = จุดแจกจ่าย
+certificate-viewer-dns-name = ชื่อ DNS
+certificate-viewer-ip-address = ที่อยู่ IP
+certificate-viewer-other-name = ชื่ออื่น
+certificate-viewer-exponent = เลขชี้กำลัง
+certificate-viewer-id = ID
+certificate-viewer-key-exchange-group = กลุ่มการแลกเปลี่ยนคีย์
+certificate-viewer-key-id = ID คีย์
+certificate-viewer-key-size = ขนาดคีย์
+# Inc. means Incorporated, e.g GitHub is incorporated in Delaware
+certificate-viewer-inc-locality = สถานที่ที่ก่อตั้ง
+certificate-viewer-locality = สถานที่
+certificate-viewer-location = ตำแหน่งที่ตั้ง
+certificate-viewer-logid = ID รายการบันทึก
+certificate-viewer-method = วิธีการ
+certificate-viewer-modulus = โมดูลัส
+certificate-viewer-name = ชื่อ
+certificate-viewer-not-after = ก่อน
+certificate-viewer-not-before = หลัง
+certificate-viewer-organization = องค์กร
+certificate-viewer-organizational-unit = หน่วยงาน
+certificate-viewer-policy = นโยบาย
+certificate-viewer-protocol = โปรโตคอล
+certificate-viewer-public-value = ค่าสาธารณะ
+certificate-viewer-purposes = จุดประสงค์
+certificate-viewer-qualifier = ตัวบ่งคุณลักษณะ
+certificate-viewer-qualifiers = ตัวบ่งคุณลักษณะ
+certificate-viewer-required = จำเป็น
+certificate-viewer-unsupported = &lt;ไม่รองรับ&gt;
+# Inc. means Incorporated, e.g GitHub is incorporated in Delaware
+certificate-viewer-inc-state-province = รัฐ/จังหวัดที่จดทะเบียน
+certificate-viewer-state-province = รัฐ/จังหวัด
+certificate-viewer-sha-1 = SHA-1
+certificate-viewer-sha-256 = SHA-256
+certificate-viewer-serial-number = หมายเลขอนุกรม
+certificate-viewer-signature-algorithm = อัลกอริธึมลายเซ็น
+certificate-viewer-signature-scheme = แบบแผนลายเซ็น
+certificate-viewer-timestamp = การประทับเวลา
+certificate-viewer-value = ค่า
+certificate-viewer-version = รุ่น
+certificate-viewer-business-category = หมวดหมู่ธุรกิจ
+certificate-viewer-subject-name = ชื่อหัวเรื่อง
+certificate-viewer-issuer-name = ชื่อผู้ออก
+certificate-viewer-validity = ความถูกต้อง
+certificate-viewer-subject-alt-names = ชื่อหัวเรื่องแสดงแทน
+certificate-viewer-public-key-info = ข้อมูลคีย์สาธารณะ
+certificate-viewer-miscellaneous = เบ็ดเตล็ด
+certificate-viewer-fingerprints = ลายนิ้วมือ
+certificate-viewer-basic-constraints = ข้อจำกัดพื้นฐาน
+certificate-viewer-key-usages = การใช้คีย์
+certificate-viewer-extended-key-usages = การใช้คีย์แบบขยาย
+certificate-viewer-ocsp-stapling = OCSP Stapling
+certificate-viewer-subject-key-id = ID คีย์หัวเรื่อง
+certificate-viewer-authority-key-id = ID คีย์ของผู้อนุมัติ
+certificate-viewer-authority-info-aia = ข้อมูลผู้อนุมัติ (AIA)
+certificate-viewer-certificate-policies = นโยบายใบรับรอง
+certificate-viewer-embedded-scts = SCT ที่ฝัง
+certificate-viewer-crl-endpoints = ปลายทาง CRL
+
+# This message is used as a row header in the Miscellaneous section.
+# The associated data cell contains links to download the certificate.
+certificate-viewer-download = ดาวน์โหลด
+# This message is used to replace boolean values (true/false) in several certificate fields, e.g. Certificate Authority
+# Variables:
+# $boolean (String) - true/false value for the specific field
+certificate-viewer-boolean =
+ { $boolean ->
+ [true] ใช่
+ *[false] ไม่
+ }
+
+## Variables:
+## $fileName (String) - The file name to save the PEM data in, derived from the common name from the certificate being displayed.
+
+certificate-viewer-download-pem = PEM (cert)
+ .download = { $fileName }.pem
+certificate-viewer-download-pem-chain = PEM (chain)
+ .download = { $fileName }-chain.pem
+
+# The title attribute for Critical Extension icon
+certificate-viewer-critical-extension =
+ .title = ส่วนขยายนี้ถูกทำเครื่องหมายว่าสำคัญ ซึ่งหมายความว่าไคลเอนต์จะต้องปฏิเสธใบรับรองหากพวกเขาไม่เข้าใจดีพอ
+certificate-viewer-export = ส่งออก
+ .download = { $fileName }.pem
+
+##
+
+# Label for a tab where we haven't found a better label:
+certificate-viewer-unknown-group-label = (ไม่ทราบ)
+
+## Labels for tabs displayed in stand-alone about:certificate page
+
+certificate-viewer-tab-mine = ใบรับรองของคุณ
+certificate-viewer-tab-people = ผู้คน
+certificate-viewer-tab-servers = เซิร์ฟเวอร์
+certificate-viewer-tab-ca = หน่วยงาน
+certificate-viewer-tab-unkonwn = ไม่ทราบ
diff --git a/l10n-th/toolkit/toolkit/about/config.ftl b/l10n-th/toolkit/toolkit/about/config.ftl
new file mode 100644
index 0000000000..2bb9258e3e
--- /dev/null
+++ b/l10n-th/toolkit/toolkit/about/config.ftl
@@ -0,0 +1,55 @@
+# 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/.
+
+
+## These strings appear on the warning you see when first visiting about:config.
+
+about-config-intro-warning-title = ดำเนินการต่อด้วยความระมัดระวัง
+about-config-intro-warning-text = การเปลี่ยนแปลงการกำหนดลักษณะขั้นสูงอาจส่งผลต่อประสิทธิภาพหรือความปลอดภัยของ { -brand-short-name } ได้
+about-config-intro-warning-checkbox = เตือนเมื่อฉันพยายามเข้าถึงการตั้งค่าเหล่านี้
+about-config-intro-warning-button = ยอมรับความเสี่ยงและดำเนินการต่อ
+
+##
+
+# This is shown on the page before searching but after the warning is accepted.
+about-config-caution-text = การเปลี่ยนแปลงการกำหนดลักษณะเหล่านี้อาจส่งผลต่อประสิทธิภาพหรือความปลอดภัยของ { -brand-short-name } ได้
+
+about-config-page-title = การกำหนดลักษณะขั้นสูง
+
+about-config-search-input1 =
+ .placeholder = ค้นหาชื่อการกำหนดลักษณะ
+about-config-show-all = แสดงทั้งหมด
+
+about-config-show-only-modified = แสดงเฉพาะค่ากำหนดที่ถูกเปลี่ยนแปลง
+
+about-config-pref-add-button =
+ .title = เพิ่ม
+about-config-pref-toggle-button =
+ .title = เปิด/ปิด
+about-config-pref-edit-button =
+ .title = แก้ไข
+about-config-pref-save-button =
+ .title = บันทึก
+about-config-pref-reset-button =
+ .title = กลับค่าเดิม
+about-config-pref-delete-button =
+ .title = ลบ
+
+## Labels for the type selection radio buttons shown when adding preferences.
+
+about-config-pref-add-type-boolean = ค่าตรรกะ
+about-config-pref-add-type-number = ตัวเลข
+about-config-pref-add-type-string = สตริง
+
+## Preferences with a non-default value are differentiated visually, and at the
+## same time the state is made accessible to screen readers using an aria-label
+## that won't be visible or copied to the clipboard.
+##
+## Variables:
+## $value (String): The full value of the preference.
+
+about-config-pref-accessible-value-default =
+ .aria-label = { $value } (ค่าเริ่มต้น)
+about-config-pref-accessible-value-custom =
+ .aria-label = { $value } (กำหนดเอง)
diff --git a/l10n-th/toolkit/toolkit/about/url-classifier.ftl b/l10n-th/toolkit/toolkit/about/url-classifier.ftl
new file mode 100644
index 0000000000..82a0dc2f55
--- /dev/null
+++ b/l10n-th/toolkit/toolkit/about/url-classifier.ftl
@@ -0,0 +1,58 @@
+# 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/.
+
+url-classifier-title = ข้อมูลตัวจําแนก URL
+url-classifier-search-title = ค้นหา
+url-classifier-search-result-title = ผลลัพธ์
+url-classifier-search-result-uri = URI: { $uri }
+url-classifier-search-result-list = รายการตาราง: { $list }
+url-classifier-search-input = URL
+url-classifier-search-error-invalid-url = URL ไม่ถูกต้อง
+url-classifier-search-error-no-features = ไม่ได้เลือกคุณลักษณะใด
+url-classifier-search-btn = เริ่มการค้นหา
+url-classifier-search-features = คุณลักษณะ
+url-classifier-search-listType = ชนิดรายการ
+url-classifier-provider-title = ผู้ให้บริการ
+url-classifier-provider = ผู้ให้บริการ
+url-classifier-provider-last-update-time = เวลาที่อัปเดตล่าสุด
+url-classifier-provider-next-update-time = เวลาที่อัปเดตถัดไป
+url-classifier-provider-back-off-time = เวลาแบ็กออฟ
+url-classifier-provider-last-update-status = สถานะการอัปเดตล่าสุด
+url-classifier-provider-update-btn = อัปเดต
+url-classifier-cache-title = แคช
+url-classifier-cache-refresh-btn = เรียกใหม่
+url-classifier-cache-clear-btn = ล้าง
+url-classifier-cache-table-name = ชื่อตาราง
+url-classifier-cache-ncache-entries = จำนวนรายการแคชค่าลบ
+url-classifier-cache-pcache-entries = จำนวนรายการแคชค่าบวก
+url-classifier-cache-show-entries = แสดงรายการ
+url-classifier-cache-entries = รายการแคช
+url-classifier-cache-prefix = คำนำหน้า
+url-classifier-cache-ncache-expiry = วันหมดอายุแคชค่าลบ
+url-classifier-cache-fullhash = แฮชแบบเต็ม
+url-classifier-cache-pcache-expiry = วันหมดอายุแคชค่าบวก
+url-classifier-debug-title = ดีบั๊ก
+url-classifier-debug-module-btn = ตั้งโมดูลรายการบันทึก
+url-classifier-debug-file-btn = ตั้งไฟล์รายการบันทึก
+url-classifier-debug-js-log-chk = ตั้งรายการบันทึก JS
+url-classifier-debug-sb-modules = โมดูลรายการบันทึกการเรียกดูแบบปลอดภัย
+url-classifier-debug-modules = โมดูลรายการบันทึกปัจจุบัน
+url-classifier-debug-sbjs-modules = รายการบันทึก JS การเรียกดูแบบปลอดภัย
+url-classifier-debug-file = ไฟล์รายการบันทึกปัจจุบัน
+
+url-classifier-trigger-update = กระตุ้นการอัปเดต
+url-classifier-not-available = ไม่มี
+url-classifier-disable-sbjs-log = ปิดใช้งานรายการบันทึก JS การเรียกดูแบบปลอดภัย
+url-classifier-enable-sbjs-log = เปิดใช้งานรายการบันทึก JS การเรียกดูแบบปลอดภัย
+url-classifier-enabled = เปิดใช้งานอยู่
+url-classifier-disabled = ปิดใช้งานอยู่
+url-classifier-updating = กำลังอัปเดต
+url-classifier-cannot-update = ไม่สามารถอัปเดต
+url-classifier-success = สำเร็จ
+
+## Variables
+## $error (string) - Error message
+
+url-classifier-update-error = ข้อผิดพลาดการอัปเดต ({ $error })
+url-classifier-download-error = ข้อผิดพลาดการดาวน์โหลด ({ $error })
diff --git a/l10n-th/toolkit/toolkit/branding/accounts.ftl b/l10n-th/toolkit/toolkit/branding/accounts.ftl
new file mode 100644
index 0000000000..a925be49a1
--- /dev/null
+++ b/l10n-th/toolkit/toolkit/branding/accounts.ftl
@@ -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/.
+
+# “Account” can be localized, “Firefox” must be treated as a brand,
+# and kept in English.
+-fxaccount-brand-name = บัญชี Firefox
diff --git a/l10n-th/toolkit/toolkit/branding/brandings.ftl b/l10n-th/toolkit/toolkit/branding/brandings.ftl
new file mode 100644
index 0000000000..0a2e5cac8b
--- /dev/null
+++ b/l10n-th/toolkit/toolkit/branding/brandings.ftl
@@ -0,0 +1,46 @@
+# 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/.
+
+
+## The following feature names must be treated as a brand.
+##
+## They cannot be:
+## - Transliterated.
+## - Translated.
+##
+## Declension should be avoided where possible, leaving the original
+## brand unaltered in prominent UI positions.
+##
+## For further details, consult:
+## https://mozilla-l10n.github.io/styleguides/mozilla_general/#brands-copyright-and-trademark
+
+-facebook-container-brand-name = Facebook Container
+-lockwise-brand-name = Firefox Lockwise
+-lockwise-brand-short-name = Lockwise
+-monitor-brand-name = Firefox Monitor
+-monitor-brand-short-name = Monitor
+-mozmonitor-brand-name = Mozilla Monitor
+-pocket-brand-name = Pocket
+-send-brand-name = Firefox Send
+-screenshots-brand-name = Firefox Screenshots
+-mozilla-vpn-brand-name = Mozilla VPN
+-profiler-brand-name = Firefox Profiler
+-translations-brand-name = Firefox Translations
+-focus-brand-name = Firefox Focus
+-relay-brand-name = Firefox Relay
+-relay-brand-short-name = Relay
+-fakespot-brand-name = Fakespot
+# Note the name of the website is capitalized.
+-fakespot-website-name = Fakespot.com
+# The particle "by" can be localized, "Fakespot" and "Mozilla" should not be localized or transliterated.
+-fakespot-brand-full-name = Fakespot โดย Mozilla
+# “Suggest” can be localized, “Firefox” must be treated as a brand
+# and kept in English.
+-firefox-suggest-brand-name = Firefox Suggest
+# ”Home" can be localized, “Firefox” must be treated as a brand
+# and kept in English.
+-firefox-home-brand-name = Firefox Home
+# View" can be localized, “Firefox” must be treated as a brand
+# and kept in English.
+-firefoxview-brand-name = Firefox View
diff --git a/l10n-th/toolkit/toolkit/contentanalysis/contentanalysis.ftl b/l10n-th/toolkit/toolkit/contentanalysis/contentanalysis.ftl
new file mode 100644
index 0000000000..47bf5813cc
--- /dev/null
+++ b/l10n-th/toolkit/toolkit/contentanalysis/contentanalysis.ftl
@@ -0,0 +1,43 @@
+# 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/.
+
+contentanalysis-alert-title = การวิเคราะห์เนื้อหา
+# Variables:
+# $content - Description of the content being warned about, such as "clipboard" or "aFile.txt"
+contentanalysis-slow-agent-notification = เครื่องมือการวิเคราะห์เนื้อหาใช้เวลานานในการตอบกลับสำหรับทรัพยากร “{ $content }”
+contentanalysis-slow-agent-dialog-title = กำลังทำการวิเคราะห์เนื้อหา
+# Variables:
+# $content - Description of the content being warned about, such as "clipboard" or "aFile.txt"
+contentanalysis-slow-agent-dialog-body = การวิเคราะห์เนื้อหากำลังวิเคราะห์ทรัพยากร “{ $content }”
+contentanalysis-slow-agent-dialog-header = กำลังสแกน
+# Variables:
+# $agent - The name of the DLP agent doing the analysis
+# $filename - Name of the file being analyzed, such as "aFile.txt"
+contentanalysis-slow-agent-dialog-body-file = { $agent } กำลังตรวจสอบ “{ $filename }” กับนโยบายข้อมูลขององค์กรของคุณ ขั้นตอนนี้อาจจะใช้เวลาสักครู่
+# Variables:
+# $agent - The name of the DLP agent doing the analysis
+contentanalysis-slow-agent-dialog-body-clipboard = { $agent } กำลังตรวจสอบข้อมูลที่คุณวางกับนโยบายข้อมูลขององค์กรของคุณ ขั้นตอนนี้อาจจะใช้เวลาสักครู่
+# Note that this is shown when the user drag and drops text into the browser.
+# Variables:
+# $agent - The name of the DLP agent doing the analysis
+contentanalysis-slow-agent-dialog-body-dropped-text = { $agent } กำลังตรวจสอบข้อความที่คุณวางกับนโยบายข้อมูลขององค์กรของคุณ ขั้นตอนนี้อาจจะใช้เวลาสักครู่
+contentanalysis-operationtype-clipboard = คลิปบอร์ด
+contentanalysis-operationtype-dropped-text = ข้อความที่ปล่อย
+contentanalysis-warndialogtitle = เนื้อหานี้อาจไม่ปลอดภัย
+# Variables:
+# $content - Description of the content being warned about, such as "clipboard" or "aFile.txt"
+contentanalysis-warndialogtext = องค์กรของคุณใช้ซอฟต์แวร์ป้องกันข้อมูลสูญหายซึ่งระบุว่าเนื้อหานี้ไม่ปลอดภัย: { $content } ต้องการใช้ต่อไปหรือไม่?
+contentanalysis-warndialog-response-allow = ใช้เนื้อหา
+contentanalysis-warndialog-response-deny = ยกเลิก
+contentanalysis-notification-title = การวิเคราะห์เนื้อหา
+# Variables:
+# $content - Description of the content being reported, such as "clipboard" or "aFile.txt"
+# $response - The response received from the content analysis agent, such as "REPORT_ONLY"
+contentanalysis-genericresponse-message = การวิเคราะห์เนื้อหาตอบกลับด้วย { $response } สำหรับทรัพยากร: { $content }
+# Variables:
+# $content - Description of the content being blocked, such as "clipboard" or "aFile.txt"
+contentanalysis-block-message = องค์กรของคุณใช้ซอฟต์แวร์ป้องกันข้อมูลสูญหายซึ่งปิดกั้นเนื้อหานี้: { $content }
+# Variables:
+# $content - Description of the content being blocked, such as "clipboard" or "aFile.txt"
+contentanalysis-error-message = เกิดข้อผิดพลาดในการสื่อสารกับซอฟต์แวร์ป้องกันข้อมูลสูญหาย การถ่ายโอนถูกปฏิเสธสำหรับทรัพยากร: { $content }
diff --git a/l10n-th/toolkit/toolkit/downloads/downloadUI.ftl b/l10n-th/toolkit/toolkit/downloads/downloadUI.ftl
new file mode 100644
index 0000000000..4b252eb318
--- /dev/null
+++ b/l10n-th/toolkit/toolkit/downloads/downloadUI.ftl
@@ -0,0 +1,51 @@
+# 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/.
+
+download-ui-confirm-title = ยกเลิกการดาวน์โหลดทั้งหมด?
+
+## Variables:
+## $downloadsCount (Number): The current downloads count.
+
+download-ui-confirm-quit-cancel-downloads =
+ { $downloadsCount ->
+ [1] หากคุณออกตอนนี้ 1 การดาวน์โหลดจะถูกยกเลิก คุณแน่ใจหรือไม่ว่าต้องการออก?
+ *[other] หากคุณออกตอนนี้ { $downloadsCount } การดาวน์โหลดจะถูกยกเลิก คุณแน่ใจหรือไม่ว่าต้องการออก?
+ }
+download-ui-confirm-quit-cancel-downloads-mac =
+ { $downloadsCount ->
+ [1] หากคุณออกตอนนี้ 1 การดาวน์โหลดจะถูกยกเลิก คุณแน่ใจหรือไม่ว่าต้องการออก?
+ *[other] หากคุณออกตอนนี้ { $downloadsCount } การดาวน์โหลดจะถูกยกเลิก คุณแน่ใจหรือไม่ว่าต้องการออก?
+ }
+download-ui-dont-quit-button =
+ { PLATFORM() ->
+ [mac] ไม่ออก
+ *[other] ไม่ออก
+ }
+
+download-ui-confirm-offline-cancel-downloads =
+ { $downloadsCount ->
+ [1] หากคุณออฟไลน์ตอนนี้ 1 การดาวน์โหลดจะถูกยกเลิก คุณแน่ใจหรือไม่ว่าต้องการออฟไลน์?
+ *[other] หากคุณออฟไลน์ตอนนี้ { $downloadsCount } การดาวน์โหลดจะถูกยกเลิก คุณแน่ใจหรือไม่ว่าต้องการออฟไลน์?
+ }
+download-ui-dont-go-offline-button = คงการออนไลน์
+
+download-ui-confirm-leave-private-browsing-windows-cancel-downloads =
+ { $downloadsCount ->
+ [1] หากคุณปิดหน้าต่างเรียกดูแบบส่วนตัวทั้งหมดตอนนี้ 1 การดาวน์โหลดจะถูกยกเลิก คุณแน่ใจหรือไม่ว่าต้องการออกจากการเรียกดูแบบส่วนตัว?
+ *[other] หากคุณปิดหน้าต่างเรียกดูแบบส่วนตัวทั้งหมดตอนนี้ { $downloadsCount } การดาวน์โหลดจะถูกยกเลิก คุณแน่ใจหรือไม่ว่าต้องการออกจากการเรียกดูแบบส่วนตัว?
+ }
+download-ui-dont-leave-private-browsing-button = คงอยู่ในการเรียกดูแบบส่วนตัว
+
+download-ui-cancel-downloads-ok =
+ { $downloadsCount ->
+ [1] ยกเลิก 1 การดาวน์โหลด
+ *[other] ยกเลิก { $downloadsCount } การดาวน์โหลด
+ }
+
+##
+
+download-ui-file-executable-security-warning-title = เปิดไฟล์ปฏิบัติการ?
+# Variables:
+# $executable (String): The executable file to be opened.
+download-ui-file-executable-security-warning = “{ $executable }” เป็นไฟล์ปฏิบัติการ ไฟล์ปฏิบัติการอาจมีไวรัสหรือโค้ดที่ประสงค์ร้ายอื่นที่อาจเป็นอันตรายต่อคอมพิวเตอร์ของคุณ ใช้ความระมัดระวังเมื่อเปิดไฟล์นี้ คุณแน่ใจหรือไม่ว่าต้องการเปิด “{ $executable }”?
diff --git a/l10n-th/toolkit/toolkit/downloads/downloadUtils.ftl b/l10n-th/toolkit/toolkit/downloads/downloadUtils.ftl
new file mode 100644
index 0000000000..7968a08e0c
--- /dev/null
+++ b/l10n-th/toolkit/toolkit/downloads/downloadUtils.ftl
@@ -0,0 +1,90 @@
+# 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/.
+
+## Variables:
+## $timeValue (number) - Number of units of time
+
+# Short form for seconds
+download-utils-short-seconds = s
+# Short form for minutes
+download-utils-short-minutes = m
+# Short form for hours
+download-utils-short-hours = h
+# Short form for days
+download-utils-short-days = d
+
+##
+
+# — is the "em dash" (long dash)
+# example: 4 minutes left — 1.1 of 11.1 GB (2.2 MB/sec)
+# Variables:
+# $timeLeft (String): time left.
+# $transfer (String): transfer progress.
+# $rate (String): rate number.
+# $unit (String): rate unit.
+download-utils-status = { $timeLeft } — { $transfer } ({ $rate } { $unit }/วินาที)
+# If download speed is a JavaScript Infinity value, this phrase is used
+# — is the "em dash" (long dash)
+# example: 4 minutes left — 1.1 of 11.1 GB (Really fast)
+# Variables:
+# $timeLeft (String): time left.
+# $transfer (String): transfer progress.
+download-utils-status-infinite-rate = { $timeLeft } — { $transfer } (เร็วจริง ๆ)
+# — is the "em dash" (long dash)
+# example: 4 minutes left — 1.1 of 11.1 GB
+# Variables:
+# $timeLeft (String): time left.
+# $transfer (String): transfer progress.
+download-utils-status-no-rate = { $timeLeft } — { $transfer }
+
+download-utils-bytes = ไบต์
+download-utils-kilobyte = KB
+download-utils-megabyte = MB
+download-utils-gigabyte = GB
+
+# example: 1.1 of 333 MB
+# Variables:
+# $progress (String): progress number.
+# $total (String): total number.
+# $totalUnits (String): total unit.
+download-utils-transfer-same-units = { $progress } จาก { $total } { $totalUnits }
+# example: 11.1 MB of 3.3 GB
+# Variables:
+# $progress (String): progress number.
+# $progressUnits (String): progress unit.
+# $total (String): total number.
+# $totalUnits (String): total unit.
+download-utils-transfer-diff-units = { $progress } { $progressUnits } จาก { $total } { $totalUnits }
+# example: 111 KB
+# Variables:
+# $progress (String): progress number.
+# $progressUnits (String): unit.
+download-utils-transfer-no-total = { $progress } { $progressUnits }
+
+# examples: 1m; 11h
+# Variables:
+# $time (String): time number.
+# $unit (String): time unit.
+download-utils-time-pair = { $time }{ $unit }
+# examples: 1m left; 11h left
+# Variables:
+# $time (String): time left, including a unit
+download-utils-time-left-single = เหลืออีก { $time }
+# examples: 11h 2m left; 1d 22h left
+# Variables:
+# $time1 (String): time left, including a unit
+# $time2 (String): smaller measure of time left, including a unit
+download-utils-time-left-double = เหลืออีก { $time1 } { $time2 }
+download-utils-time-few-seconds = เหลืออีกไม่กี่วินาที
+download-utils-time-unknown = ไม่ทราบเวลาที่เหลือ
+
+# Variables:
+# $scheme (String): URI scheme like data: jar: about:
+download-utils-done-scheme = ทรัพยากร { $scheme }
+# Special case of done-scheme for file:
+# This is used as an eTLD replacement for local files, so make it lower case
+download-utils-done-file-scheme = ไฟล์ในเครื่อง
+
+# Displayed time for files finished yesterday
+download-utils-yesterday = เมื่อวานนี้
diff --git a/l10n-th/toolkit/toolkit/featuregates/features.ftl b/l10n-th/toolkit/toolkit/featuregates/features.ftl
new file mode 100644
index 0000000000..7510c28cea
--- /dev/null
+++ b/l10n-th/toolkit/toolkit/featuregates/features.ftl
@@ -0,0 +1,58 @@
+# 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/.
+
+# The title of the experiment should be kept in English as it may be referenced
+# by various online articles and is technical in nature.
+experimental-features-css-masonry2 =
+ .label = CSS: Masonry Layout
+experimental-features-css-masonry-description = เปิดใช้งานการรองรับคุณลักษณะ CSS Masonry Layout ทดลอง ดูที่<a data-l10n-name="explainer">ตัวอธิบาย</a>สำหรับคำอธิบายระดับสูงของคุณลักษณะ หากต้องการให้คำติชม โปรดแสดงความคิดเห็นใน<a data-l10n-name="w3c-issue">ปัญหา GitHub นี้</a>หรือ<a data-l10n-name="bug">บั๊กนี้</a>
+
+# The title of the experiment should be kept in English as it may be referenced
+# by various online articles and is technical in nature.
+experimental-features-web-gpu2 =
+ .label = Web API: WebGPU
+experimental-features-web-gpu-description3 = <a data-l10n-name="wikipedia-webgpu">WebGPU API</a> ให้การรองรับระดับต่ำสำหรับการคำนวณและการเรนเดอร์กราฟิกโดยใช้<a data-l10n-name="wikipedia-gpu">หน่วยประมวลผลกราฟิก (GPU)</a> ของอุปกรณ์หรือเครื่องคอมพิวเตอร์ของผู้ใช้ <a data-l10n-name="spec">ข้อมูลจำเพาะ</a>รุ่นแรกใกล้จะเสร็จสมบูรณ์แล้ว โปรดดูที่ <a data-l10n-name="bugzilla">bug 1616739</a> สำหรับรายละเอียดเพิ่มเติม
+
+# The title of the experiment should be kept in English as it may be referenced
+# by various online articles and is technical in nature.
+experimental-features-media-jxl =
+ .label = สื่อ: JPEG XL
+experimental-features-media-jxl-description = เมื่อคุณสมบัตินี้ถูกเปิดใช้งาน { -brand-short-name } จะสามารถรองรับรูปภาพรูปแบบ JPEG XL (JXL) โดยไฟล์รูปภาพที่อยู่ในรูปแบบที่ดีขึ้นนี้สามารถรองรับการแปลงโดยไม่มีการลดทอนคุณภาพจากไฟล์ JPEG แบบเดิมได้ ดูที่ <a data-l10n-name="bugzilla">บั๊ก 1539075</a> สำหรับรายละเอียดเพิ่มเติม
+
+experimental-features-devtools-compatibility-panel =
+ .label = เครื่องมือนักพัฒนา: แผงความเข้ากันได้
+experimental-features-devtools-compatibility-panel-description = แผงด้านข้างสำหรับ “ตัวตรวจสอบเพจ” ที่จะแสดงข้อมูลที่ระบุรายละเอียดเกี่ยวกับสถานะความเข้ากันได้ข้ามเบราว์เซอร์ของแอปของคุณ ดู <a data-l10n-name="bugzilla">bug 1584464</a> สำหรับรายละเอียดเพิ่มเติม
+
+
+# Do not translate 'SameSite', 'Lax' and 'None'.
+experimental-features-cookie-samesite-none-requires-secure2 =
+ .label = คุกกี้: SameSite=None ต้องการแอตทริบิวต์ secure
+experimental-features-cookie-samesite-none-requires-secure2-description = คุกกี้ที่มีแอตทริบิวต์ “SameSite=None” ต้องการแอตทริบิวต์ที่ปลอดภัย คุณลักษณะนี้ต้องการ “คุกกี้: SameSite=Lax ตามค่าเริ่มต้น”
+
+# about:home should be kept in English, as it refers to the the URI for
+# the internal default home page.
+experimental-features-abouthome-startup-cache =
+ .label = แคชเมื่อเริ่มการทำงานของ about:home
+experimental-features-abouthome-startup-cache-description = แคชสำหรับเอกสาร about:home เริ่มต้นที่จะถูกโหลดตามค่าเริ่มต้นเมื่อเริ่มการทำงาน วัตถุประสงค์ของแคชคือเพื่อปรับปรุงประสิทธิภาพการเริ่มการทำงาน
+
+# "Service Worker" is an API name and is usually not translated.
+experimental-features-devtools-serviceworker-debugger-support =
+ .label = เครื่องมือนักพัฒนา: การดีบั๊ก Service Worker
+# "Service Worker" is an API name and is usually not translated.
+experimental-features-devtools-serviceworker-debugger-support-description = เปิดใช้งานการสนับสนุนแบบทดลองสำหรับ Service Worker ในแผง "ตัวดีบั๊ก" คุณลักษณะนี้อาจทำให้เครื่องมือนักพัฒนาทำงานช้าลงและเพิ่มการใช้หน่วยความจำ
+
+# WebRTC global mute toggle controls
+experimental-features-webrtc-global-mute-toggles =
+ .label = WebRTC Global Mute Toggles
+experimental-features-webrtc-global-mute-toggles-description = เพิ่มตัวควบคุมลงในตัวบ่งชี้การใช้ร่วมกันส่วนกลางของ WebRTC ซึ่งทำให้ผู้ใช้สามารถปิดเสียงไมโครโฟนและฟีดกล้องแบบส่วนกลางได้
+
+# JS JIT Warp project
+experimental-features-js-warp =
+ .label = JavaScript JIT: Warp
+experimental-features-js-warp-description = เปิดใช้งาน Warp ซึ่งเป็นโครงการในการปรับปรุงประสิทธิภาพของ JavaScript และการใช้หน่วยความจำ
+
+# Search during IME
+experimental-features-ime-search =
+ .label = แถบที่อยู่: แสดงผลลัพธ์ระหว่างการแปลงตัวอักษรของ IME
+experimental-features-ime-search-description = IME (Input Method Editor) เป็นเครื่องมือที่ให้คุณสามารถป้อนสัญลักษณ์ที่ซับซ้อน เช่น สัญลักษณ์ที่ใช้ในภาษาเขียนในแถบเอเชียตะวันออกหรือภาษาเขียนในอินเดีย โดยใช้แป้นพิมพ์มาตรฐานได้ การเปิดใช้งานคุณลักษณะทดลองนี้จะทำให้แผงแถบที่อยู่เปิดเสมอ โดยจะแสดงผลลัพธ์การค้นหาและข้อเสนอแนะการค้นหา ในขณะที่ใช้ IME ในการป้อนข้อความ โปรดทราบว่า IME อาจแสดงผลแผงที่อาจปิดบังผลลัพธ์ในแถบที่อยู่ได้ จึงแนะนำให้ใช้ค่ากำหนดนี้สำหรับ IME ที่ไม่ได้ใช้แผงชนิดนี้เท่านั้น
diff --git a/l10n-th/toolkit/toolkit/formautofill/formAutofill.ftl b/l10n-th/toolkit/toolkit/formautofill/formAutofill.ftl
new file mode 100644
index 0000000000..896c1e9d93
--- /dev/null
+++ b/l10n-th/toolkit/toolkit/formautofill/formAutofill.ftl
@@ -0,0 +1,65 @@
+# 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/.
+
+
+## OS Prompt Dialog
+
+# The macos string is preceded by the operating system (macOS) with "Firefox is trying to ",
+# and has a period added to its end. Make sure to test in your locale.
+autofill-use-payment-method-os-prompt-macos = ใช้ข้อมูลวิธีการชำระเงินที่เก็บไว้
+autofill-use-payment-method-os-prompt-windows = { -brand-short-name } กำลังพยายามจะใช้ข้อมูลวิธีการชำระเงินที่เก็บไว้ ยืนยันการเข้าถึงบัญชี Windows นี้ด้านล่าง
+autofill-use-payment-method-os-prompt-other = { -brand-short-name } กำลังพยายามจะใช้ข้อมูลวิธีการชำระเงินที่เก็บไว้
+# In macOS, this string is preceded by the operating system with "Firefox is trying to ",
+# and has a period added to its end. Make sure to test in your locale.
+autofill-edit-payment-method-os-prompt-macos = แสดงข้อมูลวิธีการชำระเงินที่เก็บไว้
+autofill-edit-payment-method-os-prompt-windows = { -brand-short-name } กำลังพยายามจะแสดงข้อมูลวิธีการชำระเงินที่เก็บไว้ ยืนยันการเข้าถึงบัญชี Windows นี้ด้านล่าง
+autofill-edit-payment-method-os-prompt-other = { -brand-short-name } กำลังพยายามจะแสดงข้อมูลวิธีการชำระเงินที่เก็บไว้
+# The links lead users to Form Autofill browser preferences.
+autofill-options-link = ตัวเลือกการกรอกแบบฟอร์มอัตโนมัติ
+autofill-options-link-osx = การกำหนดลักษณะการกรอกแบบฟอร์มอัตโนมัติ
+
+## The credit card capture doorhanger
+
+# If Sync is enabled and credit card sync is available,
+# this checkbox is displayed on the doorhanger shown when saving credit card.
+credit-card-doorhanger-credit-cards-sync-checkbox = ซิงค์บัตรที่บันทึกไว้ทั้งหมดในอุปกรณ์ของฉัน
+# Used on the doorhanger when users submit payment with credit card.
+credit-card-save-doorhanger-header = ต้องการบันทึกบัตรนี้อย่างปลอดภัยหรือไม่?
+credit-card-save-doorhanger-description = { -brand-short-name } จะเข้ารหัสหมายเลขบัตรของคุณ รหัสความปลอดภัยของคุณจะไม่ถูกบันทึก
+credit-card-capture-save-button =
+ .label = บันทึก
+ .accessKey = บ
+credit-card-capture-cancel-button =
+ .label = ไม่ใช่ตอนนี้
+ .accessKey = ม
+credit-card-capture-never-save-button =
+ .label = ไม่ต้องบันทึกบัตรเลย
+ .accessKey = ไ
+
+# Used on the doorhanger when an credit card change is detected.
+
+credit-card-update-doorhanger-header = ต้องการอัปเดตบัตรหรือไม่?
+credit-card-update-doorhanger-description = บัตรที่จะอัปเดต:
+credit-card-capture-save-new-button =
+ .label = บันทึกเป็นบัตรใหม่
+ .accessKey = ต
+credit-card-capture-update-button =
+ .label = อัปเดตบัตรที่มีอยู่
+ .accessKey = อ
+# Used as a label for the button, displayed at the bottom of the dropdown suggestion, to open Form Autofill browser preferences.
+autofill-manage-addresses-label = จัดการที่อยู่
+# Used as a label for the button, displayed at the bottom of the dropdown suggestion, to open Form Autofill browser preferences.
+autofill-manage-payment-methods-label = จัดการวิธีการชำระเงิน
+
+## These are brand names and should only be translated when a locale-specific name for that brand is in common use
+
+autofill-card-network-amex = American Express
+autofill-card-network-cartebancaire = Carte Bancaire
+autofill-card-network-diners = Diners Club
+autofill-card-network-discover = Discover
+autofill-card-network-jcb = JCB
+autofill-card-network-mastercard = MasterCard
+autofill-card-network-mir = MIR
+autofill-card-network-unionpay = Union Pay
+autofill-card-network-visa = Visa
diff --git a/l10n-th/toolkit/toolkit/global/alert.ftl b/l10n-th/toolkit/toolkit/global/alert.ftl
new file mode 100644
index 0000000000..de9c2d8498
--- /dev/null
+++ b/l10n-th/toolkit/toolkit/global/alert.ftl
@@ -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/.
+
+alert-close =
+ .tooltiptext = ปิดการแจ้งเตือนนี้
+alert-settings-title =
+ .tooltiptext = การตั้งค่า
+
+## Reminder Notifications
+
+notification-default-dismiss = ปิด
diff --git a/l10n-th/toolkit/toolkit/global/appPicker.ftl b/l10n-th/toolkit/toolkit/global/appPicker.ftl
new file mode 100644
index 0000000000..901aed53c6
--- /dev/null
+++ b/l10n-th/toolkit/toolkit/global/appPicker.ftl
@@ -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/.
+
+app-picker-browse-button =
+ .buttonlabelextra2 = เรียกดู…
+app-picker-send-msg =
+ .value = ส่งรายการนี้ไปยัง:
+app-picker-no-app-found =
+ .value = ไม่พบแอปพลิเคชันสำหรับชนิดไฟล์นี้
diff --git a/l10n-th/toolkit/toolkit/global/arrowscrollbox.ftl b/l10n-th/toolkit/toolkit/global/arrowscrollbox.ftl
new file mode 100644
index 0000000000..6fbe8159b2
--- /dev/null
+++ b/l10n-th/toolkit/toolkit/global/arrowscrollbox.ftl
@@ -0,0 +1,3 @@
+# 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/.
diff --git a/l10n-th/toolkit/toolkit/global/browser-utils.ftl b/l10n-th/toolkit/toolkit/global/browser-utils.ftl
new file mode 100644
index 0000000000..eb5d728e2b
--- /dev/null
+++ b/l10n-th/toolkit/toolkit/global/browser-utils.ftl
@@ -0,0 +1,11 @@
+# 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/.
+
+# Used for data: URLs where we don't have any useful origin information
+browser-utils-url-data = (ข้อมูล)
+
+# Used for extension URLs
+# Variables:
+# $extension (string) - Name of the extension that generated the URL
+browser-utils-url-extension = ส่วนขยาย ({ $extension })
diff --git a/l10n-th/toolkit/toolkit/global/commonDialog.ftl b/l10n-th/toolkit/toolkit/global/commonDialog.ftl
new file mode 100644
index 0000000000..2240f78f94
--- /dev/null
+++ b/l10n-th/toolkit/toolkit/global/commonDialog.ftl
@@ -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/.
+
+common-dialog-title-null = หน้านี้ระบุว่า
+common-dialog-title-system = { -brand-short-name }
+# Title displayed when the origin of a web dialog is unknown.
+common-dialog-title-unknown = ไม่รู้จัก
+# An indicator showing that Firefox is waiting for an operation to finish
+common-dialog-spinner =
+ .alt = ไม่ว่าง
+common-dialog-username =
+ .value = ชื่อผู้ใช้
+common-dialog-password =
+ .value = รหัสผ่าน
+common-dialog-copy-cmd =
+ .label = คัดลอก
+ .accesskey = ค
+common-dialog-select-all-cmd =
+ .label = เลือกทั้งหมด
+ .accesskey = ท
diff --git a/l10n-th/toolkit/toolkit/global/contextual-identity.ftl b/l10n-th/toolkit/toolkit/global/contextual-identity.ftl
new file mode 100644
index 0000000000..33986be196
--- /dev/null
+++ b/l10n-th/toolkit/toolkit/global/contextual-identity.ftl
@@ -0,0 +1,29 @@
+# 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/.
+
+
+## Names of the default containers in Firefox.
+## See https://support.mozilla.org/kb/how-use-firefox-containers
+
+user-context-personal =
+ .label = ส่วนบุคคล
+ .accesskey = ส
+user-context-work =
+ .label = งาน
+ .accesskey = ง
+user-context-banking =
+ .label = ธนาคาร
+ .accesskey = น
+user-context-shopping =
+ .label = การซื้อของ
+ .accesskey = อ
+
+##
+
+user-context-none =
+ .label = ไม่มีการแยกข้อมูล
+ .accesskey = ม
+user-context-manage-containers =
+ .label = จัดการการแยกข้อมูล
+ .accesskey = จ
diff --git a/l10n-th/toolkit/toolkit/global/cookieBannerHandling.ftl b/l10n-th/toolkit/toolkit/global/cookieBannerHandling.ftl
new file mode 100644
index 0000000000..9afcd8e30a
--- /dev/null
+++ b/l10n-th/toolkit/toolkit/global/cookieBannerHandling.ftl
@@ -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/.
+
+cookie-banner-handled-webconsole = { -brand-shorter-name } ได้จัดการแบนเนอร์คุกกี้ในนามของผู้ใช้
diff --git a/l10n-th/toolkit/toolkit/global/createProfileWizard.ftl b/l10n-th/toolkit/toolkit/global/createProfileWizard.ftl
new file mode 100644
index 0000000000..f0c7869055
--- /dev/null
+++ b/l10n-th/toolkit/toolkit/global/createProfileWizard.ftl
@@ -0,0 +1,53 @@
+# 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/.
+
+create-profile-window2 =
+ .title = ตัวช่วยสร้างโปรไฟล์
+ .style = min-width: 45em; min-height: 32em;
+
+## First wizard page
+
+create-profile-first-page-header2 =
+ { PLATFORM() ->
+ [macos] หน้าแนะนำ
+ *[other] ยินดีต้อนรับสู่ { create-profile-window2.title }
+ }
+
+profile-creation-explanation-1 = { -brand-short-name } จัดเก็บข้อมูลเกี่ยวกับการตั้งค่าและค่ากำหนดของคุณในโปรไฟล์ส่วนบุคคลของคุณ
+
+profile-creation-explanation-2 = หากคุณกำลังใช้สำเนานี้ของ { -brand-short-name } ร่วมกับผู้ใช้อื่น ๆ คุณสามารถใช้โปรไฟล์เพื่อเก็บข้อมูลของผู้ใช้แต่ละคนแยกกัน เพื่อทำสิ่งนี้ ผู้ใช้แต่ละคนควรสร้างโปรไฟล์ของตนเอง
+
+profile-creation-explanation-3 = หากคุณเป็นเพียงคนเดียวที่ใช้สำเนานี้ของ { -brand-short-name } คุณต้องมีอย่างน้อยหนึ่งโปรไฟล์ หากคุณต้องการ คุณสามารถสร้างโปรไฟล์หลายชุดสำหรับคุณเองเพื่อจัดเก็บชุดของการตั้งค่าและค่ากำหนดที่ต่างกัน ตัวอย่างเช่น คุณอาจต้องการมีโปรไฟล์แยกสำหรับการใช้งานทางธุรกิจและส่วนบุคคล
+
+profile-creation-explanation-4 =
+ { PLATFORM() ->
+ [macos] เพื่อเริ่มสร้างโปรไฟล์ของคุณ คลิก ดำเนินการต่อ
+ *[other] เพื่อเริ่มสร้างโปรไฟล์ของคุณ คลิก ถัดไป
+ }
+
+## Second wizard page
+
+create-profile-last-page-header2 =
+ { PLATFORM() ->
+ [macos] หน้าสรุป
+ *[other] เสร็จสิ้นการ { create-profile-window2.title }
+ }
+
+profile-creation-intro = หากคุณสร้างหลายโปรไฟล์ คุณสามารถแยกแยะโปรไฟล์ได้โดยชื่อโปรไฟล์ คุณอาจใช้ชื่อที่ให้มานี้หรือใช้ชื่อของคุณเอง
+
+profile-prompt = ป้อนชื่อโปรไฟล์ใหม่:
+ .accesskey = ป
+
+profile-default-name =
+ .value = ผู้ใช้เริ่มต้น
+
+profile-directory-explanation = การตั้งค่า, ค่ากำหนด และข้อมูลผู้ใช้ที่เกี่ยวข้องอื่น ๆ จะถูกจัดเก็บไว้ใน:
+
+create-profile-choose-folder =
+ .label = เลือกโฟลเดอร์…
+ .accesskey = ล
+
+create-profile-use-default =
+ .label = ใช้โฟลเดอร์เริ่มต้น
+ .accesskey = ช
diff --git a/l10n-th/toolkit/toolkit/global/cspErrors.ftl b/l10n-th/toolkit/toolkit/global/cspErrors.ftl
new file mode 100644
index 0000000000..de709bcbdf
--- /dev/null
+++ b/l10n-th/toolkit/toolkit/global/cspErrors.ftl
@@ -0,0 +1,32 @@
+# 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/.
+
+# Variables:
+# $directive (String): the name of a CSP directive, such as "script-src".
+csp-error-missing-directive = นโยบายไม่มีคำสั่ง ‘{ $directive }’ ที่จำเป็น
+
+# Variables:
+# $directive (String): the name of a CSP directive, such as "script-src".
+# $keyword (String): the name of a CSP keyword, usually 'unsafe-inline'.
+csp-error-illegal-keyword = คำสั่ง ‘{ $directive }’ มีคำสำคัญ { $keyword } ที่ไม่ได้รับอนุญาต
+
+# Variables:
+# $directive (String): the name of a CSP directive, such as "script-src".
+# $scheme (String): a protocol name, such as "http", which appears as "http:", as it would in a URL.
+csp-error-illegal-protocol = คำสั่ง ‘{ $directive }’ มี { $scheme }: แหล่งโปรโตคอลที่ไม่ได้รับอนุญาต
+
+# Variables:
+# $directive (String): the name of a CSP directive, such as "script-src".
+# $scheme (String): a protocol name, such as "http", which appears as "http:", as it would in a URL.
+csp-error-missing-host = { $scheme }: โปรโตคอลจำเป็นต้องมีโฮสต์ในคำสั่ง ‘{ $directive }’
+
+# Variables:
+# $directive (String): the name of a CSP directive, such as "script-src".
+# $source (String): the name of a CSP source, usually 'self'.
+csp-error-missing-source = ‘{ $directive }’ ต้องมีแหล่ง { $source }
+
+# Variables:
+# $directive (String): the name of a CSP directive, such as "script-src".
+# $scheme (String): a protocol name, such as "http", which appears as "http:", as it would in a URL.
+csp-error-illegal-host-wildcard = { $scheme }: แหล่งที่เป็นอักขระตัวแทนในคำสั่ง ‘{ $directive }’ ต้องมีโดเมนย่อยแบบไม่ใช่ชนิดทั่วไปอย่างน้อยหนึ่งโดเมน (เช่น *.example.com แทนที่จะเป็น *.com)
diff --git a/l10n-th/toolkit/toolkit/global/datepicker.ftl b/l10n-th/toolkit/toolkit/global/datepicker.ftl
new file mode 100644
index 0000000000..71d86dafc0
--- /dev/null
+++ b/l10n-th/toolkit/toolkit/global/datepicker.ftl
@@ -0,0 +1,50 @@
+# 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/.
+
+
+### Datepicker - Dialog for default HTML's <input type="date">
+
+
+## These labels are used by screenreaders and other assistive technology
+## to indicate the purpose of a date picker calendar and a month-year selection
+## spinner dialogs for HTML's <input type="date">
+
+date-picker-label =
+ .aria-label = เลือกวันที่
+date-spinner-label =
+ .aria-label = เลือกเดือนและปี
+
+## Text of the clear button
+
+date-picker-clear-button = ล้าง
+
+## These labels are used by screenreaders and other assistive technology
+## to indicate the purpose of buttons that leaf through months of a calendar
+
+date-picker-previous =
+ .aria-label = เดือนก่อนหน้า
+date-picker-next =
+ .aria-label = เดือนถัดไป
+
+## These labels are used by screenreaders and other assistive technology
+## to indicate the type of a value/unit that is being selected within a
+## Month/Year date spinner dialogs on a datepicker calendar dialog
+
+date-spinner-month =
+ .aria-label = เดือน
+date-spinner-year =
+ .aria-label = ปี
+
+## These labels are used by screenreaders and other assistive technology
+## to indicate the purpose of buttons that leaf through either months
+## or years of a Month/Year date spinner on a datepicker calendar dialog
+
+date-spinner-month-previous =
+ .aria-label = เดือนก่อนหน้า
+date-spinner-month-next =
+ .aria-label = เดือนถัดไป
+date-spinner-year-previous =
+ .aria-label = ปีก่อนหน้า
+date-spinner-year-next =
+ .aria-label = ปีถัดไป
diff --git a/l10n-th/toolkit/toolkit/global/datetimebox.ftl b/l10n-th/toolkit/toolkit/global/datetimebox.ftl
new file mode 100644
index 0000000000..a954280eb7
--- /dev/null
+++ b/l10n-th/toolkit/toolkit/global/datetimebox.ftl
@@ -0,0 +1,42 @@
+# 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/.
+
+## Placeholders for date and time inputs
+
+datetime-year-placeholder = ปปปป
+datetime-month-placeholder = ดด
+datetime-day-placeholder = วว
+datetime-time-placeholder = --
+
+## Field labels for input type=date
+
+datetime-year =
+ .aria-label = ปี
+datetime-month =
+ .aria-label = เดือน
+datetime-day =
+ .aria-label = วัน
+
+## Field labels for input type=time
+
+datetime-hour =
+ .aria-label = ชั่วโมง
+datetime-minute =
+ .aria-label = นาที
+datetime-second =
+ .aria-label = วินาที
+datetime-millisecond =
+ .aria-label = มิลลิวินาที
+datetime-dayperiod =
+ .aria-label = AM/PM
+
+## Calendar button for input type=date
+
+
+# This label is used by screenreaders and other assistive technology
+# to indicate the purpose of a toggle button inside of the <input type="date">
+# field that opens/closes a date picker calendar dialog
+
+datetime-calendar =
+ .aria-label = ปฏิทิน
diff --git a/l10n-th/toolkit/toolkit/global/extensionPermissions.ftl b/l10n-th/toolkit/toolkit/global/extensionPermissions.ftl
new file mode 100644
index 0000000000..b328fe4c9a
--- /dev/null
+++ b/l10n-th/toolkit/toolkit/global/extensionPermissions.ftl
@@ -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/.
+
+
+## Extension permission description keys are derived from permission names.
+## Permissions for which the message has been changed and the key updated
+## must have a corresponding entry in the `PERMISSION_L10N_ID_OVERRIDES` map.
+
+webext-perms-description-bookmarks = อ่านและเปลี่ยนแปลงที่คั่นหน้า
+webext-perms-description-browserSettings = อ่านและเปลี่ยนแปลงการตั้งค่าเบราว์เซอร์
+webext-perms-description-browsingData = ล้างประวัติการเรียกดู, คุกกี้ และข้อมูลที่เกี่ยวข้องล่าสุด
+webext-perms-description-clipboardRead = รับข้อมูลจากคลิปบอร์ด
+webext-perms-description-clipboardWrite = ป้อนข้อมูลไปยังคลิปบอร์ด
+webext-perms-description-declarativeNetRequest = ปิดกั้นเนื้อหาบนหน้าใดๆ
+webext-perms-description-declarativeNetRequestFeedback = อ่านประวัติการเรียกดูของคุณ
+webext-perms-description-devtools = ขยายเครื่องมือนักพัฒนาเพื่อเข้าถึงข้อมูลของคุณในแท็บที่เปิดอยู่
+webext-perms-description-downloads = ดาวน์โหลดไฟล์และอ่านและเปลี่ยนแปลงประวัติการดาวน์โหลดของเบราว์เซอร์
+webext-perms-description-downloads-open = เปิดไฟล์ที่ดาวน์โหลดไปยังคอมพิวเตอร์ของคุณ
+webext-perms-description-find = อ่านข้อความของแท็บที่เปิดอยู่ทั้งหมด
+webext-perms-description-geolocation = เข้าถึงตำแหน่งที่ตั้งของคุณ
+webext-perms-description-history = เข้าถึงประวัติการเรียกดู
+webext-perms-description-management = เฝ้าสังเกตการใช้ส่วนขยายและจัดการชุดรูปแบบ
+webext-perms-description-nativeMessaging = แลกเปลี่ยนข้อความกับโปรแกรมอื่นนอกเหนือจาก { -brand-short-name }
+webext-perms-description-notifications = แสดงผลการแจ้งเตือนให้คุณ
+webext-perms-description-pkcs11 = ให้บริการตรวจสอบความถูกต้องของการเข้ารหัสลับ
+webext-perms-description-privacy = อ่านและเปลี่ยนแปลงการตั้งค่าความเป็นส่วนตัว
+webext-perms-description-proxy = ควบคุมการตั้งค่าพร็อกซีของเบราว์เซอร์
+webext-perms-description-sessions = เข้าถึงแท็บที่ปิดล่าสุด
+webext-perms-description-tabs = เข้าถึงแท็บของเบราว์เซอร์
+webext-perms-description-tabHide = ซ่อนและแสดงแท็บของเบราว์เซอร์
+webext-perms-description-topSites = เข้าถึงประวัติการเรียกดู
+webext-perms-description-webNavigation = เข้าถึงกิจกรรมของเบราว์เซอร์ระหว่างการนำทาง
diff --git a/l10n-th/toolkit/toolkit/global/extensions.ftl b/l10n-th/toolkit/toolkit/global/extensions.ftl
new file mode 100644
index 0000000000..1e41dbe0c6
--- /dev/null
+++ b/l10n-th/toolkit/toolkit/global/extensions.ftl
@@ -0,0 +1,97 @@
+# 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/.
+
+
+## Headers used in the webextension permissions dialog,
+## 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 <, >, &
+## Variables:
+## $extension (String): replaced with the localized name of the extension.
+
+webext-perms-header = เพิ่ม { $extension } หรือไม่?
+webext-perms-header-with-perms = เพิ่ม { $extension } หรือไม่? ส่วนขยายนี้จะมีสิทธิ์:
+webext-perms-header-unsigned = เพิ่ม { $extension } หรือไม่? ส่วนขยายนี้ยังไม่ได้ผ่านการยืนยัน ส่วนขยายที่ประสงค์ร้ายสามารถขโมยข้อมูลส่วนบุคคลของคุณหรือคุกคามคอมพิวเตอร์ของคุณได้ ให้เพิ่มก็ต่อเมื่อคุณเชื่อถือแหล่งที่มาเท่านั้น
+webext-perms-header-unsigned-with-perms = เพิ่ม { $extension } หรือไม่? ส่วนขยายนี้ยังไม่ได้ผ่านการยืนยัน ส่วนขยายที่ประสงค์ร้ายสามารถขโมยข้อมูลส่วนบุคคลของคุณหรือคุกคามคอมพิวเตอร์ของคุณได้ ให้เพิ่มก็ต่อเมื่อคุณเชื่อถือแหล่งที่มาเท่านั้น ส่วนขยายนี้จะมีสิทธิ์:
+webext-perms-sideload-header = เพิ่ม { $extension } แล้ว
+webext-perms-optional-perms-header = { $extension } ร้องขอสิทธิ์เพิ่มเติม
+
+##
+
+webext-perms-add =
+ .label = เพิ่ม
+ .accesskey = พ
+webext-perms-cancel =
+ .label = ยกเลิก
+ .accesskey = ย
+webext-perms-sideload-text = โปรแกรมอื่น ๆ บนคอมพิวเตอร์ของคุณได้ทำการติดตั้งส่วนเสริมที่อาจส่งผลกระทบต่อเบราว์เซอร์ของคุณ โปรดตรวจสอบคำขอการอนุญาตของส่วนเสริมและเลือก เปิดใช้งาน หรือ ยกเลิก (เพื่อปล่อยให้ปิดใช้งานต่อไป)
+webext-perms-sideload-text-no-perms = โปรแกรมอื่น ๆ บนคอมพิวเตอร์ของคุณได้ทำการติดตั้งส่วนเสริมที่อาจส่งผลกระทบต่อเบราว์เซอร์ของคุณ โปรดเลือก เปิดใช้งาน หรือ ยกเลิก (เพื่อปล่อยให้ปิดใช้งานต่อไป)
+webext-perms-sideload-enable =
+ .label = เปิดใช้งาน
+ .accesskey = ป
+webext-perms-sideload-cancel =
+ .label = ยกเลิก
+ .accesskey = ย
+# Variables:
+# $extension (String): replaced with the localized name of the extension.
+webext-perms-update-text = { $extension } ได้ถูกอัปเดตแล้ว คุณต้องอนุมัติสิทธิ์ใหม่ก่อนที่รุ่นอัปเดตจะติดตั้ง การเลือก “ยกเลิก” จะคงรุ่นส่วนขยายปัจจุบันของคุณไว้ ส่วนขยายนี้จะมีสิทธิ์:
+webext-perms-update-accept =
+ .label = อัปเดต
+ .accesskey = อ
+webext-perms-optional-perms-list-intro = ส่วนขยายต้องการ:
+webext-perms-optional-perms-allow =
+ .label = อนุญาต
+ .accesskey = อ
+webext-perms-optional-perms-deny =
+ .label = ปฏิเสธ
+ .accesskey = ป
+webext-perms-host-description-all-urls = เข้าถึงข้อมูลของคุณสำหรับเว็บไซต์ทั้งหมด
+# Variables:
+# $domain (String): will be replaced by the DNS domain for which a webextension is requesting access (e.g., mozilla.org)
+webext-perms-host-description-wildcard = เข้าถึงข้อมูลของคุณสำหรับไซต์ในโดเมน { $domain }
+# Variables:
+# $domainCount (Number): Integer indicating the number of additional
+# hosts for which this webextension is requesting permission.
+webext-perms-host-description-too-many-wildcards = เข้าถึงข้อมูลของคุณใน { $domainCount } โดเมนอื่น ๆ
+# Variables:
+# $domain (String): will be replaced by the DNS host name for which a webextension is requesting access (e.g., www.mozilla.org)
+webext-perms-host-description-one-site = เข้าถึงข้อมูลของคุณสำหรับ { $domain }
+# Variables:
+# $domainCount (Number): Integer indicating the number of additional
+# hosts for which this webextension is requesting permission.
+webext-perms-host-description-too-many-sites = เข้าถึงข้อมูลของคุณบน { $domainCount } ไซต์อื่น ๆ
+
+## Headers used in the webextension permissions dialog for synthetic add-ons.
+## The part of the string describing what privileges the extension gives should be consistent
+## with the value of webext-site-perms-description-gated-perms-{sitePermission}.
+## Note, this string will be used as raw markup. Avoid characters like <, >, &
+## Variables:
+## $hostname (String): the hostname of the site the add-on is being installed from.
+
+webext-site-perms-header-with-gated-perms-midi = ส่วนเสริมนี้จะให้ { $hostname } เข้าถึงอุปกรณ์ MIDI ของคุณได้
+webext-site-perms-header-with-gated-perms-midi-sysex = ส่วนเสริมนี้จะให้ { $hostname } เข้าถึงอุปกรณ์ MIDI ของคุณได้ (พร้อมการรองรับ SysEx)
+
+##
+
+# This string is used as description in the webextension permissions dialog for synthetic add-ons.
+# Note, the empty line is used to create a line break between the two sections.
+# Note, this string will be used as raw markup. Avoid characters like <, >, &
+webext-site-perms-description-gated-perms-midi =
+ อุปกรณ์เหล่านี้มักเป็นอุปกรณ์เสริม เช่น เครื่องสังเคราะห์เสียง แต่ก็อาจติดตั้งมาพร้อมกับคอมพิวเตอร์ของคุณได้เช่นกัน
+
+ โดยปกติแล้ว เว็บไซต์ต่าง ๆ จะไม่ได้รับอนุญาตให้เข้าถึงอุปกรณ์ MIDI การใช้งานอย่างไม่ถูกต้องอาจทำให้เกิดความเสียหายหรือคุกคามความปลอดภัยได้
+
+## Headers used in the webextension permissions dialog.
+## Note: This string will be used as raw markup. Avoid characters like <, >, &
+## Variables:
+## $extension (String): replaced with the localized name of the extension being installed.
+## $hostname (String): will be replaced by the DNS host name for which a webextension enables permissions.
+
+webext-site-perms-header-with-perms = เพิ่ม { $extension } หรือไม่? ส่วนขยายนี้จะมอบความสามารถต่อไปนี้ให้กับ { $hostname }:
+webext-site-perms-header-unsigned-with-perms = เพิ่ม { $extension } หรือไม่? ส่วนขยายนี้ยังไม่ได้ผ่านการยืนยัน ส่วนขยายที่ประสงค์ร้ายอาจขโมยข้อมูลส่วนบุคคลของคุณหรือคุกคามคอมพิวเตอร์ของคุณได้ ให้เพิ่มก็ต่อเมื่อคุณเชื่อถือแหล่งที่มาเท่านั้น ส่วนขยายนี้จะมอบความสามารถต่อไปนี้ให้กับ { $hostname }:
+
+## These should remain in sync with permissions.NAME.label in sitePermissions.properties
+
+webext-site-perms-midi = เข้าถึงอุปกรณ์ MIDI
+webext-site-perms-midi-sysex = เข้าถึงอุปกรณ์ MIDI พร้อมการรองรับ SysEx
diff --git a/l10n-th/toolkit/toolkit/global/handlerDialog.ftl b/l10n-th/toolkit/toolkit/global/handlerDialog.ftl
new file mode 100644
index 0000000000..9d1345afe9
--- /dev/null
+++ b/l10n-th/toolkit/toolkit/global/handlerDialog.ftl
@@ -0,0 +1,70 @@
+# 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/.
+
+
+## Permission Dialog
+## Variables:
+## $host (string) - The hostname that is initiating the request
+## $scheme (string) - The type of link that's being opened.
+## $appName (string) - Name of the application that will be opened.
+## $extension (string) - Name of extension that initiated the request
+
+permission-dialog-description = อนุญาตให้ไซต์นี้เปิดลิงก์ { $scheme } หรือไม่
+permission-dialog-description-file = อนุญาตให้ไฟล์นี้เปิดลิงก์ { $scheme } หรือไม่
+permission-dialog-description-host = อนุญาตให้ { $host } เปิดลิงก์ { $scheme } หรือไม่
+permission-dialog-description-extension = อนุญาตให้ส่วนขยาย { $extension } เปิดลิงก์ { $scheme } หรือไม่
+permission-dialog-description-app = อนุญาตให้ไซต์นี้เปิดลิงก์ { $scheme } ด้วย { $appName } หรือไม่
+permission-dialog-description-host-app = อนุญาตให้ { $host } เปิดลิงก์ { $scheme } ด้วย { $appName } หรือไม่
+permission-dialog-description-file-app = อนุญาตให้ไฟล์นี้เปิดลิงก์ { $scheme } ด้วย { $appName } หรือไม่
+permission-dialog-description-extension-app = อนุญาตให้ส่วนขยาย { $extension } เปิดลิงก์ { $scheme } ด้วย { $appName } หรือไม่
+permission-dialog-description-system-app = ต้องการเปิดลิงก์ { $scheme } ด้วย { $appName } หรือไม่?
+permission-dialog-description-system-noapp = ต้องการเปิดลิงก์ { $scheme } หรือไม่?
+
+## Please keep the emphasis around the hostname and scheme (ie the
+## `<strong>` HTML tags). Please also keep the hostname as close to the start
+## of the sentence as your language's grammar allows.
+## Variables:
+## $host (string) - The hostname that is initiating the request
+## $scheme (string) - The type of link that's being opened.
+
+permission-dialog-remember = อนุญาตให้ <strong>{ $host }</strong> เปิดลิงก์ <strong>{ $scheme }</strong> เสมอ
+permission-dialog-remember-file = อนุญาตให้ไฟล์นี้เปิดลิงก์ <strong>{ $scheme }</strong> เสมอ
+permission-dialog-remember-extension = อนุญาตให้ส่วนขยายนี้เปิดลิงก์ <strong>{ $scheme }</strong> เสมอ
+
+##
+
+permission-dialog-btn-open-link =
+ .label = เปิดลิงก์
+ .accessKey = O
+permission-dialog-btn-choose-app =
+ .label = เลือกแอปพลิเคชัน
+ .accessKey = A
+permission-dialog-unset-description = คุณจะต้องเลือกแอปพลิเคชัน
+permission-dialog-set-change-app-link = เลือกแอปพลิเคชันอื่น
+
+## Chooser dialog
+## Variables:
+## $scheme (string) - The type of link that's being opened.
+
+chooser-window =
+ .title = เลือกแอปพลิเคชัน
+ .style = min-width: 26em; min-height: 26em;
+chooser-dialog =
+ .buttonlabelaccept = เปิดลิงก์
+ .buttonaccesskeyaccept = O
+chooser-dialog-description = เลือกแอปพลิเคชันเพื่อเปิดลิงก์ { $scheme }
+# Please keep the emphasis around the scheme (ie the `<strong>` HTML tags).
+chooser-dialog-remember = ใช้แอปพลิเคชันนี้เพื่อเปิดลิงก์ <strong>{ $scheme }</strong> เสมอ
+chooser-dialog-remember-extra =
+ { PLATFORM() ->
+ [windows] คุณสามารถเปลี่ยนการตั้งค่านี้ได้ในตัวเลือกของ { -brand-short-name }
+ *[other] คุณสามารถเปลี่ยนการตั้งค่านี้ได้ในค่ากำหนดของ { -brand-short-name }
+ }
+choose-other-app-description = เลือกแอปพลิเคชันอื่น
+choose-app-btn =
+ .label = เลือก…
+ .accessKey = ล
+choose-other-app-window-title = แอปพลิเคชันอื่น…
+# Displayed under the name of a protocol handler in the Launch Application dialog.
+choose-dialog-privatebrowsing-disabled = ถูกปิดใช้งานในหน้าต่างส่วนตัว
diff --git a/l10n-th/toolkit/toolkit/global/htmlForm.ftl b/l10n-th/toolkit/toolkit/global/htmlForm.ftl
new file mode 100644
index 0000000000..f48eb48987
--- /dev/null
+++ b/l10n-th/toolkit/toolkit/global/htmlForm.ftl
@@ -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/.
+
+# This string is shown at the end of the tooltip text for
+# <input type='file' multiple> when there are more than 21 files selected
+# (when we will only list the first 20, plus an "and X more" line).
+# Variables:
+# $fileCount (Number): The number of remaining files.
+input-file-and-more-files = และเพิ่มเติมอีก { $fileCount }
diff --git a/l10n-th/toolkit/toolkit/global/mozCard.ftl b/l10n-th/toolkit/toolkit/global/mozCard.ftl
new file mode 100644
index 0000000000..6fbe8159b2
--- /dev/null
+++ b/l10n-th/toolkit/toolkit/global/mozCard.ftl
@@ -0,0 +1,3 @@
+# 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/.
diff --git a/l10n-th/toolkit/toolkit/global/mozFiveStar.ftl b/l10n-th/toolkit/toolkit/global/mozFiveStar.ftl
new file mode 100644
index 0000000000..54e2708615
--- /dev/null
+++ b/l10n-th/toolkit/toolkit/global/mozFiveStar.ftl
@@ -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/.
+
+# The rating out of 5 stars.
+# Variables:
+# $rating (number) - A number between 0 and 5. The translation should show at most one digit after the comma.
+moz-five-star-rating =
+ .title = ได้รับการจัดอันดับ { NUMBER($rating, maximumFractionDigits: 1) } จาก 5
diff --git a/l10n-th/toolkit/toolkit/global/mozMessageBar.ftl b/l10n-th/toolkit/toolkit/global/mozMessageBar.ftl
new file mode 100644
index 0000000000..46fec025e3
--- /dev/null
+++ b/l10n-th/toolkit/toolkit/global/mozMessageBar.ftl
@@ -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/.
+
+moz-message-bar-icon-info =
+ .alt = ข้อมูล
+moz-message-bar-icon-warning =
+ .alt = คำเตือน
+moz-message-bar-icon-success =
+ .alt = สำเร็จ
+moz-message-bar-icon-error =
+ .alt = ผิดพลาด
+moz-message-bar-close-button =
+ .aria-label = ปิด
+ .title = ปิด
diff --git a/l10n-th/toolkit/toolkit/global/mozSupportLink.ftl b/l10n-th/toolkit/toolkit/global/mozSupportLink.ftl
new file mode 100644
index 0000000000..0eabfbf383
--- /dev/null
+++ b/l10n-th/toolkit/toolkit/global/mozSupportLink.ftl
@@ -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/.
+
+moz-support-link-text = เรียนรู้เพิ่มเติม
diff --git a/l10n-th/toolkit/toolkit/global/notification.ftl b/l10n-th/toolkit/toolkit/global/notification.ftl
new file mode 100644
index 0000000000..02acaa4264
--- /dev/null
+++ b/l10n-th/toolkit/toolkit/global/notification.ftl
@@ -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/.
+
+notification-learnmore-default-label =
+ .value = เรียนรู้เพิ่มเติม
+
+# This label is read by screen readers when focusing the close button for an
+# "infobar" (message shown when for example a popup is blocked),
+# and shown when hovering over the button
+notification-close-button =
+ .aria-label = ปิด
+ .title = ปิด
+
+close-notification-message =
+ .tooltiptext = ปิดข้อความนี้
diff --git a/l10n-th/toolkit/toolkit/global/popupnotification.ftl b/l10n-th/toolkit/toolkit/global/popupnotification.ftl
new file mode 100644
index 0000000000..ca8b89a0ff
--- /dev/null
+++ b/l10n-th/toolkit/toolkit/global/popupnotification.ftl
@@ -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/.
+
+popup-notification-learn-more = เรียนรู้เพิ่มเติม
+popup-notification-more-actions-button =
+ .aria-label = การกระทำเพิ่มเติม
+popup-notification-default-button =
+ .label = ตกลง!
+ .accesskey = ต
diff --git a/l10n-th/toolkit/toolkit/global/processTypes.ftl b/l10n-th/toolkit/toolkit/global/processTypes.ftl
new file mode 100644
index 0000000000..3d9dee7c4f
--- /dev/null
+++ b/l10n-th/toolkit/toolkit/global/processTypes.ftl
@@ -0,0 +1,57 @@
+# 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 for remote types defined in RemoteType.h
+##
+
+process-type-web = เนื้อหาเว็บ
+# process used to run privileged about pages,
+# such as about:home
+process-type-privilegedabout = สิทธิพิเศษเกี่ยวกับ
+# process used to run privileged mozilla pages,
+# such as accounts.firefox.com
+process-type-privilegedmozilla = เนื้อหา Mozilla ที่มีสิทธิ
+process-type-extension = ส่วนขยาย
+# process used to open file:// URLs
+process-type-file = ไฟล์ในเครื่อง
+# process used to isolate a webpage from other web pages
+# to improve security
+process-type-webisolated = เนื้อหาเว็บที่ถูกคัดแยก
+# process used to isolate a ServiceWorker to improve
+# performance
+process-type-webserviceworker = Service Worker ที่ถูกคัดแยก
+# process preallocated; may change to other types
+process-type-prealloc = จัดสรรไว้ล่วงหน้า
+
+##
+## Localization for Gecko process types defined in GeckoProcessTypes.h
+##
+
+process-type-default = หลัก
+process-type-tab = แท็บ
+# process used to communicate with the GPU for
+# graphics acceleration
+process-type-gpu = GPU
+# process used to perform network operations
+process-type-socket = ซ็อกเก็ต
+# process used to decode media
+process-type-rdd = RDD
+# process used to run some IPC actor in their own sandbox
+process-type-utility = Sandboxed IPC Actor
+process-type-utility-actor-audio-decoder-generic = ยูทิลิตี Generic Audio Decoder
+process-type-utility-actor-audio-decoder-applemedia = ยูทิลิตี AppleMedia
+process-type-utility-actor-audio-decoder-wmf = ยูทิลิตี Windows Media Foundation
+process-type-utility-actor-mf-media-engine = ยูทิลิตี Media Foundation Engine
+process-type-utility-actor-js-oracle = ยูทิลิตี JavaScript Oracle
+process-type-utility-actor-windows-utils = ยูทิลิตี Windows Utils
+process-type-utility-actor-windows-file-dialog = ยูทิลิตี Windows File Dialog
+
+##
+## Other
+##
+
+# fallback
+process-type-unknown = ไม่ทราบ
diff --git a/l10n-th/toolkit/toolkit/global/profileDowngrade.ftl b/l10n-th/toolkit/toolkit/global/profileDowngrade.ftl
new file mode 100644
index 0000000000..dceba8c999
--- /dev/null
+++ b/l10n-th/toolkit/toolkit/global/profileDowngrade.ftl
@@ -0,0 +1,18 @@
+# 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/.
+
+profiledowngrade-window2 =
+ .title = คุณได้เรียกใช้ { -brand-product-name } รุ่นเก่า
+ .style = min-width: 490px;
+profiledowngrade-window-create =
+ .label = สร้างโปรไฟล์ใหม่
+profiledowngrade-sync = การใช้ { -brand-product-name } รุ่นเก่าอาจทำให้ที่คั่นหน้าและประวัติการเรียกดูที่บันทึกไว้ในโปรไฟล์ { -brand-product-name } ที่มีอยู่เสียหาย เพื่อปกป้องข้อมูลของคุณ ให้สร้างโปรไฟล์ใหม่สำหรับการติดตั้ง { -brand-short-name } นี้ คุณสามารถลงชื่อเข้าใช้ด้วย{ -fxaccount-brand-name } เพื่อซิงค์ที่คั่นหน้าและประวัติการเรียกดูของคุณข้ามโปรไฟล์ได้
+profiledowngrade-sync2 = การใช้ { -brand-product-name } รุ่นเก่ากว่านี้อาจทำให้ที่คั่นหน้าและประวัติการเรียกดูซึ่งบันทึกไว้ในโปรไฟล์ { -brand-product-name } ที่มีอยู่แล้วเกิดความเสียหายได้ เพื่อเป็นการปกป้องข้อมูลของคุณ ให้สร้างโปรไฟล์ใหม่สำหรับ { -brand-short-name } ตัวที่ติดตั้งนี้ คุณสามารถลงชื่อเข้าด้วยบัญชีเพื่อซิงค์ที่คั่นหน้าและประวัติการเรียกดูของคุณกับโปรไฟล์ต่าง ๆ ได้ตลอด
+profiledowngrade-nosync = การใช้ { -brand-product-name } รุ่นเก่าอาจทำให้ที่คั่นหน้าและประวัติการเรียกดูที่บันทึกไว้ในโปรไฟล์ { -brand-product-name } ที่มีอยู่เสียหาย เพื่อปกป้องข้อมูลของคุณ ให้สร้างโปรไฟล์ใหม่สำหรับการติดตั้ง { -brand-short-name } นี้
+profiledowngrade-quit =
+ .label =
+ { PLATFORM() ->
+ [windows] ออก
+ *[other] ออก
+ }
diff --git a/l10n-th/toolkit/toolkit/global/profileSelection.ftl b/l10n-th/toolkit/toolkit/global/profileSelection.ftl
new file mode 100644
index 0000000000..11c53b9ed8
--- /dev/null
+++ b/l10n-th/toolkit/toolkit/global/profileSelection.ftl
@@ -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/.
+
+profile-selection-window =
+ .title = { -brand-short-name } - เลือกโปรไฟล์ผู้ใช้
+
+profile-selection-button-accept =
+ .label = เริ่ม { -brand-short-name }
+
+profile-selection-button-cancel =
+ .label = ออก
+
+profile-selection-new-button =
+ .label = สร้างโปรไฟล์…
+ .accesskey = ส
+
+profile-selection-rename-button =
+ .label = เปลี่ยนชื่อโปรไฟล์…
+ .accesskey = ป
+
+profile-selection-delete-button =
+ .label = ลบโปรไฟล์…
+ .accesskey = ล
+
+profile-selection-conflict-message = สำเนาอื่นของ { -brand-product-name } ได้ทำการเปลี่ยนแปลงกับโปรไฟล์ คุณต้องเริ่มการทำงาน { -brand-short-name } ใหม่ก่อนจึงจะสามารถทำการเปลี่ยนแปลงเพิ่มเติมได้
+
+## Messages used in the profile manager
+
+profile-manager-description = { -brand-short-name } จัดเก็บข้อมูลเกี่ยวกับการตั้งค่า, ค่ากำหนด และข้อมูลผู้ใช้อื่น ๆ ในโปรไฟล์ผู้ใช้ของคุณ
+
+profile-manager-work-offline =
+ .label = ทำงานออฟไลน์
+ .accesskey = ฟ
+
+profile-manager-use-selected =
+ .label = ใช้โปรไฟล์ที่เลือกโดยไม่ต้องถามเมื่อเริ่มการทำงาน
+ .accesskey = ช
diff --git a/l10n-th/toolkit/toolkit/global/resetProfile.ftl b/l10n-th/toolkit/toolkit/global/resetProfile.ftl
new file mode 100644
index 0000000000..4575c20606
--- /dev/null
+++ b/l10n-th/toolkit/toolkit/global/resetProfile.ftl
@@ -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/.
+
+refresh-profile-dialog-title = ต้องการล้าง { -brand-short-name } ใหม่ให้เป็นการตั้งค่าเริ่มต้นหรือไม่
+refresh-profile-dialog-button =
+ .label = ล้าง { -brand-short-name } ใหม่
+refresh-profile-dialog-description = ล้างใหม่เพื่อแก้ไขปัญหาด้านประสิทธิภาพ การดำเนินการนี้จะเอาส่วนขยายและการปรับแต่งของคุณออก คุณจะไม่สูญเสียข้อมูลที่สำคัญ เช่น ที่คั่นหน้า และรหัสผ่าน
+refresh-profile = รีดประสิทธิภาพ { -brand-short-name }
+refresh-profile-button = ล้าง { -brand-short-name } ใหม่…
+refresh-profile-learn-more = เรียนรู้เพิ่มเติม
+
+refresh-profile-progress =
+ .title = ล้าง { -brand-short-name } ใหม่
+refresh-profile-progress-description = เกือบเสร็จสิ้น…
diff --git a/l10n-th/toolkit/toolkit/global/resistFingerPrinting.ftl b/l10n-th/toolkit/toolkit/global/resistFingerPrinting.ftl
new file mode 100644
index 0000000000..3407555346
--- /dev/null
+++ b/l10n-th/toolkit/toolkit/global/resistFingerPrinting.ftl
@@ -0,0 +1,6 @@
+# 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/.
+
+# Spoof Accept-Language prompt
+privacy-spoof-english = การเปลี่ยนการตั้งค่าภาษาของคุณเป็นอังกฤษจะทำให้ระบุคุณได้ยากขึ้นและเพิ่มความเป็นส่วนตัวของคุณ คุณต้องการขอรุ่นภาษาอังกฤษของหน้าเว็บหรือไม่?
diff --git a/l10n-th/toolkit/toolkit/global/run-from-dmg.ftl b/l10n-th/toolkit/toolkit/global/run-from-dmg.ftl
new file mode 100644
index 0000000000..f6a178bbbe
--- /dev/null
+++ b/l10n-th/toolkit/toolkit/global/run-from-dmg.ftl
@@ -0,0 +1,28 @@
+# 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/.
+
+
+## Strings for a dialog that may open on macOS before the app's main window
+## opens. The dialog prompts the user to allow the app to install itself in an
+## appropriate location before relaunching itself from that location if the
+## user accepts.
+
+prompt-to-install-title = ต้องการทำการติดตั้ง { -brand-short-name } ให้เสร็จหรือไม่
+prompt-to-install-message = ทำการติดตั้งแบบขั้นตอนเดียวนี้ให้เสร็จเพื่ออัปเดต { -brand-short-name } อยู่เสมอและป้องกันการสูญเสียข้อมูล { -brand-short-name } จะถูกเพิ่มไปยังโฟลเดอร์แอปพลิเคชันและ Dock ของคุณ
+prompt-to-install-yes-button = ติดตั้ง
+prompt-to-install-no-button = อย่าติดตั้ง
+
+## Strings for a dialog that opens if the installation failed.
+
+install-failed-title = การติดตั้ง { -brand-short-name } ล้มเหลว
+install-failed-message = { -brand-short-name } ไม่สามารถติดตั้งได้ แต่ยังเรียกใช้งานได้
+
+## Strings for a dialog that recommends to the user to start an existing
+## installation of the app in the Applications directory if one is detected,
+## rather than the app that was double-clicked in a .dmg.
+
+prompt-to-launch-existing-app-title = ต้องการเปิดแอปพลิเคชัน { -brand-short-name } ที่มีอยู่หรือไม่
+prompt-to-launch-existing-app-message = คุณได้ติดตั้ง { -brand-short-name } แล้ว ใช้แอปพลิเคชันที่ติดตั้งนี้เพื่ออัปเดตอยู่เสมอและป้องกันการสูญเสียข้อมูล
+prompt-to-launch-existing-app-yes-button = เปิดแอปพลิเคชันที่มีอยู่
+prompt-to-launch-existing-app-no-button = ไม่ ขอบคุณ
diff --git a/l10n-th/toolkit/toolkit/global/tabprompts.ftl b/l10n-th/toolkit/toolkit/global/tabprompts.ftl
new file mode 100644
index 0000000000..9955c3a002
--- /dev/null
+++ b/l10n-th/toolkit/toolkit/global/tabprompts.ftl
@@ -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/.
+
+tabmodalprompt-username =
+ .value = ชื่อผู้ใช้:
+tabmodalprompt-password =
+ .value = รหัสผ่าน:
+
+tabmodalprompt-ok-button =
+ .label = ตกลง
+tabmodalprompt-cancel-button =
+ .label = ยกเลิก
diff --git a/l10n-th/toolkit/toolkit/global/textActions.ftl b/l10n-th/toolkit/toolkit/global/textActions.ftl
new file mode 100644
index 0000000000..a44044c82a
--- /dev/null
+++ b/l10n-th/toolkit/toolkit/global/textActions.ftl
@@ -0,0 +1,64 @@
+# 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/.
+
+text-action-undo =
+ .label = เลิกทำ
+ .accesskey = ล
+text-action-undo-shortcut =
+ .key = Z
+text-action-redo =
+ .label = ทำซ้ำ
+ .accesskey = ท
+text-action-redo-shortcut =
+ .key = Y
+text-action-cut =
+ .label = ตัด
+ .accesskey = ต
+text-action-cut-shortcut =
+ .key = X
+text-action-copy =
+ .label = คัดลอก
+ .accesskey = ค
+text-action-copy-shortcut =
+ .key = C
+# This command copies the link, removing additional
+# query parameters used to track users across sites.
+text-action-strip-on-share =
+ .label = คัดลอกโดยไม่ติดตามไซต์
+ .accesskey = n
+text-action-paste =
+ .label = วาง
+ .accesskey = ว
+text-action-paste-no-formatting =
+ .label = วางโดยไม่มีการจัดรูปแบบ
+ .accesskey = m
+text-action-paste-shortcut =
+ .key = V
+text-action-delete =
+ .label = ลบ
+ .accesskey = บ
+text-action-select-all =
+ .label = เลือกทั้งหมด
+ .accesskey = ม
+text-action-select-all-shortcut =
+ .key = A
+text-action-spell-no-suggestions =
+ .label = ไม่มีข้อเสนอแนะการสะกดคำ
+text-action-spell-add-to-dictionary =
+ .label = เพิ่มไปยังพจนานุกรม
+ .accesskey = ไ
+text-action-spell-undo-add-to-dictionary =
+ .label = ยกเลิกการเพิ่มไปยังพจนานุกรม
+ .accesskey = ย
+text-action-spell-check-toggle =
+ .label = ตรวจสอบการสะกดคำ
+ .accesskey = ต
+text-action-spell-add-dictionaries =
+ .label = เพิ่มพจนานุกรม…
+ .accesskey = พ
+text-action-spell-dictionaries =
+ .label = ภาษา
+ .accesskey = ภ
+text-action-search-text-box-clear =
+ .title = ล้าง
diff --git a/l10n-th/toolkit/toolkit/global/timepicker.ftl b/l10n-th/toolkit/toolkit/global/timepicker.ftl
new file mode 100644
index 0000000000..6fbe8159b2
--- /dev/null
+++ b/l10n-th/toolkit/toolkit/global/timepicker.ftl
@@ -0,0 +1,3 @@
+# 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/.
diff --git a/l10n-th/toolkit/toolkit/global/tree.ftl b/l10n-th/toolkit/toolkit/global/tree.ftl
new file mode 100644
index 0000000000..d6dc5b8e6e
--- /dev/null
+++ b/l10n-th/toolkit/toolkit/global/tree.ftl
@@ -0,0 +1,6 @@
+# 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/.
+
+tree-columnpicker-restore-order =
+ .label = คืนค่าลำดับสดมภ์
diff --git a/l10n-th/toolkit/toolkit/global/unknownContentType.ftl b/l10n-th/toolkit/toolkit/global/unknownContentType.ftl
new file mode 100644
index 0000000000..f13dde076e
--- /dev/null
+++ b/l10n-th/toolkit/toolkit/global/unknownContentType.ftl
@@ -0,0 +1,42 @@
+# 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/.
+
+unknowncontenttype-handleinternally =
+ .label = เปิดด้วย { -brand-short-name }
+ .accesskey = ป
+
+unknowncontenttype-settingschange =
+ .value =
+ { PLATFORM() ->
+ [windows] การตั้งค่าสามารถเปลี่ยนได้ในตัวเลือกของ { -brand-short-name }
+ *[other] การตั้งค่าสามารถเปลี่ยนได้ในค่ากำหนดของ { -brand-short-name }
+ }
+
+unknowncontenttype-intro = คุณได้เลือกที่จะเปิด:
+unknowncontenttype-which-is = ซึ่งเป็น:
+unknowncontenttype-from = จาก:
+unknowncontenttype-prompt = คุณต้องการบันทึกไฟล์นี้หรือไม่?
+unknowncontenttype-action-question = { -brand-short-name } ควรจะทำอะไรกับไฟล์นี้?
+unknowncontenttype-open-with =
+ .label = เปิดด้วย
+ .accesskey = ป
+unknowncontenttype-other =
+ .label = อื่น ๆ…
+unknowncontenttype-choose-handler =
+ .label =
+ { PLATFORM() ->
+ [macos] เลือก…
+ *[other] เรียกดู…
+ }
+ .accesskey =
+ { PLATFORM() ->
+ [macos] ล
+ *[other] ร
+ }
+unknowncontenttype-save-file =
+ .label = บันทึกไฟล์
+ .accesskey = บ
+unknowncontenttype-remember-choice =
+ .label = ทำสิ่งนี้กับไฟล์ชนิดนี้โดยอัตโนมัติในครั้งถัดไป
+ .accesskey = ท
diff --git a/l10n-th/toolkit/toolkit/global/videocontrols.ftl b/l10n-th/toolkit/toolkit/global/videocontrols.ftl
new file mode 100644
index 0000000000..a13407d284
--- /dev/null
+++ b/l10n-th/toolkit/toolkit/global/videocontrols.ftl
@@ -0,0 +1,74 @@
+# 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 label is used by screenreaders and other assistive technology to indicate
+# to users how much of the video has been loaded from the network. It will be
+# followed by the percentage of the video that has loaded (e.g. "Loading: 13%").
+videocontrols-buffer-bar-label = กำลังโหลด:
+videocontrols-volume-control =
+ .aria-label = ระดับเสียง
+videocontrols-closed-caption-button =
+ .aria-label = คำบรรยายแบบปิด
+
+videocontrols-play-button =
+ .aria-label = เล่น
+videocontrols-pause-button =
+ .aria-label = หยุดชั่วคราว
+videocontrols-mute-button =
+ .aria-label = ปิดเสียง
+videocontrols-unmute-button =
+ .aria-label = เลิกปิดเสียง
+videocontrols-enterfullscreen-button =
+ .aria-label = เต็มหน้าจอ
+videocontrols-exitfullscreen-button =
+ .aria-label = ออกจากภาพเต็มหน้าจอ
+videocontrols-casting-button-label =
+ .aria-label = ฉายขึ้นหน้าจอ
+videocontrols-closed-caption-off =
+ .offlabel = ปิด
+
+# This string is used as part of the Picture-in-Picture video toggle button when
+# the mouse is hovering it.
+videocontrols-picture-in-picture-label = ภาพที่เล่นควบคู่
+
+# This string is used as the label for a variation of the Picture-in-Picture video
+# toggle button when the mouse is hovering over the video.
+videocontrols-picture-in-picture-toggle-label2 = เปิดหน้าต่างใหม่สำหรับวิดีโอนี้
+
+# This string is used as part of a variation of the Picture-in-Picture video toggle
+# button. When using this variation, this string appears below the toggle when the
+# mouse hovers the toggle.
+videocontrols-picture-in-picture-explainer3 = สนุกได้มากกว่าเดิมด้วยหน้าจอที่มากขึ้น เล่นวิดีโอนี้ในขณะที่คุณทำอย่างอื่นอยู่
+
+videocontrols-error-aborted = วิดีโอหยุดโหลด
+videocontrols-error-network = การเล่นวิดีโอถูกยกเลิกเนื่องจากข้อผิดพลาดทางเครือข่าย
+videocontrols-error-decode = ไม่สามารถเล่นวิดีโอได้เนื่องจากไฟล์เสียหาย
+videocontrols-error-src-not-supported = ไม่สามารถเล่นวิดีโอรูปแบบนี้ หรือ MIME ชนิดนี้ได้
+videocontrols-error-no-source = ไม่พบวิดีโอที่อยู่ในรูปแบบหรือชนิดของ MIME ที่เล่นได้
+videocontrols-error-generic = การเล่นวิดีโอถูกยกเลิกเนื่องจากข้อผิดพลาดที่ไม่ระบุไม่ได้
+videocontrols-status-picture-in-picture = วิดีโอนี้กำลังเล่นในโหมดภาพที่เล่นควบคู่
+
+# This message shows the current position and total video duration
+#
+# Variables:
+# $position (String): The current media position
+# $duration (String): The total video duration
+#
+# For example, when at the 5 minute mark in a 6 hour long video,
+# $position would be "5:00" and $duration would be "6:00:00", result
+# string would be "5:00 / 6:00:00". Note that $duration is not always
+# available. For example, when at the 5 minute mark in an unknown
+# duration video, $position would be "5:00" and the string which is
+# surrounded by <span> would be deleted, result string would be "5:00".
+videocontrols-position-and-duration-labels = { $position }<span data-l10n-name="position-duration-format"> / { $duration }</span>
+
+# This is a plain text version of the videocontrols-position-and-duration-labels
+# string, used by screenreaders.
+#
+# Variables:
+# $position (String): The current media position
+# $duration (String): The total video duration
+videocontrols-scrubber-position-and-duration =
+ .aria-label = ตําแหน่ง
+ .aria-valuetext = { $position } / { $duration }
diff --git a/l10n-th/toolkit/toolkit/global/wizard.ftl b/l10n-th/toolkit/toolkit/global/wizard.ftl
new file mode 100644
index 0000000000..20cb2823b7
--- /dev/null
+++ b/l10n-th/toolkit/toolkit/global/wizard.ftl
@@ -0,0 +1,37 @@
+# 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/.
+
+wizard-macos-button-back =
+ .label = ย้อนกลับ
+ .accesskey = ย
+wizard-linux-button-back =
+ .label = ย้อนกลับ
+ .accesskey = ย
+wizard-win-button-back =
+ .label = < ย้อนกลับ
+ .accesskey = ย
+
+wizard-macos-button-next =
+ .label = ดำเนินการต่อ
+ .accesskey = ด
+wizard-linux-button-next =
+ .label = ถัดไป
+ .accesskey = ถ
+wizard-win-button-next =
+ .label = ถัดไป >
+ .accesskey = ถ
+
+wizard-macos-button-finish =
+ .label = เสร็จสิ้น
+wizard-linux-button-finish =
+ .label = เสร็จสิ้น
+wizard-win-button-finish =
+ .label = เสร็จสิ้น
+
+wizard-macos-button-cancel =
+ .label = ยกเลิก
+wizard-linux-button-cancel =
+ .label = ยกเลิก
+wizard-win-button-cancel =
+ .label = ยกเลิก
diff --git a/l10n-th/toolkit/toolkit/intl/languageNames.ftl b/l10n-th/toolkit/toolkit/intl/languageNames.ftl
new file mode 100644
index 0000000000..d18e2c50ad
--- /dev/null
+++ b/l10n-th/toolkit/toolkit/intl/languageNames.ftl
@@ -0,0 +1,215 @@
+# 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/.
+
+language-name-aa = อะฟาร์
+language-name-ab = อับคาเซีย
+language-name-ach = อาโชลี
+language-name-ae = อาเวสทาน
+language-name-af = แอฟริกา
+language-name-ak = อาคาน
+language-name-am = อัมฮาริก
+language-name-an = อารากอน
+language-name-ar = อาหรับ
+language-name-as = อัสสัม
+language-name-ast = อัสตูเรีย
+language-name-av = อาวาริก
+language-name-ay = ไอมารา
+language-name-az = อาเซอร์ไบจาน
+language-name-ba = บัชคีร์
+language-name-be = เบลารุส
+language-name-bg = บัลแกเรีย
+language-name-bh = พิหารี
+language-name-bi = บิสลามา
+language-name-bm = บัมบารา
+language-name-bn = เบงกาลี
+language-name-bo = ทิเบต
+language-name-br = เบรตัน
+language-name-bs = บอสเนีย
+language-name-ca = คาตาลัน
+language-name-cak = คักชิเกล
+language-name-ce = เชเชน
+language-name-ch = ชาโมร์โร
+language-name-co = คอร์ซิกา
+language-name-cr = ครี
+language-name-crh = ตาตาร์ไครเมีย
+language-name-cs = เช็ก
+language-name-csb = คาชูเบีย
+language-name-cu = เชอร์ชสลาวิก
+language-name-cv = ชูวัช
+language-name-cy = เวลส์
+language-name-da = เดนมาร์ก
+language-name-de = เยอรมัน
+language-name-dsb = เซอร์เบียตอนล่าง
+language-name-dv = ดิเวฮี
+language-name-dz = ซองคา
+language-name-ee = เอเว
+language-name-el = กรีก
+language-name-en = อังกฤษ
+language-name-eo = เอสเปรันโต
+language-name-es = สเปน
+language-name-et = เอสโตเนีย
+language-name-eu = บาสก์
+language-name-fa = เปอร์เซีย
+language-name-ff = ฟูลา
+language-name-fi = ฟินแลนด์
+language-name-fj = ฟิจิ
+language-name-fo = แฟโร
+language-name-fr = ฝรั่งเศส
+language-name-fur = ฟริยูเลียน
+language-name-fy = ฟรีเซียน
+language-name-ga = ไอริช
+language-name-gd = เกลิกสกอต
+language-name-gl = กาลิเชีย
+language-name-gn = กัวรานี
+language-name-gu = คุชราตี
+language-name-gv = มานซ์
+language-name-ha = เฮาซา
+language-name-haw = ฮาวาย
+language-name-he = ฮิบรู
+language-name-hi = ฮินดี
+language-name-hil = ฮีลีไกโนน
+language-name-ho = ฮิริโมตุ
+language-name-hr = โครเอเชีย
+language-name-hsb = เซอร์เบียตอนบน
+language-name-ht = เฮติ
+language-name-hu = ฮังการี
+language-name-hy = อาร์เมเนีย
+language-name-hz = เฮียโร
+language-name-ia = อินเทอร์ลิงกัว
+language-name-id = อินโดนีเซีย
+language-name-ie = อินเทอร์ลิงก์
+language-name-ig = อิกโบ
+language-name-ii = เสฉวนอี้
+language-name-ik = อินูเปียต
+language-name-io = อิดอ
+language-name-is = ไอซ์แลนด์
+language-name-it = อิตาลี
+language-name-iu = อินุกติตัต
+language-name-ja = ญี่ปุ่น
+language-name-jv = ชวา
+language-name-ka = จอร์เจีย
+language-name-kab = คาบาล์ย
+language-name-kg = กองโก
+language-name-ki = คิคูยู
+language-name-kj = กวนยามา
+language-name-kk = คาซัค
+language-name-kl = กรีนแลนด์
+language-name-km = เขมร
+language-name-kn = กัณณาท
+language-name-ko = เกาหลี
+language-name-kok = กงกณี
+language-name-kr = คานูรี
+language-name-ks = แคชเมียร์
+language-name-ku = เคิร์ด
+language-name-kv = โคมิ
+language-name-kw = คอร์นิช
+language-name-ky = คีร์กิซ
+language-name-la = ละติน
+language-name-lb = ลักเซมเบิร์ก
+language-name-lg = กันดา
+language-name-li = ลิมเบิร์ก
+language-name-lij = ลีคูเลียน
+language-name-ln = ลิงกาลา
+language-name-lo = ลาว
+language-name-lt = ลิทัวเนีย
+language-name-ltg = ลัตกาเล
+language-name-lu = ลูบา-กาตังกา
+language-name-lv = ลัตเวีย
+language-name-mai = ไมถิลี
+language-name-meh = มิซเท็กทลาเซียโกตะวันตกเฉียงใต้
+language-name-mg = มาลากาซี
+language-name-mh = มาร์แชลลีส
+language-name-mi = เมารี
+language-name-mix = มิซเท็กมิซเทเพ็ก
+language-name-mk = มาซิโดเนีย
+language-name-ml = มะละยาลัม
+language-name-mn = มองโกเลีย
+language-name-mr = มาราฐี
+language-name-ms = มาเลย์
+language-name-mt = มอลตา
+language-name-my = พม่า
+language-name-na = นาอูรู
+language-name-nb = นอร์เวย์บ็อกมัล
+language-name-nd = อินเดบีเลเหนือ
+language-name-ne = เนปาล
+language-name-ng = นดองกา
+language-name-nl = ดัตช์
+language-name-nn = นอร์เวย์ไนนอสก์
+language-name-no = นอร์เวย์
+language-name-nr = อินเดบีเลใต้
+language-name-nso = โซโทเหนือ
+language-name-nv = นาวาโจ
+language-name-ny = ชิเชวา
+language-name-oc = อ็อกซิตัน
+language-name-oj = โอจิบเว
+language-name-om = โอโรโม
+language-name-or = โอเดีย
+language-name-os = ออสซีเชีย
+language-name-pa = ปัญจาบี
+language-name-pi = บาลี
+language-name-pl = โปแลนด์
+language-name-ps = พาชตู
+language-name-pt = โปรตุเกส
+language-name-qu = เคชวา
+language-name-rm = เรโต-โรมัน
+language-name-rn = คิรันดี
+language-name-ro = โรมาเนีย
+language-name-ru = รัสเซีย
+language-name-rw = คินยาร์วานดา
+language-name-sa = สันสกฤต
+language-name-sat = สันถาลี
+language-name-sc = ซาดิเนีย
+language-name-sco = สก็อตส์
+language-name-sd = สินธิ
+language-name-se = เซมีเหนือ
+language-name-sg = แซงโก
+language-name-si = สิงหล
+language-name-sk = สโลวัก
+language-name-sl = สโลวีเนีย
+language-name-sm = ซามัว
+language-name-sn = โชนา
+language-name-so = โซมาลี
+language-name-son = ซองเฮย์
+language-name-sq = แอลเบเนีย
+language-name-sr = เซอร์เบีย
+language-name-ss = ซีสวาติ
+language-name-st = โซโทใต้
+language-name-su = ซุนดา
+language-name-sv = สวีเดน
+language-name-sw = สวาฮีลี
+language-name-szl = ซิลีเซีย
+language-name-ta = ทมิฬ
+language-name-te = เตลูกู
+language-name-tg = ทาจิก
+language-name-th = ไทย
+language-name-ti = ติกรินยา
+language-name-tig = ทิเกร
+language-name-tk = เติร์กเมนิสถาน
+language-name-tl = ตากาล็อก
+language-name-tlh = คลิงงอน
+language-name-tn = สวานา
+language-name-to = ตองกา
+language-name-tr = ตุรกี
+language-name-trs = ทริคี
+language-name-ts = ซองกา
+language-name-tt = ตาตาร์
+language-name-tw = ทวิ
+language-name-ty = ทาฮิติ
+language-name-ug = อุยกูร์
+language-name-uk = ยูเครน
+language-name-ur = อูรดู
+language-name-uz = อุซเบกิสถาน
+language-name-ve = เวนดา
+language-name-vi = เวียดนาม
+language-name-vo = โวลาปิค
+language-name-wa = วอลลูน
+language-name-wen = เซอร์เบีย
+language-name-wo = โวลอฟ
+language-name-xh = โซซา
+language-name-yi = ยิดดิช
+language-name-yo = โยรูบา
+language-name-za = จ้วง
+language-name-zam = ซาโพเท็กเมียฮวัตลัน
+language-name-zh = จีน
+language-name-zu = ซูลู
diff --git a/l10n-th/toolkit/toolkit/intl/regionNames.ftl b/l10n-th/toolkit/toolkit/intl/regionNames.ftl
new file mode 100644
index 0000000000..1ace89b8ba
--- /dev/null
+++ b/l10n-th/toolkit/toolkit/intl/regionNames.ftl
@@ -0,0 +1,280 @@
+# 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/.
+
+
+### Notice: If you're updating this list, you should also
+### update the list in mozIntl.js.
+
+region-name-ad = อันดอร์รา
+region-name-ae = สหรัฐอาหรับเอมิเรตส์
+region-name-af = อัฟกานิสถาน
+region-name-ag = แอนติกาและบาร์บูดา
+region-name-ai = แองกวิลลา
+region-name-al = แอลเบเนีย
+region-name-am = อาร์เมเนีย
+region-name-ao = แองโกลา
+region-name-aq = แอนตาร์กติกา
+region-name-ar = อาร์เจนตินา
+region-name-as = อเมริกันซามัว
+region-name-at = ออสเตรีย
+region-name-au = ออสเตรเลีย
+region-name-aw = อารูบา
+region-name-az = อาเซอร์ไบจาน
+region-name-ba = บอสเนียและเฮอร์เซโกวีนา
+region-name-bb = บาร์เบโดส
+region-name-bd = บังกลาเทศ
+region-name-be = เบลเยียม
+region-name-bf = บูร์กินาฟาโซ
+region-name-bg = บัลแกเรีย
+region-name-bh = บาห์เรน
+region-name-bi = บุรุนดี
+region-name-bj = เบนิน
+region-name-bl = แซ็ง-บาร์เตเลมี
+region-name-bm = เบอร์มิวดา
+region-name-bn = บรูไน
+region-name-bo = โบลิเวีย
+region-name-bq-2018 = แคริบเบียนเนเธอร์แลนด์
+region-name-br = บราซิล
+region-name-bs = บาฮามาส
+region-name-bt = ภูฏาน
+region-name-bv = เกาะบูเวต์
+region-name-bw = บอตสวานา
+region-name-by = เบลารุส
+region-name-bz = เบลีซ
+region-name-ca = แคนาดา
+region-name-cc = หมู่เกาะโคโคส (คีลิง)
+region-name-cd = คองโก (กินชาซา)
+region-name-cf = สาธารณรัฐแอฟริกากลาง
+region-name-cg = คองโก (บราซซาวิล)
+region-name-ch = สวิตเซอร์แลนด์
+region-name-ci = โกตดิวัวร์
+region-name-ck = หมู่เกาะคุก
+region-name-cl = ชิลี
+region-name-cm = แคเมอรูน
+region-name-cn = จีน
+region-name-co = โคลอมเบีย
+region-name-cp = เกาะกลีแปร์ตอน
+region-name-cr = คอสตาริกา
+region-name-cu = คิวบา
+region-name-cv-2020 = กาบูเวร์ดี
+region-name-cw = กือราเซา
+region-name-cx = เกาะคริสต์มาส
+region-name-cy = ไซปรัส
+region-name-cz-2019 = เช็ก
+region-name-de = เยอรมนี
+region-name-dg = ดีเอโกการ์ซีอา
+region-name-dj = จิบูตี
+region-name-dk = เดนมาร์ก
+region-name-dm = โดมินิกา
+region-name-do = สาธารณรัฐโดมินิกัน
+region-name-dz = แอลจีเรีย
+region-name-ec = เอกวาดอร์
+region-name-ee = เอสโตเนีย
+region-name-eg = อียิปต์
+region-name-eh = ซาฮาราตะวันตก
+region-name-er = เอริเทรีย
+region-name-es = สเปน
+region-name-et = เอธิโอเปีย
+region-name-fi = ฟินแลนด์
+region-name-fj = ฟิจิ
+region-name-fk = หมู่เกาะฟอล์กแลนด์ (หมู่เกาะมัลบีนัส)
+region-name-fm = สหพันธรัฐไมโครนีเซีย
+region-name-fo = หมู่เกาะแฟโร
+region-name-fr = ฝรั่งเศส
+region-name-ga = กาบอง
+region-name-gb = สหราชอาณาจักร
+region-name-gd = เกรนาดา
+region-name-ge = จอร์เจีย
+region-name-gf = เฟรนช์เกียนา
+region-name-gg = เกิร์นซีย์
+region-name-gh = กานา
+region-name-gi = ยิบรอลตาร์
+region-name-gl = กรีนแลนด์
+region-name-gm = แกมเบีย
+region-name-gn = กินี
+region-name-gp = กวาเดอลูป
+region-name-gq = อิเควทอเรียลกินี
+region-name-gr = กรีซ
+region-name-gs = เซาท์จอร์เจียและหมู่เกาะเซาท์แซนด์วิช
+region-name-gt = กัวเตมาลา
+region-name-gu = กวม
+region-name-gw = กินีบิสเซา
+region-name-gy = กายอานา
+region-name-hk = ฮ่องกง
+region-name-hm = เกาะเฮิร์ดและหมู่เกาะแมกดอนัลด์
+region-name-hn = ฮอนดูรัส
+region-name-hr = โครเอเชีย
+region-name-ht = เฮติ
+region-name-hu = ฮังการี
+region-name-id = อินโดนีเซีย
+region-name-ie = ไอร์แลนด์
+region-name-il = อิสราเอล
+region-name-im = เกาะแมน
+region-name-in = อินเดีย
+region-name-io = บริติชอินเดียนโอเชียนเทร์ริทอรี
+region-name-iq = อิรัก
+region-name-ir = อิหร่าน
+region-name-is = ไอซ์แลนด์
+region-name-it = อิตาลี
+region-name-je = เจอร์ซีย์
+region-name-jm = จาไมกา
+region-name-jo = จอร์แดน
+region-name-jp = ญี่ปุ่น
+region-name-ke = เคนยา
+region-name-kg = คีร์กีซสถาน
+region-name-kh = กัมพูชา
+region-name-ki = คิริบาตี
+region-name-km = คอโมโรส
+region-name-kn = เซนต์คิตส์และเนวิส
+region-name-kp = เกาหลีเหนือ
+region-name-kr = เกาหลีใต้
+region-name-kw = คูเวต
+region-name-ky = หมู่เกาะเคย์แมน
+region-name-kz = คาซัคสถาน
+region-name-la = ลาว
+region-name-lb = เลบานอน
+region-name-lc = เซนต์ลูเซีย
+region-name-li = ลิกเตนสไตน์
+region-name-lk = ศรีลังกา
+region-name-lr = ไลบีเรีย
+region-name-ls = เลโซโท
+region-name-lt = ลิทัวเนีย
+region-name-lu = ลักเซมเบิร์ก
+region-name-lv = ลัตเวีย
+region-name-ly = ลิเบีย
+region-name-ma = โมร็อกโก
+region-name-mc = โมนาโก
+region-name-md = มอลโดวา
+region-name-me = มอนเตเนโกร
+region-name-mf = เซนต์มาร์ติน
+region-name-mg = มาดากัสการ์
+region-name-mh = หมู่เกาะมาร์แชลล์
+region-name-mk-2019 = มาซิโดเนียเหนือ
+region-name-ml = มาลี
+region-name-mm = พม่า
+region-name-mn = มองโกเลีย
+region-name-mo = มาเก๊า
+region-name-mp = หมู่เกาะนอร์เทิร์นมาเรียนา
+region-name-mq = มาร์ตินีก
+region-name-mr = มอริเตเนีย
+region-name-ms = มอนต์เซอร์รัต
+region-name-mt = มอลตา
+region-name-mu = มอริเชียส
+region-name-mv = มัลดีฟส์
+region-name-mw = มาลาวี
+region-name-mx = เม็กซิโก
+region-name-my = มาเลเซีย
+region-name-mz = โมซัมบิก
+region-name-na = นามิเบีย
+region-name-nc = นิวแคลิโดเนีย
+region-name-ne = ไนเจอร์
+region-name-nf = เกาะนอร์ฟอล์ก
+region-name-ng = ไนจีเรีย
+region-name-ni = นิการากัว
+region-name-nl = เนเธอร์แลนด์
+region-name-no = นอร์เวย์
+region-name-np = เนปาล
+region-name-nr = นาอูรู
+region-name-nu = นีอูเอ
+region-name-nz = นิวซีแลนด์
+region-name-om = โอมาน
+region-name-pa = ปานามา
+region-name-pe = เปรู
+region-name-pf = เฟรนช์โปลินีเซีย
+region-name-pg = ปาปัวนิวกินี
+region-name-ph = ฟิลิปปินส์
+region-name-pk = ปากีสถาน
+region-name-pl = โปแลนด์
+region-name-pm = แซงปีแยร์และมีเกอลง
+region-name-pn = เกาะพิตแคร์น
+region-name-pr = เปอร์โตริโก
+region-name-pt = โปรตุเกส
+region-name-pw = ปาเลา
+region-name-py = ปารากวัย
+region-name-qa = กาตาร์
+region-name-qm = หมู่เกาะมิดเวย์
+region-name-qs = บาซัสดาอินเดีย
+region-name-qu = เกาะฮวนเดโนวา
+region-name-qw = เกาะเวก
+region-name-qx = หมู่เกาะกลอริโอโซ
+region-name-qz = แอโครเทียรี
+region-name-re = เรอูนียง
+region-name-ro = โรมาเนีย
+region-name-rs = เซอร์เบีย
+region-name-ru = รัสเซีย
+region-name-rw = รวันดา
+region-name-sa = ซาอุดีอาระเบีย
+region-name-sb = หมู่เกาะโซโลมอน
+region-name-sc = เซเชลส์
+region-name-sd = ซูดาน
+region-name-se = สวีเดน
+region-name-sg = สิงคโปร์
+region-name-sh = เซนต์เฮเลนา อัสเซนชัน และตริสตันดากูนยา
+region-name-si = สโลวีเนีย
+region-name-sk = สโลวะเกีย
+region-name-sl = เซียร์ราลีโอน
+region-name-sm = ซานมารีโน
+region-name-sn = เซเนกัล
+region-name-so = โซมาเลีย
+region-name-sr = ซูรินาเม
+region-name-ss = ซูดานใต้
+region-name-st = เซาตูเมและปรินซิปี
+region-name-sv = เอลซัลวาดอร์
+region-name-sx = ซินต์มาร์เติน
+region-name-sy = ซีเรีย
+region-name-sz-2019 = เอสวาตีนี
+region-name-tc = หมู่เกาะเติกส์และหมู่เกาะเคคอส
+region-name-td = ชาด
+region-name-tf = เฟรนช์เซาเทิร์นและแอนตาร์กติกแลนดส์
+region-name-tg = โตโก
+region-name-th = ไทย
+region-name-tj = ทาจิกิสถาน
+region-name-tk = โตเกเลา
+region-name-tl = ติมอร์-เลสเต
+region-name-tm = เติร์กเมนิสถาน
+region-name-tn = ตูนิเซีย
+region-name-to = ตองกา
+region-name-tr = ตุรกี
+region-name-tt = ตรินิแดดและโตเบโก
+region-name-tv = ตูวาลู
+region-name-tw = ไต้หวัน
+region-name-tz = แทนซาเนีย
+region-name-ua = ยูเครน
+region-name-ug = ยูกันดา
+region-name-us = สหรัฐอเมริกา
+region-name-uy = อุรุกวัย
+region-name-uz = อุซเบกิสถาน
+region-name-va = นครรัฐวาติกัน
+region-name-vc = เซนต์วินเซนต์และเกรนาดีนส์
+region-name-ve = เวเนซุเอลา
+region-name-vg = หมู่เกาะบริติชเวอร์จิน
+region-name-vi = หมู่เกาะสหรัฐเวอร์จิน
+region-name-vn = เวียดนาม
+region-name-vu = วานูอาตู
+region-name-wf = หมู่เกาะวาลลิสและหมู่เกาะฟูตูนา
+region-name-ws = ซามัว
+region-name-xa = หมู่เกาะแอชมอร์และคาร์เทียร์
+region-name-xb = เกาะเบเกอร์
+region-name-xc = หมู่เกาะคอรัลซี
+region-name-xd = ดิเคเลีย
+region-name-xe = เกาะยูโรปา
+region-name-xg = ฉนวนกาซา
+region-name-xh = เกาะฮาวแลนด์
+region-name-xj = ยานไมเอน
+region-name-xk = คอซอวอ
+region-name-xl = แพลไมราอะทอลล์
+region-name-xm = คิงแมนรีฟ
+region-name-xp = หมู่เกาะแพราเซล
+region-name-xq = เกาะจาร์วิส
+region-name-xr = สฟาลบาร์
+region-name-xs = หมู่เกาะสแปรตลี
+region-name-xt = เกาะโทรเมลิน
+region-name-xu = จอห์นสตันอะทอลล์
+region-name-xv = เกาะนาแวสซา
+region-name-xw = เวสต์แบงก์
+region-name-ye = เยเมน
+region-name-yt = มายอต
+region-name-za = แอฟริกาใต้
+region-name-zm = แซมเบีย
+region-name-zw = ซิมบับเว
diff --git a/l10n-th/toolkit/toolkit/main-window/autocomplete.ftl b/l10n-th/toolkit/toolkit/main-window/autocomplete.ftl
new file mode 100644
index 0000000000..23e95e2241
--- /dev/null
+++ b/l10n-th/toolkit/toolkit/main-window/autocomplete.ftl
@@ -0,0 +1,23 @@
+# 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/.
+
+
+### Import Logins Autocomplete
+
+## Variables:
+## $host (String) - Host name of the current site.
+
+autocomplete-import-logins-chrome =
+ <div data-l10n-name="line1">นำเข้าการเข้าสู่ระบบของคุณจาก Google Chrome</div>
+ <div data-l10n-name="line2">สำหรับ { $host } และไซต์อื่น ๆ</div>
+autocomplete-import-logins-chromium =
+ <div data-l10n-name="line1">นำเข้าการเข้าสู่ระบบของคุณจาก Chromium</div>
+ <div data-l10n-name="line2">สำหรับ { $host } และไซต์อื่น ๆ</div>
+autocomplete-import-logins-chromium-edge =
+ <div data-l10n-name="line1">นำเข้าการเข้าสู่ระบบของคุณจาก Microsoft Edge</div>
+ <div data-l10n-name="line2">สำหรับ { $host } และไซต์อื่น ๆ</div>
+
+##
+
+autocomplete-import-learn-more = เรียนรู้เพิ่มเติม
diff --git a/l10n-th/toolkit/toolkit/main-window/findbar.ftl b/l10n-th/toolkit/toolkit/main-window/findbar.ftl
new file mode 100644
index 0000000000..fdec3ad679
--- /dev/null
+++ b/l10n-th/toolkit/toolkit/main-window/findbar.ftl
@@ -0,0 +1,68 @@
+# 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 file contains the entities needed to use the Find Bar.
+
+findbar-next =
+ .tooltiptext = หาตำแหน่งถัดไปของวลี
+findbar-previous =
+ .tooltiptext = หาตำแหน่งก่อนหน้าของวลี
+
+findbar-find-button-close =
+ .tooltiptext = ปิดแถบค้นหา
+
+findbar-highlight-all2 =
+ .label = เน้นสีทั้งหมด
+ .accesskey =
+ { PLATFORM() ->
+ [macos] l
+ *[other] น
+ }
+ .tooltiptext = เน้นสีวลีที่พบทั้งหมด
+
+findbar-case-sensitive =
+ .label = ตัวพิมพ์ใหญ่เล็กตรงกัน
+ .accesskey = ว
+ .tooltiptext = ค้นหาโดยคำนึงถึงตัวพิมพ์ใหญ่เล็ก
+
+findbar-match-diacritics =
+ .label = เครื่องหมายกำกับการออกเสียงตรงกัน
+ .accesskey = i
+ .tooltiptext = แยกระหว่างตัวอักษรที่มีตัวเน้นเสียงและตัวอักษรฐาน (เช่น เมื่อค้นหาคำว่า “resume” ก็จะไม่ตรงกับคำว่า “résumé”)
+
+findbar-entire-word =
+ .label = ทั้งคำ
+ .accesskey = ท
+ .tooltiptext = ค้นหาทั้งคำเท่านั้น
+
+findbar-not-found = ไม่พบวลี
+
+findbar-wrapped-to-top = ค้นหาถึงจุดสิ้นสุดหน้า เริ่มค้นต่อจากด้านบน
+findbar-wrapped-to-bottom = ค้นหาถึงจุดเริ่มต้นของหน้า เริ่มค้นต่อจากด้านล่าง
+
+findbar-normal-find =
+ .placeholder = ค้นหาในหน้า
+findbar-fast-find =
+ .placeholder = ค้นแบบเร็ว
+findbar-fast-find-links =
+ .placeholder = ค้นแบบเร็ว (ลิงก์เท่านั้น)
+
+findbar-case-sensitive-status =
+ .value = (ตัวพิมพ์ใหญ่เล็กตรงกัน)
+findbar-match-diacritics-status =
+ .value = (ตรงกับเครื่องหมายการออกเสียง)
+findbar-entire-word-status =
+ .value = (ทั้งคำเท่านั้น)
+
+# Variables:
+# $current (Number): Index of the currently selected match
+# $total (Number): Total count of matches
+findbar-found-matches =
+ .value = { $current } จาก { $total } ที่ตรงกัน
+
+# Variables:
+# $limit (Number): Total count of matches allowed before counting stops
+findbar-found-matches-count-limit =
+ .value = มากกว่า { $limit } ที่ตรงกัน
diff --git a/l10n-th/toolkit/toolkit/neterror/certError.ftl b/l10n-th/toolkit/toolkit/neterror/certError.ftl
new file mode 100644
index 0000000000..192d822079
--- /dev/null
+++ b/l10n-th/toolkit/toolkit/neterror/certError.ftl
@@ -0,0 +1,141 @@
+# 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/.
+
+# Variables:
+# $hostname (string) - Hostname of the website with cert error.
+cert-error-intro = { $hostname } ใช้ใบรับรองความปลอดภัยที่ไม่ถูกต้อง
+
+cert-error-mitm-intro = เว็บไซต์จะพิสูจน์ข้อมูลประจำตัวของตนเองผ่านใบรับรอง ซึ่งจะออกให้โดยผู้ให้บริการออกใบรับรอง
+
+cert-error-mitm-mozilla = { -brand-short-name } ได้รับการสนับสนุนโดย Mozilla ที่ไม่แสวงหาผลกำไรซึ่งดูแลที่เก็บผู้ให้บริการออกใบรับรอง (CA) ที่เปิดอย่างสมบูรณ์ ที่เก็บ CA ช่วยให้มั่นใจได้ว่าผู้ให้บริการออกใบรับรองปฏิบัติตามแนวทางที่ดีที่สุดเพื่อความปลอดภัยของผู้ใช้
+
+cert-error-mitm-connection = { -brand-short-name } ใช้ที่เก็บ Mozilla CA เพื่อตรวจสอบว่าการเชื่อมต่อนั้นปลอดภัย แทนที่จะใช้ใบรับรองที่มาจากระบบปฏิบัติการของผู้ใช้ ดังนั้นหากโปรแกรมป้องกันไวรัสหรือเครือข่ายขัดขวางการเชื่อมต่อกับใบรับรองความปลอดภัยที่ออกให้โดย CA ที่ไม่ได้อยู่ในที่เก็บ Mozilla CA การเชื่อมต่อจะถือว่าไม่ปลอดภัย
+
+cert-error-trust-unknown-issuer-intro = อาจมีใครบางคนพยายามปลอมแปลงไซต์นี้และคุณไม่ควรดำเนินการต่อ
+
+# Variables:
+# $hostname (string) - Hostname of the website with cert error.
+cert-error-trust-unknown-issuer = เว็บไซต์จะพิสูจน์ข้อมูลประจำตัวของตนเองผ่านใบรับรอง { -brand-short-name } ไม่เชื่อถือ { $hostname } เนื่องจากไม่ทราบผู้ออกใบรับรอง ใบรับรองถูกลงชื่อด้วยตนเอง หรือเซิร์ฟเวอร์ไม่ส่งใบรับรองระดับกลางที่ถูกต้องมาให้
+
+cert-error-trust-cert-invalid = ใบรับรองไม่ได้รับความเชื่อถือเนื่องจากออกให้โดยผู้ให้บริการออกใบรับรองที่ไม่ถูกต้อง
+
+cert-error-trust-untrusted-issuer = ใบรับรองไม่ได้รับความเชื่อถือเนื่องจากออกให้โดยผู้ที่ไม่ได้รับความเชื่อถือ
+
+cert-error-trust-signature-algorithm-disabled = ใบรับรองไม่ได้รับความเชื่อถือเนื่องจากถูกลงลายเซ็นโดยใช้อัลกอริทึมลายเซ็นที่ถูกปิดใช้งานเนื่องจากอัลกอริทึมนั้นไม่ปลอดภัย
+
+cert-error-trust-expired-issuer = ใบรับรองไม่ได้รับความเชื่อถือเนื่องจากผู้ออกใบรับรองหมดอายุแล้ว
+
+cert-error-trust-self-signed = ใบรับรองไม่ได้รับความเชื่อถือเนื่องจากเป็นการออกใบรับรองโดยเจ้าของเว็บไซต์เอง
+
+cert-error-trust-symantec = ใบรับรองที่ออกโดย GeoTrust, RapidSSL, Symantec, Thawte และ VeriSign จะไม่ได้รับการพิจารณาว่าปลอดภัยอีกต่อไปเนื่องจากผู้ออกใบรับรองเหล่านี้ไม่ปฏิบัติตามแนวทางด้านความปลอดภัยในอดีต
+
+cert-error-untrusted-default = ใบรับรองไม่ได้มาจากแหล่งที่ได้รับความเชื่อถือ
+
+# Variables:
+# $hostname (string) - Hostname of the website with cert error.
+cert-error-domain-mismatch = เว็บไซต์จะพิสูจน์ข้อมูลประจำตัวของตนเองผ่านใบรับรอง { -brand-short-name } ไม่เชื่อถือไซต์นี้เนื่องจากใช้ใบรับรองที่ไม่ถูกต้องสำหรับ { $hostname }
+
+# Variables:
+# $hostname (string) - Hostname of the website with cert error.
+# $alt-name (string) - Alternate domain name for which the cert is valid.
+cert-error-domain-mismatch-single = เว็บไซต์จะพิสูจน์ข้อมูลประจำตัวของตนเองผ่านใบรับรอง { -brand-short-name } ไม่เชื่อถือไซต์นี้เนื่องจากใช้ใบรับรองที่ไม่ถูกต้องสำหรับ { $hostname } ใบรับรองดังกล่าวถูกต้องสำหรับ <a data-l10n-name="domain-mismatch-link">{ $alt-name }</a> เท่านั้น
+
+# Variables:
+# $hostname (string) - Hostname of the website with cert error.
+# $alt-name (string) - Alternate domain name for which the cert is valid.
+cert-error-domain-mismatch-single-nolink = เว็บไซต์จะพิสูจน์ข้อมูลประจำตัวของตนเองผ่านใบรับรอง { -brand-short-name } ไม่เชื่อถือไซต์นี้เนื่องจากใช้ใบรับรองที่ไม่ถูกต้องสำหรับ { $hostname } ใบรับรองดังกล่าวถูกต้องสำหรับ { $alt-name } เท่านั้น
+
+# Variables:
+# $hostname (string) - Hostname of the website with cert error.
+# $subject-alt-names (string) - Alternate domain names for which the cert is valid.
+cert-error-domain-mismatch-multiple = เว็บไซต์จะพิสูจน์ข้อมูลประจำตัวของตนเองผ่านใบรับรอง { -brand-short-name } ไม่เชื่อถือไซต์นี้เนื่องจากใช้ใบรับรองที่ไม่ถูกต้องสำหรับ { $hostname } ใบรับรองดังกล่าวถูกต้องสำหรับชื่อดังต่อไปนี้เท่านั้น: { $subject-alt-names }
+
+# Variables:
+# $hostname (string) - Hostname of the website with cert error.
+# $not-after-local-time (Date) - Certificate is not valid after this time.
+cert-error-expired-now = เว็บไซต์จะพิสูจน์ข้อมูลประจำตัวของตนเองผ่านใบรับรอง ซึ่งมีผลภายในช่วงเวลาที่กำหนดเท่านั้น ใบรับรองสำหรับ { $hostname } หมดอายุเมื่อ { $not-after-local-time }
+
+# Variables:
+# $hostname (string) - Hostname of the website with cert error.
+# $not-before-local-time (Date) - Certificate is not valid before this time.
+cert-error-not-yet-valid-now = เว็บไซต์จะพิสูจน์ข้อมูลประจำตัวของตนเองผ่านใบรับรอง ซึ่งมีผลภายในช่วงเวลาที่กำหนดเท่านั้น ใบรับรองสำหรับ { $hostname } จะไม่มีผลจนถึง { $not-before-local-time }
+
+# Variables:
+# $error (string) - NSS error code string that specifies type of cert error. e.g. unknown issuer, invalid cert, etc.
+cert-error-code-prefix = รหัสข้อผิดพลาด: { $error }
+
+# Variables:
+# $error (string) - NSS error code string that specifies type of cert error. e.g. unknown issuer, invalid cert, etc.
+cert-error-code-prefix-link = รหัสข้อผิดพลาด: <a data-l10n-name="error-code-link">{ $error }</a>
+
+# Variables:
+# $hostname (string) - Hostname of the website with SSL error.
+# $errorMessage (string) - Error message corresponding to the type of error we are experiencing.
+cert-error-ssl-connection-error = เกิดข้อผิดพลาดระหว่างเชื่อมต่อกับ { $hostname } { $errorMessage }
+
+# Variables:
+# $hostname (string) - Hostname of the website with cert error.
+cert-error-symantec-distrust-description = เว็บไซต์จะพิสูจน์ข้อมูลประจำตัวของตนเองผ่านใบรับรองซึ่งออกให้โดยผู้ให้บริการออกใบรับรอง เบราว์เซอร์ส่วนใหญ่ไม่เชื่อถือใบรับรองที่ออกให้โดย GeoTrust, RapidSSL, Symantec, Thawte, และ VeriSign เนื่องจาก { $hostname } ใช้ใบรับรองจากผู้ให้บริการออกใบรับรองรายใดรายหนึ่งเหล่านี้ จึงไม่สามารถพิสูจน์ข้อมูลประจำตัวของเว็บไซต์ดังกล่าวได้
+
+cert-error-symantec-distrust-admin = คุณสามารถแจ้งปัญหานี้แก่ผู้ดูแลระบบของเว็บไซต์ได้
+
+cert-error-old-tls-version = เว็บไซต์นี้อาจไม่รองรับโปรโตคอล TLS 1.2 ซึ่งเป็นเวอร์ชันขั้นต่ำที่รองรับโดย { -brand-short-name }
+
+# Variables:
+# $hasHSTS (Boolean) - Indicates whether HSTS header is present.
+cert-error-details-hsts-label = HTTP Strict Transport Security: { $hasHSTS }
+
+# Variables:
+# $hasHPKP (Boolean) - Indicates whether HPKP header is present.
+cert-error-details-key-pinning-label = HTTP Public Key Pinning: { $hasHPKP }
+
+cert-error-details-cert-chain-label = สายใบรับรอง:
+
+open-in-new-window-for-csp-or-xfo-error = เปิดไซต์ในหน้าต่างใหม่
+
+# Variables:
+# $hostname (string) - Hostname of the website blocked by csp or xfo error.
+csp-xfo-blocked-long-desc = เพื่อปกป้องความปลอดภัยของคุณ { $hostname } จะไม่อนุญาตให้ { -brand-short-name } แสดงหน้าหากไซต์อื่นฝังไว้ หากต้องการดูหน้านี้ คุณต้องเปิดในหน้าต่างใหม่
+
+## Messages used for certificate error titles
+
+connectionFailure-title = ไม่สามารถเชื่อมต่อได้
+deniedPortAccess-title = ที่อยู่นี้ถูกจำกัด
+# "Hmm" is a sound made when considering or puzzling over something.
+# You don't have to include it in your translation if your language does not have a written word like this.
+dnsNotFound-title = อืมม เรามีปัญหาในการค้นหาไซต์นั้น
+
+dns-not-found-trr-only-title2 = อาจมีความเสี่ยงด้านความปลอดภัยในการค้นหาโดเมนนี้
+dns-not-found-native-fallback-title2 = อาจมีความเสี่ยงด้านความปลอดภัยในการค้นหาโดเมนนี้
+
+fileNotFound-title = ไม่พบไฟล์
+fileAccessDenied-title = การเข้าถึงไฟล์ถูกปฏิเสธ
+generic-title = อุปส์
+captivePortal-title = เข้าสู่ระบบเครือข่าย
+# "Hmm" is a sound made when considering or puzzling over something.
+# You don't have to include it in your translation if your language does not have a written word like this.
+malformedURI-title = อืมม ที่อยู่นั้นดูไม่ถูกต้อง
+netInterrupt-title = การเชื่อมต่อถูกขัดจังหวะ
+notCached-title = เอกสารหมดอายุ
+netOffline-title = โหมดออฟไลน์
+contentEncodingError-title = ข้อผิดพลาดการเข้ารหัสเนื้อหา
+unsafeContentType-title = ชนิดไฟล์ที่ไม่ปลอดภัย
+netReset-title = ตัดการเชื่อมต่อแล้ว
+netTimeout-title = การเชื่อมต่อหมดเวลา
+unknownProtocolFound-title = ไม่เข้าใจที่อยู่
+proxyConnectFailure-title = เซิร์ฟเวอร์พร็อกซีปฏิเสธการเชื่อมต่อ
+proxyResolveFailure-title = ไม่พบเซิร์ฟเวอร์พร็อกซี
+redirectLoop-title = หน้าไม่ได้เปลี่ยนเส้นทางอย่างถูกต้อง
+unknownSocketType-title = การตอบสนองที่ไม่คาดคิดจากเซิร์ฟเวอร์
+nssFailure2-title = การเชื่อมต่อปลอดภัยล้มเหลว
+csp-xfo-error-title = { -brand-short-name } ไม่สามารถเปิดหน้านี้ได้
+corruptedContentError-title = ข้อผิดพลาดเนื้อหาเสียหาย
+sslv3Used-title = ไม่สามารถเชื่อมต่ออย่างปลอดภัยได้
+inadequateSecurityError-title = การเชื่อมต่อของคุณไม่ปลอดภัย
+blockedByPolicy-title = หน้าที่ถูกปิดกั้น
+clockSkewError-title = นาฬิกาคอมพิวเตอร์ของคุณผิด
+networkProtocolError-title = ข้อผิดพลาดโปรโตคอลเครือข่าย
+nssBadCert-title = คำเตือน: ความเสี่ยงด้านความปลอดภัยที่อาจเกิดขึ้นข้างหน้า
+nssBadCert-sts-title = ไม่ได้เชื่อมต่อ: ปัญหาความปลอดภัยที่อาจเกิดขึ้น
+certerror-mitm-title = มีซอฟต์แวร์ที่ทำให้ { -brand-short-name } ไม่สามารถเชื่อมต่อไปที่ไซต์นี้อย่างปลอดภัยได้
diff --git a/l10n-th/toolkit/toolkit/neterror/netError.ftl b/l10n-th/toolkit/toolkit/neterror/netError.ftl
new file mode 100644
index 0000000000..1f70fdbf9b
--- /dev/null
+++ b/l10n-th/toolkit/toolkit/neterror/netError.ftl
@@ -0,0 +1,149 @@
+# 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/.
+
+
+## Error page titles
+
+neterror-page-title = มีปัญหาในการโหลดหน้า
+certerror-page-title = คำเตือน: ความเสี่ยงด้านความปลอดภัยที่อาจเกิดขึ้นข้างหน้า
+certerror-sts-page-title = ไม่ได้เชื่อมต่อ: ปัญหาความปลอดภัยที่อาจเกิดขึ้น
+neterror-blocked-by-policy-page-title = หน้าที่ถูกปิดกั้น
+neterror-captive-portal-page-title = เข้าสู่ระบบเครือข่าย
+neterror-dns-not-found-title = ไม่พบเซิร์ฟเวอร์
+neterror-malformed-uri-page-title = URL ไม่ถูกต้อง
+
+## Error page actions
+
+neterror-advanced-button = ขั้นสูง…
+neterror-copy-to-clipboard-button = คัดลอกข้อความไปยังคลิปบอร์ด
+neterror-learn-more-link = เรียนรู้เพิ่มเติม…
+neterror-open-portal-login-page-button = เปิดหน้าเข้าสู่ระบบของเครือข่าย
+neterror-override-exception-button = ยอมรับความเสี่ยงและดำเนินการต่อ
+neterror-pref-reset-button = เรียกคืนการตั้งค่าเริ่มต้น
+neterror-return-to-previous-page-button = ย้อนกลับ
+neterror-return-to-previous-page-recommended-button = ย้อนกลับ (แนะนำ)
+neterror-try-again-button = ลองอีกครั้ง
+neterror-add-exception-button = ดำเนินการต่อสำหรับไซต์นี้เสมอ
+neterror-settings-button = เปลี่ยนการตั้งค่า DNS
+neterror-view-certificate-link = ดูใบรับรอง
+neterror-trr-continue-this-time = ไปต่อในครั้งนี้
+neterror-disable-native-feedback-warning = ดำเนินการต่อเสมอ
+
+##
+
+neterror-pref-reset = ดูเหมือนว่าการตั้งค่าความปลอดภัยเครือข่ายของคุณอาจเป็นสาเหตุของสิ่งนี้ คุณต้องการเรียกคืนการตั้งค่าเริ่มต้นหรือไม่?
+neterror-error-reporting-automatic = รายงานข้อผิดพลาดเช่นนี้เพื่อช่วย { -vendor-short-name } ระบุและปิดกั้นไซต์ที่ประสงค์ร้าย
+
+## Specific error messages
+
+neterror-generic-error = { -brand-short-name } ไม่สามารถโหลดหน้านี้ได้ด้วยเหตุผลบางอย่าง
+neterror-load-error-try-again = ไซต์อาจไม่พร้อมใช้งานชั่วคราวหรือกำลังทำงานหนักเกินไป ลองอีกครั้งในอีกสักครู่
+neterror-load-error-connection = หากคุณไม่สามารถโหลดหน้าใด ๆ ได้ ตรวจสอบการเชื่อมต่อเครือข่ายของคอมพิวเตอร์ของคุณ
+neterror-load-error-firewall = หากคอมพิวเตอร์หรือเครือข่ายของคุณถูกปกป้องด้วยไฟร์วอลล์หรือพร็อกซี ตรวจสอบให้แน่ใจว่า { -brand-short-name } ได้รับอนุญาตให้เข้าถึงเว็บ
+neterror-captive-portal = คุณต้องเข้าสู่ระบบเครือข่ายนี้ก่อนที่คุณจะสามารถเข้าถึงอินเทอร์เน็ต
+# Variables:
+# $hostAndPath (String) - a suggested site (e.g. "www.example.com") that the user may have meant instead.
+neterror-dns-not-found-with-suggestion = คุณต้องการไปที่ <a data-l10n-name="website">{ $hostAndPath }</a> ใช่หรือไม่?
+neterror-dns-not-found-hint-header = <strong>หากคุณป้อนที่อยู่ถูกต้องแล้ว คุณสามารถ:</strong>
+neterror-dns-not-found-hint-try-again = ลองอีกครั้งในภายหลัง
+neterror-dns-not-found-hint-check-network = ตรวจสอบการเชื่อมต่อเครือข่ายของคุณ
+neterror-dns-not-found-hint-firewall = ตรวจสอบว่า { -brand-short-name } ได้รับอนุญาตให้เข้าถึงเว็บ (คุณอาจเชื่อมต่ออยู่แต่ไม่ผ่านไฟร์วอลล์)
+
+## TRR-only specific messages
+## Variables:
+## $hostname (String) - Hostname of the website to which the user was trying to connect.
+## $trrDomain (String) - Hostname of the DNS over HTTPS server that is currently in use.
+
+neterror-dns-not-found-trr-only-reason = { -brand-short-name } ไม่สามารถปกป้องคำขอของคุณสำหรับที่อยู่ของไซต์นี้ผ่านตัวแก้ไข DNS ที่เชื่อถือได้ของเราได้ นี่คือเหตุผล:
+neterror-dns-not-found-trr-only-reason2 = { -brand-short-name } ไม่สามารถปกป้องคำขอของคุณสำหรับที่อยู่ของไซต์นี้ผ่านผู้ให้บริการ DNS ที่ปลอดภัยของเราได้ ด้วยเหตุผลต่อไปนี้:
+neterror-dns-not-found-trr-third-party-warning2 = คุณสามารถไปต่อด้วย DNS resolver เริ่มต้นของคุณได้ อย่างไรก็ตาม บุคคลที่สามอาจเห็นได้ว่าคุณเยี่ยมชมเว็บไซต์อะไรบ้าง
+neterror-dns-not-found-trr-only-could-not-connect = { -brand-short-name } ไม่สามารถเชื่อมต่อไปยัง { $trrDomain } ได้
+neterror-dns-not-found-trr-only-timeout = การเชื่อมต่อไปยัง { $trrDomain } ใช้เวลานานกว่าที่คาดไว้
+neterror-dns-not-found-trr-offline = คุณไม่ได้เชื่อมต่อกับอินเทอร์เน็ต
+neterror-dns-not-found-trr-unknown-host2 = { $trrDomain } ไม่พบเว็บไซต์นี้
+neterror-dns-not-found-trr-server-problem = เกิดปัญหากับ { $trrDomain }
+neterror-dns-not-found-bad-trr-url = URL ไม่ถูกต้อง
+neterror-dns-not-found-trr-unknown-problem = เกิดปัญหาที่ไม่คาดคิด
+
+## Native fallback specific messages
+## Variables:
+## $trrDomain (String) - Hostname of the DNS over HTTPS server that is currently in use.
+
+neterror-dns-not-found-native-fallback-reason = { -brand-short-name } ไม่สามารถปกป้องคำขอของคุณสำหรับที่อยู่ของไซต์นี้ผ่านตัวแก้ไข DNS ที่เชื่อถือได้ของเราได้ นี่คือเหตุผล:
+neterror-dns-not-found-native-fallback-reason2 = { -brand-short-name } ไม่สามารถปกป้องคำขอของคุณสำหรับที่อยู่ของไซต์นี้ผ่านผู้ให้บริการ DNS ที่ปลอดภัยของเราได้ ด้วยเหตุผลต่อไปนี้:
+neterror-dns-not-found-native-fallback-heuristic = DNS over HTTPS ถูกปิดใช้งานบนเครือข่ายของคุณ
+neterror-dns-not-found-native-fallback-not-confirmed2 = { -brand-short-name } ไม่สามารถเชื่อมต่อไปยัง { $trrDomain } ได้
+
+##
+
+neterror-file-not-found-filename = ตรวจสอบชื่อไฟล์สำหรับตัวพิมพ์ใหญ่เล็กหรือข้อผิดพลาดการพิมพ์อื่น ๆ
+neterror-file-not-found-moved = ตรวจสอบเพื่อดูหากไฟล์ถูกย้าย เปลี่ยนชื่อ หรือลบ
+neterror-access-denied = ไฟล์อาจถูกเอาออก ย้าย หรือสิทธิอนุญาตของไฟล์อาจป้องกันการเข้าถึง
+neterror-unknown-protocol = คุณอาจจำเป็นต้องติดตั้งซอฟต์แวร์อื่นเพื่อเปิดที่อยู่นี้
+neterror-redirect-loop = ปัญหานี้บางครั้งอาจมีสาเหตุมาจากการปิดใช้งานหรือปฏิเสธการยอมรับคุกกี้
+neterror-unknown-socket-type-psm-installed = ตรวจสอบให้แน่ใจว่าระบบของคุณมีตัวจัดการความปลอดภัยส่วนบุคคลติดตั้งอยู่
+neterror-unknown-socket-type-server-config = สิ่งนี้อาจเกิดจากการกำหนดค่าที่ไม่มาตรฐานบนเซิร์ฟเวอร์
+neterror-not-cached-intro = เอกสารที่ขอไม่มีในแคชของ { -brand-short-name }
+neterror-not-cached-sensitive = ตามมาตรการรักษาความปลอดภัย { -brand-short-name } จะไม่ขอเอกสารที่ละเอียดอ่อนให้ใหม่โดยอัตโนมัติ
+neterror-not-cached-try-again = คลิก ลองอีกครั้ง เพื่อขอเอกสารจากเว็บไซต์ใหม่
+neterror-net-offline = กด “ลองอีกครั้ง” เพื่อสลับเป็นโหมดออนไลน์และโหลดหน้าใหม่
+neterror-proxy-resolve-failure-settings = ตรวจสอบให้แน่ใจว่าการตั้งค่าพร็อกซีถูกต้อง
+neterror-proxy-resolve-failure-connection = ตรวจสอบให้แน่ใจว่าคอมพิวเตอร์ของคุณมีการเชื่อมต่อเครือข่ายที่ทำงานได้
+neterror-proxy-resolve-failure-firewall = หากคอมพิวเตอร์หรือเครือข่ายของคุณถูกปกป้องด้วยไฟร์วอลล์หรือพร็อกซี ตรวจสอบให้แน่ใจว่า { -brand-short-name } ได้รับอนุญาตให้เข้าถึงเว็บ
+neterror-proxy-connect-failure-settings = ตรวจสอบให้แน่ใจว่าการตั้งค่าพร็อกซีถูกต้อง
+neterror-proxy-connect-failure-contact-admin = ติดต่อผู้ดูแลเครือข่ายของคุณเพื่อให้แน่ใจว่าเซิร์ฟเวอร์พร็อกซีกำลังทำงานอยู่
+neterror-content-encoding-error = โปรดติดต่อเจ้าของเว็บไซต์เพื่อแจ้งพวกเขาให้ทราบถึงปัญหานี้
+neterror-unsafe-content-type = โปรดติดต่อเจ้าของเว็บไซต์เพื่อแจ้งพวกเขาให้ทราบถึงปัญหานี้
+neterror-nss-failure-not-verified = ไม่สามารถแสดงหน้าที่คุณกำลังพยายามจะดูเนื่องจากไม่สามารถยืนยันความถูกต้องของข้อมูลที่ได้รับ
+neterror-nss-failure-contact-website = โปรดติดต่อเจ้าของเว็บไซต์เพื่อแจ้งพวกเขาให้ทราบถึงปัญหานี้
+# Variables:
+# $hostname (String) - Hostname of the website to which the user was trying to connect.
+certerror-intro = { -brand-short-name } ตรวจพบภัยคุกคามด้านความปลอดภัยที่อาจเกิดขึ้นและไม่ได้ดำเนินการต่อไปยัง <b>{ $hostname }</b> ถ้าคุณเยี่ยมชมไซต์นี้ ผู้โจมตีอาจพยายามล้วงข้อมูล เช่น รหัสผ่าน อีเมล หรือรายละเอียดบัตรเครดิตของคุณ
+# Variables:
+# $hostname (String) - Hostname of the website to which the user was trying to connect.
+certerror-sts-intro = { -brand-short-name } ตรวจพบภัยคุกคามด้านความปลอดภัยที่อาจเกิดขึ้นและไม่ได้ดำเนินการต่อไปยัง <b>{ $hostname }</b> เนื่องจากเว็บไซต์นี้ต้องการการเชื่อมต่อที่ปลอดภัย
+# Variables:
+# $hostname (String) - Hostname of the website to which the user was trying to connect.
+certerror-expired-cert-intro = { -brand-short-name } ตรวจพบปัญหาและไม่ได้ดำเนินการต่อไปยัง <b>{ $hostname }</b> เว็บไซต์อาจถูกกำหนดค่าอย่างไม่ถูกต้องหรือนาฬิกาคอมพิวเตอร์ของคุณถูกตั้งค่าเป็นเวลาที่ผิด
+# Variables:
+# $hostname (String) - Hostname of the website to which the user was trying to connect.
+# $mitm (String) - The name of the software intercepting communications between you and the website (or “man in the middle”)
+certerror-mitm = <b>{ $hostname }</b> ดูเหมือนจะเป็นไซต์ที่ปลอดภัย แต่ไม่สามารถทำการเชื่อมต่ออย่างปลอดภัยได้ ปัญหานี้เกิดจาก <b>{ $mitm }</b> ซึ่งอาจเป็นเนื่องจากซอฟต์แวร์ที่ติดตั้งบนคอมพิวเตอร์ของคุณหรือเครือข่ายของคุณ
+neterror-corrupted-content-intro = ไม่สามารถแสดงหน้าที่คุณกำลังพยายามจะดูเนื่องจากตรวจพบข้อผิดพลาดในการส่งผ่านข้อมูล
+neterror-corrupted-content-contact-website = โปรดติดต่อเจ้าของเว็บไซต์เพื่อแจ้งพวกเขาให้ทราบถึงปัญหานี้
+# Do not translate "SSL_ERROR_UNSUPPORTED_VERSION".
+neterror-sslv3-used = ข้อมูลขั้นสูง: SSL_ERROR_UNSUPPORTED_VERSION
+# Variables:
+# $hostname (String) - Hostname of the website to which the user was trying to connect.
+neterror-inadequate-security-intro = <b>{ $hostname }</b> ใช้เทคโนโลยีความปลอดภัยที่ล้าสมัยและเสี่ยงต่อการถูกโจมตี ผู้โจมตีสามารถเปิดเผยข้อมูลที่คุณคิดว่าปลอดภัยได้อย่างง่ายดาย ผู้ดูแลเว็บไซต์จำเป็นต้องแก้ไขเซิร์ฟเวอร์ก่อนที่คุณจะสามารถเยี่ยมชมไซต์ได้
+# Do not translate "NS_ERROR_NET_INADEQUATE_SECURITY".
+neterror-inadequate-security-code = รหัสข้อผิดพลาด: NS_ERROR_NET_INADEQUATE_SECURITY
+# Variables:
+# $hostname (String) - Hostname of the website to which the user was trying to connect.
+# $now (Date) - The current datetime, to be formatted as a date
+neterror-clock-skew-error = คอมพิวเตอร์ของคุณคิดว่าเวลาปัจจุบันคือ { DATETIME($now, dateStyle: "medium") } ซึ่งทำให้ { -brand-short-name } ไม่สามารถทำการเชื่อมต่ออย่างปลอดภัยได้ เมื่อต้องการเยี่ยมชม <b>{ $hostname }</b> ให้อัปเดตนาฬิกาคอมพิวเตอร์ของคุณในการตั้งค่าระบบของคุณให้เป็นวันที่ เวลา และเขตเวลาปัจจุบัน แล้วรีเฟรช <b>{ $hostname }</b>
+neterror-network-protocol-error-intro = ไม่สามารถแสดงหน้าที่คุณกำลังพยายามจะดูเนื่องจากตรวจพบข้อผิดพลาดในโปรโตคอลเครือข่าย
+neterror-network-protocol-error-contact-website = โปรดติดต่อเจ้าของเว็บไซต์เพื่อแจ้งพวกเขาให้ทราบถึงปัญหานี้
+certerror-expired-cert-second-para = ดูเหมือนว่าใบรับรองของเว็บไซต์จะหมดอายุแล้ว ซึ่งทำให้ { -brand-short-name } ไม่สามารถเชื่อมต่ออย่างปลอดภัยได้ ถ้าคุณเยี่ยมชมไซต์นี้ ผู้โจมตีอาจพยายามล้วงข้อมูล เช่น รหัสผ่าน อีเมล หรือรายละเอียดบัตรเครดิตของคุณ
+certerror-expired-cert-sts-second-para = ดูเหมือนว่าใบรับรองของเว็บไซต์จะหมดอายุแล้ว ซึ่งทำให้ { -brand-short-name } ไม่สามารถเชื่อมต่ออย่างปลอดภัยได้
+certerror-what-can-you-do-about-it-title = คุณสามารถทำอะไรเกี่ยวกับเรื่องนี้ได้บ้าง?
+certerror-unknown-issuer-what-can-you-do-about-it-website = ปัญหานี้มักเกิดขึ้นกับเว็บไซต์ และไม่มีวิธีใดที่คุณสามารถแก้ปัญหานี้ได้
+certerror-unknown-issuer-what-can-you-do-about-it-contact-admin = ถ้าคุณกำลังใช้เครือข่ายบริษัทหรือกำลังใช้ซอฟต์แวร์ป้องกันไวรัส คุณสามารถติดต่อขอความช่วยเหลือจากทีมสนับสนุนได้ คุณยังสามารถแจ้งให้ผู้ดูแลของเว็บไซต์ทราบเกี่ยวกับปัญหานี้ได้
+# Variables:
+# $hostname (String) - Hostname of the website to which the user was trying to connect.
+# $now (Date) - The current datetime, to be formatted as a date
+certerror-expired-cert-what-can-you-do-about-it-clock = นาฬิกาคอมพิวเตอร์ของคุณถูกตั้งค่าเป็น { DATETIME($now, dateStyle: "medium") } ตรวจให้แน่ใจว่าคอมพิวเตอร์ของคุณถูกตั้งค่าเป็นวันที่ เวลา และเขตเวลาที่ถูกต้องในการตั้งค่าระบบของคุณ แล้วลองรีเฟรช <b>{ $hostname }</b>
+certerror-expired-cert-what-can-you-do-about-it-contact-website = ถ้านาฬิกาของคุณถูกตั้งค่าเป็นเวลาที่ถูกต้องอยู่แล้ว แสดงว่าเว็บไซต์อาจจะถูกกำหนดค่าอย่างไม่ถูกต้อง และไม่มีวิธีใดที่คุณสามารถแก้ปัญหานี้ได้ คุณสามารถแจ้งให้ผู้ดูแลของเว็บไซต์นี้ทราบเกี่ยวกับปัญหานี้ได้
+certerror-bad-cert-domain-what-can-you-do-about-it = ปัญหานี้มักเกิดขึ้นกับเว็บไซต์ และไม่มีวิธีใดที่คุณสามารถแก้ปัญหานี้ได้ คุณสามารถแจ้งให้ผู้ดูแลของเว็บไซต์ทราบเกี่ยวกับปัญหานี้ได้
+certerror-mitm-what-can-you-do-about-it-antivirus = ถ้าซอฟต์แวร์ป้องกันไวรัสของคุณมีคุณลักษณะที่ใช้สแกนการเชื่อมต่อที่ถูกเข้ารหัส (มักถูกเรียกว่า “การสแกนเว็บ” หรือ “การสแกน HTTPS”) คุณสามารถปิดใช้งานคุณลักษณะนั้นได้ ถ้าวิธีนี้ใช้ไม่ได้ผล คุณสามารถลบและติดตั้งซอฟต์แวร์ป้องกันไวรัสใหม่ได้
+certerror-mitm-what-can-you-do-about-it-corporate = ถ้าคุณกำลังใช้เครือข่ายบริษัท คุณสามารถติดต่อแผนกไอทีของคุณได้
+# Variables:
+# $mitm (String) - The name of the software intercepting communications between you and the website (or “man in the middle”)
+certerror-mitm-what-can-you-do-about-it-attack = ถ้าคุณไม่คุ้นเคยกับ <b>{ $mitm }</b> แสดงว่าอาจเป็นการโจมตีและคุณไม่ควรดำเนินการต่อไปยังไซต์นี้
+# Variables:
+# $mitm (String) - The name of the software intercepting communications between you and the website (or “man in the middle”)
+certerror-mitm-what-can-you-do-about-it-attack-sts = ถ้าคุณไม่คุ้นเคยกับ <b>{ $mitm }</b> แสดงว่าอาจเป็นการโจมตี และไม่มีวิธีใดที่คุณสามารถเข้าถึงไซต์นี้ได้
+# Variables:
+# $hostname (String) - Hostname of the website to which the user was trying to connect.
+certerror-what-should-i-do-bad-sts-cert-explanation = <b>{ $hostname }</b> มีนโยบายการรักษาความปลอดภัยที่เรียกว่า HTTP Strict Transport Security (HSTS) ซึ่งหมายความว่า { -brand-short-name } สามารถทำการเชื่อมต่อได้อย่างปลอดภัยเท่านั้น คุณไม่สามารถเพิ่มข้อยกเว้นเพื่อเยี่ยมชมไซต์นี้ได้
diff --git a/l10n-th/toolkit/toolkit/neterror/nsserrors.ftl b/l10n-th/toolkit/toolkit/neterror/nsserrors.ftl
new file mode 100644
index 0000000000..14d0731404
--- /dev/null
+++ b/l10n-th/toolkit/toolkit/neterror/nsserrors.ftl
@@ -0,0 +1,344 @@
+# 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/.
+
+
+# DO NOT ADD THINGS OTHER THAN ERROR MESSAGES HERE.
+# This file gets parsed into a JS dictionary of all known error message ids in
+# gen_aboutneterror_codes.py . If we end up needing fluent attributes or
+# refactoring them in some way, the script will need updating.
+
+psmerr-ssl-disabled = ไม่สามารถเชื่อมต่ออย่างปลอดภัยเนื่องจากโปรโตคอล SSL ถูกปิดใช้งาน
+psmerr-ssl2-disabled = ไม่สามารถเชื่อมต่ออย่างปลอดภัยเนื่องจากไซต์ใช้โปรโตคอล SSL รุ่นเก่าที่ไม่ปลอดภัย
+# This is a multi-line message.
+psmerr-hostreusedissuerandserial =
+ คุณได้รับใบรับรองที่ไม่ถูกต้อง โปรดติดต่อผู้ดูแลเซิร์ฟเวอร์หรือส่งอีเมลหาผู้ที่เกี่ยวข้องโดบแนบข้อมูลดังกล่าวไปด้วย:
+
+ ใบรับรองของคุณมีเลขอนุกรมที่เหมือนกับใบรับรองอื่นที่ออกมาแล้ว โปรดรับใบรับรองใหม่ที่มีเลขอนุกรมไม่ซ้ำ
+ssl-error-export-only-server = ไม่สามารถสื่อสารอย่างปลอดภัย อีกฝั่งไม่รองรับการเข้ารหัสระดับสูง
+ssl-error-us-only-server = ไม่สามารถสื่อสารอย่างปลอดภัย อีกฝั่งต้องการการเข้ารหัสระดับสูงซึ่งไม่รองรับ
+ssl-error-no-cypher-overlap = ไม่สามารถสื่อสารอย่างปลอดภัยกับอีกฝั่ง: ไม่มีอัลกอริทึมการเข้ารหัสร่วมกัน
+ssl-error-no-certificate = ไม่สามารถค้นหาใบรับรองหรือกุญแจที่จำเป็นสำหรับการรับรองความถูกต้อง
+ssl-error-bad-certificate = ไม่สามารถสื่อสารอย่างปลอดภัยกับอีกฝั่ง: ใบรับรองของอีกฝั่งถูกปฏิเสธ
+ssl-error-bad-client = เซิร์ฟเวอร์พบข้อมูลที่ไม่ถูกต้องจากไคลเอ็นต์
+ssl-error-bad-server = ไคลเอ็นต์พบข้อมูลที่ไม่ถูกต้องจากเซิร์ฟเวอร์
+ssl-error-unsupported-certificate-type = ไม่รองรับใบรับรองประเภทนี้
+ssl-error-unsupported-version = ไม่รองรับโปรโตคอลความปลอดภัยของปลายทาง
+ssl-error-wrong-certificate = การรับรองลูกข่ายล้มเหลว: กุญแจส่วนตัวในฐานข้อมูลไม่ตรงกับกุญแจสาธารณะในฐานข้อมูลใบรับรอง
+ssl-error-bad-cert-domain = ไม่สามารถสื่อสารอย่างปลอดภัยกับอีกฝั่ง: ชื่อโดเมนที่ขอไม่ตรงกับใบรับรองของเซิร์ฟเวอร์
+ssl-error-post-warning = รหัสข้อผิดพลาด SSL ที่ไม่รู้จัก
+ssl-error-ssl2-disabled = ปลายทางรองรับแค่ SSL รุ่นท่ 2 ซึ่งถึงปิดใช้งานไว้
+ssl-error-bad-mac-read = SSL ได้รับข้อมูล Message Authentication Code ที่ไม่ถูกต้อง
+ssl-error-bad-mac-alert = SSL ปลายทางรายงาน Message Authentication Code ที่ไม่ถูกต้อง
+ssl-error-bad-cert-alert = SSL ปลายทางไม่สามารถตรวจสอบใบรับรองของคุณได้
+ssl-error-revoked-cert-alert = SSL ปลายตีกลับใบรับรองของคุณด้วยสถานะถอดถอน
+ssl-error-expired-cert-alert = SSL ปลายทางตีกลับใบรับรองของคุณด้วยสถานะหมดอายุ
+ssl-error-ssl-disabled = ไม่สามารถเชื่อมต่อได้: SSL ถูกปิดใช้งาน
+ssl-error-fortezza-pqg = ไม่สามารถเชื่อมต่อได้: SSL ปลายทางเป็นโดเมน FORTEZZA ประเภทอื่น
+ssl-error-unknown-cipher-suite = มีการร้องขอการแปรรหัส SSL ที่ไม่ทราบประเภท
+ssl-error-no-ciphers-supported = ไม่มีชุดการแปรรหัสที่เปิดใช้งานในโปรแกรมนี้
+ssl-error-bad-block-padding = SSL ได้รับข้อมูลเสียเพราะ bad block padding.
+ssl-error-rx-record-too-long = SSL ได้รับข้อมูลที่เกินความยาวที่ถูกกำหนดไว้
+ssl-error-tx-record-too-long = SSL พยายามส่งข้อมูลที่เกินความยาวที่ถูกกำหนดไว้
+ssl-error-rx-malformed-hello-request = SSL ได้รับข้อความ Hello Request handshake ที่ผิดรูปแบบ
+ssl-error-rx-malformed-client-hello = SSL ได้รับข้อความ Client Hello handshake ที่ผิดรูปแบบ
+ssl-error-rx-malformed-server-hello = SSL ได้รับข้อความ Server Hello handshake ที่ผิดรูปแบบ
+ssl-error-rx-malformed-certificate = SSL ได้รับข้อความ Certificate handshake ที่ผิดรูปแบบ
+ssl-error-rx-malformed-server-key-exch = SSL ได้รับข้อความ Server Key Exchange handshake ที่ผิดรูปแบบ
+ssl-error-rx-malformed-cert-request = SSL ได้รับข้อความ Certificate Request handshake ที่ผิดรูปแบบ
+ssl-error-rx-malformed-hello-done = SSL ได้รับข้อความ Server Hello Done handshake ที่ผิดรูปแบบ
+ssl-error-rx-malformed-cert-verify = SSL ได้รับข้อความ Certificate Verify handshake ที่ผิดรูปแบบ
+ssl-error-rx-malformed-client-key-exch = SSL ได้รับข้อความ Client Key Exchange handshake ที่ผิดรูปแบบ
+ssl-error-rx-malformed-finished = SSL ได้รับข้อความ Finished handshake ที่ผิดรูปแบบ
+ssl-error-rx-malformed-change-cipher = SSL ได้รับข้อมูล Change Cipher Spec ที่ผิดรูปแบบ
+ssl-error-rx-malformed-alert = SSL ได้รับข้อมูล Alert ที่ผิดรูปแบบ
+ssl-error-rx-malformed-handshake = SSL ได้รับข้อมูล Handshake ที่ผิดรูปแบบ
+ssl-error-rx-malformed-application-data = SSL ได้รับข้อมูล Application Data ที่ผิดรูปแบบ
+ssl-error-rx-unexpected-hello-request = SSL ได้รับข้อความ Hello Request handshake ที่ไม่คาดคิด
+ssl-error-rx-unexpected-client-hello = SSL ได้รับข้อความ Client Hello handshake ที่ไม่คาดคิด
+ssl-error-rx-unexpected-server-hello = SSL ได้รับข้อความ Server Hello handshake ที่ไม่คาดคิด
+ssl-error-rx-unexpected-certificate = SSL ได้รับข้อความ Certificate handshake ที่ไม่คาดคิด
+ssl-error-rx-unexpected-server-key-exch = SSL ได้รับข้อความ Server Key Exchange handshake ที่ไม่คาดคิด
+ssl-error-rx-unexpected-cert-request = SSL ได้รับข้อความ Certificate Request handshake ที่ไม่คาดคิด
+ssl-error-rx-unexpected-hello-done = SSL ได้รับข้อความ Server Hello Done handshake ที่ไม่คาดคิด
+ssl-error-rx-unexpected-cert-verify = SSL ได้รับข้อความ Certificate Verify handshake ที่ไม่คาดคิด
+ssl-error-rx-unexpected-client-key-exch = SSL ได้รับข้อความ Client Key Exchange handshake ที่ไม่คาดคิด
+ssl-error-rx-unexpected-finished = SSL ได้รับข้อความ Finished handshake ที่ไม่คาดคิด
+ssl-error-rx-unexpected-change-cipher = SSL ได้รับข้อมูล Change Cipher Spec ที่ไม่คาดคิด
+ssl-error-rx-unexpected-alert = SSL ได้รับข้อมูล Alert ที่ไม่คาดคิด
+ssl-error-rx-unexpected-handshake = SSL ได้รับข้อมูล Handshake ที่ไม่คาดคิด
+ssl-error-rx-unexpected-application-data = SSL ได้รับข้อมูล Application Data ที่ไม่คาดคิด
+ssl-error-rx-unknown-record-type = SSL ได้รับข้อมูลที่ไม่ทราบประเภท
+ssl-error-rx-unknown-handshake = SSL ได้รับข้อความที่ไม่ทราบประเภท
+ssl-error-rx-unknown-alert = SSL ได้รับข้อมูลเตือนที่ไม่ทราบรายละเอียด
+ssl-error-close-notify-alert = SSL ปลายทางได้ทำการปิดการเชื่อมต่อนี้
+ssl-error-handshake-unexpected-alert = SSL ปลายทางไม่ได้คาดหวังข้อความ handshake ที่ได้รับ
+ssl-error-decompression-failure-alert = SSL ปลายทางไม่สามารถขยายข้อมูล SSL ที่ได้รับ
+ssl-error-handshake-failure-alert = SSL ปลายทางไม่สามารถต่อรองชุดตัวแปรความปลอดภัยที่ยอมรับได้
+ssl-error-illegal-parameter-alert = SSL ปลายทางตีกลับข้อความ handshake เพราะไม่ใช่เนื้อหาที่ยอมรับได้
+ssl-error-unsupported-cert-alert = SSL ปลายทางไม่รองรับใบรับรองที่ได้รับ
+ssl-error-certificate-unknown-alert = SSL ปลายทางมีปัญหาที่ระบุไม่ได้บางอย่างกับใบรับรองที่ได้รับ
+ssl-error-generate-random-failure = SSL ไม่สามารถใช้งานตัวสร้างเลขสุ่มได้
+ssl-error-sign-hashes-failure = ไม่สามารถเซ็นรับรองข้อมูลแบบดิจิทัลที่ต้องใช้เพื่อตรวจสอบใบรับรองของคุณได้
+ssl-error-extract-public-key-failure = SSL ไม่สามารถแตกกุญแจสาธารณะออกจากใบรับรองของปลายทางได้
+ssl-error-server-key-exchange-failure = ไม่สามารถระบุความผิดพลาดในขณะกำลังประมวลผล SSL Server Key Exchange handshake
+ssl-error-client-key-exchange-failure = ไม่สามารถระบุความผิดพลาดในขณะกำลังประมวลผล SSL Client Key Exchange handshake
+ssl-error-encryption-failure = ชุดแปรรหัสที่เลือกไม่สามารถเข้ารหัสชุดข้อมูลได้
+ssl-error-decryption-failure = ชุดแปรรหัสที่เลือกไม่สามารถถอดรหัสชุดข้อมูลได้
+ssl-error-socket-write-failure = ความพยายามในการเขียนข้อมูลที่เข้ารหัสไปยังซ็อกเก็ตที่อยู่ภายใต้ล้มเหลว
+ssl-error-md5-digest-failure = ฟังก์ชั่นส่วนย่อย MD5 ล้มเหลว
+ssl-error-sha-digest-failure = ฟังก์ชั่นส่วนย่อย SHA-1 ล้มเหลว
+ssl-error-mac-computation-failure = การคำนวณ MAC ล้มเหลว
+ssl-error-sym-key-context-failure = ไม่สามารถสร้างบริบทคีย์สมมาตรได้
+ssl-error-sym-key-unwrap-failure = ไม่สามารถแกะคีย์สมมาตรที่อยู่ในข้อความการแลกเปลี่ยนคีย์ไคลเอ็นต์ได้
+ssl-error-pub-key-size-limit-exceeded = SSL เซิร์ฟเวอร์พยายามใช้กุญแจสาธารณะขั้นท้องถิ่นกับการส่งออกชุดแปรรหัส
+ssl-error-iv-param-failure = ไม่สามารถแปรรหัส PKCS11 ส่วน IV เป็นตัวแปรได้
+ssl-error-init-cipher-suite-failure = ไม่สามารถเริ่มใช้ชุดแปรรหัสได้
+ssl-error-session-key-gen-failure = ลูกข่ายไม่สามารถร้างกุญแจวาระเพื่อวาระ SSL ได้
+ssl-error-no-server-key-for-alg = เซิร์ฟเวอร์ไม่มีกุญแจสำหรับขั้นตอนวิธีการแลกเปลี่ยนกุญแจ
+ssl-error-token-insertion-removal = โทเค็น PKCS#11 ได้ถูกใส่เข้าหรือดึงออกในขณะที่กำลังทำงาน
+ssl-error-token-slot-not-found = ไม่พบโทเค็น PKCS#11 ที่จำเป็นในการทำงาน
+ssl-error-no-compression-overlap = ไม่สามารถสื่อสารอย่างปลอดภัยกับอีกฝั่ง: ไม่มีอัลกอริทึมการบีบอัดร่วมกัน
+ssl-error-handshake-not-completed = ไม่สามารถเริ่ม SSL handshake อื่นได้จนกว่า handshake ปัจจุบันจะเสร็จสิ้น
+ssl-error-bad-handshake-hash-value = ได้รับค่า handshake hash ที่ไม่ถูกต้องจากปลายทาง
+ssl-error-cert-kea-mismatch = ใบรับรองที่มีไม่สามารถใช้ได้กับขั้นตอนวิธีการแลกเปลี่ยนกุญแจที่เลือกไว้ได้
+ssl-error-no-trusted-ssl-client-ca = ไม่มีผู้ออกใบรับรองใดที่เชื่อถือได้กับการยืนยันตัวตนของ SSL ลูกข่าย
+ssl-error-session-not-found = ไม่พบ SSL session ID ของเครื่องลูกข่ายในแคช session ของเซิร์ฟเวอร์
+ssl-error-decryption-failed-alert = ปลายทางไม่สามารถถอดรหัสค่า SSL ที่ได้รับได้
+ssl-error-record-overflow-alert = ปลายทางได้รับค่า SSL ที่ยาวกว่าที่อนุญาต
+ssl-error-unknown-ca-alert = ปลายทางไม่เชื่อถือ CA ที่คุณมีอยู่
+ssl-error-access-denied-alert = ปลายทางได้รับใบรับรองที่ถูกต้อง แต่เข้าถึงไม่ได้
+ssl-error-decode-error-alert = ปลายทางไม่สามารถถอดรหัสข้อความ SSL handshake ได้
+ssl-error-decrypt-error-alert = ปลายทางได้รายงานถึงความล้มเหลวในการตรวจสอบลายเซ็นหรือการแลกเปลี่ยนกุญแจ
+ssl-error-export-restriction-alert = ปลายทางรายงานถึงการต่อรองที่ไม่เข้ากับกฎการส่งออก
+ssl-error-protocol-version-alert = อีกฝั่งรายงานถึงรุ่นโปรโตคอลที่ใช้ร่วมกันไม่ได้หรือไม่รองรับ
+ssl-error-insufficient-security-alert = เซิร์ฟเวอร์ต้องการการเข้ารหัสที่ปลอดภัยกว่าที่รองรับโดยลูกข่าย
+ssl-error-internal-error-alert = ปลายทางรายงานถึงการผิดพลาดภายใน
+ssl-error-user-canceled-alert = ผู้ใช้ปลายทางยกเลิก handshake
+ssl-error-no-renegotiation-alert = ปลายทางไม่อนุญาตการต่อรองซ้ำกับ SSL security parameters
+ssl-error-server-cache-not-configured = แคชแม่ข่าย SSL ไม่ได้ถูกตั้งค่าและไม่ถูกปิดใช้งานสำหรับซอกเก็ตนี้
+ssl-error-unsupported-extension-alert = SSL ปลายทางไม่รองรับส่วนขยาย TLS hello
+ssl-error-certificate-unobtainable-alert = SSL ปลายทางไม่สามารถรับใบรับรองของคุณจาก URL ที่แจ้งไว้ได้
+ssl-error-unrecognized-name-alert = SSL ปลายทางไม่มีใบรับรองสำหรับชื่อ DNS ที่ร้องขอ
+ssl-error-bad-cert-status-response-alert = SSL ปลายทางไม่สามารถรับการตอบรับ OCSP ของใบรับรองของมันได้
+ssl-error-bad-cert-hash-value-alert = SSL ปลายทางรายงานถึงค่า hash ของใบรับรองที่ผิดพลาด
+ssl-error-rx-unexpected-new-session-ticket = SSL ได้รับข้อความ New Session Ticket handshake ที่ไม่คาดคิด
+ssl-error-rx-malformed-new-session-ticket = SSL ได้รับข้อความ New Session Ticket handshake ที่ผิดรูปแบบ
+ssl-error-decompression-failure = SSL ได้รับค่าที่ถูกบีบอัดที่ไม่สามารถแตกออกได้
+ssl-error-renegotiation-not-allowed = SSL ซ็อกเก็ตนี้ไม่อนุญาตให้มีการต่อรองซ้ำ
+ssl-error-unsafe-negotiation = อีกฝั่งพยายามจะ Handshake แบบเก่า (อาจมีความเสี่ยง)
+ssl-error-rx-unexpected-uncompressed-record = SSL ได้รับค่าที่ไม่บีบอัดที่ไม่คาดคิด
+ssl-error-weak-server-ephemeral-dh-key = SSL ได้รับคีย์ Diffie-Hellman แบบชั่วคราวที่มีความปลอดภัยต่ำในข้อความ Server Key Exchange handshake
+ssl-error-next-protocol-data-invalid = SSL ได้รับข้อมูลส่วนขยาย NPN ที่ไม่ถูกต้อง
+ssl-error-feature-not-supported-for-ssl2 = คุณสมบัติ SSL ไม่รองรับโดยการเชื่อมต่อ SSL 2.0
+ssl-error-feature-not-supported-for-servers = คุณสมบัติ SSL ไม่รองรับโดยเซิร์ฟเวอร์
+ssl-error-feature-not-supported-for-clients = คุณสมบัติ SSL ไม่รองรับโดยลูกข่าย
+ssl-error-invalid-version-range = ช่วงรุ่นของ SSL ไม่ถูกต้อง
+ssl-error-cipher-disallowed-for-version = SSL ปลายทางเลือกชุดการเข้ารหัสที่ไม่ได้รับอนุญาตสำหรับรุ่นโปรโตคอลที่เลือก
+ssl-error-rx-malformed-hello-verify-request = SSL ได้รับข้อความ Hello Verify Request handshake ที่ผิดรูปแบบ
+ssl-error-rx-unexpected-hello-verify-request = SSL ได้รับข้อความ Hello Verify Request handshake ที่ไม่คาดคิด
+ssl-error-feature-not-supported-for-version = คุณลักษณะ SSL ไม่รองรับในรุ่นโปรโตคอล
+ssl-error-rx-unexpected-cert-status = SSL ได้รับข้อความ Certificate Status handshake ที่ไม่คาดคิด
+ssl-error-unsupported-hash-algorithm = TLS ปลายทางใช้อัลกอริทึมแฮชที่ไม่รองรับ
+ssl-error-digest-failure = ฟังก์ชันการย่อยล้มเหลว
+ssl-error-incorrect-signature-algorithm = มีการระบุอัลกอริทึมลายเซ็นที่ไม่ถูกต้องในอิลิเมนต์ที่ลงลายเซ็นแบบดิจิทัล
+ssl-error-next-protocol-no-callback = ส่วนขยาย next protocol negotiation ถูกเปิดใช้งาน แต่การเรียกกลับถูกล้างก่อนที่จะถูกต้องการ
+ssl-error-next-protocol-no-protocol = เซิร์ฟเวอร์ไม่รองรับโปรโตคอลที่ไคลเอนต์โฆษณาในส่วนขยาย ALPN
+ssl-error-inappropriate-fallback-alert = เซิร์ฟเวอร์ปฏิเสธการจับมือเนื่องจากลูกข่ายปรับลดเป็นรุ่น TLS ที่ต่ำกว่าที่เซิร์ฟเวอร์รองรับ
+ssl-error-weak-server-cert-key = ใบรับรองเซิร์ฟเวอร์รวมคีย์สาธารณะที่มีความปลอดภัยต่ำเกินไป
+ssl-error-rx-short-dtls-read = มีพื้นที่ไม่เพียงพอในบัฟเฟอร์สำหรับอัดบันทึก DTLS
+ssl-error-no-supported-signature-algorithm = ไม่ได้กำหนดค่าอัลกอริทึมลายเซ็น TLS ที่รองรับ
+ssl-error-unsupported-signature-algorithm = ปลายทางใช้ชุดอัลกอริทึมลายเซ็นและแฮชที่ไม่รองรับ
+ssl-error-missing-extended-master-secret = ปลายทางพยายามดำเนินการต่อโดยไม่มีส่วนขยาย extension_master_secret ที่ถูกต้อง
+ssl-error-unexpected-extended-master-secret = ปลายทางพยายามดำเนินการต่อด้วยส่วนขยาย extension_master_secret ที่ไม่คาดคิด
+sec-error-io = พบข้อผิดพลาด I/O ระหว่างการรับรองความปลอดภัย
+sec-error-library-failure = ห้องสมุดความปลอดภัยผิดพลาด
+sec-error-bad-data = ห้องสมุดความปลอดภัย: ได้รับข้อมูลเสีย
+sec-error-output-len = ห้องสมุดความปลอดภัย: ความยาวค่าออกผิดพลาด
+sec-error-input-len = ห้องสมุดความปลอดภัยพบว่าความยาวค่ารับเข้าผิดพลาด
+sec-error-invalid-args = ห้องสมุดความปลอดภัย: อาร์กิวเมนต์ไม่ถูกต้อง
+sec-error-invalid-algorithm = ห้องสมุดความปลอดภัย: อัลกอริทึมไม่ถูกต้อง
+sec-error-invalid-ava = ห้องสมุดความปลอดภัย: AVA ไม่ถูกต้อง
+sec-error-invalid-time = เวลาผิดรูปแบบ
+sec-error-bad-der = ห้องสมุดความปลอดภัย: ข้อความเข้ารหัสแบบ DER ผิดรูปแบบ
+sec-error-bad-signature = ใบรับรองของอีกฝั่งมีลายเซ็นที่ไม่ถูกต้อง
+sec-error-expired-certificate = ใบรับรองของอีกฝั่งหมดอายุแล้ว
+sec-error-revoked-certificate = ใบรับรองของอีกฝั่งถูกเพิกถอน
+sec-error-unknown-issuer = ไม่รู้จักผู้ออกใบรับรองของอีกฝั่ง
+sec-error-bad-key = กุญแจสาธารณะของอีกฝั่งไม่ถูกต้อง
+sec-error-bad-password = รหัสผ่านความปลอดภัยที่กรอกไม่ถูกต้อง
+sec-error-retry-password = รหัสผ่านใหม่ที่ป้อนไม่ถูกต้อง โปรดลองอีกครั้ง
+sec-error-no-nodelock = ห้องสมุดความปลอดภัย: ไม่มี nodelock
+sec-error-bad-database = ห้องสมุดความปลอดภัย: ฐานข้อมูลใช้ไม่ได้
+sec-error-no-memory = ห้องสมุดความปลอดภัย: การจองหน่วยความจำล้มเหลว
+sec-error-untrusted-issuer = ผู้ออกใบรับรองของปลายทางถูกทำเครื่องหมายว่าไม่น่าเชื่อถือโดยผู้ใช้
+sec-error-untrusted-cert = ใบรับรองของปลายทางถูกทำเครื่องหมายว่าไม่น่าเชื่อถือโดยผู้ใช้
+sec-error-duplicate-cert = มีใบรับรองอยู่แล้วในฐานข้อมูลของคุณ
+sec-error-duplicate-cert-name = ชื่อใบรับรองที่ดาวน์โหลดมาชื่อซ้ำกับใบรับรองที่มีอยู่แล้วในฐานข้อมูลของคุณ
+sec-error-adding-cert = เกิดข้อผิดพลาดในการเพิ่มใบรับรองไปยังฐานข้อมูล
+sec-error-filing-key = เกิดข้อผิดพลาดในการต่อกุญแจสำหรับใบรับรองนี้
+sec-error-no-key = กุญแจส่วนตัวสำหรับใบรับรองนี้ไม่พบในฐานข้อมูลกุญแจ
+sec-error-cert-valid = ใบรับรองนี้ถูกต้อง
+sec-error-cert-not-valid = ใบรับรองนี้ไม่ถูกต้อง
+sec-error-cert-no-response = ห้องสมุดใบรับรอง: ไม่ตอบสนอง
+sec-error-expired-issuer-certificate = ใบรับรองของผู้ออกใบรับรองหมดอายุ  ตรวจสอบวันที่และเวลาในระบบของคุณ
+sec-error-crl-expired = CRL สำหรับผู้ออกใบรับรองหมดอายุแล้ว อัปเดตหรือตรวจสอบวันที่และเวลาในระบบของคุณ
+sec-error-crl-bad-signature = CRL สำหรับผู้ออกใบรับรองมีลายเซ็นที่ไม่ถูกต้อง
+sec-error-crl-invalid = CRL ใหม่มีรูปแบบที่ไม่ถูกต้อง
+sec-error-extension-value-invalid = ค่าส่วนขยายของใบรับรองไม่ถูกต้อง
+sec-error-extension-not-found = ไม่พบส่วนขยายใบรับรอง
+sec-error-ca-cert-invalid = ใบรับรองของผู้ออกไม่ถูกต้อง
+sec-error-path-len-constraint-invalid = ข้อบังคับความยาวของเส้นทางใบรับรองไม่ถูกต้อง
+sec-error-cert-usages-invalid = ช่องข้อมูลการใช้งานใบรับรองไม่ถูกต้อง
+sec-internal-only = **โมดูลเฉพาะภายใน**
+sec-error-invalid-key = กุญแจไม่รองรับการดำเนินการที่ขอ
+sec-error-unknown-critical-extension = ใบรับรองประกอบด้วยส่วนขยายสำคัญที่ไม่รู้จัก
+sec-error-old-crl = CRL ใหม่นั้นไม่ใหม่กว่าของปัจจุบัน
+sec-error-no-email-cert = ไม่ถูกเข้ารหัสหรือเซ็น: คุณยังไม่มีใบรับรองอีเมล
+sec-error-no-recipient-certs-query = ไม่ถูกเข้ารหัส: คุณไม่มีใบรับรองสำหรับแต่ละผู้รับ
+sec-error-not-a-recipient = ไม่สามารถถอดรหัส: คุณไม่ใช่ผู้รับ หรือไม่พบใบรับรองและกุญแจส่วนตัวที่ตรงกัน
+sec-error-pkcs7-keyalg-mismatch = ไม่สามารถถอดรหัส: อัลกอริทึมการเข้ารหัสกุญแจไม่ตรงกับใบรับรองของคุณ
+sec-error-pkcs7-bad-signature = การตรวจสอบลายเซ็นล้มเหลว: ไม่พบผู้เซ็น พบผู้เซ็นมากเกินไป หรือข้อมูลผิดรูปแบบหรือเสียหาย
+sec-error-unsupported-keyalg = อัลกอริทึมกุญแจที่ไม่รองรับหรือไม่รู้จัก
+sec-error-decryption-disallowed = ไม่สามารถถอดรหัส: ถูกเข้ารหัสโดยใช้อัลกอริทึมหรือขนาดกุญแจที่ไม่อนุญาต
+sec-error-no-krl = ไม่พบ KRL สำหรับใบรับรองของเว็บไซต์นี้
+sec-error-krl-expired = KRL สำหรับใบรับรองของเว็บไซต์นี้หมดอายุแล้ว
+sec-error-krl-bad-signature = KRL สำหรับใบรับรองของเว็บไซต์นี้มีลายเซ็นที่ไม่ถูกต้อง
+sec-error-revoked-key = KRL สำหรับใบรับรองของเว็บไซต์นี้หมดอายุแล้ว
+sec-error-krl-invalid = KRL ใหม่มีรูปแบบที่ไม่ถูกต้อง
+sec-error-need-random = ห้องสมุดความปลอดภัย: ต้องการข้อมูลแบบสุ่ม
+sec-error-no-module = ห้องสมุดความปลอดภัย: ไม่มีโมดูลความปลอดภัยที่สามารถทำตามการดำเนินการที่ขอ
+sec-error-no-token = ไม่มีการ์ดความปลอดภัยหรือโทเค็นอยู่ ต้องเริ่มใหม่อีกครั้ง หรือถูกเอาออกไปแล้ว
+sec-error-read-only = ห้องสมุดความปลอดภัย: ฐานข้อมูลแบบอ่านอย่างเดียว
+sec-error-no-slot-selected = ไม่ได้เลือกสล็อตหรือโทเค็น
+sec-error-cert-nickname-collision = มีใบรับรองที่มีชื่อเล่นเหมือนกันอยู่แล้ว
+sec-error-key-nickname-collision = มีกุญแจที่มีชื่อเล่นเดียวกันอยู่แล้ว
+sec-error-safe-not-created = เกิดข้อผิดพลาดขณะสร้างวัตถุแบบปลอดภัย
+sec-error-baggage-not-created = เกิดข้อผิดพลาดขณะสร้างวัตถุสัมภาระ
+sec-error-bad-export-algorithm = อัลกอริทึมที่ต้องการนั้นไม่อนุญาต
+sec-error-exporting-certificates = เกิดข้อผิดพลาดขณะพยายามส่งออกใบรับรอง
+sec-error-importing-certificates = เกิดข้อผิดพลาดขณะพยายามนำเข้าใบรับรอง
+sec-error-pkcs12-decoding-pfx = ไม่สามารถนำเข้า ข้อผิดพลาดการถอดรหัส ไฟล์ไม่ถูกต้อง
+sec-error-pkcs12-invalid-mac = ไม่สามารถนำเข้า MAC ไม่ถูกต้อง รหัสผ่านไม่ถูกต้องหรือไฟล์เสียหาย
+sec-error-pkcs12-unsupported-mac-algorithm = ไม่สามารถนำเข้า ไม่รองรับอัลกอริทึม MAC
+sec-error-pkcs12-unsupported-transport-mode = ไม่สามารถนำเข้า รองรับเฉพาะโหมดความเป็นส่วนตัวและความสมบูรณ์ของรหัสผ่านเท่านั้น
+sec-error-pkcs12-corrupt-pfx-structure = ไม่สามารถนำเข้า โครงสร้างไฟล์เสียหาย
+sec-error-pkcs12-unsupported-pbe-algorithm = ไม่สามารถนำเข้า อัลกอริทึมการเข้ารหัสไม่รองรับ
+sec-error-pkcs12-unsupported-version = ไม่สามารถนำเข้า ไม่รองรับรุ่นไฟล์
+sec-error-pkcs12-privacy-password-incorrect = ไม่สามารถนำเข้า รหัสผ่านความเป็นส่วนตัวไม่ถูกต้อง
+sec-error-pkcs12-cert-collision = ไม่สามารถนำเข้า มีชื่อเล่นเดียวกันอยู่แล้วในฐานข้อมูล
+sec-error-user-cancelled = ผู้ใช้กดยกเลิก
+sec-error-pkcs12-duplicate-data = ไม่ถูกนำเข้า มีอยู่แล้วในฐานข้อมูล
+sec-error-message-send-aborted = ข้อความไม่ถูกส่ง
+sec-error-inadequate-key-usage = การใช้งานกุญแจของใบรับรองไม่เพียงพอสำหรับการดำเนินการที่พยายาม
+sec-error-inadequate-cert-type = ประเภทของใบรับรองไม่ได้รับอนุญาตสำหรับแอปพลิเคชัน
+sec-error-cert-addr-mismatch = ที่อยู่ในใบรับรองที่เซ็นไม่ตรงกับที่อยู่ในเฮดเดอร์ของข้อความ
+sec-error-pkcs12-unable-to-import-key = ไม่สามารถนำเข้าได้ มีข้อผิดพลาดในการพยายามนำเข้าคีย์ส่วนตัว
+sec-error-pkcs12-importing-cert-chain = ไม่สามารถนำเข้าได้ มีข้อผิดพลาดในการพยายามนำเข้าสายใบรับรอง
+sec-error-pkcs12-unable-to-locate-object-by-name = ไม่สามารถส่งออกได้ ไม่สามารถระบุตำแหน่งที่ตั้งของใบรับรองหรือคีย์ด้วยชื่อเล่นได้
+sec-error-pkcs12-unable-to-export-key = ไม่สามารถส่งออกได้ ไม่สามารถระบุตำแหน่งที่ตั้งและส่งออกคีย์ส่วนตัวได้
+sec-error-pkcs12-unable-to-write = ไม่สามารถส่งออก ไม่สามารถเขียนไฟล์ส่งออก
+sec-error-pkcs12-unable-to-read = ไม่สามารถนำเข้า ไม่สามารถอ่านไฟล์นำเข้า
+sec-error-pkcs12-key-database-not-initialized = ไม่สามารถส่งออกได้ ฐานข้อมูลคีย์เสียหายหรือถูกลบไปแล้ว
+sec-error-keygen-fail = ไม่สามารถสุ่มคู่กุญแจสาธารณะ/ส่วนตัว
+sec-error-invalid-password = รหัสผ่านที่ป้อนไม่ถูกต้อง โปรดเลือกรหัสผ่านอื่น
+sec-error-retry-old-password = รหัสผ่านเก่าที่ป้อนไม่ถูกต้อง โปรดลองอีกครั้ง
+sec-error-bad-nickname = ชื่อเล่นใบรับรองมีการใช้งานอยู่แล้ว
+sec-error-not-fortezza-issuer = สาย FORTEZZA ปลายทางมีใบรับรองที่ไม่ใช่ FORTEZZA
+sec-error-cannot-move-sensitive-key = ไม่สามารถย้ายคีย์ที่ละเอียดอ่อนไปยังสล็อตที่ต้องการได้
+sec-error-js-invalid-module-name = ชื่อโมดูลไม่ถูกต้อง
+sec-error-js-invalid-dll = เส้นทางโมดูล/ชื่อไฟล์ไม่ถูกต้อง
+sec-error-js-add-mod-failure = ไม่สามารถเพิ่มโมดูล
+sec-error-js-del-mod-failure = ไม่สามารถลบโมดูล
+sec-error-old-krl = KRL ใหม่นั้นไม่ใหม่กว่าปัจจุบัน
+sec-error-ckl-conflict = CKL ใหม่มีผู้ออกที่แตกต่างจาก CKL ปัจจุบัน ลบ CKL ปัจจุบัน
+sec-error-cert-not-in-name-space = ผู้ออกใบรับรองสำหรับใบรับรองนี้ไม่ได้รับอนุญาตให้ออกใบรับรองด้วยชื่อนี้
+sec-error-krl-not-yet-valid = รายการการเพิกถอนคีย์สำหรับใบรับรองนี้ยังไม่ถูกต้อง
+sec-error-crl-not-yet-valid = รายการการเพิกถอนใบอนุญาตสำหรับใบรับรองนี้ยังไม่ถูกต้อง
+sec-error-unknown-cert = ไม่พบใบรับรองที่ขอ
+sec-error-unknown-signer = ไม่พบใบรับรองของผู้ลงลายเซ็น
+sec-error-cert-bad-access-location = ตำแหน่งที่ตั้งสำหรับเซิร์ฟเวอร์สถานะใบรับรองมีรูปแบบที่ไม่ถูกต้อง
+sec-error-ocsp-unknown-response-type = ไม่สามารถถอดรหัสการตอบกลับ OCSP ได้อย่างสมบูรณ์ เนื่องจากเป็นประเภทที่ไม่รู้จัก
+sec-error-ocsp-bad-http-response = เซิร์ฟเวอร์ OCSP ส่งกลับข้อมูล HTTP ที่ไม่คาดคิด/ไม่ถูกต้อง
+sec-error-ocsp-malformed-request = เซิร์ฟเวอร์ OCSP พบคำขอที่เสียหายหรือมีรูปแบบที่ไม่ถูกต้อง
+sec-error-ocsp-server-error = เซิร์ฟเวอร์ OCSP พบข้อผิดพลาดภายใน
+sec-error-ocsp-try-server-later = เซิร์ฟเวอร์ OCSP แนะนำให้ลองอีกครั้งในภายหลัง
+sec-error-ocsp-request-needs-sig = เซิร์ฟเวอร์ OCSP ต้องการลายเซ็นบนคำขอนี้
+sec-error-ocsp-unauthorized-request = เซิร์ฟเวอร์ OCSP ปฏิเสธคำขอนี้เนื่องจากไม่ได้รับอนุญาต
+sec-error-ocsp-unknown-response-status = เซิร์ฟเวอร์ OCSP ส่งกลับสถานะที่ไม่รู้จัก
+sec-error-ocsp-unknown-cert = เซิร์ฟเวอร์ OCSP ไม่มีสถานะสำหรับใบรับรอง
+sec-error-ocsp-not-enabled = คุณต้องเปิดใช้งาน OCSP ก่อนจะทำการดำเนินการนี้
+sec-error-ocsp-no-default-responder = คุณต้องตั้งตัวตอบกลับเริ่มต้น OCSP ก่อนดำเนินการนี้
+sec-error-ocsp-malformed-response = การตอบกลับจากเซิร์ฟเวอร์ OCSP เสียหายหรือมีรูปแบบที่ไม่ถูกต้อง
+sec-error-ocsp-unauthorized-response = ผู้ลงลายเซ็นของการตอบกลับ OCSP ไม่ได้รับอนุญาตให้ระบุสถานะสำหรับใบรับรองนี้
+sec-error-ocsp-future-response = การตอบกลับ OCSP ยังไม่ถูกต้อง (มีวันในอนาคต)
+sec-error-ocsp-old-response = การตอบกลับ OCSP มีข้อมูลที่ล้าสมัย
+sec-error-digest-not-found = ไม่พบส่วนย่อย CMS หรือ PKCS #7 ในข้อความที่ลงลายเซ็น
+sec-error-unsupported-message-type = ไม่รองรับชนิดข้อความ CMS หรือ PKCS #7
+sec-error-module-stuck = ไม่สามารถเอาโมดูล PKCS #11 ออกได้เนื่องจากใช้งานอยู่
+sec-error-bad-template = ไม่สามารถถอดรหัสข้อมูล ASN.1 ได้ แม่แบบที่ระบุไม่ถูกต้อง
+sec-error-crl-not-found = ไม่พบ CRL ที่ตรงกัน
+sec-error-reused-issuer-and-serial = คุณกำลังพยายามนำเข้าใบรับรองที่มีผู้ออก/เลขอนุกรมเดียวกันเป็นใบรับรองที่มีอยู่แล้ว แต่ไม่ใช่ใบรับรองเดียวกัน
+sec-error-busy = ไม่สามารถปิด NSS ได้ วัตถุยังถูกใช้งานอยู่
+sec-error-extra-input = ข้อความที่เข้ารหัสแบบ DER มีข้อมูลที่ไม่ได้ใช้เพิ่มเติม
+sec-error-unsupported-elliptic-curve = ไม่รองรับเส้นโค้งรูปไข่นี้
+sec-error-unsupported-ec-point-form = ไม่รองรับรูปแบบจุดเส้นโค้งรูปไข่นี้
+sec-error-unrecognized-oid = ตัวระบุวัตถุที่ไม่รู้จัก
+sec-error-ocsp-invalid-signing-cert = ใบรับรองการลงลายเซ็น OCSP ไม่ถูกต้องในการตอบกลับ OCSP
+sec-error-revoked-certificate-crl = ใบรับรองถูกเพิกถอนในรายการเพิกถอนใบรับรองของผู้ออก
+sec-error-revoked-certificate-ocsp = ใบรับรองรายงานผู้ตอบกลับ OCSP ของผู้ออกถูกเพิกถอน
+sec-error-crl-invalid-version = รายการเพิกถอนใบรับรองของผู้ออกมีหมายเลขรุ่นที่ไม่รู้จัก
+sec-error-crl-v1-critical-extension = รายการเพิกถอนใบรับรอง V1 ของผู้ออกมีส่วนขยายสำคัญ
+sec-error-crl-unknown-critical-extension = รายการเพิกถอนใบรับรอง V2 ของผู้ออกมีส่วนขยายสำคัญที่ไม่รู้จัก
+sec-error-unknown-object-type = ไม่รู้จักชนิดวัตถุที่ระบุ
+sec-error-incompatible-pkcs11 = ไดรเวอร์ PKCS #11 ละเมิดข้อกำหนดในแบบที่ใช้ร่วมกันไม่ได้
+sec-error-no-event = ไม่มีเหตุการณ์สล็อตใหม่ในเวลานี้
+sec-error-crl-already-exists = มี CRL อยู่แล้ว
+sec-error-not-initialized = ไม่ได้เตรียมใช้งาน NSS
+sec-error-token-not-logged-in = การดำเนินการล้มเหลวเนื่องจากไม่ได้เข้าสู่ระบบโทเค็น PKCS#11
+sec-error-ocsp-responder-cert-invalid = ใบรับรองของผู้ตอบกลับ OCSP ที่กำหนดค่าไม่ถูกต้อง
+sec-error-ocsp-bad-signature = การตอบกลับ OCSP มีลายเซ็นที่ไม่ถูกต้อง
+sec-error-out-of-search-limits = การค้นหาการตรวจสอบความถูกต้องของใบรับรองเกินขีดจำกัดในการค้นหา
+sec-error-invalid-policy-mapping = การแมปนโยบายมี anypolicy
+sec-error-policy-validation-failed = การตรวจสอบความถูกต้องของนโยบายของสายใบรับรองล้มเหลว
+sec-error-unknown-aia-location-type = ไม่รู้จักชนิดตำแหน่งที่ตั้งที่ระบุในส่วนขยาย AIA
+sec-error-bad-http-response = เซิร์ฟเวอร์ส่งกลับการตอบกลับ HTTP ที่ไม่ถูกต้อง
+sec-error-bad-ldap-response = เซิร์ฟเวอร์ส่งกลับการตอบกลับ LDAP ที่ไม่ถูกต้อง
+sec-error-failed-to-encode-data = ล้มเหลวในการเข้ารหัสข้อมูลด้วยตัวเข้ารหัส ASN1
+sec-error-bad-info-access-location = ตำแหน่งการเข้าถึงข้อมูลไม่ถูกต้องในส่วนขยายใบรับรอง
+sec-error-libpkix-internal = เกิดข้อผิดพลาดภายในของ Libpkix ระหว่างการตรวจสอบความถูกต้องของใบรับรอง
+sec-error-pkcs11-general-error = โมดูล PKCS #11 ส่งกลับ CKR_GENERAL_ERROR ซึ่งบ่งชี้ว่าเกิดข้อผิดพลาดที่ไม่สามารถกู้คืนได้
+sec-error-pkcs11-function-failed = โมดูล PKCS #11 ส่งกลับ CKR_FUNCTION_FAILED ซึ่งบ่งชี้ว่าไม่สามารถดำเนินการตามฟังก์ชันที่ขอได้ การลองการดำเนินการเดียวกันอีกครั้งอาจสำเร็จ
+sec-error-pkcs11-device-error = โมดูล PKCS #11 ส่งกลับ CKR_DEVICE_ERROR ซึ่งบ่งชี้ว่าเกิดปัญหาขึ้นกับโทเค็นหรือสล็อต
+sec-error-bad-info-access-method = วิธีการเข้าถึงข้อมูลที่ไม่รู้จักในส่วนขยายใบรับรอง
+sec-error-crl-import-failed = เกิดข้อผิดพลาดในการพยายามนำเข้า CRL
+sec-error-expired-password = รหัสผ่านหมดอายุ
+sec-error-locked-password = รหัสผ่านถูกล็อค
+sec-error-unknown-pkcs11-error = ข้อผิดพลาด PKCS #11 ที่ไม่รู้จัก
+sec-error-bad-crl-dp-url = URL ไม่ถูกต้องหรือไม่รองรับในชื่อจุดแจกจ่าย CRL
+sec-error-cert-signature-algorithm-disabled = ใบรับรองถูกเซ็นโดยใช้อัลกอริทึมใบรับรองที่ถูกปิดการใช้งานเนื่องจากไม่ปลอดภัย
+mozilla-pkix-error-key-pinning-failure = เซิร์ฟเวอร์ใช้ key pinning (HPKP) แต่ไม่สามารถสร้างสายใบรับรองที่เชื่อถือได้ซึ่งตรงกับ pinset ไม่สามารถแทนที่การละเมิด Key pinning ได้
+mozilla-pkix-error-ca-cert-used-as-end-entity = เซิร์ฟเวอร์ใช้ใบรับรองที่มีข้อจำกัดพื้นฐานที่ระบุว่าเป็นผู้ออกใบรับรอง สำหรับใบรับรองที่ออกให้อย่างถูกต้องไม่ควรเป็นเช่นนี้
+mozilla-pkix-error-inadequate-key-size = เซิร์ฟเวอร์แสดงใบรับรองที่มีขนาดคีย์ที่เล็กเกินไปที่จะสร้างการเชื่อมต่อที่ปลอดภัย
+mozilla-pkix-error-v1-cert-used-as-ca = ใบรับรอง X.509 รุ่น 1 ที่ไม่ใช่ trust anchor ถูกใช้เพื่อออกใบรับรองของเซิร์ฟเวอร์ ใบรับรอง X.509 รุ่น 1 เลิกใช้แล้วและไม่ควรใช้เพื่อลงลายเซ็นให้กับใบรับรองอื่น ๆ
+mozilla-pkix-error-not-yet-valid-certificate = เซิร์ฟเวอร์เสนอใบรับรองที่ยังไม่ถูกต้อง
+mozilla-pkix-error-not-yet-valid-issuer-certificate = ใบรับรองที่ยังไม่ถูกต้องถูกใช้เพื่อออกใบรับรองของเซิร์ฟเวอร์
+mozilla-pkix-error-signature-algorithm-mismatch = อัลกอริทึมลายเซ็นในฟิลด์ลายเซ็นของใบรับรองไม่ตรงกับอัลกอริทึมในฟิลด์ SignatureAlgorithm
+mozilla-pkix-error-ocsp-response-for-cert-missing = การตอบกลับ OCSP ไม่มีสถานะสำหรับใบรับรองที่กำลังจะถูกตรวจสอบ
+mozilla-pkix-error-validity-too-long = เซิร์ฟเวอร์เสนอใบรับรองที่มีผลในระยะเวลานานเกินไป
+mozilla-pkix-error-required-tls-feature-missing = ไม่มีคุณลักษณะ TLS ที่จำเป็น
+mozilla-pkix-error-invalid-integer-encoding = เซิร์ฟเวอร์เสนอใบรับรองที่มีการเข้ารหัสจำนวนเต็มที่ไม่ถูกต้อง สาเหตุที่พบบ่อย ได้แก่ หมายเลขซีเรียลเป็นค่าลบ โมดูลัส RSA เป็นค่าลบ และการเข้ารหัสที่ยาวเกินความจำเป็น
+mozilla-pkix-error-empty-issuer-name = เซิร์ฟเวอร์เสนอใบรับรองที่มีชื่อต่างหากของผู้ออกที่ว่างเปล่า
+mozilla-pkix-error-additional-policy-constraint-failed = ข้อจำกัดนโยบายเพิ่มเติมล้มเหลวเมื่อตรวจสอบความถูกต้องของใบรับรองนี้
+mozilla-pkix-error-self-signed-cert = ใบรับรองของไม่น่าเชื่อถือเพราะเป็นการออกใบรับรองโดยเจ้าของเว็บไซต์เอง
+xp-java-remove-principal-error = ไม่สามารถเอา principal ออกได้
+xp-java-delete-privilege-error = ไม่สามารถลบ privilege ได้
+xp-java-cert-not-exists-error = Principle นี้ไม่มีใบรับรอง
+xp-sec-fortezza-bad-card = การ์ด Fortezza ไม่ได้เริ่มอย่างถูกต้อง โปรดเอาออกและส่งคืนให้กับผู้ออกของคุณ
+xp-sec-fortezza-no-card = ไม่พบการ์ด Fortezza
+xp-sec-fortezza-none-selected = ไม่มีการ์ด Fortezza ที่เลือก
+xp-sec-fortezza-more-info = โปรดเลือกการตั้งค่าส่วนบุคคลเพื่อรับข้อมูลเพิ่มเติม
+xp-sec-fortezza-person-not-found = ไม่พบการตั้งค่าส่วนบุคคล
+xp-sec-fortezza-no-more-info = ไม่มีข้อมูลเพิ่มเติมเกี่ยวกับการตั้งค่าส่วนบุคคลนั้น
+xp-sec-fortezza-bad-pin = ปักไม่ถูกต้อง
+xp-sec-fortezza-person-error = ไม่สามารถเริ่มการตั้งค่าส่วนบุคคล Fortezza ได้
diff --git a/l10n-th/toolkit/toolkit/passwordmgr/passwordmgr.ftl b/l10n-th/toolkit/toolkit/passwordmgr/passwordmgr.ftl
new file mode 100644
index 0000000000..96a2363137
--- /dev/null
+++ b/l10n-th/toolkit/toolkit/passwordmgr/passwordmgr.ftl
@@ -0,0 +1,39 @@
+# 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/.
+
+
+## Save and update password doorhanger
+
+# Variables
+# $host (String) - Hostname for which the password is saved for.
+password-manager-save-password-message = บันทึกรหัสผ่านสำหรับ { $host } หรือไม่?
+password-manager-save-password-button-deny =
+ .label = ยังไม่ทำตอนนี้
+ .accesskey = ม
+password-manager-save-password-button-allow =
+ .label = บันทึก
+ .accesskey = บ
+password-manager-save-password-button-never =
+ .label = ไม่บันทึกเสมอ
+ .accesskey = ส
+# Variables
+# $host (String) - Hostname for which the password is updated for.
+password-manager-update-password-message = อัปเดตรหัสผ่านสำหรับ { $host } หรือไม่
+password-manager-update-password-button-delete =
+ .label = เอารหัสผ่านที่บันทึกไว้ออก
+ .accesskey = อ
+password-manager-update-login-add-username = เพิ่มชื่อผู้ใช้ในรหัสผ่านที่บันทึกไว้หรือไม่?
+password-manager-password-password-button-allow =
+ .label = อัปเดต
+ .accesskey = อ
+password-manager-update-password-button-deny =
+ .label = ไม่อัปเดต
+ .accesskey = ม
+# This is displayed in place of the username when it is missing.
+password-manager-no-username-placeholder = ไม่มีชื่อผู้ใช้
+password-manager-toggle-password =
+ .label = แสดงรหัสผ่าน
+ .accesskey = ส
+password-manager-confirm-password-change = ยืนยันการเปลี่ยนรหัสผ่าน
+password-manager-select-username = เลือกการเข้าสู่ระบบที่จะอัปเดต:
diff --git a/l10n-th/toolkit/toolkit/payments/payments.ftl b/l10n-th/toolkit/toolkit/payments/payments.ftl
new file mode 100644
index 0000000000..e55eccd69d
--- /dev/null
+++ b/l10n-th/toolkit/toolkit/payments/payments.ftl
@@ -0,0 +1,51 @@
+# 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 value isn't used directly, but is defined to avoid duplication
+# in the "credit-card-label-*" strings.
+#
+# Variables:
+# $month (String): Numeric month the credit card expires
+# $year (String): Four-digit year the credit card expires
+credit-card-expiration = หมดอายุ { $month }/{ $year }
+
+## These labels serve as a description of a credit card.
+## The description must include a credit card number, and may optionally
+## include a cardholder name, an expiration date, or both, so we have
+## four variations.
+
+# Label for a credit card with a number only
+#
+# Variables:
+# $number (String): Partially-redacted credit card number
+# $type (String): Credit card type
+credit-card-label-number-2 = { $number }
+ .aria-label = { $type } { credit-card-label-number-2 }
+
+# Label for a credit card with a number and name
+#
+# Variables:
+# $number (String): Partially-redacted credit card number
+# $name (String): Cardholder name
+# $type (String): Credit card type
+credit-card-label-number-name-2 = { $number }, { $name }
+ .aria-label = { $type } { credit-card-label-number-name-2 }
+
+# Label for a credit card with a number and expiration date
+#
+# Variables:
+# $number (String): Partially-redacted credit card number
+# $type (String): Credit card type
+credit-card-label-number-expiration-2 = { $number }, { credit-card-expiration }
+ .aria-label = { $type } { credit-card-label-number-expiration-2 }
+
+# Label for a credit card with a number, name, and expiration date
+#
+# Variables:
+# $number (String): Partially-redacted credit card number
+# $name (String): Cardholder name
+# $type (String): Credit card type
+credit-card-label-number-name-expiration-2 = { $number }, { $name }, { credit-card-expiration }
+ .aria-label = { $type } { credit-card-label-number-name-expiration-2 }
diff --git a/l10n-th/toolkit/toolkit/pdfviewer/viewer.ftl b/l10n-th/toolkit/toolkit/pdfviewer/viewer.ftl
new file mode 100644
index 0000000000..ea45c1ae54
--- /dev/null
+++ b/l10n-th/toolkit/toolkit/pdfviewer/viewer.ftl
@@ -0,0 +1,381 @@
+# 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/.
+
+
+## Main toolbar buttons (tooltips and alt text for images)
+
+pdfjs-previous-button =
+ .title = หน้าก่อนหน้า
+pdfjs-previous-button-label = ก่อนหน้า
+pdfjs-next-button =
+ .title = หน้าถัดไป
+pdfjs-next-button-label = ถัดไป
+# .title: Tooltip for the pageNumber input.
+pdfjs-page-input =
+ .title = หน้า
+# Variables:
+# $pagesCount (Number) - the total number of pages in the document
+# This string follows an input field with the number of the page currently displayed.
+pdfjs-of-pages = จาก { $pagesCount }
+# Variables:
+# $pageNumber (Number) - the currently visible page
+# $pagesCount (Number) - the total number of pages in the document
+pdfjs-page-of-pages = ({ $pageNumber } จาก { $pagesCount })
+pdfjs-zoom-out-button =
+ .title = ซูมออก
+pdfjs-zoom-out-button-label = ซูมออก
+pdfjs-zoom-in-button =
+ .title = ซูมเข้า
+pdfjs-zoom-in-button-label = ซูมเข้า
+pdfjs-zoom-select =
+ .title = ซูม
+pdfjs-presentation-mode-button =
+ .title = สลับเป็นโหมดการนำเสนอ
+pdfjs-presentation-mode-button-label = โหมดการนำเสนอ
+pdfjs-open-file-button =
+ .title = เปิดไฟล์
+pdfjs-open-file-button-label = เปิด
+pdfjs-print-button =
+ .title = พิมพ์
+pdfjs-print-button-label = พิมพ์
+pdfjs-save-button =
+ .title = บันทึก
+pdfjs-save-button-label = บันทึก
+# Used in Firefox for Android as a tooltip for the download button (“download” is a verb).
+pdfjs-download-button =
+ .title = ดาวน์โหลด
+# Used in Firefox for Android as a label for the download button (“download” is a verb).
+# Length of the translation matters since we are in a mobile context, with limited screen estate.
+pdfjs-download-button-label = ดาวน์โหลด
+pdfjs-bookmark-button =
+ .title = หน้าปัจจุบัน (ดู URL จากหน้าปัจจุบัน)
+pdfjs-bookmark-button-label = หน้าปัจจุบัน
+# Used in Firefox for Android.
+pdfjs-open-in-app-button =
+ .title = เปิดในแอป
+# Used in Firefox for Android.
+# Length of the translation matters since we are in a mobile context, with limited screen estate.
+pdfjs-open-in-app-button-label = เปิดในแอป
+
+## Secondary toolbar and context menu
+
+pdfjs-tools-button =
+ .title = เครื่องมือ
+pdfjs-tools-button-label = เครื่องมือ
+pdfjs-first-page-button =
+ .title = ไปยังหน้าแรก
+pdfjs-first-page-button-label = ไปยังหน้าแรก
+pdfjs-last-page-button =
+ .title = ไปยังหน้าสุดท้าย
+pdfjs-last-page-button-label = ไปยังหน้าสุดท้าย
+pdfjs-page-rotate-cw-button =
+ .title = หมุนตามเข็มนาฬิกา
+pdfjs-page-rotate-cw-button-label = หมุนตามเข็มนาฬิกา
+pdfjs-page-rotate-ccw-button =
+ .title = หมุนทวนเข็มนาฬิกา
+pdfjs-page-rotate-ccw-button-label = หมุนทวนเข็มนาฬิกา
+pdfjs-cursor-text-select-tool-button =
+ .title = เปิดใช้งานเครื่องมือการเลือกข้อความ
+pdfjs-cursor-text-select-tool-button-label = เครื่องมือการเลือกข้อความ
+pdfjs-cursor-hand-tool-button =
+ .title = เปิดใช้งานเครื่องมือมือ
+pdfjs-cursor-hand-tool-button-label = เครื่องมือมือ
+pdfjs-scroll-page-button =
+ .title = ใช้การเลื่อนหน้า
+pdfjs-scroll-page-button-label = การเลื่อนหน้า
+pdfjs-scroll-vertical-button =
+ .title = ใช้การเลื่อนแนวตั้ง
+pdfjs-scroll-vertical-button-label = การเลื่อนแนวตั้ง
+pdfjs-scroll-horizontal-button =
+ .title = ใช้การเลื่อนแนวนอน
+pdfjs-scroll-horizontal-button-label = การเลื่อนแนวนอน
+pdfjs-scroll-wrapped-button =
+ .title = ใช้การเลื่อนแบบคลุม
+pdfjs-scroll-wrapped-button-label = เลื่อนแบบคลุม
+pdfjs-spread-none-button =
+ .title = ไม่ต้องรวมการกระจายหน้า
+pdfjs-spread-none-button-label = ไม่กระจาย
+pdfjs-spread-odd-button =
+ .title = รวมการกระจายหน้าเริ่มจากหน้าคี่
+pdfjs-spread-odd-button-label = กระจายอย่างเหลือเศษ
+pdfjs-spread-even-button =
+ .title = รวมการกระจายหน้าเริ่มจากหน้าคู่
+pdfjs-spread-even-button-label = กระจายอย่างเท่าเทียม
+
+## Document properties dialog
+
+pdfjs-document-properties-button =
+ .title = คุณสมบัติเอกสาร…
+pdfjs-document-properties-button-label = คุณสมบัติเอกสาร…
+pdfjs-document-properties-file-name = ชื่อไฟล์:
+pdfjs-document-properties-file-size = ขนาดไฟล์:
+# Variables:
+# $size_kb (Number) - the PDF file size in kilobytes
+# $size_b (Number) - the PDF file size in bytes
+pdfjs-document-properties-kb = { $size_kb } KB ({ $size_b } ไบต์)
+# Variables:
+# $size_mb (Number) - the PDF file size in megabytes
+# $size_b (Number) - the PDF file size in bytes
+pdfjs-document-properties-mb = { $size_mb } MB ({ $size_b } ไบต์)
+pdfjs-document-properties-title = ชื่อเรื่อง:
+pdfjs-document-properties-author = ผู้สร้าง:
+pdfjs-document-properties-subject = ชื่อเรื่อง:
+pdfjs-document-properties-keywords = คำสำคัญ:
+pdfjs-document-properties-creation-date = วันที่สร้าง:
+pdfjs-document-properties-modification-date = วันที่แก้ไข:
+# Variables:
+# $date (Date) - the creation/modification date of the PDF file
+# $time (Time) - the creation/modification time of the PDF file
+pdfjs-document-properties-date-string = { $date }, { $time }
+pdfjs-document-properties-creator = ผู้สร้าง:
+pdfjs-document-properties-producer = ผู้ผลิต PDF:
+pdfjs-document-properties-version = รุ่น PDF:
+pdfjs-document-properties-page-count = จำนวนหน้า:
+pdfjs-document-properties-page-size = ขนาดหน้า:
+pdfjs-document-properties-page-size-unit-inches = in
+pdfjs-document-properties-page-size-unit-millimeters = mm
+pdfjs-document-properties-page-size-orientation-portrait = แนวตั้ง
+pdfjs-document-properties-page-size-orientation-landscape = แนวนอน
+pdfjs-document-properties-page-size-name-a-three = A3
+pdfjs-document-properties-page-size-name-a-four = A4
+pdfjs-document-properties-page-size-name-letter = จดหมาย
+pdfjs-document-properties-page-size-name-legal = ข้อกฎหมาย
+
+## Variables:
+## $width (Number) - the width of the (current) page
+## $height (Number) - the height of the (current) page
+## $unit (String) - the unit of measurement of the (current) page
+## $name (String) - the name of the (current) page
+## $orientation (String) - the orientation of the (current) page
+
+pdfjs-document-properties-page-size-dimension-string = { $width } × { $height } { $unit } ({ $orientation })
+pdfjs-document-properties-page-size-dimension-name-string = { $width } × { $height } { $unit } ({ $name }, { $orientation })
+
+##
+
+# The linearization status of the document; usually called "Fast Web View" in
+# English locales of Adobe software.
+pdfjs-document-properties-linearized = มุมมองเว็บแบบรวดเร็ว:
+pdfjs-document-properties-linearized-yes = ใช่
+pdfjs-document-properties-linearized-no = ไม่
+pdfjs-document-properties-close-button = ปิด
+
+## Print
+
+pdfjs-print-progress-message = กำลังเตรียมเอกสารสำหรับการพิมพ์…
+# Variables:
+# $progress (Number) - percent value
+pdfjs-print-progress-percent = { $progress }%
+pdfjs-print-progress-close-button = ยกเลิก
+pdfjs-printing-not-supported = คำเตือน: เบราว์เซอร์นี้ไม่ได้สนับสนุนการพิมพ์อย่างเต็มที่
+pdfjs-printing-not-ready = คำเตือน: PDF ไม่ได้รับการโหลดอย่างเต็มที่สำหรับการพิมพ์
+
+## Tooltips and alt text for side panel toolbar buttons
+
+pdfjs-toggle-sidebar-button =
+ .title = เปิด/ปิดแถบข้าง
+pdfjs-toggle-sidebar-notification-button =
+ .title = เปิด/ปิดแถบข้าง (เอกสารมีเค้าร่าง/ไฟล์แนบ/เลเยอร์)
+pdfjs-toggle-sidebar-button-label = เปิด/ปิดแถบข้าง
+pdfjs-document-outline-button =
+ .title = แสดงเค้าร่างเอกสาร (คลิกสองครั้งเพื่อขยาย/ยุบรายการทั้งหมด)
+pdfjs-document-outline-button-label = เค้าร่างเอกสาร
+pdfjs-attachments-button =
+ .title = แสดงไฟล์แนบ
+pdfjs-attachments-button-label = ไฟล์แนบ
+pdfjs-layers-button =
+ .title = แสดงเลเยอร์ (คลิกสองครั้งเพื่อรีเซ็ตเลเยอร์ทั้งหมดเป็นสถานะเริ่มต้น)
+pdfjs-layers-button-label = เลเยอร์
+pdfjs-thumbs-button =
+ .title = แสดงภาพขนาดย่อ
+pdfjs-thumbs-button-label = ภาพขนาดย่อ
+pdfjs-current-outline-item-button =
+ .title = ค้นหารายการเค้าร่างปัจจุบัน
+pdfjs-current-outline-item-button-label = รายการเค้าร่างปัจจุบัน
+pdfjs-findbar-button =
+ .title = ค้นหาในเอกสาร
+pdfjs-findbar-button-label = ค้นหา
+pdfjs-additional-layers = เลเยอร์เพิ่มเติม
+
+## Thumbnails panel item (tooltip and alt text for images)
+
+# Variables:
+# $page (Number) - the page number
+pdfjs-thumb-page-title =
+ .title = หน้า { $page }
+# Variables:
+# $page (Number) - the page number
+pdfjs-thumb-page-canvas =
+ .aria-label = ภาพขนาดย่อของหน้า { $page }
+
+## Find panel button title and messages
+
+pdfjs-find-input =
+ .title = ค้นหา
+ .placeholder = ค้นหาในเอกสาร…
+pdfjs-find-previous-button =
+ .title = หาตำแหน่งก่อนหน้าของวลี
+pdfjs-find-previous-button-label = ก่อนหน้า
+pdfjs-find-next-button =
+ .title = หาตำแหน่งถัดไปของวลี
+pdfjs-find-next-button-label = ถัดไป
+pdfjs-find-highlight-checkbox = เน้นสีทั้งหมด
+pdfjs-find-match-case-checkbox-label = ตัวพิมพ์ใหญ่เล็กตรงกัน
+pdfjs-find-match-diacritics-checkbox-label = เครื่องหมายกำกับการออกเสียงตรงกัน
+pdfjs-find-entire-word-checkbox-label = ทั้งคำ
+pdfjs-find-reached-top = ค้นหาถึงจุดเริ่มต้นของหน้า เริ่มค้นต่อจากด้านล่าง
+pdfjs-find-reached-bottom = ค้นหาถึงจุดสิ้นสุดหน้า เริ่มค้นต่อจากด้านบน
+# Variables:
+# $current (Number) - the index of the currently active find result
+# $total (Number) - the total number of matches in the document
+pdfjs-find-match-count = { $current } จาก { $total } รายการที่ตรงกัน
+# Variables:
+# $limit (Number) - the maximum number of matches
+pdfjs-find-match-count-limit = มากกว่า { $limit } รายการที่ตรงกัน
+pdfjs-find-not-found = ไม่พบวลี
+
+## Predefined zoom values
+
+pdfjs-page-scale-width = ความกว้างหน้า
+pdfjs-page-scale-fit = พอดีหน้า
+pdfjs-page-scale-auto = ซูมอัตโนมัติ
+pdfjs-page-scale-actual = ขนาดจริง
+# Variables:
+# $scale (Number) - percent value for page scale
+pdfjs-page-scale-percent = { $scale }%
+
+## PDF page
+
+# Variables:
+# $page (Number) - the page number
+pdfjs-page-landmark =
+ .aria-label = หน้า { $page }
+
+## Loading indicator messages
+
+pdfjs-loading-error = เกิดข้อผิดพลาดขณะโหลด PDF
+pdfjs-invalid-file-error = ไฟล์ PDF ไม่ถูกต้องหรือเสียหาย
+pdfjs-missing-file-error = ไฟล์ PDF หายไป
+pdfjs-unexpected-response-error = การตอบสนองของเซิร์ฟเวอร์ที่ไม่คาดคิด
+pdfjs-rendering-error = เกิดข้อผิดพลาดขณะเรนเดอร์หน้า
+
+## Annotations
+
+# Variables:
+# $date (Date) - the modification date of the annotation
+# $time (Time) - the modification time of the annotation
+pdfjs-annotation-date-string = { $date }, { $time }
+# .alt: This is used as a tooltip.
+# Variables:
+# $type (String) - an annotation type from a list defined in the PDF spec
+# (32000-1:2008 Table 169 – Annotation types).
+# Some common types are e.g.: "Check", "Text", "Comment", "Note"
+pdfjs-text-annotation-type =
+ .alt = [คำอธิบายประกอบ { $type }]
+
+## Password
+
+pdfjs-password-label = ป้อนรหัสผ่านเพื่อเปิดไฟล์ PDF นี้
+pdfjs-password-invalid = รหัสผ่านไม่ถูกต้อง โปรดลองอีกครั้ง
+pdfjs-password-ok-button = ตกลง
+pdfjs-password-cancel-button = ยกเลิก
+pdfjs-web-fonts-disabled = แบบอักษรเว็บถูกปิดใช้งาน: ไม่สามารถใช้แบบอักษร PDF ฝังตัว
+
+## Editing
+
+pdfjs-editor-free-text-button =
+ .title = ข้อความ
+pdfjs-editor-free-text-button-label = ข้อความ
+pdfjs-editor-ink-button =
+ .title = รูปวาด
+pdfjs-editor-ink-button-label = รูปวาด
+pdfjs-editor-stamp-button =
+ .title = เพิ่มหรือแก้ไขภาพ
+pdfjs-editor-stamp-button-label = เพิ่มหรือแก้ไขภาพ
+pdfjs-editor-highlight-button =
+ .title = เน้น
+pdfjs-editor-highlight-button-label = เน้น
+
+## Remove button for the various kind of editor.
+
+pdfjs-editor-remove-ink-button =
+ .title = เอาภาพวาดออก
+pdfjs-editor-remove-freetext-button =
+ .title = เอาข้อความออก
+pdfjs-editor-remove-stamp-button =
+ .title = เอาภาพออก
+pdfjs-editor-remove-highlight-button =
+ .title = เอาการเน้นสีออก
+
+##
+
+# Editor Parameters
+pdfjs-editor-free-text-color-input = สี
+pdfjs-editor-free-text-size-input = ขนาด
+pdfjs-editor-ink-color-input = สี
+pdfjs-editor-ink-thickness-input = ความหนา
+pdfjs-editor-ink-opacity-input = ความทึบ
+pdfjs-editor-stamp-add-image-button =
+ .title = เพิ่มภาพ
+pdfjs-editor-stamp-add-image-button-label = เพิ่มภาพ
+# This refers to the thickness of the line used for free highlighting (not bound to text)
+pdfjs-editor-free-highlight-thickness-input = ความหนา
+pdfjs-editor-free-highlight-thickness-title =
+ .title = เปลี่ยนความหนาเมื่อเน้นรายการอื่นๆ ที่ไม่ใช่ข้อความ
+pdfjs-free-text =
+ .aria-label = ตัวแก้ไขข้อความ
+pdfjs-free-text-default-content = เริ่มพิมพ์…
+pdfjs-ink =
+ .aria-label = ตัวแก้ไขรูปวาด
+pdfjs-ink-canvas =
+ .aria-label = ภาพที่ผู้ใช้สร้างขึ้น
+
+## Alt-text dialog
+
+# Alternative text (alt text) helps when people can't see the image.
+pdfjs-editor-alt-text-button-label = ข้อความทดแทน
+pdfjs-editor-alt-text-edit-button-label = แก้ไขข้อความทดแทน
+pdfjs-editor-alt-text-dialog-label = เลือกตัวเลือก
+pdfjs-editor-alt-text-dialog-description = ข้อความทดแทนสามารถช่วยเหลือได้เมื่อผู้ใช้มองไม่เห็นภาพ หรือภาพไม่โหลด
+pdfjs-editor-alt-text-add-description-label = เพิ่มคำอธิบาย
+pdfjs-editor-alt-text-add-description-description = แนะนำให้ใช้ 1-2 ประโยคซึ่งอธิบายหัวเรื่อง ฉาก หรือการกระทำ
+pdfjs-editor-alt-text-mark-decorative-label = ทำเครื่องหมายเป็นสิ่งตกแต่ง
+pdfjs-editor-alt-text-mark-decorative-description = สิ่งนี้ใช้สำหรับภาพที่เป็นสิ่งประดับ เช่น ขอบ หรือลายน้ำ
+pdfjs-editor-alt-text-cancel-button = ยกเลิก
+pdfjs-editor-alt-text-save-button = บันทึก
+pdfjs-editor-alt-text-decorative-tooltip = ทำเครื่องหมายเป็นสิ่งตกแต่งแล้ว
+# .placeholder: This is a placeholder for the alt text input area
+pdfjs-editor-alt-text-textarea =
+ .placeholder = ตัวอย่างเช่น “ชายหนุ่มคนหนึ่งนั่งลงที่โต๊ะเพื่อรับประทานอาหารมื้อหนึ่ง”
+
+## Editor resizers
+## This is used in an aria label to help to understand the role of the resizer.
+
+pdfjs-editor-resizer-label-top-left = มุมซ้ายบน — ปรับขนาด
+pdfjs-editor-resizer-label-top-middle = ตรงกลางด้านบน — ปรับขนาด
+pdfjs-editor-resizer-label-top-right = มุมขวาบน — ปรับขนาด
+pdfjs-editor-resizer-label-middle-right = ตรงกลางด้านขวา — ปรับขนาด
+pdfjs-editor-resizer-label-bottom-right = มุมขวาล่าง — ปรับขนาด
+pdfjs-editor-resizer-label-bottom-middle = ตรงกลางด้านล่าง — ปรับขนาด
+pdfjs-editor-resizer-label-bottom-left = มุมซ้ายล่าง — ปรับขนาด
+pdfjs-editor-resizer-label-middle-left = ตรงกลางด้านซ้าย — ปรับขนาด
+
+## Color picker
+
+# This means "Color used to highlight text"
+pdfjs-editor-highlight-colorpicker-label = สีเน้น
+pdfjs-editor-colorpicker-button =
+ .title = เปลี่ยนสี
+pdfjs-editor-colorpicker-dropdown =
+ .aria-label = ทางเลือกสี
+pdfjs-editor-colorpicker-yellow =
+ .title = เหลือง
+pdfjs-editor-colorpicker-green =
+ .title = เขียว
+pdfjs-editor-colorpicker-blue =
+ .title = น้ำเงิน
+pdfjs-editor-colorpicker-pink =
+ .title = ชมพู
+pdfjs-editor-colorpicker-red =
+ .title = แดง
diff --git a/l10n-th/toolkit/toolkit/pictureinpicture/pictureinpicture.ftl b/l10n-th/toolkit/toolkit/pictureinpicture/pictureinpicture.ftl
new file mode 100644
index 0000000000..95f6391300
--- /dev/null
+++ b/l10n-th/toolkit/toolkit/pictureinpicture/pictureinpicture.ftl
@@ -0,0 +1,86 @@
+# 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/.
+
+pictureinpicture-player-title = ภาพที่เล่นควบคู่
+
+## Variables:
+## $shortcut (String) - Keyboard shortcut to execute the command.
+
+## Note that this uses .tooltip rather than the standard '.title'
+## or '.tooltiptext' - but it has the same effect. Code in the
+## picture-in-picture window will read and copy this to an in-document
+## DOM node that then shows the tooltip.
+##
+## Variables:
+## $shortcut (String) - Keyboard shortcut to execute the command.
+
+pictureinpicture-pause-btn =
+ .aria-label = หยุดชั่วคราว
+ .tooltip = หยุดชั่วคราว (Spacebar)
+pictureinpicture-play-btn =
+ .aria-label = เล่น
+ .tooltip = เล่น (Spacebar)
+
+pictureinpicture-mute-btn =
+ .aria-label = ปิดเสียง
+ .tooltip = ปิดเสียง ({ $shortcut })
+pictureinpicture-unmute-btn =
+ .aria-label = เลิกปิดเสียง
+ .tooltip = เลิกปิดเสียง ({ $shortcut })
+
+pictureinpicture-unpip-btn =
+ .aria-label = ส่งกลับไปที่แท็บ
+ .tooltip = กลับไปที่แท็บ
+
+pictureinpicture-close-btn =
+ .aria-label = ปิด
+ .tooltip = ปิด ({ $shortcut })
+
+pictureinpicture-subtitles-btn =
+ .aria-label = คำบรรยาย
+ .tooltip = คำบรรยาย
+
+pictureinpicture-fullscreen-btn2 =
+ .aria-label = เต็มหน้าจอ
+ .tooltip = เต็มหน้าจอ (คลิกสองครั้งหรือ { $shortcut })
+
+pictureinpicture-exit-fullscreen-btn2 =
+ .aria-label = ออกจากภาพเต็มหน้าจอ
+ .tooltip = ออกจากภาพเต็มหน้าจอ (คลิกสองครั้งหรือ { $shortcut })
+
+##
+
+# Keyboard shortcut to toggle fullscreen mode when Picture-in-Picture is open.
+pictureinpicture-toggle-fullscreen-shortcut =
+ .key = F
+
+## Note that this uses .tooltip rather than the standard '.title'
+## or '.tooltiptext' - but it has the same effect. Code in the
+## picture-in-picture window will read and copy this to an in-document
+## DOM node that then shows the tooltip.
+
+pictureinpicture-seekbackward-btn =
+ .aria-label = ย้อนหลัง
+ .tooltip = ย้อนหลัง (←)
+
+pictureinpicture-seekforward-btn =
+ .aria-label = เดินหน้า
+ .tooltip = เดินหน้า (→)
+
+##
+
+# This string is never displayed on the window. Is intended to be announced by
+# a screen reader whenever a user opens the subtitles settings panel
+# after selecting the subtitles button.
+pictureinpicture-subtitles-panel-accessible = การตั้งค่าคำบรรยาย
+
+pictureinpicture-subtitles-label = คำบรรยาย
+
+pictureinpicture-font-size-label = ขนาดแบบอักษร
+
+pictureinpicture-font-size-small = เล็ก
+
+pictureinpicture-font-size-medium = ปานกลาง
+
+pictureinpicture-font-size-large = ใหญ่
diff --git a/l10n-th/toolkit/toolkit/preferences/preferences.ftl b/l10n-th/toolkit/toolkit/preferences/preferences.ftl
new file mode 100644
index 0000000000..bbe316fb25
--- /dev/null
+++ b/l10n-th/toolkit/toolkit/preferences/preferences.ftl
@@ -0,0 +1,35 @@
+# 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/.
+
+password-not-set =
+ .value = (ไม่ได้ตั้ง)
+failed-pp-change = ไม่สามารถเปลี่ยนรหัสผ่านหลักได้
+incorrect-pp = คุณใส่รหัสผ่านหลักปัจจุบันไม่ถูกต้อง โปรดลองอีกครั้ง
+pp-change-ok = เปลี่ยนรหัสผ่านหลักสำเร็จแล้ว
+settings-pp-erased-ok = คุณได้ลบรหัสผ่านหลักของคุณแล้ว รหัสผ่านที่เก็บไว้และคีย์ส่วนตัวของใบรับรองที่จัดการโดย { -brand-short-name } จะไม่ได้รับการปกป้อง
+settings-pp-not-wanted = คำเตือน! คุณได้ตัดสินใจที่จะไม่ใช้รหัสผ่านหลัก รหัสผ่านที่เก็บไว้และคีย์ส่วนตัวของใบรับรองที่จัดการโดย { -brand-short-name } จะไม่ได้รับการปกป้อง
+pp-change2empty-in-fips-mode = คุณกำลังอยู่ในโหมด FIPS ซึ่ง FIPS จำเป็นต้องมีรหัสผ่านหลักที่ไม่ว่างเปล่า
+pw-change-success-title = เปลี่ยนรหัสผ่านสำเร็จ
+pw-change-failed-title = การเปลี่ยนรหัสผ่านล้มเหลว
+pw-remove-button =
+ .label = เอาออก
+primary-password-dialog =
+ .title = รหัสผ่านหลัก
+set-password-old-password = รหัสผ่านปัจจุบัน:
+set-password-new-password = ป้อนรหัสผ่านใหม่:
+set-password-reenter-password = ป้อนรหัสผ่านใหม่อีกครั้ง:
+set-password-meter = มาตรวัดคุณภาพรหัสผ่าน
+set-password-meter-loading = กำลังโหลด
+primary-password-admin = ผู้ดูแลระบบของคุณต้องการให้คุณตั้งรหัสผ่านหลักเพื่อบันทึกการเข้าสู่ระบบและรหัสผ่าน
+primary-password-required-by-policy = องค์กรของคุณต้องการให้คุณตั้งรหัสผ่านหลักเพื่อบันทึกการเข้าสู่ระบบและรหัสผ่าน
+primary-password-description = รหัสผ่านหลักใช้ปกป้องข้อมูลที่อ่อนไหว เช่น การเข้าสู่ระบบ และรหัสผ่าน บนอุปกรณ์นี้ หากคุณสร้างรหัสผ่านหลัก คุณจะต้องใส่รหัสผ่านหนึ่งครั้งต่อหนึ่งวาระเมื่อ { -brand-short-name } ดึงข้อมูลที่บันทึกไว้ซึ่งได้รับการปกป้องโดยรหัสผ่าน
+primary-password-warning = โปรดตรวจสอบให้แน่ใจว่าคุณจำรหัสผ่านหลักที่คุณตั้งได้ หากคุณลืมรหัสผ่านหลัก คุณจะไม่สามารถเข้าถึงข้อมูลใด ๆ ที่ปัองกันไว้บนอุปกรณ์นี้
+remove-primary-password =
+ .title = เอารหัสผ่านหลักออก
+remove-info =
+ .value = คุณต้องป้อนรหัสผ่านปัจจุบันของคุณเพื่อดำเนินการต่อ:
+remove-primary-password-warning1 = รหัสผ่านหลักของคุณใช้ปกป้องข้อมูลที่อ่อนไหว เช่น การเข้าสู่ระบบ และรหัสผ่าน
+remove-primary-password-warning2 = หากคุณเอารหัสผ่านหลักของคุณออก ข้อมูลของคุณจะไม่ถูกปกป้องหากคอมพิวเตอร์ของคุณถูกบุกรุก
+remove-password-old-password =
+ .value = รหัสผ่านปัจจุบัน:
diff --git a/l10n-th/toolkit/toolkit/printing/printDialogs.ftl b/l10n-th/toolkit/toolkit/printing/printDialogs.ftl
new file mode 100644
index 0000000000..fa543b43f5
--- /dev/null
+++ b/l10n-th/toolkit/toolkit/printing/printDialogs.ftl
@@ -0,0 +1,112 @@
+# 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/.
+
+print-setup =
+ .title = ตั้งค่าหน้ากระดาษ
+custom-prompt-title = กำหนดเอง…
+custom-prompt-prompt = ป้อนข้อความส่วนหัว/ส่วนท้ายที่กำหนดเองของคุณ
+basic-tab =
+ .label = รูปแบบและตัวเลือก
+advanced-tab =
+ .label = ขอบกระดาษและส่วนหัว/ส่วนท้าย
+format-group-label =
+ .value = รูปแบบ
+orientation-label =
+ .value = ทิศทาง:
+portrait =
+ .label = แนวตั้ง
+ .accesskey = น
+landscape =
+ .label = แนวนอน
+ .accesskey = ว
+scale =
+ .label = มาตราส่วน:
+ .accesskey = ม
+scale-percent =
+ .value = %
+shrink-to-fit =
+ .label = ย่อให้พอดีความกว้างหน้า
+ .accesskey = ค
+options-group-label =
+ .value = ตัวเลือก
+print-bg =
+ .label = พิมพ์พื้นหลัง (สีและภาพ)
+ .accesskey = พ
+margin-group-label-inches =
+ .value = ขอบกระดาษ (นิ้ว)
+margin-group-label-metric =
+ .value = ขอบกระดาษ (มิลลิเมตร)
+margin-top =
+ .value = หัว:
+ .accesskey = ห
+margin-top-invisible =
+ .value = หัว:
+margin-bottom =
+ .value = ท้าย:
+ .accesskey = ท
+margin-bottom-invisible =
+ .value = ท้าย:
+margin-left =
+ .value = ซ้าย:
+ .accesskey = ซ
+margin-left-invisible =
+ .value = ซ้าย:
+margin-right =
+ .value = ขวา:
+ .accesskey = ข
+margin-right-invisible =
+ .value = ขวา:
+header-footer-label =
+ .value = ส่วนหัวและส่วนท้าย
+hf-left-label =
+ .value = ซ้าย:
+hf-center-label =
+ .value = กลาง:
+hf-right-label =
+ .value = ขวา:
+header-left-tip =
+ .tooltiptext = ส่วนหัวด้านซ้าย
+header-center-tip =
+ .tooltiptext = ส่วนหัวตรงกลาง
+header-right-tip =
+ .tooltiptext = ส่วนหัวด้านขวา
+footer-left-tip =
+ .tooltiptext = ส่วนท้ายด้านซ้าย
+footer-center-tip =
+ .tooltiptext = ส่วนท้ายตรงกลาง
+footer-right-tip =
+ .tooltiptext = ส่วนท้ายด้านขวา
+hf-blank =
+ .label = --ว่าง--
+hf-title =
+ .label = ชื่อเรื่อง
+hf-url =
+ .label = URL
+hf-date-and-time =
+ .label = วันที่/เวลา
+hf-page =
+ .label = หน้า #
+hf-page-and-total =
+ .label = หน้า # จาก #
+hf-custom =
+ .label = กำหนดเอง…
+print-preview-window =
+ .title = ตัวอย่างก่อนพิมพ์
+print-title =
+ .value = ชื่อเรื่อง:
+print-preparing =
+ .value = กำลังเตรียมการ…
+print-progress =
+ .value = ความคืบหน้า:
+print-window =
+ .title = กำลังพิมพ์
+print-complete =
+ .value = การพิมพ์เสร็จสมบูรณ์
+
+# Variables
+# $percent (integer) - Number of printed percentage
+print-percent =
+ .value = { $percent }%
+dialog-cancel-label = ยกเลิก
+dialog-close-label = ปิด
diff --git a/l10n-th/toolkit/toolkit/printing/printPreview.ftl b/l10n-th/toolkit/toolkit/printing/printPreview.ftl
new file mode 100644
index 0000000000..d18afdced9
--- /dev/null
+++ b/l10n-th/toolkit/toolkit/printing/printPreview.ftl
@@ -0,0 +1,73 @@
+# 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/.
+
+printpreview-simplify-page-checkbox =
+ .label = หน้าแบบเรียบง่าย
+ .accesskey = ร
+ .tooltiptext = หน้านี้ไม่สามารถทำให้เรียบง่ายได้โดยอัตโนมัติ
+printpreview-simplify-page-checkbox-enabled =
+ .label = { printpreview-simplify-page-checkbox.label }
+ .accesskey = { printpreview-simplify-page-checkbox.accesskey }
+ .tooltiptext = เปลี่ยนเค้าโครงเพื่อการอ่านที่ง่ายขึ้น
+printpreview-close =
+ .label = ปิด
+ .accesskey = ด
+printpreview-portrait =
+ .label = แนวตั้ง
+ .accesskey = น
+printpreview-landscape =
+ .label = แนวนอน
+ .accesskey = ว
+printpreview-scale =
+ .value = มาตราส่วน:
+ .accesskey = ม
+printpreview-shrink-to-fit =
+ .label = ย่อให้พอดี
+printpreview-custom =
+ .label = กำหนดเอง…
+printpreview-print =
+ .label = พิมพ์…
+ .accesskey = พ
+printpreview-of =
+ .value = จาก
+printpreview-custom-scale-prompt-title = มาตราส่วนที่กำหนดเอง
+printpreview-page-setup =
+ .label = ตั้งค่าหน้ากระดาษ…
+ .accesskey = ง
+printpreview-page =
+ .value = หน้า:
+ .accesskey = ห
+
+# Variables
+# $sheetNum (integer) - The current sheet number
+# $sheetCount (integer) - The total number of sheets to print
+printpreview-sheet-of-sheets = { $sheetNum } จาก { $sheetCount }
+
+## Variables
+## $percent (integer) - menuitem percent label
+## $arrow (String) - UTF-8 arrow character for navigation buttons
+
+printpreview-percentage-value =
+ .label = { $percent }%
+printpreview-homearrow =
+ .label = { $arrow }
+ .tooltiptext = หน้าแรก
+printpreview-previousarrow =
+ .label = { $arrow }
+ .tooltiptext = หน้าก่อนหน้า
+printpreview-nextarrow =
+ .label = { $arrow }
+ .tooltiptext = หน้าถัดไป
+printpreview-endarrow =
+ .label = { $arrow }
+ .tooltiptext = หน้าสุดท้าย
+
+printpreview-homearrow-button =
+ .title = หน้าแรก
+printpreview-previousarrow-button =
+ .title = หน้าก่อนหน้า
+printpreview-nextarrow-button =
+ .title = หน้าถัดไป
+printpreview-endarrow-button =
+ .title = หน้าสุดท้าย
diff --git a/l10n-th/toolkit/toolkit/printing/printUI.ftl b/l10n-th/toolkit/toolkit/printing/printUI.ftl
new file mode 100644
index 0000000000..a2bdbff169
--- /dev/null
+++ b/l10n-th/toolkit/toolkit/printing/printUI.ftl
@@ -0,0 +1,147 @@
+# 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/.
+
+printui-title = พิมพ์
+# Dialog title to prompt the user for a filename to save print to PDF.
+printui-save-to-pdf-title = บันทึกเป็น
+
+# Variables
+# $sheetCount (integer) - Number of paper sheets
+printui-sheets-count =
+ { $sheetCount ->
+ *[other] กระดาษ { $sheetCount } แผ่น
+ }
+
+printui-page-range-all = ทั้งหมด
+printui-page-range-current = ปัจจุบัน
+printui-page-range-odd = คี่
+printui-page-range-even = คู่
+printui-page-range-custom = กำหนดเอง
+printui-page-range-label = หน้า
+printui-page-range-picker =
+ .aria-label = เลือกช่วงหน้ากระดาษ
+printui-page-custom-range-input =
+ .aria-label = ใส่ช่วงหน้ากระดาษที่กำหนดเอง
+ .placeholder = เช่น 2-6, 9, 12-16
+
+# Section title for the number of copies to print
+printui-copies-label = สำเนา
+
+printui-orientation = การวางแนว
+printui-landscape = แนวนอน
+printui-portrait = แนวตั้ง
+
+# Section title for the printer or destination device to target
+printui-destination-label = ปลายทาง
+printui-destination-pdf-label = บันทึกไปเป็น PDF
+
+printui-more-settings = การตั้งค่าเพิ่มเติม
+printui-less-settings = การตั้งค่าน้อยลง
+
+printui-paper-size-label = ขนาดกระดาษ
+
+# Section title (noun) for the print scaling options
+printui-scale = มาตราส่วน
+printui-scale-fit-to-page-width = พอดีกับความกว้างของหน้า
+# Label for input control where user can set the scale percentage
+printui-scale-pcent = มาตราส่วน
+
+# Section title (noun) for the two-sided print options
+printui-two-sided-printing = การพิมพ์สองด้าน
+printui-two-sided-printing-off = ปิด
+# Flip the sheet as if it were bound along its long edge.
+printui-two-sided-printing-long-edge = พลิกตามขอบยาว
+# Flip the sheet as if it were bound along its short edge.
+printui-two-sided-printing-short-edge = พลิกตามขอบสั้น
+
+# Section title for miscellaneous print options
+printui-options = ตัวเลือก
+printui-headers-footers-checkbox = พิมพ์หัวกระดาษและท้ายกระดาษ
+printui-backgrounds-checkbox = พิมพ์พื้นหลัง
+
+## The "Format" section, select a version of the website to print. Radio
+## options to select between the original page, selected text only, or a version
+## where the page is processed with "Reader View".
+
+# The section title.
+printui-source-label = รูปแบบ
+# Option for printing the original page.
+printui-source-radio = ต้นฉบับ
+# Option for printing just the content a user selected prior to printing.
+printui-selection-radio = ส่วนที่เลือก
+# Option for "simplifying" the page by printing the Reader View version.
+printui-simplify-page-radio = เรียบง่าย
+
+##
+
+printui-color-mode-label = โหมดสี
+printui-color-mode-color = สี
+printui-color-mode-bw = ขาวดำ
+
+printui-margins = ระยะขอบ
+printui-margins-default = ค่าเริ่มต้น
+printui-margins-min = ต่ำสุด
+printui-margins-none = ไม่มี
+printui-margins-custom-inches = กำหนดเอง (นิ้ว)
+printui-margins-custom-mm = กำหนดเอง (มม.)
+printui-margins-custom-top = ด้านบน
+printui-margins-custom-top-inches = ด้านบน (นิ้ว)
+printui-margins-custom-top-mm = บน (มม.)
+printui-margins-custom-bottom = ด้านล่าง
+printui-margins-custom-bottom-inches = ด้านล่าง (นิ้ว)
+printui-margins-custom-bottom-mm = ล่าง (มม.)
+printui-margins-custom-left = ด้านซ้าย
+printui-margins-custom-left-inches = ด้านซ้าย (นิ้ว)
+printui-margins-custom-left-mm = ซ้าย (มม.)
+printui-margins-custom-right = ด้านขวา
+printui-margins-custom-right-inches = ด้านขวา (นิ้ว)
+printui-margins-custom-right-mm = ขวา (มม.)
+
+printui-system-dialog-link = พิมพ์โดยใช้กล่องโต้ตอบระบบ…
+
+printui-primary-button = พิมพ์
+printui-primary-button-save = บันทึก
+printui-cancel-button = ยกเลิก
+printui-close-button = ปิด
+
+printui-loading = กำลังเตรียมตัวอย่าง
+
+# Reported by screen readers and other accessibility tools to indicate that
+# the print preview has focus.
+printui-preview-label =
+ .aria-label = ตัวอย่างก่อนพิมพ์
+
+printui-pages-per-sheet = หน้าต่อแผ่น
+
+# This is shown next to the Print button with an indefinite loading spinner
+# when the user prints a page and it is being sent to the printer.
+printui-print-progress-indicator = กำลังพิมพ์…
+printui-print-progress-indicator-saving = กำลังบันทึก…
+
+## Paper sizes that may be supported by the Save to PDF destination:
+
+printui-paper-a5 = A5
+printui-paper-a4 = A4
+printui-paper-a3 = A3
+printui-paper-a2 = A2
+printui-paper-a1 = A1
+printui-paper-a0 = A0
+printui-paper-b5 = B5
+printui-paper-b4 = B4
+printui-paper-jis-b5 = JIS-B5
+printui-paper-jis-b4 = JIS-B4
+printui-paper-letter = US Letter
+printui-paper-legal = US Legal
+printui-paper-tabloid = Tabloid
+
+## Error messages shown when a user has an invalid input
+
+printui-error-invalid-scale = มาตราส่วนต้องเป็นตัวเลขระหว่าง 10 ถึง 200
+printui-error-invalid-margin = โปรดป้อนระยะขอบที่ถูกต้องสำหรับขนาดกระดาษที่เลือก
+printui-error-invalid-copies = สำเนาต้องเป็นตัวเลขระหว่าง 1 และ 10000
+
+# Variables
+# $numPages (integer) - Number of pages
+printui-error-invalid-range = ช่วงต้องเป็นตัวเลขระหว่าง 1 ถึง { $numPages }
+printui-error-invalid-start-overflow = หมายเลขหน้า “จาก” ต้องน้อยกว่าหมายเลขหน้า “ถึง”
diff --git a/l10n-th/toolkit/toolkit/reportBrokenSite/reportBrokenSite.ftl b/l10n-th/toolkit/toolkit/reportBrokenSite/reportBrokenSite.ftl
new file mode 100644
index 0000000000..6fbe8159b2
--- /dev/null
+++ b/l10n-th/toolkit/toolkit/reportBrokenSite/reportBrokenSite.ftl
@@ -0,0 +1,3 @@
+# 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/.
diff --git a/l10n-th/toolkit/toolkit/updates/backgroundupdate.ftl b/l10n-th/toolkit/toolkit/updates/backgroundupdate.ftl
new file mode 100644
index 0000000000..68b896f2af
--- /dev/null
+++ b/l10n-th/toolkit/toolkit/updates/backgroundupdate.ftl
@@ -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/.
+
+backgroundupdate-task-description = งานการอัปเดตในเบื้องหลังจะตรวจสอบการอัปเดตของ { -brand-short-name } เมื่อ { -brand-short-name } ไม่ได้ทำงานอยู่ งานนี้จะถูกติดตั้งโดยอัตโนมัติโดย { -brand-short-name } และจะถูกติดตั้งซ้ำเมื่อ { -brand-short-name } ทำงาน เมื่อต้องการปิดใช้งานนี้ ให้อัปเดตการตั้งค่าเบราว์เซอร์หรือการตั้งค่านโยบายองค์กรของ { -brand-short-name } “BackgroundAppUpdate”
diff --git a/l10n-th/toolkit/toolkit/updates/elevation.ftl b/l10n-th/toolkit/toolkit/updates/elevation.ftl
new file mode 100644
index 0000000000..587716b4aa
--- /dev/null
+++ b/l10n-th/toolkit/toolkit/updates/elevation.ftl
@@ -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/.
+# This is temporary until bug 1521632 is fixed
+
+elevation-update-wizard =
+ .title = การอัปเดตซอฟต์แวร์
+elevation-details-link-label =
+ .value = รายละเอียด
+elevation-error-manual = คุณสามารถอัปเดต { -brand-short-name } ด้วยตนเองโดยไปที่ลิงก์นี้และดาวน์โหลดรุ่นล่าสุด:
+elevation-finished-page = การอัปเดตพร้อมติดตั้ง
+elevation-finished-background-page = ดาวน์โหลดการอัปเดตความปลอดภัยและเสถียรภาพสำหรับ { -brand-short-name } แล้วและพร้อมติดตั้ง
+elevation-finished-background = อัปเดต:
+elevation-more-elevated = การอัปเดตนี้ต้องการสิทธิของผู้ดูแลระบบ การอัปเดตจะถูกติดตั้งในครั้งถัดไปที่ { -brand-short-name } เริ่ม คุณสามารถเริ่มการทำงาน { -brand-short-name } ใหม่ตอนนี้ ทำงานต่อไปและเริ่มการทำงานใหม่ในภายหลัง หรือปฏิเสธการอัปเดตนี้
diff --git a/l10n-th/toolkit/toolkit/updates/history.ftl b/l10n-th/toolkit/toolkit/updates/history.ftl
new file mode 100644
index 0000000000..cfe2085f0b
--- /dev/null
+++ b/l10n-th/toolkit/toolkit/updates/history.ftl
@@ -0,0 +1,29 @@
+# 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/.
+
+history-title = ประวัติการอัปเดต
+history-intro = การอัปเดตดังต่อไปนี้ได้รับการติดตั้งแล้ว
+
+close-button-label =
+ .buttonlabelcancel = ปิด
+ .title = ประวัติการอัปเดต
+
+no-updates-label = ยังไม่มีการอัปเดตถูกติดตั้ง
+name-header = ชื่อการอัปเดต
+date-header = วันที่ติดตั้ง
+type-header = ชนิด
+state-header = สถานะ
+
+# Used to display update history
+#
+# Variables:
+# $name (String): name of the update
+# $buildID (String): build identifier from the local updates.xml
+update-full-build-name = { $name } ({ $buildID })
+
+update-details = รายละเอียด
+
+update-installed-on = ติดตั้งเมื่อ: { $date }
+
+update-status = สถานะ: { $status }